Files
CoreInject/frontend/dist/assets/DGth4-BB.js
2025-11-16 05:39:11 +08:00

20 lines
10 KiB
JavaScript
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
import{a as e,_ as l,A as a,h as t,c as s,i as o,T as n,M as i}from"./BaSQ3xJt.js"
import{d,c as u,a as c,e as r,v as p,z as m,h as v,b,m as f,x as g,r as _,w as h,g as y,n as V,p as k,q as x,u as w}from"./CdD4XvnD.js"
const C={class:"slider-wrapper"},I=["value","min","max","step"],B={class:"slider-value"},U=e(d({__name:"Slider",props:{modelValue:{},min:{default:0},max:{default:100},step:{default:1},suffix:{default:""}},emits:["update:modelValue"],setup(e,{emit:l}){const a=e,t=l,s=u(()=>a.suffix?`${a.modelValue} ${a.suffix}`:a.modelValue.toString()),o=u(()=>{let e=a.modelValue
return e<a.min?e=a.min:e>a.max&&(e=a.max),e}),n=u(()=>{const e=(o.value-a.min)/(a.max-a.min)*100
return{"--progress-percent":`${Math.max(0,Math.min(100,e))}%`}}),i=e=>{const l=e.target
t("update:modelValue",Number(l.value))}
return(l,a)=>(v(),c("div",C,[r("input",{value:o.value,type:"range",class:"setting-slider",style:p(n.value),min:e.min,max:e.max,step:e.step,onInput:i},null,44,I),r("div",B,m(s.value),1)]))}}),[["__scopeId","data-v-0979b282"]]),S={class:"toggle-wrapper"},D=["checked"],T={class:"toggle-slider"},N={key:0,class:"toggle-text"},$=e(d({__name:"Toggle",props:{modelValue:{type:Boolean},showLabel:{type:Boolean,default:!0}},emits:["update:modelValue"],setup(e,{emit:l}){const a=l,t=e=>{const l=e.target
a("update:modelValue",l.checked)}
return(l,a)=>(v(),c("label",S,[r("input",{checked:e.modelValue,type:"checkbox",class:"toggle-input",onChange:t},null,40,D),r("span",T,[e.showLabel?(v(),c("span",N,m(e.modelValue?"开":"关"),1)):b("",!0)])]))}}),[["__scopeId","data-v-c85b3e46"]]),j={class:"setting-item"},L={class:"setting-icon"},M={class:"setting-content"},Q={class:"setting-title"},R={key:0,class:"setting-description"},q={key:0,class:"setting-action"},z=e(d({__name:"SettingItem",props:{icon:{},title:{},description:{}},setup:e=>(a,t)=>(v(),c("div",j,[r("div",L,[f(l,{icon:e.icon},null,8,["icon"])]),r("div",M,[r("h3",Q,m(e.title),1),e.description?(v(),c("p",R,m(e.description),1)):b("",!0),g(a.$slots,"default",{},void 0)]),a.$slots.action?(v(),c("div",q,[g(a.$slots,"action",{},void 0)])):b("",!0)]))}),[["__scopeId","data-v-7d058930"]]),A={class:"setting-input-wrapper"},H=["value","placeholder"],P={key:0,class:"setting-error"},E=e(d({__name:"PathInput",props:{modelValue:{},placeholder:{default:""},icon:{default:"fluent-color:document-folder-24"}},emits:["update:modelValue","error"],setup(e,{emit:t}){const s=e,o=t,n=_(""),i=async e=>{const l=e.target.value
o("update:modelValue",l)
const t=l.trim()
if(!t)return n.value="",void o("error","")
try{const e=await a.validatePath(t)
e.exists?e.isDirectory?(n.value="",o("error","")):(n.value="路径不是目录",o("error","路径不是目录")):(n.value="路径不存在",o("error","路径不存在"))}catch(s){n.value="验证路径失败",o("error","验证路径失败")}}
return h(()=>s.modelValue,e=>{e||(n.value="",o("error",""))}),(a,t)=>(v(),c("div",null,[r("div",A,[f(l,{icon:e.icon,class:"input-icon"},null,8,["icon"]),r("input",{value:e.modelValue,type:"text",class:"setting-input",placeholder:e.placeholder,onInput:i},null,40,H)]),n.value?(v(),c("p",P,[f(l,{icon:"fluent-color:error-circle-24",class:"error-icon"}),y(" "+m(n.value),1)])):b("",!0)]))}}),[["__scopeId","data-v-332babe5"]]),G={class:"theme-options"},F=e(d({__name:"ThemeSelector",props:{modelValue:{}},emits:["update:modelValue"],setup(e,{emit:a}){const t=a,s=e=>{t("update:modelValue",e)}
return(a,t)=>(v(),c("div",G,[r("button",{class:V(["theme-option",{active:"light"===e.modelValue}]),onClick:t[0]||(t[0]=e=>s("light"))},[f(l,{icon:"fluent-color:weather-sunny-low-24"}),t[3]||(t[3]=r("span",null,"浅色",-1))],2),r("button",{class:V(["theme-option",{active:"dark"===e.modelValue}]),onClick:t[1]||(t[1]=e=>s("dark"))},[f(l,{icon:"fluent-emoji-flat:crescent-moon"}),t[4]||(t[4]=r("span",null,"深色",-1))],2),r("button",{class:V(["theme-option",{active:"auto"===e.modelValue}]),onClick:t[2]||(t[2]=e=>s("auto"))},[f(l,{icon:"fluent-emoji-flat:a-button-blood-type"}),t[5]||(t[5]=r("span",null,"自动",-1))],2)]))}}),[["__scopeId","data-v-22e00bad"]]),J={class:"about-section"},K={class:"about-icon"},O={class:"version-info"},W={key:0,class:"version-text"},X={key:1,class:"beta-badge"},Y={key:2,class:"release-badge"},Z={key:0,class:"about-details"},ee={class:"detail-section"},le={class:"detail-content"},ae={class:"detail-item"},te={class:"detail-value"},se={key:0},oe={key:1,class:"beta-badge"},ne={key:2,class:"release-badge"},ie={key:0,class:"detail-item"},de={class:"detail-value"},ue={key:1,class:"detail-item"},ce={class:"detail-value"},re={class:"detail-item"},pe={class:"detail-value"},me=e(d({__name:"AboutSection",props:{systemVersion:{},buildNumber:{},buildVersion:{},isBeta:{type:Boolean},buildDate:{}},setup(e){const a=_(!1),t=()=>{a.value=!a.value}
return(s,o)=>(v(),c("div",J,[o[9]||(o[9]=r("h2",{class:"section-title"},"关于",-1)),r("div",{class:"about-item",onClick:t},[r("div",K,[f(l,{icon:"fluent-color:apps-24"})]),o[0]||(o[0]=r("div",{class:"about-content"},[r("h3",{class:"about-title"},"秋城落叶 应用商店"),r("p",{class:"about-description"},"由 QiuChenly 发布")],-1)),r("div",O,[e.isBeta?(v(),c("span",W,"v"+m(e.buildVersion),1)):b("",!0),e.isBeta?(v(),c("span",X,"Beta")):(v(),c("span",Y,"v"+m(e.buildVersion),1)),f(l,{icon:"mdi:chevron-down",class:V(["version-arrow",{expanded:a.value}])},null,8,["class"])])]),f(k,{name:"slide-down"},{default:x(()=>[a.value?(v(),c("div",Z,[r("div",ee,[o[8]||(o[8]=r("h4",{class:"detail-title"},"个人信息",-1)),r("div",le,[o[5]||(o[5]=r("div",{class:"detail-item"},[r("span",{class:"detail-label"},"开发者:"),r("span",{class:"detail-value"},"QiuChenly")],-1)),o[6]||(o[6]=r("div",{class:"detail-item"},[r("span",{class:"detail-label"},"邮箱:"),r("span",{class:"detail-value"},"qiuchenly@outlook.com")],-1)),o[7]||(o[7]=r("div",{class:"detail-item"},[r("span",{class:"detail-label"},"GitHub"),r("span",{class:"detail-value"},"github.com/QiuChenly")],-1)),r("div",ae,[o[1]||(o[1]=r("span",{class:"detail-label"},"版本号:",-1)),r("span",te,[e.isBeta?(v(),c("span",se,"v"+m(e.buildVersion),1)):b("",!0),e.isBeta?(v(),c("span",oe,"Beta")):(v(),c("span",ne,"v"+m(e.buildVersion),1))])]),e.systemVersion?(v(),c("div",ie,[o[2]||(o[2]=r("span",{class:"detail-label"},"系统版本:",-1)),r("span",de,m(e.systemVersion),1)])):b("",!0),e.buildNumber?(v(),c("div",ue,[o[3]||(o[3]=r("span",{class:"detail-label"},"构建号:",-1)),r("span",ce,m(e.buildNumber),1)])):b("",!0),r("div",re,[o[4]||(o[4]=r("span",{class:"detail-label"},"构建日期:",-1)),r("span",pe,m(e.buildDate),1)])])])])):b("",!0)]),_:1})]))}}),[["__scopeId","data-v-069b1c40"]]),ve={class:"settings-page"},be={class:"settings-container"},fe={class:"settings-list"},ge={class:"settings-actions"},_e=["disabled"],he=["disabled"],ye=e(d({__name:"Settings",setup(e){const{settings:a,saving:d,systemVersion:p,buildNumber:b,saveSettings:g,resetToDefaults:h}=t(),{toasts:V,removeToast:k}=s(),C=o(),I=_(""),B=(new Date).toLocaleDateString("zh-CN",{year:"numeric",month:"long",day:"numeric"}),S=u(()=>"20251115"),D=u(()=>!0),T=e=>{I.value=e},N=()=>{g(I.value)}
return(e,t)=>(v(),c("div",ve,[r("div",be,[t[9]||(t[9]=r("h1",{class:"page-title"},"设置",-1)),r("div",fe,[f(z,{icon:"fluent-color:document-folder-24",title:"下载路径",description:"请输入完整的绝对路径,不能使用 ~ 符号"},{default:x(()=>[f(E,{"model-value":w(a).download_path||"",placeholder:"/Users/你的用户名/Downloads/Hayaku/","onUpdate:modelValue":t[0]||(t[0]=e=>w(a).download_path=e),onError:T},null,8,["model-value"])]),_:1}),f(z,{icon:"fluent-color:send-24",title:"最大并发下载数",description:"同时进行的下载任务数量"},{default:x(()=>[f(U,{"model-value":w(a).concurrent_downloads||3,min:1,max:16,step:1,"onUpdate:modelValue":t[1]||(t[1]=e=>w(a).concurrent_downloads=e)},null,8,["model-value"])]),_:1}),f(z,{icon:"fluent-color:link-multiple-24",title:"下载并发线程数",description:"每个下载任务使用的并发线程数默认16"},{default:x(()=>[f(U,{"model-value":w(a).download_concurrent_threads||16,min:1,max:64,step:1,"onUpdate:modelValue":t[2]||(t[2]=e=>w(a).download_concurrent_threads=e)},null,8,["model-value"])]),_:1}),f(z,{icon:"fluent-color:arrow-sync-24",title:"自动检查更新",description:"是否在后台自动检查应用更新"},{action:x(()=>[f($,{"model-value":w(a).auto_check_update??!0,"onUpdate:modelValue":t[3]||(t[3]=e=>w(a).auto_check_update=e)},null,8,["model-value"])]),_:1}),f(z,{icon:"fluent-color:clock-24",title:"更新检查间隔(分钟)",description:"后台自动检查更新的时间间隔默认10分钟"},{default:x(()=>[f(U,{"model-value":w(a).update_check_interval||10,min:1,max:1440,step:1,suffix:"分钟","onUpdate:modelValue":t[4]||(t[4]=e=>w(a).update_check_interval=e)},null,8,["model-value"])]),_:1}),f(z,{icon:"fluent-color:link-multiple-24",title:"更新检查并发线程数",description:"同时检查更新的URL数量默认16"},{default:x(()=>[f(U,{"model-value":w(a).update_check_threads||16,min:1,max:64,step:1,"onUpdate:modelValue":t[5]||(t[5]=e=>w(a).update_check_threads=e)},null,8,["model-value"])]),_:1}),f(z,{icon:"fluent-color:options-24",title:"主题",description:"选择应用主题"},{default:x(()=>[f(F,{"model-value":w(a).theme||"auto","onUpdate:modelValue":t[6]||(t[6]=e=>w(a).theme=e)},null,8,["model-value"])]),_:1})]),r("div",ge,[r("button",{class:"btn btn-secondary",onClick:t[7]||(t[7]=(...e)=>w(h)&&w(h)(...e)),disabled:w(d)},[f(l,{icon:"fluent-color:arrow-sync-24"}),t[8]||(t[8]=y(" 重置为默认值 ",-1))],8,_e),r("button",{class:"btn btn-primary",onClick:N,disabled:w(d)},[f(l,{icon:"fluent-color:document-add-24"}),y(" "+m(w(d)?"保存中...":"保存设置"),1)],8,he)]),f(me,{"system-version":w(p),"build-number":w(b),"build-version":S.value,"is-beta":D.value,"build-date":w(B)},null,8,["system-version","build-number","build-version","is-beta","build-date"])]),f(n,{toasts:w(V),onRemove:w(k)},null,8,["toasts","onRemove"]),f(i,{visible:w(C).visible.value,title:w(C).config.value.title||"",message:w(C).config.value.message||"",type:"danger"===w(C).config.value.type?"error":w(C).config.value.type||"warning","confirm-text":w(C).config.value.confirmText,"cancel-text":w(C).config.value.cancelText,onConfirm:w(C).handleConfirm,onCancel:w(C).handleCancel},null,8,["visible","title","message","type","confirm-text","cancel-text","onConfirm","onCancel"])]))}}),[["__scopeId","data-v-849ddff8"]])
export{ye as default}