0?$e--:$e=st.value.length-1,Be($e,st.value[$e])}function oe(pt){const bt=Ie.options.barPopDirection??"bl";let Mt=0,Et=0;return bt.startsWith("b")?Et=d(pt)+pt.offsetHeight:bt.startsWith("t")?Et=d(pt):Et=d(pt)+pt.offsetHeight/2,bt.endsWith("l")?Mt=c(pt):bt.startsWith("r")?Mt=c(pt)+pt.offsetWidth:Mt=c(pt)+pt.offsetWidth/2,{x:Mt,y:Et}}function Be(pt,bt){var Mt;if($e=pt,!bt.children)return;ce&&(ce.closeMenu(),ce=null,at.value=!0),ke.value=bt;const Et=(Mt=Ye.value)==null?void 0:Mt.children[pt];if(Et){const{x:kn,y:Jt}=oe(Et);ce=Re.showContextMenu({...Ie.options,items:bt.children,x:kn,y:Jt,onKeyFocusMoveLeft(){Te()},onKeyFocusMoveRight(){Q()},onClose(){ke.value==bt&&(at.value=!1,ke.value=null)}})}}function Ze(){$e=0;const pt=Ye.value;if(pt){const{x:bt,y:Mt}=oe(pt);ce=Re.showContextMenu({...Ie.options,x:bt,y:Mt})}}function et(pt,bt){bt?(at.value=!0,Be(pt,bt),bt.onClick&&(bt.clickableWhenHasChildren===!0&&bt.children&&bt.children.length>0||!bt.children||bt.children.length===0)&&bt.onClick()):Ze()}function it(pt,bt){at.value&&Be(pt,bt)}return(pt,bt)=>(o.openBlock(),o.createElementBlock("div",{class:o.normalizeClass(["mx-menu-bar",ue.options.theme??"",ue.options.mini?"mini":""]),onFocus:Oe,onBlur:Me},[o.renderSlot(pt.$slots,"prefix"),ue.options.mini?(o.openBlock(),o.createElementBlock("div",{key:0,ref_key:"menuBarContent",ref:Ye,class:"mx-menu-bar-content"},[o.createElementVNode("div",{class:"mx-menu-bar-item",onClick:bt[0]||(bt[0]=Mt=>et(0,null))},[o.createVNode(He)])],512)):(o.openBlock(),o.createElementBlock("div",{key:1,ref_key:"menuBarContent",ref:Ye,class:"mx-menu-bar-content"},[(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(st.value,(Mt,Et)=>(o.openBlock(),o.createElementBlock("div",{key:Et,class:o.normalizeClass(["mx-menu-bar-item",Mt==ke.value?"active":""]),onClick:kn=>et(Et,Mt),onMouseenter:kn=>it(Et,Mt)},o.toDisplayString(Mt.label),43,Ke))),128))],512)),o.renderSlot(pt.$slots,"suffix")],34))}});n.ContextMenu=se,n.ContextMenuGroup=Y,n.ContextMenuItem=z,n.ContextMenuSeparator=re,n.MenuBar=ot,n.default=Re,Object.defineProperties(n,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})})})(Q2,Q2.exports);var ci=Q2.exports;const u_e={class:"qrcode"},c_e={__name:"RightMenu",props:["show","x","y","link"],setup(e){const t=e,n=Ma(),o=W(!1),r=W(!1),l=A(()=>({zIndex:10,minWidth:180,x:t.x,y:t.y})),a=()=>{let u=t.link.url;navigator.clipboard.writeText(u).then(function(){vn({message:"链接已复制!",type:"success"})},function(){vn({message:"链接复制失败!",type:"error"})})},s=u=>{var d=t.link.url;u==="url"?d=t.link.url:u==="standby"&&(d=t.link.url_standby),window.open(d)},i=()=>{const u=t.link.fid,d=t.link.id;var c=t.link.title;eP.confirm(`您将删除【${c}】,此操作将无法恢复,是否继续?`,"确认删除?",{confirmButtonText:"确认",cancelButtonText:"取消",type:"warning",icon:Qa(UM)}).then(()=>{Qn.post("/index.php?c=api&method=del_link",ts({id:t.link.id})).then(v=>{let m=v.data;m.code===0?vn({type:"success",message:"删除成功!"}):vn({type:"error",message:m.err_msg}),n.limitedLinks[u]=n.limitedLinks[u].filter(g=>g.id!==d),n.allLinks[u]=n.allLinks[u].filter(g=>g.id!==d)})}).catch(()=>{vn({type:"error",message:"删除时出现错误!"})})};return(u,d)=>{const c=df,h=UP;return P(),G(tt,null,[U(f(ci.ContextMenu),{show:f(n).contextMenuVisible,"onUpdate:show":d[4]||(d[4]=v=>f(n).contextMenuVisible=v),options:l.value},{default:X(()=>[U(f(ci.ContextMenuItem),{label:"打开链接",onClick:d[0]||(d[0]=v=>s("url"))}),t.link.url_standby!=""&&t.link.url_standby!==null?(P(),we(f(ci.ContextMenuItem),{key:0,label:"打开备用链接",onClick:d[1]||(d[1]=v=>s("standby"))})):me("",!0),U(f(ci.ContextMenuItem),{label:"复制链接",onClick:a}),U(f(ci.ContextMenuItem),{label:"显示二维码",onClick:d[2]||(d[2]=v=>o.value=!0)}),f(n).isLogin?(P(),G(tt,{key:1},[U(f(ci.ContextMenuSeparator)),U(f(ci.ContextMenuItem),{label:"编辑",onClick:d[3]||(d[3]=v=>r.value=!0)}),U(f(ci.ContextMenuItem),{label:"删除",onClick:i})],64)):me("",!0)]),_:1},8,["show","options"]),U(c,{"lock-scroll":!1,top:f(n).dialogTop,width:240,center:"",modelValue:o.value,"onUpdate:modelValue":d[5]||(d[5]=v=>o.value=v),"destroy-on-close":!0,title:"扫码访问"},{default:X(()=>[j("div",u_e,[U(f(i_e),{width:200,height:200,value:t.link.url,dotsOptions:{color:"#000000",type:"square"}},null,8,["value"])])]),_:1},8,["top","modelValue"]),U(bd,{"lock-scroll":!1,top:f(n).dialogTop,width:f(n).dialogWidth,modal:"","destroy-on-close":!0,modelValue:r.value,"onUpdate:modelValue":d[7]||(d[7]=v=>r.value=v),title:"编辑链接"},{default:X(()=>[U(h,{addLinkVisible:r.value,"onUpdate:addLinkVisible":d[6]||(d[6]=v=>r.value=v),id:t.link.id},null,8,["addLinkVisible","id"])]),_:1},8,["top","width","modelValue"])],64)}}},d_e=Cr(c_e,[["__scopeId","data-v-a900efb8"]]),f_e=lP("search",{state:()=>({engines:[{name:"百度",url:"https://www.baidu.com/s?wd=",key:"baidu"},{name:"Google",url:"https://www.google.com/search?q=",key:"google"},{name:"Bing",url:"https://cn.bing.com/search?q=",key:"bing"},{name:"搜狗",url:"https://www.sogou.com/web?query=",key:"sogou"},{name:"360",url:"https://www.so.com/s?q=",key:"so"},{name:"知乎",url:"https://www.zhihu.com/search?q=",key:"zhihu"},{name:"Github",url:"https://github.com/search?type=repositories&q=",key:"github"}],currentEngine:"baidu"}),actions:{changeEngine(e){localStorage.setItem("searchEngine",this.currentEngine)},changeDefaultEngine(){let e=localStorage.getItem("searchEngine");e&&(this.currentEngine=e)}}});function p_e(e){return vh()?(gh(e),!0):!1}const j1=new WeakMap,h_e=(...e)=>{var t;const n=e[0],o=(t=$t())==null?void 0:t.proxy;if(o==null&&!S0())throw new Error("injectLocal must be called in setup");return o&&j1.has(o)&&n in j1.get(o)?j1.get(o)[n]:Je(...e)},v_e=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const g_e=Object.prototype.toString,m_e=e=>g_e.call(e)==="[object Object]",y_e=()=>{};function UN(...e){if(e.length!==1)return sn(...e);const t=e[0];return typeof t=="function"?zs(v0(()=>({get:t,set:y_e}))):W(t)}function b_e(e,t){function n(...o){return new Promise((r,l)=>{Promise.resolve(e(()=>t.apply(this,o),{fn:t,thisArg:this,args:o})).then(r).catch(l)})}return n}const GN=e=>e();function w_e(e=GN,t={}){const{initialState:n="active"}=t,o=UN(n==="active");function r(){o.value=!1}function l(){o.value=!0}const a=(...s)=>{o.value&&e(...s)};return{isActive:zs(o),pause:r,resume:l,eventFilter:a}}function YO(e){return e.endsWith("rem")?Number.parseFloat(e)*16:Number.parseFloat(e)}function U1(e){return Array.isArray(e)?e:[e]}function S_e(e){return $t()}function C_e(e,t,n={}){const{eventFilter:o=GN,...r}=n;return Pe(e,b_e(o,t),r)}function __e(e,t,n={}){const{eventFilter:o,initialState:r="active",...l}=n,{eventFilter:a,pause:s,resume:i,isActive:u}=w_e(o,{initialState:r});return{stop:C_e(e,t,{...l,eventFilter:a}),pause:s,resume:i,isActive:u}}function YN(e,t=!0,n){S_e()?kt(e,n):t?e():dt(e)}function k_e(e=!1,t={}){const{truthyValue:n=!0,falsyValue:o=!1}=t,r=wn(e),l=gn(e);function a(s){if(arguments.length)return l.value=s,l.value;{const i=El(n);return l.value=l.value===i?El(o):i,l.value}}return r?a:[l,a]}function E_e(e,t,n){return Pe(e,t,{...n,immediate:!0})}const ph=v_e?window:void 0;function qN(e){var t;const n=El(e);return(t=n==null?void 0:n.$el)!=null?t:n}function eS(...e){const t=[],n=()=>{t.forEach(s=>s()),t.length=0},o=(s,i,u,d)=>(s.addEventListener(i,u,d),()=>s.removeEventListener(i,u,d)),r=A(()=>{const s=U1(El(e[0])).filter(i=>i!=null);return s.every(i=>typeof i!="string")?s:void 0}),l=E_e(()=>{var s,i;return[(i=(s=r.value)==null?void 0:s.map(u=>qN(u)))!=null?i:[ph].filter(u=>u!=null),U1(El(r.value?e[1]:e[0])),U1(f(r.value?e[2]:e[1])),El(r.value?e[3]:e[2])]},([s,i,u,d])=>{if(n(),!(s!=null&&s.length)||!(i!=null&&i.length)||!(u!=null&&u.length))return;const c=m_e(d)?{...d}:d;t.push(...s.flatMap(h=>i.flatMap(v=>u.map(m=>o(h,v,m,c)))))},{flush:"post"}),a=()=>{l(),n()};return p_e(n),a}function x_e(){const e=gn(!1),t=$t();return t&&kt(()=>{e.value=!0},t),e}function T_e(e){const t=x_e();return A(()=>(t.value,!!e()))}const O_e=Symbol("vueuse-ssr-width");function I_e(){const e=S0()?h_e(O_e,null):null;return typeof e=="number"?e:void 0}function $_e(e,t={}){const{window:n=ph,ssrWidth:o=I_e()}=t,r=T_e(()=>n&&"matchMedia"in n&&typeof n.matchMedia=="function"),l=gn(typeof o=="number"),a=gn(),s=gn(!1),i=u=>{s.value=u.matches};return qo(()=>{if(l.value){l.value=!r.value;const u=El(e).split(",");s.value=u.some(d=>{const c=d.includes("not all"),h=d.match(/\(\s*min-width:\s*(-?\d+(?:\.\d*)?[a-z]+\s*)\)/),v=d.match(/\(\s*max-width:\s*(-?\d+(?:\.\d*)?[a-z]+\s*)\)/);let m=!!(h||v);return h&&m&&(m=o>=YO(h[1])),v&&m&&(m=o<=YO(v[1])),c?!m:m});return}r.value&&(a.value=n.matchMedia(El(e)),s.value=a.value.matches)}),eS(a,"change",i,{passive:!0}),A(()=>s.value)}const _g=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},kg="__vueuse_ssr_handlers__",M_e=R_e();function R_e(){return kg in _g||(_g[kg]=_g[kg]||{}),_g[kg]}function XN(e,t){return M_e[e]||t}function A_e(e){return $_e("(prefers-color-scheme: dark)",e)}function P_e(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 N_e={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()}},qO="vueuse-storage";function L_e(e,t,n,o={}){var r;const{flush:l="pre",deep:a=!0,listenToStorageChanges:s=!0,writeDefaults:i=!0,mergeDefaults:u=!1,shallow:d,window:c=ph,eventFilter:h,onError:v=V=>{console.error(V)},initOnMounted:m}=o,g=(d?gn:W)(typeof t=="function"?t():t),w=A(()=>El(e));if(!n)try{n=XN("getDefaultStorage",()=>{var V;return(V=ph)==null?void 0:V.localStorage})()}catch(V){v(V)}if(!n)return g;const b=El(t),E=P_e(b),S=(r=o.serializer)!=null?r:N_e[E],{pause:C,resume:_}=__e(g,()=>M(g.value),{flush:l,deep:a,eventFilter:h});Pe(w,()=>$(),{flush:l});let k=!1;const O=V=>{m&&!k||$(V)},I=V=>{m&&!k||L(V)};c&&s&&(n instanceof Storage?eS(c,"storage",O,{passive:!0}):eS(c,qO,I)),m?YN(()=>{k=!0,$()}):$();function T(V,D){if(c){const N={key:w.value,oldValue:V,newValue:D,storageArea:n};c.dispatchEvent(n instanceof Storage?new StorageEvent("storage",N):new CustomEvent(qO,{detail:N}))}}function M(V){try{const D=n.getItem(w.value);if(V==null)T(D,null),n.removeItem(w.value);else{const N=S.write(V);D!==N&&(n.setItem(w.value,N),T(D,N))}}catch(D){v(D)}}function R(V){const D=V?V.newValue:n.getItem(w.value);if(D==null)return i&&b!=null&&n.setItem(w.value,S.write(b)),b;if(!V&&u){const N=S.read(D);return typeof u=="function"?u(N,b):E==="object"&&!Array.isArray(N)?{...b,...N}:N}else return typeof D!="string"?D:S.read(D)}function $(V){if(!(V&&V.storageArea!==n)){if(V&&V.key==null){g.value=b;return}if(!(V&&V.key!==w.value)){C();try{(V==null?void 0:V.newValue)!==S.write(g.value)&&(g.value=R(V))}catch(D){v(D)}finally{V?dt(_):_()}}}}function L(V){$(V.detail)}return g}const D_e="*,*::before,*::after{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}";function B_e(e={}){const{selector:t="html",attribute:n="class",initialValue:o="auto",window:r=ph,storage:l,storageKey:a="vueuse-color-scheme",listenToStorageChanges:s=!0,storageRef:i,emitAuto:u,disableTransition:d=!0}=e,c={auto:"",light:"light",dark:"dark",...e.modes||{}},h=A_e({window:r}),v=A(()=>h.value?"dark":"light"),m=i||(a==null?UN(o):L_e(a,o,l,{window:r,listenToStorageChanges:s})),g=A(()=>m.value==="auto"?v.value:m.value),w=XN("updateHTMLAttrs",(C,_,k)=>{const O=typeof C=="string"?r==null?void 0:r.document.querySelector(C):qN(C);if(!O)return;const I=new Set,T=new Set;let M=null;if(_==="class"){const $=k.split(/\s/g);Object.values(c).flatMap(L=>(L||"").split(/\s/g)).filter(Boolean).forEach(L=>{$.includes(L)?I.add(L):T.add(L)})}else M={key:_,value:k};if(I.size===0&&T.size===0&&M===null)return;let R;d&&(R=r.document.createElement("style"),R.appendChild(document.createTextNode(D_e)),r.document.head.appendChild(R));for(const $ of I)O.classList.add($);for(const $ of T)O.classList.remove($);M&&O.setAttribute(M.key,M.value),d&&(r.getComputedStyle(R).opacity,document.head.removeChild(R))});function b(C){var _;w(t,n,(_=c[C])!=null?_:C)}function E(C){e.onChanged?e.onChanged(C,b):b(C)}Pe(g,E,{flush:"post",immediate:!0}),YN(()=>E(g.value));const S=A({get(){return u?m.value:g.value},set(C){m.value=C}});return Object.assign(S,{store:m,system:v,state:g})}function F_e(e={}){const{valueDark:t="dark",valueLight:n=""}=e,o=B_e({...e,onChanged:(a,s)=>{var i;e.onChanged?(i=e.onChanged)==null||i.call(e,a==="dark",s,a):s(a)},modes:{dark:t,light:n}}),r=A(()=>o.system.value);return A({get(){return o.value==="dark"},set(a){const s=a?"dark":"light";r.value===s?o.value="auto":o.value=s}})}const V_e={class:"float-btn"},H_e={class:"btns"},z_e={class:"item"},W_e={class:"dialog-footer"},K_e={__name:"FloatBtn",setup(e){const t=Ma(),n=W(!1),o=W(!1),r=W({username:"",password:""}),l=F_e(),a=k_e(l),s=A(()=>l.value?fZ:MX),i=W(!1),u=()=>{i.value=window.scrollY>500},d=()=>{window.scrollTo({top:0,behavior:"smooth"})},c=()=>{o.value=!0},h=()=>{n.value=!0},v=()=>{sessionStorage.removeItem("categorys"),t.categorys=[],t.getCategorys(),vn({message:"分类已刷新!",type:"success"})},m=()=>{let w="/index.php?c=login&check=login";const b=new FormData;b.append("user",r.value.username),b.append("password",r.value.password),Qn.post(w,b).then(E=>{let S=E.data;S.code===0?(Au({title:"Success",message:"登录成功!",type:"success"}),t.isLogin=!0,o.value=!1,sessionStorage.removeItem("subscribe"),t.getSubscribeStatus(),sessionStorage.removeItem("categorys"),t.getCategorys().then(()=>{t.getLinks()})):Au({title:"Error",message:S.err_msg,type:"error"})})},g=()=>{Qn.get("/index.php?c=admin&page=logout").then(b=>{b.status===200&&(t.isLogin=!1,Au({title:"Success",message:"您已退出!",type:"success"}),sessionStorage.removeItem("categorys"),t.getCategorys().then(()=>{t.getLinks()}))}).catch(b=>{console.log(b),Au({title:"Error",message:"退出失败!",type:"error"})})};return kt(()=>{window.addEventListener("scroll",u)}),Ll(()=>{window.removeEventListener("scroll",u)}),(w,b)=>{const E=lt,S=Lo,C=co,_=eu,k=Qi,O=Un;return P(),G("div",V_e,[j("div",H_e,[f(t).isLogin?(P(),G(tt,{key:0},[U(S,{class:"box-item",effect:"light",content:"添加分类",placement:"left"},{default:X(()=>[j("div",{class:"item",onClick:h},[U(E,null,{default:X(()=>[U(f(P0))]),_:1})])]),_:1}),U(S,{class:"box-item",effect:"light",content:"刷新分类",placement:"left"},{default:X(()=>[j("div",{class:"item",onClick:v},[U(E,null,{default:X(()=>[U(f(ZX))]),_:1})])]),_:1})],64)):me("",!0),f(t).isLogin?(P(),we(S,{key:2,class:"box-item",effect:"light",content:"退出登录",placement:"left"},{default:X(()=>[j("div",{class:"item",onClick:g},[U(E,null,{default:X(()=>[U(f(hZ))]),_:1})])]),_:1})):(P(),we(S,{key:1,class:"box-item",effect:"light",content:"管理员登录",placement:"left"},{default:X(()=>[j("div",{class:"item",onClick:c},[U(E,null,{default:X(()=>[U(f(kw))]),_:1})])]),_:1})),U(S,{class:"box-item",effect:"light",content:"模式切换",placement:"left"},{default:X(()=>[j("div",z_e,[U(E,null,{default:X(()=>[(P(),we(Ft(s.value),{onClick:b[0]||(b[0]=I=>f(a)())}))]),_:1})])]),_:1}),i.value?(P(),we(S,{key:3,class:"box-item",effect:"light",content:"返回顶部",placement:"left"},{default:X(()=>[j("div",{class:"item",onClick:d},[U(E,null,{default:X(()=>[U(f(yZ))]),_:1})])]),_:1})):me("",!0)]),U(bd,{"lock-scroll":!1,top:f(t).dialogTop,width:f(t).dialogWidth,center:!0,"append-to-body":!0,modelValue:o.value,"onUpdate:modelValue":b[4]||(b[4]=I=>o.value=I),title:"管理员登录"},{footer:X(()=>[j("div",W_e,[U(O,{style:{flex:"1"},round:"",onClick:b[3]||(b[3]=I=>o.value=!1)},{default:X(()=>b[7]||(b[7]=[_t("取消")])),_:1}),U(O,{style:{flex:"1"},round:"",type:"primary",onClick:m},{default:X(()=>b[8]||(b[8]=[_t(" 登录 ")])),_:1})])]),default:X(()=>[U(k,{model:r.value,"label-position":"top"},{default:X(()=>[U(_,{label:"用户名"},{default:X(()=>[U(C,{"prefix-icon":f(kw),placeholder:"请输入用户名",modelValue:r.value.username,"onUpdate:modelValue":b[1]||(b[1]=I=>r.value.username=I),autocomplete:"off"},null,8,["prefix-icon","modelValue"])]),_:1}),U(_,{label:"密码"},{default:X(()=>[U(C,{"prefix-icon":f(GM),placeholder:"请输入密码",type:"password",modelValue:r.value.password,"onUpdate:modelValue":b[2]||(b[2]=I=>r.value.password=I),autocomplete:"off",onKeyup:dn(m,["enter"])},null,8,["prefix-icon","modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["top","width","modelValue"]),U(bd,{"lock-scroll":!1,"append-to-body":!0,"destroy-on-close":!0,modelValue:n.value,"onUpdate:modelValue":b[6]||(b[6]=I=>n.value=I),title:"添加分类",width:f(t).dialogWidth},{default:X(()=>[U(g_,{addCategoryState:n.value,"onUpdate:addCategoryState":b[5]||(b[5]=I=>n.value=I)},null,8,["addCategoryState"])]),_:1},8,["modelValue","width"])])}}},j_e=Cr(K_e,[["__scopeId","data-v-8d2d5284"]]),U_e={class:"main-top"},G_e={class:"header"},Y_e={class:"search-box"},q_e={key:0,class:"result-list"},X_e={class:"result-icon"},Z_e=["src"],J_e={class:"result-text"},Q_e=["href","title"],eke={class:"search-engine"},tke={class:""},nke={class:"content"},oke={class:"cat-left"},rke={class:"ctitle"},ake={key:0,class:"lock"},lke=["onClick"],ske={class:"link"},ike={key:0,class:"badge",title:"该链接是私有状态,仅登录后可见!"},uke=["src"],cke=["onContextmenu"],dke=["title"],fke=["title"],pke={class:"more",title:"点击展开更多链接"},hke={style:{height:"80px"}},vke={class:"footer"},gke=["innerHTML"],mke={__name:"Main",setup(e){const t=W({}),n=Ma(),o=f_e(),r=W(0),l=W(0),a=W(null),s=W(!1),i=L=>{a.value=L,s.value=!0},u=(L,V)=>L===null||L===""?"https://favicon.png.pub/v1/"+M(V):L.startsWith("http")?L:n.domain+"/"+L,d=A(()=>"custom_footer"in n.siteInfo&&d!==""&&n.siteInfo.custom_footer!==null?n.siteInfo.custom_footer:'Copyright ©2024. Powered by OneNav.'),c=L=>{E()},h=W({}),v=L=>{const V=n.limitedLinks[L];V.forEach((D,N)=>{D.weight=V.length-N}),g(L,V)},m=()=>{n.categoryMaskVisible=!0,n.menuVisible="block"},g=async(L,V)=>{const D=V.map(N=>({id:N.id,weight:N.weight}));try{(await Qn.post(`/index.php?c=api&method=update_link_order&category_id=${L}`,D)).data.code==200?vn({message:"排序已更新!",type:"success"}):vn({message:"排序更新失败!",type:"error"})}catch{vn({message:"排序更新失败!",type:"error"})}},w=L=>{L.preventDefault()},b=(L,V)=>{r.value=L.clientX,l.value=L.clientY,h.value=V,L.preventDefault(),n.contextMenuVisible=!0},E=()=>{const L=o.currentEngine,V=C.value;if(V===""){vn({message:"请输入关键词!",type:"warning"});return}const N=o.engines.find(H=>H.key===L).url+encodeURIComponent(V);window.open(N)},S=W(12),C=W(""),_=W([]),k=()=>{C.value="",_.value=[]},O=L=>{n.limitedLinks[L]=n.allLinks[L]},I=eSe.debounce(()=>{const L=C.value;if(L.length<2){_.value=[];return}const V=[];n.categorys.forEach(D=>{n.allLinks[D.id].forEach(N=>{(D.name&&D.name.toLowerCase().includes(L.toLowerCase())||N.title&&N.title.toLowerCase().includes(L.toLowerCase())||N.url&&N.url.toLowerCase().includes(L.toLowerCase())||N.description&&N.description.toLowerCase().includes(L.toLowerCase())||N.url_standby&&N.url_standby.toLowerCase().includes(L.toLowerCase()))&&V.push(N)})}),_.value=V.slice(0,10)},300),T=L=>{const V=t.value[L];if(V){const D=V.getBoundingClientRect().top+window.scrollY-100;window.scrollTo({top:D,behavior:"smooth"})}};Pe(()=>n.categoryId,L=>{L!==null&&T(L)}),Pe(()=>n.links,L=>{L.length>0&&n.categorys.forEach(V=>{const D=L.filter(N=>N.fid==V.id);n.limitedLinks[V.id]=D.slice(0,S.value),n.allLinks[V.id]=D})},{immediate:!0});const M=L=>{const V=new URL(L),D=V.protocol||"http:",N=V.hostname,H=V.port?`:${V.port}`:"",B=D+"//"+N+H;return btoa(B)},R=L=>!L||L.trim()===""?"没有描述":L.trim(),$=L=>{if(n.transitionPage.control==="off"){console.log(n.transitionPage.control),window.open(L.url);return}if(n.isLogin&&n.transitionPage.control==="on"&&n.transitionPage.admin_stay_time===0){window.open(L.url);return}window.open("/index.php?theme=default2#/go/"+L.id)};return kt(()=>{n.getSiteInfo().then(()=>{var V;const L=(V=n.siteInfo)==null?void 0:V.link_num;L?S.value=L:S.value=12}),o.changeDefaultEngine(),n.getTransitionPage()}),(L,V)=>{const D=lt,N=Ui,H=Al,B=co,z=Lo,q=Bh,Z=nu,ie=tu,re=df;return P(),G(tt,null,[j("div",U_e,[j("div",G_e,[j("div",{class:"menu-switch",onClick:m},[U(D,null,{default:X(()=>[U(f(LX))]),_:1})]),j("div",Y_e,[_.value.length>0?(P(),G("div",q_e,[(P(!0),G(tt,null,Dt(_.value,ve=>(P(),G("div",{key:ve.id,class:"result-item"},[j("div",X_e,[j("img",{loading:"lazy",src:u(ve.font_icon,ve.url),width:"16",height:"16"},null,8,Z_e)]),j("div",J_e,[j("a",{href:ve.url,target:"_blank",rel:"nofollow",title:ve.title},[j("span",null,"["+We(f(n).getCategoryNameById(ve.fid))+"] - ",1),_t(" "+We(ve.title),1)],8,Q_e)])]))),128))])):me("",!0),j("div",eke,[U(H,{modelValue:f(o).currentEngine,"onUpdate:modelValue":V[0]||(V[0]=ve=>f(o).currentEngine=ve),placeholder:"Select",size:"large",style:{width:"98px","-webkit-tap-highlight-color":"transparent"},onChange:f(o).changeEngine},{default:X(()=>[(P(!0),G(tt,null,Dt(f(o).engines,ve=>(P(),we(N,{key:ve.key,label:ve.name,value:ve.key},null,8,["label","value"]))),128))]),_:1},8,["modelValue","onChange"])]),j("div",tke,[U(B,{autofocus:!0,modelValue:C.value,"onUpdate:modelValue":V[1]||(V[1]=ve=>C.value=ve),clearable:!0,onInput:f(I),class:"search-input",size:"large",placeholder:"请输入关键词",onKeyup:[dn(k,["esc"]),dn(c,["enter"])]},null,8,["modelValue","onInput"])]),j("div",{class:"search-btn",onClick:E,title:"点击搜索"},[U(D,null,{default:X(()=>[U(f(YM))]),_:1})])])])]),j("div",nke,[U(ie,null,{default:X(()=>[(P(!0),G(tt,null,Dt(f(n).categorys,ve=>(P(),we(Z,{lg:24},{default:X(()=>[(P(),G("div",{key:"cid"+ve.id,class:"category",ref_for:!0,ref:Ce=>t.value[ve.id]=Ce},[j("div",oke,[j("h2",rke,We(ve.name),1),ve.property==="1"?(P(),G("span",ake,[U(z,{class:"box-item",effect:"light",content:"该分类是私有状态,仅登录后可见!",placement:"top"},{default:X(()=>[U(D,null,{default:X(()=>[U(f(G4))]),_:1})]),_:1})])):me("",!0)]),f(n).isLogin?(P(),G("div",{key:0,onClick:Ce=>i(ve.id),title:"编辑分类",class:"cat-right"},[U(D,null,{default:X(()=>[U(f(gX))]),_:1})],8,lke)):me("",!0)])),U(ie,null,{default:X(()=>[Tt(U(q,{rows:3,animated:""},null,512),[[jt,!f(n).limitedLinks[ve.id]]]),f(n).limitedLinks[ve.id]?(P(),we(f(Q2e),{key:0,list:f(n).limitedLinks[ve.id],group:`category-${ve.id}`,"item-key":"id",onEnd:Ce=>v(ve.id),class:"draggable-box",disabled:!f(n).isLogin,handle:".ico"},{item:X(({element:Ce})=>[(P(),we(Z,{onClick:Ee=>$(Ce),key:Ce.id,xs:24,sm:12,md:8,lg:6},{default:X(()=>[j("div",ske,[Ce.property==="1"?(P(),G("span",ike,[U(D,null,{default:X(()=>[U(f(G4))]),_:1})])):me("",!0),j("div",{class:"ico",onContextmenu:wt(w,["prevent"])},[j("img",{loading:"lazy",src:u(Ce.font_icon,Ce.url),width:"16",height:"16"},null,8,uke)],32),j("div",{class:"link-content",onContextmenu:Ee=>b(Ee,Ce)},[j("div",{class:"link-title",title:Ce.title},[j("b",null,We(Ce.title),1)],8,dke),j("div",{class:"link-description",title:Ce.description},We(R(Ce.description)),9,fke)],40,cke)])]),_:2},1032,["onClick"]))]),_:2},1032,["list","group","onEnd","disabled"])):me("",!0),f(n).allLinks[ve.id]&&f(n).allLinks[ve.id].length>S.value&&f(n).limitedLinks[ve.id].length<=S.value?(P(),we(Z,{key:1,draggable:!1,onClick:Ce=>O(ve.id),lg:24},{default:X(()=>[j("div",pke,[V[4]||(V[4]=j("div",null,"查看更多",-1)),U(D,null,{default:X(()=>[U(f(Kq))]),_:1})])]),_:2},1032,["onClick"])):me("",!0)]),_:2},1024)]),_:2},1024))),256))]),_:1})]),Tt(j("div",hke,null,512),[[jt,f(n).isLogin]]),U(re,{top:f(n).dialogTop,width:f(n).dialogWidth,modal:"","append-to-body":!0,"destroy-on-close":!0,modelValue:s.value,"onUpdate:modelValue":V[3]||(V[3]=ve=>s.value=ve),title:"编辑分类"},{default:X(()=>[U(g_,{id:a.value,addCategoryState:s.value,"onUpdate:addCategoryState":V[2]||(V[2]=ve=>s.value=ve)},null,8,["id","addCategoryState"])]),_:1},8,["top","width","modelValue"]),U(d_e,{link:h.value,x:r.value,y:l.value},null,8,["link","x","y"]),Tt(j("div",vke,[j("div",{id:"footer-content",innerHTML:d.value},null,8,gke)],512),[[jt,!f(n).isLogin]]),f(n).isLogin?(P(),we(h2e,{key:0})):me("",!0),U(j_e)],64)}}},yke=Cr(mke,[["__scopeId","data-v-89786d4e"]]),bke={class:"common-layout"},wke={__name:"HomeView",setup(e){const t=Ma();return kt(()=>{document.body.clientWidth<768&&(t.menuVisible="none"),t.getSubscribeStatus()}),(n,o)=>{const r=Z6,l=J6,a=X6;return P(),G(tt,null,[f(t).categoryMaskVisible?(P(),G("div",{key:0,onClick:o[0]||(o[0]=(...s)=>f(t).closeMenu&&f(t).closeMenu(...s)),class:"category-mask"})):me("",!0),j("div",bke,[U(a,null,{default:X(()=>[U(So,null,{default:X(()=>[Tt(U(r,{class:"left-menu"},{default:X(()=>[U(Awe)]),_:1},512),[[jt,f(t).menuVisible=="block"]])]),_:1}),U(l,{class:"main"},{default:X(()=>[U(yke)]),_:1})]),_:1})])],64)}}},Ske=Cr(wke,[["__scopeId","data-v-b8f6b6e0"]]),Cke={class:"error-box"},_ke={class:"err-title"},kke={class:"ico"},Eke={class:"text"},xke=["innerHTML"],Tke={__name:"ErrorPage",props:["code"],setup(e){const t=e,n=W({title:"",msg:""});return kt(()=>{switch(t.code){case 401:n.value.title="未授权",n.value.msg=`很抱歉,您无权访问此页面!
如果您是管理员,请尝试登录OneNav后台并重新访问!
`;break;case 403:n.value.title="禁止访问",n.value.msg=`很抱歉,您无权访问此页面!
如果您是管理员,请尝试登录OneNav后台并重新访问!
`;break;case 404:n.value.title="页面不存在",n.value.msg=`很抱歉,您访问的页面不存在!
请检查您输入的网址是否正确!
`;break;case 500:n.value.title="服务器错误",n.value.msg=`很抱歉,服务器发生错误!
diff --git a/templates/default2/info.json b/templates/default2/info.json
index 792f7ee..58ca43f 100644
--- a/templates/default2/info.json
+++ b/templates/default2/info.json
@@ -3,7 +3,7 @@
"description": "OneNav目前功能最强大的默认主题,推荐使用。",
"homepage": "https:\/\/blog.xiaoz.org",
"help_url":"https://dwz.ovh/gnae4",
- "version": "1.3.4",
+ "version": "1.3.5",
"update": "2025\/09\/01",
"author": "xiaoz",
"screenshot": "https://v.png.pub/imgs/2024/11/27/c01894e5d9e0d850.png",