diff --git a/404.html b/404.html index d0aa6022..2a20395f 100644 --- a/404.html +++ b/404.html @@ -30,11 +30,11 @@ LiteyukiBot 轻雪机器人 - - + +
跳至主要內容

404

页面不存在

看起来你访问了一个失效的链接

- + diff --git a/assets/404.html-CxOuX1U4.js b/assets/404.html-DeHMrmZW.js similarity index 93% rename from assets/404.html-CxOuX1U4.js rename to assets/404.html-DeHMrmZW.js index bceba63f..60dfd8a7 100644 --- a/assets/404.html-CxOuX1U4.js +++ b/assets/404.html-DeHMrmZW.js @@ -1 +1 @@ -import{_ as t,o as e,c as o,b as n}from"./app-vtLTGmS8.js";const r={},a=n("p",null,"404 Not Found",-1),c=[a];function p(s,i){return e(),o("div",null,c)}const m=t(r,[["render",p],["__file","404.html.vue"]]),d=JSON.parse('{"path":"/404.html","title":"","lang":"zh-CN","frontmatter":{"layout":"NotFound","description":"404 Not Found","head":[["meta",{"property":"og:url","content":"https://vuepress-theme-hope-docs-demo.netlify.app/404.html"}],["meta",{"property":"og:site_name","content":"LiteyukiBot 轻雪机器人"}],["meta",{"property":"og:description","content":"404 Not Found"}],["meta",{"property":"og:type","content":"website"}],["meta",{"property":"og:locale","content":"zh-CN"}],["meta",{"property":"article:author","content":"远野千束"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"WebPage\\",\\"name\\":\\"\\",\\"description\\":\\"404 Not Found\\"}"]]},"headers":[],"git":{},"readingTime":{"minutes":0.01,"words":3},"filePathRelative":null,"autoDesc":true}');export{m as comp,d as data}; +import{_ as t,o as e,c as o,b as n}from"./app-BkuxgVc5.js";const r={},a=n("p",null,"404 Not Found",-1),c=[a];function p(s,i){return e(),o("div",null,c)}const m=t(r,[["render",p],["__file","404.html.vue"]]),d=JSON.parse('{"path":"/404.html","title":"","lang":"zh-CN","frontmatter":{"layout":"NotFound","description":"404 Not Found","head":[["meta",{"property":"og:url","content":"https://vuepress-theme-hope-docs-demo.netlify.app/404.html"}],["meta",{"property":"og:site_name","content":"LiteyukiBot 轻雪机器人"}],["meta",{"property":"og:description","content":"404 Not Found"}],["meta",{"property":"og:type","content":"website"}],["meta",{"property":"og:locale","content":"zh-CN"}],["meta",{"property":"article:author","content":"远野千束"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"WebPage\\",\\"name\\":\\"\\",\\"description\\":\\"404 Not Found\\"}"]]},"headers":[],"git":{},"readingTime":{"minutes":0.01,"words":3},"filePathRelative":null,"autoDesc":true}');export{m as comp,d as data}; diff --git a/assets/agreement.html-BepzV_vI.js b/assets/agreement.html-D0xA4AzZ.js similarity index 98% rename from assets/agreement.html-BepzV_vI.js rename to assets/agreement.html-D0xA4AzZ.js index 7053993a..bff4cf9e 100644 --- a/assets/agreement.html-BepzV_vI.js +++ b/assets/agreement.html-D0xA4AzZ.js @@ -1 +1 @@ -import{_ as e,o as t,c as o,e as a}from"./app-vtLTGmS8.js";const r={},i=a("
  1. 本项目遵循MIT协议,你可以自由使用,修改,分发,但是请保留原作者信息
  2. 你可以选择开启auto_report(默认开启),轻雪会收集以下内容
  3. 本项目不会收集用户的任何隐私信息,但请注意甄别第三方插件的安全性
  4. 使用此项目代表你已经同意以上协议
",1),n=[i];function c(l,m){return t(),o("div",null,n)}const s=e(r,[["render",c],["__file","agreement.html.vue"]]),d=JSON.parse('{"path":"/usage/agreement.html","title":"用户协议","lang":"zh-CN","frontmatter":{"title":"用户协议","icon":"user-secret","order":3,"category":"使用手册","description":"本项目遵循MIT协议,你可以自由使用,修改,分发,但是请保留原作者信息 你可以选择开启auto_report(默认开启),轻雪会收集以下内容 运行环境的设备信息:CPU,内存,系统信息及Python信息 插件信息(不含插件数据) 部分异常信息, 会话负载信息(不含隐私部分) 以上内容仅用于项目的优化,不包含任何隐私信息,且通过安全的方式传输到轻雪的服务...","head":[["meta",{"property":"og:url","content":"https://vuepress-theme-hope-docs-demo.netlify.app/usage/agreement.html"}],["meta",{"property":"og:site_name","content":"LiteyukiBot 轻雪机器人"}],["meta",{"property":"og:title","content":"用户协议"}],["meta",{"property":"og:description","content":"本项目遵循MIT协议,你可以自由使用,修改,分发,但是请保留原作者信息 你可以选择开启auto_report(默认开启),轻雪会收集以下内容 运行环境的设备信息:CPU,内存,系统信息及Python信息 插件信息(不含插件数据) 部分异常信息, 会话负载信息(不含隐私部分) 以上内容仅用于项目的优化,不包含任何隐私信息,且通过安全的方式传输到轻雪的服务..."}],["meta",{"property":"og:type","content":"article"}],["meta",{"property":"og:locale","content":"zh-CN"}],["meta",{"property":"og:updated_time","content":"2024-07-20T16:40:55.000Z"}],["meta",{"property":"article:author","content":"远野千束"}],["meta",{"property":"article:modified_time","content":"2024-07-20T16:40:55.000Z"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"Article\\",\\"headline\\":\\"用户协议\\",\\"image\\":[\\"\\"],\\"dateModified\\":\\"2024-07-20T16:40:55.000Z\\",\\"author\\":[{\\"@type\\":\\"Person\\",\\"name\\":\\"远野千束\\",\\"url\\":\\"https://sfkm.me\\"}]}"]]},"headers":[],"git":{"createdTime":1711621856000,"updatedTime":1721493655000,"contributors":[{"name":"snowy","email":"snowykami@outlook.com","commits":3},{"name":"Nanaloveyuki","email":"miaomiao_159@outlook.com","commits":1}]},"readingTime":{"minutes":0.76,"words":227},"filePathRelative":"usage/agreement.md","localizedDate":"2024年3月28日","autoDesc":true}');export{s as comp,d as data}; +import{_ as e,o as t,c as o,e as a}from"./app-BkuxgVc5.js";const r={},i=a("
  1. 本项目遵循MIT协议,你可以自由使用,修改,分发,但是请保留原作者信息
  2. 你可以选择开启auto_report(默认开启),轻雪会收集以下内容
  3. 本项目不会收集用户的任何隐私信息,但请注意甄别第三方插件的安全性
  4. 使用此项目代表你已经同意以上协议
",1),n=[i];function c(l,m){return t(),o("div",null,n)}const s=e(r,[["render",c],["__file","agreement.html.vue"]]),d=JSON.parse('{"path":"/usage/agreement.html","title":"用户协议","lang":"zh-CN","frontmatter":{"title":"用户协议","icon":"user-secret","order":3,"category":"使用手册","description":"本项目遵循MIT协议,你可以自由使用,修改,分发,但是请保留原作者信息 你可以选择开启auto_report(默认开启),轻雪会收集以下内容 运行环境的设备信息:CPU,内存,系统信息及Python信息 插件信息(不含插件数据) 部分异常信息, 会话负载信息(不含隐私部分) 以上内容仅用于项目的优化,不包含任何隐私信息,且通过安全的方式传输到轻雪的服务...","head":[["meta",{"property":"og:url","content":"https://vuepress-theme-hope-docs-demo.netlify.app/usage/agreement.html"}],["meta",{"property":"og:site_name","content":"LiteyukiBot 轻雪机器人"}],["meta",{"property":"og:title","content":"用户协议"}],["meta",{"property":"og:description","content":"本项目遵循MIT协议,你可以自由使用,修改,分发,但是请保留原作者信息 你可以选择开启auto_report(默认开启),轻雪会收集以下内容 运行环境的设备信息:CPU,内存,系统信息及Python信息 插件信息(不含插件数据) 部分异常信息, 会话负载信息(不含隐私部分) 以上内容仅用于项目的优化,不包含任何隐私信息,且通过安全的方式传输到轻雪的服务..."}],["meta",{"property":"og:type","content":"article"}],["meta",{"property":"og:locale","content":"zh-CN"}],["meta",{"property":"og:updated_time","content":"2024-07-20T16:40:55.000Z"}],["meta",{"property":"article:author","content":"远野千束"}],["meta",{"property":"article:modified_time","content":"2024-07-20T16:40:55.000Z"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"Article\\",\\"headline\\":\\"用户协议\\",\\"image\\":[\\"\\"],\\"dateModified\\":\\"2024-07-20T16:40:55.000Z\\",\\"author\\":[{\\"@type\\":\\"Person\\",\\"name\\":\\"远野千束\\",\\"url\\":\\"https://sfkm.me\\"}]}"]]},"headers":[],"git":{"createdTime":1711621856000,"updatedTime":1721493655000,"contributors":[{"name":"snowy","email":"snowykami@outlook.com","commits":3},{"name":"Nanaloveyuki","email":"miaomiao_159@outlook.com","commits":1}]},"readingTime":{"minutes":0.76,"words":227},"filePathRelative":"usage/agreement.md","localizedDate":"2024年3月28日","autoDesc":true}');export{s as comp,d as data}; diff --git a/assets/app-vtLTGmS8.js b/assets/app-BkuxgVc5.js similarity index 99% rename from assets/app-vtLTGmS8.js rename to assets/app-BkuxgVc5.js index ceb81fe8..0a21300f 100644 --- a/assets/app-vtLTGmS8.js +++ b/assets/app-BkuxgVc5.js @@ -20,14 +20,14 @@ function __vite__mapDeps(indexes) { * @vue/runtime-dom v3.4.21 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**/const n1="http://www.w3.org/2000/svg",r1="http://www.w3.org/1998/Math/MathML",Ht=typeof document<"u"?document:null,zl=Ht&&Ht.createElement("template"),o1={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,r)=>{const o=t==="svg"?Ht.createElementNS(n1,e):t==="mathml"?Ht.createElementNS(r1,e):Ht.createElement(e,n?{is:n}:void 0);return e==="select"&&r&&r.multiple!=null&&o.setAttribute("multiple",r.multiple),o},createText:e=>Ht.createTextNode(e),createComment:e=>Ht.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>Ht.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,r,o,s){const l=n?n.previousSibling:t.lastChild;if(o&&(o===s||o.nextSibling))for(;t.insertBefore(o.cloneNode(!0),n),!(o===s||!(o=o.nextSibling)););else{zl.innerHTML=r==="svg"?`${e}`:r==="mathml"?`${e}`:e;const i=zl.content;if(r==="svg"||r==="mathml"){const a=i.firstChild;for(;a.firstChild;)i.appendChild(a.firstChild);i.removeChild(a)}t.insertBefore(i,n)}return[l?l.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},Rt="transition",Yn="animation",jn=Symbol("_vtc"),Yt=(e,{slots:t})=>f(fd,Xa(e),t);Yt.displayName="Transition";const Qa={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String},s1=Yt.props=Pe({},Oa,Qa),Zt=(e,t=[])=>{oe(e)?e.forEach(n=>n(...t)):e&&e(...t)},Ul=e=>e?oe(e)?e.some(t=>t.length>1):e.length>1:!1;function Xa(e){const t={};for(const M in e)M in Qa||(t[M]=e[M]);if(e.css===!1)return t;const{name:n="v",type:r,duration:o,enterFromClass:s=`${n}-enter-from`,enterActiveClass:l=`${n}-enter-active`,enterToClass:i=`${n}-enter-to`,appearFromClass:a=s,appearActiveClass:c=l,appearToClass:u=i,leaveFromClass:d=`${n}-leave-from`,leaveActiveClass:p=`${n}-leave-active`,leaveToClass:h=`${n}-leave-to`}=e,g=l1(o),_=g&&g[0],b=g&&g[1],{onBeforeEnter:w,onEnter:x,onEnterCancelled:y,onLeave:k,onLeaveCancelled:R,onBeforeAppear:S=w,onAppear:I=x,onAppearCancelled:O=y}=t,J=(M,re,Ee)=>{Dt(M,re?u:i),Dt(M,re?c:l),Ee&&Ee()},$=(M,re)=>{M._isLeaving=!1,Dt(M,d),Dt(M,h),Dt(M,p),re&&re()},U=M=>(re,Ee)=>{const be=M?I:x,K=()=>J(re,M,Ee);Zt(be,[re,K]),ql(()=>{Dt(re,M?a:s),kt(re,M?u:i),Ul(be)||Wl(re,r,_,K)})};return Pe(t,{onBeforeEnter(M){Zt(w,[M]),kt(M,s),kt(M,l)},onBeforeAppear(M){Zt(S,[M]),kt(M,a),kt(M,c)},onEnter:U(!1),onAppear:U(!0),onLeave(M,re){M._isLeaving=!0;const Ee=()=>$(M,re);kt(M,d),ec(),kt(M,p),ql(()=>{M._isLeaving&&(Dt(M,d),kt(M,h),Ul(k)||Wl(M,r,b,Ee))}),Zt(k,[M,Ee])},onEnterCancelled(M){J(M,!1),Zt(y,[M])},onAppearCancelled(M){J(M,!0),Zt(O,[M])},onLeaveCancelled(M){$(M),Zt(R,[M])}})}function l1(e){if(e==null)return null;if(_e(e))return[jo(e.enter),jo(e.leave)];{const t=jo(e);return[t,t]}}function jo(e){return uf(e)}function kt(e,t){t.split(/\s+/).forEach(n=>n&&e.classList.add(n)),(e[jn]||(e[jn]=new Set)).add(t)}function Dt(e,t){t.split(/\s+/).forEach(r=>r&&e.classList.remove(r));const n=e[jn];n&&(n.delete(t),n.size||(e[jn]=void 0))}function ql(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}let i1=0;function Wl(e,t,n,r){const o=e._endId=++i1,s=()=>{o===e._endId&&r()};if(n)return setTimeout(s,n);const{type:l,timeout:i,propCount:a}=Za(e,t);if(!l)return r();const c=l+"end";let u=0;const d=()=>{e.removeEventListener(c,p),s()},p=h=>{h.target===e&&++u>=a&&d()};setTimeout(()=>{u(n[g]||"").split(", "),o=r(`${Rt}Delay`),s=r(`${Rt}Duration`),l=Gl(o,s),i=r(`${Yn}Delay`),a=r(`${Yn}Duration`),c=Gl(i,a);let u=null,d=0,p=0;t===Rt?l>0&&(u=Rt,d=l,p=s.length):t===Yn?c>0&&(u=Yn,d=c,p=a.length):(d=Math.max(l,c),u=d>0?l>c?Rt:Yn:null,p=u?u===Rt?s.length:a.length:0);const h=u===Rt&&/\b(transform|all)(,|$)/.test(r(`${Rt}Property`).toString());return{type:u,timeout:d,propCount:p,hasTransform:h}}function Gl(e,t){for(;e.lengthKl(n)+Kl(e[r])))}function Kl(e){return e==="auto"?0:Number(e.slice(0,-1).replace(",","."))*1e3}function ec(){return document.body.offsetHeight}function a1(e,t,n){const r=e[jn];r&&(t=(t?[t,...r]:[...r]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}const Yl=Symbol("_vod"),c1=Symbol("_vsh"),u1=Symbol(""),f1=/(^|;)\s*display\s*:/;function d1(e,t,n){const r=e.style,o=Re(n);let s=!1;if(n&&!o){if(t)if(Re(t))for(const l of t.split(";")){const i=l.slice(0,l.indexOf(":")).trim();n[i]==null&&ro(r,i,"")}else for(const l in t)n[l]==null&&ro(r,l,"");for(const l in n)l==="display"&&(s=!0),ro(r,l,n[l])}else if(o){if(t!==n){const l=r[u1];l&&(n+=";"+l),r.cssText=n,s=f1.test(n)}}else t&&e.removeAttribute("style");Yl in e&&(e[Yl]=s?r.display:"",e[c1]&&(r.display="none"))}const Jl=/\s*!important$/;function ro(e,t,n){if(oe(n))n.forEach(r=>ro(e,t,r));else if(n==null&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{const r=p1(e,t);Jl.test(n)?e.setProperty(Un(r),n.replace(Jl,""),"important"):e[r]=n}}const Ql=["Webkit","Moz","ms"],Fo={};function p1(e,t){const n=Fo[t];if(n)return n;let r=dt(t);if(r!=="filter"&&r in e)return Fo[t]=r;r=Cr(r);for(let o=0;oBo||(b1.then(()=>Bo=0),Bo=Date.now());function w1(e,t){const n=r=>{if(!r._vts)r._vts=Date.now();else if(r._vts<=n.attached)return;ct(E1(r,n.value),t,5,[r])};return n.value=e,n.attached=_1(),n}function E1(e,t){if(oe(t)){const n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map(r=>o=>!o._stopped&&r&&r(o))}else return t}const ti=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,C1=(e,t,n,r,o,s,l,i,a)=>{const c=o==="svg";t==="class"?a1(e,r,c):t==="style"?d1(e,n,r):Er(t)?Os(t)||g1(e,t,n,r,l):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):x1(e,t,r,c))?v1(e,t,r,s,l,i,a):(t==="true-value"?e._trueValue=r:t==="false-value"&&(e._falseValue=r),h1(e,t,r,c))};function x1(e,t,n,r){if(r)return!!(t==="innerHTML"||t==="textContent"||t in e&&ti(t)&&ae(n));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return!1;if(t==="width"||t==="height"){const o=e.tagName;if(o==="IMG"||o==="VIDEO"||o==="CANVAS"||o==="SOURCE")return!1}return ti(t)&&Re(n)?!1:t in e}const tc=new WeakMap,nc=new WeakMap,ho=Symbol("_moveCb"),ni=Symbol("_enterCb"),rc={name:"TransitionGroup",props:Pe({},s1,{tag:String,moveClass:String}),setup(e,{slots:t}){const n=Ir(),r=$a();let o,s;return Ma(()=>{if(!o.length)return;const l=e.moveClass||`${e.name||"v"}-move`;if(!I1(o[0].el,n.vnode.el,l))return;o.forEach(T1),o.forEach(A1);const i=o.filter(L1);ec(),i.forEach(a=>{const c=a.el,u=c.style;kt(c,l),u.transform=u.webkitTransform=u.transitionDuration="";const d=c[ho]=p=>{p&&p.target!==c||(!p||/transform$/.test(p.propertyName))&&(c.removeEventListener("transitionend",d),c[ho]=null,Dt(c,l))};c.addEventListener("transitionend",d)})}),()=>{const l=ue(e),i=Xa(l);let a=l.tag||Ue;o=s,s=t.default?Ks(t.default()):[];for(let c=0;cdelete e.mode;rc.props;const k1=rc;function T1(e){const t=e.el;t[ho]&&t[ho](),t[ni]&&t[ni]()}function A1(e){nc.set(e,e.el.getBoundingClientRect())}function L1(e){const t=tc.get(e),n=nc.get(e),r=t.left-n.left,o=t.top-n.top;if(r||o){const s=e.el.style;return s.transform=s.webkitTransform=`translate(${r}px,${o}px)`,s.transitionDuration="0s",e}}function I1(e,t,n){const r=e.cloneNode(),o=e[jn];o&&o.forEach(i=>{i.split(/\s+/).forEach(a=>a&&r.classList.remove(a))}),n.split(/\s+/).forEach(i=>i&&r.classList.add(i)),r.style.display="none";const s=t.nodeType===1?t:t.parentNode;s.appendChild(r);const{hasTransform:l}=Za(r);return s.removeChild(r),l}const ri=e=>{const t=e.props["onUpdate:modelValue"]||!1;return oe(t)?n=>to(t,n):t};function $1(e){e.target.composing=!0}function oi(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const Ho=Symbol("_assign"),oc={created(e,{modifiers:{lazy:t,trim:n,number:r}},o){e[Ho]=ri(o);const s=r||o.props&&o.props.type==="number";En(e,t?"change":"input",l=>{if(l.target.composing)return;let i=e.value;n&&(i=i.trim()),s&&(i=ss(i)),e[Ho](i)}),n&&En(e,"change",()=>{e.value=e.value.trim()}),t||(En(e,"compositionstart",$1),En(e,"compositionend",oi),En(e,"change",oi))},mounted(e,{value:t}){e.value=t??""},beforeUpdate(e,{value:t,modifiers:{lazy:n,trim:r,number:o}},s){if(e[Ho]=ri(s),e.composing)return;const l=o||e.type==="number"?ss(e.value):e.value,i=t??"";l!==i&&(document.activeElement===e&&e.type!=="range"&&(n||r&&e.value.trim()===i)||(e.value=i))}},O1=Pe({patchProp:C1},o1);let Vo,si=!1;function P1(){return Vo=si?Vo:jd(O1),si=!0,Vo}const R1=(...e)=>{const t=P1().createApp(...e),{mount:n}=t;return t.mount=r=>{const o=N1(r);if(o)return n(o,!0,M1(o))},t};function M1(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function N1(e){return Re(e)?document.querySelector(e):e}var D1=["link","meta","script","style","noscript","template"],j1=["title","base"],F1=([e,t,n])=>j1.includes(e)?e:D1.includes(e)?e==="meta"&&t.name?`${e}.${t.name}`:e==="template"&&t.id?`${e}.${t.id}`:JSON.stringify([e,Object.entries(t).map(([r,o])=>typeof o=="boolean"?o?[r,""]:null:[r,o]).filter(r=>r!=null).sort(([r],[o])=>r.localeCompare(o)),n]):null,B1=e=>{const t=new Set,n=[];return e.forEach(r=>{const o=F1(r);o&&!t.has(o)&&(t.add(o),n.push(r))}),n},H1=e=>e[0]==="/"?e:`/${e}`,sc=e=>e[e.length-1]==="/"||e.endsWith(".html")?e:`${e}/`,pn=e=>/^(https?:)?\/\//.test(e),V1=/.md((\?|#).*)?$/,Fn=(e,t="/")=>!!(pn(e)||e.startsWith("/")&&!e.startsWith(t)&&!V1.test(e)),lc=e=>/^[a-z][a-z0-9+.-]*:/.test(e),qn=e=>Object.prototype.toString.call(e)==="[object Object]",z1=e=>{const[t,...n]=e.split(/(\?|#)/);if(!t||t.endsWith("/"))return e;let r=t.replace(/(^|\/)README.md$/i,"$1index.html");return r.endsWith(".md")?r=r.substring(0,r.length-3)+".html":r.endsWith(".html")||(r=r+".html"),r.endsWith("/index.html")&&(r=r.substring(0,r.length-10)),r+n.join("")},el=e=>e[e.length-1]==="/"?e.slice(0,-1):e,ic=e=>e[0]==="/"?e.slice(1):e,U1=(e,t)=>{const n=Object.keys(e).sort((r,o)=>{const s=o.split("/").length-r.split("/").length;return s!==0?s:o.length-r.length});for(const r of n)if(t.startsWith(r))return r;return"/"},$e=e=>typeof e=="string";const q1="modulepreload",W1=function(e){return"/"+e},li={},Te=function(t,n,r){let o=Promise.resolve();if(n&&n.length>0){const s=document.getElementsByTagName("link"),l=document.querySelector("meta[property=csp-nonce]"),i=(l==null?void 0:l.nonce)||(l==null?void 0:l.getAttribute("nonce"));o=Promise.all(n.map(a=>{if(a=W1(a),a in li)return;li[a]=!0;const c=a.endsWith(".css"),u=c?'[rel="stylesheet"]':"";if(!!r)for(let h=s.length-1;h>=0;h--){const g=s[h];if(g.href===a&&(!c||g.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${a}"]${u}`))return;const p=document.createElement("link");if(p.rel=c?"stylesheet":q1,c||(p.as="script",p.crossOrigin=""),p.href=a,i&&p.setAttribute("nonce",i),document.head.appendChild(p),c)return new Promise((h,g)=>{p.addEventListener("load",h),p.addEventListener("error",()=>g(new Error(`Unable to preload CSS for ${a}`)))})}))}return o.then(()=>t()).catch(s=>{const l=new Event("vite:preloadError",{cancelable:!0});if(l.payload=s,window.dispatchEvent(l),!l.defaultPrevented)throw s})},G1=JSON.parse("{}"),K1=Object.fromEntries([["/",{loader:()=>Te(()=>import("./index.html-BENoBtrH.js"),__vite__mapDeps([])),meta:{t:"首页",i:"home"}}],["/childrensdaybak.html",{loader:()=>Te(()=>import("./childrensdaybak.html-BdrIgHqh.js"),__vite__mapDeps([])),meta:{t:"首页",i:"home"}}],["/foolsday.html",{loader:()=>Te(()=>import("./foolsday.html-DWtAX3QW.js"),__vite__mapDeps([])),meta:{t:"首页",i:"home"}}],["/deployment/",{loader:()=>Te(()=>import("./index.html-kd9Zd-Nj.js"),__vite__mapDeps([])),meta:{t:"项目部署",i:"laptop-code"}}],["/deployment/config.html",{loader:()=>Te(()=>import("./config.html-bhDhsWaj.js"),__vite__mapDeps([])),meta:{t:"配置",i:"cog",O:2}}],["/deployment/fandq.html",{loader:()=>Te(()=>import("./fandq.html--AwShmo4.js"),__vite__mapDeps([])),meta:{t:"答疑",i:"question",O:3}}],["/deployment/install.html",{loader:()=>Te(()=>import("./install.html-H1EQpQ1J.js"),__vite__mapDeps([])),meta:{t:"安装",i:"download",O:1}}],["/dev/",{loader:()=>Te(()=>import("./index.html-Iu5qPPr3.js"),__vite__mapDeps([])),meta:{t:"开发及贡献",i:"laptop-code"}}],["/dev/dev_comm.html",{loader:()=>Te(()=>import("./dev_comm.html-CYcL-ImH.js"),__vite__mapDeps([])),meta:{t:"进程通信",i:"exchange-alt",O:4}}],["/dev/dev_lyfunc.html",{loader:()=>Te(()=>import("./dev_lyfunc.html-Bx5TK3wE.js"),__vite__mapDeps([])),meta:{t:"轻雪函数",i:"code",O:2}}],["/dev/dev_lyplugin.html",{loader:()=>Te(()=>import("./dev_lyplugin.html-M1bHU_KB.js"),__vite__mapDeps([])),meta:{t:"轻雪插件开发",i:"laptop-code",O:3}}],["/dev/dev_resource_pack.html",{loader:()=>Te(()=>import("./dev_resource_pack.html-DpVu_Rgm.js"),__vite__mapDeps([])),meta:{t:"资源包开发",i:"box",O:1}}],["/store/",{loader:()=>Te(()=>import("./index.html-ITWEFU9g.js"),__vite__mapDeps([])),meta:{t:"资源及插件商店",i:"store"}}],["/store/plugin.html",{loader:()=>Te(()=>import("./plugin.html-BmqPAMDq.js"),__vite__mapDeps([])),meta:{t:"插件商店",i:"plug",O:2}}],["/store/resource.html",{loader:()=>Te(()=>import("./resource.html-Gyl-44ZX.js"),__vite__mapDeps([])),meta:{t:"资源商店",i:"box",O:1}}],["/usage/",{loader:()=>Te(()=>import("./index.html-B5S9YaCl.js"),__vite__mapDeps([])),meta:{t:"使用手册",i:"laptop-code"}}],["/usage/agreement.html",{loader:()=>Te(()=>import("./agreement.html-BepzV_vI.js"),__vite__mapDeps([])),meta:{t:"用户协议",i:"user-secret",O:3}}],["/usage/basic_command.html",{loader:()=>Te(()=>import("./basic_command.html-DABzYROY.js"),__vite__mapDeps([])),meta:{t:"基础命令",i:"comment",O:1}}],["/usage/extra_command.html",{loader:()=>Te(()=>import("./extra_command.html-B8dau8xy.js"),__vite__mapDeps([])),meta:{t:"功能命令",i:"comment",O:2}}],["/usage/lyapi.html",{loader:()=>Te(()=>import("./lyapi.html-OlB8Zxim.js"),__vite__mapDeps([])),meta:{t:"轻雪API",i:"code",O:5}}],["/404.html",{loader:()=>Te(()=>import("./404.html-CxOuX1U4.js"),__vite__mapDeps([])),meta:{t:""}}]]);/*! +**/const n1="http://www.w3.org/2000/svg",r1="http://www.w3.org/1998/Math/MathML",Ht=typeof document<"u"?document:null,zl=Ht&&Ht.createElement("template"),o1={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,r)=>{const o=t==="svg"?Ht.createElementNS(n1,e):t==="mathml"?Ht.createElementNS(r1,e):Ht.createElement(e,n?{is:n}:void 0);return e==="select"&&r&&r.multiple!=null&&o.setAttribute("multiple",r.multiple),o},createText:e=>Ht.createTextNode(e),createComment:e=>Ht.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>Ht.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,r,o,s){const l=n?n.previousSibling:t.lastChild;if(o&&(o===s||o.nextSibling))for(;t.insertBefore(o.cloneNode(!0),n),!(o===s||!(o=o.nextSibling)););else{zl.innerHTML=r==="svg"?`${e}`:r==="mathml"?`${e}`:e;const i=zl.content;if(r==="svg"||r==="mathml"){const a=i.firstChild;for(;a.firstChild;)i.appendChild(a.firstChild);i.removeChild(a)}t.insertBefore(i,n)}return[l?l.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},Rt="transition",Yn="animation",jn=Symbol("_vtc"),Yt=(e,{slots:t})=>f(fd,Xa(e),t);Yt.displayName="Transition";const Qa={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String},s1=Yt.props=Pe({},Oa,Qa),Zt=(e,t=[])=>{oe(e)?e.forEach(n=>n(...t)):e&&e(...t)},Ul=e=>e?oe(e)?e.some(t=>t.length>1):e.length>1:!1;function Xa(e){const t={};for(const M in e)M in Qa||(t[M]=e[M]);if(e.css===!1)return t;const{name:n="v",type:r,duration:o,enterFromClass:s=`${n}-enter-from`,enterActiveClass:l=`${n}-enter-active`,enterToClass:i=`${n}-enter-to`,appearFromClass:a=s,appearActiveClass:c=l,appearToClass:u=i,leaveFromClass:d=`${n}-leave-from`,leaveActiveClass:p=`${n}-leave-active`,leaveToClass:h=`${n}-leave-to`}=e,g=l1(o),_=g&&g[0],b=g&&g[1],{onBeforeEnter:w,onEnter:x,onEnterCancelled:y,onLeave:k,onLeaveCancelled:R,onBeforeAppear:S=w,onAppear:I=x,onAppearCancelled:O=y}=t,J=(M,re,Ee)=>{Dt(M,re?u:i),Dt(M,re?c:l),Ee&&Ee()},$=(M,re)=>{M._isLeaving=!1,Dt(M,d),Dt(M,h),Dt(M,p),re&&re()},U=M=>(re,Ee)=>{const be=M?I:x,K=()=>J(re,M,Ee);Zt(be,[re,K]),ql(()=>{Dt(re,M?a:s),kt(re,M?u:i),Ul(be)||Wl(re,r,_,K)})};return Pe(t,{onBeforeEnter(M){Zt(w,[M]),kt(M,s),kt(M,l)},onBeforeAppear(M){Zt(S,[M]),kt(M,a),kt(M,c)},onEnter:U(!1),onAppear:U(!0),onLeave(M,re){M._isLeaving=!0;const Ee=()=>$(M,re);kt(M,d),ec(),kt(M,p),ql(()=>{M._isLeaving&&(Dt(M,d),kt(M,h),Ul(k)||Wl(M,r,b,Ee))}),Zt(k,[M,Ee])},onEnterCancelled(M){J(M,!1),Zt(y,[M])},onAppearCancelled(M){J(M,!0),Zt(O,[M])},onLeaveCancelled(M){$(M),Zt(R,[M])}})}function l1(e){if(e==null)return null;if(_e(e))return[jo(e.enter),jo(e.leave)];{const t=jo(e);return[t,t]}}function jo(e){return uf(e)}function kt(e,t){t.split(/\s+/).forEach(n=>n&&e.classList.add(n)),(e[jn]||(e[jn]=new Set)).add(t)}function Dt(e,t){t.split(/\s+/).forEach(r=>r&&e.classList.remove(r));const n=e[jn];n&&(n.delete(t),n.size||(e[jn]=void 0))}function ql(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}let i1=0;function Wl(e,t,n,r){const o=e._endId=++i1,s=()=>{o===e._endId&&r()};if(n)return setTimeout(s,n);const{type:l,timeout:i,propCount:a}=Za(e,t);if(!l)return r();const c=l+"end";let u=0;const d=()=>{e.removeEventListener(c,p),s()},p=h=>{h.target===e&&++u>=a&&d()};setTimeout(()=>{u(n[g]||"").split(", "),o=r(`${Rt}Delay`),s=r(`${Rt}Duration`),l=Gl(o,s),i=r(`${Yn}Delay`),a=r(`${Yn}Duration`),c=Gl(i,a);let u=null,d=0,p=0;t===Rt?l>0&&(u=Rt,d=l,p=s.length):t===Yn?c>0&&(u=Yn,d=c,p=a.length):(d=Math.max(l,c),u=d>0?l>c?Rt:Yn:null,p=u?u===Rt?s.length:a.length:0);const h=u===Rt&&/\b(transform|all)(,|$)/.test(r(`${Rt}Property`).toString());return{type:u,timeout:d,propCount:p,hasTransform:h}}function Gl(e,t){for(;e.lengthKl(n)+Kl(e[r])))}function Kl(e){return e==="auto"?0:Number(e.slice(0,-1).replace(",","."))*1e3}function ec(){return document.body.offsetHeight}function a1(e,t,n){const r=e[jn];r&&(t=(t?[t,...r]:[...r]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}const Yl=Symbol("_vod"),c1=Symbol("_vsh"),u1=Symbol(""),f1=/(^|;)\s*display\s*:/;function d1(e,t,n){const r=e.style,o=Re(n);let s=!1;if(n&&!o){if(t)if(Re(t))for(const l of t.split(";")){const i=l.slice(0,l.indexOf(":")).trim();n[i]==null&&ro(r,i,"")}else for(const l in t)n[l]==null&&ro(r,l,"");for(const l in n)l==="display"&&(s=!0),ro(r,l,n[l])}else if(o){if(t!==n){const l=r[u1];l&&(n+=";"+l),r.cssText=n,s=f1.test(n)}}else t&&e.removeAttribute("style");Yl in e&&(e[Yl]=s?r.display:"",e[c1]&&(r.display="none"))}const Jl=/\s*!important$/;function ro(e,t,n){if(oe(n))n.forEach(r=>ro(e,t,r));else if(n==null&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{const r=p1(e,t);Jl.test(n)?e.setProperty(Un(r),n.replace(Jl,""),"important"):e[r]=n}}const Ql=["Webkit","Moz","ms"],Fo={};function p1(e,t){const n=Fo[t];if(n)return n;let r=dt(t);if(r!=="filter"&&r in e)return Fo[t]=r;r=Cr(r);for(let o=0;oBo||(b1.then(()=>Bo=0),Bo=Date.now());function w1(e,t){const n=r=>{if(!r._vts)r._vts=Date.now();else if(r._vts<=n.attached)return;ct(E1(r,n.value),t,5,[r])};return n.value=e,n.attached=_1(),n}function E1(e,t){if(oe(t)){const n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map(r=>o=>!o._stopped&&r&&r(o))}else return t}const ti=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,C1=(e,t,n,r,o,s,l,i,a)=>{const c=o==="svg";t==="class"?a1(e,r,c):t==="style"?d1(e,n,r):Er(t)?Os(t)||g1(e,t,n,r,l):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):x1(e,t,r,c))?v1(e,t,r,s,l,i,a):(t==="true-value"?e._trueValue=r:t==="false-value"&&(e._falseValue=r),h1(e,t,r,c))};function x1(e,t,n,r){if(r)return!!(t==="innerHTML"||t==="textContent"||t in e&&ti(t)&&ae(n));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return!1;if(t==="width"||t==="height"){const o=e.tagName;if(o==="IMG"||o==="VIDEO"||o==="CANVAS"||o==="SOURCE")return!1}return ti(t)&&Re(n)?!1:t in e}const tc=new WeakMap,nc=new WeakMap,ho=Symbol("_moveCb"),ni=Symbol("_enterCb"),rc={name:"TransitionGroup",props:Pe({},s1,{tag:String,moveClass:String}),setup(e,{slots:t}){const n=Ir(),r=$a();let o,s;return Ma(()=>{if(!o.length)return;const l=e.moveClass||`${e.name||"v"}-move`;if(!I1(o[0].el,n.vnode.el,l))return;o.forEach(T1),o.forEach(A1);const i=o.filter(L1);ec(),i.forEach(a=>{const c=a.el,u=c.style;kt(c,l),u.transform=u.webkitTransform=u.transitionDuration="";const d=c[ho]=p=>{p&&p.target!==c||(!p||/transform$/.test(p.propertyName))&&(c.removeEventListener("transitionend",d),c[ho]=null,Dt(c,l))};c.addEventListener("transitionend",d)})}),()=>{const l=ue(e),i=Xa(l);let a=l.tag||Ue;o=s,s=t.default?Ks(t.default()):[];for(let c=0;cdelete e.mode;rc.props;const k1=rc;function T1(e){const t=e.el;t[ho]&&t[ho](),t[ni]&&t[ni]()}function A1(e){nc.set(e,e.el.getBoundingClientRect())}function L1(e){const t=tc.get(e),n=nc.get(e),r=t.left-n.left,o=t.top-n.top;if(r||o){const s=e.el.style;return s.transform=s.webkitTransform=`translate(${r}px,${o}px)`,s.transitionDuration="0s",e}}function I1(e,t,n){const r=e.cloneNode(),o=e[jn];o&&o.forEach(i=>{i.split(/\s+/).forEach(a=>a&&r.classList.remove(a))}),n.split(/\s+/).forEach(i=>i&&r.classList.add(i)),r.style.display="none";const s=t.nodeType===1?t:t.parentNode;s.appendChild(r);const{hasTransform:l}=Za(r);return s.removeChild(r),l}const ri=e=>{const t=e.props["onUpdate:modelValue"]||!1;return oe(t)?n=>to(t,n):t};function $1(e){e.target.composing=!0}function oi(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const Ho=Symbol("_assign"),oc={created(e,{modifiers:{lazy:t,trim:n,number:r}},o){e[Ho]=ri(o);const s=r||o.props&&o.props.type==="number";En(e,t?"change":"input",l=>{if(l.target.composing)return;let i=e.value;n&&(i=i.trim()),s&&(i=ss(i)),e[Ho](i)}),n&&En(e,"change",()=>{e.value=e.value.trim()}),t||(En(e,"compositionstart",$1),En(e,"compositionend",oi),En(e,"change",oi))},mounted(e,{value:t}){e.value=t??""},beforeUpdate(e,{value:t,modifiers:{lazy:n,trim:r,number:o}},s){if(e[Ho]=ri(s),e.composing)return;const l=o||e.type==="number"?ss(e.value):e.value,i=t??"";l!==i&&(document.activeElement===e&&e.type!=="range"&&(n||r&&e.value.trim()===i)||(e.value=i))}},O1=Pe({patchProp:C1},o1);let Vo,si=!1;function P1(){return Vo=si?Vo:jd(O1),si=!0,Vo}const R1=(...e)=>{const t=P1().createApp(...e),{mount:n}=t;return t.mount=r=>{const o=N1(r);if(o)return n(o,!0,M1(o))},t};function M1(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function N1(e){return Re(e)?document.querySelector(e):e}var D1=["link","meta","script","style","noscript","template"],j1=["title","base"],F1=([e,t,n])=>j1.includes(e)?e:D1.includes(e)?e==="meta"&&t.name?`${e}.${t.name}`:e==="template"&&t.id?`${e}.${t.id}`:JSON.stringify([e,Object.entries(t).map(([r,o])=>typeof o=="boolean"?o?[r,""]:null:[r,o]).filter(r=>r!=null).sort(([r],[o])=>r.localeCompare(o)),n]):null,B1=e=>{const t=new Set,n=[];return e.forEach(r=>{const o=F1(r);o&&!t.has(o)&&(t.add(o),n.push(r))}),n},H1=e=>e[0]==="/"?e:`/${e}`,sc=e=>e[e.length-1]==="/"||e.endsWith(".html")?e:`${e}/`,pn=e=>/^(https?:)?\/\//.test(e),V1=/.md((\?|#).*)?$/,Fn=(e,t="/")=>!!(pn(e)||e.startsWith("/")&&!e.startsWith(t)&&!V1.test(e)),lc=e=>/^[a-z][a-z0-9+.-]*:/.test(e),qn=e=>Object.prototype.toString.call(e)==="[object Object]",z1=e=>{const[t,...n]=e.split(/(\?|#)/);if(!t||t.endsWith("/"))return e;let r=t.replace(/(^|\/)README.md$/i,"$1index.html");return r.endsWith(".md")?r=r.substring(0,r.length-3)+".html":r.endsWith(".html")||(r=r+".html"),r.endsWith("/index.html")&&(r=r.substring(0,r.length-10)),r+n.join("")},el=e=>e[e.length-1]==="/"?e.slice(0,-1):e,ic=e=>e[0]==="/"?e.slice(1):e,U1=(e,t)=>{const n=Object.keys(e).sort((r,o)=>{const s=o.split("/").length-r.split("/").length;return s!==0?s:o.length-r.length});for(const r of n)if(t.startsWith(r))return r;return"/"},$e=e=>typeof e=="string";const q1="modulepreload",W1=function(e){return"/"+e},li={},Te=function(t,n,r){let o=Promise.resolve();if(n&&n.length>0){const s=document.getElementsByTagName("link"),l=document.querySelector("meta[property=csp-nonce]"),i=(l==null?void 0:l.nonce)||(l==null?void 0:l.getAttribute("nonce"));o=Promise.all(n.map(a=>{if(a=W1(a),a in li)return;li[a]=!0;const c=a.endsWith(".css"),u=c?'[rel="stylesheet"]':"";if(!!r)for(let h=s.length-1;h>=0;h--){const g=s[h];if(g.href===a&&(!c||g.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${a}"]${u}`))return;const p=document.createElement("link");if(p.rel=c?"stylesheet":q1,c||(p.as="script",p.crossOrigin=""),p.href=a,i&&p.setAttribute("nonce",i),document.head.appendChild(p),c)return new Promise((h,g)=>{p.addEventListener("load",h),p.addEventListener("error",()=>g(new Error(`Unable to preload CSS for ${a}`)))})}))}return o.then(()=>t()).catch(s=>{const l=new Event("vite:preloadError",{cancelable:!0});if(l.payload=s,window.dispatchEvent(l),!l.defaultPrevented)throw s})},G1=JSON.parse("{}"),K1=Object.fromEntries([["/",{loader:()=>Te(()=>import("./index.html-DxXL-0jh.js"),__vite__mapDeps([])),meta:{t:"首页",i:"home"}}],["/childrensdaybak.html",{loader:()=>Te(()=>import("./childrensdaybak.html-CkSvxI91.js"),__vite__mapDeps([])),meta:{t:"首页",i:"home"}}],["/foolsday.html",{loader:()=>Te(()=>import("./foolsday.html-BKXkBvWO.js"),__vite__mapDeps([])),meta:{t:"首页",i:"home"}}],["/deployment/",{loader:()=>Te(()=>import("./index.html-BzsNjEyV.js"),__vite__mapDeps([])),meta:{t:"项目部署",i:"laptop-code"}}],["/deployment/config.html",{loader:()=>Te(()=>import("./config.html-BRlatCwL.js"),__vite__mapDeps([])),meta:{t:"配置",i:"cog",O:2}}],["/deployment/fandq.html",{loader:()=>Te(()=>import("./fandq.html-BRPDWQC6.js"),__vite__mapDeps([])),meta:{t:"答疑",i:"question",O:3}}],["/deployment/install.html",{loader:()=>Te(()=>import("./install.html-Dq7IpmAc.js"),__vite__mapDeps([])),meta:{t:"安装",i:"download",O:1}}],["/dev/",{loader:()=>Te(()=>import("./index.html-C50-Et9d.js"),__vite__mapDeps([])),meta:{t:"开发及贡献",i:"laptop-code"}}],["/dev/dev_comm.html",{loader:()=>Te(()=>import("./dev_comm.html-DkIJ2c60.js"),__vite__mapDeps([])),meta:{t:"进程通信",i:"exchange-alt",O:4}}],["/dev/dev_lyfunc.html",{loader:()=>Te(()=>import("./dev_lyfunc.html-ZXTuo3sT.js"),__vite__mapDeps([])),meta:{t:"轻雪函数",i:"code",O:2}}],["/dev/dev_lyplugin.html",{loader:()=>Te(()=>import("./dev_lyplugin.html-DZ7aZZfD.js"),__vite__mapDeps([])),meta:{t:"轻雪插件开发",i:"laptop-code",O:3}}],["/dev/dev_resource_pack.html",{loader:()=>Te(()=>import("./dev_resource_pack.html-Cw0aKLyZ.js"),__vite__mapDeps([])),meta:{t:"资源包开发",i:"box",O:1}}],["/store/",{loader:()=>Te(()=>import("./index.html-CzkXKOpk.js"),__vite__mapDeps([])),meta:{t:"资源及插件商店",i:"store"}}],["/store/plugin.html",{loader:()=>Te(()=>import("./plugin.html-B02qMMeL.js"),__vite__mapDeps([])),meta:{t:"插件商店",i:"plug",O:2}}],["/store/resource.html",{loader:()=>Te(()=>import("./resource.html-B0hes2bb.js"),__vite__mapDeps([])),meta:{t:"资源商店",i:"box",O:1}}],["/usage/",{loader:()=>Te(()=>import("./index.html-Br50mtOA.js"),__vite__mapDeps([])),meta:{t:"使用手册",i:"laptop-code"}}],["/usage/agreement.html",{loader:()=>Te(()=>import("./agreement.html-D0xA4AzZ.js"),__vite__mapDeps([])),meta:{t:"用户协议",i:"user-secret",O:3}}],["/usage/basic_command.html",{loader:()=>Te(()=>import("./basic_command.html-Dtru1TkJ.js"),__vite__mapDeps([])),meta:{t:"基础命令",i:"comment",O:1}}],["/usage/extra_command.html",{loader:()=>Te(()=>import("./extra_command.html-CYZjn-Y2.js"),__vite__mapDeps([])),meta:{t:"功能命令",i:"comment",O:2}}],["/usage/lyapi.html",{loader:()=>Te(()=>import("./lyapi.html-DFkblhsP.js"),__vite__mapDeps([])),meta:{t:"轻雪API",i:"code",O:5}}],["/404.html",{loader:()=>Te(()=>import("./404.html-DeHMrmZW.js"),__vite__mapDeps([])),meta:{t:""}}]]);/*! * vue-router v4.4.0 * (c) 2024 Eduardo San Martin Morote * @license MIT */const Cn=typeof document<"u";function Y1(e){return e.__esModule||e[Symbol.toStringTag]==="Module"}const ve=Object.assign;function zo(e,t){const n={};for(const r in t){const o=t[r];n[r]=bt(o)?o.map(e):e(o)}return n}const lr=()=>{},bt=Array.isArray,ac=/#/g,J1=/&/g,Q1=/\//g,X1=/=/g,Z1=/\?/g,cc=/\+/g,ep=/%5B/g,tp=/%5D/g,uc=/%5E/g,np=/%60/g,fc=/%7B/g,rp=/%7C/g,dc=/%7D/g,op=/%20/g;function tl(e){return encodeURI(""+e).replace(rp,"|").replace(ep,"[").replace(tp,"]")}function sp(e){return tl(e).replace(fc,"{").replace(dc,"}").replace(uc,"^")}function ms(e){return tl(e).replace(cc,"%2B").replace(op,"+").replace(ac,"%23").replace(J1,"%26").replace(np,"`").replace(fc,"{").replace(dc,"}").replace(uc,"^")}function lp(e){return ms(e).replace(X1,"%3D")}function ip(e){return tl(e).replace(ac,"%23").replace(Z1,"%3F")}function ap(e){return e==null?"":ip(e).replace(Q1,"%2F")}function vr(e){try{return decodeURIComponent(""+e)}catch{}return""+e}const cp=/\/$/,up=e=>e.replace(cp,"");function Uo(e,t,n="/"){let r,o={},s="",l="";const i=t.indexOf("#");let a=t.indexOf("?");return i=0&&(a=-1),a>-1&&(r=t.slice(0,a),s=t.slice(a+1,i>-1?i:t.length),o=e(s)),i>-1&&(r=r||t.slice(0,i),l=t.slice(i,t.length)),r=hp(r??t,n),{fullPath:r+(s&&"?")+s+l,path:r,query:o,hash:vr(l)}}function fp(e,t){const n=t.query?e(t.query):"";return t.path+(n&&"?")+n+(t.hash||"")}function ii(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||"/"}function dp(e,t,n){const r=t.matched.length-1,o=n.matched.length-1;return r>-1&&r===o&&Bn(t.matched[r],n.matched[o])&&pc(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function Bn(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function pc(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(const n in e)if(!pp(e[n],t[n]))return!1;return!0}function pp(e,t){return bt(e)?ai(e,t):bt(t)?ai(t,e):e===t}function ai(e,t){return bt(t)?e.length===t.length&&e.every((n,r)=>n===t[r]):e.length===1&&e[0]===t}function hp(e,t){if(e.startsWith("/"))return e;if(!e)return t;const n=t.split("/"),r=e.split("/"),o=r[r.length-1];(o===".."||o===".")&&r.push("");let s=n.length-1,l,i;for(l=0;l1&&s--;else break;return n.slice(0,s).join("/")+"/"+r.slice(l).join("/")}const Tt={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0};var mr;(function(e){e.pop="pop",e.push="push"})(mr||(mr={}));var ir;(function(e){e.back="back",e.forward="forward",e.unknown=""})(ir||(ir={}));function vp(e){if(!e)if(Cn){const t=document.querySelector("base");e=t&&t.getAttribute("href")||"/",e=e.replace(/^\w+:\/\/[^\/]+/,"")}else e="/";return e[0]!=="/"&&e[0]!=="#"&&(e="/"+e),up(e)}const mp=/^[^#]+#/;function gp(e,t){return e.replace(mp,"#")+t}function yp(e,t){const n=document.documentElement.getBoundingClientRect(),r=e.getBoundingClientRect();return{behavior:t.behavior,left:r.left-n.left-(t.left||0),top:r.top-n.top-(t.top||0)}}const So=()=>({left:window.scrollX,top:window.scrollY});function bp(e){let t;if("el"in e){const n=e.el,r=typeof n=="string"&&n.startsWith("#"),o=typeof n=="string"?r?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!o)return;t=yp(o,e)}else t=e;"scrollBehavior"in document.documentElement.style?window.scrollTo(t):window.scrollTo(t.left!=null?t.left:window.scrollX,t.top!=null?t.top:window.scrollY)}function ci(e,t){return(history.state?history.state.position-t:-1)+e}const gs=new Map;function _p(e,t){gs.set(e,t)}function wp(e){const t=gs.get(e);return gs.delete(e),t}let Ep=()=>location.protocol+"//"+location.host;function hc(e,t){const{pathname:n,search:r,hash:o}=t,s=e.indexOf("#");if(s>-1){let i=o.includes(e.slice(s))?e.slice(s).length:1,a=o.slice(i);return a[0]!=="/"&&(a="/"+a),ii(a,"")}return ii(n,e)+r+o}function Cp(e,t,n,r){let o=[],s=[],l=null;const i=({state:p})=>{const h=hc(e,location),g=n.value,_=t.value;let b=0;if(p){if(n.value=h,t.value=p,l&&l===g){l=null;return}b=_?p.position-_.position:0}else r(h);o.forEach(w=>{w(n.value,g,{delta:b,type:mr.pop,direction:b?b>0?ir.forward:ir.back:ir.unknown})})};function a(){l=n.value}function c(p){o.push(p);const h=()=>{const g=o.indexOf(p);g>-1&&o.splice(g,1)};return s.push(h),h}function u(){const{history:p}=window;p.state&&p.replaceState(ve({},p.state,{scroll:So()}),"")}function d(){for(const p of s)p();s=[],window.removeEventListener("popstate",i),window.removeEventListener("beforeunload",u)}return window.addEventListener("popstate",i),window.addEventListener("beforeunload",u,{passive:!0}),{pauseListeners:a,listen:c,destroy:d}}function ui(e,t,n,r=!1,o=!1){return{back:e,current:t,forward:n,replaced:r,position:window.history.length,scroll:o?So():null}}function xp(e){const{history:t,location:n}=window,r={value:hc(e,n)},o={value:t.state};o.value||s(r.value,{back:null,current:r.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function s(a,c,u){const d=e.indexOf("#"),p=d>-1?(n.host&&document.querySelector("base")?e:e.slice(d))+a:Ep()+e+a;try{t[u?"replaceState":"pushState"](c,"",p),o.value=c}catch(h){console.error(h),n[u?"replace":"assign"](p)}}function l(a,c){const u=ve({},t.state,ui(o.value.back,a,o.value.forward,!0),c,{position:o.value.position});s(a,u,!0),r.value=a}function i(a,c){const u=ve({},o.value,t.state,{forward:a,scroll:So()});s(u.current,u,!0);const d=ve({},ui(r.value,a,null),{position:u.position+1},c);s(a,d,!1),r.value=a}return{location:r,state:o,push:i,replace:l}}function Sp(e){e=vp(e);const t=xp(e),n=Cp(e,t.state,t.location,t.replace);function r(s,l=!0){l||n.pauseListeners(),history.go(s)}const o=ve({location:"",base:e,go:r,createHref:gp.bind(null,e)},t,n);return Object.defineProperty(o,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(o,"state",{enumerable:!0,get:()=>t.state.value}),o}function kp(e){return typeof e=="string"||e&&typeof e=="object"}function vc(e){return typeof e=="string"||typeof e=="symbol"}const mc=Symbol("");var fi;(function(e){e[e.aborted=4]="aborted",e[e.cancelled=8]="cancelled",e[e.duplicated=16]="duplicated"})(fi||(fi={}));function Hn(e,t){return ve(new Error,{type:e,[mc]:!0},t)}function St(e,t){return e instanceof Error&&mc in e&&(t==null||!!(e.type&t))}const di="[^/]+?",Tp={sensitive:!1,strict:!1,start:!0,end:!0},Ap=/[.+*?^${}()[\]/\\]/g;function Lp(e,t){const n=ve({},Tp,t),r=[];let o=n.start?"^":"";const s=[];for(const c of e){const u=c.length?[]:[90];n.strict&&!c.length&&(o+="/");for(let d=0;dt.length?t.length===1&&t[0]===80?1:-1:0}function gc(e,t){let n=0;const r=e.score,o=t.score;for(;n0&&t[t.length-1]<0}const $p={type:0,value:""},Op=/[a-zA-Z0-9_]/;function Pp(e){if(!e)return[[]];if(e==="/")return[[$p]];if(!e.startsWith("/"))throw new Error(`Invalid path "${e}"`);function t(h){throw new Error(`ERR (${n})/"${c}": ${h}`)}let n=0,r=n;const o=[];let s;function l(){s&&o.push(s),s=[]}let i=0,a,c="",u="";function d(){c&&(n===0?s.push({type:0,value:c}):n===1||n===2||n===3?(s.length>1&&(a==="*"||a==="+")&&t(`A repeatable param (${c}) must be alone in its segment. eg: '/:ids+.`),s.push({type:1,value:c,regexp:u,repeatable:a==="*"||a==="+",optional:a==="*"||a==="?"})):t("Invalid state to consume buffer"),c="")}function p(){c+=a}for(;i{l(y)}:lr}function l(d){if(vc(d)){const p=r.get(d);p&&(r.delete(d),n.splice(n.indexOf(p),1),p.children.forEach(l),p.alias.forEach(l))}else{const p=n.indexOf(d);p>-1&&(n.splice(p,1),d.record.name&&r.delete(d.record.name),d.children.forEach(l),d.alias.forEach(l))}}function i(){return n}function a(d){const p=Fp(d,n);n.splice(p,0,d),d.record.name&&!vi(d)&&r.set(d.record.name,d)}function c(d,p){let h,g={},_,b;if("name"in d&&d.name){if(h=r.get(d.name),!h)throw Hn(1,{location:d});b=h.record.name,g=ve(hi(p.params,h.keys.filter(y=>!y.optional).concat(h.parent?h.parent.keys.filter(y=>y.optional):[]).map(y=>y.name)),d.params&&hi(d.params,h.keys.map(y=>y.name))),_=h.stringify(g)}else if(d.path!=null)_=d.path,h=n.find(y=>y.re.test(_)),h&&(g=h.parse(_),b=h.record.name);else{if(h=p.name?r.get(p.name):n.find(y=>y.re.test(p.path)),!h)throw Hn(1,{location:d,currentLocation:p});b=h.record.name,g=ve({},p.params,d.params),_=h.stringify(g)}const w=[];let x=h;for(;x;)w.unshift(x.record),x=x.parent;return{name:b,path:_,params:g,matched:w,meta:jp(w)}}e.forEach(d=>s(d));function u(){n.length=0,r.clear()}return{addRoute:s,resolve:c,removeRoute:l,clearRoutes:u,getRoutes:i,getRecordMatcher:o}}function hi(e,t){const n={};for(const r of t)r in e&&(n[r]=e[r]);return n}function Np(e){return{path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:void 0,beforeEnter:e.beforeEnter,props:Dp(e),children:e.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:"components"in e?e.components||null:e.component&&{default:e.component}}}function Dp(e){const t={},n=e.props||!1;if("component"in e)t.default=n;else for(const r in e.components)t[r]=typeof n=="object"?n[r]:n;return t}function vi(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function jp(e){return e.reduce((t,n)=>ve(t,n.meta),{})}function mi(e,t){const n={};for(const r in e)n[r]=r in t?t[r]:e[r];return n}function Fp(e,t){let n=0,r=t.length;for(;n!==r;){const s=n+r>>1;gc(e,t[s])<0?r=s:n=s+1}const o=Bp(e);return o&&(r=t.lastIndexOf(o,r-1)),r}function Bp(e){let t=e;for(;t=t.parent;)if(yc(t)&&gc(e,t)===0)return t}function yc({record:e}){return!!(e.name||e.components&&Object.keys(e.components).length||e.redirect)}function Hp(e){const t={};if(e===""||e==="?")return t;const r=(e[0]==="?"?e.slice(1):e).split("&");for(let o=0;os&&ms(s)):[r&&ms(r)]).forEach(s=>{s!==void 0&&(t+=(t.length?"&":"")+n,s!=null&&(t+="="+s))})}return t}function Vp(e){const t={};for(const n in e){const r=e[n];r!==void 0&&(t[n]=bt(r)?r.map(o=>o==null?null:""+o):r==null?r:""+r)}return t}const zp=Symbol(""),yi=Symbol(""),ko=Symbol(""),nl=Symbol(""),ys=Symbol("");function Jn(){let e=[];function t(r){return e.push(r),()=>{const o=e.indexOf(r);o>-1&&e.splice(o,1)}}function n(){e=[]}return{add:t,list:()=>e.slice(),reset:n}}function Vt(e,t,n,r,o,s=l=>l()){const l=r&&(r.enterCallbacks[o]=r.enterCallbacks[o]||[]);return()=>new Promise((i,a)=>{const c=p=>{p===!1?a(Hn(4,{from:n,to:t})):p instanceof Error?a(p):kp(p)?a(Hn(2,{from:t,to:p})):(l&&r.enterCallbacks[o]===l&&typeof p=="function"&&l.push(p),i())},u=s(()=>e.call(r&&r.instances[o],t,n,c));let d=Promise.resolve(u);e.length<3&&(d=d.then(c)),d.catch(p=>a(p))})}function qo(e,t,n,r,o=s=>s()){const s=[];for(const l of e)for(const i in l.components){let a=l.components[i];if(!(t!=="beforeRouteEnter"&&!l.instances[i]))if(Up(a)){const u=(a.__vccOpts||a)[t];u&&s.push(Vt(u,n,r,l,i,o))}else{let c=a();s.push(()=>c.then(u=>{if(!u)return Promise.reject(new Error(`Couldn't resolve component "${i}" at "${l.path}"`));const d=Y1(u)?u.default:u;l.components[i]=d;const h=(d.__vccOpts||d)[t];return h&&Vt(h,n,r,l,i,o)()}))}}return s}function Up(e){return typeof e=="object"||"displayName"in e||"props"in e||"__vccOpts"in e}function bi(e){const t=De(ko),n=De(nl),r=T(()=>{const a=rt(e.to);return t.resolve(a)}),o=T(()=>{const{matched:a}=r.value,{length:c}=a,u=a[c-1],d=n.matched;if(!u||!d.length)return-1;const p=d.findIndex(Bn.bind(null,u));if(p>-1)return p;const h=_i(a[c-2]);return c>1&&_i(u)===h&&d[d.length-1].path!==h?d.findIndex(Bn.bind(null,a[c-2])):p}),s=T(()=>o.value>-1&&Kp(n.params,r.value.params)),l=T(()=>o.value>-1&&o.value===n.matched.length-1&&pc(n.params,r.value.params));function i(a={}){return Gp(a)?t[rt(e.replace)?"replace":"push"](rt(e.to)).catch(lr):Promise.resolve()}return{route:r,href:T(()=>r.value.href),isActive:s,isExactActive:l,navigate:i}}const qp=V({name:"RouterLink",compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:"page"}},useLink:bi,setup(e,{slots:t}){const n=xr(bi(e)),{options:r}=De(ko),o=T(()=>({[wi(e.activeClass,r.linkActiveClass,"router-link-active")]:n.isActive,[wi(e.exactActiveClass,r.linkExactActiveClass,"router-link-exact-active")]:n.isExactActive}));return()=>{const s=t.default&&t.default(n);return e.custom?s:f("a",{"aria-current":n.isExactActive?e.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:o.value},s)}}}),Wp=qp;function Gp(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&!(e.button!==void 0&&e.button!==0)){if(e.currentTarget&&e.currentTarget.getAttribute){const t=e.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function Kp(e,t){for(const n in t){const r=t[n],o=e[n];if(typeof r=="string"){if(r!==o)return!1}else if(!bt(o)||o.length!==r.length||r.some((s,l)=>s!==o[l]))return!1}return!0}function _i(e){return e?e.aliasOf?e.aliasOf.path:e.path:""}const wi=(e,t,n)=>e??t??n,Yp=V({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(e,{attrs:t,slots:n}){const r=De(ys),o=T(()=>e.route||r.value),s=De(yi,0),l=T(()=>{let c=rt(s);const{matched:u}=o.value;let d;for(;(d=u[c])&&!d.components;)c++;return c}),i=T(()=>o.value.matched[l.value]);On(yi,T(()=>l.value+1)),On(zp,i),On(ys,o);const a=Y();return he(()=>[a.value,i.value,e.name],([c,u,d],[p,h,g])=>{u&&(u.instances[d]=c,h&&h!==u&&c&&c===p&&(u.leaveGuards.size||(u.leaveGuards=h.leaveGuards),u.updateGuards.size||(u.updateGuards=h.updateGuards))),c&&u&&(!h||!Bn(u,h)||!p)&&(u.enterCallbacks[d]||[]).forEach(_=>_(c))},{flush:"post"}),()=>{const c=o.value,u=e.name,d=i.value,p=d&&d.components[u];if(!p)return Ei(n.default,{Component:p,route:c});const h=d.props[u],g=h?h===!0?c.params:typeof h=="function"?h(c):h:null,b=f(p,ve({},g,t,{onVnodeUnmounted:w=>{w.component.isUnmounted&&(d.instances[u]=null)},ref:a}));return Ei(n.default,{Component:b,route:c})||b}}});function Ei(e,t){if(!e)return null;const n=e(t);return n.length===1?n[0]:n}const Jp=Yp;function Qp(e){const t=Mp(e.routes,e),n=e.parseQuery||Hp,r=e.stringifyQuery||gi,o=e.history,s=Jn(),l=Jn(),i=Jn(),a=je(Tt);let c=Tt;Cn&&e.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const u=zo.bind(null,E=>""+E),d=zo.bind(null,ap),p=zo.bind(null,vr);function h(E,j){let F,X;return vc(E)?(F=t.getRecordMatcher(E),X=j):X=E,t.addRoute(X,F)}function g(E){const j=t.getRecordMatcher(E);j&&t.removeRoute(j)}function _(){return t.getRoutes().map(E=>E.record)}function b(E){return!!t.getRecordMatcher(E)}function w(E,j){if(j=ve({},j||a.value),typeof E=="string"){const m=Uo(n,E,j.path),C=t.resolve({path:m.path},j),L=o.createHref(m.fullPath);return ve(m,C,{params:p(C.params),hash:vr(m.hash),redirectedFrom:void 0,href:L})}let F;if(E.path!=null)F=ve({},E,{path:Uo(n,E.path,j.path).path});else{const m=ve({},E.params);for(const C in m)m[C]==null&&delete m[C];F=ve({},E,{params:d(m)}),j.params=d(j.params)}const X=t.resolve(F,j),fe=E.hash||"";X.params=u(p(X.params));const ge=fp(r,ve({},E,{hash:sp(fe),path:X.path})),v=o.createHref(ge);return ve({fullPath:ge,hash:fe,query:r===gi?Vp(E.query):E.query||{}},X,{redirectedFrom:void 0,href:v})}function x(E){return typeof E=="string"?Uo(n,E,a.value.path):ve({},E)}function y(E,j){if(c!==E)return Hn(8,{from:j,to:E})}function k(E){return I(E)}function R(E){return k(ve(x(E),{replace:!0}))}function S(E){const j=E.matched[E.matched.length-1];if(j&&j.redirect){const{redirect:F}=j;let X=typeof F=="function"?F(E):F;return typeof X=="string"&&(X=X.includes("?")||X.includes("#")?X=x(X):{path:X},X.params={}),ve({query:E.query,hash:E.hash,params:X.path!=null?{}:E.params},X)}}function I(E,j){const F=c=w(E),X=a.value,fe=E.state,ge=E.force,v=E.replace===!0,m=S(F);if(m)return I(ve(x(m),{state:typeof m=="object"?ve({},fe,m.state):fe,force:ge,replace:v}),j||F);const C=F;C.redirectedFrom=j;let L;return!ge&&dp(r,X,F)&&(L=Hn(16,{to:C,from:X}),Ye(X,X,!0,!1)),(L?Promise.resolve(L):$(C,X)).catch(A=>St(A)?St(A,2)?A:ot(A):W(A,C,X)).then(A=>{if(A){if(St(A,2))return I(ve({replace:v},x(A.to),{state:typeof A.to=="object"?ve({},fe,A.to.state):fe,force:ge}),j||C)}else A=M(C,X,!0,v,fe);return U(C,X,A),A})}function O(E,j){const F=y(E,j);return F?Promise.reject(F):Promise.resolve()}function J(E){const j=G.values().next().value;return j&&typeof j.runWithContext=="function"?j.runWithContext(E):E()}function $(E,j){let F;const[X,fe,ge]=Xp(E,j);F=qo(X.reverse(),"beforeRouteLeave",E,j);for(const m of X)m.leaveGuards.forEach(C=>{F.push(Vt(C,E,j))});const v=O.bind(null,E,j);return F.push(v),Q(F).then(()=>{F=[];for(const m of s.list())F.push(Vt(m,E,j));return F.push(v),Q(F)}).then(()=>{F=qo(fe,"beforeRouteUpdate",E,j);for(const m of fe)m.updateGuards.forEach(C=>{F.push(Vt(C,E,j))});return F.push(v),Q(F)}).then(()=>{F=[];for(const m of ge)if(m.beforeEnter)if(bt(m.beforeEnter))for(const C of m.beforeEnter)F.push(Vt(C,E,j));else F.push(Vt(m.beforeEnter,E,j));return F.push(v),Q(F)}).then(()=>(E.matched.forEach(m=>m.enterCallbacks={}),F=qo(ge,"beforeRouteEnter",E,j,J),F.push(v),Q(F))).then(()=>{F=[];for(const m of l.list())F.push(Vt(m,E,j));return F.push(v),Q(F)}).catch(m=>St(m,8)?m:Promise.reject(m))}function U(E,j,F){i.list().forEach(X=>J(()=>X(E,j,F)))}function M(E,j,F,X,fe){const ge=y(E,j);if(ge)return ge;const v=j===Tt,m=Cn?history.state:{};F&&(X||v?o.replace(E.fullPath,ve({scroll:v&&m&&m.scroll},fe)):o.push(E.fullPath,fe)),a.value=E,Ye(E,j,F,v),ot()}let re;function Ee(){re||(re=o.listen((E,j,F)=>{if(!te.listening)return;const X=w(E),fe=S(X);if(fe){I(ve(fe,{replace:!0}),X).catch(lr);return}c=X;const ge=a.value;Cn&&_p(ci(ge.fullPath,F.delta),So()),$(X,ge).catch(v=>St(v,12)?v:St(v,2)?(I(v.to,X).then(m=>{St(m,20)&&!F.delta&&F.type===mr.pop&&o.go(-1,!1)}).catch(lr),Promise.reject()):(F.delta&&o.go(-F.delta,!1),W(v,X,ge))).then(v=>{v=v||M(X,ge,!1),v&&(F.delta&&!St(v,8)?o.go(-F.delta,!1):F.type===mr.pop&&St(v,20)&&o.go(-1,!1)),U(X,ge,v)}).catch(lr)}))}let be=Jn(),K=Jn(),se;function W(E,j,F){ot(E);const X=K.list();return X.length?X.forEach(fe=>fe(E,j,F)):console.error(E),Promise.reject(E)}function Se(){return se&&a.value!==Tt?Promise.resolve():new Promise((E,j)=>{be.add([E,j])})}function ot(E){return se||(se=!E,Ee(),be.list().forEach(([j,F])=>E?F(E):j()),be.reset()),E}function Ye(E,j,F,X){const{scrollBehavior:fe}=e;if(!Cn||!fe)return Promise.resolve();const ge=!F&&wp(ci(E.fullPath,0))||(X||!F)&&history.state&&history.state.scroll||null;return Jt().then(()=>fe(E,j,ge)).then(v=>v&&bp(v)).catch(v=>W(v,E,j))}const Z=E=>o.go(E);let z;const G=new Set,te={currentRoute:a,listening:!0,addRoute:h,removeRoute:g,clearRoutes:t.clearRoutes,hasRoute:b,getRoutes:_,resolve:w,options:e,push:k,replace:R,go:Z,back:()=>Z(-1),forward:()=>Z(1),beforeEach:s.add,beforeResolve:l.add,afterEach:i.add,onError:K.add,isReady:Se,install(E){const j=this;E.component("RouterLink",Wp),E.component("RouterView",Jp),E.config.globalProperties.$router=j,Object.defineProperty(E.config.globalProperties,"$route",{enumerable:!0,get:()=>rt(a)}),Cn&&!z&&a.value===Tt&&(z=!0,k(o.location).catch(fe=>{}));const F={};for(const fe in Tt)Object.defineProperty(F,fe,{get:()=>a.value[fe],enumerable:!0});E.provide(ko,j),E.provide(nl,va(F)),E.provide(ys,a);const X=E.unmount;G.add(E),E.unmount=function(){G.delete(E),G.size<1&&(c=Tt,re&&re(),re=null,a.value=Tt,z=!1,se=!1),X()}}};function Q(E){return E.reduce((j,F)=>j.then(()=>J(F)),Promise.resolve())}return te}function Xp(e,t){const n=[],r=[],o=[],s=Math.max(t.matched.length,e.matched.length);for(let l=0;lBn(c,i))?r.push(i):n.push(i));const a=e.matched[l];a&&(t.matched.find(c=>Bn(c,a))||o.push(a))}return[n,r,o]}function hn(){return De(ko)}function vn(e){return De(nl)}var rl=Symbol(""),xt=()=>{const e=De(rl);if(!e)throw new Error("useClientData() is called without provider.");return e},Zp=()=>xt().pageComponent,Ae=()=>xt().pageData,Le=()=>xt().pageFrontmatter,e0=()=>xt().pageHead,ol=()=>xt().pageLang,t0=()=>xt().pageLayout,mn=()=>xt().routeLocale,n0=()=>xt().routes,bc=()=>xt().siteData,sl=()=>xt().siteLocaleData,r0=Symbol(""),bs=je(G1),gr=je(K1),_c=e=>{const t=z1(e);if(gr.value[t])return t;const n=encodeURI(t);return gr.value[n]?n:bs.value[t]||bs.value[n]||t},To=e=>{const t=_c(e),n=gr.value[t]??{...gr.value["/404.html"],notFound:!0};return{path:t,notFound:!1,...n}},Ao=V({name:"ClientOnly",setup(e,t){const n=Y(!1);return we(()=>{n.value=!0}),()=>{var r,o;return n.value?(o=(r=t.slots).default)==null?void 0:o.call(r):null}}}),wc=V({name:"Content",props:{path:{type:String,required:!1,default:""}},setup(e){const t=Zp(),n=T(()=>{if(!e.path)return t.value;const r=To(e.path);return dd(()=>r.loader().then(({comp:o})=>o))});return()=>f(n.value)}}),et=(e={})=>e,Ge=e=>pn(e)?e:`/${ic(e)}`,o0=e=>{if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&!(e.button!==void 0&&e.button!==0)){if(e.currentTarget){const t=e.currentTarget.getAttribute("target");if(t!=null&&t.match(/\b_blank\b/i))return}return e.preventDefault(),!0}},Qe=({active:e=!1,activeClass:t="route-link-active",to:n,...r},{slots:o})=>{var a;const s=hn(),l=_c(n),i=l.startsWith("#")||l.startsWith("?")?l:Ge(l);return f("a",{...r,class:["route-link",{[t]:e}],href:i,onClick:(c={})=>{o0(c)?s.push(n).catch():Promise.resolve()}},(a=o.default)==null?void 0:a.call(o))};Qe.displayName="RouteLink";Qe.props={active:Boolean,activeClass:String,to:String};var s0="Layout",l0="en-US",en=xr({resolveLayouts:e=>e.reduce((t,n)=>({...t,...n.layouts}),{}),resolvePageHead:(e,t,n)=>{const r=$e(t.description)?t.description:n.description,o=[...Array.isArray(t.head)?t.head:[],...n.head,["title",{},e],["meta",{name:"description",content:r}]];return B1(o)},resolvePageHeadTitle:(e,t)=>[e.title,t.title].filter(n=>!!n).join(" | "),resolvePageLang:(e,t)=>e.lang||t.lang||l0,resolvePageLayout:(e,t)=>{const n=$e(e.frontmatter.layout)?e.frontmatter.layout:s0;if(!t[n])throw new Error(`[vuepress] Cannot resolve layout: ${n}`);return t[n]},resolveRouteLocale:(e,t)=>U1(e,t),resolveSiteLocaleData:(e,t)=>{var n;return{...e,...e.locales[t],head:[...((n=e.locales[t])==null?void 0:n.head)??[],...e.head??[]]}}});const i0={},Pr=e=>{const t=mn();return T(()=>e[t.value]??{})};var qe=Uint8Array,Sn=Uint16Array,a0=Int32Array,Ec=new qe([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0,0]),Cc=new qe([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0]),c0=new qe([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),xc=function(e,t){for(var n=new Sn(31),r=0;r<31;++r)n[r]=t+=1<>1|(xe&21845)<<1;Mt=(Mt&52428)>>2|(Mt&13107)<<2,Mt=(Mt&61680)>>4|(Mt&3855)<<4,_s[xe]=((Mt&65280)>>8|(Mt&255)<<8)>>1}var ar=function(e,t,n){for(var r=e.length,o=0,s=new Sn(t);o>a]=c}else for(i=new Sn(r),o=0;o>15-e[o]);return i},Rr=new qe(288);for(var xe=0;xe<144;++xe)Rr[xe]=8;for(var xe=144;xe<256;++xe)Rr[xe]=9;for(var xe=256;xe<280;++xe)Rr[xe]=7;for(var xe=280;xe<288;++xe)Rr[xe]=8;var Tc=new qe(32);for(var xe=0;xe<32;++xe)Tc[xe]=5;var p0=ar(Rr,9,1),h0=ar(Tc,5,1),Wo=function(e){for(var t=e[0],n=1;nt&&(t=e[n]);return t},ht=function(e,t,n){var r=t/8|0;return(e[r]|e[r+1]<<8)>>(t&7)&n},Go=function(e,t){var n=t/8|0;return(e[n]|e[n+1]<<8|e[n+2]<<16)>>(t&7)},v0=function(e){return(e+7)/8|0},ll=function(e,t,n){return(t==null||t<0)&&(t=0),(n==null||n>e.length)&&(n=e.length),new qe(e.subarray(t,n))},m0=["unexpected EOF","invalid block type","invalid length/literal","invalid distance","stream finished","no stream handler",,"no callback","invalid UTF-8 data","extra field too long","date not in range 1980-2099","filename too long","stream finishing","invalid zip data"],it=function(e,t,n){var r=new Error(t||m0[e]);if(r.code=e,Error.captureStackTrace&&Error.captureStackTrace(r,it),!n)throw r;return r},g0=function(e,t,n,r){var o=e.length,s=r?r.length:0;if(!o||t.f&&!t.l)return n||new qe(0);var l=!n,i=l||t.i!=2,a=t.i;l&&(n=new qe(o*3));var c=function(fe){var ge=n.length;if(fe>ge){var v=new qe(Math.max(ge*2,fe));v.set(n),n=v}},u=t.f||0,d=t.p||0,p=t.b||0,h=t.l,g=t.d,_=t.m,b=t.n,w=o*8;do{if(!h){u=ht(e,d,1);var x=ht(e,d+1,3);if(d+=3,x)if(x==1)h=p0,g=h0,_=9,b=5;else if(x==2){var S=ht(e,d,31)+257,I=ht(e,d+10,15)+4,O=S+ht(e,d+5,31)+1;d+=14;for(var J=new qe(O),$=new qe(19),U=0;U>4;if(y<16)J[U++]=y;else{var K=0,se=0;for(y==16?(se=3+ht(e,d,3),d+=2,K=J[U-1]):y==17?(se=3+ht(e,d,7),d+=3):y==18&&(se=11+ht(e,d,127),d+=7);se--;)J[U++]=K}}var W=J.subarray(0,S),Se=J.subarray(S);_=Wo(W),b=Wo(Se),h=ar(W,_,1),g=ar(Se,b,1)}else it(1);else{var y=v0(d)+4,k=e[y-4]|e[y-3]<<8,R=y+k;if(R>o){a&&it(0);break}i&&c(p+k),n.set(e.subarray(y,R),p),t.b=p+=k,t.p=d=R*8,t.f=u;continue}if(d>w){a&&it(0);break}}i&&c(p+131072);for(var ot=(1<<_)-1,Ye=(1<>4;if(d+=K&15,d>w){a&&it(0);break}if(K||it(2),z<256)n[p++]=z;else if(z==256){Z=d,h=null;break}else{var G=z-254;if(z>264){var U=z-257,te=Ec[U];G=ht(e,d,(1<>4;Q||it(3),d+=Q&15;var Se=d0[E];if(E>3){var te=Cc[E];Se+=Go(e,d)&(1<w){a&&it(0);break}i&&c(p+131072);var j=p+G;if(p>4>7||(e[0]<<8|e[1])%31)&&it(6,"invalid zlib data"),(e[1]>>5&1)==+!t&&it(6,"invalid zlib data: "+(e[1]&32?"need":"unexpected")+" dictionary"),(e[1]>>3&4)+2};function _0(e,t){return g0(e.subarray(b0(e,t&&t.dictionary),-4),{i:2},t&&t.out,t&&t.dictionary)}var Ci=typeof TextEncoder<"u"&&new TextEncoder,ws=typeof TextDecoder<"u"&&new TextDecoder,w0=0;try{ws.decode(y0,{stream:!0}),w0=1}catch{}var E0=function(e){for(var t="",n=0;;){var r=e[n++],o=(r>127)+(r>223)+(r>239);if(n+o>e.length)return{s:t,r:ll(e,n-1)};o?o==3?(r=((r&15)<<18|(e[n++]&63)<<12|(e[n++]&63)<<6|e[n++]&63)-65536,t+=String.fromCharCode(55296|r>>10,56320|r&1023)):o&1?t+=String.fromCharCode((r&31)<<6|e[n++]&63):t+=String.fromCharCode((r&15)<<12|(e[n++]&63)<<6|e[n++]&63):t+=String.fromCharCode(r)}};function C0(e,t){if(t){for(var n=new qe(e.length),r=0;r>1)),l=0,i=function(u){s[l++]=u},r=0;rs.length){var a=new qe(l+8+(o-r<<1));a.set(s),s=a}var c=e.charCodeAt(r);c<128||t?i(c):c<2048?(i(192|c>>6),i(128|c&63)):c>55295&&c<57344?(c=65536+(c&1047552)|e.charCodeAt(++r)&1023,i(240|c>>18),i(128|c>>12&63),i(128|c>>6&63),i(128|c&63)):(i(224|c>>12),i(128|c>>6&63),i(128|c&63))}return ll(s,0,l)}function x0(e,t){if(t){for(var n="",r=0;r{const t=atob(e);return x0(_0(C0(t,!0)))},ft=(e,t)=>{var r;const n=(r=(t==null?void 0:t._instance)||Ir())==null?void 0:r.appContext.components;return n?e in n||dt(e)in n||Cr(dt(e))in n:!1},Ac=e=>new Promise(t=>setTimeout(t,e)),Lc=e=>typeof e<"u",Ko=e=>typeof e=="number",Cs=Array.isArray,Vn=(e,t)=>$e(e)&&e.startsWith(t),S0=(e,t)=>$e(e)&&e.endsWith(t),k0=Object.entries,gn=Object.keys,T0=e=>{if(e){if(typeof e=="number")return new Date(e);const t=Date.parse(e.toString());if(!Number.isNaN(t))return new Date(t)}return null},il=e=>Vn(e,"/");function Ic(e,t){let n,r,o;const s=Y(!0),l=()=>{s.value=!0,o()};he(e,l,{flush:"sync"});const i=typeof t=="function"?t:t.get,a=typeof t=="function"?void 0:t.set,c=qs((u,d)=>(r=u,o=d,{get(){return s.value&&(n=i(),s.value=!1),r(),n},set(p){a==null||a(p)}}));return Object.isExtensible(c)&&(c.trigger=l),c}function Wn(e){return ra()?(bf(e),!0):!1}function He(e){return typeof e=="function"?e():rt(e)}const Mr=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const A0=Object.prototype.toString,L0=e=>A0.call(e)==="[object Object]",cn=()=>{},xi=I0();function I0(){var e,t;return Mr&&((e=window==null?void 0:window.navigator)==null?void 0:e.userAgent)&&(/iP(ad|hone|od)/.test(window.navigator.userAgent)||((t=window==null?void 0:window.navigator)==null?void 0:t.maxTouchPoints)>2&&/iPad|Macintosh/.test(window==null?void 0:window.navigator.userAgent))}function al(e,t){function n(...r){return new Promise((o,s)=>{Promise.resolve(e(()=>t.apply(this,r),{fn:t,thisArg:this,args:r})).then(o).catch(s)})}return n}const $c=e=>e();function $0(e,t={}){let n,r,o=cn;const s=i=>{clearTimeout(i),o(),o=cn};return i=>{const a=He(e),c=He(t.maxWait);return n&&s(n),a<=0||c!==void 0&&c<=0?(r&&(s(r),r=null),Promise.resolve(i())):new Promise((u,d)=>{o=t.rejectOnCancel?d:u,c&&!r&&(r=setTimeout(()=>{n&&s(n),r=null,u(i())},c)),n=setTimeout(()=>{r&&s(r),r=null,u(i())},a)})}}function O0(...e){let t=0,n,r=!0,o=cn,s,l,i,a,c;!Me(e[0])&&typeof e[0]=="object"?{delay:l,trailing:i=!0,leading:a=!0,rejectOnCancel:c=!1}=e[0]:[l,i=!0,a=!0,c=!1]=e;const u=()=>{n&&(clearTimeout(n),n=void 0,o(),o=cn)};return p=>{const h=He(l),g=Date.now()-t,_=()=>s=p();return u(),h<=0?(t=Date.now(),_()):(g>h&&(a||!r)?(t=Date.now(),_()):i&&(s=new Promise((b,w)=>{o=c?w:b,n=setTimeout(()=>{t=Date.now(),r=!0,b(_()),u()},Math.max(0,h-g))})),!a&&!n&&(n=setTimeout(()=>r=!0,h)),r=!1,s)}}function P0(e=$c){const t=Y(!0);function n(){t.value=!1}function r(){t.value=!0}const o=(...s)=>{t.value&&e(...s)};return{isActive:Sr(t),pause:n,resume:r,eventFilter:o}}function R0(e){let t;function n(){return t||(t=e()),t}return n.reset=async()=>{const r=t;t=void 0,r&&await r},n}function Oc(e){return e||Ir()}function M0(...e){if(e.length!==1)return yo(...e);const t=e[0];return typeof t=="function"?Sr(qs(()=>({get:t,set:cn}))):Y(t)}function Pc(e,t=200,n={}){return al($0(t,n),e)}function N0(e,t=200,n=!1,r=!0,o=!1){return al(O0(t,n,r,o),e)}function D0(e,t,n={}){const{eventFilter:r=$c,...o}=n;return he(e,al(r,t),o)}function j0(e,t,n={}){const{eventFilter:r,...o}=n,{eventFilter:s,pause:l,resume:i,isActive:a}=P0(r);return{stop:D0(e,t,{...o,eventFilter:s}),pause:l,resume:i,isActive:a}}function Lo(e,t=!0,n){Oc()?we(e,n):t?e():Jt(e)}function F0(e,t){Oc(t)&&dn(e,t)}function B0(e,t,n={}){const{immediate:r=!0}=n,o=Y(!1);let s=null;function l(){s&&(clearTimeout(s),s=null)}function i(){o.value=!1,l()}function a(...c){l(),o.value=!0,s=setTimeout(()=>{o.value=!1,s=null,e(...c)},He(t))}return r&&(o.value=!0,Mr&&a()),Wn(i),{isPending:Sr(o),start:a,stop:i}}function yr(e=!1,t={}){const{truthyValue:n=!0,falsyValue:r=!1}=t,o=Me(e),s=Y(e);function l(i){if(arguments.length)return s.value=i,s.value;{const a=He(n);return s.value=s.value===a?He(r):a,s.value}}return o?l:[s,l]}function At(e){var t;const n=He(e);return(t=n==null?void 0:n.$el)!=null?t:n}const It=Mr?window:void 0,Rc=Mr?window.document:void 0,Mc=Mr?window.navigator:void 0;function Ne(...e){let t,n,r,o;if(typeof e[0]=="string"||Array.isArray(e[0])?([n,r,o]=e,t=It):[t,n,r,o]=e,!t)return cn;Array.isArray(n)||(n=[n]),Array.isArray(r)||(r=[r]);const s=[],l=()=>{s.forEach(u=>u()),s.length=0},i=(u,d,p,h)=>(u.addEventListener(d,p,h),()=>u.removeEventListener(d,p,h)),a=he(()=>[At(t),He(o)],([u,d])=>{if(l(),!u)return;const p=L0(d)?{...d}:d;s.push(...n.flatMap(h=>r.map(g=>i(u,h,g,p))))},{immediate:!0,flush:"post"}),c=()=>{a(),l()};return Wn(c),c}function H0(){const e=Y(!1),t=Ir();return t&&we(()=>{e.value=!0},t),e}function Nr(e){const t=H0();return T(()=>(t.value,!!e()))}function Nc(e,t={}){const{window:n=It}=t,r=Nr(()=>n&&"matchMedia"in n&&typeof n.matchMedia=="function");let o;const s=Y(!1),l=c=>{s.value=c.matches},i=()=>{o&&("removeEventListener"in o?o.removeEventListener("change",l):o.removeListener(l))},a=Aa(()=>{r.value&&(i(),o=n.matchMedia(He(e)),"addEventListener"in o?o.addEventListener("change",l):o.addListener(l),s.value=o.matches)});return Wn(()=>{a(),i(),o=void 0}),s}function Si(e,t={}){const{controls:n=!1,navigator:r=Mc}=t,o=Nr(()=>r&&"permissions"in r);let s;const l=typeof e=="string"?{name:e}:e,i=Y(),a=()=>{s&&(i.value=s.state)},c=R0(async()=>{if(o.value){if(!s)try{s=await r.permissions.query(l),Ne(s,"change",a),a()}catch{i.value="prompt"}return s}});return c(),n?{state:i,isSupported:o,query:c}:i}function V0(e={}){const{navigator:t=Mc,read:n=!1,source:r,copiedDuring:o=1500,legacy:s=!1}=e,l=Nr(()=>t&&"clipboard"in t),i=Si("clipboard-read"),a=Si("clipboard-write"),c=T(()=>l.value||s),u=Y(""),d=Y(!1),p=B0(()=>d.value=!1,o);function h(){l.value&&w(i.value)?t.clipboard.readText().then(x=>{u.value=x}):u.value=b()}c.value&&n&&Ne(["copy","cut"],h);async function g(x=He(r)){c.value&&x!=null&&(l.value&&w(a.value)?await t.clipboard.writeText(x):_(x),u.value=x,d.value=!0,p.start())}function _(x){const y=document.createElement("textarea");y.value=x??"",y.style.position="absolute",y.style.opacity="0",document.body.appendChild(y),y.select(),document.execCommand("copy"),y.remove()}function b(){var x,y,k;return(k=(y=(x=document==null?void 0:document.getSelection)==null?void 0:x.call(document))==null?void 0:y.toString())!=null?k:""}function w(x){return x==="granted"||x==="prompt"}return{isSupported:c,text:u,copied:d,copy:g}}const Kr=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},Yr="__vueuse_ssr_handlers__",z0=U0();function U0(){return Yr in Kr||(Kr[Yr]=Kr[Yr]||{}),Kr[Yr]}function q0(e,t){return z0[e]||t}function W0(e){return e==null?"any":e instanceof Set?"set":e instanceof Map?"map":e instanceof Date?"date":typeof e=="boolean"?"boolean":typeof e=="string"?"string":typeof e=="object"?"object":Number.isNaN(e)?"any":"number"}const G0={boolean:{read:e=>e==="true",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()}},ki="vueuse-storage";function Gn(e,t,n,r={}){var o;const{flush:s="pre",deep:l=!0,listenToStorageChanges:i=!0,writeDefaults:a=!0,mergeDefaults:c=!1,shallow:u,window:d=It,eventFilter:p,onError:h=$=>{console.error($)},initOnMounted:g}=r,_=(u?je:Y)(typeof t=="function"?t():t);if(!n)try{n=q0("getDefaultStorage",()=>{var $;return($=It)==null?void 0:$.localStorage})()}catch($){h($)}if(!n)return _;const b=He(t),w=W0(b),x=(o=r.serializer)!=null?o:G0[w],{pause:y,resume:k}=j0(_,()=>S(_.value),{flush:s,deep:l,eventFilter:p});d&&i&&Lo(()=>{Ne(d,"storage",O),Ne(d,ki,J),g&&O()}),g||O();function R($,U){d&&d.dispatchEvent(new CustomEvent(ki,{detail:{key:e,oldValue:$,newValue:U,storageArea:n}}))}function S($){try{const U=n.getItem(e);if($==null)R(U,null),n.removeItem(e);else{const M=x.write($);U!==M&&(n.setItem(e,M),R(U,M))}}catch(U){h(U)}}function I($){const U=$?$.newValue:n.getItem(e);if(U==null)return a&&b!=null&&n.setItem(e,x.write(b)),b;if(!$&&c){const M=x.read(U);return typeof c=="function"?c(M,b):w==="object"&&!Array.isArray(M)?{...b,...M}:M}else return typeof U!="string"?U:x.read(U)}function O($){if(!($&&$.storageArea!==n)){if($&&$.key==null){_.value=b;return}if(!($&&$.key!==e)){y();try{($==null?void 0:$.newValue)!==x.write(_.value)&&(_.value=I($))}catch(U){h(U)}finally{$?Jt(k):k()}}}}function J($){O($.detail)}return _}function K0(e){return Nc("(prefers-color-scheme: dark)",e)}function Y0(e,t,n={}){const{window:r=It,...o}=n;let s;const l=Nr(()=>r&&"ResizeObserver"in r),i=()=>{s&&(s.disconnect(),s=void 0)},a=T(()=>Array.isArray(e)?e.map(d=>At(d)):[At(e)]),c=he(a,d=>{if(i(),l.value&&r){s=new ResizeObserver(t);for(const p of d)p&&s.observe(p,o)}},{immediate:!0,flush:"post"}),u=()=>{i(),c()};return Wn(u),{isSupported:l,stop:u}}function J0(e,t={width:0,height:0},n={}){const{window:r=It,box:o="content-box"}=n,s=T(()=>{var d,p;return(p=(d=At(e))==null?void 0:d.namespaceURI)==null?void 0:p.includes("svg")}),l=Y(t.width),i=Y(t.height),{stop:a}=Y0(e,([d])=>{const p=o==="border-box"?d.borderBoxSize:o==="content-box"?d.contentBoxSize:d.devicePixelContentBoxSize;if(r&&s.value){const h=At(e);if(h){const g=r.getComputedStyle(h);l.value=Number.parseFloat(g.width),i.value=Number.parseFloat(g.height)}}else if(p){const h=Array.isArray(p)?p:[p];l.value=h.reduce((g,{inlineSize:_})=>g+_,0),i.value=h.reduce((g,{blockSize:_})=>g+_,0)}else l.value=d.contentRect.width,i.value=d.contentRect.height},n);Lo(()=>{const d=At(e);d&&(l.value="offsetWidth"in d?d.offsetWidth:t.width,i.value="offsetHeight"in d?d.offsetHeight:t.height)});const c=he(()=>At(e),d=>{l.value=d?t.width:0,i.value=d?t.height:0});function u(){a(),c()}return{width:l,height:i,stop:u}}const Ti=["fullscreenchange","webkitfullscreenchange","webkitendfullscreen","mozfullscreenchange","MSFullscreenChange"];function cl(e,t={}){const{document:n=Rc,autoExit:r=!1}=t,o=T(()=>{var w;return(w=At(e))!=null?w:n==null?void 0:n.querySelector("html")}),s=Y(!1),l=T(()=>["requestFullscreen","webkitRequestFullscreen","webkitEnterFullscreen","webkitEnterFullScreen","webkitRequestFullScreen","mozRequestFullScreen","msRequestFullscreen"].find(w=>n&&w in n||o.value&&w in o.value)),i=T(()=>["exitFullscreen","webkitExitFullscreen","webkitExitFullScreen","webkitCancelFullScreen","mozCancelFullScreen","msExitFullscreen"].find(w=>n&&w in n||o.value&&w in o.value)),a=T(()=>["fullScreen","webkitIsFullScreen","webkitDisplayingFullscreen","mozFullScreen","msFullscreenElement"].find(w=>n&&w in n||o.value&&w in o.value)),c=["fullscreenElement","webkitFullscreenElement","mozFullScreenElement","msFullscreenElement"].find(w=>n&&w in n),u=Nr(()=>o.value&&n&&l.value!==void 0&&i.value!==void 0&&a.value!==void 0),d=()=>c?(n==null?void 0:n[c])===o.value:!1,p=()=>{if(a.value){if(n&&n[a.value]!=null)return n[a.value];{const w=o.value;if((w==null?void 0:w[a.value])!=null)return!!w[a.value]}}return!1};async function h(){if(!(!u.value||!s.value)){if(i.value)if((n==null?void 0:n[i.value])!=null)await n[i.value]();else{const w=o.value;(w==null?void 0:w[i.value])!=null&&await w[i.value]()}s.value=!1}}async function g(){if(!u.value||s.value)return;p()&&await h();const w=o.value;l.value&&(w==null?void 0:w[l.value])!=null&&(await w[l.value](),s.value=!0)}async function _(){await(s.value?h():g())}const b=()=>{const w=p();(!w||w&&d())&&(s.value=w)};return Ne(n,Ti,b,!1),Ne(()=>At(o),Ti,b,!1),r&&Wn(h),{isSupported:u,isFullscreen:s,enter:g,exit:h,toggle:_}}function Yo(e){return typeof Window<"u"&&e instanceof Window?e.document.documentElement:typeof Document<"u"&&e instanceof Document?e.documentElement:e}function Jo(e,t=cn,n={}){const{immediate:r=!0,manual:o=!1,type:s="text/javascript",async:l=!0,crossOrigin:i,referrerPolicy:a,noModule:c,defer:u,document:d=Rc,attrs:p={}}=n,h=Y(null);let g=null;const _=x=>new Promise((y,k)=>{const R=O=>(h.value=O,y(O),O);if(!d){y(!1);return}let S=!1,I=d.querySelector(`script[src="${He(e)}"]`);I?I.hasAttribute("data-loaded")&&R(I):(I=d.createElement("script"),I.type=s,I.async=l,I.src=He(e),u&&(I.defer=u),i&&(I.crossOrigin=i),c&&(I.noModule=c),a&&(I.referrerPolicy=a),Object.entries(p).forEach(([O,J])=>I==null?void 0:I.setAttribute(O,J)),S=!0),I.addEventListener("error",O=>k(O)),I.addEventListener("abort",O=>k(O)),I.addEventListener("load",()=>{I.setAttribute("data-loaded","true"),t(I),R(I)}),S&&(I=d.head.appendChild(I)),x||R(I)}),b=(x=!0)=>(g||(g=_(x)),g),w=()=>{if(!d)return;g=null,h.value&&(h.value=null);const x=d.querySelector(`script[src="${He(e)}"]`);x&&d.head.removeChild(x)};return r&&!o&&Lo(b),o||F0(w),{scriptTag:h,load:b,unload:w}}function Dc(e){const t=window.getComputedStyle(e);if(t.overflowX==="scroll"||t.overflowY==="scroll"||t.overflowX==="auto"&&e.clientWidth1?!0:(t.preventDefault&&t.preventDefault(),!1)}const Jr=new WeakMap;function jc(e,t=!1){const n=Y(t);let r=null;he(M0(e),l=>{const i=Yo(He(l));if(i){const a=i;Jr.get(a)||Jr.set(a,a.style.overflow),n.value&&(a.style.overflow="hidden")}},{immediate:!0});const o=()=>{const l=Yo(He(e));!l||n.value||(xi&&(r=Ne(l,"touchmove",i=>{Q0(i)},{passive:!1})),l.style.overflow="hidden",n.value=!0)},s=()=>{var l;const i=Yo(He(e));!i||!n.value||(xi&&(r==null||r()),i.style.overflow=(l=Jr.get(i))!=null?l:"",Jr.delete(i),n.value=!1)};return Wn(s),T({get(){return n.value},set(l){l?o():s()}})}function Fc(e,t,n={}){const{window:r=It}=n;return Gn(e,t,r==null?void 0:r.sessionStorage,n)}function X0(e={}){const{window:t=It,behavior:n="auto"}=e;if(!t)return{x:Y(0),y:Y(0)};const r=Y(t.scrollX),o=Y(t.scrollY),s=T({get(){return r.value},set(i){scrollTo({left:i,behavior:n})}}),l=T({get(){return o.value},set(i){scrollTo({top:i,behavior:n})}});return Ne(t,"scroll",()=>{r.value=t.scrollX,o.value=t.scrollY},{capture:!1,passive:!0}),{x:s,y:l}}function Z0(e={}){const{window:t=It,initialWidth:n=Number.POSITIVE_INFINITY,initialHeight:r=Number.POSITIVE_INFINITY,listenOrientation:o=!0,includeScrollbar:s=!0}=e,l=Y(n),i=Y(r),a=()=>{t&&(s?(l.value=t.innerWidth,i.value=t.innerHeight):(l.value=t.document.documentElement.clientWidth,i.value=t.document.documentElement.clientHeight))};if(a(),Lo(a),Ne("resize",a,{passive:!0}),o){const c=Nc("(orientation: portrait)");he(c,()=>a())}return{width:l,height:i}}var e2=V({name:"FontIcon",props:{icon:{type:String,default:""},color:{type:String,default:""},size:{type:[String,Number],default:""}},setup(e){const t=T(()=>{const r=["font-icon icon"],o=`fas fa-${e.icon}`;return r.push("fa-fw fa-sm"),r.push(e.icon.includes(" ")?e.icon:o),r}),n=T(()=>{const r={};return e.color&&(r.color=e.color),e.size&&(r["font-size"]=Number.isNaN(Number(e.size))?e.size:`${e.size}px`),gn(r).length?r:null});return()=>e.icon?f("span",{key:e.icon,class:t.value,style:n.value}):null}});const Bc=({type:e="info",text:t="",vertical:n,color:r},{slots:o})=>{var s;return f("span",{class:["vp-badge",e,{diy:r}],style:{verticalAlign:n??!1,backgroundColor:r??!1}},((s=o.default)==null?void 0:s.call(o))||t)};Bc.displayName="Badge";const Hc=({title:e,desc:t="",logo:n,background:r,color:o,link:s})=>{const l=[n?f("img",{class:"vp-card-logo",src:Ge(n),loading:"lazy","no-view":""}):null,f("div",{class:"vp-card-content"},[f("div",{class:"vp-card-title",innerHTML:e}),f("hr"),f("div",{class:"vp-card-desc",innerHTML:t})])],i={};return r&&(i.background=r),o&&(i.color=o),s?Fn(s)?f("a",{class:"vp-card",href:s,target:"_blank",style:i},l):f(Qe,{to:s,class:"vp-card",style:i},()=>l):f("div",{class:"vp-card",style:i},l)};Hc.displayName="VPCard";const t2=et({enhance:({app:e})=>{ft("FontIcon")||e.component("FontIcon",e2),ft("Badge")||e.component("Badge",Bc),ft("VPCard")||e.component("VPCard",Hc)},setup:()=>{Jo("https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@6/js/brands.min.js",()=>{},{attrs:{"data-auto-replace-svg":"nest"}}),Jo("https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@6/js/solid.min.js",()=>{},{attrs:{"data-auto-replace-svg":"nest"}}),Jo("https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@6/js/fontawesome.min.js",()=>{},{attrs:{"data-auto-replace-svg":"nest"}})},rootComponents:[]}),Ai=async(e,t)=>{const{path:n,query:r}=e.currentRoute.value,{scrollBehavior:o}=e.options;e.options.scrollBehavior=void 0,await e.replace({path:n,query:r,hash:t}),e.options.scrollBehavior=o},n2=({headerLinkSelector:e,headerAnchorSelector:t,delay:n,offset:r=5})=>{const o=hn();Ne("scroll",Pc(()=>{var g,_;const l=Math.max(window.scrollY,document.documentElement.scrollTop,document.body.scrollTop);if(Math.abs(l-0)d.some(w=>w.hash===b.hash));for(let b=0;b=(((g=w.parentElement)==null?void 0:g.offsetTop)??0)-r,k=!x||l<(((_=x.parentElement)==null?void 0:_.offsetTop)??0)-r;if(!(y&&k))continue;const S=decodeURIComponent(o.currentRoute.value.hash),I=decodeURIComponent(w.hash);if(S===I)return;if(u){for(let O=b+1;O$e(e.title)?{title:e.title}:null;const zc=Symbol(""),a2=e=>{Vc=e},c2=()=>De(zc),u2=e=>{e.provide(zc,Vc)};var f2={"/":{title:"目录",empty:"暂无目录"}};const d2=V({name:"Catalog",props:{base:{type:String,default:""},level:{type:Number,default:3},index:Boolean,hideHeading:Boolean},setup(e){const t=c2(),n=Pr(f2),r=Ae(),o=n0(),s=bc(),i=je(k0(o.value).map(([c,{meta:u}])=>{const d=t(u);if(!d)return null;const p=c.split("/").length;return{level:S0(c,"/")?p-2:p-1,base:c.replace(/\/[^/]+\/?$/,"/"),path:c,...d}}).filter(c=>qn(c)&&$e(c.title))),a=T(()=>{const c=e.base?H1(sc(e.base)):r.value.path.replace(/\/[^/]+$/,"/"),u=c.split("/").length-2,d=[];return i.value.filter(({level:p,path:h})=>{if(!Vn(h,c)||h===c)return!1;if(c==="/"){const g=gn(s.value.locales).filter(_=>_!=="/");if(h==="/404.html"||g.some(_=>Vn(h,_)))return!1}return p-u<=e.level}).sort(({title:p,level:h,order:g},{title:_,level:b,order:w})=>{const x=h-b;return x||(Ko(g)?Ko(w)?g>0?w>0?g-w:-1:w<0?g-w:1:g:Ko(w)?w:p.localeCompare(_))}).forEach(p=>{var _;const{base:h,level:g}=p;switch(g-u){case 1:{d.push(p);break}case 2:{const b=d.find(w=>w.path===h);b&&(b.children??(b.children=[])).push(p);break}default:{const b=d.find(w=>w.path===h.replace(/\/[^/]+\/$/,"/"));if(b){const w=(_=b.children)==null?void 0:_.find(x=>x.path===h);w&&(w.children??(w.children=[])).push(p)}}}}),d});return()=>{const c=a.value.some(u=>u.children);return f("div",{class:["vp-catalog-wrapper",{index:e.index}]},[e.hideHeading?null:f("h2",{class:"vp-catalog-main-title"},n.value.title),a.value.length?f(e.index?"ol":"ul",{class:["vp-catalogs",{deep:c}]},a.value.map(({children:u=[],title:d,path:p,content:h})=>{const g=f(Qe,{class:"vp-catalog-title",to:p},()=>h?f(h):d);return f("li",{class:"vp-catalog"},c?[f("h3",{id:d,class:["vp-catalog-child-title",{"has-children":u.length}]},[f("a",{href:`#${d}`,class:"vp-catalog-header-anchor","aria-hidden":!0},"#"),g]),u.length?f(e.index?"ol":"ul",{class:"vp-child-catalogs"},u.map(({children:_=[],content:b,path:w,title:x})=>f("li",{class:"vp-child-catalog"},[f("div",{class:["vp-catalog-sub-title",{"has-children":_.length}]},[f("a",{href:`#${x}`,class:"vp-catalog-header-anchor"},"#"),f(Qe,{class:"vp-catalog-title",to:w},()=>b?f(b):x)]),_.length?f(e.index?"ol":"div",{class:e.index?"vp-sub-catalogs":"vp-sub-catalogs-wrapper"},_.map(({content:y,path:k,title:R})=>e.index?f("li",{class:"vp-sub-catalog"},f(Qe,{to:k},()=>y?f(y):R)):f(Qe,{class:"vp-sub-catalog-link",to:k},()=>y?f(y):R))):null]))):null]:f("div",{class:"vp-catalog-child-title"},g))})):f("p",{class:"vp-empty-catalog"},n.value.empty)])}}}),p2=et({enhance:({app:e})=>{u2(e),ft("Catalog",e)||e.component("Catalog",d2)}});var h2={"/":{backToTop:"返回顶部"}};const v2=V({name:"BackToTop",setup(e){const t=Le(),n=Pr(h2),r=je(),{height:o}=J0(r),{height:s}=Z0(),{y:l}=X0(),i=T(()=>t.value.backToTop!==!1&&l.value>100),a=T(()=>l.value/(o.value-s.value)*100);return we(()=>{r.value=document.body}),()=>f(Yt,{name:"back-to-top"},()=>i.value?f("button",{type:"button",class:"vp-back-to-top-button","aria-label":n.value.backToTop,onClick:()=>{window.scrollTo({top:0,behavior:"smooth"})}},[f("span",{class:"vp-scroll-progress",role:"progressbar","aria-labelledby":"loadinglabel","aria-valuenow":a.value},f("svg",f("circle",{cx:"50%",cy:"50%",style:{"stroke-dasharray":`calc(${Math.PI*a.value}% - ${4*Math.PI}px) calc(${Math.PI*100}% - ${4*Math.PI}px)`}}))),f("div",{class:"back-to-top-icon"})]):null)}}),m2=et({rootComponents:[v2]}),g2=f("svg",{class:"external-link-icon",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",focusable:"false",x:"0px",y:"0px",viewBox:"0 0 100 100",width:"15",height:"15"},[f("path",{fill:"currentColor",d:"M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"}),f("polygon",{fill:"currentColor",points:"45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"})]),Uc=V({name:"ExternalLinkIcon",props:{locales:{type:Object,required:!1,default:()=>({})}},setup(e){const t=mn(),n=T(()=>e.locales[t.value]??{openInNewWindow:"open in new window"});return()=>f("span",[g2,f("span",{class:"external-link-icon-sr-only"},n.value.openInNewWindow)])}});var y2={};const b2=y2,_2=et({enhance({app:e}){e.component("ExternalLinkIcon",f(Uc,{locales:b2}))}});/** * NProgress, (c) 2013, 2014 Rico Sta. Cruz - http://ricostacruz.com/nprogress * @license MIT - */const de={settings:{minimum:.08,easing:"ease",speed:200,trickle:!0,trickleRate:.02,trickleSpeed:800,barSelector:'[role="bar"]',parent:"body",template:'
'},status:null,set:e=>{const t=de.isStarted();e=Qo(e,de.settings.minimum,1),de.status=e===1?null:e;const n=de.render(!t),r=n.querySelector(de.settings.barSelector),o=de.settings.speed,s=de.settings.easing;return n.offsetWidth,w2(l=>{Qr(r,{transform:"translate3d("+Li(e)+"%,0,0)",transition:"all "+o+"ms "+s}),e===1?(Qr(n,{transition:"none",opacity:"1"}),n.offsetWidth,setTimeout(function(){Qr(n,{transition:"all "+o+"ms linear",opacity:"0"}),setTimeout(function(){de.remove(),l()},o)},o)):setTimeout(()=>l(),o)}),de},isStarted:()=>typeof de.status=="number",start:()=>{de.status||de.set(0);const e=()=>{setTimeout(()=>{de.status&&(de.trickle(),e())},de.settings.trickleSpeed)};return de.settings.trickle&&e(),de},done:e=>!e&&!de.status?de:de.inc(.3+.5*Math.random()).set(1),inc:e=>{let t=de.status;return t?(typeof e!="number"&&(e=(1-t)*Qo(Math.random()*t,.1,.95)),t=Qo(t+e,0,.994),de.set(t)):de.start()},trickle:()=>de.inc(Math.random()*de.settings.trickleRate),render:e=>{if(de.isRendered())return document.getElementById("nprogress");Ii(document.documentElement,"nprogress-busy");const t=document.createElement("div");t.id="nprogress",t.innerHTML=de.settings.template;const n=t.querySelector(de.settings.barSelector),r=e?"-100":Li(de.status||0),o=document.querySelector(de.settings.parent);return Qr(n,{transition:"all 0 linear",transform:"translate3d("+r+"%,0,0)"}),o!==document.body&&Ii(o,"nprogress-custom-parent"),o==null||o.appendChild(t),t},remove:()=>{$i(document.documentElement,"nprogress-busy"),$i(document.querySelector(de.settings.parent),"nprogress-custom-parent");const e=document.getElementById("nprogress");e&&E2(e)},isRendered:()=>!!document.getElementById("nprogress")},Qo=(e,t,n)=>en?n:e,Li=e=>(-1+e)*100,w2=function(){const e=[];function t(){const n=e.shift();n&&n(t)}return function(n){e.push(n),e.length===1&&t()}}(),Qr=function(){const e=["Webkit","O","Moz","ms"],t={};function n(l){return l.replace(/^-ms-/,"ms-").replace(/-([\da-z])/gi,function(i,a){return a.toUpperCase()})}function r(l){const i=document.body.style;if(l in i)return l;let a=e.length;const c=l.charAt(0).toUpperCase()+l.slice(1);let u;for(;a--;)if(u=e[a]+c,u in i)return u;return l}function o(l){return l=n(l),t[l]??(t[l]=r(l))}function s(l,i,a){i=o(i),l.style[i]=a}return function(l,i){for(const a in i){const c=i[a];c!==void 0&&Object.prototype.hasOwnProperty.call(i,a)&&s(l,a,c)}}}(),qc=(e,t)=>(typeof e=="string"?e:ul(e)).indexOf(" "+t+" ")>=0,Ii=(e,t)=>{const n=ul(e),r=n+t;qc(n,t)||(e.className=r.substring(1))},$i=(e,t)=>{const n=ul(e);if(!qc(e,t))return;const r=n.replace(" "+t+" "," ");e.className=r.substring(1,r.length-1)},ul=e=>(" "+(e.className||"")+" ").replace(/\s+/gi," "),E2=e=>{e&&e.parentNode&&e.parentNode.removeChild(e)},C2=()=>{we(()=>{const e=hn(),t=new Set;t.add(e.currentRoute.value.path),e.beforeEach(n=>{t.has(n.path)||de.start()}),e.afterEach(n=>{t.add(n.path),de.done()})})},x2=et({setup(){C2()}}),S2=JSON.parse('{"encrypt":{"config":{"/demo/encrypt.html":["$2a$10$G2N/SuH6Br1oi5Vwr68bkuwx7a0ECd7wi4XhkV2P.gS/wnpA5WEjK"]}},"author":{"name":"远野千束","url":"https://sfkm.me"},"logo":"https://cdn.liteyuki.icu/static/img/liteyuki_icon_640.png","repo":"https://github.com/LiteyukiStudio/LiteyukiBot","docsDir":"docs","footer":"LiteyukiBot","displayFooter":true,"locales":{"/":{"lang":"zh-CN","navbarLocales":{"langName":"简体中文","selectLangAriaLabel":"选择语言"},"metaLocales":{"author":"作者","date":"写作日期","origin":"原创","views":"访问量","category":"分类","tag":"标签","readingTime":"阅读时间","words":"字数","toc":"此页内容","prev":"上一页","next":"下一页","lastUpdated":"上次编辑于","contributors":"贡献者","editLink":"在 GitHub 上编辑","print":"打印"},"outlookLocales":{"themeColor":"主题色","darkmode":"外观","fullscreen":"全屏"},"encryptLocales":{"iconLabel":"文章已加密","placeholder":"输入密码","remember":"记住密码","errorHint":"请输入正确的密码"},"routeLocales":{"skipToContent":"跳至主要內容","notFoundTitle":"页面不存在","notFoundMsg":["这里什么也没有","我们是怎么来到这儿的?","这 是 四 零 四 !","看起来你访问了一个失效的链接"],"back":"返回上一页","home":"带我回家","openInNewWindow":"Open in new window"},"navbar":["/",{"text":"安装及部署","link":"/deployment/","prefix":"deployment/"},{"text":"使用及功能","link":"/usage/","prefix":"usage/"},{"text":"资源及插件","link":"/store/","prefix":"store/"},{"text":"开发及贡献","link":"/dev/","prefix":"dev/"}],"sidebar":{"/":["",{"text":"安装及部署","icon":"laptop-code","prefix":"deployment/","children":"structure"},{"text":"使用及功能","icon":"book","prefix":"usage/","children":"structure"},{"text":"资源及插件","icon":"store","prefix":"store/","children":"structure"},{"text":"开发及贡献","icon":"pen-nib","prefix":"dev/","children":"structure"}]}}}}'),k2=Y(S2),Wc=()=>k2,Gc=Symbol(""),T2=()=>{const e=De(Gc);if(!e)throw new Error("useThemeLocaleData() is called without provider.");return e},A2=(e,t)=>{const{locales:n,...r}=e;return{...r,...n==null?void 0:n[t]}},L2=et({enhance({app:e}){const t=Wc(),n=e._context.provides[rl],r=T(()=>A2(t.value,n.routeLocale.value));e.provide(Gc,r),Object.defineProperties(e.config.globalProperties,{$theme:{get(){return t.value}},$themeLocale:{get(){return r.value}}})}});var I2={provider:"Giscus",lightTheme:"https://unpkg.com/vuepress-theme-hope@2.0.0-rc.32/templates/giscus/light.css",darkTheme:"https://unpkg.com/vuepress-theme-hope@2.0.0-rc.32/templates/giscus/dark.css",repo:"snowykami/LiteyukiBot",repoId:"R_kgDOHVNKpQ",category:"Announcements",categoryId:"DIC_kwDOHVNKpc4CeWxj"};const $2=I2;let O2=$2;const Kc=Symbol(""),Yc=()=>De(Kc),P2=Yc,R2=e=>{e.provide(Kc,O2)},Jc=()=>f("svg",{xmlns:"http://www.w3.org/2000/svg",width:"32",height:"32",preserveAspectRatio:"xMidYMid",viewBox:"0 0 100 100"},[f("circle",{cx:"28",cy:"75",r:"11",fill:"currentColor"},f("animate",{attributeName:"fill-opacity",begin:"0s",dur:"1s",keyTimes:"0;0.2;1",repeatCount:"indefinite",values:"0;1;1"})),f("path",{fill:"none",stroke:"#88baf0","stroke-width":"10",d:"M28 47a28 28 0 0 1 28 28"},f("animate",{attributeName:"stroke-opacity",begin:"0.1s",dur:"1s",keyTimes:"0;0.2;1",repeatCount:"indefinite",values:"0;1;1"})),f("path",{fill:"none",stroke:"#88baf0","stroke-width":"10",d:"M28 25a50 50 0 0 1 50 50"},f("animate",{attributeName:"stroke-opacity",begin:"0.2s",dur:"1s",keyTimes:"0;0.2;1",repeatCount:"indefinite",values:"0;1;1"}))]);Jc.displayName="LoadingIcon";const Oi=["ar","ca","da","de","en","eo","es","fa","fr","he","id","it","ja","ko","nl","pl","pt","ro","ru","th","tr","uk","uz","vi","zh-CN","zh-TW"],M2=V({name:"GiscusComment",props:{identifier:{type:String,required:!0},darkmode:Boolean},setup(e){const t=P2(),n=ol(),r=!!(t.repo&&t.repoId&&t.category&&t.categoryId),{repo:o,repoId:s,category:l,categoryId:i}=t,a=Y(!1),c=T(()=>{if(Oi.includes(n.value))return n.value;const d=n.value.split("-")[0];return Oi.includes(d)?d:"en"}),u=T(()=>({repo:o,repoId:s,category:l,categoryId:i,lang:c.value,theme:e.darkmode?t.darkTheme||"dark":t.lightTheme||"light",mapping:t.mapping||"pathname",term:e.identifier,inputPosition:t.inputPosition||"top",reactionsEnabled:t.reactionsEnabled===!1?"0":"1",strict:t.strict===!1?"0":"1",loading:t.lazyLoading===!1?"eager":"lazy",emitMetadata:"0"}));return we(async()=>{await Te(()=>import("./giscus-7BMGhbDA.js"),__vite__mapDeps([])),a.value=!0}),()=>r?f("div",{id:"comment",class:["giscus-wrapper",{"input-top":t.inputPosition!=="bottom"}]},a.value?f("giscus-widget",u.value):f(Jc)):null}}),N2=V({name:"CommentService",props:{darkmode:Boolean},setup(e){const t=Yc(),n=Ae(),r=Le(),o=t.comment!==!1,s=T(()=>r.value.comment||o&&r.value.comment!==!1);return()=>f(M2,{id:"vp-comment",identifier:r.value.commentID||n.value.path,darkmode:e.darkmode,style:{display:s.value?"block":"none"}})}}),D2=et({enhance:({app:e})=>{R2(e),e.component("CommentService",N2)}}),j2=/\b(?:Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini)/i,F2=()=>typeof window<"u"&&window.navigator&&"userAgent"in window.navigator&&j2.test(navigator.userAgent),B2=({delay:e=500,duration:t=2e3,locales:n,selector:r,showInMobile:o})=>{const{copy:s,copied:l}=V0({legacy:!0,copiedDuring:t}),i=Pr(n),a=Ae(),c=p=>{if(!p.hasAttribute("copy-code-registered")){const h=document.createElement("button");h.type="button",h.classList.add("vp-copy-code-button"),h.innerHTML='
',h.setAttribute("aria-label",i.value.copy),h.setAttribute("data-copied",i.value.copied),p.parentElement&&p.parentElement.insertBefore(h,p),p.setAttribute("copy-code-registered","")}},u=()=>{Jt().then(()=>Ac(e)).then(()=>{r.forEach(p=>{document.querySelectorAll(p).forEach(c)})})},d=(p,h,g)=>{let{innerText:_=""}=h;/language-(shellscript|shell|bash|sh|zsh)/.test(p.classList.toString())&&(_=_.replace(/^ *(\$|>) /gm,"")),s(_).then(()=>{g.classList.add("copied"),he(l,()=>{g.classList.remove("copied"),g.blur()},{once:!0})})};we(()=>{const p=!F2()||o;p&&u(),Ne("click",h=>{const g=h.target;if(g.matches('div[class*="language-"] > button.copy')){const _=g.parentElement,b=g.nextElementSibling;b&&d(_,b,g)}else if(g.matches('div[class*="language-"] div.vp-copy-icon')){const _=g.parentElement,b=_.parentElement,w=_.nextElementSibling;w&&d(b,w,_)}}),he(()=>a.value.path,()=>{p&&u()})})};var H2={"/":{copy:"复制代码",copied:"已复制"}},V2=['.theme-hope-content div[class*="language-"] pre'];const z2=500,U2=2e3,q2=H2,W2=V2,G2=!1,K2=et({setup:()=>{B2({selector:W2,locales:q2,duration:U2,delay:z2,showInMobile:G2})}}),Xr=Gn("VUEPRESS_CODE_TAB_STORE",{});var Y2=V({name:"CodeTabs",props:{active:{type:Number,default:0},data:{type:Array,required:!0},id:{type:String,required:!0},tabId:{type:String,default:""}},slots:Object,setup(e,{slots:t}){const n=Y(e.active),r=je([]),o=()=>{e.tabId&&(Xr.value[e.tabId]=e.data[n.value].id)},s=(c=n.value)=>{n.value=c{n.value=c>0?c-1:r.value.length-1,r.value[n.value].focus()},i=(c,u)=>{c.key===" "||c.key==="Enter"?(c.preventDefault(),n.value=u):c.key==="ArrowRight"?(c.preventDefault(),s()):c.key==="ArrowLeft"&&(c.preventDefault(),l()),e.tabId&&(Xr.value[e.tabId]=e.data[n.value].id)},a=()=>{if(e.tabId){const c=e.data.findIndex(({id:u})=>Xr.value[e.tabId]===u);if(c!==-1)return c}return e.active};return we(()=>{n.value=a(),he(()=>Xr.value[e.tabId],(c,u)=>{if(e.tabId&&c!==u){const d=e.data.findIndex(({id:p})=>p===c);d!==-1&&(n.value=d)}})}),()=>e.data.length?f("div",{class:"vp-code-tabs"},[f("div",{class:"vp-code-tabs-nav",role:"tablist"},e.data.map(({id:c},u)=>{const d=u===n.value;return f("button",{type:"button",ref:p=>{p&&(r.value[u]=p)},class:["vp-code-tab-nav",{active:d}],role:"tab","aria-controls":`codetab-${e.id}-${u}`,"aria-selected":d,onClick:()=>{n.value=u,o()},onKeydown:p=>i(p,u)},t[`title${u}`]({value:c,isActive:d}))})),e.data.map(({id:c},u)=>{const d=u===n.value;return f("div",{class:["vp-code-tab",{active:d}],id:`codetab-${e.id}-${u}`,role:"tabpanel","aria-expanded":d},[f("div",{class:"vp-code-tab-title"},t[`title${u}`]({value:c,isActive:d})),t[`tab${u}`]({value:c,isActive:d})])})]):null}});const Qc=({active:e=!1},{slots:t})=>{var n;return f("div",{class:["code-group-item",{active:e}],"aria-selected":e},(n=t.default)==null?void 0:n.call(t))};Qc.displayName="CodeGroupItem";const J2=V({name:"CodeGroup",slots:Object,setup(e,{slots:t}){const n=Y(-1),r=je([]),o=(i=n.value)=>{n.value=i{n.value=i>0?i-1:r.value.length-1,r.value[n.value].focus()},l=(i,a)=>{i.key===" "||i.key==="Enter"?(i.preventDefault(),n.value=a):i.key==="ArrowRight"?(i.preventDefault(),o(a)):i.key==="ArrowLeft"&&(i.preventDefault(),s(a))};return()=>{var a;const i=(((a=t.default)==null?void 0:a.call(t))||[]).filter(c=>c.type.name==="CodeGroupItem").map(c=>(c.props===null&&(c.props={}),c));return i.length===0?null:(n.value<0||n.value>i.length-1?(n.value=i.findIndex(c=>"active"in c.props),n.value===-1&&(n.value=0)):i.forEach((c,u)=>{c.props.active=u===n.value}),f("div",{class:"code-group"},[f("div",{class:"code-group-nav"},i.map((c,u)=>{const d=u===n.value;return f("button",{type:"button",ref:p=>{p&&(r.value[u]=p)},class:["code-group-nav-tab",{active:d}],"aria-pressed":d,"aria-expanded":d,onClick:()=>{n.value=u},onKeydown:p=>l(p,u)},c.props.title)})),i]))}}}),Oe=({name:e="",color:t="currentColor"},{slots:n})=>{var r;return f("svg",{xmlns:"http://www.w3.org/2000/svg",class:["icon",`${e}-icon`],viewBox:"0 0 1024 1024",fill:t,"aria-label":`${e} icon`},(r=n.default)==null?void 0:r.call(n))};Oe.displayName="IconBase";const fl=({size:e=48,stroke:t=4,wrapper:n=!0,height:r=2*e})=>{const o=f("svg",{xmlns:"http://www.w3.org/2000/svg",width:e,height:e,preserveAspectRatio:"xMidYMid",viewBox:"25 25 50 50"},[f("animateTransform",{attributeName:"transform",type:"rotate",dur:"2s",keyTimes:"0;1",repeatCount:"indefinite",values:"0;360"}),f("circle",{cx:"50",cy:"50",r:"20",fill:"none",stroke:"currentColor","stroke-width":t,"stroke-linecap":"round"},[f("animate",{attributeName:"stroke-dasharray",dur:"1.5s",keyTimes:"0;0.5;1",repeatCount:"indefinite",values:"1,200;90,200;1,200"}),f("animate",{attributeName:"stroke-dashoffset",dur:"1.5s",keyTimes:"0;0.5;1",repeatCount:"indefinite",values:"0;-35px;-125px"})])]);return n?f("div",{class:"loading-icon-wrapper",style:`display:flex;align-items:center;justify-content:center;height:${r}px`},o):o};fl.displayName="LoadingIcon";const Xc=(e,{slots:t})=>{var n;return(n=t.default)==null?void 0:n.call(t)},Zc=()=>f(Oe,{name:"github"},()=>f("path",{d:"M511.957 21.333C241.024 21.333 21.333 240.981 21.333 512c0 216.832 140.544 400.725 335.574 465.664 24.49 4.395 32.256-10.07 32.256-23.083 0-11.69.256-44.245 0-85.205-136.448 29.61-164.736-64.64-164.736-64.64-22.315-56.704-54.4-71.765-54.4-71.765-44.587-30.464 3.285-29.824 3.285-29.824 49.195 3.413 75.179 50.517 75.179 50.517 43.776 75.008 114.816 53.333 142.762 40.79 4.523-31.66 17.152-53.377 31.19-65.537-108.971-12.458-223.488-54.485-223.488-242.602 0-53.547 19.114-97.323 50.517-131.67-5.035-12.33-21.93-62.293 4.779-129.834 0 0 41.258-13.184 134.912 50.346a469.803 469.803 0 0 1 122.88-16.554c41.642.213 83.626 5.632 122.88 16.554 93.653-63.488 134.784-50.346 134.784-50.346 26.752 67.541 9.898 117.504 4.864 129.834 31.402 34.347 50.474 78.123 50.474 131.67 0 188.586-114.73 230.016-224.042 242.09 17.578 15.232 33.578 44.672 33.578 90.454v135.85c0 13.142 7.936 27.606 32.854 22.87C862.25 912.597 1002.667 728.747 1002.667 512c0-271.019-219.648-490.667-490.71-490.667z"}));Zc.displayName="GitHubIcon";const eu=()=>f(Oe,{name:"gitlab"},()=>f("path",{d:"M229.333 78.688C223.52 62 199.895 62 193.895 78.688L87.958 406.438h247.5c-.188 0-106.125-327.75-106.125-327.75zM33.77 571.438c-4.875 15 .563 31.687 13.313 41.25l464.812 345L87.77 406.438zm301.5-165 176.813 551.25 176.812-551.25zm655.125 165-54-165-424.312 551.25 464.812-345c12.938-9.563 18.188-26.25 13.5-41.25zM830.27 78.688c-5.812-16.688-29.437-16.688-35.437 0l-106.125 327.75h247.5z"}));eu.displayName="GitLabIcon";const tu=()=>f(Oe,{name:"gitee"},()=>f("path",{d:"M512 992C246.92 992 32 777.08 32 512S246.92 32 512 32s480 214.92 480 480-214.92 480-480 480zm242.97-533.34H482.39a23.7 23.7 0 0 0-23.7 23.7l-.03 59.28c0 13.08 10.59 23.7 23.7 23.7h165.96a23.7 23.7 0 0 1 23.7 23.7v11.85a71.1 71.1 0 0 1-71.1 71.1H375.71a23.7 23.7 0 0 1-23.7-23.7V423.11a71.1 71.1 0 0 1 71.1-71.1h331.8a23.7 23.7 0 0 0 23.7-23.7l.06-59.25a23.73 23.73 0 0 0-23.7-23.73H423.11a177.78 177.78 0 0 0-177.78 177.75v331.83c0 13.08 10.62 23.7 23.7 23.7h349.62a159.99 159.99 0 0 0 159.99-159.99V482.33a23.7 23.7 0 0 0-23.7-23.7z"}));tu.displayName="GiteeIcon";const nu=()=>f(Oe,{name:"bitbucket"},()=>f("path",{d:"M575.256 490.862c6.29 47.981-52.005 85.723-92.563 61.147-45.714-20.004-45.714-92.562-1.133-113.152 38.29-23.442 93.696 7.424 93.696 52.005zm63.451-11.996c-10.276-81.152-102.29-134.839-177.152-101.156-47.433 21.138-79.433 71.424-77.129 124.562 2.853 69.705 69.157 126.866 138.862 120.576S647.3 548.571 638.708 478.83zm136.558-309.723c-25.161-33.134-67.986-38.839-105.728-45.13-106.862-17.151-216.576-17.7-323.438 1.134-35.438 5.706-75.447 11.996-97.719 43.996 36.572 34.304 88.576 39.424 135.424 45.129 84.553 10.862 171.447 11.447 256 .585 47.433-5.705 99.987-10.276 135.424-45.714zm32.585 591.433c-16.018 55.99-6.839 131.438-66.304 163.986-102.29 56.576-226.304 62.867-338.87 42.862-59.43-10.862-129.135-29.696-161.72-85.723-14.3-54.858-23.442-110.848-32.585-166.84l3.438-9.142 10.276-5.157c170.277 112.567 408.576 112.567 579.438 0 26.844 8.01 6.84 40.558 6.29 60.014zm103.424-549.157c-19.42 125.148-41.728 249.71-63.415 374.272-6.29 36.572-41.728 57.162-71.424 72.558-106.862 53.724-231.424 62.866-348.562 50.286-79.433-8.558-160.585-29.696-225.134-79.433-30.28-23.443-30.28-63.415-35.986-97.134-20.005-117.138-42.862-234.277-57.161-352.585 6.839-51.42 64.585-73.728 107.447-89.71 57.16-21.138 118.272-30.866 178.87-36.571 129.134-12.58 261.157-8.01 386.304 28.562 44.581 13.13 92.563 31.415 122.844 69.705 13.714 17.7 9.143 40.01 6.29 60.014z"}));nu.displayName="BitbucketIcon";const ru=()=>f(Oe,{name:"source"},()=>f("path",{d:"M601.92 475.2c0 76.428-8.91 83.754-28.512 99.594-14.652 11.88-43.956 14.058-78.012 16.434-18.81 1.386-40.392 2.97-62.172 6.534-18.612 2.97-36.432 9.306-53.064 17.424V299.772c37.818-21.978 63.36-62.766 63.36-109.692 0-69.894-56.826-126.72-126.72-126.72S190.08 120.186 190.08 190.08c0 46.926 25.542 87.714 63.36 109.692v414.216c-37.818 21.978-63.36 62.766-63.36 109.692 0 69.894 56.826 126.72 126.72 126.72s126.72-56.826 126.72-126.72c0-31.086-11.286-59.598-29.7-81.576 13.266-9.504 27.522-17.226 39.996-19.206 16.038-2.574 32.868-3.762 50.688-5.148 48.312-3.366 103.158-7.326 148.896-44.55 61.182-49.698 74.25-103.158 75.24-187.902V475.2h-126.72zM316.8 126.72c34.848 0 63.36 28.512 63.36 63.36s-28.512 63.36-63.36 63.36-63.36-28.512-63.36-63.36 28.512-63.36 63.36-63.36zm0 760.32c-34.848 0-63.36-28.512-63.36-63.36s28.512-63.36 63.36-63.36 63.36 28.512 63.36 63.36-28.512 63.36-63.36 63.36zM823.68 158.4h-95.04V63.36h-126.72v95.04h-95.04v126.72h95.04v95.04h126.72v-95.04h95.04z"}));ru.displayName="SourceIcon";const ou=(e,t)=>{let n=1;for(let r=0;r>6;return n+=n<<3,n^=n>>11,n%t},su=/#.*$/u,Q2=e=>{const t=su.exec(e);return t?t[0]:""},Pi=e=>decodeURI(e).replace(su,"").replace(/\/index\.html$/iu,"/").replace(/\.html$/iu,"").replace(/(README|index)?\.md$/iu,""),lu=(e,t)=>{if(!Lc(t))return!1;const n=Pi(e.path),r=Pi(t),o=Q2(t);return o?o===e.hash&&(!r||n===r):n===r},X2=e=>pn(e)?e:`https://github.com/${e}`,iu=e=>!pn(e)||/github\.com/.test(e)?"GitHub":/bitbucket\.org/.test(e)?"Bitbucket":/gitlab\.com/.test(e)?"GitLab":/gitee\.com/.test(e)?"Gitee":null;var Z2=e=>Object.prototype.toString.call(e)==="[object Object]",br=e=>typeof e=="string";const au=Array.isArray,Ri=e=>Z2(e)&&br(e.name),Mi=(e,t=!1)=>e?au(e)?e.map(n=>br(n)?{name:n}:Ri(n)?n:null).filter(n=>n!==null):br(e)?[{name:e}]:Ri(e)?[e]:(console.error(`Expect "author" to be \`AuthorInfo[] | AuthorInfo | string[] | string ${t?"":"| false"} | undefined\`, but got`,e),[]):[],cu=(e,t)=>{if(e){if(au(e)&&e.every(br))return e;if(br(e))return[e];console.error(`Expect ${t||"value"} to be \`string[] | string | undefined\`, but got`,e)}return[]},eh=e=>cu(e,"category"),th=e=>cu(e,"tag"),nh='',rh='';var oh={useBabel:!1,jsLib:[],cssLib:[],codepenLayout:"left",codepenEditors:"101",babel:"https://unpkg.com/@babel/standalone/babel.min.js",vue:"https://unpkg.com/vue/dist/vue.global.prod.js",react:"https://unpkg.com/react/umd/react.production.min.js",reactDOM:"https://unpkg.com/react-dom/umd/react-dom.production.min.js"};const Xo=oh,Ni={html:{types:["html","slim","haml","md","markdown","vue"],map:{html:"none",vue:"none",md:"markdown"}},js:{types:["js","javascript","coffee","coffeescript","ts","typescript","ls","livescript"],map:{js:"none",javascript:"none",coffee:"coffeescript",ls:"livescript",ts:"typescript"}},css:{types:["css","less","sass","scss","stylus","styl"],map:{css:"none",styl:"stylus"}}},sh=(e,t,n)=>{const r=document.createElement(e);return qn(t)&&gn(t).forEach(o=>{if(o.indexOf("data"))r[o]=t[o];else{const s=o.replace("data","");r.dataset[s]=t[o]}}),n&&n.forEach(o=>{r.appendChild(o)}),r},dl=e=>({...Xo,...e,jsLib:Array.from(new Set([...Xo.jsLib||[],...e.jsLib||[]])),cssLib:Array.from(new Set([...Xo.cssLib||[],...e.cssLib||[]]))}),Pn=(e,t)=>{if(Lc(e[t]))return e[t];const n=new Promise(r=>{var s;const o=document.createElement("script");o.src=t,(s=document.querySelector("body"))==null||s.appendChild(o),o.onload=()=>{r()}});return e[t]=n,n},lh=(e,t)=>{if(t.css&&Array.from(e.childNodes).every(n=>n.nodeName!=="STYLE")){const n=sh("style",{innerHTML:t.css});e.appendChild(n)}},ih=(e,t,n)=>{const r=n.getScript();if(r&&Array.from(t.childNodes).every(o=>o.nodeName!=="SCRIPT")){const o=document.createElement("script");o.appendChild(document.createTextNode(`{const document=window.document.querySelector('#${e} .vp-code-demo-display').shadowRoot; + */const de={settings:{minimum:.08,easing:"ease",speed:200,trickle:!0,trickleRate:.02,trickleSpeed:800,barSelector:'[role="bar"]',parent:"body",template:'
'},status:null,set:e=>{const t=de.isStarted();e=Qo(e,de.settings.minimum,1),de.status=e===1?null:e;const n=de.render(!t),r=n.querySelector(de.settings.barSelector),o=de.settings.speed,s=de.settings.easing;return n.offsetWidth,w2(l=>{Qr(r,{transform:"translate3d("+Li(e)+"%,0,0)",transition:"all "+o+"ms "+s}),e===1?(Qr(n,{transition:"none",opacity:"1"}),n.offsetWidth,setTimeout(function(){Qr(n,{transition:"all "+o+"ms linear",opacity:"0"}),setTimeout(function(){de.remove(),l()},o)},o)):setTimeout(()=>l(),o)}),de},isStarted:()=>typeof de.status=="number",start:()=>{de.status||de.set(0);const e=()=>{setTimeout(()=>{de.status&&(de.trickle(),e())},de.settings.trickleSpeed)};return de.settings.trickle&&e(),de},done:e=>!e&&!de.status?de:de.inc(.3+.5*Math.random()).set(1),inc:e=>{let t=de.status;return t?(typeof e!="number"&&(e=(1-t)*Qo(Math.random()*t,.1,.95)),t=Qo(t+e,0,.994),de.set(t)):de.start()},trickle:()=>de.inc(Math.random()*de.settings.trickleRate),render:e=>{if(de.isRendered())return document.getElementById("nprogress");Ii(document.documentElement,"nprogress-busy");const t=document.createElement("div");t.id="nprogress",t.innerHTML=de.settings.template;const n=t.querySelector(de.settings.barSelector),r=e?"-100":Li(de.status||0),o=document.querySelector(de.settings.parent);return Qr(n,{transition:"all 0 linear",transform:"translate3d("+r+"%,0,0)"}),o!==document.body&&Ii(o,"nprogress-custom-parent"),o==null||o.appendChild(t),t},remove:()=>{$i(document.documentElement,"nprogress-busy"),$i(document.querySelector(de.settings.parent),"nprogress-custom-parent");const e=document.getElementById("nprogress");e&&E2(e)},isRendered:()=>!!document.getElementById("nprogress")},Qo=(e,t,n)=>en?n:e,Li=e=>(-1+e)*100,w2=function(){const e=[];function t(){const n=e.shift();n&&n(t)}return function(n){e.push(n),e.length===1&&t()}}(),Qr=function(){const e=["Webkit","O","Moz","ms"],t={};function n(l){return l.replace(/^-ms-/,"ms-").replace(/-([\da-z])/gi,function(i,a){return a.toUpperCase()})}function r(l){const i=document.body.style;if(l in i)return l;let a=e.length;const c=l.charAt(0).toUpperCase()+l.slice(1);let u;for(;a--;)if(u=e[a]+c,u in i)return u;return l}function o(l){return l=n(l),t[l]??(t[l]=r(l))}function s(l,i,a){i=o(i),l.style[i]=a}return function(l,i){for(const a in i){const c=i[a];c!==void 0&&Object.prototype.hasOwnProperty.call(i,a)&&s(l,a,c)}}}(),qc=(e,t)=>(typeof e=="string"?e:ul(e)).indexOf(" "+t+" ")>=0,Ii=(e,t)=>{const n=ul(e),r=n+t;qc(n,t)||(e.className=r.substring(1))},$i=(e,t)=>{const n=ul(e);if(!qc(e,t))return;const r=n.replace(" "+t+" "," ");e.className=r.substring(1,r.length-1)},ul=e=>(" "+(e.className||"")+" ").replace(/\s+/gi," "),E2=e=>{e&&e.parentNode&&e.parentNode.removeChild(e)},C2=()=>{we(()=>{const e=hn(),t=new Set;t.add(e.currentRoute.value.path),e.beforeEach(n=>{t.has(n.path)||de.start()}),e.afterEach(n=>{t.add(n.path),de.done()})})},x2=et({setup(){C2()}}),S2=JSON.parse('{"encrypt":{"config":{"/demo/encrypt.html":["$2a$10$b7lcs2POCU8iZYN8biVpBuydJ5W7RGKUknziOzoHmidS2Ysv/u9vW"]}},"author":{"name":"远野千束","url":"https://sfkm.me"},"logo":"https://cdn.liteyuki.icu/static/img/liteyuki_icon_640.png","repo":"https://github.com/LiteyukiStudio/LiteyukiBot","docsDir":"docs","footer":"LiteyukiBot","displayFooter":true,"locales":{"/":{"lang":"zh-CN","navbarLocales":{"langName":"简体中文","selectLangAriaLabel":"选择语言"},"metaLocales":{"author":"作者","date":"写作日期","origin":"原创","views":"访问量","category":"分类","tag":"标签","readingTime":"阅读时间","words":"字数","toc":"此页内容","prev":"上一页","next":"下一页","lastUpdated":"上次编辑于","contributors":"贡献者","editLink":"在 GitHub 上编辑","print":"打印"},"outlookLocales":{"themeColor":"主题色","darkmode":"外观","fullscreen":"全屏"},"encryptLocales":{"iconLabel":"文章已加密","placeholder":"输入密码","remember":"记住密码","errorHint":"请输入正确的密码"},"routeLocales":{"skipToContent":"跳至主要內容","notFoundTitle":"页面不存在","notFoundMsg":["这里什么也没有","我们是怎么来到这儿的?","这 是 四 零 四 !","看起来你访问了一个失效的链接"],"back":"返回上一页","home":"带我回家","openInNewWindow":"Open in new window"},"navbar":["/",{"text":"安装及部署","link":"/deployment/","prefix":"deployment/"},{"text":"使用及功能","link":"/usage/","prefix":"usage/"},{"text":"资源及插件","link":"/store/","prefix":"store/"},{"text":"开发及贡献","link":"/dev/","prefix":"dev/"}],"sidebar":{"/":["",{"text":"安装及部署","icon":"laptop-code","prefix":"deployment/","children":"structure"},{"text":"使用及功能","icon":"book","prefix":"usage/","children":"structure"},{"text":"资源及插件","icon":"store","prefix":"store/","children":"structure"},{"text":"开发及贡献","icon":"pen-nib","prefix":"dev/","children":"structure"}]}}}}'),k2=Y(S2),Wc=()=>k2,Gc=Symbol(""),T2=()=>{const e=De(Gc);if(!e)throw new Error("useThemeLocaleData() is called without provider.");return e},A2=(e,t)=>{const{locales:n,...r}=e;return{...r,...n==null?void 0:n[t]}},L2=et({enhance({app:e}){const t=Wc(),n=e._context.provides[rl],r=T(()=>A2(t.value,n.routeLocale.value));e.provide(Gc,r),Object.defineProperties(e.config.globalProperties,{$theme:{get(){return t.value}},$themeLocale:{get(){return r.value}}})}});var I2={provider:"Giscus",lightTheme:"https://unpkg.com/vuepress-theme-hope@2.0.0-rc.32/templates/giscus/light.css",darkTheme:"https://unpkg.com/vuepress-theme-hope@2.0.0-rc.32/templates/giscus/dark.css",repo:"snowykami/LiteyukiBot",repoId:"R_kgDOHVNKpQ",category:"Announcements",categoryId:"DIC_kwDOHVNKpc4CeWxj"};const $2=I2;let O2=$2;const Kc=Symbol(""),Yc=()=>De(Kc),P2=Yc,R2=e=>{e.provide(Kc,O2)},Jc=()=>f("svg",{xmlns:"http://www.w3.org/2000/svg",width:"32",height:"32",preserveAspectRatio:"xMidYMid",viewBox:"0 0 100 100"},[f("circle",{cx:"28",cy:"75",r:"11",fill:"currentColor"},f("animate",{attributeName:"fill-opacity",begin:"0s",dur:"1s",keyTimes:"0;0.2;1",repeatCount:"indefinite",values:"0;1;1"})),f("path",{fill:"none",stroke:"#88baf0","stroke-width":"10",d:"M28 47a28 28 0 0 1 28 28"},f("animate",{attributeName:"stroke-opacity",begin:"0.1s",dur:"1s",keyTimes:"0;0.2;1",repeatCount:"indefinite",values:"0;1;1"})),f("path",{fill:"none",stroke:"#88baf0","stroke-width":"10",d:"M28 25a50 50 0 0 1 50 50"},f("animate",{attributeName:"stroke-opacity",begin:"0.2s",dur:"1s",keyTimes:"0;0.2;1",repeatCount:"indefinite",values:"0;1;1"}))]);Jc.displayName="LoadingIcon";const Oi=["ar","ca","da","de","en","eo","es","fa","fr","he","id","it","ja","ko","nl","pl","pt","ro","ru","th","tr","uk","uz","vi","zh-CN","zh-TW"],M2=V({name:"GiscusComment",props:{identifier:{type:String,required:!0},darkmode:Boolean},setup(e){const t=P2(),n=ol(),r=!!(t.repo&&t.repoId&&t.category&&t.categoryId),{repo:o,repoId:s,category:l,categoryId:i}=t,a=Y(!1),c=T(()=>{if(Oi.includes(n.value))return n.value;const d=n.value.split("-")[0];return Oi.includes(d)?d:"en"}),u=T(()=>({repo:o,repoId:s,category:l,categoryId:i,lang:c.value,theme:e.darkmode?t.darkTheme||"dark":t.lightTheme||"light",mapping:t.mapping||"pathname",term:e.identifier,inputPosition:t.inputPosition||"top",reactionsEnabled:t.reactionsEnabled===!1?"0":"1",strict:t.strict===!1?"0":"1",loading:t.lazyLoading===!1?"eager":"lazy",emitMetadata:"0"}));return we(async()=>{await Te(()=>import("./giscus-7BMGhbDA.js"),__vite__mapDeps([])),a.value=!0}),()=>r?f("div",{id:"comment",class:["giscus-wrapper",{"input-top":t.inputPosition!=="bottom"}]},a.value?f("giscus-widget",u.value):f(Jc)):null}}),N2=V({name:"CommentService",props:{darkmode:Boolean},setup(e){const t=Yc(),n=Ae(),r=Le(),o=t.comment!==!1,s=T(()=>r.value.comment||o&&r.value.comment!==!1);return()=>f(M2,{id:"vp-comment",identifier:r.value.commentID||n.value.path,darkmode:e.darkmode,style:{display:s.value?"block":"none"}})}}),D2=et({enhance:({app:e})=>{R2(e),e.component("CommentService",N2)}}),j2=/\b(?:Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini)/i,F2=()=>typeof window<"u"&&window.navigator&&"userAgent"in window.navigator&&j2.test(navigator.userAgent),B2=({delay:e=500,duration:t=2e3,locales:n,selector:r,showInMobile:o})=>{const{copy:s,copied:l}=V0({legacy:!0,copiedDuring:t}),i=Pr(n),a=Ae(),c=p=>{if(!p.hasAttribute("copy-code-registered")){const h=document.createElement("button");h.type="button",h.classList.add("vp-copy-code-button"),h.innerHTML='
',h.setAttribute("aria-label",i.value.copy),h.setAttribute("data-copied",i.value.copied),p.parentElement&&p.parentElement.insertBefore(h,p),p.setAttribute("copy-code-registered","")}},u=()=>{Jt().then(()=>Ac(e)).then(()=>{r.forEach(p=>{document.querySelectorAll(p).forEach(c)})})},d=(p,h,g)=>{let{innerText:_=""}=h;/language-(shellscript|shell|bash|sh|zsh)/.test(p.classList.toString())&&(_=_.replace(/^ *(\$|>) /gm,"")),s(_).then(()=>{g.classList.add("copied"),he(l,()=>{g.classList.remove("copied"),g.blur()},{once:!0})})};we(()=>{const p=!F2()||o;p&&u(),Ne("click",h=>{const g=h.target;if(g.matches('div[class*="language-"] > button.copy')){const _=g.parentElement,b=g.nextElementSibling;b&&d(_,b,g)}else if(g.matches('div[class*="language-"] div.vp-copy-icon')){const _=g.parentElement,b=_.parentElement,w=_.nextElementSibling;w&&d(b,w,_)}}),he(()=>a.value.path,()=>{p&&u()})})};var H2={"/":{copy:"复制代码",copied:"已复制"}},V2=['.theme-hope-content div[class*="language-"] pre'];const z2=500,U2=2e3,q2=H2,W2=V2,G2=!1,K2=et({setup:()=>{B2({selector:W2,locales:q2,duration:U2,delay:z2,showInMobile:G2})}}),Xr=Gn("VUEPRESS_CODE_TAB_STORE",{});var Y2=V({name:"CodeTabs",props:{active:{type:Number,default:0},data:{type:Array,required:!0},id:{type:String,required:!0},tabId:{type:String,default:""}},slots:Object,setup(e,{slots:t}){const n=Y(e.active),r=je([]),o=()=>{e.tabId&&(Xr.value[e.tabId]=e.data[n.value].id)},s=(c=n.value)=>{n.value=c{n.value=c>0?c-1:r.value.length-1,r.value[n.value].focus()},i=(c,u)=>{c.key===" "||c.key==="Enter"?(c.preventDefault(),n.value=u):c.key==="ArrowRight"?(c.preventDefault(),s()):c.key==="ArrowLeft"&&(c.preventDefault(),l()),e.tabId&&(Xr.value[e.tabId]=e.data[n.value].id)},a=()=>{if(e.tabId){const c=e.data.findIndex(({id:u})=>Xr.value[e.tabId]===u);if(c!==-1)return c}return e.active};return we(()=>{n.value=a(),he(()=>Xr.value[e.tabId],(c,u)=>{if(e.tabId&&c!==u){const d=e.data.findIndex(({id:p})=>p===c);d!==-1&&(n.value=d)}})}),()=>e.data.length?f("div",{class:"vp-code-tabs"},[f("div",{class:"vp-code-tabs-nav",role:"tablist"},e.data.map(({id:c},u)=>{const d=u===n.value;return f("button",{type:"button",ref:p=>{p&&(r.value[u]=p)},class:["vp-code-tab-nav",{active:d}],role:"tab","aria-controls":`codetab-${e.id}-${u}`,"aria-selected":d,onClick:()=>{n.value=u,o()},onKeydown:p=>i(p,u)},t[`title${u}`]({value:c,isActive:d}))})),e.data.map(({id:c},u)=>{const d=u===n.value;return f("div",{class:["vp-code-tab",{active:d}],id:`codetab-${e.id}-${u}`,role:"tabpanel","aria-expanded":d},[f("div",{class:"vp-code-tab-title"},t[`title${u}`]({value:c,isActive:d})),t[`tab${u}`]({value:c,isActive:d})])})]):null}});const Qc=({active:e=!1},{slots:t})=>{var n;return f("div",{class:["code-group-item",{active:e}],"aria-selected":e},(n=t.default)==null?void 0:n.call(t))};Qc.displayName="CodeGroupItem";const J2=V({name:"CodeGroup",slots:Object,setup(e,{slots:t}){const n=Y(-1),r=je([]),o=(i=n.value)=>{n.value=i{n.value=i>0?i-1:r.value.length-1,r.value[n.value].focus()},l=(i,a)=>{i.key===" "||i.key==="Enter"?(i.preventDefault(),n.value=a):i.key==="ArrowRight"?(i.preventDefault(),o(a)):i.key==="ArrowLeft"&&(i.preventDefault(),s(a))};return()=>{var a;const i=(((a=t.default)==null?void 0:a.call(t))||[]).filter(c=>c.type.name==="CodeGroupItem").map(c=>(c.props===null&&(c.props={}),c));return i.length===0?null:(n.value<0||n.value>i.length-1?(n.value=i.findIndex(c=>"active"in c.props),n.value===-1&&(n.value=0)):i.forEach((c,u)=>{c.props.active=u===n.value}),f("div",{class:"code-group"},[f("div",{class:"code-group-nav"},i.map((c,u)=>{const d=u===n.value;return f("button",{type:"button",ref:p=>{p&&(r.value[u]=p)},class:["code-group-nav-tab",{active:d}],"aria-pressed":d,"aria-expanded":d,onClick:()=>{n.value=u},onKeydown:p=>l(p,u)},c.props.title)})),i]))}}}),Oe=({name:e="",color:t="currentColor"},{slots:n})=>{var r;return f("svg",{xmlns:"http://www.w3.org/2000/svg",class:["icon",`${e}-icon`],viewBox:"0 0 1024 1024",fill:t,"aria-label":`${e} icon`},(r=n.default)==null?void 0:r.call(n))};Oe.displayName="IconBase";const fl=({size:e=48,stroke:t=4,wrapper:n=!0,height:r=2*e})=>{const o=f("svg",{xmlns:"http://www.w3.org/2000/svg",width:e,height:e,preserveAspectRatio:"xMidYMid",viewBox:"25 25 50 50"},[f("animateTransform",{attributeName:"transform",type:"rotate",dur:"2s",keyTimes:"0;1",repeatCount:"indefinite",values:"0;360"}),f("circle",{cx:"50",cy:"50",r:"20",fill:"none",stroke:"currentColor","stroke-width":t,"stroke-linecap":"round"},[f("animate",{attributeName:"stroke-dasharray",dur:"1.5s",keyTimes:"0;0.5;1",repeatCount:"indefinite",values:"1,200;90,200;1,200"}),f("animate",{attributeName:"stroke-dashoffset",dur:"1.5s",keyTimes:"0;0.5;1",repeatCount:"indefinite",values:"0;-35px;-125px"})])]);return n?f("div",{class:"loading-icon-wrapper",style:`display:flex;align-items:center;justify-content:center;height:${r}px`},o):o};fl.displayName="LoadingIcon";const Xc=(e,{slots:t})=>{var n;return(n=t.default)==null?void 0:n.call(t)},Zc=()=>f(Oe,{name:"github"},()=>f("path",{d:"M511.957 21.333C241.024 21.333 21.333 240.981 21.333 512c0 216.832 140.544 400.725 335.574 465.664 24.49 4.395 32.256-10.07 32.256-23.083 0-11.69.256-44.245 0-85.205-136.448 29.61-164.736-64.64-164.736-64.64-22.315-56.704-54.4-71.765-54.4-71.765-44.587-30.464 3.285-29.824 3.285-29.824 49.195 3.413 75.179 50.517 75.179 50.517 43.776 75.008 114.816 53.333 142.762 40.79 4.523-31.66 17.152-53.377 31.19-65.537-108.971-12.458-223.488-54.485-223.488-242.602 0-53.547 19.114-97.323 50.517-131.67-5.035-12.33-21.93-62.293 4.779-129.834 0 0 41.258-13.184 134.912 50.346a469.803 469.803 0 0 1 122.88-16.554c41.642.213 83.626 5.632 122.88 16.554 93.653-63.488 134.784-50.346 134.784-50.346 26.752 67.541 9.898 117.504 4.864 129.834 31.402 34.347 50.474 78.123 50.474 131.67 0 188.586-114.73 230.016-224.042 242.09 17.578 15.232 33.578 44.672 33.578 90.454v135.85c0 13.142 7.936 27.606 32.854 22.87C862.25 912.597 1002.667 728.747 1002.667 512c0-271.019-219.648-490.667-490.71-490.667z"}));Zc.displayName="GitHubIcon";const eu=()=>f(Oe,{name:"gitlab"},()=>f("path",{d:"M229.333 78.688C223.52 62 199.895 62 193.895 78.688L87.958 406.438h247.5c-.188 0-106.125-327.75-106.125-327.75zM33.77 571.438c-4.875 15 .563 31.687 13.313 41.25l464.812 345L87.77 406.438zm301.5-165 176.813 551.25 176.812-551.25zm655.125 165-54-165-424.312 551.25 464.812-345c12.938-9.563 18.188-26.25 13.5-41.25zM830.27 78.688c-5.812-16.688-29.437-16.688-35.437 0l-106.125 327.75h247.5z"}));eu.displayName="GitLabIcon";const tu=()=>f(Oe,{name:"gitee"},()=>f("path",{d:"M512 992C246.92 992 32 777.08 32 512S246.92 32 512 32s480 214.92 480 480-214.92 480-480 480zm242.97-533.34H482.39a23.7 23.7 0 0 0-23.7 23.7l-.03 59.28c0 13.08 10.59 23.7 23.7 23.7h165.96a23.7 23.7 0 0 1 23.7 23.7v11.85a71.1 71.1 0 0 1-71.1 71.1H375.71a23.7 23.7 0 0 1-23.7-23.7V423.11a71.1 71.1 0 0 1 71.1-71.1h331.8a23.7 23.7 0 0 0 23.7-23.7l.06-59.25a23.73 23.73 0 0 0-23.7-23.73H423.11a177.78 177.78 0 0 0-177.78 177.75v331.83c0 13.08 10.62 23.7 23.7 23.7h349.62a159.99 159.99 0 0 0 159.99-159.99V482.33a23.7 23.7 0 0 0-23.7-23.7z"}));tu.displayName="GiteeIcon";const nu=()=>f(Oe,{name:"bitbucket"},()=>f("path",{d:"M575.256 490.862c6.29 47.981-52.005 85.723-92.563 61.147-45.714-20.004-45.714-92.562-1.133-113.152 38.29-23.442 93.696 7.424 93.696 52.005zm63.451-11.996c-10.276-81.152-102.29-134.839-177.152-101.156-47.433 21.138-79.433 71.424-77.129 124.562 2.853 69.705 69.157 126.866 138.862 120.576S647.3 548.571 638.708 478.83zm136.558-309.723c-25.161-33.134-67.986-38.839-105.728-45.13-106.862-17.151-216.576-17.7-323.438 1.134-35.438 5.706-75.447 11.996-97.719 43.996 36.572 34.304 88.576 39.424 135.424 45.129 84.553 10.862 171.447 11.447 256 .585 47.433-5.705 99.987-10.276 135.424-45.714zm32.585 591.433c-16.018 55.99-6.839 131.438-66.304 163.986-102.29 56.576-226.304 62.867-338.87 42.862-59.43-10.862-129.135-29.696-161.72-85.723-14.3-54.858-23.442-110.848-32.585-166.84l3.438-9.142 10.276-5.157c170.277 112.567 408.576 112.567 579.438 0 26.844 8.01 6.84 40.558 6.29 60.014zm103.424-549.157c-19.42 125.148-41.728 249.71-63.415 374.272-6.29 36.572-41.728 57.162-71.424 72.558-106.862 53.724-231.424 62.866-348.562 50.286-79.433-8.558-160.585-29.696-225.134-79.433-30.28-23.443-30.28-63.415-35.986-97.134-20.005-117.138-42.862-234.277-57.161-352.585 6.839-51.42 64.585-73.728 107.447-89.71 57.16-21.138 118.272-30.866 178.87-36.571 129.134-12.58 261.157-8.01 386.304 28.562 44.581 13.13 92.563 31.415 122.844 69.705 13.714 17.7 9.143 40.01 6.29 60.014z"}));nu.displayName="BitbucketIcon";const ru=()=>f(Oe,{name:"source"},()=>f("path",{d:"M601.92 475.2c0 76.428-8.91 83.754-28.512 99.594-14.652 11.88-43.956 14.058-78.012 16.434-18.81 1.386-40.392 2.97-62.172 6.534-18.612 2.97-36.432 9.306-53.064 17.424V299.772c37.818-21.978 63.36-62.766 63.36-109.692 0-69.894-56.826-126.72-126.72-126.72S190.08 120.186 190.08 190.08c0 46.926 25.542 87.714 63.36 109.692v414.216c-37.818 21.978-63.36 62.766-63.36 109.692 0 69.894 56.826 126.72 126.72 126.72s126.72-56.826 126.72-126.72c0-31.086-11.286-59.598-29.7-81.576 13.266-9.504 27.522-17.226 39.996-19.206 16.038-2.574 32.868-3.762 50.688-5.148 48.312-3.366 103.158-7.326 148.896-44.55 61.182-49.698 74.25-103.158 75.24-187.902V475.2h-126.72zM316.8 126.72c34.848 0 63.36 28.512 63.36 63.36s-28.512 63.36-63.36 63.36-63.36-28.512-63.36-63.36 28.512-63.36 63.36-63.36zm0 760.32c-34.848 0-63.36-28.512-63.36-63.36s28.512-63.36 63.36-63.36 63.36 28.512 63.36 63.36-28.512 63.36-63.36 63.36zM823.68 158.4h-95.04V63.36h-126.72v95.04h-95.04v126.72h95.04v95.04h126.72v-95.04h95.04z"}));ru.displayName="SourceIcon";const ou=(e,t)=>{let n=1;for(let r=0;r>6;return n+=n<<3,n^=n>>11,n%t},su=/#.*$/u,Q2=e=>{const t=su.exec(e);return t?t[0]:""},Pi=e=>decodeURI(e).replace(su,"").replace(/\/index\.html$/iu,"/").replace(/\.html$/iu,"").replace(/(README|index)?\.md$/iu,""),lu=(e,t)=>{if(!Lc(t))return!1;const n=Pi(e.path),r=Pi(t),o=Q2(t);return o?o===e.hash&&(!r||n===r):n===r},X2=e=>pn(e)?e:`https://github.com/${e}`,iu=e=>!pn(e)||/github\.com/.test(e)?"GitHub":/bitbucket\.org/.test(e)?"Bitbucket":/gitlab\.com/.test(e)?"GitLab":/gitee\.com/.test(e)?"Gitee":null;var Z2=e=>Object.prototype.toString.call(e)==="[object Object]",br=e=>typeof e=="string";const au=Array.isArray,Ri=e=>Z2(e)&&br(e.name),Mi=(e,t=!1)=>e?au(e)?e.map(n=>br(n)?{name:n}:Ri(n)?n:null).filter(n=>n!==null):br(e)?[{name:e}]:Ri(e)?[e]:(console.error(`Expect "author" to be \`AuthorInfo[] | AuthorInfo | string[] | string ${t?"":"| false"} | undefined\`, but got`,e),[]):[],cu=(e,t)=>{if(e){if(au(e)&&e.every(br))return e;if(br(e))return[e];console.error(`Expect ${t||"value"} to be \`string[] | string | undefined\`, but got`,e)}return[]},eh=e=>cu(e,"category"),th=e=>cu(e,"tag"),nh='',rh='';var oh={useBabel:!1,jsLib:[],cssLib:[],codepenLayout:"left",codepenEditors:"101",babel:"https://unpkg.com/@babel/standalone/babel.min.js",vue:"https://unpkg.com/vue/dist/vue.global.prod.js",react:"https://unpkg.com/react/umd/react.production.min.js",reactDOM:"https://unpkg.com/react-dom/umd/react-dom.production.min.js"};const Xo=oh,Ni={html:{types:["html","slim","haml","md","markdown","vue"],map:{html:"none",vue:"none",md:"markdown"}},js:{types:["js","javascript","coffee","coffeescript","ts","typescript","ls","livescript"],map:{js:"none",javascript:"none",coffee:"coffeescript",ls:"livescript",ts:"typescript"}},css:{types:["css","less","sass","scss","stylus","styl"],map:{css:"none",styl:"stylus"}}},sh=(e,t,n)=>{const r=document.createElement(e);return qn(t)&&gn(t).forEach(o=>{if(o.indexOf("data"))r[o]=t[o];else{const s=o.replace("data","");r.dataset[s]=t[o]}}),n&&n.forEach(o=>{r.appendChild(o)}),r},dl=e=>({...Xo,...e,jsLib:Array.from(new Set([...Xo.jsLib||[],...e.jsLib||[]])),cssLib:Array.from(new Set([...Xo.cssLib||[],...e.cssLib||[]]))}),Pn=(e,t)=>{if(Lc(e[t]))return e[t];const n=new Promise(r=>{var s;const o=document.createElement("script");o.src=t,(s=document.querySelector("body"))==null||s.appendChild(o),o.onload=()=>{r()}});return e[t]=n,n},lh=(e,t)=>{if(t.css&&Array.from(e.childNodes).every(n=>n.nodeName!=="STYLE")){const n=sh("style",{innerHTML:t.css});e.appendChild(n)}},ih=(e,t,n)=>{const r=n.getScript();if(r&&Array.from(t.childNodes).every(o=>o.nodeName!=="SCRIPT")){const o=document.createElement("script");o.appendChild(document.createTextNode(`{const document=window.document.querySelector('#${e} .vp-code-demo-display').shadowRoot; ${r}}`)),t.appendChild(o)}},ah=e=>{const t=gn(e),n={html:[],js:[],css:[],isLegal:!1};return["html","js","css"].forEach(r=>{const o=t.filter(s=>Ni[r].types.includes(s));if(o.length){const s=o[0];n[r]=[e[s].replace(/^\n|\n$/g,""),Ni[r].map[s]||s]}}),n.isLegal=(!n.html.length||n.html[1]==="none")&&(!n.js.length||n.js[1]==="none")&&(!n.css.length||n.css[1]==="none"),n},uu=e=>e.replace(/
/g,"
").replace(/<((\S+)[^<]*?)\s+\/>/g,"<$1>"),fu=e=>`
${uu(e)}
`,ch=e=>`${e.replace("export default ","const $reactApp = ").replace(/App\.__style__(\s*)=(\s*)`([\s\S]*)?`/,"")}; diff --git a/assets/basic_command.html-DABzYROY.js b/assets/basic_command.html-Dtru1TkJ.js similarity index 99% rename from assets/basic_command.html-DABzYROY.js rename to assets/basic_command.html-Dtru1TkJ.js index 09c0e97e..8c7298f0 100644 --- a/assets/basic_command.html-DABzYROY.js +++ b/assets/basic_command.html-Dtru1TkJ.js @@ -1 +1 @@ -import{_ as t,o as e,c as d,e as l}from"./app-vtLTGmS8.js";const n={},a=l('

基础插件


提示

参数<param>为必填参数,[option]为可选参数。

命令别名:配置了命令别名的命令可以使用别名代替原命令,例如npm install ~可以使用插件 安装 ~代替。

轻雪命令liteyuki_command

命令说明权限举例可用参数
reload-liteyuki重载轻雪超级用户
update-liteyuki更新轻雪超级用户
liteecho查看当前bot 版本超级用户
status查看统计信息和状态超级用户
config set <key> value添加配置项,若存在则会覆盖,输入值会被执行以转换为正确的类型,"10"和10是不一样的超级用户config set name 'liteyuki-bot'<key>: 若存在则覆盖, 若不存在则创建于config.yml ; value: yml格式的所有合法内容
config get [key] 查询配置项,不带key返回配置项列表,推荐私聊使用超级用户config get name<key>: 若存在则返回, 若不存在则返回空
switch-image-mode 在普通图片和Markdown大图之间切换,该功能需要commit:505468b及以后的Lagrange.OneBot,默认普通图片超级用户switch-image-mode
/api api_name [args] 调用机器人API超级用户/api get_group_member_list group_id=1234567<args>: 参数列表, 格式为onebot v11协议api, 可用%20代替空格
/function function_name [args] [kwargs] 调用机器人函数(.lyfunction语法)超级用户/function send_group_msg group_id=1234567 message='hello'<args><kwargs>: 参数列表, api格式为onebot v11协议api
group enable/disable [group_id]在群聊启用/停用机器人,group_id仅超级用户可用超级用户,群聊仅群主、管理员、超级用户可用group enable 1145141919810<group_id>: 群号
liteyuki-docs查看轻雪文档所有人

命令别名

命令别名
status状态
reload-liteyuki重启轻雪
update-liteyuki更新轻雪
reload-resources重载资源
config配置, set 设置 / get 查询
switch-image-mode切换图片模式
liteyuki-docs轻雪文档
group群聊, enable 启用 / disable 停用

插件/包管理器 liteyuki_pacman

  • 插件管理
命令说明权限
npm update更新插件商店索引超级用户
npm install <plugin_name>安装插件超级用户
npm uninstall <plugin_name>卸载插件超级用户
npm search <keywords...>通过关键词搜索插件超级用户
npm enable-global/disable-global <plugin_name>全局启用/停用插件超级用户
npm enable/disable <plugin_name> [--group <group_id>]当前会话启用/停用插件群聊仅群主、管理员、超级用户可用,私聊所有人可用
npm list [page] [num]列出所有插件 page为页数,num为每页显示数量群聊仅群主、管理员、超级用户可用,私聊所有人可用
help <plugin_name>查看插件帮助所有人
  • 资源包管理
命令说明权限
rpm list [page] [num]列出所有资源包 page为页数,num为每页显示数量超级用户
rpm load <pack_name>加载资源包超级用户
rpm unload <pack_name>卸载资源包超级用户
rpm change <pack_name>修改优先级超级用户
rpm reload重载所有资源包超级用户

命令别名

命令别名
npm插件管理
update更新
install安装
uninstall卸载
search搜索
enable启用
disable停用
enable-global全局启用
disable-global全局停用
rpm资源包
load加载
unload卸载
change更改
reload重载
list列表
help帮助

注意

受限于NoneBot2钩子函数的依赖注入参数,插件停用只能阻断传入响应,对于主动推送的插件不生效,请阅读插件主页的说明。


用户管理liteyuki_user

命令说明权限
profile查看用户信息菜单所有人
profile set <key> [value]设置用户信息或打开属性设置菜单所有人
profile get <key>获取用户信息所有人

###命令别名

命令别名
profile个人信息
set设置
get查询
',22),r=[a];function c(i,o){return e(),d("div",null,r)}const g=t(n,[["render",c],["__file","basic_command.html.vue"]]),y=JSON.parse('{"path":"/usage/basic_command.html","title":"基础命令","lang":"zh-CN","frontmatter":{"title":"基础命令","icon":"comment","order":1,"category":"使用手册","description":"基础插件 提示 参数:为必填参数,[option]为可选参数。 命令别名:配置了命令别名的命令可以使用别名代替原命令,例如npm install ~可以使用插件 安装 ~代替。 轻雪命令liteyuki_command 命令别名 插件/包管理器 liteyuki_pacman 插件管理 资源包管理 命令别名 注意 受限于NoneBot2钩...","head":[["meta",{"property":"og:url","content":"https://vuepress-theme-hope-docs-demo.netlify.app/usage/basic_command.html"}],["meta",{"property":"og:site_name","content":"LiteyukiBot 轻雪机器人"}],["meta",{"property":"og:title","content":"基础命令"}],["meta",{"property":"og:description","content":"基础插件 提示 参数:为必填参数,[option]为可选参数。 命令别名:配置了命令别名的命令可以使用别名代替原命令,例如npm install ~可以使用插件 安装 ~代替。 轻雪命令liteyuki_command 命令别名 插件/包管理器 liteyuki_pacman 插件管理 资源包管理 命令别名 注意 受限于NoneBot2钩..."}],["meta",{"property":"og:type","content":"article"}],["meta",{"property":"og:locale","content":"zh-CN"}],["meta",{"property":"og:updated_time","content":"2024-06-16T15:33:58.000Z"}],["meta",{"property":"article:author","content":"远野千束"}],["meta",{"property":"article:modified_time","content":"2024-06-16T15:33:58.000Z"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"Article\\",\\"headline\\":\\"基础命令\\",\\"image\\":[\\"\\"],\\"dateModified\\":\\"2024-06-16T15:33:58.000Z\\",\\"author\\":[{\\"@type\\":\\"Person\\",\\"name\\":\\"远野千束\\",\\"url\\":\\"https://sfkm.me\\"}]}"]]},"headers":[{"level":2,"title":"轻雪命令liteyuki_command","slug":"轻雪命令liteyuki-command","link":"#轻雪命令liteyuki-command","children":[{"level":3,"title":"命令别名","slug":"命令别名","link":"#命令别名","children":[]}]},{"level":2,"title":"插件/包管理器 liteyuki_pacman","slug":"插件-包管理器-liteyuki-pacman","link":"#插件-包管理器-liteyuki-pacman","children":[{"level":3,"title":"命令别名","slug":"命令别名-1","link":"#命令别名-1","children":[]}]},{"level":2,"title":"用户管理liteyuki_user","slug":"用户管理liteyuki-user","link":"#用户管理liteyuki-user","children":[]}],"git":{"createdTime":1711598703000,"updatedTime":1718552038000,"contributors":[{"name":"snowy","email":"snowykami@outlook.com","commits":20},{"name":"Snowykami","email":"79104275+snowykami@users.noreply.github.com","commits":4},{"name":"Nanaloveyuki","email":"miaomiao_159@outlook.com","commits":1}]},"readingTime":{"minutes":3.18,"words":953},"filePathRelative":"usage/basic_command.md","localizedDate":"2024年3月28日","autoDesc":true}');export{g as comp,y as data}; +import{_ as t,o as e,c as d,e as l}from"./app-BkuxgVc5.js";const n={},a=l('

基础插件


提示

参数<param>为必填参数,[option]为可选参数。

命令别名:配置了命令别名的命令可以使用别名代替原命令,例如npm install ~可以使用插件 安装 ~代替。

轻雪命令liteyuki_command

命令说明权限举例可用参数
reload-liteyuki重载轻雪超级用户
update-liteyuki更新轻雪超级用户
liteecho查看当前bot 版本超级用户
status查看统计信息和状态超级用户
config set <key> value添加配置项,若存在则会覆盖,输入值会被执行以转换为正确的类型,"10"和10是不一样的超级用户config set name 'liteyuki-bot'<key>: 若存在则覆盖, 若不存在则创建于config.yml ; value: yml格式的所有合法内容
config get [key] 查询配置项,不带key返回配置项列表,推荐私聊使用超级用户config get name<key>: 若存在则返回, 若不存在则返回空
switch-image-mode 在普通图片和Markdown大图之间切换,该功能需要commit:505468b及以后的Lagrange.OneBot,默认普通图片超级用户switch-image-mode
/api api_name [args] 调用机器人API超级用户/api get_group_member_list group_id=1234567<args>: 参数列表, 格式为onebot v11协议api, 可用%20代替空格
/function function_name [args] [kwargs] 调用机器人函数(.lyfunction语法)超级用户/function send_group_msg group_id=1234567 message='hello'<args><kwargs>: 参数列表, api格式为onebot v11协议api
group enable/disable [group_id]在群聊启用/停用机器人,group_id仅超级用户可用超级用户,群聊仅群主、管理员、超级用户可用group enable 1145141919810<group_id>: 群号
liteyuki-docs查看轻雪文档所有人

命令别名

命令别名
status状态
reload-liteyuki重启轻雪
update-liteyuki更新轻雪
reload-resources重载资源
config配置, set 设置 / get 查询
switch-image-mode切换图片模式
liteyuki-docs轻雪文档
group群聊, enable 启用 / disable 停用

插件/包管理器 liteyuki_pacman

  • 插件管理
命令说明权限
npm update更新插件商店索引超级用户
npm install <plugin_name>安装插件超级用户
npm uninstall <plugin_name>卸载插件超级用户
npm search <keywords...>通过关键词搜索插件超级用户
npm enable-global/disable-global <plugin_name>全局启用/停用插件超级用户
npm enable/disable <plugin_name> [--group <group_id>]当前会话启用/停用插件群聊仅群主、管理员、超级用户可用,私聊所有人可用
npm list [page] [num]列出所有插件 page为页数,num为每页显示数量群聊仅群主、管理员、超级用户可用,私聊所有人可用
help <plugin_name>查看插件帮助所有人
  • 资源包管理
命令说明权限
rpm list [page] [num]列出所有资源包 page为页数,num为每页显示数量超级用户
rpm load <pack_name>加载资源包超级用户
rpm unload <pack_name>卸载资源包超级用户
rpm change <pack_name>修改优先级超级用户
rpm reload重载所有资源包超级用户

命令别名

命令别名
npm插件管理
update更新
install安装
uninstall卸载
search搜索
enable启用
disable停用
enable-global全局启用
disable-global全局停用
rpm资源包
load加载
unload卸载
change更改
reload重载
list列表
help帮助

注意

受限于NoneBot2钩子函数的依赖注入参数,插件停用只能阻断传入响应,对于主动推送的插件不生效,请阅读插件主页的说明。


用户管理liteyuki_user

命令说明权限
profile查看用户信息菜单所有人
profile set <key> [value]设置用户信息或打开属性设置菜单所有人
profile get <key>获取用户信息所有人

###命令别名

命令别名
profile个人信息
set设置
get查询
',22),r=[a];function c(i,o){return e(),d("div",null,r)}const g=t(n,[["render",c],["__file","basic_command.html.vue"]]),y=JSON.parse('{"path":"/usage/basic_command.html","title":"基础命令","lang":"zh-CN","frontmatter":{"title":"基础命令","icon":"comment","order":1,"category":"使用手册","description":"基础插件 提示 参数:为必填参数,[option]为可选参数。 命令别名:配置了命令别名的命令可以使用别名代替原命令,例如npm install ~可以使用插件 安装 ~代替。 轻雪命令liteyuki_command 命令别名 插件/包管理器 liteyuki_pacman 插件管理 资源包管理 命令别名 注意 受限于NoneBot2钩...","head":[["meta",{"property":"og:url","content":"https://vuepress-theme-hope-docs-demo.netlify.app/usage/basic_command.html"}],["meta",{"property":"og:site_name","content":"LiteyukiBot 轻雪机器人"}],["meta",{"property":"og:title","content":"基础命令"}],["meta",{"property":"og:description","content":"基础插件 提示 参数:为必填参数,[option]为可选参数。 命令别名:配置了命令别名的命令可以使用别名代替原命令,例如npm install ~可以使用插件 安装 ~代替。 轻雪命令liteyuki_command 命令别名 插件/包管理器 liteyuki_pacman 插件管理 资源包管理 命令别名 注意 受限于NoneBot2钩..."}],["meta",{"property":"og:type","content":"article"}],["meta",{"property":"og:locale","content":"zh-CN"}],["meta",{"property":"og:updated_time","content":"2024-06-16T15:33:58.000Z"}],["meta",{"property":"article:author","content":"远野千束"}],["meta",{"property":"article:modified_time","content":"2024-06-16T15:33:58.000Z"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"Article\\",\\"headline\\":\\"基础命令\\",\\"image\\":[\\"\\"],\\"dateModified\\":\\"2024-06-16T15:33:58.000Z\\",\\"author\\":[{\\"@type\\":\\"Person\\",\\"name\\":\\"远野千束\\",\\"url\\":\\"https://sfkm.me\\"}]}"]]},"headers":[{"level":2,"title":"轻雪命令liteyuki_command","slug":"轻雪命令liteyuki-command","link":"#轻雪命令liteyuki-command","children":[{"level":3,"title":"命令别名","slug":"命令别名","link":"#命令别名","children":[]}]},{"level":2,"title":"插件/包管理器 liteyuki_pacman","slug":"插件-包管理器-liteyuki-pacman","link":"#插件-包管理器-liteyuki-pacman","children":[{"level":3,"title":"命令别名","slug":"命令别名-1","link":"#命令别名-1","children":[]}]},{"level":2,"title":"用户管理liteyuki_user","slug":"用户管理liteyuki-user","link":"#用户管理liteyuki-user","children":[]}],"git":{"createdTime":1711598703000,"updatedTime":1718552038000,"contributors":[{"name":"snowy","email":"snowykami@outlook.com","commits":20},{"name":"Snowykami","email":"79104275+snowykami@users.noreply.github.com","commits":4},{"name":"Nanaloveyuki","email":"miaomiao_159@outlook.com","commits":1}]},"readingTime":{"minutes":3.18,"words":953},"filePathRelative":"usage/basic_command.md","localizedDate":"2024年3月28日","autoDesc":true}');export{g as comp,y as data}; diff --git a/assets/childrensdaybak.html-BdrIgHqh.js b/assets/childrensdaybak.html-CkSvxI91.js similarity index 98% rename from assets/childrensdaybak.html-BdrIgHqh.js rename to assets/childrensdaybak.html-CkSvxI91.js index 75ea3376..fb4509c4 100644 --- a/assets/childrensdaybak.html-BdrIgHqh.js +++ b/assets/childrensdaybak.html-CkSvxI91.js @@ -1 +1 @@ -import{_ as t,o as e,c as i}from"./app-vtLTGmS8.js";const o={};function a(s,n){return e(),i("div")}const c=t(o,[["render",a],["__file","childrensdaybak.html.vue"]]),r=JSON.parse('{"path":"/childrensdaybak.html","title":"首页","lang":"zh-CN","frontmatter":{"home":true,"icon":"home","title":"首页","heroImage":"https://cdn.liteyuki.icu/static/img/logo.png","bgImage":null,"bgImageDark":null,"bgImageStyle":{"background-attachment":"fixed"},"heroText":"LiteyukiBot","tagline":"轻雪机器人,一个以轻量和简洁为设计理念基于Nonebot2的OneBot标准聊天机器人","actions":[{"text":"快速部署","icon":"lightbulb","link":"./deployment/install.html","type":"primary"},{"text":"使用手册","icon":"book","link":"./usage/basic_command.html"}],"highlights":[{"header":"简洁至上","image":"/assets/image/layout.svg","bgImage":"https://theme-hope-assets.vuejs.press/bg/2-light.svg","bgImageDark":"https://theme-hope-assets.vuejs.press/bg/2-dark.svg","bgImageStyle":{"background-repeat":"repeat","background-size":"initial"},"features":[{"title":"基于Nonebot2","icon":"robot","details":"拥有良好的生态支持","link":"https://nonebot.dev/"},{"title":"便捷插件管理","icon":"plug","details":"使用包管理器,无需命令行操作即可安装/卸载插件"},{"title":"人性化交互","icon":"mouse-pointer","details":"新的点击交互模式,拒绝手打指令"},{"title":"主题支持","icon":"paint-brush","details":"使用资源包对外观进行完全自定义","link":"https://bot.liteyuki.icu/usage/resource_pack.html"},{"title":"国际化","icon":"globe","details":"通过资源包支持多种语言","link":"https://baike.baidu.com/item/i18n/6771940"},{"title":"简易配置","icon":"cog","details":"无需繁琐前期过程,开箱即用","link":"https://bot.liteyuki.icu/deployment/config.html"},{"title":"高性能","icon":"tachometer-alt","details":"500个插件,3s内启动"},{"title":"滚动更新","icon":"cloud-download","details":"让你的机器人保持最新提交"},{"title":"开源","icon":"code","details":"项目遵循MIT协议开源,欢迎各位的贡献"}]},{"header":"快速部署","image":"/assets/image/box.svg","bgImage":"https://theme-hope-assets.vuejs.press/bg/3-light.svg","bgImageDark":"https://theme-hope-assets.vuejs.press/bg/3-dark.svg","highlights":[{"title":"安装 Git 和 Python3.10+"},{"title":"使用 git clone https://github.com/snowykami/LiteyukiBot 以克隆项目至本地。","details":"如果无法连接到GitHub,可以使用 git clone https://gitee.com/snowykami/LiteyukiBot。"},{"title":"使用 cd LiteyukiBot 切换到项目目录。"},{"title":"使用 pip install -r requirements.txt 安装项目依赖。","details":"如果你有多个 Python 环境,请使用 pythonx -m pip install -r requirements.txt。"},{"title":"使用 python main.py 启动项目。"}]}],"copyright":"© 2021-2024 SnowyKami All Rights Reserved","head":[["meta",{"property":"og:url","content":"https://vuepress-theme-hope-docs-demo.netlify.app/childrensdaybak.html"}],["meta",{"property":"og:site_name","content":"LiteyukiBot 轻雪机器人"}],["meta",{"property":"og:title","content":"首页"}],["meta",{"property":"og:type","content":"website"}],["meta",{"property":"og:locale","content":"zh-CN"}],["meta",{"property":"og:updated_time","content":"2024-06-01T07:01:04.000Z"}],["meta",{"property":"article:author","content":"远野千束"}],["meta",{"property":"article:modified_time","content":"2024-06-01T07:01:04.000Z"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"WebPage\\",\\"name\\":\\"首页\\"}"]]},"headers":[],"git":{"createdTime":1717225264000,"updatedTime":1717225264000,"contributors":[{"name":"snowy","email":"snowykami@outlook.com","commits":1}]},"readingTime":{"minutes":1.45,"words":435},"filePathRelative":"childrensdaybak.md","localizedDate":"2024年6月1日"}');export{c as comp,r as data}; +import{_ as t,o as e,c as i}from"./app-BkuxgVc5.js";const o={};function a(s,n){return e(),i("div")}const c=t(o,[["render",a],["__file","childrensdaybak.html.vue"]]),r=JSON.parse('{"path":"/childrensdaybak.html","title":"首页","lang":"zh-CN","frontmatter":{"home":true,"icon":"home","title":"首页","heroImage":"https://cdn.liteyuki.icu/static/img/logo.png","bgImage":null,"bgImageDark":null,"bgImageStyle":{"background-attachment":"fixed"},"heroText":"LiteyukiBot","tagline":"轻雪机器人,一个以轻量和简洁为设计理念基于Nonebot2的OneBot标准聊天机器人","actions":[{"text":"快速部署","icon":"lightbulb","link":"./deployment/install.html","type":"primary"},{"text":"使用手册","icon":"book","link":"./usage/basic_command.html"}],"highlights":[{"header":"简洁至上","image":"/assets/image/layout.svg","bgImage":"https://theme-hope-assets.vuejs.press/bg/2-light.svg","bgImageDark":"https://theme-hope-assets.vuejs.press/bg/2-dark.svg","bgImageStyle":{"background-repeat":"repeat","background-size":"initial"},"features":[{"title":"基于Nonebot2","icon":"robot","details":"拥有良好的生态支持","link":"https://nonebot.dev/"},{"title":"便捷插件管理","icon":"plug","details":"使用包管理器,无需命令行操作即可安装/卸载插件"},{"title":"人性化交互","icon":"mouse-pointer","details":"新的点击交互模式,拒绝手打指令"},{"title":"主题支持","icon":"paint-brush","details":"使用资源包对外观进行完全自定义","link":"https://bot.liteyuki.icu/usage/resource_pack.html"},{"title":"国际化","icon":"globe","details":"通过资源包支持多种语言","link":"https://baike.baidu.com/item/i18n/6771940"},{"title":"简易配置","icon":"cog","details":"无需繁琐前期过程,开箱即用","link":"https://bot.liteyuki.icu/deployment/config.html"},{"title":"高性能","icon":"tachometer-alt","details":"500个插件,3s内启动"},{"title":"滚动更新","icon":"cloud-download","details":"让你的机器人保持最新提交"},{"title":"开源","icon":"code","details":"项目遵循MIT协议开源,欢迎各位的贡献"}]},{"header":"快速部署","image":"/assets/image/box.svg","bgImage":"https://theme-hope-assets.vuejs.press/bg/3-light.svg","bgImageDark":"https://theme-hope-assets.vuejs.press/bg/3-dark.svg","highlights":[{"title":"安装 Git 和 Python3.10+"},{"title":"使用 git clone https://github.com/snowykami/LiteyukiBot 以克隆项目至本地。","details":"如果无法连接到GitHub,可以使用 git clone https://gitee.com/snowykami/LiteyukiBot。"},{"title":"使用 cd LiteyukiBot 切换到项目目录。"},{"title":"使用 pip install -r requirements.txt 安装项目依赖。","details":"如果你有多个 Python 环境,请使用 pythonx -m pip install -r requirements.txt。"},{"title":"使用 python main.py 启动项目。"}]}],"copyright":"© 2021-2024 SnowyKami All Rights Reserved","head":[["meta",{"property":"og:url","content":"https://vuepress-theme-hope-docs-demo.netlify.app/childrensdaybak.html"}],["meta",{"property":"og:site_name","content":"LiteyukiBot 轻雪机器人"}],["meta",{"property":"og:title","content":"首页"}],["meta",{"property":"og:type","content":"website"}],["meta",{"property":"og:locale","content":"zh-CN"}],["meta",{"property":"og:updated_time","content":"2024-06-01T07:01:04.000Z"}],["meta",{"property":"article:author","content":"远野千束"}],["meta",{"property":"article:modified_time","content":"2024-06-01T07:01:04.000Z"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"WebPage\\",\\"name\\":\\"首页\\"}"]]},"headers":[],"git":{"createdTime":1717225264000,"updatedTime":1717225264000,"contributors":[{"name":"snowy","email":"snowykami@outlook.com","commits":1}]},"readingTime":{"minutes":1.45,"words":435},"filePathRelative":"childrensdaybak.md","localizedDate":"2024年6月1日"}');export{c as comp,r as data}; diff --git a/assets/config.html-bhDhsWaj.js b/assets/config.html-BRlatCwL.js similarity index 99% rename from assets/config.html-bhDhsWaj.js rename to assets/config.html-BRlatCwL.js index 4a376f4f..b7210963 100644 --- a/assets/config.html-bhDhsWaj.js +++ b/assets/config.html-BRlatCwL.js @@ -1,4 +1,4 @@ -import{_ as e,r as t,o,c,b as n,d as s,a as l,e as p}from"./app-vtLTGmS8.js";const i={},r=p(`

轻雪支持yamljsontoml作为配置文件,取决于你个人的喜好

首次运行后生成config.ymlconfig目录,你可修改配置项后重启轻雪,绝大多数情况下,你只需要修改superusersnickname字段即可

启动时会加载项目目录下config.yml/yaml/json/tomlconfig目录下的所有配置文件,你可在config目录下创建多个配置文件,轻雪会自动合并这些配置文件

基础配置项

nonebot:
+import{_ as e,r as t,o,c,b as n,d as s,a as l,e as p}from"./app-BkuxgVc5.js";const i={},r=p(`

轻雪支持yamljsontoml作为配置文件,取决于你个人的喜好

首次运行后生成config.ymlconfig目录,你可修改配置项后重启轻雪,绝大多数情况下,你只需要修改superusersnickname字段即可

启动时会加载项目目录下config.yml/yaml/json/tomlconfig目录下的所有配置文件,你可在config目录下创建多个配置文件,轻雪会自动合并这些配置文件

基础配置项

nonebot:
   # Nonebot机器人的配置,以前的最外层配置项仍可为Nonebot服务,但是部分内容会被覆盖,请尽快迁移
   command_start: [ "/", "" ] # 指令前缀,若没有""空命令头,请开启alconna_use_command_start保证alconna解析正常
   host: 127.0.0.1 # 监听地址,默认为本机,若要接收外部请求请填写0.0.0.0
diff --git a/assets/dev_comm.html-CYcL-ImH.js b/assets/dev_comm.html-DkIJ2c60.js
similarity index 99%
rename from assets/dev_comm.html-CYcL-ImH.js
rename to assets/dev_comm.html-DkIJ2c60.js
index adeaa7a1..14428d3b 100644
--- a/assets/dev_comm.html-CYcL-ImH.js
+++ b/assets/dev_comm.html-DkIJ2c60.js
@@ -1,4 +1,4 @@
-import{_ as n,o as s,c as a,e}from"./app-vtLTGmS8.js";const t={},p=e(`

简介

轻雪运行在主进程 MainProcess 里,其他插件框架进程是伴随的子进程,因此无法通过内存共享和直接对象传递的方式进行通信,轻雪提供了一个通道Channel用于跨进程通信,你可以通过Channel发送消息给其他进程,也可以监听其他进程的消息。

例如子进程接收到用户信息需要重启机器人,这时可以通过通道对主进程发送消息,主进程接收到消息后重启对应子进程。

快速开始

通道是全双工的,有两种接收模式,但一个通道只能使用一种,即被动模式和主动模式,被动模式由chan.on_receive()装饰回调函数实现,主动模式需调用chan.receive()实现

轻雪核心在创建子进程的同时会初始化两个通道,一个被动通道和一个主动通道,且通道标识为{process_name}-active{process_name}-passive,你可以通过get_channel函数获取通道对象,然后通过send方法发送消息

  • 在轻雪插件中

+import{_ as n,o as s,c as a,e}from"./app-BkuxgVc5.js";const t={},p=e(`

简介

轻雪运行在主进程 MainProcess 里,其他插件框架进程是伴随的子进程,因此无法通过内存共享和直接对象传递的方式进行通信,轻雪提供了一个通道Channel用于跨进程通信,你可以通过Channel发送消息给其他进程,也可以监听其他进程的消息。

例如子进程接收到用户信息需要重启机器人,这时可以通过通道对主进程发送消息,主进程接收到消息后重启对应子进程。

快速开始

通道是全双工的,有两种接收模式,但一个通道只能使用一种,即被动模式和主动模式,被动模式由chan.on_receive()装饰回调函数实现,主动模式需调用chan.receive()实现

轻雪核心在创建子进程的同时会初始化两个通道,一个被动通道和一个主动通道,且通道标识为{process_name}-active{process_name}-passive,你可以通过get_channel函数获取通道对象,然后通过send方法发送消息

  • 在轻雪插件中

 import asyncio
 
 from liteyuki.comm import get_channel, Channel
diff --git a/assets/dev_lyfunc.html-Bx5TK3wE.js b/assets/dev_lyfunc.html-ZXTuo3sT.js
similarity index 99%
rename from assets/dev_lyfunc.html-Bx5TK3wE.js
rename to assets/dev_lyfunc.html-ZXTuo3sT.js
index 22ae22e3..178fd508 100644
--- a/assets/dev_lyfunc.html-Bx5TK3wE.js
+++ b/assets/dev_lyfunc.html-ZXTuo3sT.js
@@ -1,4 +1,4 @@
-import{_ as t,r as o,o as i,c as l,b as n,d as e,a,e as c}from"./app-vtLTGmS8.js";const p={},r=c(`

轻雪函数

轻雪函数 Liteyuki Function 是轻雪的一个功能,它允许你在轻雪中运行一些自定义的由数据驱动的命令,类似于Minecraft的mcfunction,属于资源包的一部分,但需单独起篇幅.

函数文件

函数文件放在资源包的functions目录下,文件名以.mcfunction .lyfunction .lyf结尾,例如test.mcfunction,文件内容为一系列的命令,每行一个命令,支持单行注释#(编辑时的语法高亮可采取shell格式),例如:

# 在发信器输出"hello world"
+import{_ as t,r as o,o as i,c as l,b as n,d as e,a,e as c}from"./app-BkuxgVc5.js";const p={},r=c(`

轻雪函数

轻雪函数 Liteyuki Function 是轻雪的一个功能,它允许你在轻雪中运行一些自定义的由数据驱动的命令,类似于Minecraft的mcfunction,属于资源包的一部分,但需单独起篇幅.

函数文件

函数文件放在资源包的functions目录下,文件名以.mcfunction .lyfunction .lyf结尾,例如test.mcfunction,文件内容为一系列的命令,每行一个命令,支持单行注释#(编辑时的语法高亮可采取shell格式),例如:

# 在发信器输出"hello world"
 cmd echo hello world
 
 # 如果你想同时输出多行内容可以尝试换行符(Python格式)
diff --git a/assets/dev_lyplugin.html-M1bHU_KB.js b/assets/dev_lyplugin.html-DZ7aZZfD.js
similarity index 99%
rename from assets/dev_lyplugin.html-M1bHU_KB.js
rename to assets/dev_lyplugin.html-DZ7aZZfD.js
index c6f7bbae..cfd6d957 100644
--- a/assets/dev_lyplugin.html-M1bHU_KB.js
+++ b/assets/dev_lyplugin.html-DZ7aZZfD.js
@@ -1,4 +1,4 @@
-import{_ as n,o as s,c as a,e}from"./app-vtLTGmS8.js";const t={},o=e(`

简介

轻雪插件是轻雪内置的一部分功能,运行在主进程中,可以很高程度地扩展轻雪的功能

开始

创建插件

在标准项目中,位于liteyuki/plugins和src/liteyuki_plugins下的Python modules均会被当作插件加载,你可自行添加配置文件以指定插件的加载路径 一个.py文件或一个包含__init__.py的文件夹即可被识别为插件 创建一个文件夹,例如watchdog_plugin,并在其中创建一个__init__.py文件,即可创建一个插件

from liteyuki.plugin import PluginMetadata
+import{_ as n,o as s,c as a,e}from"./app-BkuxgVc5.js";const t={},o=e(`

简介

轻雪插件是轻雪内置的一部分功能,运行在主进程中,可以很高程度地扩展轻雪的功能

开始

创建插件

在标准项目中,位于liteyuki/plugins和src/liteyuki_plugins下的Python modules均会被当作插件加载,你可自行添加配置文件以指定插件的加载路径 一个.py文件或一个包含__init__.py的文件夹即可被识别为插件 创建一个文件夹,例如watchdog_plugin,并在其中创建一个__init__.py文件,即可创建一个插件

from liteyuki.plugin import PluginMetadata
 
 # 定义插件元数据,推荐填写
 __plugin_meta__ = PluginMetadata(
diff --git a/assets/dev_resource_pack.html-DpVu_Rgm.js b/assets/dev_resource_pack.html-Cw0aKLyZ.js
similarity index 99%
rename from assets/dev_resource_pack.html-DpVu_Rgm.js
rename to assets/dev_resource_pack.html-Cw0aKLyZ.js
index f4997861..276d7c15 100644
--- a/assets/dev_resource_pack.html-DpVu_Rgm.js
+++ b/assets/dev_resource_pack.html-Cw0aKLyZ.js
@@ -1,4 +1,4 @@
-import{_ as a,r as s,o as l,c as i,b as e,a as o,w as c,d as t,e as d}from"./app-vtLTGmS8.js";const r={},p=e("h2",{id:"简介",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#简介"},[e("span",null,"简介")])],-1),u=e("p",null,"资源包,亦可根据用途称为主题包、字体包、语言包等,它允许你一定程度上自定义轻雪的外观,并且不用修改源代码",-1),m=e("li",null,[t("资源包的制作很简单,如果你接触过"),e("code",null,"Minecraft"),t("的资源包,那么你能够很快就上手,仅需按照原有路径进行文件替换即可,讲起打包成一个新的资源包。")],-1),h=e("li",null,[t("部分内容制作需要一点点前端基础,例如"),e("code",null,"html"),t(","),e("code",null,"css")],-1),v=e("li",null,[t("轻雪原版资源包请查看"),e("code",null,"LiteyukiBot/liteyuki/resources"),t(",可以在此基础上进行修改")],-1),_=e("li",null,"欢迎各位投稿资源包到轻雪资源商店",-1),k=d(`

请注意,主题包中的html渲染使用Js来规定数据的渲染位置,请确保您所编写的html代码能被Bot解析,否则会导致渲染失败或渲染结果不理想/异常/错位等无法预料的事情发生。推荐在编写html时同时更改对应Js代码,以避免出现无法预料的问题。


加载资源包

  • 资源包通常是以.zip格式压缩的,只需要将其解压到根目录resources目录下即可,注意不要嵌套文件夹,正常的路径应该是这样的
main.py
+import{_ as a,r as s,o as l,c as i,b as e,a as o,w as c,d as t,e as d}from"./app-BkuxgVc5.js";const r={},p=e("h2",{id:"简介",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#简介"},[e("span",null,"简介")])],-1),u=e("p",null,"资源包,亦可根据用途称为主题包、字体包、语言包等,它允许你一定程度上自定义轻雪的外观,并且不用修改源代码",-1),m=e("li",null,[t("资源包的制作很简单,如果你接触过"),e("code",null,"Minecraft"),t("的资源包,那么你能够很快就上手,仅需按照原有路径进行文件替换即可,讲起打包成一个新的资源包。")],-1),h=e("li",null,[t("部分内容制作需要一点点前端基础,例如"),e("code",null,"html"),t(","),e("code",null,"css")],-1),v=e("li",null,[t("轻雪原版资源包请查看"),e("code",null,"LiteyukiBot/liteyuki/resources"),t(",可以在此基础上进行修改")],-1),_=e("li",null,"欢迎各位投稿资源包到轻雪资源商店",-1),k=d(`

请注意,主题包中的html渲染使用Js来规定数据的渲染位置,请确保您所编写的html代码能被Bot解析,否则会导致渲染失败或渲染结果不理想/异常/错位等无法预料的事情发生。推荐在编写html时同时更改对应Js代码,以避免出现无法预料的问题。


加载资源包

  • 资源包通常是以.zip格式压缩的,只需要将其解压到根目录resources目录下即可,注意不要嵌套文件夹,正常的路径应该是这样的
main.py
 resources
 └─resource_pack_1
     ├─metadata.yml
diff --git a/assets/extra_command.html-B8dau8xy.js b/assets/extra_command.html-CYZjn-Y2.js
similarity index 99%
rename from assets/extra_command.html-B8dau8xy.js
rename to assets/extra_command.html-CYZjn-Y2.js
index 84590008..a90e2fa7 100644
--- a/assets/extra_command.html-B8dau8xy.js
+++ b/assets/extra_command.html-CYZjn-Y2.js
@@ -1,4 +1,4 @@
-import{_ as t,o as e,c as a,e as n}from"./app-vtLTGmS8.js";const s={},r=n(`

功能插件命令

轻雪天气liteyuki_weather

查询实时天气,支持绑定城市,支持中英文城市名,支持多个关键词查询。

配置项

weather_key: "" # 和风天气的天气key,会自动判断key版本
+import{_ as t,o as e,c as a,e as n}from"./app-BkuxgVc5.js";const s={},r=n(`

功能插件命令

轻雪天气liteyuki_weather

查询实时天气,支持绑定城市,支持中英文城市名,支持多个关键词查询。

配置项

weather_key: "" # 和风天气的天气key,会自动判断key版本
 

命令

weather <keywords...> # Keywords为城市名,支持中英文
 

查询目标地实时天气,例如:"天气 北京 海淀", "weather Tokyo Shinjuku"

bind-city <keywords...> # Keywords为城市名,支持中英文
 

绑定查询城市,个人全局生效

命令别名

命令别名
weather天气
bind-city绑定城市

统计信息liteyuki_statistics

统计信息 命令

statistic message --duration <duration> --period <period> --group [current|group_id] --bot [current|bot_id]
diff --git a/assets/fandq.html--AwShmo4.js b/assets/fandq.html-BRPDWQC6.js
similarity index 99%
rename from assets/fandq.html--AwShmo4.js
rename to assets/fandq.html-BRPDWQC6.js
index cc5c7e0c..ff2d4687 100644
--- a/assets/fandq.html--AwShmo4.js
+++ b/assets/fandq.html-BRPDWQC6.js
@@ -1 +1 @@
-import{_ as r,r as l,o as a,c as i,b as e,d as t,a as n,e as c}from"./app-vtLTGmS8.js";const s={},p=e("h2",{id:"常见问题",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#常见问题"},[e("span",null,[e("strong",null,"常见问题")])])],-1),h=c("
  • 设备上Python环境太乱了,pip和python不对应怎么办?

    • 请使用/path/to/python -m pip install -r requirements.txt来安装依赖, 然后用/path/to/python main.py来启动Bot, 其中/path/to/python是你要用来运行Bot的可执行文件
  • 为什么我启动后机器人没有反应?

    • 请检查配置文件的command_startsuperusers,确认你有权限使用命令并按照正确的命令发送
    • 确认命令头没有和nickname{}冲突,例如一个命令是help,但是Bot昵称有一个help,那么将会被解析为nickname而不是命令
  • 更新轻雪失败,报错InvalidGitRepositoryError

    • 请正确安装Git,并使用克隆而非直接下载的方式部署轻雪
  • 怎么登录聊天平台,例如QQ?

    • 你有这个问题说明你不是很了解这个项目,本项目不负责实现登录功能,只负责处理和回应消息,登录功能由实现端(协议端)提供, 实现端本身不负责处理响应逻辑,将消息按照OneBot标准处理好上报给轻雪 你需要使用Onebot标准的实现端来连接到轻雪并将消息上报给轻雪,下面已经列出一些推荐的实现端
  • Playwright安装失败

    • 输入playwright install安装浏览器
  • 有的插件安装后报错无法启动

    • 请先查阅插件文档,确认插件必要配置项完好后,仍然出现问题,请联系插件作者或在安全模式safe_mode: true下启动轻雪,在安全模式下你可以使用npm uninstall卸载问题插件
  • ",6),d=e("h2",{id:"其他问题",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#其他问题"},[e("span",null,"其他问题")])],-1),u={href:"http://qm.qq.com/cgi-bin/qm/qr?_wv=1027&k=SzmDYbfR6jY94o9KFNon7AwelRyI6M_u&authKey=ygeBdEmdFNyCWuNR4w0M1M8%2B5oDg7k%2FDfN0tzBkYcnbB%2FGHNnlVEnCIGbdftsnn7&noverify=0&group_code=775840726",target:"_blank",rel:"noopener noreferrer"},m=e("h2",{id:"推荐方案-qq",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#推荐方案-qq"},[e("span",null,[e("strong",null,"推荐方案(QQ)")])])],-1),_={href:"https://github.com/KonataDev/Lagrange.Core",target:"_blank",rel:"noopener noreferrer"},g={href:"https://github.com/LLOneBot/LLOneBot",target:"_blank",rel:"noopener noreferrer"},f={href:"https://github.com/whitechi73/OpenShamrock",target:"_blank",rel:"noopener noreferrer"},y={href:"https://github.com/TimeRainStarSky/Yunzai",target:"_blank",rel:"noopener noreferrer"},b=e("code",null,"node.js",-1),k=e("code",null,"ws-plugin",-1),B={href:"https://github.com/Mrs4s/go-cqhttp",target:"_blank",rel:"noopener noreferrer"},q=e("code",null,"go",-1),O={href:"https://github.com/Hoshinonyaruko/Gensokyo",target:"_blank",rel:"noopener noreferrer"},Q=e("li",null,[t("人工实现的"),e("code",null,"Onebot"),t("协议,自己整一个WebSocket客户端,看着QQ的消息,然后给轻雪传输数据")],-1),x=e("h2",{id:"推荐方案-minecraft",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#推荐方案-minecraft"},[e("span",null,[e("strong",null,"推荐方案(Minecraft)")])])],-1),M={href:"https://github.com/snowykami/MinecraftOnebot",target:"_blank",rel:"noopener noreferrer"},N=e("p",null,"使用其他项目连接请先自行查阅文档,若有困难请联系对应开发者而不是Liteyuki的开发者",-1),v=e("h2",{id:"鸣谢",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#鸣谢"},[e("span",null,[e("strong",null,"鸣谢")])])],-1),w={href:"https://nonebot.dev",target:"_blank",rel:"noopener noreferrer"},L={href:"https://github.com/kexue-z/nonebot-plugin-htmlrender/tree/master",target:"_blank",rel:"noopener noreferrer"},S={href:"https://github.com/ArcletProject/nonebot-plugin-alconna",target:"_blank",rel:"noopener noreferrer"},T={href:"https://hyperos.mi.com/font/zh/",target:"_blank",rel:"noopener noreferrer"},z={href:"https://gitee.com/mirrors/Maple-Mono",target:"_blank",rel:"noopener noreferrer"};function G(P,R){const o=l("ExternalLinkIcon");return a(),i("div",null,[p,e("ul",null,[h,e("li",null,[d,e("p",null,[t("加入QQ群"),e("a",u,[t("775840726"),n(o)])])])]),m,e("ol",null,[e("li",null,[e("a",_,[t("Lagrange.OneBot"),n(o)]),t(",基于NTQQ的OneBot实现,目前Markdown消息支持Lagrange")]),e("li",null,[e("a",g,[t("LLOneBot"),n(o)]),t(",NTQQ的OneBot插件,需要安装NTQQ")]),e("li",null,[e("a",f,[t("OpenShamrock"),n(o)]),t(",基于Lsposed的OneBot11实现")]),e("li",null,[e("a",y,[t("TRSS-Yunzai"),n(o)]),t(",基于"),b,t(",可使用"),k,t("进行通信")]),e("li",null,[e("a",B,[t("go-cqhttp"),n(o)]),t(","),q,t("语言实现的OneBot11实现端,目前可用性较低")]),e("li",null,[e("a",O,[t("Gensokyo"),n(o)]),t(",基于 OneBot QQ官方机器人Api Golang 原生实现,需要官方机器人权限")]),Q]),x,e("ol",null,[e("li",null,[e("a",M,[t("MinecraftOneBot"),n(o)]),t(",我们专门为Minecraft开发的服务器Bot,支持OneBotV11标准")])]),N,v,e("ul",null,[e("li",null,[e("a",w,[t("Nonebot2"),n(o)]),t("提供的框架支持")]),e("li",null,[e("a",L,[t("nonebot-plugin-htmlrender"),n(o)]),t("提供的渲染功能")]),e("li",null,[e("a",S,[t("nonebot-plugin-alconna"),n(o)]),t("提供的命令解析功能")]),e("li",null,[e("a",T,[t("MiSans"),n(o)]),t(","),e("a",z,[t("MapleMono"),n(o)]),t("提供的字体,且遵守了相关字体开源协议")])])])}const D=r(s,[["render",G],["__file","fandq.html.vue"]]),E=JSON.parse('{"path":"/deployment/fandq.html","title":"答疑","lang":"zh-CN","frontmatter":{"title":"答疑","icon":"question","order":3,"category":"使用指南","tag":["配置","部署"],"description":"常见问题 设备上Python环境太乱了,pip和python不对应怎么办? 请使用/path/to/python -m pip install -r requirements.txt来安装依赖, 然后用/path/to/python main.py来启动Bot, 其中/path/to/python是你要用来运行Bot的可执行文件 为什么我启动后机器人没...","head":[["meta",{"property":"og:url","content":"https://vuepress-theme-hope-docs-demo.netlify.app/deployment/fandq.html"}],["meta",{"property":"og:site_name","content":"LiteyukiBot 轻雪机器人"}],["meta",{"property":"og:title","content":"答疑"}],["meta",{"property":"og:description","content":"常见问题 设备上Python环境太乱了,pip和python不对应怎么办? 请使用/path/to/python -m pip install -r requirements.txt来安装依赖, 然后用/path/to/python main.py来启动Bot, 其中/path/to/python是你要用来运行Bot的可执行文件 为什么我启动后机器人没..."}],["meta",{"property":"og:type","content":"article"}],["meta",{"property":"og:locale","content":"zh-CN"}],["meta",{"property":"og:updated_time","content":"2024-04-23T16:23:05.000Z"}],["meta",{"property":"article:author","content":"远野千束"}],["meta",{"property":"article:tag","content":"配置"}],["meta",{"property":"article:tag","content":"部署"}],["meta",{"property":"article:modified_time","content":"2024-04-23T16:23:05.000Z"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"Article\\",\\"headline\\":\\"答疑\\",\\"image\\":[\\"\\"],\\"dateModified\\":\\"2024-04-23T16:23:05.000Z\\",\\"author\\":[{\\"@type\\":\\"Person\\",\\"name\\":\\"远野千束\\",\\"url\\":\\"https://sfkm.me\\"}]}"]]},"headers":[{"level":2,"title":"常见问题","slug":"常见问题","link":"#常见问题","children":[]},{"level":2,"title":"推荐方案(QQ)","slug":"推荐方案-qq","link":"#推荐方案-qq","children":[]},{"level":2,"title":"推荐方案(Minecraft)","slug":"推荐方案-minecraft","link":"#推荐方案-minecraft","children":[]},{"level":2,"title":"鸣谢","slug":"鸣谢","link":"#鸣谢","children":[]}],"git":{"createdTime":1711695504000,"updatedTime":1713889385000,"contributors":[{"name":"snowy","email":"snowykami@outlook.com","commits":10},{"name":"Snowykami","email":"79104275+snowykami@users.noreply.github.com","commits":1}]},"readingTime":{"minutes":2.44,"words":731},"filePathRelative":"deployment/fandq.md","localizedDate":"2024年3月29日","autoDesc":true}');export{D as comp,E as data}; +import{_ as r,r as l,o as a,c as i,b as e,d as t,a as n,e as c}from"./app-BkuxgVc5.js";const s={},p=e("h2",{id:"常见问题",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#常见问题"},[e("span",null,[e("strong",null,"常见问题")])])],-1),h=c("
  • 设备上Python环境太乱了,pip和python不对应怎么办?

    • 请使用/path/to/python -m pip install -r requirements.txt来安装依赖, 然后用/path/to/python main.py来启动Bot, 其中/path/to/python是你要用来运行Bot的可执行文件
  • 为什么我启动后机器人没有反应?

    • 请检查配置文件的command_startsuperusers,确认你有权限使用命令并按照正确的命令发送
    • 确认命令头没有和nickname{}冲突,例如一个命令是help,但是Bot昵称有一个help,那么将会被解析为nickname而不是命令
  • 更新轻雪失败,报错InvalidGitRepositoryError

    • 请正确安装Git,并使用克隆而非直接下载的方式部署轻雪
  • 怎么登录聊天平台,例如QQ?

    • 你有这个问题说明你不是很了解这个项目,本项目不负责实现登录功能,只负责处理和回应消息,登录功能由实现端(协议端)提供, 实现端本身不负责处理响应逻辑,将消息按照OneBot标准处理好上报给轻雪 你需要使用Onebot标准的实现端来连接到轻雪并将消息上报给轻雪,下面已经列出一些推荐的实现端
  • Playwright安装失败

    • 输入playwright install安装浏览器
  • 有的插件安装后报错无法启动

    • 请先查阅插件文档,确认插件必要配置项完好后,仍然出现问题,请联系插件作者或在安全模式safe_mode: true下启动轻雪,在安全模式下你可以使用npm uninstall卸载问题插件
  • ",6),d=e("h2",{id:"其他问题",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#其他问题"},[e("span",null,"其他问题")])],-1),u={href:"http://qm.qq.com/cgi-bin/qm/qr?_wv=1027&k=SzmDYbfR6jY94o9KFNon7AwelRyI6M_u&authKey=ygeBdEmdFNyCWuNR4w0M1M8%2B5oDg7k%2FDfN0tzBkYcnbB%2FGHNnlVEnCIGbdftsnn7&noverify=0&group_code=775840726",target:"_blank",rel:"noopener noreferrer"},m=e("h2",{id:"推荐方案-qq",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#推荐方案-qq"},[e("span",null,[e("strong",null,"推荐方案(QQ)")])])],-1),_={href:"https://github.com/KonataDev/Lagrange.Core",target:"_blank",rel:"noopener noreferrer"},g={href:"https://github.com/LLOneBot/LLOneBot",target:"_blank",rel:"noopener noreferrer"},f={href:"https://github.com/whitechi73/OpenShamrock",target:"_blank",rel:"noopener noreferrer"},y={href:"https://github.com/TimeRainStarSky/Yunzai",target:"_blank",rel:"noopener noreferrer"},b=e("code",null,"node.js",-1),k=e("code",null,"ws-plugin",-1),B={href:"https://github.com/Mrs4s/go-cqhttp",target:"_blank",rel:"noopener noreferrer"},q=e("code",null,"go",-1),O={href:"https://github.com/Hoshinonyaruko/Gensokyo",target:"_blank",rel:"noopener noreferrer"},Q=e("li",null,[t("人工实现的"),e("code",null,"Onebot"),t("协议,自己整一个WebSocket客户端,看着QQ的消息,然后给轻雪传输数据")],-1),x=e("h2",{id:"推荐方案-minecraft",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#推荐方案-minecraft"},[e("span",null,[e("strong",null,"推荐方案(Minecraft)")])])],-1),M={href:"https://github.com/snowykami/MinecraftOnebot",target:"_blank",rel:"noopener noreferrer"},N=e("p",null,"使用其他项目连接请先自行查阅文档,若有困难请联系对应开发者而不是Liteyuki的开发者",-1),v=e("h2",{id:"鸣谢",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#鸣谢"},[e("span",null,[e("strong",null,"鸣谢")])])],-1),w={href:"https://nonebot.dev",target:"_blank",rel:"noopener noreferrer"},L={href:"https://github.com/kexue-z/nonebot-plugin-htmlrender/tree/master",target:"_blank",rel:"noopener noreferrer"},S={href:"https://github.com/ArcletProject/nonebot-plugin-alconna",target:"_blank",rel:"noopener noreferrer"},T={href:"https://hyperos.mi.com/font/zh/",target:"_blank",rel:"noopener noreferrer"},z={href:"https://gitee.com/mirrors/Maple-Mono",target:"_blank",rel:"noopener noreferrer"};function G(P,R){const o=l("ExternalLinkIcon");return a(),i("div",null,[p,e("ul",null,[h,e("li",null,[d,e("p",null,[t("加入QQ群"),e("a",u,[t("775840726"),n(o)])])])]),m,e("ol",null,[e("li",null,[e("a",_,[t("Lagrange.OneBot"),n(o)]),t(",基于NTQQ的OneBot实现,目前Markdown消息支持Lagrange")]),e("li",null,[e("a",g,[t("LLOneBot"),n(o)]),t(",NTQQ的OneBot插件,需要安装NTQQ")]),e("li",null,[e("a",f,[t("OpenShamrock"),n(o)]),t(",基于Lsposed的OneBot11实现")]),e("li",null,[e("a",y,[t("TRSS-Yunzai"),n(o)]),t(",基于"),b,t(",可使用"),k,t("进行通信")]),e("li",null,[e("a",B,[t("go-cqhttp"),n(o)]),t(","),q,t("语言实现的OneBot11实现端,目前可用性较低")]),e("li",null,[e("a",O,[t("Gensokyo"),n(o)]),t(",基于 OneBot QQ官方机器人Api Golang 原生实现,需要官方机器人权限")]),Q]),x,e("ol",null,[e("li",null,[e("a",M,[t("MinecraftOneBot"),n(o)]),t(",我们专门为Minecraft开发的服务器Bot,支持OneBotV11标准")])]),N,v,e("ul",null,[e("li",null,[e("a",w,[t("Nonebot2"),n(o)]),t("提供的框架支持")]),e("li",null,[e("a",L,[t("nonebot-plugin-htmlrender"),n(o)]),t("提供的渲染功能")]),e("li",null,[e("a",S,[t("nonebot-plugin-alconna"),n(o)]),t("提供的命令解析功能")]),e("li",null,[e("a",T,[t("MiSans"),n(o)]),t(","),e("a",z,[t("MapleMono"),n(o)]),t("提供的字体,且遵守了相关字体开源协议")])])])}const D=r(s,[["render",G],["__file","fandq.html.vue"]]),E=JSON.parse('{"path":"/deployment/fandq.html","title":"答疑","lang":"zh-CN","frontmatter":{"title":"答疑","icon":"question","order":3,"category":"使用指南","tag":["配置","部署"],"description":"常见问题 设备上Python环境太乱了,pip和python不对应怎么办? 请使用/path/to/python -m pip install -r requirements.txt来安装依赖, 然后用/path/to/python main.py来启动Bot, 其中/path/to/python是你要用来运行Bot的可执行文件 为什么我启动后机器人没...","head":[["meta",{"property":"og:url","content":"https://vuepress-theme-hope-docs-demo.netlify.app/deployment/fandq.html"}],["meta",{"property":"og:site_name","content":"LiteyukiBot 轻雪机器人"}],["meta",{"property":"og:title","content":"答疑"}],["meta",{"property":"og:description","content":"常见问题 设备上Python环境太乱了,pip和python不对应怎么办? 请使用/path/to/python -m pip install -r requirements.txt来安装依赖, 然后用/path/to/python main.py来启动Bot, 其中/path/to/python是你要用来运行Bot的可执行文件 为什么我启动后机器人没..."}],["meta",{"property":"og:type","content":"article"}],["meta",{"property":"og:locale","content":"zh-CN"}],["meta",{"property":"og:updated_time","content":"2024-04-23T16:23:05.000Z"}],["meta",{"property":"article:author","content":"远野千束"}],["meta",{"property":"article:tag","content":"配置"}],["meta",{"property":"article:tag","content":"部署"}],["meta",{"property":"article:modified_time","content":"2024-04-23T16:23:05.000Z"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"Article\\",\\"headline\\":\\"答疑\\",\\"image\\":[\\"\\"],\\"dateModified\\":\\"2024-04-23T16:23:05.000Z\\",\\"author\\":[{\\"@type\\":\\"Person\\",\\"name\\":\\"远野千束\\",\\"url\\":\\"https://sfkm.me\\"}]}"]]},"headers":[{"level":2,"title":"常见问题","slug":"常见问题","link":"#常见问题","children":[]},{"level":2,"title":"推荐方案(QQ)","slug":"推荐方案-qq","link":"#推荐方案-qq","children":[]},{"level":2,"title":"推荐方案(Minecraft)","slug":"推荐方案-minecraft","link":"#推荐方案-minecraft","children":[]},{"level":2,"title":"鸣谢","slug":"鸣谢","link":"#鸣谢","children":[]}],"git":{"createdTime":1711695504000,"updatedTime":1713889385000,"contributors":[{"name":"snowy","email":"snowykami@outlook.com","commits":10},{"name":"Snowykami","email":"79104275+snowykami@users.noreply.github.com","commits":1}]},"readingTime":{"minutes":2.44,"words":731},"filePathRelative":"deployment/fandq.md","localizedDate":"2024年3月29日","autoDesc":true}');export{D as comp,E as data}; diff --git a/assets/foolsday.html-DWtAX3QW.js b/assets/foolsday.html-BKXkBvWO.js similarity index 98% rename from assets/foolsday.html-DWtAX3QW.js rename to assets/foolsday.html-BKXkBvWO.js index 8c5a6746..875eaf9d 100644 --- a/assets/foolsday.html-DWtAX3QW.js +++ b/assets/foolsday.html-BKXkBvWO.js @@ -1 +1 @@ -import{_ as t,o as e,c as o}from"./app-vtLTGmS8.js";const i={};function a(n,s){return e(),o("div")}const c=t(i,[["render",a],["__file","foolsday.html.vue"]]),m=JSON.parse('{"path":"/foolsday.html","title":"首页","lang":"zh-CN","frontmatter":{"home":true,"icon":"home","title":"首页","heroImage":"https://cdn.liteyuki.icu/static/img/lykwi.png","bgImage":null,"bgImageDark":null,"bgImageStyle":{"background-attachment":"fixed"},"heroText":"HeavylavaBot666","tagline":"重浆机器人,一个以笨重和复杂为设计理念基于Koishi114514的TwoBotv1919810标准聊天机器人,可用于雪地清扫,使用Typethon编写","actions":[{"text":"快速结束","icon":"lightbulb","link":"./deployment/install.html","type":"primary"},{"text":"奇怪的册子","icon":"book","link":"./usage/basic_command.html"}],"highlights":[{"header":"简洁至下","image":"/assets/image/layout.svg","bgImage":"https://theme-hope-assets.vuejs.press/bg/2-light.svg","bgImageDark":"https://theme-hope-assets.vuejs.press/bg/2-dark.svg","bgImageStyle":{"background-repeat":"repeat","background-size":"initial"},"features":[{"title":"基于Koishi.js233","icon":"robot","details":"拥有辣鸡的生态支持","link":"https://nonebot.dev/"},{"title":"盲目插件管理","icon":"plug","details":"基于nbshi使用xmpn和bib,让你无法安装/卸载插件"},{"title":"纯命令行","icon":"mouse-pointer","details":"老的掉牙的交互模式,必须手打指令"},{"title":"猪蹄支持","icon":"paint-brush","details":"支持多种烤猪蹄样式,丢弃烤箱,拥抱烧烤架,满足你的干饭需求"},{"title":"去国际化","icon":"globe","details":"支持多种语言,包括i18n部分语言和自行扩展的语言代码","link":"https://baike.baidu.com/item/i18n/6771940"},{"title":"超难配置","icon":"cog","details":"无需过多配置,开箱即用","link":"https://bot.liteyuki.icu/deployment/config.html"},{"title":"高占用","icon":"memory","details":"使用更多的意义不明的依赖和资源"},{"title":"一个Bot标准","icon":"link","details":"支持OneBotv11/12标准的四种通信协议","link":"https://onebot.dev/"},{"title":"Alconna","icon":"link","details":"使用Alconna实现低效命令解析","link":"https://github.com/nonebot/plugin-alconna"},{"title":"不准更新","icon":"cloud-download","details":"要更新自己写新版本去"},{"title":"服务支持","icon":"server","details":"内置重浆API,但随时可能提桶跑路"},{"title":"闭源","icon":"code","details":"要源代码自己逆向去"}]},{"header":"慢速部署","image":"/assets/image/box.svg","bgImage":"https://theme-hope-assets.vuejs.press/bg/3-light.svg","bgImageDark":"https://theme-hope-assets.vuejs.press/bg/3-dark.svg","highlights":[{"title":"安装 winget 和 nothing.js"},{"title":"使用 git clone https://github.com/snowykami/LiteyukiBot 以克隆项目至FTP。","details":"如果无法连接到PoonHub,可以使用 git clone https://gitee.com/snowykami/LiteyukiBot。"},{"title":"使用 cd LiteyukiBot 切换到项目目录。"},{"title":"使用 npm install -r requirements.txt 安装项目依赖。","details":"如果你有多个 nothing.js 环境,请使用 pythonx -m npm install -r requirements.txt。"},{"title":"使用 node main.py 启动项目。"}]}],"copyright":"© 2021-2024 SnowyKami All Rights Reserved","head":[["meta",{"property":"og:url","content":"https://vuepress-theme-hope-docs-demo.netlify.app/foolsday.html"}],["meta",{"property":"og:site_name","content":"LiteyukiBot 轻雪机器人"}],["meta",{"property":"og:title","content":"首页"}],["meta",{"property":"og:type","content":"website"}],["meta",{"property":"og:locale","content":"zh-CN"}],["meta",{"property":"og:updated_time","content":"2024-06-16T15:33:58.000Z"}],["meta",{"property":"article:author","content":"远野千束"}],["meta",{"property":"article:modified_time","content":"2024-06-16T15:33:58.000Z"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"WebPage\\",\\"name\\":\\"首页\\"}"]]},"headers":[],"git":{"createdTime":1711987288000,"updatedTime":1718552038000,"contributors":[{"name":"Nanaloveyuki","email":"miaomiao_159@outlook.com","commits":1},{"name":"snowy","email":"snowykami@outlook.com","commits":1}]},"readingTime":{"minutes":2.16,"words":649},"filePathRelative":"foolsday.md","localizedDate":"2024年4月1日"}');export{c as comp,m as data}; +import{_ as t,o as e,c as o}from"./app-BkuxgVc5.js";const i={};function a(n,s){return e(),o("div")}const c=t(i,[["render",a],["__file","foolsday.html.vue"]]),m=JSON.parse('{"path":"/foolsday.html","title":"首页","lang":"zh-CN","frontmatter":{"home":true,"icon":"home","title":"首页","heroImage":"https://cdn.liteyuki.icu/static/img/lykwi.png","bgImage":null,"bgImageDark":null,"bgImageStyle":{"background-attachment":"fixed"},"heroText":"HeavylavaBot666","tagline":"重浆机器人,一个以笨重和复杂为设计理念基于Koishi114514的TwoBotv1919810标准聊天机器人,可用于雪地清扫,使用Typethon编写","actions":[{"text":"快速结束","icon":"lightbulb","link":"./deployment/install.html","type":"primary"},{"text":"奇怪的册子","icon":"book","link":"./usage/basic_command.html"}],"highlights":[{"header":"简洁至下","image":"/assets/image/layout.svg","bgImage":"https://theme-hope-assets.vuejs.press/bg/2-light.svg","bgImageDark":"https://theme-hope-assets.vuejs.press/bg/2-dark.svg","bgImageStyle":{"background-repeat":"repeat","background-size":"initial"},"features":[{"title":"基于Koishi.js233","icon":"robot","details":"拥有辣鸡的生态支持","link":"https://nonebot.dev/"},{"title":"盲目插件管理","icon":"plug","details":"基于nbshi使用xmpn和bib,让你无法安装/卸载插件"},{"title":"纯命令行","icon":"mouse-pointer","details":"老的掉牙的交互模式,必须手打指令"},{"title":"猪蹄支持","icon":"paint-brush","details":"支持多种烤猪蹄样式,丢弃烤箱,拥抱烧烤架,满足你的干饭需求"},{"title":"去国际化","icon":"globe","details":"支持多种语言,包括i18n部分语言和自行扩展的语言代码","link":"https://baike.baidu.com/item/i18n/6771940"},{"title":"超难配置","icon":"cog","details":"无需过多配置,开箱即用","link":"https://bot.liteyuki.icu/deployment/config.html"},{"title":"高占用","icon":"memory","details":"使用更多的意义不明的依赖和资源"},{"title":"一个Bot标准","icon":"link","details":"支持OneBotv11/12标准的四种通信协议","link":"https://onebot.dev/"},{"title":"Alconna","icon":"link","details":"使用Alconna实现低效命令解析","link":"https://github.com/nonebot/plugin-alconna"},{"title":"不准更新","icon":"cloud-download","details":"要更新自己写新版本去"},{"title":"服务支持","icon":"server","details":"内置重浆API,但随时可能提桶跑路"},{"title":"闭源","icon":"code","details":"要源代码自己逆向去"}]},{"header":"慢速部署","image":"/assets/image/box.svg","bgImage":"https://theme-hope-assets.vuejs.press/bg/3-light.svg","bgImageDark":"https://theme-hope-assets.vuejs.press/bg/3-dark.svg","highlights":[{"title":"安装 winget 和 nothing.js"},{"title":"使用 git clone https://github.com/snowykami/LiteyukiBot 以克隆项目至FTP。","details":"如果无法连接到PoonHub,可以使用 git clone https://gitee.com/snowykami/LiteyukiBot。"},{"title":"使用 cd LiteyukiBot 切换到项目目录。"},{"title":"使用 npm install -r requirements.txt 安装项目依赖。","details":"如果你有多个 nothing.js 环境,请使用 pythonx -m npm install -r requirements.txt。"},{"title":"使用 node main.py 启动项目。"}]}],"copyright":"© 2021-2024 SnowyKami All Rights Reserved","head":[["meta",{"property":"og:url","content":"https://vuepress-theme-hope-docs-demo.netlify.app/foolsday.html"}],["meta",{"property":"og:site_name","content":"LiteyukiBot 轻雪机器人"}],["meta",{"property":"og:title","content":"首页"}],["meta",{"property":"og:type","content":"website"}],["meta",{"property":"og:locale","content":"zh-CN"}],["meta",{"property":"og:updated_time","content":"2024-06-16T15:33:58.000Z"}],["meta",{"property":"article:author","content":"远野千束"}],["meta",{"property":"article:modified_time","content":"2024-06-16T15:33:58.000Z"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"WebPage\\",\\"name\\":\\"首页\\"}"]]},"headers":[],"git":{"createdTime":1711987288000,"updatedTime":1718552038000,"contributors":[{"name":"Nanaloveyuki","email":"miaomiao_159@outlook.com","commits":1},{"name":"snowy","email":"snowykami@outlook.com","commits":1}]},"readingTime":{"minutes":2.16,"words":649},"filePathRelative":"foolsday.md","localizedDate":"2024年4月1日"}');export{c as comp,m as data}; diff --git a/assets/index.html-B5S9YaCl.js b/assets/index.html-Br50mtOA.js similarity index 95% rename from assets/index.html-B5S9YaCl.js rename to assets/index.html-Br50mtOA.js index 3805d92c..88343f57 100644 --- a/assets/index.html-B5S9YaCl.js +++ b/assets/index.html-Br50mtOA.js @@ -1 +1 @@ -import{_ as t,r as o,o as a,c as n,a as r}from"./app-vtLTGmS8.js";const c={};function i(p,m){const e=o("Catalog");return a(),n("div",null,[r(e)])}const l=t(c,[["render",i],["__file","index.html.vue"]]),d=JSON.parse('{"path":"/usage/","title":"使用手册","lang":"zh-CN","frontmatter":{"title":"使用手册","index":false,"icon":"laptop-code","category":"使用手册","head":[["meta",{"property":"og:url","content":"https://vuepress-theme-hope-docs-demo.netlify.app/usage/"}],["meta",{"property":"og:site_name","content":"LiteyukiBot 轻雪机器人"}],["meta",{"property":"og:title","content":"使用手册"}],["meta",{"property":"og:type","content":"article"}],["meta",{"property":"og:locale","content":"zh-CN"}],["meta",{"property":"og:updated_time","content":"2024-03-28T04:05:03.000Z"}],["meta",{"property":"article:author","content":"远野千束"}],["meta",{"property":"article:modified_time","content":"2024-03-28T04:05:03.000Z"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"Article\\",\\"headline\\":\\"使用手册\\",\\"image\\":[\\"\\"],\\"dateModified\\":\\"2024-03-28T04:05:03.000Z\\",\\"author\\":[{\\"@type\\":\\"Person\\",\\"name\\":\\"远野千束\\",\\"url\\":\\"https://sfkm.me\\"}]}"]]},"headers":[],"git":{"createdTime":1711589926000,"updatedTime":1711598703000,"contributors":[{"name":"snowy","email":"snowykami@outlook.com","commits":4}]},"readingTime":{"minutes":0.06,"words":17},"filePathRelative":"usage/README.md","localizedDate":"2024年3月28日"}');export{l as comp,d as data}; +import{_ as t,r as o,o as a,c as n,a as r}from"./app-BkuxgVc5.js";const c={};function i(p,m){const e=o("Catalog");return a(),n("div",null,[r(e)])}const l=t(c,[["render",i],["__file","index.html.vue"]]),d=JSON.parse('{"path":"/usage/","title":"使用手册","lang":"zh-CN","frontmatter":{"title":"使用手册","index":false,"icon":"laptop-code","category":"使用手册","head":[["meta",{"property":"og:url","content":"https://vuepress-theme-hope-docs-demo.netlify.app/usage/"}],["meta",{"property":"og:site_name","content":"LiteyukiBot 轻雪机器人"}],["meta",{"property":"og:title","content":"使用手册"}],["meta",{"property":"og:type","content":"article"}],["meta",{"property":"og:locale","content":"zh-CN"}],["meta",{"property":"og:updated_time","content":"2024-03-28T04:05:03.000Z"}],["meta",{"property":"article:author","content":"远野千束"}],["meta",{"property":"article:modified_time","content":"2024-03-28T04:05:03.000Z"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"Article\\",\\"headline\\":\\"使用手册\\",\\"image\\":[\\"\\"],\\"dateModified\\":\\"2024-03-28T04:05:03.000Z\\",\\"author\\":[{\\"@type\\":\\"Person\\",\\"name\\":\\"远野千束\\",\\"url\\":\\"https://sfkm.me\\"}]}"]]},"headers":[],"git":{"createdTime":1711589926000,"updatedTime":1711598703000,"contributors":[{"name":"snowy","email":"snowykami@outlook.com","commits":4}]},"readingTime":{"minutes":0.06,"words":17},"filePathRelative":"usage/README.md","localizedDate":"2024年3月28日"}');export{l as comp,d as data}; diff --git a/assets/index.html-kd9Zd-Nj.js b/assets/index.html-BzsNjEyV.js similarity index 95% rename from assets/index.html-kd9Zd-Nj.js rename to assets/index.html-BzsNjEyV.js index 7b0656a0..2ef56d9f 100644 --- a/assets/index.html-kd9Zd-Nj.js +++ b/assets/index.html-BzsNjEyV.js @@ -1 +1 @@ -import{_ as t,r as o,o as a,c as n,a as r}from"./app-vtLTGmS8.js";const p={};function c(i,m){const e=o("Catalog");return a(),n("div",null,[r(e)])}const s=t(p,[["render",c],["__file","index.html.vue"]]),d=JSON.parse('{"path":"/deployment/","title":"项目部署","lang":"zh-CN","frontmatter":{"title":"项目部署","index":false,"icon":"laptop-code","category":"部署","head":[["meta",{"property":"og:url","content":"https://vuepress-theme-hope-docs-demo.netlify.app/deployment/"}],["meta",{"property":"og:site_name","content":"LiteyukiBot 轻雪机器人"}],["meta",{"property":"og:title","content":"项目部署"}],["meta",{"property":"og:type","content":"article"}],["meta",{"property":"og:locale","content":"zh-CN"}],["meta",{"property":"og:updated_time","content":"2024-03-28T04:05:03.000Z"}],["meta",{"property":"article:author","content":"远野千束"}],["meta",{"property":"article:modified_time","content":"2024-03-28T04:05:03.000Z"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"Article\\",\\"headline\\":\\"项目部署\\",\\"image\\":[\\"\\"],\\"dateModified\\":\\"2024-03-28T04:05:03.000Z\\",\\"author\\":[{\\"@type\\":\\"Person\\",\\"name\\":\\"远野千束\\",\\"url\\":\\"https://sfkm.me\\"}]}"]]},"headers":[],"git":{"createdTime":1711589926000,"updatedTime":1711598703000,"contributors":[{"name":"snowy","email":"snowykami@outlook.com","commits":4}]},"readingTime":{"minutes":0.05,"words":15},"filePathRelative":"deployment/README.md","localizedDate":"2024年3月28日"}');export{s as comp,d as data}; +import{_ as t,r as o,o as a,c as n,a as r}from"./app-BkuxgVc5.js";const p={};function c(i,m){const e=o("Catalog");return a(),n("div",null,[r(e)])}const s=t(p,[["render",c],["__file","index.html.vue"]]),d=JSON.parse('{"path":"/deployment/","title":"项目部署","lang":"zh-CN","frontmatter":{"title":"项目部署","index":false,"icon":"laptop-code","category":"部署","head":[["meta",{"property":"og:url","content":"https://vuepress-theme-hope-docs-demo.netlify.app/deployment/"}],["meta",{"property":"og:site_name","content":"LiteyukiBot 轻雪机器人"}],["meta",{"property":"og:title","content":"项目部署"}],["meta",{"property":"og:type","content":"article"}],["meta",{"property":"og:locale","content":"zh-CN"}],["meta",{"property":"og:updated_time","content":"2024-03-28T04:05:03.000Z"}],["meta",{"property":"article:author","content":"远野千束"}],["meta",{"property":"article:modified_time","content":"2024-03-28T04:05:03.000Z"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"Article\\",\\"headline\\":\\"项目部署\\",\\"image\\":[\\"\\"],\\"dateModified\\":\\"2024-03-28T04:05:03.000Z\\",\\"author\\":[{\\"@type\\":\\"Person\\",\\"name\\":\\"远野千束\\",\\"url\\":\\"https://sfkm.me\\"}]}"]]},"headers":[],"git":{"createdTime":1711589926000,"updatedTime":1711598703000,"contributors":[{"name":"snowy","email":"snowykami@outlook.com","commits":4}]},"readingTime":{"minutes":0.05,"words":15},"filePathRelative":"deployment/README.md","localizedDate":"2024年3月28日"}');export{s as comp,d as data}; diff --git a/assets/index.html-Iu5qPPr3.js b/assets/index.html-C50-Et9d.js similarity index 95% rename from assets/index.html-Iu5qPPr3.js rename to assets/index.html-C50-Et9d.js index 04170230..332cdf81 100644 --- a/assets/index.html-Iu5qPPr3.js +++ b/assets/index.html-C50-Et9d.js @@ -1 +1 @@ -import{_ as t,r as o,o as a,c as n,a as r}from"./app-vtLTGmS8.js";const c={};function i(p,m){const e=o("Catalog");return a(),n("div",null,[r(e)])}const s=t(c,[["render",i],["__file","index.html.vue"]]),d=JSON.parse('{"path":"/dev/","title":"开发及贡献","lang":"zh-CN","frontmatter":{"title":"开发及贡献","index":false,"icon":"laptop-code","category":"开发","head":[["meta",{"property":"og:url","content":"https://vuepress-theme-hope-docs-demo.netlify.app/dev/"}],["meta",{"property":"og:site_name","content":"LiteyukiBot 轻雪机器人"}],["meta",{"property":"og:title","content":"开发及贡献"}],["meta",{"property":"og:type","content":"article"}],["meta",{"property":"og:locale","content":"zh-CN"}],["meta",{"property":"og:updated_time","content":"2024-08-11T21:26:36.000Z"}],["meta",{"property":"article:author","content":"远野千束"}],["meta",{"property":"article:modified_time","content":"2024-08-11T21:26:36.000Z"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"Article\\",\\"headline\\":\\"开发及贡献\\",\\"image\\":[\\"\\"],\\"dateModified\\":\\"2024-08-11T21:26:36.000Z\\",\\"author\\":[{\\"@type\\":\\"Person\\",\\"name\\":\\"远野千束\\",\\"url\\":\\"https://sfkm.me\\"}]}"]]},"headers":[],"git":{"createdTime":1723411596000,"updatedTime":1723411596000,"contributors":[{"name":"snowy","email":"snowykami@outlook.com","commits":1}]},"readingTime":{"minutes":0.05,"words":16},"filePathRelative":"dev/README.md","localizedDate":"2024年8月11日"}');export{s as comp,d as data}; +import{_ as t,r as o,o as a,c as n,a as r}from"./app-BkuxgVc5.js";const c={};function i(p,m){const e=o("Catalog");return a(),n("div",null,[r(e)])}const s=t(c,[["render",i],["__file","index.html.vue"]]),d=JSON.parse('{"path":"/dev/","title":"开发及贡献","lang":"zh-CN","frontmatter":{"title":"开发及贡献","index":false,"icon":"laptop-code","category":"开发","head":[["meta",{"property":"og:url","content":"https://vuepress-theme-hope-docs-demo.netlify.app/dev/"}],["meta",{"property":"og:site_name","content":"LiteyukiBot 轻雪机器人"}],["meta",{"property":"og:title","content":"开发及贡献"}],["meta",{"property":"og:type","content":"article"}],["meta",{"property":"og:locale","content":"zh-CN"}],["meta",{"property":"og:updated_time","content":"2024-08-11T21:26:36.000Z"}],["meta",{"property":"article:author","content":"远野千束"}],["meta",{"property":"article:modified_time","content":"2024-08-11T21:26:36.000Z"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"Article\\",\\"headline\\":\\"开发及贡献\\",\\"image\\":[\\"\\"],\\"dateModified\\":\\"2024-08-11T21:26:36.000Z\\",\\"author\\":[{\\"@type\\":\\"Person\\",\\"name\\":\\"远野千束\\",\\"url\\":\\"https://sfkm.me\\"}]}"]]},"headers":[],"git":{"createdTime":1723411596000,"updatedTime":1723411596000,"contributors":[{"name":"snowy","email":"snowykami@outlook.com","commits":1}]},"readingTime":{"minutes":0.05,"words":16},"filePathRelative":"dev/README.md","localizedDate":"2024年8月11日"}');export{s as comp,d as data}; diff --git a/assets/index.html-ITWEFU9g.js b/assets/index.html-CzkXKOpk.js similarity index 95% rename from assets/index.html-ITWEFU9g.js rename to assets/index.html-CzkXKOpk.js index 4e0ef271..c3f1a7c3 100644 --- a/assets/index.html-ITWEFU9g.js +++ b/assets/index.html-CzkXKOpk.js @@ -1 +1 @@ -import{_ as t,r as o,o as a,c as r,a as n}from"./app-vtLTGmS8.js";const i={};function c(p,m){const e=o("Catalog");return a(),r("div",null,[n(e)])}const l=t(i,[["render",c],["__file","index.html.vue"]]),d=JSON.parse('{"path":"/store/","title":"资源及插件商店","lang":"zh-CN","frontmatter":{"title":"资源及插件商店","index":false,"icon":"store","category":"商店","head":[["meta",{"property":"og:url","content":"https://vuepress-theme-hope-docs-demo.netlify.app/store/"}],["meta",{"property":"og:site_name","content":"LiteyukiBot 轻雪机器人"}],["meta",{"property":"og:title","content":"资源及插件商店"}],["meta",{"property":"og:type","content":"article"}],["meta",{"property":"og:locale","content":"zh-CN"}],["meta",{"property":"og:updated_time","content":"2024-08-11T21:26:36.000Z"}],["meta",{"property":"article:author","content":"远野千束"}],["meta",{"property":"article:modified_time","content":"2024-08-11T21:26:36.000Z"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"Article\\",\\"headline\\":\\"资源及插件商店\\",\\"image\\":[\\"\\"],\\"dateModified\\":\\"2024-08-11T21:26:36.000Z\\",\\"author\\":[{\\"@type\\":\\"Person\\",\\"name\\":\\"远野千束\\",\\"url\\":\\"https://sfkm.me\\"}]}"]]},"headers":[],"git":{"createdTime":1712364501000,"updatedTime":1723411596000,"contributors":[{"name":"snowy","email":"snowykami@outlook.com","commits":5}]},"readingTime":{"minutes":0.06,"words":17},"filePathRelative":"store/README.md","localizedDate":"2024年4月6日"}');export{l as comp,d as data}; +import{_ as t,r as o,o as a,c as r,a as n}from"./app-BkuxgVc5.js";const i={};function c(p,m){const e=o("Catalog");return a(),r("div",null,[n(e)])}const l=t(i,[["render",c],["__file","index.html.vue"]]),d=JSON.parse('{"path":"/store/","title":"资源及插件商店","lang":"zh-CN","frontmatter":{"title":"资源及插件商店","index":false,"icon":"store","category":"商店","head":[["meta",{"property":"og:url","content":"https://vuepress-theme-hope-docs-demo.netlify.app/store/"}],["meta",{"property":"og:site_name","content":"LiteyukiBot 轻雪机器人"}],["meta",{"property":"og:title","content":"资源及插件商店"}],["meta",{"property":"og:type","content":"article"}],["meta",{"property":"og:locale","content":"zh-CN"}],["meta",{"property":"og:updated_time","content":"2024-08-11T21:26:36.000Z"}],["meta",{"property":"article:author","content":"远野千束"}],["meta",{"property":"article:modified_time","content":"2024-08-11T21:26:36.000Z"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"Article\\",\\"headline\\":\\"资源及插件商店\\",\\"image\\":[\\"\\"],\\"dateModified\\":\\"2024-08-11T21:26:36.000Z\\",\\"author\\":[{\\"@type\\":\\"Person\\",\\"name\\":\\"远野千束\\",\\"url\\":\\"https://sfkm.me\\"}]}"]]},"headers":[],"git":{"createdTime":1712364501000,"updatedTime":1723411596000,"contributors":[{"name":"snowy","email":"snowykami@outlook.com","commits":5}]},"readingTime":{"minutes":0.06,"words":17},"filePathRelative":"store/README.md","localizedDate":"2024年4月6日"}');export{l as comp,d as data}; diff --git a/assets/index.html-BENoBtrH.js b/assets/index.html-DxXL-0jh.js similarity index 98% rename from assets/index.html-BENoBtrH.js rename to assets/index.html-DxXL-0jh.js index 06af3274..6decd454 100644 --- a/assets/index.html-BENoBtrH.js +++ b/assets/index.html-DxXL-0jh.js @@ -1 +1 @@ -import{_ as t,o as e,c as i}from"./app-vtLTGmS8.js";const o={};function a(s,l){return e(),i("div")}const c=t(o,[["render",a],["__file","index.html.vue"]]),m=JSON.parse('{"path":"/","title":"首页","lang":"zh-CN","frontmatter":{"home":true,"icon":"home","title":"首页","heroImage":"https://cdn.liteyuki.icu/static/svg/lylogo-full.svg","heroImageDark":"https://cdn.liteyuki.icu/static/svg/lylogo-full-dark.svg","bgImage":null,"bgImageDark":null,"bgImageStyle":{"background-attachment":"fixed"},"heroText":"LiteyukiBot","tagline":"LiteyukiBot 轻雪机器人,综合性的机器人应用及管理框架","actions":[{"text":"快速部署","icon":"rocket","link":"./deployment/install.html","type":"primary"},{"text":"使用手册","icon":"book","link":"./usage/basic_command.html"}],"highlights":[{"header":"简洁至上","image":"/assets/image/layout.svg","bgImage":"https://theme-hope-assets.vuejs.press/bg/2-light.svg","bgImageDark":"https://theme-hope-assets.vuejs.press/bg/2-dark.svg","bgImageStyle":{"background-repeat":"repeat","background-size":"initial"},"features":[{"title":"支持多种框架","icon":"robot","details":"兼容nonebot,melobot等,拥有良好的生态支持","link":"https://nonebot.dev/"},{"title":"便捷管理","icon":"plug","details":"使用包管理器,便捷管理插件及资源包"},{"title":"主题支持","icon":"paint-brush","details":"使用资源包对外观进行完全自定义","link":"https://bot.liteyuki.icu/usage/resource_pack.html"},{"title":"国际化","icon":"globe","details":"通过资源包支持多种语言","link":"https://baike.baidu.com/item/i18n/6771940"},{"title":"简易使用","icon":"cog","details":"无需繁琐前期过程,开箱即用","link":"https://bot.liteyuki.icu/deployment/config.html"},{"title":"超高性能","icon":"tachometer-alt","details":"500个插件,2s内启动"},{"title":"滚动更新","icon":"cloud-download","details":"让你的机器人保持最新提交"},{"title":"开源项目","icon":"code","details":"项目遵循MIT LICENCE开源,欢迎各位的贡献"}]},{"header":"快速部署","image":"/assets/image/box.svg","bgImage":"https://theme-hope-assets.vuejs.press/bg/3-light.svg","bgImageDark":"https://theme-hope-assets.vuejs.press/bg/3-dark.svg","highlights":[{"title":"安装 Git 及 Python3.10+"},{"title":"使用 git clone https://github.com/LiteyukiStudio/LiteyukiBot --depth=1 以克隆项目至本地。","details":"如果无法连接到GitHub,可以使用 git clone https://gitee.com/snowykami/LiteyukiBot --depth=1。"},{"title":"使用 cd LiteyukiBot 切换到项目目录。"},{"title":"使用 pip install -r requirements.txt 安装项目依赖。","details":"如果你有多个 Python 环境,请使用 pythonx -m pip install -r requirements.txt。"},{"title":"使用 python main.py 启动项目。"}]}],"copyright":"© 2021-2024 SnowyKami All Rights Reserved","head":[["meta",{"property":"og:url","content":"https://vuepress-theme-hope-docs-demo.netlify.app/"}],["meta",{"property":"og:site_name","content":"LiteyukiBot 轻雪机器人"}],["meta",{"property":"og:title","content":"首页"}],["meta",{"property":"og:type","content":"website"}],["meta",{"property":"og:locale","content":"zh-CN"}],["meta",{"property":"og:updated_time","content":"2024-08-11T18:40:51.000Z"}],["meta",{"property":"article:author","content":"远野千束"}],["meta",{"property":"article:modified_time","content":"2024-08-11T18:40:51.000Z"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"WebPage\\",\\"name\\":\\"首页\\"}"]]},"headers":[],"git":{"createdTime":1711460020000,"updatedTime":1723401651000,"contributors":[{"name":"snowy","email":"snowykami@outlook.com","commits":41},{"name":"Nanaloveyuki","email":"miaomiao_159@outlook.com","commits":1},{"name":"Snowykami","email":"79104275+snowykami@users.noreply.github.com","commits":1}]},"readingTime":{"minutes":1.37,"words":411},"filePathRelative":"README.md","localizedDate":"2024年3月26日"}');export{c as comp,m as data}; +import{_ as t,o as e,c as i}from"./app-BkuxgVc5.js";const o={};function a(s,l){return e(),i("div")}const c=t(o,[["render",a],["__file","index.html.vue"]]),m=JSON.parse('{"path":"/","title":"首页","lang":"zh-CN","frontmatter":{"home":true,"icon":"home","title":"首页","heroImage":"https://cdn.liteyuki.icu/static/svg/lylogo-full.svg","heroImageDark":"https://cdn.liteyuki.icu/static/svg/lylogo-full-dark.svg","bgImage":null,"bgImageDark":null,"bgImageStyle":{"background-attachment":"fixed"},"heroText":"LiteyukiBot","tagline":"LiteyukiBot 轻雪机器人,综合性的机器人应用及管理框架","actions":[{"text":"快速部署","icon":"rocket","link":"./deployment/install.html","type":"primary"},{"text":"使用手册","icon":"book","link":"./usage/basic_command.html"}],"highlights":[{"header":"简洁至上","image":"/assets/image/layout.svg","bgImage":"https://theme-hope-assets.vuejs.press/bg/2-light.svg","bgImageDark":"https://theme-hope-assets.vuejs.press/bg/2-dark.svg","bgImageStyle":{"background-repeat":"repeat","background-size":"initial"},"features":[{"title":"支持多种框架","icon":"robot","details":"兼容nonebot,melobot等,拥有良好的生态支持","link":"https://nonebot.dev/"},{"title":"便捷管理","icon":"plug","details":"使用包管理器,便捷管理插件及资源包"},{"title":"主题支持","icon":"paint-brush","details":"使用资源包对外观进行完全自定义","link":"https://bot.liteyuki.icu/usage/resource_pack.html"},{"title":"国际化","icon":"globe","details":"通过资源包支持多种语言","link":"https://baike.baidu.com/item/i18n/6771940"},{"title":"简易使用","icon":"cog","details":"无需繁琐前期过程,开箱即用","link":"https://bot.liteyuki.icu/deployment/config.html"},{"title":"超高性能","icon":"tachometer-alt","details":"500个插件,2s内启动"},{"title":"滚动更新","icon":"cloud-download","details":"让你的机器人保持最新提交"},{"title":"开源项目","icon":"code","details":"项目遵循MIT LICENCE开源,欢迎各位的贡献"}]},{"header":"快速部署","image":"/assets/image/box.svg","bgImage":"https://theme-hope-assets.vuejs.press/bg/3-light.svg","bgImageDark":"https://theme-hope-assets.vuejs.press/bg/3-dark.svg","highlights":[{"title":"安装 Git 及 Python3.10+"},{"title":"使用 git clone https://github.com/LiteyukiStudio/LiteyukiBot --depth=1 以克隆项目至本地。","details":"如果无法连接到GitHub,可以使用 git clone https://gitee.com/snowykami/LiteyukiBot --depth=1。"},{"title":"使用 cd LiteyukiBot 切换到项目目录。"},{"title":"使用 pip install -r requirements.txt 安装项目依赖。","details":"如果你有多个 Python 环境,请使用 pythonx -m pip install -r requirements.txt。"},{"title":"使用 python main.py 启动项目。"}]}],"copyright":"© 2021-2024 SnowyKami All Rights Reserved","head":[["meta",{"property":"og:url","content":"https://vuepress-theme-hope-docs-demo.netlify.app/"}],["meta",{"property":"og:site_name","content":"LiteyukiBot 轻雪机器人"}],["meta",{"property":"og:title","content":"首页"}],["meta",{"property":"og:type","content":"website"}],["meta",{"property":"og:locale","content":"zh-CN"}],["meta",{"property":"og:updated_time","content":"2024-08-11T18:40:51.000Z"}],["meta",{"property":"article:author","content":"远野千束"}],["meta",{"property":"article:modified_time","content":"2024-08-11T18:40:51.000Z"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"WebPage\\",\\"name\\":\\"首页\\"}"]]},"headers":[],"git":{"createdTime":1711460020000,"updatedTime":1723401651000,"contributors":[{"name":"snowy","email":"snowykami@outlook.com","commits":41},{"name":"Nanaloveyuki","email":"miaomiao_159@outlook.com","commits":1},{"name":"Snowykami","email":"79104275+snowykami@users.noreply.github.com","commits":1}]},"readingTime":{"minutes":1.37,"words":411},"filePathRelative":"README.md","localizedDate":"2024年3月26日"}');export{c as comp,m as data}; diff --git a/assets/install.html-H1EQpQ1J.js b/assets/install.html-Dq7IpmAc.js similarity index 99% rename from assets/install.html-H1EQpQ1J.js rename to assets/install.html-Dq7IpmAc.js index bd2c7439..6c133129 100644 --- a/assets/install.html-H1EQpQ1J.js +++ b/assets/install.html-Dq7IpmAc.js @@ -1,4 +1,4 @@ -import{_ as s,r as a,o as c,c as l,b as e,d as t,a as o,e as i}from"./app-vtLTGmS8.js";const r={},d=e("h2",{id:"开始安装",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#开始安装"},[e("span",null,[e("strong",null,"开始安装")])])],-1),p=e("h3",{id:"常规部署",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#常规部署"},[e("span",null,[e("strong",null,"常规部署")])])],-1),h={href:"https://git-scm.com/download/",target:"_blank",rel:"noopener noreferrer"},u=e("code",null,"Git",-1),m={href:"https://www.python.org/downloads/release/python-31010/",target:"_blank",rel:"noopener noreferrer"},v=e("code",null,"Python3.10+",-1),_=i(`
    # 克隆项目到本地,轻雪使用Git进行版本管理,该步骤为必要项
    +import{_ as s,r as a,o as c,c as l,b as e,d as t,a as o,e as i}from"./app-BkuxgVc5.js";const r={},d=e("h2",{id:"开始安装",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#开始安装"},[e("span",null,[e("strong",null,"开始安装")])])],-1),p=e("h3",{id:"常规部署",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#常规部署"},[e("span",null,[e("strong",null,"常规部署")])])],-1),h={href:"https://git-scm.com/download/",target:"_blank",rel:"noopener noreferrer"},u=e("code",null,"Git",-1),m={href:"https://www.python.org/downloads/release/python-31010/",target:"_blank",rel:"noopener noreferrer"},v=e("code",null,"Python3.10+",-1),_=i(`
    # 克隆项目到本地,轻雪使用Git进行版本管理,该步骤为必要项
     git clone https://github.com/LiteyukiStudio/LiteyukiBot --depth=1
     # 切换到Bot目录下
     cd LiteyukiBot
    diff --git a/assets/lyapi.html-OlB8Zxim.js b/assets/lyapi.html-DFkblhsP.js
    similarity index 97%
    rename from assets/lyapi.html-OlB8Zxim.js
    rename to assets/lyapi.html-DFkblhsP.js
    index 55fc085b..0fca4e92 100644
    --- a/assets/lyapi.html-OlB8Zxim.js
    +++ b/assets/lyapi.html-DFkblhsP.js
    @@ -1 +1 @@
    -import{_ as o,o as a,c as r,b as e,d as t}from"./app-vtLTGmS8.js";const n={},i=e("h2",{id:"轻雪api",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#轻雪api"},[e("span",null,[e("strong",null,"轻雪API")])])],-1),c=e("p",null,[t("轻雪API是轻雪运行中部分服务的支持,由"),e("code",null,"go"),t("语言编写,例如错误反馈,图床链接等,目前服务由轻雪服务器提供,用户无需额外部署")],-1),p=[i,c];function l(s,m){return a(),r("div",null,p)}const h=o(n,[["render",l],["__file","lyapi.html.vue"]]),u=JSON.parse('{"path":"/usage/lyapi.html","title":"轻雪API","lang":"zh-CN","frontmatter":{"title":"轻雪API","icon":"code","order":5,"category":"使用指南","tag":["配置","部署"],"description":"轻雪API 轻雪API是轻雪运行中部分服务的支持,由go语言编写,例如错误反馈,图床链接等,目前服务由轻雪服务器提供,用户无需额外部署","head":[["meta",{"property":"og:url","content":"https://vuepress-theme-hope-docs-demo.netlify.app/usage/lyapi.html"}],["meta",{"property":"og:site_name","content":"LiteyukiBot 轻雪机器人"}],["meta",{"property":"og:title","content":"轻雪API"}],["meta",{"property":"og:description","content":"轻雪API 轻雪API是轻雪运行中部分服务的支持,由go语言编写,例如错误反馈,图床链接等,目前服务由轻雪服务器提供,用户无需额外部署"}],["meta",{"property":"og:type","content":"article"}],["meta",{"property":"og:locale","content":"zh-CN"}],["meta",{"property":"og:updated_time","content":"2024-08-08T10:06:03.000Z"}],["meta",{"property":"article:author","content":"远野千束"}],["meta",{"property":"article:tag","content":"配置"}],["meta",{"property":"article:tag","content":"部署"}],["meta",{"property":"article:modified_time","content":"2024-08-08T10:06:03.000Z"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"Article\\",\\"headline\\":\\"轻雪API\\",\\"image\\":[\\"\\"],\\"dateModified\\":\\"2024-08-08T10:06:03.000Z\\",\\"author\\":[{\\"@type\\":\\"Person\\",\\"name\\":\\"远野千束\\",\\"url\\":\\"https://sfkm.me\\"}]}"]]},"headers":[{"level":2,"title":"轻雪API","slug":"轻雪api","link":"#轻雪api","children":[]}],"git":{"createdTime":1713603777000,"updatedTime":1723111563000,"contributors":[{"name":"snowy","email":"snowykami@outlook.com","commits":3}]},"readingTime":{"minutes":0.25,"words":74},"filePathRelative":"usage/lyapi.md","localizedDate":"2024年4月20日","autoDesc":true}');export{h as comp,u as data};
    +import{_ as o,o as a,c as r,b as e,d as t}from"./app-BkuxgVc5.js";const n={},i=e("h2",{id:"轻雪api",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#轻雪api"},[e("span",null,[e("strong",null,"轻雪API")])])],-1),c=e("p",null,[t("轻雪API是轻雪运行中部分服务的支持,由"),e("code",null,"go"),t("语言编写,例如错误反馈,图床链接等,目前服务由轻雪服务器提供,用户无需额外部署")],-1),p=[i,c];function l(s,m){return a(),r("div",null,p)}const h=o(n,[["render",l],["__file","lyapi.html.vue"]]),u=JSON.parse('{"path":"/usage/lyapi.html","title":"轻雪API","lang":"zh-CN","frontmatter":{"title":"轻雪API","icon":"code","order":5,"category":"使用指南","tag":["配置","部署"],"description":"轻雪API 轻雪API是轻雪运行中部分服务的支持,由go语言编写,例如错误反馈,图床链接等,目前服务由轻雪服务器提供,用户无需额外部署","head":[["meta",{"property":"og:url","content":"https://vuepress-theme-hope-docs-demo.netlify.app/usage/lyapi.html"}],["meta",{"property":"og:site_name","content":"LiteyukiBot 轻雪机器人"}],["meta",{"property":"og:title","content":"轻雪API"}],["meta",{"property":"og:description","content":"轻雪API 轻雪API是轻雪运行中部分服务的支持,由go语言编写,例如错误反馈,图床链接等,目前服务由轻雪服务器提供,用户无需额外部署"}],["meta",{"property":"og:type","content":"article"}],["meta",{"property":"og:locale","content":"zh-CN"}],["meta",{"property":"og:updated_time","content":"2024-08-08T10:06:03.000Z"}],["meta",{"property":"article:author","content":"远野千束"}],["meta",{"property":"article:tag","content":"配置"}],["meta",{"property":"article:tag","content":"部署"}],["meta",{"property":"article:modified_time","content":"2024-08-08T10:06:03.000Z"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"Article\\",\\"headline\\":\\"轻雪API\\",\\"image\\":[\\"\\"],\\"dateModified\\":\\"2024-08-08T10:06:03.000Z\\",\\"author\\":[{\\"@type\\":\\"Person\\",\\"name\\":\\"远野千束\\",\\"url\\":\\"https://sfkm.me\\"}]}"]]},"headers":[{"level":2,"title":"轻雪API","slug":"轻雪api","link":"#轻雪api","children":[]}],"git":{"createdTime":1713603777000,"updatedTime":1723111563000,"contributors":[{"name":"snowy","email":"snowykami@outlook.com","commits":3}]},"readingTime":{"minutes":0.25,"words":74},"filePathRelative":"usage/lyapi.md","localizedDate":"2024年4月20日","autoDesc":true}');export{h as comp,u as data};
    diff --git a/assets/plugin.html-BmqPAMDq.js b/assets/plugin.html-B02qMMeL.js
    similarity index 95%
    rename from assets/plugin.html-BmqPAMDq.js
    rename to assets/plugin.html-B02qMMeL.js
    index 4e615b8a..e16e190d 100644
    --- a/assets/plugin.html-BmqPAMDq.js
    +++ b/assets/plugin.html-B02qMMeL.js
    @@ -1 +1 @@
    -import{_ as t,r as o,o as r,c as n,a}from"./app-vtLTGmS8.js";const p={};function i(m,c){const e=o("pluginStoreComp");return r(),n("div",null,[a(e)])}const s=t(p,[["render",i],["__file","plugin.html.vue"]]),d=JSON.parse('{"path":"/store/plugin.html","title":"插件商店","lang":"zh-CN","frontmatter":{"title":"插件商店","icon":"plug","order":2,"category":"使用手册","head":[["meta",{"property":"og:url","content":"https://vuepress-theme-hope-docs-demo.netlify.app/store/plugin.html"}],["meta",{"property":"og:site_name","content":"LiteyukiBot 轻雪机器人"}],["meta",{"property":"og:title","content":"插件商店"}],["meta",{"property":"og:type","content":"article"}],["meta",{"property":"og:locale","content":"zh-CN"}],["meta",{"property":"og:updated_time","content":"2024-04-19T20:10:20.000Z"}],["meta",{"property":"article:author","content":"远野千束"}],["meta",{"property":"article:modified_time","content":"2024-04-19T20:10:20.000Z"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"Article\\",\\"headline\\":\\"插件商店\\",\\"image\\":[\\"\\"],\\"dateModified\\":\\"2024-04-19T20:10:20.000Z\\",\\"author\\":[{\\"@type\\":\\"Person\\",\\"name\\":\\"远野千束\\",\\"url\\":\\"https://sfkm.me\\"}]}"]]},"headers":[],"git":{"createdTime":1713557420000,"updatedTime":1713557420000,"contributors":[{"name":"snowy","email":"snowykami@outlook.com","commits":1}]},"readingTime":{"minutes":0.05,"words":16},"filePathRelative":"store/plugin.md","localizedDate":"2024年4月19日"}');export{s as comp,d as data};
    +import{_ as t,r as o,o as r,c as n,a}from"./app-BkuxgVc5.js";const p={};function i(m,c){const e=o("pluginStoreComp");return r(),n("div",null,[a(e)])}const s=t(p,[["render",i],["__file","plugin.html.vue"]]),d=JSON.parse('{"path":"/store/plugin.html","title":"插件商店","lang":"zh-CN","frontmatter":{"title":"插件商店","icon":"plug","order":2,"category":"使用手册","head":[["meta",{"property":"og:url","content":"https://vuepress-theme-hope-docs-demo.netlify.app/store/plugin.html"}],["meta",{"property":"og:site_name","content":"LiteyukiBot 轻雪机器人"}],["meta",{"property":"og:title","content":"插件商店"}],["meta",{"property":"og:type","content":"article"}],["meta",{"property":"og:locale","content":"zh-CN"}],["meta",{"property":"og:updated_time","content":"2024-04-19T20:10:20.000Z"}],["meta",{"property":"article:author","content":"远野千束"}],["meta",{"property":"article:modified_time","content":"2024-04-19T20:10:20.000Z"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"Article\\",\\"headline\\":\\"插件商店\\",\\"image\\":[\\"\\"],\\"dateModified\\":\\"2024-04-19T20:10:20.000Z\\",\\"author\\":[{\\"@type\\":\\"Person\\",\\"name\\":\\"远野千束\\",\\"url\\":\\"https://sfkm.me\\"}]}"]]},"headers":[],"git":{"createdTime":1713557420000,"updatedTime":1713557420000,"contributors":[{"name":"snowy","email":"snowykami@outlook.com","commits":1}]},"readingTime":{"minutes":0.05,"words":16},"filePathRelative":"store/plugin.md","localizedDate":"2024年4月19日"}');export{s as comp,d as data};
    diff --git a/assets/resource.html-Gyl-44ZX.js b/assets/resource.html-B0hes2bb.js
    similarity index 95%
    rename from assets/resource.html-Gyl-44ZX.js
    rename to assets/resource.html-B0hes2bb.js
    index f1f06c49..9433fb9b 100644
    --- a/assets/resource.html-Gyl-44ZX.js
    +++ b/assets/resource.html-B0hes2bb.js
    @@ -1 +1 @@
    -import{_ as t,r as o,o as r,c as a,a as c}from"./app-vtLTGmS8.js";const n={};function m(s,p){const e=o("resourceStoreComp");return r(),a("div",null,[c(e)])}const l=t(n,[["render",m],["__file","resource.html.vue"]]),d=JSON.parse('{"path":"/store/resource.html","title":"资源商店","lang":"zh-CN","frontmatter":{"title":"资源商店","icon":"box","order":1,"category":"使用手册","head":[["meta",{"property":"og:url","content":"https://vuepress-theme-hope-docs-demo.netlify.app/store/resource.html"}],["meta",{"property":"og:site_name","content":"LiteyukiBot 轻雪机器人"}],["meta",{"property":"og:title","content":"资源商店"}],["meta",{"property":"og:type","content":"article"}],["meta",{"property":"og:locale","content":"zh-CN"}],["meta",{"property":"og:updated_time","content":"2024-08-01T04:23:56.000Z"}],["meta",{"property":"article:author","content":"远野千束"}],["meta",{"property":"article:modified_time","content":"2024-08-01T04:23:56.000Z"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"Article\\",\\"headline\\":\\"资源商店\\",\\"image\\":[\\"\\"],\\"dateModified\\":\\"2024-08-01T04:23:56.000Z\\",\\"author\\":[{\\"@type\\":\\"Person\\",\\"name\\":\\"远野千束\\",\\"url\\":\\"https://sfkm.me\\"}]}"]]},"headers":[],"git":{"createdTime":1713557420000,"updatedTime":1722486236000,"contributors":[{"name":"snowy","email":"snowykami@outlook.com","commits":2}]},"readingTime":{"minutes":0.05,"words":16},"filePathRelative":"store/resource.md","localizedDate":"2024年4月19日"}');export{l as comp,d as data};
    +import{_ as t,r as o,o as r,c as a,a as c}from"./app-BkuxgVc5.js";const n={};function m(s,p){const e=o("resourceStoreComp");return r(),a("div",null,[c(e)])}const l=t(n,[["render",m],["__file","resource.html.vue"]]),d=JSON.parse('{"path":"/store/resource.html","title":"资源商店","lang":"zh-CN","frontmatter":{"title":"资源商店","icon":"box","order":1,"category":"使用手册","head":[["meta",{"property":"og:url","content":"https://vuepress-theme-hope-docs-demo.netlify.app/store/resource.html"}],["meta",{"property":"og:site_name","content":"LiteyukiBot 轻雪机器人"}],["meta",{"property":"og:title","content":"资源商店"}],["meta",{"property":"og:type","content":"article"}],["meta",{"property":"og:locale","content":"zh-CN"}],["meta",{"property":"og:updated_time","content":"2024-08-01T04:23:56.000Z"}],["meta",{"property":"article:author","content":"远野千束"}],["meta",{"property":"article:modified_time","content":"2024-08-01T04:23:56.000Z"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"Article\\",\\"headline\\":\\"资源商店\\",\\"image\\":[\\"\\"],\\"dateModified\\":\\"2024-08-01T04:23:56.000Z\\",\\"author\\":[{\\"@type\\":\\"Person\\",\\"name\\":\\"远野千束\\",\\"url\\":\\"https://sfkm.me\\"}]}"]]},"headers":[],"git":{"createdTime":1713557420000,"updatedTime":1722486236000,"contributors":[{"name":"snowy","email":"snowykami@outlook.com","commits":2}]},"readingTime":{"minutes":0.05,"words":16},"filePathRelative":"store/resource.md","localizedDate":"2024年4月19日"}');export{l as comp,d as data};
    diff --git a/childrensdaybak.html b/childrensdaybak.html
    index c7ce9eb8..0744d952 100644
    --- a/childrensdaybak.html
    +++ b/childrensdaybak.html
    @@ -30,11 +30,11 @@
         
         首页 | LiteyukiBot 轻雪机器人
         
    -    
    -    
    +    
    +    
       
       
         
    跳至主要內容
    LiteyukiBot

    LiteyukiBot

    轻雪机器人,一个以轻量和简洁为设计理念基于Nonebot2的OneBot标准聊天机器人

    快速部署使用手册

    简洁至上

    基于Nonebot2

    拥有良好的生态支持

    便捷插件管理

    使用包管理器,无需命令行操作即可安装/卸载插件

    人性化交互

    新的点击交互模式,拒绝手打指令

    主题支持

    使用资源包对外观进行完全自定义

    国际化

    通过资源包支持多种语言

    简易配置

    无需繁琐前期过程,开箱即用

    高性能

    500个插件,3s内启动

    滚动更新

    让你的机器人保持最新提交

    开源

    项目遵循MIT协议开源,欢迎各位的贡献

    快速部署

    • 安装 Git 和 Python3.10+

    • 使用 git clone https://github.com/snowykami/LiteyukiBot 以克隆项目至本地。

      如果无法连接到GitHub,可以使用 git clone https://gitee.com/snowykami/LiteyukiBot

    • 使用 cd LiteyukiBot 切换到项目目录。

    • 使用 pip install -r requirements.txt 安装项目依赖。

      如果你有多个 Python 环境,请使用 pythonx -m pip install -r requirements.txt

    • 使用 python main.py 启动项目。

    - + diff --git a/deployment/config.html b/deployment/config.html index f5f2449a..8501ebc3 100644 --- a/deployment/config.html +++ b/deployment/config.html @@ -30,8 +30,8 @@ 配置 | LiteyukiBot 轻雪机器人 - - + +
    跳至主要內容

    配置

    远野千束大约 2 分钟使用指南配置部署

    轻雪支持yamljsontoml作为配置文件,取决于你个人的喜好

    首次运行后生成config.ymlconfig目录,你可修改配置项后重启轻雪,绝大多数情况下,你只需要修改superusersnickname字段即可

    启动时会加载项目目录下config.yml/yaml/json/tomlconfig目录下的所有配置文件,你可在config目录下创建多个配置文件,轻雪会自动合并这些配置文件

    基础配置项

    nonebot:
    @@ -67,6 +67,6 @@
     
     ...
     

    提示

    如果要使用NoneBot和dotenv配置文件,请自行创建.env.{ENVIRONMENT},并在config.yml中添加nonebot.environment:{ENVIRONMENT}字段

    与NoneBot对接的OneBot实现端配置

    生产环境中推荐反向WebSocket 不同的实现端给出的字段可能不同,但是基本上都是一样的,这里给出一个参考值

    字段参考值说明
    协议反向WebSocket推荐使用反向ws协议进行通信,即轻雪作为服务端
    地址ws://127.0.0.1:20216/onebot/v11/ws地址取决于配置文件,本机默认为127.0.0.1:20216
    AccessToken""如果你给轻雪配置了AccessToken,请在此填写相同的值

    其他

    • 要使用其他通信方式请访问OneBot Adapteropen in new window获取详细信息
    • 轻雪不局限于OneBot适配器,你可以使用NoneBot2支持的任何适配器
    - + diff --git a/deployment/fandq.html b/deployment/fandq.html index 6bf32813..fcd5720d 100644 --- a/deployment/fandq.html +++ b/deployment/fandq.html @@ -30,11 +30,11 @@ 答疑 | LiteyukiBot 轻雪机器人 - - + +
    跳至主要內容

    答疑

    远野千束大约 2 分钟使用指南配置部署

    常见问题

    • 设备上Python环境太乱了,pip和python不对应怎么办?

      • 请使用/path/to/python -m pip install -r requirements.txt来安装依赖, 然后用/path/to/python main.py来启动Bot, 其中/path/to/python是你要用来运行Bot的可执行文件
    • 为什么我启动后机器人没有反应?

      • 请检查配置文件的command_startsuperusers,确认你有权限使用命令并按照正确的命令发送
      • 确认命令头没有和nickname{}冲突,例如一个命令是help,但是Bot昵称有一个help,那么将会被解析为nickname而不是命令
    • 更新轻雪失败,报错InvalidGitRepositoryError

      • 请正确安装Git,并使用克隆而非直接下载的方式部署轻雪
    • 怎么登录聊天平台,例如QQ?

      • 你有这个问题说明你不是很了解这个项目,本项目不负责实现登录功能,只负责处理和回应消息,登录功能由实现端(协议端)提供, 实现端本身不负责处理响应逻辑,将消息按照OneBot标准处理好上报给轻雪 你需要使用Onebot标准的实现端来连接到轻雪并将消息上报给轻雪,下面已经列出一些推荐的实现端
    • Playwright安装失败

      • 输入playwright install安装浏览器
    • 有的插件安装后报错无法启动

      • 请先查阅插件文档,确认插件必要配置项完好后,仍然出现问题,请联系插件作者或在安全模式safe_mode: true下启动轻雪,在安全模式下你可以使用npm uninstall卸载问题插件
    • 其他问题

      加入QQ群775840726open in new window

    推荐方案(QQ)

    1. Lagrange.OneBotopen in new window,基于NTQQ的OneBot实现,目前Markdown消息支持Lagrange
    2. LLOneBotopen in new window,NTQQ的OneBot插件,需要安装NTQQ
    3. OpenShamrockopen in new window,基于Lsposed的OneBot11实现
    4. TRSS-Yunzaiopen in new window,基于node.js,可使用ws-plugin进行通信
    5. go-cqhttpopen in new windowgo语言实现的OneBot11实现端,目前可用性较低
    6. Gensokyoopen in new window,基于 OneBot QQ官方机器人Api Golang 原生实现,需要官方机器人权限
    7. 人工实现的Onebot协议,自己整一个WebSocket客户端,看着QQ的消息,然后给轻雪传输数据

    推荐方案(Minecraft)

    1. MinecraftOneBotopen in new window,我们专门为Minecraft开发的服务器Bot,支持OneBotV11标准

    使用其他项目连接请先自行查阅文档,若有困难请联系对应开发者而不是Liteyuki的开发者

    鸣谢

    - + diff --git a/deployment/index.html b/deployment/index.html index 1f152947..57ea569e 100644 --- a/deployment/index.html +++ b/deployment/index.html @@ -30,11 +30,11 @@ 项目部署 | LiteyukiBot 轻雪机器人 - - + + - + diff --git a/deployment/install.html b/deployment/install.html index b42b7bb4..b9643fbb 100644 --- a/deployment/install.html +++ b/deployment/install.html @@ -30,8 +30,8 @@ 安装 | LiteyukiBot 轻雪机器人 - - + +
    跳至主要內容

    安装

    远野千束大约 2 分钟使用指南安装

    开始安装

    常规部署

    1. 安装 Gitopen in new windowPython3.10+open in new window 环境
    # 克隆项目到本地,轻雪使用Git进行版本管理,该步骤为必要项
    @@ -43,6 +43,6 @@ pip install # 启动Bot
     python main.py
     

    提示

    推荐使用虚拟环境来运行轻雪,以避免依赖冲突,你可以使用python -m venv .venv来创建虚拟环境,然后使用.venv\Scripts\activate来激活虚拟环境(Linux下使用source .venv/bin/activate激活)

    使用Docker构建镜像部署

    1. 安装 Dockeropen in new window
    2. 克隆项目 git clone https://github.com/LiteyukiStudio/LiteyukiBot --depth=1
    3. 进入轻雪目录 cd LiteyukiBot
    4. 构建镜像 docker build -t liteyukibot .
    5. 启动容器 docker run -p 20216:20216 -v $(pwd):/liteyukibot -v $(pwd)/.cache:/root/.cache liteyukibot

    提示

    Windows请使用项目绝对目录/path/to/LiteyukiBot代替$(pwd)
    若你修改了端口号请将20216:20216中的20216替换为你的端口号

    使用TRSS Scripts部署

    TRSS_Liteyuki轻雪机器人管理脚本open in new window,该功能由TRSS提供支持,不是LiteyukiBot官方提供的功能,推荐使用Arch Linux

    设备要求

    • Windows系统版本最低Windows10+/Windows Server 2019+
    • Linux系统要支持Python3.10+,推荐Ubuntu 20.04+(别用你那b CentOS)
    • CPU: 至少1vCPU
    • 内存: Bot无其他插件会占用300~500MB,包括chromiumnode等进程,其他插件占用视具体插件而定,建议1GB以上
    • 硬盘: 至少1GB空间

    注意

    如果设备上有多个环境,请使用path/to/python -m pip install -r requirements.txt来安装依赖,path/to/python为你的Python可执行文件路径

    注意

    轻雪的更新功能依赖Git,如果你没有安装Git直接下载源代码运行,你将无法使用更新功能

    其他问题请移步至答疑

    - + diff --git a/dev/dev_comm.html b/dev/dev_comm.html index f35d498a..35301c22 100644 --- a/dev/dev_comm.html +++ b/dev/dev_comm.html @@ -30,8 +30,8 @@ 进程通信 | LiteyukiBot 轻雪机器人 - - + +
    跳至主要內容

    进程通信

    远野千束大约 2 分钟开发

    简介

    轻雪运行在主进程 MainProcess 里,其他插件框架进程是伴随的子进程,因此无法通过内存共享和直接对象传递的方式进行通信,轻雪提供了一个通道Channel用于跨进程通信,你可以通过Channel发送消息给其他进程,也可以监听其他进程的消息。

    例如子进程接收到用户信息需要重启机器人,这时可以通过通道对主进程发送消息,主进程接收到消息后重启对应子进程。

    快速开始

    通道是全双工的,有两种接收模式,但一个通道只能使用一种,即被动模式和主动模式,被动模式由chan.on_receive()装饰回调函数实现,主动模式需调用chan.receive()实现

    轻雪核心在创建子进程的同时会初始化两个通道,一个被动通道和一个主动通道,且通道标识为{process_name}-active{process_name}-passive,你可以通过get_channel函数获取通道对象,然后通过send方法发送消息

    • 在轻雪插件中
    
    @@ -82,6 +82,6 @@ channel_active = get_channel..-..-.. ..:..:.. [ℹ️信息] Active receive: I am liteyuki main process active
     ...
     
    - + diff --git a/dev/dev_lyfunc.html b/dev/dev_lyfunc.html index 85333563..5eba452a 100644 --- a/dev/dev_lyfunc.html +++ b/dev/dev_lyfunc.html @@ -30,8 +30,8 @@ 轻雪函数 | LiteyukiBot 轻雪机器人 - - + +
    跳至主要內容

    轻雪函数

    远野千束大约 2 分钟开发

    轻雪函数

    轻雪函数 Liteyuki Function 是轻雪的一个功能,它允许你在轻雪中运行一些自定义的由数据驱动的命令,类似于Minecraft的mcfunction,属于资源包的一部分,但需单独起篇幅.

    函数文件

    函数文件放在资源包的functions目录下,文件名以.mcfunction .lyfunction .lyf结尾,例如test.mcfunction,文件内容为一系列的命令,每行一个命令,支持单行注释#(编辑时的语法高亮可采取shell格式),例如:

    # 在发信器输出"hello world"
    @@ -58,6 +58,6 @@ api friend_poke user_idnohup function poke
     await
     

    API

    理论上所有基于onebotv11的api都可调用,不同Adapter api也有差别.

    Onebot v11 API文档open in new window

    结束关键字

    由于LiteyukiBot基于异步运行, 所以在编写lyfunction时也要注意异步的调用,避免出现"单线程走到底"的情况是效率提升的关键.

    await 异步任务结束关键字,用于结束当前已完成function的执行

    注意

    但若出现非单function的情况,有一个task任务没有完成而await被执行了,那么当前所有函数包的task都会被截停销毁

    提示

    编写轻雪函数推荐你使用VS Code插件Liteyuki Functionopen in new window实现语法高亮

    - + diff --git a/dev/dev_lyplugin.html b/dev/dev_lyplugin.html index d204ef9a..f96382a1 100644 --- a/dev/dev_lyplugin.html +++ b/dev/dev_lyplugin.html @@ -30,8 +30,8 @@ 轻雪插件开发 | LiteyukiBot 轻雪机器人 - - + +
    跳至主要內容

    轻雪插件开发

    远野千束大约 2 分钟开发

    简介

    轻雪插件是轻雪内置的一部分功能,运行在主进程中,可以很高程度地扩展轻雪的功能

    开始

    创建插件

    在标准项目中,位于liteyuki/plugins和src/liteyuki_plugins下的Python modules均会被当作插件加载,你可自行添加配置文件以指定插件的加载路径 一个.py文件或一个包含__init__.py的文件夹即可被识别为插件 创建一个文件夹,例如watchdog_plugin,并在其中创建一个__init__.py文件,即可创建一个插件

    from liteyuki.plugin import PluginMetadata
    @@ -64,6 +64,6 @@ exclude_extensions = .debug(f"File {event.src_path} changed, reloading nonebot...")
         liteyuki.restart_process("nonebot") # 调用重启进程方法
     

    加载插件

    在配置文件中的liteyuki.plugins中添加你的插件路径,例如watchdog_plugin,重启轻雪即可加载插件。然后我们在src/nonebot_plugins下创建一个文件,例如test.py,并在其中写入一些代码,保存后轻雪会自动重载NoneBot进程

    - + diff --git a/dev/dev_resource_pack.html b/dev/dev_resource_pack.html index 31460f70..35d1c36f 100644 --- a/dev/dev_resource_pack.html +++ b/dev/dev_resource_pack.html @@ -30,8 +30,8 @@ 资源包开发 | LiteyukiBot 轻雪机器人 - - + +
    跳至主要內容

    资源包开发

    远野千束大约 2 分钟开发

    简介

    资源包,亦可根据用途称为主题包、字体包、语言包等,它允许你一定程度上自定义轻雪的外观,并且不用修改源代码

    • 资源/主题商店提供了一些资源包供你选择,你也可以自己制作资源包
    • 资源包的制作很简单,如果你接触过Minecraft的资源包,那么你能够很快就上手,仅需按照原有路径进行文件替换即可,讲起打包成一个新的资源包。
    • 部分内容制作需要一点点前端基础,例如htmlcss
    • 轻雪原版资源包请查看LiteyukiBot/liteyuki/resources,可以在此基础上进行修改
    • 欢迎各位投稿资源包到轻雪资源商店

    请注意,主题包中的html渲染使用Js来规定数据的渲染位置,请确保您所编写的html代码能被Bot解析,否则会导致渲染失败或渲染结果不理想/异常/错位等无法预料的事情发生。推荐在编写html时同时更改对应Js代码,以避免出现无法预料的问题。


    加载资源包

    • 资源包通常是以.zip格式压缩的,只需要将其解压到根目录resources目录下即可,注意不要嵌套文件夹,正常的路径应该是这样的
    main.py
    @@ -49,6 +49,6 @@ resources
     # 你可以自定义一些信息,但请保证以上三个字段
     ...
     
    • 资源包加载遵循一个优先级,即后加载的资源包会覆盖前面的资源包,例如,你在A包中定义了一个index.html文件,B包也定义了一个index.html文件,那么加载B包后,A包中的index.html文件会被覆盖
    • 对于不同资源包的不同文件,是可以相对引用的,例如你在A中定义了templates/index.html,在B中定义了templates/style.css,可以在A的index.html中用./style.css相对路径引用B中的css

    提示

    资源包的结构会随着轻雪的更新而有变动,第三方资源包开发者需要注意版本兼容性,同时用户也应该自行选择可用的资源包

    - + diff --git a/dev/index.html b/dev/index.html index dd8dac5c..a19564ca 100644 --- a/dev/index.html +++ b/dev/index.html @@ -30,11 +30,11 @@ 开发及贡献 | LiteyukiBot 轻雪机器人 - - + + - + diff --git a/foolsday.html b/foolsday.html index 4638b58a..7687ac9d 100644 --- a/foolsday.html +++ b/foolsday.html @@ -30,11 +30,11 @@ 首页 | LiteyukiBot 轻雪机器人 - - + +
    跳至主要內容
    HeavylavaBot666

    HeavylavaBot666

    重浆机器人,一个以笨重和复杂为设计理念基于Koishi114514的TwoBotv1919810标准聊天机器人,可用于雪地清扫,使用Typethon编写

    快速结束奇怪的册子

    简洁至下

    基于Koishi.js233

    拥有辣鸡的生态支持

    盲目插件管理

    基于nbshi使用xmpn和bib,让你无法安装/卸载插件

    纯命令行

    老的掉牙的交互模式,必须手打指令

    猪蹄支持

    支持多种烤猪蹄样式,丢弃烤箱,拥抱烧烤架,满足你的干饭需求

    去国际化

    支持多种语言,包括i18n部分语言和自行扩展的语言代码

    超难配置

    无需过多配置,开箱即用

    高占用

    使用更多的意义不明的依赖和资源

    一个Bot标准

    支持OneBotv11/12标准的四种通信协议

    Alconna

    使用Alconna实现低效命令解析

    不准更新

    要更新自己写新版本去

    服务支持

    内置重浆API,但随时可能提桶跑路

    闭源

    要源代码自己逆向去

    慢速部署

    • 安装 winget 和 nothing.js

    • 使用 git clone https://github.com/snowykami/LiteyukiBot 以克隆项目至FTP。

      如果无法连接到PoonHub,可以使用 git clone https://gitee.com/snowykami/LiteyukiBot

    • 使用 cd LiteyukiBot 切换到项目目录。

    • 使用 npm install -r requirements.txt 安装项目依赖。

      如果你有多个 nothing.js 环境,请使用 pythonx -m npm install -r requirements.txt

    • 使用 node main.py 启动项目。

    - + diff --git a/index.html b/index.html index 506b540d..588b4ce7 100644 --- a/index.html +++ b/index.html @@ -30,11 +30,11 @@ 首页 | LiteyukiBot 轻雪机器人 - - + +
    跳至主要內容
    LiteyukiBotLiteyukiBot

    LiteyukiBot

    LiteyukiBot 轻雪机器人,综合性的机器人应用及管理框架

    快速部署使用手册

    简洁至上

    支持多种框架

    兼容nonebot,melobot等,拥有良好的生态支持

    便捷管理

    使用包管理器,便捷管理插件及资源包

    主题支持

    使用资源包对外观进行完全自定义

    国际化

    通过资源包支持多种语言

    简易使用

    无需繁琐前期过程,开箱即用

    超高性能

    500个插件,2s内启动

    滚动更新

    让你的机器人保持最新提交

    开源项目

    项目遵循MIT LICENCE开源,欢迎各位的贡献

    快速部署

    • 安装 Git 及 Python3.10+

    • 使用 git clone https://github.com/LiteyukiStudio/LiteyukiBot --depth=1 以克隆项目至本地。

      如果无法连接到GitHub,可以使用 git clone https://gitee.com/snowykami/LiteyukiBot --depth=1

    • 使用 cd LiteyukiBot 切换到项目目录。

    • 使用 pip install -r requirements.txt 安装项目依赖。

      如果你有多个 Python 环境,请使用 pythonx -m pip install -r requirements.txt

    • 使用 python main.py 启动项目。

    - + diff --git a/store/index.html b/store/index.html index 7bc7b5bb..77789952 100644 --- a/store/index.html +++ b/store/index.html @@ -30,11 +30,11 @@ 资源及插件商店 | LiteyukiBot 轻雪机器人 - - + + - + diff --git a/store/plugin.html b/store/plugin.html index 7c4cdede..910c4263 100644 --- a/store/plugin.html +++ b/store/plugin.html @@ -30,11 +30,11 @@ 插件商店 | LiteyukiBot 轻雪机器人 - - + +
    跳至主要內容

    插件商店

    远野千束小于 1 分钟使用手册

    插件商店

    内容来自NoneBot插件商店和轻雪商店,在此仅作引用,具体请访问NoneBot插件商店

    - + diff --git a/store/resource.html b/store/resource.html index 037ad3a6..fb5d1501 100644 --- a/store/resource.html +++ b/store/resource.html @@ -30,11 +30,11 @@ 资源商店 | LiteyukiBot 轻雪机器人 - - + + - + diff --git a/usage/agreement.html b/usage/agreement.html index aae742c5..e3644d54 100644 --- a/usage/agreement.html +++ b/usage/agreement.html @@ -30,11 +30,11 @@ 用户协议 | LiteyukiBot 轻雪机器人 - - + +
    跳至主要內容

    用户协议

    远野千束小于 1 分钟使用手册

    1. 本项目遵循MIT协议,你可以自由使用,修改,分发,但是请保留原作者信息
    2. 你可以选择开启auto_report(默认开启),轻雪会收集以下内容
      • 运行环境的设备信息:CPU,内存,系统信息及Python信息
      • 插件信息(不含插件数据)
      • 部分异常信息,
      • 会话负载信息(不含隐私部分) 以上内容仅用于项目的优化,不包含任何隐私信息,且通过安全的方式传输到轻雪的服务器,若你不希望提供这些信息,可以在配置文件中把auto_report设定为false
    3. 本项目不会收集用户的任何隐私信息,但请注意甄别第三方插件的安全性
    4. 使用此项目代表你已经同意以上协议
    - + diff --git a/usage/basic_command.html b/usage/basic_command.html index 764de776..af5f354f 100644 --- a/usage/basic_command.html +++ b/usage/basic_command.html @@ -30,11 +30,11 @@ 基础命令 | LiteyukiBot 轻雪机器人 - - + +
    跳至主要內容

    基础命令

    远野千束大约 3 分钟使用手册

    基础插件


    提示

    参数<param>为必填参数,[option]为可选参数。

    命令别名:配置了命令别名的命令可以使用别名代替原命令,例如npm install ~可以使用插件 安装 ~代替。

    轻雪命令liteyuki_command

    命令说明权限举例可用参数
    reload-liteyuki重载轻雪超级用户
    update-liteyuki更新轻雪超级用户
    liteecho查看当前bot 版本超级用户
    status查看统计信息和状态超级用户
    config set <key> value添加配置项,若存在则会覆盖,输入值会被执行以转换为正确的类型,"10"和10是不一样的超级用户config set name 'liteyuki-bot'<key>: 若存在则覆盖, 若不存在则创建于config.yml ; value: yml格式的所有合法内容
    config get [key] 查询配置项,不带key返回配置项列表,推荐私聊使用超级用户config get name<key>: 若存在则返回, 若不存在则返回空
    switch-image-mode 在普通图片和Markdown大图之间切换,该功能需要commit:505468b及以后的Lagrange.OneBot,默认普通图片超级用户switch-image-mode
    /api api_name [args] 调用机器人API超级用户/api get_group_member_list group_id=1234567<args>: 参数列表, 格式为onebot v11协议api, 可用%20代替空格
    /function function_name [args] [kwargs] 调用机器人函数(.lyfunction语法)超级用户/function send_group_msg group_id=1234567 message='hello'<args><kwargs>: 参数列表, api格式为onebot v11协议api
    group enable/disable [group_id]在群聊启用/停用机器人,group_id仅超级用户可用超级用户,群聊仅群主、管理员、超级用户可用group enable 1145141919810<group_id>: 群号
    liteyuki-docs查看轻雪文档所有人

    命令别名

    命令别名
    status状态
    reload-liteyuki重启轻雪
    update-liteyuki更新轻雪
    reload-resources重载资源
    config配置, set 设置 / get 查询
    switch-image-mode切换图片模式
    liteyuki-docs轻雪文档
    group群聊, enable 启用 / disable 停用

    插件/包管理器 liteyuki_pacman

    • 插件管理
    命令说明权限
    npm update更新插件商店索引超级用户
    npm install <plugin_name>安装插件超级用户
    npm uninstall <plugin_name>卸载插件超级用户
    npm search <keywords...>通过关键词搜索插件超级用户
    npm enable-global/disable-global <plugin_name>全局启用/停用插件超级用户
    npm enable/disable <plugin_name> [--group <group_id>]当前会话启用/停用插件群聊仅群主、管理员、超级用户可用,私聊所有人可用
    npm list [page] [num]列出所有插件 page为页数,num为每页显示数量群聊仅群主、管理员、超级用户可用,私聊所有人可用
    help <plugin_name>查看插件帮助所有人
    • 资源包管理
    命令说明权限
    rpm list [page] [num]列出所有资源包 page为页数,num为每页显示数量超级用户
    rpm load <pack_name>加载资源包超级用户
    rpm unload <pack_name>卸载资源包超级用户
    rpm change <pack_name>修改优先级超级用户
    rpm reload重载所有资源包超级用户

    命令别名

    命令别名
    npm插件管理
    update更新
    install安装
    uninstall卸载
    search搜索
    enable启用
    disable停用
    enable-global全局启用
    disable-global全局停用
    rpm资源包
    load加载
    unload卸载
    change更改
    reload重载
    list列表
    help帮助

    注意

    受限于NoneBot2钩子函数的依赖注入参数,插件停用只能阻断传入响应,对于主动推送的插件不生效,请阅读插件主页的说明。


    用户管理liteyuki_user

    命令说明权限
    profile查看用户信息菜单所有人
    profile set <key> [value]设置用户信息或打开属性设置菜单所有人
    profile get <key>获取用户信息所有人

    ###命令别名

    命令别名
    profile个人信息
    set设置
    get查询
    - + diff --git a/usage/extra_command.html b/usage/extra_command.html index 72900224..72bc7fb0 100644 --- a/usage/extra_command.html +++ b/usage/extra_command.html @@ -30,8 +30,8 @@ 功能命令 | LiteyukiBot 轻雪机器人 - - + +
    跳至主要內容

    功能命令

    远野千束小于 1 分钟使用手册

    功能插件命令

    轻雪天气liteyuki_weather

    查询实时天气,支持绑定城市,支持中英文城市名,支持多个关键词查询。

    配置项

    weather_key: "" # 和风天气的天气key,会自动判断key版本
    @@ -39,6 +39,6 @@
     

    查询目标地实时天气,例如:"天气 北京 海淀", "weather Tokyo Shinjuku"

    bind-city <keywords...> # Keywords为城市名,支持中英文
     

    绑定查询城市,个人全局生效

    命令别名

    命令别名
    weather天气
    bind-city绑定城市

    统计信息liteyuki_statistics

    统计信息 命令

    statistic message --duration <duration> --period <period> --group [current|group_id] --bot [current|bot_id]
     

    功能: 用于统计Bot接收到的消息, 统计周期为period, 统计时间范围为duration

    参数格式
    duration使用通用日期简写: 1d(天), 1h(小时), 45m(分钟), 14s(秒)
    period使用通用日期简写: 1d(天), 1h(小时), 45m(分钟), 14s(秒)
    groupcurrent (当前群聊) 或 group_id (QQ群号)
    botcurrent (当前Bot) 或 bot_id

    命令别名

    命令别名
    statisticstat
    messagem
    --duration-d
    --period`-p
    --group-g
    --bot-b
    currentc
    - + diff --git a/usage/index.html b/usage/index.html index e3a1809e..89db0a76 100644 --- a/usage/index.html +++ b/usage/index.html @@ -30,11 +30,11 @@ 使用手册 | LiteyukiBot 轻雪机器人 - - + + - + diff --git a/usage/lyapi.html b/usage/lyapi.html index b9ba115b..c95e943c 100644 --- a/usage/lyapi.html +++ b/usage/lyapi.html @@ -30,11 +30,11 @@ 轻雪API | LiteyukiBot 轻雪机器人 - - + +
    跳至主要內容

    轻雪API

    远野千束小于 1 分钟使用指南配置部署

    轻雪API

    轻雪API是轻雪运行中部分服务的支持,由go语言编写,例如错误反馈,图床链接等,目前服务由轻雪服务器提供,用户无需额外部署

    - +