@waline/client 2.3.1 → 2.3.2
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.esm.js +1 -1
- package/dist/component.esm.js.map +1 -1
- package/dist/component.js +1 -1
- package/dist/component.js.map +1 -1
- package/dist/legacy.js +1 -1
- package/dist/legacy.js.map +1 -1
- package/dist/pageview.cjs.js +1 -1
- package/dist/pageview.esm.js +1 -1
- package/dist/pageview.js +1 -1
- package/dist/shim.esm.js +1 -1
- package/dist/shim.esm.js.map +1 -1
- package/dist/shim.js +1 -1
- package/dist/shim.js.map +1 -1
- package/dist/waline.cjs.js +1 -1
- package/dist/waline.cjs.js.map +1 -1
- package/dist/waline.esm.js +1 -1
- package/dist/waline.esm.js.map +1 -1
- package/dist/waline.js +1 -1
- package/dist/waline.js.map +1 -1
- package/package.json +1 -1
- package/src/components/CommentBox.vue +1 -3
- package/src/components/Waline.vue +105 -96
package/dist/pageview.cjs.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});const e=e=>{"AbortError"!==e.name&&console.error(e.message)},t=(e,t="")=>{if("object"==typeof e&&e.errno)throw new TypeError(`Fetch ${t} failed with ${e.errno}: ${e.errmsg}`);return e},r=({serverURL:e,lang:r,paths:n,signal:o})=>fetch(`${e}/article?path=${encodeURIComponent(n.join(","))}&lang=${r}`,{signal:o}).then((e=>e.json())).then((e=>t(e,"visit count"))).then((e=>Array.isArray(e)?e:[e])),n=({serverURL:e,lang:r,path:n})=>fetch(`${e}/article?lang=${r}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:n})}).then((e=>e.json())).then((e=>t(e,"visit count"))),o=e=>e.dataset.path||e.getAttribute("id"),a=(e,t)=>{t.forEach(((t,r)=>{t.innerText=e[r].toString()}))};exports.pageviewCount=({serverURL:t,path:s=window.location.pathname,selector:i=".waline-pageview-count",update:l=!0,lang:h="zh-CN"})=>{const c=new AbortController,p=Array.from(document.querySelectorAll(i)),g=e=>{const t=o(e);return null!==t&&s!==t},u=n=>r({serverURL:t,paths:n.map((e=>o(e)||s)),lang:h,signal:c.signal}).then((e=>a(e,n))).catch(e);if(l){const e=p.filter((e=>!g(e))),r=p.filter(g);n({serverURL:t,path:s,lang:h}).then((t=>a(new Array(e.length).fill(t),e))),r.length&&u(r)}else u(p);return c.abort.bind(c)},exports.version="2.3.
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});const e=e=>{"AbortError"!==e.name&&console.error(e.message)},t=(e,t="")=>{if("object"==typeof e&&e.errno)throw new TypeError(`Fetch ${t} failed with ${e.errno}: ${e.errmsg}`);return e},r=({serverURL:e,lang:r,paths:n,signal:o})=>fetch(`${e}/article?path=${encodeURIComponent(n.join(","))}&lang=${r}`,{signal:o}).then((e=>e.json())).then((e=>t(e,"visit count"))).then((e=>Array.isArray(e)?e:[e])),n=({serverURL:e,lang:r,path:n})=>fetch(`${e}/article?lang=${r}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:n})}).then((e=>e.json())).then((e=>t(e,"visit count"))),o=e=>e.dataset.path||e.getAttribute("id"),a=(e,t)=>{t.forEach(((t,r)=>{t.innerText=e[r].toString()}))};exports.pageviewCount=({serverURL:t,path:s=window.location.pathname,selector:i=".waline-pageview-count",update:l=!0,lang:h="zh-CN"})=>{const c=new AbortController,p=Array.from(document.querySelectorAll(i)),g=e=>{const t=o(e);return null!==t&&s!==t},u=n=>r({serverURL:t,paths:n.map((e=>o(e)||s)),lang:h,signal:c.signal}).then((e=>a(e,n))).catch(e);if(l){const e=p.filter((e=>!g(e))),r=p.filter(g);n({serverURL:t,path:s,lang:h}).then((t=>a(new Array(e.length).fill(t),e))),r.length&&u(r)}else u(p);return c.abort.bind(c)},exports.version="2.3.2";
|
|
2
2
|
//# sourceMappingURL=pageview.cjs.js.map
|
package/dist/pageview.esm.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const e="2.3.
|
|
1
|
+
const e="2.3.2",t=e=>{"AbortError"!==e.name&&console.error(e.message)},r=(e,t="")=>{if("object"==typeof e&&e.errno)throw new TypeError(`Fetch ${t} failed with ${e.errno}: ${e.errmsg}`);return e},n=({serverURL:e,lang:t,paths:n,signal:a})=>fetch(`${e}/article?path=${encodeURIComponent(n.join(","))}&lang=${t}`,{signal:a}).then((e=>e.json())).then((e=>r(e,"visit count"))).then((e=>Array.isArray(e)?e:[e])),a=({serverURL:e,lang:t,path:n})=>fetch(`${e}/article?lang=${t}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:n})}).then((e=>e.json())).then((e=>r(e,"visit count"))),o=e=>e.dataset.path||e.getAttribute("id"),l=(e,t)=>{t.forEach(((t,r)=>{t.innerText=e[r].toString()}))},i=({serverURL:e,path:r=window.location.pathname,selector:i=".waline-pageview-count",update:s=!0,lang:h="zh-CN"})=>{const c=new AbortController,g=Array.from(document.querySelectorAll(i)),p=e=>{const t=o(e);return null!==t&&r!==t},f=a=>n({serverURL:e,paths:a.map((e=>o(e)||r)),lang:h,signal:c.signal}).then((e=>l(e,a))).catch(t);if(s){const t=g.filter((e=>!p(e))),n=g.filter(p);a({serverURL:e,path:r,lang:h}).then((e=>l(new Array(t.length).fill(e),t))),n.length&&f(n)}else f(g);return c.abort.bind(c)};export{i as pageviewCount,e as version};
|
|
2
2
|
//# sourceMappingURL=pageview.esm.js.map
|
package/dist/pageview.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
!function(e,t){if("function"==typeof define&&define.amd)define("Waline",["exports"],t);else if("undefined"!=typeof exports)t(exports);else{var n={exports:{}};t(n.exports),e.Waline=n.exports}}("undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:this,(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.version=e.pageviewCount=void 0;e.version="2.3.
|
|
1
|
+
!function(e,t){if("function"==typeof define&&define.amd)define("Waline",["exports"],t);else if("undefined"!=typeof exports)t(exports);else{var n={exports:{}};t(n.exports),e.Waline=n.exports}}("undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:this,(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.version=e.pageviewCount=void 0;e.version="2.3.2";const t=e=>{"AbortError"!==e.name&&console.error(e.message)},n=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";if("object"==typeof e&&e.errno)throw new TypeError("Fetch ".concat(t," failed with ").concat(e.errno,": ").concat(e.errmsg));return e},o=e=>{let{serverURL:t,lang:o,paths:r,signal:a}=e;return fetch("".concat(t,"/article?path=").concat(encodeURIComponent(r.join(",")),"&lang=").concat(o),{signal:a}).then((e=>e.json())).then((e=>n(e,"visit count"))).then((e=>Array.isArray(e)?e:[e]))},r=e=>{let{serverURL:t,lang:o,path:r}=e;return fetch("".concat(t,"/article?lang=").concat(o),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:r})}).then((e=>e.json())).then((e=>n(e,"visit count")))},a=e=>e.dataset.path||e.getAttribute("id"),i=(e,t)=>{t.forEach(((t,n)=>{t.innerText=e[n].toString()}))};e.pageviewCount=e=>{let{serverURL:n,path:l=window.location.pathname,selector:s=".waline-pageview-count",update:c=!0,lang:h="zh-CN"}=e;const f=new AbortController,p=Array.from(document.querySelectorAll(s)),d=e=>{const t=a(e);return null!==t&&l!==t},g=e=>o({serverURL:n,paths:e.map((e=>a(e)||l)),lang:h,signal:f.signal}).then((t=>i(t,e))).catch(t);if(c){const e=p.filter((e=>!d(e))),t=p.filter(d);r({serverURL:n,path:l,lang:h}).then((t=>i(new Array(e.length).fill(t),e))),t.length&&g(t)}else g(p);return f.abort.bind(f)}}));
|
|
2
2
|
//# sourceMappingURL=pageview.js.map
|
package/dist/shim.esm.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{getCurrentScope as e,onScopeDispose as t,ref as n,unref as o,isRef as l,watch as r,readonly as a,shallowRef as i,computed as s,h as c,defineComponent as u,inject as m,onMounted as d,onUnmounted as p,resolveComponent as v,openBlock as g,createElementBlock as f,createElementVNode as h,createVNode as w,toDisplayString as y,createCommentVNode as b,normalizeClass as k,Fragment as C,renderList as $,withDirectives as I,vModelDynamic as L,vModelText as j,vShow as x,createTextVNode as S,createBlock as E,provide as R,reactive as A,createApp as U,watchEffect as z}from"vue";import M from"autosize";import{marked as O}from"marked";const P=["nick","mail","link"],N=e=>e.filter((e=>P.includes(e))),T=e=>new Promise(((t,n)=>{const o=new FileReader;o.readAsDataURL(e),o.onload=()=>{var e;return t((null===(e=o.result)||void 0===e?void 0:e.toString())||"")},o.onerror=n})),B=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>',_=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"),F=["23AC69","91C132","F19726","E8552D","1AAB8E","E1147F","2980C1","1BA1E6","9FA0A0","F19726","E30B20","E30B20","A3338B"],D={},H=e=>{let t=0;return e.replace(_,((e,n,o)=>{if(o)return`<span style="color: slategray">${o}</span>`;if("<"===n)return"<";let l;D[n]?l=D[n]:(l=F[t],D[n]=l);const r=`<span style="color: #${l}">${n}</span>`;return t=++t%F.length,r}))},W=["nick","nickError","mail","mailError","link","optional","placeholder","sofa","submit","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"],q=e=>Object.fromEntries(e.map(((e,t)=>[W[t],e])));var V=q(["NickName","NickName cannot be less than 3 bytes.","E-Mail","Please confirm your email address.","Website","Optional","Comment here...","No comment yet.","Submit","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"]),J=q(["ニックネーム","3バイト以上のニックネームをご入力ください.","メールアドレス","メールアドレスをご確認ください.","サイト","オプション","ここにコメント","コメントしましょう~","提出する","返信する","キャンセル","コメント","更新","さらに読み込む","プレビュー","絵文字","画像をアップロード","秒前","分前","時間前","日前","たっだ今","アップロード","ログインする","ログアウト","管理者","トップに置く","ワード","コメントは $0 から $1 ワードの間でなければなりません!\n 現在の単語番号: $2","匿名"]),K=q(["昵称","昵称不能少于3个字符","邮箱","请填写正确的邮件地址","网址","可选","欢迎评论","来发评论吧~","提交","回复","取消回复","评论","刷新","加载更多...","预览","表情","上传图片","秒前","分钟前","小时前","天前","刚刚","正在上传","登录","退出","博主","置顶","字","评论字数应在 $0 到 $1 字之间!\n当前字数:$2","匿名","潜水","冒泡","吐槽","活跃","话痨","传说"]),Y=q(["暱稱","郵箱","網址","可選","暱稱不能少於3個字元","請填寫正確的郵件地址","歡迎評論","來發評論吧~","提交","回覆","取消回覆","評論","刷新","載入更多...","預覽","表情","上傳圖片","秒前","分鐘前","小時前","天前","剛剛","正在上傳","登錄","退出","博主","置頂","字","評論字數應在 $0 到 $1 字之間!\n當前字數:$2","匿名","潛水","冒泡","吐槽","活躍","話癆","傳說"]),G=q(["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","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"]),X=q(["Псевдоним","Никнейм не может быть меньше 3 байт.","Эл. адрес","Пожалуйста, подтвердите адрес вашей электронной почты.","Веб-сайт","Необязательный","Комментарий здесь...","Пока нет комментариев.","Отправить","Отвечать","Отменить ответ","Комментарии","Обновить","Загрузи больше...","Превью","эмодзи","Загрузить изображение","секунд назад","несколько минут назад","несколько часов назад","дней назад","прямо сейчас","Загрузка","Авторизоваться","Выход из системы","Админ","Липкий","Слова","Пожалуйста, введите комментарии от $0 до $1 слов!\nНомер текущего слова: $2","Анонимный"]);const Q={zh:K,"zh-cn":K,"zh-CN":K,"zh-tw":Y,"zh-TW":Y,en:V,"en-US":V,"en-us":V,jp:J,"jp-jp":J,"jp-JP":J,"pt-br":G,"pt-BR":G,ru:X,"ru-ru":X,"ru-RU":X};function Z(n){return!!e()&&(t(n),!0)}const ee="undefined"!=typeof window,te=()=>{};const ne=e=>e();var oe=Object.getOwnPropertySymbols,le=Object.prototype.hasOwnProperty,re=Object.prototype.propertyIsEnumerable;function ae(e,t,n={}){const o=n,{eventFilter:l=ne}=o,a=((e,t)=>{var n={};for(var o in e)le.call(e,o)&&t.indexOf(o)<0&&(n[o]=e[o]);if(null!=e&&oe)for(var o of oe(e))t.indexOf(o)<0&&re.call(e,o)&&(n[o]=e[o]);return n})(o,["eventFilter"]);return r(e,(i=l,s=t,function(...e){i((()=>s.apply(this,e)),{fn:s,thisArg:this,args:e})}),a);var i,s}var ie=Object.defineProperty,se=Object.defineProperties,ce=Object.getOwnPropertyDescriptors,ue=Object.getOwnPropertySymbols,me=Object.prototype.hasOwnProperty,de=Object.prototype.propertyIsEnumerable,pe=(e,t,n)=>t in e?ie(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;function ve(e,t,o={}){const l=o,{eventFilter:r}=l,a=((e,t)=>{var n={};for(var o in e)me.call(e,o)&&t.indexOf(o)<0&&(n[o]=e[o]);if(null!=e&&ue)for(var o of ue(e))t.indexOf(o)<0&&de.call(e,o)&&(n[o]=e[o]);return n})(l,["eventFilter"]),{eventFilter:i,pause:s,resume:c,isActive:u}=function(e=ne){const t=n(!0);return{isActive:t,pause:function(){t.value=!1},resume:function(){t.value=!0},eventFilter:(...n)=>{t.value&&e(...n)}}}(r),m=ae(e,t,(d=((e,t)=>{for(var n in t||(t={}))me.call(t,n)&&pe(e,n,t[n]);if(ue)for(var n of ue(t))de.call(t,n)&&pe(e,n,t[n]);return e})({},a),se(d,ce({eventFilter:i}))));var d;return{stop:m,pause:s,resume:c,isActive:u}}const ge=ee?window:void 0,fe=ee?window.document:void 0;function he(...e){let t,n,l,a;if("string"==typeof e[0]?([n,l,a]=e,t=ge):[t,n,l,a]=e,!t)return te;let i=te;const s=r((()=>function(e){var t;const n=o(e);return null!=(t=null==n?void 0:n.$el)?t:n}(t)),(e=>{i(),e&&(e.addEventListener(n,l,a),i=()=>{e.removeEventListener(n,l,a),i=te})}),{immediate:!0,flush:"post"}),c=()=>{s(),i()};return Z(c),c}ee&&window.navigator,ee&&window.location;const we="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},ye="__vueuse_ssr_handlers__";we[ye]=we[ye]||{};const be=we[ye];const ke={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 Ce(e,t,l,r={}){var a;const{flush:s="pre",deep:c=!0,listenToStorageChanges:u=!0,writeDefaults:m=!0,shallow:d,window:p=ge,eventFilter:v,onError:g=(e=>{console.error(e)})}=r,f=(d?i:n)(t);if(!l)try{l=function(e,t){return be[e]||t}("getDefaultStorage",(()=>{var e;return null==(e=ge)?void 0:e.localStorage}))()}catch(e){g(e)}if(!l)return f;const h=o(t),w=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),y=null!=(a=r.serializer)?a:ke[w],{pause:b,resume:k}=ve(f,(()=>function(t){try{null==t?l.removeItem(e):l.setItem(e,y.write(t))}catch(e){g(e)}}(f.value)),{flush:s,deep:c,eventFilter:v});return p&&u&&he(p,"storage",C),C(),f;function C(t){t&&t.key!==e||(f.value=function(t){if(!t||t.key===e){b();try{const n=t?t.newValue:l.getItem(e);return null==n?(m&&null!==h&&l.setItem(e,y.write(h)),h):"string"!=typeof n?n:y.read(n)}catch(e){g(e)}finally{k()}}}(t))}}var $e,Ie,Le=Object.defineProperty,je=Object.getOwnPropertySymbols,xe=Object.prototype.hasOwnProperty,Se=Object.prototype.propertyIsEnumerable,Ee=(e,t,n)=>t in e?Le(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;function Re(e={}){const{controls:t=!1,interval:a="requestAnimationFrame"}=e,i=n(new Date),s=()=>i.value=new Date,c="requestAnimationFrame"===a?function(e,t={}){const{immediate:o=!0,window:l=ge}=t,r=n(!1);let a=null;function i(){r.value&&l&&(e(),a=l.requestAnimationFrame(i))}function s(){!r.value&&l&&(r.value=!0,i())}function c(){r.value=!1,null!=a&&l&&(l.cancelAnimationFrame(a),a=null)}return o&&s(),Z(c),{isActive:r,pause:c,resume:s}}(s,{immediate:!0}):function(e,t=1e3,a={}){const{immediate:i=!0,immediateCallback:s=!1}=a;let c=null;const u=n(!1);function m(){c&&(clearInterval(c),c=null)}function d(){u.value=!1,m()}function p(){t<=0||(u.value=!0,s&&e(),m(),c=setInterval(e,o(t)))}i&&ee&&p(),l(t)&&Z(r(t,(()=>{i&&ee&&p()})));return Z(d),{isActive:u,pause:d,resume:p}}(s,a,{immediate:!0});return t?((e,t)=>{for(var n in t||(t={}))xe.call(t,n)&&Ee(e,n,t[n]);if(je)for(var n of je(t))Se.call(t,n)&&Ee(e,n,t[n]);return e})({now:i},c):i}ee&&(null==window?void 0:window.navigator)&&(null==($e=null==window?void 0:window.navigator)?void 0:$e.platform)&&/iP(ad|hone|od)/.test(null==(Ie=null==window?void 0:window.navigator)?void 0:Ie.platform);let Ae=0;const Ue=e=>{try{e=decodeURI(e)}catch(e){}return e},ze=(e="")=>e.replace(/\/$/u,""),Me=e=>/^(https?:)?\/\//.test(e),Oe=e=>{const t=ze(e);return Me(t)?t:`https://${t}`},Pe=e=>Array.isArray(e)?e:!!e&&[0,e],Ne=(e,t)=>"function"==typeof e?e:!1!==e&&t,Te="{--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}",Be=(e,t)=>{let n=e.toString();for(;n.length<t;)n="0"+n;return n},_e=(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(),r=Math.floor(l/864e5);if(0===r){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 r<0?n.now:r<8?`${r} ${n.days}`:(e=>{const t=Be(e.getDate(),2),n=Be(e.getMonth()+1,2);return`${Be(e.getFullYear(),2)}-${n}-${t}`})(o)},Fe=e=>{const t=Ce("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}))},De=(e,t="",n="",o="")=>`${t?`${t}/`:""}${n}${e}${o?`.${o}`:""}`,He=e=>{"AbortError"!==e.name&&console.error(e.message)},We=(e,t="")=>{if("object"==typeof e&&e.errno)throw new TypeError(`Fetch ${t} failed with ${e.errno}: ${e.errmsg}`);return e},qe=({serverURL:e,lang:t,paths:n,signal:o})=>fetch(`${e}/article?path=${encodeURIComponent(n.join(","))}&lang=${t}`,{signal:o}).then((e=>e.json())).then((e=>We(e,"visit count"))).then((e=>Array.isArray(e)?e:[e])),Ve=({serverURL:e,lang:t,path:n})=>fetch(`${e}/article?lang=${t}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:n})}).then((e=>e.json())).then((e=>We(e,"visit count"))),Je=e=>e instanceof HTMLElement?e:"string"==typeof e?document.querySelector(e):null,Ke=e=>e.type.includes("image"),Ye=e=>{const t=Array.from(e).find(Ke);return t?t.getAsFile():null},Ge=/\$.*?\$/,Xe=/^\$(.*?)\$/,Qe=/^(?:\s{0,3})\$\$((?:[^\n]|\n[^\n])+?)\n{0,1}\$\$/,Ze=(e="",t={})=>e.replace(/:(.+?):/g,((e,n)=>t[n]?`<img class="wl-emoji" src="${t[n]}" alt="${n}">`:e)),et=(e,{emojiMap:t,highlighter:n,texRenderer:o})=>{if(O.setOptions({highlight:n||void 0,breaks:!0,smartLists:!0,smartypants:!0}),o){const e=(e=>[{name:"blockMath",level:"block",tokenizer(t){const n=Qe.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(Ge);return-1!==t?t:e.length},tokenizer(t){const n=Xe.exec(t);if(null!==n)return{type:"html",raw:n[0],text:e(!1,n[1])}}}])(o);O.use({extensions:e})}return O.parse(Ze(e,t))},tt=e=>e.dataset.path||e.getAttribute("id"),nt=()=>Ce("USER_KEY",{}),ot=({serverURL:e,path:t=window.location.pathname,selector:n=".waline-comment-count",lang:o="zh-CN"})=>{var l;const r=new AbortController,a=document.querySelectorAll(n),i=nt();return a.length&&(({serverURL:e,lang:t,paths:n,signal:o,token:l})=>{const r={};return l&&(r.Authorization=`Bearer ${l}`),fetch(`${e}/comment?type=count&url=${encodeURIComponent(n.join(","))}&lang=${t}`,{signal:o,headers:r}).then((e=>e.json())).then((e=>We(e,"comment count"))).then((e=>Array.isArray(e)?e:[e]))})({serverURL:e,paths:Array.from(a).map((e=>Ue(e.dataset.path||e.getAttribute("id")||t))),lang:o,signal:r.signal,token:null===(l=i.value)||void 0===l?void 0:l.token}).then((e=>{a.forEach(((t,n)=>{t.innerText=e[n].toString()}))})).catch(He),r.abort.bind(r)},lt=({size:e})=>c("svg",{width:e,height:e,viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid"},c("circle",{cx:50,cy:50,fill:"none",stroke:"currentColor",strokeWidth:"4",r:"40","stroke-dasharray":"85 30"},c("animateTransform",{attributeName:"transform",type:"rotate",repeatCount:"indefinite",dur:"1s",values:"0 50 50;360 50 50",keyTimes:"0;1"})));var rt=u({name:"CommentBox",components:{CloseIcon:({size:e})=>c("svg",{class:"wl-close-icon",viewBox:"0 0 1024 1024",width:e,height:e},[c("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"}),c("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:()=>c("svg",{viewBox:"0 0 1024 1024",width:"24",height:"24"},c("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:()=>c("svg",{viewBox:"0 0 1024 1024",width:"24",height:"24"},[c("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"}),c("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"})]),MarkdownIcon:()=>c("svg",{width:"16",height:"16",ariaHidden:"true"},c("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:()=>c("svg",{viewBox:"0 0 1024 1024",width:"24",height:"24"},[c("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"}),c("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:lt},props:{rootId:{type:String,default:""},replyId:{type:String,default:""},replyUser:{type:String,default:""}},emits:["submit","cancel-reply"],setup(e,{emit:t}){const o=m("config"),l=Ce("WALINE_COMMENT_BOX_EDITOR",""),a=Ce("WALINE_USER_META",{nick:"",mail:"",link:""}),i=nt(),c=n({}),u=n(null),v=n(null),g=n(null),f=n(null),h=n({tabs:[],map:{}}),w=n(0),y=n(!1),b=n(!1),k=n(""),C=n(0),$=n(0),I=n(!1),L=n(""),j=n(!1),x=s((()=>o.value.locale)),S=s((()=>{var e;return Boolean(null===(e=i.value)||void 0===e?void 0:e.token)})),E=s((()=>!1!==o.value.imageUploader)),R=e=>{const t=u.value,n=t.selectionStart,o=t.selectionEnd||0,r=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=r},A=e=>{const t=`![${o.value.locale.uploading} ${e.name}]()`;return R(t),Promise.resolve().then((()=>o.value.imageUploader(e))).then((n=>{l.value=l.value.replace(t,`\r\n`)}))},U=()=>{var n,r,s,m,d;const{serverURL:p,lang:v,login:g,wordLimit:f,requiredMeta:w}=o.value,y={comment:L.value,nick:a.value.nick,mail:a.value.mail,link:a.value.link,ua:navigator.userAgent,url:o.value.path};if(null===(n=i.value)||void 0===n?void 0:n.token)y.nick=i.value.display_name,y.mail=i.value.email,y.link=i.value.url;else{if("force"===g)return;if(w.indexOf("nick")>-1&&!y.nick)return null===(r=c.value.nick)||void 0===r||r.focus(),alert(x.value.nickError);if(w.indexOf("mail")>-1&&!y.mail||y.mail&&!/^\w(?:[\w._-]*\w)?@(?:\w(?:[\w-]*\w)?\.){0,2}\w+$/.exec(y.mail))return null===(s=c.value.mail)||void 0===s||s.focus(),alert(x.value.mailError);if(!y.comment)return void(null===(m=u.value)||void 0===m||m.focus());y.nick||(y.nick=x.value.anonymous)}if(!I.value)return alert(x.value.wordHint.replace("$0",f[0].toString()).replace("$1",f[1].toString()).replace("$2",C.value.toString()));y.comment=Ze(y.comment,h.value.map),e.replyId&&e.rootId&&(y.pid=e.replyId,y.rid=e.rootId,y.at=e.replyUser),j.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:p,lang:v,token:null===(d=i.value)||void 0===d?void 0:d.token,comment:y}).then((n=>{if(j.value=!1,n.errmsg)return alert(n.errmsg);t("submit",n.data),l.value="",k.value="",e.replyId&&t("cancel-reply")})).catch((e=>{j.value=!1,alert(e.message)}))},z=e=>{g.value.contains(e.target)||f.value.contains(e.target)||(y.value=!1)};return r([o,C],(([e,t])=>{const{wordLimit:n}=e;n?t<n[0]&&0!==n[0]?($.value=n[0],I.value=!1):t>n[1]?($.value=n[1],I.value=!1):($.value=n[1],I.value=!0):($.value=0,I.value=!0)}),{immediate:!0}),d((()=>{document.body.addEventListener("click",z),r((()=>l.value),(e=>{const{highlighter:t,texRenderer:n}=o.value;L.value=e,k.value=et(e,{emojiMap:h.value.map,highlighter:t,texRenderer:n}),C.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?M(u.value):M.destroy(u.value)}),{immediate:!0}),r((()=>o.value.emoji),(e=>{return(t=Array.isArray(e)?e:[],Promise.all(t.map((e=>"string"==typeof e?Fe(ze(e)):Promise.resolve(e)))).then((e=>{const t={tabs:[],map:{}};return e.forEach((e=>{const{name:n,folder:o,icon:l,prefix:r,type:a,items:i}=e;t.tabs.push({name:n,icon:De(l,o,r,a),items:i.map((e=>{const n=`${r||""}${e}`;return t.map[n]=De(e,o,r,a),n}))})})),t}))).then((e=>{h.value=e}));var t}),{immediate:!0})})),p((()=>{document.body.removeEventListener("click",z)})),{config:o,locale:x,insert:R,onChange:()=>{const e=v.value;e.files&&E.value&&A(e.files[0]).then((()=>{e.value=""}))},onDrop:e=>{var t;if(null===(t=e.dataTransfer)||void 0===t?void 0:t.items){const t=Ye(e.dataTransfer.items);t&&E.value&&(A(t),e.preventDefault())}},onKeyDown:e=>{const t=e.key;(e.ctrlKey||e.metaKey)&&"Enter"===t&&U()},onPaste:e=>{if(e.clipboardData){const t=Ye(e.clipboardData.items);t&&E.value&&A(t)}},onLogin:e=>{e.preventDefault();const{lang:t,serverURL:n}=o.value,l=(window.innerWidth-450)/2,r=(window.innerHeight-450)/2,a=window.open(`${n}/ui/login?lng=${encodeURIComponent(t)}`,"_blank",`width=450,height=450,left=${l},top=${r},scrollbars=no,resizable=no,status=no,location=no,toolbar=no,menubar=no`);null==a||a.postMessage({type:"TOKEN",data:null},"*");const s=({data:e})=>{e&&"userInfo"===e.type&&e.data.token&&(null==a||a.close(),i.value=e.data,(e.data.remember?localStorage:sessionStorage).setItem("WALINE_USER",JSON.stringify(e.data)),window.removeEventListener("message",s))};window.addEventListener("message",s)},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,r=(window.innerHeight-800)/2,a=window.open(`${n}/ui/profile?lng=${encodeURIComponent(t)}`,"_blank",`width=800,height=800,left=${l},top=${r},scrollbars=no,resizable=no,status=no,location=no,toolbar=no,menubar=no`);null==a||a.postMessage({type:"TOKEN",data:i.value.token},"*");const s=({data:e})=>{e&&"profile"===e.type&&(i.value={...i.value,...e},[localStorage,sessionStorage].filter((e=>e.getItem("WALINE_USER"))).forEach((e=>e.setItem("WALINE_USER",JSON.stringify(i)))),window.removeEventListener("message",s))};window.addEventListener("message",s)},submitComment:U,isLogin:S,userInfo:i,isSubmitting:j,wordNumber:C,wordLimit:$,isWordNumberLegal:I,editor:l,userMeta:a,emoji:h,emojiTabIndex:w,showEmoji:y,canUploadImage:E,previewText:k,showPreview:b,inputRefs:c,editorRef:u,emojiButtonRef:g,emojiPopupRef:f,imageUploadRef:v}}});const at={class:"wl-comment"},it={key:0,class:"wl-login-info"},st={class:"wl-avatar"},ct=["title"],ut=["src"],mt=["textContent"],dt={class:"wl-panel"},pt=["for","textContent"],vt=["id","name","type","onUpdate:modelValue"],gt=["placeholder"],ft={class:"wl-preview"},ht=h("hr",null,null,-1),wt=["innerHTML"],yt={class:"wl-footer"},bt={class:"wl-actions"},kt={href:"https://guides.github.com/features/mastering-markdown/",title:"Markdown Guide","aria-label":"Markdown is supported",class:"wl-action",target:"_blank",rel:"noreferrer"},Ct=["title"],$t=["title"],It=["title"],Lt={class:"wl-info"},jt={class:"wl-text-number"},xt={key:0},St=S(" / "),Et=["textContent"],Rt=["textContent"],At=["disabled"],Ut={key:0,class:"wl-tab-wrapper"},zt=["title","onClick"],Mt=["src","alt"],Ot={key:0,class:"wl-tabs"},Pt=["onClick"],Nt=["src","alt","title"],Tt=["title"];rt.render=function(e,t,n,o,l,r){const a=v("CloseIcon"),i=v("MarkdownIcon"),s=v("EmojiIcon"),c=v("ImageIcon"),u=v("PreviewIcon"),m=v("LoadingIcon");return g(),f("div",at,["disable"!==e.config.login&&e.isLogin?(g(),f("div",it,[h("div",st,[h("button",{class:"wl-logout-btn",title:e.locale.logout,onClick:t[0]||(t[0]=(...t)=>e.onLogout&&e.onLogout(...t))},[w(a,{size:14})],8,ct),h("img",{src:e.userInfo.avatar,alt:"avatar"},null,8,ut)]),h("a",{href:"#",class:"wl-login-nick","aria-label":"Profile",onClick:t[1]||(t[1]=(...t)=>e.onProfile&&e.onProfile(...t)),textContent:y(e.userInfo.display_name)},null,8,mt)])):b("v-if",!0),h("div",dt,["force"!==e.config.login&&e.config.meta.length&&!e.isLogin?(g(),f("div",{key:0,class:k(["wl-header",`item${e.config.meta.length}`])},[(g(!0),f(C,null,$(e.config.meta,(t=>(g(),f("div",{class:"wl-header-item",key:t},[h("label",{for:t,textContent:y(e.locale[t]+(e.config.requiredMeta.includes(t)||!e.config.requiredMeta.length?"":`(${e.locale.optional})`))},null,8,pt),I(h("input",{ref_for:!0,ref:n=>{n&&(e.inputRefs[t]=n)},id:`wl-${t}`,class:k(["wl-input",`wl-${t}`]),name:t,type:"mail"===t?"email":"text","onUpdate:modelValue":n=>e.userMeta[t]=n},null,10,vt),[[L,e.userMeta[t]]])])))),128))],2)):b("v-if",!0),I(h("textarea",{class:"wl-editor",ref:"editorRef",id:"wl-edit",placeholder:e.replyUser?`@${e.replyUser}`:e.locale.placeholder,"onUpdate:modelValue":t[2]||(t[2]=t=>e.editor=t),onKeydown:t[3]||(t[3]=(...t)=>e.onKeyDown&&e.onKeyDown(...t)),onDrop:t[4]||(t[4]=(...t)=>e.onDrop&&e.onDrop(...t)),onPaste:t[5]||(t[5]=(...t)=>e.onPaste&&e.onPaste(...t))},null,40,gt),[[j,e.editor]]),I(h("div",ft,[ht,h("h4",null,y(e.locale.preview)+":",1),h("div",{class:"wl-content",innerHTML:e.previewText},null,8,wt)],512),[[x,e.showPreview]]),h("div",yt,[h("div",bt,[h("a",kt,[w(i)]),I(h("button",{ref:"emojiButtonRef",class:k(["wl-action",{actived:e.showEmoji}]),title:e.locale.emoji,onClick:t[6]||(t[6]=t=>e.showEmoji=!e.showEmoji)},[w(s)],10,Ct),[[x,e.emoji.tabs.length]]),h("input",{ref:"imageUploadRef",class:"upload",id:"wl-image-upload",type:"file",accept:".png,.jpg,.jpeg,.webp,.bmp,.gif",onChange:t[7]||(t[7]=(...t)=>e.onChange&&e.onChange(...t))},null,544),e.canUploadImage?(g(),f("label",{key:0,for:"wl-image-upload",class:"wl-action",title:e.locale.uploadImage},[w(c)],8,$t)):b("v-if",!0),h("button",{class:k(["wl-action",{actived:e.showPreview}]),title:e.locale.preview,onClick:t[8]||(t[8]=t=>e.showPreview=!e.showPreview)},[w(u)],10,It)]),h("div",Lt,[h("div",jt,[S(y(e.wordNumber)+" ",1),e.config.wordLimit?(g(),f("span",xt,[St,h("span",{class:k({illegal:!e.isWordNumberLegal}),textContent:y(e.wordLimit)},null,10,Et)])):b("v-if",!0),S(" "+y(e.locale.word),1)]),"disable"===e.config.login||e.isLogin?b("v-if",!0):(g(),f("button",{key:0,class:"wl-btn",onClick:t[9]||(t[9]=(...t)=>e.onLogin&&e.onLogin(...t)),textContent:y(e.locale.login)},null,8,Rt)),"force"!==e.config.login||e.isLogin?(g(),f("button",{key:1,class:"wl-btn primary",title:"Cmd|Ctrl + Enter",disabled:e.isSubmitting,onClick:t[10]||(t[10]=(...t)=>e.submitComment&&e.submitComment(...t))},[e.isSubmitting?(g(),E(m,{key:0,size:16})):(g(),f(C,{key:1},[S(y(e.locale.submit),1)],2112))],8,At)):b("v-if",!0)]),h("div",{ref:"emojiPopupRef",class:k(["wl-emoji-popup",{display:e.showEmoji}])},[(g(!0),f(C,null,$(e.emoji.tabs,((t,n)=>(g(),f(C,{key:t.name},[n===e.emojiTabIndex?(g(),f("div",Ut,[(g(!0),f(C,null,$(t.items,(t=>(g(),f("button",{key:t,title:t,onClick:n=>e.insert(`:${t}:`)},[e.showEmoji?(g(),f("img",{key:0,class:"wl-emoji",src:e.emoji.map[t],alt:t,loading:"lazy",referrerPolicy:"no-referrer"},null,8,Mt)):b("v-if",!0)],8,zt)))),128))])):b("v-if",!0)],64)))),128)),e.emoji.tabs.length>1?(g(),f("div",Ot,[(g(!0),f(C,null,$(e.emoji.tabs,((t,n)=>(g(),f("button",{key:t.name,class:k(["wl-tab",{active:e.emojiTabIndex===n}]),onClick:t=>e.emojiTabIndex=n},[h("img",{class:"wl-emoji",src:t.icon,alt:t.name,title:t.name,loading:"lazy",referrerPolicy:"no-referrer"},null,8,Nt)],10,Pt)))),128))])):b("v-if",!0)],2)])]),e.replyId?(g(),f("button",{key:1,class:"wl-close",title:e.locale.cancelReply,onClick:t[11]||(t[11]=t=>e.$emit("cancel-reply"))},[w(a,{size:24})],8,Tt)):b("v-if",!0)])},rt.__file="src/components/CommentBox.vue";var Bt=u({props:{comment:{type:Object,required:!0},rootId:{type:String,required:!0},reply:{type:Object}},components:{CommentBox:rt,ReplyIcon:()=>c("svg",{viewBox:"0 0 1024 1024",width:"18",height:"18"},c("path",{d:"M1019.2 720C1001.6 625.6 968 566.4 904 497.6c-89.6-89.6-214.4-150.4-347.2-176v-120c0-25.6-8-51.2-25.6-64-33.6-30.4-81.6-30.4-112-4.8L33.6 441.6C12.8 459.2 0 484.8 0 510.4c0 25.6 12.8 51.2 30.4 68.8l385.6 312c17.6 12.8 33.6 17.6 51.2 17.6 12.8 0 25.6-4.8 38.4-8C536 888 552 857.6 552 824v-99.2c124.8 20.8 248 86.4 339.2 140.8 25.6 17.6 59.2 17.6 89.6 0 25.6-17.6 43.2-46.4 43.2-76.8 0-33.6 0-56-4.8-68.8zm-500.8-89.6-46.4-4.8v193.6L86.4 510.4 472 201.6V400l38.4 4.8c128 12.8 248 68.8 334.4 153.6 51.2 56 76.8 102.4 94.4 179.2 0 4.8 4.8 20.8 4.8 51.2C835.2 720 672 640 518.4 630.4z",fill:"currentColor"})),VerifiedIcon:()=>c("svg",{class:"verified-icon",viewBox:"0 0 1024 1024",width:"14",height:"14"},c("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"}))},emits:["submit","reply"],setup(e){const t=m("config"),n=s((()=>t.value.locale)),o=s((()=>{let{link:t}=e.comment;return t?Me(t)?t:`https://${t}`:""})),l=((e,t)=>{const n=Re();return s((()=>_e(e,n.value,t)))})(e.comment.insertedAt,n.value),r=s((()=>{var t;return e.comment.objectId===(null===(t=e.reply)||void 0===t?void 0:t.objectId)}));return{config:t,locale:n,isReplyingCurrent:r,link:o,time:l}}});const _t=["id"],Ft={class:"wl-user","aria-hidden":"true"},Dt=["src"],Ht={class:"wl-card"},Wt={class:"wl-head"},qt=["href"],Vt={key:1,class:"wl-nick"},Jt=["textContent"],Kt=["textContent"],Yt=["textContent"],Gt=["textContent"],Xt=["textContent"],Qt=["title"],Zt={class:"wl-meta","aria-hidden":"true"},en=["textContent"],tn=["textContent"],nn=["textContent"],on=["innerHTML"],ln={key:0,class:"wl-reply-wrapper"},rn={key:1,class:"wl-quote"};Bt.render=function(e,t,n,o,l,r){const a=v("VerifiedIcon"),i=v("ReplyIcon"),s=v("CommentBox"),c=v("CommentCard",!0);return g(),f("div",{class:"wl-item",id:e.comment.objectId},[h("div",Ft,[e.comment.avatar?(g(),f("img",{key:0,src:e.comment.avatar},null,8,Dt)):b("v-if",!0),e.comment.type?(g(),E(a,{key:1})):b("v-if",!0)]),h("div",Ht,[h("div",Wt,[e.link?(g(),f("a",{key:0,class:"wl-nick",href:e.link,target:"_blank",rel:"nofollow noreferrer"},y(e.comment.nick),9,qt)):(g(),f("span",Vt,y(e.comment.nick),1)),"administrator"===e.comment.type?(g(),f("span",{key:2,class:"wl-badge",textContent:y(e.locale.admin)},null,8,Jt)):b("v-if",!0),e.comment.label?(g(),f("span",{key:3,class:"wl-badge",textContent:y(e.comment.label)},null,8,Kt)):b("v-if",!0),e.comment.sticky?(g(),f("span",{key:4,class:"wl-badge",textContent:y(e.locale.sticky)},null,8,Yt)):b("v-if",!0),e.comment.level>=0?(g(),f("span",{key:5,class:k(`wl-badge level${e.comment.level}`),textContent:y(e.locale[`level${e.comment.level}`]||`Level ${e.comment.level}`)},null,10,Gt)):b("v-if",!0),h("span",{class:"wl-time",textContent:y(e.time)},null,8,Xt),h("button",{class:k(["wl-reply",{active:e.isReplyingCurrent}]),title:e.isReplyingCurrent?e.locale.cancelReply:e.locale.reply,onClick:t[0]||(t[0]=t=>e.$emit("reply",e.isReplyingCurrent?null:e.comment))},[w(i)],10,Qt)]),h("div",Zt,[e.comment.addr?(g(),f("span",{key:0,textContent:y(e.comment.addr)},null,8,en)):b("v-if",!0),e.comment.browser?(g(),f("span",{key:1,textContent:y(e.comment.browser)},null,8,tn)):b("v-if",!0),e.comment.os?(g(),f("span",{key:2,textContent:y(e.comment.os)},null,8,nn)):b("v-if",!0)]),h("div",{class:"wl-content",innerHTML:e.comment.comment},null,8,on),e.isReplyingCurrent?(g(),f("div",ln,[w(s,{replyId:e.comment.objectId,replyUser:e.comment.nick,rootId:e.rootId,onSubmit:t[1]||(t[1]=t=>e.$emit("submit",t)),onCancelReply:t[2]||(t[2]=t=>e.$emit("reply",null))},null,8,["replyId","replyUser","rootId"])])):b("v-if",!0),e.comment.children?(g(),f("div",rn,[(g(!0),f(C,null,$(e.comment.children,(n=>(g(),E(c,{key:n.objectId,comment:n,reply:e.reply,rootId:e.rootId,onReply:t[3]||(t[3]=t=>e.$emit("reply",t)),onSubmit:t[4]||(t[4]=t=>e.$emit("submit",t))},null,8,["comment","reply","rootId"])))),128))])):b("v-if",!0)])],8,_t)},Bt.__file="src/components/CommentCard.vue";var an=u({name:"WalineRoot",components:{CommentBox:rt,CommentCard:Bt,LoadingIcon:lt},props:{serverURL:{type:String,required:!0},path:{type:String,required:!0},meta:{type:Array},requiredMeta:{type:Array},dark:[String,Boolean],lang:{type:String},locale:Object,pageSize:Number,wordLimit:{type:[Number,Array]},emoji:{type:[Array,Boolean]},login:String,highlighter:Function,imageUploader:[Function,Boolean],texRenderer:[Function,Boolean],copyright:Boolean},setup(e){const t=s((()=>(({serverURL:e,path:t=location.pathname,lang:n="zh-CN",locale:o,emoji:l=["//unpkg.com/@waline/emojis@1.0.1/weibo"],meta:r=["nick","mail","link"],requiredMeta:a=[],dark:i=!1,pageSize:s=10,wordLimit:c,imageUploader:u,highlighter:m,texRenderer:d,copyright:p=!0,login:v="enable",...g})=>({serverURL:Oe(e),path:Ue(t),locale:{...Q[n]||Q["zh-CN"],..."object"==typeof o?o:{}},wordLimit:Pe(c),meta:N(r),requiredMeta:N(a),imageUploader:Ne(u,T),highlighter:Ne(m,H),texRenderer:Ne(d,B),lang:n,dark:i,emoji:l,pageSize:s,login:v,copyright:p,...g}))(e))),o=nt(),l=n("loading"),i=n(0),c=n(1),u=n(0),m=n([]),p=n(null),v=s((()=>{return"string"==typeof(e=t.value.dark)?"auto"===e?`@media(prefers-color-scheme:dark){body${Te}}`:`${e}${Te}`:!0===e?`:root${Te}`:"";var e}));let g;!function(e,t={}){const o=n(!1),{document:l=fe,immediate:i=!0,manual:s=!1,id:c="vueuse_styletag_"+ ++Ae}=t,u=n(e);let m=()=>{};const d=()=>{if(!l)return;const e=l.getElementById(c)||l.createElement("style");e.type="text/css",e.id=c,t.media&&(e.media=t.media),l.head.appendChild(e),o.value||(m=r(u,(t=>{e.innerText=t}),{immediate:!0}),o.value=!0)},p=()=>{l&&o.value&&(m(),l.head.removeChild(l.getElementById(c)),o.value=!1)};i&&!s&&d(),s||Z(p),a(o)}(v);const f=e=>{var n;const{serverURL:r,path:a,pageSize:s}=t.value,d=new AbortController;l.value="loading",null==g||g(),(({serverURL:e,lang:t,path:n,page:o,pageSize:l,signal:r,token:a})=>{const i={};return a&&(i.Authorization=`Bearer ${a}`),fetch(`${e}/comment?path=${encodeURIComponent(n)}&pageSize=${l}&page=${o}&lang=${t}`,{signal:r,headers:i}).then((e=>e.json())).then((e=>We(e,"comment list")))})({serverURL:r,lang:t.value.lang,path:a,pageSize:s,page:e,signal:d.signal,token:null===(n=o.value)||void 0===n?void 0:n.token}).then((t=>{l.value="success",i.value=t.count,m.value.push(...t.data),c.value=e,u.value=t.totalPages})).catch((e=>{"AbortError"!==e.name&&(console.error(e.message),l.value="error")})),g=d.abort.bind(d)},h=()=>{i.value=0,m.value=[],f(1)};return R("config",t),r((()=>e.path),h),d((()=>h())),{config:t,darkmodeStyle:v,i18n:s((()=>t.value.locale)),status:l,count:i,page:c,totalPages:u,data:m,reply:p,loadMore:()=>f(c.value+1),refresh:h,onReply:e=>{p.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)},version:"2.3.1"}}});const sn={"data-waline":""},cn={class:"wl-count"},un=["textContent"],mn={class:"wl-cards"},dn={key:1,class:"wl-operation"},pn=["textContent"],vn={key:0,class:"wl-loading"},gn=["textContent"],fn={class:"wl-operation"},hn=["textContent"],wn={key:3,class:"wl-power"},yn=S(" Powered by "),bn=h("a",{href:"https://github.com/walinejs/waline",target:"_blank",rel:"noreferrer"}," Waline ",-1);an.render=function(e,t,n,o,l,r){const a=v("CommentBox"),i=v("CommentCard"),s=v("LoadingIcon");return g(),f("div",sn,[e.reply?b("v-if",!0):(g(),E(a,{key:0,onSubmit:e.onSubmit},null,8,["onSubmit"])),h("div",cn,[e.count?(g(),f("span",{key:0,class:"wl-num",textContent:y(e.count)},null,8,un)):b("v-if",!0),S(" "+y(e.i18n.comment),1)]),h("div",mn,[(g(!0),f(C,null,$(e.data,(t=>(g(),E(i,{key:t.objectId,"root-id":t.objectId,comment:t,reply:e.reply,onReply:e.onReply,onSubmit:e.onSubmit},null,8,["root-id","comment","reply","onReply","onSubmit"])))),128))]),"error"===e.status?(g(),f("div",dn,[h("button",{type:"button",class:"wl-btn",onClick:t[0]||(t[0]=(...t)=>e.refresh&&e.refresh(...t)),textContent:y(e.i18n.refresh)},null,8,pn)])):(g(),f(C,{key:2},["loading"===e.status?(g(),f("div",vn,[w(s,{size:30})])):e.data.length?e.page<e.totalPages?(g(),f(C,{key:2},[b(" Load more button "),h("div",fn,[h("button",{type:"button",class:"wl-btn",onClick:t[1]||(t[1]=(...t)=>e.loadMore&&e.loadMore(...t)),textContent:y(e.i18n.more)},null,8,hn)])],2112)):b("v-if",!0):(g(),f("div",{key:1,class:"wl-empty",textContent:y(e.i18n.sofa)},null,8,gn))],2112)),b(" Copyright Information "),e.config.copyright?(g(),f("div",wn,[yn,bn,S(" v"+y(e.version),1)])):b("v-if",!0)])},an.__file="src/components/Waline.vue";const kn=(e,t)=>{t.forEach(((t,n)=>{t.innerText=e[n].toString()}))},Cn=({serverURL:e,path:t=window.location.pathname,selector:n=".waline-pageview-count",update:o=!0,lang:l="zh-CN"})=>{const r=new AbortController,a=Array.from(document.querySelectorAll(n)),i=e=>{const n=tt(e);return null!==n&&t!==n},s=n=>qe({serverURL:e,paths:n.map((e=>tt(e)||t)),lang:l,signal:r.signal}).then((e=>kn(e,n))).catch(He);if(o){const n=a.filter((e=>!i(e))),o=a.filter(i);Ve({serverURL:e,path:t,lang:l}).then((e=>kn(new Array(n.length).fill(e),n))),o.length&&s(o)}else s(a);return r.abort.bind(r)},$n=({el:e="#waline",path:t=window.location.pathname,comment:n=!1,pageview:o=!1,...l})=>{const r=e?Je(e):null;if(e&&!r)throw new Error("Option 'el' do not match any domElement!");if(!l.serverURL)throw new Error("Option 'serverURL' is missing!");const a=A({...l}),i=A({comment:n,pageview:o,path:t}),s=()=>{i.comment&&ot({serverURL:a.serverURL,path:i.path,selector:"string"==typeof i.comment?i.comment:void 0})},u=()=>{i.pageview&&Cn({serverURL:a.serverURL,path:i.path,selector:"string"==typeof i.pageview?i.pageview:void 0})},m=r?U((()=>c(an,{path:i.path,...a}))):null;m&&m.mount(r),s(),u();const d=z(s),p=z(u);return{el:r,update:({comment:e,pageview:t,path:n=window.location.pathname,...o}={})=>{Object.entries(o).forEach((([e,t])=>{a[e]=t})),i.path=n,void 0!==e&&(i.comment=e),void 0!==t&&(i.pageview=t)},destroy:()=>{null==m||m.unmount(),d(),p()}}},In="2.3.1",Ln=({el:e,serverURL:t,count:n,lang:o="zh-CN"})=>{var l;const r=nt(),a=Je(e),i=new AbortController;return(({serverURL:e,lang:t,count:n,signal:o,token:l})=>{const r={};return l&&(r.Authorization=`Bearer ${l}`),fetch(`${e}/comment?type=recent&count=${n}&lang=${t}`,{signal:o,headers:r}).then((e=>e.json())).then((e=>We(e,"recent comment")))})({serverURL:t,count:n,lang:o,signal:i.signal,token:null===(l=r.value)||void 0===l?void 0:l.token}).then((e=>a&&e.length?(a.innerHTML=`<ul class="wl-recent-list">${e.map((e=>`<li class="wl-recent-item"><a href="${e.url}">${e.nick}</a>:${e.comment}</li>`)).join("")}</ul>`,{comments:e,destroy:()=>{i.abort(),a.innerHTML=""}}):{comments:e,destroy:()=>i.abort()}))};export{Ln as RecentComments,ot as commentCount,Q as defaultLocales,$n as init,Cn as pageviewCount,In as version};
|
|
1
|
+
import{getCurrentScope as e,onScopeDispose as t,ref as n,unref as o,isRef as l,watch as r,readonly as a,shallowRef as i,computed as s,h as c,defineComponent as u,inject as m,onMounted as d,onUnmounted as p,resolveComponent as v,openBlock as g,createElementBlock as f,createElementVNode as h,createVNode as w,toDisplayString as y,createCommentVNode as b,normalizeClass as k,Fragment as C,renderList as $,withDirectives as I,vModelDynamic as L,vModelText as j,vShow as x,createTextVNode as E,createBlock as R,provide as S,reactive as A,createApp as U,watchEffect as z}from"vue";import M from"autosize";import{marked as O}from"marked";const P=["nick","mail","link"],N=e=>e.filter((e=>P.includes(e))),T=e=>new Promise(((t,n)=>{const o=new FileReader;o.readAsDataURL(e),o.onload=()=>{var e;return t((null===(e=o.result)||void 0===e?void 0:e.toString())||"")},o.onerror=n})),_=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>',B=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"),F=["23AC69","91C132","F19726","E8552D","1AAB8E","E1147F","2980C1","1BA1E6","9FA0A0","F19726","E30B20","E30B20","A3338B"],D={},H=e=>{let t=0;return e.replace(B,((e,n,o)=>{if(o)return`<span style="color: slategray">${o}</span>`;if("<"===n)return"<";let l;D[n]?l=D[n]:(l=F[t],D[n]=l);const r=`<span style="color: #${l}">${n}</span>`;return t=++t%F.length,r}))},W=["nick","nickError","mail","mailError","link","optional","placeholder","sofa","submit","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"],q=e=>Object.fromEntries(e.map(((e,t)=>[W[t],e])));var V=q(["NickName","NickName cannot be less than 3 bytes.","E-Mail","Please confirm your email address.","Website","Optional","Comment here...","No comment yet.","Submit","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"]),J=q(["ニックネーム","3バイト以上のニックネームをご入力ください.","メールアドレス","メールアドレスをご確認ください.","サイト","オプション","ここにコメント","コメントしましょう~","提出する","返信する","キャンセル","コメント","更新","さらに読み込む","プレビュー","絵文字","画像をアップロード","秒前","分前","時間前","日前","たっだ今","アップロード","ログインする","ログアウト","管理者","トップに置く","ワード","コメントは $0 から $1 ワードの間でなければなりません!\n 現在の単語番号: $2","匿名"]),K=q(["昵称","昵称不能少于3个字符","邮箱","请填写正确的邮件地址","网址","可选","欢迎评论","来发评论吧~","提交","回复","取消回复","评论","刷新","加载更多...","预览","表情","上传图片","秒前","分钟前","小时前","天前","刚刚","正在上传","登录","退出","博主","置顶","字","评论字数应在 $0 到 $1 字之间!\n当前字数:$2","匿名","潜水","冒泡","吐槽","活跃","话痨","传说"]),Y=q(["暱稱","郵箱","網址","可選","暱稱不能少於3個字元","請填寫正確的郵件地址","歡迎評論","來發評論吧~","提交","回覆","取消回覆","評論","刷新","載入更多...","預覽","表情","上傳圖片","秒前","分鐘前","小時前","天前","剛剛","正在上傳","登錄","退出","博主","置頂","字","評論字數應在 $0 到 $1 字之間!\n當前字數:$2","匿名","潛水","冒泡","吐槽","活躍","話癆","傳說"]),G=q(["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","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"]),X=q(["Псевдоним","Никнейм не может быть меньше 3 байт.","Эл. адрес","Пожалуйста, подтвердите адрес вашей электронной почты.","Веб-сайт","Необязательный","Комментарий здесь...","Пока нет комментариев.","Отправить","Отвечать","Отменить ответ","Комментарии","Обновить","Загрузи больше...","Превью","эмодзи","Загрузить изображение","секунд назад","несколько минут назад","несколько часов назад","дней назад","прямо сейчас","Загрузка","Авторизоваться","Выход из системы","Админ","Липкий","Слова","Пожалуйста, введите комментарии от $0 до $1 слов!\nНомер текущего слова: $2","Анонимный"]);const Q={zh:K,"zh-cn":K,"zh-CN":K,"zh-tw":Y,"zh-TW":Y,en:V,"en-US":V,"en-us":V,jp:J,"jp-jp":J,"jp-JP":J,"pt-br":G,"pt-BR":G,ru:X,"ru-ru":X,"ru-RU":X};function Z(n){return!!e()&&(t(n),!0)}const ee="undefined"!=typeof window,te=()=>{};const ne=e=>e();var oe=Object.getOwnPropertySymbols,le=Object.prototype.hasOwnProperty,re=Object.prototype.propertyIsEnumerable;function ae(e,t,n={}){const o=n,{eventFilter:l=ne}=o,a=((e,t)=>{var n={};for(var o in e)le.call(e,o)&&t.indexOf(o)<0&&(n[o]=e[o]);if(null!=e&&oe)for(var o of oe(e))t.indexOf(o)<0&&re.call(e,o)&&(n[o]=e[o]);return n})(o,["eventFilter"]);return r(e,(i=l,s=t,function(...e){i((()=>s.apply(this,e)),{fn:s,thisArg:this,args:e})}),a);var i,s}var ie=Object.defineProperty,se=Object.defineProperties,ce=Object.getOwnPropertyDescriptors,ue=Object.getOwnPropertySymbols,me=Object.prototype.hasOwnProperty,de=Object.prototype.propertyIsEnumerable,pe=(e,t,n)=>t in e?ie(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;function ve(e,t,o={}){const l=o,{eventFilter:r}=l,a=((e,t)=>{var n={};for(var o in e)me.call(e,o)&&t.indexOf(o)<0&&(n[o]=e[o]);if(null!=e&&ue)for(var o of ue(e))t.indexOf(o)<0&&de.call(e,o)&&(n[o]=e[o]);return n})(l,["eventFilter"]),{eventFilter:i,pause:s,resume:c,isActive:u}=function(e=ne){const t=n(!0);return{isActive:t,pause:function(){t.value=!1},resume:function(){t.value=!0},eventFilter:(...n)=>{t.value&&e(...n)}}}(r),m=ae(e,t,(d=((e,t)=>{for(var n in t||(t={}))me.call(t,n)&&pe(e,n,t[n]);if(ue)for(var n of ue(t))de.call(t,n)&&pe(e,n,t[n]);return e})({},a),se(d,ce({eventFilter:i}))));var d;return{stop:m,pause:s,resume:c,isActive:u}}const ge=ee?window:void 0,fe=ee?window.document:void 0;function he(...e){let t,n,l,a;if("string"==typeof e[0]?([n,l,a]=e,t=ge):[t,n,l,a]=e,!t)return te;let i=te;const s=r((()=>function(e){var t;const n=o(e);return null!=(t=null==n?void 0:n.$el)?t:n}(t)),(e=>{i(),e&&(e.addEventListener(n,l,a),i=()=>{e.removeEventListener(n,l,a),i=te})}),{immediate:!0,flush:"post"}),c=()=>{s(),i()};return Z(c),c}ee&&window.navigator,ee&&window.location;const we="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},ye="__vueuse_ssr_handlers__";we[ye]=we[ye]||{};const be=we[ye];const ke={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 Ce(e,t,l,r={}){var a;const{flush:s="pre",deep:c=!0,listenToStorageChanges:u=!0,writeDefaults:m=!0,shallow:d,window:p=ge,eventFilter:v,onError:g=(e=>{console.error(e)})}=r,f=(d?i:n)(t);if(!l)try{l=function(e,t){return be[e]||t}("getDefaultStorage",(()=>{var e;return null==(e=ge)?void 0:e.localStorage}))()}catch(e){g(e)}if(!l)return f;const h=o(t),w=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),y=null!=(a=r.serializer)?a:ke[w],{pause:b,resume:k}=ve(f,(()=>function(t){try{null==t?l.removeItem(e):l.setItem(e,y.write(t))}catch(e){g(e)}}(f.value)),{flush:s,deep:c,eventFilter:v});return p&&u&&he(p,"storage",C),C(),f;function C(t){t&&t.key!==e||(f.value=function(t){if(!t||t.key===e){b();try{const n=t?t.newValue:l.getItem(e);return null==n?(m&&null!==h&&l.setItem(e,y.write(h)),h):"string"!=typeof n?n:y.read(n)}catch(e){g(e)}finally{k()}}}(t))}}var $e,Ie,Le=Object.defineProperty,je=Object.getOwnPropertySymbols,xe=Object.prototype.hasOwnProperty,Ee=Object.prototype.propertyIsEnumerable,Re=(e,t,n)=>t in e?Le(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;function Se(e={}){const{controls:t=!1,interval:a="requestAnimationFrame"}=e,i=n(new Date),s=()=>i.value=new Date,c="requestAnimationFrame"===a?function(e,t={}){const{immediate:o=!0,window:l=ge}=t,r=n(!1);let a=null;function i(){r.value&&l&&(e(),a=l.requestAnimationFrame(i))}function s(){!r.value&&l&&(r.value=!0,i())}function c(){r.value=!1,null!=a&&l&&(l.cancelAnimationFrame(a),a=null)}return o&&s(),Z(c),{isActive:r,pause:c,resume:s}}(s,{immediate:!0}):function(e,t=1e3,a={}){const{immediate:i=!0,immediateCallback:s=!1}=a;let c=null;const u=n(!1);function m(){c&&(clearInterval(c),c=null)}function d(){u.value=!1,m()}function p(){t<=0||(u.value=!0,s&&e(),m(),c=setInterval(e,o(t)))}i&&ee&&p(),l(t)&&Z(r(t,(()=>{i&&ee&&p()})));return Z(d),{isActive:u,pause:d,resume:p}}(s,a,{immediate:!0});return t?((e,t)=>{for(var n in t||(t={}))xe.call(t,n)&&Re(e,n,t[n]);if(je)for(var n of je(t))Ee.call(t,n)&&Re(e,n,t[n]);return e})({now:i},c):i}ee&&(null==window?void 0:window.navigator)&&(null==($e=null==window?void 0:window.navigator)?void 0:$e.platform)&&/iP(ad|hone|od)/.test(null==(Ie=null==window?void 0:window.navigator)?void 0:Ie.platform);let Ae=0;const Ue=e=>{try{e=decodeURI(e)}catch(e){}return e},ze=(e="")=>e.replace(/\/$/u,""),Me=e=>/^(https?:)?\/\//.test(e),Oe=e=>{const t=ze(e);return Me(t)?t:`https://${t}`},Pe=e=>Array.isArray(e)?e:!!e&&[0,e],Ne=(e,t)=>"function"==typeof e?e:!1!==e&&t,Te="{--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}",_e=(e,t)=>{let n=e.toString();for(;n.length<t;)n="0"+n;return n},Be=(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(),r=Math.floor(l/864e5);if(0===r){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 r<0?n.now:r<8?`${r} ${n.days}`:(e=>{const t=_e(e.getDate(),2),n=_e(e.getMonth()+1,2);return`${_e(e.getFullYear(),2)}-${n}-${t}`})(o)},Fe=e=>{const t=Ce("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}))},De=(e,t="",n="",o="")=>`${t?`${t}/`:""}${n}${e}${o?`.${o}`:""}`,He=e=>{"AbortError"!==e.name&&console.error(e.message)},We=(e,t="")=>{if("object"==typeof e&&e.errno)throw new TypeError(`Fetch ${t} failed with ${e.errno}: ${e.errmsg}`);return e},qe=({serverURL:e,lang:t,paths:n,signal:o})=>fetch(`${e}/article?path=${encodeURIComponent(n.join(","))}&lang=${t}`,{signal:o}).then((e=>e.json())).then((e=>We(e,"visit count"))).then((e=>Array.isArray(e)?e:[e])),Ve=({serverURL:e,lang:t,path:n})=>fetch(`${e}/article?lang=${t}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:n})}).then((e=>e.json())).then((e=>We(e,"visit count"))),Je=e=>e instanceof HTMLElement?e:"string"==typeof e?document.querySelector(e):null,Ke=e=>e.type.includes("image"),Ye=e=>{const t=Array.from(e).find(Ke);return t?t.getAsFile():null},Ge=/\$.*?\$/,Xe=/^\$(.*?)\$/,Qe=/^(?:\s{0,3})\$\$((?:[^\n]|\n[^\n])+?)\n{0,1}\$\$/,Ze=(e="",t={})=>e.replace(/:(.+?):/g,((e,n)=>t[n]?`<img class="wl-emoji" src="${t[n]}" alt="${n}">`:e)),et=(e,{emojiMap:t,highlighter:n,texRenderer:o})=>{if(O.setOptions({highlight:n||void 0,breaks:!0,smartLists:!0,smartypants:!0}),o){const e=(e=>[{name:"blockMath",level:"block",tokenizer(t){const n=Qe.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(Ge);return-1!==t?t:e.length},tokenizer(t){const n=Xe.exec(t);if(null!==n)return{type:"html",raw:n[0],text:e(!1,n[1])}}}])(o);O.use({extensions:e})}return O.parse(Ze(e,t))},tt=e=>e.dataset.path||e.getAttribute("id"),nt=()=>Ce("USER_KEY",{}),ot=({serverURL:e,path:t=window.location.pathname,selector:n=".waline-comment-count",lang:o="zh-CN"})=>{var l;const r=new AbortController,a=document.querySelectorAll(n),i=nt();return a.length&&(({serverURL:e,lang:t,paths:n,signal:o,token:l})=>{const r={};return l&&(r.Authorization=`Bearer ${l}`),fetch(`${e}/comment?type=count&url=${encodeURIComponent(n.join(","))}&lang=${t}`,{signal:o,headers:r}).then((e=>e.json())).then((e=>We(e,"comment count"))).then((e=>Array.isArray(e)?e:[e]))})({serverURL:e,paths:Array.from(a).map((e=>Ue(e.dataset.path||e.getAttribute("id")||t))),lang:o,signal:r.signal,token:null===(l=i.value)||void 0===l?void 0:l.token}).then((e=>{a.forEach(((t,n)=>{t.innerText=e[n].toString()}))})).catch(He),r.abort.bind(r)},lt=({size:e})=>c("svg",{width:e,height:e,viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid"},c("circle",{cx:50,cy:50,fill:"none",stroke:"currentColor",strokeWidth:"4",r:"40","stroke-dasharray":"85 30"},c("animateTransform",{attributeName:"transform",type:"rotate",repeatCount:"indefinite",dur:"1s",values:"0 50 50;360 50 50",keyTimes:"0;1"})));var rt=u({name:"CommentBox",components:{CloseIcon:({size:e})=>c("svg",{class:"wl-close-icon",viewBox:"0 0 1024 1024",width:e,height:e},[c("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"}),c("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:()=>c("svg",{viewBox:"0 0 1024 1024",width:"24",height:"24"},c("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:()=>c("svg",{viewBox:"0 0 1024 1024",width:"24",height:"24"},[c("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"}),c("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"})]),MarkdownIcon:()=>c("svg",{width:"16",height:"16",ariaHidden:"true"},c("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:()=>c("svg",{viewBox:"0 0 1024 1024",width:"24",height:"24"},[c("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"}),c("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:lt},props:{rootId:{type:String,default:""},replyId:{type:String,default:""},replyUser:{type:String,default:""}},emits:["submit","cancel-reply"],setup(e,{emit:t}){const o=m("config"),l=Ce("WALINE_COMMENT_BOX_EDITOR",""),a=Ce("WALINE_USER_META",{nick:"",mail:"",link:""}),i=nt(),c=n({}),u=n(null),v=n(null),g=n(null),f=n(null),h=n({tabs:[],map:{}}),w=n(0),y=n(!1),b=n(!1),k=n(""),C=n(0),$=n(0),I=n(!1),L=n(""),j=n(!1),x=s((()=>o.value.locale)),E=s((()=>{var e;return Boolean(null===(e=i.value)||void 0===e?void 0:e.token)})),R=s((()=>!1!==o.value.imageUploader)),S=e=>{const t=u.value,n=t.selectionStart,o=t.selectionEnd||0,r=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=r},A=e=>{const t=`![${o.value.locale.uploading} ${e.name}]()`;return S(t),Promise.resolve().then((()=>o.value.imageUploader(e))).then((n=>{l.value=l.value.replace(t,`\r\n`)}))},U=()=>{var n,r,s,m,d;const{serverURL:p,lang:v,login:g,wordLimit:f,requiredMeta:w}=o.value,y={comment:L.value,nick:a.value.nick,mail:a.value.mail,link:a.value.link,ua:navigator.userAgent,url:o.value.path};if(null===(n=i.value)||void 0===n?void 0:n.token)y.nick=i.value.display_name,y.mail=i.value.email,y.link=i.value.url;else{if("force"===g)return;if(w.indexOf("nick")>-1&&!y.nick)return null===(r=c.value.nick)||void 0===r||r.focus(),alert(x.value.nickError);if(w.indexOf("mail")>-1&&!y.mail||y.mail&&!/^\w(?:[\w._-]*\w)?@(?:\w(?:[\w-]*\w)?\.)*\w+$/.exec(y.mail))return null===(s=c.value.mail)||void 0===s||s.focus(),alert(x.value.mailError);if(!y.comment)return void(null===(m=u.value)||void 0===m||m.focus());y.nick||(y.nick=x.value.anonymous)}if(!I.value)return alert(x.value.wordHint.replace("$0",f[0].toString()).replace("$1",f[1].toString()).replace("$2",C.value.toString()));y.comment=Ze(y.comment,h.value.map),e.replyId&&e.rootId&&(y.pid=e.replyId,y.rid=e.rootId,y.at=e.replyUser),j.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:p,lang:v,token:null===(d=i.value)||void 0===d?void 0:d.token,comment:y}).then((n=>{if(j.value=!1,n.errmsg)return alert(n.errmsg);t("submit",n.data),l.value="",k.value="",e.replyId&&t("cancel-reply")})).catch((e=>{j.value=!1,alert(e.message)}))},z=e=>{g.value.contains(e.target)||f.value.contains(e.target)||(y.value=!1)};return r([o,C],(([e,t])=>{const{wordLimit:n}=e;n?t<n[0]&&0!==n[0]?($.value=n[0],I.value=!1):t>n[1]?($.value=n[1],I.value=!1):($.value=n[1],I.value=!0):($.value=0,I.value=!0)}),{immediate:!0}),d((()=>{document.body.addEventListener("click",z),r((()=>l.value),(e=>{const{highlighter:t,texRenderer:n}=o.value;L.value=e,k.value=et(e,{emojiMap:h.value.map,highlighter:t,texRenderer:n}),C.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?M(u.value):M.destroy(u.value)}),{immediate:!0}),r((()=>o.value.emoji),(e=>{return(t=Array.isArray(e)?e:[],Promise.all(t.map((e=>"string"==typeof e?Fe(ze(e)):Promise.resolve(e)))).then((e=>{const t={tabs:[],map:{}};return e.forEach((e=>{const{name:n,folder:o,icon:l,prefix:r,type:a,items:i}=e;t.tabs.push({name:n,icon:De(l,o,r,a),items:i.map((e=>{const n=`${r||""}${e}`;return t.map[n]=De(e,o,r,a),n}))})})),t}))).then((e=>{h.value=e}));var t}),{immediate:!0})})),p((()=>{document.body.removeEventListener("click",z)})),{config:o,locale:x,insert:S,onChange:()=>{const e=v.value;e.files&&R.value&&A(e.files[0]).then((()=>{e.value=""}))},onDrop:e=>{var t;if(null===(t=e.dataTransfer)||void 0===t?void 0:t.items){const t=Ye(e.dataTransfer.items);t&&R.value&&(A(t),e.preventDefault())}},onKeyDown:e=>{const t=e.key;(e.ctrlKey||e.metaKey)&&"Enter"===t&&U()},onPaste:e=>{if(e.clipboardData){const t=Ye(e.clipboardData.items);t&&R.value&&A(t)}},onLogin:e=>{e.preventDefault();const{lang:t,serverURL:n}=o.value,l=(window.innerWidth-450)/2,r=(window.innerHeight-450)/2,a=window.open(`${n}/ui/login?lng=${encodeURIComponent(t)}`,"_blank",`width=450,height=450,left=${l},top=${r},scrollbars=no,resizable=no,status=no,location=no,toolbar=no,menubar=no`);null==a||a.postMessage({type:"TOKEN",data:null},"*");const s=({data:e})=>{e&&"userInfo"===e.type&&e.data.token&&(null==a||a.close(),i.value=e.data,(e.data.remember?localStorage:sessionStorage).setItem("WALINE_USER",JSON.stringify(e.data)),window.removeEventListener("message",s))};window.addEventListener("message",s)},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,r=(window.innerHeight-800)/2,a=window.open(`${n}/ui/profile?lng=${encodeURIComponent(t)}`,"_blank",`width=800,height=800,left=${l},top=${r},scrollbars=no,resizable=no,status=no,location=no,toolbar=no,menubar=no`);null==a||a.postMessage({type:"TOKEN",data:i.value.token},"*");const s=({data:e})=>{e&&"profile"===e.type&&(i.value={...i.value,...e},[localStorage,sessionStorage].filter((e=>e.getItem("WALINE_USER"))).forEach((e=>e.setItem("WALINE_USER",JSON.stringify(i)))),window.removeEventListener("message",s))};window.addEventListener("message",s)},submitComment:U,isLogin:E,userInfo:i,isSubmitting:j,wordNumber:C,wordLimit:$,isWordNumberLegal:I,editor:l,userMeta:a,emoji:h,emojiTabIndex:w,showEmoji:y,canUploadImage:R,previewText:k,showPreview:b,inputRefs:c,editorRef:u,emojiButtonRef:g,emojiPopupRef:f,imageUploadRef:v}}});const at={class:"wl-comment"},it={key:0,class:"wl-login-info"},st={class:"wl-avatar"},ct=["title"],ut=["src"],mt=["textContent"],dt={class:"wl-panel"},pt=["for","textContent"],vt=["id","name","type","onUpdate:modelValue"],gt=["placeholder"],ft={class:"wl-preview"},ht=h("hr",null,null,-1),wt=["innerHTML"],yt={class:"wl-footer"},bt={class:"wl-actions"},kt={href:"https://guides.github.com/features/mastering-markdown/",title:"Markdown Guide","aria-label":"Markdown is supported",class:"wl-action",target:"_blank",rel:"noreferrer"},Ct=["title"],$t=["title"],It=["title"],Lt={class:"wl-info"},jt={class:"wl-text-number"},xt={key:0},Et=E(" / "),Rt=["textContent"],St=["textContent"],At=["disabled"],Ut={key:0,class:"wl-tab-wrapper"},zt=["title","onClick"],Mt=["src","alt"],Ot={key:0,class:"wl-tabs"},Pt=["onClick"],Nt=["src","alt","title"],Tt=["title"];rt.render=function(e,t,n,o,l,r){const a=v("CloseIcon"),i=v("MarkdownIcon"),s=v("EmojiIcon"),c=v("ImageIcon"),u=v("PreviewIcon"),m=v("LoadingIcon");return g(),f("div",at,["disable"!==e.config.login&&e.isLogin?(g(),f("div",it,[h("div",st,[h("button",{class:"wl-logout-btn",title:e.locale.logout,onClick:t[0]||(t[0]=(...t)=>e.onLogout&&e.onLogout(...t))},[w(a,{size:14})],8,ct),h("img",{src:e.userInfo.avatar,alt:"avatar"},null,8,ut)]),h("a",{href:"#",class:"wl-login-nick","aria-label":"Profile",onClick:t[1]||(t[1]=(...t)=>e.onProfile&&e.onProfile(...t)),textContent:y(e.userInfo.display_name)},null,8,mt)])):b("v-if",!0),h("div",dt,["force"!==e.config.login&&e.config.meta.length&&!e.isLogin?(g(),f("div",{key:0,class:k(["wl-header",`item${e.config.meta.length}`])},[(g(!0),f(C,null,$(e.config.meta,(t=>(g(),f("div",{class:"wl-header-item",key:t},[h("label",{for:t,textContent:y(e.locale[t]+(e.config.requiredMeta.includes(t)||!e.config.requiredMeta.length?"":`(${e.locale.optional})`))},null,8,pt),I(h("input",{ref_for:!0,ref:n=>{n&&(e.inputRefs[t]=n)},id:`wl-${t}`,class:k(["wl-input",`wl-${t}`]),name:t,type:"mail"===t?"email":"text","onUpdate:modelValue":n=>e.userMeta[t]=n},null,10,vt),[[L,e.userMeta[t]]])])))),128))],2)):b("v-if",!0),I(h("textarea",{class:"wl-editor",ref:"editorRef",id:"wl-edit",placeholder:e.replyUser?`@${e.replyUser}`:e.locale.placeholder,"onUpdate:modelValue":t[2]||(t[2]=t=>e.editor=t),onKeydown:t[3]||(t[3]=(...t)=>e.onKeyDown&&e.onKeyDown(...t)),onDrop:t[4]||(t[4]=(...t)=>e.onDrop&&e.onDrop(...t)),onPaste:t[5]||(t[5]=(...t)=>e.onPaste&&e.onPaste(...t))},null,40,gt),[[j,e.editor]]),I(h("div",ft,[ht,h("h4",null,y(e.locale.preview)+":",1),h("div",{class:"wl-content",innerHTML:e.previewText},null,8,wt)],512),[[x,e.showPreview]]),h("div",yt,[h("div",bt,[h("a",kt,[w(i)]),I(h("button",{ref:"emojiButtonRef",class:k(["wl-action",{actived:e.showEmoji}]),title:e.locale.emoji,onClick:t[6]||(t[6]=t=>e.showEmoji=!e.showEmoji)},[w(s)],10,Ct),[[x,e.emoji.tabs.length]]),h("input",{ref:"imageUploadRef",class:"upload",id:"wl-image-upload",type:"file",accept:".png,.jpg,.jpeg,.webp,.bmp,.gif",onChange:t[7]||(t[7]=(...t)=>e.onChange&&e.onChange(...t))},null,544),e.canUploadImage?(g(),f("label",{key:0,for:"wl-image-upload",class:"wl-action",title:e.locale.uploadImage},[w(c)],8,$t)):b("v-if",!0),h("button",{class:k(["wl-action",{actived:e.showPreview}]),title:e.locale.preview,onClick:t[8]||(t[8]=t=>e.showPreview=!e.showPreview)},[w(u)],10,It)]),h("div",Lt,[h("div",jt,[E(y(e.wordNumber)+" ",1),e.config.wordLimit?(g(),f("span",xt,[Et,h("span",{class:k({illegal:!e.isWordNumberLegal}),textContent:y(e.wordLimit)},null,10,Rt)])):b("v-if",!0),E(" "+y(e.locale.word),1)]),"disable"===e.config.login||e.isLogin?b("v-if",!0):(g(),f("button",{key:0,class:"wl-btn",onClick:t[9]||(t[9]=(...t)=>e.onLogin&&e.onLogin(...t)),textContent:y(e.locale.login)},null,8,St)),"force"!==e.config.login||e.isLogin?(g(),f("button",{key:1,class:"wl-btn primary",title:"Cmd|Ctrl + Enter",disabled:e.isSubmitting,onClick:t[10]||(t[10]=(...t)=>e.submitComment&&e.submitComment(...t))},[e.isSubmitting?(g(),R(m,{key:0,size:16})):(g(),f(C,{key:1},[E(y(e.locale.submit),1)],2112))],8,At)):b("v-if",!0)]),h("div",{ref:"emojiPopupRef",class:k(["wl-emoji-popup",{display:e.showEmoji}])},[(g(!0),f(C,null,$(e.emoji.tabs,((t,n)=>(g(),f(C,{key:t.name},[n===e.emojiTabIndex?(g(),f("div",Ut,[(g(!0),f(C,null,$(t.items,(t=>(g(),f("button",{key:t,title:t,onClick:n=>e.insert(`:${t}:`)},[e.showEmoji?(g(),f("img",{key:0,class:"wl-emoji",src:e.emoji.map[t],alt:t,loading:"lazy",referrerPolicy:"no-referrer"},null,8,Mt)):b("v-if",!0)],8,zt)))),128))])):b("v-if",!0)],64)))),128)),e.emoji.tabs.length>1?(g(),f("div",Ot,[(g(!0),f(C,null,$(e.emoji.tabs,((t,n)=>(g(),f("button",{key:t.name,class:k(["wl-tab",{active:e.emojiTabIndex===n}]),onClick:t=>e.emojiTabIndex=n},[h("img",{class:"wl-emoji",src:t.icon,alt:t.name,title:t.name,loading:"lazy",referrerPolicy:"no-referrer"},null,8,Nt)],10,Pt)))),128))])):b("v-if",!0)],2)])]),e.replyId?(g(),f("button",{key:1,class:"wl-close",title:e.locale.cancelReply,onClick:t[11]||(t[11]=t=>e.$emit("cancel-reply"))},[w(a,{size:24})],8,Tt)):b("v-if",!0)])},rt.__file="src/components/CommentBox.vue";var _t=u({props:{comment:{type:Object,required:!0},rootId:{type:String,required:!0},reply:{type:Object}},components:{CommentBox:rt,ReplyIcon:()=>c("svg",{viewBox:"0 0 1024 1024",width:"18",height:"18"},c("path",{d:"M1019.2 720C1001.6 625.6 968 566.4 904 497.6c-89.6-89.6-214.4-150.4-347.2-176v-120c0-25.6-8-51.2-25.6-64-33.6-30.4-81.6-30.4-112-4.8L33.6 441.6C12.8 459.2 0 484.8 0 510.4c0 25.6 12.8 51.2 30.4 68.8l385.6 312c17.6 12.8 33.6 17.6 51.2 17.6 12.8 0 25.6-4.8 38.4-8C536 888 552 857.6 552 824v-99.2c124.8 20.8 248 86.4 339.2 140.8 25.6 17.6 59.2 17.6 89.6 0 25.6-17.6 43.2-46.4 43.2-76.8 0-33.6 0-56-4.8-68.8zm-500.8-89.6-46.4-4.8v193.6L86.4 510.4 472 201.6V400l38.4 4.8c128 12.8 248 68.8 334.4 153.6 51.2 56 76.8 102.4 94.4 179.2 0 4.8 4.8 20.8 4.8 51.2C835.2 720 672 640 518.4 630.4z",fill:"currentColor"})),VerifiedIcon:()=>c("svg",{class:"verified-icon",viewBox:"0 0 1024 1024",width:"14",height:"14"},c("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"}))},emits:["submit","reply"],setup(e){const t=m("config"),n=s((()=>t.value.locale)),o=s((()=>{let{link:t}=e.comment;return t?Me(t)?t:`https://${t}`:""})),l=((e,t)=>{const n=Se();return s((()=>Be(e,n.value,t)))})(e.comment.insertedAt,n.value),r=s((()=>{var t;return e.comment.objectId===(null===(t=e.reply)||void 0===t?void 0:t.objectId)}));return{config:t,locale:n,isReplyingCurrent:r,link:o,time:l}}});const Bt=["id"],Ft={class:"wl-user","aria-hidden":"true"},Dt=["src"],Ht={class:"wl-card"},Wt={class:"wl-head"},qt=["href"],Vt={key:1,class:"wl-nick"},Jt=["textContent"],Kt=["textContent"],Yt=["textContent"],Gt=["textContent"],Xt=["textContent"],Qt=["title"],Zt={class:"wl-meta","aria-hidden":"true"},en=["textContent"],tn=["textContent"],nn=["textContent"],on=["innerHTML"],ln={key:0,class:"wl-reply-wrapper"},rn={key:1,class:"wl-quote"};_t.render=function(e,t,n,o,l,r){const a=v("VerifiedIcon"),i=v("ReplyIcon"),s=v("CommentBox"),c=v("CommentCard",!0);return g(),f("div",{class:"wl-item",id:e.comment.objectId},[h("div",Ft,[e.comment.avatar?(g(),f("img",{key:0,src:e.comment.avatar},null,8,Dt)):b("v-if",!0),e.comment.type?(g(),R(a,{key:1})):b("v-if",!0)]),h("div",Ht,[h("div",Wt,[e.link?(g(),f("a",{key:0,class:"wl-nick",href:e.link,target:"_blank",rel:"nofollow noreferrer"},y(e.comment.nick),9,qt)):(g(),f("span",Vt,y(e.comment.nick),1)),"administrator"===e.comment.type?(g(),f("span",{key:2,class:"wl-badge",textContent:y(e.locale.admin)},null,8,Jt)):b("v-if",!0),e.comment.label?(g(),f("span",{key:3,class:"wl-badge",textContent:y(e.comment.label)},null,8,Kt)):b("v-if",!0),e.comment.sticky?(g(),f("span",{key:4,class:"wl-badge",textContent:y(e.locale.sticky)},null,8,Yt)):b("v-if",!0),e.comment.level>=0?(g(),f("span",{key:5,class:k(`wl-badge level${e.comment.level}`),textContent:y(e.locale[`level${e.comment.level}`]||`Level ${e.comment.level}`)},null,10,Gt)):b("v-if",!0),h("span",{class:"wl-time",textContent:y(e.time)},null,8,Xt),h("button",{class:k(["wl-reply",{active:e.isReplyingCurrent}]),title:e.isReplyingCurrent?e.locale.cancelReply:e.locale.reply,onClick:t[0]||(t[0]=t=>e.$emit("reply",e.isReplyingCurrent?null:e.comment))},[w(i)],10,Qt)]),h("div",Zt,[e.comment.addr?(g(),f("span",{key:0,textContent:y(e.comment.addr)},null,8,en)):b("v-if",!0),e.comment.browser?(g(),f("span",{key:1,textContent:y(e.comment.browser)},null,8,tn)):b("v-if",!0),e.comment.os?(g(),f("span",{key:2,textContent:y(e.comment.os)},null,8,nn)):b("v-if",!0)]),h("div",{class:"wl-content",innerHTML:e.comment.comment},null,8,on),e.isReplyingCurrent?(g(),f("div",ln,[w(s,{replyId:e.comment.objectId,replyUser:e.comment.nick,rootId:e.rootId,onSubmit:t[1]||(t[1]=t=>e.$emit("submit",t)),onCancelReply:t[2]||(t[2]=t=>e.$emit("reply",null))},null,8,["replyId","replyUser","rootId"])])):b("v-if",!0),e.comment.children?(g(),f("div",rn,[(g(!0),f(C,null,$(e.comment.children,(n=>(g(),R(c,{key:n.objectId,comment:n,reply:e.reply,rootId:e.rootId,onReply:t[3]||(t[3]=t=>e.$emit("reply",t)),onSubmit:t[4]||(t[4]=t=>e.$emit("submit",t))},null,8,["comment","reply","rootId"])))),128))])):b("v-if",!0)])],8,Bt)},_t.__file="src/components/CommentCard.vue";var an=u({name:"WalineRoot",components:{CommentBox:rt,CommentCard:_t,LoadingIcon:lt},props:["serverURL","path","meta","requiredMeta","dark","lang","locale","pageSize","wordLimit","emoji","login","highlighter","texRenderer","imageUploader","copyright"],setup(e){const t=s((()=>(({serverURL:e,path:t=location.pathname,lang:n="zh-CN",locale:o,emoji:l=["//unpkg.com/@waline/emojis@1.0.1/weibo"],meta:r=["nick","mail","link"],requiredMeta:a=[],dark:i=!1,pageSize:s=10,wordLimit:c,imageUploader:u,highlighter:m,texRenderer:d,copyright:p=!0,login:v="enable",...g})=>({serverURL:Oe(e),path:Ue(t),locale:{...Q[n]||Q["zh-CN"],..."object"==typeof o?o:{}},wordLimit:Pe(c),meta:N(r),requiredMeta:N(a),imageUploader:Ne(u,T),highlighter:Ne(m,H),texRenderer:Ne(d,_),lang:n,dark:i,emoji:l,pageSize:s,login:v,copyright:p,...g}))(e))),o=nt(),l=n("loading"),i=n(0),c=n(1),u=n(0),m=n([]),p=n(null),v=s((()=>{return"string"==typeof(e=t.value.dark)?"auto"===e?`@media(prefers-color-scheme:dark){body${Te}}`:`${e}${Te}`:!0===e?`:root${Te}`:"";var e}));let g;!function(e,t={}){const o=n(!1),{document:l=fe,immediate:i=!0,manual:s=!1,id:c="vueuse_styletag_"+ ++Ae}=t,u=n(e);let m=()=>{};const d=()=>{if(!l)return;const e=l.getElementById(c)||l.createElement("style");e.type="text/css",e.id=c,t.media&&(e.media=t.media),l.head.appendChild(e),o.value||(m=r(u,(t=>{e.innerText=t}),{immediate:!0}),o.value=!0)},p=()=>{l&&o.value&&(m(),l.head.removeChild(l.getElementById(c)),o.value=!1)};i&&!s&&d(),s||Z(p),a(o)}(v);const f=e=>{var n;const{serverURL:r,path:a,pageSize:s}=t.value,d=new AbortController;l.value="loading",null==g||g(),(({serverURL:e,lang:t,path:n,page:o,pageSize:l,signal:r,token:a})=>{const i={};return a&&(i.Authorization=`Bearer ${a}`),fetch(`${e}/comment?path=${encodeURIComponent(n)}&pageSize=${l}&page=${o}&lang=${t}`,{signal:r,headers:i}).then((e=>e.json())).then((e=>We(e,"comment list")))})({serverURL:r,lang:t.value.lang,path:a,pageSize:s,page:e,signal:d.signal,token:null===(n=o.value)||void 0===n?void 0:n.token}).then((t=>{l.value="success",i.value=t.count,m.value.push(...t.data),c.value=e,u.value=t.totalPages})).catch((e=>{"AbortError"!==e.name&&(console.error(e.message),l.value="error")})),g=d.abort.bind(d)},h=()=>{i.value=0,m.value=[],f(1)};return S("config",t),r((()=>e.path),h),d((()=>h())),{config:t,darkmodeStyle:v,i18n:s((()=>t.value.locale)),status:l,count:i,page:c,totalPages:u,data:m,reply:p,loadMore:()=>f(c.value+1),refresh:h,onReply:e=>{p.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)},version:"2.3.2"}}});const sn={"data-waline":""},cn={class:"wl-count"},un=["textContent"],mn={class:"wl-cards"},dn={key:1,class:"wl-operation"},pn=["textContent"],vn={key:0,class:"wl-loading"},gn=["textContent"],fn={class:"wl-operation"},hn=["textContent"],wn={key:3,class:"wl-power"},yn=E(" Powered by "),bn=h("a",{href:"https://github.com/walinejs/waline",target:"_blank",rel:"noreferrer"}," Waline ",-1);an.render=function(e,t,n,o,l,r){const a=v("CommentBox"),i=v("CommentCard"),s=v("LoadingIcon");return g(),f("div",sn,[e.reply?b("v-if",!0):(g(),R(a,{key:0,onSubmit:e.onSubmit},null,8,["onSubmit"])),h("div",cn,[e.count?(g(),f("span",{key:0,class:"wl-num",textContent:y(e.count)},null,8,un)):b("v-if",!0),E(" "+y(e.i18n.comment),1)]),h("div",mn,[(g(!0),f(C,null,$(e.data,(t=>(g(),R(i,{key:t.objectId,"root-id":t.objectId,comment:t,reply:e.reply,onReply:e.onReply,onSubmit:e.onSubmit},null,8,["root-id","comment","reply","onReply","onSubmit"])))),128))]),"error"===e.status?(g(),f("div",dn,[h("button",{type:"button",class:"wl-btn",onClick:t[0]||(t[0]=(...t)=>e.refresh&&e.refresh(...t)),textContent:y(e.i18n.refresh)},null,8,pn)])):(g(),f(C,{key:2},["loading"===e.status?(g(),f("div",vn,[w(s,{size:30})])):e.data.length?e.page<e.totalPages?(g(),f(C,{key:2},[b(" Load more button "),h("div",fn,[h("button",{type:"button",class:"wl-btn",onClick:t[1]||(t[1]=(...t)=>e.loadMore&&e.loadMore(...t)),textContent:y(e.i18n.more)},null,8,hn)])],2112)):b("v-if",!0):(g(),f("div",{key:1,class:"wl-empty",textContent:y(e.i18n.sofa)},null,8,gn))],2112)),b(" Copyright Information "),e.config.copyright?(g(),f("div",wn,[yn,bn,E(" v"+y(e.version),1)])):b("v-if",!0)])},an.__file="src/components/Waline.vue";const kn=(e,t)=>{t.forEach(((t,n)=>{t.innerText=e[n].toString()}))},Cn=({serverURL:e,path:t=window.location.pathname,selector:n=".waline-pageview-count",update:o=!0,lang:l="zh-CN"})=>{const r=new AbortController,a=Array.from(document.querySelectorAll(n)),i=e=>{const n=tt(e);return null!==n&&t!==n},s=n=>qe({serverURL:e,paths:n.map((e=>tt(e)||t)),lang:l,signal:r.signal}).then((e=>kn(e,n))).catch(He);if(o){const n=a.filter((e=>!i(e))),o=a.filter(i);Ve({serverURL:e,path:t,lang:l}).then((e=>kn(new Array(n.length).fill(e),n))),o.length&&s(o)}else s(a);return r.abort.bind(r)},$n=({el:e="#waline",path:t=window.location.pathname,comment:n=!1,pageview:o=!1,...l})=>{const r=e?Je(e):null;if(e&&!r)throw new Error("Option 'el' do not match any domElement!");if(!l.serverURL)throw new Error("Option 'serverURL' is missing!");const a=A({...l}),i=A({comment:n,pageview:o,path:t}),s=()=>{i.comment&&ot({serverURL:a.serverURL,path:i.path,selector:"string"==typeof i.comment?i.comment:void 0})},u=()=>{i.pageview&&Cn({serverURL:a.serverURL,path:i.path,selector:"string"==typeof i.pageview?i.pageview:void 0})},m=r?U((()=>c(an,{path:i.path,...a}))):null;m&&m.mount(r),s(),u();const d=z(s),p=z(u);return{el:r,update:({comment:e,pageview:t,path:n=window.location.pathname,...o}={})=>{Object.entries(o).forEach((([e,t])=>{a[e]=t})),i.path=n,void 0!==e&&(i.comment=e),void 0!==t&&(i.pageview=t)},destroy:()=>{null==m||m.unmount(),d(),p()}}},In="2.3.2",Ln=({el:e,serverURL:t,count:n,lang:o="zh-CN"})=>{var l;const r=nt(),a=Je(e),i=new AbortController;return(({serverURL:e,lang:t,count:n,signal:o,token:l})=>{const r={};return l&&(r.Authorization=`Bearer ${l}`),fetch(`${e}/comment?type=recent&count=${n}&lang=${t}`,{signal:o,headers:r}).then((e=>e.json())).then((e=>We(e,"recent comment")))})({serverURL:t,count:n,lang:o,signal:i.signal,token:null===(l=r.value)||void 0===l?void 0:l.token}).then((e=>a&&e.length?(a.innerHTML=`<ul class="wl-recent-list">${e.map((e=>`<li class="wl-recent-item"><a href="${e.url}">${e.nick}</a>:${e.comment}</li>`)).join("")}</ul>`,{comments:e,destroy:()=>{i.abort(),a.innerHTML=""}}):{comments:e,destroy:()=>i.abort()}))};export{Ln as RecentComments,ot as commentCount,Q as defaultLocales,$n as init,Cn as pageviewCount,In as version};
|
|
2
2
|
//# sourceMappingURL=shim.esm.js.map
|