2 lines
8.7 KiB
JavaScript
2 lines
8.7 KiB
JavaScript
import{aG as q,bo as N,br as F,aC as C,aD as M,az as a,ai as B,bd as O,bj as y,bm as r,aF as s,bB as o,av as G,O as H,bp as Y,bq as j,b3 as P,a_ as X,P as Z,S as J,R as K,bs as Q,aV as ee,aZ as c,bi as ae,aX as se,ag as oe,b9 as te,aE as p,ay as le,aw as ne,v as de,U as re,y as ie,z as ue,T as pe,s as me,bb as k,ba as R,Y as f,al as ce}from"./index-DrvLDslf.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-l0sNRNKZ.js";const fe={class:"login-page"},ve={class:"bg-stars","aria-hidden":"true"},be={class:"login-card mg-glass-lg"},ge={class:"hero"},_e={class:"hero-footnote"},Ve={class:"panel"},we={class:"scope-wrap"},ye={class:"launch-mode-head"},ke={class:"scope-wrap launch-wrap"},Ee={class:"row row-between"},he={class:"adv-grid"},Ce={class:"footer-stamp"},Me=q({__name:"LoginView",setup(Pe){const S=Y(),W=j(),E=N(),h=F(),v=k(),b=k(!1),m=k([]),l=R({username:"admin",password:"admin",scope:"Platform",launchMode:"DesktopAndWeb",remember:!0}),i=R({host:"0.0.0.0",apiPort:7001,platformPort:8080,vrPort:8223}),x={username:[{required:!0,message:"请输入用户名",trigger:"blur"}],password:[{required:!0,message:"请输入密码",trigger:"blur"}],scope:[{required:!0,message:"请选择 scope",trigger:"change"}],launchMode:[{required:!0,message:"请选择启动模式",trigger:"change"}]},T=G(()=>new Date().getFullYear()),z=Array.from({length:18},(g,e)=>{const n=Math.random()*100,u=Math.random()*100,d=2+Math.random()*3,_=-Math.random()*6,V=.35+Math.random()*.45;return{top:`${n}%`,left:`${u}%`,width:`${d}px`,height:`${d}px`,opacity:`${V}`,animationDelay:`${_}s`}});async function I(){v.value&&await v.value.validate(async g=>{if(g){b.value=!0;try{const e=await E.login({username:l.username,password:l.password,scope:l.scope,launchMode:l.launchMode});f.success(`欢迎,${E.user?.displayName??l.username}`),e.launchWarning?f({message:e.launchWarning,type:"warning",duration:6e3,showClose:!0}):e.runMode==="Detached"&&f({message:"SimpleLite 未启动(Platform.Server 单独运行),/api/sl/* 相关功能将不可用。",type:"warning",duration:6e3,showClose:!0});const n=S.query.redirect??(l.scope==="Platform"?"/admin/dashboard":"/monitor/map");W.push(n)}catch(e){const n=e instanceof Error?e.message:String(e);f.error(`登录失败:${n}`)}finally{b.value=!1}}})}return(g,e)=>{const n=K,u=J,d=Z,_=oe,V=de,$=re,w=pe,U=ue,L=ie,A=me,D=H;return P(),C("div",fe,[e[27]||(e[27]=M('<div class="bg-image" data-v-a5f3efd2></div><div class="bg-overlay" data-v-a5f3efd2></div><div class="bg-orb bg-orb-a" data-v-a5f3efd2></div><div class="bg-orb bg-orb-b" data-v-a5f3efd2></div><div class="bg-orb bg-orb-c" data-v-a5f3efd2></div>',5)),a("div",ve,[(P(),C(B,null,O(18,t=>a("span",{key:t,style:X(r(z)[t-1])},null,4)),64))]),a("div",be,[a("div",ge,[e[14]||(e[14]=M('<div class="hero-brand" data-v-a5f3efd2><div class="hero-mark" data-v-a5f3efd2>迷</div><div class="hero-name" data-v-a5f3efd2>迷毂</div></div><div class="hero-tagline" data-v-a5f3efd2>智 能 调 度 平 台</div><div class="hero-tagline-en" data-v-a5f3efd2>INTELLIGENT · DISPATCH · PLATFORM</div><div class="hero-divider" data-v-a5f3efd2></div><ul class="hero-points" data-v-a5f3efd2><li data-v-a5f3efd2><span class="dot" data-v-a5f3efd2></span> 复刻 ARCHITECTURE.md §3.2 启动登录窗</li><li data-v-a5f3efd2><span class="dot" data-v-a5f3efd2></span> Web-Enabled · 管理员 / 运营 双视图</li><li data-v-a5f3efd2><span class="dot" data-v-a5f3efd2></span> 嵌入 webVRender 真实 3D 场景</li></ul>',5)),a("div",_e,[e[13]||(e[13]=a("span",{class:"badge"},"v1.7",-1)),a("span",null,y(r(h).activeTheme.name)+" · "+y(r(h).activeTheme.preview),1)])]),a("div",Ve,[e[26]||(e[26]=a("div",{class:"panel-head"},[a("div",{class:"panel-title"},"登 录"),a("div",{class:"panel-sub"},"访问 SimpleLite 的 Vue 外壳")],-1)),s(D,{ref_key:"formRef",r
|