@waline/client 2.7.1 → 2.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/component.js CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("vue"),t=require("autosize"),n=require("marked");function o(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var l,a=o(t);const r="undefined"!=typeof window,i=()=>{};function c(t){return"function"==typeof t?t():e.unref(t)}function s(e,t){return function(...n){e((()=>t.apply(this,n)),{fn:t,thisArg:this,args:n})}}r&&(null==(l=null==window?void 0:window.navigator)?void 0:l.userAgent)&&/iP(ad|hone|od)/.test(window.navigator.userAgent);const m=e=>e();function u(t){return!!e.getCurrentScope()&&(e.onScopeDispose(t),!0)}function d(e,t=200,n={}){return s(function(e,t={}){let n,o;return l=>{const a=c(e),r=c(t.maxWait);if(n&&clearTimeout(n),a<=0||void 0!==r&&r<=0)return o&&(clearTimeout(o),o=null),l();r&&!o&&(o=setTimeout((()=>{n&&clearTimeout(n),o=null,l()}),r)),n=setTimeout((()=>{o&&clearTimeout(o),o=null,l()}),a)}}(t,n),e)}var p=Object.getOwnPropertySymbols,v=Object.prototype.hasOwnProperty,f=Object.prototype.propertyIsEnumerable;function g(t,n,o={}){const l=o,{eventFilter:a=m}=l,r=((e,t)=>{var n={};for(var o in e)v.call(e,o)&&t.indexOf(o)<0&&(n[o]=e[o]);if(null!=e&&p)for(var o of p(e))t.indexOf(o)<0&&f.call(e,o)&&(n[o]=e[o]);return n})(l,["eventFilter"]);return e.watch(t,s(a,n),r)}var h=Object.defineProperty,y=Object.defineProperties,k=Object.getOwnPropertyDescriptors,w=Object.getOwnPropertySymbols,b=Object.prototype.hasOwnProperty,C=Object.prototype.propertyIsEnumerable,E=(e,t,n)=>t in e?h(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;function B(t,n,o={}){const l=o,{eventFilter:a}=l,r=((e,t)=>{var n={};for(var o in e)b.call(e,o)&&t.indexOf(o)<0&&(n[o]=e[o]);if(null!=e&&w)for(var o of w(e))t.indexOf(o)<0&&C.call(e,o)&&(n[o]=e[o]);return n})(l,["eventFilter"]),{eventFilter:i,pause:c,resume:s,isActive:u}=function(t=m){const n=e.ref(!0);return{isActive:n,pause:function(){n.value=!1},resume:function(){n.value=!0},eventFilter:(...e)=>{n.value&&t(...e)}}}(a),d=g(t,n,(p=((e,t)=>{for(var n in t||(t={}))b.call(t,n)&&E(e,n,t[n]);if(w)for(var n of w(t))C.call(t,n)&&E(e,n,t[n]);return e})({},r),y(p,k({eventFilter:i}))));var p;return{stop:d,pause:c,resume:s,isActive:u}}const N=r?window:void 0,I=r?window.document:void 0;function S(...t){let n,o,l,a;if("string"==typeof t[0]?([o,l,a]=t,n=N):[n,o,l,a]=t,!n)return i;let r=i;const s=e.watch((()=>function(e){var t;const n=c(e);return null!=(t=null==n?void 0:n.$el)?t:n}(n)),(e=>{r(),e&&(e.addEventListener(o,l,a),r=()=>{e.removeEventListener(o,l,a),r=i})}),{immediate:!0,flush:"post"}),m=()=>{s(),r()};return u(m),m}r&&window.navigator,r&&window.location;const V="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},$="__vueuse_ssr_handlers__";V[$]=V[$]||{};const x=V[$];var L=Object.defineProperty,j=Object.getOwnPropertySymbols,R=Object.prototype.hasOwnProperty,O=Object.prototype.propertyIsEnumerable,z=(e,t,n)=>t in e?L(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,A=(e,t)=>{for(var n in t||(t={}))R.call(t,n)&&z(e,n,t[n]);if(j)for(var n of j(t))O.call(t,n)&&z(e,n,t[n]);return e};const D={boolean:{read:e=>"true"===e,write:e=>String(e)},object:{read:e=>JSON.parse(e),write:e=>JSON.stringify(e)},number:{read:e=>Number.parseFloat(e),write:e=>String(e)},any:{read:e=>e,write:e=>String(e)},string:{read:e=>e,write:e=>String(e)},map:{read:e=>new Map(JSON.parse(e)),write:e=>JSON.stringify(Array.from(e.entries()))},set:{read:e=>new Set(JSON.parse(e)),write:e=>JSON.stringify(Array.from(e))},date:{read:e=>new Date(e),write:e=>e.toISOString()}};function M(t,n,o,l={}){var a;const{flush:r="pre",deep:i=!0,listenToStorageChanges:s=!0,writeDefaults:m=!0,mergeDefaults:u=!1,shallow:d,window:p=N,eventFilter:v,onError:f=(e=>{console.error(e)})}=l,g=(d?e.shallowRef:e.ref)(n);if(!o)try{o=function(e,t){return x[e]||t}("getDefaultStorage",(()=>{var e;return null==(e=N)?void 0:e.localStorage}))()}catch(e){f(e)}if(!o)return g;const h=c(n),y=function(e){return null==e?"any":e instanceof Set?"set":e instanceof Map?"map":e instanceof Date?"date":"boolean"==typeof e?"boolean":"string"==typeof e?"string":"object"==typeof e||Array.isArray(e)?"object":Number.isNaN(e)?"any":"number"}(h),k=null!=(a=l.serializer)?a:D[y],{pause:w,resume:b}=B(g,(()=>function(e){try{null==e?o.removeItem(t):o.setItem(t,k.write(e))}catch(e){f(e)}}(g.value)),{flush:r,deep:i,eventFilter:v});return p&&s&&S(p,"storage",C),C(),g;function C(e){e&&e.key!==t||(g.value=function(e){if(!e||e.key===t){w();try{const n=e?e.newValue:o.getItem(t);if(null==n)return m&&null!==h&&o.setItem(t,k.write(h)),h;if(!e&&u){const e=k.read(n);return"function"==typeof u?u(e,h):"object"!==y||Array.isArray(e)?e:A(A({},h),e)}return"string"!=typeof n?n:k.read(n)}catch(e){f(e)}finally{b()}}}(e))}}var P,T,U=Object.defineProperty,F=Object.getOwnPropertySymbols,_=Object.prototype.hasOwnProperty,H=Object.prototype.propertyIsEnumerable,W=(e,t,n)=>t in e?U(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;function q(t={}){const{controls:n=!1,interval:o="requestAnimationFrame"}=t,l=e.ref(new Date),a=()=>l.value=new Date,i="requestAnimationFrame"===o?function(t,n={}){const{immediate:o=!0,window:l=N}=n,a=e.ref(!1);let r=null;function i(){a.value&&l&&(t(),r=l.requestAnimationFrame(i))}function c(){!a.value&&l&&(a.value=!0,i())}function s(){a.value=!1,null!=r&&l&&(l.cancelAnimationFrame(r),r=null)}return o&&c(),u(s),{isActive:a,pause:s,resume:c}}(a,{immediate:!0}):function(t,n=1e3,o={}){const{immediate:l=!0,immediateCallback:a=!1}=o;let i=null;const s=e.ref(!1);function m(){i&&(clearInterval(i),i=null)}function d(){s.value=!1,m()}function p(){e.unref(n)<=0||(s.value=!0,a&&t(),m(),i=setInterval(t,c(n)))}l&&r&&p(),e.isRef(n)&&u(e.watch(n,(()=>{s.value&&r&&p()})));return u(d),{isActive:s,pause:d,resume:p}}(a,o,{immediate:!0});return n?((e,t)=>{for(var n in t||(t={}))_.call(t,n)&&W(e,n,t[n]);if(F)for(var n of F(t))H.call(t,n)&&W(e,n,t[n]);return e})({now:l},i):l}(T=P||(P={})).UP="UP",T.RIGHT="RIGHT",T.DOWN="DOWN",T.LEFT="LEFT",T.NONE="NONE";let G=0;function J(t,n={}){const o=e.ref(!1),{document:l=I,immediate:a=!0,manual:r=!1,id:i="vueuse_styletag_"+ ++G}=n,c=e.ref(t);let s=()=>{};const m=()=>{if(!l)return;const t=l.getElementById(i)||l.createElement("style");t.type="text/css",t.id=i,n.media&&(t.media=n.media),l.head.appendChild(t),o.value||(s=e.watch(c,(e=>{t.innerText=e}),{immediate:!0}),o.value=!0)},d=()=>{l&&o.value&&(s(),l.head.removeChild(l.getElementById(i)),o.value=!1)};return a&&!r&&function(t,n=!0){e.getCurrentInstance()?e.onMounted(t):n?t():e.nextTick(t)}(m),r||u(d),{id:i,css:c,unload:d,load:m,isLoaded:e.readonly(o)}}var K=Object.defineProperty,Q=Object.getOwnPropertySymbols,Y=Object.prototype.hasOwnProperty,Z=Object.prototype.propertyIsEnumerable,X=(e,t,n)=>t in e?K(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;((e,t)=>{for(var n in t||(t={}))Y.call(t,n)&&X(e,n,t[n]);if(Q)for(var n of Q(t))Z.call(t,n)&&X(e,n,t[n])})({linear:function(e){return e}},{easeInSine:[.12,0,.39,0],easeOutSine:[.61,1,.88,1],easeInOutSine:[.37,0,.63,1],easeInQuad:[.11,0,.5,0],easeOutQuad:[.5,1,.89,1],easeInOutQuad:[.45,0,.55,1],easeInCubic:[.32,0,.67,0],easeOutCubic:[.33,1,.68,1],easeInOutCubic:[.65,0,.35,1],easeInQuart:[.5,0,.75,0],easeOutQuart:[.25,1,.5,1],easeInOutQuart:[.76,0,.24,1],easeInQuint:[.64,0,.78,0],easeOutQuint:[.22,1,.36,1],easeInOutQuint:[.83,0,.17,1],easeInExpo:[.7,0,.84,0],easeOutExpo:[.16,1,.3,1],easeInOutExpo:[.87,0,.13,1],easeInCirc:[.55,0,1,.45],easeOutCirc:[0,.55,.45,1],easeInOutCirc:[.85,0,.15,1],easeInBack:[.36,0,.66,-.56],easeOutBack:[.34,1.56,.64,1],easeInOutBack:[.68,-.6,.32,1.6]});const ee=({size:t})=>e.h("svg",{width:t,height:t,viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid"},e.h("circle",{cx:50,cy:50,fill:"none",stroke:"currentColor",strokeWidth:"4",r:"40","stroke-dasharray":"85 30"},e.h("animateTransform",{attributeName:"transform",type:"rotate",repeatCount:"indefinite",dur:"1s",values:"0 50 50;360 50 50",keyTimes:"0;1"})));var te=e.defineComponent({name:"ImageWall",components:{LoadingIcon:ee},props:{items:{type:Array,default:()=>[]},columnWidth:{type:Number,default:300},gap:{type:Number,default:0}},emits:["insert"],setup(t){let n=null;const o=e.ref(null),l=e.ref({}),a=e.ref([]),r=()=>{const e=Math.floor((o.value.getBoundingClientRect().width+t.gap)/(t.columnWidth+t.gap));return e>0?e:1},i=async n=>{if(n>=t.items.length)return;await e.nextTick();const l=Array.from(o.value?.children||[]).reduce(((e,t)=>t.getBoundingClientRect().height<e.getBoundingClientRect().height?t:e));a.value[Number(l.dataset.index)].push(n),await i(n+1)},c=async(e=!1)=>{if(a.value.length===r()&&!e)return;var t;a.value=(t=r(),new Array(t).fill(null).map((()=>[])));const n=window.scrollY;await i(0),window.scrollTo({top:n})};return e.watch((()=>[t.items]),(()=>{l.value={},c(!0)})),e.watch((()=>[t.columnWidth,t.gap]),(()=>c())),e.onMounted((()=>{c(!0),n=new ResizeObserver((()=>c())),n.observe(o.value)})),e.onBeforeUnmount((()=>n.unobserve(o.value))),{columns:a,state:l,wall:o}}}),ne=(e,t)=>{const n=e.__vccOpts||e;for(const[e,o]of t)n[e]=o;return n};const oe=["data-index"],le=["src","title","onLoad","onClick"];var ae=ne(te,[["render",function(t,n,o,l,a,r){const i=e.resolveComponent("LoadingIcon");return e.openBlock(),e.createElementBlock("div",{ref:"wall",class:"wl-gallery",style:e.normalizeStyle({gap:`${t.gap}px`})},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.columns,((n,o)=>(e.openBlock(),e.createElementBlock("div",{key:o,class:"wl-gallery-column","data-index":o,style:e.normalizeStyle({gap:`${t.gap}px`})},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n,(n=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:n},[t.state[t.items[n].src]?e.createCommentVNode("v-if",!0):(e.openBlock(),e.createBlock(i,{key:0,size:36,style:{margin:"20px auto"}})),e.createElementVNode("img",{class:"wl-gallery-item",src:t.items[n].src,title:t.items[n].title,loading:"lazy",onLoad:e=>t.state[t.items[n].src]=!0,onClick:e=>t.$emit("insert",`![](${t.items[n].src})`)},null,40,le)],64)))),128))],12,oe)))),128))],4)}],["__file","ImageWall.vue"]]);const re=["nick","mail","link"],ie=e=>e.filter((e=>re.includes(e))),ce=e=>new Promise(((t,n)=>{if(e.size>128e3)return n(new Error("File too large! File size limit 128KB"));const o=new FileReader;o.readAsDataURL(e),o.onload=()=>t(o.result?.toString()||""),o.onerror=n})),se=e=>!0===e?'<p class="wl-tex">Tex is not available in preview</p>':'<span class="wl-tex">Tex is not available in preview</span>',me=()=>{const e={next:""},t=({keyword:e,pos:t})=>{const n=new URLSearchParams("media_filter=minimal");return n.set("key","PAY5JLFIH6V6"),n.set("limit","20"),n.set("pos",t||""),n.set("q",e),fetch(`https://g.tenor.com/v1/search?${n.toString()}`,{headers:{"Content-Type":"application/json"}}).then((e=>e.json())).catch((()=>({next:t||"",results:[]})))};return{search:(n="")=>t({keyword:n}).then((t=>(e.next=t.next,t.results.map((e=>({title:e.title,src:e.media[0].tinygif.url})))))),more:n=>t({keyword:n,pos:e.next}).then((t=>(e.next=t.next,t.results.map((e=>({title:e.title,src:e.media[0].tinygif.url}))))))}},ue=new RegExp(`(${/[\u4E00-\u9FFF\u3400-\u4dbf\uf900-\ufaff\u3040-\u309f\uac00-\ud7af\u0400-\u04FF]+|\w+/.source}|${/</.source})|((?:${/(?:^|\s)\/\/(.+?)$/gm.source})|(?:${/\/\*([\S\s]*?)\*\//gm.source}))`,"gmi"),de=["23AC69","91C132","F19726","E8552D","1AAB8E","E1147F","2980C1","1BA1E6","9FA0A0","F19726","E30B20","E30B20","A3338B"],pe={},ve=e=>{let t=0;return e.replace(ue,((e,n,o)=>{if(o)return`<span style="color: slategray">${o}</span>`;if("<"===n)return"&lt;";let l;pe[n]?l=pe[n]:(l=de[t],pe[n]=l);const a=`<span style="color: #${l}">${n}</span>`;return t=++t%de.length,a}))},fe=["nick","nickError","mail","mailError","link","optional","placeholder","sofa","submit","like","cancelLike","reply","cancelReply","comment","refresh","more","preview","emoji","uploadImage","seconds","minutes","hours","days","now","uploading","login","logout","admin","sticky","word","wordHint","anonymous","level0","level1","level2","level3","level4","level5","gif","gifSearchPlaceholder","profile","approved","waiting","spam","unsticky","oldest","latest","hottest"],ge=e=>Object.fromEntries(e.map(((e,t)=>[fe[t],e])));var he=ge(["NickName","NickName cannot be less than 3 bytes.","E-Mail","Please confirm your email address.","Website","Optional","Comment here...","No comment yet.","Submit","Like","Cancel like","Reply","Cancel reply","Comments","Refresh","Load More...","Preview","Emoji","Upload Image","seconds ago","minutes ago","hours ago","days ago","just now","Uploading","Login","logout","Admin","Sticky","Words","Please input comments between $0 and $1 words!\n Current word number: $2","Anonymous","Dwarves","Hobbits","Ents","Wizards","Elves","Maiar","GIF","Search GIF","Profile","Approved","Waiting","Spam","Unsticky","Oldest","Latest","Hottest"]),ye=ge(["ニックネーム","3バイト以上のニックネームをご入力ください.","メールアドレス","メールアドレスをご確認ください.","サイト","オプション","ここにコメント","コメントしましょう~","提出する","Like","Cancel like","返信する","キャンセル","コメント","更新","さらに読み込む","プレビュー","絵文字","画像をアップロード","秒前","分前","時間前","日前","たっだ今","アップロード","ログインする","ログアウト","管理者","トップに置く","ワード","コメントは $0 から $1 ワードの間でなければなりません!\n 現在の単語番号: $2","匿名","うえにん","なかにん","しもおし","特にしもおし","かげ","なぬし","GIF","探す GIF","個人情報","承認済み","待っている","スパム","べたつかない","逆順","正順","人気順"]),ke=ge(["昵称","昵称不能少于3个字符","邮箱","请填写正确的邮件地址","网址","可选","欢迎评论","来发评论吧~","提交","喜欢","取消喜欢","回复","取消回复","评论","刷新","加载更多...","预览","表情","上传图片","秒前","分钟前","小时前","天前","刚刚","正在上传","登录","退出","博主","置顶","字","评论字数应在 $0 到 $1 字之间!\n当前字数:$2","匿名","潜水","冒泡","吐槽","活跃","话痨","传说","表情包","搜索表情包","个人资料","通过","待审核","垃圾","取消置顶","按倒序","按正序","按热度"]),we=ge(["暱稱","暱稱不能少於3個字元","郵箱","請填寫正確的郵件地址","網址","可選","歡迎評論","來發評論吧~","提交","喜歡","取消喜歡","回覆","取消回覆","評論","刷新","載入更多...","預覽","表情","上傳圖片","秒前","分鐘前","小時前","天前","剛剛","正在上傳","登錄","退出","博主","置頂","字","評論字數應在 $0 到 $1 字之間!\n當前字數:$2","匿名","潛水","冒泡","吐槽","活躍","話癆","傳說","表情包","搜索表情包","個人資料","通過","待審核","垃圾","取消置頂","按倒序","按正序","按熱度"]),be=ge(["Apelido","Apelido não pode ser menor que 3 bytes.","E-Mail","Por favor, confirme seu endereço de e-mail.","Website","Opcional","Comente aqui...","Nenhum comentário, ainda.","Enviar","Like","Cancel like","Responder","Cancelar resposta","Comentários","Refrescar","Carregar Mais...","Visualizar","Emoji","Enviar Imagem","segundos atrás","minutos atrás","horas atrás","dias atrás","agora mesmo","Enviando","Entrar","Sair","Admin","Sticky","Palavras","Favor enviar comentário com $0 a $1 palavras!\n Número de palavras atuais: $2","Anônimo","Dwarves","Hobbits","Ents","Wizards","Elves","Maiar","GIF","Pesquisar GIF","informação pessoal","Aprovado","Espera","Spam","Unsticky","Mais velho","Mais recentes","Mais quente"]),Ce=ge(["Псевдоним","Никнейм не может быть меньше 3 байт.","Эл. адрес","Пожалуйста, подтвердите адрес вашей электронной почты.","Веб-сайт","Необязательный","Комментарий здесь...","Пока нет комментариев.","Отправить","Like","Cancel like","Отвечать","Отменить ответ","Комментарии","Обновить","Загрузи больше...","Превью","эмодзи","Загрузить изображение","секунд назад","несколько минут назад","несколько часов назад","дней назад","прямо сейчас","Загрузка","Авторизоваться","Выход из системы","Админ","Липкий","Слова","Пожалуйста, введите комментарии от $0 до $1 слов!\nНомер текущего слова: $2","Анонимный","Dwarves","Hobbits","Ents","Wizards","Elves","Maiar","GIF","Поиск GIF","Персональные данные","Одобренный","Ожидающий","Спам","Нелипкий","самый старый","последний","самый горячий"]);const Ee={zh:ke,"zh-cn":ke,"zh-CN":ke,"zh-tw":we,"zh-TW":we,en:he,"en-US":he,"en-us":he,jp:ye,"jp-jp":ye,"jp-JP":ye,"pt-br":be,"pt-BR":be,ru:Ce,"ru-ru":Ce,"ru-RU":Ce},Be=e=>{try{e=decodeURI(e)}catch(e){}return e},Ne=(e="")=>e.replace(/\/$/u,""),Ie=e=>/^(https?:)?\/\//.test(e),Se=e=>{const t=Ne(e);return Ie(t)?t:`https://${t}`},Ve=e=>Array.isArray(e)?e:!!e&&[0,e],$e=(e,t)=>"function"==typeof e?e:!1!==e&&t,xe="{--waline-white:#000;--waline-light-grey:#666;--waline-dark-grey:#999;--waline-color:#888;--waline-bgcolor:#1e1e1e;--waline-bgcolor-light:#272727;--waline-bgcolor-hover: #444;--waline-border-color:#333;--waline-disable-bgcolor:#444;--waline-disable-color:#272727;--waline-bq-color:#272727;--waline-info-bgcolor:#272727;--waline-info-color:#666}",Le=(e,t)=>{let n=e.toString();for(;n.length<t;)n="0"+n;return n},je=(e,t,n)=>{if(!e)return"";const o="string"==typeof e?new Date(-1!==e.indexOf(" ")?e.replace(/-/g,"/"):e):e,l=t.getTime()-o.getTime(),a=Math.floor(l/864e5);if(0===a){const e=l%864e5,t=Math.floor(e/36e5);if(0===t){const t=e%36e5,o=Math.floor(t/6e4);if(0===o){const e=t%6e4;return`${Math.round(e/1e3)} ${n.seconds}`}return`${o} ${n.minutes}`}return`${t} ${n.hours}`}return a<0?n.now:a<8?`${a} ${n.days}`:(e=>{const t=Le(e.getDate(),2),n=Le(e.getMonth()+1,2);return`${Le(e.getFullYear(),2)}-${n}-${t}`})(o)},Re=e=>{const t=M("WALINE_EMOJI",{}),n=Boolean(/@[0-9]+\.[0-9]+\.[0-9]+/.test(e));if(n){const n=t.value[e];if(n)return Promise.resolve(n)}return fetch(`${e}/info.json`).then((e=>e.json())).then((o=>{const l={folder:e,...o};return n&&(t.value[e]=l),l}))},Oe=(e,t="",n="",o="")=>`${t?`${t}/`:""}${n}${e}${o?`.${o}`:""}`,ze={"Content-Type":"application/json"},Ae=({serverURL:e,lang:t,path:n,page:o,pageSize:l,sortBy:a,signal:r,token:i})=>{const c={};return i&&(c.Authorization=`Bearer ${i}`),fetch(`${e}/comment?path=${encodeURIComponent(n)}&pageSize=${l}&page=${o}&lang=${t}&sortBy=${a}`,{signal:r,headers:c}).then((e=>e.json())).then((e=>((e,t="")=>{if("object"==typeof e&&e.errno)throw new TypeError(`Fetch ${t} failed with ${e.errno}: ${e.errmsg}`);return e})(e,"comment list")))},De=({serverURL:e,lang:t,token:n,objectId:o,...l})=>fetch(`${e}/comment/${o}?lang=${t}`,{method:"PUT",headers:{"Content-Type":"application/json",Authorization:`Bearer ${n}`},body:JSON.stringify(l)}).then((e=>e.json())),Me=e=>e.type.includes("image"),Pe=e=>{const t=Array.from(e).find(Me);return t?t.getAsFile():null},Te=/\$.*?\$/,Ue=/^\$(.*?)\$/,Fe=/^(?:\s{0,3})\$\$((?:[^\n]|\n[^\n])+?)\n{0,1}\$\$/,_e=(e="",t={})=>e.replace(/:(.+?):/g,((e,n)=>t[n]?`<img class="wl-emoji" src="${t[n]}" alt="${n}">`:e)),He=(e,{emojiMap:t,highlighter:o,texRenderer:l})=>{if(n.marked.setOptions({highlight:o||void 0,breaks:!0,smartLists:!0,smartypants:!0}),l){const e=(e=>[{name:"blockMath",level:"block",tokenizer(t){const n=Fe.exec(t);if(null!==n)return{type:"html",raw:n[0],text:e(!0,n[1])}}},{name:"inlineMath",level:"inline",start(e){const t=e.search(Te);return-1!==t?t:e.length},tokenizer(t){const n=Ue.exec(t);if(null!==n)return{type:"html",raw:n[0],text:e(!1,n[1])}}}])(l);n.marked.use({extensions:e})}return n.marked.parse(_e(e,t))};let We=null;const qe=()=>We||(We=M("WALINE_USER",{}));let Ge=null;const Je=()=>Ge||(Ge=M("WALINE_LIKE",[]));var Ke=e.defineComponent({name:"CommentBox",components:{CloseIcon:({size:t})=>e.h("svg",{class:"wl-close-icon",viewBox:"0 0 1024 1024",width:t,height:t},[e.h("path",{d:"M697.173 85.333h-369.92c-144.64 0-241.92 101.547-241.92 252.587v348.587c0 150.613 97.28 252.16 241.92 252.16h369.92c144.64 0 241.494-101.547 241.494-252.16V337.92c0-151.04-96.854-252.587-241.494-252.587z",fill:"currentColor"}),e.h("path",{d:"m640.683 587.52-75.947-75.861 75.904-75.862a37.29 37.29 0 0 0 0-52.778 37.205 37.205 0 0 0-52.779 0l-75.946 75.818-75.862-75.946a37.419 37.419 0 0 0-52.821 0 37.419 37.419 0 0 0 0 52.821l75.947 75.947-75.776 75.733a37.29 37.29 0 1 0 52.778 52.821l75.776-75.776 75.947 75.947a37.376 37.376 0 0 0 52.779-52.821z",fill:"#888"})]),EmojiIcon:()=>e.h("svg",{viewBox:"0 0 1024 1024",width:"24",height:"24"},e.h("path",{d:"M563.2 463.3 677 540c1.7 1.2 3.7 1.8 5.8 1.8.7 0 1.4-.1 2-.2 2.7-.5 5.1-2.1 6.6-4.4l25.3-37.8c1.5-2.3 2.1-5.1 1.6-7.8s-2.1-5.1-4.4-6.6l-73.6-49.1 73.6-49.1c2.3-1.5 3.9-3.9 4.4-6.6.5-2.7 0-5.5-1.6-7.8l-25.3-37.8a10.1 10.1 0 0 0-6.6-4.4c-.7-.1-1.3-.2-2-.2-2.1 0-4.1.6-5.8 1.8l-113.8 76.6c-9.2 6.2-14.7 16.4-14.7 27.5.1 11 5.5 21.3 14.7 27.4zM387 348.8h-45.5c-5.7 0-10.4 4.7-10.4 10.4v153.3c0 5.7 4.7 10.4 10.4 10.4H387c5.7 0 10.4-4.7 10.4-10.4V359.2c0-5.7-4.7-10.4-10.4-10.4zm333.8 241.3-41-20a10.3 10.3 0 0 0-8.1-.5c-2.6.9-4.8 2.9-5.9 5.4-30.1 64.9-93.1 109.1-164.4 115.2-5.7.5-9.9 5.5-9.5 11.2l3.9 45.5c.5 5.3 5 9.5 10.3 9.5h.9c94.8-8 178.5-66.5 218.6-152.7 2.4-5 .3-11.2-4.8-13.6zm186-186.1c-11.9-42-30.5-81.4-55.2-117.1-24.1-34.9-53.5-65.6-87.5-91.2-33.9-25.6-71.5-45.5-111.6-59.2-41.2-14-84.1-21.1-127.8-21.1h-1.2c-75.4 0-148.8 21.4-212.5 61.7-63.7 40.3-114.3 97.6-146.5 165.8-32.2 68.1-44.3 143.6-35.1 218.4 9.3 74.8 39.4 145 87.3 203.3.1.2.3.3.4.5l36.2 38.4c1.1 1.2 2.5 2.1 3.9 2.6 73.3 66.7 168.2 103.5 267.5 103.5 73.3 0 145.2-20.3 207.7-58.7 37.3-22.9 70.3-51.5 98.1-85 27.1-32.7 48.7-69.5 64.2-109.1 15.5-39.7 24.4-81.3 26.6-123.8 2.4-43.6-2.5-87-14.5-129zm-60.5 181.1c-8.3 37-22.8 72-43 104-19.7 31.1-44.3 58.6-73.1 81.7-28.8 23.1-61 41-95.7 53.4-35.6 12.7-72.9 19.1-110.9 19.1-82.6 0-161.7-30.6-222.8-86.2l-34.1-35.8c-23.9-29.3-42.4-62.2-55.1-97.7-12.4-34.7-18.8-71-19.2-107.9-.4-36.9 5.4-73.3 17.1-108.2 12-35.8 30-69.2 53.4-99.1 31.7-40.4 71.1-72 117.2-94.1 44.5-21.3 94-32.6 143.4-32.6 49.3 0 97 10.8 141.8 32 34.3 16.3 65.3 38.1 92 64.8 26.1 26 47.5 56 63.6 89.2 16.2 33.2 26.6 68.5 31 105.1 4.6 37.5 2.7 75.3-5.6 112.3z",fill:"currentColor"})),ImageIcon:()=>e.h("svg",{viewBox:"0 0 1024 1024",width:"24",height:"24"},[e.h("path",{d:"M784 112H240c-88 0-160 72-160 160v480c0 88 72 160 160 160h544c88 0 160-72 160-160V272c0-88-72-160-160-160zm96 640c0 52.8-43.2 96-96 96H240c-52.8 0-96-43.2-96-96V272c0-52.8 43.2-96 96-96h544c52.8 0 96 43.2 96 96v480z",fill:"currentColor"}),e.h("path",{d:"M352 480c52.8 0 96-43.2 96-96s-43.2-96-96-96-96 43.2-96 96 43.2 96 96 96zm0-128c17.6 0 32 14.4 32 32s-14.4 32-32 32-32-14.4-32-32 14.4-32 32-32zm462.4 379.2-3.2-3.2-177.6-177.6c-25.6-25.6-65.6-25.6-91.2 0l-80 80-36.8-36.8c-25.6-25.6-65.6-25.6-91.2 0L200 728c-4.8 6.4-8 14.4-8 24 0 17.6 14.4 32 32 32 9.6 0 16-3.2 22.4-9.6L380.8 640l134.4 134.4c6.4 6.4 14.4 9.6 24 9.6 17.6 0 32-14.4 32-32 0-9.6-4.8-17.6-9.6-24l-52.8-52.8 80-80L769.6 776c6.4 4.8 12.8 8 20.8 8 17.6 0 32-14.4 32-32 0-8-3.2-16-8-20.8z",fill:"currentColor"})]),ImageWall:ae,MarkdownIcon:()=>e.h("svg",{width:"16",height:"16",ariaHidden:"true"},e.h("path",{d:"M14.85 3H1.15C.52 3 0 3.52 0 4.15v7.69C0 12.48.52 13 1.15 13h13.69c.64 0 1.15-.52 1.15-1.15v-7.7C16 3.52 15.48 3 14.85 3zM9 11H7V8L5.5 9.92 4 8v3H2V5h2l1.5 2L7 5h2v6zm2.99.5L9.5 8H11V5h2v3h1.5l-2.51 3.5z",fill:"currentColor"})),PreviewIcon:()=>e.h("svg",{viewBox:"0 0 1024 1024",width:"24",height:"24"},[e.h("path",{d:"M710.816 654.301c70.323-96.639 61.084-230.578-23.705-314.843-46.098-46.098-107.183-71.109-172.28-71.109-65.008 0-126.092 25.444-172.28 71.109-45.227 46.098-70.756 107.183-70.756 172.106 0 64.923 25.444 126.007 71.194 172.106 46.099 46.098 107.184 71.109 172.28 71.109 51.414 0 100.648-16.212 142.824-47.404l126.53 126.006c7.058 7.06 16.297 10.979 26.406 10.979 10.105 0 19.343-3.919 26.402-10.979 14.467-14.467 14.467-38.172 0-52.723L710.816 654.301zm-315.107-23.265c-65.88-65.88-65.88-172.54 0-238.42 32.069-32.07 74.245-49.149 119.471-49.149 45.227 0 87.407 17.603 119.472 49.149 65.88 65.879 65.88 172.539 0 238.42-63.612 63.178-175.242 63.178-238.943 0zm0 0",fill:"currentColor"}),e.h("path",{d:"M703.319 121.603H321.03c-109.8 0-199.469 89.146-199.469 199.38v382.034c0 109.796 89.236 199.38 199.469 199.38h207.397c20.653 0 37.384-16.645 37.384-37.299 0-20.649-16.731-37.296-37.384-37.296H321.03c-68.582 0-124.352-55.77-124.352-124.267V321.421c0-68.496 55.77-124.267 124.352-124.267h382.289c68.582 0 124.352 55.771 124.352 124.267V524.72c0 20.654 16.736 37.299 37.385 37.299 20.654 0 37.384-16.645 37.384-37.299V320.549c-.085-109.8-89.321-198.946-199.121-198.946zm0 0",fill:"currentColor"})]),LoadingIcon:ee,GifIcon:()=>e.h("svg",{width:24,height:24,fill:"currentcolor",viewBox:"0 0 24 24"},[e.h("path",{style:"transform: translateY(0.5px)",d:"M18.968 10.5H15.968V11.484H17.984V12.984H15.968V15H14.468V9H18.968V10.5V10.5ZM8.984 9C9.26533 9 9.49967 9.09367 9.687 9.281C9.87433 9.46833 9.968 9.70267 9.968 9.984V10.5H6.499V13.5H8.468V12H9.968V14.016C9.968 14.2973 9.87433 14.5317 9.687 14.719C9.49967 14.9063 9.26533 15 8.984 15H5.984C5.70267 15 5.46833 14.9063 5.281 14.719C5.09367 14.5317 5 14.2973 5 14.016V9.985C5 9.70367 5.09367 9.46933 5.281 9.282C5.46833 9.09467 5.70267 9.001 5.984 9.001H8.984V9ZM11.468 9H12.968V15H11.468V9V9Z"}),e.h("path",{d:"M18.5 3H5.75C3.6875 3 2 4.6875 2 6.75V18C2 20.0625 3.6875 21.75 5.75 21.75H18.5C20.5625 21.75 22.25 20.0625 22.25 18V6.75C22.25 4.6875 20.5625 3 18.5 3ZM20.75 18C20.75 19.2375 19.7375 20.25 18.5 20.25H5.75C4.5125 20.25 3.5 19.2375 3.5 18V6.75C3.5 5.5125 4.5125 4.5 5.75 4.5H18.5C19.7375 4.5 20.75 5.5125 20.75 6.75V18Z"})])},props:{rootId:{type:String,default:""},replyId:{type:String,default:""},replyUser:{type:String,default:""}},emits:["submit","cancel-reply"],setup(t,{emit:n}){const o=e.inject("config"),l=M("WALINE_COMMENT_BOX_EDITOR",""),r=M("WALINE_USER_META",{nick:"",mail:"",link:""}),i=qe(),c=e.ref({}),s=e.ref(null),m=e.ref(null),u=e.ref(null),p=e.ref(null),v=e.ref(null),f=e.ref(null),g=e.ref(null),h=e.ref({tabs:[],map:{}}),y=e.ref(0),k=e.ref(!1),w=e.ref(!1),b=e.ref(!1),C=e.ref(""),E=e.ref(0),B=e.reactive({loading:!0,list:[]}),N=e.ref(0),I=e.ref(!1),S=e.ref(""),V=e.ref(!1),$=e.computed((()=>o.value.locale)),x=e.computed((()=>Boolean(i.value?.token))),L=e.computed((()=>!1!==o.value.imageUploader)),j=e=>{const t=s.value,n=t.selectionStart,o=t.selectionEnd||0,a=t.scrollTop;l.value=t.value.substring(0,n)+e+t.value.substring(o,t.value.length),t.focus(),t.selectionStart=n+e.length,t.selectionEnd=n+e.length,t.scrollTop=a},R=e=>{const t=`![${o.value.locale.uploading} ${e.name}]()`;return j(t),Promise.resolve().then((()=>o.value.imageUploader(e))).then((n=>{l.value=l.value.replace(t,`\r\n![${e.name}](${n})`)})).catch((e=>{alert(e.message),l.value=l.value.replace(t,"")}))},O=()=>{const{serverURL:e,lang:a,login:m,wordLimit:u,requiredMeta:d}=o.value,p={comment:S.value,nick:r.value.nick,mail:r.value.mail,link:r.value.link,ua:navigator.userAgent,url:o.value.path};if(i.value?.token)p.nick=i.value.display_name,p.mail=i.value.email,p.link=i.value.url;else{if("force"===m)return;if(d.indexOf("nick")>-1&&!p.nick)return c.value.nick?.focus(),alert($.value.nickError);if(d.indexOf("mail")>-1&&!p.mail||p.mail&&!/^\w(?:[\w._-]*\w)?@(?:\w(?:[\w-]*\w)?\.)*\w+$/.exec(p.mail))return c.value.mail?.focus(),alert($.value.mailError);if(!p.comment)return void s.value?.focus();p.nick||(p.nick=$.value.anonymous)}if(!I.value)return alert($.value.wordHint.replace("$0",u[0].toString()).replace("$1",u[1].toString()).replace("$2",E.value.toString()));p.comment=_e(p.comment,h.value.map),t.replyId&&t.rootId&&(p.pid=t.replyId,p.rid=t.rootId,p.at=t.replyUser),V.value=!0,(({serverURL:e,lang:t,token:n,comment:o})=>{const l={"Content-Type":"application/json"};return n&&(l.Authorization=`Bearer ${n}`),fetch(`${e}/comment?lang=${t}`,{method:"POST",headers:l,body:JSON.stringify(o)}).then((e=>e.json()))})({serverURL:e,lang:a,token:i.value?.token,comment:p}).then((e=>{if(V.value=!1,e.errmsg)return alert(e.errmsg);n("submit",e.data),l.value="",C.value="",t.replyId&&n("cancel-reply")})).catch((e=>{V.value=!1,alert(e.message)}))},z=e=>{u.value.contains(e.target)||p.value.contains(e.target)||(k.value=!1),v.value.contains(e.target)||f.value.contains(e.target)||(w.value=!1)},A=async e=>{const{scrollTop:t,clientHeight:n,scrollHeight:l}=e.target,a=(n+t)/l,r=o.value.search,i=g.value?.value||"";a<.9||B.loading||(B.loading=!0,B.list.push(...r.more?await r.more(i,B.list.length):await r.search(i)),B.loading=!1,setTimeout((()=>{e.target.scrollTop=t}),50))},D=d((e=>{B.list=[],A(e)}),300);e.watch([o,E],(([e,t])=>{const{wordLimit:n}=e;n?t<n[0]&&0!==n[0]?(N.value=n[0],I.value=!1):t>n[1]?(N.value=n[1],I.value=!1):(N.value=n[1],I.value=!0):(N.value=0,I.value=!0)}),{immediate:!0}),e.watch(w,(async e=>{if(!e)return;const t=o.value.search;g.value&&(g.value.value=""),B.loading=!0,B.list=t.default?await t.default():await t.search(""),B.loading=!1}));const P=({data:e})=>{e&&"profile"===e.type&&(i.value={...i.value,...e.data},[localStorage,sessionStorage].filter((e=>e.getItem("WALINE_USER"))).forEach((e=>e.setItem("WALINE_USER",JSON.stringify(i)))))};return e.onMounted((()=>{document.body.addEventListener("click",z),window.addEventListener("message",P),e.watch((()=>l.value),(e=>{const{highlighter:t,texRenderer:n}=o.value;S.value=e,C.value=He(e,{emojiMap:h.value.map,highlighter:t,texRenderer:n}),E.value=(e=>(e=>e.match(/[\w\d\s\u00C0-\u024F]+/giu)||[])(e).reduce(((e,t)=>e+(""===t.trim()?0:t.trim().split(/\s+/u).length)),0)+(e=>e.match(/[\u4E00-\u9FA5]/gu)||[])(e).length)(e),e?a.default(s.value):a.default.destroy(s.value)}),{immediate:!0}),e.watch((()=>o.value.emoji),(e=>{return(t=Array.isArray(e)?e:[],Promise.all(t.map((e=>"string"==typeof e?Re(Ne(e)):Promise.resolve(e)))).then((e=>{const t={tabs:[],map:{}};return e.forEach((e=>{const{name:n,folder:o,icon:l,prefix:a,type:r,items:i}=e;t.tabs.push({name:n,icon:Oe(l,o,a,r),items:i.map((e=>{const n=`${a||""}${e}`;return t.map[n]=Oe(e,o,a,r),n}))})})),t}))).then((e=>{h.value=e}));var t}),{immediate:!0})})),e.onUnmounted((()=>{document.body.removeEventListener("click",z),window.removeEventListener("message",P)})),{config:o,locale:$,insert:j,onChange:()=>{const e=m.value;e.files&&L.value&&R(e.files[0]).then((()=>{e.value=""}))},onDrop:e=>{if(e.dataTransfer?.items){const t=Pe(e.dataTransfer.items);t&&L.value&&(R(t),e.preventDefault())}},onKeyDown:e=>{const t=e.key;(e.ctrlKey||e.metaKey)&&"Enter"===t&&O()},onPaste:e=>{if(e.clipboardData){const t=Pe(e.clipboardData.items);t&&L.value&&R(t)}},onLogin:e=>{e.preventDefault();const{lang:t,serverURL:n}=o.value,l=(window.innerWidth-450)/2,a=(window.innerHeight-450)/2,r=window.open(`${n}/ui/login?lng=${encodeURIComponent(t)}`,"_blank",`width=450,height=450,left=${l},top=${a},scrollbars=no,resizable=no,status=no,location=no,toolbar=no,menubar=no`);r?.postMessage({type:"TOKEN",data:null},"*");const c=({data:e})=>{e&&"userInfo"===e.type&&e.data.token&&(r?.close(),i.value=e.data,(e.data.remember?localStorage:sessionStorage).setItem("WALINE_USER",JSON.stringify(e.data)),window.removeEventListener("message",c))};window.addEventListener("message",c)},onLogout:()=>{i.value={},localStorage.setItem("WALINE_USER","null"),sessionStorage.setItem("WALINE_USER","null")},onProfile:e=>{e.preventDefault();const{lang:t,serverURL:n}=o.value,l=(window.innerWidth-800)/2,a=(window.innerHeight-800)/2;window.open(`${n}/ui/profile?lng=${encodeURIComponent(t)}`,"_blank",`width=800,height=800,left=${l},top=${a},scrollbars=no,resizable=no,status=no,location=no,toolbar=no,menubar=no`)?.postMessage({type:"TOKEN",data:i.value.token},"*")},submitComment:O,onImageWallScroll:A,onGifSearch:D,isLogin:x,userInfo:i,isSubmitting:V,wordNumber:E,wordLimit:N,isWordNumberLegal:I,editor:l,userMeta:r,emoji:h,emojiTabIndex:y,showEmoji:k,gifData:B,showGif:w,canUploadImage:L,previewText:C,showPreview:b,inputRefs:c,editorRef:s,emojiButtonRef:u,emojiPopupRef:p,gifButtonRef:v,gifPopupRef:f,imageUploadRef:m,gifSearchInputRef:g}}});const Qe={class:"wl-comment"},Ye={key:0,class:"wl-login-info"},Ze={class:"wl-avatar"},Xe=["title"],et=["title"],tt=["src"],nt=["title","textContent"],ot={class:"wl-panel"},lt=["for","textContent"],at=["id","onUpdate:modelValue","name","type"],rt=["placeholder"],it={class:"wl-preview"},ct=e.createElementVNode("hr",null,null,-1),st=["innerHTML"],mt={class:"wl-footer"},ut={class:"wl-actions"},dt={href:"https://guides.github.com/features/mastering-markdown/",title:"Markdown Guide","aria-label":"Markdown is supported",class:"wl-action",target:"_blank",rel:"noreferrer"},pt=["title"],vt=["title"],ft=["title"],gt=["title"],ht={class:"wl-info"},yt={class:"wl-text-number"},kt={key:0},wt=e.createTextVNode("  /  "),bt=["textContent"],Ct=["textContent"],Et=["disabled"],Bt=["placeholder"],Nt={key:0,class:"wl-loading"},It={key:0,class:"wl-tab-wrapper"},St=["title","onClick"],Vt=["src","alt"],$t={key:0,class:"wl-tabs"},xt=["onClick"],Lt=["src","alt","title"],jt=["title"];var Rt=ne(Ke,[["render",function(t,n,o,l,a,r){const i=e.resolveComponent("CloseIcon"),c=e.resolveComponent("MarkdownIcon"),s=e.resolveComponent("EmojiIcon"),m=e.resolveComponent("GifIcon"),u=e.resolveComponent("ImageIcon"),d=e.resolveComponent("PreviewIcon"),p=e.resolveComponent("LoadingIcon"),v=e.resolveComponent("ImageWall");return e.openBlock(),e.createElementBlock("div",Qe,["disable"!==t.config.login&&t.isLogin?(e.openBlock(),e.createElementBlock("div",Ye,[e.createElementVNode("div",Ze,[e.createElementVNode("button",{class:"wl-logout-btn",title:t.locale.logout,onClick:n[0]||(n[0]=(...e)=>t.onLogout&&t.onLogout(...e))},[e.createVNode(i,{size:14})],8,Xe),e.createElementVNode("a",{href:"#",class:"wl-login-nick","aria-label":"Profile",title:t.locale.profile,onClick:n[1]||(n[1]=(...e)=>t.onProfile&&t.onProfile(...e))},[e.createElementVNode("img",{src:t.userInfo.avatar,alt:"avatar"},null,8,tt)],8,et)]),e.createElementVNode("a",{href:"#",class:"wl-login-nick","aria-label":"Profile",title:t.locale.profile,onClick:n[2]||(n[2]=(...e)=>t.onProfile&&t.onProfile(...e)),textContent:e.toDisplayString(t.userInfo.display_name)},null,8,nt)])):e.createCommentVNode("v-if",!0),e.createElementVNode("div",ot,["force"!==t.config.login&&t.config.meta.length&&!t.isLogin?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["wl-header",`item${t.config.meta.length}`])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.config.meta,(n=>(e.openBlock(),e.createElementBlock("div",{key:n,class:"wl-header-item"},[e.createElementVNode("label",{for:n,textContent:e.toDisplayString(t.locale[n]+(t.config.requiredMeta.includes(n)||!t.config.requiredMeta.length?"":`(${t.locale.optional})`))},null,8,lt),e.withDirectives(e.createElementVNode("input",{id:`wl-${n}`,ref_for:!0,ref:e=>{e&&(t.inputRefs[n]=e)},"onUpdate:modelValue":e=>t.userMeta[n]=e,class:e.normalizeClass(["wl-input",`wl-${n}`]),name:n,type:"mail"===n?"email":"text"},null,10,at),[[e.vModelDynamic,t.userMeta[n]]])])))),128))],2)):e.createCommentVNode("v-if",!0),e.withDirectives(e.createElementVNode("textarea",{id:"wl-edit",ref:"editorRef","onUpdate:modelValue":n[3]||(n[3]=e=>t.editor=e),class:"wl-editor",placeholder:t.replyUser?`@${t.replyUser}`:t.locale.placeholder,onKeydown:n[4]||(n[4]=(...e)=>t.onKeyDown&&t.onKeyDown(...e)),onDrop:n[5]||(n[5]=(...e)=>t.onDrop&&t.onDrop(...e)),onPaste:n[6]||(n[6]=(...e)=>t.onPaste&&t.onPaste(...e))},null,40,rt),[[e.vModelText,t.editor]]),e.withDirectives(e.createElementVNode("div",it,[ct,e.createElementVNode("h4",null,e.toDisplayString(t.locale.preview)+":",1),e.createCommentVNode(" eslint-disable-next-line vue/no-v-html "),e.createElementVNode("div",{class:"wl-content",innerHTML:t.previewText},null,8,st)],512),[[e.vShow,t.showPreview]]),e.createElementVNode("div",mt,[e.createElementVNode("div",ut,[e.createElementVNode("a",dt,[e.createVNode(c)]),e.withDirectives(e.createElementVNode("button",{ref:"emojiButtonRef",class:e.normalizeClass(["wl-action",{actived:t.showEmoji}]),title:t.locale.emoji,onClick:n[7]||(n[7]=e=>t.showEmoji=!t.showEmoji)},[e.createVNode(s)],10,pt),[[e.vShow,t.emoji.tabs.length]]),t.config.search?(e.openBlock(),e.createElementBlock("button",{key:0,ref:"gifButtonRef",class:e.normalizeClass(["wl-action",{actived:t.showGif}]),title:t.locale.gif,onClick:n[8]||(n[8]=e=>t.showGif=!t.showGif)},[e.createVNode(m)],10,vt)):e.createCommentVNode("v-if",!0),e.createElementVNode("input",{id:"wl-image-upload",ref:"imageUploadRef",class:"upload",type:"file",accept:".png,.jpg,.jpeg,.webp,.bmp,.gif",onChange:n[9]||(n[9]=(...e)=>t.onChange&&t.onChange(...e))},null,544),t.canUploadImage?(e.openBlock(),e.createElementBlock("label",{key:1,for:"wl-image-upload",class:"wl-action",title:t.locale.uploadImage},[e.createVNode(u)],8,ft)):e.createCommentVNode("v-if",!0),e.createElementVNode("button",{class:e.normalizeClass(["wl-action",{actived:t.showPreview}]),title:t.locale.preview,onClick:n[10]||(n[10]=e=>t.showPreview=!t.showPreview)},[e.createVNode(d)],10,gt)]),e.createElementVNode("div",ht,[e.createElementVNode("div",yt,[e.createTextVNode(e.toDisplayString(t.wordNumber)+" ",1),t.config.wordLimit?(e.openBlock(),e.createElementBlock("span",kt,[wt,e.createElementVNode("span",{class:e.normalizeClass({illegal:!t.isWordNumberLegal}),textContent:e.toDisplayString(t.wordLimit)},null,10,bt)])):e.createCommentVNode("v-if",!0),e.createTextVNode("  "+e.toDisplayString(t.locale.word),1)]),"disable"===t.config.login||t.isLogin?e.createCommentVNode("v-if",!0):(e.openBlock(),e.createElementBlock("button",{key:0,class:"wl-btn",onClick:n[11]||(n[11]=(...e)=>t.onLogin&&t.onLogin(...e)),textContent:e.toDisplayString(t.locale.login)},null,8,Ct)),"force"!==t.config.login||t.isLogin?(e.openBlock(),e.createElementBlock("button",{key:1,class:"wl-btn primary",title:"Cmd|Ctrl + Enter",disabled:t.isSubmitting,onClick:n[12]||(n[12]=(...e)=>t.submitComment&&t.submitComment(...e))},[t.isSubmitting?(e.openBlock(),e.createBlock(p,{key:0,size:16})):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(e.toDisplayString(t.locale.submit),1)],64))],8,Et)):e.createCommentVNode("v-if",!0)]),e.createElementVNode("div",{ref:"gifPopupRef",class:e.normalizeClass(["wl-gif-popup",{display:t.showGif}])},[e.createElementVNode("input",{ref:"gifSearchInputRef",type:"text",placeholder:t.locale.gifSearchPlaceholder,onInput:n[13]||(n[13]=(...e)=>t.onGifSearch&&t.onGifSearch(...e))},null,40,Bt),e.createVNode(v,{items:t.gifData.list,"column-width":200,gap:6,onInsert:n[14]||(n[14]=e=>t.insert(e)),onScroll:t.onImageWallScroll},null,8,["items","onScroll"]),t.gifData.loading?(e.openBlock(),e.createElementBlock("div",Nt,[e.createVNode(p,{size:30})])):e.createCommentVNode("v-if",!0)],2),e.createElementVNode("div",{ref:"emojiPopupRef",class:e.normalizeClass(["wl-emoji-popup",{display:t.showEmoji}])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.emoji.tabs,((n,o)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:n.name},[o===t.emojiTabIndex?(e.openBlock(),e.createElementBlock("div",It,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.items,(n=>(e.openBlock(),e.createElementBlock("button",{key:n,title:n,onClick:e=>t.insert(`:${n}:`)},[t.showEmoji?(e.openBlock(),e.createElementBlock("img",{key:0,class:"wl-emoji",src:t.emoji.map[n],alt:n,loading:"lazy",referrerPolicy:"no-referrer"},null,8,Vt)):e.createCommentVNode("v-if",!0)],8,St)))),128))])):e.createCommentVNode("v-if",!0)],64)))),128)),t.emoji.tabs.length>1?(e.openBlock(),e.createElementBlock("div",$t,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.emoji.tabs,((n,o)=>(e.openBlock(),e.createElementBlock("button",{key:n.name,class:e.normalizeClass(["wl-tab",{active:t.emojiTabIndex===o}]),onClick:e=>t.emojiTabIndex=o},[e.createElementVNode("img",{class:"wl-emoji",src:n.icon,alt:n.name,title:n.name,loading:"lazy",referrerPolicy:"no-referrer"},null,8,Lt)],10,xt)))),128))])):e.createCommentVNode("v-if",!0)],2)])]),t.replyId?(e.openBlock(),e.createElementBlock("button",{key:1,class:"wl-close",title:t.locale.cancelReply,onClick:n[15]||(n[15]=e=>t.$emit("cancel-reply"))},[e.createVNode(i,{size:24})],8,jt)):e.createCommentVNode("v-if",!0)])}],["__file","CommentBox.vue"]]);const Ot=["approved","waiting","spam"];var zt=e.defineComponent({components:{CommentBox:Rt,DeleteIcon:()=>e.h("svg",{viewBox:"0 0 1024 1024",width:"24",height:"24"},e.h("path",{d:"m341.013 394.667 27.755 393.45h271.83l27.733-393.45h64.106l-28.01 397.952a64 64 0 0 1-63.83 59.498H368.768a64 64 0 0 1-63.83-59.52l-28.053-397.93h64.128zm139.307 19.818v298.667h-64V414.485h64zm117.013 0v298.667h-64V414.485h64zM181.333 288h640v64h-640v-64zm453.483-106.667v64h-256v-64h256z",fill:"red"})),LikeIcon:({active:t=!1})=>e.h("svg",{viewBox:"0 0 1024 1024",width:"24",height:"24"},[e.h("path",{d:"M850.654 323.804c-11.042-25.625-26.862-48.532-46.885-68.225-20.022-19.61-43.258-34.936-69.213-45.73-26.78-11.124-55.124-16.727-84.375-16.727-40.622 0-80.256 11.123-114.698 32.135A214.79 214.79 0 0 0 512 241.819a214.79 214.79 0 0 0-23.483-16.562c-34.442-21.012-74.076-32.135-114.698-32.135-29.25 0-57.595 5.603-84.375 16.727-25.872 10.711-49.19 26.12-69.213 45.73-20.105 19.693-35.843 42.6-46.885 68.225-11.453 26.615-17.303 54.877-17.303 83.963 0 27.439 5.603 56.03 16.727 85.117 9.31 24.307 22.659 49.52 39.715 74.981 27.027 40.293 64.188 82.316 110.33 124.915 76.465 70.615 152.189 119.394 155.402 121.371l19.528 12.525c8.652 5.52 19.776 5.52 28.427 0l19.529-12.525c3.213-2.06 78.854-50.756 155.401-121.371 46.143-42.6 83.304-84.622 110.33-124.915 17.057-25.46 30.487-50.674 39.716-74.981 11.124-29.087 16.727-57.678 16.727-85.117.082-29.086-5.768-57.348-17.221-83.963z"+(t?"":"M512 761.5S218.665 573.55 218.665 407.767c0-83.963 69.461-152.023 155.154-152.023 60.233 0 112.473 33.618 138.181 82.727 25.708-49.109 77.948-82.727 138.18-82.727 85.694 0 155.155 68.06 155.155 152.023C805.335 573.551 512 761.5 512 761.5z"),fill:t?"red":"currentColor"})]),ReplyIcon:()=>e.h("svg",{viewBox:"0 0 1024 1024",width:"24",height:"24"},e.h("path",{d:"M810.667 213.333a64 64 0 0 1 64 64V704a64 64 0 0 1-64 64H478.336l-146.645 96.107a21.333 21.333 0 0 1-33.024-17.856V768h-85.334a64 64 0 0 1-64-64V277.333a64 64 0 0 1 64-64h597.334zm0 64H213.333V704h149.334v63.296L459.243 704h351.424V277.333zm-271.36 213.334v64h-176.64v-64h176.64zm122.026-128v64H362.667v-64h298.666z",fill:"currentColor"})),VerifiedIcon:()=>e.h("svg",{class:"verified-icon",viewBox:"0 0 1024 1024",width:"14",height:"14"},e.h("path",{d:"m894.4 461.56-54.4-63.2c-10.4-12-18.8-34.4-18.8-50.4v-68c0-42.4-34.8-77.2-77.2-77.2h-68c-15.6 0-38.4-8.4-50.4-18.8l-63.2-54.4c-27.6-23.6-72.8-23.6-100.8 0l-62.8 54.8c-12 10-34.8 18.4-50.4 18.4h-69.2c-42.4 0-77.2 34.8-77.2 77.2v68.4c0 15.6-8.4 38-18.4 50l-54 63.6c-23.2 27.6-23.2 72.4 0 100l54 63.6c10 12 18.4 34.4 18.4 50v68.4c0 42.4 34.8 77.2 77.2 77.2h69.2c15.6 0 38.4 8.4 50.4 18.8l63.2 54.4c27.6 23.6 72.8 23.6 100.8 0l63.2-54.4c12-10.4 34.4-18.8 50.4-18.8h68c42.4 0 77.2-34.8 77.2-77.2v-68c0-15.6 8.4-38.4 18.8-50.4l54.4-63.2c23.2-27.6 23.2-73.2-.4-100.8zm-216-25.2-193.2 193.2a30 30 0 0 1-42.4 0l-96.8-96.8a30.16 30.16 0 0 1 0-42.4c11.6-11.6 30.8-11.6 42.4 0l75.6 75.6 172-172c11.6-11.6 30.8-11.6 42.4 0 11.6 11.6 11.6 30.8 0 42.4z",fill:"#27ae60"}))},props:{comment:{type:Object,required:!0},rootId:{type:String,required:!0},reply:{type:Object,default:null}},emits:["submit","reply","like","delete","status","sticky"],setup(t){const n=e.inject("config"),o=Je(),l=qe(),a=e.computed((()=>n.value.locale)),r=e.computed((()=>{const{link:e}=t.comment;return e?Ie(e)?e:`https://${e}`:""})),i=e.computed((()=>o.value.includes(t.comment.objectId))),c=((t,n)=>{const o=q();return e.computed((()=>je(t,o.value,n)))})(t.comment.insertedAt,a.value),s=e.computed((()=>"administrator"===l.value.type)),m=e.computed((()=>t.comment.user_id&&l.value.objectId===t.comment.user_id)),u=e.computed((()=>t.comment.objectId===t.reply?.objectId));return{config:n,locale:a,isReplyingCurrent:u,link:r,like:i,time:c,isAdmin:s,isOwner:m,commentStatus:Ot}}});const At=["id"],Dt={class:"wl-user","aria-hidden":"true"},Mt=["src"],Pt={class:"wl-card"},Tt={class:"wl-head"},Ut=["href"],Ft={key:1,class:"wl-nick"},_t=["textContent"],Ht=["textContent"],Wt=["textContent"],qt=["textContent"],Gt=["textContent"],Jt={class:"wl-comment-actions"},Kt=["title"],Qt=["textContent"],Yt=["title"],Zt={class:"wl-meta","aria-hidden":"true"},Xt=["textContent"],en=["textContent"],tn=["textContent"],nn=["innerHTML"],on={key:0,class:"wl-admin-actions"},ln={class:"wl-comment-status"},an=["disabled","onClick","textContent"],rn={key:1,class:"wl-reply-wrapper"},cn={key:2,class:"wl-quote"};var sn=ne(zt,[["render",function(t,n,o,l,a,r){const i=e.resolveComponent("VerifiedIcon"),c=e.resolveComponent("DeleteIcon"),s=e.resolveComponent("LikeIcon"),m=e.resolveComponent("ReplyIcon"),u=e.resolveComponent("CommentBox"),d=e.resolveComponent("CommentCard",!0);return e.openBlock(),e.createElementBlock("div",{id:t.comment.objectId,class:"wl-item"},[e.createElementVNode("div",Dt,[t.comment.avatar?(e.openBlock(),e.createElementBlock("img",{key:0,src:t.comment.avatar},null,8,Mt)):e.createCommentVNode("v-if",!0),t.comment.type?(e.openBlock(),e.createBlock(i,{key:1})):e.createCommentVNode("v-if",!0)]),e.createElementVNode("div",Pt,[e.createElementVNode("div",Tt,[t.link?(e.openBlock(),e.createElementBlock("a",{key:0,class:"wl-nick",href:t.link,target:"_blank",rel:"nofollow noreferrer"},e.toDisplayString(t.comment.nick),9,Ut)):(e.openBlock(),e.createElementBlock("span",Ft,e.toDisplayString(t.comment.nick),1)),"administrator"===t.comment.type?(e.openBlock(),e.createElementBlock("span",{key:2,class:"wl-badge",textContent:e.toDisplayString(t.locale.admin)},null,8,_t)):e.createCommentVNode("v-if",!0),t.comment.label?(e.openBlock(),e.createElementBlock("span",{key:3,class:"wl-badge",textContent:e.toDisplayString(t.comment.label)},null,8,Ht)):e.createCommentVNode("v-if",!0),t.comment.sticky?(e.openBlock(),e.createElementBlock("span",{key:4,class:"wl-badge",textContent:e.toDisplayString(t.locale.sticky)},null,8,Wt)):e.createCommentVNode("v-if",!0),void 0!==t.comment.level&&t.comment.level>=0?(e.openBlock(),e.createElementBlock("span",{key:5,class:e.normalizeClass(`wl-badge level${t.comment.level}`),textContent:e.toDisplayString(t.locale[`level${t.comment.level}`]||`Level ${t.comment.level}`)},null,10,qt)):e.createCommentVNode("v-if",!0),e.createElementVNode("span",{class:"wl-time",textContent:e.toDisplayString(t.time)},null,8,Gt),e.createElementVNode("div",Jt,[t.isAdmin||t.isOwner?(e.openBlock(),e.createElementBlock("button",{key:0,class:"wl-delete",onClick:n[0]||(n[0]=e=>t.$emit("delete",t.comment))},[e.createVNode(c)])):e.createCommentVNode("v-if",!0),e.createElementVNode("button",{class:"wl-like",title:t.like?t.locale.cancelLike:t.locale.like,onClick:n[1]||(n[1]=e=>t.$emit("like",t.comment))},[e.createVNode(s,{active:t.like},null,8,["active"]),"like"in t.comment?(e.openBlock(),e.createElementBlock("span",{key:0,textContent:e.toDisplayString(t.comment.like)},null,8,Qt)):e.createCommentVNode("v-if",!0)],8,Kt),e.createElementVNode("button",{class:e.normalizeClass(["wl-reply",{active:t.isReplyingCurrent}]),title:t.isReplyingCurrent?t.locale.cancelReply:t.locale.reply,onClick:n[2]||(n[2]=e=>t.$emit("reply",t.isReplyingCurrent?null:t.comment))},[e.createVNode(m)],10,Yt)])]),e.createElementVNode("div",Zt,[t.comment.addr?(e.openBlock(),e.createElementBlock("span",{key:0,textContent:e.toDisplayString(t.comment.addr)},null,8,Xt)):e.createCommentVNode("v-if",!0),t.comment.browser?(e.openBlock(),e.createElementBlock("span",{key:1,textContent:e.toDisplayString(t.comment.browser)},null,8,en)):e.createCommentVNode("v-if",!0),t.comment.os?(e.openBlock(),e.createElementBlock("span",{key:2,textContent:e.toDisplayString(t.comment.os)},null,8,tn)):e.createCommentVNode("v-if",!0)]),e.createCommentVNode(" eslint-disable-next-line vue/no-v-html "),e.createElementVNode("div",{class:"wl-content",innerHTML:t.comment.comment},null,8,nn),t.isAdmin?(e.openBlock(),e.createElementBlock("div",on,[e.createElementVNode("span",ln,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.commentStatus,(n=>(e.openBlock(),e.createElementBlock("button",{key:n,class:e.normalizeClass(`wl-btn wl-${n}`),disabled:t.comment.status===n,onClick:e=>t.$emit("status",{status:n,comment:t.comment}),textContent:e.toDisplayString(t.locale[n])},null,10,an)))),128))]),t.isAdmin&&!t.comment.rid?(e.openBlock(),e.createElementBlock("button",{key:0,class:"wl-btn wl-sticky",onClick:n[3]||(n[3]=e=>t.$emit("sticky",t.comment))},e.toDisplayString(t.comment.sticky?t.locale.unsticky:t.locale.sticky),1)):e.createCommentVNode("v-if",!0)])):e.createCommentVNode("v-if",!0),t.isReplyingCurrent?(e.openBlock(),e.createElementBlock("div",rn,[e.createVNode(u,{"reply-id":t.comment.objectId,"reply-user":t.comment.nick,"root-id":t.rootId,onSubmit:n[4]||(n[4]=e=>t.$emit("submit",e)),onCancelReply:n[5]||(n[5]=e=>t.$emit("reply",null))},null,8,["reply-id","reply-user","root-id"])])):e.createCommentVNode("v-if",!0),t.comment.children?(e.openBlock(),e.createElementBlock("div",cn,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.comment.children,(o=>(e.openBlock(),e.createBlock(d,{key:o.objectId,comment:o,reply:t.reply,"root-id":t.rootId,onReply:n[6]||(n[6]=e=>t.$emit("reply",e)),onSubmit:n[7]||(n[7]=e=>t.$emit("submit",e)),onLike:n[8]||(n[8]=e=>t.$emit("like",e)),onDelete:n[9]||(n[9]=e=>t.$emit("delete",e)),onStatus:n[10]||(n[10]=e=>t.$emit("status",e)),onSticky:n[11]||(n[11]=e=>t.$emit("sticky",e))},null,8,["comment","reply","root-id"])))),128))])):e.createCommentVNode("v-if",!0)])],8,At)}],["__file","CommentCard.vue"]]);const mn=[{key:"insertedAt_desc",name:"latest"},{key:"insertedAt_asc",name:"oldest"},{key:"like_desc",name:"hottest"}];var un=e.defineComponent({name:"WalineRoot",components:{CommentBox:Rt,CommentCard:sn,LoadingIcon:ee},props:["serverURL","path","meta","requiredMeta","dark","lang","locale","pageSize","wordLimit","emoji","login","highlighter","texRenderer","imageUploader","search","copyright"],setup(t){const n=e.computed((()=>(({serverURL:e,path:t=location.pathname,lang:n="zh-CN",locale:o,emoji:l=["//unpkg.com/@waline/emojis@1.1.0/weibo"],meta:a=["nick","mail","link"],requiredMeta:r=[],dark:i=!1,pageSize:c=10,wordLimit:s,imageUploader:m,highlighter:u,texRenderer:d,copyright:p=!0,login:v="enable",search:f=me(),...g})=>({serverURL:Se(e),path:Be(t),locale:{...Ee[n]||Ee["zh-CN"],..."object"==typeof o?o:{}},wordLimit:Ve(s),meta:ie(a),requiredMeta:ie(r),imageUploader:$e(m,ce),highlighter:$e(u,ve),texRenderer:$e(d,se),lang:n,dark:i,emoji:l,pageSize:c,login:v,copyright:p,search:f,...g}))(t))),o=qe(),l=Je(),a=e.ref("loading"),r=e.ref(0),i=e.ref(1),c=e.ref(0),s=e.ref(mn[0].key),m=e.ref([]),u=e.ref(null),d=e.computed((()=>{return"string"==typeof(e=n.value.dark)?"auto"===e?`@media(prefers-color-scheme:dark){body${xe}}`:`${e}${xe}`:!0===e?`:root${xe}`:"";var e}));let p;J(d);const v=e=>{const{serverURL:t,path:l,pageSize:u}=n.value,d=new AbortController;a.value="loading",p?.(),Ae({serverURL:t,lang:n.value.lang,path:l,pageSize:u,sortBy:s.value,page:e,signal:d.signal,token:o.value?.token}).then((t=>{a.value="success",r.value=t.count,m.value.push(...t.data),i.value=e,c.value=t.totalPages})).catch((e=>{"AbortError"!==e.name&&(console.error(e.message),a.value="error")})),p=d.abort.bind(d)},f=()=>{r.value=0,m.value=[],v(1)};return e.provide("config",n),e.watch((()=>t.path),f),e.onMounted((()=>f())),{config:n,darkmodeStyle:d,i18n:e.computed((()=>n.value.locale)),status:a,count:r,page:i,totalPages:c,sortBy:s,sortByItems:mn,data:m,reply:u,loadMore:()=>v(i.value+1),refresh:f,onSortByChange:e=>{s.value!==e&&(s.value=e,f())},onReply:e=>{u.value=e},onSubmit:e=>{if(e.rid){const t=m.value.find((({objectId:t})=>t===e.rid));if(!t)return;Array.isArray(t.children)||(t.children=[]),t.children.push(e)}else m.value.unshift(e)},onStatusChange:async({comment:e,status:t})=>{if(e.status===t)return;const{serverURL:l,lang:a}=n.value;await De({serverURL:l,lang:a,token:o.value?.token,objectId:e.objectId,status:t}),e.status=t},onDelete:async({objectId:e})=>{if(!confirm("Are you sure you want to delete this comment?"))return;const{serverURL:t,lang:l}=n.value;await(({serverURL:e,lang:t,token:n,objectId:o})=>fetch(`${e}/comment/${o}?lang=${t}`,{method:"DELETE",headers:{Authorization:`Bearer ${n}`}}).then((e=>e.json())))({serverURL:t,lang:l,token:o.value?.token,objectId:e}),m.value.some(((t,n)=>t.objectId===e?(m.value=m.value.filter(((e,t)=>t!==n)),!0):t.children.some(((o,l)=>o.objectId===e&&(m.value[n].children=t.children.filter(((e,t)=>t!==l)),!0)))))},onSticky:async e=>{if(e.rid)return;const{serverURL:t,lang:l}=n.value;await De({serverURL:t,lang:l,token:o.value?.token,objectId:e.objectId,sticky:e.sticky?0:1}),e.sticky=!e.sticky},onLike:async e=>{const{serverURL:t,lang:o}=n.value,{objectId:a}=e,r=l.value.includes(a);await(({serverURL:e,lang:t,objectId:n,like:o})=>fetch(`${e}/comment/${n}?lang=${t}`,{method:"PUT",headers:ze,body:JSON.stringify({like:o})}).then((e=>e.json())))({serverURL:t,lang:o,objectId:a,like:!r}),r?l.value=l.value.filter((e=>e!==a)):(l.value=[...l.value,a],l.value.length>50&&(l.value=l.value.slice(-50))),e.like=(e.like||0)+(r?-1:1)},version:"2.7.1"}}});const dn={"data-waline":""},pn={class:"wl-meta-head"},vn={class:"wl-count"},fn=["textContent"],gn={class:"wl-sort"},hn=["onClick"],yn={class:"wl-cards"},kn={key:1,class:"wl-operation"},wn=["textContent"],bn={key:0,class:"wl-loading"},Cn=["textContent"],En={class:"wl-operation"},Bn=["textContent"],Nn={key:3,class:"wl-power"},In=e.createTextVNode(" Powered by "),Sn=e.createElementVNode("a",{href:"https://github.com/walinejs/waline",target:"_blank",rel:"noreferrer"}," Waline ",-1);var Vn=ne(un,[["render",function(t,n,o,l,a,r){const i=e.resolveComponent("CommentBox"),c=e.resolveComponent("CommentCard"),s=e.resolveComponent("LoadingIcon");return e.openBlock(),e.createElementBlock("div",dn,[t.reply?e.createCommentVNode("v-if",!0):(e.openBlock(),e.createBlock(i,{key:0,onSubmit:t.onSubmit},null,8,["onSubmit"])),e.createElementVNode("div",pn,[e.createElementVNode("div",vn,[t.count?(e.openBlock(),e.createElementBlock("span",{key:0,class:"wl-num",textContent:e.toDisplayString(t.count)},null,8,fn)):e.createCommentVNode("v-if",!0),e.createTextVNode(" "+e.toDisplayString(t.i18n.comment),1)]),e.createElementVNode("ul",gn,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.sortByItems,(n=>(e.openBlock(),e.createElementBlock("li",{key:n.key,class:e.normalizeClass([n.key===t.sortBy?"active":""]),onClick:e=>t.onSortByChange(n.key)},e.toDisplayString(t.i18n[n.name]),11,hn)))),128))])]),e.createElementVNode("div",yn,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.data,(n=>(e.openBlock(),e.createBlock(c,{key:n.objectId,"root-id":n.objectId,comment:n,reply:t.reply,onReply:t.onReply,onSubmit:t.onSubmit,onStatus:t.onStatusChange,onDelete:t.onDelete,onSticky:t.onSticky,onLike:t.onLike},null,8,["root-id","comment","reply","onReply","onSubmit","onStatus","onDelete","onSticky","onLike"])))),128))]),"error"===t.status?(e.openBlock(),e.createElementBlock("div",kn,[e.createElementVNode("button",{type:"button",class:"wl-btn",onClick:n[0]||(n[0]=(...e)=>t.refresh&&t.refresh(...e)),textContent:e.toDisplayString(t.i18n.refresh)},null,8,wn)])):(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},["loading"===t.status?(e.openBlock(),e.createElementBlock("div",bn,[e.createVNode(s,{size:30})])):t.data.length?t.page<t.totalPages?(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[e.createCommentVNode(" Load more button "),e.createElementVNode("div",En,[e.createElementVNode("button",{type:"button",class:"wl-btn",onClick:n[1]||(n[1]=(...e)=>t.loadMore&&t.loadMore(...e)),textContent:e.toDisplayString(t.i18n.more)},null,8,Bn)])],2112)):e.createCommentVNode("v-if",!0):(e.openBlock(),e.createElementBlock("div",{key:1,class:"wl-empty",textContent:e.toDisplayString(t.i18n.sofa)},null,8,Cn))],64)),e.createCommentVNode(" Copyright Information "),t.config.copyright?(e.openBlock(),e.createElementBlock("div",Nn,[In,Sn,e.createTextVNode(" v"+e.toDisplayString(t.version),1)])):e.createCommentVNode("v-if",!0)])}],["__file","Waline.vue"]]);exports.Waline=Vn,exports.version="2.7.1";
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("vue"),t=require("autosize"),n=require("marked");function o(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var l,a=o(t);const r="undefined"!=typeof window,i=()=>{};function c(t){return"function"==typeof t?t():e.unref(t)}function s(e,t){return function(...n){e((()=>t.apply(this,n)),{fn:t,thisArg:this,args:n})}}r&&(null==(l=null==window?void 0:window.navigator)?void 0:l.userAgent)&&/iP(ad|hone|od)/.test(window.navigator.userAgent);const m=e=>e();function u(t){return!!e.getCurrentScope()&&(e.onScopeDispose(t),!0)}function d(e,t=200,n={}){return s(function(e,t={}){let n,o;return l=>{const a=c(e),r=c(t.maxWait);if(n&&clearTimeout(n),a<=0||void 0!==r&&r<=0)return o&&(clearTimeout(o),o=null),l();r&&!o&&(o=setTimeout((()=>{n&&clearTimeout(n),o=null,l()}),r)),n=setTimeout((()=>{o&&clearTimeout(o),o=null,l()}),a)}}(t,n),e)}var p=Object.getOwnPropertySymbols,v=Object.prototype.hasOwnProperty,f=Object.prototype.propertyIsEnumerable;function g(t,n,o={}){const l=o,{eventFilter:a=m}=l,r=((e,t)=>{var n={};for(var o in e)v.call(e,o)&&t.indexOf(o)<0&&(n[o]=e[o]);if(null!=e&&p)for(var o of p(e))t.indexOf(o)<0&&f.call(e,o)&&(n[o]=e[o]);return n})(l,["eventFilter"]);return e.watch(t,s(a,n),r)}var h=Object.defineProperty,y=Object.defineProperties,k=Object.getOwnPropertyDescriptors,w=Object.getOwnPropertySymbols,b=Object.prototype.hasOwnProperty,C=Object.prototype.propertyIsEnumerable,E=(e,t,n)=>t in e?h(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;function B(t,n,o={}){const l=o,{eventFilter:a}=l,r=((e,t)=>{var n={};for(var o in e)b.call(e,o)&&t.indexOf(o)<0&&(n[o]=e[o]);if(null!=e&&w)for(var o of w(e))t.indexOf(o)<0&&C.call(e,o)&&(n[o]=e[o]);return n})(l,["eventFilter"]),{eventFilter:i,pause:c,resume:s,isActive:u}=function(t=m){const n=e.ref(!0);return{isActive:n,pause:function(){n.value=!1},resume:function(){n.value=!0},eventFilter:(...e)=>{n.value&&t(...e)}}}(a),d=g(t,n,(p=((e,t)=>{for(var n in t||(t={}))b.call(t,n)&&E(e,n,t[n]);if(w)for(var n of w(t))C.call(t,n)&&E(e,n,t[n]);return e})({},r),y(p,k({eventFilter:i}))));var p;return{stop:d,pause:c,resume:s,isActive:u}}const I=r?window:void 0,N=r?window.document:void 0;function V(...t){let n,o,l,a;if("string"==typeof t[0]?([o,l,a]=t,n=I):[n,o,l,a]=t,!n)return i;let r=i;const s=e.watch((()=>function(e){var t;const n=c(e);return null!=(t=null==n?void 0:n.$el)?t:n}(n)),(e=>{r(),e&&(e.addEventListener(o,l,a),r=()=>{e.removeEventListener(o,l,a),r=i})}),{immediate:!0,flush:"post"}),m=()=>{s(),r()};return u(m),m}r&&window.navigator,r&&window.location;const S="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},$="__vueuse_ssr_handlers__";S[$]=S[$]||{};const j=S[$];var x=Object.defineProperty,L=Object.getOwnPropertySymbols,O=Object.prototype.hasOwnProperty,R=Object.prototype.propertyIsEnumerable,z=(e,t,n)=>t in e?x(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,M=(e,t)=>{for(var n in t||(t={}))O.call(t,n)&&z(e,n,t[n]);if(L)for(var n of L(t))R.call(t,n)&&z(e,n,t[n]);return e};const A={boolean:{read:e=>"true"===e,write:e=>String(e)},object:{read:e=>JSON.parse(e),write:e=>JSON.stringify(e)},number:{read:e=>Number.parseFloat(e),write:e=>String(e)},any:{read:e=>e,write:e=>String(e)},string:{read:e=>e,write:e=>String(e)},map:{read:e=>new Map(JSON.parse(e)),write:e=>JSON.stringify(Array.from(e.entries()))},set:{read:e=>new Set(JSON.parse(e)),write:e=>JSON.stringify(Array.from(e))},date:{read:e=>new Date(e),write:e=>e.toISOString()}};function D(t,n,o,l={}){var a;const{flush:r="pre",deep:i=!0,listenToStorageChanges:s=!0,writeDefaults:m=!0,mergeDefaults:u=!1,shallow:d,window:p=I,eventFilter:v,onError:f=(e=>{console.error(e)})}=l,g=(d?e.shallowRef:e.ref)(n);if(!o)try{o=function(e,t){return j[e]||t}("getDefaultStorage",(()=>{var e;return null==(e=I)?void 0:e.localStorage}))()}catch(e){f(e)}if(!o)return g;const h=c(n),y=function(e){return null==e?"any":e instanceof Set?"set":e instanceof Map?"map":e instanceof Date?"date":"boolean"==typeof e?"boolean":"string"==typeof e?"string":"object"==typeof e||Array.isArray(e)?"object":Number.isNaN(e)?"any":"number"}(h),k=null!=(a=l.serializer)?a:A[y],{pause:w,resume:b}=B(g,(()=>function(e){try{null==e?o.removeItem(t):o.setItem(t,k.write(e))}catch(e){f(e)}}(g.value)),{flush:r,deep:i,eventFilter:v});return p&&s&&V(p,"storage",C),C(),g;function C(e){e&&e.key!==t||(g.value=function(e){if(!e||e.key===t){w();try{const n=e?e.newValue:o.getItem(t);if(null==n)return m&&null!==h&&o.setItem(t,k.write(h)),h;if(!e&&u){const e=k.read(n);return"function"==typeof u?u(e,h):"object"!==y||Array.isArray(e)?e:M(M({},h),e)}return"string"!=typeof n?n:k.read(n)}catch(e){f(e)}finally{b()}}}(e))}}var P,T,U=Object.defineProperty,F=Object.getOwnPropertySymbols,H=Object.prototype.hasOwnProperty,_=Object.prototype.propertyIsEnumerable,W=(e,t,n)=>t in e?U(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;function q(t={}){const{controls:n=!1,interval:o="requestAnimationFrame"}=t,l=e.ref(new Date),a=()=>l.value=new Date,i="requestAnimationFrame"===o?function(t,n={}){const{immediate:o=!0,window:l=I}=n,a=e.ref(!1);let r=null;function i(){a.value&&l&&(t(),r=l.requestAnimationFrame(i))}function c(){!a.value&&l&&(a.value=!0,i())}function s(){a.value=!1,null!=r&&l&&(l.cancelAnimationFrame(r),r=null)}return o&&c(),u(s),{isActive:a,pause:s,resume:c}}(a,{immediate:!0}):function(t,n=1e3,o={}){const{immediate:l=!0,immediateCallback:a=!1}=o;let i=null;const s=e.ref(!1);function m(){i&&(clearInterval(i),i=null)}function d(){s.value=!1,m()}function p(){e.unref(n)<=0||(s.value=!0,a&&t(),m(),i=setInterval(t,c(n)))}l&&r&&p(),e.isRef(n)&&u(e.watch(n,(()=>{s.value&&r&&p()})));return u(d),{isActive:s,pause:d,resume:p}}(a,o,{immediate:!0});return n?((e,t)=>{for(var n in t||(t={}))H.call(t,n)&&W(e,n,t[n]);if(F)for(var n of F(t))_.call(t,n)&&W(e,n,t[n]);return e})({now:l},i):l}(T=P||(P={})).UP="UP",T.RIGHT="RIGHT",T.DOWN="DOWN",T.LEFT="LEFT",T.NONE="NONE";let G=0;function J(t,n={}){const o=e.ref(!1),{document:l=N,immediate:a=!0,manual:r=!1,id:i="vueuse_styletag_"+ ++G}=n,c=e.ref(t);let s=()=>{};const m=()=>{if(!l)return;const t=l.getElementById(i)||l.createElement("style");t.type="text/css",t.id=i,n.media&&(t.media=n.media),l.head.appendChild(t),o.value||(s=e.watch(c,(e=>{t.innerText=e}),{immediate:!0}),o.value=!0)},d=()=>{l&&o.value&&(s(),l.head.removeChild(l.getElementById(i)),o.value=!1)};return a&&!r&&function(t,n=!0){e.getCurrentInstance()?e.onMounted(t):n?t():e.nextTick(t)}(m),r||u(d),{id:i,css:c,unload:d,load:m,isLoaded:e.readonly(o)}}var K=Object.defineProperty,Q=Object.getOwnPropertySymbols,Z=Object.prototype.hasOwnProperty,Y=Object.prototype.propertyIsEnumerable,X=(e,t,n)=>t in e?K(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;((e,t)=>{for(var n in t||(t={}))Z.call(t,n)&&X(e,n,t[n]);if(Q)for(var n of Q(t))Y.call(t,n)&&X(e,n,t[n])})({linear:function(e){return e}},{easeInSine:[.12,0,.39,0],easeOutSine:[.61,1,.88,1],easeInOutSine:[.37,0,.63,1],easeInQuad:[.11,0,.5,0],easeOutQuad:[.5,1,.89,1],easeInOutQuad:[.45,0,.55,1],easeInCubic:[.32,0,.67,0],easeOutCubic:[.33,1,.68,1],easeInOutCubic:[.65,0,.35,1],easeInQuart:[.5,0,.75,0],easeOutQuart:[.25,1,.5,1],easeInOutQuart:[.76,0,.24,1],easeInQuint:[.64,0,.78,0],easeOutQuint:[.22,1,.36,1],easeInOutQuint:[.83,0,.17,1],easeInExpo:[.7,0,.84,0],easeOutExpo:[.16,1,.3,1],easeInOutExpo:[.87,0,.13,1],easeInCirc:[.55,0,1,.45],easeOutCirc:[0,.55,.45,1],easeInOutCirc:[.85,0,.15,1],easeInBack:[.36,0,.66,-.56],easeOutBack:[.34,1.56,.64,1],easeInOutBack:[.68,-.6,.32,1.6]});const ee=({size:t})=>e.h("svg",{width:t,height:t,viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid"},e.h("circle",{cx:50,cy:50,fill:"none",stroke:"currentColor",strokeWidth:"4",r:"40","stroke-dasharray":"85 30"},e.h("animateTransform",{attributeName:"transform",type:"rotate",repeatCount:"indefinite",dur:"1s",values:"0 50 50;360 50 50",keyTimes:"0;1"})));var te=e.defineComponent({name:"ImageWall",components:{LoadingIcon:ee},props:{items:{type:Array,default:()=>[]},columnWidth:{type:Number,default:300},gap:{type:Number,default:0}},emits:["insert"],setup(t){let n=null;const o=e.ref(null),l=e.ref({}),a=e.ref([]),r=()=>{const e=Math.floor((o.value.getBoundingClientRect().width+t.gap)/(t.columnWidth+t.gap));return e>0?e:1},i=async n=>{if(n>=t.items.length)return;await e.nextTick();const l=Array.from(o.value?.children||[]).reduce(((e,t)=>t.getBoundingClientRect().height<e.getBoundingClientRect().height?t:e));a.value[Number(l.dataset.index)].push(n),await i(n+1)},c=async(e=!1)=>{if(a.value.length===r()&&!e)return;var t;a.value=(t=r(),new Array(t).fill(null).map((()=>[])));const n=window.scrollY;await i(0),window.scrollTo({top:n})};return e.watch((()=>[t.items]),(()=>{l.value={},c(!0)})),e.watch((()=>[t.columnWidth,t.gap]),(()=>c())),e.onMounted((()=>{c(!0),n=new ResizeObserver((()=>c())),n.observe(o.value)})),e.onBeforeUnmount((()=>n.unobserve(o.value))),{columns:a,state:l,wall:o}}}),ne=(e,t)=>{const n=e.__vccOpts||e;for(const[e,o]of t)n[e]=o;return n};const oe=["data-index"],le=["src","title","onLoad","onClick"];var ae=ne(te,[["render",function(t,n,o,l,a,r){const i=e.resolveComponent("LoadingIcon");return e.openBlock(),e.createElementBlock("div",{ref:"wall",class:"wl-gallery",style:e.normalizeStyle({gap:`${t.gap}px`})},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.columns,((n,o)=>(e.openBlock(),e.createElementBlock("div",{key:o,class:"wl-gallery-column","data-index":o,style:e.normalizeStyle({gap:`${t.gap}px`})},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n,(n=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:n},[t.state[t.items[n].src]?e.createCommentVNode("v-if",!0):(e.openBlock(),e.createBlock(i,{key:0,size:36,style:{margin:"20px auto"}})),e.createElementVNode("img",{class:"wl-gallery-item",src:t.items[n].src,title:t.items[n].title,loading:"lazy",onLoad:e=>t.state[t.items[n].src]=!0,onClick:e=>t.$emit("insert",`![](${t.items[n].src})`)},null,40,le)],64)))),128))],12,oe)))),128))],4)}],["__file","ImageWall.vue"]]);const re=["nick","mail","link"],ie=e=>e.filter((e=>re.includes(e))),ce=e=>new Promise(((t,n)=>{if(e.size>128e3)return n(new Error("File too large! File size limit 128KB"));const o=new FileReader;o.readAsDataURL(e),o.onload=()=>t(o.result?.toString()||""),o.onerror=n})),se=e=>!0===e?'<p class="wl-tex">Tex is not available in preview</p>':'<span class="wl-tex">Tex is not available in preview</span>',me=()=>{const e={next:""},t=({keyword:e,pos:t})=>{const n=new URLSearchParams("media_filter=minimal");return n.set("key","PAY5JLFIH6V6"),n.set("limit","20"),n.set("pos",t||""),n.set("q",e),fetch(`https://g.tenor.com/v1/search?${n.toString()}`,{headers:{"Content-Type":"application/json"}}).then((e=>e.json())).catch((()=>({next:t||"",results:[]})))};return{search:(n="")=>t({keyword:n}).then((t=>(e.next=t.next,t.results.map((e=>({title:e.title,src:e.media[0].tinygif.url})))))),more:n=>t({keyword:n,pos:e.next}).then((t=>(e.next=t.next,t.results.map((e=>({title:e.title,src:e.media[0].tinygif.url}))))))}},ue=new RegExp(`(${/[\u4E00-\u9FFF\u3400-\u4dbf\uf900-\ufaff\u3040-\u309f\uac00-\ud7af\u0400-\u04FF]+|\w+/.source}|${/</.source})|((?:${/(?:^|\s)\/\/(.+?)$/gm.source})|(?:${/\/\*([\S\s]*?)\*\//gm.source}))`,"gmi"),de=["23AC69","91C132","F19726","E8552D","1AAB8E","E1147F","2980C1","1BA1E6","9FA0A0","F19726","E30B20","E30B20","A3338B"],pe={},ve=e=>{let t=0;return e.replace(ue,((e,n,o)=>{if(o)return`<span style="color: slategray">${o}</span>`;if("<"===n)return"&lt;";let l;pe[n]?l=pe[n]:(l=de[t],pe[n]=l);const a=`<span style="color: #${l}">${n}</span>`;return t=++t%de.length,a}))},fe=["nick","nickError","mail","mailError","link","optional","placeholder","sofa","submit","like","cancelLike","reply","cancelReply","comment","refresh","more","preview","emoji","uploadImage","seconds","minutes","hours","days","now","uploading","login","logout","admin","sticky","word","wordHint","anonymous","level0","level1","level2","level3","level4","level5","gif","gifSearchPlaceholder","profile","approved","waiting","spam","unsticky","oldest","latest","hottest"],ge=e=>Object.fromEntries(e.map(((e,t)=>[fe[t],e])));var he=ge(["NickName","NickName cannot be less than 3 bytes.","E-Mail","Please confirm your email address.","Website","Optional","Comment here...","No comment yet.","Submit","Like","Cancel like","Reply","Cancel reply","Comments","Refresh","Load More...","Preview","Emoji","Upload Image","seconds ago","minutes ago","hours ago","days ago","just now","Uploading","Login","logout","Admin","Sticky","Words","Please input comments between $0 and $1 words!\n Current word number: $2","Anonymous","Dwarves","Hobbits","Ents","Wizards","Elves","Maiar","GIF","Search GIF","Profile","Approved","Waiting","Spam","Unsticky","Oldest","Latest","Hottest"]),ye=ge(["ニックネーム","3バイト以上のニックネームをご入力ください.","メールアドレス","メールアドレスをご確認ください.","サイト","オプション","ここにコメント","コメントしましょう~","提出する","Like","Cancel like","返信する","キャンセル","コメント","更新","さらに読み込む","プレビュー","絵文字","画像をアップロード","秒前","分前","時間前","日前","たっだ今","アップロード","ログインする","ログアウト","管理者","トップに置く","ワード","コメントは $0 から $1 ワードの間でなければなりません!\n 現在の単語番号: $2","匿名","うえにん","なかにん","しもおし","特にしもおし","かげ","なぬし","GIF","探す GIF","個人情報","承認済み","待っている","スパム","べたつかない","逆順","正順","人気順"]),ke=ge(["昵称","昵称不能少于3个字符","邮箱","请填写正确的邮件地址","网址","可选","欢迎评论","来发评论吧~","提交","喜欢","取消喜欢","回复","取消回复","评论","刷新","加载更多...","预览","表情","上传图片","秒前","分钟前","小时前","天前","刚刚","正在上传","登录","退出","博主","置顶","字","评论字数应在 $0 到 $1 字之间!\n当前字数:$2","匿名","潜水","冒泡","吐槽","活跃","话痨","传说","表情包","搜索表情包","个人资料","通过","待审核","垃圾","取消置顶","按倒序","按正序","按热度"]),we=ge(["暱稱","暱稱不能少於3個字元","郵箱","請填寫正確的郵件地址","網址","可選","歡迎評論","來發評論吧~","提交","喜歡","取消喜歡","回覆","取消回覆","評論","刷新","載入更多...","預覽","表情","上傳圖片","秒前","分鐘前","小時前","天前","剛剛","正在上傳","登錄","退出","博主","置頂","字","評論字數應在 $0 到 $1 字之間!\n當前字數:$2","匿名","潛水","冒泡","吐槽","活躍","話癆","傳說","表情包","搜索表情包","個人資料","通過","待審核","垃圾","取消置頂","按倒序","按正序","按熱度"]),be=ge(["Apelido","Apelido não pode ser menor que 3 bytes.","E-Mail","Por favor, confirme seu endereço de e-mail.","Website","Opcional","Comente aqui...","Nenhum comentário, ainda.","Enviar","Like","Cancel like","Responder","Cancelar resposta","Comentários","Refrescar","Carregar Mais...","Visualizar","Emoji","Enviar Imagem","segundos atrás","minutos atrás","horas atrás","dias atrás","agora mesmo","Enviando","Entrar","Sair","Admin","Sticky","Palavras","Favor enviar comentário com $0 a $1 palavras!\n Número de palavras atuais: $2","Anônimo","Dwarves","Hobbits","Ents","Wizards","Elves","Maiar","GIF","Pesquisar GIF","informação pessoal","Aprovado","Espera","Spam","Unsticky","Mais velho","Mais recentes","Mais quente"]),Ce=ge(["Псевдоним","Никнейм не может быть меньше 3 байт.","Эл. адрес","Пожалуйста, подтвердите адрес вашей электронной почты.","Веб-сайт","Необязательный","Комментарий здесь...","Пока нет комментариев.","Отправить","Like","Cancel like","Отвечать","Отменить ответ","Комментарии","Обновить","Загрузи больше...","Превью","эмодзи","Загрузить изображение","секунд назад","несколько минут назад","несколько часов назад","дней назад","прямо сейчас","Загрузка","Авторизоваться","Выход из системы","Админ","Липкий","Слова","Пожалуйста, введите комментарии от $0 до $1 слов!\nНомер текущего слова: $2","Анонимный","Dwarves","Hobbits","Ents","Wizards","Elves","Maiar","GIF","Поиск GIF","Персональные данные","Одобренный","Ожидающий","Спам","Нелипкий","самый старый","последний","самый горячий"]);const Ee={zh:ke,"zh-cn":ke,"zh-CN":ke,"zh-tw":we,"zh-TW":we,en:he,"en-US":he,"en-us":he,jp:ye,"jp-jp":ye,"jp-JP":ye,"pt-br":be,"pt-BR":be,ru:Ce,"ru-ru":Ce,"ru-RU":Ce},Be=e=>{try{e=decodeURI(e)}catch(e){}return e},Ie=(e="")=>e.replace(/\/$/u,""),Ne=e=>/^(https?:)?\/\//.test(e),Ve=e=>{const t=Ie(e);return Ne(t)?t:`https://${t}`},Se=e=>Array.isArray(e)?e:!!e&&[0,e],$e=(e,t)=>"function"==typeof e?e:!1!==e&&t,je="{--waline-white:#000;--waline-light-grey:#666;--waline-dark-grey:#999;--waline-color:#888;--waline-bgcolor:#1e1e1e;--waline-bgcolor-light:#272727;--waline-bgcolor-hover: #444;--waline-border-color:#333;--waline-disable-bgcolor:#444;--waline-disable-color:#272727;--waline-bq-color:#272727;--waline-info-bgcolor:#272727;--waline-info-color:#666}",xe=(e,t)=>{let n=e.toString();for(;n.length<t;)n="0"+n;return n},Le=(e,t,n)=>{if(!e)return"";const o="string"==typeof e?new Date(-1!==e.indexOf(" ")?e.replace(/-/g,"/"):e):e,l=t.getTime()-o.getTime(),a=Math.floor(l/864e5);if(0===a){const e=l%864e5,t=Math.floor(e/36e5);if(0===t){const t=e%36e5,o=Math.floor(t/6e4);if(0===o){const e=t%6e4;return`${Math.round(e/1e3)} ${n.seconds}`}return`${o} ${n.minutes}`}return`${t} ${n.hours}`}return a<0?n.now:a<8?`${a} ${n.days}`:(e=>{const t=xe(e.getDate(),2),n=xe(e.getMonth()+1,2);return`${xe(e.getFullYear(),2)}-${n}-${t}`})(o)},Oe=e=>{const t=D("WALINE_EMOJI",{}),n=Boolean(/@[0-9]+\.[0-9]+\.[0-9]+/.test(e));if(n){const n=t.value[e];if(n)return Promise.resolve(n)}return fetch(`${e}/info.json`).then((e=>e.json())).then((o=>{const l={folder:e,...o};return n&&(t.value[e]=l),l}))},Re=(e,t="",n="",o="")=>`${t?`${t}/`:""}${n}${e}${o?`.${o}`:""}`,ze={"Content-Type":"application/json"},Me=({serverURL:e,lang:t,path:n,page:o,pageSize:l,sortBy:a,signal:r,token:i})=>{const c={};return i&&(c.Authorization=`Bearer ${i}`),fetch(`${e}/comment?path=${encodeURIComponent(n)}&pageSize=${l}&page=${o}&lang=${t}&sortBy=${a}`,{signal:r,headers:c}).then((e=>e.json())).then((e=>((e,t="")=>{if("object"==typeof e&&e.errno)throw new TypeError(`Fetch ${t} failed with ${e.errno}: ${e.errmsg}`);return e})(e,"comment list")))},Ae=({serverURL:e,lang:t,token:n,objectId:o,...l})=>fetch(`${e}/comment/${o}?lang=${t}`,{method:"PUT",headers:{"Content-Type":"application/json",Authorization:`Bearer ${n}`},body:JSON.stringify(l)}).then((e=>e.json())),De=e=>e.type.includes("image"),Pe=e=>{const t=Array.from(e).find(De);return t?t.getAsFile():null},Te=/\$.*?\$/,Ue=/^\$(.*?)\$/,Fe=/^(?:\s{0,3})\$\$((?:[^\n]|\n[^\n])+?)\n{0,1}\$\$/,He=(e="",t={})=>e.replace(/:(.+?):/g,((e,n)=>t[n]?`<img class="wl-emoji" src="${t[n]}" alt="${n}">`:e)),_e=(e,{emojiMap:t,highlighter:o,texRenderer:l})=>{if(n.marked.setOptions({highlight:o||void 0,breaks:!0,smartLists:!0,smartypants:!0}),l){const e=(e=>[{name:"blockMath",level:"block",tokenizer(t){const n=Fe.exec(t);if(null!==n)return{type:"html",raw:n[0],text:e(!0,n[1])}}},{name:"inlineMath",level:"inline",start(e){const t=e.search(Te);return-1!==t?t:e.length},tokenizer(t){const n=Ue.exec(t);if(null!==n)return{type:"html",raw:n[0],text:e(!1,n[1])}}}])(l);n.marked.use({extensions:e})}return n.marked.parse(He(e,t))};let We=null;const qe=()=>We||(We=D("WALINE_USER",{}));let Ge=null;const Je=()=>Ge||(Ge=D("WALINE_LIKE",[]));var Ke=e.defineComponent({name:"CommentBox",components:{CloseIcon:({size:t})=>e.h("svg",{class:"wl-close-icon",viewBox:"0 0 1024 1024",width:t,height:t},[e.h("path",{d:"M697.173 85.333h-369.92c-144.64 0-241.92 101.547-241.92 252.587v348.587c0 150.613 97.28 252.16 241.92 252.16h369.92c144.64 0 241.494-101.547 241.494-252.16V337.92c0-151.04-96.854-252.587-241.494-252.587z",fill:"currentColor"}),e.h("path",{d:"m640.683 587.52-75.947-75.861 75.904-75.862a37.29 37.29 0 0 0 0-52.778 37.205 37.205 0 0 0-52.779 0l-75.946 75.818-75.862-75.946a37.419 37.419 0 0 0-52.821 0 37.419 37.419 0 0 0 0 52.821l75.947 75.947-75.776 75.733a37.29 37.29 0 1 0 52.778 52.821l75.776-75.776 75.947 75.947a37.376 37.376 0 0 0 52.779-52.821z",fill:"#888"})]),EmojiIcon:()=>e.h("svg",{viewBox:"0 0 1024 1024",width:"24",height:"24"},e.h("path",{d:"M563.2 463.3 677 540c1.7 1.2 3.7 1.8 5.8 1.8.7 0 1.4-.1 2-.2 2.7-.5 5.1-2.1 6.6-4.4l25.3-37.8c1.5-2.3 2.1-5.1 1.6-7.8s-2.1-5.1-4.4-6.6l-73.6-49.1 73.6-49.1c2.3-1.5 3.9-3.9 4.4-6.6.5-2.7 0-5.5-1.6-7.8l-25.3-37.8a10.1 10.1 0 0 0-6.6-4.4c-.7-.1-1.3-.2-2-.2-2.1 0-4.1.6-5.8 1.8l-113.8 76.6c-9.2 6.2-14.7 16.4-14.7 27.5.1 11 5.5 21.3 14.7 27.4zM387 348.8h-45.5c-5.7 0-10.4 4.7-10.4 10.4v153.3c0 5.7 4.7 10.4 10.4 10.4H387c5.7 0 10.4-4.7 10.4-10.4V359.2c0-5.7-4.7-10.4-10.4-10.4zm333.8 241.3-41-20a10.3 10.3 0 0 0-8.1-.5c-2.6.9-4.8 2.9-5.9 5.4-30.1 64.9-93.1 109.1-164.4 115.2-5.7.5-9.9 5.5-9.5 11.2l3.9 45.5c.5 5.3 5 9.5 10.3 9.5h.9c94.8-8 178.5-66.5 218.6-152.7 2.4-5 .3-11.2-4.8-13.6zm186-186.1c-11.9-42-30.5-81.4-55.2-117.1-24.1-34.9-53.5-65.6-87.5-91.2-33.9-25.6-71.5-45.5-111.6-59.2-41.2-14-84.1-21.1-127.8-21.1h-1.2c-75.4 0-148.8 21.4-212.5 61.7-63.7 40.3-114.3 97.6-146.5 165.8-32.2 68.1-44.3 143.6-35.1 218.4 9.3 74.8 39.4 145 87.3 203.3.1.2.3.3.4.5l36.2 38.4c1.1 1.2 2.5 2.1 3.9 2.6 73.3 66.7 168.2 103.5 267.5 103.5 73.3 0 145.2-20.3 207.7-58.7 37.3-22.9 70.3-51.5 98.1-85 27.1-32.7 48.7-69.5 64.2-109.1 15.5-39.7 24.4-81.3 26.6-123.8 2.4-43.6-2.5-87-14.5-129zm-60.5 181.1c-8.3 37-22.8 72-43 104-19.7 31.1-44.3 58.6-73.1 81.7-28.8 23.1-61 41-95.7 53.4-35.6 12.7-72.9 19.1-110.9 19.1-82.6 0-161.7-30.6-222.8-86.2l-34.1-35.8c-23.9-29.3-42.4-62.2-55.1-97.7-12.4-34.7-18.8-71-19.2-107.9-.4-36.9 5.4-73.3 17.1-108.2 12-35.8 30-69.2 53.4-99.1 31.7-40.4 71.1-72 117.2-94.1 44.5-21.3 94-32.6 143.4-32.6 49.3 0 97 10.8 141.8 32 34.3 16.3 65.3 38.1 92 64.8 26.1 26 47.5 56 63.6 89.2 16.2 33.2 26.6 68.5 31 105.1 4.6 37.5 2.7 75.3-5.6 112.3z",fill:"currentColor"})),ImageIcon:()=>e.h("svg",{viewBox:"0 0 1024 1024",width:"24",height:"24"},[e.h("path",{d:"M784 112H240c-88 0-160 72-160 160v480c0 88 72 160 160 160h544c88 0 160-72 160-160V272c0-88-72-160-160-160zm96 640c0 52.8-43.2 96-96 96H240c-52.8 0-96-43.2-96-96V272c0-52.8 43.2-96 96-96h544c52.8 0 96 43.2 96 96v480z",fill:"currentColor"}),e.h("path",{d:"M352 480c52.8 0 96-43.2 96-96s-43.2-96-96-96-96 43.2-96 96 43.2 96 96 96zm0-128c17.6 0 32 14.4 32 32s-14.4 32-32 32-32-14.4-32-32 14.4-32 32-32zm462.4 379.2-3.2-3.2-177.6-177.6c-25.6-25.6-65.6-25.6-91.2 0l-80 80-36.8-36.8c-25.6-25.6-65.6-25.6-91.2 0L200 728c-4.8 6.4-8 14.4-8 24 0 17.6 14.4 32 32 32 9.6 0 16-3.2 22.4-9.6L380.8 640l134.4 134.4c6.4 6.4 14.4 9.6 24 9.6 17.6 0 32-14.4 32-32 0-9.6-4.8-17.6-9.6-24l-52.8-52.8 80-80L769.6 776c6.4 4.8 12.8 8 20.8 8 17.6 0 32-14.4 32-32 0-8-3.2-16-8-20.8z",fill:"currentColor"})]),ImageWall:ae,MarkdownIcon:()=>e.h("svg",{width:"16",height:"16",ariaHidden:"true"},e.h("path",{d:"M14.85 3H1.15C.52 3 0 3.52 0 4.15v7.69C0 12.48.52 13 1.15 13h13.69c.64 0 1.15-.52 1.15-1.15v-7.7C16 3.52 15.48 3 14.85 3zM9 11H7V8L5.5 9.92 4 8v3H2V5h2l1.5 2L7 5h2v6zm2.99.5L9.5 8H11V5h2v3h1.5l-2.51 3.5z",fill:"currentColor"})),PreviewIcon:()=>e.h("svg",{viewBox:"0 0 1024 1024",width:"24",height:"24"},[e.h("path",{d:"M710.816 654.301c70.323-96.639 61.084-230.578-23.705-314.843-46.098-46.098-107.183-71.109-172.28-71.109-65.008 0-126.092 25.444-172.28 71.109-45.227 46.098-70.756 107.183-70.756 172.106 0 64.923 25.444 126.007 71.194 172.106 46.099 46.098 107.184 71.109 172.28 71.109 51.414 0 100.648-16.212 142.824-47.404l126.53 126.006c7.058 7.06 16.297 10.979 26.406 10.979 10.105 0 19.343-3.919 26.402-10.979 14.467-14.467 14.467-38.172 0-52.723L710.816 654.301zm-315.107-23.265c-65.88-65.88-65.88-172.54 0-238.42 32.069-32.07 74.245-49.149 119.471-49.149 45.227 0 87.407 17.603 119.472 49.149 65.88 65.879 65.88 172.539 0 238.42-63.612 63.178-175.242 63.178-238.943 0zm0 0",fill:"currentColor"}),e.h("path",{d:"M703.319 121.603H321.03c-109.8 0-199.469 89.146-199.469 199.38v382.034c0 109.796 89.236 199.38 199.469 199.38h207.397c20.653 0 37.384-16.645 37.384-37.299 0-20.649-16.731-37.296-37.384-37.296H321.03c-68.582 0-124.352-55.77-124.352-124.267V321.421c0-68.496 55.77-124.267 124.352-124.267h382.289c68.582 0 124.352 55.771 124.352 124.267V524.72c0 20.654 16.736 37.299 37.385 37.299 20.654 0 37.384-16.645 37.384-37.299V320.549c-.085-109.8-89.321-198.946-199.121-198.946zm0 0",fill:"currentColor"})]),LoadingIcon:ee,GifIcon:()=>e.h("svg",{width:24,height:24,fill:"currentcolor",viewBox:"0 0 24 24"},[e.h("path",{style:"transform: translateY(0.5px)",d:"M18.968 10.5H15.968V11.484H17.984V12.984H15.968V15H14.468V9H18.968V10.5V10.5ZM8.984 9C9.26533 9 9.49967 9.09367 9.687 9.281C9.87433 9.46833 9.968 9.70267 9.968 9.984V10.5H6.499V13.5H8.468V12H9.968V14.016C9.968 14.2973 9.87433 14.5317 9.687 14.719C9.49967 14.9063 9.26533 15 8.984 15H5.984C5.70267 15 5.46833 14.9063 5.281 14.719C5.09367 14.5317 5 14.2973 5 14.016V9.985C5 9.70367 5.09367 9.46933 5.281 9.282C5.46833 9.09467 5.70267 9.001 5.984 9.001H8.984V9ZM11.468 9H12.968V15H11.468V9V9Z"}),e.h("path",{d:"M18.5 3H5.75C3.6875 3 2 4.6875 2 6.75V18C2 20.0625 3.6875 21.75 5.75 21.75H18.5C20.5625 21.75 22.25 20.0625 22.25 18V6.75C22.25 4.6875 20.5625 3 18.5 3ZM20.75 18C20.75 19.2375 19.7375 20.25 18.5 20.25H5.75C4.5125 20.25 3.5 19.2375 3.5 18V6.75C3.5 5.5125 4.5125 4.5 5.75 4.5H18.5C19.7375 4.5 20.75 5.5125 20.75 6.75V18Z"})])},props:{rootId:{type:String,default:""},replyId:{type:String,default:""},replyUser:{type:String,default:""},edit:{type:Object,default:null}},emits:["submit","cancel-reply","cancel-edit"],setup(t,{emit:n}){const o=e.inject("config"),l=D("WALINE_COMMENT_BOX_EDITOR",""),r=D("WALINE_USER_META",{nick:"",mail:"",link:""}),i=qe(),c=e.ref({}),s=e.ref(null),m=e.ref(null),u=e.ref(null),p=e.ref(null),v=e.ref(null),f=e.ref(null),g=e.ref(null),h=e.ref({tabs:[],map:{}}),y=e.ref(0),k=e.ref(!1),w=e.ref(!1),b=e.ref(!1),C=e.ref(""),E=e.ref(0),B=e.reactive({loading:!0,list:[]}),I=e.ref(0),N=e.ref(!1),V=e.ref(""),S=e.ref(!1),$=e.computed((()=>o.value.locale)),j=e.computed((()=>Boolean(i.value?.token))),x=e.computed((()=>!1!==o.value.imageUploader)),L=e=>{const t=s.value,n=t.selectionStart,o=t.selectionEnd||0,a=t.scrollTop;l.value=t.value.substring(0,n)+e+t.value.substring(o,t.value.length),t.focus(),t.selectionStart=n+e.length,t.selectionEnd=n+e.length,t.scrollTop=a},O=e=>{const t=`![${o.value.locale.uploading} ${e.name}]()`;return L(t),Promise.resolve().then((()=>o.value.imageUploader(e))).then((n=>{l.value=l.value.replace(t,`\r\n![${e.name}](${n})`)})).catch((e=>{alert(e.message),l.value=l.value.replace(t,"")}))},R=()=>{const{serverURL:e,lang:a,login:m,wordLimit:u,requiredMeta:d}=o.value,p={comment:V.value,nick:r.value.nick,mail:r.value.mail,link:r.value.link,ua:navigator.userAgent,url:o.value.path};if(i.value?.token)p.nick=i.value.display_name,p.mail=i.value.email,p.link=i.value.url;else{if("force"===m)return;if(d.indexOf("nick")>-1&&!p.nick)return c.value.nick?.focus(),alert($.value.nickError);if(d.indexOf("mail")>-1&&!p.mail||p.mail&&!/^\w(?:[\w._-]*\w)?@(?:\w(?:[\w-]*\w)?\.)*\w+$/.exec(p.mail))return c.value.mail?.focus(),alert($.value.mailError);if(!p.comment)return void s.value?.focus();p.nick||(p.nick=$.value.anonymous)}if(!N.value)return alert($.value.wordHint.replace("$0",u[0].toString()).replace("$1",u[1].toString()).replace("$2",E.value.toString()));p.comment=He(p.comment,h.value.map),t.replyId&&t.rootId?(p.pid=t.replyId,p.rid=t.rootId,p.at=t.replyUser):t.edit&&(p.eid=t.edit.objectId),S.value=!0,(({serverURL:e,lang:t,token:n,comment:o})=>{const l={"Content-Type":"application/json"};return n&&(l.Authorization=`Bearer ${n}`),o.eid?fetch(`${e}/comment/${o.eid}?lang=${t}`,{method:"PUT",headers:l,body:JSON.stringify(o)}).then((e=>e.json())):fetch(`${e}/comment?lang=${t}`,{method:"POST",headers:l,body:JSON.stringify(o)}).then((e=>e.json()))})({serverURL:e,lang:a,token:i.value?.token,comment:p}).then((e=>{if(S.value=!1,e.errmsg)return alert(e.errmsg);n("submit",e.data),l.value="",C.value="",t.replyId&&n("cancel-reply"),t.edit?.objectId&&n("cancel-edit")})).catch((e=>{S.value=!1,alert(e.message)}))},z=e=>{u.value.contains(e.target)||p.value.contains(e.target)||(k.value=!1),v.value.contains(e.target)||f.value.contains(e.target)||(w.value=!1)},M=async e=>{const{scrollTop:t,clientHeight:n,scrollHeight:l}=e.target,a=(n+t)/l,r=o.value.search,i=g.value?.value||"";a<.9||B.loading||(B.loading=!0,B.list.push(...r.more?await r.more(i,B.list.length):await r.search(i)),B.loading=!1,setTimeout((()=>{e.target.scrollTop=t}),50))},A=d((e=>{B.list=[],M(e)}),300);e.watch([o,E],(([e,t])=>{const{wordLimit:n}=e;n?t<n[0]&&0!==n[0]?(I.value=n[0],N.value=!1):t>n[1]?(I.value=n[1],N.value=!1):(I.value=n[1],N.value=!0):(I.value=0,N.value=!0)}),{immediate:!0}),e.watch(w,(async e=>{if(!e)return;const t=o.value.search;g.value&&(g.value.value=""),B.loading=!0,B.list=t.default?await t.default():await t.search(""),B.loading=!1}));const P=({data:e})=>{e&&"profile"===e.type&&(i.value={...i.value,...e.data},[localStorage,sessionStorage].filter((e=>e.getItem("WALINE_USER"))).forEach((e=>e.setItem("WALINE_USER",JSON.stringify(i)))))};return e.onMounted((()=>{document.body.addEventListener("click",z),window.addEventListener("message",P),t.edit?.objectId&&(l.value=t.edit.orig),e.watch((()=>l.value),(e=>{const{highlighter:t,texRenderer:n}=o.value;V.value=e,C.value=_e(e,{emojiMap:h.value.map,highlighter:t,texRenderer:n}),E.value=(e=>(e=>e.match(/[\w\d\s\u00C0-\u024F]+/giu)||[])(e).reduce(((e,t)=>e+(""===t.trim()?0:t.trim().split(/\s+/u).length)),0)+(e=>e.match(/[\u4E00-\u9FA5]/gu)||[])(e).length)(e),e?a.default(s.value):a.default.destroy(s.value)}),{immediate:!0}),e.watch((()=>o.value.emoji),(e=>{return(t=Array.isArray(e)?e:[],Promise.all(t.map((e=>"string"==typeof e?Oe(Ie(e)):Promise.resolve(e)))).then((e=>{const t={tabs:[],map:{}};return e.forEach((e=>{const{name:n,folder:o,icon:l,prefix:a,type:r,items:i}=e;t.tabs.push({name:n,icon:Re(l,o,a,r),items:i.map((e=>{const n=`${a||""}${e}`;return t.map[n]=Re(e,o,a,r),n}))})})),t}))).then((e=>{h.value=e}));var t}),{immediate:!0})})),e.onUnmounted((()=>{document.body.removeEventListener("click",z),window.removeEventListener("message",P)})),{config:o,locale:$,insert:L,onChange:()=>{const e=m.value;e.files&&x.value&&O(e.files[0]).then((()=>{e.value=""}))},onDrop:e=>{if(e.dataTransfer?.items){const t=Pe(e.dataTransfer.items);t&&x.value&&(O(t),e.preventDefault())}},onKeyDown:e=>{const t=e.key;(e.ctrlKey||e.metaKey)&&"Enter"===t&&R()},onPaste:e=>{if(e.clipboardData){const t=Pe(e.clipboardData.items);t&&x.value&&O(t)}},onLogin:e=>{e.preventDefault();const{lang:t,serverURL:n}=o.value,l=(window.innerWidth-450)/2,a=(window.innerHeight-450)/2,r=window.open(`${n}/ui/login?lng=${encodeURIComponent(t)}`,"_blank",`width=450,height=450,left=${l},top=${a},scrollbars=no,resizable=no,status=no,location=no,toolbar=no,menubar=no`);r?.postMessage({type:"TOKEN",data:null},"*");const c=({data:e})=>{e&&"userInfo"===e.type&&e.data.token&&(r?.close(),i.value=e.data,(e.data.remember?localStorage:sessionStorage).setItem("WALINE_USER",JSON.stringify(e.data)),window.removeEventListener("message",c))};window.addEventListener("message",c)},onLogout:()=>{i.value={},localStorage.setItem("WALINE_USER","null"),sessionStorage.setItem("WALINE_USER","null")},onProfile:e=>{e.preventDefault();const{lang:t,serverURL:n}=o.value,l=(window.innerWidth-800)/2,a=(window.innerHeight-800)/2;window.open(`${n}/ui/profile?lng=${encodeURIComponent(t)}`,"_blank",`width=800,height=800,left=${l},top=${a},scrollbars=no,resizable=no,status=no,location=no,toolbar=no,menubar=no`)?.postMessage({type:"TOKEN",data:i.value.token},"*")},submitComment:R,onImageWallScroll:M,onGifSearch:A,isLogin:j,userInfo:i,isSubmitting:S,wordNumber:E,wordLimit:I,isWordNumberLegal:N,editor:l,userMeta:r,emoji:h,emojiTabIndex:y,showEmoji:k,gifData:B,showGif:w,canUploadImage:x,previewText:C,showPreview:b,inputRefs:c,editorRef:s,emojiButtonRef:u,emojiPopupRef:p,gifButtonRef:v,gifPopupRef:f,imageUploadRef:m,gifSearchInputRef:g}}});const Qe={class:"wl-comment"},Ze={key:0,class:"wl-login-info"},Ye={class:"wl-avatar"},Xe=["title"],et=["title"],tt=["src"],nt=["title","textContent"],ot={class:"wl-panel"},lt=["for","textContent"],at=["id","onUpdate:modelValue","name","type"],rt=["placeholder"],it={class:"wl-preview"},ct=e.createElementVNode("hr",null,null,-1),st=["innerHTML"],mt={class:"wl-footer"},ut={class:"wl-actions"},dt={href:"https://guides.github.com/features/mastering-markdown/",title:"Markdown Guide","aria-label":"Markdown is supported",class:"wl-action",target:"_blank",rel:"noreferrer"},pt=["title"],vt=["title"],ft=["title"],gt=["title"],ht={class:"wl-info"},yt={class:"wl-text-number"},kt={key:0},wt=e.createTextVNode("  /  "),bt=["textContent"],Ct=["textContent"],Et=["disabled"],Bt=["placeholder"],It={key:0,class:"wl-loading"},Nt={key:0,class:"wl-tab-wrapper"},Vt=["title","onClick"],St=["src","alt"],$t={key:0,class:"wl-tabs"},jt=["onClick"],xt=["src","alt","title"],Lt=["title"];var Ot=ne(Ke,[["render",function(t,n,o,l,a,r){const i=e.resolveComponent("CloseIcon"),c=e.resolveComponent("MarkdownIcon"),s=e.resolveComponent("EmojiIcon"),m=e.resolveComponent("GifIcon"),u=e.resolveComponent("ImageIcon"),d=e.resolveComponent("PreviewIcon"),p=e.resolveComponent("LoadingIcon"),v=e.resolveComponent("ImageWall");return e.openBlock(),e.createElementBlock("div",Qe,["disable"!==t.config.login&&t.isLogin&&!t.edit?.objectId?(e.openBlock(),e.createElementBlock("div",Ze,[e.createElementVNode("div",Ye,[e.createElementVNode("button",{class:"wl-logout-btn",title:t.locale.logout,onClick:n[0]||(n[0]=(...e)=>t.onLogout&&t.onLogout(...e))},[e.createVNode(i,{size:14})],8,Xe),e.createElementVNode("a",{href:"#",class:"wl-login-nick","aria-label":"Profile",title:t.locale.profile,onClick:n[1]||(n[1]=(...e)=>t.onProfile&&t.onProfile(...e))},[e.createElementVNode("img",{src:t.userInfo.avatar,alt:"avatar"},null,8,tt)],8,et)]),e.createElementVNode("a",{href:"#",class:"wl-login-nick","aria-label":"Profile",title:t.locale.profile,onClick:n[2]||(n[2]=(...e)=>t.onProfile&&t.onProfile(...e)),textContent:e.toDisplayString(t.userInfo.display_name)},null,8,nt)])):e.createCommentVNode("v-if",!0),e.createElementVNode("div",ot,["force"!==t.config.login&&t.config.meta.length&&!t.isLogin?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["wl-header",`item${t.config.meta.length}`])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.config.meta,(n=>(e.openBlock(),e.createElementBlock("div",{key:n,class:"wl-header-item"},[e.createElementVNode("label",{for:n,textContent:e.toDisplayString(t.locale[n]+(t.config.requiredMeta.includes(n)||!t.config.requiredMeta.length?"":`(${t.locale.optional})`))},null,8,lt),e.withDirectives(e.createElementVNode("input",{id:`wl-${n}`,ref_for:!0,ref:e=>{e&&(t.inputRefs[n]=e)},"onUpdate:modelValue":e=>t.userMeta[n]=e,class:e.normalizeClass(["wl-input",`wl-${n}`]),name:n,type:"mail"===n?"email":"text"},null,10,at),[[e.vModelDynamic,t.userMeta[n]]])])))),128))],2)):e.createCommentVNode("v-if",!0),e.withDirectives(e.createElementVNode("textarea",{id:"wl-edit",ref:"editorRef","onUpdate:modelValue":n[3]||(n[3]=e=>t.editor=e),class:"wl-editor",placeholder:t.replyUser?`@${t.replyUser}`:t.locale.placeholder,onKeydown:n[4]||(n[4]=(...e)=>t.onKeyDown&&t.onKeyDown(...e)),onDrop:n[5]||(n[5]=(...e)=>t.onDrop&&t.onDrop(...e)),onPaste:n[6]||(n[6]=(...e)=>t.onPaste&&t.onPaste(...e))},null,40,rt),[[e.vModelText,t.editor]]),e.withDirectives(e.createElementVNode("div",it,[ct,e.createElementVNode("h4",null,e.toDisplayString(t.locale.preview)+":",1),e.createCommentVNode(" eslint-disable-next-line vue/no-v-html "),e.createElementVNode("div",{class:"wl-content",innerHTML:t.previewText},null,8,st)],512),[[e.vShow,t.showPreview]]),e.createElementVNode("div",mt,[e.createElementVNode("div",ut,[e.createElementVNode("a",dt,[e.createVNode(c)]),e.withDirectives(e.createElementVNode("button",{ref:"emojiButtonRef",class:e.normalizeClass(["wl-action",{actived:t.showEmoji}]),title:t.locale.emoji,onClick:n[7]||(n[7]=e=>t.showEmoji=!t.showEmoji)},[e.createVNode(s)],10,pt),[[e.vShow,t.emoji.tabs.length]]),t.config.search?(e.openBlock(),e.createElementBlock("button",{key:0,ref:"gifButtonRef",class:e.normalizeClass(["wl-action",{actived:t.showGif}]),title:t.locale.gif,onClick:n[8]||(n[8]=e=>t.showGif=!t.showGif)},[e.createVNode(m)],10,vt)):e.createCommentVNode("v-if",!0),e.createElementVNode("input",{id:"wl-image-upload",ref:"imageUploadRef",class:"upload",type:"file",accept:".png,.jpg,.jpeg,.webp,.bmp,.gif",onChange:n[9]||(n[9]=(...e)=>t.onChange&&t.onChange(...e))},null,544),t.canUploadImage?(e.openBlock(),e.createElementBlock("label",{key:1,for:"wl-image-upload",class:"wl-action",title:t.locale.uploadImage},[e.createVNode(u)],8,ft)):e.createCommentVNode("v-if",!0),e.createElementVNode("button",{class:e.normalizeClass(["wl-action",{actived:t.showPreview}]),title:t.locale.preview,onClick:n[10]||(n[10]=e=>t.showPreview=!t.showPreview)},[e.createVNode(d)],10,gt)]),e.createElementVNode("div",ht,[e.createElementVNode("div",yt,[e.createTextVNode(e.toDisplayString(t.wordNumber)+" ",1),t.config.wordLimit?(e.openBlock(),e.createElementBlock("span",kt,[wt,e.createElementVNode("span",{class:e.normalizeClass({illegal:!t.isWordNumberLegal}),textContent:e.toDisplayString(t.wordLimit)},null,10,bt)])):e.createCommentVNode("v-if",!0),e.createTextVNode("  "+e.toDisplayString(t.locale.word),1)]),"disable"===t.config.login||t.isLogin?e.createCommentVNode("v-if",!0):(e.openBlock(),e.createElementBlock("button",{key:0,class:"wl-btn",onClick:n[11]||(n[11]=(...e)=>t.onLogin&&t.onLogin(...e)),textContent:e.toDisplayString(t.locale.login)},null,8,Ct)),"force"!==t.config.login||t.isLogin?(e.openBlock(),e.createElementBlock("button",{key:1,class:"wl-btn primary",title:"Cmd|Ctrl + Enter",disabled:t.isSubmitting,onClick:n[12]||(n[12]=(...e)=>t.submitComment&&t.submitComment(...e))},[t.isSubmitting?(e.openBlock(),e.createBlock(p,{key:0,size:16})):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(e.toDisplayString(t.locale.submit),1)],64))],8,Et)):e.createCommentVNode("v-if",!0)]),e.createElementVNode("div",{ref:"gifPopupRef",class:e.normalizeClass(["wl-gif-popup",{display:t.showGif}])},[e.createElementVNode("input",{ref:"gifSearchInputRef",type:"text",placeholder:t.locale.gifSearchPlaceholder,onInput:n[13]||(n[13]=(...e)=>t.onGifSearch&&t.onGifSearch(...e))},null,40,Bt),e.createVNode(v,{items:t.gifData.list,"column-width":200,gap:6,onInsert:n[14]||(n[14]=e=>t.insert(e)),onScroll:t.onImageWallScroll},null,8,["items","onScroll"]),t.gifData.loading?(e.openBlock(),e.createElementBlock("div",It,[e.createVNode(p,{size:30})])):e.createCommentVNode("v-if",!0)],2),e.createElementVNode("div",{ref:"emojiPopupRef",class:e.normalizeClass(["wl-emoji-popup",{display:t.showEmoji}])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.emoji.tabs,((n,o)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:n.name},[o===t.emojiTabIndex?(e.openBlock(),e.createElementBlock("div",Nt,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.items,(n=>(e.openBlock(),e.createElementBlock("button",{key:n,title:n,onClick:e=>t.insert(`:${n}:`)},[t.showEmoji?(e.openBlock(),e.createElementBlock("img",{key:0,class:"wl-emoji",src:t.emoji.map[n],alt:n,loading:"lazy",referrerPolicy:"no-referrer"},null,8,St)):e.createCommentVNode("v-if",!0)],8,Vt)))),128))])):e.createCommentVNode("v-if",!0)],64)))),128)),t.emoji.tabs.length>1?(e.openBlock(),e.createElementBlock("div",$t,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.emoji.tabs,((n,o)=>(e.openBlock(),e.createElementBlock("button",{key:n.name,class:e.normalizeClass(["wl-tab",{active:t.emojiTabIndex===o}]),onClick:e=>t.emojiTabIndex=o},[e.createElementVNode("img",{class:"wl-emoji",src:n.icon,alt:n.name,title:n.name,loading:"lazy",referrerPolicy:"no-referrer"},null,8,xt)],10,jt)))),128))])):e.createCommentVNode("v-if",!0)],2)])]),t.replyId||t.edit?.objectId?(e.openBlock(),e.createElementBlock("button",{key:1,class:"wl-close",title:t.locale.cancelReply,onClick:n[15]||(n[15]=e=>t.$emit(t.replyId?"cancel-reply":"cancel-edit"))},[e.createVNode(i,{size:24})],8,Lt)):e.createCommentVNode("v-if",!0)])}],["__file","CommentBox.vue"]]);const Rt=["approved","waiting","spam"];var zt=e.defineComponent({components:{CommentBox:Ot,DeleteIcon:()=>e.h("svg",{viewBox:"0 0 1024 1024",width:"24",height:"24"},e.h("path",{d:"m341.013 394.667 27.755 393.45h271.83l27.733-393.45h64.106l-28.01 397.952a64 64 0 0 1-63.83 59.498H368.768a64 64 0 0 1-63.83-59.52l-28.053-397.93h64.128zm139.307 19.818v298.667h-64V414.485h64zm117.013 0v298.667h-64V414.485h64zM181.333 288h640v64h-640v-64zm453.483-106.667v64h-256v-64h256z",fill:"red"})),LikeIcon:({active:t=!1})=>e.h("svg",{viewBox:"0 0 1024 1024",width:"24",height:"24"},[e.h("path",{d:"M850.654 323.804c-11.042-25.625-26.862-48.532-46.885-68.225-20.022-19.61-43.258-34.936-69.213-45.73-26.78-11.124-55.124-16.727-84.375-16.727-40.622 0-80.256 11.123-114.698 32.135A214.79 214.79 0 0 0 512 241.819a214.79 214.79 0 0 0-23.483-16.562c-34.442-21.012-74.076-32.135-114.698-32.135-29.25 0-57.595 5.603-84.375 16.727-25.872 10.711-49.19 26.12-69.213 45.73-20.105 19.693-35.843 42.6-46.885 68.225-11.453 26.615-17.303 54.877-17.303 83.963 0 27.439 5.603 56.03 16.727 85.117 9.31 24.307 22.659 49.52 39.715 74.981 27.027 40.293 64.188 82.316 110.33 124.915 76.465 70.615 152.189 119.394 155.402 121.371l19.528 12.525c8.652 5.52 19.776 5.52 28.427 0l19.529-12.525c3.213-2.06 78.854-50.756 155.401-121.371 46.143-42.6 83.304-84.622 110.33-124.915 17.057-25.46 30.487-50.674 39.716-74.981 11.124-29.087 16.727-57.678 16.727-85.117.082-29.086-5.768-57.348-17.221-83.963z"+(t?"":"M512 761.5S218.665 573.55 218.665 407.767c0-83.963 69.461-152.023 155.154-152.023 60.233 0 112.473 33.618 138.181 82.727 25.708-49.109 77.948-82.727 138.18-82.727 85.694 0 155.155 68.06 155.155 152.023C805.335 573.551 512 761.5 512 761.5z"),fill:t?"red":"currentColor"})]),ReplyIcon:()=>e.h("svg",{viewBox:"0 0 1024 1024",width:"24",height:"24"},e.h("path",{d:"M810.667 213.333a64 64 0 0 1 64 64V704a64 64 0 0 1-64 64H478.336l-146.645 96.107a21.333 21.333 0 0 1-33.024-17.856V768h-85.334a64 64 0 0 1-64-64V277.333a64 64 0 0 1 64-64h597.334zm0 64H213.333V704h149.334v63.296L459.243 704h351.424V277.333zm-271.36 213.334v64h-176.64v-64h176.64zm122.026-128v64H362.667v-64h298.666z",fill:"currentColor"})),EditIcon:()=>e.h("svg",{viewBox:"0 0 1024 1024",width:"24",height:"24"},e.h("path",{d:"M813.039 318.772L480.53 651.278H360.718V531.463L693.227 198.961C697.904 194.284 704.027 192 710.157 192C716.302 192 722.436 194.284 727.114 198.961L813.039 284.88C817.72 289.561 820 295.684 820 301.825C820 307.95 817.72 314.093 813.039 318.772ZM710.172 261.888L420.624 551.431V591.376H460.561L750.109 301.825L710.172 261.888ZM490.517 291.845H240.906V771.09H720.156V521.479C720.156 504.947 733.559 491.529 750.109 491.529C766.653 491.529 780.063 504.947 780.063 521.479V791.059C780.063 813.118 762.18 831 740.125 831H220.937C198.882 831 181 813.118 181 791.059V271.872C181 249.817 198.882 231.935 220.937 231.935H490.517C507.06 231.935 520.47 245.352 520.47 261.888C520.47 278.424 507.06 291.845 490.517 291.845Z",fill:"currentColor"})),VerifiedIcon:()=>e.h("svg",{class:"verified-icon",viewBox:"0 0 1024 1024",width:"14",height:"14"},e.h("path",{d:"m894.4 461.56-54.4-63.2c-10.4-12-18.8-34.4-18.8-50.4v-68c0-42.4-34.8-77.2-77.2-77.2h-68c-15.6 0-38.4-8.4-50.4-18.8l-63.2-54.4c-27.6-23.6-72.8-23.6-100.8 0l-62.8 54.8c-12 10-34.8 18.4-50.4 18.4h-69.2c-42.4 0-77.2 34.8-77.2 77.2v68.4c0 15.6-8.4 38-18.4 50l-54 63.6c-23.2 27.6-23.2 72.4 0 100l54 63.6c10 12 18.4 34.4 18.4 50v68.4c0 42.4 34.8 77.2 77.2 77.2h69.2c15.6 0 38.4 8.4 50.4 18.8l63.2 54.4c27.6 23.6 72.8 23.6 100.8 0l63.2-54.4c12-10.4 34.4-18.8 50.4-18.8h68c42.4 0 77.2-34.8 77.2-77.2v-68c0-15.6 8.4-38.4 18.8-50.4l54.4-63.2c23.2-27.6 23.2-73.2-.4-100.8zm-216-25.2-193.2 193.2a30 30 0 0 1-42.4 0l-96.8-96.8a30.16 30.16 0 0 1 0-42.4c11.6-11.6 30.8-11.6 42.4 0l75.6 75.6 172-172c11.6-11.6 30.8-11.6 42.4 0 11.6 11.6 11.6 30.8 0 42.4z",fill:"#27ae60"}))},props:{comment:{type:Object,required:!0},rootId:{type:String,required:!0},reply:{type:Object,default:null},edit:{type:Object,default:null}},emits:["submit","reply","like","delete","status","sticky","edit"],setup(t){const n=e.inject("config"),o=Je(),l=qe(),a=e.computed((()=>n.value.locale)),r=e.computed((()=>{const{link:e}=t.comment;return e?Ne(e)?e:`https://${e}`:""})),i=e.computed((()=>o.value.includes(t.comment.objectId))),c=((t,n)=>{const o=q();return e.computed((()=>Le(t,o.value,n)))})(t.comment.insertedAt,a.value),s=e.computed((()=>"administrator"===l.value.type)),m=e.computed((()=>t.comment.user_id&&l.value.objectId===t.comment.user_id));console.log("lizheming:",t.comment.user_id,l.value.objectId,m.value);const u=e.computed((()=>t.comment.objectId===t.reply?.objectId)),d=e.computed((()=>t.comment.objectId===t.edit?.objectId));return{config:n,locale:a,isReplyingCurrent:u,isEditingCurrent:d,link:r,like:i,time:c,isAdmin:s,isOwner:m,commentStatus:Rt}}});const Mt=["id"],At={class:"wl-user","aria-hidden":"true"},Dt=["src"],Pt={class:"wl-card"},Tt={class:"wl-head"},Ut=["href"],Ft={key:1,class:"wl-nick"},Ht=["textContent"],_t=["textContent"],Wt=["textContent"],qt=["textContent"],Gt=["textContent"],Jt={class:"wl-comment-actions"},Kt=["title"],Qt=["textContent"],Zt=["title"],Yt={class:"wl-meta","aria-hidden":"true"},Xt=["data-value","textContent"],en=["data-value","textContent"],tn=["data-value","textContent"],nn=["innerHTML"],on={key:1,class:"wl-admin-actions"},ln={class:"wl-comment-status"},an=["disabled","onClick","textContent"],rn={key:3,class:"wl-quote"};var cn=ne(zt,[["render",function(t,n,o,l,a,r){const i=e.resolveComponent("VerifiedIcon"),c=e.resolveComponent("EditIcon"),s=e.resolveComponent("DeleteIcon"),m=e.resolveComponent("LikeIcon"),u=e.resolveComponent("ReplyIcon"),d=e.resolveComponent("CommentBox"),p=e.resolveComponent("CommentCard",!0);return e.openBlock(),e.createElementBlock("div",{id:t.comment.objectId,class:"wl-item"},[e.createElementVNode("div",At,[t.comment.avatar?(e.openBlock(),e.createElementBlock("img",{key:0,src:t.comment.avatar},null,8,Dt)):e.createCommentVNode("v-if",!0),t.comment.type?(e.openBlock(),e.createBlock(i,{key:1})):e.createCommentVNode("v-if",!0)]),e.createElementVNode("div",Pt,[e.createElementVNode("div",Tt,[t.link?(e.openBlock(),e.createElementBlock("a",{key:0,class:"wl-nick",href:t.link,target:"_blank",rel:"nofollow noreferrer"},e.toDisplayString(t.comment.nick),9,Ut)):(e.openBlock(),e.createElementBlock("span",Ft,e.toDisplayString(t.comment.nick),1)),"administrator"===t.comment.type?(e.openBlock(),e.createElementBlock("span",{key:2,class:"wl-badge",textContent:e.toDisplayString(t.locale.admin)},null,8,Ht)):e.createCommentVNode("v-if",!0),t.comment.label?(e.openBlock(),e.createElementBlock("span",{key:3,class:"wl-badge",textContent:e.toDisplayString(t.comment.label)},null,8,_t)):e.createCommentVNode("v-if",!0),t.comment.sticky?(e.openBlock(),e.createElementBlock("span",{key:4,class:"wl-badge",textContent:e.toDisplayString(t.locale.sticky)},null,8,Wt)):e.createCommentVNode("v-if",!0),void 0!==t.comment.level&&t.comment.level>=0?(e.openBlock(),e.createElementBlock("span",{key:5,class:e.normalizeClass(`wl-badge level${t.comment.level}`),textContent:e.toDisplayString(t.locale[`level${t.comment.level}`]||`Level ${t.comment.level}`)},null,10,qt)):e.createCommentVNode("v-if",!0),e.createElementVNode("span",{class:"wl-time",textContent:e.toDisplayString(t.time)},null,8,Gt),e.createElementVNode("div",Jt,[t.isAdmin||t.isOwner?(e.openBlock(),e.createElementBlock("button",{key:0,class:"wl-edit",onClick:n[0]||(n[0]=e=>t.$emit("edit",t.comment))},[e.createVNode(c)])):e.createCommentVNode("v-if",!0),t.isAdmin||t.isOwner?(e.openBlock(),e.createElementBlock("button",{key:1,class:"wl-delete",onClick:n[1]||(n[1]=e=>t.$emit("delete",t.comment))},[e.createVNode(s)])):e.createCommentVNode("v-if",!0),e.createElementVNode("button",{class:"wl-like",title:t.like?t.locale.cancelLike:t.locale.like,onClick:n[2]||(n[2]=e=>t.$emit("like",t.comment))},[e.createVNode(m,{active:t.like},null,8,["active"]),"like"in t.comment?(e.openBlock(),e.createElementBlock("span",{key:0,textContent:e.toDisplayString(t.comment.like)},null,8,Qt)):e.createCommentVNode("v-if",!0)],8,Kt),e.createElementVNode("button",{class:e.normalizeClass(["wl-reply",{active:t.isReplyingCurrent}]),title:t.isReplyingCurrent?t.locale.cancelReply:t.locale.reply,onClick:n[3]||(n[3]=e=>t.$emit("reply",t.isReplyingCurrent?null:t.comment))},[e.createVNode(u)],10,Zt)])]),e.createElementVNode("div",Yt,[t.comment.addr?(e.openBlock(),e.createElementBlock("span",{key:0,class:"wl-addr","data-value":t.comment.addr,textContent:e.toDisplayString(t.comment.addr)},null,8,Xt)):e.createCommentVNode("v-if",!0),t.comment.browser?(e.openBlock(),e.createElementBlock("span",{key:1,class:"wl-browser","data-value":t.comment.browser,textContent:e.toDisplayString(t.comment.browser)},null,8,en)):e.createCommentVNode("v-if",!0),t.comment.os?(e.openBlock(),e.createElementBlock("span",{key:2,class:"wl-os","data-value":t.comment.os,textContent:e.toDisplayString(t.comment.os)},null,8,tn)):e.createCommentVNode("v-if",!0)]),e.createCommentVNode(" eslint-disable-next-line vue/no-v-html "),t.isEditingCurrent?e.createCommentVNode("v-if",!0):(e.openBlock(),e.createElementBlock("div",{key:0,class:"wl-content",innerHTML:t.comment.comment},null,8,nn)),t.isAdmin&&!t.isEditingCurrent?(e.openBlock(),e.createElementBlock("div",on,[e.createElementVNode("span",ln,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.commentStatus,(n=>(e.openBlock(),e.createElementBlock("button",{key:n,class:e.normalizeClass(`wl-btn wl-${n}`),disabled:t.comment.status===n,onClick:e=>t.$emit("status",{status:n,comment:t.comment}),textContent:e.toDisplayString(t.locale[n])},null,10,an)))),128))]),t.isAdmin&&!t.comment.rid?(e.openBlock(),e.createElementBlock("button",{key:0,class:"wl-btn wl-sticky",onClick:n[4]||(n[4]=e=>t.$emit("sticky",t.comment))},e.toDisplayString(t.comment.sticky?t.locale.unsticky:t.locale.sticky),1)):e.createCommentVNode("v-if",!0)])):e.createCommentVNode("v-if",!0),t.isReplyingCurrent||t.isEditingCurrent?(e.openBlock(),e.createElementBlock("div",{key:2,class:e.normalizeClass({"wl-reply-wrapper":t.isReplyingCurrent,"wl-edit-wrapper":t.isEditingCurrent})},[e.createVNode(d,{edit:t.edit,"reply-id":t.reply?.objectId,"reply-user":t.comment.nick,"root-id":t.rootId,onSubmit:n[5]||(n[5]=e=>t.$emit("submit",e)),onCancelReply:n[6]||(n[6]=e=>t.$emit("reply",null)),onCancelEdit:n[7]||(n[7]=e=>t.$emit("edit",null))},null,8,["edit","reply-id","reply-user","root-id"])],2)):e.createCommentVNode("v-if",!0),t.comment.children?(e.openBlock(),e.createElementBlock("div",rn,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.comment.children,(o=>(e.openBlock(),e.createBlock(p,{key:o.objectId,comment:o,reply:t.reply,edit:t.edit,"root-id":t.rootId,onReply:n[8]||(n[8]=e=>t.$emit("reply",e)),onSubmit:n[9]||(n[9]=e=>t.$emit("submit",e)),onLike:n[10]||(n[10]=e=>t.$emit("like",e)),onEdit:n[11]||(n[11]=e=>t.$emit("edit",e)),onDelete:n[12]||(n[12]=e=>t.$emit("delete",e)),onStatus:n[13]||(n[13]=e=>t.$emit("status",e)),onSticky:n[14]||(n[14]=e=>t.$emit("sticky",e))},null,8,["comment","reply","edit","root-id"])))),128))])):e.createCommentVNode("v-if",!0)])],8,Mt)}],["__file","CommentCard.vue"]]);const sn=[{key:"insertedAt_desc",name:"latest"},{key:"insertedAt_asc",name:"oldest"},{key:"like_desc",name:"hottest"}];var mn=e.defineComponent({name:"WalineRoot",components:{CommentBox:Ot,CommentCard:cn,LoadingIcon:ee},props:["serverURL","path","meta","requiredMeta","dark","lang","locale","pageSize","wordLimit","emoji","login","highlighter","texRenderer","imageUploader","search","copyright"],setup(t){const n=e.computed((()=>(({serverURL:e,path:t=location.pathname,lang:n="zh-CN",locale:o,emoji:l=["//unpkg.com/@waline/emojis@1.1.0/weibo"],meta:a=["nick","mail","link"],requiredMeta:r=[],dark:i=!1,pageSize:c=10,wordLimit:s,imageUploader:m,highlighter:u,texRenderer:d,copyright:p=!0,login:v="enable",search:f=me(),...g})=>({serverURL:Ve(e),path:Be(t),locale:{...Ee[n]||Ee["zh-CN"],..."object"==typeof o?o:{}},wordLimit:Se(s),meta:ie(a),requiredMeta:ie(r),imageUploader:$e(m,ce),highlighter:$e(u,ve),texRenderer:$e(d,se),lang:n,dark:i,emoji:l,pageSize:c,login:v,copyright:p,search:f,...g}))(t))),o=qe(),l=Je(),a=e.ref("loading"),r=e.ref(0),i=e.ref(1),c=e.ref(0),s=e.ref(sn[0].key),m=e.ref([]),u=e.ref(null),d=e.ref(null),p=e.computed((()=>{return"string"==typeof(e=n.value.dark)?"auto"===e?`@media(prefers-color-scheme:dark){body${je}}`:`${e}${je}`:!0===e?`:root${je}`:"";var e}));let v;J(p);const f=e=>{const{serverURL:t,path:l,pageSize:u}=n.value,d=new AbortController;a.value="loading",v?.(),Me({serverURL:t,lang:n.value.lang,path:l,pageSize:u,sortBy:s.value,page:e,signal:d.signal,token:o.value?.token}).then((t=>{a.value="success",r.value=t.count,m.value.push(...t.data),i.value=e,c.value=t.totalPages})).catch((e=>{"AbortError"!==e.name&&(console.error(e.message),a.value="error")})),v=d.abort.bind(d)},g=()=>{r.value=0,m.value=[],f(1)};return e.provide("config",n),e.watch((()=>t.path),g),e.onMounted((()=>g())),{config:n,darkmodeStyle:p,i18n:e.computed((()=>n.value.locale)),status:a,count:r,page:i,totalPages:c,sortBy:s,sortByItems:sn,data:m,reply:u,edit:d,loadMore:()=>f(i.value+1),refresh:g,onSortByChange:e=>{s.value!==e&&(s.value=e,g())},onReply:e=>{u.value=e},onSubmit:e=>{if(d.value)d.value.comment=e.comment,d.value.orig=e.orig;else if(e.rid){const t=m.value.find((({objectId:t})=>t===e.rid));if(!t)return;Array.isArray(t.children)||(t.children=[]),t.children.push(e)}else m.value.unshift(e)},onStatusChange:async({comment:e,status:t})=>{if(e.status===t)return;const{serverURL:l,lang:a}=n.value;await Ae({serverURL:l,lang:a,token:o.value?.token,objectId:e.objectId,status:t}),e.status=t},onDelete:async({objectId:e})=>{if(!confirm("Are you sure you want to delete this comment?"))return;const{serverURL:t,lang:l}=n.value;await(({serverURL:e,lang:t,token:n,objectId:o})=>fetch(`${e}/comment/${o}?lang=${t}`,{method:"DELETE",headers:{Authorization:`Bearer ${n}`}}).then((e=>e.json())))({serverURL:t,lang:l,token:o.value?.token,objectId:e}),m.value.some(((t,n)=>t.objectId===e?(m.value=m.value.filter(((e,t)=>t!==n)),!0):t.children.some(((o,l)=>o.objectId===e&&(m.value[n].children=t.children.filter(((e,t)=>t!==l)),!0)))))},onSticky:async e=>{if(e.rid)return;const{serverURL:t,lang:l}=n.value;await Ae({serverURL:t,lang:l,token:o.value?.token,objectId:e.objectId,sticky:e.sticky?0:1}),e.sticky=!e.sticky},onLike:async e=>{const{serverURL:t,lang:o}=n.value,{objectId:a}=e,r=l.value.includes(a);await(({serverURL:e,lang:t,objectId:n,like:o})=>fetch(`${e}/comment/${n}?lang=${t}`,{method:"PUT",headers:ze,body:JSON.stringify({like:o})}).then((e=>e.json())))({serverURL:t,lang:o,objectId:a,like:!r}),r?l.value=l.value.filter((e=>e!==a)):(l.value=[...l.value,a],l.value.length>50&&(l.value=l.value.slice(-50))),e.like=(e.like||0)+(r?-1:1)},onEdit:e=>{d.value=e},version:"2.8.0"}}});const un={"data-waline":""},dn={class:"wl-meta-head"},pn={class:"wl-count"},vn=["textContent"],fn={class:"wl-sort"},gn=["onClick"],hn={class:"wl-cards"},yn={key:1,class:"wl-operation"},kn=["textContent"],wn={key:0,class:"wl-loading"},bn=["textContent"],Cn={class:"wl-operation"},En=["textContent"],Bn={key:3,class:"wl-power"},In=e.createTextVNode(" Powered by "),Nn=e.createElementVNode("a",{href:"https://github.com/walinejs/waline",target:"_blank",rel:"noreferrer"}," Waline ",-1);var Vn=ne(mn,[["render",function(t,n,o,l,a,r){const i=e.resolveComponent("CommentBox"),c=e.resolveComponent("CommentCard"),s=e.resolveComponent("LoadingIcon");return e.openBlock(),e.createElementBlock("div",un,[t.reply?e.createCommentVNode("v-if",!0):(e.openBlock(),e.createBlock(i,{key:0,onSubmit:t.onSubmit},null,8,["onSubmit"])),e.createElementVNode("div",dn,[e.createElementVNode("div",pn,[t.count?(e.openBlock(),e.createElementBlock("span",{key:0,class:"wl-num",textContent:e.toDisplayString(t.count)},null,8,vn)):e.createCommentVNode("v-if",!0),e.createTextVNode(" "+e.toDisplayString(t.i18n.comment),1)]),e.createElementVNode("ul",fn,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.sortByItems,(n=>(e.openBlock(),e.createElementBlock("li",{key:n.key,class:e.normalizeClass([n.key===t.sortBy?"active":""]),onClick:e=>t.onSortByChange(n.key)},e.toDisplayString(t.i18n[n.name]),11,gn)))),128))])]),e.createElementVNode("div",hn,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.data,(n=>(e.openBlock(),e.createBlock(c,{key:n.objectId,"root-id":n.objectId,comment:n,reply:t.reply,edit:t.edit,onReply:t.onReply,onEdit:t.onEdit,onSubmit:t.onSubmit,onStatus:t.onStatusChange,onDelete:t.onDelete,onSticky:t.onSticky,onLike:t.onLike},null,8,["root-id","comment","reply","edit","onReply","onEdit","onSubmit","onStatus","onDelete","onSticky","onLike"])))),128))]),"error"===t.status?(e.openBlock(),e.createElementBlock("div",yn,[e.createElementVNode("button",{type:"button",class:"wl-btn",onClick:n[0]||(n[0]=(...e)=>t.refresh&&t.refresh(...e)),textContent:e.toDisplayString(t.i18n.refresh)},null,8,kn)])):(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},["loading"===t.status?(e.openBlock(),e.createElementBlock("div",wn,[e.createVNode(s,{size:30})])):t.data.length?t.page<t.totalPages?(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[e.createCommentVNode(" Load more button "),e.createElementVNode("div",Cn,[e.createElementVNode("button",{type:"button",class:"wl-btn",onClick:n[1]||(n[1]=(...e)=>t.loadMore&&t.loadMore(...e)),textContent:e.toDisplayString(t.i18n.more)},null,8,En)])],2112)):e.createCommentVNode("v-if",!0):(e.openBlock(),e.createElementBlock("div",{key:1,class:"wl-empty",textContent:e.toDisplayString(t.i18n.sofa)},null,8,bn))],64)),e.createCommentVNode(" Copyright Information "),t.config.copyright?(e.openBlock(),e.createElementBlock("div",Bn,[In,Nn,e.createTextVNode(" v"+e.toDisplayString(t.version),1)])):e.createCommentVNode("v-if",!0)])}],["__file","Waline.vue"]]);exports.Waline=Vn,exports.version="2.8.0";
2
2
  //# sourceMappingURL=component.js.map