PageSourceSearch

https://harryxiong24.github.io/assets/app-430054e9.js

js harryxiong24.github.io collected 2026-10-03 09:16:54 UTC 599,154 bytes, 163 lines download raw bytes

1const s0="modulepreload",l0=function(e){return"/"+e},Ti={},a=function(t,n,r){if(!n||n.length===0)return t();const o=document.getElementsByTagName("link");return Promise.all(n.map(i=>{if(i=l0(i),i in Ti)return;Ti[i]=!0;const s=i.endsWith(".css"),c=s?'[rel="stylesheet"]':"";if(!!r)for(let v=o.length-1;v>=0;v--){const f=o[v];if(f.href===i&&(!s||f.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${i}"]${c}`))return;const u=document.createElement("link");if(u.rel=s?"stylesheet":s0,s||(u.as="script",u.crossOrigin=""),u.href=i,document.head.appendChild(u),s)return new Promise((v,f)=>{u.addEventListener("load",v),u.addEventListener("error",()=>f(new Error(`Unable to preload CSS for ${i}`)))})})).then(()=>t())};function ya(e,t){const n=Object.create(null),r=e.split(",");for(let o=0;o<r.length;o++)n[r[o]]=!0;return t?o=>!!n[o.toLowerCase()]:o=>!!n[o]}const Le={},En=[],_t=()=>{},c0=()=>!1,d0=/^on[^a-z]/,_r=e=>d0.test(e),Aa=e=>e.startsWith("onUpdate:"),Oe=Object.assign,za=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},u0=Object.prototype.hasOwnProperty,ve=(e,t)=>u0.call(e,t),Z=Array.isArray,yn=e=>io(e)==="[object Map]",Js=e=>io(e)==="[object Set]",ne=e=>typeof e=="function",je=e=>typeof e=="string",Ta=e=>typeof e=="symbol",Te=e=>e!==null&&typeof e=="object",Gs=e=>Te(e)&&ne(e.then)&&ne(e.catch),qs=Object.prototype.toString,io=e=>qs.call(e),v0=e=>io(e).slice(8,-1),Us=e=>io(e)==="[object Object]",La=e=>je(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,Qn=ya(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),so=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},p0=/-(\w)/g,dt=so(e=>e.replace(p0,(t,n)=>n?n.toUpperCase():"")),f0=/\B([A-Z])/g,jn=so(e=>e.replace(f0,"-$1").toLowerCase()),br=so(e=>e.charAt(0).toUpperCase()+e.slice(1)),To=so(e=>e?`on${br(e)}`:""),or=(e,t)=>!Object.is(e,t),Lo=(e,t)=>{for(let n=0;n<e.length;n++)e[n](t)},Qr=(e,t,n)=>{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,value:n})},h0=e=>{const t=parseFloat(e);return isNaN(t)?e:t},m0=e=>{const t=je(e)?Number(e):NaN;return isNaN(t)?e:t};let Li;const qo=()=>Li||(Li=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function Pa(e){if(Z(e)){const t={};for(let n=0;n<e.length;n++){const r=e[n],o=je(r)?E0(r):Pa(r);if(o)for(const i in o)t[i]=o[i]}return t}else{if(je(e))return e;if(Te(e))return e}}const _0=/;(?![^(]*\))/g,b0=/:([^]+)/,g0=/\/\*[^]*?\*\//g;function E0(e){const t={};return e.replace(g0,"").split(_0).forEach(n=>{if(n){const r=n.split(b0);r.length>1&&(t[r[0].trim()]=r[1].trim())}}),t}function wa(e){let t="";if(je(e))t=e;else if(Z(e))for(let n=0;n<e.length;n++){const r=wa(e[n]);r&&(t+=r+" ")}else if(Te(e))for(const n in e)e[n]&&(t+=n+" ");return t.trim()}const y0="itemscope,allowfullscreen,formnovalidate,ismap,nomodule,novalidate,readonly",A0=ya(y0);function Ks(e){return!!e||e===""}const o6=e=>je(e)?e:e==null?"":Z(e)||Te(e)&&(e.toString===qs||!ne(e.toString))?JSON.stringify(e,Qs,2):String(e),Qs=(e,t)=>t&&t.__v_isRef?Qs(e,t.value):yn(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[r,o])=>(n[`${r} =>`]=o,n),{})}:Js(t)?{[`Set(${t.size})`]:[...t.values()]}:Te(t)&&!Z(t)&&!Us(t)?String(t):t;let Ze;class z0{constructor(t=!1){this.detached=t,this._active=!0,this.effects=[],this.cleanups=[],this.parent=Ze,!t&&Ze&&(this.index=(Ze.scopes||(Ze.scopes=[])).push(this)-1)}get active(){return this._active}run(t){if(this._active){const n=Ze;try{return Ze=this,t()}finally{Ze=n}}}on(){Ze=this}off(){Ze=this.parent}stop(t){if(this._active){let n,r;for(n=0,r=this.effects.length;n<r;n++)this.effects[n].stop();for(n=0,r=this.cleanups.length;n<r;n++)this.cleanups[n]();if(this.scopes)for(n=0,r=this.scopes.length;n<r;n++)this.scopes[n].stop(!0);if(!this.detached&&this.parent&&!t){const o=this.parent.scopes.pop();o&&o!==this&&(this.parent.scopes[this.index]=o,o.index=this.index)}this.parent=void 0,this._active=!1}}}function T0(e,t=Ze){t&&t.active&&t.effects.push(e)}function Xs(){return Ze}function L0(e){Ze&&Ze.cleanups.push(e)}const Oa=e=>{const t=new Set(e);return t.w=0,t.n=0,t},Ys=e=>(e.w&Kt)>0,Zs=e=>(e.n&Kt)>0,P0=({deps:e})=>
vendor: 14,001 bytes, line 1
1{if(e.length)for(let t=0;t<e.length;t++)e[t].w|=Kt},w0=e=>{const{deps:t}=e;if(t.length){let n=0;for(let r=0;r<t.length;r++){const o=t[r];Ys(o)&&!Zs(o)?o.delete(e):t[n++]=o,o.w&=~Kt,o.n&=~Kt}t.length=n}},Xr=new WeakMap;let Un=0,Kt=1;const Uo=30;let ht;const sn=Symbol(""),Ko=Symbol("");class Da{constructor(t,n=null,r){this.fn=t,this.scheduler=n,this.active=!0,this.deps=[],this.parent=void 0,T0(this,r)}run(){if(!this.active)return this.fn();let t=ht,n=qt;for(;t;){if(t===this)return;t=t.parent}try{return this.parent=ht,ht=this,qt=!0,Kt=1<<++Un,Un<=Uo?P0(this):Pi(this),this.fn()}finally{Un<=Uo&&w0(this),Kt=1<<--Un,ht=this.parent,qt=n,this.parent=void 0,this.deferStop&&this.stop()}}stop(){ht===this?this.deferStop=!0:this.active&&(Pi(this),this.onStop&&this.onStop(),this.active=!1)}}function Pi(e){const{deps:t}=e;if(t.length){for(let n=0;n<t.length;n++)t[n].delete(e);t.length=0}}let qt=!0;const el=[];function kn(){el.push(qt),qt=!1}function Cn(){const e=el.pop();qt=e===void 0?!0:e}function Ke(e,t,n){if(qt&&ht){let r=Xr.get(e);r||Xr.set(e,r=new Map);let o=r.get(n);o||r.set(n,o=Oa()),tl(o)}}function tl(e,t){let n=!1;Un<=Uo?Zs(e)||(e.n|=Kt,n=!Ys(e)):n=!e.has(ht),n&&(e.add(ht),ht.deps.push(e))}function kt(e,t,n,r,o,i){const s=Xr.get(e);if(!s)return;let c=[];if(t==="clear")c=[...s.values()];else if(n==="length"&&Z(e)){const d=Number(r);s.forEach((u,v)=>{(v==="length"||v>=d)&&c.push(u)})}else switch(n!==void 0&&c.push(s.get(n)),t){case"add":Z(e)?La(n)&&c.push(s.get("length")):(c.push(s.get(sn)),yn(e)&&c.push(s.get(Ko)));break;case"delete":Z(e)||(c.push(s.get(sn)),yn(e)&&c.push(s.get(Ko)));break;case"set":yn(e)&&c.push(s.get(sn));break}if(c.length===1)c[0]&&Qo(c[0]);else{const d=[];for(const u of c)u&&d.push(...u);Qo(Oa(d))}}function Qo(e,t){const n=Z(e)?e:[...e];for(const r of n)r.computed&&wi(r);for(const r of n)r.computed||wi(r)}function wi(e,t){(e!==ht||e.allowRecurse)&&(e.scheduler?e.scheduler():e.run())}function O0(e,t){var n;return(n=Xr.get(e))==null?void 0:n.get(t)}const D0=ya("__proto__,__v_isRef,__isVue"),nl=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(Ta)),x0=xa(),I0=xa(!1,!0),V0=xa(!0),Oi=R0();function R0(){const e={};return["includes","indexOf","lastIndexOf"].forEach(t=>{e[t]=function(...n){const r=le(this);for(let i=0,s=this.length;i<s;i++)Ke(r,"get",i+"");const o=r[t](...n);return o===-1||o===!1?r[t](...n.map(le)):o}}),["push","pop","shift","unshift","splice"].forEach(t=>{e[t]=function(...n){kn();const r=le(this)[t].apply(this,n);return Cn(),r}}),e}function S0(e){const t=le(this);return Ke(t,"has",e),t.hasOwnProperty(e)}function xa(e=!1,t=!1){return function(r,o,i){if(o==="__v_isReactive")return!e;if(o==="__v_isReadonly")return e;if(o==="__v_isShallow")return t;if(o==="__v_raw"&&i===(e?t?Q0:sl:t?il:al).get(r))return r;const s=Z(r);if(!e){if(s&&ve(Oi,o))return Reflect.get(Oi,o,i);if(o==="hasOwnProperty")return S0}const c=Reflect.get(r,o,i);return(Ta(o)?nl.has(o):D0(o))||(e||Ke(r,"get",o),t)?c:Ve(c)?s&&La(o)?c:c.value:Te(c)?e?dn(c):gr(c):c}}const j0=rl(),k0=rl(!0);function rl(e=!1){return function(n,r,o,i){let s=n[r];if(On(s)&&Ve(s)&&!Ve(o))return!1;if(!e&&(!Yr(o)&&!On(o)&&(s=le(s),o=le(o)),!Z(n)&&Ve(s)&&!Ve(o)))return s.value=o,!0;const c=Z(n)&&La(r)?Number(r)<n.length:ve(n,r),d=Reflect.set(n,r,o,i);return n===le(i)&&(c?or(o,s)&&kt(n,"set",r,o):kt(n,"add",r,o)),d}}function C0(e,t){const n=ve(e,t);e[t];const r=Reflect.deleteProperty(e,t);return r&&n&&kt(e,"delete",t,void 0),r}function M0(e,t){const n=Reflect.has(e,t);return(!Ta(t)||!nl.has(t))&&Ke(e,"has",t),n}function B0(e){return Ke(e,"iterate",Z(e)?"length":sn),Reflect.ownKeys(e)}const ol={get:x0,set:j0,deleteProperty:C0,has:M0,ownKeys:B0},$0={get:V0,set(e,t){return!0},deleteProperty(e,t){return!0}},F0=Oe({},ol,{get:I0,set:k0}),Ia=e=>e,lo=e=>Reflect.getPrototypeOf(e);function jr(e,t,n=!1,r=!1){e=e.__v_raw;const o=le(e),i=le(t);n||(t!==i&&Ke(o,"get",t),Ke(o,"get",i));const{has:s}=lo(o),c=r?Ia:n?Sa:ar;if(s.call(o,t))return c(e.get(t));if(s.call(o,i))return c(e.get(i));e!==o&&e.get(t)}function kr(e,t=!1){const n=this.__v_raw,r=le(n),o=le(e);return t||(e!==o&&Ke(r,"has",e),Ke(r,"has",o)),e===o?n.has(e):n.has(e)||n.has(o)}function Cr(e,t=!1){return e=e.__v_raw,!t&&Ke(le(e),"iterate",sn),Reflect.get(e,"size",e)}function Di(e){e=le(e);const t=le(this);return lo(t).has.call(t,e)||(t.add(e),kt(t,"add",e,e)),this}function xi(e,t){t=le(t);const n=le(this),{has:r,get:o}=lo(n);let i=r.call(n,e);i||(e=le(e),i=r.call(n,e));const s=o.call(n,e);return n.set(e,t),i?or(t,s)&&kt(n,"set",e,t):kt(n,"add",e,t),this}function Ii(e){const t=le(this),{has:n,get:r}=lo(t);let o=n.call(t,e);o||(e=le(e),o=n.call(t,e)),r&&r.call(t,e);const i=t.delete(e);return o&&kt(t,"delete",e,void 0),i}function Vi(){const e=le(this),t=e.size!==0,n=e.clear();return t&&kt(e,"clear",void 0,void 0),n}function Mr(e,t){return function(r,o){const i=this,s=i.__v_raw,c=le(s),d=t?Ia:e?Sa:ar;return!e&&Ke(c,"iterate",sn),s.forEach((u,v)=>r.call(o,d(u),d(v),i))}}function Br(e,t,n){return function(...r){const o=this.__v_raw,i=le(o),s=yn(i),c=e==="entries"||e===Symbol.iterator&&s,d=e==="keys"&&s,u=o[e](...r),v=n?Ia:t?Sa:ar;return!t&&Ke(i,"iterate",d?Ko:sn),{next(){const{value:f,done:h}=u.next();return h?{value:f,done:h}:{value:c?[v(f[0]),v(f[1])]:v(f),done:h}},[Symbol.iterator](){return this}}}}function Bt(e){return function(...t){return e==="delete"?!1:this}}function W0(){const e={get(i){return jr(this,i)},get size(){return Cr(this)},has:kr,add:Di,set:xi,delete:Ii,clear:Vi,forEach:Mr(!1,!1)},t={get(i){return jr(this,i,!1,!0)},get size(){return Cr(this)},has:kr,add:Di,set:xi,delete:Ii,clear:Vi,forEach:Mr(!1,!0)},n={get(i){return jr(this,i,!0)},get size(){return Cr(this,!0)},has(i){return kr.call(this,i,!0)},add:Bt("add"),set:Bt("set"),delete:Bt("delete"),clear:Bt("clear"),forEach:Mr(!0,!1)},r={get(i){return jr(this,i,!0,!0)},get size(){return Cr(this,!0)},has(i){return kr.call(this,i,!0)},add:Bt("add"),set:Bt("set"),delete:Bt("delete"),clear:Bt("clear"),forEach:Mr(!0,!0)};return["keys","values","entries",Symbol.iterator].forEach(i=>{e[i]=Br(i,!1,!1),n[i]=Br(i,!0,!1),t[i]=Br(i,!1,!0),r[i]=Br(i,!0,!0)}),[e,n,t,r]}const[N0,H0,J0,G0]=W0();function Va(e,t){const n=t?e?G0:J0:e?H0:N0;return(r,o,i)=>o==="__v_isReactive"?!e:o==="__v_isReadonly"?e:o==="__v_raw"?r:Reflect.get(ve(n,o)&&o in r?n:r,o,i)}const q0={get:Va(!1,!1)},U0={get:Va(!1,!0)},K0={get:Va(!0,!1)},al=new WeakMap,il=new WeakMap,sl=new WeakMap,Q0=new WeakMap;function X0(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function Y0(e){return e.__v_skip||!Object.isExtensible(e)?0:X0(v0(e))}function gr(e){return On(e)?e:Ra(e,!1,ol,q0,al)}function ll(e){return Ra(e,!1,F0,U0,il)}function dn(e){return Ra(e,!0,$0,K0,sl)}function Ra(e,t,n,r,o){if(!Te(e)||e.__v_raw&&!(t&&e.__v_isReactive))return e;const i=o.get(e);if(i)return i;const s=Y0(e);if(s===0)return e;const c=new Proxy(e,s===2?r:n);return o.set(e,c),c}function An(e){return On(e)?An(e.__v_raw):!!(e&&e.__v_isReactive)}function On(e){return!!(e&&e.__v_isReadonly)}function Yr(e){return!!(e&&e.__v_isShallow)}function cl(e){return An(e)||On(e)}function le(e){const t=e&&e.__v_raw;return t?le(t):e}function dl(e){return Qr(e,"__v_skip",!0),e}const ar=e=>Te(e)?gr(e):e,Sa=e=>Te(e)?dn(e):e;function ja(e){qt&&ht&&(e=le(e),tl(e.dep||(e.dep=Oa())))}function ka(e,t){e=le(e);const n=e.dep;n&&Qo(n)}function Ve(e){return!!(e&&e.__v_isRef===!0)}function J(e){return ul(e,!1)}function $e(e){return ul(e,!0)}function ul(e,t){return Ve(e)?e:new Z0(e,t)}class Z0{constructor(t,n){this.__v_isShallow=n,this.dep=void 0,this.__v_isRef=!0,this._rawValue=n?t:le(t),this._value=n?t:ar(t)}get value(){return ja(this),this._value}set value(t){const n=this.__v_isShallow||Yr(t)||On(t);t=n?t:le(t),or(t,this._rawValue)&&(this._rawValue=t,this._value=n?t:ar(t),ka(this))}}function ln(e){return Ve(e)?e.value:e}const eu={get:(e,t,n)=>ln(Reflect.get(e,t,n)),set:(e,t,n,r)=>{const o=e[t];return Ve(o)&&!Ve(n)?(o.value=n,!0):Reflect.set(e,t,n,r)}};function vl(e){return An(e)?e:new Proxy(e,eu)}class tu{constructor(t){this.dep=void 0,this.__v_isRef=!0;const{get:n,set:r}=t(()=>ja(this),()=>ka(this));this._get=n,this._set=r}get value(){return this._get()}set value(t){this._set(t)}}function nu(e){return new tu(e)}class ru{constructor(t,n,r){this._object=t,this._key=n,this._defaultValue=r,this.__v_isRef=!0}get value(){const t=this._object[this._key];return t===void 0?this._defaultValue:t}set value(t){this._object[this._key]=t}get dep(){return O0(le(this._object),this._key)}}class ou{constructor(t){this._getter=t,this.__v_isRef=!0,this.__v_isReadonly=!0}get value(){return this._getter()}}function Mn(e,t,n){return Ve(e)?e:ne(e)?new ou(e):Te(e)&&arguments.length>1?au(e,t,n):J(e)}function au(e,t,n){const r=e[t];return Ve(r)?r:new ru(e,t,n)}class iu{constructor(t,n,r,o){this._setter=n,this.dep=void 0,this.__v_isRef=!0,this.__v_isReadonly=!1,this._dirty=!0,this.effect=new Da(t,()=>{this._dirty||(this._dirty=!0,ka(this))}),this.effect.computed=this,this.effect.active=this._cacheable=!o,this.__v_isReadonly=r}get value(){const t=le(this);return ja(t),(t._dirty||!t._cacheable)&&(t._dirty=!1,t._value=t.effect.run()),t._value}set value(t){this._setter(t)}}function su(e,t,n=!1){let r,o;const i=ne(e);return i?(r=e,o=_t):(r=e.get,o=e.set),new iu(r,o,i||!o,n)}function Ut(e,t,n,r){let o;try{o=r?e(...r):e()}catch(i){Er(i,t,n)}return o}function lt(e,t,n,r){if(ne(e)){const i=Ut(e,t,n,r);return i&&Gs(i)&&i.catch(s=>{Er(s,t,n)}),i}const o=[];for(let i=0;i<e.length;i++)o.push(lt(e[i],t,n,r));return o}function Er(e,t,n,r=!0){const o=t?t.vnode:null;if(t){let i=t.parent;const s=t.proxy,c=n;for(;i;){const u=i.ec;if(u){for(let v=0;v<u.length;v++)if(u[v](e,s,c)===!1)return}i=i.parent}const d=t.appContext.config.errorHandler;if(d){Ut(d,null,10,[e,s,c]);return}}lu(e,n,o,r)}function lu(e,t,n,r=!0){console.error(e)}let ir=!1,Xo=!1;const Be=[];let Pt=0;const zn=[];let Rt=null,rn=0;const pl=Promise.resolve();let Ca=null;function Bn(e){const t=Ca||pl;return e?t.then(this?e.bind(this):e):t}function cu(e){let t=Pt+1,n=Be.length;for(;t<n;){const r=t+n>>>1;sr(Be[r])<e?t=r+1:n=r}return t}function co(e){(!Be.length||!Be.includes(e,ir&&e.allowRecurse?Pt+1:Pt))&&(e.id==null?Be.push(e):Be.splice(cu(e.id),0,e),fl())}function fl(){!ir&&!Xo&&(Xo=!0,Ca=pl.then(hl))}function du(e){const t=Be.indexOf(e);t>Pt&&Be.splice(t,1)}function uu(e){Z(e)?zn.push(...e):(!Rt||!Rt.includes(e,e.allowRecurse?rn+1:rn))&&zn.push(e),fl()}function Ri(e,t=ir?Pt+1:0){for(;t<Be.length;t++){const n=Be[t];n&&n.pre&&(Be.splice(t,1),t--,n())}}function Zr(e){if(zn.length){const t=[...new Set(zn)];if(zn.length=0,Rt){Rt.push(...t);return}for(Rt=t,Rt.sort((n,r)=>sr(n)-sr(r)),rn=0;rn<Rt.length;rn++)Rt[rn]();Rt=null,rn=0}}const sr=e=>e.id==null?1/0:e.id,vu=(e,t)=>{const n=sr(e)-sr(t);if(n===0){if(e.pre&&!t.pre)return-1;if(t.pre&&!e.pre)return 1}return n};function hl(e){Xo=!1,ir=!0,Be.sort(vu);const t=_t;try{for(Pt=0;Pt<Be.length;Pt++){const n=Be[Pt];n&&n.active!==!1&&Ut(n,null,14)}}finally{Pt=0,Be.length=0,Zr(),ir=!1,Ca=null,(Be.length||zn.length)&&hl()}}function pu(e,t,...n){if(e.isUnmounted)return;const r=e.vnode.props||Le;let o=n;const i=t.startsWith("update:"),s=i&&t.slice(7);if(s&&s in r){const v=`${s==="modelValue"?"model":s}Modifiers`,{number:f,trim:h}=r[v]||Le;h&&(o=n.map(m=>je(m)?m.trim():m)),f&&(o=n.map(h0))}let c,d=r[c=To(t)]||r[c=To(dt(t))];!d&&i&&(d=r[c=To(jn(t))]),d&&lt(d,e,6,o);const u=r[c+"Once"];if(u){if(!e.emitted)e.emitted={};else if(e.emitted[c])return;e.emitted[c]=!0,lt(u,e,6,o)}}function ml(e,t,n=!1){const r=t.emitsCache,o=r.get(e);if(o!==void 0)return o;const i=e.emits;let s={},c=!1;if(!ne(e)){const d=u=>{const v=ml(u,t,!0);v&&(c=!0,Oe(s,v))};!n&&t.mixins.length&&t.mixins.forEach(d),e.extends&&d(e.extends),e.mixins&&e.mixins.forEach(d)}return!i&&!c?(Te(e)&&r.set(e,null),null):(Z(i)?i.forEach(d=>s[d]=null):Oe(s,i),Te(e)&&r.set(e,s),s)}function uo(e,t){return!e||!_r(t)?!1:(t=t.slice(2).replace(/Once$/,""),ve(e,t[0].toLowerCase()+t.slice(1))||ve(e,jn(t))||ve(e,t))}let st=null,_l=null;function eo(e){const t=st;return st=e,_l=e&&e.type.__scopeId||null,t}function fu(e,t=st,n){if(!t||e._n)return e;const r=(...o)=>{r._d&&Ji(-1);const i=eo(t);let s;try{s=e(...o)}finally{eo(i),r._d&&Ji(1)}return s};return r._n=!0,r._c=!0,r._d=!0,r}function Po(e){const{type:t,vnode:n,proxy:r,withProxy:o,props:i,propsOptions:[s],slots:c,attrs:d,emit:u,render:v,renderCache:f,data:h,setupState:m,ctx:E,inheritAttrs:A}=e;let L,g;const y=eo(e);try{if(n.shapeFlag&4){const x=o||r;L=ft(v.call(x,x,f,i,m,h,E)),g=d}else{const x=t;L=ft(x.length>1?x(i,{attrs:d,slots:c,emit:u}):x(i,null)),g=t.props?d:hu(d)}}catch(x){er.length=0,Er(x,e,1),L=we(ct)}let P=L;if(g&&A!==!1){const x=Object.keys(g),{shapeFlag:N}=P;x.length&&N&7&&(s&&x.some(Aa)&&(g=mu(g,s)),P=Qt(P,g))}return n.dirs&&(P=Qt(P),P.dirs=P.dirs?P.dirs.concat(n.dirs):n.dirs),n.transition&&(P.transition=n.transition),L=P,eo(y),L}const hu=e=>{let t;for(const n in e)(n==="class"||n==="style"||_r(n))&&((t||(t={}))[n]=e[n]);return t},mu=(e,t)=>{const n={};for(const r in e)(!Aa(r)||!(r.slice(9)in t))&&(n[r]=e[r]);return n};function _u(e,t,n){const{props:r,children:o,component:i}=e,{props:s,children:c,patchFlag:d}=t,u=i.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&d>=0){if(d&1024)return!0;if(d&16)return r?Si(r,s,u):!!s;if(d&8){const v=t.dynamicProps;for(let f=0;f<v.length;f++){const h=v[f];if(s[h]!==r[h]&&!uo(u,h))return!0}}}else return(o||c)&&(!c||!c.$stable)?!0:r===s?!1:r?s?Si(r,s,u):!0:!!s;return!1}function Si(e,t,n){const r=Object.keys(t);if(r.length!==Object.keys(e).length)return!0;for(let o=0;o<r.length;o++){const i=r[o];if(t[i]!==e[i]&&!uo(n,i))return!0}return!1}function bu({vnode:e,parent:t},n){for(;t&&t.subTree===e;)(e=t.vnode).el=n,t=t.parent}const gu=e=>e.__isSuspense;function bl(e,t){t&&t.pendingBranch?Z(e)?t.effects.push(...e):t.effects.push(e):uu(e)}function Eu(e,t){return Ma(e,null,t)}const $r={};
1function se(e,t,n){return Ma(e,t,n)}function Ma(e,t,{immediate:n,deep:r,flush:o,onTrack:i,onTrigger:s}=Le){var c;const d=Xs()===((c=Se)==null?void 0:c.scope)?Se:null;let u,v=!1,f=!1;if(Ve(e)?(u=()=>e.value,v=Yr(e)):An(e)?(u=()=>e,r=!0):Z(e)?(f=!0,v=e.some(x=>An(x)||Yr(x)),u=()=>e.map(x=>{if(Ve(x))return x.value;if(An(x))return _n(x);if(ne(x))return Ut(x,d,2)})):ne(e)?t?u=()=>Ut(e,d,2):u=()=>{if(!(d&&d.isUnmounted))return h&&h(),lt(e,d,3,[m])}:u=_t,t&&r){const x=u;u=()=>_n(x())}let h,m=x=>{h=y.onStop=()=>{Ut(x,d,4)}},E;if(In)if(m=_t,t?n&&lt(t,d,3,[u(),f?[]:void 0,m]):u(),o==="sync"){const x=h1();E=x.__watcherHandles||(x.__watcherHandles=[])}else return _t;let A=f?new Array(e.length).fill($r):$r;const L=()=>{if(y.active)if(t){const x=y.run();(r||v||(f?x.some((N,R)=>or(N,A[R])):or(x,A)))&&(h&&h(),lt(t,d,3,[x,A===$r?void 0:f&&A[0]===$r?[]:A,m]),A=x)}else y.run()};L.allowRecurse=!!t;let g;o==="sync"?g=L:o==="post"?g=()=>Je(L,d&&d.suspense):(L.pre=!0,d&&(L.id=d.uid),g=()=>co(L));const y=new Da(u,g);t?n?L():A=y.run():o==="post"?Je(y.run.bind(y),d&&d.suspense):y.run();const P=()=>{y.stop(),d&&d.scope&&za(d.scope.effects,y)};return E&&E.push(P),P}function yu(e,t,n){const r=this.proxy,o=je(e)?e.includes(".")?gl(r,e):()=>r[e]:e.bind(r,r);let i;ne(t)?i=t:(i=t.handler,n=t);const s=Se;xn(this);const c=Ma(o,i.bind(r),n);return s?xn(s):cn(),c}function gl(e,t){const n=t.split(".");return()=>{let r=e;for(let o=0;o<n.length&&r;o++)r=r[n[o]];return r}}function _n(e,t){if(!Te(e)||e.__v_skip||(t=t||new Set,t.has(e)))return e;if(t.add(e),Ve(e))_n(e.value,t);else if(Z(e))for(let n=0;n<e.length;n++)_n(e[n],t);else if(Js(e)||yn(e))e.forEach(n=>{_n(n,t)});else if(Us(e))for(const n in e)_n(e[n],t);return e}function Lt(e,t,n,r){const o=e.dirs,i=t&&t.dirs;for(let s=0;s<o.length;s++){const c=o[s];i&&(c.oldValue=i[s].value);let d=c.dir[r];d&&(kn(),lt(d,n,8,[e.el,c,e,t]),Cn())}}function El(){const e={isMounted:!1,isLeaving:!1,isUnmounting:!1,leavingVNodes:new Map};return _e(()=>{e.isMounted=!0}),$a(()=>{e.isUnmounting=!0}),e}const ot=[Function,Array],yl={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:ot,onEnter:ot,onAfterEnter:ot,onEnterCancelled:ot,onBeforeLeave:ot,onLeave:ot,onAfterLeave:ot,onLeaveCancelled:ot,onBeforeAppear:ot,onAppear:ot,onAfterAppear:ot,onAppearCancelled:ot},Au={name:"BaseTransition",props:yl,setup(e,{slots:t}){const n=$n(),r=El();let o;return()=>{const i=t.default&&Ba(t.default(),!0);if(!i||!i.length)return;let s=i[0];if(i.length>1){for(const A of i)if(A.type!==ct){s=A;break}}const c=le(e),{mode:d}=c;if(r.isLeaving)return wo(s);const u=ji(s);if(!u)return wo(s);const v=lr(u,c,r,n);cr(u,v);const f=n.subTree,h=f&&ji(f);let m=!1;const{getTransitionKey:E}=u.type;if(E){const A=E();o===void 0?o=A:A!==o&&(o=A,m=!0)}if(h&&h.type!==ct&&(!on(u,h)||m)){const A=lr(h,c,r,n);if(cr(h,A),d==="out-in")return r.isLeaving=!0,A.afterLeave=()=>{r.isLeaving=!1,n.update.active!==!1&&n.update()},wo(s);d==="in-out"&&u.type!==ct&&(A.delayLeave=(L,g,y)=>{const P=Al(r,h);P[String(h.key)]=h,L._leaveCb=()=>{g(),L._leaveCb=void 0,delete v.delayedLeave},v.delayedLeave=y})}return s}}},zu=Au;function Al(e,t){const{leavingVNodes:n}=e;let r=n.get(t.type);return r||(r=Object.create(null),n.set(t.type,r)),r}function lr(e,t,n,r){const{appear:o,mode:i,persisted:s=!1,onBeforeEnter:c,onEnter:d,onAfterEnter:u,onEnterCancelled:v,onBeforeLeave:f,onLeave:h,onAfterLeave:m,onLeaveCancelled:E,onBeforeAppear:A,onAppear:L,onAfterAppear:g,onAppearCancelled:y}=t,P=String(e.key),x=Al(n,e),N=(S,Q)=>{S&&lt(S,r,9,Q)},R=(S,Q)=>{const M=Q[1];N(S,Q),Z(S)?S.every(H=>H.length<=1)&&M():S.length<=1&&M()},G={mode:i,persisted:s,beforeEnter(S){let Q=c;if(!n.isMounted)if(o)Q=A||c;else return;S._leaveCb&&S._leaveCb(!0);const M=x[P];M&&on(e,M)&&M.el._leaveCb&&M.el._leaveCb(),N(Q,[S])},enter(S){let Q=d,M=u,H=v;if(!n.isMounted)if(o)Q=L||d,M=g||u,H=y||v;else return;let $=!1;const ee=S._enterCb=U=>{$||($=!0,U?N(H,[S]):N(M,[S]),G.delayedLeave&&G.delayedLeave(),S._enterCb=void 0)};Q?R(Q,[S,ee]):ee()},leave(S,Q){const M=String(e.key);if(S._enterCb&&S._enterCb(!0),n.isUnmounting)return Q();N(f,[S]);let H=!1;const $=S._leaveCb=ee=>{H||(H=!0,Q(),ee?N(E,[S]):N(m,[S]),S._leaveCb=void 0,x[M]===e&&delete x[M])};x[M]=e,h?R(h,[S,$]):$()},clone(S){return lr(S,t,n,r)}};return G}function wo(e){if(yr(e))return e=Qt(e),e.children=null,e}function ji(e){return yr(e)?e.children?e.children[0]:void 0:e}function cr(e,t){e.shapeFlag&6&&e.component?cr(e.component.subTree,t):e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function Ba(e,t=!1,n){let r=[],o=0;for(let i=0;i<e.length;i++){let s=e[i];const c=n==null?s.key:String(n)+String(s.key!=null?s.key:i);s.type===et?(s.patchFlag&128&&o++,r=r.concat(Ba(s.children,t,c))):(t||s.type!==ct)&&r.push(c!=null?Qt(s,{key:c}):s)}if(o>1)for(let i=0;i<r.length;i++)r[i].patchFlag=-2;return r}function k(e,t){return ne(e)?(()=>Oe({name:e.name},t,{setup:e}))():e}const Xn=e=>!!e.type.__asyncLoader;function p(e){ne(e)&&(e={loader:e});const{loader:t,loadingComponent:n,errorComponent:r,delay:o=200,timeout:i,suspensible:s=!0,onError:c}=e;let d=null,u,v=0;const f=()=>(v++,d=null,h()),h=()=>{let m;return d||(m=d=t().catch(E=>{if(E=E instanceof Error?E:new Error(String(E)),c)return new Promise((A,L)=>{c(E,()=>A(f()),()=>L(E),v+1)});throw E}).then(E=>m!==d&&d?d:(E&&(E.__esModule||E[Symbol.toStringTag]==="Module")&&(E=E.default),u=E,E)))};return k({name:"AsyncComponentWrapper",__asyncLoader:h,get __asyncResolved(){return u},setup(){const m=Se;if(u)return()=>Oo(u,m);const E=y=>{d=null,Er(y,m,13,!r)};if(s&&m.suspense||In)return h().then(y=>()=>Oo(y,m)).catch(y=>(E(y),()=>r?we(r,{error:y}):null));const A=J(!1),L=J(),g=J(!!o);return o&&setTimeout(()=>{g.value=!1},o),i!=null&&setTimeout(()=>{if(!A.value&&!L.value){const y=new Error(`Async component timed out after ${i}ms.`);E(y),L.value=y}},i),h().then(()=>{A.value=!0,m.parent&&yr(m.parent.vnode)&&co(m.parent.update)}
vendor: 4,887 bytes, line 1
1).catch(y=>{E(y),L.value=y}),()=>{if(A.value&&u)return Oo(u,m);if(L.value&&r)return we(r,{error:L.value});if(n&&!g.value)return we(n)}}})}function Oo(e,t){const{ref:n,props:r,children:o,ce:i}=t.vnode,s=we(e,r,o);return s.ref=n,s.ce=i,delete t.vnode.ce,s}const yr=e=>e.type.__isKeepAlive;function Tu(e,t){zl(e,"a",t)}function Lu(e,t){zl(e,"da",t)}function zl(e,t,n=Se){const r=e.__wdc||(e.__wdc=()=>{let o=n;for(;o;){if(o.isDeactivated)return;o=o.parent}return e()});if(vo(t,r,n),n){let o=n.parent;for(;o&&o.parent;)yr(o.parent.vnode)&&Pu(r,t,n,o),o=o.parent}}function Pu(e,t,n,r){const o=vo(t,e,r,!0);Ar(()=>{za(r[t],o)},n)}function vo(e,t,n=Se,r=!1){if(n){const o=n[e]||(n[e]=[]),i=t.__weh||(t.__weh=(...s)=>{if(n.isUnmounted)return;kn(),xn(n);const c=lt(t,n,e,s);return cn(),Cn(),c});return r?o.unshift(i):o.push(i),i}}const Mt=e=>(t,n=Se)=>(!In||e==="sp")&&vo(e,(...r)=>t(...r),n),wu=Mt("bm"),_e=Mt("m"),Ou=Mt("bu"),Tl=Mt("u"),$a=Mt("bum"),Ar=Mt("um"),Du=Mt("sp"),xu=Mt("rtg"),Iu=Mt("rtc");function Vu(e,t=Se){vo("ec",e,t)}const Ll="components";function tt(e,t){return Su(Ll,e,!0,t)||e}const Ru=Symbol.for("v-ndc");function Su(e,t,n=!0,r=!1){const o=st||Se;if(o){const i=o.type;if(e===Ll){const c=v1(i,!1);if(c&&(c===t||c===dt(t)||c===br(dt(t))))return i}const s=ki(o[e]||i[e],t)||ki(o.appContext[e],t);return!s&&r?i:s}}function ki(e,t){return e&&(e[t]||e[dt(t)]||e[br(dt(t))])}const Yo=e=>e?Ml(e)?Ja(e)||e.proxy:Yo(e.parent):null,Yn=Oe(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>Yo(e.parent),$root:e=>Yo(e.root),$emit:e=>e.emit,$options:e=>Fa(e),$forceUpdate:e=>e.f||(e.f=()=>co(e.update)),$nextTick:e=>e.n||(e.n=Bn.bind(e.proxy)),$watch:e=>yu.bind(e)}),Do=(e,t)=>e!==Le&&!e.__isScriptSetup&&ve(e,t),ju={get({_:e},t){const{ctx:n,setupState:r,data:o,props:i,accessCache:s,type:c,appContext:d}=e;let u;if(t[0]!=="$"){const m=s[t];if(m!==void 0)switch(m){case 1:return r[t];case 2:return o[t];case 4:return n[t];case 3:return i[t]}else{if(Do(r,t))return s[t]=1,r[t];if(o!==Le&&ve(o,t))return s[t]=2,o[t];if((u=e.propsOptions[0])&&ve(u,t))return s[t]=3,i[t];if(n!==Le&&ve(n,t))return s[t]=4,n[t];Zo&&(s[t]=0)}}const v=Yn[t];let f,h;if(v)return t==="$attrs"&&Ke(e,"get",t),v(e);if((f=c.__cssModules)&&(f=f[t]))return f;if(n!==Le&&ve(n,t))return s[t]=4,n[t];if(h=d.config.globalProperties,ve(h,t))return h[t]},set({_:e},t,n){const{data:r,setupState:o,ctx:i}=e;return Do(o,t)?(o[t]=n,!0):r!==Le&&ve(r,t)?(r[t]=n,!0):ve(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(i[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:r,appContext:o,propsOptions:i}},s){let c;return!!n[s]||e!==Le&&ve(e,s)||Do(t,s)||(c=i[0])&&ve(c,s)||ve(r,s)||ve(Yn,s)||ve(o.config.globalProperties,s)},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:ve(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};function Ci(e){return Z(e)?e.reduce((t,n)=>(t[n]=null,t),{}):e}let Zo=!0;function ku(e){const t=Fa(e),n=e.proxy,r=e.ctx;Zo=!1,t.beforeCreate&&Mi(t.beforeCreate,e,"bc");const{data:o,computed:i,methods:s,watch:c,provide:d,inject:u,created:v,beforeMount:f,mounted:h,beforeUpdate:m,updated:E,activated:A,deactivated:L,beforeDestroy:g,beforeUnmount:y,destroyed:P,unmounted:x,render:N,renderTracked:R,renderTriggered:G,errorCaptured:S,serverPrefetch:Q,expose:M,inheritAttrs:H,components:$,directives:ee,filters:U}=t;if(u&&Cu(u,r,null),s)for(const fe in s){const ce=s[fe];ne(ce)&&(r[fe]=ce.bind(n))}if(o){const fe=o.call(n,n);Te(fe)&&(e.data=gr(fe))}if(Zo=!0,i)for(const fe in i){const ce=i[fe],ke=ne(ce)?ce.bind(n,n):ne(ce.get)?ce.get.bind(n,n):_t,At=!ne(ce)&&ne(ce.set)?ce.set.bind(n):_t,rt=T({get:ke,set:At});Object.defineProperty(r,fe,{enumerable:!0,configurable:!0,get:()=>rt.value,set:Ce=>rt.value=Ce})}if(c)for(const fe in c)Pl(c[fe],r,n,fe);if(d){const fe=ne(d)?d.call(n):d;Reflect.ownKeys(fe).forEach(ce=>{bt(ce,fe[ce])})}v&&Mi(v,e,"c");function re(fe,ce){Z(ce)?ce.forEach(ke=>fe(ke.bind(n))):ce&&fe(ce.bind(n))}if(re(wu,f),re(_e,h),re(Ou,m),re(Tl,E),re(Tu,A),re(Lu,L),re(Vu,S),re(Iu,R),re(xu,G),re($a,y),re(Ar,x),re(Du,Q),Z(M))if(M.length){const fe=e.exposed||(e.exposed={});M.forEach(ce=>{Object.defineProperty(fe,ce,{get:()=>n[ce],set:ke=>n[ce]=ke})})}else e.exposed||(e.exposed={});N&&e.render===_t&&(e.render=N),H!=null&&(e.inheritAttrs=H),$&&(e.components=$),ee&&(e.directives=ee)}function Cu(e,t,n=_t){Z(e)&&(e=ea(e));for(const r in e){const o=e[r];let i;Te(o)?"default"in o?i=me(o.from||r,o.default,!0):i=me(o.from||r):i=me(o),Ve(i)?Object.defineProperty(t,r,{enumerable:!0,configurable:!0,get:()=>i.value,set:s=>i.value=s}):t[r]=i}}function Mi(e,t,n){lt(Z(e)?e.map(r=>r.bind(t.proxy)):e.bind(t.proxy),t,n)}function Pl(e,t,n,r){const o=r.includes(".")?gl(n,r):()=>n[r];if(je(e)){const i=t[e];ne(i)&&se(o,i)}else if(ne(e))se(o,e.bind(n));else if(Te(e))if(Z(e))e.forEach(i=>
vendor: 4,029 bytes, line 1
1Pl(i,t,n,r));else{const i=ne(e.handler)?e.handler.bind(n):t[e.handler];ne(i)&&se(o,i,e)}}function Fa(e){const t=e.type,{mixins:n,extends:r}=t,{mixins:o,optionsCache:i,config:{optionMergeStrategies:s}}=e.appContext,c=i.get(t);let d;return c?d=c:!o.length&&!n&&!r?d=t:(d={},o.length&&o.forEach(u=>to(d,u,s,!0)),to(d,t,s)),Te(t)&&i.set(t,d),d}function to(e,t,n,r=!1){const{mixins:o,extends:i}=t;i&&to(e,i,n,!0),o&&o.forEach(s=>to(e,s,n,!0));for(const s in t)if(!(r&&s==="expose")){const c=Mu[s]||n&&n[s];e[s]=c?c(e[s],t[s]):t[s]}return e}const Mu={data:Bi,props:$i,emits:$i,methods:Kn,computed:Kn,beforeCreate:Fe,created:Fe,beforeMount:Fe,mounted:Fe,beforeUpdate:Fe,updated:Fe,beforeDestroy:Fe,beforeUnmount:Fe,destroyed:Fe,unmounted:Fe,activated:Fe,deactivated:Fe,errorCaptured:Fe,serverPrefetch:Fe,components:Kn,directives:Kn,watch:$u,provide:Bi,inject:Bu};function Bi(e,t){return t?e?function(){return Oe(ne(e)?e.call(this,this):e,ne(t)?t.call(this,this):t)}:t:e}function Bu(e,t){return Kn(ea(e),ea(t))}function ea(e){if(Z(e)){const t={};for(let n=0;n<e.length;n++)t[e[n]]=e[n];return t}return e}function Fe(e,t){return e?[...new Set([].concat(e,t))]:t}function Kn(e,t){return e?Oe(Object.create(null),e,t):t}function $i(e,t){return e?Z(e)&&Z(t)?[...new Set([...e,...t])]:Oe(Object.create(null),Ci(e),Ci(t??{})):t}function $u(e,t){if(!e)return t;if(!t)return e;const n=Oe(Object.create(null),e);for(const r in t)n[r]=Fe(e[r],t[r]);return n}function wl(){return{app:null,config:{isNativeTag:c0,performance:!1,globalProperties:{},optionMergeStrategies:{},errorHandler:void 0,warnHandler:void 0,compilerOptions:{}},mixins:[],components:{},directives:{},provides:Object.create(null),optionsCache:new WeakMap,propsCache:new WeakMap,emitsCache:new WeakMap}}let Fu=0;function Wu(e,t){return function(r,o=null){ne(r)||(r=Oe({},r)),o!=null&&!Te(o)&&(o=null);const i=wl(),s=new Set;let c=!1;const d=i.app={_uid:Fu++,_component:r,_props:o,_container:null,_context:i,_instance:null,version:m1,get config(){return i.config},set config(u){},use(u,...v){return s.has(u)||(u&&ne(u.install)?(s.add(u),u.install(d,...v)):ne(u)&&(s.add(u),u(d,...v))),d},mixin(u){return i.mixins.includes(u)||i.mixins.push(u),d},component(u,v){return v?(i.components[u]=v,d):i.components[u]},directive(u,v){return v?(i.directives[u]=v,d):i.directives[u]},mount(u,v,f){if(!c){const h=we(r,o);return h.appContext=i,v&&t?t(h,u):e(h,u,f),c=!0,d._container=u,u.__vue_app__=d,Ja(h.component)||h.component.proxy}},unmount(){c&&(e(null,d._container),delete d._container.__vue_app__)},provide(u,v){return i.provides[u]=v,d},runWithContext(u){no=d;try{return u()}finally{no=null}}};return d}}let no=null;function bt(e,t){if(Se){let n=Se.provides;const r=Se.parent&&Se.parent.provides;r===n&&(n=Se.provides=Object.create(r)),n[e]=t}}function me(e,t,n=!1){const r=Se||st;if(r||no){const o=r?r.parent==null?r.vnode.appContext&&r.vnode.appContext.provides:r.parent.provides:no._context.provides;if(o&&e in o)return o[e];if(arguments.length>1)return n&&ne(t)?t.call(r&&r.proxy):t}}function Nu(e,t,n,r=!1){const o={},i={};Qr(i,po,1),e.propsDefaults=Object.create(null),Ol(e,t,o,i);for(const s in e.propsOptions[0])s in o||(o[s]=void 0);n?e.props=r?o:ll(o):e.type.props?e.props=o:e.props=i,e.attrs=i}function Hu(e,t,n,r){const{props:o,attrs:i,vnode:{patchFlag:s}}=e,c=le(o),[d]=e.propsOptions;let u=!1;if((r||s>0)&&!(s&16)){if(s&8){const v=e.vnode.dynamicProps;for(let f=0;f<v.length;f++){let h=v[f];if(uo(e.emitsOptions,h))continue;const m=t[h];if(d)if(ve(i,h))m!==i[h]&&(i[h]=m,u=!0);else{const E=dt(h);o[E]=ta(d,c,E,m,e,!1)}else m!==i[h]&&(i[h]=m,u=!0)}}}else{Ol(e,t,o,i)&&(u=!0);let v;for(const f in c)(!t||!ve(t,f)&&((v=jn(f))===f||!ve(t,v)))&&(d?n&&(n[f]!==void 0||n[v]!==void 0)&&(o[f]=ta(d,c,f,void 0,e,!0)):delete o[f]);if(i!==c)for(const f in i)(!t||!ve(t,f))&&(delete i[f],u=!0)}u&&kt(e,"set","$attrs")}function Ol(e,t,n,r){const[o,i]=e.propsOptions;let s=!1,c;if(t)for(let d in t){if(Qn(d))continue;const u=t[d];let v;o&&ve(o,v=dt(d))?!i||!i.includes(v)?n[v]=u:(c||(c={}
1))[v]=u:uo(e.emitsOptions,d)||(!(d in r)||u!==r[d])&&(r[d]=u,s=!0)}if(i){const d=le(n),u=c||Le;for(let v=0;v<i.length;v++){const f=i[v];n[f]=ta(o,d,f,u[f],e,!ve(u,f))}}return s}function ta(e,t,n,r,o,i){const s=e[n];if(s!=null){const c=ve(s,"default");if(c&&r===void 0){const d=s.default;if(s.type!==Function&&!s.skipFactory&&ne(d)){const{propsDefaults:u}=o;n in u?r=u[n]:(xn(o),r=u[n]=d.call(null,t),cn())}else r=d}s[0]&&(i&&!c?r=!1:s[1]&&(r===""||r===jn(n))&&(r=!0))}return r}function Dl(e,t,n=!1){const r=t.propsCache,o=r.get(e);if(o)return o;const i=e.props,s={},c=[];let d=!1;if(!ne(e)){const v=f=>{d=!0;const[h,m]=Dl(f,t,!0);Oe(s,h),m&&c.push(...m)};!n&&t.mixins.length&&t.mixins.forEach(v),e.extends&&v(e.extends),e.mixins&&e.mixins.forEach(v)}if(!i&&!d)return Te(e)&&r.set(e,En),En;if(Z(i))for(let v=0;v<i.length;v++){const f=dt(i[v]);Fi(f)&&(s[f]=Le)}else if(i)for(const v in i){const f=dt(v);if(Fi(f)){const h=i[v],m=s[f]=Z(h)||ne(h)?{type:h}:Oe({},h);if(m){const E=Hi(Boolean,m.type),A=Hi(String,m.type);m[0]=E>-1,m[1]=A<0||E<A,(E>-1||ve(m,"default"))&&c.push(f)}}}const u=[s,c];return Te(e)&&r.set(e,u),u}function Fi(e){return e[0]!=="$"}function Wi(e){const t=e&&e.toString().match(/^\s*(function|class) (\w+)/);return t?t[2]:e===null?"null":""}function Ni(e,t){return Wi(e)===Wi(t)}function Hi(e,t){return Z(t)?t.findIndex(n=>Ni(n,e)):ne(t)&&Ni(t,e)?0:-1}const xl=e=>e[0]==="_"||e==="$stable",Wa=e=>Z(e)?e.map(ft):[ft(e)],Ju=(e,t,n)=>{if(t._n)return t;const r=fu((...o)=>Wa(t(...o)),n);return r._c=!1,r},Il=(e,t,n)=>{const r=e._ctx;for(const o in e){if(xl(o))continue;const i=e[o];if(ne(i))t[o]=Ju(o,i,r);else if(i!=null){const s=Wa(i);t[o]=()=>s}}},Vl=(e,t)=>{const n=Wa(t);e.slots.default=()=>n},Gu=(e,t)=>{if(e.vnode.shapeFlag&32){const n=t._;n?(e.slots=le(t),Qr(t,"_",n)):Il(t,e.slots={})}else e.slots={},t&&Vl(e,t);Qr(e.slots,po,1)},qu=(e,t,n)=>{const{vnode:r,slots:o}=e;let i=!0,s=Le;if(r.shapeFlag&32){const c=t._;c?n&&c===1?i=!1:(Oe(o,t),!n&&c===1&&delete o._):(i=!t.$stable,Il(t,o)),s=t}else t&&(Vl(e,t),s={default:1});if(i)for(const c in o)!xl(c)&&!(c in s)&&delete o[c]};function ro(e,t,n,r,o=!1){if(Z(e)){e.forEach((h,m)=>ro(h,t&&(Z(t)?t[m]:t),n,r,o));return}if(Xn(r)&&!o)return;const i=r.shapeFlag&4?Ja(r.component)||r.component.proxy:r.el,s=o?null:i,{i:c,r:d}=e,u=t&&t.r,v=c.refs===Le?c.refs={}:c.refs,f=c.setupState;if(u!=null&&u!==d&&(je(u)?(v[u]=null,ve(f,u)&&(f[u]=null)):Ve(u)&&(u.value=null)),ne(d))Ut(d,c,12,[s,v]);else{const h=je(d),m=Ve(d);if(h||m){const E=()=>{if(e.f){const A=h?ve(f,d)?f[d]:v[d]:d.value;o?Z(A)&&za(A,i):Z(A)?A.includes(i)||A.push(i):h?(v[d]=[i],ve(f,d)&&(f[d]=v[d])):(d.value=[i],e.k&&(v[e.k]=d.value))}else h?(v[d]=s,ve(f,d)&&(f[d]=s)):m&&(d.value=s,e.k&&(v[e.k]=s))};s?(E.id=-1,Je(E,n)):E()}}}let $t=!1;const Fr=e=>/svg/.test(e.namespaceURI)&&e.tagName!=="foreignObject",Wr=e=>e.nodeType===8;function Uu(e){const{mt:t,p:n,o:{patchProp:r,createText:o,nextSibling:i,parentNode:s,remove:c,insert:d,createComment:u}}=e,v=(g,y)=>{if(!y.hasChildNodes()){n(null,g,y),Zr(),y._vnode=g;return}$t=!1,f(y.firstChild,g,null,null,null),Zr(),y._vnode=g,$t&&console.error("Hydration completed but contains mismatches.")},f=(g,y,P,x,N,R=!1)=>{const G=Wr(g)&&g.data==="[",S=()=>A(g,y,P,x,N,G),{type:Q,ref:M,shapeFlag:H,patchFlag:$}=y;let ee=g.nodeType;y.el=g,$===-2&&(R=!1,y.dynamicChildren=null);let U=null;switch(Q){case Dn:ee!==3?y.children===""?(d(y.el=o(""),s(g),g),U=g):U=S():(g.data!==y.children&&($t=!0,g.data=y.children),U=i(g));break;case ct:ee!==8||G?U=S():U=i(g);break;case Zn:if(G&&(g=i(g),ee=g.nodeType),ee===1||ee===3){U=g;const De=!y.children.length;for(let re=0;re<y.staticCount;re++)De&&(y.children+=U.nodeType===1?U.outerHTML:U.data),re===y.staticCount-1&&(y.anchor=U),U=i(U);return G?i(U):U}else S();break;case et:G?U=E(g,y,P,x,N,R):U=S();break;default:if(H&1)ee!==1||y.type.toLowerCase()!==g.tagName.toLowerCase()?U=S():U=h(g,y,P,x,N,R);else if(H&6){y.slotScopeIds=N;const De=s(g);if(t(y,De,null,P,x,Fr(De),R),U=G?L(g):i(g),U&&Wr(U)&&U.data==="teleport end"&&(U=i(U)),Xn(y)){let re;G?(re=we(et),re.anchor=U?U.previousSibling:De.lastChild):re=g.nodeType===3?Cl(""):we("div"),re.el=g,y.component.subTree=re}}else H&64?ee!==8?U=S():U=y.type.hydrate(g,y,P,x,N,R,e,m):H&128&&(U=y.type.hydrate(g,y,P,x,Fr(s(g)),N,R,e,f))}return M!=null&&ro(M,null,x,y),U},h=(g,y,P,x,N,R)=>
1{R=R||!!y.dynamicChildren;const{type:G,props:S,patchFlag:Q,shapeFlag:M,dirs:H}=y,$=G==="input"&&H||G==="option";if($||Q!==-1){if(H&&Lt(y,null,P,"created"),S)if($||!R||Q&48)for(const U in S)($&&U.endsWith("value")||_r(U)&&!Qn(U))&&r(g,U,null,S[U],!1,void 0,P);else S.onClick&&r(g,"onClick",null,S.onClick,!1,void 0,P);let ee;if((ee=S&&S.onVnodeBeforeMount)&&at(ee,P,y),H&&Lt(y,null,P,"beforeMount"),((ee=S&&S.onVnodeMounted)||H)&&bl(()=>{ee&&at(ee,P,y),H&&Lt(y,null,P,"mounted")},x),M&16&&!(S&&(S.innerHTML||S.textContent))){let U=m(g.firstChild,y,g,P,x,N,R);for(;U;){$t=!0;const De=U;U=U.nextSibling,c(De)}}else M&8&&g.textContent!==y.children&&($t=!0,g.textContent=y.children)}return g.nextSibling},m=(g,y,P,x,N,R,G)=>{G=G||!!y.dynamicChildren;const S=y.children,Q=S.length;for(let M=0;M<Q;M++){const H=G?S[M]:S[M]=ft(S[M]);if(g)g=f(g,H,x,N,R,G);else{if(H.type===Dn&&!H.children)continue;$t=!0,n(null,H,P,null,x,N,Fr(P),R)}}return g},E=(g,y,P,x,N,R)=>{const{slotScopeIds:G}=y;G&&(N=N?N.concat(G):G);const S=s(g),Q=m(i(g),y,S,P,x,N,R);return Q&&Wr(Q)&&Q.data==="]"?i(y.anchor=Q):($t=!0,d(y.anchor=u("]"),S,Q),Q)},A=(g,y,P,x,N,R)=>{if($t=!0,y.el=null,R){const Q=L(g);for(;;){const M=i(g);if(M&&M!==Q)c(M);else break}}const G=i(g),S=s(g);return c(g),n(null,y,S,G,P,x,Fr(S),N),G},L=g=>{let y=0;for(;g;)if(g=i(g),g&&Wr(g)&&(g.data==="["&&y++,g.data==="]")){if(y===0)return i(g);y--}return g};return[v,f]}const Je=bl;function Ku(e){return Qu(e,Uu)}function Qu(e,t){const n=qo();n.__VUE__=!0;const{insert:r,remove:o,patchProp:i,createElement:s,createText:c,createComment:d,setText:u,setElementText:v,parentNode:f,nextSibling:h,setScopeId:m=_t,insertStaticContent:E}=e,A=(_,b,z,w=null,D=null,I=null,F=!1,j=null,B=!!b.dynamicChildren)=>{if(_===b)return;_&&!on(_,b)&&(w=O(_),Ce(_,D,I,!0),_=null),b.patchFlag===-2&&(B=!1,b.dynamicChildren=null);const{type:V,ref:X,shapeFlag:q}=b;switch(V){case Dn:L(_,b,z,w);break;case ct:g(_,b,z,w);break;case Zn:_==null&&y(b,z,w,F);break;case et:$(_,b,z,w,D,I,F,j,B);break;default:q&1?N(_,b,z,w,D,I,F,j,B):q&6?ee(_,b,z,w,D,I,F,j,B):(q&64||q&128)&&V.process(_,b,z,w,D,I,F,j,B,C)}X!=null&&D&&ro(X,_&&_.ref,I,b||_,!b)},L=(_,b,z,w)=>{if(_==null)r(b.el=c(b.children),z,w);else{const D=b.el=_.el;b.children!==_.children&&u(D,b.children)}},g=(_,b,z,w)=>{_==null?r(b.el=d(b.children||""),z,w):b.el=_.el},y=(_,b,z,w)=>{[_.el,_.anchor]=E(_.children,b,z,w,_.el,_.anchor)},P=({el:_,anchor:b},z,w)=>{let D;for(;_&&_!==b;)D=h(_),r(_,z,w),_=D;r(b,z,w)},x=({el:_,anchor:b})=>{let z;for(;_&&_!==b;)z=h(_),o(_),_=z;o(b)},N=(_,b,z,w,D,I,F,j,B)=>{F=F||b.type==="svg",_==null?R(b,z,w,D,I,F,j,B):Q(_,b,D,I,F,j,B)},R=(_,b,z,w,D,I,F,j)=>{let B,V;const{type:X,props:q,shapeFlag:Y,transition:te,dirs:oe}=_;if(B=_.el=s(_.type,I,q&&q.is,q),Y&8?v(B,_.children):Y&16&&S(_.children,B,null,w,D,I&&X!=="foreignObject",F,j),oe&&Lt(_,null,w,"created"),G(B,_,_.scopeId,F,w),q){for(const ge in q)ge!=="value"&&!Qn(ge)&&i(B,ge,null,q[ge],I,_.children,w,D,xe);"value"in q&&i(B,"value",null,q.value),(V=q.onVnodeBeforeMount)&&at(V,w,_)}oe&&Lt(_,null,w,"beforeMount");const Ae=(!D||D&&!D.pendingBranch)&&te&&!te.persisted;Ae&&te.beforeEnter(B),r(B,b,z),((V=q&&q.onVnodeMounted)||Ae||oe)&&Je(()=>{V&&at(V,w,_),Ae&&te.enter(B),oe&&Lt(_,null,w,"mounted")},D)},G=(_,b,z,w,D)=>{if(z&&m(_,z),w)for(let I=0;I<w.length;I++)m(_,w[I]);if(D){let I=D.subTree;if(b===I){const F=D.vnode;G(_,F,F.scopeId,F.slotScopeIds,D.parent)}}},S=(_,b,z,w,D,I,F,j,B=0)=>{for(let V=B;V<_.length;V++){const X=_[V]=j?Ht(_[V]):ft(_[V]);A(null,X,b,z,w,D,I,F,j)}},Q=(_,b,z,w,D,I,F)=>{const j=b.el=_.el;let{patchFlag:B,dynamicChildren:V,dirs:X}=b;B|=_.patchFlag&16;const q=_.props||Le,Y=b.props||Le;let te;z&&tn(z,!1),(te=Y.onVnodeBeforeUpdate)&&at(te,z,b,_),X&&Lt(b,_,z,"beforeUpdate"),z&&tn(z,!0);const oe=D&&b.type!=="foreignObject";if(V?M(_.dynamicChildren,V,j,z,w,oe,I):F||ce(_,b,j,null,z,w,oe,I,!1),B>0){if(B&16)H(j,b,q,Y,z,w,D);else if(B&2&&q.class!==Y.class&&i(j,"class",null,Y.class,D),B&4&&i(j,"style",q.style,Y.style,D),B&8){const Ae=b.dynamicProps;for(let ge=0;ge<Ae.length;ge++){const Ie=Ae[ge],vt=q[Ie],vn=Y[Ie];(vn!==vt||Ie==="value")&&i(j,Ie,vt,vn,D,_.children,z,w,xe)}}B&1&&_.children!==b.children&&v(j,b.children)}else!F&&V==null&&H(j,b,q,Y,z,w,D);((te=Y.onVnodeUpdated)||X)&&Je(()=>{te&&at(te,z,b,_),X&&Lt(b,_,z,"updated")},w)},M=(_,b,z,w,D,I,F)=>{for(let j=0;j<b.length;j++){const B=_[j],V=b[j],X=B.el&&(B.type===et||!on(B,V)||B.shapeFlag&70)?f(
vendor: 17,902 bytes, line 1
1B.el):z;A(B,V,X,null,w,D,I,F,!0)}},H=(_,b,z,w,D,I,F)=>{if(z!==w){if(z!==Le)for(const j in z)!Qn(j)&&!(j in w)&&i(_,j,z[j],null,F,b.children,D,I,xe);for(const j in w){if(Qn(j))continue;const B=w[j],V=z[j];B!==V&&j!=="value"&&i(_,j,V,B,F,b.children,D,I,xe)}"value"in w&&i(_,"value",z.value,w.value)}},$=(_,b,z,w,D,I,F,j,B)=>{const V=b.el=_?_.el:c(""),X=b.anchor=_?_.anchor:c("");let{patchFlag:q,dynamicChildren:Y,slotScopeIds:te}=b;te&&(j=j?j.concat(te):te),_==null?(r(V,z,w),r(X,z,w),S(b.children,z,X,D,I,F,j,B)):q>0&&q&64&&Y&&_.dynamicChildren?(M(_.dynamicChildren,Y,z,D,I,F,j),(b.key!=null||D&&b===D.subTree)&&Rl(_,b,!0)):ce(_,b,z,X,D,I,F,j,B)},ee=(_,b,z,w,D,I,F,j,B)=>{b.slotScopeIds=j,_==null?b.shapeFlag&512?D.ctx.activate(b,z,w,F,B):U(b,z,w,D,I,F,B):De(_,b,B)},U=(_,b,z,w,D,I,F)=>{const j=_.component=s1(_,w,D);if(yr(_)&&(j.ctx.renderer=C),l1(j),j.asyncDep){if(D&&D.registerDep(j,re),!_.el){const B=j.subTree=we(ct);g(null,B,b,z)}return}re(j,_,b,z,D,I,F)},De=(_,b,z)=>{const w=b.component=_.component;if(_u(_,b,z))if(w.asyncDep&&!w.asyncResolved){fe(w,b,z);return}else w.next=b,du(w.update),w.update();else b.el=_.el,w.vnode=b},re=(_,b,z,w,D,I,F)=>{const j=()=>{if(_.isMounted){let{next:X,bu:q,u:Y,parent:te,vnode:oe}=_,Ae=X,ge;tn(_,!1),X?(X.el=oe.el,fe(_,X,F)):X=oe,q&&Lo(q),(ge=X.props&&X.props.onVnodeBeforeUpdate)&&at(ge,te,X,oe),tn(_,!0);const Ie=Po(_),vt=_.subTree;_.subTree=Ie,A(vt,Ie,f(vt.el),O(vt),_,D,I),X.el=Ie.el,Ae===null&&bu(_,Ie.el),Y&&Je(Y,D),(ge=X.props&&X.props.onVnodeUpdated)&&Je(()=>at(ge,te,X,oe),D)}else{let X;const{el:q,props:Y}=b,{bm:te,m:oe,parent:Ae}=_,ge=Xn(b);if(tn(_,!1),te&&Lo(te),!ge&&(X=Y&&Y.onVnodeBeforeMount)&&at(X,Ae,b),tn(_,!0),q&&de){const Ie=()=>{_.subTree=Po(_),de(q,_.subTree,_,D,null)};ge?b.type.__asyncLoader().then(()=>!_.isUnmounted&&Ie()):Ie()}else{const Ie=_.subTree=Po(_);A(null,Ie,z,w,_,D,I),b.el=Ie.el}if(oe&&Je(oe,D),!ge&&(X=Y&&Y.onVnodeMounted)){const Ie=b;Je(()=>at(X,Ae,Ie),D)}(b.shapeFlag&256||Ae&&Xn(Ae.vnode)&&Ae.vnode.shapeFlag&256)&&_.a&&Je(_.a,D),_.isMounted=!0,b=z=w=null}},B=_.effect=new Da(j,()=>co(V),_.scope),V=_.update=()=>B.run();V.id=_.uid,tn(_,!0),V()},fe=(_,b,z)=>{b.component=_;const w=_.vnode.props;_.vnode=b,_.next=null,Hu(_,b.props,w,z),qu(_,b.children,z),kn(),Ri(),Cn()},ce=(_,b,z,w,D,I,F,j,B=!1)=>{const V=_&&_.children,X=_?_.shapeFlag:0,q=b.children,{patchFlag:Y,shapeFlag:te}=b;if(Y>0){if(Y&128){At(V,q,z,w,D,I,F,j,B);return}else if(Y&256){ke(V,q,z,w,D,I,F,j,B);return}}te&8?(X&16&&xe(V,D,I),q!==V&&v(z,q)):X&16?te&16?At(V,q,z,w,D,I,F,j,B):xe(V,D,I,!0):(X&8&&v(z,""),te&16&&S(q,z,w,D,I,F,j,B))},ke=(_,b,z,w,D,I,F,j,B)=>{_=_||En,b=b||En;const V=_.length,X=b.length,q=Math.min(V,X);let Y;for(Y=0;Y<q;Y++){const te=b[Y]=B?Ht(b[Y]):ft(b[Y]);A(_[Y],te,z,null,D,I,F,j,B)}V>X?xe(_,D,I,!0,!1,q):S(b,z,w,D,I,F,j,B,q)},At=(_,b,z,w,D,I,F,j,B)=>{let V=0;const X=b.length;let q=_.length-1,Y=X-1;for(;V<=q&&V<=Y;){const te=_[V],oe=b[V]=B?Ht(b[V]):ft(b[V]);if(on(te,oe))A(te,oe,z,null,D,I,F,j,B);else break;V++}for(;V<=q&&V<=Y;){const te=_[q],oe=b[Y]=B?Ht(b[Y]):ft(b[Y]);if(on(te,oe))A(te,oe,z,null,D,I,F,j,B);else break;q--,Y--}if(V>q){if(V<=Y){const te=Y+1,oe=te<X?b[te].el:w;for(;V<=Y;)A(null,b[V]=B?Ht(b[V]):ft(b[V]),z,oe,D,I,F,j,B),V++}}else if(V>Y)for(;V<=q;)Ce(_[V],D,I,!0),V++;else{const te=V,oe=V,Ae=new Map;for(V=oe;V<=Y;V++){const Ye=b[V]=B?Ht(b[V]):ft(b[V]);Ye.key!=null&&Ae.set(Ye.key,V)}let ge,Ie=0;const vt=Y-oe+1;let vn=!1,yi=0;const Jn=new Array(vt);for(V=0;V<vt;V++)Jn[V]=0;for(V=te;V<=q;V++){const Ye=_[V];if(Ie>=vt){Ce(Ye,D,I,!0);continue}let Tt;if(Ye.key!=null)Tt=Ae.get(Ye.key);else for(ge=oe;ge<=Y;ge++)if(Jn[ge-oe]===0&&on(Ye,b[ge])){Tt=ge;break}Tt===void 0?Ce(Ye,D,I,!0):(Jn[Tt-oe]=V+1,Tt>=yi?yi=Tt:vn=!0,A(Ye,b[Tt],z,null,D,I,F,j,B),Ie++)}const Ai=vn?Xu(Jn):En;for(ge=Ai.length-1,V=vt-1;V>=0;V--){const Ye=oe+V,Tt=b[Ye],zi=Ye+1<X?b[Ye+1].el:w;Jn[V]===0?A(null,Tt,z,zi,D,I,F,j,B):vn&&(ge<0||V!==Ai[ge]?rt(Tt,z,zi,2):ge--)}}},rt=(_,b,z,w,D=null)=>{const{el:I,type:F,transition:j,children:B,shapeFlag:V}=_;if(V&6){rt(_.component.subTree,b,z,w);return}if(V&128){_.suspense.move(b,z,w);return}if(V&64){F.move(_,b,z,C);return}if(F===et){r(I,b,z);for(let q=0;q<B.length;q++)rt(B[q],b,z,w);r(_.anchor,b,z);return}if(F===Zn){P(_,b,z);return}if(w!==2&&V&1&&j)if(w===0)j.beforeEnter(I),r(I,b,z),Je(()=>j.enter(I),D);else{const{leave:q,delayLeave:Y,afterLeave:te}=j,oe=()=>r(I,b,z),Ae=()=>{q(I,()=>{oe(),te&&te()})};Y?Y(I,oe,Ae):Ae()}else r(I,b,z)},Ce=(_,b,z,w=!1,D=!1)=>{const{type:I,props:F,ref:j,children:B,dynamicChildren:V,shapeFlag:X,patchFlag:q,dirs:Y}=_;if(j!=null&&ro(j,null,z,_,!0),X&256){b.ctx.deactivate(_);return}const te=X&1&&Y,oe=!Xn(_);let Ae;if(oe&&(Ae=F&&F.onVnodeBeforeUnmount)&&at(Ae,b,_),X&6)zt(_.component,z,w);else{if(X&128){_.suspense.unmount(z,w);return}te&&Lt(_,null,b,"beforeUnmount"),X&64?_.type.remove(_,b,z,D,C,w):V&&(I!==et||q>0&&q&64)?xe(V,b,z,!1,!0):(I===et&&q&384||!D&&X&16)&&xe(B,b,z),w&&Xe(_)}(oe&&(Ae=F&&F.onVnodeUnmounted)||te)&&Je(()=>{Ae&&at(Ae,b,_),te&&Lt(_,null,b,"unmounted")},z)},Xe=_=>{const{type:b,el:z,anchor:w,transition:D}=_;if(b===et){Ot(z,w);return}if(b===Zn){x(_);return}const I=()=>{o(z),D&&!D.persisted&&D.afterLeave&&D.afterLeave()};if(_.shapeFlag&1&&D&&!D.persisted){const{leave:F,delayLeave:j}=D,B=()=>F(z,I);j?j(_.el,I,B):B()}else I()},Ot=(_,b)=>{let z;for(;_!==b;)z=h(_),o(_),_=z;o(b)},zt=(_,b,z)=>{const{bum:w,scope:D,update:I,subTree:F,um:j}=_;w&&Lo(w),D.stop(),I&&(I.active=!1,Ce(F,_,b,z)),j&&Je(j,b),Je(()=>{_.isUnmounted=!0},b),b&&b.pendingBranch&&!b.isUnmounted&&_.asyncDep&&!_.asyncResolved&&_.suspenseId===b.pendingId&&(b.deps--,b.deps===0&&b.resolve())},xe=(_,b,z,w=!1,D=!1,I=0)=>{for(let F=I;F<_.length;F++)Ce(_[F],b,z,w,D)},O=_=>_.shapeFlag&6?O(_.component.subTree):_.shapeFlag&128?_.suspense.next():h(_.anchor||_.el),W=(_,b,z)=>{_==null?b._vnode&&Ce(b._vnode,null,null,!0):A(b._vnode||null,_,b,null,null,null,z),Ri(),Zr(),b._vnode=_},C={p:A,um:Ce,m:rt,r:Xe,mt:U,mc:S,pc:ce,pbc:M,n:O,o:e};let K,de;return t&&([K,de]=t(C)),{render:W,hydrate:K,createApp:Wu(W,K)}}function tn({effect:e,update:t},n){e.allowRecurse=t.allowRecurse=n}function Rl(e,t,n=!1){const r=e.children,o=t.children;if(Z(r)&&Z(o))for(let i=0;i<r.length;i++){const s=r[i];let c=o[i];c.shapeFlag&1&&!c.dynamicChildren&&((c.patchFlag<=0||c.patchFlag===32)&&(c=o[i]=Ht(o[i]),c.el=s.el),n||Rl(s,c)),c.type===Dn&&(c.el=s.el)}}function Xu(e){const t=e.slice(),n=[0];let r,o,i,s,c;const d=e.length;for(r=0;r<d;r++){const u=e[r];if(u!==0){if(o=n[n.length-1],e[o]<u){t[r]=o,n.push(r);continue}for(i=0,s=n.length-1;i<s;)c=i+s>>1,e[n[c]]<u?i=c+1:s=c;u<e[n[i]]&&(i>0&&(t[r]=n[i-1]),n[i]=r)}}for(i=n.length,s=n[i-1];i-- >0;)n[i]=s,s=t[s];return n}const Yu=e=>e.__isTeleport,et=Symbol.for("v-fgt"),Dn=Symbol.for("v-txt"),ct=Symbol.for("v-cmt"),Zn=Symbol.for("v-stc"),er=[];let mt=null;function Zu(e=!1){er.push(mt=e?null:[])}function e1(){er.pop(),mt=er[er.length-1]||null}let dr=1;function Ji(e){dr+=e}function Sl(e){return e.dynamicChildren=dr>0?mt||En:null,e1(),dr>0&&mt&&mt.push(e),e}function a6(e,t,n,r,o,i){return Sl(kl(e,t,n,r,o,i,!0))}function t1(e,t,n,r,o){return Sl(we(e,t,n,r,o,!0))}function na(e){return e?e.__v_isVNode===!0:!1}function on(e,t){return e.type===t.type&&e.key===t.key}const po="__vInternal",jl=({key:e})=>e??null,Kr=({ref:e,ref_key:t,ref_for:n})=>(typeof e=="number"&&(e=""+e),e!=null?je(e)||Ve(e)||ne(e)?{i:st,r:e,k:t,f:!!n}:e:null);function kl(e,t=null,n=null,r=0,o=null,i=e===et?0:1,s=!1,c=!1){const d={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&jl(t),ref:t&&Kr(t),scopeId:_l,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetAnchor:null,staticCount:0,shapeFlag:i,patchFlag:r,dynamicProps:o,dynamicChildren:null,appContext:null,ctx:st};return c?(Na(d,n),i&128&&e.normalize(d)):n&&(d.shapeFlag|=je(n)?8:16),dr>0&&!s&&mt&&(d.patchFlag>0||i&6)&&d.patchFlag!==32&&mt.push(d),d}const we=n1;function n1(e,t=null,n=null,r=0,o=null,i=!1){if((!e||e===Ru)&&(e=ct),na(e)){const c=Qt(e,t,!0);return n&&Na(c,n),dr>0&&!i&&mt&&(c.shapeFlag&6?mt[mt.indexOf(e)]=c:mt.push(c)),c.patchFlag|=-2,c}if(p1(e)&&(e=e.__vccOpts),t){t=r1(t);let{class:c,style:d}=t;c&&!je(c)&&(t.class=wa(c)),Te(d)&&(cl(d)&&!Z(d)&&(d=Oe({},d)),t.style=Pa(d))}const s=je(e)?1:gu(e)?128:Yu(e)?64:Te(e)?4:ne(e)?2:0;return kl(e,t,n,r,o,s,i,!0)}function r1(e){return e?cl(e)||po in e?Oe({},e):e:null}function Qt(e,t,n=!1){const{props:r,ref:o,patchFlag:i,children:s}=e,c=t?o1(r||{},t):r;return{__v_isVNode:!0,__v_skip:!0,type:e.type,props:c,key:c&&jl(c),ref:t&&t.ref?n&&o?Z(o)?o.concat(Kr(t)):[o,Kr(t)]:Kr(t):o,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:s,target:e.target,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==et?i===-1?16:i|16:i,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:e.transition,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&Qt(e.ssContent),ssFallback:e.ssFallback&&Qt(e.ssFallback),el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce}}function Cl(e=" ",t=0){return we(Dn,null,e,t)}function i6(e,t){const n=we(Zn,null,e);return n.staticCount=t,n}function s6(e="",t=!1){return t?(Zu(),t1(ct,null,e)):we(ct,null,e)}function ft(e){return e==null||typeof e=="boolean"?we(ct):Z(e)?we(et,null,e.slice()):typeof e=="object"?Ht(e):we(Dn,null,String(e))}function Ht(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:Qt(e)}function Na(e,t){let n=0;const{shapeFlag:r}=e;if(t==null)t=null;else if(Z(t))n=16;else if(typeof t=="object")if(r&65){const o=t.default;o&&(o._c&&(o._d=!1),Na(e,o()),o._c&&(o._d=!0));return}else{n=32;const o=t._;!o&&!(po in t)?t._ctx=st:o===3&&st&&(st.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else ne(t)?(t={default:t,_ctx:st},n=32):(t=String(t),r&64?(n=16,t=[Cl(t)]):n=8);e.children=t,e.shapeFlag|=n}function o1(...e){const t={};for(let n=0;n<e.length;n++){const r=e[n];for(const o in r)if(o==="class")t.class!==r.class&&(t.class=wa([t.class,r.class]));else if(o==="style")t.style=Pa([t.style,r.style]);else if(_r(o)){const i=t[o],s=r[o];s&&i!==s&&!(Z(i)&&i.includes(s))&&(t[o]=i?[].concat(i,s):s)}else o!==""&&(t[o]=r[o])}return t}function at(e,t,n,r=null){lt(e,t,7,[n,r])}const a1=wl();let i1=0;function s1(e,t,n){const r=e.type,o=(t?t.appContext:e.appContext)||a1,i={uid:i1++,vnode:e,type:r,parent:t,appContext:o,root:null,next:null,subTree:null,effect:null,update:null,scope:new z0(!0),render:null,proxy:null,exposed:null,exposeProxy:null,withProxy:null,provides:t?t.provides:Object.create(o.provides),accessCache:null,renderCache:[],components:null,directives:null,propsOptions:Dl(r,o),emitsOptions:ml(r,o),emit:null,emitted:null,propsDefaults:Le,inheritAttrs:r.inheritAttrs,ctx:Le,data:Le,props:Le,attrs:Le,slots:Le,refs:Le,setupState:Le,setupContext:null,attrsProxy:null,slotsProxy:null,suspense:n,suspenseId:n?n.pendingId:0,asyncDep:null,asyncResolved:!1,isMounted:!1,isUnmounted:!1,isDeactivated:!1,bc:null,c:null,bm:null,m:null,bu:null,u:null,um:null,bum:null,da:null,a:null,rtg:null,rtc:null,ec:null,sp:null};return i.ctx={_:i},i.root=t?t.root:i,i.emit=pu.bind(null,i),e.ce&&e.ce(i),i}let Se=null;const $n=()=>Se||st;let Ha,pn,Gi="__VUE_INSTANCE_SETTERS__";(pn=qo()[Gi])||(pn=qo()[Gi]=[]),pn.push(e=>Se=e),Ha=e=>{pn.length>1?pn.forEach(t=>t(e)):pn[0](e)};const xn=e=>{Ha(e),e.scope.on()},cn=()=>{Se&&Se.scope.off(),Ha(null)};function Ml(e){return e.vnode.shapeFlag&4}let In=!1;function l1(e,t=!1){In=t;const{props:n,children:r}=e.vnode,o=Ml(e);Nu(e,n,o,t),Gu(e,r);const i=o?c1(e,t):void 0;return In=!1,i}function c1(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=dl(new Proxy(e.ctx,ju));const{setup:r}=n;if(r){const o=e.setupContext=r.length>1?u1(e):null;xn(e),kn();const i=Ut(r,e,0,[e.props,o]);if(Cn(),cn(),Gs(i)){if(i.then(cn,cn),t)return i.then(s=>{qi(e,s,t)}).catch(s=>{Er(s,e,0)});e.asyncDep=i}else qi(e,i,t)}else Bl(e,t)}function qi(e,t,n){ne(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:Te(t)&&(e.setupState=vl(t)),Bl(e,n)}let Ui;function Bl(e,t,n){const r=e.type;if(!e.render){if(!t&&Ui&&!r.render){const o=r.template||Fa(e).template;if(o){const{isCustomElement:i,compilerOptions:s}=e.appContext.config,{delimiters:c,compilerOptions:d}=r,u=Oe(Oe({isCustomElement:i,delimiters:c},s),d);r.render=Ui(o,u)}}e.render=r.render||_t}xn(e),kn(),ku(e),Cn(),cn()}function d1(e){return e.attrsProxy||(e.attrsProxy=new Proxy(e.attrs,{get(t,n){return Ke(e,"get","$attrs"),t[n]}}))}function u1(e){const t=n=>{e.exposed=n||{}};return{get attrs(){return d1(e)},slots:e.slots,emit:e.emit,expose:t}}function Ja(e){if(e.exposed)return e.exposeProxy||(e.exposeProxy=new Proxy(vl(dl(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in Yn)return Yn[n](e)},has(t,n){return n in t||n in Yn}}))}function v1(e,t=!0){return ne(e)?e.displayName||e.name:e.name||t&&e.__name}function p1(e){return ne(e)&&"__vccOpts"in e}const T=(e,t)=>su(e,t,In);function l(e,t,n){const r=arguments.length;return r===2?Te(t)&&!Z(t)?na(t)?we(e,null,[t]):we(e,t):we(e,null,t):(r>3?n=Array.prototype.slice.call(arguments,2):r===3&&na(n)&&(n=[n]),we(e,t,n))}const f1=Symbol.for("v-scx"),h1=()=>me(f1),m1="3.3.4",_1="http://www.w3.org/2000/svg",an=typeof document<"u"?document:null,Ki=an&&an.createElement("template"),b1={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?an.createElementNS(_1,e):an.createElement(e,n?{is:n}:void 0);return e==="select"&&r&&r.multiple!=null&&o.setAttribute("multiple",r.multiple),o},createText:e=>an.createTextNode(e),createComment:e=>an.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>an.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,r,o,i){const s=n?n.previousSibling:t.lastChild;if(o&&(o===i||o.nextSibling))for(;t.insertBefore(o.cloneNode(!0),n),!(o===i||!(o=o.nextSibling)););else{Ki.innerHTML=r?`<svg>${e}</svg>`:e;const c=Ki.content;if(r){const d=c.firstChild;for(;d.firstChild;)c.appendChild(d.firstChild);c.removeChild(d)}t.insertBefore(c,n)}return[s?s.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}};function g1(e,t,n){const r=e._vtc;r&&(t=(t?[t,...r]:[...r]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}function E1(e,t,n){const r=e.style,o=je(n);if(n&&!o){if(t&&!je(t))for(const i in t)n[i]==null&&ra(r,i,"");for(const i in n)ra(r,i,n[i])}else{const i=r.display;o?t!==n&&(r.cssText=n):t&&e.removeAttribute("style"),"_vod"in e&&(r.display=i)}}const Qi=/\s*!important$/;function ra(e,t,n){if(Z(n))n.forEach(r=>ra(e,t,r));else if(n==null&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{const r=y1(e,t);Qi.test(n)?e.setProperty(jn(r),n.replace(Qi,""),"important"):e[r]=n}}const Xi=["Webkit","Moz","ms"],xo={};function y1(e,t){const n=xo[t];if(n)return n;let r=dt(t);if(r!=="filter"&&r in e)return xo[t]=r;r=br(r);for(let o=0;o<Xi.length;o++){const i=Xi[o]+r;if(i in e)return xo[t]=i}return t}const Yi="http://www.w3.org/1999/xlink";function A1(e,t,n,r,o){if(r&&t.startsWith("xlink:"))n==null?e.removeAttributeNS(Yi,t.slice(6,t.length)):e.setAttributeNS(Yi,t,n);else{const i=A0(t);n==null||i&&!Ks(n)?e.removeAttribute(t):e.setAttribute(t,i?"":n)}}function z1(e,t,n,r,o,i,s){if(t==="innerHTML"||t==="textContent"){r&&s(r,o,i),e[t]=n??"";return}const c=e.tagName;if(t==="value"&&c!=="PROGRESS"&&!c.includes("-")){e._value=n;const u=c==="OPTION"?e.getAttribute("value"):e.value,v=n??"";u!==v&&(e.value=v),n==null&&e.removeAttribute(t);return}let d=!1;if(n===""||n==null){const u=typeof e[t];u==="boolean"?n=Ks(n):n==null&&u==="string"?(n="",d=!0):u==="number"&&(n=0,d=!0)}try{e[t]=n}catch{}d&&e.removeAttribute(t)}function T1(e,t,n,r){e.addEventListener(t,n,r)}function L1(e,t,n,r){e.removeEventListener(t,n,r)}function P1(e,t,n,r,o=null){const i=e._vei||(e._vei={}),s=i[t];if(r&&s)s.value=r;else{const[c,d]=w1(t);if(r){const u=i[t]=x1(r,o);T1(e,c,u,d)}else s&&(L1(e,c,s,d),i[t]=void 0)}}const Zi=/(?:Once|Passive|Capture)$/;function w1(e){let t;if(Zi.test(e)){t={};let r;for(;r=e.match(Zi);)e=e.slice(0,e.length-r[0].length),t[r[0].toLowerCase()]=!0}return[e[2]===":"?e.slice(3):jn(e.slice(2)),t]}let Io=0;const O1=Promise.resolve(),D1=()=>Io||(O1.then(()=>Io=0),Io=Date.now());function x1(e,t){const n=r=>{if(!r._vts)r._vts=Date.now();else if(r._vts<=n.attached)return;lt(I1(r,n.value),t,5,[r])};return n.value=e,n.attached=D1(),n}function I1(e,t){if(Z(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 es=/^on[a-z]/,V1=(e,t,n,r,o=!1,i,s,c,d)=>{t==="class"?g1(e,r,o):t==="style"?E1(e,n,r):_r(t)?Aa(t)||P1(e,t,n,r,s):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):R1(e,t,r,o))?z1(e,t,r,i,s,c,d):(t==="true-value"?e._trueValue=r:t==="false-value"&&(e._falseValue=r),A1(e,t,r,o))};function R1(e,t,n,r){return r?!!(t==="innerHTML"||t==="textContent"||t in e&&es.test(t)&&ne(n)):t==="spellcheck"||t==="draggable"||t==="translate"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA"||es.test(t)&&je(n)?!1:t in e}const Ft="transition",Gn="animation",Xt=(e,{slots:t})=>l(zu,Fl(e),t);Xt.displayName="Transition";const $l={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=Xt.props=Oe({},yl,$l),nn=(e,t=[])=>{Z(e)?e.forEach(n=>n(...t)):e&&e(...t)},ts=e=>e?Z(e)?e.some(t=>t.length>1):e.length>1:!1;function Fl(e){const t={};for(const $ in e)$ in $l||(t[$]=e[$]);if(e.css===!1)return t;const{name:n="v",type:r,duration:o,enterFromClass:i=`${n}
1-enter-from`,enterActiveClass:s=`${n}-enter-active`,enterToClass:c=`${n}-enter-to`,appearFromClass:d=i,appearActiveClass:u=s,appearToClass:v=c,leaveFromClass:f=`${n}-leave-from`,leaveActiveClass:h=`${n}-leave-active`,leaveToClass:m=`${n}-leave-to`}=e,E=j1(o),A=E&&E[0],L=E&&E[1],{onBeforeEnter:g,onEnter:y,onEnterCancelled:P,onLeave:x,onLeaveCancelled:N,onBeforeAppear:R=g,onAppear:G=y,onAppearCancelled:S=P}=t,Q=($,ee,U)=>{Nt($,ee?v:c),Nt($,ee?u:s),U&&U()},M=($,ee)=>{$._isLeaving=!1,Nt($,f),Nt($,m),Nt($,h),ee&&ee()},H=$=>(ee,U)=>{const De=$?G:y,re=()=>Q(ee,$,U);nn(De,[ee,re]),ns(()=>{Nt(ee,$?d:i),xt(ee,$?v:c),ts(De)||rs(ee,r,A,re)})};return Oe(t,{onBeforeEnter($){nn(g,[$]),xt($,i),xt($,s)},onBeforeAppear($){nn(R,[$]),xt($,d),xt($,u)},onEnter:H(!1),onAppear:H(!0),onLeave($,ee){$._isLeaving=!0;const U=()=>M($,ee);xt($,f),Nl(),xt($,h),ns(()=>{$._isLeaving&&(Nt($,f),xt($,m),ts(x)||rs($,r,L,U))}),nn(x,[$,U])},onEnterCancelled($){Q($,!1),nn(P,[$])},onAppearCancelled($){Q($,!0),nn(S,[$])},onLeaveCancelled($){M($),nn(N,[$])}})}function j1(e){if(e==null)return null;if(Te(e))return[Vo(e.enter),Vo(e.leave)];{const t=Vo(e);return[t,t]}}function Vo(e){return m0(e)}function xt(e,t){t.split(/\s+/).forEach(n=>n&&e.classList.add(n)),(e._vtc||(e._vtc=new Set)).add(t)}function Nt(e,t){t.split(/\s+/).forEach(r=>r&&e.classList.remove(r));const{_vtc:n}=e;n&&(n.delete(t),n.size||(e._vtc=void 0))}function ns(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}let k1=0;function rs(e,t,n,r){const o=e._endId=++k1,i=()=>{o===e._endId&&r()};if(n)return setTimeout(i,n);const{type:s,timeout:c,propCount:d}=Wl(e,t);if(!s)return r();const u=s+"end";let v=0;const f=()=>{e.removeEventListener(u,h),i()},h=m=>{m.target===e&&++v>=d&&f()};setTimeout(()=>{v<d&&f()},c+1),e.addEventListener(u,h)}function Wl(e,t){const n=window.getComputedStyle(e),r=E=>(n[E]||"").split(", "),o=r(`${Ft}Delay`),i=r(`${Ft}Duration`),s=os(o,i),c=r(`${Gn}Delay`),d=r(`${Gn}Duration`),u=os(c,d);let v=null,f=0,h=0;t===Ft?s>0&&(v=Ft,f=s,h=i.length):t===Gn?u>0&&(v=Gn,f=u,h=d.length):(f=Math.max(s,u),v=f>0?s>u?Ft:Gn:null,h=v?v===Ft?i.length:d.length:0);const m=v===Ft&&/\b(transform|all)(,|$)/.test(r(`${Ft}Property`).toString());return{type:v,timeout:f,propCount:h,hasTransform:m}}function os(e,t){for(;e.length<t.length;)e=e.concat(e);return Math.max(...t.map((n,r)=>as(n)+as(e[r])))}function as(e){return Number(e.slice(0,-1).replace(",","."))*1e3}function Nl(){return document.body.offsetHeight}const Hl=new WeakMap,Jl=new WeakMap,Gl={name:"TransitionGroup",props:Oe({},S1,{tag:String,moveClass:String}),setup(e,{slots:t}){const n=$n(),r=El();let o,i;return Tl(()=>{if(!o.length)return;const s=e.moveClass||`${e.name||"v"}-move`;if(!W1(o[0].el,n.vnode.el,s))return;o.forEach(B1),o.forEach($1);const c=o.filter(F1);Nl(),c.forEach(d=>{const u=d.el,v=u.style;xt(u,s),v.transform=v.webkitTransform=v.transitionDuration="";const f=u._moveCb=h=>{h&&h.target!==u||(!h||/transform$/.test(h.propertyName))&&(u.removeEventListener("transitionend",f),u._moveCb=null,Nt(u,s))};u.addEventListener("transitionend",f)})}),()=>{const s=le(e),c=Fl(s);let d=s.tag||et;o=i,i=t.default?Ba(t.default()):[];for(let u=0;u<i.length;u++){const v=i[u];v.key!=null&&cr(v,lr(v,c,r,n))}if(o)for(let u=0;u<o.length;u++){const v=o[u];cr(v,lr(v,c,r,n)),Hl.set(v,v.el.getBoundingClientRect())}return we(d,null,i)}}},C1=e=>delete e.mode;Gl.props;const M1=Gl;function B1(e){const t=e.el;t._moveCb&&t._moveCb(),t._enterCb&&t._enterCb()}function $1(e){Jl.set(e,e.el.getBoundingClientRect())}function F1(e){const t=Hl.get(e),n=Jl.get(e),r=t.left-n.left,o=t.top-n.top;if(r||o){const i=e.el.style;return i.transform=i.webkitTransform=`translate(${r}px,${o}px)`,i.transitionDuration="0s",e}}function W1(e,t,n){const r=e.cloneNode();e._vtc&&e._vtc.forEach(s=>{s.split(/\s+/).forEach(c=>c&&r.classList.remove(c))}),n.split(/\s+/).forEach(s=>s&&r.classList.add(s)),r.style.display="none";const o=t.nodeType===1?t:t.parentNode;o.appendChild(r);const{hasTransform:i}=Wl(r);return o.removeChild(r),i}const N1=Oe({patchProp:V1},b1);let Ro,is=!1;function H1(){return Ro=is?Ro:Ku(N1),is=!0,Ro}const J1=(...e)=>{const t=H1().createApp(...e),{mount:n}=t;return t.mount=r=>{const o=G1(r);if(o)return n(o,!0,o instanceof SVGElement)},t};function G1(e){return je(e)?document.querySelector(e):e}const q1={"v-8daa1a0e":()=>a(()=>import("./index.html-877b39b7.js"),[]).then(({data:e})=>e),"v-2d0ad528":()=>a(()=>import("./index.html-60929ae4.js"),[]).then(({data:e})=>e),"v-9a292eba":()=>a(()=>import("./contact.html-8ebbbdd8.js"),[]).then(({data:e})=>e),"v-0d31a857":()=>a(()=>import("./intro.html-dac02cc0.js"),[]).then(({data:e})=>e),"v-a29a5852":()=>a(()=>import("./notice.html-1f7b61ec.js"),[]).then(({data:e})=>e),"v-06936ce2":()=>a(()=>import("./dfs-and-bfs.html-6396fe95.js"),[]).then(({data:e})=>e),"v-5e224cd1":()=>a(()=>import("./graph.html-a0267bdc.js"),[]).then(({data:e})=>e),"v-2687243d":()=>a(()=>import("./recursion.html-62c9f47b.js"),[]).then(({data:e})=>e),"v-7d008c13":()=>a(()=>import("./sort-algorithm.html-8358bd87.js"),[]).then(({data:e})=>e),"v-bc3aed30":()=>a(()=>import("./contact.html-9e8c2083.js"),[]).then(({data:e})=>e),"v-6ad79348":()=>a(()=>import("./intro.html-2f7ceb83.js"),[]).then(({data:e})=>e),"v-b9a7e75c":()=>a(()=>import("./error-modal.html-bb1ea605.js"),[]).then(({data:e})=>e),"v-33efeade":()=>a(()=>import("./js-traversal.html-8779ceab.js"),[]).then(({data:e})=>e),"v-0d95a860":()=>a(()=>import("./mobx.html-7bcadc7d.js"),[]).then(({data:e})=>e),"v-46cc72c2":()=>a(()=>import("./react-function-component.html-41d2b063.js"),[]).then(({data:e})=>e),"v-e419e6a8":()=>a(()=>import("./webpack-hot-fresh.html-1e002a1a.js"),[]).then(({data:e})=>e),"v-719c1fb2":()=>a(()=>import("./index.html-35c3dfa0.js"),[]).then(({data:e})=>e),"v-5ee8cb00":()=>a(()=>import("./index.html-b1f9b0d2.js"),[]).then(({data:e})=>e),"v-53fc6bc5":()=>a(()=>import("./index.html-ac662ab7.js"),[]).then(({data:e})=>e),"v-04c4d1b0":()=>a(()=>import("./backRoll.html-d8d78f55.js"),[]).then(({data:e})=>e),"v-f6fd70dc":()=>a(()=>import("./branch.html-9106a77d.js"),[]).then(({data:e})=>e),"v-5d01f244":()=>a(()=>import("./change.html-36417961.js"),[]).then(({data:e})=>e),"v-1e06748e":()=>a(()=>import("./createRepository.html-26d89974.js"),[]).then(({data:e})=>e),"v-24dba1dd":()=>a(()=>
1import("./customGit.html-6c6d2274.js"),[]).then(({data:e})=>e),"v-2cb4d166":()=>a(()=>import("./gitLFS.html-f2e36b38.js"),[]).then(({data:e})=>e),"v-01bd5f3a":()=>a(()=>import("./install.html-586dcb2b.js"),[]).then(({data:e})=>e),"v-44537b6e":()=>a(()=>import("./remote.html-05b0288c.js"),[]).then(({data:e})=>e),"v-97a011c6":()=>a(()=>import("./statusView.html-fb000aa3.js"),[]).then(({data:e})=>e),"v-1acc0844":()=>a(()=>import("./tag.html-76a11dd0.js"),[]).then(({data:e})=>e),"v-59be3c7a":()=>a(()=>import("./whatIsGit.html-60b95f8c.js"),[]).then(({data:e})=>e),"v-241f8510":()=>a(()=>import("./workingDirectory.html-193ecde5.js"),[]).then(({data:e})=>e),"v-831af89c":()=>a(()=>import("./json.html-76413eb9.js"),[]).then(({data:e})=>e),"v-4be13b52":()=>a(()=>import("./markdown.html-0967225b.js"),[]).then(({data:e})=>e),"v-2c126a00":()=>a(()=>import("./index.html-9990e9c2.js"),[]).then(({data:e})=>e),"v-432d3449":()=>a(()=>import("./install.html-f614ad5f.js"),[]).then(({data:e})=>e),"v-3a586d6c":()=>a(()=>import("./interpreter.html-af0452ef.js"),[]).then(({data:e})=>e),"v-1948dcd8":()=>a(()=>import("./intro.html-b6234e74.js"),[]).then(({data:e})=>e),"v-f9fb0eaa":()=>a(()=>import("./index.html-6f25ec90.js"),[]).then(({data:e})=>e),"v-7c3bddbb":()=>a(()=>import("./install.html-cf01d9b0.js"),[]).then(({data:e})=>e),"v-958385c6":()=>a(()=>import("./index.html-05948c4a.js"),[]).then(({data:e})=>e),"v-1613c35d":()=>a(()=>import("./shortcutKey.html-38cb9f8c.js"),[]).then(({data:e})=>e),"v-05a75161":()=>a(()=>import("./vscodeExtension.html-653caaf6.js"),[]).then(({data:e})=>e),"v-3c887c4f":()=>a(()=>import("./vscodeSettings.html-a2203cb6.js"),[]).then(({data:e})=>e),"v-28264260":()=>a(()=>import("./vscodeSimple.html-d9a3dbf7.js"),[]).then(({data:e})=>e),"v-1df53f5c":()=>a(()=>import("./yaml.html-7f136882.js"),[]).then(({data:e})=>e),"v-7970903c":()=>a(()=>import("./apache.html-87d47fce.js"),[]).then(({data:e})=>e),"v-67cc625a":()=>a(()=>import("./express.html-e78ef8cc.js"),[]).then(({data:e})=>e),"v-4bf552c6":()=>a(()=>import("./nginx.html-d51266ff.js"),[]).then(({data:e})=>e),"v-29d0be61":()=>a(()=>import("./index.html-6795546d.js"),[]).then(({data:e})=>e),"v-6e4e7788":()=>a(()=>import("./index.html-860f8c3d.js"),[]).then(({data:e})=>e),"v-25e6d482":()=>a(()=>import("./s1.html-f8635e1c.js"),[]).then(({data:e})=>e),"v-968db2fa":()=>a(()=>import("./s10.html-1c77494c.js"),[]).then(({data:e})=>e),"v-932401bc":()=>a(()=>import("./s11.html-c62f78ab.js"),[]).then(({data:e})=>e),"v-227d2344":()=>a(()=>import("./s2.html-6511e232.js"),[]).then(({data:e})=>e),"v-1f137206":()=>a(()=>import("./s3.html-223af817.js"),[]).then(({data:e})=>e),"v-1ba9c0c8":()=>a(()=>import("./s4.html-d5dd4146.js"),[]).then(({data:e})=>e),"v-18400f8a":()=>a(()=>import("./s5.html-c4bc6ce6.js"),[]).then(({data:e})=>e),"v-14d65e4c":()=>a(()=>import("./s6.html-dfe40e41.js"),[]).then(({data:e})=>e),"v-116cad0e":()=>a(()=>
1import("./s7.html-ed80a7ec.js"),[]).then(({data:e})=>e),"v-0e02fbd0":()=>a(()=>import("./s8.html-fba299a4.js"),[]).then(({data:e})=>e),"v-0a994a92":()=>a(()=>import("./s9.html-d252de3e.js"),[]).then(({data:e})=>e),"v-1b8c53e9":()=>a(()=>import("./OS.html-88f01843.js"),[]).then(({data:e})=>e),"v-162556da":()=>a(()=>import("./encoding.html-6f8c75ae.js"),[]).then(({data:e})=>e),"v-472e04df":()=>a(()=>import("./file-extension.html-d19a4b44.js"),[]).then(({data:e})=>e),"v-2ff7e7e8":()=>a(()=>import("./index.html-d78df315.js"),[]).then(({data:e})=>e),"v-314caf96":()=>a(()=>import("./information-security.html-94c4d1a7.js"),[]).then(({data:e})=>e),"v-2bea7022":()=>a(()=>import("./WSL.html-7b9ee584.js"),[]).then(({data:e})=>e),"v-6a42c307":()=>a(()=>import("./centos.html-7605fb7d.js"),[]).then(({data:e})=>e),"v-0cf9aff4":()=>a(()=>import("./index.html-eb1977cd.js"),[]).then(({data:e})=>e),"v-133ac9d7":()=>a(()=>import("./ssh.html-23e71691.js"),[]).then(({data:e})=>e),"v-0b816f4a":()=>a(()=>import("./addPath.html-dfab30fb.js"),[]).then(({data:e})=>e),"v-35b98e76":()=>a(()=>import("./cmd.html-3853de29.js"),[]).then(({data:e})=>e),"v-1b13a197":()=>a(()=>import("./index.html-a353ef74.js"),[]).then(({data:e})=>e),"v-04d61852":()=>a(()=>import("./shortcutKey.html-e7850cca.js"),[]).then(({data:e})=>e),"v-638e3a4a":()=>a(()=>import("./index.html-3022a953.js"),[]).then(({data:e})=>e),"v-094854c8":()=>a(()=>import("./jses10.html-71a0cdef.js"),[]).then(({data:e})=>e),"v-0afd2d67":()=>a(()=>import("./jses11.html-2c80c355.js"),[]).then(({data:e})=>e),"v-0cb20606":()=>a(()=>import("./jses12.html-db794e50.js"),[]).then(({data:e})=>e),"v-0e66dea5":()=>a(()=>import("./jses13.html-bb54021f.js"),[]).then(({data:e})=>e),"v-101bb744":()=>a(()=>import("./jses14.html-946e4de9.js"),[]).then(({data:e})=>e),"v-11d08fe3":()=>a(()=>import("./jses15.html-405d4ee9.js"),[]).then(({data:e})=>e),"v-13856882":()=>a(()=>import("./jses16.html-e28438c2.js"),[]).then(({data:e})=>e),"v-153a4121":()=>a(()=>import("./jses17.html-aaa66689.js"),[]).then(({data:e})=>e),"v-16ef19c0":()=>a(()=>import("./jses18.html-f47dae90.js"),[]).then(({data:e})=>e),"v-18a3f25f":()=>a(()=>import("./jses19.html-28846198.js"),[]).then(({data:e})=>e),"v-f3be390e":()=>a(()=>import("./jses2.html-035388e7.js"),[]).then(({data:e})=>e),"v-3e2e9009":()=>a(()=>import("./jses20.html-7ab38312.js"),[]).then(({data:e})=>e),"v-3fe368a8":()=>a(()=>import("./jses21.html-5362208b.js"),[]).then(({data:e})=>e),"v-41984147":()=>a(()=>import("./jses22.html-5c9725ad.js"),[]).then(({data:e})=>e),"v-434d19e6":()=>a(()=>import("./jses23.html-1426bdf9.js"),[]).then(({data:e})=>e),"v-4501f285":()=>a(()=>import("./jses24.html-8dfd819c.js"),[]).then(({data:e})=>e),"v-46b6cb24":()=>a(()=>import("./jses25.html-494a2c04.js"),[]).then(({data:e})=>e),"v-486ba3c3":()=>a(()=>import("./jses26.html-9b701a98.js"),[]).then(({data:e})=>e),"v-f05487d0":()=>a(()=>import("./jses3.html-681022b7.js"),[]).then(({data:e})=>e),"v-ecead692":()=>a(()=>import("./jses4.html-7f26dba4.js"),[]).then(({data:e})=>e),"v-e9812554":()=>a(()=>import("./jses5.html-637cc910.js"),[]).then(({data:e})=>e),"v-e6177416":()=>a(()=>import("./jses6.html-e5542a15.js"),[]).then(({data:e})=>e),"v-e2adc2d8":()=>a(()=>import("./jses7.html-8f5d8745.js"),[]).then(({data:e})=>e),"v-df44119a":()=>a(()=>import("./jses8.html-48a2e300.js"),[]).then(({data:e})=>e),"v-dbda605c":()=>a(()=>import("./jses9.html-04ee6cbb.js"),[]).then(({data:e})=>e),"v-1858bc8a":()=>a(()=>import("./ajax.html-bd7a2115.js"),[]).then(({data:e})=>e),"v-437b808a":()=>a(()=>import("./data-storage.html-82fa2630.js"),[]).then(({data:e})=>e),"v-54f6ce60":()=>a(()=>import("./db1.html-efc52a10.js"),[]).then(({data:e})=>e),"v-4a160202":()=>a(()=>import("./db10.html-b4d7932b.js"),[]).then(({data:e})=>e),"v-4bcadaa1":()=>a(()=>import("./db11.html-b4d2c167.js"),[]).then(({data:e})=>e),"v-4d7fb340":()=>a(()=>import("./db12.html-39e0b5a2.js"),[]).then(({data:e})=>e),"v-4f348bdf":()=>a(()=>import("./db13.html-3d40c3db.js"),[]).then(({data:e})=>e),"v-56aba6ff":()=>a(()=>import("./db2.html-44921aca.js"),[]).then(({data:e})=>e),"v-58607f9e":()=>a(()=>import("./db3.html-812bcc3f.js"),[]).then(({data:e})=>e),"v-5a15583d":()=>a(()=>import("./db4.html-405d05c5.js"),[]).then(({data:e})=>e),"v-5bca30dc":()=>a(()=>import("./db5.html-a90d4da5.js"),[]).then(({data:e})=>e),"v-5d7f097b":()=>a(()=>import("./db6.html-f88dd836.js"),[]).then(({data:e})=>e),"v-5f33e21a":()=>a(()=>import("./db7.html-ff0b5985.js"),[]).then(({data:e})=>e),"v-60e8bab9":()=>a(()=>import("./db8.html-6f342d22.js"),[]).then(({data:e})=>e),"v-629d9358":()=>a(()=>import("./db9.html-197e78c0.js"),[]).then(({data:e})=>e),"v-7b5f9b1a":()=>a(()=>import("./index.html-347feabb.js"),[]).then(({data:e})=>e),"v-dc3c55de":()=>a(()=>import("./advanced-html.html-5cc4771b.js"),[]).then(({data:e})=>e),"v-0e0889b8":()=>a(()=>import("./css.html-e476cd45.js"),[]).then(({data:e})=>e),"v-68c37a04":()=>a(()=>
1import("./hint.html-89cad410.js"),[]).then(({data:e})=>e),"v-c6393140":()=>a(()=>import("./html.html-2699e948.js"),[]).then(({data:e})=>e),"v-5b731d25":()=>a(()=>import("./browser.html-cd339b82.js"),[]).then(({data:e})=>e),"v-5ba3237c":()=>a(()=>import("./https.html-b5364c9a.js"),[]).then(({data:e})=>e),"v-1d12b96c":()=>a(()=>import("./interview.html-87c83d5e.js"),[]).then(({data:e})=>e),"v-58d70f88":()=>a(()=>import("./ajax.html-80470ad4.js"),[]).then(({data:e})=>e),"v-3f2c3466":()=>a(()=>import("./animation.html-d0f51691.js"),[]).then(({data:e})=>e),"v-edae68e0":()=>a(()=>import("./event.html-9c9de6f4.js"),[]).then(({data:e})=>e),"v-adb5d1e4":()=>a(()=>import("./extend.html-2767ff59.js"),[]).then(({data:e})=>e),"v-cd252a04":()=>a(()=>import("./intro.html-cbdd7ca0.js"),[]).then(({data:e})=>e),"v-0b8c0619":()=>a(()=>import("./modify-dom.html-f409891a.js"),[]).then(({data:e})=>e),"v-ad77815e":()=>a(()=>import("./operate-dom.html-235eebe6.js"),[]).then(({data:e})=>e),"v-6d15435e":()=>a(()=>import("./index.html-c012484d.js"),[]).then(({data:e})=>e),"v-60dc0da9":()=>a(()=>import("./selector.html-2cd413a1.js"),[]).then(({data:e})=>e),"v-55c831be":()=>a(()=>import("./bootstrap.html-202908aa.js"),[]).then(({data:e})=>e),"v-aca7c608":()=>a(()=>import("./hint.html-2f7824f7.js"),[]).then(({data:e})=>e),"v-6203752a":()=>a(()=>import("./less.html-3c90a749.js"),[]).then(({data:e})=>e),"v-5f446a96":()=>a(()=>import("./sass.html-b36cf9bb.js"),[]).then(({data:e})=>e),"v-23c788a2":()=>a(()=>import("./index.html-380597a3.js"),[]).then(({data:e})=>e),"v-4da54d6c":()=>a(()=>import("./index.html-4027aab9.js"),[]).then(({data:e})=>e),"v-5f5b83be":()=>a(()=>import("./DOMDiff.html-d0522e57.js"),[]).then(({data:e})=>e),"v-2ac8355a":()=>a(()=>import("./VirtualDOM.html-8c041851.js"),[]).then(({data:e})=>e),"v-02ddc0a2":()=>a(()=>import("./index.html-87bcc2be.js"),[]).then(({data:e})=>e),"v-507a9b2e":()=>a(()=>import("./index.html-0fcef07f.js"),[]).then(({data:e})=>e),"v-0be5b805":()=>a(()=>import("./vue1.html-943a48b1.js"),[]).then(({data:e})=>e),"v-71044cfd":()=>a(()=>import("./vue10.html-e5f3180d.js"),[]).then(({data:e})=>e),"v-72b9259c":()=>a(()=>import("./vue11.html-3f42f435.js"),[]).then(({data:e})=>e),"v-746dfe3b":()=>a(()=>import("./vue12.html-4c2fb862.js"),[]).then(({data:e})=>e),"v-7622d6da":()=>a(()=>import("./vue13.html-f6dd5eba.js"),[]).then(({data:e})=>e),"v-77d7af79":()=>a(()=>import("./vue14.html-80b3db9b.js"),[]).then(({data:e})=>e),"v-798c8818":()=>a(()=>import("./vue15.html-5d173aab.js"),[]).then(({data:e})=>e),"v-7b4160b7":()=>a(()=>import("./vue16.html-8e3e62a0.js"),[]).then(({data:e})=>e),"v-7cf63956":()=>a(()=>import("./vue17.html-3b0c7f1a.js"),[]).then(({data:e})=>e),"v-7eab11f5":()=>a(()=>import("./vue18.html-287cb733.js"),[]).then(({data:e})=>e),"v-0d9a90a4":()=>a(()=>import("./vue2.html-c6648d7b.js"),[]).then(({data:e})=>e),"v-0f4f6943":()=>a(()=>import("./vue3.html-a33b4c40.js"),[]).then(({data:e})=>e),"v-110441e2":()=>a(()=>import("./vue4.html-b11a6921.js"),[]).then(({data:e})=>e),"v-12b91a81":()=>a(()=>import("./vue5.html-60a0cbfd.js"),[]).then(({data:e})=>e),"v-146df320":()=>a(()=>import("./vue6.html-86423057.js"),[]).then(({data:e})=>e),"v-1622cbbf":()=>a(()=>import("./vue7.html-e67006e9.js"),[]).then(({data:e})=>e),"v-17d7a45e":()=>a(()=>import("./vue8.html-9c671108.js"),[]).then(({data:e})=>e),"v-198c7cfd":()=>a(()=>import("./vue9.html-748acdac.js"),[]).then(({data:e})=>e),"v-2899cbee":()=>a(()=>import("./webpack.html-410ed5c7.js"),[]).then(({data:e})=>e),"v-9f7c4d50":()=>a(()=>import("./github-pages.html-11caaf2c.js"),[]).then(({data:e})=>e),"v-ee21c572":()=>a(()=>import("./index.html-7087fcbf.js"),[]).then(({data:e})=>e),"v-5dfeb152":()=>a(()=>import("./index.html-900759fe.js"),[]).then(({data:e})=>e),"v-dc745272":()=>a(()=>import("./致毕业.html-f469d833.js"),[]).then(({data:e})=>e),"v-423a3e72":()=>a(()=>import("./index.html-2f88fa46.js"),[]).then(({data:e})=>e),"v-4cf8f48a":()=>a(()=>import("./我十七.html-f077e557.js"),[]).then(({data:e})=>e),"v-6b4794e2":()=>a(()=>import("./收录第一次填词.html-780b4c28.js"),[]).then(({data:e})=>e),"v-ba974232":()=>a(()=>import("./萤火.html-9ef9b1b2.js"),[]).then(({data:e})=>e),"v-c5d31332":()=>a(()=>import("./蒲公.html-25f09399.js"),[]).then(({data:e})=>e),"v-75006504":()=>a(()=>import("./generator.html-91494249.js"),[]).then(({data:e})=>e),"v-17fa6fb4":()=>a(()=>import("./iteration.html-8857c83a.js"),[]).then(({data:e})=>e),"v-fc21c2da":()=>a(()=>import("./iterator.html-51e30061.js"),[]).then(({data:e})=>e),"v-129674b3":()=>a(()=>
1import("./list-comprehensions.html-3c601174.js"),[]).then(({data:e})=>e),"v-53e80598":()=>a(()=>import("./index.html-959f49e6.js"),[]).then(({data:e})=>e),"v-7a83961f":()=>a(()=>import("./slice.html-698d067d.js"),[]).then(({data:e})=>e),"v-95f376a0":()=>a(()=>import("./argument.html-502c6081.js"),[]).then(({data:e})=>e),"v-933ec0a2":()=>a(()=>import("./call.html-e3c3da5d.js"),[]).then(({data:e})=>e),"v-f3d0f51c":()=>a(()=>import("./define.html-19e93560.js"),[]).then(({data:e})=>e),"v-3f08bdf9":()=>a(()=>import("./intro.html-2cbc09f3.js"),[]).then(({data:e})=>e),"v-50f21f0c":()=>a(()=>import("./index.html-18cd1a4a.js"),[]).then(({data:e})=>e),"v-4e4685f3":()=>a(()=>import("./recursive.html-d56132d8.js"),[]).then(({data:e})=>e),"v-cc9cee16":()=>a(()=>import("./index.html-1b843299.js"),[]).then(({data:e})=>e),"v-c61e6ace":()=>a(()=>import("./return-function.html-c1eed48b.js"),[]).then(({data:e})=>e),"v-7c04bd09":()=>a(()=>import("./basic.html-cdd2d8af.js"),[]).then(({data:e})=>e),"v-7b7a9d88":()=>a(()=>import("./condition.html-d7bf1ed8.js"),[]).then(({data:e})=>e),"v-28ee063a":()=>a(()=>import("./dictAndSet.html-444d30fd.js"),[]).then(({data:e})=>e),"v-33b5b5a3":()=>a(()=>import("./exercise.html-f5f9dc2d.js"),[]).then(({data:e})=>e),"v-799726d6":()=>a(()=>import("./io.html-bcfce8ca.js"),[]).then(({data:e})=>e),"v-285de9ec":()=>a(()=>import("./listAndTuple.html-cb57d138.js"),[]).then(({data:e})=>e),"v-064f9d52":()=>a(()=>import("./loop.html-47242ec8.js"),[]).then(({data:e})=>e),"v-9d119dc4":()=>a(()=>import("./index.html-f0747335.js"),[]).then(({data:e})=>e),"v-18e3d38a":()=>a(()=>import("./string.html-435e27b4.js"),[]).then(({data:e})=>e),"v-cdce4010":()=>a(()=>import("./write.html-e1a818f8.js"),[]).then(({data:e})=>e),"v-2a66e722":()=>a(()=>import("./add.html-8cf73e6f.js"),[]).then(({data:e})=>e),"v-bc083490":()=>a(()=>import("./command.html-bfaf27c1.js"),[]).then(({data:e})=>e),"v-fb252294":()=>a(()=>import("./dir.html-a149f3c2.js"),[]).then(({data:e})=>e),"v-5bab32ec":()=>a(()=>import("./excu.html-be4d06e8.js"),[]).then(({data:e})=>e),"v-1107bfd3":()=>a(()=>import("./file.html-128076f2.js"),[]).then(({data:e})=>e),"v-767d010d":()=>a(()=>import("./ln.html-98692a36.js"),[]).then(({data:e})=>e),"v-5277b8da":()=>a(()=>import("./other.html-c4a7be3b.js"),[]).then(({data:e})=>e),"v-48fb12ca":()=>a(()=>import("./path.html-738de164.js"),[]).then(({data:e})=>e),"v-64e8676c":()=>a(()=>import("./index.html-7d235510.js"),[]).then(({data:e})=>e),"v-5626af0a":()=>a(()=>import("./temp.html-424e87fa.js"),[]).then(({data:e})=>e),"v-6bccf559":()=>a(()=>import("./dir.html-57cbec84.js"),[]).then(({data:e})=>e),"v-53990d90":()=>a(()=>import("./file.html-3594c1d2.js"),[]).then(({data:e})=>e),"v-3e648e0d":()=>a(()=>import("./mount.html-3f6434b4.js"),[]).then(({data:e})=>e),"v-5b7cb426":()=>a(()=>import("./index.html-fecacdb2.js"),[]).then(({data:e})=>e),"v-292c3a97":()=>a(()=>import("./advantage.html-27676795.js"),[]).then(({data:e})=>e),"v-b66720f4":()=>a(()=>import("./desktop.html-646b547f.js"),[]).then(({data:e})=>e),"v-1793b3e4":()=>a(()=>import("./history.html-2472d5f1.js"),[]).then(({data:e})=>e),"v-b3426d14":()=>a(()=>import("./intro.html-2bce0ae7.js"),[]).then(({data:e})=>e),"v-1614bf50":()=>a(()=>import("./language.html-8bb1a33e.js"),[]).then(({data:e})=>e),"v-7b5bf2c9":()=>a(()=>import("./index.html-1ff529cd.js"),[]).then(({data:e})=>e),"v-2093dc76":()=>a(()=>import("./startup.html-7ca702e2.js"),[]).then(({data:e})=>e),"v-16cfbb48":()=>a(()=>import("./debug.html-f96ecd81.js"),[]).then(({data:e})=>e),"v-20c70aee":()=>a(()=>import("./lang.html-90bfe326.js"),[]).then(({data:e})=>e),"v-5e4dc1f2":()=>a(()=>import("./manage.html-e94570e4.js"),[]).then(({data:e})=>e),"v-567f6762":()=>a(()=>import("./index.html-bc720a0d.js"),[]).then(({data:e})=>e),"v-13da8f84":()=>a(()=>import("./webserver.html-ed0adda6.js"),[]).then(({data:e})=>e),"v-db1ff778":()=>a(()=>import("./array.html-d2261810.js"),[]).then(({data:e})=>e),"v-aa78c878":()=>a(()=>import("./arraybuffer.html-63bce04d.js"),[]).then(({data:e})=>e),"v-eff9dbfe":()=>a(()=>import("./async.html-40bff782.js"),[]).then(({data:e})=>e),"v-48d1f439":()=>a(()=>import("./class-extends.html-c84149bb.js"),[]).then(({data:e})=>e),"v-6d312ef6":()=>a(()=>import("./class.html-a20fd7a6.js"),[]).then(({data:e})=>e),"v-0795e9a2":()=>a(()=>import("./decorator.html-f9699bb6.js"),[]).then(({data:e})=>e),"v-4fc31a0e":()=>a(()=>import("./destructuring.html-3040d3de.js"),[]).then(({data:e})=>e),"v-513d62aa":()=>a(()=>import("./fp.html-67ba781c.js"),[]).then(({data:e})=>e),"v-436b2946":()=>a(()=>import("./function.html-c3caae77.js"),[]).then(({data:e})=>e),"v-68d4943b":()=>a(()=>import("./generator-async.html-f81e85c8.js"),[]).then(({data:e})=>e),"v-30e2660a":()=>a(()=>import("./generator.html-c1a6fc5e.js"),[]).then(({data:e})=>e),"v-25a5a411":()=>a(()=>import("./intro.html-95be22b7.js"),[]).then(({data:e})=>e),"v-32d14487":()=>a(()=>import("./iterator.html-c84ed279.js"),[]).then(({data:e})=>
1e),"v-9b30d27c":()=>a(()=>import("./let.html-b56c0f66.js"),[]).then(({data:e})=>e),"v-59a5f9c8":()=>a(()=>import("./mixin.html-7d4c13d0.js"),[]).then(({data:e})=>e),"v-b650462e":()=>a(()=>import("./module-loader.html-682b9043.js"),[]).then(({data:e})=>e),"v-f38e476e":()=>a(()=>import("./module.html-ce39d7f3.js"),[]).then(({data:e})=>e),"v-0d29ace8":()=>a(()=>import("./number.html-014f580f.js"),[]).then(({data:e})=>e),"v-fd602954":()=>a(()=>import("./object.html-5caa0020.js"),[]).then(({data:e})=>e),"v-097ca47c":()=>a(()=>import("./promise.html-723c5fa5.js"),[]).then(({data:e})=>e),"v-2dcb1c48":()=>a(()=>import("./proposals.html-cc5a9be5.js"),[]).then(({data:e})=>e),"v-6bc9714f":()=>a(()=>import("./proxy.html-42a806a1.js"),[]).then(({data:e})=>e),"v-3f8979b8":()=>a(()=>import("./index.html-295c424c.js"),[]).then(({data:e})=>e),"v-0ea466dc":()=>a(()=>import("./reference.html-8bff0777.js"),[]).then(({data:e})=>e),"v-7bdec560":()=>a(()=>import("./reflect.html-bc8e6e5b.js"),[]).then(({data:e})=>e),"v-c1e3e9d4":()=>a(()=>import("./regex.html-c9733435.js"),[]).then(({data:e})=>e),"v-3126d72c":()=>a(()=>import("./set-map.html-e8461d74.js"),[]).then(({data:e})=>e),"v-2e9263e8":()=>a(()=>import("./simd.html-2b4146ed.js"),[]).then(({data:e})=>e),"v-5cd3eb5a":()=>a(()=>import("./spec.html-debb6a70.js"),[]).then(({data:e})=>e),"v-736a61c4":()=>a(()=>import("./string.html-1be7b6da.js"),[]).then(({data:e})=>e),"v-39e2a028":()=>a(()=>import("./style.html-087c1b19.js"),[]).then(({data:e})=>e),"v-8c6caec6":()=>a(()=>import("./symbol.html-2a7c346f.js"),[]).then(({data:e})=>e),"v-31e2640c":()=>a(()=>import("./js1.html-515709ba.js"),[]).then(({data:e})=>e),"v-0a0414b0":()=>a(()=>import("./js10.html-d8e51b7e.js"),[]).then(({data:e})=>e),"v-069a6372":()=>a(()=>import("./js11.html-43a1af7f.js"),[]).then(({data:e})=>e),"v-0330b234":()=>a(()=>import("./js12.html-c0e29963.js"),[]).then(({data:e})=>e),"v-001c7f85":()=>a(()=>import("./js13.html-e9efb7f6.js"),[]).then(({data:e})=>e),"v-01d15824":()=>a(()=>import("./js14.html-017d128b.js"),[]).then(({data:e})=>e),"v-038630c3":()=>a(()=>import("./js15.html-18fa0519.js"),[]).then(({data:e})=>e),"v-053b0962":()=>a(()=>import("./js16.html-2bc2f88b.js"),[]).then(({data:e})=>e),"v-06efe201":()=>a(()=>import("./js17.html-f2de32bd.js"),[]).then(({data:e})=>e),"v-08a4baa0":()=>a(()=>import("./js18.html-520b9acc.js"),[]).then(({data:e})=>e),"v-0a59933f":()=>a(()=>import("./js19.html-e6d5a80c.js"),[]).then(({data:e})=>e),"v-2e78b2ce":()=>a(()=>import("./js2.html-39538bad.js"),[]).then(({data:e})=>e),"v-2fe430e9":()=>a(()=>import("./js20.html-9762b541.js"),[]).then(({data:e})=>e),"v-31990988":()=>a(()=>import("./js21.html-dd0546c1.js"),[]).then(({data:e})=>e),"v-334de227":()=>a(()=>import("./js22.html-2f86b222.js"),[]).then(({data:e})=>e),"v-3502bac6":()=>a(()=>import("./js23.html-44eed14b.js"),[]).then(({data:e})=>e),"v-36b79365":()=>a(()=>import("./js24.html-19b6becf.js"),[]).then(({data:e})=>e),"v-2b0f0190":()=>a(()=>import("./js3.html-4de729a9.js"),[]).then(({data:e})=>e),"v-27a55052":()=>a(()=>import("./js4.html-d9b708c0.js"),[]).then(({data:e})=>e),"v-243b9f14":()=>a(()=>import("./js5.html-7ac45255.js"),[]).then(({data:e})=>e),"v-20d1edd6":()=>a(()=>import("./js6.html-3e340229.js"),[]).then(({data:e})=>e),"v-1d683c98":()=>a(()=>import("./js7.html-0d4f4822.js"),[]).then(({data:e})=>e),"v-19fe8b5a":()=>a(()=>import("./js8.html-a5dce436.js"),[]).then(({data:e})=>e),"v-1694da1c":()=>a(()=>import("./js9.html-b4bc79cc.js"),[]).then(({data:e})=>e),"v-30861d29":()=>a(()=>import("./index.html-a765e208.js"),[]).then(({data:e})=>e),"v-113c9bde":()=>a(()=>import("./class-and-interfaces.html-b849c314.js"),[]).then(({data:e})=>e),"v-1d3920e4":()=>a(()=>import("./class.html-6b53637e.js"),[]).then(({data:e})=>e),"v-1b1261ba":()=>a(()=>import("./declaration-merging.html-a95c453b.js"),[]).then(({data:e})=>e),"v-48842cd6":()=>a(()=>import("./enum.html-82a0b04b.js"),[]).then(({data:e})=>e),"v-0cfb5d99":()=>a(()=>import("./further-reading.html-6f4b944e.js"),[]).then(({data:e})=>e),"v-7c4de90c":()=>a(()=>import("./generics.html-63027c0d.js"),[]).then(({data:e})=>e),"v-1ec71643":()=>a(()=>import("./index.html-b2e59c8b.js"),[]).then(({data:e})=>e),"v-42c3cb92":()=>a(()=>import("./string-literal-types.html-89405b17.js"),[]).then(({data:e})=>e),"v-1883b494":()=>a(()=>import("./tuple.html-645bc370.js"),[]).then(({data:e})=>e),"v-52f31c6b":()=>a(()=>import("./type-aliases.html-265d07c7.js"),[]).then(({data:e})=>e),"v-a89a2ea6":()=>a(()=>import("./any.html-f66119b6.js"),[]).then(({data:e})=>e),"v-dbe56f44":()=>a(()=>import("./built-in-objects.html-d03c9e62.js"),[]).then(({data:e})=>e),"v-4972fd35":()=>a(()=>import("./declaration-files.html-734908f4.js"),[]).then(({data:e})=>e),"v-56d5da46":()=>a(()=>import("./primitive-data-types.html-191c195f.js"),[]).then(({data:e})=>e),"v-26120e40":()=>a(()=>import("./index.html-9f533090.js"),[]).then(({data:e})=>e),"v-4bb587ca":()=>a(()=>import("./type-assertion.html-ea380772.js"),[]).then(({data:e})=>e),"v-1b4c4913":()=>a(()=>import("./type-inference.html-c0ef9add.js"),[]).then(({data:e})=>e),"v-afd75e7a":()=>a(()=>import("./type-of-array.html-227d10a1.js"),[]).then(({data:e})=>e),"v-58ec5a7e":()=>a(()=>import("./type-of-function.html-05ab4f16.js"),[]).then(({data:e})=>e),"v-afce6b58":()=>a(()=>import("./type-of-object-interfaces.html-bce1e0c9.js"),[]).then(({data:e})=>e),"v-51dee7fe":()=>a(()=>import("./union-types.html-071e9f6e.js"),[]).then(({data:e})=>e),"v-14066bb0":()=>a(()=>import("./lint.html-f00eaf9e.js"),[]).then(({data:e})=>e),"v-4e30cdc6":()=>a(()=>import("./index.html-49e1f542.js"),[]).then(({data:e})=>e),"v-447404d0":()=>a(()=>import("./get-typescript.html-e42cb408.js"),[]).then(({data:e})=>e),"v-04a024e8":()=>a(()=>
1import("./hello-typescript.html-a5651b11.js"),[]).then(({data:e})=>e),"v-dbf5bde6":()=>a(()=>import("./index.html-2253bafa.js"),[]).then(({data:e})=>e),"v-46489ecd":()=>a(()=>import("./what-is-typescript.html-9c269feb.js"),[]).then(({data:e})=>e),"v-57087d82":()=>a(()=>import("./filter.html-067f017d.js"),[]).then(({data:e})=>e),"v-0368ed62":()=>a(()=>import("./intro.html-45dbc367.js"),[]).then(({data:e})=>e),"v-36e8ccaa":()=>a(()=>import("./map-and-reduce.html-b100028a.js"),[]).then(({data:e})=>e),"v-1484fde2":()=>a(()=>import("./index.html-d05a0aae.js"),[]).then(({data:e})=>e),"v-7f883d1a":()=>a(()=>import("./sorted.html-306983ea.js"),[]).then(({data:e})=>e),"v-3706649a":()=>a(()=>import("./404.html-706beefd.js"),[]).then(({data:e})=>e),"v-9ea6722c":()=>a(()=>import("./index.html-0890078f.js"),[]).then(({data:e})=>e),"v-2d0a870d":()=>a(()=>import("./index.html-4a296bfb.js"),[]).then(({data:e})=>e),"v-506407f4":()=>a(()=>import("./index.html-8f58c69a.js"),[]).then(({data:e})=>e),"v-5639b1a2":()=>a(()=>import("./index.html-6b2f37bf.js"),[]).then(({data:e})=>e),"v-54d7ff21":()=>a(()=>import("./index.html-a83ea6aa.js"),[]).then(({data:e})=>e),"v-2bbfd41f":()=>a(()=>import("./index.html-fb12d082.js"),[]).then(({data:e})=>e),"v-25d3ce10":()=>a(()=>import("./index.html-73f3c0c1.js"),[]).then(({data:e})=>e),"v-2c8afe40":()=>a(()=>import("./index.html-22e2aeb9.js"),[]).then(({data:e})=>e),"v-15c4e8af":()=>a(()=>import("./index.html-0f48645d.js"),[]).then(({data:e})=>e),"v-03f9ac71":()=>a(()=>import("./index.html-47e06bab.js"),[]).then(({data:e})=>e),"v-37700207":()=>a(()=>import("./index.html-f3c8bd21.js"),[]).then(({data:e})=>e),"v-e616a2ea":()=>a(()=>import("./index.html-e9a430dd.js"),[]).then(({data:e})=>e),"v-2706b03a":()=>a(()=>import("./index.html-2a2f38c0.js"),[]).then(({data:e})=>e),"v-1f66a70f":()=>a(()=>import("./index.html-f1933c21.js"),[]).then(({data:e})=>e),"v-e7689652":()=>a(()=>import("./index.html-75d1cc98.js"),[]).then(({data:e})=>e),"v-9cc6ff24":()=>a(()=>import("./index.html-89da48d6.js"),[]).then(({data:e})=>e),"v-db014718":()=>a(()=>import("./index.html-4e87c47f.js"),[]).then(({data:e})=>e),"v-2a0bb314":()=>a(()=>import("./index.html-d8bd978a.js"),[]).then(({data:e})=>e),"v-1101d562":()=>a(()=>import("./index.html-85621fde.js"),[]).then(({data:e})=>e),"v-459e6c86":()=>a(()=>import("./index.html-7fe68241.js"),[]).then(({data:e})=>e),"v-5bc93818":()=>a(()=>import("./index.html-ac09ffe3.js"),[]).then(({data:e})=>e),"v-744d024e":()=>a(()=>import("./index.html-df81181b.js"),[]).then(({data:e})=>e),"v-e52c881c":()=>a(()=>import("./index.html-cc5b62a3.js"),[]).then(({data:e})=>e),"v-154dc4c4":()=>a(()=>import("./index.html-65d8af45.js"),[]).then(({data:e})=>e),"v-01560935":()=>a(()=>import("./index.html-eb8d3783.js"),[]).then(({data:e})=>e),"v-183c7211":()=>a(()=>import("./index.html-adeda16b.js"),[]).then(({data:e})=>e),"v-78ab366e":()=>a(()=>import("./index.html-5636ee5b.js"),[]).then(({data:e})=>e),"v-54d7ff21":()=>a(()=>import("./index.html-a83ea6aa.js"),[]).then(({data:e})=>e),"v-2c3ee7f5":()=>a(()=>import("./index.html-d346c413.js"),[]).then(({data:e})=>e),"v-27b02be6":()=>a(()=>import("./index.html-1b3c6fd5.js"),[]).then(({data:e})=>e),"v-fbb94a6e":()=>a(()=>import("./index.html-1fd3920a.js"),[]).then(({data:e})=>e),"v-0811c316":()=>a(()=>import("./index.html-73c72f0a.js"),[]).then(({data:e})=>e),"v-0711d614":()=>a(()=>import("./index.html-65487e9e.js"),[]).then(({data:e})=>e),"v-0ec4cde8":()=>a(()=>
1import("./index.html-a5aa5e52.js"),[]).then(({data:e})=>e),"v-945adc0e":()=>a(()=>import("./index.html-355237c2.js"),[]).then(({data:e})=>e),"v-b313a528":()=>a(()=>import("./index.html-e6f3c1af.js"),[]).then(({data:e})=>e),"v-5dc1b699":()=>a(()=>import("./index.html-8c6b9e51.js"),[]).then(({data:e})=>e),"v-b31576a4":()=>a(()=>import("./index.html-d72c640b.js"),[]).then(({data:e})=>e),"v-040ee7aa":()=>a(()=>import("./index.html-b132c83b.js"),[]).then(({data:e})=>e),"v-313e0f22":()=>a(()=>import("./index.html-f41ac5f5.js"),[]).then(({data:e})=>e),"v-8fb18e34":()=>a(()=>import("./index.html-089b58cd.js"),[]).then(({data:e})=>e),"v-6d9dfc4a":()=>a(()=>import("./index.html-4e1c70ed.js"),[]).then(({data:e})=>e),"v-4ceeab1e":()=>a(()=>import("./index.html-4da4f9e4.js"),[]).then(({data:e})=>e),"v-2926fcc3":()=>a(()=>import("./index.html-fa98d7a8.js"),[]).then(({data:e})=>e),"v-c6194f12":()=>a(()=>import("./index.html-6ac7fd67.js"),[]).then(({data:e})=>e),"v-540234fd":()=>a(()=>import("./index.html-9796e7e1.js"),[]).then(({data:e})=>e),"v-750779a9":()=>a(()=>import("./index.html-c36a00e2.js"),[]).then(({data:e})=>e),"v-15e1c6fa":()=>a(()=>import("./index.html-8a312add.js"),[]).then(({data:e})=>e),"v-13d78bea":()=>a(()=>import("./index.html-93c00b65.js"),[]).then(({data:e})=>e),"v-b4d37618":()=>a(()=>import("./index.html-09e32e8c.js"),[]).then(({data:e})=>e),"v-1f8cf29b":()=>a(()=>import("./index.html-663416f4.js"),[]).then(({data:e})=>e),"v-f7c5e176":()=>a(()=>import("./index.html-260ca447.js"),[]).then(({data:e})=>e),"v-4db9d53f":()=>a(()=>import("./index.html-3ecf8c11.js"),[]).then(({data:e})=>e),"v-25ccc894":()=>a(()=>import("./index.html-72a3e583.js"),[]).then(({data:e})=>e),"v-076f9df0":()=>a(()=>import("./index.html-3601bdf8.js"),[]).then(({data:e})=>e),"v-4f2c56da":()=>a(()=>import("./index.html-1d50968d.js"),[]).then(({data:e})=>e),"v-cfd0904a":()=>a(()=>import("./index.html-170d9183.js"),[]).then(({data:e})=>e),"v-efed4b1a":()=>a(()=>import("./index.html-c3ea029d.js"),[]).then(({data:e})=>e),"v-7f76933a":()=>a(()=>import("./index.html-d360c8ee.js"),[]).then(({data:e})=>e),"v-1c2059e5":()=>a(()=>import("./index.html-72eb5a39.js"),[]).then(({data:e})=>e),"v-04ba5822":()=>a(()=>import("./index.html-0dfba52e.js"),[]).then(({data:e})=>e),"v-6de5d91a":()=>a(()=>import("./index.html-0cc75606.js"),[]).then(({data:e})=>e),"v-66231755":()=>a(()=>import("./index.html-2bda52cb.js"),[]).then(({data:e})=>e),"v-4f04116a":()=>a(()=>import("./index.html-d74a41c0.js"),[]).then(({data:e})=>e),"v-53c32dc4":()=>a(()=>import("./index.html-bac1cd0c.js"),[]).then(({data:e})=>e),"v-2e14b8c3":()=>a(()=>import("./index.html-98d097a1.js"),[]).then(({data:e})=>e),"v-352da056":()=>a(()=>import("./index.html-6d51006c.js"),[]).then(({data:e})=>e),"v-70542a16":()=>a(()=>import("./index.html-300d448f.js"),[]).then(({data:e})=>e),"v-bd936f9c":()=>a(()=>import("./index.html-057337e4.js"),[]).then(({data:e})=>e),"v-33a6e194":()=>a(()=>import("./index.html-6821abbe.js"),[]).then(({data:e})=>e),"v-1c7201c3":()=>a(()=>import("./index.html-6c4c9724.js"),[]).then(({data:e})=>e),"v-d04f4e62":()=>a(()=>import("./index.html-ebf71e11.js"),[]).then(({data:e})=>e),"v-c5597124":()=>a(()=>import("./index.html-c799f912.js"),[]).then(({data:e})=>e),"v-4fcf3b8b":()=>a(()=>import("./index.html-15b0a155.js"),[]).then(({data:e})=>e),"v-87754df8":()=>a(()=>import("./index.html-1c15d21c.js"),[]).then(({data:e})=>e),"v-2d8746bc":()=>a(()=>import("./index.html-965b3990.js"),[]).then(({data:e})=>e),"v-d0b499dc":()=>a(()=>import("./index.html-e7e30da9.js"),[]).then(({data:e})=>e),"v-1b3342f2":()=>a(()=>import("./index.html-5e1d0222.js"),[]).then(({data:e})=>e),"v-6de8c212":()=>a(()=>import("./index.html-3626daec.js"),[]).then(({data:e})=>e),"v-6de75b45":()=>a(()=>import("./index.html-2c447f58.js"),[]).then(({data:e})=>e),"v-4efd0db7":()=>a(()=>import("./index.html-4feff35e.js"),[]).then(({data:e})=>e),"v-237b7756":()=>a(()=>import("./index.html-da410c13.js"),[]).then(({data:e})=>e),"v-6c95fcb4":()=>a(()=>import("./index.html-b7d665a5.js"),[]).then(({data:e})=>e),"v-0fc92e40":()=>a(()=>import("./index.html-a6bb9b7a.js"),[]).then(({data:e})=>e),"v-4917ac89":()=>a(()=>import("./index.html-5bf6d9f2.js"),[]).then(({data:e})=>e),"v-d74ade10":()=>a(()=>import("./index.html-f498193c.js"),[]).then(({data:e})=>e),"v-5db49609":()=>a(()=>import("./index.html-e76c3a3b.js"),[]).then(({data:e})=>e),"v-6e8a5b47":()=>a(()=>import("./index.html-8b5ce984.js"),[]).then(({data:e})=>e),"v-4e80f332":()=>a(()=>import("./index.html-2b2dd161.js"),[]).then(({data:e})=>e),"v-2525e6ae":()=>a(()=>import("./index.html-458fe2a9.js"),[]).then(({data:e})=>e),"v-112bdfa2":()=>a(()=>import("./index.html-7689a62f.js"),[]).then(({data:e})=>e),"v-b9d1a9e6":()=>a(()=>import("./index.html-10c29e70.js"),[]).then(({data:e})=>e),"v-a309f194":()=>a(()=>import("./index.html-e4d2bce3.js"),[]).then(({data:e})=>e),"v-6de491aa":()=>a(()=>import("./index.html-b8381dd2.js"),[]).then(({data:e})=>e),"v-6de3a8ec":()=>a(()=>import("./index.html-ddb739f3.js"),[]).then(({data:e})=>e),"v-d9b2d20e":()=>a(()=>import("./index.html-90c9af61.js"),[]).then(({data:e})=>e),"v-6deb7cc8":()=>a(()=>import("./index.html-5e950300.js"),[]).then(({data:e})=>e),"v-0d38da3a":()=>a(()=>import("./index.html-b4f8c880.js"),[]).then(({data:e})=>e),"v-721c9cfe":()=>a(()=>import("./index.html-1c0ab639.js"),[]).then(({data:e})=>e),"v-6de42d09":()=>a(()=>import("./index.html-5c5a2500.js"),[]).then(({data:e})=>e),"v-4ee84f07":()=>a(()=>import("./index.html-9c90530b.js"),[]).then(({data:e})=>e),"v-d4e2c596":()=>a(()=>import("./index.html-a824b990.js"),[]).then(({data:e})=>e),"v-c2a0515c":()=>a(()=>import("./index.html-a2437372.js"),[]).then(({data:e})=>e),"v-63cfafce":()=>a(()=>import("./index.html-add0b2fd.js"),[]).then(({data:e})=>e),"v-3c3bcf72":()=>a(()=>import("./index.html-45b16f83.js"),[]).then(({data:e})=>e),"v-331dcb6a":()=>a(()=>import("./index.html-11c82104.js"),[]).then(({data:e})=>e),"v-570dc926":()=>a(()=>import("./index.html-50c7da58.js"),[]).then(({data:e})=>e),"v-501c9b1e":()=>a(()=>import("./index.html-9f7e95ae.js"),[]).then(({data:e})=>e),"v-151988ea":()=>a(()=>import("./index.html-6034e560.js"),[]).then(({data:e})=>e),"v-c9a5a498":()=>a(()=>import("./index.html-84e7171b.js"),[]).then(({data:e})=>e),"v-212c4784":()=>a(()=>import("./index.html-7e0b5697.js"),[]).then(({data:e})=>e),"v-4f19f2d9":()=>a(()=>import("./index.html-48762660.js"),[]).then(({data:e})=>e),"v-4f7baea2":()=>a(()=>import("./index.html-89a34fd9.js"),[]).then(({data:e})=>e),"v-4f7ac5e4":()=>a(()=>import("./index.html-90f9d718.js"),[]).then(({data:e})=>e),"v-61d8bf2d":()=>a(()=>import("./index.html-8b97526f.js"),[]).then(({data:e})=>e),"v-230c5d84":()=>a(()=>import("./index.html-9c4e1434.js"),[]).then(({data:e})=>e),"v-5efba9b4":()=>a(()=>import("./index.html-a7fea465.js"),[]).then(({data:e})=>e),"v-6decd5e6":()=>a(()=>import("./index.html-9cfbb182.js"),[]).then(({data:e})=>e),"v-4f2fcf32":()=>a(()=>import("./index.html-9c834112.js"),[]).then(({data:e})=>e),"v-4fadefe0":()=>a(()=>import("./index.html-269640b1.js"),[]).then(({data:e})=>e),"v-fbe658bc":()=>a(()=>import("./index.html-571cfad8.js"),[]).then(({data:e})=>e),"v-2fec218a":()=>a(()=>import("./index.html-fa9e8fa2.js"),[]).then(({data:e})=>e),"v-7643f25f":()=>a(()=>import("./index.html-0386827d.js"),[]).then(({data:e})=>e),"v-2271f5e2":()=>a(()=>import("./index.html-062026fe.js"),[]).then(({data:e})=>e),"v-1fbc8e8c":()=>a(()=>import("./index.html-376f0cad.js"),[]).then(({data:e})=>e),"v-04b75fa2":()=>a(()=>import("./index.html-caf2ab9e.js"),[]).then(({data:e})=>e),"v-0712c26e":()=>a(()=>import("./index.html-c5ef881a.js"),[]).then(({data:e})=>e),"v-65f2ede2":()=>a(()=>import("./index.html-ca80d774.js"),[]).then(({data:e})=>e),"v-0b0da0a9":()=>a(()=>import("./index.html-f63acbd8.js"),[]).then(({data:e})=>e)},U1=JSON.parse('{"base":"/","lang":"en-US","title":"","description":"","head":[["meta",{"name":"baidu-site-verification","content":"Osv8SVNDzm"}],["meta",{"name":"description","content":"IT Blog"}],["meta",{"name":"keywords","content":"IT, Blog, Internet, sharing, IT skill"}],["link",{"rel":"icon","href":"/favicon.ico"}]],"locales":{"/":{"lang":"en-US","title":"Harry Xiong","description":"A piano player playing on the keyboard"},"/zh/":{"lang":"zh-CN","title":"Harry Xiong","description":"A piano player playing on the keyboard"}}}');/**
2* @vue/shared v3.4.38
3* (c) 2018-present Yuxi (Evan) You and Vue contributors
4* @license MIT
5**/const ur=Array.isArray,qe=e=>typeof e=="string";var K1=([e,t,n])=>e==="meta"&&t.name?`${e}.${t.name}`:["title","base"].includes(e)?e:e==="template"&&t.id?`${e}.${t.id}`:JSON.stringify([e,t,n]),Q1=e=>{const t=new Set,n=[];return e.forEach(r=>{const o=K1(r);t.has(o)||(t.add(o),n.push(r))}),n},X1=e=>e[e.length-1]==="/"||e.endsWith(".html")?e:`${e}/`,Y1=e=>e.startsWith("ftp://"),un=e=>/^(https?:)?\/\//.test(e),Z1=/.md((\?|#).*)?$/,oo=(e,t="/")=>!!(un(e)||Y1(e)||e.startsWith("/")&&!e.startsWith(t)&&!Z1.test(e)),ql=e=>/^mailto:/.test(e),ev=e=>/^tel:/.test(e),fo=e=>Object.prototype.toString.call(e)==="[object Object]",Ga=e=>e[e.length-1]==="/"?e.slice(0,-1):e,Ul=e=>e[0]==="/"?e.slice(1):e,tv=(e,t)=>{const n=Object.keys(e).sort((r,o)=>{const i=o.split("/").length-r.split("/").length;return i!==0?i:o.length-r.length});for(const r of n)if(t.startsWith(r))return r;return"/"},ss=(e,t="/")=>{const n=e.replace(/^(https?:)?\/\/[^/]*/,"");return n.startsWith(t)?`/${n.slice(t.length)}`:n};const Kl={"v-8daa1a0e":p(()=>a(()=>import("./index.html-6168219c.js"),["assets/index.html-6168219c.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-2d0ad528":p(()=>a(()=>import("./index.html-550fb29e.js"),["assets/index.html-550fb29e.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-9a292eba":p(()=>a(()=>import("./contact.html-db5b4335.js"),["assets/contact.html-db5b4335.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-0d31a857":p(()=>a(()=>import("./intro.html-dac595ec.js"),["assets/intro.html-dac595ec.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-a29a5852":p(()=>a(()=>import("./notice.html-729d5dff.js"),["assets/notice.html-729d5dff.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-06936ce2":p(()=>a(()=>import("./dfs-and-bfs.html-a37c696a.js"),["assets/dfs-and-bfs.html-a37c696a.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-5e224cd1":p(()=>a(()=>import("./graph.html-fba1e1af.js"),["assets/graph.html-fba1e1af.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-2687243d":p(()=>a(()=>import("./recursion.html-20397bfd.js"),["assets/recursion.html-20397bfd.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-7d008c13":p(()=>a(()=>import("./sort-algorithm.html-2f41038c.js"),["assets/sort-algorithm.html-2f41038c.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-bc3aed30":p(()=>a(()=>import("./contact.html-999c2b33.js"),["assets/contact.html-999c2b33.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-6ad79348":p(()=>a(()=>import("./intro.html-70651b41.js"),["assets/intro.html-70651b41.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-b9a7e75c":p(()=>a(()=>import("./error-modal.html-7e88fe5d.js"),["assets/error-modal.html-7e88fe5d.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-33efeade":p(()=>a(()=>import("./js-traversal.html-1c386aa4.js"),["assets/js-traversal.html-1c386aa4.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-0d95a860":p(()=>a(()=>import("./mobx.html-255946b7.js"),["assets/mobx.html-255946b7.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-46cc72c2":p(()=>a(()=>import("./react-function-component.html-e3e0c43a.js"),["assets/react-function-component.html-e3e0c43a.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-e419e6a8":p(()=>a(()=>import("./webpack-hot-fresh.html-bd8b16cb.js"),["assets/webpack-hot-fresh.html-bd8b16cb.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-719c1fb2":p(()=>a(()=>import("./index.html-3a8d23e2.js"),["assets/index.html-3a8d23e2.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-5ee8cb00":p(()=>a(()=>import("./index.html-02a50369.js"),["assets/index.html-02a50369.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-53fc6bc5":p(()=>a(()=>import("./index.html-e0ac739d.js"),["assets/index.html-e0ac739d.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-04c4d1b0":p(()=>a(()=>import("./backRoll.html-a3eb0f02.js"),["assets/backRoll.html-a3eb0f02.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-f6fd70dc":p(()=>a(()=>import("./branch.html-f1f626da.js"),["assets/branch.html-f1f626da.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-5d01f244":p(()=>a(()=>import("./change.html-e5e91a96.js"),["assets/change.html-e5e91a96.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-1e06748e":p(()=>a(()=>import("./createRepository.html-b24ab4cf.js"),["assets/createRepository.html-b24ab4cf.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-24dba1dd":p(()=>a(()=>import("./customGit.html-fd0fbf6c.js"),["assets/customGit.html-fd0fbf6c.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-2cb4d166":p(()=>a(()=>import("./gitLFS.html-15e0aebf.js"),["assets/gitLFS.html-15e0aebf.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-01bd5f3a":p(()=>a(()=>import("./install.html-ffefe6de.js"),["assets/install.html-ffefe6de.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-44537b6e":p(()=>a(()=>import("./remote.html-66154814.js"),["assets/remote.html-66154814.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-97a011c6":p(()=>a(()=>import("./statusView.html-84e14f48.js"),["assets/statusView.html-84e14f48.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-1acc0844":p(()=>a(()=>import("./tag.html-a5ce6ccf.js"),["assets/tag.html-a5ce6ccf.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-59be3c7a":p(()=>a(()=>import("./whatIsGit.html-ee3ba6f1.js"),["assets/whatIsGit.html-ee3ba6f1.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-241f8510":p(()=>a(()=>import("./workingDirectory.html-e2d30e04.js"),["assets/workingDirectory.html-e2d30e04.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-831af89c":p(()=>a(()=>import("./json.html-d71b672c.js"),["assets/json.html-d71b672c.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-4be13b52":p(()=>a(()=>import("./markdown.html-c8fa3d28.js"),["assets/markdown.html-c8fa3d28.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-2c126a00":p(()=>a(()=>import("./index.html-8d97a626.js"),["assets/index.html-8d97a626.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-432d3449":p(()=>a(()=>import("./install.html-5ec3b2eb.js"),["assets/install.html-5ec3b2eb.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-3a586d6c":p(()=>a(()=>import("./interpreter.html-7ca42ee3.js"),["assets/interpreter.html-7ca42ee3.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-1948dcd8":p(()=>a(()=>import("./intro.html-b533f357.js"),["assets/intro.html-b533f357.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-f9fb0eaa":p(()=>a(()=>import("./index.html-321a23c5.js"),["assets/index.html-321a23c5.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-7c3bddbb":p(()=>a(()=>import("./install.html-8b5ca0fe.js"),["assets/install.html-8b5ca0fe.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-958385c6":p(()=>a(()=>import("./index.html-ece25c25.js"),["assets/index.html-ece25c25.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-1613c35d":p(()=>a(()=>import("./shortcutKey.html-07a5f98e.js"),["assets/shortcutKey.html-07a5f98e.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-05a75161":p(()=>a(()=>import("./vscodeExtension.html-23b66cb5.js"),["assets/vscodeExtension.html-23b66cb5.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-3c887c4f":p(()=>a(()=>import("./vscodeSettings.html-9027bb32.js"),["assets/vscodeSettings.html-9027bb32.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-28264260":p(()=>a(()=>import("./vscodeSimple.html-5cffc30b.js"),["assets/vscodeSimple.html-5cffc30b.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-1df53f5c":p(()=>a(()=>import("./yaml.html-e9c7c350.js"),["assets/yaml.html-e9c7c350.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-7970903c":p(()=>a(()=>import("./apache.html-1088f0ef.js"),["assets/apache.html-1088f0ef.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-67cc625a":p(()=>a(()=>import("./express.html-2dbaa9c5.js"),["assets/express.html-2dbaa9c5.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-4bf552c6":p(()=>a(()=>import("./nginx.html-c018c00f.js"),["assets/nginx.html-c018c00f.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-29d0be61":p(()=>a(()=>import("./index.html-e578004c.js"),["assets/index.html-e578004c.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-6e4e7788":p(()=>a(()=>import("./index.html-5bce7afb.js"),["assets/index.html-5bce7afb.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-25e6d482":p(()=>a(()=>import("./s1.html-aea45be9.js"),["assets/s1.html-aea45be9.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-968db2fa":p(()=>a(()=>import("./s10.html-4e904f3d.js"),["assets/s10.html-4e904f3d.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-932401bc":p(()=>a(()=>import("./s11.html-ef5bd7c4.js"),["assets/s11.html-ef5bd7c4.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-227d2344":p(()=>a(()=>import("./s2.html-6090321c.js"),["assets/s2.html-6090321c.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-1f137206":p(()=>a(()=>import("./s3.html-2ae24d49.js"),["assets/s3.html-2ae24d49.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-1ba9c0c8":p(()=>a(()=>import("./s4.html-23dce529.js"),["assets/s4.html-23dce529.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-18400f8a":p(()=>a(()=>import("./s5.html-136e0e91.js"),["assets/s5.html-136e0e91.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-14d65e4c":p(()=>a(()=>import("./s6.html-df9688b5.js"),["assets/s6.html-df9688b5.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-116cad0e":p(()=>a(()=>
5import("./s7.html-43c56787.js"),["assets/s7.html-43c56787.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-0e02fbd0":p(()=>a(()=>import("./s8.html-01784359.js"),["assets/s8.html-01784359.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-0a994a92":p(()=>a(()=>import("./s9.html-448bce71.js"),["assets/s9.html-448bce71.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-1b8c53e9":p(()=>a(()=>import("./OS.html-1e13a5be.js"),["assets/OS.html-1e13a5be.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-162556da":p(()=>a(()=>import("./encoding.html-09769a58.js"),["assets/encoding.html-09769a58.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-472e04df":p(()=>a(()=>import("./file-extension.html-cb7e76e5.js"),["assets/file-extension.html-cb7e76e5.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-2ff7e7e8":p(()=>a(()=>import("./index.html-7cd13fe3.js"),["assets/index.html-7cd13fe3.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-314caf96":p(()=>a(()=>import("./information-security.html-ef231e64.js"),["assets/information-security.html-ef231e64.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-2bea7022":p(()=>a(()=>import("./WSL.html-e3e51f4d.js"),["assets/WSL.html-e3e51f4d.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-6a42c307":p(()=>a(()=>import("./centos.html-c39a6c9e.js"),["assets/centos.html-c39a6c9e.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-0cf9aff4":p(()=>a(()=>import("./index.html-18e2874f.js"),["assets/index.html-18e2874f.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-133ac9d7":p(()=>a(()=>import("./ssh.html-e3bc8a13.js"),["assets/ssh.html-e3bc8a13.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-0b816f4a":p(()=>a(()=>import("./addPath.html-a352f198.js"),["assets/addPath.html-a352f198.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-35b98e76":p(()=>a(()=>import("./cmd.html-fa820d4a.js"),["assets/cmd.html-fa820d4a.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-1b13a197":p(()=>a(()=>import("./index.html-2b4368b4.js"),["assets/index.html-2b4368b4.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-04d61852":p(()=>a(()=>import("./shortcutKey.html-ef6deebb.js"),["assets/shortcutKey.html-ef6deebb.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-638e3a4a":p(()=>a(()=>import("./index.html-0671e4e6.js"),["assets/index.html-0671e4e6.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-094854c8":p(()=>a(()=>import("./jses10.html-eda401eb.js"),["assets/jses10.html-eda401eb.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-0afd2d67":p(()=>a(()=>import("./jses11.html-453fa99c.js"),["assets/jses11.html-453fa99c.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-0cb20606":p(()=>a(()=>import("./jses12.html-e772e15e.js"),["assets/jses12.html-e772e15e.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-0e66dea5":p(()=>a(()=>import("./jses13.html-0caadc8d.js"),["assets/jses13.html-0caadc8d.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-101bb744":p(()=>a(()=>import("./jses14.html-15c6c001.js"),["assets/jses14.html-15c6c001.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-11d08fe3":p(()=>a(()=>import("./jses15.html-2aafd3e5.js"),["assets/jses15.html-2aafd3e5.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-13856882":p(()=>a(()=>import("./jses16.html-8092f287.js"),["assets/jses16.html-8092f287.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-153a4121":p(()=>a(()=>import("./jses17.html-5ad117da.js"),["assets/jses17.html-5ad117da.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-16ef19c0":p(()=>a(()=>import("./jses18.html-38767e98.js"),["assets/jses18.html-38767e98.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-18a3f25f":p(()=>a(()=>import("./jses19.html-8cc74871.js"),["assets/jses19.html-8cc74871.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-f3be390e":p(()=>a(()=>import("./jses2.html-bf212a53.js"),["assets/jses2.html-bf212a53.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-3e2e9009":p(()=>a(()=>import("./jses20.html-8dc8188c.js"),["assets/jses20.html-8dc8188c.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-3fe368a8":p(()=>a(()=>
5import("./jses21.html-925b5477.js"),["assets/jses21.html-925b5477.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-41984147":p(()=>a(()=>import("./jses22.html-ad1276f3.js"),["assets/jses22.html-ad1276f3.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-434d19e6":p(()=>a(()=>import("./jses23.html-5107fc81.js"),["assets/jses23.html-5107fc81.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-4501f285":p(()=>a(()=>import("./jses24.html-1d1360c0.js"),["assets/jses24.html-1d1360c0.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-46b6cb24":p(()=>a(()=>import("./jses25.html-f98c020a.js"),["assets/jses25.html-f98c020a.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-486ba3c3":p(()=>a(()=>import("./jses26.html-93d493cc.js"),["assets/jses26.html-93d493cc.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-f05487d0":p(()=>a(()=>import("./jses3.html-fa0a0966.js"),["assets/jses3.html-fa0a0966.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-ecead692":p(()=>a(()=>import("./jses4.html-fb7b2155.js"),["assets/jses4.html-fb7b2155.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-e9812554":p(()=>a(()=>import("./jses5.html-9c982135.js"),["assets/jses5.html-9c982135.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-e6177416":p(()=>a(()=>import("./jses6.html-7dff0062.js"),["assets/jses6.html-7dff0062.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-e2adc2d8":p(()=>a(()=>import("./jses7.html-84ba5032.js"),["assets/jses7.html-84ba5032.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-df44119a":p(()=>a(()=>import("./jses8.html-a322081c.js"),["assets/jses8.html-a322081c.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-dbda605c":p(()=>a(()=>import("./jses9.html-b0db4c6c.js"),["assets/jses9.html-b0db4c6c.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-1858bc8a":p(()=>a(()=>import("./ajax.html-3863a5e9.js"),["assets/ajax.html-3863a5e9.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-437b808a":p(()=>a(()=>import("./data-storage.html-b602d5a4.js"),["assets/data-storage.html-b602d5a4.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-54f6ce60":p(()=>a(()=>import("./db1.html-5830a46b.js"),["assets/db1.html-5830a46b.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-4a160202":p(()=>a(()=>import("./db10.html-66678186.js"),["assets/db10.html-66678186.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-4bcadaa1":p(()=>a(()=>import("./db11.html-95f4523c.js"),["assets/db11.html-95f4523c.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-4d7fb340":p(()=>a(()=>import("./db12.html-043f02a6.js"),["assets/db12.html-043f02a6.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-4f348bdf":p(()=>a(()=>import("./db13.html-49e39467.js"),["assets/db13.html-49e39467.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-56aba6ff":p(()=>a(()=>import("./db2.html-52daef67.js"),["assets/db2.html-52daef67.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-58607f9e":p(()=>a(()=>import("./db3.html-d9f4d5f7.js"),["assets/db3.html-d9f4d5f7.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-5a15583d":p(()=>a(()=>import("./db4.html-20ca53cf.js"),["assets/db4.html-20ca53cf.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-5bca30dc":p(()=>a(()=>import("./db5.html-b17452cb.js"),["assets/db5.html-b17452cb.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-5d7f097b":p(()=>a(()=>import("./db6.html-cba45eb3.js"),["assets/db6.html-cba45eb3.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-5f33e21a":p(()=>a(()=>import("./db7.html-b491b29f.js"),["assets/db7.html-b491b29f.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-60e8bab9":p(()=>a(()=>import("./db8.html-d8002ae9.js"),["assets/db8.html-d8002ae9.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-629d9358":p(()=>a(()=>import("./db9.html-0c68f147.js"),["assets/db9.html-0c68f147.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-7b5f9b1a":p(()=>a(()=>import("./index.html-4a844954.js"),["assets/index.html-4a844954.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-dc3c55de":p(()=>a(()=>import("./advanced-html.html-15229277.js"),["assets/advanced-html.html-15229277.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-0e0889b8":p(()=>a(()=>import("./css.html-ef73baba.js"),["assets/css.html-ef73baba.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-68c37a04":p(()=>a(()=>
5import("./hint.html-b8b1bdc6.js"),["assets/hint.html-b8b1bdc6.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-c6393140":p(()=>a(()=>import("./html.html-88293eb9.js"),["assets/html.html-88293eb9.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-5b731d25":p(()=>a(()=>import("./browser.html-97b90e6f.js"),["assets/browser.html-97b90e6f.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-5ba3237c":p(()=>a(()=>import("./https.html-5fcf49be.js"),["assets/https.html-5fcf49be.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-1d12b96c":p(()=>a(()=>import("./interview.html-c1095917.js"),["assets/interview.html-c1095917.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-58d70f88":p(()=>a(()=>import("./ajax.html-6df2d5b8.js"),["assets/ajax.html-6df2d5b8.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-3f2c3466":p(()=>a(()=>import("./animation.html-92396180.js"),["assets/animation.html-92396180.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-edae68e0":p(()=>a(()=>import("./event.html-7d42167f.js"),["assets/event.html-7d42167f.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-adb5d1e4":p(()=>a(()=>import("./extend.html-c981b33d.js"),["assets/extend.html-c981b33d.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-cd252a04":p(()=>a(()=>import("./intro.html-37616e09.js"),["assets/intro.html-37616e09.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-0b8c0619":p(()=>a(()=>import("./modify-dom.html-7f895630.js"),["assets/modify-dom.html-7f895630.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-ad77815e":p(()=>a(()=>import("./operate-dom.html-3b53fbb1.js"),["assets/operate-dom.html-3b53fbb1.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-6d15435e":p(()=>a(()=>import("./index.html-49abe28c.js"),["assets/index.html-49abe28c.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-60dc0da9":p(()=>a(()=>import("./selector.html-30a6ac94.js"),["assets/selector.html-30a6ac94.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-55c831be":p(()=>a(()=>import("./bootstrap.html-f1dfd88b.js"),["assets/bootstrap.html-f1dfd88b.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-aca7c608":p(()=>a(()=>import("./hint.html-25e8be79.js"),["assets/hint.html-25e8be79.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-6203752a":p(()=>a(()=>import("./less.html-c4480eec.js"),["assets/less.html-c4480eec.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-5f446a96":p(()=>a(()=>import("./sass.html-b83cb773.js"),["assets/sass.html-b83cb773.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-23c788a2":p(()=>a(()=>import("./index.html-e8247088.js"),["assets/index.html-e8247088.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-4da54d6c":p(()=>a(()=>import("./index.html-9962d746.js"),["assets/index.html-9962d746.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-5f5b83be":p(()=>a(()=>import("./DOMDiff.html-2c5b385b.js"),["assets/DOMDiff.html-2c5b385b.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-2ac8355a":p(()=>a(()=>import("./VirtualDOM.html-8d3410e5.js"),["assets/VirtualDOM.html-8d3410e5.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-02ddc0a2":p(()=>a(()=>import("./index.html-93b85aa4.js"),["assets/index.html-93b85aa4.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-507a9b2e":p(()=>a(()=>import("./index.html-05b4574f.js"),["assets/index.html-05b4574f.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-0be5b805":p(()=>a(()=>import("./vue1.html-30dac932.js"),["assets/vue1.html-30dac932.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-71044cfd":p(()=>a(()=>import("./vue10.html-6eb3b53b.js"),["assets/vue10.html-6eb3b53b.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-72b9259c":p(()=>a(()=>import("./vue11.html-36df67f2.js"),["assets/vue11.html-36df67f2.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-746dfe3b":p(()=>a(()=>import("./vue12.html-c3aeb062.js"),["assets/vue12.html-c3aeb062.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-7622d6da":p(()=>a(()=>import("./vue13.html-ab1cd418.js"),["assets/vue13.html-ab1cd418.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-77d7af79":p(()=>a(()=>import("./vue14.html-4382d6ff.js"),["assets/vue14.html-4382d6ff.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-798c8818":p(()=>a(()=>import("./vue15.html-662b0c12.js"),["assets/vue15.html-662b0c12.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-7b4160b7":p(()=>a(()=>import("./vue16.html-9b0082cd.js"),["assets/vue16.html-9b0082cd.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-7cf63956":p(()=>a(()=>import("./vue17.html-dd0268ea.js"),["assets/vue17.html-dd0268ea.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-7eab11f5":p(()=>a(()=>import("./vue18.html-e7111da6.js"),["assets/vue18.html-e7111da6.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-0d9a90a4":p(()=>a(()=>import("./vue2.html-07695a0b.js"),["assets/vue2.html-07695a0b.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-0f4f6943":p(()=>a(()=>import("./vue3.html-0d72b029.js"),["assets/vue3.html-0d72b029.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-110441e2":p(()=>a(()=>import("./vue4.html-7d14e05d.js"),["assets/vue4.html-7d14e05d.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-12b91a81":p(()=>a(()=>import("./vue5.html-5653588d.js"),["assets/vue5.html-5653588d.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-146df320":p(()=>a(()=>import("./vue6.html-6ba610cb.js"),["assets/vue6.html-6ba610cb.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-1622cbbf":p(()=>a(()=>import("./vue7.html-7c115496.js"),["assets/vue7.html-7c115496.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-17d7a45e":p(()=>a(()=>import("./vue8.html-7eebf6d4.js"),["assets/vue8.html-7eebf6d4.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-198c7cfd":p(()=>a(()=>import("./vue9.html-f12dd0a6.js"),["assets/vue9.html-f12dd0a6.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-2899cbee":p(()=>a(()=>import("./webpack.html-578d278e.js"),["assets/webpack.html-578d278e.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-9f7c4d50":p(()=>a(()=>import("./github-pages.html-9f8a3e67.js"),["assets/github-pages.html-9f8a3e67.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-ee21c572":p(()=>a(()=>import("./index.html-cb782ab4.js"),["assets/index.html-cb782ab4.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-5dfeb152":p(()=>a(()=>import("./index.html-ccc8ffcd.js"),["assets/index.html-ccc8ffcd.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-dc745272":p(()=>a(()=>import("./致毕业.html-8f9d8918.js"),["assets/致毕业.html-8f9d8918.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-423a3e72":p(()=>a(()=>import("./index.html-fcaac4e1.js"),["assets/index.html-fcaac4e1.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-4cf8f48a":p(()=>a(()=>import("./我十七.html-76be9fa1.js"),["assets/我十七.html-76be9fa1.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-6b4794e2":p(()=>a(()=>import("./收录第一次填词.html-59c40741.js"),["assets/收录第一次填词.html-59c40741.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-ba974232":p(()=>a(()=>import("./萤火.html-cb705c5a.js"),["assets/萤火.html-cb705c5a.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-c5d31332":p(()=>a(()=>import("./蒲公.html-fd54e1cb.js"),["assets/蒲公.html-fd54e1cb.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-75006504":p(()=>a(()=>import("./generator.html-7b63da4a.js"),["assets/generator.html-7b63da4a.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-17fa6fb4":p(()=>a(()=>import("./iteration.html-4781be63.js"),["assets/iteration.html-4781be63.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-fc21c2da":p(()=>a(()=>import("./iterator.html-3a2831c6.js"),["assets/iterator.html-3a2831c6.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-129674b3":p(()=>a(()=>
5import("./list-comprehensions.html-abd9f546.js"),["assets/list-comprehensions.html-abd9f546.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-53e80598":p(()=>a(()=>import("./index.html-ea9b2fc0.js"),["assets/index.html-ea9b2fc0.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-7a83961f":p(()=>a(()=>import("./slice.html-0403d238.js"),["assets/slice.html-0403d238.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-95f376a0":p(()=>a(()=>import("./argument.html-81b9732e.js"),["assets/argument.html-81b9732e.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-933ec0a2":p(()=>a(()=>import("./call.html-1198d5a0.js"),["assets/call.html-1198d5a0.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-f3d0f51c":p(()=>a(()=>import("./define.html-52b23dd7.js"),["assets/define.html-52b23dd7.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-3f08bdf9":p(()=>a(()=>import("./intro.html-f30a08b2.js"),["assets/intro.html-f30a08b2.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-50f21f0c":p(()=>a(()=>import("./index.html-33569140.js"),["assets/index.html-33569140.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-4e4685f3":p(()=>a(()=>import("./recursive.html-f079bf32.js"),["assets/recursive.html-f079bf32.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-cc9cee16":p(()=>a(()=>import("./index.html-66bf0467.js"),["assets/index.html-66bf0467.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-c61e6ace":p(()=>a(()=>import("./return-function.html-792857d7.js"),["assets/return-function.html-792857d7.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-7c04bd09":p(()=>a(()=>import("./basic.html-c2416778.js"),["assets/basic.html-c2416778.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-7b7a9d88":p(()=>a(()=>import("./condition.html-0bdbd503.js"),["assets/condition.html-0bdbd503.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-28ee063a":p(()=>a(()=>import("./dictAndSet.html-7aa91017.js"),["assets/dictAndSet.html-7aa91017.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-33b5b5a3":p(()=>a(()=>import("./exercise.html-3e6e3ab5.js"),["assets/exercise.html-3e6e3ab5.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-799726d6":p(()=>a(()=>import("./io.html-0eae9e9a.js"),["assets/io.html-0eae9e9a.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-285de9ec":p(()=>a(()=>import("./listAndTuple.html-5894597c.js"),["assets/listAndTuple.html-5894597c.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-064f9d52":p(()=>a(()=>import("./loop.html-059a2491.js"),["assets/loop.html-059a2491.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-9d119dc4":p(()=>a(()=>import("./index.html-f0d3d96b.js"),["assets/index.html-f0d3d96b.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-18e3d38a":p(()=>a(()=>import("./string.html-7cc1d5e0.js"),["assets/string.html-7cc1d5e0.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-cdce4010":p(()=>a(()=>import("./write.html-1ed0b298.js"),["assets/write.html-1ed0b298.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-2a66e722":p(()=>a(()=>import("./add.html-0731880a.js"),["assets/add.html-0731880a.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-bc083490":p(()=>a(()=>import("./command.html-dbae0414.js"),["assets/command.html-dbae0414.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-fb252294":p(()=>a(()=>import("./dir.html-152f51bc.js"),["assets/dir.html-152f51bc.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-5bab32ec":p(()=>a(()=>import("./excu.html-69db7ba9.js"),["assets/excu.html-69db7ba9.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-1107bfd3":p(()=>a(()=>import("./file.html-5a07d7aa.js"),["assets/file.html-5a07d7aa.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-767d010d":p(()=>a(()=>import("./ln.html-bf6a7d96.js"),["assets/ln.html-bf6a7d96.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-5277b8da":p(()=>a(()=>import("./other.html-41078359.js"),["assets/other.html-41078359.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-48fb12ca":p(()=>a(()=>import("./path.html-dea1966d.js"),["assets/path.html-dea1966d.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-64e8676c":p(()=>a(()=>import("./index.html-04053268.js"),["assets/index.html-04053268.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-5626af0a":p(()=>a(()=>import("./temp.html-954acaa7.js"),["assets/temp.html-954acaa7.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-6bccf559":p(()=>a(()=>import("./dir.html-66af3abc.js"),["assets/dir.html-66af3abc.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-53990d90":p(()=>a(()=>import("./file.html-1acba753.js"),["assets/file.html-1acba753.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-3e648e0d":p(()=>a(()=>import("./mount.html-a73619d7.js"),["assets/mount.html-a73619d7.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-5b7cb426":p(()=>a(()=>import("./index.html-ac7e5378.js"),["assets/index.html-ac7e5378.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-292c3a97":p(()=>a(()=>import("./advantage.html-7d13f036.js"),["assets/advantage.html-7d13f036.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-b66720f4":p(()=>a(()=>import("./desktop.html-e08026e5.js"),["assets/desktop.html-e08026e5.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-1793b3e4":p(()=>a(()=>
5import("./history.html-fc37de16.js"),["assets/history.html-fc37de16.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-b3426d14":p(()=>a(()=>import("./intro.html-a9eb1a0c.js"),["assets/intro.html-a9eb1a0c.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-1614bf50":p(()=>a(()=>import("./language.html-38558ca2.js"),["assets/language.html-38558ca2.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-7b5bf2c9":p(()=>a(()=>import("./index.html-fdaf02df.js"),["assets/index.html-fdaf02df.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-2093dc76":p(()=>a(()=>import("./startup.html-d8acb25d.js"),["assets/startup.html-d8acb25d.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-16cfbb48":p(()=>a(()=>import("./debug.html-aef95734.js"),["assets/debug.html-aef95734.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-20c70aee":p(()=>a(()=>import("./lang.html-853ef79d.js"),["assets/lang.html-853ef79d.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-5e4dc1f2":p(()=>a(()=>import("./manage.html-f136cf16.js"),["assets/manage.html-f136cf16.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-567f6762":p(()=>a(()=>import("./index.html-41ee3b07.js"),["assets/index.html-41ee3b07.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-13da8f84":p(()=>a(()=>import("./webserver.html-5cba06a8.js"),["assets/webserver.html-5cba06a8.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-db1ff778":p(()=>a(()=>import("./array.html-3c0d78c9.js"),["assets/array.html-3c0d78c9.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-aa78c878":p(()=>a(()=>import("./arraybuffer.html-4719e157.js"),["assets/arraybuffer.html-4719e157.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-eff9dbfe":p(()=>a(()=>import("./async.html-687b5841.js"),["assets/async.html-687b5841.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-48d1f439":p(()=>a(()=>import("./class-extends.html-57e3affe.js"),["assets/class-extends.html-57e3affe.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-6d312ef6":p(()=>a(()=>import("./class.html-a7dd800d.js"),["assets/class.html-a7dd800d.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-0795e9a2":p(()=>a(()=>import("./decorator.html-c8843428.js"),["assets/decorator.html-c8843428.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-4fc31a0e":p(()=>a(()=>import("./destructuring.html-958b3b45.js"),["assets/destructuring.html-958b3b45.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-513d62aa":p(()=>a(()=>import("./fp.html-701b24d7.js"),["assets/fp.html-701b24d7.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-436b2946":p(()=>a(()=>import("./function.html-2b49db61.js"),["assets/function.html-2b49db61.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-68d4943b":p(()=>a(()=>import("./generator-async.html-74b75eeb.js"),["assets/generator-async.html-74b75eeb.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-30e2660a":p(()=>a(()=>import("./generator.html-42e41a24.js"),["assets/generator.html-42e41a24.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-25a5a411":p(()=>a(()=>import("./intro.html-0d261551.js"),["assets/intro.html-0d261551.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-32d14487":p(()=>a(()=>import("./iterator.html-048556a8.js"),["assets/iterator.html-048556a8.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-9b30d27c":p(()=>a(()=>import("./let.html-a84f09cb.js"),["assets/let.html-a84f09cb.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-59a5f9c8":p(()=>a(()=>import("./mixin.html-e0dbeed9.js"),["assets/mixin.html-e0dbeed9.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-b650462e":p(()=>a(()=>import("./module-loader.html-3c696470.js"),["assets/module-loader.html-3c696470.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-f38e476e":p(()=>a(()=>import("./module.html-df156c11.js"),["assets/module.html-df156c11.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-0d29ace8":p(()=>a(()=>import("./number.html-5f8a2c62.js"),["assets/number.html-5f8a2c62.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-fd602954":p(()=>a(()=>import("./object.html-59a52bc4.js"),["assets/object.html-59a52bc4.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-097ca47c":p(()=>a(()=>import("./promise.html-86600af2.js"),["assets/promise.html-86600af2.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-2dcb1c48":p(()=>a(()=>import("./proposals.html-69c5fc78.js"),["assets/proposals.html-69c5fc78.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-6bc9714f":p(()=>a(()=>import("./proxy.html-a36b2d38.js"),["assets/proxy.html-a36b2d38.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-3f8979b8":p(()=>a(()=>import("./index.html-92ee390e.js"),["assets/index.html-92ee390e.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-0ea466dc":p(()=>a(()=>import("./reference.html-dba867f7.js"),["assets/reference.html-dba867f7.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-7bdec560":p(()=>a(()=>import("./reflect.html-a56bd95c.js"),["assets/reflect.html-a56bd95c.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-c1e3e9d4":p(()=>a(()=>import("./regex.html-74a91e76.js"),["assets/regex.html-74a91e76.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-3126d72c":p(()=>a(()=>import("./set-map.html-bb129c97.js"),["assets/set-map.html-bb129c97.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-2e9263e8":p(()=>a(()=>import("./simd.html-f39689f2.js"),["assets/simd.html-f39689f2.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-5cd3eb5a":p(()=>a(()=>import("./spec.html-799f1703.js"),["assets/spec.html-799f1703.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-736a61c4":p(()=>a(()=>import("./string.html-9d6f613e.js"),["assets/string.html-9d6f613e.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-39e2a028":p(()=>a(()=>import("./style.html-70ccd504.js"),["assets/style.html-70ccd504.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-8c6caec6":p(()=>a(()=>import("./symbol.html-18180fb8.js"),["assets/symbol.html-18180fb8.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-31e2640c":p(()=>a(()=>import("./js1.html-34def219.js"),["assets/js1.html-34def219.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-0a0414b0":p(()=>a(()=>import("./js10.html-95bc98ce.js"),["assets/js10.html-95bc98ce.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-069a6372":p(()=>a(()=>import("./js11.html-242f8de2.js"),["assets/js11.html-242f8de2.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-0330b234"
5:p(()=>a(()=>import("./js12.html-0c6001c6.js"),["assets/js12.html-0c6001c6.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-001c7f85":p(()=>a(()=>import("./js13.html-8f055d7f.js"),["assets/js13.html-8f055d7f.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-01d15824":p(()=>a(()=>import("./js14.html-8b16e24b.js"),["assets/js14.html-8b16e24b.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-038630c3":p(()=>a(()=>import("./js15.html-c04cc8ff.js"),["assets/js15.html-c04cc8ff.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-053b0962":p(()=>a(()=>import("./js16.html-7484dc6d.js"),["assets/js16.html-7484dc6d.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-06efe201":p(()=>a(()=>import("./js17.html-2ec7cff0.js"),["assets/js17.html-2ec7cff0.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-08a4baa0":p(()=>a(()=>import("./js18.html-5ef7647a.js"),["assets/js18.html-5ef7647a.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-0a59933f":p(()=>a(()=>import("./js19.html-adb5a680.js"),["assets/js19.html-adb5a680.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-2e78b2ce":p(()=>a(()=>import("./js2.html-419f5c34.js"),["assets/js2.html-419f5c34.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-2fe430e9":p(()=>a(()=>import("./js20.html-28229fe2.js"),["assets/js20.html-28229fe2.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-31990988":p(()=>a(()=>import("./js21.html-c5436148.js"),["assets/js21.html-c5436148.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-334de227":p(()=>a(()=>import("./js22.html-f1ffab89.js"),["assets/js22.html-f1ffab89.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-3502bac6":p(()=>a(()=>import("./js23.html-6149c488.js"),["assets/js23.html-6149c488.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-36b79365":p(()=>a(()=>import("./js24.html-b9ca9370.js"),["assets/js24.html-b9ca9370.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-2b0f0190":p(()=>a(()=>import("./js3.html-9e81bf76.js"),["assets/js3.html-9e81bf76.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-27a55052":p(()=>a(()=>import("./js4.html-d70dac87.js"),["assets/js4.html-d70dac87.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-243b9f14":p(()=>a(()=>import("./js5.html-e4940120.js"),["assets/js5.html-e4940120.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-20d1edd6":p(()=>a(()=>import("./js6.html-6bd876bf.js"),["assets/js6.html-6bd876bf.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-1d683c98":p(()=>a(()=>import("./js7.html-f5470aa5.js"),["assets/js7.html-f5470aa5.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-19fe8b5a":p(()=>a(()=>import("./js8.html-cc50b444.js"),["assets/js8.html-cc50b444.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-1694da1c":p(()=>a(()=>import("./js9.html-598350f3.js"),["assets/js9.html-598350f3.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-30861d29":p(()=>a(()=>import("./index.html-d33d5ac4.js"),["assets/index.html-d33d5ac4.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-113c9bde":p(()=>a(()=>import("./class-and-interfaces.html-57bdda35.js"),["assets/class-and-interfaces.html-57bdda35.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-1d3920e4":p(()=>a(()=>import("./class.html-33e70f27.js"),["assets/class.html-33e70f27.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-1b1261ba":p(()=>a(()=>import("./declaration-merging.html-0dc236fb.js"),["assets/declaration-merging.html-0dc236fb.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-48842cd6":p(()=>a(()=>import("./enum.html-cb03ad25.js"),["assets/enum.html-cb03ad25.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-0cfb5d99":p(()=>a(()=>import("./further-reading.html-19bdb9d2.js"),["assets/further-reading.html-19bdb9d2.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-7c4de90c":p(()=>a(()=>import("./generics.html-2d419491.js"),["assets/generics.html-2d419491.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-1ec71643":p(()=>a(()=>import("./index.html-da1c38d0.js"),["assets/index.html-da1c38d0.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-42c3cb92":p(()=>a(()=>import("./string-literal-types.html-b4150ef6.js"),["assets/string-literal-types.html-b4150ef6.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-1883b494":p(()=>a(()=>import("./tuple.html-f7e9b758.js"),["assets/tuple.html-f7e9b758.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-52f31c6b":p(()=>a(()=>import("./type-aliases.html-4705708c.js"),["assets/type-aliases.html-4705708c.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-a89a2ea6":p(()=>a(()=>import("./any.html-cc54192b.js"),["assets/any.html-cc54192b.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-dbe56f44":p(()=>a(()=>import("./built-in-objects.html-11c34e1f.js"),["assets/built-in-objects.html-11c34e1f.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-4972fd35":p(()=>a(()=>import("./declaration-files.html-a9666c41.js"),["assets/declaration-files.html-a9666c41.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-56d5da46":p(()=>a(()=>import("./primitive-data-types.html-f5b50f0d.js"),["assets/primitive-data-types.html-f5b50f0d.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-26120e40":p(()=>a(()=>import("./index.html-9113c9a4.js"),["assets/index.html-9113c9a4.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-4bb587ca":p(()=>a(()=>import("./type-assertion.html-3aaab963.js"),["assets/type-assertion.html-3aaab963.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-1b4c4913":p(()=>a(()=>import("./type-inference.html-5cdf4f1d.js"),["assets/type-inference.html-5cdf4f1d.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-afd75e7a":p(()=>a(()=>import("./type-of-array.html-02b973ae.js"),["assets/type-of-array.html-02b973ae.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-58ec5a7e":p(()=>a(()=>import("./type-of-function.html-52e64883.js"),["assets/type-of-function.html-52e64883.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-afce6b58":p(()=>a(()=>import("./type-of-object-interfaces.html-0907c625.js"),["assets/type-of-object-interfaces.html-0907c625.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-51dee7fe":p(()=>a(()=>import("./union-types.html-053b23cc.js"),["assets/union-types.html-053b23cc.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-14066bb0":p(()=>a(()=>import("./lint.html-a075e2ba.js"),["assets/lint.html-a075e2ba.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-4e30cdc6":p(()=>a(()=>import("./index.html-bba0bf9d.js"),["assets/index.html-bba0bf9d.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-447404d0":p(()=>a(()=>
5import("./get-typescript.html-25573238.js"),["assets/get-typescript.html-25573238.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-04a024e8":p(()=>a(()=>import("./hello-typescript.html-f3b8db55.js"),["assets/hello-typescript.html-f3b8db55.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-dbf5bde6":p(()=>a(()=>import("./index.html-67e76850.js"),["assets/index.html-67e76850.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-46489ecd":p(()=>a(()=>import("./what-is-typescript.html-cc74efbc.js"),["assets/what-is-typescript.html-cc74efbc.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-57087d82":p(()=>a(()=>import("./filter.html-7a190757.js"),["assets/filter.html-7a190757.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-0368ed62":p(()=>a(()=>import("./intro.html-dbec0d97.js"),["assets/intro.html-dbec0d97.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-36e8ccaa":p(()=>a(()=>import("./map-and-reduce.html-7009273a.js"),["assets/map-and-reduce.html-7009273a.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-1484fde2":p(()=>a(()=>import("./index.html-f7224824.js"),["assets/index.html-f7224824.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-7f883d1a":p(()=>a(()=>import("./sorted.html-43cd7673.js"),["assets/sorted.html-43cd7673.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-3706649a":p(()=>a(()=>import("./404.html-5810ec46.js"),["assets/404.html-5810ec46.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-9ea6722c":p(()=>a(()=>import("./index.html-f7867bc7.js"),["assets/index.html-f7867bc7.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-2d0a870d":p(()=>a(()=>import("./index.html-3d4d4d4e.js"),["assets/index.html-3d4d4d4e.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-506407f4":p(()=>a(()=>import("./index.html-53542178.js"),["assets/index.html-53542178.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-5639b1a2":p(()=>a(()=>import("./index.html-c41cdceb.js"),["assets/index.html-c41cdceb.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-54d7ff21":p(()=>a(()=>import("./index.html-d4c4bfb7.js"),["assets/index.html-d4c4bfb7.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-2bbfd41f":p(()=>a(()=>import("./index.html-586d87d9.js"),["assets/index.html-586d87d9.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-25d3ce10":p(()=>a(()=>import("./index.html-7a50766c.js"),["assets/index.html-7a50766c.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-2c8afe40":p(()=>a(()=>import("./index.html-b13c95f5.js"),["assets/index.html-b13c95f5.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-15c4e8af":p(()=>a(()=>import("./index.html-1377d310.js"),["assets/index.html-1377d310.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-03f9ac71":p(()=>a(()=>import("./index.html-7a48f772.js"),["assets/index.html-7a48f772.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-37700207":p(()=>a(()=>import("./index.html-425d87fd.js"),["assets/index.html-425d87fd.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-e616a2ea":p(()=>a(()=>import("./index.html-59389d8c.js"),["assets/index.html-59389d8c.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-2706b03a":p(()=>a(()=>import("./index.html-6244f444.js"),["assets/index.html-6244f444.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-1f66a70f":p(()=>a(()=>import("./index.html-05854674.js"),["assets/index.html-05854674.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-e7689652":p(()=>a(()=>import("./index.html-42aad71c.js"),["assets/index.html-42aad71c.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-9cc6ff24":p(()=>a(()=>import("./index.html-f595d12d.js"),["assets/index.html-f595d12d.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-db014718":p(()=>a(()=>import("./index.html-73debccd.js"),["assets/index.html-73debccd.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-2a0bb314":p(()=>a(()=>import("./index.html-1362b482.js"),["assets/index.html-1362b482.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-1101d562":p(()=>a(()=>import("./index.html-c629a972.js"),["assets/index.html-c629a972.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-459e6c86":p(()=>a(()=>import("./index.html-acef146f.js"),["assets/index.html-acef146f.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-5bc93818":p(()=>a(()=>import("./index.html-f1c2f078.js"),["assets/index.html-f1c2f078.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-744d024e":p(()=>a(()=>import("./index.html-9af8228f.js"),["assets/index.html-9af8228f.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-e52c881c":p(()=>a(()=>import("./index.html-de98d700.js"),["assets/index.html-de98d700.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-154dc4c4":p(()=>a(()=>import("./index.html-de4bc3e2.js"),["assets/index.html-de4bc3e2.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-01560935":p(()=>a(()=>import("./index.html-3b79296f.js"),["assets/index.html-3b79296f.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-183c7211":p(()=>a(()=>import("./index.html-1426542a.js"),["assets/index.html-1426542a.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-78ab366e"
5:p(()=>a(()=>import("./index.html-8784c9f1.js"),["assets/index.html-8784c9f1.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-54d7ff21":p(()=>a(()=>import("./index.html-d4c4bfb7.js"),["assets/index.html-d4c4bfb7.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-2c3ee7f5":p(()=>a(()=>import("./index.html-f9c0f208.js"),["assets/index.html-f9c0f208.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-27b02be6":p(()=>a(()=>import("./index.html-9bea41b2.js"),["assets/index.html-9bea41b2.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-fbb94a6e":p(()=>a(()=>import("./index.html-5e704b9d.js"),["assets/index.html-5e704b9d.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-0811c316":p(()=>a(()=>import("./index.html-d689cb3e.js"),["assets/index.html-d689cb3e.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-0711d614":p(()=>a(()=>import("./index.html-46e32238.js"),["assets/index.html-46e32238.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-0ec4cde8":p(()=>a(()=>import("./index.html-8f9534ab.js"),["assets/index.html-8f9534ab.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-945adc0e":p(()=>a(()=>import("./index.html-d9198a09.js"),["assets/index.html-d9198a09.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-b313a528":p(()=>a(()=>import("./index.html-734a20cf.js"),["assets/index.html-734a20cf.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-5dc1b699":p(()=>a(()=>import("./index.html-f2abf3fd.js"),["assets/index.html-f2abf3fd.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-b31576a4":p(()=>a(()=>import("./index.html-17fc1174.js"),["assets/index.html-17fc1174.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-040ee7aa":p(()=>a(()=>import("./index.html-6c8ee429.js"),["assets/index.html-6c8ee429.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-313e0f22":p(()=>a(()=>import("./index.html-06d3dd7a.js"),["assets/index.html-06d3dd7a.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-8fb18e34":p(()=>a(()=>import("./index.html-20256307.js"),["assets/index.html-20256307.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-6d9dfc4a":p(()=>a(()=>import("./index.html-93095f2a.js"),["assets/index.html-93095f2a.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-4ceeab1e":p(()=>a(()=>import("./index.html-651569fe.js"),["assets/index.html-651569fe.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-2926fcc3":p(()=>a(()=>import("./index.html-d1e37ebe.js"),["assets/index.html-d1e37ebe.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-c6194f12":p(()=>a(()=>import("./index.html-5359f6aa.js"),["assets/index.html-5359f6aa.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-540234fd":p(()=>a(()=>import("./index.html-de3f4577.js"),["assets/index.html-de3f4577.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-750779a9":p(()=>a(()=>import("./index.html-95f2b35e.js"),["assets/index.html-95f2b35e.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-15e1c6fa":p(()=>a(()=>import("./index.html-e1a20c84.js"),["assets/index.html-e1a20c84.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-13d78bea":p(()=>a(()=>import("./index.html-ec232e0c.js"),["assets/index.html-ec232e0c.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-b4d37618":p(()=>a(()=>import("./index.html-54a317e3.js"),["assets/index.html-54a317e3.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-1f8cf29b":p(()=>a(()=>import("./index.html-81a5825b.js"),["assets/index.html-81a5825b.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-f7c5e176":p(()=>a(()=>import("./index.html-37d1fd79.js"),["assets/index.html-37d1fd79.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-4db9d53f":p(()=>a(()=>import("./index.html-d6fc8cf1.js"),["assets/index.html-d6fc8cf1.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-25ccc894":p(()=>a(()=>import("./index.html-22e7adce.js"),["assets/index.html-22e7adce.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-076f9df0":p(()=>a(()=>import("./index.html-048f6b82.js"),["assets/index.html-048f6b82.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-4f2c56da":p(()=>a(()=>import("./index.html-dc6a9678.js"),["assets/index.html-dc6a9678.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-cfd0904a":p(()=>a(()=>import("./index.html-0c380cef.js"),["assets/index.html-0c380cef.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-efed4b1a":p(()=>a(()=>import("./index.html-45d7b88f.js"),["assets/index.html-45d7b88f.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-7f76933a":p(()=>a(()=>import("./index.html-1a9b645f.js"),["assets/index.html-1a9b645f.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-1c2059e5":p(()=>a(()=>import("./index.html-b0bc403d.js"),["assets/index.html-b0bc403d.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-04ba5822":p(()=>a(()=>import("./index.html-e419b81d.js"),["assets/index.html-e419b81d.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-6de5d91a":p(()=>a(()=>import("./index.html-bbf5074b.js"),["assets/index.html-bbf5074b.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-66231755":p(()=>a(()=>import("./index.html-b6c10b22.js"),["assets/index.html-b6c10b22.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-4f04116a":p(()=>a(()=>
5import("./index.html-93b06489.js"),["assets/index.html-93b06489.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-53c32dc4":p(()=>a(()=>import("./index.html-456c2316.js"),["assets/index.html-456c2316.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-2e14b8c3":p(()=>a(()=>import("./index.html-4ce9c29b.js"),["assets/index.html-4ce9c29b.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-352da056":p(()=>a(()=>import("./index.html-a692681a.js"),["assets/index.html-a692681a.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-70542a16":p(()=>a(()=>import("./index.html-5a3b3149.js"),["assets/index.html-5a3b3149.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-bd936f9c":p(()=>a(()=>import("./index.html-bac721e4.js"),["assets/index.html-bac721e4.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-33a6e194":p(()=>a(()=>import("./index.html-c4c02c46.js"),["assets/index.html-c4c02c46.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-1c7201c3":p(()=>a(()=>import("./index.html-efc1078c.js"),["assets/index.html-efc1078c.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-d04f4e62":p(()=>a(()=>import("./index.html-236ee109.js"),["assets/index.html-236ee109.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-c5597124":p(()=>a(()=>import("./index.html-8270fd42.js"),["assets/index.html-8270fd42.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-4fcf3b8b":p(()=>a(()=>import("./index.html-05d575c0.js"),["assets/index.html-05d575c0.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-87754df8":p(()=>a(()=>import("./index.html-1c81c0ba.js"),["assets/index.html-1c81c0ba.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-2d8746bc":p(()=>a(()=>import("./index.html-6ea8a39a.js"),["assets/index.html-6ea8a39a.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-d0b499dc":p(()=>a(()=>import("./index.html-d6af84e0.js"),["assets/index.html-d6af84e0.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-1b3342f2":p(()=>a(()=>import("./index.html-557ce6c8.js"),["assets/index.html-557ce6c8.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-6de8c212":p(()=>a(()=>import("./index.html-a49f35cf.js"),["assets/index.html-a49f35cf.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-6de75b45":p(()=>a(()=>import("./index.html-ac951b00.js"),["assets/index.html-ac951b00.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-4efd0db7":p(()=>a(()=>import("./index.html-cfa85220.js"),["assets/index.html-cfa85220.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-237b7756":p(()=>a(()=>import("./index.html-461f8708.js"),["assets/index.html-461f8708.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-6c95fcb4":p(()=>a(()=>import("./index.html-5a37180f.js"),["assets/index.html-5a37180f.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-0fc92e40":p(()=>a(()=>import("./index.html-f4753f95.js"),["assets/index.html-f4753f95.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-4917ac89":p(()=>a(()=>import("./index.html-2acef251.js"),["assets/index.html-2acef251.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-d74ade10":p(()=>a(()=>import("./index.html-4011a7ef.js"),["assets/index.html-4011a7ef.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-5db49609":p(()=>a(()=>import("./index.html-4a1a371d.js"),["assets/index.html-4a1a371d.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-6e8a5b47":p(()=>a(()=>import("./index.html-5d6e0afd.js"),["assets/index.html-5d6e0afd.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-4e80f332":p(()=>a(()=>import("./index.html-1ada03d5.js"),["assets/index.html-1ada03d5.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-2525e6ae":p(()=>a(()=>import("./index.html-2d3f75d6.js"),["assets/index.html-2d3f75d6.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-112bdfa2":p(()=>a(()=>import("./index.html-6dc2a4a4.js"),["assets/index.html-6dc2a4a4.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-b9d1a9e6":p(()=>a(()=>import("./index.html-1d7af918.js"),["assets/index.html-1d7af918.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-a309f194":p(()=>a(()=>import("./index.html-4c8f79fc.js"),["assets/index.html-4c8f79fc.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-6de491aa":p(()=>a(()=>import("./index.html-8adfa100.js"),["assets/index.html-8adfa100.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-6de3a8ec":p(()=>a(()=>import("./index.html-bec9b0b0.js"),["assets/index.html-bec9b0b0.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-d9b2d20e":p(()=>a(()=>import("./index.html-7e9e384a.js"),["assets/index.html-7e9e384a.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-6deb7cc8":p(()=>a(()=>import("./index.html-833ec7c1.js"),["assets/index.html-833ec7c1.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-0d38da3a":p(()=>a(()=>import("./index.html-54ec8bb1.js"),["assets/index.html-54ec8bb1.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-721c9cfe":p(()=>a(()=>import("./index.html-b9c3a322.js"),["assets/index.html-b9c3a322.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-6de42d09":p(()=>a(()=>import("./index.html-6093a472.js"),["assets/index.html-6093a472.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-4ee84f07":p(()=>a(()=>import("./index.html-fba4c530.js"),["assets/index.html-fba4c530.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-d4e2c596":p(()=>a(()=>import("./index.html-59f3e703.js"),["assets/index.html-59f3e703.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-c2a0515c":p(()=>a(()=>import("./index.html-eed61693.js"),["assets/index.html-eed61693.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-63cfafce":p(()=>a(()=>import("./index.html-22a94cc5.js"),["assets/index.html-22a94cc5.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-3c3bcf72":p(()=>a(()=>import("./index.html-fe749095.js"),["assets/index.html-fe749095.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-331dcb6a":p(()=>a(()=>import("./index.html-b3a5479e.js"),["assets/index.html-b3a5479e.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-570dc926":p(()=>a(()=>import("./index.html-569ac5a7.js"),["assets/index.html-569ac5a7.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-501c9b1e":p(()=>a(()=>import("./index.html-20550568.js"),["assets/index.html-20550568.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-151988ea":p(()=>a(()=>import("./index.html-d327c581.js"),["assets/index.html-d327c581.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-c9a5a498":p(()=>a(()=>import("./index.html-f644ec93.js"),["assets/index.html-f644ec93.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-212c4784":p(()=>a(()=>import("./index.html-a56c9663.js"),["assets/index.html-a56c9663.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-4f19f2d9":p(()=>a(()=>import("./index.html-54bd5037.js"),["assets/index.html-54bd5037.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-4f7baea2":p(()=>a(()=>import("./index.html-c9cdb270.js"),["assets/index.html-c9cdb270.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-4f7ac5e4":p(()=>a(()=>import("./index.html-1b8f01f5.js"),["assets/index.html-1b8f01f5.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-61d8bf2d":p(()=>a(()=>import("./index.html-e2ef635f.js"),["assets/index.html-e2ef635f.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-230c5d84":p(()=>a(()=>import("./index.html-c93c7509.js"),["assets/index.html-c93c7509.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-5efba9b4":p(()=>a(()=>import("./index.html-5e895684.js"),["assets/index.html-5e895684.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-6decd5e6":p(()=>a(()=>import("./index.html-d071a633.js"),["assets/index.html-d071a633.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-4f2fcf32":p(()=>a(()=>import("./index.html-23fb8e09.js"),["assets/index.html-23fb8e09.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-4fadefe0":p(()=>a(()=>import("./index.html-36347385.js"),["assets/index.html-36347385.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-fbe658bc":p(()=>a(()=>import("./index.html-16d2e167.js"),["assets/index.html-16d2e167.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-2fec218a":p(()=>a(()=>import("./index.html-96dd978d.js"),["assets/index.html-96dd978d.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-7643f25f":p(()=>a(()=>import("./index.html-81556816.js"),["assets/index.html-81556816.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-2271f5e2":p(()=>a(()=>import("./index.html-25ef716b.js"),["assets/index.html-25ef716b.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-1fbc8e8c":p(()=>a(()=>import("./index.html-b4e912c4.js"),["assets/index.html-b4e912c4.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-04b75fa2":p(()=>a(()=>import("./index.html-987ad76c.js"),["assets/index.html-987ad76c.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-0712c26e":p(()=>a(()=>import("./index.html-89167b2b.js"),["assets/index.html-89167b2b.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-65f2ede2":p(()=>a(()=>import("./index.html-3533f272.js"),["assets/index.html-3533f272.js","assets/plugin-vue_export-helper-c27b6911.js"])),"v-0b0da0a9":p(()=>a(()=>import("./index.html-2ee91f23.js"),["assets/index.html-2ee91f23.js","assets/plugin-vue_export-helper-c27b6911.js"]))};var nv=Symbol(""),rv=J(q1),Ql=dn({key:"",path:"",title:"",lang:"",frontmatter:{},headers:[]}),Jt=J(Ql),pe=()=>Jt,Xl=Symbol(""),ye=()=>{const e=me(Xl);if(!e)throw new Error("usePageFrontmatter() is called without provider.");return e},Yl=Symbol(""),ov=()=>{const e=me(Yl);if(!e)throw new Error("usePageHead() is called without provider.");return e},av=Symbol(""),Zl=Symbol(""),qa=()=>{const e=me(Zl);if(!e)throw new Error("usePageLang() is called without provider.");return e},ec=Symbol(""),iv=()=>{const e=me(ec);if(!e)throw new Error("usePageLayout() is called without provider.");return e},Ua=Symbol(""),Et=()=>{const e=me(Ua);if(!e)throw new Error("useRouteLocale() is called without provider.");return e},bn=J(U1),tc=()=>bn,nc=Symbol(""),Fn=()=>{const e=me(nc);if(!e)throw new Error("useSiteLocaleData() is called without provider.");return e},sv=Symbol(""),lv="Layout",cv="NotFound",It=gr({resolveLayouts:e=>e.reduce((t,n)=>({...t,...n.layouts}),{}),resolvePageData:async e=>{const t=rv.value[e];return await(t==null?void 0:t())??Ql},resolvePageFrontmatter:e=>e.frontmatter,resolvePageHead:(e,t,n)=>{const r=qe(t.description)?t.description:n.description,o=[...ur(t.head)?t.head:[],...n.head,["title",{},e],["meta",{name:"description",content:r}]];return Q1(o)},resolvePageHeadTitle:(e,t)=>
5[e.title,t.title].filter(n=>!!n).join(" | "),resolvePageLang:e=>e.lang||"en",resolvePageLayout:(e,t)=>{let n;if(e.path){const r=e.frontmatter.layout;qe(r)?n=r:n=lv}else n=cv;return t[n]},resolveRouteLocale:(e,t)=>tv(e,t),resolveSiteLocaleData:(e,t)=>({...e,...e.locales[t]})}),ho=k({name:"ClientOnly",setup(e,t){const n=J(!1);return _e(()=>{n.value=!0}),()=>{var r,o;return n.value?(o=(r=t.slots).default)==null?void 0:o.call(r):null}}}),Ka=k({name:"Content",props:{pageKey:{type:String,required:!1,default:""}},setup(e){const t=pe(),n=T(()=>Kl[e.pageKey||t.value.key]);return()=>n.value?l(n.value):l("div","404 Not Found")}}),ut=(e={})=>e,Pe=e=>un(e)?e:`/${Ul(e)}`;const dv={};var We=Uint8Array,gn=Uint16Array,uv=Int32Array,rc=new We([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]),oc=new We([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]),vv=new We([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),ac=function(e,t){for(var n=new gn(31),r=0;r<31;++r)n[r]=t+=1<<e[r-1];for(var o=new uv(n[30]),r=1;r<30;++r)for(var i=n[r];i<n[r+1];++i)o[i]=i-n[r]<<5|r;return{b:n,r:o}},ic=ac(rc,2),sc=ic.b,pv=ic.r;sc[28]=258,pv[258]=28;var fv=ac(oc,0),hv=fv.b,oa=new gn(32768);for(var ze=0;ze<32768;++ze){var Wt=(ze&43690)>>1|(ze&21845)<<1;Wt=(Wt&52428)>>2|(Wt&13107)<<2,Wt=(Wt&61680)>>4|(Wt&3855)<<4,oa[ze]=((Wt&65280)>>8|(Wt&255)<<8)>>1}var tr=function(e,t,n){for(var r=e.length,o=0,i=new gn(t);o<r;++o)e[o]&&++i[e[o]-1];var s=new gn(t);for(o=1;o<t;++o)s[o]=s[o-1]+i[o-1]<<1;var c;if(n){c=new gn(1<<t);var d=15-t;for(o=0;o<r;++o)if(e[o])for(var u=o<<4|e[o],v=t-e[o],f=s[e[o]-1]++<<v,h=f|(1<<v)-1;f<=h;++f)c[oa[f]>>d]=u}else for(c=new gn(r),o=0;o<r;++o)e[o]&&(c[o]=oa[s[e[o]-1]++]>>15-e[o]);return c},zr=new We(288);for(var ze=0;ze<144;++ze)zr[ze]=8;for(var ze=144;ze<256;++ze)zr[ze]=9;for(var ze=256;ze<280;++ze)zr[ze]=7;for(var ze=280;ze<288;++ze)zr[ze]=8;var lc=new We(32);for(var ze=0;ze<32;++ze)lc[ze]=5;var mv=tr(zr,9,1),_v=tr(lc,5,1),So=function(e){for(var t=e[0],n=1;n<e.length;++n)e[n]>t&&(t=e[n]);return t},pt=function(e,t,n){var r=t/8|0;return(e[r]|e[r+1]<<8)>>(t&7)&n},jo=function(e,t){var n=t/8|0;return(e[n]|e[n+1]<<8|e[n+2]<<16)>>(t&7)},bv=function(e){return(e+7)/8|0},Qa=function(e,t,n){return(t==null||t<0)&&(t=0),(n==null||n>e.length)&&(n=e.length),new We(e.subarray(t,n))}
vendor: 4,140 bytes, line 5
5,gv=["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||gv[e]);if(r.code=e,Error.captureStackTrace&&Error.captureStackTrace(r,it),!n)throw r;return r},Ev=function(e,t,n,r){var o=e.length,i=r?r.length:0;if(!o||t.f&&!t.l)return n||new We(0);var s=!n,c=s||t.i!=2,d=t.i;s&&(n=new We(o*3));var u=function(de){var _=n.length;if(de>_){var b=new We(Math.max(_*2,de));b.set(n),n=b}},v=t.f||0,f=t.p||0,h=t.b||0,m=t.l,E=t.d,A=t.m,L=t.n,g=o*8;do{if(!m){v=pt(e,f,1);var y=pt(e,f+1,3);if(f+=3,y)if(y==1)m=mv,E=_v,A=9,L=5;else if(y==2){var R=pt(e,f,31)+257,G=pt(e,f+10,15)+4,S=R+pt(e,f+5,31)+1;f+=14;for(var Q=new We(S),M=new We(19),H=0;H<G;++H)M[vv[H]]=pt(e,f+H*3,7);f+=G*3;for(var $=So(M),ee=(1<<$)-1,U=tr(M,$,1),H=0;H<S;){var De=U[pt(e,f,ee)];f+=De&15;var P=De>>4;if(P<16)Q[H++]=P;else{var re=0,fe=0;for(P==16?(fe=3+pt(e,f,3),f+=2,re=Q[H-1]):P==17?(fe=3+pt(e,f,7),f+=3):P==18&&(fe=11+pt(e,f,127),f+=7);fe--;)Q[H++]=re}}var ce=Q.subarray(0,R),ke=Q.subarray(R);A=So(ce),L=So(ke),m=tr(ce,A,1),E=tr(ke,L,1)}else it(1);else{var P=bv(f)+4,x=e[P-4]|e[P-3]<<8,N=P+x;if(N>o){d&&it(0);break}c&&u(h+x),n.set(e.subarray(P,N),h),t.b=h+=x,t.p=f=N*8,t.f=v;continue}if(f>g){d&&it(0);break}}c&&u(h+131072);for(var At=(1<<A)-1,rt=(1<<L)-1,Ce=f;;Ce=f){var re=m[jo(e,f)&At],Xe=re>>4;if(f+=re&15,f>g){d&&it(0);break}if(re||it(2),Xe<256)n[h++]=Xe;else if(Xe==256){Ce=f,m=null;break}else{var Ot=Xe-254;if(Xe>264){var H=Xe-257,zt=rc[H];Ot=pt(e,f,(1<<zt)-1)+sc[H],f+=zt}var xe=E[jo(e,f)&rt],O=xe>>4;xe||it(3),f+=xe&15;var ke=hv[O];if(O>3){var zt=oc[O];ke+=jo(e,f)&(1<<zt)-1,f+=zt}if(f>g){d&&it(0);break}c&&u(h+131072);var W=h+Ot;if(h<ke){var C=i-ke,K=Math.min(ke,W);for(C+h<0&&it(3);h<K;++h)n[h]=r[C+h]}for(;h<W;++h)n[h]=n[h-ke]}}t.l=m,t.p=Ce,t.b=h,t.f=v,m&&(v=1,t.m=A,t.d=E,t.n=L)}while(!v);return h!=n.length&&s?Qa(n,0,h):n.subarray(0,h)},yv=new We(0),Av=function(e,t){return((e[0]&15)!=8||e[0]>>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 zv(e,t){return Ev(e.subarray(Av(e,t&&t.dictionary),-4),{i:2},t&&t.out,t&&t.dictionary)}var ls=typeof TextEncoder<"u"&&new TextEncoder,aa=typeof TextDecoder<"u"&&new TextDecoder,Tv=0;try{aa.decode(yv,{stream:!0}),Tv=1}catch{}var Lv=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:Qa(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 Pv(e,t){if(t){for(var n=new We(e.length),r=0;r<e.length;++r)n[r]=e.charCodeAt(r);return n}if(ls)return ls.encode(e);for(var o=e.length,i=new We(e.length+(e.length>>1)),s=0,c=function(v){i[s++]=v},r=0;r<o;++r){if(s+5>i.length){var d=new We(s+8+(o-r<<1));d.set(i),i=d}var u=e.charCodeAt(r);u<128||t?c(u):u<2048?(c(192|u>>6),c(128|u&63)):u>55295&&u<57344?(u=65536+(u&1047552)|e.charCodeAt(++r)&1023,c(240|u>>18),c(128|u>>12&63),c(128|u>>6&63),c(128|u&63)):(c(224|u>>12),c(128|u>>6&63),c(128|u&63))}return Qa(i,0,s)}function wv(e,t){if(t){for(var n="",r=0;r<e.length;r+=16384)n+=String.fromCharCode.apply(null,e.subarray(r,r+16384));return n}else{if(aa)return aa.decode(e);var o=Lv(e),i=o.s,n=o.r;return n.length&&it(8),i}}const ae=({name:e="",color:t="currentColor"},{slots:n})=>{var r;return l("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))};ae.displayName="IconBase";const Tr=({size:e=48,stroke:t=4,wrapper:n=!0,height:r=2*e})=>{const o=l("svg",{xmlns:"http://www.w3.org/2000/svg",width:e,height:e,preserveAspectRatio:"xMidYMid",viewBox:"25 25 50 50"},[l("animateTransform",{attributeName:"transform",type:"rotate",dur:"2s",keyTimes:"0;
51",repeatCount:"indefinite",values:"0;360"}),l("circle",{cx:"50",cy:"50",r:"20",fill:"none",stroke:"currentColor","stroke-width":t,"stroke-linecap":"round"},[l("animate",{attributeName:"stroke-dasharray",dur:"1.5s",keyTimes:"0;0.5;1",repeatCount:"indefinite",values:"1,200;90,200;1,200"}),l("animate",{attributeName:"stroke-dashoffset",dur:"1.5s",keyTimes:"0;0.5;1",repeatCount:"indefinite",values:"0;-35px;-125px"})])]);return n?l("div",{class:"loading-icon-wrapper",style:`display:flex;align-items:center;justify-content:center;height:${r}px`},o):o};Tr.displayName="LoadingIcon";const cc=(e,{slots:t})=>{var n;return(n=t.default)==null?void 0:n.call(t)},dc=()=>l(ae,{name:"github"},()=>l("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"}));dc.displayName="GitHubIcon";const uc=()=>l(ae,{name:"gitlab"},()=>l("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"}));uc.displayName="GitLabIcon";const vc=()=>l(ae,{name:"gitee"},()=>l("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"}));vc.displayName="GiteeIcon";const pc=()=>l(ae,{name:"bitbucket"},()=>l("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"}));pc.displayName="BitbucketIcon";const fc=()=>l(ae,{name:"source"},()=>l("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"}));fc.displayName="SourceIcon";const hc=Array.isArray,Ov=e=>typeof e=="function",Dv=e=>typeof e=="string";var xv=e=>e.startsWith("ftp://"),Xa=e=>/^(https?:)?\/\//.test(e),Iv=/.md((\?|#).*)?$/,Vv=(e,t="/")=>!!(Xa(e)||xv(e)||e.startsWith("/")&&!e.startsWith(t)&&!Iv.test(e)),mc=e=>Object.prototype.toString.call(e)==="[object Object]";const St=(e,t)=>
5{const n=t?t._instance:$n();return mc(n==null?void 0:n.appContext.components)&&(e in n.appContext.components||dt(e)in n.appContext.components||br(dt(e))in n.appContext.components)};function Rv(){const e=J(!1);return $n()&&_e(()=>{e.value=!0}),e}function Sv(e){return Rv(),T(()=>!!e())}const jv=()=>Sv(()=>typeof window<"u"&&window.navigator&&"userAgent"in window.navigator),kv=()=>{const e=jv();return T(()=>e.value&&/\b(?:Android|iPhone)/i.test(navigator.userAgent))},Lr=e=>{const t=Et();return T(()=>e[t.value])},Ya=(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},mo=(e,t)=>{let n=1;for(let r=0;r<e.length;r++)n+=e.charCodeAt(r),n+=n<<10,n^=n>>6;return n+=n<<3,n^=n>>11,n%t},Ct=e=>typeof e=="string",vr=(e,t)=>Ct(e)&&e.startsWith(t),fn=(e,t)=>Ct(e)&&e.endsWith(t),Wn=Object.entries,Cv=Object.fromEntries,nt=Object.keys,cs=e=>mc(e)&&Ct(e.name),pr=(e,t=!1)=>e?hc(e)?e.map(n=>Ct(n)?{name:n}:cs(n)?n:null).filter(n=>n!==null):Ct(e)?[{name:e}]:cs(e)?[e]:(console.error(`Expect "author" to be \`AuthorInfo[] | AuthorInfo | string[] | string ${t?"":"| false"} | undefined\`, but got`,e),[]):[],_c=(e,t)=>{if(e){if(hc(e)&&e.every(Ct))return e;if(Ct(e))return[e];console.error(`Expect ${t||"value"} to be \`string[] | string | undefined\`, but got`,e)}return[]},bc=e=>_c(e,"category"),gc=e=>_c(e,"tag"),_o=e=>vr(e,"/");let Mv=class{constructor(){this.messageElements={};const t="message-container",n=document.getElementById(t);n?this.containerElement=n:(this.containerElement=document.createElement("div"),this.containerElement.id=t,document.body.appendChild(this.containerElement))}pop(t,n=2e3){const r=document.createElement("div"),o=Date.now();return r.className="message move-in",r.innerHTML=t,this.containerElement.appendChild(r),this.messageElements[o]=r,n>0&&setTimeout(()=>{this.close(o)},n),o}close(t){if(t){const n=this.messageElements[t];n.classList.remove("move-in"),n.classList.add("move-out"),n.addEventListener("animationend",()=>{n.remove(),delete this.messageElements[t]})}else nt(this.messageElements).forEach(n=>this.close(Number(n)))}destroy(){document.body.removeChild(this.containerElement)}};const Ec=/#.*$/u,Bv=e=>{const t=Ec.exec(e);return t?t[0]:""},ds=e=>decodeURI(e).replace(Ec,"").replace(/(index)?\.(md|html)$/,""),Za=(e,t)=>{if(t===void 0)return!1;const n=ds(e.path),r=ds(t),o=Bv(t);return o?o===e.hash&&(!r||n===r):n===r},fr=e=>{const t=atob(e);return wv(zv(Pv(t,!0)))},$v=e=>Xa(e)?e:`https://github.com/${e}`,yc=e=>!Xa(e)||/github\.com/.test(e)?"GitHub":/bitbucket\.org/.test(e)?"Bitbucket":/gitlab\.com/.test(e)?"GitLab":/gitee\.com/.test(e)?"Gitee":null,Pr=(e,...t)=>{const n=e.resolve(...t),r=n.matched[n.matched.length-1];if(!(r!=null&&r.redirect))return n;const{redirect:o}=r,i=Ov(o)?o(n):o,s=Dv(i)?{path:i}:i;return Pr(e,{hash:n.hash,query:n.query,params:n.params,...s})};function Yt(e){return Xs()?(L0(e),!0):!1}function Ne(e){return typeof e=="function"?e():ln(e)}const wr=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const Fv=e=>e!=null,Wv=Object.prototype.toString,Nv=e=>Wv.call(e)==="[object Object]",jt=()=>{},ia=Hv();function Hv(){var e,t;return wr&&((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 ei(e,t){function n(...r){return new Promise((o,i)=>{Promise.resolve(e(()=>t.apply(this,r),{fn:t,thisArg:this,args:r})).then(o).catch(i)})}return n}const Ac=e=>e();function Jv(e,t={}){let n,r,o=jt;const i=c=>{clearTimeout(c),o(),o=jt};return c=>{const d=Ne(e),u=Ne(t.maxWait);return n&&i(n),d<=0||u!==void 0&&u<=0?(r&&(i(r),r=null),Promise.resolve(c())):new Promise((v,f)=>{o=t.rejectOnCancel?f:v,u&&!r&&(r=setTimeout(()=>{n&&i(n),r=null,v(c())},u)),n=setTimeout(()=>{r&&i(r),r=null,v(c())},d)})}}function Gv(...e){let t=0,n,r=!0,o=jt,i,s,c,d,u;!Ve(e[0])&&typeof e[0]=="object"?{delay:s,trailing:c=!0,leading:d=!0,rejectOnCancel:u=!1}=e[0]:[s,c=!0,d=!0,u=!1]=e;const v=()=>{n&&(clearTimeout(n),n=void 0,o(),o=jt)};return h=>{const m=Ne(s),E=Date.now()-t,A=()=>i=h();return v(),m<=0?(t=Date.now(),A()):(E>m&&(d||!r)?(t=Date.now(),A()):c&&(i=new Promise((L,g)=>{o=u?g:L,n=setTimeout(()=>{t=Date.now(),r=!0,L(A()),v()},Math.max(0,m-E))})),!d&&!n&&(n=setTimeout(()=>r=!0,m)),r=!1,i)}}function qv(e=Ac){const t=J(!0);function n(){t.value=!1}function r(){t.value=!0}const o=(...i)=>{t.value&&e(...i)};return{isActive:dn(t),pause:n,resume:r,eventFilter:o}}function Uv(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 Kv(e){return e||$n()}function Qv(...e){if(e.length!==1)return Mn(...e);const t=e[0];return typeof t=="function"?dn(nu(()=>({get:t,set:jt}
5))):J(t)}function Xv(e,t=200,n={}){return ei(Jv(t,n),e)}function Yv(e,t=200,n=!1,r=!0,o=!1){return ei(Gv(t,n,r,o),e)}function Zv(e,t,n={}){const{eventFilter:r=Ac,...o}=n;return se(e,ei(r,t),o)}function e2(e,t,n={}){const{eventFilter:r,...o}=n,{eventFilter:i,pause:s,resume:c,isActive:d}=qv(r);return{stop:Zv(e,t,{...o,eventFilter:i}),pause:s,resume:c,isActive:d}}function bo(e,t=!0,n){Kv()?_e(e,n):t?e():Bn(e)}function t2(e,t,n={}){const{immediate:r=!0}=n,o=J(!1);let i=null;function s(){i&&(clearTimeout(i),i=null)}function c(){o.value=!1,s()}function d(...u){s(),o.value=!0,i=setTimeout(()=>{o.value=!1,i=null,e(...u)},Ne(t))}return r&&(o.value=!0,wr&&d()),Yt(c),{isPending:dn(o),start:d,stop:c}}function sa(e=!1,t={}){const{truthyValue:n=!0,falsyValue:r=!1}=t,o=Ve(e),i=J(e);function s(c){if(arguments.length)return i.value=c,i.value;{const d=Ne(n);return i.value=i.value===d?Ne(r):d,i.value}}return o?s:[i,s]}function Ge(e){var t;const n=Ne(e);return(t=n==null?void 0:n.$el)!=null?t:n}const wt=wr?window:void 0,zc=wr?window.document:void 0,Tc=wr?window.navigator:void 0;function Re(...e){let t,n,r,o;if(typeof e[0]=="string"||Array.isArray(e[0])?([n,r,o]=e,t=wt):[t,n,r,o]=e,!t)return jt;Array.isArray(n)||(n=[n]),Array.isArray(r)||(r=[r]);const i=[],s=()=>{i.forEach(v=>v()),i.length=0},c=(v,f,h,m)=>(v.addEventListener(f,h,m),()=>v.removeEventListener(f,h,m)),d=se(()=>[Ge(t),Ne(o)],([v,f])=>{if(s(),!v)return;const h=Nv(f)?{...f}:f;i.push(...n.flatMap(m=>r.map(E=>c(v,m,E,h))))},{immediate:!0,flush:"post"}),u=()=>{d(),s()};return Yt(u),u}let us=!1;function n2(e,t,n={}){const{window:r=wt,ignore:o=[],capture:i=!0,detectIframe:s=!1}=n;if(!r)return jt;ia&&!us&&(us=!0,Array.from(r.document.body.children).forEach(h=>h.addEventListener("click",jt)),r.document.documentElement.addEventListener("click",jt));let c=!0;const d=h=>o.some(m=>{if(typeof m=="string")return Array.from(r.document.querySelectorAll(m)).some(E=>E===h.target||h.composedPath().includes(E));{const E=Ge(m);return E&&(h.target===E||h.composedPath().includes(E))}}),v=[Re(r,"click",h=>{const m=Ge(e);if(!(!m||m===h.target||h.composedPath().includes(m))){if(h.detail===0&&(c=!d(h)),!c){c=!0;return}t(h)}},{passive:!0,capture:i}),Re(r,"pointerdown",h=>{const m=Ge(e);c=!d(h)&&!!(m&&!h.composedPath().includes(m))},{passive:!0}),s&&Re(r,"blur",h=>{setTimeout(()=>{var m;const E=Ge(e);((m=r.document.activeElement)==null?void 0:m.tagName)==="IFRAME"&&!(E!=null&&E.contains(r.document.activeElement))&&t(h)},0)})].filter(Boolean);return()=>v.forEach(h=>h())}function r2(){const e=J(!1),t=$n();return t&&_e(()=>{e.value=!0},t),e}function Nn(e){const t=r2();return T(()=>(t.value,!!e()))}function o2(e,t,n={}){const{window:r=wt,...o}=n;let i;const s=Nn(()=>r&&"MutationObserver"in r),c=()=>{i&&(i.disconnect(),i=void 0)},d=T(()=>{const h=Ne(e),m=(Array.isArray(h)?h:[h]).map(Ge).filter(Fv);return new Set(m)}),u=se(()=>d.value,h=>{c(),s.value&&h.size&&(i=new MutationObserver(t),h.forEach(m=>i.observe(m,o)))},{immediate:!0,flush:"post"}),v=()=>i==null?void 0:i.takeRecords(),f=()=>{c(),u()};return Yt(f),{isSupported:s,stop:f,takeRecords:v}}function Lc(e,t={}){const{window:n=wt}=t,r=Nn(()=>n&&"matchMedia"in n&&typeof n.matchMedia=="function");let o;const i=J(!1),s=u=>{i.value=u.matches},c=()=>{o&&("removeEventListener"in o?o.removeEventListener("change",s):o.removeListener(s))},d=Eu(()=>{r.value&&(c(),o=n.matchMedia(Ne(e)),"addEventListener"in o?o.addEventListener("change",s):o.addListener(s),i.value=o.matches)});return Yt(()=>{d(),c(),o=void 0}),i}function vs(e,t={}){const{controls:n=!1,navigator:r=Tc}=t,o=Nn(()=>r&&"permissions"in r);let i;const s=typeof e=="string"?{name:e}:e,c=J(),d=()=>{i&&(c.value=i.state)},u=Uv(async()=>{if(o.value){if(!i)try{i=await r.permissions.query(s),Re(i,"change",d),d()}catch{c.value="prompt"}return i}});return u(),n?{state:c,isSupported:o,query:u}:c}function a2(e={}){const{navigator:t=Tc,read:n=!1,source:r,copiedDuring:o=1500,legacy:i=!1}=e,s=Nn(()=>t&&"clipboard"in t),c=vs("clipboard-read"),d=vs("clipboard-write"),u=T(()=>s.value||i),v=J(""),f=J(!1),h=t2(()=>f.value=!1,o);function m(){s.value&&g(c.value)?t.clipboard.readText().then(y=>{v.value=y}):v.value=L()}u.value&&n&&Re(["copy","cut"],m);async function E(y=Ne(r)){u.value&&y!=null&&(s.value&&g(d.value)?await t.clipboard.writeText(y):A(y),v.value=y,f.value=!0,h.start())}function A(y){const P=document.createElement("textarea");P.value=y??"",P.style.position="absolute",P.style.opacity="0",document.body.appendChild(P),P.select(),document.execCommand("copy"),P.remove()}function L(){var y,P,x;return(x=(P=(y=document==null?void 0:document.getSelection)==null?void 0:y.call(document))==null?void 0:P.toString())!=null?x:""}function g(y){return y==="granted"||y==="prompt"}return{isSupported:u,text:v,copied:f,copy:E}}const Nr=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},Hr="__vueuse_ssr_handlers__",i2=s2();function s2(){return Hr in Nr||(Nr[Hr]=Nr[Hr]||{}),Nr[Hr]}function l2(e,t){return i2[e]||t}function c2(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 d2={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()}},ps="vueuse-storage";function Pc(e,t,n,r={}){var o;const{flush:i="pre",deep:s=!0,listenToStorageChanges:c=!0,writeDefaults:d=!0,mergeDefaults:u=!1,shallow:v,window:f=wt,eventFilter:h,onError:m=M=>
5{console.error(M)},initOnMounted:E}=r,A=(v?$e:J)(typeof t=="function"?t():t);if(!n)try{n=l2("getDefaultStorage",()=>{var M;return(M=wt)==null?void 0:M.localStorage})()}catch(M){m(M)}if(!n)return A;const L=Ne(t),g=c2(L),y=(o=r.serializer)!=null?o:d2[g],{pause:P,resume:x}=e2(A,()=>R(A.value),{flush:i,deep:s,eventFilter:h});f&&c&&bo(()=>{Re(f,"storage",S),Re(f,ps,Q),E&&S()}),E||S();function N(M,H){f&&f.dispatchEvent(new CustomEvent(ps,{detail:{key:e,oldValue:M,newValue:H,storageArea:n}}))}function R(M){try{const H=n.getItem(e);if(M==null)N(H,null),n.removeItem(e);else{const $=y.write(M);H!==$&&(n.setItem(e,$),N(H,$))}}catch(H){m(H)}}function G(M){const H=M?M.newValue:n.getItem(e);if(H==null)return d&&L!=null&&n.setItem(e,y.write(L)),L;if(!M&&u){const $=y.read(H);return typeof u=="function"?u($,L):g==="object"&&!Array.isArray($)?{...L,...$}:$}else return typeof H!="string"?H:y.read(H)}function S(M){if(!(M&&M.storageArea!==n)){if(M&&M.key==null){A.value=L;return}if(!(M&&M.key!==e)){P();try{(M==null?void 0:M.newValue)!==y.write(A.value)&&(A.value=G(M))}catch(H){m(H)}finally{M?Bn(x):x()}}}}function Q(M){S(M.detail)}return A}function u2(e){return Lc("(prefers-color-scheme: dark)",e)}function v2(e,t,n={}){const{window:r=wt,...o}=n;let i;const s=Nn(()=>r&&"ResizeObserver"in r),c=()=>{i&&(i.disconnect(),i=void 0)},d=T(()=>Array.isArray(e)?e.map(f=>Ge(f)):[Ge(e)]),u=se(d,f=>{if(c(),s.value&&r){i=new ResizeObserver(t);for(const h of f)h&&i.observe(h,o)}},{immediate:!0,flush:"post"}),v=()=>{c(),u()};return Yt(v),{isSupported:s,stop:v}}function p2(e,t={width:0,height:0},n={}){const{window:r=wt,box:o="content-box"}=n,i=T(()=>{var f,h;return(h=(f=Ge(e))==null?void 0:f.namespaceURI)==null?void 0:h.includes("svg")}),s=J(t.width),c=J(t.height),{stop:d}=v2(e,([f])=>{const h=o==="border-box"?f.borderBoxSize:o==="content-box"?f.contentBoxSize:f.devicePixelContentBoxSize;if(r&&i.value){const m=Ge(e);if(m){const E=m.getBoundingClientRect();s.value=E.width,c.value=E.height}}else if(h){const m=Array.isArray(h)?h:[h];s.value=m.reduce((E,{inlineSize:A})=>E+A,0),c.value=m.reduce((E,{blockSize:A})=>E+A,0)}else s.value=f.contentRect.width,c.value=f.contentRect.height},n);bo(()=>{const f=Ge(e);f&&(s.value="offsetWidth"in f?f.offsetWidth:t.width,c.value="offsetHeight"in f?f.offsetHeight:t.height)});const u=se(()=>Ge(e),f=>{s.value=f?t.width:0,c.value=f?t.height:0});function v(){d(),u()}return{width:s,height:c,stop:v}}const fs=["fullscreenchange","webkitfullscreenchange","webkitendfullscreen","mozfullscreenchange","MSFullscreenChange"];function ti(e,t={}){const{document:n=zc,autoExit:r=!1}=t,o=T(()=>{var g;return(g=Ge(e))!=null?g:n==null?void 0:n.querySelector("html")}),i=J(!1),s=T(()=>["requestFullscreen","webkitRequestFullscreen","webkitEnterFullscreen","webkitEnterFullScreen","webkitRequestFullScreen","mozRequestFullScreen","msRequestFullscreen"].find(g=>n&&g in n||o.value&&g in o.value)),c=T(()=>["exitFullscreen","webkitExitFullscreen","webkitExitFullScreen","webkitCancelFullScreen","mozCancelFullScreen","msExitFullscreen"].find(g=>n&&g in n||o.value&&g in o.value)),d=T(()=>["fullScreen","webkitIsFullScreen","webkitDisplayingFullscreen","mozFullScreen","msFullscreenElement"].find(g=>n&&g in n||o.value&&g in o.value)),u=["fullscreenElement","webkitFullscreenElement","mozFullScreenElement","msFullscreenElement"].find(g=>n&&g in n),v=Nn(()=>o.value&&n&&s.value!==void 0&&c.value!==void 0&&d.value!==void 0),f=()=>u?(n==null?void 0:n[u])===o.value:!1,h=()=>{if(d.value){if(n&&n[d.value]!=null)return n[d.value];{const g=o.value;if((g==null?void 0:g[d.value])!=null)return!!g[d.value]}}return!1};async function m(){if(!(!v.value||!i.value)){if(c.value)if((n==null?void 0:n[c.value])!=null)await n[c.value]();else{const g=o.value;(g==null?void 0:g[c.value])!=null&&await g[c.value]()}i.value=!1}}async function E(){if(!v.value||i.value)return;h()&&await m();const g=o.value;s.value&&(g==null?void 0:g[s.value])!=null&&(await g[s.value](),i.value=!0)}async function A(){await(i.value?m():E())}const L=()=>{const g=h();(!g||g&&f())&&(i.value=g)};return Re(n,fs,L,!1),Re(()=>Ge(o),fs,L,!1),r&&Yt(m),{isSupported:v,isFullscreen:i,enter:E,exit:m,toggle:A}}function ko(e){return typeof Window<"u"&&e instanceof Window?e.document.documentElement:typeof Document<"u"&&e instanceof Document?e.documentElement:e}function wc(e){const t=window.getComputedStyle(e);
5if(t.overflowX==="scroll"||t.overflowY==="scroll"||t.overflowX==="auto"&&e.clientWidth<e.scrollWidth||t.overflowY==="auto"&&e.clientHeight<e.scrollHeight)return!0;{const n=e.parentNode;return!n||n.tagName==="BODY"?!1:wc(n)}}function f2(e){const t=e||window.event,n=t.target;return wc(n)?!1:t.touches.length>1?!0:(t.preventDefault&&t.preventDefault(),!1)}const Co=new WeakMap;function Oc(e,t=!1){const n=J(t);let r=null,o="";se(Qv(e),c=>{const d=ko(Ne(c));if(d){const u=d;if(Co.get(u)||Co.set(u,u.style.overflow),u.style.overflow!=="hidden"&&(o=u.style.overflow),u.style.overflow==="hidden")return n.value=!0;if(n.value)return u.style.overflow="hidden"}},{immediate:!0});const i=()=>{const c=ko(Ne(e));!c||n.value||(ia&&(r=Re(c,"touchmove",d=>{f2(d)},{passive:!1})),c.style.overflow="hidden",n.value=!0)},s=()=>{const c=ko(Ne(e));!c||!n.value||(ia&&(r==null||r()),c.style.overflow=o,Co.delete(c),n.value=!1)};return Yt(s),T({get(){return n.value},set(c){c?i():s()}})}let h2=0;function m2(e,t={}){const n=J(!1),{document:r=zc,immediate:o=!0,manual:i=!1,id:s=`vueuse_styletag_${++h2}`}=t,c=J(e);let d=()=>{};const u=()=>{if(!r)return;const f=r.getElementById(s)||r.createElement("style");f.isConnected||(f.id=s,t.media&&(f.media=t.media),r.head.appendChild(f)),!n.value&&(d=se(c,h=>{f.textContent=h},{immediate:!0}),n.value=!0)},v=()=>{!r||!n.value||(d(),r.head.removeChild(r.getElementById(s)),n.value=!1)};return o&&!i&&bo(u),i||Yt(v),{id:s,css:c,unload:v,load:u,isLoaded:dn(n)}}function _2(e={}){const{window:t=wt,behavior:n="auto"}=e;if(!t)return{x:J(0),y:J(0)};const r=J(t.scrollX),o=J(t.scrollY),i=T({get(){return r.value},set(c){scrollTo({left:c,behavior:n})}}),s=T({get(){return o.value},set(c){scrollTo({top:c,behavior:n})}});return Re(t,"scroll",()=>{r.value=t.scrollX,o.value=t.scrollY},{capture:!1,passive:!0}),{x:i,y:s}}function b2(e={}){const{window:t=wt,initialWidth:n=Number.POSITIVE_INFINITY,initialHeight:r=Number.POSITIVE_INFINITY,listenOrientation:o=!0,includeScrollbar:i=!0}=e,s=J(n),c=J(r),d=()=>{t&&(i?(s.value=t.innerWidth,c.value=t.innerHeight):(s.value=t.document.documentElement.clientWidth,c.value=t.document.documentElement.clientHeight))};if(d(),bo(d),Re("resize",d,{passive:!0}),o){const u=Lc("(orientation: portrait)");se(u,()=>d())}return{width:s,height:c}}const Dc=({type:e="info",text:t="",vertical:n="top",color:r},{slots:o})=>{var i;return l("span",{class:["vp-badge",e,{diy:r}],style:{verticalAlign:n,...r?{backgroundColor:r}:{}}},((i=o.default)==null?void 0:i.call(o))||t)};Dc.displayName="Badge";var g2=k({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=`iconfont icon-${e.icon}`;return r.push(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`),nt(r).length?r:null});return()=>e.icon?l("span",{key:e.icon,class:t.value,style:n.value}):null}});const xc=()=>l(ae,{name:"back-to-top"},()=>[l("path",{d:"M512 843.2c-36.2 0-66.4-13.6-85.8-21.8-10.8-4.6-22.6 3.6-21.8 15.2l7 102c.4 6.2 7.6 9.4 12.6 5.6l29-22c3.6-2.8 9-1.8 11.4 2l41 64.2c3 4.8 10.2 4.8 13.2 0l41-64.2c2.4-3.8 7.8-4.8 11.4-2l29 22c5 3.8 12.2.6 12.6-5.6l7-102c.8-11.6-11-20-21.8-15.2-19.6 8.2-49.6 21.8-85.8 21.8z"}),l("path",{d:"m795.4 586.2-96-98.2C699.4 172 513 32 513 32S324.8 172 324.8 488l-96 98.2c-3.6 3.6-5.2 9-4.4 14.2L261.2 824c1.8 11.4 14.2 17 23.6 10.8L419 744s41.4 40 94.2 40c52.8 0 92.2-40 92.2-40l134.2 90.8c9.2 6.2 21.6.6 23.6-10.8l37-223.8c.4-5.2-1.2-10.4-4.8-14zM513 384c-34 0-61.4-28.6-61.4-64s27.6-64 61.4-64c34 0 61.4 28.6 61.4 64S547 384 513 384z"})]);xc.displayName="BackToTopIcon";var E2=k({name:"BackToTop",props:{threshold:{type:Number,default:100},noProgress:Boolean},setup(e){const t=ye(),n=Lr({"/zh/":{backToTop:"返回顶部"},"/":{backToTop:"Back to top"}}),r=$e(),{height:o}=p2(r),{height:i}=b2(),{y:s}=_2(),c=T(()=>t.value.backToTop!==!1&&s.value>e.threshold),d=T(()=>s.value/(o.value-i.value));return _e(()=>{r.value=document.body}),()=>l(Xt,{name:"fade"},()=>c.value?l("button",{type:"button",class:"vp-back-to-top-button","aria-label":n.value.backToTop,"data-balloon-pos":"left",onClick:()=>{window.scrollTo({top:0,behavior:"smooth"})}},[e.noProgress?null:l("svg",{class:"vp-scroll-progress"},l("circle",{cx:"50%",cy:"50%",style:{"stroke-dasharray":`calc(${Math.PI*d.value*100}% - ${4*Math.PI}px) calc(${Math.PI*100}% - ${4*Math.PI}px)`}})),l(xc)]):null)}});const y2=ut({enhance:({app:e})=>{St("Badge")||e.component("Badge",Dc),St("FontIcon")||e.component("FontIcon",g2)},setup:()=>{m2(`@import url("//at.alicdn.com/t/font_2410206_vuzkjonf4s9.css");
6`)},rootComponents:[()=>l(E2,{})]});function Ic(e,t,n){var r,o,i;t===void 0&&(t=50),n===void 0&&(n={});var s=(r=n.isImmediate)!=null&&r,c=(o=n.callback)!=null&&o,d=n.maxWait,u=
vendor: 7,488 bytes, lines 6-10
6Date.now(),v=[];function f(){if(d!==void 0){var m=Date.now()-u;if(m+t>=d)return d-m}return t}var h=function(){var m=[].slice.call(arguments),E=this;return new Promise(function(A,L){var g=s&&i===void 0;if(i!==void 0&&clearTimeout(i),i=setTimeout(function(){if(i=void 0,u=Date.now(),!s){var P=e.apply(E,m);c&&c(P),v.forEach(function(x){return(0,x.resolve)(P)}),v=[]}},f()),g){var y=e.apply(E,m);return c&&c(y),A(y)}v.push({resolve:A,reject:L})})};return h.cancel=function(m){i!==void 0&&clearTimeout(i),v.forEach(function(E){return(0,E.reject)(m)}),v=[]},h}/*!
7  * vue-router v4.4.3
8  * (c) 2024 Eduardo San Martin Morote
9  * @license MIT
10  */const mn=typeof document<"u";function A2(e){return e.__esModule||e[Symbol.toStringTag]==="Module"}const be=Object.assign;function Mo(e,t){const n={};for(const r in t){const o=t[r];n[r]=gt(o)?o.map(e):e(o)}return n}const nr=()=>{},gt=Array.isArray,Vc=/#/g,z2=/&/g,T2=/\//g,L2=/=/g,P2=/\?/g,Rc=/\+/g,w2=/%5B/g,O2=/%5D/g,Sc=/%5E/g,D2=/%60/g,jc=/%7B/g,x2=/%7C/g,kc=/%7D/g,I2=/%20/g;function ni(e){return encodeURI(""+e).replace(x2,"|").replace(w2,"[").replace(O2,"]")}function V2(e){return ni(e).replace(jc,"{").replace(kc,"}").replace(Sc,"^")}function la(e){return ni(e).replace(Rc,"%2B").replace(I2,"+").replace(Vc,"%23").replace(z2,"%26").replace(D2,"`").replace(jc,"{").replace(kc,"}").replace(Sc,"^")}function R2(e){return la(e).replace(L2,"%3D")}function S2(e){return ni(e).replace(Vc,"%23").replace(P2,"%3F")}function j2(e){return e==null?"":S2(e).replace(T2,"%2F")}function hr(e){try{return decodeURIComponent(""+e)}catch{}return""+e}const k2=/\/$/,C2=e=>e.replace(k2,"");function Bo(e,t,n="/"){let r,o={},i="",s="";const c=t.indexOf("#");let d=t.indexOf("?");return c<d&&c>=0&&(d=-1),d>-1&&(r=t.slice(0,d),i=t.slice(d+1,c>-1?c:t.length),o=e(i)),c>-1&&(r=r||t.slice(0,c),s=t.slice(c,t.length)),r=F2(r??t,n),{fullPath:r+(i&&"?")+i+s,path:r,query:o,hash:hr(s)}}function M2(e,t){const n=t.query?e(t.query):"";return t.path+(n&&"?")+n+(t.hash||"")}function hs(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||"/"}function B2(e,t,n){const r=t.matched.length-1,o=n.matched.length-1;return r>-1&&r===o&&Vn(t.matched[r],n.matched[o])&&Cc(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function Vn(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function Cc(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(const n in e)if(!$2(e[n],t[n]))return!1;return!0}function $2(e,t){return gt(e)?ms(e,t):gt(t)?ms(t,e):e===t}function ms(e,t){return gt(t)?e.length===t.length&&e.every((n,r)=>n===t[r]):e.length===1&&e[0]===t}function F2(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 i=n.length-1,s,c;for(s=0;s<r.length;s++)if(c=r[s],c!==".")if(c==="..")i>1&&i--;else break;return n.slice(0,i).join("/")+"/"+r.slice(s).join("/")}const Vt={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 rr;(function(e){e.back="back",e.forward="forward",e.unknown=""})(rr||(rr={}));function W2(e){if(!e)if(mn){const t=document.querySelector("base");e=t&&t.getAttribute("href")||"/",e=e.replace(/^\w+:\/\/[^\/]+/,"")}else e="/";return e[0]!=="/"&&e[0]!=="#"&&(e="/"+e),C2(e)}const N2=/^[^#]+#/;function H2(e,t){return e.replace(N2,"#")+t}function J2(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 go=()=>({left:window.scrollX,top:window.scrollY});function G2(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=J2(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 _s(e,t){return(history.state?history.state.position-t:-1)+e}const ca=new Map;function q2(e,t){ca.set(e,t)}function U2(e){const t=ca.get(e);return ca.delete(e),t}let K2=()=>location.protocol+"//"+location.host;function Mc(e,t){const{pathname:n,search:r,hash:o}=t,i=e.indexOf("#");if(i>-1){let c=o.includes(e.slice(i))?e.slice(i).length:1,d=o.slice(c);return d[0]!=="/"&&(d="/"+d),hs(d,"")}return hs(n,e)+r+o}function Q2(e,t,n,r){let o=[],i=[],s=null;const c=({state:h})=>{const m=Mc(e,location),E=n.value,A=t.value;let L=0;if(h){if(n.value=m,t.value=h,s&&s===E){s=null;return}L=A?h.position-A.position:0}else r(m);o.forEach(g=>{g(n.value,E,{delta:L,type:mr.pop,direction:L?L>0?rr.forward:rr.back:rr.unknown})})};function d(){s=n.value}function u(h){o.push(h);const m=()=>{const E=o.indexOf(h);E>-1&&o.splice(E,1)};return i.push(m),m}function v(){const{history:h}=window;h.state&&h.replaceState(be({},h.state,{scroll:go()}),"")}function f(){for(const h of i)h();i=[],window.removeEventListener("popstate",c),window.removeEventListener("beforeunload",v)}return window.addEventListener("popstate",c),window.addEventListener("beforeunload",v,{passive:!0}),{pauseListeners:d,listen:u,destroy:f}}function bs(e,t,n,r=!1,o=!1){return{back:e,current:t,forward:n,replaced:r,position:window.history.length,scroll:o?go():null}}function X2(e){const{history:t,location:n}=window,r={value:Mc(e,n)},o={value:t.state};o.value||i(r.value,{back:null,current:r.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function i(d,u,v){const f=e.indexOf("#"),h=f>-1?(n.host&&document.querySelector("base")?e:e.slice(f))+d:K2()+e+d;try{t[v?"replaceState":"pushState"](u,"",h),o.value=u}catch(m){console.error(m),n[v?"replace":"assign"](h)}}function s(d,u){const v=be({},t.state,bs(o.value.back,d,o.value.forward,!0),u,{position:o.value.position});i(d,v,!0),r.value=d}function c(d,u){const v=be({},o.value,t.state,{forward:d,scroll:go()});i(v.current,v,!0);const f=be({},bs(r.value,d,null),{position:v.position+1},u);i(d,f,!1),r.value=d}return{location:r,state:o,push:c,replace:s}}function Y2(e){e=W2(e);const t=X2(e),n=Q2(e,t.state,t.location,t.replace);function r(i,s=!0){s||n.pauseListeners(),history.go(i)}const o=be({location:"",base:e,go:r,createHref:H2.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 Z2(e){return typeof e=="string"||e&&typeof e=="object"}function Bc(e){return typeof e=="string"||typeof e=="symbol"}const $c=Symbol("");var gs;(function(e){e[e.aborted=4]="aborted",e[e.cancelled=8]="cancelled",e[e.duplicated=16]="duplicated"})(gs||(gs={}));function Rn(e,t){return be(new Error,{type:e,[$c]:!0},t)}function Dt(e,t){return e instanceof Error&&$c in e&&(t==null||!!(e.type&t))}const Es="[^/]+?",ep={sensitive:!1,strict:!1,start:!0,end:!0},tp=/[.+*?^${}()[\]/\\]/g;function np(e,t){const n=be({},ep,t),r=[];let o=n.start?"^":"";const i=[];for(const u of e){const v=u.length?[]:[90];n.strict&&!u.length&&(o+="/");for(let f=0;f<u.length;f++){const h=u[f];let m=40+(n.sensitive?.25:0);if(h.type===0)f||(o+="/"),o+=h.value.replace(tp,"\\$&"),m+=40;else if(h.type===1){const{value:E,repeatable:A,optional:L,regexp:g}=h;i.push({name:E,repeatable:A,optional:L});const y=g||Es;if(y!==Es){m+=10;try{new RegExp(`(${y})`)}catch(x){throw new Error(`Invalid custom RegExp for param "${E}" (${y}): `+x.message)}}let P=A?`((?:${y}
10)(?:/(?:${y}))*)`:`(${y})`;f||(P=L&&u.length<2?`(?:/${P})`:"/"+P),L&&(P+="?"),o+=P,m+=20,L&&(m+=-8),A&&(m+=-20),y===".*"&&(m+=-50)}v.push(m)}r.push(v)}if(n.strict&&n.end){const u=r.length-1;r[u][r[u].length-1]+=.7000000000000001}n.strict||(o+="/?"),n.end?o+="$":n.strict&&(o+="(?:/|$)");const s=new RegExp(o,n.sensitive?"":"i");function c(u){const v=u.match(s),f={};if(!v)return null;for(let h=1;h<v.length;h++){const m=v[h]||"",E=i[h-1];f[E.name]=m&&E.repeatable?m.split("/"):m}return f}function d(u){let v="",f=!1;for(const h of e){(!f||!v.endsWith("/"))&&(v+="/"),f=!1;for(const m of h)if(m.type===0)v+=m.value;else if(m.type===1){const{value:E,repeatable:A,optional:L}=m,g=E in u?u[E]:"";if(gt(g)&&!A)throw new Error(`Provided param "${E}" is an array but it is not repeatable (* or + modifiers)`);const y=gt(g)?g.join("/"):g;if(!y)if(L)h.length<2&&(v.endsWith("/")?v=v.slice(0,-1):f=!0);else throw new Error(`Missing required param "${E}"`);v+=y}}return v||"/"}return{re:s,score:r,keys:i,parse:c,stringify:d}}function rp(e,t){let n=0;for(;n<e.length&&n<t.length;){const r=t[n]-e[n];if(r)return r;n++}return e.length<t.length?e.length===1&&e[0]===40+40?-1:1:e.length>t.length?t.length===1&&t[0]===40+40?1:-1:0}function Fc(e,t){let n=0;const r=e.score,o=t.score;for(;n<r.length&&n<o.length;){const i=rp(r[n],o[n]);if(i)return i;n++}if(Math.abs(o.length-r.length)===1){if(ys(r))return 1;if(ys(o))return-1}return o.length-r.length}function ys(e){const t=e[e.length-1];return e.length>0&&t[t.length-1]<0}const op={type:0,value:""},ap=/[a-zA-Z0-9_]/;function ip(e){if(!e)return[[]];if(e==="/")return[[op]];if(!e.startsWith("/"))throw new Error(`Invalid path "${e}"`);function t(m){throw new Error(`ERR (${n})/"${u}": ${m}`)}let n=0,r=n;const o=[];let i;function s(){i&&o.push(i),i=[]}let c=0,d,u="",v="";function f(){u&&(n===0?i.push({type:0,value:u}):n===1||n===2||n===3?(i.length>1&&(d==="*"||d==="+")&&t(`A repeatable param (${u}) must be alone in its segment. eg: '/:ids+.`),i.push({type:1,value:u,regexp:v,repeatable:d==="*"||d==="+",optional:d==="*"||d==="?"})):t("Invalid state to consume buffer"),u="")}function h(){u+=d}for(;c<e.length;){if(d=e[c++],d==="\\"&&n!==2){r=n,n=4;continue}switch(n){case 0:d==="/"?(u&&f(),s()):d===":"?(f(),n=1):h();break;case 4:h(),n=r;break;case 1:d==="("?n=2:ap.test(d)?h():(f(),n=0,d!=="*"&&d!=="?"&&d!=="+"&&c--);break;case 2:d===")"?v[v.length-1]=="\\"?v=v.slice(0,-1)+d:n=3:v+=d;break;case 3:f(),n=0,d!=="*"&&d!=="?"&&d!=="+"&&c--,v="";break;default:t("Unknown state");break}}return n===2&&t(`Unfinished custom RegExp for param "${u}"`),f(),s(),o}
vendor: 9,893 bytes, line 10
10function sp(e,t,n){const r=np(ip(e.path),n),o=be(r,{record:e,parent:t,children:[],alias:[]});return t&&!o.record.aliasOf==!t.record.aliasOf&&t.children.push(o),o}function lp(e,t){const n=[],r=new Map;t=Ts({strict:!1,end:!0,sensitive:!1},t);function o(f){return r.get(f)}function i(f,h,m){const E=!m,A=cp(f);A.aliasOf=m&&m.record;const L=Ts(t,f),g=[A];if("alias"in f){const x=typeof f.alias=="string"?[f.alias]:f.alias;for(const N of x)g.push(be({},A,{components:m?m.record.components:A.components,path:N,aliasOf:m?m.record:A}))}let y,P;for(const x of g){const{path:N}=x;if(h&&N[0]!=="/"){const R=h.record.path,G=R[R.length-1]==="/"?"":"/";x.path=h.record.path+(N&&G+N)}if(y=sp(x,h,L),m?m.alias.push(y):(P=P||y,P!==y&&P.alias.push(y),E&&f.name&&!zs(y)&&s(f.name)),Wc(y)&&d(y),A.children){const R=A.children;for(let G=0;G<R.length;G++)i(R[G],y,m&&m.children[G])}m=m||y}return P?()=>{s(P)}:nr}function s(f){if(Bc(f)){const h=r.get(f);h&&(r.delete(f),n.splice(n.indexOf(h),1),h.children.forEach(s),h.alias.forEach(s))}else{const h=n.indexOf(f);h>-1&&(n.splice(h,1),f.record.name&&r.delete(f.record.name),f.children.forEach(s),f.alias.forEach(s))}}function c(){return n}function d(f){const h=vp(f,n);n.splice(h,0,f),f.record.name&&!zs(f)&&r.set(f.record.name,f)}function u(f,h){let m,E={},A,L;if("name"in f&&f.name){if(m=r.get(f.name),!m)throw Rn(1,{location:f});L=m.record.name,E=be(As(h.params,m.keys.filter(P=>!P.optional).concat(m.parent?m.parent.keys.filter(P=>P.optional):[]).map(P=>P.name)),f.params&&As(f.params,m.keys.map(P=>P.name))),A=m.stringify(E)}else if(f.path!=null)A=f.path,m=n.find(P=>P.re.test(A)),m&&(E=m.parse(A),L=m.record.name);else{if(m=h.name?r.get(h.name):n.find(P=>P.re.test(h.path)),!m)throw Rn(1,{location:f,currentLocation:h});L=m.record.name,E=be({},h.params,f.params),A=m.stringify(E)}const g=[];let y=m;for(;y;)g.unshift(y.record),y=y.parent;return{name:L,path:A,params:E,matched:g,meta:up(g)}}e.forEach(f=>i(f));function v(){n.length=0,r.clear()}return{addRoute:i,resolve:u,removeRoute:s,clearRoutes:v,getRoutes:c,getRecordMatcher:o}}function As(e,t){const n={};for(const r of t)r in e&&(n[r]=e[r]);return n}function cp(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 zs(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function up(e){return e.reduce((t,n)=>be(t,n.meta),{})}function Ts(e,t){const n={};for(const r in e)n[r]=r in t?t[r]:e[r];return n}function vp(e,t){let n=0,r=t.length;for(;n!==r;){const i=n+r>>1;Fc(e,t[i])<0?r=i:n=i+1}const o=pp(e);return o&&(r=t.lastIndexOf(o,r-1)),r}function pp(e){let t=e;for(;t=t.parent;)if(Wc(t)&&Fc(e,t)===0)return t}function Wc({record:e}){return!!(e.name||e.components&&Object.keys(e.components).length||e.redirect)}function fp(e){const t={};if(e===""||e==="?")return t;const r=(e[0]==="?"?e.slice(1):e).split("&");for(let o=0;o<r.length;++o){const i=r[o].replace(Rc," "),s=i.indexOf("="),c=hr(s<0?i:i.slice(0,s)),d=s<0?null:hr(i.slice(s+1));if(c in t){let u=t[c];gt(u)||(u=t[c]=[u]),u.push(d)}else t[c]=d}return t}function Ls(e){let t="";for(let n in e){const r=e[n];if(n=R2(n),r==null){r!==void 0&&(t+=(t.length?"&":"")+n);continue}(gt(r)?r.map(i=>i&&la(i)):[r&&la(r)]).forEach(i=>{i!==void 0&&(t+=(t.length?"&":"")+n,i!=null&&(t+="="+i))})}return t}function hp(e){const t={};for(const n in e){const r=e[n];r!==void 0&&(t[n]=gt(r)?r.map(o=>o==null?null:""+o):r==null?r:""+r)}return t}const mp=Symbol(""),Ps=Symbol(""),Eo=Symbol(""),ri=Symbol(""),da=Symbol("");function qn(){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 Gt(e,t,n,r,o,i=s=>s()){const s=r&&(r.enterCallbacks[o]=r.enterCallbacks[o]||[]);return()=>new Promise((c,d)=>{const u=h=>{h===!1?d(Rn(4,{from:n,to:t})):h instanceof Error?d(h):Z2(h)?d(Rn(2,{from:t,to:h})):(s&&r.enterCallbacks[o]===s&&typeof h=="function"&&s.push(h),c())},v=i(()=>e.call(r&&r.instances[o],t,n,u));let f=Promise.resolve(v);e.length<3&&(f=f.then(u)),f.catch(h=>d(h))})}function $o(e,t,n,r,o=i=>i()){const i=[];for(const s of e)for(const c in s.components){let d=s.components[c];if(!(t!=="beforeRouteEnter"&&!s.instances[c]))if(_p(d)){const v=(d.__vccOpts||d)[t];v&&i.push(Gt(v,n,r,s,c,o))}else{let u=d();i.push(()=>u.then(v=>{if(!v)return Promise.reject(new Error(`Couldn't resolve component "${c}" at "${s.path}"`));const f=A2(v)?v.default:v;s.components[c]=f;const m=(f.__vccOpts||f)[t];return m&&Gt(m,n,r,s,c,o)()}))}}return i}function _p(e){return typeof e=="object"||"displayName"in e||"props"in e||"__vccOpts"in e}function ua(e){const t=me(Eo),n=me(ri),r=T(()=>{const d=ln(e.to);return t.resolve(d)}),o=T(()=>{const{matched:d}=r.value,{length:u}=d,v=d[u-1],f=n.matched;if(!v||!f.length)return-1;const h=f.findIndex(Vn.bind(null,v));if(h>-1)return h;const m=ws(d[u-2]);return u>1&&ws(v)===m&&f[f.length-1].path!==m?f.findIndex(Vn.bind(null,d[u-2])):h}),i=T(()=>o.value>-1&&Ep(n.params,r.value.params)),s=T(()=>o.value>-1&&o.value===n.matched.length-1&&Cc(n.params,r.value.params));function c(d={}){return gp(d)?t[ln(e.replace)?"replace":"push"](ln(e.to)).catch(nr):Promise.resolve()}return{route:r,href:T(()=>r.value.href),isActive:i,isExactActive:s,navigate:c}}const bp=k({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:ua,setup(e,{slots:t}){const n=gr(ua(e)),{options:r}=me(Eo),o=T(()=>({[Os(e.activeClass,r.linkActiveClass,"router-link-active")]:n.isActive,[Os(e.exactActiveClass,r.linkExactActiveClass,"router-link-exact-active")]:n.isExactActive}));return()=>{const i=t.default&&t.default(n);return e.custom?i:l("a",{"aria-current":n.isExactActive?e.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:o.value},i)}}}),Me=bp;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 Ep(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(!gt(o)||o.length!==r.length||r.some((i,s)=>i!==o[s]))return!1}return!0}function ws(e){return e?e.aliasOf?e.aliasOf.path:e.path:""}const Os=(e,t,n)=>e??t??n,yp=k({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(e,{attrs:t,slots:n}){const r=me(da),o=T(()=>e.route||r.value),i=me(Ps,0),s=T(()=>{let u=ln(i);const{matched:v}=o.value;let f;for(;(f=v[u])&&!f.components;)u++;return u}),c=T(()=>o.value.matched[s.value]);bt(Ps,T(()=>s.value+1)),bt(mp,c),bt(da,o);const d=J();return se(()=>[d.value,c.value,e.name],([u,v,f],[h,m,E])=>{v&&(v.instances[f]=u,m&&m!==v&&u&&u===h&&(v.leaveGuards.size||(v.leaveGuards=m.leaveGuards),v.updateGuards.size||(v.updateGuards=m.updateGuards))),u&&v&&(!m||!Vn(v,m)||!h)&&(v.enterCallbacks[f]||[]).forEach(A=>A(u))},{flush:"post"}),()=>{const u=o.value,v=e.name,f=c.value,h=f&&f.components[v];if(!h)return Ds(n.default,{Component:h,route:u});const m=f.props[v],E=m?m===!0?u.params:typeof m=="function"?m(u):m:null,L=l(h,be({},E,t,{onVnodeUnmounted:g=>{g.component.isUnmounted&&(f.instances[v]=null)},ref:d}));return Ds(n.default,{Component:L,route:u})||L}}});function Ds(e,t){if(!e)return null;const n=e(t);return n.length===1?n[0]:n}const Nc=yp;function Ap(e){const t=lp(e.routes,e),n=e.parseQuery||fp,r=e.stringifyQuery||Ls,o=e.history,i=qn(),s=qn(),c=qn(),d=$e(Vt);let u=Vt;mn&&e.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const v=Mo.bind(null,O=>""+O),f=Mo.bind(null,j2),h=Mo.bind(null,hr);function m(O,W){let C,K;return Bc(O)?(C=t.getRecordMatcher(O),K=W):K=O,t.addRoute(K,C)}function E(O){const W=t.getRecordMatcher(O);W&&t.removeRoute(W)}function A(){return t.getRoutes().map(O=>O.record)}function L(O){return!!t.getRecordMatcher(O)}function g(O,W){if(W=be({},W||d.value),typeof O=="string"){const z=Bo(n,O,W.path),w=t.resolve({path:z.path},W),D=o.createHref(z.fullPath);return be(z,w,{params:h(w.params),hash:hr(z.hash),redirectedFrom:void 0,href:D})}let C;if(O.path!=null)C=be({},O,{path:Bo(n,O.path,W.path).path});else{const z=be({},O.params);for(const w in z)z[w]==null&&delete z[w];C=be({},O,{params:f(z)}),W.params=f(W.params)}const K=t.resolve(C,W),de=O.hash||"";K.params=v(h(K.params));const _=M2(r,be({},O,{hash:V2(de),path:K.path})),b=o.createHref(_);return be({fullPath:_,hash:de,query:r===Ls?hp(O.query):O.query||{}},K,{redirectedFrom:void 0,href:b})}function y(O){return typeof O=="string"?Bo(n,O,d.value.path):be({},O)}function P(O,W){if(u!==O)return Rn(8,{from:W,to:O})}function x(O){return G(O)}function N(O){return x(be(y(O),{replace:!0}))}function R(O){const W=O.matched[O.matched.length-1];if(W&&W.redirect){const{redirect:C}=W;let K=typeof C=="function"?C(O):C;return typeof K=="string"&&(K=K.includes("?")||K.includes("#")?K=y(K):{path:K},K.params={}),be({query:O.query,hash:O.hash,params:K.path!=null?{}:O.params},K)}}function G(O,W){const C=u=g(O),K=d.value,de=O.state,_=O.force,b=O.replace===!0,z=R(C);if(z)return G(be(y(z),{state:typeof z=="object"?be({},de,z.state):de,force:_,replace:b}),W||C);const w=C;w.redirectedFrom=W;let D;return!_&&B2(r,K,C)&&(D=Rn(16,{to:w,from:K}),rt(K,K,!0,!1)),(D?Promise.resolve(D):M(w,K)).catch(I=>Dt(I)?Dt(I,2)?I:At(I):ce(I,w,K)).then(I=>
10{if(I){if(Dt(I,2))return G(be({replace:b},y(I.to),{state:typeof I.to=="object"?be({},de,I.to.state):de,force:_}),W||w)}else I=$(w,K,!0,b,de);return H(w,K,I),I})}function S(O,W){const C=P(O,W);return C?Promise.reject(C):Promise.resolve()}function Q(O){const W=Ot.values().next().value;return W&&typeof W.runWithContext=="function"?W.runWithContext(O):O()}function M(O,W){let C;const[K,de,_]=zp(O,W);C=$o(K.reverse(),"beforeRouteLeave",O,W);for(const z of K)z.leaveGuards.forEach(w=>{C.push(Gt(w,O,W))});const b=S.bind(null,O,W);return C.push(b),xe(C).then(()=>{C=[];for(const z of i.list())C.push(Gt(z,O,W));return C.push(b),xe(C)}).then(()=>{C=$o(de,"beforeRouteUpdate",O,W);for(const z of de)z.updateGuards.forEach(w=>{C.push(Gt(w,O,W))});return C.push(b),xe(C)}).then(()=>{C=[];for(const z of _)if(z.beforeEnter)if(gt(z.beforeEnter))for(const w of z.beforeEnter)C.push(Gt(w,O,W));else C.push(Gt(z.beforeEnter,O,W));return C.push(b),xe(C)}).then(()=>(O.matched.forEach(z=>z.enterCallbacks={}),C=$o(_,"beforeRouteEnter",O,W,Q),C.push(b),xe(C))).then(()=>{C=[];for(const z of s.list())C.push(Gt(z,O,W));return C.push(b),xe(C)}).catch(z=>Dt(z,8)?z:Promise.reject(z))}function H(O,W,C){c.list().forEach(K=>Q(()=>K(O,W,C)))}function $(O,W,C,K,de){const _=P(O,W);if(_)return _;const b=W===Vt,z=mn?history.state:{};C&&(K||b?o.replace(O.fullPath,be({scroll:b&&z&&z.scroll},de)):o.push(O.fullPath,de)),d.value=O,rt(O,W,C,b),At()}let ee;function U(){ee||(ee=o.listen((O,W,C)=>{if(!zt.listening)return;const K=g(O),de=R(K);if(de){G(be(de,{replace:!0}),K).catch(nr);return}u=K;const _=d.value;mn&&q2(_s(_.fullPath,C.delta),go()),M(K,_).catch(b=>Dt(b,12)?b:Dt(b,2)?(G(b.to,K).then(z=>{Dt(z,20)&&!C.delta&&C.type===mr.pop&&o.go(-1,!1)}).catch(nr),Promise.reject()):(C.delta&&o.go(-C.delta,!1),ce(b,K,_))).then(b=>{b=b||$(K,_,!1),b&&(C.delta&&!Dt(b,8)?o.go(-C.delta,!1):C.type===mr.pop&&Dt(b,20)&&o.go(-1,!1)),H(K,_,b)}).catch(nr)}))}let De=qn(),re=qn(),fe;function ce(O,W,C){At(O);const K=re.list();return K.length?K.forEach(de=>de(O,W,C)):console.error(O),Promise.reject(O)}function ke(){return fe&&d.value!==Vt?Promise.resolve():new Promise((O,W)=>{De.add([O,W])})}function At(O){return fe||(fe=!O,U(),De.list().forEach(([W,C])=>O?C(O):W()),De.reset()),O}function rt(O,W,C,K){const{scrollBehavior:de}=e;if(!mn||!de)return Promise.resolve();const _=!C&&U2(_s(O.fullPath,0))||(K||!C)&&history.state&&history.state.scroll||null;return Bn().then(()=>de(O,W,_)).then(b=>b&&G2(b)).catch(b=>ce(b,O,W))}const Ce=O=>o.go(O);let Xe;const Ot=new Set,zt={currentRoute:d,listening:!0,addRoute:m,removeRoute:E,clearRoutes:t.clearRoutes,hasRoute:L,getRoutes:A,resolve:g,options:e,push:x,replace:N,go:Ce,back:()=>Ce(-1),forward:()=>Ce(1),beforeEach:i.add,beforeResolve:s.add,afterEach:c.add,onError:re.add,isReady:ke,install(O){const W=this;O.component("RouterLink",Me),O.component("RouterView",Nc),O.config.globalProperties.$router=W,Object.defineProperty(O.config.globalProperties,"$route",{enumerable:!0,get:()=>ln(d)}),mn&&!Xe&&d.value===Vt&&(Xe=!0,x(o.location).catch(de=>{}));const C={};for(const de in Vt)Object.defineProperty(C,de,{get:()=>d.value[de],enumerable:!0});O.provide(Eo,W),O.provide(ri,ll(C)),O.provide(da,d);const K=O.unmount;Ot.add(O),O.unmount=function(){Ot.delete(O),Ot.size<1&&(u=Vt,ee&&ee(),ee=null,d.value=Vt,Xe=!1,fe=!1),K()}}};function xe(O){return O.reduce((W,C)=>W.then(()=>Q(C)),Promise.resolve())}return zt}function zp(e,t){const n=[],r=[],o=[],i=Math.max(t.matched.length,e.matched.length);for(let s=0;s<i;s++){const c=t.matched[s];c&&(e.matched.find(u=>Vn(u,c))?r.push(c):n.push(c));const d=e.matched[s];d&&(t.matched.find(u=>Vn(u,d))||o.push(d))}return[n,r,o]}function He(){return me(Eo)}function yt(e){return me(ri)}const Tp=({headerLinkSelector:e,headerAnchorSelector:t,delay:n,offset:r=5})=>{const o=He(),s=Ic(()=>{var A,L;const c=Math.max(window.scrollY,document.documentElement.scrollTop,document.body.scrollTop);if(Math.abs(c-0)<r){xs(o,"");return}const u=window.innerHeight+c,v=Math.max(document.documentElement.scrollHeight,document.body.scrollHeight),f=Math.abs(v-u)<r,h=Array.from(document.querySelectorAll(e)),E=Array.from(document.querySelectorAll(t)).filter(g=>h.some(y=>y.hash===g.hash));for(let g=0;g<E.length;g++){const y=E[g],P=E[g+1],x=c>=(((A=y.parentElement)==null?void 0:A.offsetTop)??0)-r,N=!P||c<(((L=P.parentElement)==null?void 0:L.offsetTop)??0)-r;if(!(x&&N))continue;const G=decodeURIComponent(o.currentRoute.value.hash),S=decodeURIComponent(y.hash);if(G===S)return;if(f){for(let Q=g+1;Q<E.length;Q++)if(G===decodeURIComponent(E[Q].hash))return}xs(o,S);return}},n);_e(()=>{window.addEventListener("scroll",s)}),$a(()=>{window.removeEventListener("scroll",s)})},xs=async(e,t)=>{const{scrollBehavior:n}=e.options;e.options.scrollBehavior=void 0,await e.replace({query:e.currentRoute.value.query,hash:t,force:!0}).finally(()=>e.options.scrollBehavior=n)},Lp=".sidebar-link, .toc-link",Pp=".header-anchor",wp=200,Op=5,Dp=ut({setup(){Tp({headerLinkSelector:Lp,headerAnchorSelector:Pp,delay:wp,offset:Op})}});let Hc=()=>null;const Jc=Symbol(""),xp=e=>{Hc=e},Ip=()=>me(Jc),Vp=e=>{e.provide(Jc,Hc)};var Rp=k({name:"AutoCatalog",props:{base:{type:String,default:""},level:{type:Number,default:3},index:Boolean},setup(e){const t=Ip(),n=Lr({"/zh/":{title:"目录",empty:"暂无目录"},"/":{title:"Catalog",empty:"No catalog"}}),r=pe(),o=He(),i=tc(),s=u=>{const v=u.I;return typeof v>"u"||v},c=()=>{const u=e.base||r.value.path.replace(/\/[^/]+$/,"/"),v=o.getRoutes(),f=[];return v.filter(({meta:h,path:m})=>
10{if(!vr(m,u)||m===u)return!1;if(u==="/"){const E=nt(i.value.locales).filter(A=>A!=="/");if(m==="/404.html"||E.some(A=>vr(m,A)))return!1}return(fn(m,".html")&&!fn(m,"/index.html")||fn(m,"/"))&&s(h)}).map(({path:h,meta:m})=>{const E=h.substring(u.length).split("/").length;return{title:m.t||"",icon:m.i,base:h.replace(/\/[^/]+\/?$/,"/"),order:m.O||null,level:fn(h,"/")?E-1:E,path:h}}).filter(({title:h,level:m})=>h&&m<=e.level).sort(({title:h,level:m,path:E,order:A},{title:L,level:g,path:y,order:P})=>m-g||(fn(E,"/index.html")?-1:fn(y,"/index.html")?1:A===null?P===null?h.localeCompare(L):P:P===null?A:A>0?P>0?A-P:-1:P<0?A-P:1)).forEach(h=>{var m;const{base:E,level:A}=h;switch(A){case 1:f.push(h);break;case 2:{const L=f.find(g=>g.path===E);L&&(L.children??(L.children=[])).push(h);break}default:{const L=f.find(g=>g.path===E.replace(/\/[^/]+\/$/,"/"));if(L){const g=(m=L.children)==null?void 0:m.find(y=>y.path===E);g&&(g.children??(g.children=[])).push(h)}}}}),f},d=T(()=>c());return()=>l("div",{class:"vp-catalog"},[l("h2",{class:"vp-catalog-main-title"},n.value.title),d.value.length?d.value.map(({children:u=[],icon:v,path:f,title:h},m)=>[l("h3",{id:h,class:["vp-catalog-child-title",{"has-children":u.length}]},[l("a",{href:`#${h}`,class:"header-anchor","aria-hidden":!0},"#"),l(Me,{class:"vp-catalog-title",to:f},()=>[e.index?`${m+1}.`:null,v&&t?l(t,{icon:v}):null,h||f])]),u.length?l("ul",{class:"vp-catalog-child-catalogs"},u.map(({children:E=[],icon:A,path:L,title:g},y)=>l("li",{class:"vp-child-catalog"},[l("div",{class:["vp-catalog-sub-title",{"has-children":E.length}]},[l("a",{href:`#${g}`,class:"header-anchor"},"#"),l(Me,{class:"vp-catalog-title",to:L},()=>[e.index?`${m+1}.${y+1}`:null,A&&t?l(t,{icon:A}):null,g||L])]),E.length?l("div",{class:"v-sub-catalogs"},E.map(({icon:P,path:x,title:N},R)=>l(Me,{class:"vp-sub-catalog",to:x},()=>[e.index?`${m+1}.${y+1}.${R+1}`:null,P&&t?l(t,{icon:P}):null,N||x]))):null]))):null]):l("p",{class:"vp-empty-catalog"},n.value.empty)])}}),Sp=ut({enhance:({app:e})=>{Vp(e),St("AutoCatalog",e)||e.component("AutoCatalog",Rp)}});const jp=l("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"},[l("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"}),l("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"})]),Gc=k({name:"ExternalLinkIcon",props:{locales:{type:Object,required:!1,default:()=>({})}},setup(e){const t=Et(),n=T(()=>e.locales[t.value]??{openInNewWindow:"open in new window"});return()=>l("span",[jp,l("span",{class:"external-link-icon-sr-only"},n.value.openInNewWindow)])}}),kp={},Cp=ut({enhance({app:e}){e.component("ExternalLinkIcon",l(Gc,{locales:kp}))}});/**
11 * NProgress, (c) 2013, 2014 Rico Sta. Cruz - http://ricostacruz.com/nprogress
12 * @license MIT
13 */const ue={settings:{minimum:.08,easing:"ease",speed:200,trickle:!0,trickleRate:.02,trickleSpeed:800,barSelector:'[role="bar"]',parent:"body",template:'<div class="bar" role="bar"></div>'},status:null,set:e=>{const t=ue.isStarted();e=Fo(e,ue.settings.minimum,1),ue.status=e===1?null:e;const n=ue.render(!t),r=n.querySelector(ue.settings.barSelector),o=ue.settings.speed,i=ue.settings.easing;return n.offsetWidth,Mp(s=>{Jr(r,{transform:"translate3d("+Is(e)+"%,0,0)",transition:"all "+o+"ms "+i}),e===1?(Jr(n,{transition:"none",opacity:"1"}),n.offsetWidth,setTimeout(function(){Jr(n,{transition:"all "+o+"ms linear",opacity:"0"}),setTimeout(function(){ue.remove(),s()},o)},o)):setTimeout(()=>s(),o)}),ue},isStarted:()=>typeof ue.status=="number",start:()=>{ue.status||ue.set(0);const e=()=>{setTimeout(()=>{ue.status&&(ue.trickle(),e())},ue.settings.trickleSpeed)};return ue.settings.trickle&&e(),ue},done:e=>!e&&!ue.status?ue:ue.inc(.3+.5*Math.random()).set(1),inc:e=>{let t=ue.status;return t?(typeof e!="number"&&(e=(1-t)*Fo(Math.random()*t,.1,.95)),t=Fo(t+e,0,.994),ue.set(t)):ue.start()},trickle:()=>ue.inc(Math.random()*ue.settings.trickleRate),render:e=>{if(ue.isRendered())return document.getElementById("nprogress");Vs(document.documentElement,"nprogress-busy");const t=document.createElement("div");t.id="nprogress",t.innerHTML=ue.settings.template;const n=t.querySelector(ue.settings.barSelector),r=e?"-100":Is(ue.status||0),o=document.querySelector(ue.settings.parent);return Jr(n,{transition:"all 0 linear",transform:"translate3d("+r+"%,0,0)"}),o!==document.body&&Vs(o,"nprogress-custom-parent"),o==null||o.appendChild(t),t},remove:()=>{Rs(document.documentElement,"nprogress-busy"),Rs(document.querySelector(ue.settings.parent),"nprogress-custom-parent");const e=document.getElementById("nprogress");e&&Bp(e)},isRendered:()=>!!document.getElementById("nprogress")},Fo=(e,t,n)=>e<t?t:e>n?n:e,Is=e=>(-1+e)*100,Mp=function(){const e=[];function t(){const n=e.shift();n&&n(t)}return function(n){e.push(n),e.length===1&&t()}}(),Jr=function(){const e=["Webkit","O","Moz","ms"],t={};function n(s){return s.replace(/^-ms-/,"ms-").replace(/-([\da-z])/gi,function(c,d){return d.toUpperCase()})}function r(s){const c=document.body.style;if(s in c)return s;let d=e.length;const u=s.charAt(0).toUpperCase()+s.slice(1);let v;for(;d--;)if(v=e[d]+u,v in c)return v;return s}function o(s){return s=n(s),t[s]??(t[s]=r(s))}function i(s,c,d){c=o(c),s.style[c]=d}return function(s,c){for(const d in c){const u=c[d];u!==void 0&&Object.prototype.hasOwnProperty.call(c,d)&&i(s,d,u)}}}(),qc=(e,t)=>(typeof e=="string"?e:oi(e)).indexOf(" "+t+" ")>=0,Vs=(e,t)=>{const n=oi(e),r=n+t;qc(n,t)||(e.className=r.substring(1))},Rs=(e,t)=>{const n=oi(e);if(!qc(e,t))return;const r=n.replace(" "+t+" "," ");e.className=r.substring(1,r.length-1)},oi=e=>(" "+(e.className||"")+" ").replace(/\s+/gi," "),Bp=e=>{e&&e.parentNode&&e.parentNode.removeChild(e)};const $p=()=>{_e(()=>{const e=He(),t=new Set;t.add(e.currentRoute.value.path),e.beforeEach(n=>{t.has(n.path)||ue.start()}),e.afterEach(n=>{t.add(n.path),ue.done()})})},Fp=ut({setup(){$p()}}),Wp=JSON.parse(`{"encrypt":{},"author":{"name":"Harry Xiong","url":"https://harryxiong24.github.io"},"logo":"/logo.png","repo":"https://github.com/HarryXiong24/HarryXiong24.github.io","repoDisplay":true,"docsDir":"src","navbarLayout":{"start":["Brand"],"center":["Links"],"end":["Language","Outlook","Repo"]}
13,"locales":{"/zh/":{"lang":"zh-CN","navbarLocales":{"langName":"简体中文","selectLangAriaLabel":"选择语言"},"metaLocales":{"author":"作者","date":"写作日期","origin":"原创","views":"访问量","category":"分类","tag":"标签","readingTime":"阅读时间","words":"字数","toc":"此页内容","prev":"上一页","next":"下一页","lastUpdated":"上次编辑于","contributors":"贡献者","editLink":"编辑此页","print":"打印"},"blogLocales":{"article":"文章","articleList":"文章列表","category":"分类","tag":"标签","timeline":"时间轴","timelineTitle":"昨日不在","all":"全部","intro":"个人介绍","star":"收藏"},"paginationLocales":{"prev":"上一页","next":"下一页","navigate":"跳转到","action":"前往","errorText":"请输入 1 到 $page 之前的页码!"},"outlookLocales":{"themeColor":"主题色","darkmode":"外观","fullscreen":"全屏"},"routeLocales":{"skipToContent":"跳至主要內容","notFoundTitle":"页面不存在","notFoundMsg":["这里什么也没有","我们是怎么来到这儿的?","这 是 四 零 四 !","看起来你访问了一个失效的链接"],"back":"返回上一页","home":"带我回家","openInNewWindow":"Open in new window"},"navbar":["/zh/",{"text":"文章","icon":"article","children":[{"text":"React 函数式组件 vs 类组件","link":"/zh/article/react-function-component"},{"text":"上手 Mobx","link":"/zh/article/mobx"},{"text":"一文搞懂 Webpack 热更新原理","link":"/zh/article/webpack-hot-fresh"},{"text":"一文总结 Javascript 中的遍历方式","link":"/zh/article/js-traversal"},{"text":"给你的库或框架设计一个通用错误处理模型","link":"/zh/article/error-modal"}]},{"text":"随笔","icon":"exercise","children":[{"text":"写在前面","link":"/zh/poem"},{"text":"诗集","link":"/zh/poem/my-poem"},{"text":"随写","link":"/zh/poem/essay"}]},{"text":"学习笔记","icon":"note","children":[{"text":"Web 前端","link":"/zh/front-end","icon":"code"},{"text":"Web 后台","link":"/zh/back-end","icon":"software"},{"text":"计算机基础系列","link":"/zh/computer-basic","icon":"computer"},{"text":"Python","icon":"python","link":"/zh/python"},{"text":"Markdown","link":"/zh/markdown/markdown","icon":"markdown"},{"text":"JSON","link":"/zh/json/json","icon":"json"},{"text":"YAML","link":"/zh/yaml/yaml","icon":"yaml"},{"text":"Git","link":"/zh/git","icon":"git"},{"text":"VSCode","link":"/zh/vscode","icon":"vscode"}]},{"text":"关于我","icon":"profile","children":[{"text":"About Me","icon":"info","link":"/zh/about-me/intro"},{"text":"联系我","icon":"community","link":"/zh/about-me/contact"}]}],"sidebar":{"/zh/article/":["react-function-component","mobx","webpack-hot-fresh","js-traversal","error-modal"],"/zh/about-me/":["intro","contact"],"/zh/poem/":["",{"text":"诗集","icon":"flower","collapsible":false,"prefix":"my-poem/","children":["蒲公","萤火","我十七","收录第一次填词"]},{"text":"随写","icon":"flower","collapsible":false,"prefix":"essay/","children":["致毕业"]}],"/zh/front-end":[{"text":"前端总述","icon":"sort","link":"/zh/front-end/preface"},{"text":"Basic","children":[{"text":"HTML & CSS","link":"/zh/front-end/html-css/html","icon":"html"},{"text":"Less & Scss","link":"/zh/front-end/pre-css/sass","icon":"css"},{"text":"JavaScript","link":"/zh/front-end/js-es/js/","icon":"javascript"},{"text":"ES6","link":"/zh/front-end/js-es/es6/","icon":"es6"},{"text":"DOM & BOM","link":"/zh/front-end/dom-bom/","icon":"tree"},{"text":"Data Storage","link":"/zh/front-end/data-storage/data-storage","icon":"storage"},{"text":"Ajax","link":"/zh/front-end/ajax/ajax","icon":"ajax"}]},{"text":"Advanced","children":[{"text":"JS & E6 进阶","link":"/zh/front-end/advanced-js/","icon":"javascript"},{"text":"TypeScript","link":"/zh/front-end/typescript/","icon":"typescript"},{"text":"Webpack","link":"/zh/front-end/webpack/webpack","icon":"file"},{"text":"Vue2","link":"/zh/front-end/vue/","icon":"vue"}]},{"text":"In Depth","children":[{"text":"浏览器渲染原理与性能优化","link":"/zh/front-end/in-depth/browser","icon":"chrome"},{"text":"虚拟 DOM 与 Diff 算法","link":"/zh/front-end/virtual-dom/","icon":"app"},{"text":"Http 与 Https","link":"/zh/front-end/in-depth/https","icon":"link"},{"text":"Interview","link":"/zh/front-end/in-depth/interview","icon":"link"}]},{"text":"Outdated","children":[{"text":"jQuery","link":"/zh/front-end/jquery/","icon":"jQuery"}]}],"/zh/front-end/html-css/":["html","css","hint","advanced-html"],"/zh/front-end/pre-css/":["sass","less","bootstrap","hint"],"/zh/front-end/js-es/js/":[{"text":"JavaScript","icon":"javascript","collapsible":false,"children":["","js1","js2","js3","js4","js5","js6","js7","js8","js9","js10","js11","js12","js13","js14","js15","js16","js17","js18","js19","js20","js21","js22","js23","js24"]}],"/zh/front-end/js-es/es6/":[{"text":"ES6","icon":"es6","collapsible":false,"children":["","intro","let","destructuring","string","regex","number","function","array","object","symbol","set-map","proxy","reflect","promise","iterator","generator","generator-async","async","class","class-extends","decorator","module","module-loader","style","spec","arraybuffer"]}],"/zh/front-end/dom-bom/":[{"text":"DOM & BOM","icon":"tree","collapsible":false,"children":["","db1","db2","db3","db4","db5","db6","db7","db8","db9","db10","db11","db12","db13"]}],"/zh/front-end/data-storage/":["data-storage"],"/zh/front-end/ajax/":["ajax"],"/zh/front-end/advanced-js/":[{"text":"JS & ES进阶教程","icon":"js","collapsible":false,"children":["","jses2","jses3","jses4","jses5","jses6","
13jses7","jses8","jses9","jses10","jses11","jses12","jses13","jses14","jses15","jses16","jses17","jses18","jses19","jses20","jses21","jses22","jses23","jses24","jses25","jses26"]}],"/zh/front-end/typescript/":["",{"text":"TS 介绍","icon":"typescript","collapsible":false,"prefix":"intro/","children":["what-is-typescript","get-typescript","hello-typescript"]},{"text":"TS 基础教程","icon":"typescript","collapsible":false,"prefix":"basics/","children":["primitive-data-types","any","type-inference","union-types","type-of-object-interfaces","type-of-array","type-assertion","declaration-files","built-in-objects"]},{"text":"TS 进阶教程","icon":"typescript","prefix":"advanced/","children":["","type-aliases","string-literal-types","tuple","enum","class","class-and-interfaces","generics","declaration-merging","further-reading"]},{"text":"TS 工程","icon":"typescript","prefix":"engineering/","children":["","lint"]}],"/zh/front-end/webpack/":["webpack"],"/zh/front-end/vue/":[{"text":"Vue","icon":"vue","collapsible":false,"children":["","vue1","vue2","vue3","vue4","vue5","vue6","vue7","vue8","vue9","vue10","vue11","vue12","vue13","vue14","vue15","vue16","vue17","vue18"]}],"/zh/front-end/jquery/":[{"text":"jQuery","icon":"jQuery","collapsible":false,"children":["","intro","selector","operate-dom","modify-dom","event","animation","ajax","extend"]}],"/zh/front-end/in-depth/":["","browser","https","interview"],"/zh/front-end/virtual-dom/":[{"text":"虚拟 DOM 与 Diff 算法","icon":"tree","collapsible":false,"children":["","VirtualDOM","DOMDiff"]}],"/zh/back-end":[{"text":"后台总述","icon":"sort","link":"/zh/back-end/preface"},{"text":"Node 系列","children":[{"text":"Express","link":"/zh/back-end/express/express"}]},{"text":"服务器系列","children":[{"text":"Apache","link":"/zh/back-end/apache/apache","icon":"Apache"},{"text":"Nginx","link":"/zh/back-end/nginx/nginx","icon":"nginx"}]},{"text":"Outdated","children":[{"text":"Servlet & JSP","link":"/zh/back-end/servlet"}]}],"/zh/back-end/express/":["express"],"/zh/back-end/servlet/":[{"text":"Servlet & JSP","icon":"java","collapsible":false,"children":["","s1","s2","s3","s4","s5","s6","s7","s8","s9","s10","s11"]}],"/zh/back-end/apache/":["apache"],"/zh/back-end/nginx/":["nginx"],"/zh/computer-basic":[{"text":"计算机基础","children":[{"text":"计算机基础","link":"/zh/computer-basic","icon":"computer"},{"text":"信息安全理论与技术","link":"/zh/computer-basic/information-security/information-security","icon":"safe"}]},{"text":"OS","children":[{"text":"Windows","link":"/zh/computer-basic/windows/","icon":"windows"},{"text":"Linux","link":"/zh/computer-basic/linux/","icon":"linux"}]}],"/zh/computer-basic/basic/":["","OS","file-extension","encoding"],"/zh/computer-basic/information-security/":["information-security"],"/zh/computer-basic/windows/":[{"text":"Windows","icon":"windows","collapsible":false,"children":["","shortcutKey","addPath","cmd"]}],"/zh/computer-basic/linux/":["",{"text":"简介","icon":"infofill","collapsible":false,"prefix":"intro/","children":["intro","history","language","advantage","desktop"]},{"text":"文件结构","icon":"file","collapsible":false,"prefix":"file/","children":["file","dir","mount"]},{"text":"命令","icon":"program","collapsible":false,"prefix":"command/","children":["command","dir","file","other","add","excu","path"]},{"text":"ubuntu","icon":"ubuntu","collapsible":false,"prefix":"ubuntu/","children":["manage","debug","webserver","lang"]},"centos","WSL","ssh"],"/zh/python/":["","intro","install","interpreter",{"text":"基础教程","icon":"creative","collapsible":false,"prefix":"guide/","children":["write","io","basic","string","listAndTuple","condition","loop","dictAndSet"]},{"text":"函数","icon":"function","collapsible":false,"prefix":"function/","children":["intro","define","call","argument","recursive"]},{"text":"高级语法","icon":"advance","collapsible":false,"prefix":"advance/","children":["slice","iteration","list-comprehe
13nsions","generator","iterator"]},{"text":"函数式编程","icon":"function","collapsible":false,"prefix":"functional-programming/","children":["",{"text":"高阶函数","icon":"function","collapsible":false,"prefix":"high-order-function/","children":["intro","map-and-reduce","filter","sorted"]}]}],"/zh/markdown/":["markdown"],"/zh/json/":["json"],"/zh/yaml/":["yaml"],"/zh/git/":[{"text":"Git","icon":"git","collapsible":false,"children":["","install","whatIsGit","createRepository","statusView","backRoll","workingDirectory","change","remote","branch","tag","customGit","github","github/github-pages"]}],"/zh/vscode/":[{"text":"VSCode","icon":"vscode","collapsible":false,"children":["","install","shortcutKey","vscodeSettings","vscodeExtension"]}]},"footer":"","copyright":"","blog":{"description":"A piano player playing on the keyboard","intro":"/zh/about-me/intro","medias":{"GitHub":"https://github.com/HarryXiong24","Gmail":"mailto:[email protected]","Instagram":"https://www.instagram.com/harryxiong24","BiliBili":"https://space.bilibili.com/381730331","Linkedin":"https://www.linkedin.com/in/haoweixiong/"}}},"/":{"lang":"en-US","navbarLocales":{"langName":"English","selectLangAriaLabel":"Select language"},"metaLocales":{"author":"Author","date":"Writing Date","origin":"Original","views":"Page views","category":"Category","tag":"Tag","readingTime":"Reading Time","words":"Words","toc":"On This Page","prev":"Prev","next":"Next","lastUpdated":"Last update","contributors":"Contributors","editLink":"Edit this page","print":"Print"},"blogLocales":{"article":"Articles","articleList":"Article List","category":"Category","tag":"Tag","timeline":"Timeline","timelineTitle":"Yesterday Once More!","all":"All","intro":"Personal Intro","star":"Star"},"paginationLocales":{"prev":"Prev","next":"Next","navigate":"Jump to","action":"Go","errorText":"Please enter a number between 1 and $page !"},"outlookLocales":{"themeColor":"Theme Color","darkmode":"Theme Mode","fullscreen":"Full Screen"},"routeLocales":{"skipToContent":"Skip to main content","notFoundTitle":"Page not found","notFoundMsg":["There’s nothing here.","How did we get here?","That’s a Four-Oh-Four.","Looks like we've got some broken links."],"back":"Go back","home":"Take me home","openInNewWindow":"Open in new window"},"navbar":["/",{"text":"Article","icon":"article","children":[{"text":"Recursion","link":"/en/article/recursion"},{"text":"Sort Algorithm","link":"/en/article/sort-algorithm"},{"text":"Stack and Queue & DFS and BFS","link":"/en/article/dfs-and-bfs"},{"text":"Graph","link":"/en/article/graph"}]},{"text":"About Me","icon":"profile","children":[{"text":"About Me","icon":"info","link":"/en/about-me/intro"},{"text":"Contact Me","icon":"community","link":"/en/about-me/contact"},{"text":"Notice","icon":"notice","link":"/en/about-me/notice"}]}],"sidebar":{"/en/about-me/":["intro","contact","notice"],"/en/article/":["recursion","sort-algorithm","dfs-and-bfs","graph"]},"footer":"","copyright":"","blog":{"description":"A piano player playing on the keyboard","intro":"/en/about-me/intro","medias":{"GitHub":"https://github.com/HarryXiong24","Gmail":"mailto:[email protected]","Instagram":"https://www.instagram.com/harryxiong24","BiliBili":"https://space.bilibili.com/381730331","Linkedin":"https://www.linkedin.com/in/haoweixiong/"}}}},"displayFooter":true,"copyright":"Copyright © 2021-present Harry Xiong","fullscreen":true}`),Np=J(Wp),Uc=()=>Np,Kc=Symbol(""),Hp=()=>{const e=me(Kc);if(!e)throw new Error("useThemeLocaleData() is called without provider.");return e},Jp=(e,t)=>{const{locales:n,...r}=e;return{...r,...n==null?void 0:n[t]}},Gp=ut({enhance({app:e}){const t=Uc(),n=e._context.provides[Ua],r=T(()=>Jp(t.value,n.value));e.provide(Kc,r),Object.defineProperties(e.config.globalProperties,{$theme:{get(){return t.value}},$themeLocale:{get(){return r.value}}})}});const qp=800,Up=2e3,Kp={"/zh/":{copy:"复制代码",copied:"已复制",hint:"复制成功"},"/":{copy:"Copy code",copied:"Copied",hint:"Copied successfully"}},Qp=!1,Xp=['.theme-hope-content div[class*="language-"] pre'],Ss=!1,Wo=new Map,Yp=()=>{const{copy:e}=a2({legacy:!0}),t=Lr(Kp),n=pe(),r=kv(),o=c=>{if(!c.hasAttribute("copy-code-registered")){const d=document.createElement("button");d.type="button",d.classList.add("copy-code-button"),d.innerHTML='<div class="copy-icon" />',d.setAttribute("aria-label",t.value.copy),d.setAttribute("data-copied",t.value.copied),c.parentElement&&c.parentElement.insertBefore(d,c),c.setAttribute("copy-code-registered","")}},i=()=>Bn().then(()=>new Promise(c=>{setTimeout(()=>
13{Xp.forEach(d=>{document.querySelectorAll(d).forEach(o)}),c()},qp)})),s=(c,d,u)=>{let{innerText:v=""}=d;/language-(shellscript|shell|bash|sh|zsh)/.test(c.classList.toString())&&(v=v.replace(/^ *(\$|>) /gm,"")),e(v).then(()=>{u.classList.add("copied"),clearTimeout(Wo.get(u));const f=setTimeout(()=>{u.classList.remove("copied"),u.blur(),Wo.delete(u)},Up);Wo.set(u,f)})};_e(()=>{(!r.value||Ss)&&i(),Re("click",c=>{const d=c.target;if(d.matches('div[class*="language-"] > button.copy')){const u=d.parentElement,v=d.nextElementSibling;v&&s(u,v,d)}else if(d.matches('div[class*="language-"] div.copy-icon')){const u=d.parentElement,v=u.parentElement,f=u.nextElementSibling;f&&s(v,f,u)}}),se(()=>n.value.path,()=>{(!r.value||Ss)&&i()})})};var Zp=ut({setup:()=>{Yp()}});const Gr=Pc("VUEPRESS_CODE_TAB_STORE",{});var ef=k({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=J(e.active),r=$e([]),o=()=>{e.tabId&&(Gr.value[e.tabId]=e.data[n.value].id)},i=(u=n.value)=>{n.value=u<r.value.length-1?u+1:0,r.value[n.value].focus()},s=(u=n.value)=>{n.value=u>0?u-1:r.value.length-1,r.value[n.value].focus()},c=(u,v)=>{u.key===" "||u.key==="Enter"?(u.preventDefault(),n.value=v):u.key==="ArrowRight"?(u.preventDefault(),i()):u.key==="ArrowLeft"&&(u.preventDefault(),s()),e.tabId&&(Gr.value[e.tabId]=e.data[n.value].id)},d=()=>{if(e.tabId){const u=e.data.findIndex(({id:v})=>Gr.value[e.tabId]===v);if(u!==-1)return u}return e.active};return _e(()=>{n.value=d(),se(()=>Gr.value[e.tabId],(u,v)=>{if(e.tabId&&u!==v){const f=e.data.findIndex(({id:h})=>h===u);f!==-1&&(n.value=f)}})}),()=>e.data.length?l("div",{class:"vp-code-tabs"},[l("div",{class:"vp-code-tabs-nav",role:"tablist"},e.data.map(({id:u},v)=>{const f=v===n.value;return l("button",{type:"button",ref:h=>{h&&(r.value[v]=h)},class:["vp-code-tab-nav",{active:f}],role:"tab","aria-controls":`codetab-${e.id}-${v}`,"aria-selected":f,onClick:()=>{n.value=v,o()},onKeydown:h=>c(h,v)},t[`title${v}`]({value:u,isActive:f}))})),e.data.map(({id:u},v)=>{const f=v===n.value;return l("div",{class:["vp-code-tab",{active:f}],id:`codetab-${e.id}-${v}`,role:"tabpanel","aria-expanded":f},t[`tab${v}`]({value:u,isActive:f}))})]):null}});const tf=()=>l(ae,{name:"back"},()=>l("path",{d:"M1014.749 449.156v125.688H260.626l345.64 345.64-89.239 89.237L19.307 512l497.72-497.721 89.238 89.238-345.64 345.64h754.124z"})),nf=()=>l(ae,{name:"home"},()=>l("path",{d:"M780.106 420.978L506.994 147.866 233.882 420.978h.045v455.11H780.06v-455.11h.046zm90.977 90.976V876.09a91.022 91.022 0 01-91.023 91.022H233.927a91.022 91.022 0 01-91.022-91.022V511.954l-67.22 67.175-64.307-64.307 431.309-431.31c35.498-35.498 93.115-35.498 128.614 0l431.309 431.31-64.307 64.307L871.083 512z"})),rf='<svg class="codepen-icon" viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path d="M123.429 668L468 897.714V692.571L277.143 565.143zM88 585.714L198.286 512 88 438.286v147.428zm468 312L900.571 668 746.857 565.143 556 692.57v205.143zM512 616l155.429-104L512 408 356.571 512zM277.143 458.857L468 331.43V126.286L123.429 356zM825.714 512L936 585.714V438.286zm-78.857-53.143L900.571 356 556 126.286v205.143zM1024 356v312q0 23.429-19.429 36.571l-468 312Q524.571 1024 512 1024t-24.571-7.429l-468-312Q0 691.43 0 668V356q0-23.429 19.429-36.571l468-312Q499.429 0 512 0t24.571 7.429l468 312Q1024 332.57 1024 356z"/></svg>',of='<svg class="jsfiddle-icon" viewBox="0 0 1170 1024" xmlns="http://www.w3.org/2000/svg"><path d="M1028.571 441.143q63.429 26.286 102.572 83.143t39.143 126.571q0 93.714-67.429 160.286T940 877.714q-2.286 0-6.571-.285t-6-.286H232q-97.143-5.714-164.571-71.714T0 645.143q0-62.857 31.429-116t84-84q-6.858-22.286-6.858-46.857 0-65.715 46.858-112T269.143 240q54.286 0 98.286 33.143 42.857-88 127.142-141.714t186.572-53.715q94.857 0 174.857 46t126.571 124.857 46.572 172q0 3.429-.286 10.286t-.286 10.286zm-761.142 152q0 69.714 48 110.286T434.286 744q78.285 0 137.143-56.571-9.143-11.429-27.143-32.286t-24.857-28.857q-38.286 37.143-82.286 37.143-31.429 0-53.429-19.143t-22-50q0-30.286 22-49.715T436 525.143q25.143 0 48.286 12T526 568.57t37.143 42.858 39.428 46.857 44 42.857T702 732.57t69.429 12q
1369.142 0 116.857-40.857T936 594.857q0-69.143-48-109.714T769.714 444.57Q688 444.571 632 500l53.143 61.714q37.714-36.571 81.143-36.571 29.714 0 52.571 18.857t22.857 48q0 32.571-21.143 52.286T766.857 664q-24.571 0-47.143-12t-41.143-31.429-37.428-42.857-39.714-46.857T557.143 488 502 456.571t-67.714-12q-69.715 0-118.286 40.286t-48.571 108.286z"/></svg>';const No={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"},js={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"}}},af=(e,t,n)=>{const r=document.createElement(e);return fo(t)&&nt(t).forEach(o=>{if(o.indexOf("data"))r[o]=t[o];else{const i=o.replace("data","");r.dataset[i]=t[o]}}),n&&n.forEach(o=>{r.appendChild(o)}),r},ai=e=>({...No,...e,jsLib:Array.from(new Set([...No.jsLib||[],...e.jsLib||[]])),cssLib:Array.from(new Set([...No.cssLib||[],...e.cssLib||[]]))}),Tn=(e,t)=>{if(e[t]!==void 0)return e[t];const n=new Promise(r=>{var o;const i=document.createElement("script");i.src=t,(o=document.querySelector("body"))==null||o.appendChild(i),i.onload=()=>{r()}});return e[t]=n,n},sf=(e,t)=>{if(t.css&&Array.from(e.childNodes).every(n=>n.nodeName!=="STYLE")){const n=af("style",{innerHTML:t.css});e.appendChild(n)}},lf=(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;
14${r}}`)),t.appendChild(o)}},cf=e=>{const t=nt(e),n={html:[],js:[],css:[],isLegal:!1};return["html","js","css"].forEach(r=>{const o=t.filter(i=>js[r].types.includes(i));if(o.length){const i=o[0];n[r]=[e[i].replace(/^\n|\n$/g,""),js[r].map[i]||i]}}),n.isLegal=(!n.html.length||n.html[1]==="none")&&(!n.js.length||n.js[1]==="none")&&(!n.css.length||n.css[1]==="none"),n},Qc=e=>e.replace(/<br \/>/g,"<br>").replace(/<((\S+)[^<]*?)\s+\/>/g,"<$1></$2>"),Xc=e=>`<div id="app">
15${Qc(e)}
16</div>`,df=e=>`${e.replace("export default ","const $reactApp = ").replace(/App\.__style__(\s*)=(\s*)`([\s\S]*)?`/,"")};
17ReactDOM.createRoot(document.getElementById("app")).render(React.createElement($reactApp))`,uf=e=>e.replace(/export\s+default\s*\{(\n*[\s\S]*)\n*\}\s*;?$/u,"Vue.createApp({$1}).mount('#app')").replace(/export\s+default\s*define(Async)?Component\s*\(\s*\{(\n*[\s\S]*)\n*\}\s*\)\s*;?$/u,"Vue.createApp({$1}).mount('#app')").trim(),Yc=e=>`(function(exports){var module={};module.exports=exports;${e};return module.exports.__esModule?module.exports.default:module.exports;})({})`,vf=(e,t)=>{const n=ai(t),r=e.js[0]||"";return{...n,html:Qc(e.html[0]||""),js:r,css:e.css[0]||"",isLegal:e.isLegal,getScript:()=>{var o;return n.useBabel?((o=window.Babel.transform(r,{presets:["es2015"]}))==null?void 0:o.code)||"":r}}},pf=/<template>([\s\S]+)<\/template>/u,ff=/<script(\s*lang=(['"])(.*?)\2)?>([\s\S]+)<\/script>/u,hf=/<style(\s*lang=(['"])(.*?)\2)?\s*(?:scoped)?>([\s\S]+)<\/style>/u,mf=(e,t)=>{const n=ai(t),r=e.html[0]||"",o=pf.exec(r),i=ff.exec(r),s=hf.exec(r),c=o?o[1].replace(/^\n|\n$/g,""):"",[d="",u=""]=i?[i[4].replace(/^\n|\n$/g,""),i[3]]:[],[v="",f=""]=s?[s[4].replace(/^\n|\n$/g,""),s[3]]:[],h=u===""&&(f===""||f==="css");return{...n,html:Xc(c),js:uf(d),css:v,isLegal:h,jsLib:[n.vue,...n.jsLib],getScript:()=>{var m,E;const A=t.useBabel?((E=(m=window.Babel)==null?void 0:m.transform(d,{presets:["es2015"]}))==null?void 0:E.code)||"":d.replace(/export\s+default/u,"return");return`const app=window.document.createElement('div');document.firstElementChild.appendChild(app);const appOptions=${Yc(A)};appOptions.template=\`${c.replace("`",'\\`"')}\`;window.Vue.createApp(appOptions).mount(app);`}}},_f=(e,t)=>{const n=ai(t);return{...n,html:Xc(""),js:df(e.js[0]||""),css:e.css[0]||(e.js[0]?e.js[0].replace(/App\.__style__(?:\s*)=(?:\s*)`([\s\S]*)?`/,"$1").trim():""),isLegal:e.isLegal,jsLib:[n.react,n.reactDOM,...n.jsLib],jsx:!0,getScript:()=>{var r,o;const i=((o=(r=window.Babel)==null?void 0:r.transform(e.js[0]||"",{presets:["es2015","react"]}))==null?void 0:o.code)||"";return`window.ReactDOM.createRoot(document.firstElementChild).render(window.React.createElement(${Yc(i)}))`}}},Ln={},bf=e=>Promise.all([Tn(Ln,e.babel),Tn(Ln,e.react),Tn(Ln,e.reactDOM)]),gf=e=>{const t=[Tn(Ln,e.vue)];return e.useBabel&&t.push(Tn(Ln,e.babel)),Promise.all(t)},Ef=e=>e.useBabel?Tn(Ln,e.babel):Promise.resolve();var yf=k({name:"CodeDemo",props:{id:{type:String,required:!0},type:{type:String,default:"normal"},title:{type:String,default:""},config:{type:String,default:""}
17,code:{type:String,required:!0}},slots:Object,setup(e,{slots:t}){const[n,r]=sa(!1),o=$e(),i=$e(),s=J("0"),c=J(!1),d=T(()=>JSON.parse(e.config?fr(e.config):"{}")),u=T(()=>{const E=JSON.parse(fr(e.code));return cf(E)}),v=T(()=>e.type==="react"?_f(u.value,d.value):e.type==="vue"?mf(u.value,d.value):vf(u.value,d.value)),f=T(()=>v.value.isLegal),h=(E=!1)=>{const A=o.value.attachShadow({mode:"open"}),L=document.createElement("div");L.classList.add("code-demo-app"),A.appendChild(L),f.value?(E&&(L.innerHTML=v.value.html),sf(A,v.value),lf(e.id,A,v.value),s.value="0"):s.value="auto",c.value=!0},m=()=>{switch(e.type){case"react":return bf(v.value).then(()=>h());case"vue":return gf(v.value).then(()=>h());default:return Ef(v.value).then(()=>h(!0))}};return _e(()=>{setTimeout(()=>{m()},800)}),()=>{var E;return l("div",{class:"vp-code-demo",id:e.id},[l("div",{class:"vp-code-demo-header"},[v.value.isLegal?l("button",{type:"button",title:"toggle","aria-hidden":!0,class:["vp-code-demo-toggle-button",n.value?"down":"end"],onClick:()=>{s.value=n.value?"0":`${i.value.clientHeight+13.8}px`,r()}}):null,e.title?l("span",{class:"vp-code-demo-title"},decodeURIComponent(e.title)):null,v.value.isLegal&&v.value.jsfiddle!==!1?l("form",{class:"code-demo-jsfiddle",target:"_blank",action:"https://jsfiddle.net/api/post/library/pure/",method:"post"},[l("input",{type:"hidden",name:"html",value:v.value.html}),l("input",{type:"hidden",name:"js",value:v.value.js}),l("input",{type:"hidden",name:"css",value:v.value.css}),l("input",{type:"hidden",name:"wrap",value:"1"}),l("input",{type:"hidden",name:"panel_js",value:"3"}),l("input",{type:"hidden",name:"resources",value:[...v.value.cssLib,...v.value.jsLib].join(",")}),l("button",{type:"submit",class:"jsfiddle-button",innerHTML:of,"aria-label":"JSFiddle","data-balloon-pos":"up"})]):null,!v.value.isLegal||v.value.codepen!==!1?l("form",{class:"code-demo-codepen",target:"_blank",action:"https://codepen.io/pen/define",method:"post"},[l("input",{type:"hidden",name:"data",value:JSON.stringify({html:v.value.html,js:v.value.js,css:v.value.css,js_external:v.value.jsLib.join(";"),css_external:v.value.cssLib.join(";"),layout:v.value.codepenLayout,html_pre_processor:u.value?u.value.html[1]:"none",js_pre_processor:u.value?u.value.js[1]:v.value.jsx?"babel":"none",css_pre_processor:u.value?u.value.css[1]:"none",editors:v.value.codepenEditors})}),l("button",{type:"submit",innerHTML:rf,class:"codepen-button","aria-label":"Codepen","data-balloon-pos":"up"})]):null]),c.value?null:l(Tr,{class:"vp-code-demo-loading"}),l("div",{ref:o,class:"vp-code-demo-display",style:{display:f.value&&c.value?"block":"none"}}),l("div",{class:"vp-code-demo-code-wrapper",style:{height:s.value}},l("div",{ref:i,class:"vp-code-demo-codes"},(E=t.default)==null?void 0:E.call(t)))])}}});var ii={x:0,y:0,"line-width":2,"line-length":40,"text-margin":8,"font-size":14,"font-color":"#8DA1AC","line-color":"#8DA1AC","element-color":"black",fill:"white","yes-text":"Yes","no-text":"No","arrow-end":"block",scale:1},Af={...ii,symbols:{start:{class:"start-element","font-color":"#fff",fill:"#595959","line-width":"0px"},end:{class:"end-element","font-color":"#fff",fill:"#595959","line-width":"0px"},operation:{class:"operation-element","font-color":"#fff",fill:"#1890ff","line-width":"0px"},inputoutput:{class:"inputoutput-element","font-color":"#fff",fill:"#1890ff","line-width":"0px"},subroutine:{class:"subroutine-element","font-color":"#fff",fill:"#FF485E","element-color":"#fff","line-color":"red"},condition:{class:"condition-element","font-color":"#fff",fill:"#FF485E","line-width":"0px"},parallel:{class:"parallel-element","font-color":"#fff",fill:"#1890ff","line-width":"0px"}}},zf={...ii,"line-width":1,symbols:{start:{class:"start-element",fill:"#ccc","line-color":"#5c6ac4","font-color":"#000"},end:{class:"end-element",fill:"#ccc","line-color":"#5c6ac4","font-color":"#000"},operation:{class:"operation-element",fill:"#f1f1f1","line-color":"#5c6ac4","font-color":"#000"},inputoutput:{class:"inputoutput-element",fill:"#f1f1f1","line-color":"#5c6ac4","font-color":"#000"},subroutine:{class:"subroutine-element",fill:"#f1f1f1","line-color":"#5c6ac4","font-color":"#000"},condition:{class:"condition-element",fill:"#f1f1f1","line-color":"#5c6ac4","font-color":"#000"},parallel:{class:"parallel-element",fill:"#f1f1f1","line-color":"#5c6ac4","font-color":"#000"}}},Tf={...ii,symbols:{start:{class:"start-element","font-color":"#fff",fill:"#2F495F","line-width":"0px"},end:{class:"end-element","font-color":"#fff",fill:"#2F495F","line-width":"0px"},operation:{class:"operation-element","font-color":"#fff",fill:"#00BC7D","line-width":"0px"},inputoutput:{class:"inputoutput-element","font-color":"#fff",fill:"#EB4D5D","line-width":"0px"},subroutine:{class:"subroutine-element","font-color":"#fff",fill:"#937AC4","element-color":"#fff","line-color":"red"},condition:{class:"condition-element","font-color":"#fff",fill:"#FFB500","line-width":"0px"},parallel:{class:"parallel-element","font-color":"#fff",fill:"#2F495F","line-width":"0px"}}};const ks={ant:Af,vue:Tf,pie:zf};var Lf=k({name:"FlowChart",props:{code:{type:String,required:!0},id:{type:String,required:!0},preset:{type:String,default:"vue"}},setup(e){let t=null;const n=$e(),r=J(!0),o=J(1),i=T(()=>ks[e.preset]||(console.warn(`[md-enhance:flowchart] Unknown preset: ${e.preset}`),ks.vue)),s=c=>c<419?.8:c>1280?1:.9;return _e(()=>{Promise.all([a(()=>import("./flowchart-d65a1d8e.js"),[]),new Promise(c=>setTimeout(c,800))]).then(([{parse:c}])=>{t=c(fr(e.code)),o.value=s(window.innerWidth),r.value=!1,t.draw(e.id,{...i.value,scale:o.value})}),Re("resize",Xv(()=>{if(t){const c=s(window.innerWidth);o.value!==c&&(o.value=c,t.draw(e.id,{...i.value,scale:c}
17))}},100))}),()=>[r.value?l(Tr,{class:"flowchart-loading",height:192}):null,l("div",{ref:n,class:["flowchart-wrapper",e.preset],id:e.id,style:{display:r.value?"none":"block"}})]}});let Pf={};const Zc=Symbol(""),wf=()=>me(Zc),Of=e=>{e.provide(Zc,Pf)},hn={useMaxWidth:!1},Df=e=>({dark:e,background:e?"#1e1e1e":"#fff",primaryColor:e?"#389d70":"#4abf8a",primaryBorderColor:e?"#389d70":"#4abf8a",primaryTextColor:"#fff",secondaryColor:"#ffb500",secondaryBorderColor:e?"#fff":"#000",secondaryTextColor:e?"#ddd":"#333",tertiaryColor:e?"#282828":"#efeef4",tertiaryBorderColor:e?"#bbb":"#242424",tertiaryTextColor:e?"#ddd":"#333",noteBkgColor:e?"#f6d365":"#fff5ad",noteTextColor:"#242424",noteBorderColor:e?"#f6d365":"#333",lineColor:e?"#d3d3d3":"#333",textColor:e?"#fff":"#242424",mainBkg:e?"#389d70":"#4abf8a",errorBkgColor:"#eb4d5d",errorTextColor:"#fff",nodeBorder:e?"#389d70":"#4abf8a",nodeTextColor:e?"#fff":"#242424",signalTextColor:e?"#9e9e9e":"#242424",classText:"#fff",labelColor:"#fff",fillType0:e?"#cf1322":"#f1636e",fillType1:"#f39c12",fillType2:"#2ecc71",fillType3:"#fa541c",fillType4:"#25a55b",fillType5:"#13c2c2",fillType6:"#096dd9",fillType7:"#aa6fe9"});var xf=k({name:"Mermaid",props:{id:{type:String,required:!0},code:{type:String,required:!0}},setup(e){const t=wf(),n=$e(),r=T(()=>fr(e.code)),o=J(""),i=J(!1),s=async()=>{const[{default:u}]=await Promise.all([a(()=>import("./mermaid.core-0d5e0ee0.js").then(v=>v.aO),[]),new Promise(v=>setTimeout(v,800))]);u.initialize({theme:"base",themeVariables:Df(i.value),flowchart:hn,sequence:hn,journey:hn,gantt:hn,er:hn,pie:hn,...t,startOnLoad:!1}),o.value=(await u.render(e.id,r.value)).svg},c=()=>{const{body:u}=document,v=document.createElement("div");v.classList.add("mermaid-preview"),v.innerHTML=o.value,u.appendChild(v),v.addEventListener("click",()=>{u.removeChild(v)})},d=()=>{const u=`data:image/svg+xml;charset=utf8,${o.value.replace(/%/g,"%25").replace(/"/g,"%22").replace(/'/g,"%27").replace(/&/g,"%26").replace(/#/g,"%23").replace(/{/g,"%7B").replace(/}/g,"%7D").replace(/</g,"%3C").replace(/>/g,"%3E")}`,v=document.createElement("a");v.setAttribute("href",u),v.setAttribute("download",`${e.id}.svg`),v.click()};return _e(()=>{const u=document.documentElement,v=()=>u.classList.contains("dark")||u.getAttribute("data-theme")==="dark";i.value=v(),s(),o2(u,()=>{i.value=v()},{attributeFilter:["class","data-theme"],attributes:!0}),se(i,()=>s())}),()=>[l("div",{class:"mermaid-actions"},[l("button",{class:"preview-button",onClick:()=>c(),title:"preview",innerHTML:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1316 1024" fill="currentColor"><path d="M658.286 0C415.89 0 0 297.106 0 512c0 214.82 415.89 512 658.286 512 242.322 0 658.285-294.839 658.285-512S900.608 0 658.286 0zm0 877.714c-161.573 0-512-221.769-512-365.714 0-144.018 350.427-365.714 512-365.714 161.572 0 512 217.16 512 365.714s-350.428 365.714-512 365.714z"/><path d="M658.286 292.571a219.429 219.429 0 1 0 0 438.858 219.429 219.429 0 0 0 0-438.858zm0 292.572a73.143 73.143 0 1 1 0-146.286 73.143 73.143 0 0 1 0 146.286z"/></svg>'}),l("button",{class:"download-button",onClick:()=>d(),title:"download",innerHTML:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1024 1024" fill="currentColor"><path d="M828.976 894.125H190.189c-70.55 0-127.754-57.185-127.754-127.753V606.674c0-17.634 14.31-31.933 31.933-31.933h63.889c17.634 0 31.932 14.299 31.932 31.933v95.822c0 35.282 28.596 63.877 63.877 63.877h511.033c35.281 0 63.877-28.595 63.877-63.877v-95.822c0-17.634 14.298-31.933 31.943-31.933h63.878c17.635 0 31.933 14.299 31.933 31.933v159.7c0 70.566-57.191 127.751-127.754 127.751zM249.939 267.51c12.921-12.92 33.885-12.92 46.807 0l148.97 148.972V94.893c0-17.634 14.302-31.947 31.934-31.947h63.876c17.638 0 31.946 14.313 31.946 31.947v321.589l148.97-148.972c12.922-12.92 33.876-12.92 46.797 0l46.814 46.818c12.922 12.922 12.922 33.874 0 46.807L552.261 624.93c-1.14 1.138-21.664 13.684-42.315 13.693-20.877.01-41.88-12.542-43.021-13.693L203.122 361.135c-12.923-12.934-12.923-33.885 0-46.807l46.817-46.818z"/></svg>'})]),l("div",{ref:n,class:"mermaid-wrapper"},o.value?l("div",{class:"mermaid-content",innerHTML:o.value}):l(Tr,{class:"mermaid-loading",height:96}))]}});let If={};const ed=Symbol(""),Vf=()=>me(ed),Rf=e=>{e.provide(ed,If)},Sf=()=>a(()=>import("./markdown.esm-30be9ea9.js"),[]),jf=()=>a(()=>import("./reveal.esm-1a4c3ae7.js"),[]);const kf=()=>[jf(),Sf()];var Cf=k({name:"Presentation",props:{id:{type:String,required:!0},code:{type:String,required:!0},theme:{type:String,default:"auto"}},setup(e){const t=Vf(),n=ye(),r=J(""),o=J(!0),i=$e();let s=null;const c=async d=>{const u=[new Promise(m=>setTimeout(m,800)),...kf()],[,v,...f]=await Promise.all(u),h=new v.default(d,{plugins:f.map(({default:m})=>m)});return await h.initialize({backgroundTransition:"slide",hash:n.value.layout==="Slide",mouseWheel:n.value.layout==="Slide",transition:"slide",slideNumber:!0,...t,...n.value.reveal||{},embedded:n.value.layout!=="Slide"}),h};return _e(async()=>{const d=i.value;d&&(r.value=fr(e.code),d.setAttribute("id",e.id),d.setAttribute("data-theme",e.theme),s=await c(d),o.value=!1)}),Ar(()=>{s==null||s.destroy()}),()=>l("div",{class:"vp-reveal"},[l("div",{ref:i,class:["reveal","reveal-viewport"]},l("div",{class:"slides",innerHTML:`<section data-markdown data-separator="^\\r?\\n---\\r?\\n$" data-separator-vertical="^\\r?\\n--\\r?\\n$"><script type="text/template">${r.value}<\/script></section>`})),o.value?l(Tr,{class:"reveal-loading",height:400}):null])}});const Mf=ut({enhance:({app:e})=>{e.component("CodeTabs",ef),e.component("CodeDemo",yf),e.component("FlowChart",Lf),Of(e),e.component("Mermaid",xf),Rf(e),e.component("Presentation",Cf)},setup:()=>{}});let Bf={};const td=Symbol(""),$f=()=>me(td),Ff=e=>{e.provide(td,Bf)};const Wf=".theme-hope-content :not(a) > img:not([no-view])",Nf={"/zh/":{closeTitle:"关闭",downloadTitle:"下载图片",fullscreenTitle:"切换全屏",zoomTitle:"缩放",arrowPrevTitle:"上一个 (左箭头)",arrowNextTitle:"下一个 (右箭头)"},"/":{closeTitle:"Close",downloadTitle:"Download Image",fullscreenTitle:"Switch to full screen",zoomTitle:"Zoom in/out",arrowPrevTitle:"Prev (Arrow Left)",arrowNextTitle:"Next (Arrow Right)"}},Hf=800,Jf='<div class="photo-swipe-loading"><svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" preserveAspectRatio="xMidYMid" viewBox="25 25 50 50"><animateTransform attributeName="transform" type="rotate" dur="2s" keyTimes="0;
171" repeatCount="indefinite" values="0;360"></animateTransform><circle cx="50" cy="50" r="20" fill="none" stroke="currentColor" stroke-width="4" stroke-linecap="round"><animate attributeName="stroke-dasharray" dur="1.5s" keyTimes="0;0.5;1" repeatCount="indefinite" values="1,200;90,200;1,200"></animate><animate attributeName="stroke-dashoffset" dur="1.5s" keyTimes="0;0.5;1" repeatCount="indefinite" values="0;-35px;-125px"></animate></circle></svg></div>',Gf=e=>qe(e)?Array.from(document.querySelectorAll(e)):e.map(t=>Array.from(document.querySelectorAll(t))).flat(),nd=e=>new Promise((t,n)=>{e.complete?t({type:"image",element:e,src:e.src,width:e.naturalWidth,height:e.naturalHeight,alt:e.alt,msrc:e.src}):(e.onload=()=>t(nd(e)),e.onerror=r=>n(r))}),qf=()=>{const{isSupported:e,toggle:t}=ti(),n=$f(),r=Lr(Nf),o=pe();let i;const s=d=>{d.on("uiRegister",()=>{e&&d.ui.registerElement({name:"fullscreen",order:7,isButton:!0,html:'<svg class="pswp__icn" viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path d="M249.5 270.833H437v-75H212a37.5 37.5 0 0 0-37.5 37.5v225h75v-187.5zm-37.5 600h225v-75H249.5v-187.5h-75v225a37.5 37.5 0 0 0 37.5 37.5zm637.5-37.5v-225h-75v187.5H587v75h225a37.5 37.5 0 0 0 37.5-37.5zM587 270.833h187.5v187.5h75v-225a37.5 37.5 0 0 0-37.5-37.5H587v75z"/></svg>',onClick:()=>{t()}}),d.ui.registerElement({name:"download",order:8,isButton:!0,tagName:"a",html:{isCustomSVG:!0,inner:'<path d="M20.5 14.3 17.1 18V10h-2.2v7.9l-3.4-3.6L10 16l6 6.1 6-6.1-1.5-1.6ZM23 23H9v2h14" id="pswp__icn-download"/>',outlineID:"pswp__icn-download"},onInit:(u,v)=>{u.setAttribute("download",""),u.setAttribute("target","_blank"),u.setAttribute("rel","noopener"),v.on("change",()=>{u.setAttribute("href",v.currSlide.data.src)})}}),d.ui.registerElement({name:"bulletsIndicator",className:"photo-swipe-bullets-indicator",appendTo:"wrapper",onInit:(u,v)=>{const f=[];let h=-1;for(let m=0;m<v.getNumItems();m++){const E=document.createElement("div");E.className="photo-swipe-bullet",E.onclick=A=>{v.goTo(f.indexOf(A.target))},f.push(E),u.appendChild(E)}v.on("change",()=>{h>=0&&f[h].classList.remove("active"),f[v.currIndex].classList.add("active"),h=v.currIndex})}})})},c=()=>Promise.all([a(()=>import("./photoswipe.esm-3ee328cd.js"),[]),Bn().then(()=>new Promise(d=>setTimeout(d,Hf)).then(()=>Gf(Wf)))]).then(([{default:d},u])=>{const v=u.map(f=>({html:Jf,element:f,msrc:f.src}));u.forEach((f,h)=>{const m=()=>{i=new d({preloaderDelay:0,showHideAnimationType:"zoom",...r.value,...n,dataSource:v,index:h,closeOnVerticalDrag:!0,wheelToZoom:!1}),s(i),i.addFilter("thumbEl",()=>f),i.addFilter("placeholderSrc",()=>f.src),i.init()};f.style.cursor="zoom-in",f.addEventListener("click",()=>{m()}),f.addEventListener("keypress",({key:E})=>{E==="Enter"&&m()})}),u.forEach((f,h)=>{nd(f).then(m=>{v.splice(h,1,m),i==null||i.refreshSlideContent(h)})})});_e(()=>{Re("wheel",()=>{i==null||i.close()}),c(),se(()=>o.value.path,()=>c())})};var Uf=ut({enhance:({app:e})=>{Ff(e)},setup:()=>{qf()}});const rd=()=>{const e=pe();return T(()=>e.value.readingTime??null)},va=typeof{"/zh/":{word:"约 $word 字",less1Minute:"小于 1 分钟",time:"大约 $time 分钟"},"/":{word:"About $word words",less1Minute:"Less than 1 minute",time:"About $time min"}}>"u"?null:{"/zh/":{word:"约 $word 字",less1Minute:"小于 1 分钟",time:"大约 $time 分钟"},"/":{word:"About $word words",less1Minute:"Less than 1 minute",time:"About $time min"}},od=(e,t)=>{const{minutes:n,words:r}=e,{less1Minute:o,word:i,time:s}=t;return{time:n<1?o:s.replace("$time",Math.round(n).toString()),words:i.replace("$word",r.toString())}},Cs={words:"",time:""},ad=()=>va?Lr(va):T(()=>null),Kf=()=>{if(typeof va>"u")return T(()=>Cs);const e=rd(),t=ad();return T(()=>e.value&&t.value?od(e.value,t.value):Cs)},Zt=()=>Uc(),ie=()=>Hp(),Hn=()=>T(()=>!!Zt().value.pure);var Ms=k({name:"EmptyComponent",setup:()=>()=>null});const Qf="719px",Xf="1440px",Yf="true",si={mobileBreakPoint:Qf,pcBreakPoint:Xf,enableThemeColor:Yf,"theme-1":"#2196f3","theme-2":"#ffd700","theme-3":"#f26d6d","theme-4":"#fb9b5f","theme-5":"#3eaf7c"},li={},id=e=>{const{icon:t="",color:n,size:r}=e,o={};return n&&(o.color=n),r&&(o.height=Number.isNaN(Number(r))?r:`${r}px`),un(t)?l("img",{class:"icon",src:t,"no-view":"",style:o}):_o(t)?l("img",{class:"icon",src:Pe(t),"no-view":"",style:o}):l(tt("FontIcon"),e)};id.displayName="HopeIcon";var Qe=id,Ee=(e=>(e.type="y",e.title="t",e.shortTitle="s",e.icon="i",e.author="a",e.date="d",e.localizedDate="l",e.category="c",e.tag="g",e.isEncrypted="n",e.isOriginal="o",e.readingTime="r",e.excerpt="e",e.sticky="u",e.cover="v",e.index="I",e.order="O",e))(Ee||{}),sd=(e=>(e.article="a",e.home="h",e.slide="s",e.page="p",e))(sd||{});const Pn=(e,t=!1)=>{const n=He(),{fullPath:r,meta:o,name:i}=Pr(n,encodeURI(e));return{text:!t&&o[Ee.shortTitle]?o[Ee.shortTitle]:o[Ee.title]||e,link:i==="404"?e:r,...o[Ee.icon]?{icon:o[Ee.icon]}:{}}},Or=()=>{const e=He(),t=yt();return n=>{if(n)if(_o(n))t.path!==n&&e.push(n);else if(un(n)||ql(n))window&&window.open(n);else{const r=t.path.slice(0,t.path.lastIndexOf("/"));e.push(`${r}/${encodeURI(n)}`)}}},ld=()=>{const e=ie(),t=ye();return T(()=>{const{author:n}=t.value;return n?pr(n):n===!1?[]:pr(e.value.author,!1)})},Zf=()=>{const e=ye();return T(()=>bc(e.value.category).map(t=>{var n,r;return{name:t,path:((r=(n=me(Symbol.for("categoryMap")))==null?void 0:n.value.map[t])==null?void 0:r.path)||""}}))},eh=()=>{const e=ye();return T(()=>gc(e.value.tag).map(t=>{var n,r;return{name:t,path:((r=(n=me(Symbol.for("tagMap")))==null?void 0:n.value.map[t])==null?void 0:r.path)||""}}))},th=()=>{const e=ye(),t=pe();return T(()=>{const n=Ya(e.value.date);if(n)return n;const{createdTime:r}=t.value.git||{};return r?new Date(r):null})},nh=()=>{const e=ie(),t=pe(),n=ye(),r=ld(),o=Zf(),i=eh(),s=th(),c=rd(),d=Kf(),u=T(()=>({author:r.value,category:o.value,date:s.value,localizedDate:t.value.localizedDate,tag:i.value,isOriginal:n.value.isOriginal||!1,readingTime:c.value,readingTimeLocale:d.value,pageview:"pageview"in n.value?n.value.pageview:!0})),v=T(()=>"pageInfo"in n.value?n.value.pageInfo:"pageInfo"in e.value?e.value.pageInfo:null);return{info:u,items:v}},{mobileBreakPoint:rh,pcBreakPoint:oh}=si,Bs=e=>e.endsWith("px")?Number(e.slice(0,-2)):null,Dr=()=>{const e=J(!1),t=J(!1),n=()=>{e.value=window.innerWidth<=(Bs(rh)??719),t.value=window.innerWidth>=(Bs(oh)??1440)};return _e(()=>{n(),Re("resize",n,!1),Re("orientationchange",n,!1)}),{isMobile:e,isPC:t}},cd=Symbol(""),xr=()=>{const e=me(cd);if(!e)throw new Error("useDarkmode() is called without provider.");return e},ah=e=>{const t=Zt(),n=u2(),r=Pc("vuepress-theme-hope-scheme","auto"),o=T(()=>t.value.darkmode||"switch"),i=T(()=>{const c=o.value;return c==="disable"?!1:c==="enable"?!0:c==="auto"?n.value:c==="toggle"?r.value==="dark":r.value==="dark"||r.value==="auto"&&n.value}),s=T(()=>{const c=o.value;return c==="switch"||c==="toggle"});e.provide(cd,{canToggle:s,config:o,isDarkmode:i,status:r}),Object.defineProperties(e.config.globalProperties,{$isDarkmode:{get:()=>i.value}})},ih=()=>{const{isDarkmode:e}=xr(),t=(n=e.value)=>
17document.documentElement.setAttribute("data-theme",n?"dark":"light");_e(()=>{se(e,t,{immediate:!0})})};var Ue=k({name:"AutoLink",inheritAttrs:!1,props:{config:{type:Object,required:!0},exact:Boolean,noExternalLinkIcon:Boolean},emits:["focusout"],slots:Object,setup(e,{attrs:t,emit:n,slots:r}){const o=yt(),i=tc(),s=Mn(e,"config"),c=T(()=>un(s.value.link)),d=T(()=>ql(s.value.link)||ev(s.value.link)),u=T(()=>d.value?void 0:s.value.target||(c.value?"_blank":void 0)),v=T(()=>u.value==="_blank"),f=T(()=>!c.value&&!d.value&&!v.value),h=T(()=>d.value?void 0:s.value.rel||(v.value?"noopener noreferrer":void 0)),m=T(()=>s.value.ariaLabel||s.value.text),E=T(()=>{if(e.exact)return!1;const L=nt(i.value.locales);return L.length?L.every(g=>g!==s.value.link):s.value.link!=="/"}),A=T(()=>f.value?s.value.activeMatch?new RegExp(s.value.activeMatch).test(o.path):E.value?vr(o.path,s.value.link):o.path===s.value.link:!1);return()=>{const{before:L,after:g,default:y}=r,{text:P,icon:x,link:N}=s.value;return f.value?l(Me,{to:N,"aria-label":m.value,...t,class:["nav-link",{active:A.value},t.class],onFocusout:()=>n("focusout")},()=>y?y():[L?L():l(Qe,{icon:x}),P,g==null?void 0:g()]):l("a",{href:N,rel:h.value,target:u.value,"aria-label":m.value,...t,class:["nav-link",t.class],onFocusout:()=>n("focusout")},y?y():[L?L():l(Qe,{icon:x}),P,e.noExternalLinkIcon?null:l(Gc),g==null?void 0:g()])}}});const Sn=(e,t,n=!1)=>"activeMatch"in t?new RegExp(t.activeMatch).test(e.path):Za(e,t.link)?!0:t.children&&!n?t.children.some(r=>Sn(e,r)):!1,dd=(e,t)=>t.type==="group"?t.children.some(n=>n.type==="group"?dd(e,n):n.type==="page"&&Sn(e,n,!0))||"prefix"in t&&Za(e,t.prefix):!1,ud=(e,t)=>qe(e.link)?l(Ue,{...t,config:e}):l("p",t,[l(Qe,{icon:e.icon}),e.text]),vd=e=>{const t=yt();return e?l("ul",{class:"vp-sidebar-sub-headers"},e.map(n=>{const r=Sn(t,n,!0);return l("li",{class:"vp-sidebar-sub-header"},[ud(n,{class:["vp-sidebar-link","vp-heading",{active:r}]}),vd(n.children)])})):null},Ho=(e="",t="")=>_o(t)?t:`${X1(e)}${t}`,sh=(e,t)=>{const n=pe();return{type:"heading",text:e.title,link:`${n.value.path}#${e.slug}`,children:ci(e.children,t)}},ci=(e,t)=>t>0?e.map(n=>sh(n,t-1)):[],pd=e=>{const t=pe();return ci(t.value.headers,e)},pa=(e,t,n="")=>{const r=pe(),o=(i,s=n)=>{var c;const d=qe(i)?Pn(Ho(s,i)):i.link?{...i,...oo(i.link)?{}:{link:Pn(Ho(s,i.link)).link}}:i;if("children"in d){const u=Ho(s,d.prefix),v=d.children==="structure"?li[u]:d.children;return{type:"group",...d,prefix:u,children:v.map(f=>o(f,u))}}return{type:"page",...d,children:d.link===r.value.path?ci(((c=r.value.headers[0])==null?void 0:c.level)===1?r.value.headers[0].children:r.value.headers,t):[]}};return e.map(i=>o(i))},lh=(e,t)=>{const n=pe(),r=nt(e).sort((o,i)=>i.length-o.length);for(const o of r)if(vr(decodeURI(n.value.path),o)){const i=e[o];return i?pa(i==="structure"?li[o]:i==="heading"?pd(t):i,t,o):[]}return console.warn(`${n.value.path} is missing sidebar config.`),[]},ch=()=>{const e=Et(),t=ye(),n=ie(),r=t.value.home?!1:t.value.sidebar??n.value.sidebar??"structure",o=t.value.headerDepth??n.value.headerDepth??2;return r===!1?[]:r==="heading"?pd(o):r==="structure"?pa(li[e.value],o,e.value):ur(r)?pa(r,o):fo(r)?lh(r,o):[]},fd=Symbol(""),dh=()=>{const e=T(()=>ch());bt(fd,e)},di=()=>{const e=me(fd);if(!e)throw new Error("useSidebarItems() is called without provider.");return e};var uh=k({name:"PageFooter",setup(){const e=ye(),t=ie(),n=ld(),r=T(()=>{const{copyright:s,footer:c}=e.value;return c!==!1&&!!(s||c||t.value.displayFooter)}),o=T(()=>{const{footer:s}=e.value;return s===!1?!1:qe(s)?s:t.value.footer||""}),i=T(()=>"copyright"in e.value?e.value.copyright:"copyright"in t.value?t.value.copyright:n.value.length?`Copyright © ${new Date().getFullYear()} ${n.value[0].name}`:!1);return()=>r.value?l("footer",{class:"vp-footer-wrapper"},[o.value?l("div",{class:"vp-footer",innerHTML:o.value}):null,i.value?l("div",{class:"vp-copyright",innerHTML:i.value}):null]):null}}),hd=k({name:"NavbarDropdownLink",props:{config:{type:Object,required:!0}},slots:Object,setup(e,{slots:t}){const n=pe(),r=Mn(e,"config"),o=T(()=>r.value.ariaLabel||r.value.text),i=J(!1);se(()=>n.value.path,()=>{i.value=!1});const s=c=>{c.detail===0&&(i.value=!i.value)};return()=>{var c;return l("div",{class:["dropdown-wrapper",{open:i.value}]},[l("button",{type:"button",class:"dropdown-title","aria-label":o.value,onClick:s},[((c=t.title)==null?void 0:c.call(t))||l("span",{class:"title"},[l(Qe,{icon:r.value.icon}),e.config.text]),l("span",{class:"arrow"}),l("ul",{class:"nav-dropdown"},r.value.children.map((d,u)=>{const v=u===r.value.children.length-1;return l("li",{class:"dropdown-item"},"children"in d?[l("h4",{class:"dropdown-subtitle"},d.link?l(Ue,{config:d,onFocusout:()=>{d.children.length===0&&v&&(i.value=!1)}}):l("span",d.text)),l("ul",{class:"dropdown-subitem-wrapper"},d.children.map((f,h)=>l("li",{class:"dropdown-subitem"},l(Ue,{config:f,onFocusout:()=>{h===d.children.length-1&&v&&(i.value=!1)}}))))]:l(Ue,{config:d,onFocusout:()=>{v&&(i.value=!1)}}))}))])])}}});const md=()=>l(ae,{name:"i18n"},()=>[l("path",{d:"M379.392 460.8 494.08 575.488l-42.496 102.4L307.2 532.48 138.24 701.44l-71.68-72.704L234.496 460.8l-45.056-45.056c-27.136-27.136-51.2-66.56-66.56-108.544h112.64c7.68 14.336 16.896 27.136 26.112 35.84l45.568 46.08 45.056-45.056C382.976 312.32 409.6 247.808 409.6 204.8H0V102.4h256V0h102.4v102.4h256v102.4H512c0 70.144-37.888 161.28-87.04 210.944L378.88 460.8zM576 870.4 512 1024H409.6l256-614.4H768l256 614.4H921.6l-64-153.6H576zM618.496 768h196.608L716.8 532.48 618.496 768z"})]);md.displayName="I18nIcon";const _d=(e,t="")=>qe(e)?Pn(`${t}${e}`):"children"in e?{...e,...e.link&&!oo(e.link)?Pn(`${t}${e.link}`):{},children:e.children.map(n=>_d(n,`${t}${e.prefix||""}`))}:{...e,link:oo(e.link)?e.link:Pn(`${t}${e.link}`).link},bd=()=>T(()=>(ie().value.navbar||[]).map(e=>_d(e))),vh=()=>{const e=He(),t=yt(),n=Et(),r=Fn(),o=Zt(),i=ie();return T(()=>{const s=nt(r.value.locales),c=Wn(o.value.extraLocales??{});if(s.length<2&&!c.length)return null;const{path:d,fullPath:u}=e.currentRoute.value,{navbarLocales:v}=i.value;return{text:"",ariaLabel:v==null?void 0:v.selectLangAriaLabel,children:[...s.map(f=>{var h,m,E;const A=((h=r.value.locales)==null?void 0:h[f])??{},L=((m=o.value.locales)==null?void 0:m[f])??{},g=A.lang||"",y=((E=L.navbarLocales)==null?void 0:E.langName)??g;let P;if(g===r.value.lang)P=d;else{const x=d.replace(n.value,f);P=e.getRoutes().some(N=>N.path===x)?u.replace(d,x):L.home??f}return{text:y,link:P}}),...c.map(([f,h])=>({text:f,link:h.replace(":route",t.path.replace(n.value,""))}))]}})},ph=()=>{const e=ie(),t=T(()=>e.value.repo||null),n=T(()=>t.value?$v(t.value):null),r=T(()=>t.value?yc(t.value):null),o=T(()=>n.value?e.value.repoLabel??(r.value===null?"Source":r.value):null);return T(()=>!n.value||!o.value||e.value.repoDisplay===!1?null:{type:r.value||"Source",label:o.value,link:n.value})};var fh=k({name:"LanguageDropdown",setup(){const e=vh();return()=>e.value?l("div",{class:"nav-item"},l(hd,{class:"i18n-dropdown",config:e.value},{title:()=>{var t;return l(md,{"aria-label":(t=e.value)==null?void 0:t.ariaLabel,style:{width:"1rem",he
17ight:"1rem",verticalAlign:"middle"}})}})):null}}),hh=k({name:"NavScreenDropdown",props:{config:{type:Object,required:!0}},setup(e){const t=pe(),n=Mn(e,"config"),r=T(()=>n.value.ariaLabel||n.value.text),o=J(!1);se(()=>t.value.path,()=>{o.value=!1});const i=(s,c)=>c[c.length-1]===s;return()=>[l("button",{type:"button",class:["nav-screen-dropdown-title",{active:o.value}],"aria-label":r.value,onClick:()=>{o.value=!o.value}},[l("span",{class:"title"},[l(Qe,{icon:n.value.icon}),e.config.text]),l("span",{class:["arrow",o.value?"down":"end"]})]),l("ul",{class:["nav-screen-dropdown",{hide:!o.value}]},n.value.children.map(s=>l("li",{class:"dropdown-item"},"children"in s?[l("h4",{class:"dropdown-subtitle"},s.link?l(Ue,{config:s,onFocusout:()=>{i(s,n.value.children)&&s.children.length===0&&(o.value=!1)}}):l("span",s.text)),l("ul",{class:"dropdown-subitem-wrapper"},s.children.map(c=>l("li",{class:"dropdown-subitem"},l(Ue,{config:c,onFocusout:()=>{i(c,s.children)&&i(s,n.value.children)&&(o.value=!1)}}))))]:l(Ue,{config:s,onFocusout:()=>{i(s,n.value.children)&&(o.value=!1)}}))))]}}),mh=k({name:"NavScreenLinks",setup(){const e=bd();return()=>e.value.length?l("nav",{class:"nav-screen-links"},e.value.map(t=>l("div",{class:"navbar-links-item"},"children"in t?l(hh,{config:t}):l(Ue,{config:t})))):null}});const gd=()=>l(ae,{name:"dark"},()=>l("path",{d:"M524.8 938.667h-4.267a439.893 439.893 0 0 1-313.173-134.4 446.293 446.293 0 0 1-11.093-597.334A432.213 432.213 0 0 1 366.933 90.027a42.667 42.667 0 0 1 45.227 9.386 42.667 42.667 0 0 1 10.24 42.667 358.4 358.4 0 0 0 82.773 375.893 361.387 361.387 0 0 0 376.747 82.774 42.667 42.667 0 0 1 54.187 55.04 433.493 433.493 0 0 1-99.84 154.88 438.613 438.613 0 0 1-311.467 128z"}));gd.displayName="DarkIcon";const Ed=()=>l(ae,{name:"light"},()=>l("path",{d:"M952 552h-80a40 40 0 0 1 0-80h80a40 40 0 0 1 0 80zM801.88 280.08a41 41 0 0 1-57.96-57.96l57.96-58a41.04 41.04 0 0 1 58 58l-58 57.96zM512 752a240 240 0 1 1 0-480 240 240 0 0 1 0 480zm0-560a40 40 0 0 1-40-40V72a40 40 0 0 1 80 0v80a40 40 0 0 1-40 40zm-289.88 88.08-58-57.96a41.04 41.04 0 0 1 58-58l57.96 58a41 41 0 0 1-57.96 57.96zM192 512a40 40 0 0 1-40 40H72a40 40 0 0 1 0-80h80a40 40 0 0 1 40 40zm30.12 231.92a41 41 0 0 1 57.96 57.96l-57.96 58a41.04 41.04 0 0 1-58-58l58-57.96zM512 832a40 40 0 0 1 40 40v80a40 40 0 0 1-80 0v-80a40 40 0 0 1 40-40zm289.88-88.08 58 57.96a41.04 41.04 0 0 1-58 58l-57.96-58a41 41 0 0 1 57.96-57.96z"}));Ed.displayName="LightIcon";const yd=()=>l(ae,{name:"auto"},()=>l("path",{d:"M512 992C246.92 992 32 777.08 32 512S246.92 32 512 32s480 214.92 480 480-214.92 480-480 480zm0-840c-198.78 0-360 161.22-360 360 0 198.84 161.22 360 360 360s360-161.16 360-360c0-198.78-161.22-360-360-360zm0 660V212c165.72 0 300 134.34 300 300 0 165.72-134.28 300-300 300z"}));yd.displayName="AutoIcon";const Ad=()=>l(ae,{name:"enter-fullscreen"},()=>l("path",{d:"M762.773 90.24h-497.28c-96.106 0-174.4 78.293-174.4 174.4v497.28c0 96.107 78.294 174.4 174.4 174.4h497.28c96.107 0 175.04-78.293 174.4-174.4V264.64c0-96.213-78.186-174.4-174.4-174.4zm-387.2 761.173H215.04c-21.867 0-40.427-17.92-41.067-41.066V649.92c0-22.507 17.92-40.427 40.427-40.427 11.307 0 21.227 4.694 28.48 11.947 7.253 7.253 11.947 17.92 11.947 28.48v62.293l145.28-145.28c15.893-15.893 41.813-15.893 57.706 0 15.894 15.894 15.894 41.814 0 57.707l-145.28 145.28h62.294c22.506 0 40.426 17.92 40.426 40.427s-17.173 41.066-39.68 41.066zM650.24 165.76h160.427c21.866 0 40.426 17.92 41.066 41.067v160.426c0 22.507-17.92 40.427-40.426 40.427-11.307 0-21.227-4.693-28.48-11.947-7.254-7.253-11.947-17.92-11.947-28.48v-62.186L625.6 450.347c-15.893 15.893-41.813 15.893-57.707 0-15.893-15.894-15.893-41.814 0-57.707l145.28-145.28H650.88c-22.507 0-40.427-17.92-40.427-40.427s17.174-41.173 39.787-41.173z"}));Ad.displayName="EnterFullScreenIcon";const zd=()=>l(ae,{name:"cancel-fullscreen"},()=>l("path",{d:"M778.468 78.62H247.922c-102.514 0-186.027 83.513-186.027 186.027V795.08c0 102.514 83.513 186.027 186.027 186.027h530.432c102.514 0 186.71-83.513 186.026-186.027V264.647C964.494 162.02 880.981 78.62 778.468 78.62zM250.88 574.35h171.122c23.324 0 43.122 19.115 43.8
1704 43.805v171.121c0 24.008-19.114 43.122-43.122 43.122-12.06 0-22.641-5.006-30.378-12.743s-12.743-19.115-12.743-30.379V722.83L224.597 877.91c-16.953 16.952-44.6 16.952-61.553 0-16.953-16.954-16.953-44.602 0-61.554L318.009 661.39h-66.446c-24.007 0-43.122-19.114-43.122-43.122 0-24.12 18.432-43.918 42.439-43.918zm521.899-98.873H601.657c-23.325 0-43.122-19.114-43.805-43.804V260.55c0-24.007 19.115-43.122 43.122-43.122 12.06 0 22.642 5.007 30.379 12.743s12.743 19.115 12.743 30.38v66.445l154.965-154.965c16.953-16.953 44.601-16.953 61.554 0 16.953 16.953 16.953 44.6 0 61.554L705.536 388.55h66.446c24.007 0 43.122 19.115 43.122 43.122.114 24.007-18.318 43.804-42.325 43.804z"}));zd.displayName="CancelFullScreenIcon";const Td=()=>l(ae,{name:"outlook"},()=>[l("path",{d:"M224 800c0 9.6 3.2 44.8 6.4 54.4 6.4 48-48 76.8-48 76.8s80 41.6 147.2 0 134.4-134.4 38.4-195.2c-22.4-12.8-41.6-19.2-57.6-19.2C259.2 716.8 227.2 761.6 224 800zM560 675.2l-32 51.2c-51.2 51.2-83.2 32-83.2 32 25.6 67.2 0 112-12.8 128 25.6 6.4 51.2 9.6 80 9.6 54.4 0 102.4-9.6 150.4-32l0 0c3.2 0 3.2-3.2 3.2-3.2 22.4-16 12.8-35.2 6.4-44.8-9.6-12.8-12.8-25.6-12.8-41.6 0-54.4 60.8-99.2 137.6-99.2 6.4 0 12.8 0 22.4 0 12.8 0 38.4 9.6 48-25.6 0-3.2 0-3.2 3.2-6.4 0-3.2 3.2-6.4 3.2-6.4 6.4-16 6.4-16 6.4-19.2 9.6-35.2 16-73.6 16-115.2 0-105.6-41.6-198.4-108.8-268.8C704 396.8 560 675.2 560 675.2zM224 419.2c0-28.8 22.4-51.2 51.2-51.2 28.8 0 51.2 22.4 51.2 51.2 0 28.8-22.4 51.2-51.2 51.2C246.4 470.4 224 448 224 419.2zM320 284.8c0-22.4 19.2-41.6 41.6-41.6 22.4 0 41.6 19.2 41.6 41.6 0 22.4-19.2 41.6-41.6 41.6C339.2 326.4 320 307.2 320 284.8zM457.6 208c0-12.8 12.8-25.6 25.6-25.6 12.8 0 25.6 12.8 25.6 25.6 0 12.8-12.8 25.6-25.6 25.6C470.4 233.6 457.6 220.8 457.6 208zM128 505.6C128 592 153.6 672 201.6 736c28.8-60.8 112-60.8 124.8-60.8-16-51.2 16-99.2 16-99.2l316.8-422.4c-48-19.2-99.2-32-150.4-32C297.6 118.4 128 291.2 128 505.6zM764.8 86.4c-22.4 19.2-390.4 518.4-390.4 518.4-22.4 28.8-12.8 76.8 22.4 99.2l9.6 6.4c35.2 22.4 80 12.8 99.2-25.6 0 0 6.4-12.8 9.6-19.2 54.4-105.6 275.2-524.8 288-553.6 6.4-19.2-3.2-32-19.2-32C777.6 76.8 771.2 80 764.8 86.4z"})]);Td.displayName="OutlookIcon";var Ld=k({name:"AppearanceSwitch",setup(){const{config:e,status:t}=xr(),n=()=>{e.value==="switch"?t.value={light:"dark",dark:"auto",auto:"light"}[t.value]:t.value=t.value==="light"?"dark":"light"};return()=>l("button",{type:"button",id:"appearance-switch",onClick:()=>n()},[l(yd,{style:{display:t.value==="auto"?"block":"none"}}),l(gd,{style:{display:t.value==="dark"?"block":"none"}}),l(Ed,{style:{display:t.value==="light"?"block":"none"}})])}}),_h=k({name:"AppearanceMode",setup(){const e=ie(),{canToggle:t}=xr(),n=T(()=>e.value.outlookLocales.darkmode);return()=>t.value?l("div",{class:"appearance-wrapper"},[l("label",{class:"appearance-title",for:"appearance-switch"},n.value),l(Ld)]):null}});const Jo="VUEPRESS_THEME_COLOR";var bh=k({name:"ThemeColorPicker",props:{themeColor:{type:Object,required:!0}},setup(e){const t=(n="")=>{const r=document.documentElement.classList,o=nt(e.themeColor);if(!n){localStorage.removeItem(Jo),r.remove(...o);return}r.remove(...o.filter(i=>i!==n)),r.add(n),localStorage.setItem(Jo,n)};return _e(()=>{const n=localStorage.getItem(Jo);n&&t(n)}),()=>l("ul",{id:"theme-color-picker"},[l("li",l("span",{class:"theme-color",onClick:()=>t()})),Wn(e.themeColor).map(([n,r])=>l("li",l("span",{style:{background:r},onClick:()=>t(n)})))])}});const wn=si.enableThemeColor==="true",gh=wn?Cv(Wn(si).filter(([e])=>e.startsWith("theme-"))):{};var Eh=k({name:"ThemeColor",setup(){const e=ie(),t=T(()=>e.value.outlookLocales.themeColor);return()=>wn?l("div",{class:"theme-color-wrapper"},[l("label",{class:"theme-color-title",for:"theme-color-picker"},t.value),l(bh,{themeColor:gh})]):null}}),Pd=k({name:"ToggleFullScreenButton",setup(){const e=ie(),{isSupported:t,isFullscreen:n,toggle:r}=ti(),o=T(()=>e.value.outlookLocales.fullscreen);return()=>t?l("div",{class:"full-screen-wrapper"},[l("label",{class:"full-screen-title",for:"full-screen-switch"},o.value),l("button",{type:"button",id:"full-screen-switch",class:"full-screen",ariaPressed:n.value,onClick:()=>r()},n.value?l(zd):l(Ad))]):null}}),wd=k({name:"OutlookSettings",setup(){const e=Zt(),t=Hn(),n=T(()=>!t.value&&e.value.fullscreen);return()=>l(ho,()=>[wn?l(Eh):null,l(_h),n.value?l(Pd):null])}}),yh=k({name:"NavScreen",props:{show:Boolean},emits:["close"],slots:Object,setup(e,{emit:t,slots:n}){const r=pe(),{isMobile:o}=Dr(),i=$e(),s=Oc(i);return _e(()=>
17{i.value=document.body,se(o,c=>{!c&&e.show&&(s.value=!1,t("close"))}),se(()=>r.value.path,()=>{s.value=!1,t("close")})}),Ar(()=>{s.value=!1}),()=>l(Xt,{name:"fade",onEnter:()=>{s.value=!0},onAfterLeave:()=>{s.value=!1}},()=>{var c,d;return e.show?l("div",{id:"nav-screen"},l("div",{class:"vp-nav-screen-container"},[(c=n.before)==null?void 0:c.call(n),l(mh),l("div",{class:"vp-outlook-wrapper"},l(wd)),(d=n.after)==null?void 0:d.call(n)])):null})}}),Ah=k({name:"NavbarBrand",setup(){const e=Et(),t=Fn(),n=ie(),r=T(()=>n.value.home||e.value),o=T(()=>t.value.title),i=T(()=>n.value.navTitle??o.value),s=T(()=>n.value.logo?Pe(n.value.logo):null),c=T(()=>n.value.logoDark?Pe(n.value.logoDark):null);return()=>l(Me,{to:r.value,class:"vp-brand"},()=>[s.value?l("img",{class:["vp-nav-logo",{light:!!c.value}],src:s.value,alt:o.value}):null,c.value?l("img",{class:["vp-nav-logo dark"],src:c.value,alt:o.value}):null,i.value?l("span",{class:["vp-site-name",{"hide-in-pad":s.value&&n.value.hideSiteNameOnMobile!==!1}]},i.value):null])}}),zh=k({name:"NavbarLinks",setup(){const e=bd();return()=>e.value.length?l("nav",{class:"vp-nav-links"},e.value.map(t=>l("div",{class:"nav-item hide-in-mobile"},"children"in t?l(hd,{config:t}):l(Ue,{config:t})))):null}}),Th=k({name:"RepoLink",components:{BitbucketIcon:pc,GiteeIcon:vc,GitHubIcon:dc,GitLabIcon:uc,SourceIcon:fc},setup(){const e=ph();return()=>e.value?l("div",{class:"nav-item vp-repo"},l("a",{class:"vp-repo-link",href:e.value.link,target:"_blank",rel:"noopener noreferrer","aria-label":e.value.label},l(tt(`${e.value.type}Icon`),{style:{width:"1.25rem",height:"1.25rem",verticalAlign:"middle"}}))):null}});const Od=({active:e=!1},{emit:t})=>l("button",{type:"button",class:["vp-toggle-navbar-button",{"is-active":e}],"aria-label":"Toggle Navbar","aria-expanded":e,"aria-controls":"nav-screen",onClick:()=>t("toggle")},l("span",[l("span",{class:"vp-top"}),l("span",{class:"vp-middle"}),l("span",{class:"vp-bottom"})]));Od.displayName="ToggleNavbarButton";var Lh=Od;const fa=(e,{emit:t})=>l("button",{type:"button",class:"vp-toggle-sidebar-button",title:"Toggle Sidebar",onClick:()=>t("toggle")},l("span",{class:"icon"}));fa.displayName="ToggleSidebarButton",fa.emits=["toggle"];var Ph=fa,wh=k({name:"OutlookButton",setup(){const{isSupported:e}=ti(),t=Zt(),n=Hn(),r=pe(),{canToggle:o}=xr(),i=J(!1),s=T(()=>!n.value&&t.value.fullscreen&&e);return se(()=>r.value.path,()=>{i.value=!1}),()=>o.value||s.value||wn?l("div",{class:"nav-item hide-in-mobile"},o.value&&!s.value&&!wn?l(Ld):s.value&&!o.value&&!wn?l(Pd):l("button",{type:"button",class:["outlook-button",{open:i.value}],tabindex:"-1","aria-hidden":!0},[l(Td),l("div",{class:"outlook-dropdown"},l(wd))])):null}}),Oh=k({name:"NavBar",emits:["toggleSidebar"],slots:Object,setup(e,{emit:t,slots:n}){const r=ie(),{isMobile:o}=Dr(),i=J(!1),s=T(()=>{const{navbarAutoHide:v="mobile"}=r.value;return v!=="none"&&(v==="always"||o.value)}),c=T(()=>r.value.navbarLayout||{start:["Brand"],center:["Links"],end:["Language","Repo","Outlook","Search"]}),d={Brand:Ah,Language:fh,Links:zh,Repo:Th,Outlook:wh,Search:St("Docsearch")?tt("Docsearch"):St("SearchBox")?tt("SearchBox"):Ms},u=v=>d[v]??(St(v)?tt(v):Ms);return()=>{var v,f,h,m,E,A;return[l("header",{id:"navbar",class:["vp-navbar",{"auto-hide":s.value,"hide-icon":r.value.navbarIcon===!1}]},[l("div",{class:"vp-navbar-start"},[l(Ph,{onToggle:()=>{i.value&&(i.value=!1),t("toggleSidebar")}}),(v=n.startBefore)==null?void 0:v.call(n),(c.value.start||[]).map(L=>l(u(L))),(f=n.startAfter)==null?void 0:f.call(n)]),l("div",{class:"vp-navbar-center"},[(h=n.centerBefore)==null?void 0:h.call(n),(c.value.center||[]).map(L=>l(u(L))),(m=n.centerAfter)==null?void 0:m.call(n)]),l("div",{class:"vp-navbar-end"},[(E=n.endBefore)==null?void 0:E.call(n),(c.value.end||[]).map(L=>l(u(L))),(A=n.endAfter)==null?void 0:A.call(n),l(Lh,{active:i.value,onToggle:()=>{i.value=!i.value}})])]),l(yh,{show:i.value,onClose:()=>{i.value=!1}},{before:()=>{var L;return(L=n.screenTop)==null?void 0:L.call(n)},after:()=>{var L;return(L=n.screenBottom)==null?void 0:L.call(n)}})]}}}),Dh=k({name:"SidebarChild",props:{config:{type:Object,required:!0}},setup(e){const t=yt();return()=>[ud(e.config,{class:["vp-sidebar-link",`vp-sidebar-${e.config.type}`,{active:Sn(t,e.config,!0)}],exact:!0}),vd(e.config.children)]}}),xh=k({name:"SidebarGroup",props:{config:{type:Object,required:!0},open:{type:Boolean,required:!0}},emits:["toggle"],setup(e,{emit:t}){const n=yt(),r=T(()=>Sn(n,e.config)),o=T(()=>Sn(n,e.config,!0));return()=>{const{collapsible:i,children:s=[],icon:c,prefix:d,link:u,text:v}=e.config;return l("section",{class:"vp-sidebar-group"},[l(i?"button":"p",{class:["vp-sidebar-heading",{clickable:i||u,exact:o.value,active:r.value}],...i?{type:"button",onClick:()=>t("toggle"),onKeydown:f=>{f.key==="Enter"&&t("toggle")}}:{}},[l(Qe,{icon:c}),u?l(Ue,{class:"vp-sidebar-title",config:{text:v,link:u},noExternalLinkIcon:!0}):l("span",{class:"vp-sidebar-title"},v),i?l("span",{class:["vp-arrow",e.open?"down":"end"]}):null]),e.open||!i?l(Dd,{key:d,config:s}):null])}}}),Dd=k({name:"SidebarLinks",props:{config:{type:Array,required:!0}},setup(e){const t=yt(),n=J(-1),r=o=>{n.value=o===n.value?-1:o};return se(()=>t.path,()=>{const o=e.config.findIndex(i=>dd(t,i));n.value=o},{immediate:!0,flush:"post"}),()=>l("ul",{class:"vp-sidebar-links"},e.config.map((o,i)=>l("li",o.type==="group"?l(xh,{config:o,open:i===n.value,onToggle:()=>r(i)}):l(Dh,{config:o}))))}}),Ih=k({name:"SideBar",slots:Object,setup(e,{slots:t}){const n=yt(),r=ie(),o=di(),i=$e();return _e(()=>{se(()=>n.hash,s=>{const c=document.querySelector(`.vp-sidebar a.vp-sidebar-link[href="${n.path}${s}"]`);if(!c)return;const{top:d,height:u}=i.value.getBoundingClientRect(),{top:v,height:f}=c.getBoundingClientRect();v<d?c.scrollIntoView(!0):v+f>d+u&&c.scrollIntoView(!1)})}),()=>{var s,c,d;return l("aside",{ref:i,id:"sidebar",class:["vp-sidebar",{"hide-icon":r.value.sidebarIcon===!1}]},[(s=t.top)==null?void 0:s.call(t),((c=t.default)==null?void 0:c.call(t))||l(Dd,{config:o.value}),(d=t.bottom)==null?void 0:d.call(t)])}}}),ui=k({name:"CommonWrapper",props:{containerClass:{type:String,default:""},noNavbar:Boolean,noSidebar:Boolean,noToc:Boolean},slots:Object,setup(e,{slots:t}){const n=He(),r=pe(),o=ye(),i=ie(),{isMobile:s,isPC:c}=Dr(),[d,u]=sa(!1),[v,f]=sa(!1),h=di(),m=J(!1),E=T(()=>e.noNavbar||o.value.navbar===!1||i.value.navbar===!1?!1:!!(r.value.title||i.value.logo||i.value.repo||i.value.navbar)),A=T(()=>e.noSidebar?!1:o.value.sidebar!==!1&&h.value.length!==0&&!o.value.home),L=T(()=>e.noToc||o.value.home?!1:o.value.toc||i.value.toc!==!1&&o.value.toc!==!1),g={x:0,y:0},y=R=>{g.x=R.changedTouches[0].clientX,g.y=R.changedTouches[0].clientY},P=R=>{const G=R.changedTouches[0].clientX-g.x,S=R.changedTouches[0].clientY-g.y;Math.abs(G)>Math.abs(S)*1.5&&Math.abs(G)>40&&(G>0&&g.x<=80?u(!0):u(!1))},x=()=>window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop||0;let N=0;return Re("scroll",Yv(()=>{const R=x();R<=58||R<N?m.value=!1:N+200<R&&!d.value&&(m.value=!0),N=R},300,!0)),se(s,R=>{R||u(!1)}),_e(()=>{const R=Oc(document.body);se(d,S=>{R.value=S});const G=n.afterEach(()=>{u(!1)});Ar(()=>{R.value=!1,G()})}),()=>l(St("GlobalEncrypt")?tt("GlobalEncrypt"):cc,()=>l("div",{class:["theme-container",{"no-navbar":!E.value,"no-sidebar":!A.value&&!(t.sidebar||t.sidebarTop||t.sidebarBottom),"has-toc":L.value,"hide-navbar":m.value,"sidebar-collapsed":!s.value&&!c.value&&v.value,"sidebar-open":s.value&&d.value},e.containerClass,o.value.containerClass||""],onTouchStart:y,onTouchEnd:P},[E.value?l(Oh,{onToggleSidebar:()=>u()},{startBefore:()=>{var R;return(R=t.navbarStartBefore)==null?void 0:R.call(t)},startAfter:()=>{var R;return(R=t.navbarStartAfter)==null?void 0:R.call(t)},centerBefore:()=>{var R;return(R=t.navbarCenterBefore)==null?void 0:R.call(t)},centerAfter:()=>{var R;return(R=t.navbarCenterAfter)==null?void 0:R.call(t)},endBefore:()=>{var R;return(R=t.navbarEndBefore)==null?void 0:R.call(t)},endAfter:()=>{var R;return(R=t.navbarEndAfter)==null?void 0:R.call(t)},screenTop:()=>{var R;return(R=t.navScreenTop)==null?void 0:R.call(t)},screenBottom:()=>{var R;return(R=t.navScreenBottom)==null?void 0:R.call(t)}}):null,l(Xt,{name:"fade"},()=>d.value?l("div",{class:"vp-sidebar-mask",onClick:()=>u(!1)}):null),l(Xt,{name:"fade"},()=>s.value?null:l("div",{class:"toggle-sidebar-wrapper",onClick:()=>f()},l("span",{class:["arrow",v.value?"end":"start"]}))),l(Ih,{},{...t.sidebar?{default:()=>t.sidebar()}:{},top:()=>{var R;return(R=t.sidebarTop)==null?void 0:R.call(t)},bottom:()=>{var R;return(R=t.sidebarBottom)==null?void 0:R.call(t)}}
17),t.default(),l(uh)]))}}),he=k({name:"DropTransition",props:{type:{type:String,default:"single"},delay:{type:Number,default:0},duration:{type:Number,default:.25},appear:Boolean},slots:Object,setup(e,{slots:t}){const n=o=>{o.style.transition=`transform ${e.duration}s ease-in-out ${e.delay}s, opacity ${e.duration}s ease-in-out ${e.delay}s`,o.style.transform="translateY(-20px)",o.style.opacity="0"},r=o=>{o.style.transform="translateY(0)",o.style.opacity="1"};return()=>l(e.type==="single"?Xt:M1,{name:"drop",appear:e.appear,onAppear:n,onAfterAppear:r,onEnter:n,onAfterEnter:r,onBeforeLeave:n},()=>t.default())}});const ha=({custom:e})=>l(Ka,{class:["theme-hope-content",{custom:e}]});ha.displayName="MarkdownContent",ha.props={custom:Boolean};var vi=ha;const xd=()=>l(ae,{name:"author"},()=>l("path",{d:"M649.6 633.6c86.4-48 147.2-144 147.2-249.6 0-160-128-288-288-288s-288 128-288 288c0 108.8 57.6 201.6 147.2 249.6-121.6 48-214.4 153.6-240 288-3.2 9.6 0 19.2 6.4 25.6 3.2 9.6 12.8 12.8 22.4 12.8h704c9.6 0 19.2-3.2 25.6-12.8 6.4-6.4 9.6-16 6.4-25.6-25.6-134.4-121.6-240-243.2-288z"}));xd.displayName="AuthorIcon";const Id=()=>l(ae,{name:"calendar"},()=>l("path",{d:"M716.4 110.137c0-18.753-14.72-33.473-33.472-33.473-18.753 0-33.473 14.72-33.473 33.473v33.473h66.993v-33.473zm-334.87 0c0-18.753-14.72-33.473-33.473-33.473s-33.52 14.72-33.52 33.473v33.473h66.993v-33.473zm468.81 33.52H716.4v100.465c0 18.753-14.72 33.473-33.472 33.473a33.145 33.145 0 01-33.473-33.473V143.657H381.53v100.465c0 18.753-14.72 33.473-33.473 33.473a33.145 33.145 0 01-33.473-33.473V143.657H180.6A134.314 134.314 0 0046.66 277.595v535.756A134.314 134.314 0 00180.6 947.289h669.74a134.36 134.36 0 00133.94-133.938V277.595a134.314 134.314 0 00-133.94-133.938zm33.473 267.877H147.126a33.145 33.145 0 01-33.473-33.473c0-18.752 14.72-33.473 33.473-33.473h736.687c18.752 0 33.472 14.72 33.472 33.473a33.145 33.145 0 01-33.472 33.473z"}));Id.displayName="CalendarIcon";const Vd=()=>l(ae,{name:"category"},()=>l("path",{d:"M148.41 106.992h282.176c22.263 0 40.31 18.048 40.31 40.31V429.48c0 22.263-18.047 40.31-40.31 40.31H148.41c-22.263 0-40.311-18.047-40.311-40.31V147.302c0-22.263 18.048-40.31 40.311-40.31zM147.556 553.478H429.73c22.263 0 40.311 18.048 40.311 40.31v282.176c0 22.263-18.048 40.312-40.31 40.312H147.555c-22.263 0-40.311-18.049-40.311-40.312V593.79c0-22.263 18.048-40.311 40.31-40.311zM593.927 106.992h282.176c22.263 0 40.31 18.048 40.31 40.31V429.48c0 22.263-18.047 40.31-40.31 40.31H593.927c-22.263 0-40.311-18.047-40.311-40.31V147.302c0-22.263 18.048-40.31 40.31-40.31zM730.22 920.502H623.926c-40.925 0-74.22-33.388-74.22-74.425V623.992c0-41.038 33.387-74.424 74.425-74.424h222.085c41.038 0 74.424 33.226 74.424 74.067v114.233c0 10.244-8.304 18.548-18.547 18.548s-18.548-8.304-18.548-18.548V623.635c0-20.388-16.746-36.974-37.33-36.974H624.13c-20.585 0-37.331 16.747-37.331 37.33v222.086c0 20.585 16.654 37.331 37.126 37.331H730.22c10.243 0 18.547 8.304 18.547 18.547 0 10.244-8.304 18.547-18.547 18.547z"}));Vd.displayName="CategoryIcon";const Rd=()=>l(ae,{name:"print"},()=>l("path",{d:"M819.2 364.8h-44.8V128c0-17.067-14.933-32-32-32H281.6c-17.067 0-32 14.933-32 32v236.8h-44.8C145.067 364.8 96 413.867 96 473.6v192c0 59.733 49.067 108.8 108.8 108.8h44.8V896c0 17.067 14.933 32 32 32h460.8c17.067 0 32-14.933 32-32V774.4h44.8c59.733 0 108.8-49.067 108.8-108.8v-192c0-59.733-49.067-108.8-108.8-108.8zM313.6 160h396.8v204.8H313.6V160zm396.8 704H313.6V620.8h396.8V864zM864 665.6c0 25.6-19.2 44.8-44.8 44.8h-44.8V588.8c0-17.067-14.933-32-32-32H281.6c-17.067 0-32 14.933-32 32v121.6h-44.8c-25.6 0-44.8-19.2-44.8-44.8v-192c0-25.6 19.2-44.8 44.8-44.8h614.4c25.6 0 44.8 19.2 44.8 44.8v192z"}));Rd.displayName="PrintIcon";const Sd=()=>l(ae,{name:"tag"},()=>l("path",{d:"M939.902 458.563L910.17 144.567c-1.507-16.272-14.465-29.13-30.737-30.737L565.438 84.098h-.402c-3.215 0-5.726 1.005-7.634 2.913l-470.39 470.39a10.004 10.004 0 000 14.164l365.423 365.424c1.909 1.908 4.42 2.913 7.132 2.913s5.223-1.005 7.132-2.913l470.39-470.39c2.01-2.11 3.014-5.023 2.813-8.036zm-240.067-72.121c-35.458 0-64.286-28.828-64.286-64.286s28.828-64.285 64.286-64.285 64.286 28.828 64.286 64.285-28.829 64.286-64.286 64.286z"}));Sd.displayName="TagIcon";const jd=()=>l(ae,{name:"timer"},()=>l("path",{d:"M799.387 122.15c4.402-2.978 7.38-7.897 7.38-13.463v-1.165c0-8.933-7.38-16.312-16.312-16.312H256.33c-8.933 0-16.311 7.38-16.311 16.312v1.165c0 5.825 2.977 10.874 7.637 13.592 4.143 194.44 97.22 354.963 220.201 392.763-122.204 37.542-214.893 196.511-220.2 389.397-4.661 5.049-7.638 11.651-7.638 19.03v5.825h566.49v-5.825c0-
177.379-2.849-13.981-7.509-18.9-5.049-193.016-97.867-351.985-220.2-389.527 123.24-37.67 216.446-198.453 220.588-392.892zM531.16 450.445v352.632c117.674 1.553 211.787 40.778 211.787 88.676H304.097c0-48.286 95.149-87.382 213.728-88.676V450.445c-93.077-3.107-167.901-81.297-167.901-177.093 0-8.803 6.99-15.793 15.793-15.793 8.803 0 15.794 6.99 15.794 15.793 0 80.261 63.69 145.635 142.01 145.635s142.011-65.374 142.011-145.635c0-8.803 6.99-15.793 15.794-15.793s15.793 6.99 15.793 15.793c0 95.019-73.789 172.82-165.96 177.093z"}));jd.displayName="TimerIcon";const kd=()=>l(ae,{name:"word"},()=>[l("path",{d:"M518.217 432.64V73.143A73.143 73.143 0 01603.43 1.097a512 512 0 01419.474 419.474 73.143 73.143 0 01-72.046 85.212H591.36a73.143 73.143 0 01-73.143-73.143z"}),l("path",{d:"M493.714 566.857h340.297a73.143 73.143 0 0173.143 85.577A457.143 457.143 0 11371.566 117.76a73.143 73.143 0 0185.577 73.143v339.383a36.571 36.571 0 0036.571 36.571z"})]);kd.displayName="WordIcon";const en=()=>{const e=ie();return T(()=>e.value.metaLocales)};var Vh=k({name:"AuthorInfo",inheritAttrs:!1,props:{author:{type:Array,required:!0},pure:Boolean},setup(e){const t=en();return()=>e.author.length?l("span",{class:"page-author-info","aria-label":`${t.value.author}${e.pure?"":"🖊"}`,...e.pure?{}:{"data-balloon-pos":"down"}},[l(xd),l("span",e.author.map(n=>n.url?l("a",{class:"page-author-item",href:n.url,target:"_blank",rel:"noopener noreferrer"},n.name):l("span",{class:"page-author-item"},n.name))),l("span",{property:"author",content:e.author.map(n=>n.name).join(", ")})]):null}}),Rh=k({name:"CategoryInfo",inheritAttrs:!1,props:{category:{type:Array,required:!0},pure:Boolean},setup(e){const t=He(),n=pe(),r=en(),o=(i,s="")=>{s&&n.value.path!==s&&(i.preventDefault(),t.push(s))};return()=>e.category.length?l("span",{class:"page-category-info","aria-label":`${r.value.category}${e.pure?"":"🌈"}`,...e.pure?{}:{"data-balloon-pos":"down"}},[l(Vd),e.category.map(({name:i,path:s})=>l("span",{class:["page-category-item",{[`category${mo(i,9)}`]:!e.pure,clickable:s}],role:s?"navigation":"",onClick:c=>o(c,s)},i)),l("meta",{property:"articleSection",content:e.category.map(({name:i})=>i).join(",")})]):null}}),Sh=k({name:"DateInfo",inheritAttrs:!1,props:{date:{type:Object,default:null},localizedDate:{type:String,default:""},pure:Boolean},setup(e){const t=qa(),n=en();return()=>e.date?l("span",{class:"page-date-info","aria-label":`${n.value.date}${e.pure?"":"📅"}`,...e.pure?{}:{"data-balloon-pos":"down"}},[l(Id),l("span",l(ho,()=>e.localizedDate||e.date.toLocaleDateString(t.value))),l("meta",{property:"datePublished",content:e.date.toISOString()||""})]):null}}),jh=k({name:"OriginalInfo",inheritAttrs:!1,props:{isOriginal:Boolean},setup(e){const t=en();return()=>e.isOriginal?l("span",{class:"page-original-info"},t.value.origin):null}}),kh=k({name:"ReadingTimeInfo",inheritAttrs:!1,props:{readingTime:{type:Object,default:()=>null},readingTimeLocale:{type:Object,default:()=>null},pure:Boolean},setup(e){const t=en(),n=T(()=>{if(!e.readingTime)return null;const{minutes:r}=e.readingTime;return r<1?"PT1M":`PT${Math.round(r)}M`});return()=>{var r,o;return(r=e.readingTimeLocale)!=null&&r.time?l("span",{class:"page-reading-time-info","aria-label":`${t.value.readingTime}${e.pure?"":"⌛"}`,...e.pure?{}:{"data-balloon-pos":"down"}},[l(jd),l("span",(o=e.readingTimeLocale)==null?void 0:o.time),l("meta",{property:"timeRequired",content:n.value})]):null}}}),Ch=k({name:"TagInfo",inheritAttrs:!1,props:{tag:{type:Array,default:()=>[]},pure:Boolean},setup(e){const t=He(),n=pe(),r=en(),o=(i,s="")=>{s&&n.value.path!==s&&(i.preventDefault(),t.push(s))};return()=>e.tag.length?l("span",{class:"page-tag-info","aria-label":`${r.value.tag}${e.pure?"":"🏷"}`,...e.pure?{}:{"data-balloon-pos":"down"}},[l(Sd),e.tag.map(({name:i,path:s})=>l("span",{class:["page-tag-item",{[`tag${mo(i,9)}`]:!e.pure,clickable:s}],role:s?"navigation":"",onClick:c=>o(c,s)},i)),l("meta",{property:"keywords",content:e.tag.map(({name:i})=>i).join(",")})]):null}}),Mh=k({name:"ReadTimeInfo",inheritAttrs:!1,props:{readingTime:{type:Object,default:()=>null},readingTimeLocale:{type:Object,default:()=>null},pure:Boolean},setup(e){const t=en();return()=>{var n,r,o;return(n=e.readingTimeLocale)!=null&&n.words?l("span",{class:"page-word-info","aria-label":`${t.value.words}${e.pure?"":"🔠"}`,...e.pure?{}:{"data-balloon-pos":"down"}},[l(kd),l("span",(r=e.readingTimeLocale)==null?void 0:r.words),l("meta",{property:"wordCount",content:(o=e.readingTime)==null?void 0:o.words})]):null}}}),Cd=k({name:"PageInfo",components:{AuthorInfo:Vh,CategoryInfo:Rh,DateInfo:Sh,OriginalInfo:jh,PageViewInfo:()=>null,ReadingTimeInfo:kh,TagInfo:Ch,WordInfo:Mh},props:{items:{type:[Array,Boolean],default:()=>["Author","Original","Date","PageView","ReadingTime","Category","Tag"]},info:{type:Object,required:!0}},setup(e){const t=Hn();return()=>e.items?l("div",{class:"page-info"},e.items.map(n=>l(tt(`${n}Info`),{...e.info,pure:t.value}))):null}}),Bh=k({name:"PrintButton",setup(){const e=Zt(),t=ie();return()=>e.value.print===!1?null:l("button",{type:"button",class:"print-button",title:t.value.metaLocales.print,onClick:()=>{window.print()}},l(Rd))}});const $h=({title:e,level:t,slug:n})=>l(Me,{to:`#${n}`,class:["toc-link",`level${t}`]},()=>e),ma=(e,t)=>{const n=yt();return e.length&&t>0?l("ul",{class:"toc-list"},e.map(r=>{const o=ma(r.children,t-1);return[l("li",{class:["toc-item",{active:Za(n,`#${r.slug}`)}]},$h(r)),o?l("li",o):null]})):null};var Md=k({name:"TOC",props:{items:{type:Array,default:()=>[]},headerDepth:{type:Number,default:2}},slots:Object,setup(e,{slots:t}){const n=yt(),r=pe(),o=en(),i=$e(),s=J("-1.7rem"),c=u=>{var v;(v=i.value)==null||v.scrollTo({top:u,behavior:"smooth"})},d=()=>
17{if(i.value){const u=document.querySelector(".toc-item.active");u?s.value=`${u.getBoundingClientRect().top-i.value.getBoundingClientRect().top+i.value.scrollTop}px`:s.value="-1.7rem"}else s.value="-1.7rem"};return _e(()=>{se(()=>n.hash,u=>{if(i.value){const v=document.querySelector(`#toc a.toc-link[href$="${u}"]`);if(!v)return;const{top:f,height:h}=i.value.getBoundingClientRect(),{top:m,height:E}=v.getBoundingClientRect();m<f?c(i.value.scrollTop+m-f):m+E>f+h&&c(i.value.scrollTop+m+E-f-h)}}),se(()=>n.fullPath,()=>d(),{flush:"post",immediate:!0})}),()=>{var u,v;const f=e.items.length?ma(e.items,e.headerDepth):r.value.headers?ma(r.value.headers,e.headerDepth):null;return f?l("div",{class:"toc-place-holder"},[l("aside",{id:"toc"},[(u=t.before)==null?void 0:u.call(t),l("div",{class:"toc-header"},[o.value.toc,l(Bh)]),l("div",{class:"toc-wrapper",ref:i},[f,l("div",{class:"toc-marker",style:{top:s.value}})]),(v=t.after)==null?void 0:v.call(t)])]):null}}}),pi=k({name:"SkipLink",props:{content:{type:String,default:"main-content"}},setup(e){const t=pe(),n=ie(),r=$e(),o=({target:i})=>{const s=document.querySelector(i.hash);if(s){const c=()=>{s.removeAttribute("tabindex"),s.removeEventListener("blur",c)};s.setAttribute("tabindex","-1"),s.addEventListener("blur",c),s.focus(),window.scrollTo(0,0)}};return _e(()=>{se(()=>t.value.path,()=>r.value.focus())}),()=>[l("span",{ref:r,tabindex:"-1"}),l("a",{href:`#${e.content}`,class:"vp-skip-link sr-only",onClick:o},n.value.routeLocales.skipToContent)]}});let Go=null,qr=null;const Fh={wait:()=>Go,pending:()=>{Go=new Promise(e=>qr=e)},resolve:()=>{qr==null||qr(),Go=null,qr=null}},Bd=()=>Fh;var Wh=k({name:"FadeSlideY",slots:Object,setup(e,{slots:t}){const{resolve:n,pending:r}=Bd();return()=>l(Xt,{name:"fade-slide-y",mode:"out-in",onBeforeEnter:n,onBeforeLeave:r},()=>{var o;return(o=t.default)==null?void 0:o.call(t)})}});const $d=(e,{slots:t})=>{var n,r;const{bgImage:o,bgImageDark:i,bgImageStyle:s,color:c,description:d,image:u,imageDark:v,header:f,features:h=[]}=e;return l("div",{class:"vp-feature-wrapper"},[o?l("div",{class:["vp-feature-bg",{light:i}],style:[{"background-image":`url(${o})`},s]}):null,i?l("div",{class:"vp-feature-bg dark",style:[{"background-image":`url(${i})`},s]}):null,l("div",{class:"vp-feature",style:c?{color:c}:{}},[((n=t.image)==null?void 0:n.call(t,e))||[u?l("img",{class:["vp-feature-image",{light:v}],src:Pe(u),alt:f}):null,v?l("img",{class:"vp-feature-image dark",src:Pe(v),alt:f}):null],((r=t.info)==null?void 0:r.call(t,e))||[f?l("h2",{class:"vp-feature-header"},f):null,d?l("p",{class:"vp-feature-description",innerHTML:d}):null],h.length?l("div",{class:"vp-features"},h.map(({icon:m,title:E,details:A,link:L})=>{const g=[l("h3",{class:"vp-feature-title"},[l(Qe,{icon:m}),l("span",{innerHTML:E})]),l("p",{class:"vp-feature-details",innerHTML:A})];return L?oo(L)?l("a",{class:"vp-feature-item link",href:L,role:"navigation","aria-label":E,target:"_blank"},g):l(Me,{class:"vp-feature-item link",to:L,role:"navigation","aria-label":E},()=>g):l("div",{class:"vp-feature-item"},g)})):null])])};$d.displayName="FeaturePanel";var $s=$d,Nh=k({name:"HeroInfo",slots:Object,setup(e,{slots:t}){const n=ye(),r=Fn(),o=T(()=>n.value.heroFullScreen??!1),i=T(()=>{const{heroText:u,tagline:v}=n.value;return{text:u??r.value.title??"Hello",tagline:v??r.value.description??"",isFullScreen:o.value}}),s=T(()=>{const{heroText:u,heroImage:v,heroImageDark:f,heroAlt:h,heroImageStyle:m}=n.value;return{image:v?Pe(v):null,imageDark:f?Pe(f):null,heroStyle:m,alt:h||u||"hero image",isFullScreen:o.value}}),c=T(()=>{const{bgImage:u,bgImageDark:v,bgImageStyle:f}=n.value;return{image:Ct(u)?Pe(u):null,imageDark:Ct(v)?Pe(v):null,bgStyle:f,isFullScreen:o.value}}),d=T(()=>n.value.actions??[]);return()=>{var u,v,f;return l("header",{class:["vp-hero-info-wrapper",{fullscreen:o.value}]},[((u=t.heroBg)==null?void 0:u.call(t,c.value))||[c.value.image?l("div",{class:["vp-hero-mask",{light:c.value.imageDark}],style:[{"background-image":`url(${c.value.image})`},c.value.bgStyle]}
17):null,c.value.imageDark?l("div",{class:"vp-hero-mask dark",style:[{"background-image":`url(${c.value.imageDark})`},c.value.bgStyle]}):null],l("div",{class:"vp-hero-info"},[((v=t.heroImage)==null?void 0:v.call(t,s.value))||l(he,{appear:!0,type:"group"},()=>[s.value.image?l("img",{key:"light",class:["vp-hero-image",{light:s.value.imageDark}],style:s.value.heroStyle,src:s.value.image,alt:s.value.alt}):null,s.value.imageDark?l("img",{key:"dark",class:"vp-hero-image dark",style:s.value.heroStyle,src:s.value.imageDark,alt:s.value.alt}):null]),((f=t.heroInfo)==null?void 0:f.call(t,i.value))??l("div",{class:"vp-hero-infos"},[i.value.text?l(he,{appear:!0,delay:.04},()=>l("h1",{id:"main-title"},i.value.text)):null,i.value.tagline?l(he,{appear:!0,delay:.08},()=>l("p",{class:"vp-description",innerHTML:i.value.tagline})):null,d.value.length?l(he,{appear:!0,delay:.12},()=>l("p",{class:"vp-actions"},d.value.map(h=>l(Ue,{class:["vp-action",h.type||"default"],config:h,noExternalLinkIcon:!0})))):null])])])}}});const Fd=(e,{slots:t})=>{var n,r,o;const{bgImage:i,bgImageDark:s,bgImageStyle:c,color:d,description:u,image:v,imageDark:f,header:h,highlights:m=[],type:E="un-order"}=e;return l("div",{class:"vp-highlight-wrapper",style:d?{color:d}:{}},[i?l("div",{class:["vp-highlight-bg",{light:s}],style:[{"background-image":`url(${i})`},c]}):null,s?l("div",{class:"vp-highlight-bg dark",style:[{"background-image":`url(${s})`},c]}):null,l("div",{class:"vp-highlight"},[((n=t.image)==null?void 0:n.call(t,e))||[v?l("img",{class:["vp-highlight-image",{light:f}],src:Pe(v),alt:h}):null,f?l("img",{class:"vp-highlight-image dark",src:Pe(f),alt:h}):null],((r=t.info)==null?void 0:r.call(t,e))||[l("div",{class:"vp-highlight-info-wrapper"},l("div",{class:"vp-highlight-info"},[h?l("h2",{class:"vp-highlight-header",innerHTML:h}):null,u?l("p",{class:"vp-highlight-description",innerHTML:u}):null,((o=t.highlights)==null?void 0:o.call(t,m))||l(E==="order"?"ol":E==="no-order"?"dl":"ul",{class:"vp-highlights"},m.map(({icon:A,title:L,details:g,link:y})=>{const P=[l(E==="no-order"?"dt":"h3",{class:"vp-highlight-title"},[A?l(Qe,{class:"vp-highlight-icon",icon:A}):null,l("span",{innerHTML:L})]),g?l(E==="no-order"?"dd":"p",{class:"vp-highlight-details",innerHTML:g}):null];return l(E==="no-order"?"div":"li",{class:["vp-highlight-item-wrapper",{link:y}]},y?Vv(y)?l("a",{class:"vp-highlight-item link",href:y,role:"navigation","aria-label":L,target:"_blank"},P):l(Me,{class:"vp-highlight-item link",to:y,role:"navigation","aria-label":L},()=>P):l("div",{class:"vp-highlight-item"},P))}))]))]])])};Fd.displayName="HighlightPanel";var Hh=Fd,Jh=k({name:"HomePage",slots:Object,setup(e,{slots:t}){const n=Hn(),r=ye(),o=T(()=>{const{features:s}=r.value;return ur(s)?s:null}),i=T(()=>{const{highlights:s}=r.value;return ur(s)?s:null});return()=>{var s,c,d,u;return l("main",{id:"main-content",class:["vp-project-home ",{pure:n.value}],"aria-labelledby":r.value.heroText===null?"":"main-title"},[(s=t.top)==null?void 0:s.call(t),l(Nh),((c=i.value)==null?void 0:c.map(v=>"features"in v?l($s,v):l(Hh,v)))||(o.value?l(he,{appear:!0,delay:.24},()=>l($s,{features:o.value})):null),(d=t.center)==null?void 0:d.call(t),l(he,{appear:!0,delay:.32},()=>l(vi)),(u=t.bottom)==null?void 0:u.call(t)])}}});const Gh=(e,t)=>{const n=e.replace(t,"/").split("/"),r=[];let o=Ga(t);return n.forEach((i,s)=>{s!==n.length-1?(o+=`${i}/`,r.push({link:o,name:i||"Home"})):i!==""&&(o+=i,r.push({link:o,name:i}))}),r};var qh=k({name:"BreadCrumb",setup(){const e=He(),t=pe(),n=Et(),r=ye(),o=ie(),i=$e([]),s=T(()=>(r.value.breadcrumb||r.value.breadcrumb!==!1&&o.value.breadcrumb!==!1)&&i.value.length>1),c=T(()=>r.value.breadcrumbIcon||r.value.breadcrumbIcon!==!1&&o.value.breadcrumbIcon!==!1),d=()=>{const u=e.getRoutes(),v=Gh(t.value.path,n.value).map(({link:f,name:h})=>{const m=u.find(E=>E.path===f);if(m){const{meta:E,path:A}=Pr(e,m.path);return{title:E[Ee.shortTitle]||E[Ee.title]||h,icon:E[Ee.icon],path:A}}return null}).filter(f=>f!==null);v.length>1&&(i.value=v)};return _e(()=>{d(),se(()=>t.value.path,d)}),()=>l("nav",{class:["vp-breadcrumb",{disable:!s.value}]},s.value?l("ol",{vocab:"https://schema.org/",typeof:"BreadcrumbList"},i.value.map((u,v)=>
17l("li",{class:{"is-active":i.value.length-1===v},property:"itemListElement",typeof:"ListItem"},[l(Me,{to:u.path,property:"item",typeof:"WebPage"},()=>[c.value?l(Qe,{icon:u.icon}):null,l("span",{property:"name"},u.title||"Unknown")]),l("meta",{property:"position",content:v+1})]))):[])}});const Fs=e=>e===!1?!1:qe(e)?Pn(e,!0):fo(e)?e:null,_a=(e,t,n)=>{const r=e.findIndex(o=>o.link===t);if(r!==-1){const o=e[r+n];return o!=null&&o.link?o:null}for(const o of e)if(o.children){const i=_a(o.children,t,n);if(i)return i}return null};var Uh=k({name:"PageNav",setup(){const e=ie(),t=ye(),n=di(),r=pe(),o=Or(),i=T(()=>{const c=Fs(t.value.prev);return c===!1?null:c||(e.value.prevLink===!1?null:_a(n.value,r.value.path,-1))}),s=T(()=>{const c=Fs(t.value.next);return c===!1?null:c||(e.value.nextLink===!1?null:_a(n.value,r.value.path,1))});return Re("keydown",c=>{c.altKey&&(c.key==="ArrowRight"?s.value&&(o(s.value.link),c.preventDefault()):c.key==="ArrowLeft"&&i.value&&(o(i.value.link),c.preventDefault()))}),()=>i.value||s.value?l("nav",{class:"vp-page-nav"},[i.value?l(Ue,{class:"prev",config:i.value},()=>{var c,d;return[l("div",{class:"hint"},[l("span",{class:"arrow start"}),e.value.metaLocales.prev]),l("div",{class:"link"},[l(Qe,{icon:(c=i.value)==null?void 0:c.icon}),(d=i.value)==null?void 0:d.text])]}):null,s.value?l(Ue,{class:"next",config:s.value},()=>{var c,d;return[l("div",{class:"hint"},[e.value.metaLocales.next,l("span",{class:"arrow end"})]),l("div",{class:"link"},[(c=s.value)==null?void 0:c.text,l(Qe,{icon:(d=s.value)==null?void 0:d.icon})])]}):null]):null}});const Kh={GitHub:":repo/edit/:branch/:path",GitLab:":repo/-/edit/:branch/:path",Gitee:":repo/edit/:branch/:path",Bitbucket:":repo/src/:branch/:path?mode=edit&spa=0&at=:branch&fileviewer=file-view-default"},Qh=({docsRepo:e,docsBranch:t,docsDir:n,filePathRelative:r,editLinkPattern:o})=>{if(!r)return null;const i=yc(e);let s;return o?s=o:i!==null&&(s=Kh[i]),s?s.replace(/:repo/,un(e)?e:`https://github.com/${e}`).replace(/:branch/,t).replace(/:path/,Ul(`${Ga(n)}/${r}`)):null},Xh=()=>{const e=ie(),t=pe(),n=ye();return T(()=>{const{repo:r,docsRepo:o=r,docsBranch:i="main",docsDir:s="",editLink:c,editLinkPattern:d=""}=e.value;if(!(n.value.editLink??c??!0)||!o)return null;const u=Qh({docsRepo:o,docsBranch:i,docsDir:s,editLinkPattern:d,filePathRelative:t.value.filePathRelative});return u?{text:e.value.metaLocales.editLink,link:u}:null})},Yh=()=>{const e=Fn(),t=ie(),n=pe(),r=ye();return T(()=>{var o,i;return!(r.value.lastUpdated??t.value.lastUpdated??!0)||!((o=n.value.git)!=null&&o.updatedTime)?null:new Date((i=n.value.git)==null?void 0:i.updatedTime).toLocaleString(e.value.lang)})},Zh=()=>{const e=ie(),t=pe(),n=ye();return T(()=>{var r;return n.value.contributors??e.value.contributors??!0?((r=t.value.git)==null?void 0:r.contributors)??null:null})};var em=k({name:"PageTitle",setup(){const e=pe(),t=ye(),n=ie(),{info:r,items:o}=nh();return()=>l("div",{class:"vp-page-title"},[l("h1",[n.value.titleIcon===!1?null:l(Qe,{icon:t.value.icon}),e.value.title]),l(Cd,{info:r.value,...o.value===null?{}:{items:o.value}}),l("hr")])}});const Wd=()=>l(ae,{name:"edit"},()=>[l("path",{d:"M430.818 653.65a60.46 60.46 0 0 1-50.96-93.281l71.69-114.012 7.773-10.365L816.038 80.138A60.46 60.46 0 0 1 859.225 62a60.46 60.46 0 0 1 43.186 18.138l43.186 43.186a60.46 60.46 0 0 1 0 86.373L588.879 565.55l-8.637 8.637-117.466 68.234a60.46 60.46 0 0 1-31.958 11.229z"}),l("path",{d:"M728.802 962H252.891A190.883 190.883 0 0 1 62.008 771.98V296.934a190.883 190.883 0 0 1 190.883-192.61h267.754a60.46 60.46 0 0 1 0 120.92H252.891a69.962 69.962 0 0 0-69.098 69.099V771.98a69.962 69.962 0 0 0 69.098 69.098h475.911A69.962 69.962 0 0 0 797.9 771.98V503.363a60.46 60.46 0 1 1 120.922 0V771.98A190.883 190.883 0 0 1 728.802 962z"})]);Wd.displayName="EditIcon";var tm=k({name:"PageMeta",setup(){const e=ie(),t=Xh(),n=Yh(),r=Zh();return()=>{const{metaLocales:o}=e.value;return l("footer",{class:"page-meta"},[t.value?l("div",{class:"meta-item edit-link"},l(Ue,{class:"label",config:t.value},{before:()=>l(Wd)})):null,l("div",{class:"meta-item git-info"},[n.value?l("div",{class:"update-time"},[l("span",{class:"label"},`${o.lastUpdated}: `),l(ho,()=>l("span",{class:"info"},n.value))]):null,r.value&&r.value.length?l("div",{class:"contributors"},[l("span",{class:"label"},`${o.contributors}: `),r.value.map(({email:i,name:s},c)=>[l("span",{class:"contributor",title:`email: ${i}`},s),c!==r.value.length-1?",":""])]):null])])}}}),nm=k({name:"NormalPage",slots:Object,setup(e,{slots:t}
17){const n=ye(),r=pe(),{isDarkmode:o}=xr(),i=ie(),s=T(()=>n.value.toc||n.value.toc!==!1&&i.value.toc!==!1);return()=>l("main",{id:"main-content",class:"vp-page"},l(St("LocalEncrypt")?tt("LocalEncrypt"):cc,()=>{var c,d,u,v;return[(c=t.top)==null?void 0:c.call(t),n.value.cover?l("img",{class:"page-cover",src:Pe(n.value.cover),alt:r.value.title,"no-view":""}):null,l(qh),l(em),s.value?l(Md,{headerDepth:n.value.headerDepth??i.value.headerDepth??2},{before:()=>{var f;return(f=t.tocBefore)==null?void 0:f.call(t)},after:()=>{var f;return(f=t.tocAfter)==null?void 0:f.call(t)}}):null,(d=t.contentBefore)==null?void 0:d.call(t),l(vi),(u=t.contentAfter)==null?void 0:u.call(t),l(tm),l(Uh),St("CommentService")?l(tt("CommentService"),{darkmode:o.value}):null,(v=t.bottom)==null?void 0:v.call(t)]}))}}),rm=k({name:"Layout",setup(){const e=Zt(),t=ie(),n=pe(),r=ye(),{isMobile:o}=Dr(),i=T(()=>{var s,c;return((s=t.value.blog)==null?void 0:s.sidebarDisplay)||((c=e.value.blog)==null?void 0:c.sidebarDisplay)||"mobile"});return()=>[l(pi),l(ui,{},{default:()=>r.value.home?l(Jh):l(Wh,()=>l(nm,{key:n.value.path})),...i.value!=="none"?{navScreenBottom:()=>l(tt("BloggerInfo"))}:{},...!o.value&&i.value==="always"?{sidebar:()=>l(tt("BloggerInfo"))}:{}})]}}
17),om=k({name:"NotFoundHint",setup(){const e=ie(),t=()=>{const n=e.value.routeLocales.notFoundMsg;return n[Math.floor(Math.random()*n.length)]};return()=>l("div",{class:"not-found-hint"},[l("p",{class:"error-code"},"404"),l("h1",{class:"error-title"},e.value.routeLocales.notFoundTitle),l("p",{class:"error-hint"},t())])}}),am=k({name:"NotFound",slots:Object,setup(e,{slots:t}){const n=Et(),r=ie(),{navigate:o}=ua({to:r.value.home??n.value});return()=>[l(pi),l(ui,{noSidebar:!0},()=>{var i;return l("main",{id:"main-content",class:"vp-page not-found"},((i=t.default)==null?void 0:i.call(t))||[l(om),l("div",{class:"actions"},[l("button",{type:"button",class:"action-button",onClick:()=>{window.history.go(-1)}},r.value.routeLocales.back),l("button",{type:"button",class:"action-button",onClick:()=>o()},r.value.routeLocales.home)])])})]}});const im={GitHub:'<svg xmlns="http://www.w3.org/2000/svg" class="icon github-icon" viewBox="0 0 1024 1024"><circle cx="512" cy="512" r="512" fill="#171515"/><path fill="#fff" d="M509.423 146.442c-200.317 0-362.756 162.42-362.756 362.8 0 160.266 103.936 296.24 248.109 344.217 18.139 3.327 24.76-7.872 24.76-17.486 0-8.613-.313-31.427-.49-61.702-100.912 21.923-122.205-48.63-122.205-48.63-16.495-41.91-40.28-53.067-40.28-53.067-32.937-22.51 2.492-22.053 2.492-22.053 36.407 2.566 55.568 37.386 55.568 37.386 32.362 55.438 84.907 39.43 105.58 30.143 3.296-23.444 12.667-39.43 23.032-48.498-80.557-9.156-165.246-40.28-165.246-179.297 0-39.604 14.135-71.988 37.342-97.348-3.731-9.178-16.18-46.063 3.556-96.009 0 0 30.46-9.754 99.76 37.19 28.937-8.048 59.97-12.071 90.823-12.211 30.807.14 61.843 4.165 90.822 12.21 69.26-46.944 99.663-37.189 99.663-37.189 19.792 49.946 7.34 86.831 3.61 96.01 23.25 25.359 37.29 57.742 37.29 97.347 0 139.366-84.82 170.033-165.637 179.013 13.026 11.2 24.628 33.342 24.628 67.182 0 48.498-.445 87.627-.445 99.521 0 9.702 6.535 20.988 24.945 17.444 144.03-48.067 247.881-183.95 247.881-344.175 0-200.378-162.442-362.798-362.802-362.798z"/></svg>',Gmail:'<svg xmlns="http://www.w3.org/2000/svg" class="icon gmail-icon" viewBox="0 0 1024 1024"><circle cx="512" cy="512" r="512" fill="#DB4437"/><path fill="#E67C73" d="M277.48 285.567h465.767v441.362H277.48V285.567z"/><path fill="#FFF" d="M282.543 285.567h-10.645c-25.962 0-47.122 21.808-47.122 48.705v343.952c0 26.897 21.08 48.705 47.122 48.705h24.976V407.954l213.49 169.95 213.489-169.95V726.93h24.975c26.04 0 47.123-21.809 47.123-48.705V334.272c0-26.897-21.134-48.705-47.123-48.705h-10.644L510.364 480.44 282.542 285.567z"/></svg>',Instagram:'<svg xmlns="http://www.w3.org/2000/svg" class="icon instagram-icon" viewBox="0 0 1024 1024"><circle cx="512" cy="512" r="512" fill="#181818"/><path fill="#fff" d="M512 348.16c-88.222 0-163.84 71.417-163.84 163.84 0 88.222 71.417 163.84 163.84 163.84 88.222 0 163.84-71.417 163.84-163.84 0-88.222-75.618-163.84-163.84-163.84zm0 268.866c-58.814 0-105.026-46.212-105.026-105.026S453.186 406.974 512 406.974 617 453.186 617 512s-46.186 105-105 105zM680.041 306.15c-21 0-37.81 16.804-37.81 37.809s16.805 37.81 37.81 37.81 37.81-16.805 37.81-37.81-16.805-37.81-37.81-37.81z"/><path fill="#FFF" d="M659.036 196.923h-16.804c-50.413-4.2-210.051-4.2-260.464 0-96.623-4.2-180.644 71.418-184.845 168.041v16.804c-4.2 50.413-4.2 210.051 0 260.464-4.2 96.623 71.418 180.644 168.041 184.845h16.804c50.413 4.2 210.051 4.2 260.464 0 96.623 4.2 180.644-71.418 184.845-168.041V381.768c4.2-96.623-71.418-180.644-168.041-184.845zM759.86 696.845c-12.604 29.407-33.609 50.412-58.815 58.814-121.83 16.805-247.86 16.805-373.891 0-29.407-12.603-50.412-33.608-58.814-58.814-12.604-63.015-16.805-126-12.604-184.845-4.2-63.015 0-126 12.604-184.845 12.603-29.407 33.608-50.412 58.814-58.814 121.83-16.805 247.86-16.805 373.891 0 29.407 12.603 50.412 33.608 58.815 58.814 12.603 63.015 16.804 126 12.603 184.845 4.2 63.015 0 126-12.603 184.845z"/></svg>',BiliBili:'<svg xmlns="http://www.w3.org/2000/svg" class="icon bilibili-icon" viewBox="0 0 1024 1024"><circle cx="512" cy="512" r="512" fill="#1296db"/><path fill="#fff" d="M745.363 177.725a47 47 0 0 1 0 66.3L702.5 286.85h44A141 141 0 0 1 887 427.512v281.25a141 141 0 0 1-141 140.626H277.25A141 141 0 0 1 137 708.763v-281.25a141 141 0 0 1 141-141h43.725l-42.788-42.825a47 47 0 1 1 66.263-66.3l99.45 99.45c2.963 2.962 5.438 6.187 7.425 9.637h120.487c1.988-3.45 4.5-6.75 7.463-9.675l99.413-99.45a47 47 0 0 1 66.3 0zm1.012 203.25h-468.75a47 47 0 0 0-46.763 43.388l-.112 3.525v281.25c0 24.712 19.125 44.962 43.387 46.724l3.488.15h468.75a47 47 0 0 0 46.763-43.387l.112-3.487v-281.25c0-26-21-47-47-46.876zm-375 93.75c26 0 47 21 47 47v47a47 47 0 1 1-93.75 0V521.6c0-26 21-47 47-47zm281.25 0c26 0 47 21 47 47v47a47 47 0 1 1-93.75 0V521.6c0-26 21-47 47-47z"/></svg>',Linkedin:'<svg xmlns="http://www.w3.org/2000/svg" class="icon linkedin-icon" viewB
17ox="0 0 1024 1024"><circle cx="512" cy="512" r="512" fill="#4376B1"/><path fill="#F1F2F2" d="M838.301 555.94v225.157h-130.54V571.03c0-52.746-18.847-88.766-66.112-88.766-36.069 0-57.496 24.25-66.959 47.732-3.436 8.391-4.322 20.045-4.322 31.814v219.277h-130.55s1.752-355.784 0-392.613h130.56v55.637c-.263.438-.633.867-.867 1.285h.866v-1.285c17.349-26.694 48.287-64.856 117.651-64.856 85.884 0 150.273 56.114 150.273 176.685zm-535.05-356.72c-44.655 0-73.87 29.314-73.87 67.826 0 37.695 28.368 67.855 72.157 67.855h.847c45.532 0 73.842-30.16 73.842-67.855-.866-38.512-28.31-67.825-72.975-67.825zM237.14 781.098h130.5V388.474h-130.5v392.623z"/></svg>'},sm={category:{"/":{path:"/category/",map:{article:{path:"/category/article/",keys:["v-06936ce2","v-7d008c13","v-5e224cd1","v-2687243d"]}}},"/zh/":{path:"/zh/category/",map:{"Web Development":{path:"/zh/category/web-development/",keys:["v-b9a7e75c"]},Javascript:{path:"/zh/category/javascript/",keys:["v-33efeade"]},React:{path:"/zh/category/react/",keys:["v-46cc72c2","v-0d95a860"]},Webpack:{path:"/zh/category/webpack/",keys:["v-e419e6a8"]},Git:{path:"/zh/category/git/",keys:["v-53fc6bc5","v-04c4d1b0","v-f6fd70dc","v-5d01f244","v-1e06748e","v-24dba1dd","v-2cb4d166","v-01bd5f3a","v-44537b6e","v-97a011c6","v-1acc0844","v-59be3c7a","v-241f8510"]},JSON:{path:"/zh/category/json/",keys:["v-831af89c"]},Markdown:{path:"/zh/category/markdown/",keys:["v-4be13b52"]},诗集:{path:"/zh/category/%E8%AF%97%E9%9B%86/",keys:["v-2c126a00","v-423a3e72","v-4cf8f48a","v-6b4794e2","v-ba974232","v-c5d31332"]},Python:{path:"/zh/category/python/",keys:["v-432d3449","v-3a586d6c","v-1948dcd8","v-f9fb0eaa","v-75006504","v-17fa6fb4","v-fc21c2da","v-129674b3","v-53e80598","v-7a83961f","v-95f376a0","v-933ec0a2","v-f3d0f51c","v-3f08bdf9","v-50f21f0c","v-4e4685f3","v-cc9cee16","v-c61e6ace","v-7c04bd09","v-7b7a9d88","v-28ee063a","v-33b5b5a3","v-799726d6","v-285de9ec","v-064f9d52","v-9d119dc4","v-18e3d38a","v-cdce4010","v-57087d82","v-0368ed62","v-36e8ccaa","v-1484fde2","v-7f883d1a"]},"VS Code":{path:"/zh/category/vs-code/",keys:["v-7c3bddbb","v-958385c6","v-1613c35d","v-05a75161","v-3c887c4f","v-28264260"]},YAML:{path:"/zh/category/yaml/",keys:["v-1df53f5c"]},服务器:{path:"/zh/category/%E6%9C%8D%E5%8A%A1%E5%99%A8/",keys:["v-7970903c","v-4bf552c6"]},Nodejs:{path:"/zh/category/nodejs/",keys:["v-67cc625a"]},"Web 后台":{path:"/zh/category/web-%E5%90%8E%E5%8F%B0/",keys:["v-6e4e7788","v-25e6d482","v-968db2fa","v-932401bc","v-227d2344","v-1f137206","v-1ba9c0c8","v-18400f8a","v-14d65e4c","v-116cad0e","v-0e02fbd0","v-0a994a92","v-29d0be61"]},计算机基础:{path:"/zh/category/%E8%AE%A1%E7%AE%97%E6%9C%BA%E5%9F%BA%E7%A1%80/",keys:["v-1b8c53e9","v-162556da","v-472e04df","v-2ff7e7e8"]},信息安全理论与技术:{path:"/zh/category/%E4%BF%A1%E6%81%AF%E5%AE%89%E5%85%A8%E7%90%86%E8%AE%BA%E4%B8%8E%E6%8A%80%E6%9C%AF/",keys:["v-314caf96"]},Linux:{path:"/zh/category/linux/",keys:["v-2bea7022","v-6a42c307","v-0cf9aff4","v-133ac9d7","v-2a66e722","v-bc083490","v-fb252294","v-5bab32ec","v-1107bfd3","v-767d010d","v-5277b8da","v-48fb12ca","v-64e8676c","v-5626af0a","v-6bccf559","v-53990d90","v-3e648e0d","v-5b7cb426","v-292c3a97","v-b66720f4","v-1793b3e4","v-b3426d14","v-1614bf50","v-7b5bf2c9","v-2093dc76","v-16cfbb48","v-20c70aee","v-5e4dc1f2","v-567f6762","v-13da8f84"]},Windows:{path:"/zh/category/windows/",keys:["v-0b816f4a","v-35b98e76","v-1b13a197","v-04d61852"]},"Web 前端":{path:"/zh/category/web-%E5%89%8D%E7%AB%AF/",keys:["v-638e3a4a","v-094854c8","v-0afd2d67","v-0cb20606","v-0e66dea5","v-101bb744","v-11d08fe3","v-13856882","v-153a4121","v-16ef19c0","v-18a3f25f","v-f3be390e","v-3e2e9009","v-3fe368a8","v-41984147","v-434d19e6","v-4501f285","v-46b6cb24","v-486ba3c3","v-f05487d0","v-ecead692","v-e9812554","v-e6177416","v-e2adc2d8","v-df44119a","v-dbda605c","v-1d12b96c","v-db1ff778","v-aa78c878","v-eff9dbfe","v-48d1f439","v-6d312ef6","v-0795e9a2","v-4fc31a0e","v-513d62aa","v-436b2946","v-68d4943b","v-30e2660a","v-25a5a411","v-32d14487","v-9b30d27c","v-59a5f9c8","v-b650462e","v-f38e476e","v-0d29ace8","v-fd602954","v-097ca47c","v-2dcb1c48","v-6bc9714f","v-3f8979b8","v-0ea466dc","v-7bdec560","v-c1e3e9d4","v-3126d72c","v-2e9263e8","v-5cd3eb5a","v-736a61c4","v-39e2a028","v-8c6caec6","v-4da54d6c","v-113c9bde","v-1d3920e4","v-1b1261ba","v-48842cd6","v-0cfb5d99","v-7c4de90c","v-1ec71643","v-42c3cb92","v-1883b494","v-52f31c6b","v-a89a2ea6","v-dbe56f44","v-4972fd35","v-56d5da46","v-26120e40","v-4bb587ca","v-1b4c4913","v-afd75e7a","v-58ec5a7e","v-afce6b58","v-51dee7fe","v-14066bb0","v-4e30cdc6","v-447404d0","v-04a024e8","v-dbf5bde6","v-46489ecd","v-58d70f88","v-3f2c3466","v-edae68e0","v-adb5d1e4","v-cd252a04","v-0b8c0619","v-ad77815e","v-6d15435e","v-60dc0da9","v-507a9b2e","v-0be5b805","v-71044cfd","v-72b9259c","v-746dfe3b","v-7622d6da","v-77d7af79","v-798c8818","v-7b4160b7","v-7cf63956","v-7eab11f5","v-0d9a90a4","v-0f4f6943","v-110441e2","v-12b91a81","v-146df320","v-1622cbbf","v-17d7a45e","v-198c7cfd","v-5f5b83be","v-2ac8355a","v-02ddc0a2","v-54f6ce60","v-4a160202","v-4bcadaa1","v-4d7fb340","v-4f348bdf","v-56aba6ff","v-58607f9e","v-5a15583d","v-5b
17ca30dc","v-5d7f097b","v-5f33e21a","v-60e8bab9","v-629d9358","v-7b5f9b1a","v-437b808a","v-2899cbee","v-dc3c55de","v-0e0889b8","v-5b731d25","v-31e2640c","v-0a0414b0","v-069a6372","v-0330b234","v-001c7f85","v-01d15824","v-038630c3","v-053b0962","v-06efe201","v-08a4baa0","v-0a59933f","v-2e78b2ce","v-2fe430e9","v-31990988","v-334de227","v-3502bac6","v-36b79365","v-2b0f0190","v-27a55052","v-243b9f14","v-20d1edd6","v-1d683c98","v-19fe8b5a","v-1694da1c","v-30861d29","v-5ba3237c","v-55c831be","v-aca7c608","v-6203752a","v-5f446a96","v-23c788a2","v-68c37a04","v-1858bc8a","v-c6393140"]},GitHub:{path:"/zh/category/github/",keys:["v-9f7c4d50","v-ee21c572"]},随写:{path:"/zh/category/%E9%9A%8F%E5%86%99/",keys:["v-dc745272","v-5dfeb152"]}}}},tag:{"/":{path:"/tag/",map:{"About Me":{path:"/tag/about-me/",keys:["v-0d31a857","v-a29a5852","v-9a292eba"]},Stack:{path:"/tag/stack/",keys:["v-06936ce2"]},Queue:{path:"/tag/queue/",keys:["v-06936ce2"]},DFS:{path:"/tag/dfs/",keys:["v-06936ce2"]},BFS:{path:"/tag/bfs/",keys:["v-06936ce2"]},Graph:{path:"/tag/graph/",keys:["v-5e224cd1"]},Recursion:{path:"/tag/recursion/",keys:["v-2687243d"]},Sort:{path:"/tag/sort/",keys:["v-7d008c13"]}}},"/zh/":{path:"/zh/tag/",map:{"About Me":{path:"/zh/tag/about-me/",keys:["v-6ad79348","v-bc3aed30"]},错误处理模型:{path:"/zh/tag/%E9%94%99%E8%AF%AF%E5%A4%84%E7%90%86%E6%A8%A1%E5%9E%8B/",keys:["v-b9a7e75c"]},Javascript:{path:"/zh/tag/javascript/",keys:["v-33efeade"]},"React 状态管理":{path:"/zh/tag/react-%E7%8A%B6%E6%80%81%E7%AE%A1%E7%90%86/",keys:["v-0d95a860"]},MobX:{path:"/zh/tag/mobx/",keys:["v-0d95a860"]},"React 进阶":{path:"/zh/tag/react-%E8%BF%9B%E9%98%B6/",keys:["v-46cc72c2"]},"Webpack 热更新":{path:"/zh/tag/webpack-%E7%83%AD%E6%9B%B4%E6%96%B0/",keys:["v-e419e6a8"]},Git:{path:"/zh/tag/git/",keys:["v-53fc6bc5","v-04c4d1b0","v-f6fd70dc","v-5d01f244","v-1e06748e","v-24dba1dd","v-2cb4d166","v-01bd5f3a","v-44537b6e","v-97a011c6","v-1acc0844","v-59be3c7a","v-241f8510"]},JSON:{path:"/zh/tag/json/",keys:["v-831af89c"]},Markdown:{path:"/zh/tag/markdown/",keys:["v-4be13b52"]},诗集:{path:"/zh/tag/%E8%AF%97%E9%9B%86/",keys:["v-2c126a00","v-423a3e72","v-4cf8f48a","v-6b4794e2","v-ba974232","v-c5d31332"]},Python:{path:"/zh/tag/python/",keys:["v-432d3449","v-3a586d6c","v-1948dcd8","v-f9fb0eaa","v-75006504","v-17fa6fb4","v-fc21c2da","v-129674b3","v-53e80598","v-7a83961f","v-95f376a0","v-933ec0a2","v-f3d0f51c","v-3f08bdf9","v-50f21f0c","v-4e4685f3","v-cc9cee16","v-c61e6ace","v-7c04bd09","v-7b7a9d88","v-28ee063a","v-33b5b5a3","v-799726d6","v-285de9ec","v-064f9d52","v-9d119dc4","v-18e3d38a","v-cdce4010","v-57087d82","v-0368ed62","v-36e8ccaa","v-1484fde2","v-7f883d1a"]},"VS Code":{path:"/zh/tag/vs-code/",keys:["v-7c3bddbb","v-958385c6","v-1613c35d","v-05a75161","v-3c887c4f","v-28264260"]},YAML:{path:"/zh/tag/yaml/",keys:["v-1df53f5c"]},Apache:{path:"/zh/tag/apache/",keys:["v-7970903c"]},Express:{path:"/zh/tag/express/",keys:["v-67cc625a"]},Nginx:{path:"/zh/tag/nginx/",keys:["v-4bf552c6"]},Servlet:{path:"/zh/tag/servlet/",keys:["v-6e4e7788","v-25e6d482","v-968db2fa","v-932401bc","v-227d2344","v-1f137206","v-1ba9c0c8","v-18400f8a","v-14d65e4c","v-116cad0e","v-0e02fbd0","v-0a994a92"]},MVC:{path:"/zh/tag/mvc/",keys:["v-6e4e7788","v-25e6d482","v-968db2fa","v-932401bc","v-227d2344","v-1f137206","v-1ba9c0c8","v-18400f8a","v-14d65e4c","v-116cad0e","v-0e02fbd0","v-0a994a92"]},JSP:{path:"/zh/tag/jsp/",keys:["v-6e4e7788","v-25e6d482","v-968db2fa","v-932401bc","v-227d2344","v-1f137206","v-1ba9c0c8","v-18400f8a","v-14d65e4c","v-116cad0e","v-0e02fbd0","v-0a994a92"]},JDBC:{path:"/zh/tag/jdbc/",keys:["v-6e4e7788","v-25e6d482","v-968db2fa","v-932401bc","v-227d2344","v-1f137206","v-1ba9c0c8","v-18400f8a","v-14d65e4c","v-116cad0e","v-0e02fbd0","v-0a994a92"]},计算机基础:{path:"/zh/tag/%E8%AE%A1%E7%AE%97%E6%9C%BA%E5%9F%BA%E7%A1%80/",keys:["v-1b8c53e9","v-162556da","v-472e04df","v-2ff7e7e8"]},文件编码:{path:"/zh/tag/%E6%96%87%E4%BB%B6%E7%BC%96%E7%A0%81/",keys:["v-1b8c53e9","v-162556da","v-472e04df","v-2ff7e7e8"]},操作系统:{path:"/zh/tag/%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F/",keys:["v-1b8c53e9","v-162556da","v-472e04df","v-2ff7e7e8"]},信息安全理论与技术:{path:"/zh/tag/%E4%BF%A1%E6%81%AF%E5%AE%89%E5%85%A8%E7%90%86%E8%AE%BA%E4%B8%8E%E6%8A%80%E6%9C%AF/",keys:["v-314caf96"]}
17,Linux:{path:"/zh/tag/linux/",keys:["v-2bea7022","v-6a42c307","v-0cf9aff4","v-133ac9d7","v-2a66e722","v-bc083490","v-fb252294","v-5bab32ec","v-1107bfd3","v-767d010d","v-5277b8da","v-48fb12ca","v-64e8676c","v-5626af0a","v-6bccf559","v-53990d90","v-3e648e0d","v-5b7cb426","v-292c3a97","v-b66720f4","v-1793b3e4","v-b3426d14","v-1614bf50","v-7b5bf2c9","v-2093dc76","v-16cfbb48","v-20c70aee","v-5e4dc1f2","v-567f6762","v-13da8f84"]},Windows:{path:"/zh/tag/windows/",keys:["v-0b816f4a","v-35b98e76","v-1b13a197","v-04d61852"]},"JS 进阶教程":{path:"/zh/tag/js-%E8%BF%9B%E9%98%B6%E6%95%99%E7%A8%8B/",keys:["v-638e3a4a","v-094854c8","v-0afd2d67","v-0cb20606","v-0e66dea5","v-101bb744","v-11d08fe3","v-13856882","v-153a4121","v-16ef19c0","v-18a3f25f","v-f3be390e","v-3e2e9009","v-3fe368a8","v-41984147","v-434d19e6","v-4501f285","v-46b6cb24","v-486ba3c3","v-f05487d0","v-ecead692","v-e9812554","v-e6177416","v-e2adc2d8","v-df44119a","v-dbda605c"]},Ajax:{path:"/zh/tag/ajax/",keys:["v-1858bc8a"]},Cookie:{path:"/zh/tag/cookie/",keys:["v-437b808a"]},localStorage:{path:"/zh/tag/localstorage/",keys:["v-437b808a"]},SessionStorage:{path:"/zh/tag/sessionstorage/",keys:["v-437b808a"]},浏览器的本地存储:{path:"/zh/tag/%E6%B5%8F%E8%A7%88%E5%99%A8%E7%9A%84%E6%9C%AC%E5%9C%B0%E5%AD%98%E5%82%A8/",keys:["v-437b808a"]},DOM:{path:"/zh/tag/dom/",keys:["v-54f6ce60","v-4a160202","v-4bcadaa1","v-4d7fb340","v-4f348bdf","v-56aba6ff","v-58607f9e","v-5a15583d","v-5bca30dc","v-5d7f097b","v-5f33e21a","v-60e8bab9","v-629d9358","v-7b5f9b1a"]},BOM:{path:"/zh/tag/bom/",keys:["v-54f6ce60","v-4a160202","v-4bcadaa1","v-4d7fb340","v-4f348bdf","v-56aba6ff","v-58607f9e","v-5a15583d","v-5bca30dc","v-5d7f097b","v-5f33e21a","v-60e8bab9","v-629d9358","v-7b5f9b1a"]},"HTML 进阶":{path:"/zh/tag/html-%E8%BF%9B%E9%98%B6/",keys:["v-dc3c55de"]},SVG:{path:"/zh/tag/svg/",keys:["v-dc3c55de"]},Canvas:{path:"/zh/tag/canvas/",keys:["v-dc3c55de"]},布局适配:{path:"/zh/tag/%E5%B8%83%E5%B1%80%E9%80%82%E9%85%8D/",keys:["v-dc3c55de"]},CSS:{path:"/zh/tag/css/",keys:["v-0e0889b8","v-aca7c608","v-68c37a04"]},HTML:{path:"/zh/tag/html/",keys:["v-68c37a04","v-c6393140"]},浏览器渲染原理:{path:"/zh/tag/%E6%B5%8F%E8%A7%88%E5%99%A8%E6%B8%B2%E6%9F%93%E5%8E%9F%E7%90%86/",keys:["v-5b731d25"]},性能优化:{path:"/zh/tag/%E6%80%A7%E8%83%BD%E4%BC%98%E5%8C%96/",keys:["v-5f5b83be","v-2ac8355a","v-02ddc0a2","v-5b731d25"]},函数防抖与函数节流:{path:"/zh/tag/%E5%87%BD%E6%95%B0%E9%98%B2%E6%8A%96%E4%B8%8E%E5%87%BD%E6%95%B0%E8%8A%82%E6%B5%81/",keys:["v-5b731d25"]},浏览器缓存机制:{path:"/zh/tag/%E6%B5%8F%E8%A7%88%E5%99%A8%E7%BC%93%E5%AD%98%E6%9C%BA%E5%88%B6/",keys:["v-5b731d25"]},css与js阻塞:{path:"/zh/tag/css%E4%B8%8Ejs%E9%98%BB%E5%A1%9E/",keys:["v-5b731d25"]},重绘重排:{path:"/zh/tag/%E9%87%8D%E7%BB%98%E9%87%8D%E6%8E%92/",keys:["v-5b731d25"]},"Http&Https":{path:"/zh/tag/http_https/",keys:["v-5ba3237c"]},interview:{path:"/zh/tag/interview/",keys:["v-1d12b96c"]},jQuery:{path:"/zh/tag/jquery/",keys:["v-58d70f88","v-3f2c3466","v-edae68e0","v-adb5d1e4","v-cd252a04","v-0b8c0619","v-ad77815e","v-6d15435e","v-60dc0da9"]},Bootstrap:{path:"/zh/tag/bootstrap/",keys:["v-55c831be"]},Less:{path:"/zh/tag/less/",keys:["v-aca7c608","v-6203752a"]},Scss:{path:"/zh/tag/scss/",keys:["v-aca7c608"]},Sass:{path:"/zh/tag/sass/",keys:["v-5f446a96"]}
17,TypeScript:{path:"/zh/tag/typescript/",keys:["v-4da54d6c","v-113c9bde","v-1d3920e4","v-1b1261ba","v-48842cd6","v-0cfb5d99","v-7c4de90c","v-1ec71643","v-42c3cb92","v-1883b494","v-52f31c6b","v-a89a2ea6","v-dbe56f44","v-4972fd35","v-56d5da46","v-26120e40","v-4bb587ca","v-1b4c4913","v-afd75e7a","v-58ec5a7e","v-afce6b58","v-51dee7fe","v-14066bb0","v-4e30cdc6","v-447404d0","v-04a024e8","v-dbf5bde6","v-46489ecd"]},"虚拟 DOM":{path:"/zh/tag/%E8%99%9A%E6%8B%9F-dom/",keys:["v-5f5b83be","v-2ac8355a","v-02ddc0a2"]},"Diff 算法":{path:"/zh/tag/diff-%E7%AE%97%E6%B3%95/",keys:["v-5f5b83be","v-2ac8355a","v-02ddc0a2"]},Vue:{path:"/zh/tag/vue/",keys:["v-507a9b2e","v-0be5b805","v-71044cfd","v-72b9259c","v-746dfe3b","v-7622d6da","v-77d7af79","v-798c8818","v-7b4160b7","v-7cf63956","v-7eab11f5","v-0d9a90a4","v-0f4f6943","v-110441e2","v-12b91a81","v-146df320","v-1622cbbf","v-17d7a45e","v-198c7cfd"]},MVVM:{path:"/zh/tag/mvvm/",keys:["v-507a9b2e","v-0be5b805","v-71044cfd","v-72b9259c","v-746dfe3b","v-7622d6da","v-77d7af79","v-798c8818","v-7b4160b7","v-7cf63956","v-7eab11f5","v-0d9a90a4","v-0f4f6943","v-110441e2","v-12b91a81","v-146df320","v-1622cbbf","v-17d7a45e","v-198c7cfd"]},Vuex:{path:"/zh/tag/vuex/",keys:["v-507a9b2e","v-0be5b805","v-71044cfd","v-72b9259c","v-746dfe3b","v-7622d6da","v-77d7af79","v-798c8818","v-7b4160b7","v-7cf63956","v-7eab11f5","v-0d9a90a4","v-0f4f6943","v-110441e2","v-12b91a81","v-146df320","v-1622cbbf","v-17d7a45e","v-198c7cfd"]},"Vue-router":{path:"/zh/tag/vue-router/",keys:["v-507a9b2e","v-0be5b805","v-71044cfd","v-72b9259c","v-746dfe3b","v-7622d6da","v-77d7af79","v-798c8818","v-7b4160b7","v-7cf63956","v-7eab11f5","v-0d9a90a4","v-0f4f6943","v-110441e2","v-12b91a81","v-146df320","v-1622cbbf","v-17d7a45e","v-198c7cfd"]},"Vue 源码分析":{path:"/zh/tag/vue-%E6%BA%90%E7%A0%81%E5%88%86%E6%9E%90/",keys:["v-507a9b2e","v-0be5b805","v-71044cfd","v-72b9259c","v-746dfe3b","v-7622d6da","v-77d7af79","v-798c8818","v-7b4160b7","v-7cf63956","v-7eab11f5","v-0d9a90a4","v-0f4f6943","v-110441e2","v-12b91a81","v-146df320","v-1622cbbf","v-17d7a45e","v-198c7cfd"]},Webpack:{path:"/zh/tag/webpack/",keys:["v-2899cbee"]},GitHub:{path:"/zh/tag/github/",keys:["v-9f7c4d50","v-ee21c572"]},随写:{path:"/zh/tag/%E9%9A%8F%E5%86%99/",keys:["v-dc745272","v-5dfeb152"]},"ECMA Script6":{path:"/zh/tag/ecma-script6/",keys:["v-db1ff778","v-aa78c878","v-eff9dbfe","v-48d1f439","v-6d312ef6","v-0795e9a2","v-4fc31a0e","v-513d62aa","v-436b2946","v-68d4943b","v-30e2660a","v-25a5a411","v-32d14487","v-9b30d27c","v-59a5f9c8","v-b650462e","v-f38e476e","v-0d29ace8","v-fd602954","v-097ca47c","v-2dcb1c48","v-6bc9714f","v-3f8979b8","v-0ea466dc","v-7bdec560","v-c1e3e9d4","v-3126d72c","v-2e9263e8","v-5cd3eb5a","v-736a61c4","v-39e2a028","v-8c6caec6"]},JavaScript:{path:"/zh/tag/javascript/",keys:["v-31e2640c","v-0a0414b0","v-069a6372","v-0330b234","v-001c7f85","v-01d15824","v-038630c3","v-053b0962","v-06efe201","v-08a4baa0","v-0a59933f","v-2e78b2ce","v-2fe430e9","v-31990988","v-334de227","v-3502bac6","v-36b79365","v-2b0f0190","v-27a55052","v-243b9f14","v-20d1edd6","v-1d683c98","v-19fe8b5a","v-1694da1c","v-30861d29"]},"Promise 对象":{path:"/zh/tag/promise-%E5%AF%B9%E8%B1%A1/",keys:["v-31e2640c","v-0a0414b0","v-069a6372","v-0330b234","v-001c7f85","v-01d15824","v-038630c3","v-053b0962","v-06efe201","v-08a4baa0","v-0a59933f","v-2e78b2ce","v-2fe430e9","v-31990988","v-334de227","v-3502bac6","v-36b79365","v-2b0f0190","v-27a55052","v-243b9f14","v-20d1edd6","v-1d683c98","v-19fe8b5a","v-1694da1c","v-30861d29"]},"JS 异步":{path:"/zh/tag/js-%E5%BC%82%E6%AD%A5/",keys:["v-31e2640c","v-0a0414b0","v-069a6372","v-0330b234","v-001c7f85","v-01d15824","v-038630c3","v-053b0962","v-06efe201","v-08a4baa0","v-0a59933f","v-2e78b2ce","v-2fe430e9","v-31990988","v-334de227","v-3502bac6","v-36b79365","v-2b0f0190","v-27a55052","v-243b9f14","v-20d1edd6","v-1d683c98","v-19fe8b5a","v-1694da1c","v-30861d29"]},"async 与 await":{path:"/zh/tag/async-%E4%B8%8E-await/",keys:["v-31e2640c","v-0a0414b0","v-069a6372","v-0330b234","v-001c7f85","v-01d15824","v-038630c3","v-053b0962","v-06efe201","v-08a4baa0","v-0a59933f","v-2e78b2ce","v-2fe430e9","v-31990988","v-334de227","v-3502bac6","v-36b79365","v-2b0f0190","v-27a55052","v-243b9f14","v-20d1edd6","v-1d683c98","v-19fe8b5a","v-1694da1c","v-30861d29"]}}}}},lm={article:{"/":{path:"/article/",keys:["v-0d31a857","v-a29a5852","v-06936ce2","v-7d008c13","v-5e224cd1","v-2687243d","v-9a292eba"]},"/zh/":{path:"/zh/article/",keys:["v-6ad79348","v-46cc72c2","v-b9a7e75c","v-33efeade","v-e419e6a8","v-0d95a860","v-bc3aed30","v-831af89c","v-1df53f5c","v-dc745272","v-638e3a4a","v-094854c8","v-0afd2d67","v-0cb20606","v-0e66dea5","v-101bb744","v-11d08fe3","v-13856882","v-153a4121","v-16ef19c0","v-18a3f25f","v-f3be390e","v-3e2e9009","v-3fe368a8","v-41984147","v-434d19e6","v-4501f285","v-46b6cb24","v-486ba3c3","v-f05487d0","v-ecead692","v-e9812554","v-e6177416","v-e2adc2d8","v-df44119a","v-dbda605c","v-1d12b96c","v-db1ff778","v-a
17a78c878","v-eff9dbfe","v-48d1f439","v-6d312ef6","v-0795e9a2","v-4fc31a0e","v-513d62aa","v-436b2946","v-68d4943b","v-30e2660a","v-25a5a411","v-32d14487","v-9b30d27c","v-59a5f9c8","v-b650462e","v-f38e476e","v-0d29ace8","v-fd602954","v-097ca47c","v-2dcb1c48","v-6bc9714f","v-3f8979b8","v-0ea466dc","v-7bdec560","v-c1e3e9d4","v-3126d72c","v-2e9263e8","v-5cd3eb5a","v-736a61c4","v-39e2a028","v-8c6caec6","v-4da54d6c","v-113c9bde","v-1d3920e4","v-1b1261ba","v-48842cd6","v-0cfb5d99","v-7c4de90c","v-1ec71643","v-42c3cb92","v-1883b494","v-52f31c6b","v-a89a2ea6","v-dbe56f44","v-4972fd35","v-56d5da46","v-26120e40","v-4bb587ca","v-1b4c4913","v-afd75e7a","v-58ec5a7e","v-afce6b58","v-51dee7fe","v-14066bb0","v-4e30cdc6","v-447404d0","v-04a024e8","v-dbf5bde6","v-46489ecd","v-314caf96","v-6e4e7788","v-25e6d482","v-968db2fa","v-932401bc","v-227d2344","v-1f137206","v-1ba9c0c8","v-18400f8a","v-14d65e4c","v-116cad0e","v-0e02fbd0","v-0a994a92","v-58d70f88","v-3f2c3466","v-edae68e0","v-adb5d1e4","v-cd252a04","v-0b8c0619","v-ad77815e","v-6d15435e","v-60dc0da9","v-507a9b2e","v-0be5b805","v-71044cfd","v-72b9259c","v-746dfe3b","v-7622d6da","v-77d7af79","v-798c8818","v-7b4160b7","v-7cf63956","v-7eab11f5","v-0d9a90a4","v-0f4f6943","v-110441e2","v-12b91a81","v-146df320","v-1622cbbf","v-17d7a45e","v-198c7cfd","v-5f5b83be","v-2ac8355a","v-02ddc0a2","v-4be13b52","v-54f6ce60","v-4a160202","v-4bcadaa1","v-4d7fb340","v-4f348bdf","v-56aba6ff","v-58607f9e","v-5a15583d","v-5bca30dc","v-5d7f097b","v-5f33e21a","v-60e8bab9","v-629d9358","v-7b5f9b1a","v-2c126a00","v-1b8c53e9","v-162556da","v-472e04df","v-2ff7e7e8","v-5dfeb152","v-423a3e72","v-4cf8f48a","v-6b4794e2","v-ba974232","v-c5d31332","v-67cc625a","v-437b808a","v-2899cbee","v-dc3c55de","v-0e0889b8","v-432d3449","v-3a586d6c","v-1948dcd8","v-f9fb0eaa","v-7970903c","v-4bf552c6","v-75006504","v-17fa6fb4","v-fc21c2da","v-129674b3","v-53e80598","v-7a83961f","v-95f376a0","v-933ec0a2","v-f3d0f51c","v-3f08bdf9","v-50f21f0c","v-4e4685f3","v-cc9cee16","v-c61e6ace","v-7c04bd09","v-7b7a9d88","v-28ee063a","v-33b5b5a3","v-799726d6","v-285de9ec","v-064f9d52","v-9d119dc4","v-18e3d38a","v-cdce4010","v-57087d82","v-0368ed62","v-36e8ccaa","v-1484fde2","v-7f883d1a","v-5b731d25","v-31e2640c","v-0a0414b0","v-069a6372","v-0330b234","v-001c7f85","v-01d15824","v-038630c3","v-053b0962","v-06efe201","v-08a4baa0","v-0a59933f","v-2e78b2ce","v-2fe430e9","v-31990988","v-334de227","v-3502bac6","v-36b79365","v-2b0f0190","v-27a55052","v-243b9f14","v-20d1edd6","v-1d683c98","v-19fe8b5a","v-1694da1c","v-30861d29","v-719c1fb2","v-53fc6bc5","v-04c4d1b0","v-f6fd70dc","v-5d01f244","v-1e06748e","v-24dba1dd","v-2cb4d166","v-01bd5f3a","v-44537b6e","v-97a011c6","v-1acc0844","v-59be3c7a","v-241f8510","v-29d0be61","v-2bea7022","v-6a42c307","v-0cf9aff4","v-133ac9d7","v-5ba3237c","v-9f7c4d50","v-ee21c572","v-2a66e722","v-bc083490","v-fb252294","v-5bab32ec","v-1107bfd3","v-767d010d","v-5277b8da","v-48fb12ca","v-64e8676c","v-5626af0a","v-6bccf559","v-53990d90","v-3e648e0d","v-5b7cb426","v-292c3a97","v-b66720f4","v-1793b3e4","v-b3426d14","v-1614bf50","v-7b5bf2c9","v-2093dc76","v-16cfbb48","v-20c70aee","v-5e4dc1f2","v-567f6762","v-13da8f84","v-5ee8cb00","v-55c831be","v-aca7c608","v-6203752a","v-5f446a96","v-23c788a2","v-68c37a04","v-7c3bddbb","v-958385c6","v-1613c35d","v-05a75161","v-3c887c4f","v-28264260","v-0b816f4a","v-35b98e76","v-1b13a197","v-04d61852","v-1858bc8a","v-c6393140"]}},star:{"/":{path:"/star/",keys:["v-0d31a857","v-a29a5852","v-06936ce2","v-7d008c13","v-5e224cd1","v-2687243d","v-9a292eba"]},"/zh/":{path:"/zh/star/",keys:["v-6ad79348","v-46cc72c2","v-b9a7e75c","v-33efeade","v-e419e6a8","v-0d95a860","v-bc3aed30"]}},timeline:{"/":{path:"/timeline/",keys:["v-5e224cd1","v-06936ce2","v-7d008c13","v-2687243d","v-9a292eba","v-0d31a857","v-a29a5852"]},"/zh/":{path:"/zh/timeline/",keys:["v-831af89c","v-1df53f5c","v-bc3aed30","v-6ad79348","v-dc745272","v-b9a7e75c","v-33efeade","v-e419e6a8","v-0d95a860","v-46cc72c2","v-638e3a4a","v-094854c8","v-0afd2d67","v-0cb20606","v-0e66dea5","v-101bb744","v-11d08fe3","v-13856882","v-153a4121","v-16ef19c0","v-18a3f25f","v-f3be390e","v-3e2e9009","v-3fe368a8","v-41984147","v-434d19e6","v-4501f285","v-46b6cb24","v-486ba3c3","v-f05487d0","v-ecead692","v-e9812554","v-e6177416","v-e2adc2d8","v-df44119a","v-dbda605c","v-1d12b96c","v-db1ff778","v-a
17a78c878","v-eff9dbfe","v-48d1f439","v-6d312ef6","v-0795e9a2","v-4fc31a0e","v-513d62aa","v-436b2946","v-68d4943b","v-30e2660a","v-25a5a411","v-32d14487","v-9b30d27c","v-59a5f9c8","v-b650462e","v-f38e476e","v-0d29ace8","v-fd602954","v-097ca47c","v-2dcb1c48","v-6bc9714f","v-3f8979b8","v-0ea466dc","v-7bdec560","v-c1e3e9d4","v-3126d72c","v-2e9263e8","v-5cd3eb5a","v-736a61c4","v-39e2a028","v-8c6caec6","v-4da54d6c","v-113c9bde","v-1d3920e4","v-1b1261ba","v-48842cd6","v-0cfb5d99","v-7c4de90c","v-1ec71643","v-42c3cb92","v-1883b494","v-52f31c6b","v-a89a2ea6","v-dbe56f44","v-4972fd35","v-56d5da46","v-26120e40","v-4bb587ca","v-1b4c4913","v-afd75e7a","v-58ec5a7e","v-afce6b58","v-51dee7fe","v-14066bb0","v-4e30cdc6","v-447404d0","v-04a024e8","v-dbf5bde6","v-46489ecd","v-314caf96","v-6e4e7788","v-25e6d482","v-968db2fa","v-932401bc","v-227d2344","v-1f137206","v-1ba9c0c8","v-18400f8a","v-14d65e4c","v-116cad0e","v-0e02fbd0","v-0a994a92","v-58d70f88","v-3f2c3466","v-edae68e0","v-adb5d1e4","v-cd252a04","v-0b8c0619","v-ad77815e","v-6d15435e","v-60dc0da9","v-507a9b2e","v-0be5b805","v-71044cfd","v-72b9259c","v-746dfe3b","v-7622d6da","v-77d7af79","v-798c8818","v-7b4160b7","v-7cf63956","v-7eab11f5","v-0d9a90a4","v-0f4f6943","v-110441e2","v-12b91a81","v-146df320","v-1622cbbf","v-17d7a45e","v-198c7cfd","v-5f5b83be","v-2ac8355a","v-02ddc0a2","v-4be13b52","v-54f6ce60","v-4a160202","v-4bcadaa1","v-4d7fb340","v-4f348bdf","v-56aba6ff","v-58607f9e","v-5a15583d","v-5bca30dc","v-5d7f097b","v-5f33e21a","v-60e8bab9","v-629d9358","v-7b5f9b1a","v-2c126a00","v-1b8c53e9","v-162556da","v-472e04df","v-2ff7e7e8","v-5dfeb152","v-423a3e72","v-4cf8f48a","v-6b4794e2","v-ba974232","v-c5d31332","v-67cc625a","v-437b808a","v-2899cbee","v-dc3c55de","v-0e0889b8","v-432d3449","v-3a586d6c","v-1948dcd8","v-f9fb0eaa","v-7970903c","v-4bf552c6","v-75006504","v-17fa6fb4","v-fc21c2da","v-129674b3","v-53e80598","v-7a83961f","v-95f376a0","v-933ec0a2","v-f3d0f51c","v-3f08bdf9","v-50f21f0c","v-4e4685f3","v-cc9cee16","v-c61e6ace","v-7c04bd09","v-7b7a9d88","v-28ee063a","v-33b5b5a3","v-799726d6","v-285de9ec","v-064f9d52","v-9d119dc4","v-18e3d38a","v-cdce4010","v-57087d82","v-0368ed62","v-36e8ccaa","v-1484fde2","v-7f883d1a","v-5b731d25","v-31e2640c","v-0a0414b0","v-069a6372","v-0330b234","v-001c7f85","v-01d15824","v-038630c3","v-053b0962","v-06efe201","v-08a4baa0","v-0a59933f","v-2e78b2ce","v-2fe430e9","v-31990988","v-334de227","v-3502bac6","v-36b79365","v-2b0f0190","v-27a55052","v-243b9f14","v-20d1edd6","v-1d683c98","v-19fe8b5a","v-1694da1c","v-30861d29","v-719c1fb2","v-53fc6bc5","v-04c4d1b0","v-f6fd70dc","v-5d01f244","v-1e06748e","v-24dba1dd","v-2cb4d166","v-01bd5f3a","v-44537b6e","v-97a011c6","v-1acc0844","v-59be3c7a","v-241f8510","v-29d0be61","v-2bea7022","v-6a42c307","v-0cf9aff4","v-133ac9d7","v-5ba3237c","v-9f7c4d50","v-ee21c572","v-2a66e722","v-bc083490","v-fb252294","v-5bab32ec","v-1107bfd3","v-767d010d","v-5277b8da","v-48fb12ca","v-64e8676c","v-5626af0a","v-6bccf559","v-53990d90","v-3e648e0d","v-5b7cb426","v-292c3a97","v-b66720f4","v-1793b3e4","v-b3426d14","v-1614bf50","v-7b5bf2c9","v-2093dc76","v-16cfbb48","v-20c70aee","v-5e4dc1f2","v-567f6762","v-13da8f84","v-5ee8cb00","v-55c831be","v-aca7c608","v-6203752a","v-5f446a96","v-23c788a2","v-68c37a04","v-7c3bddbb","v-958385c6","v-1613c35d","v-05a75161","v-3c887c4f","v-28264260","v-0b816f4a","v-35b98e76","v-1b13a197","v-04d61852","v-1858bc8a","v-c6393140"]}}},Ws=J(sm),Nd=(e="")=>{const t=pe(),n=He(),r=Et();return T(()=>{var o;const i=e||((o=ye().value.blog)==null?void 0:o.key)||"";if(!i)return console.warn("useBlogCategory: key not found"),{path:"/",map:{}};const s=n.getRoutes();if(!Ws.value[i])throw new Error(`useBlogCategory: key ${i}
17 is invalid`);const c=Ws.value[i][r.value],d={path:c.path,map:{}};for(const u in c.map){const v=c.map[u];d.map[u]={path:v.path,items:[]};for(const f of v.keys){const h=s.find(({name:m})=>m===f);if(h){const m=Pr(n,h.path);d.map[u].items.push({path:m.path,info:m.meta})}}t.value.path===v.path&&(d.currentItems=d.map[u].items)}return d})},Ns=J(lm),yo=(e="")=>{const t=He(),n=Et();return T(()=>{var r;const o=e||((r=ye().value.blog)==null?void 0:r.key)||"";if(!o)return console.warn("useBlogType: key not found"),{path:"/",items:[]};if(!Ns.value[o])throw new Error(`useBlogType: key ${e} is invalid`);const i=t.getRoutes(),s=Ns.value[o][n.value],c={path:s.path,items:[]};for(const d of s.keys){const u=i.find(({name:v})=>v===d);if(u){const v=Pr(t,u.path);c.items.push({path:v.path,info:v.meta})}}return c})};const cm="/assets/hero-197a9d2d.jpg",Hd=Symbol.for("categoryMap"),Ir=()=>{const e=me(Hd);if(!e)throw new Error("useCategoryMap() is called without provider.");return e},dm=()=>{const e=Nd("category");bt(Hd,e)},Vr=()=>{const e=Zt(),t=ie();return T(()=>({...e.value.blog,...t.value.blog}))},Jd=Symbol.for("tagMap"),Rr=()=>{const e=me(Jd);if(!e)throw new Error("useTagMap() is called without provider.");return e},um=()=>{const e=Nd("tag");bt(Jd,e)},vm=e=>{const t=ie();return T(()=>{const{[Ee.author]:n}=e.value;return n?pr(n):n===!1?[]:pr(t.value.author,!1)})},pm=e=>{const t=Ir();return T(()=>bc(e.value[Ee.category]).map(n=>({name:n,path:t.value.map[n].path})))},fm=e=>{const t=Rr();return T(()=>gc(e.value[Ee.tag]).map(n=>({name:n,path:t.value.map[n].path})))},hm=e=>T(()=>{const{[Ee.date]:t}=e.value;return Ya(t)}),mm=e=>{const t=Mn(e,"info"),n=Vr(),r=vm(t),o=pm(t),i=fm(t),s=hm(t),c=ad(),d=T(()=>({author:r.value,category:o.value,date:s.value,localizedDate:t.value[Ee.localizedDate]||"",tag:i.value,isOriginal:t.value[Ee.isOriginal]||!1,readingTime:t.value[Ee.readingTime]||null,readingTimeLocale:t.value[Ee.readingTime]&&c.value?od(t.value[Ee.readingTime],c.value):null,pageview:e.path})),u=T(()=>n.value.articleInfo);return{info:d,items:u}},Gd=Symbol(""),Sr=()=>{const e=me(Gd);if(!e)throw new Error("useArticles() is called without provider.");return e},_m=()=>{const e=yo("article");bt(Gd,e)},qd=Symbol(""),fi=()=>{const e=me(qd);if(!e)throw new Error("useStars() is called without provider.");return e},bm=()=>{const e=yo("star");bt(qd,e)},Ud=Symbol(""),hi=()=>{const e=me(Ud);if(!e)throw new Error("useTimelines() is called without provider.");return e},gm=()=>{const e=yo("timeline"),t=T(()=>{const n=[];return e.value.items.forEach(({info:r,path:o})=>{const i=Ya(r[Ee.date]),s=i==null?void 0:i.getFullYear(),c=i?i.getMonth()+1:null,d=i==null?void 0:i.getDate();s&&c&&d&&((!n[0]||n[0].year!==s)&&n.unshift({year:s,items:[]}),n[0].items.push({date:`${c}/${d}`,info:r,path:o}))}),{...e.value,config:n.reverse()}});bt(Ud,t)},Em=()=>{_m(),dm(),bm(),um(),gm()};var ym=k({name:"SocialMedia",setup(){const e=Vr(),t=Hn(),n=T(()=>{const r=e.value.medias;return r?Wn(r).map(([o,i])=>({name:o,icon:im[o],url:i})):[]});return()=>n.value.length?l("div",{class:"vp-social-medias"},n.value.map(({name:r,icon:o,url:i})=>l("a",{class:"vp-social-media",href:i,rel:"noopener noreferrer",target:"_blank","aria-label":r,...t.value?{}:{"data-balloon-pos":"up"},innerHTML:o}))):null}}),mi=k({name:"BloggerInfo",setup(){const e=Vr(),t=Fn(),n=ie(),r=Sr(),o=Ir(),i=Rr(),s=hi(),c=Or(),d=T(()=>{var h;return e.value.name||((h=pr(n.value.author)[0])==null?void 0:h.name)||t.value.title}),u=T(()=>e.value.avatar||n.value.logo),v=T(()=>n.value.blogLocales),f=T(()=>e.value.intro);return()=>{const{article:h,category:m,tag:E,timeline:A}=v.value,L=[[r.value.path,r.value.items.length,h],[o.value.path,nt(o.value.map).length,m],[i.value.path,nt(i.value.map).length,E],[s.value.path,s.value.items.length,A]];return l("div",{class:"vp-blogger-info",vocab:"https://schema.org/",typeof:"Person"},[l("div",{class:"vp-blogger",...f.value?{style:{cursor:"pointer"},"aria-label":v.value.intro,"data-balloon-pos":"down",role:"navigation",onClick:()=>c(f.value)}:{}},[u.value?l("img",{class:["vp-blogger-avatar",{round:e.value.roundAvatar}],src:Pe(u.value),property:"image",alt:"Blogger Avatar"}):null,d.value?l("div",{class:"vp-blogger-name",property:"name"},d.value):null,e.value.description?l("div",{class:"vp-blogger-description",innerHTML:e.value.description}):null,f.value?l("meta",{property:"url",content:Pe(f.value)}):null]),l("div",{class:"vp-blog-counts"},L.map(([g,y,P])=>l(Me,{class:"vp-blog-count",to:g},()=>[l("div",{class:"count"},y),l("div",P)]))),l(ym)])}}});const ba=()=>l(ae,{name:"category"},()=>l("path",{d:"M148.41 106.992h282.176c22.263 0 40.31 18.048 40.31 40.31V429.48c0 22.263-18.047 40.31-40.31 40.31H148.41c-22.263 0-40.311-18.047-40.311-40.31V147.302c0-22.263 18.048-40.31 40.311-40.31zM147.556 553.478H429.73c22.263 0 40.311 18.048 40.311 40.31v282.176c0 22.263-18.048 40.312-40.31 40.312H147.555c-22.263 0-40.311-18.049-40.311-40.312V593.79c0-22.263 18.048-40.311 40.31-40.311zM593.927 106.992h282.176c22.263 0 40.31 18.048 40.31 40.31V429.48c0 22.263-18.047 40.31-40.31 40.31H593.927c-22.263 0-40.311-18.047-40.311-40.31V147.302c0-22.263 18.048-40.31 40.31-40.31zM730.22 920.502H623.926c-40.925 0-74.22-33.388-74.22-74.425V623.992c0-41.038 33.387-74.424 74.425-74.424h222.085c41.038 0 74.424 33.226 74.424 74.067v114.233c0 10.244-8.304 18.548-18.547 18.548s-18.548-8.304-18.548-18.548V623.635c0-20.388-16.746-36.974-37.33-36.974H624.13c-20.585 0-37.331 16.747-37.331 37.33v222.086c0 20.585 16.654 37.331 37.126 37.331H730.22c10.243 0 18.547 8.304 18.547 18.547 0 10.244-8.304 18.547-18.547 18.547z"}));
17ba.displayName="CategoryIcon";const ga=()=>l(ae,{name:"tag"},()=>l("path",{d:"M939.902 458.563L910.17 144.567c-1.507-16.272-14.465-29.13-30.737-30.737L565.438 84.098h-.402c-3.215 0-5.726 1.005-7.634 2.913l-470.39 470.39a10.004 10.004 0 000 14.164l365.423 365.424c1.909 1.908 4.42 2.913 7.132 2.913s5.223-1.005 7.132-2.913l470.39-470.39c2.01-2.11 3.014-5.023 2.813-8.036zm-240.067-72.121c-35.458 0-64.286-28.828-64.286-64.286s28.828-64.285 64.286-64.285 64.286 28.828 64.286 64.285-28.829 64.286-64.286 64.286z"}));ga.displayName="TagIcon";const _i=()=>l(ae,{name:"timeline"},()=>l("path",{d:"M511.997 70.568c-243.797 0-441.429 197.633-441.429 441.435 0 243.797 197.632 441.429 441.43 441.429S953.431 755.8 953.431 512.002c0-243.796-197.637-441.434-441.435-441.434zm150.158 609.093-15.605 15.61c-8.621 8.615-22.596 8.615-31.215 0L472.197 552.126c-4.95-4.944-4.34-14.888-4.34-24.677V247.14c0-12.19 9.882-22.07 22.07-22.07h22.07c12.19 0 22.07 9.882 22.07 22.07v273.218l128.088 128.088c8.62 8.62 8.62 22.595 0 31.215zm0 0"}));_i.displayName="TimelineIcon";const Kd=()=>l(ae,{name:"slides"},()=>l("path",{d:"M896 170.667v426.666a85.333 85.333 0 0 1-85.333 85.334h-256v61.184l192.597 115.584-43.861 73.13-148.736-89.173v95.275h-85.334v-95.318l-148.736 89.216-43.861-73.13 192.597-115.627v-61.141h-256A85.333 85.333 0 0 1 128 597.333V170.667H85.333V85.333h853.334v85.334H896zm-682.667 0v426.666h597.334V170.667H213.333zM426.667 512h-85.334V341.333h85.334V512zm128 0h-85.334V256h85.334v256zm128 0h-85.334V384h85.334v128z"}));Kd.displayName="SlideIcon";const Qd=()=>l(ae,{name:"sticky"},()=>[l("path",{d:"m381.3 733.8l-161.9 118c-5.9 4.5-13.2 6.6-20.1 6.6-8.7 0-17.7-3.4-24.3-10-12.2-12.2-13.9-31.3-3.5-45.2l144.5-195.5-113.6-112.9c-11.1-11.1-13.2-28.4-5.5-42 5.5-8.7 52.1-76.4 155.5-51 1.8 0.3 3.5 0.3 5.6 0.7 4.2 0.3 9 0.7 14.2 1.7 21.9 3.5 60.8-13.9 94.5-42.7 32.3-27.5 53.1-59.4 53.1-81.6 0-5.2 0-10.8-0.3-16-0.7-20.8-2.1-52.8 21.5-76.4 28.1-28.1 72.9-30.6 103.9-5.2 0.6 0.3 1 1 1.7 1.7 16.7 16.3 187.5 187.2 189.3 188.9 14.5 14.6 22.9 34.4 22.9 55.3 0 20.8-8 40.2-22.9 54.8-23.7 23.6-56 22.6-77.1 21.6-4.9 0-10.5-0.4-15.7-0.4-20.8 0-45.8 14.6-70.5 41.3-34.3 37.5-55.5 85.8-53.8 107.7 0.7 6.9 2.1 19.1 2.4 20.8 25 101.4-42.7 147.6-50.7 152.8-13.9 8.4-31.6 6.3-42.7-4.8l-112.1-112.2z"})]);Qd.displayName="StickyIcon";const ao=()=>l(ae,{name:"article"},()=>l("path",{d:"M853.333 938.667H170.667A42.667 42.667 0 0 1 128 896V128a42.667 42.667 0 0 1 42.667-42.667h682.666A42.667 42.667 0 0 1 896 128v768a42.667 42.667 0 0 1-42.667 42.667zm-42.666-85.334V170.667H213.333v682.666h597.334zM298.667 256h170.666v170.66
177H298.667V256zm0 256h426.666v85.333H298.667V512zm0 170.667h426.666V768H298.667v-85.333zm256-384h170.666V384H554.667v-85.333z"}));ao.displayName="ArticleIcon";const Xd=()=>l(ae,{name:"book"},()=>l("path",{d:"M256 853.333h426.667A85.333 85.333 0 0 0 768 768V256a85.333 85.333 0 0 0-85.333-85.333H469.333a42.667 42.667 0 0 1 0-85.334h213.334A170.667 170.667 0 0 1 853.333 256v512a170.667 170.667 0 0 1-170.666 170.667H213.333A42.667 42.667 0 0 1 170.667 896V128a42.667 42.667 0 0 1 42.666-42.667h128A42.667 42.667 0 0 1 384 128v304.256l61.653-41.088a42.667 42.667 0 0 1 47.36 0l61.654 41.045V256A42.667 42.667 0 0 1 640 256v256a42.667 42.667 0 0 1-66.347 35.499l-104.32-69.547-104.32 69.547A42.667 42.667 0 0 1 298.667 512V170.667H256v682.666z"}));Xd.displayName="BookIcon";const Yd=()=>l(ae,{name:"link"},()=>l("path",{d:"M460.8 584.533c17.067 17.067 17.067 42.667 0 59.734-17.067 17.066-42.667 17.066-59.733 0-85.334-85.334-85.334-217.6 0-302.934L554.667 192C640 110.933 776.533 110.933 857.6 196.267c81.067 81.066 81.067 213.333 0 294.4l-68.267 64c0-34.134-4.266-68.267-17.066-102.4l21.333-21.334c51.2-46.933 55.467-128 4.267-179.2s-128-55.466-179.2-4.266c-4.267 0-4.267 4.266-4.267 4.266L465.067 401.067c-51.2 51.2-51.2 132.266-4.267 183.466m123.733-183.466C601.6 384 627.2 384 644.267 401.067c85.333 85.333 85.333 217.6 0 302.933l-153.6 149.333C405.333 934.4 268.8 934.4 187.733 849.067c-81.066-81.067-81.066-213.334 0-294.4l68.267-64c0 34.133 4.267 72.533 17.067 102.4L251.733 614.4C204.8 665.6 204.8 746.667 256 793.6c51.2 46.933 123.733 46.933 174.933 0l149.334-149.333c51.2-51.2 51.2-128 0-179.2-12.8-17.067-17.067-46.934 4.266-64z"}));Yd.displayName="LinkIcon";const Zd=()=>l(ae,{name:"project"},()=>l("path",{d:"M987.456 425.152H864V295.296a36.48 36.48 0 0 0-36.544-36.544h-360l-134.08-128.256A9.344 9.344 0 0 0 327.04 128H36.48A36.48 36.48 0 0 0 0 164.544v676.608a36.48 36.48 0 0 0 36.544 36.544h797.76a36.672 36.672 0 0 0 33.92-22.848L1021.44 475.52a36.48 36.48 0 0 0-33.92-50.304zM82.304 210.304h215.424l136.64 130.752h347.328v84.096H198.848A36.672 36.672 0 0 0 164.928 448L82.304 652.8V210.304zM808.32 795.456H108.544l118.08-292.608h699.904L808.32 795.52z"}));Zd.displayName="ProjectIcon";const e0=()=>l(ae,{name:"friend"},()=>l("path",{d:"M860.16 213.333A268.373 268.373 0 0 0 512 186.027a267.52 267.52 0 0 0-348.16 404.48L428.8 855.893a118.613 118.613 0 0 0 166.4 0l264.96-265.386a267.52 267.52 0 0 0 0-377.174zM800 531.627l-264.96 264.96a32.427 32.427 0 0 1-46.08 0L224 530.347a183.04 183.04 0 0 1 0-256 182.187 182.187 0 0 1 256 0 42.667 42.667 0 0 0 60.587 0 182.187 182.187 0 0 1 256 0 183.04 183.04 0 0 1 3.413 256z"}));e0.displayName="FriendIcon";const Ea=()=>l(ae,{name:"slide-down"},()=>l("path",{d:"M108.775 312.23c13.553 0 27.106 3.734 39.153 11.806l375.205 250.338 363.641-252.808c32.587-21.624 76.499-12.83 98.123 19.757 21.685 32.467 12.95 76.56-19.576 98.184l-402.854 278.89c-23.733 15.901-54.694 15.962-78.547.12L69.501 442.097c-32.647-21.685-41.441-65.777-19.817-98.304 13.734-20.54 36.201-31.563 59.09-31.563Z"}));Ea.displayName="SlideDownIcon";const t0=()=>l("svg",{xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink",class:"empty-icon",viewBox:"0 0 1024 1024",innerHTML:'<defs><linearGradient id="f" x1="512.342" y1="2266.13" x2="512.342" y2="666.063" gradientUnits="userSpaceOnUse"><stop offset=".919" stop-color="#e6e6e6" stop-opacity="0"/><stop offset="1" stop-color="#e6e6e6"/></linearGradient><linearGradient id="g" x1="528.912" y1="774" x2="388.088" y2="612" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#ccc"/><stop offset="1" stop-color="#e6e6e6" stop-opacity="0"/></linearGradient><linearGradient id="h" x1="213.219" y1="721.704" x2="251.313" y2="683.61" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#d7d7d7"/><stop offset=".485" stop-color="#fafafa"/><stop offset="1" stop-color="#fafafa"/></linearGradient><linearGradient id="i" x1="724.813" y1="821.718" x2="768.656" y2="777.876" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#ccc"/><stop offset="1" stop-color="#fafafa"/></linearGradient><linearGradient id="a" x1="513.493" y1="714.594" x2="471.007" y2="544.188" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#999"/><stop offset="1" stop-color="#ccc"/></linearGradient><linearGradient id="b" x1="440.156" y1="564.031" x2="508.594" y2="495.594" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#ccc"/><stop offset="1" stop-color="#f0f0f0"/></linearGradient><linearGradient id="l" x1="660.988" y1="754.156" x2="608.637" y2="544.188" xlink:href="#a"/>
17<linearGradient id="m" x1="479.188" y1="774.219" x2="649.782" y2="603.625" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#b3b3b3"/><stop offset="1" stop-color="#e6e6e6"/></linearGradient><linearGradient id="n" x1="447.121" y1="774.219" x2="394.661" y2="563.813" xlink:href="#a"/><linearGradient id="o" x1="494" y1="597" x2="628" y2="463" xlink:href="#b"/><linearGradient id="d" x1="610.485" y1="604.938" x2="697.298" y2="518.125" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#ccc"/><stop offset="1" stop-color="#fff"/></linearGradient><linearGradient id="p" x1="457.438" y1="619.25" x2="353.469" y2="619.25" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#e6e6e6" stop-opacity="0"/><stop offset="1" stop-color="#e6e6e6"/></linearGradient><linearGradient id="q" x1="542.734" y1="674.25" x2="615.672" y2="601.313" xlink:href="#b"/><linearGradient id="c" x1="627.933" y1="358.938" x2="685.192" y2="422.531" gradientUnits="userSpaceOnUse"><stop offset=".4" stop-color="#e6e6e6" stop-opacity=".4"/><stop offset=".443" stop-color="#fff"/><stop offset=".6" stop-color="#ccc"/></linearGradient><linearGradient id="r" x1="618.547" y1="422.531" x2="681.547" y2="359.531" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#e6e6e6"/><stop offset=".761" stop-color="#fff"/><stop offset="1" stop-color="#f0f0f0"/></linearGradient><linearGradient id="s" x1="625" y1="441.5" x2="697" y2="369.5" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#ccc"/><stop offset=".761" stop-color="#fff"/><stop offset="1" stop-color="#f0f0f0"/></linearGradient><linearGradient id="t" x1="627.681" y1="361.438" x2="692.257" y2="433.156" xlink:href="#c"/><linearGradient id="u" x1="561.414" y1="735.438" x2="573.149" y2="688.375" xlink:href="#d"/><linearGradient id="v" x1="405" y1="485.875" x2="440" y2="450.875" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#ccc"/><stop offset="1" stop-color="#fff" stop-opacity=".702"/></linearGradient><linearGradient id="w" x1="404.61" y1="486.906" x2="441.86" y2="449.656" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#ccc"/><stop offset=".495" stop-color="#ccc" stop-opacity=".702"/><stop offset=".498" stop-color="#ccc"/><stop offset="1" stop-color="#fff" stop-opacity=".302"/></linearGradient><radialGradient id="e" cx="329.297" cy="647.578" r="8.172" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#fafafa"/><stop offset="1.2" stop-color="#e6e6e6"/></radialGradient><radialGradient id="j" cx="802.297" cy="673.578" r="8.172" xlink:href="#e"/><radialGradient id="k" cx="774.844" cy="642.75" r="5.531" xlink:href="#e"/></defs><path d="M512.33 666.07c441.828 0 800 358.18 800 800.03s-358.172 800.02-800 800.02-800-358.18-800-800.02 358.17-800.03 800-800.03z" style="fill:url(#f);fill-rule:evenodd"/><path d="m272 694 242-82 131 119-188 43z" style="fill:url(#g);fill-rule:evenodd"/><path fill="#b3b3b3" fill-rule="evenodd" d="M232.391 723.534a2.4 2.4 0 0 1 2.4 2.4v17.725a2.4 2.4 0 0 1-4.8 0v-17.725a2.4 2.4 0 0 1 2.4-2.4z"/><path d="M232.255 676.559c10.33 0 17.067 15.408 18.7 28.493 1.619 12.942-2.372 23.694-18.7 23.694-16.878 0-20.213-10.733-18.7-23.694 1.633-14.061 8.37-28.493 18.7-28.493z" style="fill:url(#h);fill-rule:evenodd"/><path fill="#b3b3b3" fill-rule="evenodd" d="M745.853 826h.938a2.4 2.4 0 0 1 2.4 2.4v22.238a2.4 2.4 0 0 1-2.4 2.4h-.938a2.4 2.4 0 0 1-2.4-2.4V828.4a2.4 2.4 0 0 1 2.4-2.4z"/><path d="M746.727 830.3c-19.438 0-23.278-9.326-21.541-20.59a34.467 34.467 0 0 1 3.289-10.369 16.628 16.628 0 0 1 0-9.112c2.889-12.327 12.059-20.911 18.356-20.911 6.56 0 15.468 9.1 18.356 20.911a14.589 14.589 0 0 1-.335 9.217 34.36 34.36 0 0 1 3.419 10.264c1.861 11.243-2.735 20.59-21.544 20.59z" style="fill:url(#i);fill-rule:evenodd"/><path fill="#ccc" fill-rule="evenodd" d="M328.841 654.562a6.571 6.571 0 0 0-5.2-5.027q-4.107-.952-.034-2.045a6.571 6.571 0 0 0 5.027-5.2q.952-4.109 2.045-.035a6.569 6.569 0 0 0 5.2 5.027q4.109.954.035 2.045a6.569 6.569 0 0 0-5.027 5.2q-.955 4.108-2.046.035z"/><path d="M328.383 653.73a6.567 6.567 0 0 0-5.2-5.027q-4.109-.954-.035-2.045a6.568 6.568 0 0 0 5.027-5.2q.954-4.107 2.046-.034a6.568 6.568 0 0 0 5.2 5.027q4.107.952.035 2.045a6.568 6.568 0 0 0-5.027 5.2q-.954 4.104-2.046.034z" style="fill:url(#e);fill-rule:evenodd"/>
17<path fill="#ccc" fill-rule="evenodd" d="M801.841 680.562a6.571 6.571 0 0 0-5.2-5.027q-4.107-.952-.034-2.045a6.571 6.571 0 0 0 5.027-5.2q.952-4.109 2.045-.035a6.569 6.569 0 0 0 5.2 5.027q4.108.954.035 2.045a6.569 6.569 0 0 0-5.027 5.2q-.955 4.108-2.046.035z"/><path d="M801.383 679.73a6.567 6.567 0 0 0-5.2-5.027q-4.108-.954-.035-2.045a6.568 6.568 0 0 0 5.027-5.2q.954-4.107 2.046-.034a6.568 6.568 0 0 0 5.2 5.027q4.107.952.035 2.045a6.568 6.568 0 0 0-5.027 5.2q-.954 4.104-2.046.034z" style="fill:url(#j);fill-rule:evenodd"/><path d="M774.21 646.9a4.446 4.446 0 0 0-3.517-3.4q-2.778-.643-.023-1.383a4.443 4.443 0 0 0 3.4-3.517q.645-2.778 1.383-.023a4.443 4.443 0 0 0 3.517 3.4q2.778.645.023 1.383a4.446 4.446 0 0 0-3.4 3.517q-.645 2.78-1.383.023z" style="fill:url(#k);fill-rule:evenodd"/><path d="m385.6 714.6.158-150.658L598.9 544.174l-.158 150.658z" style="fill:url(#a);fill-rule:evenodd"/><path d="m385.474 564.031 214.763-19.383-36.171-49.067-215.559 17.634z" style="fill:url(#b);fill-rule:evenodd"/><path d="m598.744 694.832.156-150.658 71.975 59.319-.158 150.658z" style="fill:url(#l);fill-rule:evenodd"/><path d="m457.064 774.209.158-150.658 214.691-19.914-.158 150.663z" style="fill:url(#m);fill-rule:evenodd"/><path d="m384.566 714.459.158-150.659 72.5 59.75-.158 150.658z" style="fill:url(#n);fill-rule:evenodd"/><path d="M494 640s75.357-58.4 42-83-38.887 1.663-37 14 53.847 12.465 54-26c.2-49.979 75-125 75-125" style="fill:none;stroke-width:3px;stroke-dasharray:12 6;stroke:url(#o);fill-rule:evenodd"/><path d="m670.275 604.939-72.041-59.9 38.476-26.909 72.86 58.159z" style="fill:url(#d);fill-rule:evenodd"/><path d="m425.5 674.383-72.042-59.9 31.109-50.347 72.86 58.16z" style="fill:url(#p);fill-rule:evenodd"/><path d="m487.918 674.235 214.482-22.57-31.1-50.346-215.309 20.833z" style="fill:url(#q);fill-rule:evenodd"/><path style="fill:#fff;fill-rule:evenodd" d="m697.363 358.927-69.58 62.511-12.035 1.082z"/><path d="m697.363 358.927-69.58 62.511-12.035 1.082z" style="fill:url(#c);fill-rule:evenodd"/><path d="M615.748 422.52 604 413l92.089-53.46" style="fill:url(#r);fill-rule:evenodd"/><path d="m625 432 12 18 60-89" style="fill:url(#s);fill-rule:evenodd"/><path d="m626.98 421.335-2.471 11.828 70.918-71.735" style="fill:#fff;fill-rule:evenodd"/><path d="m626.98 421.335-2.471 11.828 70.918-71.735" style="fill:url(#t);fill-rule:evenodd"/><path d="m494.814 735.44 21.293-2.1v-6.613l-13.4 1.319v-6.965l10.977-1.08v-6.613l-10.977 1.08v-6.084l12.917-1.27v-6.525l-20.808 2.047v32.8zM521 732.863l7.054-.694v-11.241a106.361 106.361 0 0 0-1.014-11.274l.176-.017 2.645 7.586 4.453 11.553 4.32-.425 4.408-12.424 2.733-8.116.177-.018a111.811 111.811 0 0 0-1.014 11.474v11.241l7.185-.707V697l-8.552.841-5.025 14.646c-.618 1.956-1.147 4.08-1.808 6.173l-.22.022c-.617-1.968-1.146-3.987-1.808-5.818l-5.2-13.639-8.508.837v32.8zm37.213-3.661 7.891-.776v-10.889l3.835-.377c6.922-.681 12.961-4.714 12.961-12.517 0-8.111-5.951-10.082-13.181-9.371l-11.504 1.128v32.8zm7.891-17.881v-9.478l3.218-.316c3.792-.373 5.908.565 5.908 3.871 0 3.218-1.852 5.208-5.687 5.585zM594 725.682l7.891-.777v-26.274l8.905-.876v-6.524l-25.657 2.524v6.524l8.861-.871v26.274zm27.991-2.754 7.847-.772v-11.594l9.919-22.18-8.244.811-2.733 7.542c-.925 2.56-1.807 4.939-2.733 7.587l-.176.018c-.926-2.466-1.764-4.676-2.645-7.058l-2.734-7-8.375.824 9.874 20.233v11.594z" style="fill:url(#u);fill-rule:evenodd"/><path fill="#ccc" fill-rule="evenodd" d="M408.938 457.309a17.5 17.5 0 0 0 21.374 26.725 17.5 17.5 0 1 1-16.306-30.955 17.442 17.442 0 0 0-5.068 4.23z"/><circle cx="422.5" cy="468.375" r="17.5" style="fill:url(#v)"/><path fill="#ccc" fill-rule="evenodd" d="M391.76 451.5c-2.358 4.419 9.827 15.52 27.215 24.8 15.131 8.071 29.212 12.1 34.166 10.093-4.191 2.772-18.943-1.24-34.86-9.73-17.388-9.275-29.573-20.376-27.215-24.8a2.96 2.96 0 0 1 1.585-1.3 2.606 2.606 0 0 0-.891.937z"/><path d="M418.975 476.29c-17.388-9.275-29.573-20.376-27.215-24.8s18.363-.484 35.751 8.791 29.572 20.376 27.215 24.8-18.364.483-35.751-8.791zm31.634 5.732c1.824-3.42-8.789-12.642-23.7-20.6s-28.486-11.633-30.31-8.213 8.789 12.642 23.7 20.6 28.486 11.633 30.31 8.213zm-36.645-29.008-2.775 1.452.032 1.751 28.637 14.183.266-4.559z" style="fill:url(#w);fill-rule:evenodd"/><g class="people"><path style="fill:#f8cfad;fill-rule:evenodd" d="m612.131 676.5 1.362 3.532 3.255-2.324-1.361-3.532zM629.131 665.5l1.362 3.532 3.255-2.324-1.361-3.532z"/><path style="fill:#141a33;fill-rule:evenodd" d="m617.764 678.184-3.162-.078a11.028 11.028 0 0 0-1.034 3.454c-.258 2.006-1.177 5-.449 5.367 1.5 2.659 4.118-.215 4.118-.215s2.187-2.848 1.925-5.265c-.106-.973-1.181-1.869-1.398-3.263zM633.781 665.855l3.019.945a11.008 11.008 0 0 1-.137 3.6c-.4 1.981-.179 4.166-.986 4.277-2.283 2.03-3.827-1.533-3.827-1.533s-1.473-2.456-.444-4.659c.412-.88 1.718-1.385 2.375-2.63z"/><path style="fill:#f0c5a8;fill-rule:evenodd" d="M599.935 592.534s10.293 9.761 11.95 7.564 3.536-3.463-6.758-13.65z"/><path style="fill:#f8cfad;
17fill-rule:evenodd" d="M611.3 596.361c1.674-1.105 11.5 7.048 14.5 11.774s-12.705-4.36-14.632-6.776-1.54-3.893.132-4.998z"/><path style="fill:#f8cfad;fill-rule:evenodd" d="M621.815 607.988s1.809 2.549 2.433 1.756 2.475-1.064 2.449-1.138.1-.819 1.288-2.331-3.8-3.632-5.81-.494a2.556 2.556 0 0 0-.36 2.207z"/><path fill="#232c57" fill-rule="evenodd" d="M598 617s14.968-5.618 17 7a150.235 150.235 0 0 1 2 22s12.666 11.836 16 19c0 0-4.753-1.629-4 2 0 0-18.132-14.647-19-19s-9.148-18.716-12-31z"/><path d="M589 622s14.968-5.618 17 7a150.235 150.235 0 0 1 2 22s4.666 17.836 8 25c0 0-4.753-1.629-4 2 0 0-10.132-20.647-11-25s-9.148-18.716-12-31z" style="fill:#292966;fill-rule:evenodd"/><path style="fill:#f0c5a8;fill-rule:evenodd" d="M585.626 597.7s-10.292 9.761-11.95 7.563-3.536-3.463 6.758-13.65z"/><path style="fill:#f8cfad;fill-rule:evenodd" d="M574.259 601.529c-1.675-1.105-11.5 7.049-14.5 11.774s12.7-4.36 14.631-6.775 1.543-3.894-.131-4.999z"/><path style="fill:#f0c5a8;fill-rule:evenodd" d="M591.715 577.752s-.606 1.681 1.48 3.716-3.615 5.307-4.645 2.85-.48-2.716-.48-2.716z"/><path style="fill:#f8cfad;fill-rule:evenodd" d="M583.527 574.123c-.839 1.043.491 3.873 1.453 5.449s2.749 2.833 3.364 2.428 4.088-2.657 4-4-.228-3.4-.228-3.4 2.562-1.641 2.154-2.916-2.916-.154-2.916-.154a15.853 15.853 0 0 0-.227-2.224c-.189-.929-6.887-1.445-7.827 2.6s.558 1.805.227 2.217z"/><path fill="#232c57" fill-rule="evenodd" d="M584.227 567.758c2.1-.885 7.2-3.684 10.125.318s.842 4.385.989 5.294-1.894 5.69-1.341 6.63-3.865.8-4.657-1.179-2.844-.539-2.227-1.224-1.3-4.456-2.916-2.154a9.252 9.252 0 0 0 .309-1.38c-.115.192.259-3.257-.673-1.32s-2.1 1.037-3.069.762-1.8-1.118-1.071-1.689c.023-.016 2.436-3.172 4.531-4.058z"/><path d="M589 585c-2.584-.47-10.055.362-13 13 0 0 1.9 3.349 5 4s6 21 6 21 24.016 11.06 27-3c-.07-13.826-8-21-8-21s5.829-3.2 5-6-8.016-10.153-11-10-6 0-6 0-2.416 2.47-5 2z" style="fill:#f6bb07;fill-rule:evenodd"/><path style="fill:#f8cfad;fill-rule:evenodd" d="M563.284 612.581s-.986 2.965-1.814 2.389-2.678-.3-2.675-.374-.333-.755-1.912-1.854 2.577-4.583 5.414-2.167a2.551 2.551 0 0 1 .987 2.006z"/></g>'});t0.displayName="EmptyIcon";const n0=()=>l(ae,{name:"lock"},()=>l("path",{d:"M787.168 952.268H236.832c-30.395 0-55.033-24.638-55.033-55.033V429.45c0-30.395 24.638-55.034 55.033-55.034h82.55V264.35c0-106.38 86.238-192.618 192.618-192.618S704.618 157.97 704.618 264.35v110.066h82.55c30.395 0 55.033 24.639 55.033 55.034v467.785c0 30.395-24.639 55.033-55.033 55.033zM484.483 672.046v115.122h55.034V672.046c31.99-11.373 55.033-41.605 55.033-77.496 0-45.592-36.958-82.55-82.55-82.55s-82.55 36.958-82.55 82.55c0 35.89 23.042 66.123 55.033 77.496zM622.067 264.35c0-60.788-49.28-110.067-110.067-110.067s-110.067 49.28-110.067 110.067v110.066h220.135V264.35z"}));n0.displayName="LockIcon";var Am=k({name:"ArticleItem",props:{info:{type:Object,required:!0},path:{type:String,required:!0}},slots:Object,setup(e,{slots:t}){const n=Mn(e,"info"),{info:r,items:o}=mm(e);return()=>{var i,s,c;const{[Ee.title]:d,[Ee.type]:u,[Ee.isEncrypted]:v=!1,[Ee.cover]:f,[Ee.excerpt]:h,[Ee.sticky]:m}=n.value,E=r.value;return l("div",{class:"vp-article-wrapper"},l("article",{class:"vp-article-item",vocab:"https://schema.org/",typeof:"Article"},[((i=t.cover)==null?void 0:i.call(t,{cover:f}))||(f?[l("img",{class:"vp-article-cover",src:Pe(f)}),l("meta",{property:"image",content:Pe(f)})]:[]),m?l(Qd):null,l(Me,{to:e.path},()=>{var A;return((A=t.title)==null?void 0:A.call(t,{title:d,isEncrypted:v,type:u}))||l("header",{class:"vp-article-title"},[v?l(n0):null,u===sd.slide?l(Kd):null,l("span",{property:"headline"},d)])}),((s=t.excerpt)==null?void 0:s.call(t,{excerpt:h}))||(h?l("div",{class:"vp-article-excerpt",innerHTML:h}):null),l("hr",{class:"vp-article-hr"}),((c=t.info)==null?void 0:c.call(t,{info:E}))||l(Cd,{info:E,...o.value?{items:o.value}:{}})]))}}}),zm=k({name:"Pagination",props:{total:{type:Number,default:10},perPage:{type:Number,default:10},current:{type:Number,default:1}},emits:["updateCurrentPage"],setup(e,{emit:t}){let n;const r=ie(),o=J(""),i=T(()=>r.value.paginationLocales),s=T(()=>Math.ceil(e.total/e.perPage)),c=T(()=>!!s.value&&s.value!==1),d=T(()=>s.value<7?!1:e.current>4),u=T(()=>s.value<7?!1:e.current<s.value-3),v=T(()=>{const{current:m}=e;let E=1,A=s.value;const L=[];
17s.value>=7&&(m<=4&&m<s.value-3?(E=1,A=5):m>4&&m>=s.value-3?(A=s.value,E=s.value-4):s.value>7&&(E=m-2,A=m+2));for(let g=E;g<=A;g++)L.push(g);return L}),f=m=>t("updateCurrentPage",m),h=m=>{const E=parseInt(m);E<=s.value&&E>0?f(E):n.pop(`<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg" width="16" height="16"><path d="M64 512a448 448 0 1 0 896 0 448 448 0 1 0-896 0Z" fill="#FA5151"/><path d="m557.3 512 113.1-113.1c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L512 466.7 398.9 353.6c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L466.7 512 353.6 625.1c-12.5 12.5-12.5 32.8 0 45.3 6.2 6.2 14.4 9.4 22.6 9.4s16.4-3.1 22.6-9.4L512 557.3l113.1 113.1c6.2 6.2 14.4 9.4 22.6 9.4s16.4-3.1 22.6-9.4c12.5-12.5 12.5-32.8 0-45.3L557.3 512z" fill="#FFF"/></svg>${i.value.errorText.replace(/\$page/g,s.value.toString())}`)};return _e(()=>{n=new Mv}),()=>l("div",{class:"vp-pagination"},c.value?l("div",{class:"vp-pagination-list"},[l("div",{class:"vp-pagination-number "},[e.current>1?l("div",{class:"prev",role:"navigation",unselectable:"on",onClick:()=>f(e.current-1)},i.value.prev):null,d.value?[l("div",{role:"navigation",onClick:()=>f(1)},1),l("div",{class:"ellipsis"},"...")]:null,v.value.map(m=>l("div",{key:m,class:{active:e.current===m},role:"navigation",onClick:()=>f(m)},m)),u.value?[l("div",{class:"ellipsis"},"..."),l("div",{role:"navigation",onClick:()=>f(s.value)},s.value)]:null,e.current<s.value?l("div",{class:"next",role:"navigation",unselectable:"on",onClick:()=>f(e.current+1)},i.value.next):null]),l("div",{class:"vp-pagination-nav"},[l("label",{for:"navigation-text"},`${i.value.navigate}: `),l("input",{id:"navigation-text",value:o.value,onInput:({target:m})=>{o.value=m.value},onKeydown:m=>{m.key==="Enter"&&(m.preventDefault(),h(o.value))}}),l("button",{class:"vp-pagination-button",role:"navigation",title:i.value.action,onClick:()=>h(o.value)},i.value.action)])]):[])}}),bi=k({name:"ArticleList",props:{items:{type:Array,default:()=>[]}},setup(e){const t=yt(),n=He(),r=Vr(),o=J(1),i=T(()=>r.value.articlePerPage||10),s=T(()=>e.items.slice((o.value-1)*i.value,o.value*i.value)),c=d=>{o.value=d;const u={...t.query};u.page===d.toString()||d===1&&!u.page||(d===1?delete u.page:u.page=d.toString(),n.push({path:t.path,query:u}))};return _e(()=>{const{page:d}=t.query;c(d?Number(d):1),se(o,()=>{const u=document.querySelector("#article-list").getBoundingClientRect().top+window.scrollY;setTimeout(()=>{window.scrollTo(0,u)},100)}),se(()=>t.query,({page:u})=>{c(u?Number(u):1)})}),()=>l("div",{id:"article-list",class:"vp-article-list"},s.value.length?[...s.value.map(({info:d,path:u},v)=>l(he,{appear:!0,delay:v*.04},()=>l(Am,{key:u,info:d,path:u}))),l(zm,{current:o.value,perPage:i.value,total:e.items.length,onUpdateCurrentPage:c})]:l(t0))}}),gi=k({name:"CategoryList",setup(){const e=pe(),t=Ir();return()=>l("ul",{class:"vp-category-list"},Wn(t.value.map).map(([n,{path:r,items:o}])=>l("li",{class:["vp-category",`vp-category${mo(n,9)}`,{active:r===e.value.path}]},l(Me,{to:r},()=>[n,l("span",{class:"count"},o.length)]))))}}),Ei=k({name:"TagList",setup(){const e=ye(),t=Rr(),n=r=>{var o;return r===((o=e.value.blog)==null?void 0:o.name)};return()=>l("ul",{class:"tag-list-wrapper"},Wn(t.value.map).map(([r,{path:o,items:i}])=>l("li",{class:["tag",`tag${mo(r,9)}`,{active:n(r)}]},l(Me,{to:o},()=>[r,l("span",{class:"tag-num"},i.length)]))))}}),Tm=k({name:"TimelineList",setup(){const e=ie(),t=hi(),n=Or(),r=T(()=>e.value.blogLocales.timeline);return()=>l("div",{class:"timeline-list-wrapper"},[l("div",{class:"timeline-list-title",onClick:()=>n(t.value.path)},[l(_i),l("span",{class:"num"},t.value.items.length),r.value]),l("hr"),l("div",{class:"timeline-content"},l("ul",{class:"timeline-list"},t.value.config.map(({year:o,items:i},s)=>l(he,{appear:!0,delay:.08*(s+1)},()=>l("li",[l("h3",{class:"timeline-year"},o),l("ul",{class:"timeline-year-wrapper"},i.map(({date:c,info:d,path:u})=>l("li",{class:"timeline-item"},[l("span",{class:"timeline-date"},c),l(Me,{class:"timeline-title",to:u},()=>d[Ee.title])])))])))))])}}),r0=k({name:"InfoList",setup(){const e=ie(),t=Sr(),n=Ir(),r=T(()=>nt(n.value.map).length),o=fi(),i=Rr(),s=T(()=>nt(i.value.map).length),c=Or(),d=J("article"),u=T(()=>e.value.blogLocales),v=[["article",ao],["category",ba],["tag",ga],["timeline",_i]];return()=>l("div",{class:"vp-blog-infos"},[l("div",{class:"vp-blog-type-switcher"},v.map(([f,h])=>l("button",{type:"button",class:"vp-blog-type-button",onClick:()=>{d.value=f}},l("div",{class:["icon-wrapper",{active:d.value===f}],"aria-label":u.value[f],"data-balloon-pos":"up"},l(h))))),l(he,()=>d.value==="article"?l("div",{class:"vp-sticky-article-wrapper"},[l("div",{class:"title",onClick:()=>c(t.value.path)},[l(ao),l("span",{class:"num"},t.value.items.length),u.value.article]),l("hr"),l("ul",{class:"vp-sticky-articles"},o.value.items.map(({info:f,path:h},m)=>l(he,{appear:!0,delay:.08*(m+1)},()=>l("li",{class:"vp-sticky-article"},l(Me,{to:h},()=>f[Ee.title])))))]):d.value==="category"?l("div",{class:"vp-category-wrapper"},[r.value?l("div",{class:"title",onClick:()=>c(n.value.path)},[l(ba),l("span",{class:"num"},r.value),u.value.category]):null,l("hr"),l(he,{delay:.04},()=>l(gi))]):d.value==="tag"?l("div",{class:"vp-tag-wrapper"},[s.value?l("div",{class:"title",onClick:()=>c(i.value.path)},[l(ga),l("span",{class:"num"},s.value),u.value.tag]):null,l("hr"),l(he,{delay:.04},()=>l(Ei))]):l(he,()=>l(Tm)))])}}),Ao=k({name:"BlogWrapper",slots:Object,setup(e,{slots:t}){const{isMobile:n}=Dr();return()=>[l(pi),l(ui,{noSidebar:!0,noToc:!0},{default:()=>t.default(),navScreenBottom:()=>l(mi),...n.value?{sidebar:()=>l(r0)}:{}})]}});const o0=()=>l("aside",{class:"vp-blog-info-wrapper"},[l(he,()=>l(mi)),l(he,{delay:.04},()=>l(r0))]);o0.displayName="InfoPanel";var zo=o0,Lm=k({name:"BlogPage",components:{CategoryList:gi,TagList:Ei},setup(){const e=pe(),t=ye(),n=Ir(),r=Rr(),o=T(()=>t.value.blog||{}),i=T(()=>{const{key:c=""}=o.value;return c==="category"?"CategoryList":c==="tag"?"TagList":null}),s=T(()=>{const{name:c="",key:d=""}=o.value;return d==="category"?c?n.value.map[c].items:[]:d==="tag"?c?r.value.map[c].items:[]:[]});return()=>l(Ao,()=>l("div",{class:"vp-page vp-blog"},l("div",{class:"blog-page-wrapper"},[l("main",{id:"main-content",class:"vp-blog-main"},[l(he,()=>i.value?l(tt(i.value)):null),o.value.name?l(he,{appear:!0,delay:.24},()=>l(bi,{key:e.value.path,items:s.value})):null]),l(he,{delay:.16},()=>l(zo))])))}}),Pm=k({name:"BlogHero",slots:Object,setup(e,{slots:t}){const n=ye(),r=Fn(),o=$e(),i=T(()=>n.value.heroFullScreen??!1),s=T(()=>{const{heroText:d,heroImage:u,heroImageDark:v,heroAlt:f,heroImageStyle:h,tagline:m}=n.value;return{text:d??r.value.title??"Hello",image:u?Pe(u):null,imageDark:v?Pe(v):null,heroStyle:h,alt:f||d||"hero image",tagline:m??"",isFullScreen:i.value}}),c=T(()=>{const{bgImage:d,bgImageDark:u,bgImageStyle:v}=n.value;return{image:qe(d)?Pe(d):d===!1?null:cm,imageDark:qe(u)?Pe(u):null,bgStyle:v,isFullScreen:i.value}});return()=>{var d,u;return n.value.hero===!1?null:l("div",{ref:o,class:["vp-blog-hero",{fullscreen:i.value,"no-bg":!c.value.image}]},[((d=t.heroBg)==null?void 0:d.call(t,c.value))||[c.value.image?l("div",{class:["vp-blog-mask",{light:c.value.imageDark}],style:[{background:`url(${c.value.image}) center/cover no-repeat`},c.value.bgStyle]}
17):null,c.value.imageDark?l("div",{class:"vp-blog-mask dark",style:[{background:`url(${c.value.imageDark}) center/cover no-repeat`},c.value.bgStyle]}):null],((u=t.heroInfo)==null?void 0:u.call(t,s.value))||[l(he,{appear:!0,type:"group",delay:.04},()=>[s.value.image?l("img",{key:"light",class:["vp-blog-hero-image",{light:s.value.imageDark}],style:s.value.heroStyle,src:s.value.image,alt:s.value.alt}):null,s.value.imageDark?l("img",{key:"dark",class:"vp-blog-hero-image dark",style:s.value.heroStyle,src:s.value.imageDark,alt:s.value.alt}):null]),l(he,{appear:!0,delay:.08},()=>s.value.text?l("h1",{class:"vp-blog-hero-title"},s.value.text):null),l(he,{appear:!0,delay:.12},()=>s.value.tagline?l("p",{class:"vp-blog-hero-description",innerHTML:s.value.tagline}):null)],s.value.isFullScreen?l("button",{type:"button",class:"slide-down-button",onClick:()=>{window.scrollTo({top:o.value.clientHeight,behavior:"smooth"})}},[l(Ea),l(Ea)]):null])}}});const wm=["link","article","book","project","friend"];var Om=k({name:"ProjectPanel",components:{ArticleIcon:ao,BookIcon:Xd,FriendIcon:e0,LinkIcon:Yd,ProjectIcon:Zd},setup(){const e=ye(),t=Hn(),n=Or(),r=(o="",i="icon")=>wm.includes(o)?l(tt(`${o}-icon`)):un(o)?l("img",{class:"vp-project-image",src:o,alt:i}):_o(o)?l("img",{class:"vp-project-image",src:Pe(o),alt:i}):l(Qe,{icon:o});return()=>{var o;return(o=e.value.projects)!=null&&o.length?l("div",{class:"vp-project-panel"},e.value.projects.map(({icon:i,link:s,name:c,desc:d},u)=>l("div",{class:["vp-project-card",{[`project${u%9}`]:!t.value}],onClick:()=>n(s)},[r(i,c),l("div",{class:"vp-project-name"},c),l("div",{class:"vp-project-desc"},d)]))):null}}}),Dm=k({name:"BlogHome",setup(){const e=Sr();return()=>l("div",{class:"vp-page vp-blog"},[l(Pm),l("div",{class:"blog-page-wrapper"},[l("main",{id:"main-content",class:"vp-blog-main"},[l(he,{appear:!0,delay:.16},()=>l(Om)),l(he,{appear:!0,delay:.24},()=>l(bi,{items:e.value.items}))]),l(he,{appear:!0,delay:.16},()=>l(zo))]),l(he,{appear:!0,delay:.28},()=>l(vi))])}}),xm=k({name:"BlogHome",setup(){return()=>l(Ao,()=>l(Dm))}}),a0=k({name:"ArticleType",setup(){const e=pe(),t=Et(),n=ie(),r=Sr(),o=fi(),i=T(()=>{const s=n.value.blogLocales;return[{text:s.all,path:r.value.path},{text:s.star,path:o.value.path},...[].map(({key:c,path:d})=>({text:s[c],path:d.replace(/^\//,t.value)}))]});return()=>l("ul",{class:"vp-article-type-wrapper"},i.value.map(s=>l("li",{class:["vp-article-type",{active:s.path===e.value.path}]},l(Me,{to:s.path},()=>s.text))))}}),Im=k({name:"BlogPage",setup(){const e=yo(),t=ye(),n=pe(),r=Sr(),o=fi(),i=T(()=>{const{key:s="",type:c}=t.value.blog||{};return s==="star"?o.value.items:c==="type"&&s?e.value.items:r.value.items});return()=>l(Ao,()=>l("div",{class:"vp-page vp-blog"},l("div",{class:"blog-page-wrapper"},[l("main",{id:"main-content",class:"vp-blog-main"},[l(he,()=>l(a0)),l(he,{appear:!0,delay:.24},()=>l(bi,{key:n.value.path,items:i.value}))]),l(he,{delay:.16},()=>l(zo))])))}}),Vm=k({name:"TimelineItems",setup(){const e=Vr(),t=ie(),n=hi(),r=T(()=>e.value.timeline||t.value.blogLocales.timelineTitle),o=T(()=>n.value.config.map(({year:i})=>({title:i.toString(),level:2,slug:i.toString(),children:[]})));return()=>l("div",{class:"timeline-wrapper"},l("ul",{class:"timeline-content"},[l(he,()=>l("li",{class:"motto"},r.value)),l(Md,{items:o.value}),n.value.config.map(({year:i,items:s},c)=>l(he,{appear:!0,delay:.08*(c+1),type:"group"},()=>[l("h3",{key:"title",id:i,class:"timeline-year-title"},l("span",i)),l("li",{key:"content",class:"timeline-year-list"},[l("ul",{class:"timeline-year-wrapper"},s.map(({date:d,info:u,path:v})=>l("li",{class:"timeline-item"},[l("span",{class:"timeline-date"},d),l(Me,{class:"timeline-title",to:v},()=>u[Ee.title])])))])]))]))}}),Rm=k({name:"Timeline",components:{ArticleType:a0,CategoryList:gi,TagList:Ei},setup(){return()=>l(Ao,()=>l("div",{class:"vp-page vp-blog"},l("div",{class:"blog-page-wrapper"},[l("main",{id:"main-content",class:"vp-blog-main"},[l(he,{appear:!0,delay:.24},()=>l(Vm))]),l(he,{delay:.16},()=>l(zo))])))}});var Sm=k({name:"SlidePage",setup(){const e=He(),t=J(!1),n=$e(),r=()=>{t.value=!t.value},o=()=>{t.value=!1},i=()=>{o(),window.history.go(-1)},s=()=>{o(),e.push("/")};return n2(n,o),()=>l("div",{class:"vp-reveal-page"},[l(Ka),l("div",{ref:n,class:["vp-reveal-menu",{active:t.value}]},[l("button",{type:"button",class:"menu-button",onClick:()=>r()},l("span",{class:"icon"})),l("button",{type:"button",class:"back-button",onClick:()=>i()},l(tf)),l("button",{type:"button",class:"home-button",onClick:()=>s()},l(nf))])])}});xp(Qe);const jm=ut({enhance:({app:e,router:t})=>{const{scrollBehavior:n}=t.options;t.options.scrollBehavior=async(...r)=>(await Bd().wait(),n(...r)),ah(e),e.component("BloggerInfo",mi)},setup:()=>{ih(),dh(),Em()},layouts:{Layout:rm,NotFound:am,BlogCategory:Lm,BlogHome:xm,BlogType:Im,Timeline:Rm,Slide:Sm}}),km=e=>{const t=Re("keydown",n=>{const r=n.key==="k"&&(n.ctrlKey||n.metaKey);!(n.key==="/")&&!r||(n.preventDefault(),e(),t())})},Cm=e=>e.button===1||e.altKey||e.ctrlKey||e.metaKey||e.shiftKey,Mm=()=>{const e=He();return{hitComponent:({hit:t,children:n})=>({type:"a",ref:void 0,constructor:void 0,key:void 0,props:{href:t.url,onClick:r=>{Cm(r)||(r.preventDefault(),e.push(ss(t.url,"/")))},children:n},__v:null}),navigator:{navigate:({itemUrl:t})=>{e.push(ss(t,"/"))}},transformSearchClient:t=>{const n=Ic(t.search,500);return{...t,search:async(...r)=>n(...r)}}}},Bm=(e=[],t)=>[`lang:${t}`,...ur(e)?e:[e]],$m=({buttonText:e="Search",buttonAriaLabel:t=e}={})=>`<button type="button" class="DocSearch DocSearch-Button" aria-label="${t}"><span class="DocSearch-Button-Container">
17<svg width="20" height="20" class="DocSearch-Search-Icon" viewBox="0 0 20 20"><path d="M14.386 14.386l4.0877 4.0877-4.0877-4.0877c-2.9418 2.9419-7.7115 2.9419-10.6533 0-2.9419-2.9418-2.9419-7.7115 0-10.6533 2.9418-2.9419 7.7115-2.9419 10.6533 0 2.9419 2.9418 2.9419 7.7115 0 10.6533z" stroke="currentColor" fill="none" fill-rule="evenodd" stroke-linecap="round" stroke-linejoin="round"></path></svg><span class="DocSearch-Button-Placeholder">${e}</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"><svg width="15" height="15" class="DocSearch-Control-Key-Icon"><path d="M4.505 4.496h2M5.505 5.496v5M8.216 4.496l.055 5.993M10 7.5c.333.333.5.667.5 1v2M12.326 4.5v5.996M8.384 4.496c1.674 0 2.116 0 2.116 1.5s-.442 1.5-2.116 1.5M3.205 9.303c-.09.448-.277 1.21-1.241 1.203C1 10.5.5 9.513.5 8V7c0-1.57.5-2.5 1.464-2.494.964.006 1.134.598 1.24 1.342M12.553 10.5h1.953" stroke-width="1.2" stroke="currentColor" fill="none" stroke-linecap="square"></path></svg></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button>`,Fm=16,i0=()=>{if(document.querySelector(".DocSearch-Modal"))return;const e=new Event("keydown");e.key="k",e.metaKey=!0,window.dispatchEvent(e),setTimeout(i0,Fm)},Wm=e=>{const t="algolia-preconnect";(window.requestIdleCallback||setTimeout)(()=>
17{if(document.head.querySelector(`#${t}`))return;const r=document.createElement("link");r.id=t,r.rel="preconnect",r.href=`https://${e}-dsn.algolia.net`,r.crossOrigin="",document.head.appendChild(r)})},Nm={appId:"1T57N30S39",apiKey:"cce98222e2efeec7499f410ec6b50eb5",indexName:"my_first_index",locales:{"/en/":{},"/zh/":{placeholder:"搜索",translations:{button:{buttonText:"搜索",buttonAriaLabel:"搜索"},modal:{searchBox:{resetButtonTitle:"清除查询条件",resetButtonAriaLabel:"清除查询条件",cancelButtonText:"取消",cancelButtonAriaLabel:"取消"},startScreen:{recentSearchesTitle:"搜索历史",noRecentSearchesText:"没有搜索历史",saveRecentSearchButtonTitle:"保存至搜索历史",removeRecentSearchButtonTitle:"从搜索历史中移除",favoriteSearchesTitle:"收藏",removeFavoriteSearchButtonTitle:"从收藏中移除"},errorScreen:{titleText:"无法获取结果",helpText:"你可能需要检查你的网络连接"},footer:{selectText:"选择",navigateText:"切换",closeText:"关闭",searchByText:"搜索提供者"},noResultsScreen:{noResultsText:"无法找到相关结果",suggestedQueryText:"你可以尝试查询",reportMissingResultsText:"你认为该查询应该有结果?",reportMissingResultsLinkText:"点击反馈"}}}}}};a(()=>import("./style-e9220a04.js"),[]),a(()=>import("./docsearch-1d421ddb.js"),[]);const Hm=k({name:"Docsearch",props:{containerId:{type:String,required:!1,default:"docsearch-container"},options:{type:Object,required:!1,default:()=>Nm}},setup(e){const t=Mm(),n=qa(),r=Et(),o=J(!1),i=J(!1),s=T(()=>{var u;return{...e.options,...(u=e.options.locales)==null?void 0:u[r.value]}}),c=async()=>{var v;const{default:u}=await a(()=>import("./index-c84ac460.js"),[]);u({...t,...s.value,container:`#${e.containerId}`,searchParameters:{...s.value.searchParameters,facetFilters:Bm((v=s.value.searchParameters)==null?void 0:v.facetFilters,n.value)}}),o.value=!0},d=()=>{i.value||o.value||(i.value=!0,c(),i0(),se(r,c))};return km(d),_e(()=>Wm(s.value.appId)),()=>{var u;return[l("div",{id:e.containerId,style:{display:o.value?"block":"none"}}),o.value?null:l("div",{onClick:d,innerHTML:$m((u=s.value.translations)==null?void 0:u.button)})]}}}),Jm=ut({enhance({app:e}){e.component("Docsearch",Hm)}}),Gm=ut({setup(){_e(()=>{console.log(String.raw`Harry xiong`)})}}),Ur=[dv,y2,Dp,Sp,Cp,Fp,Gp,Zp,Mf,Uf,jm,Jm,Gm],qm=[["v-8daa1a0e","/",{y:"h",t:"Home",i:"home"},["/index.html","/README.md"]],["v-2d0ad528","/zh/",{y:"h",t:"主页",i:"home"},["/zh/index.html","/zh/README.md"]],["v-9a292eba","/en/about-me/contact.html",{d:16872192e5,l:"June 20, 2023",g:["About Me"],e:"I am looking forward to meeting you! App Name My Account :--: :--------- GitHub (https://github.com/HarryXiong24) Gmail (mailto:[email protected]) Instagram (https://www.in...",r:{minutes:.47,words:142},y:"a",t:"Contact Me"},["/en/about-me/contact","/en/about-me/contact.md"]],["v-0d31a857","/en/about-me/intro.html",{d:16872192e5,l:"June 20, 2023",g:["About Me"],u:1e3,e:"Welcome 👋 Hello buddies! Welcome to my Blog! 🤟 Briefly Intro I am a coder with a strong interest in software development, especially in the field of Web applications developme...",r:{minutes:.45,words:135},y:"a",t:"About Me"},["/en/about-me/intro","/en/about-me/intro.md"]],["v-a29a5852","/en/about-me/notice.html",{d:16872192e5,l:"June 20, 2023",g:["About Me"],u:999,e:"::: info 6/19/2023 The English version of the blog was only recently built. All my articles and study notes were recorded in Chinese, so there is currently no English version of...",r:{minutes:.27,words:80},y:"a",t:"Notice"},["/en/about-me/notice","/en/about-me/notice.md"]],["v-06936ce2","/en/article/dfs-and-bfs.html",{d:16886016e5,l:"July 6, 2023",c:"article",g:["Stack","Queue","DFS","BFS"],u:802,o:!0,e:"Preface In this chapter, we will discuss about DFS(Depth-first Search) and BFS(Breadth-first Search). They are two important concepts in the algorithm and they are widely used. ...",r:{minutes:6.96,words:2089},y:"a",t:"Stack and Queue & DFS and BFS"},["/en/article/dfs-and-bfs","/en/article/dfs-and-bfs.md"]],["v-5e224cd1","/en/article/graph.html",{d:17019936e5,l:"December 8, 2023",c:"article",g:["Graph"],u:800,o:!0,e:"Disjoint Set Main idea The main idea of a “disjoint set” is to have all c
17onnected vertices have the same parent node or root node, whether directly or indirectly connected. To c...",r:{minutes:5.44,words:1631},y:"a",t:"Graph"},["/en/article/graph","/en/article/graph.md"]],["v-2687243d","/en/article/recursion.html",{d:16877376e5,l:"June 26, 2023",c:"article",g:["Recursion"],u:800,o:!0,e:"Preface In this article, I would like to summarize recursion from my own perspective. For a long time, I haven't had a clear idea to solve recursion problems. I think it is abst...",r:{minutes:8.75,words:2625},y:"a",t:"Recursion"},["/en/article/recursion","/en/article/recursion.md"]],["v-7d008c13","/en/article/sort-algorithm.html",{d:16883424e5,l:"July 3, 2023",c:"article",g:["Sort"],u:801,o:!0,e:"Preface In this chapter, I want to summarize the sort algorithm. As we all know, there are 10 common sort algorithms. And I don't want to do too much foreshadowing. Let's see a ...",r:{minutes:12.71,words:3814},y:"a",t:"Sort Algorithm"},["/en/article/sort-algorithm","/en/article/sort-algorithm.md"]],["v-bc3aed30","/zh/about-me/contact.html",{d:16872192e5,l:"2023å¹´6月20日",g:["About Me"],u:1,e:"很期待认识你! 应用名称 联系方式 :--: :--------- GitHub (https://github.com/HarryXiong24) Gmail (mailto:[email protected]) Instagram (https://www.instagram.com/harryxiong24) Linkedin (htt...",r:{minutes:.49,words:148},y:"a",t:"联系我"},["/zh/about-me/contact","/zh/about-me/contact.md"]],["v-6ad79348","/zh/about-me/intro.html",{d:16872192e5,l:"2023å¹´6月20日",g:["About Me"],u:1e3,e:"Welcome 👋 你好!欢迎来访! 🤟 自述 我是一名对软件开发有浓厚兴趣的 coder,尤其是在 Web 应用的开发和构建领域。 我在 Typescript 和 JavaScript 方面有不错的基础。 我曾经在字节跳动和腾讯工作,担任 Web 前端工程师。 另外,我不是一个只会沉迷于编码的男孩。 我有很多爱好,我相信享受属于我们自己的生活是世...",r:{minutes:.65,words:194},y:"a",t:"About Me"},["/zh/about-me/intro","/zh/about-me/intro.md"]],["v-b9a7e75c","/zh/article/error-modal.html",{d:16504128e5,l:"2022å¹´4月20日",c:"Web Development",g:["错误处理模型"],u:10,e:"引言 不知道大家在封装一个库的时候,会不会考虑错误处理的问题? 错误处理是库或框架开发过程中重要的设计环节,建立良好的错误处理机制可以直接增强这个库或框架本身的健壮性和可扩展性,大大减少使用者的开发负担。 提出问题 假设我封装好了一个库: 里面有一个 todoA 方法,当用户使用我这个库的这个方法的时候,出错了怎么办? 此时有两种解决方法: 让用户自行...",r:{minutes:3.41,words:1022},y:"a",t:"给你的库或框架设计一个通用错误处理模型"},["/zh/article/error-modal","/zh/article/error-modal.md"]],["v-33efeade","/zh/article/js-traversal.html",{d:16499808e5,l:"2022å¹´4月15日",c:"Javascript",g:["Javascript"],u:10,e:"前言 说到 Javascript 中的遍历,可以分为两种情况:数组的遍历和对象的遍历。 下面我们就来总结梳理一下 JS 中所有的有关数组的遍历和对象的遍历的方法。 PS:这里的 Javascript 指的是广义的 JS,包括了 ES6 里的方法。 数组的遍历 JavaScript 提供多种遍历语法。 for 循环 最原始的写法就是for循环。 forE...",r:{minutes:6.79,words:2037},y:"a",t:"一文总结 Javascript 中的遍历方式"},["/zh/article/js-traversal","/zh/article/js-traversal.md"]],["v-0d95a860","/zh/article/mobx.html",{d:16488576e5,l:"2022å¹´4月2日",c:"React",g:["React 状态管理","MobX"],u:10,e:"引言 市面上有很多 MobX 的教程(包括 MobX 官网的教程),很多人吐槽写的晦涩难懂。拿我自己的学习之路来说,初识 MobX 的时候我有一系列的疑问为什么 MobX 用法千奇百怪?为什么有这么多版本的语法?我到底应该采用哪一种写法?不同写法有什么区别吗? 在查阅很多资料之后,我自己总结了一下 Mobx 的前世今生,从5.x到6.x的进化之路。并整...",r:{minutes:5.15,words:1546},y:"a",t:"上手 Mobx"},["/zh/article/mobx","/zh/article/mobx.md"]],["v-46cc72c2","/zh/article/react-function-component.html",{d:16485984e5,l:"2022å¹´3月30日",c:"React",g:"React 进阶",u:1e3,e:"引言 与 React 类组件相比,React 函数式组件究竟有何不同? 这将会是我们本篇深入讨论的话题。但我们不会从使用者的角度去讨论,更多的是从设计者和底层原理的角度去讨论。 如果你想一å
17¥è¯å¿«é€Ÿæ¦‚括函数式组件的特点,那也许是这样: 函数式组件就如同一台照相机,它总是捕获当前渲染所用的值,然后生成一份份快照。 从一个例子说起 看看下面这个函数式组件: ...",r:{minutes:14.23,words:4269},y:"a",t:"React 函数式组件 vs 类组件"},["/zh/article/react-function-component","/zh/article/react-function-component.md"]],["v-e419e6a8","/zh/article/webpack-hot-fresh.html",{d:16491168e5,l:"2022å¹´4月5日",c:"Webpack",g:["Webpack 热更新"],u:10,e:"前言 在开发中,一个网页的刷新我们一般分为两种形式: 一种是页面刷新,不保留页面状态,就是简单粗暴,例如直接window.location.reload()。; 另一种是基于 Webpack 的WDS (Webpack-dev-server)的模块热替换,只需要局部刷新页面上发生变化的模块,同时可以保留当前的页面状态。; Hot Module Repl...",r:{minutes:4.45,words:1335},y:"a",t:"一文搞懂 Webpack 热更新原理"},["/zh/article/webpack-hot-fresh","/zh/article/webpack-hot-fresh.md"]],["v-719c1fb2","/zh/back-end/",{d:15913152e5,l:"2020å¹´6月5日",r:{minutes:.02,words:6},y:"a",t:"Web Backend"},["/zh/back-end/index.html","/zh/back-end/README.md"]],["v-5ee8cb00","/zh/front-end/",{d:15911424e5,l:"2020å¹´6月3日",r:{minutes:.02,words:6},y:"a",t:"Web Frontend"},["/zh/front-end/index.html","/zh/front-end/README.md"]],["v-53fc6bc5","/zh/git/",{d:15913152e5,l:"2020å¹´6月5日",c:"Git",g:["Git"],e:"Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。在开发中分布式文件管理系统,可以便于多人协作开发。 Git 安装 安装教程 (install.md); Git 教程 Git 总体介绍 (whatIsGit.md); 创建版本库 (createRepository.md); 纵向查看 (statusView.md); 版本回...",r:{minutes:.5,words:151},y:"a",t:"Git"},["/zh/git/index.html","/zh/git/README.md"]],["v-04c4d1b0","/zh/git/backRoll.html",{d:15913152e5,l:"2020å¹´6月5日",c:"Git",g:["Git"],e:"修改 readme.txt 文件如下: 然后尝试提交: 像这样不断对文件进行修改,然后不断提交修改到版本库里,每当文件修改到一定程度的时候,就可以“保存一个快照”,这个快照在 Git 中被称为 commit。如果把文件改乱了,或者误删了文件,还可以从最近的一个 commit 恢复,然后继续工作,而不是把几个月的工作成果全部丢失。 现在,我们回顾一下 r...",r:{minutes:4.83,words:1448},y:"a",t:"版本回退"},["/zh/git/backRoll","/zh/git/backRoll.md"]],["v-f6fd70dc","/zh/git/branch.html",{d:15913152e5,l:"2020å¹´6月5日",c:"Git",g:["Git"],e:"概述 分支就是科幻电影里面的平行宇宙,当您正在电脑前努力学习 Git 的时候,另一个您正在另一个平行宇宙里努力学习 SVN。 如果两个平行宇宙互不干扰,那对现在的您也没啥影响。不过,在某个时间点,两个平行宇宙合并了,结果,您既学会了 Git 又学会了 SVN! learn-branches 分支在实际中有什么用呢?假设您准备开发一个新功能,但是需要两周...",r:{minutes:22.44,words:6731},y:"a",t:"分支管理"},["/zh/git/branch","/zh/git/branch.md"]],["v-5d01f244","/zh/git/change.html",{d:15913152e5,l:"2020å¹´6月5日",c:"Git",g:["Git"],e:"管理修改 Git 比其他版本控制系统设计得优秀,因为 Git 跟踪并管理的是修改,而非文件。 您会问,什么是修改?比如您新增了一行,这就是一个修改,删除了一行,也是一个ä¿
17®æ”¹ï¼Œæ›´æ”¹äº†æŸäº›å­—符,也是一个修改,删了一些又加了一些,也是一个修改,甚至创建一个新文件,也算一个修改。 为什么说 Git 管理的是修改,而不是文件呢?我们还是做实验。第一步,对 rea...",r:{minutes:7.29,words:2188},y:"a",t:"修改管理"},["/zh/git/change","/zh/git/change.md"]],["v-1e06748e","/zh/git/createRepository.html",{d:15913152e5,l:"2020å¹´6月5日",c:"Git",g:["Git"],e:"什么是版本库呢?版本库又名仓库,英文名repository,您可以简单理解成一个目录,这个目录里面的所有文件都可以被 Git 管理起来,每个文件的修改、删除, Git 都能跟踪,以便任何时刻都可以追踪历史,或者在将来某个时刻可以“还原”。 初始化版本库 创建一个版本库非常简单,首先,选择一个合适的地方,创建一个空目录: pwd 命令用于显示当前目录。 ...",r:{minutes:4.04,words:1212},y:"a",t:"Git 版本库"},["/zh/git/createRepository","/zh/git/createRepository.md"]],["v-24dba1dd","/zh/git/customGit.html",{d:15913152e5,l:"2020å¹´6月5日",c:"Git",g:["Git"],e:"在安装 Git 一节中,我们已经配置了user.name和`user.email,实际上,Git 还有很多可配置项。 比如,让 Git 显示颜色,会让命令输出看起来更醒目: 这样,Git 会适当地显示不同的颜色,比如git status命令,文件名就会标上颜色。 忽略特殊文件 有些时候,您必须把某些文件放到 Git 工作目录中,但又不能提交它们,比如保...",r:{minutes:6.88,words:2063},y:"a",t:"自定义 Git"},["/zh/git/customGit","/zh/git/customGit.md"]],["v-2cb4d166","/zh/git/gitLFS.html",{d:15913152e5,l:"2020å¹´6月5日",c:"Git",g:["Git"],e:"Git Large File Storage (LFS) replaces large files such as audio samples, videos, datasets, and graphics with text pointers inside Git, while storing the file contents on a remot...",r:{minutes:.43,words:129},y:"a",t:"Git Large File Storage"},["/zh/git/gitLFS","/zh/git/gitLFS.md"]],["v-01bd5f3a","/zh/git/install.html",{d:15913152e5,l:"2020å¹´6月5日",c:"Git",g:["Git"],e:"Git 下载 由于官网在国外,网速较慢,可以查看功能部群文件找到安装包下载安装。在安装 Git 前推荐安装好 VSCode。 官网下载 (https://git-scm.com/downloads/); Git 的安装 1. 点击 “next”。 gitinstall1 2. 按照图示勾选。 gitinstall2 3. 选择使用 VSCode 作为 ...",r:{minutes:1.74,words:521},y:"a",t:"Git 安装与配置"},["/zh/git/install","/zh/git/install.md"]],["v-44537b6e","/zh/git/remote.html",{d:15913152e5,l:"2020å¹´6月5日",c:"Git",g:["Git"],e:"什么是远程仓库 Git 是分布式版本控制系统,同一个 Git 仓库,可以分布到不同的机器上。怎么分布呢?最早,肯定只有一台机器有一个原始版本库,此后,别的机器可以“克隆”这个原始版本库,而且每台机器的版本库其实都是一样的,并没有主次之分。 实际情况往往是这样,找一台电脑充当服务器的角色,每天 24 小时开机,其他每个人都从这个“服务器”仓库克隆一份到自...",r:{minutes:7.8,words:2340},y:"a",t:"远程仓库"},["/zh/git/remote","/zh/git/remote.md"]],["v-97a011c6","/zh/git/statusView.html",{d:15913152e5,l:"2020å¹´6月5日",c:"Git",g:["Git"],e:"我们已经成功地添加并提交了一个 readme.txt 文件,继续修改 readme.txt 文件,改成如下内容: 现在,运行 git status 命令看看结果: git status 命令可以输出仓库当前的状态,上面的命令输出告诉我们,readme.txt 被修改过了,但还没有准备提交的修改。 Git 现在只告诉我们 readme.txt 被修改了,...",r:{minutes:1.79,words:536},y:"a",t:"纵向查看"},["/zh/git/statusView","/zh/git/statusView.md"]],["v-1acc0844","/zh/git/tag.html",{d:15913152e5,l:"2020å¹´6月5日",c:"Git",g:["Git"],e:"为什么要有 tag 发布一个版本时,我们通常先在版本库中打一个标签(tag),这样,就唯一确定了打标签时刻的版本。将来无论什么时候,取某个标签的版本,就是把那个打标签的时刻的历史版本取出来。所以,标签也是版本库的一个快照。 Git 的标签虽然是版本库的快照,但其实它就是指向某个commit的指针(跟分支很像对不对?但是分支可以移动,标签不能移动),所以...",r:{minutes:3.8,words:1139},y:"a",t:"标签管理"},["/zh/git/tag","/zh/git/tag.md"]],["v-59be3c7a","/zh/git/whatIsGit.html",{d:15913152e5,l:"2020å¹´6月5日",c:"Git",g:["Git"],e:"什么是 Git Git 是什么? Git 是目前世界上最先进的分布式版本控制系统(没有之一)。 版本控制系统 如æž
17œæ‚¨ç”¨ Microsoft Word 写过长篇大论,那您一定有这样的经历: 想删除一个段落,又怕将来想恢复找不回来怎么办?有办法,先把当前文件“另存为……”一个新的 Word 文件,再接着改,改到一定程度,再“另存为……”一个新文件,这样一直...",r:{minutes:4.77,words:1430},y:"a",t:"Git 总体介绍"},["/zh/git/whatIsGit","/zh/git/whatIsGit.md"]],["v-241f8510","/zh/git/workingDirectory.html",{d:15913152e5,l:"2020å¹´6月5日",c:"Git",g:["Git"],e:"Git 和其他版本控制系统如 SVN 的一个不同之处就是有暂存区的概念。 工作区(Working Directory) 就是您在电脑里能看到的目录,比如 learngit 文件夹就是一个工作区: 版本库(Repository) 工作区有一个隐藏目录.git,这个不算工作区,而是 Git 的版本库。 Git 的版本库里存了很多东西,其中最重要的就是称为 ...",r:{minutes:2.17,words:650},y:"a",t:"工作区和暂存区"},["/zh/git/workingDirectory","/zh/git/workingDirectory.md"]],["v-831af89c","/zh/json/json.html",{d:16886016e5,l:"2023å¹´7月6日",c:"JSON",g:"JSON",e:`<h1> JSON</h1>
18<p>JSON: JavaScript Object Notation(JavaScript 对象表示法)</p>
19<ul>
20<li>
21<p>JSON 是存储和交换文本信息的语法。类似 XML。</p>
22</li>
23<li>
24<p>JSON 比 XML 更小、更快,更易解析。</p>
25</li>
26<li>
27<p>JSON 是轻量级的文本数据交换格式</p>
28</li>
29<li>
30<p>JSON 独立于语言: JSON 使用 JavaScript 语法来描述数据对象,但是 JSON 仍然独立于语言和平台。JSON 解析器和 JSON 库支持许多不同的编程语言。目前非常多的动态(PHP,JSP,.NET)编程语言都支持 JSON。</p>
31</li>
32<li>
33<p>JSON 具有自我描述性,更易理解</p>
34</li>
35</ul>
36`,r:{minutes:1.21,words:363},y:"a",t:"JSON",i:"json"},["/zh/json/json","/zh/json/json.md"]],["v-4be13b52","/zh/markdown/markdown.html",{d:15918336e5,l:"2020年6月11日",c:"Markdown",g:"Markdown",e:"[[TOC]] 1. 标题 1.1 使用#号标记 1.2 使用=和-号标记一级和二级标题 效果如下: image-20200308191149927 2. 段落 2.1 字体 效果如下: 斜体文本 斜体文本 粗体文本 粗体文本 *粗斜体文本* *粗斜体文本* 注:一般加粗不要包括到标点符号 2.2 分割线 你可以在一行中用三个以上的星号、减号、底线来建...",r:{minutes:4.24,words:1272},y:"a",t:"Markdown 基本语法",i:"infofill"},["/zh/markdown/markdown","/zh/markdown/markdown.md"]],["v-2c126a00","/zh/poem/",{d:15917472e5,l:"2020年6月10日",c:"诗集",g:"诗集",e:"一直有写诗的习惯,我不是什么创作达人,更不是什么文学大师。只是喜欢在高兴时、在悲伤处、在喜怒哀乐中用诗歌记录下我的所思所想,记录我的心路历程,聊以自慰。",r:{minutes:.27,words:82},y:"a",t:"写在前面"},["/zh/poem/index.html","/zh/poem/README.md"]],["v-432d3449","/zh/python/install.html",{d:1591488e6,l:"2020年6月7日",c:"Python",g:"Python",e:"要开始学习 Python 编程,首先就得把 Python 安装到您的电脑里。安装后,您会得到 Python 解释器(就是负责运行 Python 程序的),一个命令行交互环境,还有一个简单的集成开发环境。本节将指导您如何安装 Python。 在 Mac 上安装 Python 如果您正在使用 Mac,系统是 OS X>=10.9,那么系统自带的 Pytho...",r:{minutes:1.96,words:588},y:"a",t:"Python 安装"},["/zh/python/install","/zh/python/install.md"]],["v-3a586d6c","/zh/python/interpreter.html",{d:1591488e6,l:"2020年6月7日",c:"Python",g:"Python",e:`<p>当我们编写 Python 代码时,我们得到的是一个包含 Python 代码的以 <code>.py</code> 为扩展名的文本文件。要运行代码,就需要 Python 解释器去执行 <code>.py</code> 文件。</p>
37`,r:{minutes:2.17,words:650},y:"a",t:"Python 解释器"},["/zh/python/interpreter","/zh/python/interpreter.md"]],["v-1948dcd8","/zh/python/intro.html",{d:1591488e6,l:"2020年6月7日",c:"Python",g:"Python",e:`<p>本节将简单介绍 Python 的历史。</p>
38`,r:{minutes:4.64,words:1392},y:"a",t:"Python 简介"},["/zh/python/intro","/zh/python/intro.md"]],["v-f9fb0eaa","/zh/python/",{d:1591488e6,l:"2020年6月7日",c:"Python",g:"Python",e:`<ul>
39<li>优点: Python 是一种高级语言,它可以用更少的代码量完成相同工作。</li>
40<li>缺点: Python 是一种脚本语言,它的执行效率不是很高。</li>
41</ul>
42`,r:{minutes:.7,words:209},y:"a",t:"Python"},["/zh/python/index.html","/zh/python/readme.md"]],["v-7c3bddbb","/zh/vscode/install.html",{d:15909696e5,l:"2020年6月1日",c:"VS Code",g:"VS Code",e:"下载 在 官网下载地址 (https://code.visualstudio.com/Download) 或群内下载最新版 Win64User 安装包。 安装 双击安装包打开同意用户协议。 安装过程中,请务必钩上以下选项: 安装 VSCode 勾选 添加到目录上下文菜单、添加到文件上下文菜单、将 code 注册为受支持的文件编辑器、添加到 path。 ...",r:{minutes:1.61,words:484},y:"a",t:"VSCode 安装"},["/zh/vscode/install","/zh/vscode/install.md"]],["v-958385c6","/zh/vscode/",{d:15909696e5,l:"2020年6月1日",c:"VS Code",g:"VS Code",e:"简介 Visual Studio Code 是一个轻量级但功能强大的源代码编辑器,可在您的桌面上运行,并且可用于 Windows,macOS 和 Linux。 它具有对 JavaScript,TypeScript 和 Node.js 的内置支持,并具有丰富的其他语言 (例如 C ++,C#,Java,Python,PHP,Go) 和运行时 (例如 .N...",r:{minutes:2.77,words:832},y:"a",t:"VSCode"},["/zh/vscode/index.html","/zh/vscode/readme.md"]],["v-1613c35d","/zh/vscode/shortcutKey.html",{d:15909696e5,l:"2020年6月1日",c:"VS Code",g:"VS Code",e:"鼠标操作 在当前行的位置,鼠标三击,可以选中当前行。; 用鼠标单击文件的行号,可以选中当前行。; 在某个行号的位置,上下移动鼠标,可以选中多行。; 移动光标 「方向键」: 在单个字符之间移动光标; 「Ctrl + 左右方向键」: 在单词之间移动光标(很常用)。注: Win 快捷键是。; 快速选中 在任意位置单击放置光标,按住 shift 在第二个位置单...",r:{minutes:3.03,words:908},y:"a",t:"VSCode 快捷键说明"},["/zh/vscode/shortcutKey","/zh/vscode/shortcutKey.md"]],["v-05a75161","/zh/vscode/vscodeExtension.html",{d:15909696e5,l:"2020年6月1日",c:"VS Code",g:"VS Code",e:"以下是推荐的 VSCode 扩展: 语言包 Chinese (Simplified) Language Pack for Visual Studio Code VSCode 原生为英文,本插件为 VSCode 提供简体中文支持,会更改页面为简体中文 外观 Bracket Pair Colorizer 为 VSCode 显示彩虹括号,在码代码时帮助判断匹...",r:{minutes:2.67,words:800}
42,y:"a",t:"VSCode 扩展使用说明"},["/zh/vscode/vscodeExtension","/zh/vscode/vscodeExtension.md"]],["v-3c887c4f","/zh/vscode/vscodeSettings.html",{d:15909696e5,l:"2020年6月1日",c:"VS Code",g:"VS Code",e:"部分设置是这里 (vscodeExtension.md)的插件配置 将下面内容拷贝至 setting.json 以更改 VSCode 设置 用鼠标在对应属性值上悬停时,Vscode 会自动给出属性的说明。",r:{minutes:2.38,words:713},y:"a",t:"VSCode 推荐配置"},["/zh/vscode/vscodeSettings","/zh/vscode/vscodeSettings.md"]],["v-28264260","/zh/vscode/vscodeSimple.html",{d:15909696e5,l:"2020年6月1日",c:"VS Code",g:"VS Code",e:"简介 这是一款微软的代码编辑器,因其开源,可扩展和众多插件成为全球最受欢迎的代码编辑器。 VSCode 的安装 在官网下载地址 (https://code.visualstudio.com/Download)下载最新版 Win64User 安装包,双击安装包打开同意用户协议,一直下一步即可。 在 VSCode 初次启动后,若未提前安装 Git 可能会提...",r:{minutes:2.33,words:699},y:"a",t:"VSCode 的简单介绍"},["/zh/vscode/vscodeSimple","/zh/vscode/vscodeSimple.md"]],["v-1df53f5c","/zh/yaml/yaml.html",{d:16886016e5,l:"2023年7月6日",c:"YAML",g:"YAML",e:"编程免不了要写配置文件,怎么写配置也是一门学问。 YAML 是专门用来写配置文件的语言,非常简洁和强大。 YAML 介绍 YAML 语言(发音 /ˈjæməl/ )的设计目标,就是方便人类读写。它实质上是一种通用的数据串行化格式。 YAML 的全称是 YAML Ain’t Markup Language。 它的基本语法规则如下。 大小写敏感; 使用缩进...",r:{minutes:4.36,words:1309},y:"a",t:"YAML",i:"yaml"},["/zh/yaml/yaml","/zh/yaml/yaml.md"]],["v-7970903c","/zh/back-end/apache/apache.html",{d:1591488e6,l:"2020年6月7日",c:"服务器",g:"Apache",e:`<p>Apache 是世界使用排名第一的 Web 服务器软件。它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的 Web 服务器端软件之一。它快速、可靠并且可通过简单的 API 扩充,将 Perl/Python 等解释器编译到服务器中。</p>
43`,r:{minutes:2.28,words:683},y:"a",t:"Apache",i:"Apache"},["/zh/back-end/apache/apache","/zh/back-end/apache/apache.md"]],["v-67cc625a","/zh/back-end/express/express.html",{d:15916608e5,l:"2020年6月9日",c:"Nodejs",g:"Express",e:"[[toc]] 1.引入express 热部署服务器 node.js热部署,修改后立刻重启服务器cnpm install -g supervisor,全局安装后运行supervisor app.js(假设Node.js程序主入口是app.js); 热部署第二种方法为cnpm install nodemon -g,全局安装后运行nodemon app.j...",r:{minutes:11.68,words:3503},y:"a",t:"Express",i:"express"},["/zh/back-end/express/express","/zh/back-end/express/express.md"]],["v-4bf552c6","/zh/back-end/nginx/nginx.html",{d:1591488e6,l:"2020年6月7日",c:"服务器",g:"Nginx",e:`<p>Nginx 是一个高性能的 HTTP 和反向代理服务器,也是一个 IMAP / POP3 / SMTP 代理服务器。 其特点是占有内存少,并发能力强,稳定性高,并且 Nginx 也拥有友好灵活的配置。</p>
44`,r:{minutes:6.91,words:2074},y:"a",t:"Nginx",i:"nginx"},["/zh/back-end/nginx/nginx","/zh/back-end/nginx/nginx.md"]],["v-29d0be61","/zh/back-end/preface/",{d:15913152e5,l:"2020年6月5日",c:"Web 后台",e:"展示一下大后端学习路线 路漫漫其修远兮, 不要害怕 backEnd !!backEnd (https://github.com/HarryXiong24/HarryXiong24.github.io/blob/main/public/zh/back-end/operation.png?raw=true)",r:{minutes:.16,words:49},y:"a",t:"大后端学习路线"},["/zh/back-end/preface/index.html","/zh/back-end/preface/readme.md"]],["v-6e4e7788","/zh/back-end/servlet/",{d:15929568e5,l:"2020年6月24日",c:"Web 后台",g:["Servlet","MVC","JSP","JDBC"],e:"Servlet(Server Applet)是Java Servlet的简称,称为小服务程序或服务连接器,用Java编写的服务器端程序,具有独立于平台和协议的特性,主要功能在于交互式地浏览和生成数据,生成动态Web内容。 狭义的Servlet是指Java语言实现的一个接口,广义的Servlet是指任何实现了这个Servlet接口的类,一般情况下,人们将...",r:{minutes:.75,words:225},y:"a",t:"Servlet & JSP"}
44,["/zh/back-end/servlet/index.html","/zh/back-end/servlet/readme.md"]],["v-25e6d482","/zh/back-end/servlet/s1.html",{d:15929568e5,l:"2020年6月24日",c:"Web 后台",g:["Servlet","MVC","JSP","JDBC"],e:"Servlet简介 1.1 认识Servlet Java Servlet 是运行在 Web 服务器或应用服务器上的程序,它是作为来自 Web 浏览器或其他 HTTP 客户端的请求和 HTTP 服务器上的数据库或应用程序之间的中间层。 使用 Servlet,您可以收集来自网页表单的用户输入,呈现来自数据库或者其他源的记录,还可以动态创建网页。 Java ...",r:{minutes:1.97,words:591},y:"a",t:"1.Servlet简介"},["/zh/back-end/servlet/s1","/zh/back-end/servlet/s1.md"]],["v-968db2fa","/zh/back-end/servlet/s10.html",{d:15929568e5,l:"2020年6月24日",c:"Web 后台",g:["Servlet","MVC","JSP","JDBC"],e:"JSP 10.1 JSP生命周期 理解JSP底层功能的关键就是去理解它们所遵守的生命周期。 JSP生命周期就是从创建到销毁的整个过程,类似于servlet生命周期,区别在于JSP生命周期还包括将JSP文件编译成servlet。 以下是JSP生命周期中所走过的几个阶段: 编译阶段:; servlet容器编译servlet源文件,生成servlet类 初始...",r:{minutes:16,words:4801},y:"a",t:"10.JSP"},["/zh/back-end/servlet/s10","/zh/back-end/servlet/s10.md"]],["v-932401bc","/zh/back-end/servlet/s11.html",{d:15929568e5,l:"2020年6月24日",c:"Web 后台",g:["Servlet","MVC","JSP","JDBC"],e:"JDBC 11.1 注册Driver类实现对象 加载实现了java.sql.Driver接口的类的实例对象 Class.forName(“驱动类的完整类名”); 用DriverManager类的registerDriver方法注册 加载驱动程序,不同的数据库系统有不同的加载代码: MySQL数据库: Class.forName(“com.mysql.j...",r:{minutes:1.01,words:304},y:"a",t:"11.JDBC"},["/zh/back-end/servlet/s11","/zh/back-end/servlet/s11.md"]],["v-227d2344","/zh/back-end/servlet/s2.html",{d:15929568e5,l:"2020年6月24日",c:"Web 后台",g:["Servlet","MVC","JSP","JDBC"],e:"Servlet生命周期 Servlet 生命周期可被定义为从创建直到毁灭的整个过程。以下是 Servlet 遵循的过程: Servlet 通过调用 init () 方法进行初始化。; Servlet 调用 service() 方法来处理客户端的请求。; Servlet 通过调用 destroy() 方法终止(结束)。; 最后,Servlet 是由 JV...",r:{minutes:2.91,words:874},y:"a",t:"2.Servlet生命周期"},["/zh/back-end/servlet/s2","/zh/back-end/servlet/s2.md"]],["v-1f137206","/zh/back-end/servlet/s3.html",{d:15929568e5,l:"2020年6月24日",c:"Web 后台",g:["Servlet","MVC","JSP","JDBC"],e:"表单提交数据 3.1 使用表单的 GET 方法实例 下面是一个简单的实例,使用 HTML 表单和提交按钮传递两个值。我们将使用相同的 Servlet HelloForm 来处理输入。 action:对应的Servlet名字 method:处理的方法名 name:对应表单组件的名字,用来Servlet识别 保存这个 HTML 到 hello.htm 文件...",r:{minutes:4.62,words:1386},y:"a",t:"3.表单提交数据"},["/zh/back-end/servlet/s3","/zh/back-end/servlet/s3.md"]],["v-1ba9c0c8","/zh/back-end/servlet/s4.html",{d:15929568e5,l:"2020年6月24日",c:"Web 后台",g:["Servlet","MVC","JSP","JDBC"],e:"请求与响应 4.1 理解 img 4.2 Request HttpServletRequest对象方法 序号 方法 & 描述 :--- :----------------------------------------------------------- 1 Cookie[] getCookies() 返回一个数组,包含客户端发送该请求的所有的 Co...",r:{minutes:8.42,words:2527},y:"a",t:"4.请求与响应"},["/zh/back-end/servlet/s4","/zh/back-end/servlet/s4.md"]],["v-18400f8a","/zh/back-end/servlet/s5.html",{d:15929568e5,l:"2020年6月24日",c:"Web 后台",g:["Servlet","MVC","JSP","JDBC"],e:"文件上传 5.1 创建一个文件上传表单 下面的 HTML 代码创建了一个文件上传表单。以下几点需要注意: 表单 method属性应该设置为 POST 方法,不能使用 GET 方法。; 表单 enctype 属性应该设置为 multipart/form-data.(关键,必须设置); 表单 action 属性应该设置为在后端服务器上处理文件上传的 Ser...",r:{minutes:2.53,words:759},y:"a",t:"5.文件上传"}
44,["/zh/back-end/servlet/s5","/zh/back-end/servlet/s5.md"]],["v-14d65e4c","/zh/back-end/servlet/s6.html",{d:15929568e5,l:"2020年6月24日",c:"Web 后台",g:["Servlet","MVC","JSP","JDBC"],e:'网页跳转与重定向 6.1 跳转 request.getRequestDispatcher("你要跳转的页面").forward(request, response) 1. 属于转发,也是服务器跳转,相当于方法调用,在执行当前文件的过程中转向执行目标文件,两个文件(当前文件和目标文件)属于同一次请求,前后页共用一个request,可以通过此来传递一些数据...',r:{minutes:2.31,words:694},y:"a",t:"6.网页跳转与重定向"},["/zh/back-end/servlet/s6","/zh/back-end/servlet/s6.md"]],["v-116cad0e","/zh/back-end/servlet/s7.html",{d:15929568e5,l:"2020年6月24日",c:"Web 后台",g:["Servlet","MVC","JSP","JDBC"],e:"会话管理 7.1 Cookie 7.1.1 Servlet Cookie 方法 以下是在 Servlet 中操作 Cookie 时可使用的有用的方法列表。 序号 方法 & 描述 :--- :----------------------------------------------------------- 1 public void setDomai...",r:{minutes:5.68,words:1704},y:"a",t:"7.会话管理"},["/zh/back-end/servlet/s7","/zh/back-end/servlet/s7.md"]],["v-0e02fbd0","/zh/back-end/servlet/s8.html",{d:15929568e5,l:"2020年6月24日",c:"Web 后台",g:["Servlet","MVC","JSP","JDBC"],e:"ServletContext 8.1 概念 抽象表示Servlet的上下文环境,即当前Web应用,一个JVM中的每个Web应用都只有一个ServletContext对象与之对应 启动一个Web应用时会创建一个ServletContext对象,关闭时也会销毁此对象 8.2 方法 setAttribute与getAttribute方法 ServletCon...",r:{minutes:.72,words:216},y:"a",t:"8.ServletContext"},["/zh/back-end/servlet/s8","/zh/back-end/servlet/s8.md"]],["v-0a994a92","/zh/back-end/servlet/s9.html",{d:15929568e5,l:"2020年6月24日",c:"Web 后台",g:["Servlet","MVC","JSP","JDBC"],e:"过滤器 9.1 概念 Servlet 过滤器可以动态地拦截请求和响应,以变换或使用包含在请求或响应中的信息。 可以将一个或多个 Servlet 过滤器附加到一个 Servlet 或一组 Servlet。Servlet 过滤器也可以附加到 JavaServer Pages (JSP) 文件和 HTML 页面。调用 Servlet 前调用所有附加的 Ser...",r:{minutes:2.42,words:726},y:"a",t:"9.过滤器"},["/zh/back-end/servlet/s9","/zh/back-end/servlet/s9.md"]],["v-1b8c53e9","/zh/computer-basic/basic/OS.html",{d:15917472e5,l:"2020年6月10日",c:"计算机基础",g:["计算机基础","文件编码","操作系统"],e:`<p>操作系统 (Operating System,OS) 是软件的一部分,它是硬件基础上的第一层软件,是硬件和其它软件沟通的桥梁(或者说接口、中间人、中介等)。</p>
45`,r:{minutes:1.82,words:546},y:"a",t:"操作系统",i:"OS"},["/zh/computer-basic/basic/OS","/zh/computer-basic/basic/OS.md"]],["v-162556da","/zh/computer-basic/basic/encoding.html",{d:15917472e5,l:"2020年6月10日",c:"计算机基础",g:["计算机基础","文件编码","操作系统"],e:`<p>计算机,不能直接存储文字,存储的是编码。</p>
46<p>计算机只能处理二进制的数据,也就是说计算机只能处理数字。如果要处理文本,比如: <code>0-9</code>、<code>a-z</code>、<code>A-Z</code>,我们就必须先把文本转换为数字才能处理。对于这些字符,我们可以定义一套规则来显示,比如如:<code>A</code> 用 <code>110</code> 表示,<code>B</code> 用 <code>111</code> 表示等。</p>
47`,r:{minutes:5.87,words:1762},y:"a",t:"计算机编码介绍",i:"number"},["/zh/computer-basic/basic/encoding","/zh/computer-basic/basic/encoding.md"]],["v-472e04df","/zh/computer-basic/basic/file-extension.html",{d:15917472e5,l:"2020å¹´6月10日",c:"计算机基础",g:["计算机基础","文件编码","操作系统"],e:'文件名 文件名就是文件的名称,是为了方便人们区分计算机中的不同文件,而给每个文件设定一个指定的名称。 文件名不能包含控制字符: `/ \\` | `: "` * `?` 文件扩展名 文件扩展名 (filename extension) 也称为文件的延伸文件名、后缀名,是操作系统用来标记文件类型的一种机制。通常来说,一个扩展名是跟在主文件名后面的,由一个分...',r:{minutes:1.48,words:444},y:"a",t:"文件名与文件扩展名",i:"file"},["/zh/computer-basic/basic/file-extension","/zh/computer-basic/basic/file-extension.md"]],["v-2ff7e7e8","/zh/computer-basic/basic/",{d:15917472e5,l:"2020å¹´6月10日",c:"计算机基础",g:["计算机基础","文件编码","操作系统"],e:"目录 操作系统 (OS.md); 文件扩展名 (file-extension.md); 文件编码 (encoding.md);",r:{minutes:.17,words:50},y:"a",t:"基础介绍",i:"basic"},["/zh/computer-basic/basic/index.html","/zh/computer-basic/basic/readme.md"]],["v-314caf96","/zh/computer-basic/information-security/information-security.html",{d:15931296e5,l:"2020å¹´6月26日",c:"信息安全理论与技术",g:["信息安全理论与技术"],e:"1. 信息安全基础知识 信息安全特征:保密性、å
47®Œæ•´æ€§ã€å¯ç”¨æ€§ã€å¯æŽ§æ€§ã€å¯å®¡æŸ¥æ€§ 网络安全含义:运行系统安全、网络上系统信息的安全、网络 信息安全含义:系统安全、系统中信息安全、管理安全、信息传播的安全、网络上信息内容的安全 信息安全服务与目标主要是指保护信息系统 ISO安全体系结构:安全服务、安全机制、安全管理 安全服务:认证服务、访问控制服务、数据保...",r:{minutes:20.82,words:6247},y:"a",t:"信息安全理论与技术",i:"infofill"},["/zh/computer-basic/information-security/information-security","/zh/computer-basic/information-security/information-security.md"]],["v-2bea7022","/zh/computer-basic/linux/WSL.html",{d:15913152e5,l:"2020å¹´6月5日",c:"Linux",g:"Linux",e:`<p>WSL 可以直接在 Windows 系统上安装并运行 Linux。目前最新的版本是 WSL2。</p>
48`,r:{minutes:.27,words:82},y:"a",t:"WSL"},["/zh/computer-basic/linux/WSL","/zh/computer-basic/linux/WSL.md"]],["v-6a42c307","/zh/computer-basic/linux/centos.html",{d:15913152e5,l:"2020年6月5日",c:"Linux",g:"Linux",e:"管理工具 yum (Centos 7); dnf (Centos 8); yarn 测试是否安装成功:",r:{minutes:.17,words:52},y:"a",t:"CentOS 教程"},["/zh/computer-basic/linux/centos","/zh/computer-basic/linux/centos.md"]],["v-0cf9aff4","/zh/computer-basic/linux/",{d:15913152e5,l:"2020年6月5日",c:"Linux",g:"Linux",e:"Linux 教程 Linux 介绍 (intro/readme.md); Linux 介绍 (intro/intro.md); Linux 历史 (intro/history.md); Linux 编写语言 (intro/language.md); Linux 优势 (intro/advantage.md); Linux 桌面环境 (intro/des...",r:{minutes:.41,words:124},y:"a",t:"Linux"},["/zh/computer-basic/linux/index.html","/zh/computer-basic/linux/readme.md"]],["v-133ac9d7","/zh/computer-basic/linux/ssh.html",{d:15913152e5,l:"2020年6月5日",c:"Linux",g:"Linux",e:"使用密码登录 1. 执行以下命令,连接 Linux 云服务器。 username 即为前提条件中获得的默认帐号。; hostname or IP address 为您的 Linux 实例公网 IP 或自定义域名。; 2. 输入已获取的密码,按 Enter,即可完成登录。 使用密钥登录 1. 执行以下命令,赋予私钥文件仅本人可读权限。 2. 执行以下命令...",r:{minutes:.8,words:240},y:"a",t:"ssh"},["/zh/computer-basic/linux/ssh","/zh/computer-basic/linux/ssh.md"]],["v-0b816f4a","/zh/computer-basic/windows/addPath.html",{d:15909696e5,l:"2020年6月1日",c:"Windows",g:"Windows",e:"以 Windows10 系统为例,直接在左下角搜索栏中输入“系统变量” 搜索 在弹出的框中点击环境变量 系统变量 在弹出的新窗口中找到 path,选中并点击编辑 系统变量 点击添加输入想要添加到 path 的路径或者执行文件名即可 系统变量",r:{minutes:.42,words:126},y:"a",t:"环境变量的添加"},["/zh/computer-basic/windows/addPath","/zh/computer-basic/windows/addPath.md"]],["v-35b98e76","/zh/computer-basic/windows/cmd.html",{d:15909696e5,l:"2020年6月1日",c:"Windows",g:"Windows",e:"打开命令行 (命令提示符) 有多种方式。 1. 运行 - cmd: Win + R 打开运行,然后敲入 cmd 后回车。 1. 搜索 - cmd: 点击左下角搜索,输入 cmd,然后单击命令提示符。 1. 开始菜单 - Windows 系统 - 命令提示符。 如果想要快速打开特定路径的 cmd,请打开对应的文件夹,在地址栏直接输入 cmd 并回车。 这...",r:{minutes:.48,words:144},y:"a",t:"打开命令行"},["/zh/computer-basic/windows/cmd","/zh/computer-basic/windows/cmd.md"]],["v-1b13a197","/zh/computer-basic/windows/",{d:15909696e5,l:"2020年6月1日",c:"Windows",g:"Windows",e:`<p>以下是有关于 Windows 10 系统的一些基础知识。</p>
49`,r:{minutes:.14,words:41},y:"a",t:"基础知识"},["/zh/computer-basic/windows/index.html","/zh/computer-basic/windows/readme.md"]],["v-04d61852","/zh/computer-basic/windows/shortcutKey.html",{d:15909696e5,l:"2020年6月1日",c:"Windows",g:"Windows",e:`<p>熟练掌握各种 Windows 快捷键,能够更加高效的使用 Windows。</p>
50`,r:{minutes:3.67,words:1102},y:"a",t:"常用快捷键"},["/zh/computer-basic/windows/shortcutKey","/zh/computer-basic/windows/shortcutKey.md"]],["v-638e3a4a","/zh/front-end/advanced-js/",{d:1627776e6,l:"2021年8月1日",c:"Web 前端",g:"JS 进阶教程",e:"简介 本教程系统的归纳和总结了从 JavaScript 到 ECMAScript 的重难点以及高阶使用方法。 目录 1. 序言 2. 基础关注点 3. 数据类型的检验和转换 4. 错误处理机制 5. Array 6. String 7. Object 8. Class 9. Symbol 10. 解构赋值 11. 新增运算符 12. 异步编程 13. ...",r:{minutes:1.12,words:336},y:"a",t:"1.序言",i:"js"},["/zh/front-end/advanced-js/index.html","/zh/front-end/advanced-js/README.md"]],["v-094854c8","/zh/front-end/advanced-js/jses10.html",{d:1627776e6,l:"2021年8月1日",c:"Web 前端",g:"JS 进阶教程",e:"数组的解构赋值 基本用法 ES6 允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构(Destructuring)。 以前,为变量赋值,只能直接指定值。 ES6 允许写成下面这样。 上面代码表示,可以从数组中提取值,按照对应位置,对变量赋值。 本质上,这种写法属于“模式匹配”,只要等号两边的模式相同,左边的变量就会被赋予对应的值。下面...",r:{minutes:13.53,words:4060},y:"a",t:"10.解构赋值",i:"js"},["/zh/front-end/advanced-js/jses10","/zh/front-end/advanced-js/jses10.md"]],["v-0afd2d67","/zh/front-end/advanced-js/jses11.html",{d:1627776e6,l:"2021年8月1日",c:"Web 前端",g:"JS 进阶教程",e:"数组的扩展运算符 理解 扩展运算符(spread)是三个点(...)。它好比 rest 参数的逆运算,将一个数组转为用逗号分隔的参数序列。 更好的理解是,…args 就是把args中的数据一项一项取出来。 这里有一个例子可以很好的理解...args。 我们传入的参数是1, 2, 3,意味着...args的等于是1, 2, 3。又因为之前说过…args ...",r:{minutes:19.33,words:5800},y:"a",t:"11.新增运算符",i:"js"},["/zh/front-end/advanced-js/jses11","/zh/front-end/advanced-js/jses11.md"]],["v-0cb20606","/zh/front-end/advanced-js/jses12.html",{d:1627776e6,l:"2021年8月1日",c:"Web 前端",g:"JS 进阶教程",e:"异步编程存在的意义 JS是单线程模型 单线程模型指的是,JavaScript 只在一个线程上运行。也就是说,JavaScript 同时只能执行一个任务,其他任务都必须在后面排队等待。 注意,JavaScript 只在一个线程上运行,不代表 JavaScript 引擎只有一个线程。事实上,JavaScript 引擎有多个线程,单个脚本只能在一个线程上运行...",r:{minutes:113.94,words:34181},y:"a",t:"12.异步编程",i:"js"},["/zh/front-end/advanced-js/jses12","/zh/front-end/advanced-js/jses12.md"]],["v-0e66dea5","/zh/front-end/advanced-js/jses13.html",{d:1627776e6,l:"2021年8月1日",c:"Web 前端",g:"JS 进阶教程",e:"概念 ES6 提供了新的数据结构 Set。它类似于数组,但是成员的值都是唯一的,没有重复的值。 基本语法 构造函数 Set本身是一个构造函数,用来生成 Set 数据结构。 上面代码通过add()方法向 Set 结构加入成员,结果表明 Set 结构不会添加重复的值。 Set函数可以接受一个数组(或者具有 Iterable 接口的其他数据结构)作为参数,用...",r:{minutes:9.78,words:2933},y:"a",t:"13.Set",i:"js"},["/zh/front-end/advanced-js/jses13","/zh/front-end/advanced-js/jses13.md"]],["v-101bb744","/zh/front-end/advanced-js/jses14.html",{d:1627776e6,l:"2021年8月1日",c:"Web 前端",g:"JS 进阶教程",e:"概念 JavaScript 的对象(Object),本质上是键值对的集合(Hash 结构),但是传统上只能用字符串当作键。这给它的使用带来了很大的限制。 上面代码原意是将一个 DOM 节点作为对象data的键,但是由于对象只接受字符串作为键名,所以element被自动转为字符串[object HTMLDivElement]。 为了解决这个问题,ES6 ...",r:{minutes:14.46,words:4338},y:"a",t:"14.Map",i:"js"},["/zh/front-end/advanced-js/jses14","/zh/front-end/advanced-js/jses14.md"]],["v-11d08fe3","/zh/front-end/advanced-js/jses15.html",{d:1627776e6,l:"2021年8月1日",c:"Web 前端",g:"JS 进阶教程",e:"设计目的 JavaScript 原有的表示“集合”的数据结构,主要是数组(Array)和对象(Object),ES6 又添加了Map和`Set。这样就有了四种数据集
50合,用户还可以组合使用它们,定义自己的数据结构,比如数组的成员是Map,Map的成员是对象。这样就需要一种统一的接口机制,来处理所有不同的数据结构。 遍历器(Iterator)就是这样一种机...",r:{minutes:18.85,words:5655},y:"a",t:"15.Iterator",i:"js"},["/zh/front-end/advanced-js/jses15","/zh/front-end/advanced-js/jses15.md"]],["v-13856882","/zh/front-end/advanced-js/jses16.html",{d:1627776e6,l:"2021å¹´8月1日",c:"Web 前端",g:"JS 进阶教程",e:"同步遍历器的问题 Iterator 接口是一种数据遍历的协议,只要调用遍历器对象的next方法,就会得到一个对象,表示当前遍历指针所在的那个位置的信息。next方法返回的对象的结构是{value, done},其中value表示当前的数据的值,done是一个布尔值,表示遍历是否结束。 上面代码中,变量it是一个遍历器(iterator)。每次调用it....",r:{minutes:10.79,words:3238},y:"a",t:"16.异步遍历器",i:"js"},["/zh/front-end/advanced-js/jses16","/zh/front-end/advanced-js/jses16.md"]],["v-153a4121","/zh/front-end/advanced-js/jses17.html",{d:1627776e6,l:"2021å¹´8月1日",c:"Web 前端",g:"JS 进阶教程",e:"设计意义 Proxy 用于修改某些操作的默认行为,等同于在语言层面做出修改,所以属于一种“元编程”(meta programming),即对编程语言进行编程。 Proxy 可以理解成,在目标对象之前架设一层“拦截”,外界对该对象的访问,都必须先通过这层拦截,因此提供了一种机制,可以对外界的访问进行过滤和改写。Proxy 这个词的原意是代理,用在这里表示...",r:{minutes:22.8,words:6839},y:"a",t:"17.Proxy",i:"js"},["/zh/front-end/advanced-js/jses17","/zh/front-end/advanced-js/jses17.md"]],["v-16ef19c0","/zh/front-end/advanced-js/jses18.html",{d:1627776e6,l:"2021å¹´8月1日",c:"Web 前端",g:"JS 进阶教程",e:"设计目的 Reflect对象与Proxy对象一样,也是 ES6 为了操作对象而提供的新 API。Reflect对象的设计目的有这样几个: (1) 将Object对象的一些明显属于语言内部的方法(比如Object.defineProperty),放到Reflect对象上。现阶段,某些方法同时在Object和`Reflect对象上部署,未来的新方法将只部署...",r:{minutes:7.99,words:2397},y:"a",t:"18.Reflect",i:"js"},["/zh/front-end/advanced-js/jses18","/zh/front-end/advanced-js/jses18.md"]],["v-18a3f25f","/zh/front-end/advanced-js/jses19.html",{d:1627776e6,l:"2021å¹´8月1日",c:"Web 前端",g:"JS 进阶教程",e:"设计原因 历史上,JavaScript 一直没有模块(module)体系,无法将一个大程序拆分成互相依赖的小文件,再用简单的方法拼装起来。其他语言都有这项功能,比如 Ruby 的require、Python 的import,甚至就连 CSS 都有@import,但是 JavaScript 任何这方面的支持都没有,这对开发大型的、复杂的项目形成了巨大障碍...",r:{minutes:19.33,words:5798},y:"a",t:"19.Module模块化",i:"js"},["/zh/front-end/advanced-js/jses19","/zh/front-end/advanced-js/jses19.md"]],["v-f3be390e","/zh/front-end/advanced-js/jses2.html",{d:1627776e6,l:"2021å¹´8月1日",c:"Web 前端",g:"JS 进阶教程",e:"几个概念 语句 JavaScript 程序的执行单位为行(line),也就是一行一行地执行。一般情况下,每一行就是一个语句。 语句(statement)是为了完成某种任务而进行的操作,比如下面就是一行赋值语句。 这条语句先用var命令,声明了变量a,然后将1 + 3的运算结果赋值给变量a。 1 + 3叫做表达式(expression),指一个为了得到返...",r:{minutes:23.3,words:6989},y:"a",t:"2.基础关注点",i:"js"},["/zh/front-end/advanced-js/jses2","/zh/front-end/advanced-js/jses2.md"]],["v-3e2e9009","/zh/front-end/advanced-js/jses20.html",{d:1627776e6,l:"2021å¹´8月1日",c:"Web 前端",g:"JS 进阶教程",e:"ESM VS CJS 它们有三个重大差异。 CommonJS 模块输出的是一个值的拷贝,ES6 模块输出的是值的引用。; CommonJS 模块是运行时加载,ES6 模块是编译时输出接口。; CommonJS 模块的require()是同步加载模块,ES6 模块的import命令是异步加载,有一个独立的模块依赖的解析阶段。; 第二个差异是因为 Comm...",r:{minutes:20.85,words:6254},y:"a",t:"20.模块加载的实现",i:"js"},["/zh/front-end/advanced-js/jses20","/zh/front-end/advanced-js/jses20.md"]],["v-3fe368a8","/zh/front-end/advanced-js/jses21.html",{d:1627776e6,l:"2021å¹´8月1日",c:"Web 前端",g:"JS 进阶教程",e:"基本概念 DOM 理解 DOM 是 JavaScript 操作网页的接口,全称为“文档对象模型”(Document Object Model)。它的作用是将网页转为一个 JavaScript 对象,从而可以用脚本进行各种操作(比如增删内容)。 浏览器会根据 DOM 模型,将结构化文档(比如 HTML 和 XML)解析成一系列的节点ï¼
50Œå†ç”±è¿™äº›èŠ‚ç‚¹ç»„æˆä¸€ä¸ª...",r:{minutes:109.91,words:32972},y:"a",t:"21.DOM",i:"js"},["/zh/front-end/advanced-js/jses21","/zh/front-end/advanced-js/jses21.md"]],["v-41984147","/zh/front-end/advanced-js/jses22.html",{d:1627776e6,l:"2021å¹´8月1日",c:"Web 前端",g:"JS 进阶教程",e:"EventTarget 接口 概述 DOM 的事件操作(监听和触发),都定义在EventTarget接口。所有节点对象都部署了这个接口,其他一些需要事件通信的浏览器内置对象(比如,XMLHttpRequest、`AudioNode、AudioContext)也部署了这个接口。 该接口主要提供三个实例方法。 addEventListener:绑定事件的监...",r:{minutes:19.48,words:5843},y:"a",t:"22.DOM事件",i:"js"},["/zh/front-end/advanced-js/jses22","/zh/front-end/advanced-js/jses22.md"]],["v-434d19e6","/zh/front-end/advanced-js/jses23.html",{d:1627776e6,l:"2021å¹´8月1日",c:"Web 前端",g:"JS 进阶教程",e:"浏览器环境概述 代码嵌入网页的方法 网页中嵌入 JavaScript 代码,主要有四种方法: 元素直接嵌入代码。; 标签加载外部脚本; 事件属性; URL 协议; script 元素嵌入代码 元素内部可以直接写入 JavaScript 代码。 标签有一个type属性,用来指定脚本类型。对 JavaScript 脚本来说,type属性可以设为两种值。 t...",r:{minutes:69.45,words:20834},y:"a",t:"23.BOM",i:"js"},["/zh/front-end/advanced-js/jses23","/zh/front-end/advanced-js/jses23.md"]],["v-4501f285","/zh/front-end/advanced-js/jses24.html",{d:1627776e6,l:"2021å¹´8月1日",c:"Web 前端",g:"JS 进阶教程",e:"概述 “编程风格”(programming style)指的是编写代码的样式规则。不同的程序员,往往有不同的编程风格。 有人说,编译器的规范叫做“语法规则”(grammar),这是程序员必须遵守的;而编译器忽略的部分,就叫“编程风格”(programming style),这是程序员可以自由选择的。这种说法不完全正确,程序员固然可以自由选择编程风格,但...",r:{minutes:17.85,words:5356},y:"a",t:"24.编程风格",i:"js"},["/zh/front-end/advanced-js/jses24","/zh/front-end/advanced-js/jses24.md"]],["v-46b6cb24","/zh/front-end/advanced-js/jses25.html",{d:1627776e6,l:"2021å¹´8月1日",c:"Web 前端",g:"JS 进阶教程",e:"概述 正则表达式(regular expression)是一种表达文本模式(即字符串结构)的方法,有点像字符串的模板,常常用来按照“给定模式”匹配文本。比如,正则表达式给出一个 Email 地址的模式,然后用它来确定一个字符串是否为 Email 地址。JavaScript 的正则表达式体系是参照 Perl 5 建立的。 新建正则表达式有两种方法。一种是...",r:{minutes:52.4,words:15721},y:"a",t:"25.正则表达式",i:"js"},["/zh/front-end/advanced-js/jses25","/zh/front-end/advanced-js/jses25.md"]],["v-486ba3c3","/zh/front-end/advanced-js/jses26.html",{d:1627776e6,l:"2021å¹´8月1日",c:"Web 前端",g:"JS 进阶教程",e:"console 对象与控制台 console 对象的静态方法 console对象提供的各种静态方法,用来与控制台窗口互动。 console.log(),console.info(),console.debug() console.log方法用于在控制台输出信息。它可以接受一个或多个参数,将它们连接起来输出。 console.log方法会自动在每次输出的...",r:{minutes:71.86,words:21558},y:"a",t:"26.标准对象库",i:"js"},["/zh/front-end/advanced-js/jses26","/zh/front-end/advanced-js/jses26.md"]],["v-f05487d0","/zh/front-end/advanced-js/jses3.html",{d:1627776e6,l:"2021å¹´8月1日",c:"Web 前端",g:"JS 进阶教程",e:"数据类型的检验 概述 JavaScript 有三种方法,可以确定一个值到底是什么类型。 typeof运算符; instanceof运算符; Object.prototype.toString方法; 三种方法各有不同,我们将一一介绍。 typeof 运算符 基本用法 typeof运算符可以返回一个值的数据类型。 数值、字符串、布尔值分别返回number、...",r:{minutes:22.47,words:6741},y:"a",t:"3.数据类型的检验和转换",i:"js"},["/zh/front-end/advanced-js/jses3","/zh/front-end/advanced-js/jses3.md"]],["v-ecead692","/zh/front-end/advanced-js/jses4.html",{d:1627776e6,l:"2021å¹´8月1日",c:"Web 前端",g:"JS 进阶教程",e:"Error 实例对象 JavaScript 解析或运行时,一旦发生错误,引擎就会抛出一个错误对象。JavaScript 原ç”
50Ÿæä¾›Error构造函数,所有抛出的错误都是这个构造函数的实例。 上面代码中,我们调用Error()构造函数,生成一个实例对象err。`Error()构造函数接受一个参数,表示错误提示,可以从实例的message属性读到这个参数。抛...",r:{minutes:9.13,words:2738},y:"a",t:"4.错误处理机制",i:"js"},["/zh/front-end/advanced-js/jses4","/zh/front-end/advanced-js/jses4.md"]],["v-e9812554","/zh/front-end/advanced-js/jses5.html",{d:1627776e6,l:"2021å¹´8月1日",c:"Web 前端",g:"JS 进阶教程",e:"数组的本质 本质上,数组属于一种特殊的对象。typeof运算符会返回数组的类型是object。 上面代码表明,typeof运算符认为数组的类型就是对象。 数组的特殊性体现在,它的键名是按次序排列的一组整数(0,1,2...)。 上面代码中,Object.keys方法返回数组的所有键名。可以看到数组的键名就是整数0、1、2。 由于数组成员的键名是固定的(...",r:{minutes:41.04,words:12312},y:"a",t:"5.Array",i:"js"},["/zh/front-end/advanced-js/jses5","/zh/front-end/advanced-js/jses5.md"]],["v-e6177416","/zh/front-end/advanced-js/jses6.html",{d:1627776e6,l:"2021å¹´8月1日",c:"Web 前端",g:"JS 进阶教程",e:"字符串的几个关注点 字符串与数组 字符串可以被视为字符数组,因此可以使用数组的方括号运算符,用来返回某个位置的字符(位置编号从0开始)。 如果方括号中的数字超过字符串的长度,或者方括号中根本不是数字,则返回undefined。 但是,字符串与数组的相似性仅此而已。实际上,无法改变字符串之中的单个字符。 上面代码表示,字符串内部的单个字符无法改变和增删,...",r:{minutes:34.39,words:10316},y:"a",t:"6.String",i:"js"},["/zh/front-end/advanced-js/jses6","/zh/front-end/advanced-js/jses6.md"]],["v-e2adc2d8","/zh/front-end/advanced-js/jses7.html",{d:1627776e6,l:"2021å¹´8月1日",c:"Web 前端",g:"JS 进阶教程",e:"几个基础关注点 表达式还是语句? 对象采用大括号表示,这导致了一个问题:如果行首是一个大括号,它到底是表达式还是语句? JavaScript 引擎读到上面这行代码,会发现可能有两种含义。第一种可能是,这是一个表达式,表示一个包含foo属性的对象;第二种可能是,这是一个语句,表示一个代码区块,里面有一个标签foo,指向表达式123。 为了避免这种歧义,J...",r:{minutes:79.13,words:23740},y:"a",t:"7.Object",i:"js"},["/zh/front-end/advanced-js/jses7","/zh/front-end/advanced-js/jses7.md"]],["v-df44119a","/zh/front-end/advanced-js/jses8.html",{d:1627776e6,l:"2021å¹´8月1日",c:"Web 前端",g:"JS 进阶教程",e:"Class 的由来 JavaScript 语言中,生成实例对象的传统方法是通过构造函数。下面是一个例子。 上面这种写法跟传统的面向对象语言(比如 C++ 和 Java)差异很大,很容易让新学习这门语言的程序员感到困惑。 ES6 提供了更接近传统语言的写法,引入了 Class(类)这个概念,作为对象的模板。通过class关键字,可以定义类。 基本上,ES...",r:{minutes:33.59,words:10078},y:"a",t:"8.Class",i:"js"},["/zh/front-end/advanced-js/jses8","/zh/front-end/advanced-js/jses8.md"]],["v-dbda605c","/zh/front-end/advanced-js/jses9.html",{d:1627776e6,l:"2021å¹´8月1日",c:"Web 前端",g:"JS 进阶教程",e:"设计原理 ES5 的对象属性名都是字符串,这容易造成属性名的冲突。比如,你使用了一个他人提供的对象,但又想为这个对象添加新的方法(mixin 模式),新方法的名字就有可能与现有方法产生冲突。如果有一种机制,保证每个属性的名字都是独一无二的就好了,这样就从根本上防止属性名的冲突。这就是 ES6 引入Symbol的原因。 ES6 引入了一种新的原始数据类型...",r:{minutes:16.3,words:4890},y:"a",t:"9.Symbol",i:"js"},["/zh/front-end/advanced-js/jses9","/zh/front-end/advanced-js/jses9.md"]],["v-1858bc8a","/zh/front-end/ajax/ajax.html",{d:15909696e5,l:"2020å¹´6月1日",c:"Web 前端",g:"Ajax",e:"Ajax 全称 Asynchronous JavaScript and XML(异步的 JavaScript 和 XML),既是一个对象,也是一种方法模式 AJAX 是一种用于创建快速动态网页的技术,通过在后台与服务器进行少量数据交换,Ajax 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新,传统的不使用 Aj...",r:{minutes:18.22,words:5466},y:"a",t:"Ajax"},["/zh/front-end/ajax/ajax","/zh/front-end/ajax/ajax.md"]],["v-437b808a","/zh/front-end/data-storage/data-storage.html",{d:15916608e5,l:"2020å¹´6月9日",c:"Web 前端",g:["Cookie","localStorage","SessionStorage","浏览器的本地存储"],e:"[[toc]] 1. Cookie cookie 用于存储数据,当用户访问了某个网站(网页)的时候,可以通过 cookie 来访问客户端上存储的数据 注意: 不同的浏览器存放的 cookie 位置不一样,ä¹
50Ÿæ˜¯ä¸èƒ½é€šç”¨çš„; cookie 的存储是以域名形式进行区分的; cookie 的数据可以设置名字的; 一个域名下存放的 cookie 的个数是有限制的...",r:{minutes:3.16,words:949},y:"a",t:"Data Storage"},["/zh/front-end/data-storage/data-storage","/zh/front-end/data-storage/data-storage.md"]],["v-54f6ce60","/zh/front-end/dom-bom/db1.html",{d:15918336e5,l:"2020å¹´6月11日",c:"Web 前端",g:["DOM","BOM"],e:"节点 Node(节点)是构成HTML5的基本单元,DOM节点主要分为四类 文档节点:整个HTML文档; 元素节点:HTML文档中的HTML标签; 属性节点:元素的属性; 文本节点:HTML标签中的文本内容; 节点 nodeName(节点名) nodeType(节点类型) nodeValue(节点值) -------- ---------------- ...",r:{minutes:.93,words:279},y:"a",t:"1.节点"},["/zh/front-end/dom-bom/db1","/zh/front-end/dom-bom/db1.md"]],["v-4a160202","/zh/front-end/dom-bom/db10.html",{d:15918336e5,l:"2020å¹´6月11日",c:"Web 前端",g:["DOM","BOM"],e:"拖拽事件 当我们拖拽一个网页中的内容时,浏览器会默认去搜索引擎中搜索内容,此时会导致拖拽功能的异常,这个是浏览器提供的默认行为,如果不希望发生这个行为,可以通过return false来取消默认行为,但是对IE8及以下浏览器不起作用(并不是说IE8不支持使用return false来取消默认效果,只是不支持在拖拽时取消默认效果) 注意: 使用addEv...",r:{minutes:1.46,words:439},y:"a",t:"10. 拖拽事件"},["/zh/front-end/dom-bom/db10","/zh/front-end/dom-bom/db10.md"]],["v-4bcadaa1","/zh/front-end/dom-bom/db11.html",{d:15918336e5,l:"2020å¹´6月11日",c:"Web 前端",g:["DOM","BOM"],e:"滚轮事件 onscroll事件为元素添加滚动(注意不是滚轮,滚动是滚动条发生变化)事件,该事件是滚动条变化就发生事件,所以一次鼠标滚动可能会发生很多次该事件; onwheel鼠标滚动事件,会在鼠标滚动时触发,推荐使用该事件; onmousewheel鼠标滚轮事件,会在滚轮滚动时触发,但是火狐不支持该属性,在火狐中需要使用DOMMouseScroll来绑...",r:{minutes:2.72,words:816},y:"a",t:"11. 滚轮事件"},["/zh/front-end/dom-bom/db11","/zh/front-end/dom-bom/db11.md"]],["v-4d7fb340","/zh/front-end/dom-bom/db12.html",{d:15918336e5,l:"2020å¹´6月11日",c:"Web 前端",g:["DOM","BOM"],e:"键盘事件 12.1 事件触发 onkeydown事件触发表明键盘按键被按下,如果一直按着某个按键不松手,则事件会一直触发; 注意:当onkeydown事件连续触发时,第一次和第二次之间会间隔稍微长一点,其他的会非常快,这种设计是为了防止误操作事故的发生,如果不想要这种效果请使用定时器 onkeyup事件触发表明键盘按键被松开; 注:键盘事件有一般都会绑...",r:{minutes:1.6,words:479},y:"a",t:"12. 键盘事件"},["/zh/front-end/dom-bom/db12","/zh/front-end/dom-bom/db12.md"]],["v-4f348bdf","/zh/front-end/dom-bom/db13.html",{d:15918336e5,l:"2020å¹´6月11日",c:"Web 前端",g:["DOM","BOM"],e:"BOM BOM全称Browser Object Model(浏览器对象模型),是用于描述这种对象与对象之间层次关系的模型,浏览器对象模型提供了独立于内容的、可以与浏览器窗口进行互动的对象结构,BOM可以使我们通过JS来操作浏览器 BOM由多个对象组成,其中代表浏览器窗口的Window对象是BOM的顶层对象,其他对象都是该对象的子对象 Window-代表...",r:{minutes:5.04,words:1513},y:"a",t:"13. BOM"},["/zh/front-end/dom-bom/db13","/zh/front-end/dom-bom/db13.md"]],["v-56aba6ff","/zh/front-end/dom-bom/db2.html",{d:15918336e5,l:"2020å¹´6月11日",c:"Web 前端",g:["DOM","BOM"],e:"DOM事件 事件是用户和浏览器之间的交互行为 2.1 鼠标事件 属性 描述 ------------- ------------------------------------------------------------ onclick 当用户点击某个对象时调用的事件句柄。单击鼠标左键或者按下回车键时触发,意味着onclick事件处理程序既可以通过...",r:{minutes:5.61,words:1682},y:"a",t:"2. DOM事件"},["/zh/front-end/dom-bom/db2","/zh/front-end/dom-bom/db2.md"]],["v-58607f9e","/zh/front-end/dom-bom/db3.html",{d:15918336e5,l:"2020å¹´6月11日",c:"Web 前端",g:["DOM","BOM"],e:"DOM查询 3.1 获取DOM节点 3.1.1 获取元素节点 getElementById()通过ID获取元素节点,返回一个普通对象; 注意:ID其实可以不用获取而直接使用,因为ID是具有唯一性的,但是不推荐不获取就直接使用ID,因为以后会很难区分这个变量是哪里来的 getElementsByTagName()方法通过标签名获取元素节点,返回一个类数组...",r:{minutes:10.7,words:3209},y:"a",t:"3. DOM查询"},["/zh/front-end/dom-bom/db3","/zh/front-end/dom-bom/db3.md"]],["v-5a15583d","/zh/front-end/dom-bom/db4.html",{d:15918336e5,l:"2020å¹´6月11日",c:"Web 前端",g:["DOM","BOM"],e:'元素样式 4.1 修改元素CSS样式 4.1.1 通过style属性修改元素样式 通过 元素.style.样式名="样式值" 的方式设置修改CSS样式 注意: 如æž
50œCSS的样式名中含有-(也就是减号),这种名称在JS中是不合法的,比如background-color,需要将这种样式名修改为驼峰命名法,去掉-,然后将-后的字母大写,如:backgroun...',r:{minutes:10.38,words:3113},y:"a",t:"4. 元素样式"},["/zh/front-end/dom-bom/db4","/zh/front-end/dom-bom/db4.md"]],["v-5bca30dc","/zh/front-end/dom-bom/db5.html",{d:15918336e5,l:"2020å¹´6月11日",c:"Web 前端",g:["DOM","BOM"],e:"事件对象 当事件的响应函数被触发时,浏览器每次都会将一个事件对象作为默认实参(如果没有传入参数位置为arguments[0])传递进响应函数,在事件对象中封装了当前事件相关的一些信息,比如:鼠标的坐标,键盘哪个按键被按下 ,鼠标滚轮滚动的方向 注: 一般都会把形参写在事件对象的形参里,虽然不写也不会报错,但是获取方式会相对麻烦; 在IE中,event事...",r:{minutes:3.28,words:984},y:"a",t:"5. 事件对象"},["/zh/front-end/dom-bom/db5","/zh/front-end/dom-bom/db5.md"]],["v-5d7f097b","/zh/front-end/dom-bom/db6.html",{d:15918336e5,l:"2020å¹´6月11日",c:"Web 前端",g:["DOM","BOM"],e:"事件的冒泡(Bubble) 所谓的冒泡指的就是事件的向上传导,当后代元素上的事件被触发时,其祖先元素的相同事件也会被触发,在开发中大部分情况冒泡都是有用的,如果不希望发生事件冒泡,可以通过事件对象来取消冒泡,可以通过设置event.cancelBubble=true来取消冒泡,这个需要设置在子元素的事件中,并且大多数都是设置的可以冒泡,除了某些函数默认...",r:{minutes:1.22,words:367},y:"a",t:"6. 事件的冒泡(Bubble)"},["/zh/front-end/dom-bom/db6","/zh/front-end/dom-bom/db6.md"]],["v-5f33e21a","/zh/front-end/dom-bom/db7.html",{d:15918336e5,l:"2020å¹´6月11日",c:"Web 前端",g:["DOM","BOM"],e:"事件的委派 事件的委派指将事件统一绑定给元素的共同的祖先元素,这样当后代元素上的事件触发时,会一直冒泡到祖先元素,从而通过祖先元素的响应函数来处理事件,事件委派是利用了冒泡,通过委派可以事件绑定的次数,提高程序的性能 例子: 为每一个超链接都绑定一个单击响应函数,这里我们为每一个超链接都绑定了一个单击响应函数,这种中操作比较麻烦,而且这些操作只能为已有...",r:{minutes:1.38,words:413},y:"a",t:"7. 事件的委派"},["/zh/front-end/dom-bom/db7","/zh/front-end/dom-bom/db7.md"]],["v-60e8bab9","/zh/front-end/dom-bom/db8.html",{d:15918336e5,l:"2020å¹´6月11日",c:"Web 前端",g:["DOM","BOM"],e:"事件的绑定 8.1 绑定事件 通过 对象.事件=函数 的形式绑定的响应函数,只能同时为一个元素的一个事件绑定一个响应函数,不能够绑定多个,如果绑定了多个,则后边绑定的响应函数会覆盖掉前边的 通过addEventListener()方法(不支持IE8及以下浏览器)可以为元素绑定多个响应函数,该方法有三个参数; 参数 - 代表事件的字符串,不要加on; -...",r:{minutes:3.35,words:1004},y:"a",t:"8. 事件的绑定"},["/zh/front-end/dom-bom/db8","/zh/front-end/dom-bom/db8.md"]],["v-629d9358","/zh/front-end/dom-bom/db9.html",{d:15918336e5,l:"2020å¹´6月11日",c:"Web 前端",g:["DOM","BOM"],e:"事件的传播 关于事件的传播网景公司和微软公司有不同的看法 微软公司认为事件应该是由内向外传播,也就是当事件触发时,应该先触发当前元素上的事件,然后再向当前元素的祖先元素上传播,也就是说事件应该在冒泡阶段执行; 网景公司认为事件应该是由外向内传播,也就是当前事件被触发时,应该先触发当前元素的最外层的祖先元素的事件,然后再向内传播给后代元素,这个阶段叫做捕...",r:{minutes:1.36,words:408},y:"a",t:"9. 事件的传播"},["/zh/front-end/dom-bom/db9","/zh/front-end/dom-bom/db9.md"]],["v-7b5f9b1a","/zh/front-end/dom-bom/",{d:15918336e5,l:"2020å¹´6月11日",c:"Web 前端",g:["DOM","BOM"],e:"DOM全称Document Object Model(文档对象模型) 文档:整个HTML网页文档对象; 对象:网页中的每一个部分都被转换为了一个对象; 模型:使用模型表示对象之间的关系,方便我们获取对象;",r:{minutes:.27,words:80},y:"a",t:"DOM&BOM"},["/zh/front-end/dom-bom/index.html","/zh/front-end/dom-bom/readme.md"]],["v-dc3c55de","/zh/front-end/html-css/advanced-html.html",{d:15915744e5,l:"2020å¹´6月8日",c:"Web 前端",g:["HTML 进阶","SVG","Canvas","布局适配"],e:"[[toc]] 1.拖拽 拖拽事件需要在需要拖拽的元素上设置draggable=true来让该元素可以被拖拽 1.1 主要事件 dragstart:当用户开始拖动元素或者拖动选中文本时触发,应用在被拖拽元素上; drag:当元素或者选中的文本被拖动时触发(每几百毫秒触发一次),应用在被拖拽元素上; dragend:当拖动操作结束时触发(通过释放鼠标按钮...",r:{minutes:67.78,words:20334},y:"a",t:"HTML进阶",i:"html"},["/zh/front-end/html-css/advanced-html","/zh/front-end/html-css/advanced-html.md"]],["v-0e0889b8","/zh/front-end/html-css/css.html",{d:15915744e5,l:"2020å¹´6月8日",c:"Web 前端",g:["CSS"],e:"[[toc]] 1. 外部链接 2. 类和ID及css选择器 2.1 ç±» 2.2 ID id具有唯一性 2.3 css选择器 2.3.1 选择器的权重 选择器的权重大小: ID > ç±» > 标签名 > 通配符 在选择器中的属性出现相同的时候,优先考虑ID选择器,然后是类选择器,标签选择器,最后才考虑通配符选择器 在都有这些选择器的时候再看每一个选择器的...",r:{minutes:64.82,words:19446},y:"a",t:"CSS",i:"css"},["/zh/front-end/html-css/css","/zh/front-end/html-css/css.md"]],["v-68c37a04","/zh/front-end/html-css/hint.html",{d:1591056e6,l:"2020å¹´6月2日",c:"Web 前端",g:["HTML","CSS"],e:"[[TOC]] 浅谈父元素高度塌陷问题 文档流 文档流处在网页的最底层,它表示的是一个页面中的位置,我们所创建的元素默认都处在文档流中 元素在文档流中的特点: 块元素 1. 块元素在文档流中会独占一行,块元素会自上向下排列。 2. 块元素在文档流中默认宽度是父元素的100% 3. 块元素在文档流中的高度默认被内容撑开 内联元素 1. 内联元素在文档流中...",r:{minutes:8.33,words:2498},y:"a",t:"写在后面-对H5&CSS的补充",i:"advance"},["/zh/front-end/html-css/hint","/zh/front-end/html-css/hint.md"]],["v-c6393140","/zh/front-end/html-css/html.html",{d:15909696e5,l:"2020å¹´6月1日",c:"Web 前端",g:"HTML",e:"[[toc]] 1. meta的用法和结构 2. HTML 5 标记 注意: 除了a标签以外的所有内联都不能嵌套块级标签; 块级标签可以嵌套任意标签,但是p不能嵌套块级标签,因为嵌套关系如果P标签里面是块级就会把P标签分割成 ; 两个独立的P标签,那个块级元素就在中间 2.1 文本标签 < pre >< pre />标记保留了文本的所有换行与空 < h...",r:{minutes:13.74,words:4121},y:"a",t:"HTML",i:"html"},["/zh/front-end/html-css/html","/zh/front-end/html-css/html.md"]],["v-5b731d25","/zh/front-end/in-depth/browser.html",{d:15914016e5,l:"2020å¹´6月6日",c:"Web 前端",g:["浏览器渲染原理","性能优化","函数防抖与函数节流","浏览器缓存机制","css与js阻塞","重绘重排"],e:"[[toc]] 1. Web 前后端整体示意图 01_web前后端整体图示 2. 浏览器功能与组成 2.1 浏览器应该具备的功能 1. 网络 浏览器通过网络模块来下载各式各样的资源,如 html 文本;javascript 代码;样式表;图片;音视频文件等。 网络部分本质上十分重要,因为它耗时长,而且需要安全访问互联网上的资源。 2. 资源管理 ​ 从...",r:{minutes:40.7,words:12209},y:"a",t:"浏览器渲染原理及性能优化",i:"chrome"},["/zh/front-end/in-depth/browser","/zh/front-end/in-depth/browser.md"]],["v-5ba3237c","/zh/front-end/in-depth/https.html",{d:15913152e5,l:"2020å¹´6月5日",c:"Web 前端",g:"Http&Https",e:"HTTP 协议
50全称 Hyper Text Transfer Protocol,翻译过来就是超文本传输协议,位于 TCP/IP 四层模型当中的应用层。 Http 漫画 HTTP 协议通过 请求/响应 的方式,在客户端和服务端之间进行通信。 Http 漫画 这一切看起来很美好,但是 HTTP 协议有一个致命的缺点: 不够安全。 HTTP 协议的信息传输完全...",r:{minutes:5.96,words:1788},y:"a",t:"Http 与 Https 介绍",i:"link"},["/zh/front-end/in-depth/https","/zh/front-end/in-depth/https.md"]],["v-1d12b96c","/zh/front-end/in-depth/interview.html",{d:16092864e5,l:"2020年12月30日",c:"Web 前端",g:"interview",e:"网络相关 http&https (https://zhuanlan.zhihu.com/p/72616216) Http2和Http1.X的区别 (https://www.cnblogs.com/kaishirenshi/p/12575847.html) 强制缓存和协商缓存 (https://segmentfault.com/a/11900000161...",r:{minutes:8.12,words:2435},y:"a",t:"面试题",i:"link"},["/zh/front-end/in-depth/interview","/zh/front-end/in-depth/interview.md"]],["v-58d70f88","/zh/front-end/jquery/ajax.html",{d:15926112e5,l:"2020年6月20日",c:"Web 前端",g:"jQuery",e:`<div class="hint-container tip">
51<p class="hint-container-title">章节过时</p>
52<p>目前,一套代码已经可以在多个浏览器上运行良好了,所以 jQuery 的意义并不大。在 Node 中,我们使用 <a href="/zh/nodeJS/package/axois.html" target="blank">axios</a> 来进行请求。</p>
53</div>
54`,r:{minutes:2.75,words:826},y:"a",t:"AJAX"},["/zh/front-end/jquery/ajax","/zh/front-end/jquery/ajax.md"]],["v-3f2c3466","/zh/front-end/jquery/animation.html",{d:15926112e5,l:"2020年6月20日",c:"Web 前端",g:"jQuery",e:`<div class="hint-container tip">
55<p class="hint-container-title">章节过时</p>
56<p>大部分动画都能够通过 CSS3 的 transition 实现,且 CSS3 开销更小。在复杂动画下,jQuery 更容易触发性能瓶颈。</p>
57<p>2020 年浏览器对 CSS3 已经支持的特别良好,所以目前大多数的动画都直接使用 CSS3 的动画库。本章以学习思路为主即可。</p>
58</div>
59`,r:{minutes:3.51,words:1054},y:"a",t:"动画"},["/zh/front-end/jquery/animation","/zh/front-end/jquery/animation.md"]],["v-edae68e0","/zh/front-end/jquery/event.html",{d:15926112e5,l:"2020年6月20日",c:"Web 前端",g:"jQuery",e:`<div class="hint-container tip">
60<p class="hint-container-title">章节过时</p>
61<p>由于目前各浏览器 API 已经基本统一,无需使用 jQuery 绑定事件了。</p>
62</div>
63`,r:{minutes:5.15,words:1545},y:"a",t:"事件"},["/zh/front-end/jquery/event","/zh/front-end/jquery/event.md"]],["v-adb5d1e4","/zh/front-end/jquery/extend.html",{d:15926112e5,l:"2020年6月20日",c:"Web 前端",g:"jQuery",e:"当我们使用 jQuery 对象的方法时,由于 jQuery 对象可以操作一组 DOM,而且支持链式操作,所以用起来非常方便。 但是 jQuery 内置的方法永远不可能满足所有的需求。比如,我们想要高亮显示某些 DOM 元素,用 jQuery 可以这么实现: 总是写重复代码可不好,万一以后还要修改字体就更麻烦了,能不能统一起来,写个 highlight(...",r:{minutes:5.14,words:1541},y:"a",t:"扩展"},["/zh/front-end/jquery/extend","/zh/front-end/jquery/extend.md"]],["v-cd252a04","/zh/front-end/jquery/intro.html",{d:15926112e5,l:"2020年6月20日",c:"Web 前端",g:"jQuery",e:`<p>jQuery 是 JavaScript 世界中使用最广泛的一个库。鼎盛时期全世界大约有 80~90%的网站直接或间接地使用了 jQuery。</p>
64<p>jQuery 能帮我们干这些事情:</p>
65<ul>
66<li>消除浏览器差异: 您不需要自己写冗长的代码来针对不同的浏览器来绑定事件,编写 AJAX 等代码;</li>
67<li>简洁的操作 DOM 的方法: 写 <code>$('#test')</code> 肯定比 <code>document.getElementById('test')</code> 来得简洁;</li>
68<li>轻松实现动画、修改 CSS 等各种操作。</li>
69<li>jQuery 的理念 “Write Less, Do More“,让您写更少的代码,完成更多的工作!</li>
70</ul>
71`,r:{minutes:2.04,words:611},y:"a",t:"介绍"},["/zh/front-end/jquery/intro","/zh/front-end/jquery/intro.md"]],["v-0b8c0619","/zh/front-end/jquery/modify-dom.html",{d:15926112e5,l:"2020年6月20日",c:"Web 前端",g:"jQuery",e:`<div class="hint-container tip">
72<p class="hint-container-title">章节过时</p>
73<p>而且目前浏览器 API 已经基本统一,除非兼容旧版本 IE,否则无需针对不同浏览器写不同的代码。</p>
74</div>
75`,r:{minutes:1.94,words:582},y:"a",t:"修改 DOM 结构"},["/zh/front-end/jquery/modify-dom","/zh/front-end/jquery/modify-dom.md"]],["v-ad77815e","/zh/front-end/jquery/operate-dom.html",{d:15926112e5,l:"2020年6月20日",c:"Web 前端",g:"jQuery",e:`<div class="hint-container tip">
76<p class="hint-container-title">章节过时</p>
77<p>目前,新型的框架大多遵循 MVVM 逻辑,及把逻辑层的数据绑定到视图层去显示。这种思路下,无需也不应操作 DOM。</p>
78</div>
79`,r:{minutes:5.02,words:1505},y:"a",t:"操作 DOM"},["/zh/front-end/jquery/operate-dom","/zh/front-end/jquery/operate-dom.md"]],["v-6d15435e","/zh/front-end/jquery/",{d:15926112e5,l:"2020年6月20日",c:"Web 前端",g:"jQuery",e:`<p>jQuery 是一款能够方便快捷的操作 DOM,并兼容所有主流浏览器的框架,目前最新版本是 3.5.1。</p>
80<div class="hint-container tip">
81<p class="hint-container-title">提示</p>
82<p>由于目前前端应用的愈加复杂,前端开发者大多数转向 MVVM 框架,目前世界比较流行的三大 MVVM 框架是 Vue React Angular。可以说,在 2020 年,<strong>jQuery 已经过时了</strong>!</p>
83<p>不过 jQuery 无论说从代码实现还是从写法上,到今天都是值得借鉴的。</p>
84<p>
84所以如果您只想简单了解并掌握前端开发,而不是深入地从事相关行业,您可以直接 <a href="/zh/vue/" target="blank">跳过本章节</a>。</p>
85<p>本章节应以理解写法与思路为主,无需刻意记忆。</p>
86</div>
87`,r:{minutes:.75,words:226},y:"a",t:"jQuery"},["/zh/front-end/jquery/index.html","/zh/front-end/jquery/readme.md"]],["v-60dc0da9","/zh/front-end/jquery/selector.html",{d:15926112e5,l:"2020年6月20日",c:"Web 前端",g:"jQuery",e:`<p>选择器是 jQuery 的核心。一个选择器写出来类似 <code>$('#dom-id')</code>。</p>
88`,r:{minutes:8.59,words:2577},y:"a",t:"选择器"},["/zh/front-end/jquery/selector","/zh/front-end/jquery/selector.md"]],["v-55c831be","/zh/front-end/pre-css/bootstrap.html",{d:15911424e5,l:"2020年6月3日",c:"Web 前端",g:"Bootstrap",e:"[[toc]] 写在前面 Bootstrap 是一个简洁、直观、强悍的前端开发框架,让 web 开发更迅速、简单 中文网 (http://www.bootcss.com/) 英文网 (http://getbootstrap.com/) 本节并不是讲 Bootstrap 库组件的使用,而是介绍一种经典、常用的布局方式——栅格布局。这种布局方式被各大 UI...",r:{minutes:9.31,words:2794},y:"a",t:"Bootstrap 之栅格系统"},["/zh/front-end/pre-css/bootstrap","/zh/front-end/pre-css/bootstrap.md"]],["v-aca7c608","/zh/front-end/pre-css/hint.html",{d:15911424e5,l:"2020年6月3日",c:"Web 前端",g:["CSS","Less","Scss"],e:"[[toc]] Sass 继承与混合的区别 继承 混合 两者分析 通过以上编译的代码, 其实就知道了混合它不是公用样式类,而是直接复制一份出来, 而继承只是对类添加选择器达到共用的目的,所以继承的话是没有代码冗余的,而混合会有代码冗余。 以上提到的都是直接引用样式类,都不涉及变量参数的情况。 如果要通过参数功能引入变量,输出多样化的样式的话,那继承就无...",r:{minutes:2.63,words:790},y:"a",t:"写在后面-对 css 预处理的补充"},["/zh/front-end/pre-css/hint","/zh/front-end/pre-css/hint.md"]],["v-6203752a","/zh/front-end/pre-css/less.html",{d:15911424e5,l:"2020年6月3日",c:"Web 前端",g:"Less",e:"It's CSS, with just a little more. [[toc]] 1. 认识 less less 是一种动态样式语言,属于 CSS 预处理器的范畴,它拓展了 CSS 语言,其余的 CSS 预处理器有 sass 和 stylus 等 less 增加了变量,MIxin,函数等特性,使 CSS 更易维护和扩展,less 既可以在客户端上运...",r:{minutes:10.28,words:3085},y:"a",t:"Less"},["/zh/front-end/pre-css/less","/zh/front-end/pre-css/less.md"]],["v-5f446a96","/zh/front-end/pre-css/sass.html",{d:15911424e5,l:"2020年6月3日",c:"Web 前端",g:"Sass",e:"CSS with superpowers [[toc]] 1. 认识 Sass 1.1 特色功能 (Features) 完全兼容 CSS3; 在 CSS 基础上增加变量、嵌套 (nesting)、混合 (mixins) 等功能; 通过函数进行颜色值与属性值的运算; 提供控制指令 (control directives)等高级功能; 自定义输出格式; 1...",r:{minutes:39.07,words:11720},y:"a",t:"Sass"},["/zh/front-end/pre-css/sass","/zh/front-end/pre-css/sass.md"]],["v-23c788a2","/zh/front-end/preface/",{d:15911424e5,l:"2020年6月3日",c:"Web 前端",e:"展示一下大前端学习路线 路漫漫其修远兮, 不要害怕 frontEnd",r:{minutes:.14,words:43},y:"a",t:"大前端学习路线"},["/zh/front-end/preface/index.html","/zh/front-end/preface/readme.md"]],["v-4da54d6c","/zh/front-end/typescript/",{d:15948576e5,l:"2020年7月16日",c:"Web 前端",g:"TypeScript",e:`<p>TypeScript 是一种由微软开发的自由和开源的编程语言,它是 JavaScript 的一个超集,扩展了 JavaScript 的语法。</p>
89`,r:{minutes:1.22,words:365},y:"a",t:"TypeScript 教程",i:"typescript"},["/zh/front-end/typescript/index.html","/zh/front-end/typescript/readme.md"]],["v-5f5b83be","/zh/front-end/virtual-dom/DOMDiff.html",{d:15922656e5,l:"2020å¹´6月16日",c:"Web 前端",g:["虚拟 DOM","Diff 算法","性能优化"],e:"1. 总述 1 DIFF 算法在执行时有三个维度,分别是 Tree DIFF、Component DIFF 和 Element DIFF,执行时按顺序依次执è
89¡Œï¼Œå®ƒä»¬çš„差异仅仅因为 DIFF 粒度不同、执行先后顺序不同。 2. 过程 Tree DIFF 是对树的每一层进行遍历,如果某组件不存在了,则会直接销毁。如图所示,左边是旧属,右边是新属,第一层是 ...",r:{minutes:3.72,words:1116},y:"a",t:"DOM Diff 算法",i:"tree"},["/zh/front-end/virtual-dom/DOMDiff","/zh/front-end/virtual-dom/DOMDiff.md"]],["v-2ac8355a","/zh/front-end/virtual-dom/VirtualDOM.html",{d:15922656e5,l:"2020å¹´6月16日",c:"Web 前端",g:["虚拟 DOM","Diff 算法","性能优化"],e:"1. JS 操作真实 DOM 的代价 ​ 用我们传统的开发模式,原生 JS 或 JQ 操作 DOM 时,浏览器会从构建 DOM 树开始从头到尾执行一遍流程。在一次 操作中,我需要更新 10 个 DOM 节点,浏览器收到第一个 DOM 请求后并不知道还有 9 次更新操作,因此会马上执行 流程,最终执行 10 次。 例如,第一次计算完,紧接着下一个 DOM...",r:{minutes:3.4,words:1019},y:"a",t:"Virtual Dom",i:"tree"},["/zh/front-end/virtual-dom/VirtualDOM","/zh/front-end/virtual-dom/VirtualDOM.md"]],["v-02ddc0a2","/zh/front-end/virtual-dom/",{d:15922656e5,l:"2020å¹´6月16日",c:"Web 前端",g:["虚拟 DOM","Diff 算法","性能优化"],e:"Web 界面由 DOM 树来构成,当其中某一部分发生变化时,其实就是对应的某个 DOM 节点发生了变化。 在 React 中,构建 UI 界面的思路是由当前状态决定界面。 前后两个状态就对应两套界面,然后由 React 来比较两个界面的区别,这就需要对 DOM 树进行 Diff 算法分析。即给定任意两棵树,找到最少的转换步骤。 但是标准的的 Diff ...",r:{minutes:1.18,words:354},y:"a",t:"写在前面",i:"tree"},["/zh/front-end/virtual-dom/index.html","/zh/front-end/virtual-dom/readme.md"]],["v-507a9b2e","/zh/front-end/vue/",{d:15924384e5,l:"2020å¹´6月18日",c:"Web 前端",g:["Vue","MVVM","Vuex","Vue-router","Vue 源码分析"],e:"logo Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式框架。与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用。Vue 的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合。另一方面,当与现代化的工具链以及各种支持类库结合使用时,Vue 也完全能够为复杂的单页应用提供驱动。 Vue.js 是世...",r:{minutes:.76,words:229},y:"a",t:"Vue",i:"vue"},["/zh/front-end/vue/index.html","/zh/front-end/vue/readme.md"]],["v-0be5b805","/zh/front-end/vue/vue1.html",{d:15924384e5,l:"2020å¹´6月18日",c:"Web 前端",g:["Vue","MVVM","Vuex","Vue-router","Vue 源码分析"],e:"Vue 简介 1.1 Vue 的特性 Vue 是一套用于构建用户界面的渐进式框架,与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用,Vue 拥有以下特性: 组件化思想; 模板的使用和数据渲染非常灵活,层次结构鲜明; 简单的语法并能够简单快速构建一个项目; 轻量级,体积小渲染速度更快; Vue 采用的脚手架工具为 vue-cli; 初期是尤雨...",r:{minutes:3.26,words:978},y:"a",t:"1.Vue简介",i:"vue"},["/zh/front-end/vue/vue1","/zh/front-end/vue/vue1.md"]],["v-71044cfd","/zh/front-end/vue/vue10.html",{d:15924384e5,l:"2020å¹´6月18日",c:"Web 前端",g:["Vue","MVVM","Vuex","Vue-router","Vue 源码分析"],e:"过滤器 Vue 可以通过自定义过滤器,将需要的文本格式化输出 注意: 过滤器只能写在插值表达式或者 v-bind 表达式中,并且过滤器需要添加到要添加的 JS 表达式的后方并用管道符|分割; 每个过滤器函数会将接收到的表达式作为函数内部的第一个参数,如果在使用时传入参数,那么传入的参数会依次成为第二个第三个等参数; 多个过滤器可以进行串联操作,将传入的...",r:{minutes:1.07,words:320},y:"a",t:"10.过滤器",i:"vue"},["/zh/front-end/vue/vue10","/zh/front-end/vue/vue10.md"]],["v-72b9259c","/zh/front-end/vue/vue11.html",{d:15924384e5,l:"2020å¹´6月18日",c:"Web 前端",g:["Vue","MVVM","Vuex","Vue-router","Vue 源码分析"],e:"自定义指令 自定义指令可以通过全局或局部的方式创建,在使用时需要在前面加上 v-的标识符表示时一个指令 11.1 全局指令 通过全局的 Vue 的 Vue.directive()可以创建一个能用在整个 Vue 实例内的指令 11.2 局部指令 通过局部创建的 directives 属性可以创建多个内部的指令,该指令只能用在自身的 Vue 实例中 11....",r:{minutes:3.74,words:1122},y:"a",t:"11.自定义指令",i:"vue"},["/zh/front-end/vue/vue11","/zh/front-end/vue/vue11.md"]],["v-746dfe3b","/zh/front-end/vue/vue12.html",{d:15924384e5,l:"2020å¹´6月18日",c:"Web 前端",g:["Vue","MVVM","Vuex","Vue-router","Vue 源码分析"],e:"组件 12.1 组件的定义 组件的出现是为了拆分 Vue 实例的代码量,能够让我们以不同的组件来划分不å
89Œçš„功能模板,将来需要什么样的功能,只需要调用对应的组件就可以了 组件化与模块化的区别 模块化是从代码逻辑的角度进行划分的;方便代码分层开发,保证每个功能模块的职能单一; 组件化是从 UI 界面的角度进行划分的,前端的组件化是为了方便 UI 组件的重用...",r:{minutes:8.1,words:2431},y:"a",t:"12.组件",i:"vue"},["/zh/front-end/vue/vue12","/zh/front-end/vue/vue12.md"]],["v-7622d6da","/zh/front-end/vue/vue13.html",{d:15924384e5,l:"2020å¹´6月18日",c:"Web 前端",g:["Vue","MVVM","Vuex","Vue-router","Vue 源码分析"],e:"组件之间的通信方式 13.1 props 父子组件间通信的基本方式 属性值的 2 大类型: ​ 一般: 父组件-->子组件 ​ 函数: 子组件-->父组件 隔层组件间传递: 必须逐层传递(麻烦) 兄弟组件间: 必须借助父组件(麻烦) 13.1.1 声明 在组件内声明所有的 props 1. 方式一: 只指定名称 props:['name','age',...",r:{minutes:5.38,words:1614},y:"a",t:"13.组件之间的通信方式",i:"vue"},["/zh/front-end/vue/vue13","/zh/front-end/vue/vue13.md"]],["v-77d7af79","/zh/front-end/vue/vue14.html",{d:15924384e5,l:"2020å¹´6月18日",c:"Web 前端",g:["Vue","MVVM","Vuex","Vue-router","Vue 源码分析"],e:"Vue-Router 14.1 路由的定义 后端路由:对于普通的网站,所有的超链接都是 URL 地址,所有的 url 地址都对应服务器上对应的资源; 后端路由是处理请求的回调函数 前端路由:对于单页面应用程序来说,主要通过 URL 中的 hash(#号)来实现不同页面之间的切换,同时,hash 有一个特点:HTTP 请求中不会包含 hash 相关的内容...",r:{minutes:13.99,words:4197},y:"a",t:"14.Vue-Router",i:"vue"},["/zh/front-end/vue/vue14","/zh/front-end/vue/vue14.md"]],["v-798c8818","/zh/front-end/vue/vue15.html",{d:15924384e5,l:"2020å¹´6月18日",c:"Web 前端",g:["Vue","MVVM","Vuex","Vue-router","Vue 源码分析"],e:"Vuex 15.1 Vuex 理解 Vuex 是一个全局的共享存储区域,相当于是一个数据仓库 Vuex 是为了保存组件之间的共享数据而诞生的,如果组件之间要有共享数据,可以直接挂载到 Vuex 中,而不必通过父子组件直接的传值了,而私有的数据则不需要挂载到 Vuex 中,只有需要共享的数据才放在 Vuex 中,私有的数据只需要放在组件的 data 中即...",r:{minutes:7.02,words:2105},y:"a",t:"15.Vuex",i:"vue"},["/zh/front-end/vue/vue15","/zh/front-end/vue/vue15.md"]],["v-7b4160b7","/zh/front-end/vue/vue16.html",{d:15924384e5,l:"2020å¹´6月18日",c:"Web 前端",g:["Vue","MVVM","Vuex","Vue-router","Vue 源码分析"],e:"对象数组更新 16.1 Vue.set 16.2vm.\\$set 16.3 Vue.set 与 vm.\\$set 向响应式对象中添加一个属性,并确保这个新属性同样是响应式的,且触发视图更新。它必须用于向响应式对象上添加新属性,因为 Vue 无法探测普通的新增属性 数组添加; Vue 中的 data 中的数组可以通过 Vue 返回后的实例进行改变,所拥有...",r:{minutes:2.1,words:629},y:"a",t:"16.对象数组更新",i:"vue"},["/zh/front-end/vue/vue16","/zh/front-end/vue/vue16.md"]],["v-7cf63956","/zh/front-end/vue/vue17.html",{d:15924384e5,l:"2020å¹´6月18日",c:"Web 前端",g:["Vue","MVVM","Vuex","Vue-router","Vue 源码分析"],e:"Mixins 17.1 使用场合 混入 (mixins) 是一种分发 Vue 组件中可复用功能的非常灵活的方式。混入对象可以包含任意组件选项。当组件使用混入对象时,所有混入对象的选项将被混入该组件本身的选项 Mixins 是一种分发 Vue 组件中可复用功能的非常灵活的一种方式。页面的风格不用,但是执行的方法和需要的数据类似就可以选择使用混入 混合对于...",r:{minutes:3.46,words:1039},y:"a",t:"17.Mixins",i:"vue"},["/zh/front-end/vue/vue17","/zh/front-end/vue/vue17.md"]],["v-7eab11f5","/zh/front-end/vue/vue18.html",{d:15924384e5,l:"2020å¹´6月18日",c:"Web 前端",g:["Vue","MVVM","Vuex","Vue-router","Vue 源码分析"],e:"Vue 原码分析 18.1 准备知识 1. [].slice.call(lis): 将伪数组转换为真数组 2. node.nodeType: 得到节点类型 3. Object.defineProperty(obj, propName, {}): 给对象添加/修改属性(指定描述符) configurable: true/false 是否可以重新 defi...",r:{minutes:29.02,words:8706},y:"a",t:"18.Vue原码分析",i:"vue"},["/zh/front-end/vue/vue18","/zh/front-end/vue/vue18.md"]],["v-0d9a90a4","/zh/front-end/vue/vue2.html",{d:15924384e5,l:"2020å¹´6月18日",c:"Web 前端",g:["Vue","MVVM","Vuex","Vue-router","Vue 源码分析"],e:'Vue 实例对象 2.1 创建并绑定 Vue 对象 Vue 也是一个构造函数,通过 new Vue()可以创建一个 Vue 对象,通过 Vue 对象进行对 DOM 元素以及内部的子孙元素的操作 注:在实例内部使用定义的属性或方法时不能直接使用,必须通过 this 来指定需要用的属性 2.2 vue 实例中的参数与选项 el:"#id", //DOM 成...',r:{minutes:5.25,words:1574},y:"a",t:"2.Vue实例对象",i:"vue"},["/zh/front-end/vue/vue2","/zh/front-end/vue/vue2.md"]],["v-0f4f6943","/zh/front-end/vue/vue3.html",{d:15924384e5,l:"2020å¹´6月18日",c:"Web 前端",g:["Vue","MVVM","Vuex","Vue-router","Vue 源码分析"],e:"基本指令 3.1 v-text v-text,该指令的用法同原生 JS 中的 innerText,更新绑定元素内部的文本内容 3.2 v-html v-html,该指令用法同原生 JS 的 innerHTML,可以解析内部的 HTML 标签 3.3 v-cloak v-cloak,该指令 CSS 一起使用,用于隐藏还没有开始编译的{{}}(插值表达式)...",r:{minutes:11.52,words:3457},y:"a",t:"3.基本指令",i:"vue"},["/zh/front-end/vue/vue3","/zh/front-end/vue/vue3.md"]],["v-110441e2","/zh/front-end/vue/vue4.html",{d:15924384e5,l:"2020å¹´6月18日",c:"Web 前端",g:["Vue","MVVM","Vuex","Vue-router","Vue 源码分析"],e:"计算属性与监视 4.1 computed 计算属性 computed 是用于定义一些可以动态改变的属性的,模板内的表达式非常便利,但是设计它们的初衷是用于简单运算的。 在模板中放入太多的逻辑会让模板过重且难以维护,所以尽量不要在模板{{}}
89中使用计算表达式,这时就可以用 Vue 实例中的 computed 属性,computed 里面的属性的值为一个函...",r:{minutes:5.36,words:1608},y:"a",t:"4.计算属性与监视",i:"vue"},["/zh/front-end/vue/vue4","/zh/front-end/vue/vue4.md"]],["v-12b91a81","/zh/front-end/vue/vue5.html",{d:15924384e5,l:"2020å¹´6月18日",c:"Web 前端",g:["Vue","MVVM","Vuex","Vue-router","Vue 源码分析"],e:"绑定 class 和 style 5.1 绑定 class 通过数组的书写传入; :class 形式绑定的类名 通过对象书写的形式绑定类名,对象中的属性名就是要传入的 class 名,而属性名对应的属性值为一个布尔值,可以是变量,如果是真就作为一个类名传入 class 中,如果是假的就不计入 class 中; 注意: 传入一个对象的时候完全可以在 Vu...",r:{minutes:2.37,words:711},y:"a",t:"5.绑定class和style",i:"vue"},["/zh/front-end/vue/vue5","/zh/front-end/vue/vue5.md"]],["v-146df320","/zh/front-end/vue/vue6.html",{d:15924384e5,l:"2020å¹´6月18日",c:"Web 前端",g:["Vue","MVVM","Vuex","Vue-router","Vue 源码分析"],e:"Vue 基本操作 6.1 条件渲染实例 6.2 列表渲染的实例 6.3 事件绑定的实例 6.4 表单的制作实例",r:{minutes:3.28,words:984},y:"a",t:"6.Vue基本操作",i:"vue"},["/zh/front-end/vue/vue6","/zh/front-end/vue/vue6.md"]],["v-1622cbbf","/zh/front-end/vue/vue7.html",{d:15924384e5,l:"2020å¹´6月18日",c:"Web 前端",g:["Vue","MVVM","Vuex","Vue-router","Vue 源码分析"],e:"按键修饰符 在绑定了键盘或鼠标的点击事件后,可以通过按下的按键触发要进行的事件,这时需要在后方添加表示按键的修辞符 7.1 按键码 可以通过 keyCode 的值来绑定需要触发的按键; 部分特殊的按键码可以使用别名; - .enter; - .tab; - .delete(捕获“删除”和“退格”键); - .esc; - .space; - .up; ...",r:{minutes:1.82,words:547},y:"a",t:"7.按键修饰符",i:"vue"},["/zh/front-end/vue/vue7","/zh/front-end/vue/vue7.md"]],["v-17d7a45e","/zh/front-end/vue/vue8.html",{d:15924384e5,l:"2020å¹´6月18日",c:"Web 前端",g:["Vue","MVVM","Vuex","Vue-router","Vue 源码分析"],e:"Vue 的生命周期 8.1 生命周期 2 8.2 Vue 实例创建阶段 var vm=new Vue(),创建出一个 Vue 实例对象; beforeCreat,当 Vue 实例被完全创建出来之前,就会执行该函数,这是表示刚初始化了一个空的 Vue 对象,这时候这个对象身上只有一些 ; 注意:在 beforeCreat 生命周期函数执行的时候,data...",r:{minutes:4.91,words:1472},y:"a",t:"8.Vue的生命周期",i:"vue"},["/zh/front-end/vue/vue8","/zh/front-end/vue/vue8.md"]],["v-198c7cfd","/zh/front-end/vue/vue9.html",{d:15924384e5,l:"2020å¹´6月18日",c:"Web 前端",g:["Vue","MVVM","Vuex","Vue-router","Vue 源码分析"],e:"过渡与动画 Vue 中可以通过transition组件来实现过渡效果 Vue 在插入,更新或者移除 DOM 时,提供多种不同方式的应用过渡效果 在 CSS 过渡和动画中自动应用 class; 可以配合使用第三方 CSS 动画库,如 Animate.css; 在过渡钩子函数中使用 JavaScript 直接操作 DOM; 可以配合使用第三方 JavaSc...",r:{minutes:9.77,words:2930},y:"a",t:"9.过渡与动画",i:"vue"},["/zh/front-end/vue/vue9","/zh/front-end/vue/vue9.md"]],["v-2899cbee","/zh/front-end/webpack/webpack.html",{d:15916608e5,l:"2020å¹´6月9日",c:"Web 前端",g:"Webpack",e:"[[toc]] 1. webpack简介 1.1 Webpack webpack 是一种前端资源构建工具,一个静态模块打包器(module bundler)。 在 webpack 看来, 前端的所有资源文件(js/json/css/img/less/...)都会作为模块处理。 它将根据模块的依赖关系进行静态分析,打包生成对应的静态资源(bundle)。...",r:{minutes:45.35,words:13605},y:"a",t:"Webpack",i:"Webpack"},["/zh/front-end/webpack/webpack","/zh/front-end/webpack/webpack.md"]],["v-9f7c4d50","/zh/git/github/github-pages.html",{d:15913152e5,l:"2020å¹´6月5日",c:"GitHub",g:["GitHub"],e:"本教程将指导您开启 Github Pages。 需要重构 前置工作 完成 git 软件的安装与配置。 配置过程 1. 创建仓库 新建一个 repository,名字随意。将 clone or download 按钮(图中绿 色键)里面的地址复制下来。 2. 创建并推送 index.html 文件 在本地创建一个空的文件夹,依次执è
89¡Œ: 先创建 index...",r:{minutes:.74,words:223},y:"a",t:"Github Pages"},["/zh/git/github/github-pages","/zh/git/github/github-pages.md"]],["v-ee21c572","/zh/git/github/",{d:15913152e5,l:"2020å¹´6月5日",c:"GitHub",g:["GitHub"],e:"简介 哦不,错了。Github 是世界上最大的代码托管网站 当然在上面交友也是极好的(这是重点,圈起来要考的:sunglasses:)。 基本概念 repository 仓库,简称 Repo。一个仓库即是一个项目。仓库是 Github 上的主要内容。每当您新建一个项目并想要在 Github。 Star 收藏,在每一个仓库主页的上方可以看到 star 按...",r:{minutes:3.11,words:934},y:"a",t:"Github 教程"},["/zh/git/github/index.html","/zh/git/github/readme.md"]],["v-5dfeb152","/zh/poem/essay/",{d:15917472e5,l:"2020å¹´6月10日",c:"随写",g:["随写"],e:"本诗集收录了我的一些随笔",r:{minutes:.08,words:24},y:"a",t:"随笔"},["/zh/poem/essay/index.html","/zh/poem/essay/readme.md"]],["v-dc745272","/zh/poem/essay/%E8%87%B4%E6%AF%95%E4%B8%9A.html",{d:16538688e5,l:"2022å¹´5月30日",c:"随写",g:["随写"],e:"“让软弱的我们懂得残忍,狠狠面对人生每次离分”,无意中听到这首老歌《忘忧草》,突然想写点什么,尽管我已经好几年没有写过小作文了。 上一周我才强烈意识到我的大学生活是不是快要结束了,而此时此刻我的大学生活或许真的快要结束了,或者某种意义上来说已经结束了。是不是我们总是习惯了在快要结束的时候才会意识到它的存在?是不是身处抛物线顶点的时候往往是无意识的,等到...",r:{minutes:3.72,words:1115},y:"a",t:"致毕业"},["/zh/poem/essay/致毕业.html","/zh/poem/essay/%E8%87%B4%E6%AF%95%E4%B8%9A","/zh/poem/essay/致毕业.md","/zh/poem/essay/%E8%87%B4%E6%AF%95%E4%B8%9A.md"]],["v-423a3e72","/zh/poem/my-poem/",{d:15917472e5,l:"2020å¹´6月10日",c:"诗集",g:["诗集"],e:"本诗集收录了我对生命的感悟,对希望的敬畏,以及对自我的勉励",r:{minutes:.13,words:39},y:"a",t:"诗集"},["/zh/poem/my-poem/index.html","/zh/poem/my-poem/readme.md"]],["v-4cf8f48a","/zh/poem/my-poem/%E6%88%91%E5%8D%81%E4%B8%83.html",{d:15917472e5,l:"2020å¹´6月10日",c:"诗集",g:["诗集"],e:"——送给十七岁的自己 我十七 这十七过得并不容易 翻山越岭 却总是寻不到你 人们常说努力能收获光明 可我却换来风和雨 我十七 这梦想还未曾凋零的花季 是不是内心有了伤痛 才能看清最真实的自己 常常幻想梦的颜色 可它的彼岸在哪里? 今年我十七 十七经历的那些风和雨 或许就是岁月最好的赠礼 来吧风和雨 往事纵然刻下再多痕迹 都将随风飘荡而去 今年我十七 是...",r:{minutes:.88,words:263},y:"a",t:"我十七"},["/zh/poem/my-poem/我十七.html","/zh/poem/my-poem/%E6%88%91%E5%8D%81%E4%B8%83","/zh/poem/my-poem/我十七.md","/zh/poem/my-poem/%E6%88%91%E5%8D%81%E4%B8%83.md"]],["v-6b4794e2","/zh/poem/my-poem/%E6%94%B6%E5%BD%95%E7%AC%AC%E4%B8%80%E6%AC%A1%E5%A1%AB%E8%AF%8D.html",{d:15917472e5,l:"2020å¹´6月10日",c:"诗集",g:["诗集"],e:"拨开尘封的纱 远望的刹那,想问她还好吗 那一天,好似那大雨,也如此这般下 大雨落,落在冰冷街,声像只乌鸦 没想竟是最后一次对话,别不能自拔 曾说遇见他 每天是朝霞,非他则不嫁 没想到,二层的见面,意味着结束啦 不要许诺地久天长 井蛙总往高处攀爬 别害怕,在此年华分开呀 何止一人唏嘘呐 就此说告别吧 当初的誓言在耳边挽回着她 随泪忍不住唱着歌让一切不舍旧...",r:{minutes:1.26,words:378},y:"a",t:"《喜帖街》普通话填词"},["/zh/poem/my-poem/收录第一次填词.html","/zh/poem/my-poem/%E6%94%B6%E5%BD%95%E7%AC%AC%E4%B8%80%E6%AC%A1%E5%A1%AB%E8%AF%8D","/zh/poem/my-poem/收录第一次填词.md","/zh/poem/my-poem/%E6%94%B6%E5%BD%95%E7%AC%AC%E4%B8%80%E6%AC%A1%E5%A1%AB%E8%AF%8D.md"]],["v-ba974232","/zh/poem/my-poem/%E8%90%A4%E7%81%AB.html",{d:15917472e5,l:"2020å¹´6月10日",c:"诗集",g:["诗集"],e:"满天落幕的银河,多精彩 不会看见我的微光,不奇怪 可你们都忘了,剩我一人喝彩 空余恨,独自发呆 不后悔没留住光芒,多姿多彩 我也曾努力过,你们不会明白 可你们都爱笑我,百无聊赖 无所谓,就当自己的感慨 光辉里,容不下,卑微的存在 后来我错过这漫天星河,沉迷于独白 后来我遗失在无知梦境,不愿意回来 当我在黑暗中看到微光,向我表白 当我醒来看见尘埃,渺小却...",r:{minutes:1.06,words:317},y:"a",t:"萤火"},["/zh/poem/my-poem/萤火.html","/zh/poem/my-poem/%E8%90%A4%E7%81%AB","/zh/poem/my-poem/萤火.md","/zh/poem/my-poem/%E8%90%A4%E7%81%AB.md"]],["v-c5d31332","/zh/poem/my-poem/%E8%92%B2%E5%85%AC.html",{d:15917472e5,l:"2020å¹´6月10日",c:"诗集",g:["诗集"],e:"——致十九 它把我吹散了 丝丝漫漫的流向天边 它笑着,我不舍 时间被它吹的滴答滴答 它会在意吗 可是我疑惑啊 明明聚合在一起了 为什么要说散就散哪 当不甘与愤怒交织 当烈日灼心无法自拔 越孤单我就越害怕 心中的灯还能指引前进的路吗 飞呀飞呀 我偶尔也会想起它 若不是飞过崇山峻岭的断崖 梦见久违难得的火树银花 怎能勇敢的去 天马行空恣意挥洒 
89路遇一支落单...",r:{minutes:.99,words:297},y:"a",t:"蒲公"},["/zh/poem/my-poem/蒲公.html","/zh/poem/my-poem/%E8%92%B2%E5%85%AC","/zh/poem/my-poem/蒲公.md","/zh/poem/my-poem/%E8%92%B2%E5%85%AC.md"]],["v-75006504","/zh/python/advance/generator.html",{d:1591488e6,l:"2020年6月7日",c:"Python",g:"Python",e:`<p>通过列表生成式,我们可以直接创建一个列表。但是,受到内存限制,列表容量肯定是有限的。而且,创建一个包含 100 万个元素的列表,不仅占用很大的存储空间,如果我们仅仅需要访问前面几个元素,那后面绝大多数元素占用的空间都白白浪费了。</p>
90<p>所以,如果列表元素可以按照某种算法推算出来,那我们是否可以在循环的过程中不断推算出后续的元素呢?这样就不必创建完整的 list,从而节省大量的空间。在 Python 中,这种一边循环一边计算的机制,称为生成器: generator。</p>
91`,r:{minutes:5.49,words:1646},y:"a",t:"生成器"},["/zh/python/advance/generator","/zh/python/advance/generator.md"]],["v-17fa6fb4","/zh/python/advance/iteration.html",{d:1591488e6,l:"2020年6月7日",c:"Python",g:"Python",e:`<p>如果给定一个 list 或 tuple,我们可以通过 for 循环来遍历这个 list 或 tuple,这种遍历我们称为迭代(Iteration)。</p>
92`,r:{minutes:2.16,words:649},y:"a",t:"迭代"},["/zh/python/advance/iteration","/zh/python/advance/iteration.md"]],["v-fc21c2da","/zh/python/advance/iterator.html",{d:1591488e6,l:"2020年6月7日",c:"Python",g:"Python",e:"我们已经知道,可以直接作用于 for 循环的数据类型有以下几种: 一类是集合数据类型,如 list、tuple、dict、set、str 等; 一类是 generator,包括生成器和带 yield 的 generator function。 这些可以直接作用于 for 循环的对象统称为可迭代对象: Iterable。 可以使用 isinstance(...",r:{minutes:2.2,words:660},y:"a",t:"迭代器"},["/zh/python/advance/iterator","/zh/python/advance/iterator.md"]],["v-129674b3","/zh/python/advance/list-comprehe
92nsions.html",{d:1591488e6,l:"2020年6月7日",c:"Python",g:"Python",e:`<p>列表生成式即 List Comprehensions,是 Python 内置的非常简单却强大的可以用来创建 list 的生成式。</p>
93`,r:{minutes:3.11,words:934},y:"a",t:"列表生成式"},["/zh/python/advance/list-comprehensions","/zh/python/advance/list-comprehensions.md"]],["v-53e80598","/zh/python/advance/",{d:1591488e6,l:"2020年6月7日",c:"Python",g:"Python",e:"目录 切片 (slice.md); 迭代 (iteration.md); 列表生成式 (list-comprehensions.md); 生成器 (generator.md); 迭代器 (iterator.md);",r:{minutes:.12,words:37},y:"a",t:"Python 高级语法"},["/zh/python/advance/index.html","/zh/python/advance/readme.md"]],["v-7a83961f","/zh/python/advance/slice.html",{d:1591488e6,l:"2020年6月7日",c:"Python",g:"Python",e:"取一个 list 或 tuple 的部分元素是非常常见的操作。比如,一个 list 如下: 取前 3 个元素,应该怎么做? 笨办法: 之所以是笨办法是因为扩展一下,取前 N 个元素就没辙了。 取前 N 个元素,也就是索引为 0-(N-1)的元素,可以用循环: 对这种经常取指定索引范围的操作,用循环十分繁琐,因此,Python 提供了切片(Slice)操...",r:{minutes:2.47,words:742},y:"a",t:"切片"},["/zh/python/advance/slice","/zh/python/advance/slice.md"]],["v-95f376a0","/zh/python/function/argument.html",{d:1591488e6,l:"2020年6月7日",c:"Python",g:"Python",e:`<p>定义函数的时候,我们把参数的名字和位置确定下来,函数的接口定义就完成了。对于函数的调用者来说,只需要知道如何传递正确的参数,以及函数将返回什么样的值就够了,函数内部的复杂逻辑被封装起来,调用者无需了解。</p>
94<p>Python 的函数定义非常简单,但灵活度却非常大。除了正常定义的必选参数外,还可以使用默认参数、可变参数和关键字参数,使得函数定义出来的接口,不但能处理复杂的参数,还可以简化调用者的代码。</p>
95`,r:{minutes:13.11,words:3934},y:"a",t:"函数的参数"},["/zh/python/function/argument","/zh/python/function/argument.md"]],["v-933ec0a2","/zh/python/function/call.html",{d:1591488e6,l:"2020年6月7日",c:"Python",g:"Python",e:`<p>Python 内置了很多有用的函数,我们可以直接调用。</p>
96<p>要调用一个函数,需要知道函数的名称和参数,比如求绝对值的函数 <code>abs</code>,只有一个参数。可以直接从 <a href="http://docs.python.org/3/library/functions.html#abs" target="_blank" rel="noopener noreferrer">Python 的官方网站查看文档</a>:</p>
97`,r:{minutes:1.62,words:487},y:"a",t:"调用函数"},["/zh/python/function/call","/zh/python/function/call.md"]],["v-f3d0f51c","/zh/python/function/define.html",{d:1591488e6,l:"2020年6月7日",c:"Python",g:"Python",e:`<p>在 Python 中,定义一个函数要使用 <code>def</code> 语句,依次写出函数名、括号、括号中的参数和冒号 <code>:</code>,然后,在缩进块中编写函数体,函数的返回值用 <code>return</code> 语句返回。</p>
98`,r:{minutes:3.95,words:1186},y:"a",t:"定义函数"},["/zh/python/function/define","/zh/python/function/define.md"]],["v-3f08bdf9","/zh/python/function/intro.html",{d:1591488e6,l:"2020å¹´6月7日",c:"Python",g:"Python",e:"我们知道圆的面积计算公式为: $S = \\pi r^2$ 当我们知道半径 $r$ 的值时,就可以根据公式计算出面积。假设我们需要计算 3 个不同大小的圆的面积: 当代码出现有规律的重复的时候,您就需要当心了,每次写 3.14 x x 不仅很麻烦,而且,如果要把 3.14 改成 3.14159265359 的时候,得全部替换。 函数是什么 函数是一段可以...",r:{minutes:1.72,words:515},y:"a",t:"函数介绍"},["/zh/python/function/intro","/zh/python/function/intro.md"]],["v-50f21f0c","/zh/python/function/",{d:1591488e6,l:"2020å¹´6月7日",c:"Python",g:"Python",e:"目录 函数介绍 (intro.md); 函数定义 (define.md); 函数调用 (call.md); 函数参数 (argument.md); 递归调用 (recursive.md);",r:{minutes:.13,words:38},y:"a",t:"函数"},["/zh/python/function/index.html","/zh/python/function/readme.md"]],["v-4e4685f3","/zh/python/function/recursive.html",{d:1591488e6,l:"2020å¹´6月7日",c:"Python",g:"Python",e:`<p>在函数内部,可以调用其他函数。如果一个函数å
98œ¨å†…部调用自身本身,这个函数就是递归函数。</p>
99`,r:{minutes:3.14,words:942},y:"a",t:"递归函数"},["/zh/python/function/recursive","/zh/python/function/recursive.md"]],["v-cc9cee16","/zh/python/functional-programming/",{d:1591488e6,l:"2020年6月7日",c:"Python",g:"Python",e:"函数是 Python 内建支持的一种封装,我们通过把大段代码拆成函数,通过一层一层的函数调用,就可以把复杂任务分解成简单的任务,这种分解可以称之为面向过程的程序设计。函数就是面向过程的程序设计的基本单元。 而函数式编程(请注意多了一个“式”字)——Functional Programming,虽然也可以归结到面向过程的程序设计,但其思想更接近数学计算。...",r:{minutes:1.82,words:547},y:"a",t:"函数式编程"},["/zh/python/functional-programming/index.html","/zh/python/functional-programming/readme.md"]],["v-c61e6ace","/zh/python/functional-programming/return-function.html",{d:1591488e6,l:"2020年6月7日",c:"Python",g:"Python",e:"函数作为返回值 高阶函数除了可以接受函数作为参数外,还可以把函数作为结果值返回。 我们来实现一个可变参数的求和。通常情况下,求和的函数是这样定义的: 但是,如果不需要立刻求和,而是在后面的代码中,根据需要再计算怎么办?可以不返回求和的结果,而是返回求和的函数: 当我们调用 lazy_sum()时,返回的并不是求和结果,而是求和函数: 调用函数 f 时,...",r:{minutes:2.92,words:877},y:"a",t:"返回函数"},["/zh/python/functional-programming/return-function","/zh/python/functional-programming/return-function.md"]],["v-7c04bd09","/zh/python/guide/basic.html",{d:1591488e6,l:"2020年6月7日",c:"Python",g:"Python",e:`<p>Python 是一种计算机编程语言。计算机编程语言和我们日常使用的自然语言有所不同,最大的区别就是,自然语言在不同的语境下有不同的理解,而计算机要根据编程语言执行任务,就必须保证编程语言写出的程序决不能有歧义,所以,任何一种编程语言都有自己的一套语法,编译器或者解释器就是负责把符合语法的程序代码转换成 CPU 能够执行的机器码,然后执行。Python 也不例外。</p>
100`,r:{minutes:9.95,words:2984},y:"a",t:"Python 基础"},["/zh/python/guide/basic","/zh/python/guide/basic.md"]],["v-7b7a9d88","/zh/python/guide/condition.html",{d:1591488e6,l:"2020年6月7日",c:"Python",g:"Python",e:`<p>计算机之所以能做很多自动化的任务,因为它可以自己做条件判断。</p>
101<p>比如,输入用户年龄,根据年龄打印不同的内容,在 Python 程序中,用 <code>if</code> 语句实现:</p>
102`,r:{minutes:2.46,words:738},y:"a",t:"条件判断"},["/zh/python/guide/condition","/zh/python/guide/condition.md"]],["v-28ee063a","/zh/python/guide/dictAndSet.html",{d:1591488e6,l:"2020年6月7日",c:"Python",g:"Python",e:`<p><code>dict</code> 和 <code>set</code> 是 Python 中常用的数据结构。</p>
103`,r:{minutes:9.68,words:2904},y:"a",t:"dict 和 set"},["/zh/python/guide/dictAndSet","/zh/python/guide/dictAndSet.md"]],["v-33b5b5a3","/zh/python/guide/exercise.html",{d:1591488e6,l:"2020年6月7日",c:"Python",g:"Python",e:"BMI 小明的成绩从去年的 72 分提升到了今年的 85 分,请计算小明成绩提升的百分点,并用字符串格式化显示出 'xx.x%',只保留小数点后 1 位: 答案 :",r:{minutes:.3,words:91},y:"a",t:"练习"},["/zh/python/guide/exercise","/zh/python/guide/exercise.md"]],["v-799726d6","/zh/python/guide/io.html",{d:1591488e6,l:"2020年6月7日",c:"Python",g:"Python",e:`<p>一个脚本语言少不了与用户进行交互,就一定涉及到输入输出。</p>
104`,r:{minutes:3.5,words:1051},y:"a",t:"输入和输出"},["/zh/python/guide/io","/zh/python/guide/io.md"]],["v-285de9ec","/zh/python/guide/listAndTuple.html",{d:1591488e6,l:"2020年6月7日",c:"Python",g:"Python",e:`<p><code>list</code> 和 <code>tuple</code> 是 Python 中常用的数据结构。</p>
105`,r:{minutes:4.36,words:1309},y:"a",t:"list 和 tuple"},["/zh/python/guide/listAndTuple","/zh/python/guide/listAndTuple.md"]],["v-064f9d52","/zh/python/guide/loop.html",{d:1591488e6,l:"2020年6月7日",c:"Python",g:"Python",e:"要计算 $1+2+3$ ,我们可以直接写表达式: 要计算 $1+2+3+...+10$ ,勉强也能写出来。 但是,要计算 $1+2+3+...+10000$ ,直接写表达式就不可能了。 为了让计算机能计算成千上万次的重复运算,我们就需要循环语句。 Python 的循环有两种,一种是 for...in 循环,依次把 list 或 tuple 中的每个元素...",r:{minutes:3.41,words:1022},y:"a",t:"循环"},["/zh/python/guide/loop","/zh/python/guide/loop.md"]],["v-9d119dc4","/zh/python/guide/",{d:1591488e6,l:"2020年6月7日",c:"Python",g:"Python",e:`<p>这些文档能够让您快速掌握 Python 的基础用法。</p>
106`,r:{minutes:.24,words:73},y:"a",t:"Python 快速入门"},["/zh/python/guide/index.html","/zh/python/guide/readme.md"]],["v-18e3d38a","/zh/python/guide/string.html",{d:1591488e6,l:"2020å¹´6月7日",c:"Python",g:"Python",e:"在最新的 Python 3 版本中ï¼
106Œå­—符串是以 Unicode 编码的,也就是说,Python 的字符串支持多语言,例如: 对于单个字符的编码,Python 提供了 ord() 函数获取字符的整数表示,chr() 函数把编码转换为对应的字符: 如果知道字符的整数编码,还可以用十六进制这么写 str: 两种写法完全是等价的。 由于 Python 的字符串...",r:{minutes:5.37,words:1611},y:"a",t:"字符串"},["/zh/python/guide/string","/zh/python/guide/string.md"]],["v-cdce4010","/zh/python/guide/write.html",{d:1591488e6,l:"2020å¹´6月7日",c:"Python",g:"Python",e:`<p>在正式编写第一个 Python 程序前,我们先复习一下什么是命令行模式和 Python 交互模式。</p>
107`,r:{minutes:3.33,words:1e3},y:"a",t:"第一个 Python 程序"},["/zh/python/guide/write","/zh/python/guide/write.md"]],["v-2a66e722","/zh/computer-basic/linux/command/add.html",{d:15913152e5,l:"2020年6月5日",c:"Linux",g:"Linux",e:"文件名(或者目录名)是执行 Linux 命令中最常见的参数,例如前面介绍的 cd、mkdir、cp 等命令,都涉及到了文件名。然而对初学者来说,输入完整的文件名感觉很麻烦,尤其面临文件名(目录名)特别长的时候。 考虑到这种情况,Shell (Bash) 提供了一种称为“命令行自动补全”的功能,即在输入文件名的时候,只需要输入该文件名的前几个字符,然后按...",r:{minutes:3.84,words:1151},y:"a",t:"补全"},["/zh/computer-basic/linux/command/add","/zh/computer-basic/linux/command/add.md"]],["v-bc083490","/zh/computer-basic/linux/command/command.html",{d:15913152e5,l:"2020年6月5日",c:"Linux",g:"Linux",e:"命令提示符 登录系统后,第一眼看到的内容是: 这就是 Linux 系统的命令提示符。那么,这个提示符的含义是什么呢? \\[\\]: 这是提示符的分隔符号,没有特殊含义。; root: 显示的是当前的登录用户,笔者现在使用的是 root 用户登录。; @: 分隔符号,没有特殊含义。; localhost: 当前系统的简写主机名(完整主机名是 localho...",r:{minutes:3.23,words:970},y:"a",t:"Linux 命令基本格式"},["/zh/computer-basic/linux/command/command","/zh/computer-basic/linux/command/command.md"]],["v-fb252294","/zh/computer-basic/linux/command/dir.html",{d:15913152e5,l:"2020年6月5日",c:"Linux",g:"Linux",e:"pwd 命令 由于 Linux 文件系统中有许多目录,当用户执行一条 Linux 命令又没有指定该命令或参数所在的目录时,Linux 系统就会首先在当前目录(目前的工作目录)搜寻这个命令或它的参数。因此,用户在执行命令之前,常常需要确定目前所在的工作目录,即当前目录。 当用户登陆 Linux 系统之后,其当前目录就是它的主目录。那么,如何确定当前目录呢...",r:{minutes:5.29,words:1588},y:"a",t:"dir 相关"},["/zh/computer-basic/linux/command/dir","/zh/computer-basic/linux/command/dir.md"]],["v-5bab32ec","/zh/computer-basic/linux/command/excu.html",{d:15913152e5,l:"2020年6月5日",c:"Linux",g:"Linux",e:"前面讲过,在 Linux 系统中“一切皆文件”,Linux 命令也不例外。那么,当编辑完成 Linux 命令并回车后,系统底层到底发生了什么事情呢? 简单来说,Linux 命令的执行过程分为如下 4 个步骤。 1. 判断路径 判断用户是否以绝对路径或相对路径的方式输入命令(如 /bin/ls),如果是的话直接执行。 1. 检查别名 Linux 系统会检...",r:{minutes:2.34,words:701},y:"a",t:"Linux 命令执行过程"},["/zh/computer-basic/linux/command/excu","/zh/computer-basic/linux/command/excu.md"]],["v-1107bfd3","/zh/computer-basic/linux/command/file.html",{d:15913152e5,l:"2020年6月5日",c:"Linux",g:"Linux",e:"touch 命令 需要注意的是,touch 命令不光可以用来创建文件(当指定操作文件不存在时,该命令会在当前位置建立一个空文件),此命令更重要的功能是修改文件的时间参数(但当文件存在时,会修改此文件的时间参数)。 Linux 系统中,每个文件主要拥有 3 个时间参数(通过 stat 命令进行查看),分别是文件的访问时间、数据修改时间以及状态修改时间: ...",r:{minutes:4.3,words:1290},y:"a",t:"文件命令"},["/zh/computer-basic/linux/command/file","/zh/computer-basic/linux/command/file.md"]],["v-767d010d","/zh/computer-basic/linux/command/ln.html",{d:15913152e5,l:"2020年6月5日",c:"Linux",g:"Linux",e:"建立硬链接和软链接非常简单,那这两种链接有什么区别?它们都有什么作用?这才是链接文件最不容易理解的地方,我们分别来讲讲。 ln 创建硬链接 我们再来建立一个硬链接文件,然后看看这两个文件的特点。 这里有一件很奇怪的事情,我们之前在讲 inode 号的时候说过,每个文件的 inode 号都应该是不一样的。inode 号就相当于文件 ID,我们在查找文件的...",r:{minutes:7.5,words:2251}
107,y:"a",t:"ln 创建链接的深度剖析"},["/zh/computer-basic/linux/command/ln","/zh/computer-basic/linux/command/ln.md"]],["v-5277b8da","/zh/computer-basic/linux/command/other.html",{d:15913152e5,l:"2020å¹´6月5日",c:"Linux",g:"Linux",e:"cp 命令 cp 命令,主要用来复制文件和目录,同时借助某些选项,还可以实现复制整个目录,以及比对两文件的新旧而予以升级等功能。 cp 命令的基本格式如下: 选项: -a: 相当于 -d、-p、-r 选项的集合,这几个选项我们一一介绍;; -d: 如果源文件为软链接(对硬链接无效),则复制出的目标文件也为软链接;; -i: 询问,如果目标文件已经存在,...",r:{minutes:10.54,words:3162},y:"a",t:"其他文件目录相关命令"},["/zh/computer-basic/linux/command/other","/zh/computer-basic/linux/command/other.md"]],["v-48fb12ca","/zh/computer-basic/linux/command/path.html",{d:15913152e5,l:"2020å¹´6月5日",c:"Linux",g:"Linux",e:"变量 变量是计算机系统用于保存可变值的数据类型,我们可以直接通过变量名称来提取到对应的变量值。在 Linux 系统中,环境变量是用来定义系统运行环境的一些参数,比如每个用户不同的家目录 (HOME)、邮件存放位置 (MAIL)等。 值得一提的是,Linux 系统中环境变量的名称一般都是大写的,这是一种约定俗成的规范。 我们可以使用 env 命令来查看到...",r:{minutes:4.85,words:1454},y:"a",t:"环境变量"},["/zh/computer-basic/linux/command/path","/zh/computer-basic/linux/command/path.md"]],["v-64e8676c","/zh/computer-basic/linux/command/",{d:15913152e5,l:"2020å¹´6月5日",c:"Linux",g:"Linux",e:"命令格式简介 (command.md); 目录相关 (dir.md); 文件相关 (file.md); 其他命令 (other.md); 命令的自动补全 (add.md); 命令的执行 (excu.md); 环境变量 (path.md); 创建链接 (ln.md);",r:{minutes:.2,words:59},y:"a",t:"Linux 命令格式"},["/zh/computer-basic/linux/command/index.html","/zh/computer-basic/linux/command/readme.md"]],["v-5626af0a","/zh/computer-basic/linux/command/temp.html",{d:15913152e5,l:"2020å¹´6月5日",c:"Linux",g:"Linux",e:"文件 创建文件 touch; vi; 编辑文件 vi; 使用 vi 命令后,默认进入浏览模式。 按 i 进入 insert 模式, 按 ESC 退出。 1. 命令模式下,输入: / 字符串 比如搜索 user, 输入 /user 按下回车之后,可以看到 vim 已经把光标移动到该字符处和高亮了匹配的字符串 2. 查看下一个匹配,按下 n(小写 n) 3...",r:{minutes:3.63,words:1089},y:"a",t:"其他指令"},["/zh/computer-basic/linux/command/temp","/zh/computer-basic/linux/command/temp.md"]],["v-6bccf559","/zh/computer-basic/linux/file/dir.html",{d:15913152e5,l:"2020å¹´6月5日",c:"Linux",g:"Linux",e:"学习 Linux,不仅限于学习各种命令,了解整个 Linux 文件系统的目录结构以及各个目录的功能同样至关重要。 使用 Linux 时,通过命令行输入 ls -l / 可以看到,在 Linux 根目录 (/) 下包含很多的子目录(称为一级目录),例如 bin、`boot、dev 等。同时,各一级目录下还含有很多子目录(称为二级目录),比如 /bin/b...",r:{minutes:8.15,words:2444},y:"a",t:"Linux 文件目录结构"},["/zh/computer-basic/linux/file/dir","/zh/computer-basic/linux/file/dir.md"]],["v-53990d90","/zh/computer-basic/linux/file/file.html",{d:15913152e5,l:"2020å¹´6月5日",c:"Linux",g:"Linux",e:"虽然从名称上不容易分辨,但是可以从颜色上进行区分。一般情况下,Linux 用蓝色代表目录,其他颜色则表示是文件。 和 Linux 不同,Windows 下带有 标记的行或使用中括号 [] 括起来的名称就是目录,其他的则是文件。 不仅如此,Linux 中还可以用不同的颜色来区分不同种类的文件,例如绿色代表可执行文件、红色代表压缩文件、浅绿色代表链接文件、...",r:{minutes:2.47,words:741},y:"a",t:"文件"},["/zh/computer-basic/linux/file/file","/zh/computer-basic/linux/file/file.md"]],["v-3e648e0d","/zh/computer-basic/linux/file/mount.html",{d:15913152e5,l:"2020å¹´6月5日",c:"Linux",g:"Linux",e:"前面讲过,Linux 系统中“一切皆文件”,所有文件都放置在以根目录为树根的树形目录结构中。在 Linux 看来,任何硬件设备也都是文件,它们各有自己的一套文件系统(文件目录结构)。 因此产生的问题是,当在 Linux 系统中使用这些硬件设备时,只有将 Linux 本身的文件目录与硬件设备的文件目录合二为一,硬件设备才能为我们所用。合二为一的过程称为“...",r:{minutes:2.1,words:630},y:"a",t:"Linux 挂载"},["/zh/computer-basic/linux/file/mount","/zh/computer-basic/linux/file/mount.md"]],["v-5b7cb426","/zh/computer-basic/linux/file/",{d:15913152e5,l:"2020å¹´6月5日",c:"Linux",g:"Linux",e:"Linux 文件 (file.md); Linux 目录 (dir.md); 挂载 (mount.md);",r:{minutes:.07,words:22},y:"a",t:"Linux 文件"},["/zh/computer-basic/linux/file/index.html","/zh/computer-basic/linux/file/readme.md"]],["v-292c3a97","/zh/computer-basic/linux/intro/advantage.html",{d:15913152e5,l:"2020å¹´6月5日",c:"Linux",g:"Linux",e:"相比 Windows 系统,Linux 系统有更好的稳定性ã€
107‚此外,Linux 还有如下优点: 1. 大量的可用软件及免费软件 Linux 系统上有着大量的可用软件,且绝大多数是免费的,比如声名赫赫的 Apache、Samba、PHP、MySQL 等,构建成本低廉,是 Linux 被众多企业青睐的原因之一。当然,这和 Linux 出色的性能是分不开的,否...",r:{minutes:2.3,words:689},y:"a",t:"Linux 的优点"},["/zh/computer-basic/linux/intro/advantage","/zh/computer-basic/linux/intro/advantage.md"]],["v-b66720f4","/zh/computer-basic/linux/intro/desktop.html",{d:15913152e5,l:"2020å¹´6月5日",c:"Linux",g:"Linux",e:"KDE 桌面系统 KDE 是 K Desktop Environment 的缩写,中文译为“K 桌面环境”。 KDE 是基于大名鼎鼎的 Qt 的,最初于 1996 年作为开源项目公布,并在 1998 年发布了第一个版本,现在 KDE 几乎是排名第一的桌面环境了。 许多流行的 Linux 发行版都提供了 KDE 桌面环境,比如 Ubuntu、Linux ...",r:{minutes:6.54,words:1961},y:"a",t:"桌面系统"},["/zh/computer-basic/linux/intro/desktop","/zh/computer-basic/linux/intro/desktop.md"]],["v-1793b3e4","/zh/computer-basic/linux/intro/history.html",{d:15913152e5,l:"2020å¹´6月5日",c:"Linux",g:"Linux",e:'UNIX 与 Linux 之间的关系是一个很有意思的话题。在目前主流的服务器端操作系统中,UNIX 诞生于 20 世纪 60 年代末,Windows 诞生于 20 世纪 80 年代中期,Linux 诞生于 20 世纪 90 年代初,
107可以说 UNIX 是操作系统中的"老大哥",后来的 Windows 和 Linux 都参考了 UNIX。 现代的 Wind...',r:{minutes:12.46,words:3738},y:"a",t:"Linux 和 UNIX"},["/zh/computer-basic/linux/intro/history","/zh/computer-basic/linux/intro/history.md"]],["v-b3426d14","/zh/computer-basic/linux/intro/intro.html",{d:15913152e5,l:"2020年6月5日",c:"Linux",g:"Linux",e:"Linux 内核最初只是由芬兰人林纳斯·托瓦兹 (Linus Torvalds) 在赫尔辛基大学上学时出于个人爱好而编写的。 Linux 是一套免费使用和自由传播的类 Unix 操作系统,是一个基于 POSIX 和 UNIX 的多用户、多任务、支持多线程和多 CPU 的操作系统。 Linux 能运行主要的 UNIX 工具软件、应用程序和网络协议。它支持...",r:{minutes:5.63,words:1689},y:"a",t:"Linux 简介"},["/zh/computer-basic/linux/intro/intro","/zh/computer-basic/linux/intro/intro.md"]],["v-1614bf50","/zh/computer-basic/linux/intro/language.html",{d:15913152e5,l:"2020年6月5日",c:"Linux",g:"Linux",e:"Linux 中大量使用脚本语言,而不是 C 语言! 说到在 Linux 下的编程,很多人会想到用 C 语言,Linux 的内核、shell、基础命令程序,也的确是用 C 语言编写的,这首先证明了一点,C 语言很强很通用。 到目前为止,C 语言依然垄断着计算机工业中几乎所有的系统编程,而且也正因为是 C 语言,才使得 Unix 以及后来的 Linux 能...",r:{minutes:7.31,words:2192},y:"a",t:"语言"},["/zh/computer-basic/linux/intro/language","/zh/computer-basic/linux/intro/language.md"]],["v-7b5bf2c9","/zh/computer-basic/linux/intro/",{d:15913152e5,l:"2020年6月5日",c:"Linux",g:"Linux",e:"Linux 介绍 (intro.md); Linux 历史 (history.md); Linux 编写语言 (language.md); Linux 优势 (advantage.md); Linux 桌面环境 (desktop.md);",r:{minutes:.12,words:35},y:"a",t:"Linux 简介"},["/zh/computer-basic/linux/intro/index.html","/zh/computer-basic/linux/intro/readme.md"]],["v-2093dc76","/zh/computer-basic/linux/intro/startup.html",{d:15913152e5,l:"2020年6月5日",c:"Linux",g:"Linux",e:"本篇教程以 CentOS 为例介绍系统的启动过程。 Linux 启动时我们会看到许多启动信息。 Linux 系统的启动过程并不是大家想象中的那么复杂,其过程可以分为 5 个阶段: 内核的引导。; 运行 init。; 系统初始化。; 建立终端 。; 用户登录系统。; init 程序的类型: SysV: init, CentOS 5 之前, 配置文件: /...",r:{minutes:3.43,words:1030},y:"a",t:"Linux 系统启动过程"},["/zh/computer-basic/linux/intro/startup","/zh/computer-basic/linux/intro/startup.md"]],["v-16cfbb48","/zh/computer-basic/linux/ubuntu/debug.html",{d:15913152e5,l:"2020年6月5日",c:"Linux",g:"Linux",e:"安装 VSCode 使用 snap; 在 WSL 环境下 snap 无法使用,则使用以下命令安装 code 库。; 然后正常安装: 可能还需要安装 remote 插件安装 nvm 在 Linux 上可能需要重新链接终端,命令才可用。 测试命令,输入 nvm 即安装成功: 安装命令: 切换命令: 安装 Git yarn 测试是否安装成功:",r:{minutes:.83,words:249},y:"a",t:"开发软件"},["/zh/computer-basic/linux/ubuntu/debug","/zh/computer-basic/linux/ubuntu/debug.md"]],["v-20c70aee","/zh/computer-basic/linux/ubuntu/lang.html",{d:15913152e5,l:"2020年6月5日",c:"Linux",g:"Linux",e:"查看当前语言包: locale -a 中文语言是: zh_CN.utf8 安装中文语言包 之后修改 /etc/default/locale,将 LANG 改为 zh_CN.utf8",r:{minutes:.18,words:53},y:"a",t:"语言切换"},["/zh/computer-basic/linux/ubuntu/lang","/zh/computer-basic/linux/ubuntu/lang.md"]],["v-5e4dc1f2","/zh/computer-basic/linux/ubuntu/manage.html",{d:15913152e5,l:"2020年6月5日",c:"Linux",g:"Linux",e:"apt-get apt-get 命令默认的源在国内访问很慢,可以考虑换源。 获取软件包更新:; 更新软件包:; [其他命令]; Snap 已经预装。 在中国大陆不建议使用 Snap",r:{minutes:1.15,words:344},y:"a",t:"管理工具"},["/zh/computer-basic/linux/ubuntu/manage","/zh/computer-basic/linux/ubuntu/manage.md"]],["v-567f6762","/zh/computer-basic/linux/ubuntu/",{d:15913152e5,l:"2020年6月5日",c:"Linux",g:"Linux",e:"管理包 (manage.md); 开发软件 (debug.md); 网络服务器相关 (webserver.md); 语言切换 (lang.md);",r:{minutes:.1,words:31},y:"a",t:"ubuntu"},["/zh/computer-basic/linux/ubuntu/index.html","/zh/computer-basic/linux/ubuntu/readme.md"]],["v-13da8f84","/zh/computer-basic/linux/ubuntu/webserver.html",{d:15913152e5,l:"2020年6月5日",c:"Linux",g:"Linux",e:"ftp vsftpd 安装; 配置; 至少要更改: Nginx 安装; Nginx 默认安装在 /etc/nginx 目录下 配置; 配置文件为 nginx.conf。 默认站点配置文件在 /etc/nginx/sites-available/default 为了使得 Nginx 能使用 PHP,需要配置 PHP MySQL 安装 配置版本(一般是 5...",r:{minutes:1.14,words:341},y:"a",t:"网络服务器相关"},["/zh/computer-basic/linux/ubuntu/webserver","/zh/computer-basic/linux/ubuntu/webserver.md"]],["v-db1ff778","/zh/front-end/js-es/es6/array.html",{d:15981408e5,l:"2020年8月23日",c:"Web 前端",g:"ECMA Script6",e:"扩展运算符 含义 扩展运算符(spread)是三个点(...)。它好比 rest 参数的逆运算,将一个数组转为用逗号分隔的参数序列。 该运算符主要用于函数调用。 上面代码中,array.push(...items)和`add(...numbers)这两行,都是函数的调用,它们的都使用了扩展运算符。该运算符将一个数组,变为参数序列。 扩展运算符与正常的函...",r:{minutes:19.34,words:5801},y:"a",t:"数组的扩展"},["/zh/front-end/js-es/es6/array","/zh/front-end/js-es/es6/array.md"]],["v-a
107a78c878","/zh/front-end/js-es/es6/arraybuffer.html",{d:15981408e5,l:"2020年8月23日",c:"Web 前端",g:"ECMA Script6",e:"ArrayBuffer对象、TypedArray视图和DataView视图是 JavaScript 操作二进制数据的一个接口。这些对象早就存在,属于独立的规格(2011 年 2 月发布),ES6 将它们纳入了 ECMAScript 规格,并且增加了新的方法。它们都是以数组的语法处理二进制数据,所以统称为二进制数组。 这个接口的原始设计目的,与 WebG...",r:{minutes:36.53,words:10958},y:"a",t:"ArrayBuffer"},["/zh/front-end/js-es/es6/arraybuffer","/zh/front-end/js-es/es6/arraybuffer.md"]],["v-eff9dbfe","/zh/front-end/js-es/es6/async.html",{d:15981408e5,l:"2020年8月23日",c:"Web 前端",g:"ECMA Script6",e:`<p>ES2017 标准引入了 async 函数,使得异步操作变得更加方便。</p>
108<p>async 函数是什么?一句话,它就是 Generator 函数的语法糖。</p>
109`,r:{minutes:22.12,words:6637},y:"a",t:"async 函数"},["/zh/front-end/js-es/es6/async","/zh/front-end/js-es/es6/async.md"]],["v-48d1f439","/zh/front-end/js-es/es6/class-extends.html",{d:15981408e5,l:"2020å¹´8月23日",c:"Web 前端",g:"ECMA Script6",e:"简介 Class 可以通过extends关键字实现继承,这比 ES5 的通过修改原型链实现继承,要清晰和方便很多。 上面代码定义了一个ColorPoint类,该类通过extends关键字,继承了Point类的所有属性和方法。但是由于没有部署任何代码,所以这两个类完全一样,等于复制了一个Point类。下面,我们在ColorPoint内部加上代码。 上面代...",r:{minutes:13.61,words:4083},y:"a",t:"Class 的继承"},["/zh/front-end/js-es/es6/class-extends","/zh/front-end/js-es/es6/class-extends.md"]],["v-6d312ef6","/zh/front-end/js-es/es6/class.html",{d:15981408e5,l:"2020å¹´8月23日",c:"Web 前端",g:"ECMA Script6",e:"简介 JavaScript 语言中,生成实例对象的传统方法是通过构造函数。下面是一个例子。 上面这种写法跟传统的面向对象语言(比如 C++ 和 Java)差异很大,很容易让新学习这门语言的程序员感到困惑。 ES6 提供了更接近传统语言的写法,引入了 Class(ç±»)这个概念,作为对象的模板。通过class关键字,可以定义类。 基本上,ES6 的clas...",r:{minutes:16.59,words:4976},y:"a",t:"Class 的基本语法"},["/zh/front-end/js-es/es6/class","/zh/front-end/js-es/es6/class.md"]],["v-0795e9a2","/zh/front-end/js-es/es6/decorator.html",{d:15981408e5,l:"2020å¹´8月23日",c:"Web 前端",g:"ECMA Script6",e:"类的修饰 许多面向对象的语言都有修饰器(Decorator)函数,用来修改类的行为。目前,有一个提案 (https://github.com/tc39/proposal-decorators)将这项功能,引入了 ECMAScript。 上面代码中,@testable就是一个修饰器。它修改了MyTestableClass这个类的行为,为它加上了静态属性i...",r:{minutes:11.29,words:3387},y:"a",t:"修饰器"},["/zh/front-end/js-es/es6/decorator","/zh/front-end/js-es/es6/decorator.md"]],["v-4fc31a0e","/zh/front-end/js-es/es6/destructuring.html",{d:15981408e5,l:"2020å¹´8月23日",c:"Web 前端",g:"ECMA Script6",e:"数组的解构赋值 基本用法 ES6 允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构(Destructuring)。 以前,为变量赋值,只能直接指定值。 ES6 允许写成下面这样。 上面代码表示,可以从数组中提取值,按照对应位置,对变量赋值。 本质上,这种写法属于“模式匹配”,只要等号两边的模式相同,左边的变量就会被赋予对应的值。下面...",r:{minutes:13.15,words:3944},y:"a",t:"变量的解构赋值"},["/zh/front-end/js-es/es6/destructuring","/zh/front-end/js-es/es6/destructuring.md"]],["v-513d62aa","/zh/front-end/js-es/es6/fp.html",{d:15981408e5,l:"2020å¹´8月23日",c:"Web 前端",g:"ECMA Script6",e:"JavaScript 语言从一诞生,就具有函数式编程的烙印。它将函数作为一种独立的数据类型,与其他数据类型处于完全平等的地位。在 JavaScript 语言中,您可以采用面向对象编程,也可以采用函数式编程。有人甚至说,JavaScript 是有史以来第一种被大规模采用的函数式编程语言。 ES6 的种种新增功能,使得函数式编程变得更方便、更强大。本章介绍...",r:{minutes:4.28,words:1285},y:"a",t:"函数式编程"},["/zh/front-end/js-es/es6/fp","/zh/front-end/js-es/es6/fp.md"]],["v-436b2946","/zh/front-end/js-es/es6/function.html",{d:15981408e5,l:"2020å¹´8月23日",c:"Web 前端",g:"ECMA Script6",e:"函数参数的默认值 基本用法 ES6 之前,不能直接为函数的参数æ
109Œ‡å®šé»˜è®¤å€¼ï¼Œåªèƒ½é‡‡ç”¨å˜é€šçš„æ–¹æ³•。 上面代码检查函数log的参数y有没有赋值,如果没有,则指定默认值为World。这种写法的缺点在于,如果参数y赋值了,但是对应的布尔值为false,则该赋值不起作用。就像上面代码的最后一行,参数y等于空字符,结果被改为默认值。 为了避免这个问题,通常需要先判断...",r:{minutes:30.68,words:9204},y:"a",t:"函数的扩展"},["/zh/front-end/js-es/es6/function","/zh/front-end/js-es/es6/function.md"]],["v-68d4943b","/zh/front-end/js-es/es6/generator-async.html",{d:15981408e5,l:"2020å¹´8月23日",c:"Web 前端",g:"ECMA Script6",e:"异步编程对 JavaScript 语言太重要。Javascript 语言的执行环境是“单线程”的,如果没有异步编程,根本没法用,非卡死不可。本章主要介绍 Generator 函数如何完成异步操作。 传统方法 ES6 诞生以前,异步编程的方法,大概有下面四种。 回调函数; 事件监听; 发布/订阅; Promise 对象; Generator 函数将 Ja...",r:{minutes:19.78,words:5934},y:"a",t:"Generator 异步应用"},["/zh/front-end/js-es/es6/generator-async","/zh/front-end/js-es/es6/generator-async.md"]],["v-30e2660a","/zh/front-end/js-es/es6/generator.html",{d:15981408e5,l:"2020å¹´8月23日",c:"Web 前端",g:"ECMA Script6",e:"简介 基本概念 Generator 函数是 ES6 提供的一种异步编程解决方案,语法行为与传统函数完全不同。本章详细介绍 Generator 函数的语法和 API,它的异步编程应用请看 Generator 函数的异步应用 (generator-async.md) 一章。 Generator 函数有多种理解角度。语法上,首先可以把它理解成,Generat...",r:{minutes:35.59,words:10678},y:"a",t:"Generator"},["/zh/front-end/js-es/es6/generator","/zh/front-end/js-es/es6/generator.md"]],["v-25a5a411","/zh/front-end/js-es/es6/intro.html",{d:15981408e5,l:"2020å¹´8月23日",c:"Web 前端",g:"ECMA Script6",e:`<p>ECMAScript 6.0(以下简称 ES6)是 JavaScript 语言的下一代标准,已经在 2015 å¹´ 6 月正式发布了。它的目标,是使得 JavaScript 语言可以用来编写复杂的大型应用程序,成为企业级开发语言。</p>
110`,r:{minutes:16.32,words:4897},y:"a",t:"ES6 简介"},["/zh/front-end/js-es/es6/intro","/zh/front-end/js-es/es6/intro.md"]],["v-32d14487","/zh/front-end/js-es/es6/iterator.html",{d:15981408e5,l:"2020å¹´8月23日",c:"Web 前端",g:"ECMA Script6",e:"Iterator(遍历器)的概念 JavaScript 原有的表示“集合”的数据结构,主要是数组(Array)和对象(Object),ES6 又添加了Map和`Set。这样就有了四种数据集合,用户还可以组合使用它们,定义自己的数据结构,比如数组的成员是Map,Map的成员是对象。这样就需要一种统一的接口机制,来处理所有不同的数据结构。 遍历器(Iter...",r:{minutes:18.28,words:5484},y:"a",t:"Iterator 和 for...of 循环"},["/zh/front-end/js-es/es6/iterator","/zh/front-end/js-es/es6/iterator.md"]],["v-9b30d27c","/zh/front-end/js-es/es6/let.html",{d:15981408e5,l:"2020å¹´8月23日",c:"Web 前端",g:"ECMA Script6",e:"let 命令 基本用法 ES6 新增了let命令,用来声明变量。它的用法类似于var,但是所声明的变量,只在let命令所在的代码块内有效。 上面代码在代码块之中,分别用let和`var声明了两个变量。然后在代码块之外调用这两个变量,结果let声明的变量报错,var声明的变量返回了正确的值。这表明,let声明的变量只在它所在的代码块有效。 for循环的计...",r:{minutes:17.22,words:5167},y:"a",t:"let 和 const 命令"},["/zh/front-end/js-es/es6/let","/zh/front-end/js-es/es6/let.md"]],["v-59a5f9c8","/zh/front-end/js-es/es6/mixin.html",{d:15981408e5,l:"2020å¹´8月23日",c:"Web 前端",g:"ECMA Script6",e:"JavaScript 语言的设计是单一继承,即子类只能继承一个父类,不允许继承多个父类。这种设计保证了对象继承的层次结构是树状的,而不是复杂的网状结构 (https://en.wikipedia.org/wiki/Multipleinheritance#Thediamond_problem)。 但是,这大大降低了编程的灵活性。因为实际开发中,有时不可避...",r:{minutes:2.91,words:873},y:"a",t:"Mixin"},["/zh/front-end/js-es/es6/mixin","/zh/front-end/js-es/es6/mixin.md"]],["v-b650462e","/zh/front-end/js-es/es6/module-loader.html",{d:15981408e5,l:"2020å¹´8月23日",c:"Web 前端",g:"ECMA Script6",e:'上一章介绍了模块的语法,本章介绍如何在浏览器和 Node 之中加载 ES6 模块,以及实际开发中经常遇到的一些问题(比如循环加载)。 浏览器加载 传统方法 HTML 网页中,浏览器通过标签加载 JavaScript 脚本。 上面代码中,由于浏览器脚本的默认语言是 JavaScript,因此type="application/javascript"可以省...',r:{minutes:20.33,words:6098},y:"a",t:"Module 的加载实现"},["/zh/front-end/js-es/es6/module-loader","/zh/front-end/js-es/es6/module-loader.md"]],["v-f38e476e","/zh/front-end/js-es/es6/module.html",{d:15981408e5,l:"2020å¹´8月23日",c:"Web 前端",g:"ECMA Script6",e:"概述 历史上,JavaScript 一直没有模块(module)体系,无法将一个大程序拆分成互相依赖的小文件,再用简单的方法拼装起来。其他语言都有这项功能,比如 Ruby 的require、Python 的import,甚至就连 CSS 都有@import,但是 JavaScript 任何这方面的支持都没有,这对开发大型的、复杂的项目形成了巨大障碍。 ...",r:{minutes:19.37,words:5810},y:"a",t:"Module 的语法"},["/zh/front-end/js-es/es6/module","/zh/front-end/js-es/es6/module.md"]],["v-0d29ace8","/zh/front-end/js-es/es6/number.html",{d:15981408e5,l:"2020å¹´8月23日",c:"Web 前端",g:"ECMA Script6",e:"二进制和八进制表示法 ES6 提供了二进制和八进制数值的新的写法,分别用前缀0b(或0B)和0o(或0O)表示。 从 ES5 开始,在严格模式之中,八进制就不再允许使用前缀0表示,ES6 进一步明确,要使用前缀0o表示。 如果要将0b和`0o前缀的字符串数值转为十进制,要使用Number方法。 Number.isFinite(), Number.isN...",r:{minutes:13.42,words:4027},y:"a",t:"数值的扩展"},["/zh/front-end/js-es/es6/number","/zh/front-end/js-es/es6/number.md"]],["v-fd602954","/zh/front-end/js-es/es6/object.html",{d:15981408e5,l:"2020å¹´8月23日",c:"Web 前端",g:"ECMA Script6",e:"属性的简洁表示法 ES6 允许直接写入变量和函数,作为对象的属性和方法。这样的书写更加简洁。 上面代码表明,ES6 允许在对象之中,直接写变量。这时,属性名为变量名, 属性值为变量的值。下面是另一个例子。 除了属性简写,方法也可以简写。 下面是一个实际的例子。 这种写法用于函数的返回值,将会非常方便。 CommonJS 模块输出一组变量,就é
110žå¸¸åˆé€‚使用...",r:{minutes:27.01,words:8103},y:"a",t:"对象的扩展"},["/zh/front-end/js-es/es6/object","/zh/front-end/js-es/es6/object.md"]],["v-097ca47c","/zh/front-end/js-es/es6/promise.html",{d:15981408e5,l:"2020å¹´8月23日",c:"Web 前端",g:"ECMA Script6",e:"Promise 的含义 Promise 是异步编程的一种解决方案,比传统的解决方案——回调函数和事件——更合理和更强大。它由社区最早提出和实现,ES6 将其写进了语言标准,统一了用法,原生提供了Promise对象。 所谓Promise,简单说就是一个容器,里面保存着某个未来才会结束的事件(通常是一个异步操作)的结果。从语法上说,Promise 是一个对...",r:{minutes:23.65,words:7096},y:"a",t:"Promise 对象"},["/zh/front-end/js-es/es6/promise","/zh/front-end/js-es/es6/promise.md"]],["v-2dcb1c48","/zh/front-end/js-es/es6/proposals.html",{d:15981408e5,l:"2020å¹´8月23日",c:"Web 前端",g:"ECMA Script6",e:`<p>本章介绍一些尚未进入标准、但很有希望的最新提案。</p>
111`,r:{minutes:16.83,words:5050},y:"a",t:"最新提案"},["/zh/front-end/js-es/es6/proposals","/zh/front-end/js-es/es6/proposals.md"]],["v-6bc9714f","/zh/front-end/js-es/es6/proxy.html",{d:15981408e5,l:"2020年8月23日",c:"Web 前端",g:"ECMA Script6",e:`<p>Proxy 用于修改某些操作的默认行为,等同于在语言层面做出修改,所以属于一种“元编程”(meta programming),即对编程语言进行编程。</p>
112<p>Proxy 可以理解成,在目标对象之前架设一层“拦截”,外界对该对象的访问,都必须先通过这层拦截,因此提供了一种机制,可以对外界的访问进行过滤和改写。Proxy 这个词的原意是代理,用在这里表示由它来“代理”某些操作,可以译为“代理器”。</p>
113`,r:{minutes:20.37,words:6110},y:"a",t:"Proxy"},["/zh/front-end/js-es/es6/proxy","/zh/front-end/js-es/es6/proxy.md"]],["v-3f8979b8","/zh/front-end/js-es/es6/",{d:15981408e5,l:"2020年8月23日",c:"Web 前端",g:"ECMA Script6",e:"目录 ECMAScript 6 简介 (intro.md); let 和 const 命令 (let.md); 变量的解构赋值 (destructuring.md); 字符串的扩展 (string.md); 正则的扩展 (regex.md); 数值的扩展 (number.md); 函数的扩展 (function.md); 数组的扩展 (array.md...",r:{minutes:.56,words:168},y:"a",t:"es6 入门"},["/zh/front-end/js-es/es6/index.html","/zh/front-end/js-es/es6/readme.md"]],["v-0ea466dc","/zh/front-end/js-es/es6/reference.html",{d:15981408e5,l:"2020年8月23日",c:"Web 前端",g:"ECMA Script6",e:"官方文件 ECMAScript® 2015 Language Specification (https://www.ecma-international.org/ecma-262/6.0/index.html): ECMAScript 2015 规格; ECMAScript® 2016 Language Specification (https://w...",r:{minutes:11.64,words:3493},y:"a",t:"参考链接"},["/zh/front-end/js-es/es6/reference","/zh/front-end/js-es/es6/reference.md"]],["v-7bdec560","/zh/front-end/js-es/es6/reflect.html",{d:15981408e5,l:"2020年8月23日",c:"Web 前端",g:"ECMA Script6",e:"概述 Reflect对象与Proxy对象一样,也是 ES6 为了操作对象而提供的新 API。Reflect对象的设计目的有这样几个。 (1) 将Object对象的一些明显属于语言内部的方法(比如Object.defineProperty),放到Reflect对象上。现阶段,某些方法同时在Object和`Reflect对象上部署,未来的新方法将只部署在R...",r:{minutes:8.7
1135,words:2624},y:"a",t:"Reflect"},["/zh/front-end/js-es/es6/reflect","/zh/front-end/js-es/es6/reflect.md"]],["v-c1e3e9d4","/zh/front-end/js-es/es6/regex.html",{d:15981408e5,l:"2020年8月23日",c:"Web 前端",g:"ECMA Script6",e:"RegExp 构造函数 在 ES5 中,RegExp构造函数的参数有两种情况。 第一种情况是,参数是字符串,这时第二个参数表示正则表达式的修饰符(flag)。 第二种情况是,参数是一个正则表示式,这时会返回一个原有正则表达式的拷贝。 但是,ES5 不允许此时使用第二个参数添加修饰符,否则会报错。 ES6 改变了这种行为。如果RegExp构造函数第一个参...",r:{minutes:16.43,words:4928},y:"a",t:"正则的扩展"},["/zh/front-end/js-es/es6/regex","/zh/front-end/js-es/es6/regex.md"]],["v-3126d72c","/zh/front-end/js-es/es6/set-map.html",{d:15981408e5,l:"2020年8月23日",c:"Web 前端",g:"ECMA Script6",e:"Set 基本用法 ES6 提供了新的数据结构 Set。它类似于数组,但是成员的值都是唯一的,没有重复的值。 Set 本身是一个构造函数,用来生成 Set 数据结构。 上面代码通过add方法向 Set 结构加入成员,结果表明 Set 结构不会添加重复的值。 Set 函数可以接受一个数组(或者具有 iterable 接口的其他数据结构)作为参数,用来初始化...",r:{minutes:23.57,words:7072},y:"a",t:"Set 和 Map 数据结构"},["/zh/front-end/js-es/es6/set-map","/zh/front-end/js-es/es6/set-map.md"]],["v-2e9263e8","/zh/front-end/js-es/es6/simd.html",{d:15981408e5,l:"2020年8月23日",c:"Web 前端",g:"ECMA Script6",e:"概述 SIMD(发音/sim-dee/)是“Single Instruction/Multiple Data”的缩写,意为“单指令,多数据”。它是 JavaScript 操作 CPU 对应指令的接口,您可以看做这是一种不同的运算执行模式。与它相对的是 SISD(“Single Instruction/Single Data”),即“单指令,单数据”。 ...",r:{minutes:17.76,words:5329},y:"a",t:"SIMD"},["/zh/front-end/js-es/es6/simd","/zh/front-end/js-es/es6/simd.md"]],["v-5cd3eb5a","/zh/front-end/js-es/es6/spec.html",{d:15981408e5,l:"2020年8月23日",c:"Web 前端",g:"ECMA Script6",e:"概述 规格文件是计算机语言的官方标准,详细描述语法规则和实现方法。 一般来说,没有必要阅读规格,除非您要写编译器。因为规格写得非常抽象和精炼,又缺乏实例,不容易理解,而且对于解决实际的应用问题,帮助不大。但是,如果您遇到疑难的语法问题,实在找不到答案,这时可以去查看规格文件,了解语言标准是怎么说的。规格是解决问题的“最后一招”。 这对 JavaScri...",r:{minutes:12.25,words:3674},y:"a",t:"读懂 ECMAScript 规格"},["/zh/front-end/js-es/es6/spec","/zh/front-end/js-es/es6/spec.md"]],["v-736a61c4","/zh/front-end/js-es/es6/string.html",{d:15981408e5,l:"2020年8月23日",c:"Web 前端",g:"ECMA Script6",e:`<p>ES6 加强了对 Unicode 的支持,并且扩展了字符串对象。</p>
114`,r:{minutes:19.34,words:5803},y:"a",t:"字符串的扩展"},["/zh/front-end/js-es/es6/string","/zh/front-end/js-es/es6/string.md"]],["v-39e2a028","/zh/front-end/js-es/es6/style.html",{d:15981408e5,l:"2020年8月23日",c:"Web 前端",g:"ECMA Script6",e:"本章探讨如何将 ES6 的新语法,运用到编码实践之中,与传统的 JavaScript 语法结合在一起,写出合理的、易于阅读和维护的代码。 多家公司和组织已经公开了它们的风格规范,下面的内容主要参考了 Airbnb (https://github.com/airbnb/javascript) 公司的 JavaScript 风格规范。 块级作用域 1. l...",r:{minutes:8.08,words:2424},y:"a",t:"编程风格"},["/zh/front-end/js-es/es6/style","/zh/front-end/js-es/es6/style.md"]],["v-8c6caec6","/zh/front-end/js-es/es6/symbol.html",{d:15981408e5,l:"2020年8月23日",c:"Web 前端",g:"ECMA Script6",e:"概述 ES5 的对象属性名都是字符串,这容易造成属性名的冲突。比如,您使用了一个他人提供的对象,但又想为这个对象添加新的方法(mixin 模式),新方法的名字就有可能与现有方法产生冲突。如果有一种机制,保证每个属性的名字都是独一无二的就好了,这样就从根本上防止属性名的冲突。这就是 ES6 引入Symbol的原因。 ES6 引入了一种新的原始数据类型Sy...",r:{minutes:16.7,words:5011},y:"a",t:"Symbol"},["/zh/front-end/js-es/es6/symbol","/zh/front-end/js-es/es6/symbol.md"]],["v-31e2640c","/zh/front-end/js-es/js/js1.html",{d:15914016e5,l:"2020年6月6日",c:"Web 前端",g:["JavaScript","Promise 对象","JS 异步","async 与 await"],e:"JavaScript 简介 1.1 JavaScript 语言是什么 JavaScript 是一种轻量级的脚本语言。所谓“脚本语言” (script language),指的是它不具备开发操作系统的能力,而是只用来编写控制其他大型应用程序(比如浏览器)的“脚本”。 JavaScript 也是一种嵌入式 (embedded) 语言。它本身提供的核心语法不...",r:{minutes:28.54,words:8561},y:"a",t:"1. JavaScript 简介",i:"js"},["/zh/front-end/js-es/js/js1","/zh/front-end/js-es/js/js1.md"]],["v-0a0414b0","/zh/front-end/js-es/js/js10.html",{d:15914016e5,l:"2020年6月6日",c:"Web 前端",g:["JavaScript","Promise 对象","JS 异步","async 与 await"],e:"函数对象 函数也是也是对象,函数中可以封装一些功能(代码),在需要的时候执行,并且函数对象具有所有普通对象所具备的 功能 10.1 创建函数对象 构造函数方法创建函数对象,将要封装的代码以字符串的形式传递给构造函数(不推荐使用这种方法); 函数声明方法创建函数对象; 3.函数表达式创建函数对象; 注意: 加括号是调用函数,相当于函数的返回值,不加括号是...",r:{minutes:32.08,words:9625},y:"a",t:"10. 函数对象",i:"js"},["/zh/front-end/js-es/js/js10","/zh/front-end/js-es/js/js10.md"]],["v-069a6372","/zh/front-end/js-es/js/js11.html",{d:15914016e5,l:"2020年6月6日",c:"Web 前端",g:["JavaScript","Promise 对象","JS 异步","async 与 await"],e:"类对象 class用法跟let和const一样,不存在变量提升,也不能重复声明类名,JS中的类(class)是在ES6中被推出为关键字,实际上也是通过原型构成的模拟类 ES5面对对象写法和传统的面向对象语言(如C++和JAVA)差异很大,很容易让新学习这门语言的人感到困惑。所以在ES6中提供了更接近传统语言的写法,引入了class这个概念,作为对象的模...",r:{minutes:4.41,words:1323},y:"a",t:"11. 类对象",i:"js"},["/zh/front-end/js-es/js/js11","/zh/front-end/js-es/js/js11.md"]],["v-0330b234","/zh/front-end/js-es/js/js12.html",{d:15914016e5,l:"2020年6月6日",c:"Web 前端",g:["JavaScript","Promise 对象","JS 异步","async 与 await"],e:"JS特殊类实例 12.1 包装类 js中为我们提供了三个包装类,通过这三个包装类可以将基本的数据类型转换为对象 这三个包装类分别为String(),Number()和Boolean() 对于包装类的举例 注:在实际
114开发中我们不会使用包装类创建对象,如果使用这种基本数据类型的对象,在做一些比较时可能会带来一些不可预期的结果 包装类的用途 浏览器会自己调用...",r:{minutes:7.02,words:2107},y:"a",t:"12. JS特殊类实例",i:"js"},["/zh/front-end/js-es/js/js12","/zh/front-end/js-es/js/js12.md"]],["v-001c7f85","/zh/front-end/js-es/js/js13.html",{d:15914016e5,l:"2020年6月6日",c:"Web 前端",g:["JavaScript","Promise 对象","JS 异步","async 与 await"],e:"正则表达式 正则表达式用于定义一些字符串的规则,计算机可以根据正则表达式,来检查一个字符串是否符合规则,获取字符串中符合规则的内容 基本概念 正则表达式是由一个字符序列形成的搜索模式; 当在文本中搜索数据时,可以用搜索模式来描述要查询的内容; 正则表达式可以是一个简单的字符,或一个更复杂的模式; 正则表达式可用于所有文本搜索和文本替换的操作; 13.1...",r:{minutes:11.11,words:3333},y:"a",t:"13. 正则表达式",i:"js"},["/zh/front-end/js-es/js/js13","/zh/front-end/js-es/js/js13.md"]],["v-01d15824","/zh/front-end/js-es/js/js14.html",{d:15914016e5,l:"2020年6月6日",c:"Web 前端",g:["JavaScript","Promise 对象","JS 异步","async 与 await"],e:'定时器 14.1 定时调用 当希望一段程序可以每隔一段时间执行一次时,可以使用定时调用函数setInterval(),该函数有多个参数 ; 参数 - 要做的事(通常是回调函数),该函数会每隔一段时间被调用一次,如果不是函数就传入一个字符串,这个字符串中的东西代表要做的事如"alert(123)"(不推荐这样写,最好还是写函数); - 每次调用间隔的时间...',r:{minutes:9.5,words:2849},y:"a",t:"14. 定时器",i:"js"},["/zh/front-end/js-es/js/js14","/zh/front-end/js-es/js/js14.md"]],["v-038630c3","/zh/front-end/js-es/js/js15.html",{d:15914016e5,l:"2020年6月6日",c:"Web 前端",g:["JavaScript","Promise 对象","JS 异步","async 与 await"],e:'Set ES6中提供了数据结构Set,该对象类似于数组,但是所有的值都是唯一的,在其中不会有重复的值,Set本身就是一个构造函数,用来生成Set类的实例对象 注意:与数组和一般对象不同的是,Set实例没有属性名(键名),或者说属性名(键名)和属性值(键值)都是相同的值 15.1 用法 注意: 在向Set实例中添加值的时候不会进行类型转换,如:123与"...',r:{minutes:3.72,words:1116},y:"a",t:"15. Set",i:"js"},["/zh/front-end/js-es/js/js15","/zh/front-end/js-es/js/js15.md"]],["v-053b0962","/zh/front-end/js-es/js/js16.html",{d:15914016e5,l:"2020年6月6日",c:"Web 前端",g:["JavaScript","Promise 对象","JS 异步","async 与 await"],e:"Map ES6提供Map数据结构,该对象类似于普通对象,也是键值对的集合,但是该对象的键不像普通对象那样只能用字符串作为键,而是可以使用各种类型的值(包括对象)来作为键 JS中的对象本质上是键值对的集合(Hash结构),但是传统上只能用字符串当作键,这就使得在使用JS对象的时候有很大的限制。也就是说,Object结构提供的是字符串与值相对应的键值对模式...",r:{minutes:6.01,words:1804},y:"a",t:"16. Map",i:"js"},["/zh/front-end/js-es/js/js16","/zh/front-end/js-es/js/js16.md"]],["v-06efe201","/zh/front-end/js-es/js/js17.html",{d:15914016e5,l:"2020年6月6日",c:"Web 前端",g:["JavaScript","Promise 对象","JS 异步","async 与 await"],e:'Module 模块功能主要由两个命令构成 export命令用于规定模块的对外接口; import命令用于输入其他模块提供的功能; 注意: ES6的模块自动采用严格模式,不管有没有在模块头部加上"use strict"; export与import命令可以出现在模块的任何位置,只要处于模块顶层作用域就可以,如果处于块级作用域内等就会报错; 17.1 ex...',r:{minutes:5.08,words:1525},y:"a",t:"17. Module",i:"js"},["/zh/front-end/js-es/js/js17","/zh/front-end/js-es/js/js17.md"]],["v-08a4baa0","/zh/front-end/js-es/js/js18.html",{d:15914016e5,l:"2020年6月6日",c:"Web 前端",g:["JavaScript","Promise 对象","JS 异步","async 与 await"],e:"Promise 18.1 Promise含义 promise是异步编程的一种解决方法。 所谓promise,简单说是一个容器,里面保存着某个未来才会结束的事件(通常是一个异步操作)的结果,从语法上说,promise是一个对象,从它可以获取异步操作的消息,promise提供了统一的API,各种异步操作都可以用同样的方法进行处理。 Promise对
114象代表一...",r:{minutes:9.06,words:2719},y:"a",t:"18. Promise",i:"js"},["/zh/front-end/js-es/js/js18","/zh/front-end/js-es/js/js18.md"]],["v-0a59933f","/zh/front-end/js-es/js/js19.html",{d:15914016e5,l:"2020å¹´6月6日",c:"Web 前端",g:["JavaScript","Promise 对象","JS 异步","async 与 await"],e:"Generator Generator函数是ES6提供的一种异步编程解决方案.,语法行为与传统的普通函数完全不同。执行Generator函数会返回一个遍历器对象。也就是说,Generator函数还是一个遍历器对象生成函数。返回的遍历器对象,可以依次遍历Generator函数内部的每一个状态 Generator函数跟普通函数的区别 function关键字...",r:{minutes:5.64,words:1693},y:"a",t:"19. Generator",i:"js"},["/zh/front-end/js-es/js/js19","/zh/front-end/js-es/js/js19.md"]],["v-2e78b2ce","/zh/front-end/js-es/js/js2.html",{d:15914016e5,l:"2020å¹´6月6日",c:"Web 前端",g:["JavaScript","Promise 对象","JS 异步","async 与 await"],e:"JS基本操作 2.1 js输出打印内容 通过js可以实现三种书写形式 document.write(),这种形式是直接在页面中书写值,会把传入的值当作字符串传递在页面中,可以直观在页面看到; console.log(),这种形式是在控制台中打印值,在页面中看不到,必须通过F12查看控制台才能看见; alert(),这种形式是在打开页面时生成弹窗效果,这...",r:{minutes:1.55,words:465},y:"a",t:"2. JS基本操作",i:"js"},["/zh/front-end/js-es/js/js2","/zh/front-end/js-es/js/js2.md"]],["v-2fe430e9","/zh/front-end/js-es/js/js20.html",{d:15914016e5,l:"2020å¹´6月6日",c:"Web 前端",g:["JavaScript","Promise 对象","JS 异步","async 与 await"],e:"async 为了使得异步操作更加的简便,ES8标准引入了async函数,async函数是Generator函数的语法糖,基本是模仿Generator函数并作出了一些改变 20.1 async与Generator的区别 有了内置执行器,Generator函数的执行必须靠执行器,而async函数自带执行器。也就是说,async函数的执行,与普通函数一样,只...",r:{minutes:2.14,words:641},y:"a",t:"20. async",i:"js"},["/zh/front-end/js-es/js/js20","/zh/front-end/js-es/js/js20.md"]],["v-31990988","/zh/front-end/js-es/js/js21.html",{d:15914016e5,l:"2020å¹´6月6日",c:"Web 前端",g:["JavaScript","Promise 对象","JS 异步","async 与 await"],e:"Iterator Iterator(迭代器)是一种接口,或者说是一种机制。它能为各种不同的数据结构提供统一的访问机制,任何数据结构只要部署Iterator接口,就可以完成遍历操作(即依次处理该数据结构的所有成员) 21.1 作用 为各种数据结构,提供一个统一的、简便的访问接口; 使得数据结构的成员能够按某种次序排列; 供for...of语句使用; It...",r:{minutes:2.11,words:634},y:"a",t:"21. Iterator",i:"js"},["/zh/front-end/js-es/js/js21","/zh/front-end/js-es/js/js21.md"]],["v-334de227","/zh/front-end/js-es/js/js22.html",{d:15914016e5,l:"2020å¹´6月6日",c:"Web 前端",g:["JavaScript","Promise 对象","JS 异步","async 与 await"],e:'Proxy Proxy用于修改某些操作的默认行为,等同于在语言层面作出修改,所以属于一种"元编程",即对编程语言进行编程。Proxy可以理解为在目标对象之前设置一层拦截,外界对该对象的访问,都必须先通过这层拦截,因此提供了一种机制.可以对外界的访问进行过滤和改写。proxy这个词的愿意是代理,用在这里表示它来代理某些操作,可以看作是代理器 Proxy实...',r:{minutes:1.97,words:592},y:"a",t:"22. Proxy",i:"js"},["/zh/front-end/js-es/js/js22","/zh/front-end/js-es/js/js22.md"]],["v-3502bac6","/zh/front-end/js-es/js/js23.html",{d:15914016e5,l:"2020å¹´6月6日",c:"Web 前端",g:["JavaScript","Promise 对象","JS 异步","async 与 await"],e:"Reflect Reflect不是一个构造函数,而是一个直接调用的对象,内部装有一些ES6中操作对象的API,里面的方法与Proxy一一对应 Reflect的用处 将Object对象的一些明显语言内部的方法,如Object.defineProperty等放在Reflect对象上,现在虽然在Object对象与Reflect对象中调用这些方法都可以实现,但...",r:{minutes:1.17,words:351},y:"a",t:"23. Reflect",i:"js"},["/zh/front-end/js-es/js/js23","/zh/front-end/js-es/js/js23.md"]],["v-36b79365","/zh/front-end/js-es/js/js24.html",{d:15914016e5,l:"2020å¹´6月6日",c:"Web 前端",g:["JavaScript","Promise 对象","JS 异步","async 与 await"],e:"错误处理 在执行 JavaScript 代码的时候,有些情况下会发生错误。 24.1 错误分类 错误分两种,一种是程序写的逻辑不对,导致代码执行异常。例如: 对于这种错误ï¼
114Œè¦ä¿®å¤ç¨‹åºã€‚ 一种是执行过程中,程序可能遇到无法预测的异常情况而报错,例如,网络连接中断,读取不存在的文件,没有操作权限等。 对于这种错误,我们需要处理它,并可能需要给用户反馈。 错...",r:{minutes:6.07,words:1822},y:"a",t:"24. 错误处理",i:"js"},["/zh/front-end/js-es/js/js24","/zh/front-end/js-es/js/js24.md"]],["v-2b0f0190","/zh/front-end/js-es/js/js3.html",{d:15914016e5,l:"2020å¹´6月6日",c:"Web 前端",g:["JavaScript","Promise 对象","JS 异步","async 与 await"],e:"变量及数据类型 3.1 变量和常量 标识符可以含有字母,数字, $等; ; 标识符不能以数字开头;; 标识符不能是JS中的关键字或保留字;; 标识符一般采用驼峰命名法:首字母小写,每个单词的开头字母大写,其余字母小写; 标识符就是JS中的变量(ES6有了常量的概念),变量使用前必须要先定义; 有3种命名符来命名表示符; var,ES6之前用的命名符,但...",r:{minutes:55.83,words:16748},y:"a",t:"3. 变量及数据类型",i:"js"},["/zh/front-end/js-es/js/js3","/zh/front-end/js-es/js/js3.md"]],["v-27a55052","/zh/front-end/js-es/js/js4.html",{d:15914016e5,l:"2020å¹´6月6日",c:"Web 前端",g:["JavaScript","Promise 对象","JS 异步","async 与 await"],e:"运算符 运算符不会对原来的值进行影响 运算符的运算时按住自身的层级进行顺序运算 4.1 JS功能运算符 typeof,用于鉴定数据类型的时候使用,它会将值得类型以字符串的形式返回; in,用于检查一个对象中是否含有指定的属性,如果有则返回true,没有则返回false; instanceof,用于确定一个对象是否在另一个对象的原型链上,也就是一个对象是...",r:{minutes:7.51,words:2254},y:"a",t:"4. 运算符",i:"js"},["/zh/front-end/js-es/js/js4","/zh/front-end/js-es/js/js4.md"]],["v-243b9f14","/zh/front-end/js-es/js/js5.html",{d:15914016e5,l:"2020å¹´6月6日",c:"Web 前端",g:["JavaScript","Promise 对象","JS 异步","async 与 await"],e:"逻辑语句 5.1 if语句 if语句对一个属性或者表达式进行判断,里面的数或表达式最后会转换为布尔值,如果为真才执行执行if语句里面的代码 5.1.1 if 5.1.2 if...else 5.1.3 if....else if....else 5.2 switch语句 注意: JS里面的switch中的case可以接受一个表达式,因为swich语句在...",r:{minutes:1.48,words:445},y:"a",t:"5. 逻辑语句",i:"js"},["/zh/front-end/js-es/js/js5","/zh/front-end/js-es/js/js5.md"]],["v-20d1edd6","/zh/front-end/js-es/js/js6.html",{d:15914016e5,l:"2020å¹´6月6日",c:"Web 前端",g:["JavaScript","Promise 对象","JS 异步","async 与 await"],e:"循环语句 6.1 while 与 do...while 语句 while 和 do...while 都是循环语句,在条件允许的情况下会一直循环语句内的代码 6.2 for 循环语句 注意: 表达式皆可以省略,但分号不可省略,因为“;”可以代表一个空语句,省略了之后语句减少,即为语句格式发生; 变化 执行的中间循环体可以为一个语句,也可以为多个语句,当中...",r:{minutes:2.43,words:728},y:"a",t:"6. 循环语句",i:"js"},["/zh/front-end/js-es/js/js6","/zh/front-end/js-es/js/js6.md"]],["v-1d683c98","/zh/front-end/js-es/js/js7.html",{d:15914016e5,l:"2020å¹´6月6日",c:"Web 前端",g:["JavaScript","Promise 对象","JS 异步","async 与 await"],e:"一般对象 7.1 对象的分类 JS 中数据类型有 String Number Boolean Null Undefined Object 前五个为基本数据类型,Object 对象为引用 数据类型,值只要不是前 5 种,都是对象 对象的分类: 内建对象; 由 es 标准中定义的对象,在任何的 ES 的实现中都可以使用,如 Math String Numb...",r:{minutes:14.31,words:4293},y:"a",t:"7. 一般对象",i:"js"},["/zh/front-end/js-es/js/js7","/zh/front-end/js-es/js/js7.md"]],["v-19fe8b5a","/zh/front-end/js-es/js/js8.html",{d:15914016e5,l:"2020å¹´6月6日",c:"Web 前端",g:["JavaScript","Promise 对象","JS 异步","async 与 await"],e:"数组 数组也是一个对象,它和普通对象功能类似,也是用来存储值,不同的是普通对象使用字符串作为属性名,而数组是使 用数字来作为属性名操作属性值,所以数组的存储性比普通对象要好,在开发中经常使用数组来存储数据 注意:因为是使用数组索引来操作属性,所以不能使用.的方法来控制,只能用[]的形式 数组的值 数组的值可以是任何的数据类型,不一定是数值,也可以是一个...",r:{minutes:20.08,words:6023},y:"a",t:"8. 数组",i:"js"},["/zh/front-end/js-es/js/js8","/zh/front-end/js-es/js/js8.md"]],["v-1694da1c","/zh/front-end/js-es/js/js9.html",{d:15914016e5,l:"2020å¹´6月6日",c:"Web 前端",g:["JavaScript","Promise 对象","JS 异步","async 与 await"],e:"字符串方法 9.1 length 在底层字符串是以字符数组的形式保存的,所以字符串其实是有length属性的,并且也可以使用索引(低版本IE不 支持直接用索引,所以用charAt()代æ›
114¿) 注意:与数组的length不同,字符串的length是只读的,不能修改 9.2 charAt,charCodeAt与fromCharCode方法 charAt()方...",r:{minutes:6.04,words:1813},y:"a",t:"9. 字符串方法",i:"js"},["/zh/front-end/js-es/js/js9","/zh/front-end/js-es/js/js9.md"]],["v-30861d29","/zh/front-end/js-es/js/",{d:15914016e5,l:"2020å¹´6月6日",c:"Web 前端",g:["JavaScript","Promise 对象","JS 异步","async 与 await"],e:"JavaScript(简称“JS”) 是一种具有函数优先的轻量级,解释型或即时编译型的高级编程语言。虽然它是作为开发Web页面的 脚本语言而出名的,但是它也被用到了很多非浏览器环境中,JavaScript 基于原型编程、多范式的动态脚本语言,并且支持面 向对象、命令式和声明式(如函数式编程)风格。 JavaScript在1995年由Netscape公司...",r:{minutes:.95,words:284},y:"a",t:"JavaScript",i:"js"},["/zh/front-end/js-es/js/index.html","/zh/front-end/js-es/js/readme.md"]],["v-113c9bde","/zh/front-end/typescript/advanced/class-and-interfaces.html",{d:15948576e5,l:"2020å¹´7月16日",c:"Web 前端",g:"TypeScript",e:`<p><a href="/zh/front-end/typescript/basics/type-of-object-interfaces.html" target="blank">之前学习过</a>,接口(Interfaces)可以用于对「对象的形状(Shape)」进行描述。</p>
115<p>这一章主要介绍接口的另一个用途,对类的一部分行为进行抽象。</p>
116`,r:{minutes:1.85,words:554},y:"a",t:"类与接口",i:"typescript"},["/zh/front-end/typescript/advanced/class-and-interfaces","/zh/front-end/typescript/advanced/class-and-interfaces.md"]],["v-1d3920e4","/zh/front-end/typescript/advanced/class.html",{d:15948576e5,l:"2020年7月16日",c:"Web 前端",g:"TypeScript",e:`<p>传统方法中,JavaScript 通过构造函数实现类的概念,通过原型链实现继承。而在 ES6 中,我们终于迎来了 <code>class</code>。</p>
117<p>TypeScript 除了实现了所有 ES6 中的类的功能以外,还添加了一些新的用法。</p>
118<p>这一节主要介绍类的用法,下一节再介绍如何定义类的类型。</p>
119`,r:{minutes:6.38,words:1914},y:"a",t:"类",i:"typescript"},["/zh/front-end/typescript/advanced/class","/zh/front-end/typescript/advanced/class.md"]],["v-1b1261ba","/zh/front-end/typescript/advanced/declaration-merging.html",{d:15948576e5,l:"2020年7月16日",c:"Web 前端",g:"TypeScript",e:`<p>如果定义了两个相同名字的函数、接口或类,那么它们会合并成一个类型:</p>
120`,r:{minutes:1.14,words:342},y:"a",t:"声明合并",i:"typescript"},["/zh/front-end/typescript/advanced/declaration-merging","/zh/front-end/typescript/advanced/declaration-merging.md"]],["v-48842cd6","/zh/front-end/typescript/advanced/enum.html",{d:15948576e5,l:"2020年7月16日",c:"Web 前端",g:"TypeScript",e:`<p>枚举(Enum)类型用于取值被限定在一定范围内的场景,比如一周只能有七天,颜色限定为红绿蓝等。</p>
121`,r:{minutes:5.04,words:1513},y:"a",t:"枚举",i:"typescript"},["/zh/front-end/typescript/advanced/enum","/zh/front-end/typescript/advanced/enum.md"]],["v-0cfb5d99","/zh/front-end/typescript/advanced/further-reading.html",{d:15948576e5,l:"2020年7月16日",c:"Web 前端",g:"TypeScript",e:`<p>此处记录了<a href="http://www.typescriptlang.org/docs/handbook/basic-types.html" target="_blank" rel="noopener noreferrer">官方手册</a>(<a href="https://zhongsp.gitbooks.io/typescript-handbook/content/" target="_blank" rel="noopener noreferrer">中文版</a>)中包含,但是本书未涉及的概念。</p>
122`,r:{minutes:2.23,words:668},y:"a",t:"扩展阅读",i:"typescript"},["/zh/front-end/typescript/advanced/further-reading","/zh/front-end/typescript/advanced/further-reading.md"]],["v-7c4de90c","/zh/front-end/typescript/advanced/generics.html",{d:15948576e5,l:"2020年7月16日",c:"Web 前端",g:"TypeScript",e:`<p>泛型(Generics)是指在定义函数、接口或类的时候,不预先指定具体的类型,而在使用的时候再指定类型的一种特性。</p>
123`,r:{minutes:4.09,words:1226},y:"a",t:"泛型",i:"typescript"},["/zh/front-end/typescript/advanced/generics","/zh/front-end/typescript/advanced/generics.md"]],["v-1ec71643","/zh/front-end/typescript/advanced/",{d:15948576e5,l:"2020年7月16日",c:"Web 前端",g:"TypeScript",e:`<p>本部分介绍一些高级的类型与技术,具体内容包括:</p>
124`,r:{minutes:.28,words:84},y:"a",t:"进阶",i:"typescript"},["/zh/front-end/typescript/advanced/index.html","/zh/front-end/typescript/advanced/readme.md"]],["v-42c3cb92","/zh/front-end/typescript/advanced/string-literal-types.html",{d:15948576e5,l:"2020年7月16日",c:"Web 前端",g:"TypeScript",e:`<p>字符串字面量类型用来约束取值只能是某几个字符串中的一个。</p>
125`,r:{minutes:.64,words:193},y:"a",t:"字符串字面量类型",i:"typescript"},["/zh/front-end/typescript/advanced/string-literal-types","/zh/front-end/typescript/advanced/string-literal-types.md"]],["v-1883b494","/zh/front-end/typescript/advanced/tuple.html",{d:15948576e5,l:"2020年7月16日",c:"Web 前端",g:"TypeScript",e:`<p>数组合并了相同类型的对象,而元组(Tuple)合并了不同类型的对象。</p>
126<p>元组起源于函数编程语言(如 F#),这些语言中会频繁使用元组。</p>
127`,r:{minutes:1.02,words:305},y:"a",t:"元组",i:"typescript"},["/zh/front-end/typescript/advanced/tuple","/zh/front-end/typescript/advanced/tuple.md"]],["v-52f31c6b","/zh/front-end/typescript/advanced/type-aliases.html",{d:15948576e5,l:"2020年7月16日",c:"Web 前端",g:"TypeScript",e:`<p>类型别名用来给一个类型起个新名字。</p>
128`,r:{minutes:.37,words:111},y:"a",t:"类型别名",i:"typescript"},["/zh/front-end/typescript/advanced/type-aliases","/zh/front-end/typescript/advanced/type-aliases.md"]],["v-a89a2ea6","/zh/front-end/typescript/basics/any.html",{d:15948576e5,l:"2020年7月16日",c:"Web 前端",g:"TypeScript",e:`<p>任意值(Any)用来表示允许赋值为任意类型。</p>
129`,r:{minutes:.94,words:283},y:"a",t:"任意值",i:"typescript"},["/zh/front-end/typescript/basics/any","/zh/front-end/typescript/basics/any.md"]],["v-dbe56f44","/zh/front-end/typescript/basics/built-in-objects.html",{d:15948576e5,l:"2020年7月16日",c:"Web 前端",g:"TypeScript",e:`<p>JavaScript 中有很多[内置对象][],它们可以直接在 TypeScript 中当做定义好了的类型。</p>
130<p>内置对象是指根据标准在全局作用域(Global)上存在的对象。这里的标准是指 ECMAScript 和其他环境(比如 DOM)的标准。</p>
131`,r:{minutes:2.06,words:618},y:"a",t:"内置对象",i:"typescript"},["/zh/front-end/typescript/basics/built-in-objects","/zh/front-end/typescript/basics/built-in-objects.md"]],["v-4972fd35","/zh/front-end/typescript/basics/declaration-files.html",{d:15948576e5,l:"2020年7月16日",c:"Web 前端",g:"TypeScript",e:"当使用第三方库时,我们需要引用它的声明文件,才能获得对应的代码补全、接口提示等功能。 什么是声明语句 假如我们想使用第三方库 jQuery,一种常见的方式是在 html 中通过 标签引入 jQuery,然后就可以使用全局变量 $ 或 jQuery 了。 我们通常这样获取一个 id 是 foo 的元素: 但是在 ts 中,编译器并不知道 $ 或 jQue...",r:{minutes:26.52,words:7957},y:"a",t:"声明文件",i:"typescript"},["/zh/front-end/typescript/basics/declaration-files","/zh/front-end/typescript/basics/declaration-files.md"]],["v-56d5da46","/zh/front-end/typescript/basics/primitive-data-types.html",{d:15948576e5,l:"2020年7月16日",c:"Web 前端",g:"TypeScript",e:`<p>JavaScript 的类型分为两种: 原始数据类型([Primitive data types][])和对象类型(Object types)。</p>
132<p>原始数据类型包括: 布尔值、数值、字符串、<code>null</code>、<code>undefined</code> 以及 [ES6 中的新类型 <code>Symbol</code>][]。</p>
133<p>本节主要介绍<strong>前五种</strong>原始数据类型在 TypeScript 中的应用。</p>
134`,r:{minutes:2.79,words:838},y:"a",t:"原始数据类型",i:"typescript"},["/zh/front-end/typescript/basics/primitive-data-types","/zh/front-end/typescript/basics/primitive-data-types.md"]],["v-26120e40","/zh/front-end/typescript/basics/",{d:15948576e5,l:"2020年7月16日",c:"Web 前端",g:"TypeScript",e:`<p>本部分介绍了 TypeScript 中的常用类型和一些基本概念,旨在让大家对 TypeScript 有个初步的理解。具体内容包括:</p>
135`,r:{minutes:.42,words:127},y:"a",t:"基础",i:"typescript"},["/zh/front-end/typescript/basics/index.html","/zh/front-end/typescript/basics/readme.md"]],["v-4bb587ca","/zh/front-end/typescript/basics/type-assertion.html",{d:15948576e5,l:"2020年7月16日",c:"Web 前端",g:"TypeScript",e:`<p>类型断言(Type Assertion)可以用来手动指定一个值的类型。</p>
136`,r:{minutes:1.61,words:484},y:"a",t:"类型断言",i:"typescript"},["/zh/front-end/typescript/basics/type-assertion","/zh/front-end/typescript/basics/type-assertion.md"]],["v-1b4c4913","/zh/front-end/typescript/basics/type-inference.html",{d:15948576e5,l:"2020年7月16日",c:"Web 前端",g:"TypeScript",e:`<p>如果没有明确的指定类型,那么 TypeScript 会依照类型推论(Type Inference)的规则推断出一个类型。</p>
137`,r:{minutes:.73,words:219},y:"a",t:"类型推论",i:"typescript"},["/zh/front-end/typescript/basics/type-inference","/zh/front-end/typescript/basics/type-inference.md"]],["v-afd75e7a","/zh/front-end/typescript/basics/type-of-array.html",{d:15948576e5,l:"2020年7月16日",c:"Web 前端",g:"TypeScript",e:`<p>
137在 TypeScript 中,数组类型有多种定义方式,比较灵活。</p>
138`,r:{minutes:2.26,words:677},y:"a",t:"数组的类型",i:"typescript"},["/zh/front-end/typescript/basics/type-of-array","/zh/front-end/typescript/basics/type-of-array.md"]],["v-58ec5a7e","/zh/front-end/typescript/basics/type-of-function.html",{d:15948576e5,l:"2020年7月16日",c:"Web 前端",g:"TypeScript",e:`<blockquote>
139<p><a href="https://llh911001.gitbooks.io/mostly-adequate-guide-chinese/content/ch2.html" target="_blank" rel="noopener noreferrer">函数是 JavaScript 中的一等公民</a></p>
140</blockquote>
141`,r:{minutes:4.56,words:1368},y:"a",t:"函数的类型",i:"typescript"},["/zh/front-end/typescript/basics/type-of-function","/zh/front-end/typescript/basics/type-of-function.md"]],["v-afce6b58","/zh/front-end/typescript/basics/type-of-object-interfaces.html",{d:15948576e5,l:"2020年7月16日",c:"Web 前端",g:"TypeScript",e:`<p>在 TypeScript 中,我们使用接口(Interfaces)来定义对象的类型。</p>
142`,r:{minutes:3.68,words:1104},y:"a",t:"对象的类型——接口",i:"typescript"},["/zh/front-end/typescript/basics/type-of-object-interfaces","/zh/front-end/typescript/basics/type-of-object-interfaces.md"]],["v-51dee7fe","/zh/front-end/typescript/basics/union-types.html",{d:15948576e5,l:"2020年7月16日",c:"Web 前端",g:"TypeScript",e:`<p>联合类型(Union Types)表示取值可以为多种类型中的一种。</p>
143`,r:{minutes:1.35,words:406},y:"a",t:"联合类型",i:"typescript"},["/zh/front-end/typescript/basics/union-types","/zh/front-end/typescript/basics/union-types.md"]],["v-14066bb0","/zh/front-end/typescript/engineering/lint.html",{d:15948576e5,l:"2020年7月16日",c:"Web 前端",g:"TypeScript",e:"TypeScript 的代码检查应当使用 ESLint + typescript-eslint-parser。 什么是代码检查 代码检查主要是用来发现代码错误、统一代码风格。 在 JavaScript 项目中,我们一般使用 ESLint 来进行代码检查。它通过插件化的特性极大的丰富了适用范围,搭配 typescript-eslint-parser 之后...",r:{minutes:8.96,words:2687},y:"a",t:"代码检查",i:"typescript"},["/zh/front-end/typescript/engineering/lint","/zh/front-end/typescript/engineering/lint.md"]],["v-4e30cdc6","/zh/front-end/typescript/engineering/",{d:15948576e5,l:"2020年7月16日",c:"Web 前端",g:"TypeScript",e:"掌握了 TypeScript 的语法就像学会了砌墙的工艺。 我们学习 TypeScript 的目的不是为了造一间小茅屋,而是为了造高楼大厦,这也正是 TypeScript 的类型系统带来的优势。 那么一项大工程应该如何开展呢?本部分的内容就会介绍 TypeScript 工程化的最佳实践,具体内容包括: 代码检查 (lint.md);",r:{minutes:.39,words:118},y:"a",t:"工程",i:"typescript"},["/zh/front-end/typescript/engineering/index.html","/zh/front-end/typescript/engineering/readme.md"]],["v-447404d0","/zh/front-end/typescript/intro/get-typescript.html",{d:15948576e5,l:"2020年7月16日",c:"Web 前端",g:"TypeScript",e:`<p>TypeScript 的命令行工具安装方法如下:</p>
144<div class="language-bash" data-ext="sh"><pre class="language-bash"><code><span class="token function">npm</span> <span class="token function">install</span> <span class="token parameter variable">-g</span> typescript
145</code></pre></div><p>以上命令会在全局环境下安装 <code>tsc</code> 命令,安装完成之后,我们就可以在任何地方执行 <code>tsc</code> 命令了。</p>
146`,r:{minutes:.91,words:274},y:"a",t:"安装 TypeScript",i:"typescript"},["/zh/front-end/typescript/intro/get-typescript","/zh/front-end/typescript/intro/get-typescript.md"]],["v-04a024e8","/zh/front-end/typescript/intro/hello-typescript.html",{d:15948576e5,l:"2020年7月16日",c:"Web 前端",g:"TypeScript",e:"我们从一个简单的例子开始。 将以下代码复制到 hello.ts 中: 然后执行 这时候会生成一个编译好的文件 hello.js: TypeScript 中,使用 : 指定变量的类型,: 的前后有没有空格都可以。 上述例子中,我们用 : 指定 person 参数类型为 string。但是编译为 js 之后,并没有什么检查的代码被插入进来。 TypeScr...",r:{minutes:1.27,words:381},y:"a",t:"Hello TypeScript",i:"typescript"},["/zh/front-end/typescript/intro/hello-typescript","/zh/front-end/typescript/intro/hello-typescript.md"]],["v-dbf5bde6","/zh/front-end/typescript/intro/",{d:15948576e5,l:"2020年7月16日",c:"Web 前端",g:"TypeScript",e:`<p>本部分介绍了在学习 TypeScript 之前需要了解的知识,具体内容包括:</p>
147`,r:{minutes:.19,words:57},y:"a",t:"简介",i:"typescript"},["/zh/front-end/typescript/intro/index.html","/zh/front-end/typescript/intro/readme.md"]],["v-46489ecd","/zh/front-end/typescript/intro/what-is-typescript.html",{d:15948576e5,l:"2020年7月16日",c:"Web 前端",g:"TypeScript",e:`<p>首先,我对 TypeScript 的理解如下:</p>
148<p>[TypeScript][] 是 JavaScript 的一个超集,主要提供了<strong>类型系统</strong>和<strong>对 ES6 的支持</strong>,它由 Microsoft 开发,代码<a href="https://github.com/Microsoft/TypeScript" target="_blank" rel="noopener noreferrer">开源于 GitHub</a> 上。</p>
149<p>其次引用[官网][typescript]的定义:</p>
150<blockquote>
151<p>TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. Any browser. Any host. Any OS. Open source.</p>
152</blockquote>
153<p>翻译成中文即是:</p>
154<blockquote>
155<p>TypeScript 是 JavaScript 的类型的超集,它可以编译成纯 JavaScript。编译出来的 JavaScript 可以运行在任何浏览器上。TypeScript 编译工具可以运行在任何服务器和任何系统上。TypeScript 是开源的。</p>
156</blockquote>
157`,r:{minutes:2.14,words:641},y:"a",t:"什么是 TypeScript",i:"typescript"},["/zh/front-end/typescript/intro/what-is-typescript","/zh/front-end/typescript/intro/what-is-typescript.md"]],["v-57087d82","/zh/python/functional-programming/high-order-function/filter.html",{d:1591488e6,l:"2020年6月7日",c:"Python",g:"Python",e:"Python 内建的 filter() 函数用于过滤序列。 和 map() 类似,filter() 也接收一个函数和一个序列。和 map() 不同的是,filter() 把传入的函数依次作用于每个元素,然后根据返回值是 True 还是 False 决定保留还是丢弃该元素。 例如,在一个 list 中,删掉偶数,只保留奇数,可以这么写: 把一个序列中的空...",r:{minutes:2.6,words:779},y:"a",t:"filter"},["/zh/python/functional-programming/high-order-function/filter","/zh/python/functional-programming/high-order-function/filter.md"]],["v-0368ed62","/zh/python/functional-programming/high-order-function/intro.html",{d:1591488e6,l:"2020年6月7日",c:"Python",g:"Python",e:`<p>高阶函数英文叫 Higher-order function。什么是高阶函数?把函数作为参数传入,这样的函数称为高阶函数。</p>
158`,r:{minutes:2.4,words:721},y:"a",t:"介绍"},["/zh/python/functional-programming/high-order-function/intro","/zh/python/functional-programming/high-order-function/intro.md"]],["v-36e8ccaa","/zh/python/functional-programming/high-order-function/map-and-reduce.html",{d:1591488e6,l:"2020年6月7日",c:"Python",g:"Python",e:`<p>Python 内建了 <code>map()</code>和 <code>reduce()</code> 函数。</p>
159<p>如果您读过 Google 的那篇大名鼎鼎的论文 <a href="http://research.google.com/archive/mapreduce.html" target="_blank" rel="noopener noreferrer">
159“MapReduce: Simplified Data Processing on Large Clusters”</a>,您就能大概明白 map / reduce 的概念。</p>
160<blockquote>
161<p>访问需要科学上网。</p>
162</blockquote>
163`,r:{minutes:3.14,words:942},y:"a",t:"map / reduce"},["/zh/python/functional-programming/high-order-function/map-and-reduce","/zh/python/functional-programming/high-order-function/map-and-reduce.md"]],["v-1484fde2","/zh/python/functional-programming/high-order-function/",{d:1591488e6,l:"2020年6月7日",c:"Python",g:"Python",e:"目录 高阶函数介绍 (intro.md); map / reduce (map-and-reduce.md); filter (filter.md); sorted (sorted.md);",r:{minutes:.11,words:32},y:"a",t:"高阶函数"},["/zh/python/functional-programming/high-order-function/index.html","/zh/python/functional-programming/high-order-function/readme.md"]],["v-7f883d1a","/zh/python/functional-programming/high-order-function/sorted.html",{d:1591488e6,l:"2020年6月7日",c:"Python",g:"Python",e:"排序算法 排序也是在程序中经常用到的算法。无论使用冒泡排序还是快速排序,排序的核心是比较两个元素的大小。如果是数字,我们可以直接比较,但如果是字符串或者两个 dict 呢?直接比较数学上的大小是没有意义的,因此,比较的过程必须通过函数抽象出来。 Python 内置的 sorted() 函数就可以对 list 进行排序: 此外,sorted() 函数也是...",r:{minutes:2.08,words:623},y:"a",t:"sorted"},["/zh/python/functional-programming/high-order-function/sorted","/zh/python/functional-programming/high-order-function/sorted.md"]],["v-3706649a","/404.html",{y:"p",t:""},["/404"]],["v-9ea6722c","/en/about-me/",{y:"p",t:"About Me"}
163,["/en/about-me/index.html"]],["v-2d0a870d","/en/",{y:"p",t:"En"},["/en/index.html"]],["v-506407f4","/en/article/",{y:"p",t:"Article"},["/en/article/index.html"]],["v-5639b1a2","/zh/about-me/",{y:"p",t:"About Me"},["/zh/about-me/index.html"]],["v-54d7ff21","/zh/article/",{y:"p",t:"Article"},["/zh/article/index.html"]],["v-2bbfd41f","/zh/json/",{y:"p",t:"Json"},["/zh/json/index.html"]],["v-25d3ce10","/zh/markdown/",{y:"p",t:"Markdown"},["/zh/markdown/index.html"]],["v-2c8afe40","/zh/yaml/",{y:"p",t:"Yaml"},["/zh/yaml/index.html"]],["v-15c4e8af","/zh/back-end/apache/",{y:"p",t:"Apache"},["/zh/back-end/apache/index.html"]],["v-03f9ac71","/zh/back-end/express/",{y:"p",t:"Express"},["/zh/back-end/express/index.html"]],["v-37700207","/zh/back-end/nginx/",{y:"p",t:"Nginx"},["/zh/back-end/nginx/index.html"]],["v-e616a2ea","/zh/computer-basic/",{y:"p",t:"Computer Basic"},["/zh/computer-basic/index.html"]],["v-2706b03a","/zh/computer-basic/information-security/",{y:"p",t:"Information Security"},["/zh/computer-basic/information-security/index.html"]],["v-1f66a70f","/zh/front-end/ajax/",{y:"p",t:"Ajax"},["/zh/front-end/ajax/index.html"]],["v-e7689652","/zh/front-end/data-storage/",{y:"p",t:"Data Storage"},["/zh/front-end/data-storage/index.html"]],["v-9cc6ff24","/zh/front-end/html-css/",{y:"p",t:"Html Css"},["/zh/front-end/html-css/index.html"]],["v-db014718","/zh/front-end/in-depth/",{y:"p",t:"In Depth"},["/zh/front-end/in-depth/index.html"]],["v-2a0bb314","/zh/front-end/pre-css/",{y:"p",t:"Pre Css"},["/zh/front-end/pre-css/index.html"]],["v-1101d562","/zh/front-end/webpack/",{y:"p",t:"Webpack"},["/zh/front-end/webpack/index.html"]],["v-459e6c86","/zh/front-end/js-es/",{y:"p",t:"Js Es"},["/zh/front-end/js-es/index.html"]],["v-5bc93818","/category/",{y:"p",t:"Category"},["/category/index.html"]],["v-744d024e","/tag/",{y:"p",t:"Tag"},["/tag/index.html"]],["v-e52c881c","/article/",{y:"p",t:"Articles"},["/article/index.html"]],["v-154dc4c4","/star/",{y:"p",t:"Star"},["/star/index.html"]],["v-01560935","/timeline/",{y:"p",t:"Timeline"},["/timeline/index.html"]],["v-183c7211","/category/article/",{y:"p",t:"article Category"},["/category/article/index.html"]],["v-78ab366e","/tag/about-me/",{y:"p",t:"About Me Tag"},["/tag/about-me/index.html"]],["v-54d7ff21","/zh/article/",{y:"p",t:"文章"},["/zh/article/index.html"]],["v-2c3ee7f5","/zh/star/",{y:"p",t:"收藏"},["/zh/star/index.html"]],["v-27b02be6","/zh/timeline/",{y:"p",t:"时间轴"},["/zh/timeline/index.html"]],["v-fbb94a6e","/zh/category/",{y:"p",t:"分类"},["/zh/category/index.html"]],["v-0811c316","/tag/stack/",{y:"p",t:"Stack Tag"},["/tag/stack/index.html"]],["v-0711d614","/zh/category/web-development/",{y:"p",t:"Web Development 分类"},["/zh/category/web-development/index.html"]],["v-0ec4cde8","/tag/queue/",{y:"p",t:"Queue Tag"},["/tag/queue/index.html"]],["v-945adc0e","/zh/category/javascript/",{y:"p",t:"Javascript 分类"},["/zh/category/javascript/index.html"]],["v-b313a528","/tag/dfs/",{y:"p",t:"DFS Tag"},["/tag/dfs/index.html"]],["v-5dc1b699","/zh/category/react/",{y:"p",t:"React 分类"},["/zh/category/react/index.html"]],["v-b31576a4","/tag/bfs/",{y:"p",t:"BFS Tag"},["/tag/bfs/index.html"]],["v-040ee7aa","/zh/category/webpack/",{y:"p",t:"Webpack 分类"},["/zh/category/webpack/index.html"]],["v-313e0f22","/tag/graph/",{y:"p",t:"Graph Tag"},["/tag/graph/index.html"]],["v-8fb18e34","/zh/category/git/",{y:"p",t:"Git 分类"},["/zh/category/git/index.html"]],["v-6d9dfc4a","/tag/recursion/",{y:"p",t:"Recursion Tag"},["/tag/recursion/index.html"]],["v-4ceeab1e","/zh/category/json/",{y:"p",t:"JSON 分类"},["/zh/category/json/index.html"]],["v-2926fcc3","/tag/sort/",{y:"p",t:"Sort Tag"},["/tag/sort/index.html"]],["v-c6194f12","/zh/category/markdown/",{y:"p",t:"Markdown 分类"},["/zh/category/markdown/index.html"]],["v-540234fd","/zh/tag/",{y:"p",t:"标签"},["/zh/tag/index.html"]],["v-750779a9","/zh/category/%E8%AF%97%E9%9B%86/",{y:"p",t:"诗集 分类"},["/zh/category/诗集/","/zh/category/%E8%AF%97%E9%9B%86/index.html"]],["v-15e1c6fa","/zh/tag/about-me/",{y:"p",t:"About Me 标签"},["/zh/tag/about-me/index.html"]],["v-13d78bea","/zh/category/python/",{y:"p",t:"Python 分类"},["/zh/category/python/index.html"]],["v-b4d37618","/zh/tag/%E9%94%99%E8%AF%AF%E5%A4%84%E7%90%86%E6%A8%A1%E5%9E%8B/",{y:"p",t:"错误处理模型 标签"},["/zh/tag/错误处理模型/","/zh/tag/%E9%94%99%E8%AF%AF%E5%A4%84%E7%90%86%E6%A8%A1%E5%9E%8B/index.html"]],["v-1f8cf29b","/zh/category/vs-code/",{y:"p",t:"
163VS Code 分类"},["/zh/category/vs-code/index.html"]],["v-f7c5e176","/zh/tag/javascript/",{y:"p",t:"Javascript 标签"},["/zh/tag/javascript/index.html"]],["v-4db9d53f","/zh/category/yaml/",{y:"p",t:"YAML 分类"},["/zh/category/yaml/index.html"]],["v-25ccc894","/zh/tag/react-%E7%8A%B6%E6%80%81%E7%AE%A1%E7%90%86/",{y:"p",t:"React 状态管理 标签"},["/zh/tag/react-状态管理/","/zh/tag/react-%E7%8A%B6%E6%80%81%E7%AE%A1%E7%90%86/index.html"]],["v-076f9df0","/zh/category/%E6%9C%8D%E5%8A%A1%E5%99%A8/",{y:"p",t:"服务器 分类"},["/zh/category/服务器/","/zh/category/%E6%9C%8D%E5%8A%A1%E5%99%A8/index.html"]],["v-4f2c56da","/zh/tag/mobx/",{y:"p",t:"MobX 标签"},["/zh/tag/mobx/index.html"]],["v-cfd0904a","/zh/category/nodejs/",{y:"p",t:"Nodejs 分类"},["/zh/category/nodejs/index.html"]],["v-efed4b1a","/zh/tag/react-%E8%BF%9B%E9%98%B6/",{y:"p",t:"React 进阶 标签"},["/zh/tag/react-进阶/","/zh/tag/react-%E8%BF%9B%E9%98%B6/index.html"]],["v-7f76933a","/zh/category/web-%E5%90%8E%E5%8F%B0/",{y:"p",t:"Web 后台 分类"},["/zh/category/web-后台/","/zh/category/web-%E5%90%8E%E5%8F%B0/index.html"]],["v-1c2059e5","/zh/tag/webpack-%E7%83%AD%E6%9B%B4%E6%96%B0/",{y:"p",t:"Webpack 热更新 标签"},["/zh/tag/webpack-热更新/","/zh/tag/webpack-%E7%83%AD%E6%9B%B4%E6%96%B0/index.html"]],["v-04ba5822","/zh/category/%E8%AE%A1%E7%AE%97%E6%9C%BA%E5%9F%BA%E7%A1%80/",{y:"p",t:"计算机基础 分类"},["/zh/category/计算机基础/","/zh/category/%E8%AE%A1%E7%AE%97%E6%9C%BA%E5%9F%BA%E7%A1%80/index.html"]],["v-6de5d91a","/zh/tag/git/",{y:"p",t:"Git 标签"},["/zh/tag/git/index.html"]],["v-66231755","/zh/category/%E4%BF%A1%E6%81%AF%E5%AE%89%E5%85%A8%E7%90%86%E8%AE%BA%E4%B8%8E%E6%8A%80%E6%9C%AF/",{y:"p",t:"信息安全理论与技术 分类"},["/zh/category/信息安全理论与技术/","/zh/category/%E4%BF%A1%E6%81%AF%E5%AE%89%E5%85%A8%E7%90%86%E8%AE%BA%E4%B8%8E%E6%8A%80%E6%9C%AF/index.html"]],["v-4f04116a","/zh/tag/json/",{y:"p",t:"JSON 标签"},["/zh/tag/json/index.html"]],["v-53c32dc4","/zh/category/linux/",{y:"p",t:"Linux 分类"},["/zh/category/linux/index.html"]],["v-2e14b8c3","/zh/tag/markdown/",{y:"p",t:"Markdown 标签"},["/zh/tag/markdown/index.html"]],["v-352da056","/zh/category/windows/",{y:"p",t:"Windows 分类"},["/zh/category/windows/index.html"]],["v-70542a16","/zh/tag/%E8%AF%97%E9%9B%86/",{y:"p",t:"诗集 标签"},["/zh/tag/诗集/","/zh/tag/%E8%AF%97%E9%9B%86/index.html"]],["v-bd936f9c","/zh/category/web-%E5%89%8D%E7%AB%AF/",{y:"p",t:"Web 前端 分类"},["/zh/category/web-前端/","/zh/category/web-%E5%89%8D%E7%AB%AF/index.html"]],["v-33a6e194","/zh/tag/python/",{y:"p",t:"Python 标签"},["/zh/tag/python/index.html"]],["v-1c7201c3","/zh/category/github/",{y:"p",t:"GitHub 分类"},["/zh/category/github/index.html"]],["v-d04f4e62","/zh/tag/vs-code/",{y:"p",t:"VS Code 标签"},["/zh/tag/vs-code/index.html"]],["v-c5597124","/zh/category/%E9%9A%8F%E5%86%99/",{y:"p",t:"随写 分类"},["/zh/category/随写/","/zh/category/%E9%9A%8F%E5%86%99/index.html"]],["v-4fcf3b8b","/zh/tag/yaml/",{y:"p",t:"YAML 标签"},["/zh/tag/yaml/index.html"]],["v-87754df8","/zh/tag/apache/",{y:"p",t:"Apache 标签"},["/zh/tag/apache/index.html"]],["v-2d8746bc","/zh/tag/express/",{y:"p",t:"Express 标签"},["/zh/tag/express/index.html"]],["v-d0b499dc","/zh/tag/nginx/",{y:"p",t:"Nginx 标签"},["/zh/tag/nginx/index.html"]],["v-1b3342f2","/zh/tag/servlet/",{y:"p",t:"Servlet 标签"},["/zh/tag/servlet/index.html"]],["v-6de8c212","/zh/tag/mvc/",{y:"p",t:"MVC 标签"},["/zh/tag/mvc/index.html"]],["v-6de75b45","/zh/tag/jsp/",{y:"p",t:"JSP 标签"},["/zh/tag/jsp/index.html"]],["v-4efd0db7","/zh/tag/jdbc/",{y:"p",t:"JDBC 标签"},["/zh/tag/jdbc/index.html"]],["v-237b7756","/zh/tag/%E8%AE%A1%E7%AE%97%E6%9C%BA%E5%9F%BA%E7%A1%80/",{y:"p",t:"计算机基础 标签"},["/zh/tag/计算机基础/","/zh/tag/%E8%AE%A1%E7%AE%97%E6%9C%BA%E5%9F%BA%E7%A1%80/index.html"]],["v-6c95fcb4","/zh/tag/%E6%96%87%E4%BB%B6%E7%BC%96%E7%A0%81/",{y:"p",t:"文件编码 标签"},["/zh/tag/文件编码/","/zh/tag/%E6%96%87%E4%BB%B6%E7%BC%96%E7%A0%81/index.html"]],["v-0fc92e40","/zh/tag/%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F/",{y:"p",t:"操作系统 标签"},["/zh/tag/操作系统/","/zh/tag/%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F/index.html"]],["v-4917ac89","/zh/tag/%E4%BF%A1%E6%81%AF%E5%AE%89%E5%85%A8%E7%90%86%E8%AE%BA%E4%B8%8E%E6%8A%80%E6%9C%AF/",{y:"p",t:"信息安全理论与技术 标签"},["/zh/tag/信息安全理论与技术/","/zh/tag/%E4%BF%A1%E6%81%AF%E5%AE%89%E5%85%A8%E7%90%86%E8%AE%BA%E4%B8%8E%E6%8A%80%E6%9C%AF/index.html"]],["v-d74ade10","/zh/tag/l
163inux/",{y:"p",t:"Linux 标签"},["/zh/tag/linux/index.html"]],["v-5db49609","/zh/tag/windows/",{y:"p",t:"Windows 标签"},["/zh/tag/windows/index.html"]],["v-6e8a5b47","/zh/tag/js-%E8%BF%9B%E9%98%B6%E6%95%99%E7%A8%8B/",{y:"p",t:"JS 进阶教程 标签"},["/zh/tag/js-进阶教程/","/zh/tag/js-%E8%BF%9B%E9%98%B6%E6%95%99%E7%A8%8B/index.html"]],["v-4e80f332","/zh/tag/ajax/",{y:"p",t:"Ajax 标签"},["/zh/tag/ajax/index.html"]],["v-2525e6ae","/zh/tag/cookie/",{y:"p",t:"Cookie 标签"},["/zh/tag/cookie/index.html"]],["v-112bdfa2","/zh/tag/localstorage/",{y:"p",t:"localStorage 标签"},["/zh/tag/localstorage/index.html"]],["v-b9d1a9e6","/zh/tag/sessionstorage/",{y:"p",t:"SessionStorage 标签"},["/zh/tag/sessionstorage/index.html"]],["v-a309f194","/zh/tag/%E6%B5%8F%E8%A7%88%E5%99%A8%E7%9A%84%E6%9C%AC%E5%9C%B0%E5%AD%98%E5%82%A8/",{y:"p",t:"浏览器的本地存储 标签"},["/zh/tag/浏览器的本地存储/","/zh/tag/%E6%B5%8F%E8%A7%88%E5%99%A8%E7%9A%84%E6%9C%AC%E5%9C%B0%E5%AD%98%E5%82%A8/index.html"]],["v-6de491aa","/zh/tag/dom/",{y:"p",t:"DOM 标签"},["/zh/tag/dom/index.html"]],["v-6de3a8ec","/zh/tag/bom/",{y:"p",t:"BOM 标签"},["/zh/tag/bom/index.html"]],["v-d9b2d20e","/zh/tag/html-%E8%BF%9B%E9%98%B6/",{y:"p",t:"HTML 进阶 标签"},["/zh/tag/html-进阶/","/zh/tag/html-%E8%BF%9B%E9%98%B6/index.html"]],["v-6deb7cc8","/zh/tag/svg/",{y:"p",t:"SVG 标签"},["/zh/tag/svg/index.html"]],["v-0d38da3a","/zh/tag/canvas/",{y:"p",t:"Canvas 标签"},["/zh/tag/canvas/index.html"]],["v-721c9cfe","/zh/tag/%E5%B8%83%E5%B1%80%E9%80%82%E9%85%8D/",{y:"p",t:"布局适配 标签"},["/zh/tag/布局适配/","/zh/tag/%E5%B8%83%E5%B1%80%E9%80%82%E9%85%8D/index.html"]],["v-6de42d09","/zh/tag/css/",{y:"p",t:"CSS 标签"},["/zh/tag/css/index.html"]],["v-4ee84f07","/zh/tag/html/",{y:"p",t:"HTML 标签"},["/zh/tag/html/index.html"]],["v-d4e2c596","/zh/tag/%E6%B5%8F%E8%A7%88%E5%99%A8%E6%B8%B2%E6%9F%93%E5%8E%9F%E7%90%86/",{y:"p",t:"浏览器渲染原理 标签"},["/zh/tag/浏览器渲染原理/","/zh/tag/%E6%B5%8F%E8%A7%88%E5%99%A8%E6%B8%B2%E6%9F%93%E5%8E%9F%E7%90%86/index.html"]],["v-c2a0515c","/zh/tag/%E6%80%A7%E8%83%BD%E4%BC%98%E5%8C%96/",{y:"p",t:"性能优化 标签"},["/zh/tag/性能优化/","/zh/tag/%E6%80%A7%E8%83%BD%E4%BC%98%E5%8C%96/index.html"]],["v-63cfafce","/zh/tag/%E5%87%BD%E6%95%B0%E9%98%B2%E6%8A%96%E4%B8%8E%E5%87%BD%E6%95%B0%E8%8A%82%E6%B5%81/",{y:"p",t:"函数防抖与函数节流 标签"},["/zh/tag/函数防抖与函数节流/","/zh/tag/%E5%87%BD%E6%95%B0%E9%98%B2%E6%8A%96%E4%B8%8E%E5%87%BD%E6%95%B0%E8%8A%82%E6%B5%81/index.html"]],["v-3c3bcf72","/zh/tag/%E6%B5%8F%E8%A7%88%E5%99%A8%E7%BC%93%E5%AD%98%E6%9C%BA%E5%88%B6/",{y:"p",t:"浏览器缓存机制 标签"},["/zh/tag/浏览器缓存机制/","/zh/tag/%E6%B5%8F%E8%A7%88%E5%99%A8%E7%BC%93%E5%AD%98%E6%9C%BA%E5%88%B6/index.html"]],["v-331dcb6a","/zh/tag/css%E4%B8%8Ejs%E9%98%BB%E5%A1%9E/",{y:"p",t:"css与js阻塞 标签"},["/zh/tag/css与js阻塞/","/zh/tag/css%E4%B8%8Ejs%E9%98%BB%E5%A1%9E/index.html"]],["v-570dc926","/zh/tag/%E9%87%8D%E7%BB%98%E9%87%8D%E6%8E%92/",{y:"p",t:"重绘重排 标签"},["/zh/tag/重绘重排/","/zh/tag/%E9%87%8D%E7%BB%98%E9%87%8D%E6%8E%92/index.html"]],["v-501c9b1e","/zh/tag/http_https/",{y:"p",t:"Http&Https 标签"},["/zh/tag/http_https/index.html"]],["v-151988ea","/zh/tag/interview/",{y:"p",t:"interview 标签"},["/zh/tag/interview/index.html"]],["v-c9a5a498","/zh/tag/jquery/",{y:"p",t:"jQuery 标签"},["/zh/tag/jquery/index.html"]],["v-212c4784","/zh/tag/bootstrap/",{y:"p",t:"Bootstrap 标签"},["/zh/tag/bootstrap/index.html"]],["v-4f19f2d9","/zh/tag/less/",{y:"p",t:"Less 标签"},["/zh/tag/less/index.html"]],["v-4f7baea2","/zh/tag/scss/",{y:"p",t:"Scss 标签"},["/zh/tag/scss/index.html"]],["v-4f7ac5e4","/zh/tag/sass/",{y:"p",t:"Sass 标签"},["/zh/tag/sass/index.html"]],["v-61d8bf2d","/zh/tag/typescript/",{y:"p",t:"TypeScript 标签"},["/zh/tag/typescript/index.html"]],["v-230c5d84","/zh/tag/%E8%99%9A%E6%8B%9F-dom/",{y:"p",t:"虚拟 DOM 标签"},["/zh/tag/虚拟-dom/","/zh/tag/%E8%99%9A%E6%8B%9F-dom/index.html"]],["v-5efba9b4","/zh/tag/diff-%E7%AE%97%E6%B3%95/",{y:"p",t:"Diff 算法 标签"},["/zh/tag/diff-算法/","/zh/tag/diff-%E7%AE%97%E6%B3%95/index.html"]],["v-6decd5e6","/zh/tag/vue/",{y:"p",t:"
163Vue 标签"},["/zh/tag/vue/index.html"]],["v-4f2fcf32","/zh/tag/mvvm/",{y:"p",t:"MVVM 标签"},["/zh/tag/mvvm/index.html"]],["v-4fadefe0","/zh/tag/vuex/",{y:"p",t:"Vuex 标签"},["/zh/tag/vuex/index.html"]],["v-fbe658bc","/zh/tag/vue-router/",{y:"p",t:"Vue-router 标签"},["/zh/tag/vue-router/index.html"]],["v-2fec218a","/zh/tag/vue-%E6%BA%90%E7%A0%81%E5%88%86%E6%9E%90/",{y:"p",t:"Vue 源码分析 标签"},["/zh/tag/vue-源码分析/","/zh/tag/vue-%E6%BA%90%E7%A0%81%E5%88%86%E6%9E%90/index.html"]],["v-7643f25f","/zh/tag/webpack/",{y:"p",t:"Webpack 标签"},["/zh/tag/webpack/index.html"]],["v-2271f5e2","/zh/tag/github/",{y:"p",t:"GitHub 标签"},["/zh/tag/github/index.html"]],["v-1fbc8e8c","/zh/tag/%E9%9A%8F%E5%86%99/",{y:"p",t:"随写 标签"},["/zh/tag/随写/","/zh/tag/%E9%9A%8F%E5%86%99/index.html"]],["v-04b75fa2","/zh/tag/ecma-script6/",{y:"p",t:"ECMA Script6 标签"},["/zh/tag/ecma-script6/index.html"]],["v-0712c26e","/zh/tag/promise-%E5%AF%B9%E8%B1%A1/",{y:"p",t:"Promise 对象 标签"},["/zh/tag/promise-对象/","/zh/tag/promise-%E5%AF%B9%E8%B1%A1/index.html"]],["v-65f2ede2","/zh/tag/js-%E5%BC%82%E6%AD%A5/",{y:"p",t:"JS 异步 标签"},["/zh/tag/js-异步/","/zh/tag/js-%E5%BC%82%E6%AD%A5/index.html"]],["v-0b0da0a9","/zh/tag/async-%E4%B8%8E-await/",{y:"p",t:"async 与 await 标签"},["/zh/tag/async-与-await/","/zh/tag/async-%E4%B8%8E-await/index.html"]]];var Hs=k({name:"Vuepress",setup(){const e=iv();return()=>l(e.value)}}),Um=()=>qm.reduce((e,[t,n,r,o])=>(e.push({name:t,path:n,component:Hs,meta:r},...o.map(i=>({path:i,redirect:n}))),e),[{name:"404",path:"/:catchAll(.*)",component:Hs}]),Km=Y2,Qm=()=>
163{const e=Ap({history:Km(Ga("/")),routes:Um(),scrollBehavior:(t,n,r)=>r||(t.hash?{el:t.hash}:{top:0})});return e.beforeResolve(async(t,n)=>{var r;(t.path!==n.path||n===Vt)&&([Jt.value]=await Promise.all([It.resolvePageData(t.name),(r=Kl[t.name])==null?void 0:r.__asyncLoader()]))}),e},Xm=e=>{e.component("ClientOnly",ho),e.component("Content",Ka)},Ym=(e,t,n)=>{const r=J(t.currentRoute.value.path);se(()=>t.currentRoute.value.path,h=>r.value=h);const o=T(()=>It.resolveLayouts(n)),i=T(()=>It.resolveRouteLocale(bn.value.locales,r.value)),s=T(()=>It.resolveSiteLocaleData(bn.value,i.value)),c=T(()=>It.resolvePageFrontmatter(Jt.value)),d=T(()=>It.resolvePageHeadTitle(Jt.value,s.value)),u=T(()=>It.resolvePageHead(d.value,c.value,s.value)),v=T(()=>It.resolvePageLang(Jt.value)),f=T(()=>It.resolvePageLayout(Jt.value,o.value));return e.provide(nv,o),e.provide(Xl,c),e.provide(av,d),e.provide(Yl,u),e.provide(Zl,v),e.provide(ec,f),e.provide(Ua,i),e.provide(nc,s),Object.defineProperties(e.config.globalProperties,{$frontmatter:{get:()=>c.value},$head:{get:()=>u.value},$headTitle:{get:()=>d.value},$lang:{get:()=>v.value},$page:{get:()=>Jt.value},$routeLocale:{get:()=>i.value},$site:{get:()=>bn.value},$siteLocale:{get:()=>s.value},$withBase:{get:()=>Pe}}),{layouts:o,pageData:Jt,pageFrontmatter:c,pageHead:u,pageHeadTitle:d,pageLang:v,pageLayout:f,routeLocale:i,siteData:bn,siteLocaleData:s}},Zm=()=>{const e=ov(),t=qa(),n=J([]),r=()=>{e.value.forEach(i=>{const s=e6(i);s&&n.value.push(s)})},o=()=>{document.documentElement.lang=t.value,n.value.forEach(i=>{i.parentNode===document.head&&document.head.removeChild(i)}),n.value.splice(0,n.value.length),e.value.forEach(i=>{const s=t6(i);s!==null&&(document.head.appendChild(s),n.value.push(s))})};bt(sv,o),_e(()=>{r(),o(),se(()=>e.value,()=>o())})},e6=([e,t,n=""])=>{const r=Object.entries(t).map(([c,d])=>qe(d)?`[${c}=${JSON.stringify(d)}]`:d===!0?`[${c}]`:"").join(""),o=`head > ${e}${r}`;return Array.from(document.querySelectorAll(o)).find(c=>c.innerText===n)||null},t6=([e,t,n])=>{if(!qe(e))return null;const r=document.createElement(e);return fo(t)&&Object.entries(t).forEach(([o,i])=>{qe(i)?r.setAttribute(o,i):i===!0&&r.setAttribute(o,"")}),qe(n)&&r.appendChild(document.createTextNode(n)),r},n6=J1,r6=async()=>{var n;const e=n6({name:"VuepressApp",setup(){var r;Zm();for(const o of Ur)(r=o.setup)==null||r.call(o);return()=>[l(Nc),...Ur.flatMap(({rootComponents:o=[]})=>o.map(i=>l(i)))]}}),t=Qm();Xm(e),Ym(e,t,Ur);for(const r of Ur)await((n=r.enhance)==null?void 0:n.call(r,{app:e,router:t,siteData:bn}));return e.use(t),{app:e,router:t}};r6().then(({app:e,router:t})=>{t.isReady().then(()=>{e.mount("#app")})});export{a as _,kl as a,Cl as b,a6 as c,r6 as createVueApp,we as d,s6 as e,i6 as f,Zu as o,tt as r,o6 as t,fu as w};

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