aitu-app 0.6.71 → 0.6.72
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -3
- package/assets/{CanvasAudioPlayer-BxZowfRq.js → CanvasAudioPlayer-C4pqPNnG.js} +1 -1
- package/assets/{ChatDrawer-BGK5A7Rf.js → ChatDrawer-9XDg_01o.js} +2 -2
- package/assets/{ChatMessagesArea-CuPP1K-H.js → ChatMessagesArea-MrSlzXfd.js} +2 -2
- package/assets/{DeferredAIInputBar-jZEz3pqU.js → DeferredAIInputBar-rlzvr9H5.js} +2 -2
- package/assets/{DrawnixDeferredFeatures-DRggo5l2.js → DrawnixDeferredFeatures-6BN6HsXW.js} +1 -1
- package/assets/{KnowledgeBaseContent-C1xFBdX9.js → KnowledgeBaseContent-DJnJZh6i.js} +3 -3
- package/assets/{MVCreator-D3rDT4pv.js → MVCreator-BVXIEkng.js} +1 -1
- package/assets/{ModelBenchmarkWorkbench-DrHfXMOC.js → ModelBenchmarkWorkbench-DV6h0r-O.js} +1 -1
- package/assets/{ModelDropdown-CErXiJel.js → ModelDropdown-iU3c5Z_N.js} +1 -1
- package/assets/{MusicAnalyzer-DNVsOB04.js → MusicAnalyzer-D9rIcu4x.js} +1 -1
- package/assets/{MusicAnalyzer-q0eIxKqJ.js → MusicAnalyzer-ghn7zFIt.js} +1 -1
- package/assets/{ResizableDivider-XFJLfAwc.js → ResizableDivider-C6Z5EQJ_.js} +1 -1
- package/assets/{TaskQueuePanel-zmK3r_Sy.js → TaskQueuePanel-NAYUh8lN.js} +1 -1
- package/assets/{VideoAnalyzer-IiMRyspL.js → VideoAnalyzer-VjFOqpZU.js} +1 -1
- package/assets/{ai-generation-preferences-service-DheS7yb2.js → ai-generation-preferences-service-BuQhsO32.js} +1 -1
- package/assets/{arc-AunKa7Be.js → arc-CCorIawr.js} +1 -1
- package/assets/{arc-CxS0h6XE.js → arc-OsezXT79.js} +1 -1
- package/assets/{batch-image-generation-BTo-Hh2f.js → batch-image-generation-BM3dGGpo.js} +1 -1
- package/assets/{blockDiagram-38ab4fdb-BOwTTQqR.js → blockDiagram-38ab4fdb-DUFnN1Ei.js} +1 -1
- package/assets/{blockDiagram-38ab4fdb-B9BxtRcE.js → blockDiagram-38ab4fdb-DWGlT04d.js} +1 -1
- package/assets/{browser-CK6xKVG3.js → browser-BlDolpRT.js} +1 -1
- package/assets/{c4Diagram-3d4e48cf-l1vuEfws.js → c4Diagram-3d4e48cf-D4FViX2F.js} +1 -1
- package/assets/{c4Diagram-3d4e48cf-B7o3_NGM.js → c4Diagram-3d4e48cf-D6HbI2bj.js} +1 -1
- package/assets/{canvas-insertion-6qsJRfKC.js → canvas-insertion-BZAyMFnR.js} +1 -1
- package/assets/channel-DHHHwu9d.js +1 -0
- package/assets/channel-DbaY041U.js +1 -0
- package/assets/{classDiagram-70f12bd4-BxdM_ZFq.js → classDiagram-70f12bd4-BJiXLgfR.js} +1 -1
- package/assets/{classDiagram-70f12bd4-C5PI5m3K.js → classDiagram-70f12bd4-P5-MZZHm.js} +1 -1
- package/assets/{classDiagram-v2-f2320105-D2WGupMF.js → classDiagram-v2-f2320105-BckUVKrQ.js} +1 -1
- package/assets/{classDiagram-v2-f2320105-CRLBLeIT.js → classDiagram-v2-f2320105-BlMVbuKh.js} +1 -1
- package/assets/{clipper-D9tfnKC1.js → clipper-BkGBD2Ma.js} +1 -1
- package/assets/clone-B9352qPQ.js +1 -0
- package/assets/{createText-2e5e7dd3-B8mv8HgF.js → createText-2e5e7dd3-BLEzJgyq.js} +1 -1
- package/assets/{createText-2e5e7dd3-CWQBEaI7.js → createText-2e5e7dd3-_0asARpb.js} +1 -1
- package/assets/{edges-e0da2a9e-CW611sej.js → edges-e0da2a9e-BvNEeRN2.js} +1 -1
- package/assets/{edges-e0da2a9e-CiSIgajX.js → edges-e0da2a9e-Su9We6Oe.js} +1 -1
- package/assets/{erDiagram-9861fffd-B60hPtiy.js → erDiagram-9861fffd-B-TnweRY.js} +1 -1
- package/assets/{erDiagram-9861fffd-Bq-lh9QY.js → erDiagram-9861fffd-ChF_4VVA.js} +1 -1
- package/assets/{flowDb-956e92f1-Bz6i22S1.js → flowDb-956e92f1-BklqjU-F.js} +1 -1
- package/assets/{flowDb-956e92f1-CVT7Imrs.js → flowDb-956e92f1-CpHT5-s-.js} +1 -1
- package/assets/{flowDiagram-66a62f08-e10-kMn8.js → flowDiagram-66a62f08-BW0lq2iO.js} +1 -1
- package/assets/{flowDiagram-66a62f08-CRiWeGax.js → flowDiagram-66a62f08-CM-ufoRy.js} +1 -1
- package/assets/flowDiagram-v2-96b9c2cf-CXd4cAmC.js +1 -0
- package/assets/flowDiagram-v2-96b9c2cf-WaERXGrn.js +1 -0
- package/assets/{flowchart-elk-definition-4a651766-CBnyqo_M.js → flowchart-elk-definition-4a651766-BHXMQM8F.js} +1 -1
- package/assets/{flowchart-elk-definition-4a651766-DKGRcOAx.js → flowchart-elk-definition-4a651766-BNNCQnvT.js} +1 -1
- package/assets/{ganttDiagram-c361ad54-mhde3_of.js → ganttDiagram-c361ad54-BMznP5js.js} +1 -1
- package/assets/{ganttDiagram-c361ad54-D19CTSCa.js → ganttDiagram-c361ad54-Cn_w4SQu.js} +1 -1
- package/assets/{gitGraphDiagram-72cf32ee-BTRFRUeL.js → gitGraphDiagram-72cf32ee-CcqxYifa.js} +1 -1
- package/assets/{gitGraphDiagram-72cf32ee-BPmLlXIw.js → gitGraphDiagram-72cf32ee-HNSkomMm.js} +1 -1
- package/assets/{graph-DIg8rY1E.js → graph-2O9SKVX0.js} +1 -1
- package/assets/{graph-B1ieZuJT.js → graph-D24U5F9b.js} +1 -1
- package/assets/{index-3862675e-CAW4PMyX.js → index-3862675e-kPXP30L6.js} +1 -1
- package/assets/{index-3862675e-BFVjQZrI.js → index-3862675e-wtTLssRq.js} +1 -1
- package/assets/{index-o4MkHJtB.js → index-7Yy5taJZ.js} +1 -1
- package/assets/{index-D0pBPzvH.js → index-9lQYp-F3.js} +1 -1
- package/assets/{index-cFN27HDb.js → index-BCZHTjCF.js} +1 -1
- package/assets/{index-zNq6WR1M.js → index-BELf2XK1.js} +1 -1
- package/assets/{index-CAmlVCIf.js → index-BJiKHIU5.js} +1 -1
- package/assets/{index-sZWFW1o8.js → index-BfJrMjzE.js} +1 -1
- package/assets/{index-Dszi0QdY.js → index-BgTSdPjs.js} +1 -1
- package/assets/{index-A3FZLzj3.js → index-BnBH1zrC.js} +1 -1
- package/assets/{index-Byg7B0_b.js → index-BnuBC6-d.js} +1 -1
- package/assets/{index-DLYbtrPe.js → index-BvjfhvDI.js} +1 -1
- package/assets/{index-BVd4ZdJq.js → index-C66Oc7kp.js} +1 -1
- package/assets/{index-B5h3vVYf.js → index-C8BMcDy_.js} +1 -1
- package/assets/{index-O1yzWoAv.js → index-CD0uXSEJ.js} +1 -1
- package/assets/{index-Dsn0zIY5.js → index-CDI7kJJr.js} +1 -1
- package/assets/{index-Cxhc7DpJ.js → index-CHYWTMjD.js} +1 -1
- package/assets/{index-BnOaEPvW.js → index-CIR5517N.js} +1 -1
- package/assets/{index-DsQmr35F.js → index-CSh9cI-m.js} +1 -1
- package/assets/{index-sq_FndL-.js → index-Cdm1s3zH.js} +1 -1
- package/assets/{index-Cs7bP6R-.js → index-Ce_zjJd0.js} +1 -1
- package/assets/{index-DXVriIPX.js → index-Cf-6nhZx.js} +3 -3
- package/assets/{index-DCn6TEiD.js → index-CszzzzlU.js} +3 -3
- package/assets/{index-LfJyON59.js → index-D057A5AW.js} +1 -1
- package/assets/{index-BwMXzWpM.js → index-D0nupp1L.js} +1 -1
- package/assets/{index-BYfSEJIM.js → index-D5ni4ZMT.js} +2 -2
- package/assets/{index-BRccxBUA.js → index-DKZkufa4.js} +1 -1
- package/assets/{index-WDtJA1fY.js → index-Duz4qBVw.js} +1 -1
- package/assets/{index-Dtw21-1a.js → index-DxlqWfyM.js} +1 -1
- package/assets/{index-DUi1yiuN.js → index-DzSyiFE3.js} +1 -1
- package/assets/{index-Cgt6J1qz.js → index-ESZ1UttR.js} +1 -1
- package/assets/{index-CysE-UTz.js → index-oiyTGfuR.js} +1 -1
- package/assets/{index-u7vr_P_s.js → index-q9Vudaup.js} +1 -1
- package/assets/{index-C3HRC3b5.js → index-te4VWNfY.js} +1 -1
- package/assets/{infoDiagram-f8f76790-Dmv1egEN.js → infoDiagram-f8f76790-CQWNDm6d.js} +1 -1
- package/assets/{infoDiagram-f8f76790-C9LQ9jd5.js → infoDiagram-f8f76790-D4GOLEO3.js} +1 -1
- package/assets/{journeyDiagram-49397b02-8CnesQvB.js → journeyDiagram-49397b02-2ir0vod-.js} +1 -1
- package/assets/{journeyDiagram-49397b02-LV1k8ByA.js → journeyDiagram-49397b02-BIR-UXT9.js} +1 -1
- package/assets/{layout-3nkAix10.js → layout-CYzCl7YP.js} +1 -1
- package/assets/{layout-BW8C-Xw4.js → layout-Cjlcubqs.js} +1 -1
- package/assets/{line-DDWqaSCo.js → line-B6TatEZ8.js} +1 -1
- package/assets/{line-U1joDaO1.js → line-qfwz7WRO.js} +1 -1
- package/assets/{linear-D8frs5RT.js → linear-GuBoF0OP.js} +1 -1
- package/assets/{linear-3k1Xl9ve.js → linear-ssbBIRl5.js} +1 -1
- package/assets/{main-hjIskWwz.js → main-B6qbLicq.js} +8 -8
- package/assets/{mermaid.core-BlObAm7H.js → mermaid.core-DOJyKoHR.js} +3 -3
- package/assets/{mindmap-definition-fc14e90a-go-0aDNp.js → mindmap-definition-fc14e90a-BN4fqdNM.js} +1 -1
- package/assets/{mindmap-definition-fc14e90a-DRTqIBGi.js → mindmap-definition-fc14e90a-qPR072_x.js} +1 -1
- package/assets/{model-benchmark-launcher-Dhybe1Ps.js → model-benchmark-launcher-CUPxnAZr.js} +1 -1
- package/assets/{model-benchmark-service-BlgtfJ25.js → model-benchmark-service-C3taFBGp.js} +1 -1
- package/assets/{model-selection-C9DVcl8A.js → model-selection-Da4xzp54.js} +1 -1
- package/assets/{photo-wall-splitter-BSRMMrLk.js → photo-wall-splitter-DN8Hms8E.js} +1 -1
- package/assets/{pieDiagram-8a3498a8-OgnCNkdZ.js → pieDiagram-8a3498a8-6gjBTuiK.js} +1 -1
- package/assets/{pieDiagram-8a3498a8-DsU04FDA.js → pieDiagram-8a3498a8-B_B-oMBm.js} +1 -1
- package/assets/{quadrantDiagram-120e2f19-CAKix819.js → quadrantDiagram-120e2f19-CGIYsVeK.js} +1 -1
- package/assets/{quadrantDiagram-120e2f19-B-qdqCsc.js → quadrantDiagram-120e2f19-DQlP5fyR.js} +1 -1
- package/assets/{requirementDiagram-deff3bca-BFiAHorQ.js → requirementDiagram-deff3bca-BhadGJas.js} +1 -1
- package/assets/{requirementDiagram-deff3bca-DCvuwhP4.js → requirementDiagram-deff3bca-CZrZs6WH.js} +1 -1
- package/assets/{sankeyDiagram-04a897e0-CW0FxDIH.js → sankeyDiagram-04a897e0-CYbsYQIC.js} +1 -1
- package/assets/{sankeyDiagram-04a897e0-DynB_N5t.js → sankeyDiagram-04a897e0-DLMtKqV7.js} +1 -1
- package/assets/{sequenceDiagram-704730f1-C3kzvK6i.js → sequenceDiagram-704730f1-CnMi1-vV.js} +1 -1
- package/assets/{sequenceDiagram-704730f1-iLPkDpBi.js → sequenceDiagram-704730f1-D5_Tbq78.js} +1 -1
- package/assets/{settings-dialog-CcLfJFr_.js → settings-dialog-BVG80WDy.js} +1 -1
- package/assets/{skill-dsl-parser-DrFEUbDY.js → skill-dsl-parser-C252Shcy.js} +1 -1
- package/assets/{stateDiagram-587899a1-fLTDppNO.js → stateDiagram-587899a1-BStwFkNh.js} +1 -1
- package/assets/{stateDiagram-587899a1-DbwUO5DV.js → stateDiagram-587899a1-DYdXq59h.js} +1 -1
- package/assets/{stateDiagram-v2-d93cdb3a-DzR2PasK.js → stateDiagram-v2-d93cdb3a--y2o64Ew.js} +1 -1
- package/assets/{stateDiagram-v2-d93cdb3a-aZJTxhK8.js → stateDiagram-v2-d93cdb3a-IdPKDi36.js} +1 -1
- package/assets/{styles-6aaf32cf-C_VEAaHX.js → styles-6aaf32cf-4WFibVVF.js} +1 -1
- package/assets/{styles-6aaf32cf-C5JfMGYv.js → styles-6aaf32cf-Cm63YNOe.js} +1 -1
- package/assets/{styles-9a916d00-BYSJ54L0.js → styles-9a916d00-B49ieQxk.js} +1 -1
- package/assets/{styles-9a916d00-C3gY_lFJ.js → styles-9a916d00-D3LwlgPD.js} +1 -1
- package/assets/{styles-c10674c1-ANPmaoE9.js → styles-c10674c1-DJhcCs3x.js} +1 -1
- package/assets/{styles-c10674c1-DXxQEnvg.js → styles-c10674c1-cbwmIB4x.js} +1 -1
- package/assets/{svgDrawCommon-08f97a94-c2dOJxSO.js → svgDrawCommon-08f97a94-C5ek8a-c.js} +1 -1
- package/assets/{svgDrawCommon-08f97a94-BVjA84-b.js → svgDrawCommon-08f97a94-c77e0hhb.js} +1 -1
- package/assets/{timeline-definition-85554ec2-6QIdYNFS.js → timeline-definition-85554ec2-7ZMOJP7x.js} +1 -1
- package/assets/{timeline-definition-85554ec2-BST8-Dw9.js → timeline-definition-85554ec2-BIhOlyVe.js} +1 -1
- package/assets/{tool-windows-Bd5iqcJh.js → tool-windows-BTXOQvEU.js} +10 -10
- package/assets/{ttd-dialog-Chz4Dc5q.js → ttd-dialog-CMzq1PeM.js} +4 -4
- package/assets/{use-runtime-models-NPMCne8X.js → use-runtime-models-C_YMetmY.js} +1 -1
- package/assets/{useCharacters-Yt_yZunw.js → useCharacters-6F7LfBD2.js} +1 -1
- package/assets/{useWorkflowSubmission-DNz90nBd.js → useWorkflowSubmission-B-0oH5Q6.js} +2 -2
- package/assets/{video-analyze-cG43kQp7.js → video-analyze-gJnLIFVx.js} +1 -1
- package/assets/{video-generation-CY32Hcvy.js → video-generation-D0RudPQ8.js} +1 -1
- package/assets/{video-recovery-service-DqRVY2GL.js → video-recovery-service-CRZVLLWA.js} +1 -1
- package/assets/{workflow-generation-utils-CqQgPCFy.js → workflow-generation-utils-5aqKk8qR.js} +2 -2
- package/assets/{workflow-submission-service-C55NPNuz.js → workflow-submission-service-C9Ph3Y2w.js} +1 -1
- package/assets/{xychartDiagram-e933f94c-DY34Q03N.js → xychartDiagram-e933f94c-9bdjNrcG.js} +1 -1
- package/assets/{xychartDiagram-e933f94c-DD9JQg-b.js → xychartDiagram-e933f94c-D6a2PcvQ.js} +1 -1
- package/changelog.json +15 -0
- package/idle-prefetch-manifest.json +302 -302
- package/manifest.json +3 -3
- package/package.json +1 -1
- package/precache-manifest.json +6 -6
- package/sw.js +5 -5
- package/version.json +6 -3
- package/assets/channel-Dx9ePqRL.js +0 -1
- package/assets/channel-YfSSwDXj.js +0 -1
- package/assets/clone-DSiLnhfM.js +0 -1
- package/assets/flowDiagram-v2-96b9c2cf-Bqr3L3y4.js +0 -1
- package/assets/flowDiagram-v2-96b9c2cf-gCWf76DS.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{iI as js,r as m,iJ as ws,y as e,iy as Es,iz as Ds,bW as Ti,iK as Oi,bw as zi,hj as ks,bV as be,iL as Li,aI as Vs,iM as Us,iN as _i,al as O,i8 as qs,iO as $i,bL as Ms,bm as Is,eP as Ss,iP as A,iQ as ee,iR as Ve,it as oe,hd as Ue,hf as xe,hg as le,he as re,hx as ce,gP as Ie,iS as Ps,iT as ji,iA as Cs,iU as As,iV as Rs,iW as Ts,cV as Os,iX as zs,iY as we,iZ as qe,i_ as ge,fI as wi,i$ as Ei,j0 as Ke,j1 as Se,j2 as Ls,j3 as $s,j4 as Gs,j5 as Fe,j6 as K,hv as me,j7 as Bs,j8 as Ks,j9 as Fs,ja as Ws}from"./tool-windows-Bd5iqcJh.js";import{jb as Ln,jc as $n}from"./tool-windows-Bd5iqcJh.js";import{D as Gi,g as Ae,a as Bi,b as Ki,c as Zs,d as Ys,e as Pe,f as Hs,h as Qs}from"./use-runtime-models-NPMCne8X.js";import{M as Xs}from"./ModelDropdown-CErXiJel.js";import{o as Js}from"./model-benchmark-launcher-Dhybe1Ps.js";import{m as en}from"./model-benchmark-service-BlgtfJ25.js";const Di={all:"全部",image:"图片",video:"视频",audio:"音频",text:"文本"},sn={image:"图片",video:"视频",audio:"音频",text:"文本"},nn={image:"图",video:"视",audio:"音",text:"文"},ki=["text","image","video","audio"];function tn(s,o){const a=o.trim().toLowerCase();return a?[s.id,s.label,s.shortLabel,s.shortCode,s.description,s.sourceProfileName,Ae(s.vendor)].filter(Boolean).some(g=>g==null?void 0:g.toLowerCase().includes(a)):!0}function an(s){return js(s)}function Vi(s,o){const a=new Map;for(const v of s){const x=a.get(v.vendor)||{vendor:v.vendor,models:[],counts:{image:0,video:0,audio:0,text:0},selectedCount:0};x.models.push(v),x.counts[v.type]+=1,o.has(v.id)&&(x.selectedCount+=1),a.set(v.vendor,x)}const g=new Map(Gi.map((v,x)=>[v,x]));return Array.from(a.values()).sort((v,x)=>{const L=g.get(v.vendor)??Number.MAX_SAFE_INTEGER,Z=g.get(x.vendor)??Number.MAX_SAFE_INTEGER;return L!==Z?L-Z:x.models.length-v.models.length})}function dn(s){return["image","video","audio","text"].filter(o=>s.counts[o]>0).map(o=>({type:o,models:an(s.models.filter(a=>a.type===o))})).sort((o,a)=>a.models.length!==o.models.length?a.models.length-o.models.length:ki.indexOf(o.type)-ki.indexOf(a.type))}const on=({open:s,container:o,models:a,selectedModelIds:g,onClose:v,onConfirm:x,onTestModel:L})=>{const[Z,Ne]=m.useState(""),[Q,he]=m.useState("all"),[$,w]=m.useState(g),[I,z]=m.useState({});m.useEffect(()=>{var C,W;if(!s)return;Ne(""),he("all"),w(g);const c=new Set(g),j=Vi(a,c),y=((C=j.find(G=>G.selectedCount>0))==null?void 0:C.vendor)||((W=j[0])==null?void 0:W.vendor)||null,M={};j.forEach(G=>{M[G.vendor]=G.vendor===y}),z(M)},[a,s,g]);const ie=m.useMemo(()=>({all:a.length,image:a.filter(c=>c.type==="image").length,video:a.filter(c=>c.type==="video").length,audio:a.filter(c=>c.type==="audio").length,text:a.filter(c=>c.type==="text").length}),[a]),B=m.useMemo(()=>{const c=Z.trim(),j=Q==="all"?a:a.filter(y=>y.type===Q);return c?j.filter(y=>tn(y,c)):j},[Q,a,Z]),b=m.useMemo(()=>new Set($),[$]),P=m.useMemo(()=>Vi(B,b),[b,B]),q=$.length,F=m.useMemo(()=>({image:a.filter(c=>c.type==="image"&&b.has(c.id)).length,video:a.filter(c=>c.type==="video"&&b.has(c.id)).length,text:a.filter(c=>c.type==="text"&&b.has(c.id)).length}),[a,b]),se=B.length>0&&B.every(c=>b.has(c.id)),X=m.useMemo(()=>a.filter(c=>ws(c.id)).map(c=>c.id),[a]),Ee=X.length>0&&X.every(c=>b.has(c));m.useEffect(()=>{P.length===0||P.some(y=>I[y.vendor])||!Object.values(I).some(Boolean)||z(P.reduce((y,M,C)=>(y[M.vendor]=C===0,y),{}))},[I,P]);const De=c=>{w(j=>j.includes(c)?j.filter(y=>y!==c):[...j,c])},ve=()=>{const c=B.map(y=>y.id),j=c.every(y=>b.has(y));w(y=>j?y.filter(M=>!c.includes(M)):Array.from(new Set([...y,...c])))},ke=()=>{w(c=>Array.from(new Set([...c,...X])))},ne=c=>{z(j=>{const y=!j[c],M={};return P.forEach(C=>{M[C.vendor]=C.vendor===c?y:!1}),M})};return e.jsxDEV(Es,{open:s,onOpenChange:c=>!c&&v(),children:e.jsxDEV(Ds,{className:"model-discovery-dialog",container:o,"data-testid":"model-discovery-dialog",children:[e.jsxDEV("div",{className:"model-discovery-dialog__header",children:[e.jsxDEV("div",{className:"model-discovery-dialog__headline",children:[e.jsxDEV("h3",{className:"model-discovery-dialog__title",children:"获取模型"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:216,columnNumber:13},void 0),e.jsxDEV("div",{className:"model-discovery-dialog__header-stats",children:[e.jsxDEV("span",{className:"model-discovery-dialog__header-pill",children:["已发现 ",a.length]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:218,columnNumber:15},void 0),e.jsxDEV("span",{className:"model-discovery-dialog__header-pill",children:["品牌 ",P.length]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:221,columnNumber:15},void 0),e.jsxDEV("span",{className:"model-discovery-dialog__header-pill model-discovery-dialog__header-pill--accent",children:["已选 ",q]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:224,columnNumber:15},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:217,columnNumber:13},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:215,columnNumber:11},void 0),e.jsxDEV("button",{type:"button",className:"model-discovery-dialog__close",onClick:v,"aria-label":"关闭",children:e.jsxDEV(Ti,{size:18},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:235,columnNumber:13},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:229,columnNumber:11},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:214,columnNumber:9},void 0),e.jsxDEV("div",{className:"model-discovery-dialog__toolbar",children:e.jsxDEV("label",{className:"model-discovery-dialog__search",children:[e.jsxDEV(Oi,{size:16},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:241,columnNumber:13},void 0),e.jsxDEV("input",{type:"text",value:Z,onChange:c=>Ne(c.target.value),placeholder:"搜索模型名称、ID 或品牌"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:242,columnNumber:13},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:240,columnNumber:11},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:239,columnNumber:9},void 0),e.jsxDEV("div",{className:"model-discovery-dialog__type-tabs",children:Object.keys(Di).map(c=>{const j=Q===c;return e.jsxDEV("button",{type:"button",className:`model-discovery-dialog__type-tab ${j?"model-discovery-dialog__type-tab--active":""}`,onClick:()=>he(c),children:[e.jsxDEV("span",{children:Di[c]},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:263,columnNumber:17},void 0),e.jsxDEV("span",{className:"model-discovery-dialog__type-tab-count",children:ie[c]},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:264,columnNumber:17},void 0)]},c,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:255,columnNumber:15},void 0)})},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:251,columnNumber:9},void 0),e.jsxDEV("div",{className:"model-discovery-dialog__body",children:P.length===0?e.jsxDEV("div",{className:"model-discovery-dialog__empty",children:Z.trim()?"没有匹配的模型":"暂无模型"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:274,columnNumber:13},void 0):e.jsxDEV("div",{className:"model-discovery-dialog__group-list",children:P.map(c=>{const j=Bi(c.vendor),y=dn(c),M=!!I[c.vendor];return e.jsxDEV("section",{className:`model-discovery-dialog__vendor-group ${M?"model-discovery-dialog__vendor-group--expanded":""}`,style:{"--vendor-accent":j.accent,"--vendor-surface":j.surface,"--vendor-border":j.border},children:[e.jsxDEV("button",{type:"button",className:"model-discovery-dialog__vendor-header",onClick:()=>ne(c.vendor),children:[e.jsxDEV("div",{className:"model-discovery-dialog__vendor-main",children:[e.jsxDEV("span",{className:"model-discovery-dialog__vendor-logo-shell",children:e.jsxDEV(Ki,{vendor:c.vendor,size:22},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:307,columnNumber:27},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:306,columnNumber:25},void 0),e.jsxDEV("div",{className:"model-discovery-dialog__vendor-copy",children:[e.jsxDEV("span",{className:"model-discovery-dialog__vendor-name",children:Ae(c.vendor)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:310,columnNumber:27},void 0),e.jsxDEV("div",{className:"model-discovery-dialog__vendor-meta",children:y.map(({type:C,models:W})=>e.jsxDEV("span",{className:"model-discovery-dialog__vendor-meta-pill",children:[nn[C]," ",W.length]},`${c.vendor}-${C}`,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:316,columnNumber:33},void 0))},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:313,columnNumber:27},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:309,columnNumber:25},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:305,columnNumber:23},void 0),e.jsxDEV("span",{className:"model-discovery-dialog__vendor-spacer"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:328,columnNumber:23},void 0),e.jsxDEV("div",{className:"model-discovery-dialog__vendor-side",children:[c.selectedCount>0?e.jsxDEV("span",{className:"model-discovery-dialog__vendor-selected",children:["已选 ",c.selectedCount]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:332,columnNumber:27},void 0):null,e.jsxDEV("span",{className:"model-discovery-dialog__vendor-count",children:c.models.length},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:336,columnNumber:25},void 0),e.jsxDEV("span",{className:`model-discovery-dialog__vendor-chevron ${M?"model-discovery-dialog__vendor-chevron--expanded":""}`,children:e.jsxDEV(zi,{size:16},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:346,columnNumber:27},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:339,columnNumber:25},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:330,columnNumber:23},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:300,columnNumber:21},void 0),M?e.jsxDEV("div",{className:"model-discovery-dialog__vendor-body",children:y.map(({type:C,models:W})=>e.jsxDEV("div",{className:"model-discovery-dialog__type-section",children:[e.jsxDEV("div",{className:"model-discovery-dialog__type-section-header",children:[e.jsxDEV("span",{className:"model-discovery-dialog__type-section-title",children:sn[C]},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:359,columnNumber:31},void 0),e.jsxDEV("span",{className:"model-discovery-dialog__type-section-count",children:W.length},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:362,columnNumber:31},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:358,columnNumber:29},void 0),e.jsxDEV("div",{className:"model-discovery-dialog__model-stack",children:W.map(G=>{const te=b.has(G.id);return e.jsxDEV("label",{className:`model-discovery-dialog__item ${te?"model-discovery-dialog__item--checked":""}`,children:[e.jsxDEV("input",{type:"checkbox",className:"model-discovery-dialog__checkbox",checked:te,onChange:()=>De(G.id)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:380,columnNumber:37},void 0),e.jsxDEV("span",{className:"model-discovery-dialog__checkmark",children:te?e.jsxDEV(ks,{size:12},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:387,columnNumber:50},void 0):null},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:386,columnNumber:37},void 0),e.jsxDEV("div",{className:"model-discovery-dialog__item-body",children:e.jsxDEV("div",{className:`model-discovery-dialog__item-id ${te?"model-discovery-dialog__item-id--checked":""}`,children:G.id},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:391,columnNumber:39},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:390,columnNumber:37},void 0),L?e.jsxDEV(be,{content:"测试此模型",showArrow:!1,children:e.jsxDEV("button",{type:"button",className:"model-discovery-dialog__item-test",onClick:fe=>{fe.preventDefault(),fe.stopPropagation(),L(G.id)},children:e.jsxDEV(Li,{size:13},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:412,columnNumber:43},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:403,columnNumber:41},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:402,columnNumber:39},void 0):null]},G.id,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:372,columnNumber:35},void 0)})},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:367,columnNumber:29},void 0)]},`${c.vendor}-${C}`,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:354,columnNumber:27},void 0))},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:352,columnNumber:23},void 0):null]},c.vendor,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:285,columnNumber:19},void 0)})},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:278,columnNumber:13},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:272,columnNumber:9},void 0),e.jsxDEV("div",{className:"model-discovery-dialog__footer",children:[e.jsxDEV("span",{className:"model-discovery-dialog__selection-count",children:["已选 ",q," 个 · 图 ",F.image," / 视"," ",F.video," / 文 ",F.text]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:432,columnNumber:11},void 0),e.jsxDEV("div",{className:"model-discovery-dialog__footer-bulk",children:[e.jsxDEV("button",{type:"button",className:"model-discovery-dialog__ghost-button",onClick:ve,disabled:B.length===0,children:se?"取消当前筛选":"全选"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:437,columnNumber:13},void 0),e.jsxDEV("button",{type:"button",className:"model-discovery-dialog__ghost-button",onClick:ke,disabled:X.length===0||Ee,children:"选中推荐模型"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:445,columnNumber:13},void 0),e.jsxDEV("button",{type:"button",className:"model-discovery-dialog__ghost-button model-discovery-dialog__ghost-button--muted",onClick:()=>w([]),disabled:$.length===0,children:"清空"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:453,columnNumber:13},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:436,columnNumber:11},void 0),e.jsxDEV("div",{className:"model-discovery-dialog__actions",children:[e.jsxDEV("button",{type:"button",className:"model-discovery-dialog__button model-discovery-dialog__button--secondary",onClick:v,children:"取消"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:463,columnNumber:13},void 0),e.jsxDEV("button",{type:"button",className:"model-discovery-dialog__button model-discovery-dialog__button--primary",onClick:()=>x($),children:"添加模型"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:470,columnNumber:13},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:462,columnNumber:11},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:431,columnNumber:9},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:209,columnNumber:7},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:208,columnNumber:5},void 0)},ln=Vs.memo(({profile:s,onUpdateProfile:o})=>{const[a,g]=m.useState(!1),v=Zs(s.id),x=Us(s),L=(x==null?void 0:x.pricingUrl)||"",Z=(x==null?void 0:x.cnyPerUsd)??1,Ne=(x==null?void 0:x.pricingGroup)||"default",Q=m.useCallback(async()=>{if(x){g(!0);try{await _i.fetchAndCache(s.id,x.pricingUrl,s.apiKey,x.pricingGroup,x.cnyPerUsd,{force:!0,promoteToAutoRefresh:!0}),O.success("价格信息已同步")}catch(w){O.error(`获取价格失败: ${w instanceof Error?w.message:"未知错误"}`)}finally{g(!1)}}},[x,s.id,s.apiKey]),he=m.useCallback(async w=>{const I=String(w);if(o(z=>({...z,pricingGroup:I})),!!x){g(!0);try{await _i.fetchAndCache(s.id,x.pricingUrl,s.apiKey,I,x.cnyPerUsd)}catch{}finally{g(!1)}}},[o,x,s.id,s.apiKey]),$=v.map(w=>({label:w.displayName||w.name,value:w.name}));return e.jsxDEV("div",{className:"settings-dialog__pricing-group",children:[e.jsxDEV("div",{className:"settings-dialog__pricing-row",children:[e.jsxDEV("div",{className:"settings-dialog__field settings-dialog__field--column",style:{flex:1,minWidth:0},children:[e.jsxDEV("label",{className:"settings-dialog__label settings-dialog__label--stacked",children:"模型价格 URL"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/pricing-field-group.tsx",lineNumber:78,columnNumber:13},void 0),e.jsxDEV("input",{type:"text",className:"settings-dialog__input",value:L,onChange:w=>o(I=>({...I,pricingUrl:w.target.value})),placeholder:"如 https://api.tu-zi.com/api/pricing"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/pricing-field-group.tsx",lineNumber:81,columnNumber:13},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/pricing-field-group.tsx",lineNumber:77,columnNumber:11},void 0),e.jsxDEV("div",{className:"settings-dialog__field settings-dialog__field--column",style:{width:110,flexShrink:0},children:[e.jsxDEV("label",{className:"settings-dialog__label settings-dialog__label--stacked",children:"¥/1USD"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/pricing-field-group.tsx",lineNumber:92,columnNumber:13},void 0),e.jsxDEV("input",{type:"number",className:"settings-dialog__input",value:Z,step:.01,min:0,onChange:w=>o(I=>({...I,cnyPerUsd:parseFloat(w.target.value)||0}))},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/pricing-field-group.tsx",lineNumber:95,columnNumber:13},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/pricing-field-group.tsx",lineNumber:91,columnNumber:11},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/pricing-field-group.tsx",lineNumber:76,columnNumber:9},void 0),e.jsxDEV("div",{className:"settings-dialog__pricing-row",children:[$.length>0?e.jsxDEV("div",{className:"settings-dialog__field settings-dialog__field--column",style:{flex:1,minWidth:0},children:[e.jsxDEV("label",{className:"settings-dialog__label settings-dialog__label--stacked",children:"当前分组"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/pricing-field-group.tsx",lineNumber:113,columnNumber:15},void 0),e.jsxDEV(qs,{value:Ne,options:$,onChange:w=>he(w),style:{width:"100%"}},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/pricing-field-group.tsx",lineNumber:116,columnNumber:15},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/pricing-field-group.tsx",lineNumber:112,columnNumber:13},void 0):null,e.jsxDEV("button",{type:"button",className:"settings-dialog__button settings-dialog__button--fetch",style:{alignSelf:"flex-end",height:32,flexShrink:0},onClick:Q,disabled:a||!L,children:a?"同步中":"获取价格"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/pricing-field-group.tsx",lineNumber:124,columnNumber:11},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/pricing-field-group.tsx",lineNumber:110,columnNumber:9},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/pricing-field-group.tsx",lineNumber:75,columnNumber:7},void 0)});function rn(s,o){return{id:o,name:`供应商 ${s}`,iconUrl:"",providerType:"openai-compatible",baseUrl:"",apiKey:"",authType:"bearer",imageApiCompatibility:$i,enabled:!0,capabilities:{supportsModelsEndpoint:!0,supportsText:!0,supportsImage:!0,supportsVideo:!0,supportsAudio:!0,supportsTools:!0}}}const Ui="aitu:settings:provider-nav",cn=980,un=[{value:"providers",label:"供应商"},{value:"presets",label:"模型预设"},{value:"canvas",label:"画布显示"},{value:"speech",label:"语音播放"}],gn=["openai-compatible","gemini-compatible","custom"],mn=["auto","openai-gpt-image","tuzi-gpt-image","openai-compatible-basic"],qi={image:"图片",video:"视频",audio:"音频",text:"文本"},Nn={image:"图片模型",video:"视频模型",audio:"音频模型",text:"文本模型"},fn=m.memo(function({profileId:o,modelId:a}){const g=Qs(o,a);return g?e.jsxDEV("span",{className:"settings-dialog__model-price",children:g},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:157,columnNumber:10},this):null}),pn=m.memo(function({profileId:o,modelId:a}){const g=Hs(o,a);return g!=null&&g.description?e.jsxDEV(be,{content:g.description,placement:"top",children:e.jsxDEV("span",{className:"settings-dialog__model-type-item-id settings-dialog__model-type-item-id--has-desc",children:a},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:175,columnNumber:7},this)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:174,columnNumber:5},this):e.jsxDEV("span",{className:"settings-dialog__model-type-item-id",children:a},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:170,columnNumber:7},this)});function xn(s,o,a,g){return o===0&&a===0?null:g===0&&a>0?`已清空 ${s} 的已添加模型`:o>0&&a>0?`已更新 ${s} 的模型(新增 ${o} 个,移除 ${a} 个)`:o>0?`已为 ${s} 添加 ${o} 个模型`:`已从 ${s} 移除 ${a} 个模型`}const bn=["text","image","video","audio"],We={"openai-compatible":{label:"OpenAI 兼容"},"gemini-compatible":{label:"Gemini 兼容"},custom:{label:"自定义接入"}},Ye={auto:{label:"自动"},"openai-gpt-image":{label:"OpenAI GPT Image"},"tuzi-gpt-image":{label:"Tuzi GPT 兼容"},"openai-compatible-basic":{label:"OpenAI-compatible 通用兼容(兜底)"}};function hn(s){return s==="auto"||s==="openai-gpt-image"||s==="tuzi-gpt-image"||s==="openai-compatible-basic"?s:s==="tuzi-compatible"?"tuzi-gpt-image":"auto"}function vn(s){const o=s.baseUrl.trim().toLowerCase();return o.includes("api.openai.com")?"openai-gpt-image":o.includes("api.tu-zi.com")?"tuzi-gpt-image":"openai-compatible-basic"}function yn(s){const o=hn(s.imageApiCompatibility);if(o==="auto"){const a=vn(s);return`默认推荐显式选择 OpenAI GPT Image;如果保留自动模式,GPT Image 模型当前会解析为 ${Ye[a].label}。`}return o==="openai-gpt-image"?"默认推荐模式。适用于官方 GPT Image 请求格式,也便于后续继续扩展官方图生图能力。":`同一个图片模型在不同 API Key 或网关下可能需要不同接口格式;当前已固定为 ${Ye[o].label}。`}const Mi=["amber","sky","mint","rose","violet"];function Ii(s){return s.reduce((o,a)=>(o[a.type]+=1,o),{image:0,video:0,audio:0,text:0})}function _n(s,o){const a=o.trim().toLowerCase();return a?[s.id,s.label,s.shortLabel,s.shortCode,s.description,s.sourceProfileName,Ae(s.vendor)].filter(Boolean).some(g=>g==null?void 0:g.toLowerCase().includes(a)):!0}function jn(s){const o=new Set,a=[];return s.forEach(g=>{const v=`${g.type}:${g.id}`;o.has(v)||(o.add(v),a.push(g))}),a}function Si(s){return s?["image","video","audio","text"].filter(o=>!!K(s[o])).length:0}function Pi(s,o){const a=o.find(g=>g.id===s.id);return a?Mn(a,s)?"saved":"dirty":"new"}function Ce(s){return JSON.stringify(s)}function wn(s){return typeof s.iconUrl!="string"?null:s.iconUrl.trim()||null}function En(s){var g;const o=s.trim();if(!o)return"供";const a=o.match(/[A-Za-z0-9]+/g);return a!=null&&a[0]?a[0][0].toUpperCase():((g=Array.from(o)[0])==null?void 0:g.toUpperCase())||"供"}function Dn(s){const o=Array.from(`${s.id}-${s.providerType}-${s.name}`).reduce((a,g,v)=>a+g.charCodeAt(0)*(v+1),0);return Mi[o%Mi.length]}function ue(s){return JSON.parse(JSON.stringify(s))}function He(s){return`${s}-${Date.now()}-${Math.random().toString(36).slice(2,8)}`}function Ci(s){return rn(s,He("profile"))}function kn(){if(typeof window>"u")return null;const s=window.__aituPendingProviderNavigationIntent||null;return window.__aituPendingProviderNavigationIntent=void 0,s}function Ai(s){return"bearer"}function Ze(s){return s===A||s===As||s===Rs||s===Ts}const Ri=({profile:s,size:o="regular"})=>{const a=wn(s),[g,v]=m.useState(a);m.useEffect(()=>{v(a)},[a]);const x=Dn(s),L=En(s.name);return e.jsxDEV("span",{className:`settings-dialog__provider-avatar settings-dialog__provider-avatar--${x} ${o==="large"?"settings-dialog__provider-avatar--large":""}`,"aria-hidden":"true",children:g?e.jsxDEV("img",{src:g,alt:`${s.name} 图标`,className:"settings-dialog__provider-avatar-image",loading:"lazy",onError:()=>v(null)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:512,columnNumber:9},void 0):e.jsxDEV("span",{className:"settings-dialog__provider-avatar-text",children:L},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:520,columnNumber:9},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:505,columnNumber:5},void 0)};function Vn(s,o){return{id:He("preset"),name:"新预设",text:ge(me(s,o.text||null)),image:ge(me(s,o.image||null)),video:ge(me(s,o.video||null)),audio:ge(me(s,o.audio||null))}}function Un(s,o,a){const g=s[o],v=a.defaultModelRef!==void 0?a.defaultModelRef:me(a.profileId!==void 0?a.profileId:qe(g),a.defaultModelId!==void 0?a.defaultModelId:K(g));return{...s,[o]:ge(v)}}function qn(s,o){const a={...s};return["image","video","audio","text"].forEach(g=>{qe(a[g])===o&&(a[g]=ge(null))}),a}function Mn(s,o){return JSON.stringify(s)===JSON.stringify(o)}function In(s){return s.flatMap(({profile:o,models:a})=>a.map(g=>({...g,sourceProfileId:o.id,sourceProfileName:o.name,selectionKey:g.selectionKey||`${o.id}::${g.id}`})))}const Tn=({container:s})=>{const{appState:o,setAppState:a}=Ms(),{confirm:g,confirmDialog:v}=Is({container:s}),{isMobile:x,viewportWidth:L,viewportHeight:Z}=Ss(),Ne=m.useRef(null),[Q,he]=m.useState(0),[$,w]=m.useState("providers"),[I,z]=m.useState(A),[ie,B]=m.useState(ee),[b,P]=m.useState([]),[q,F]=m.useState([]),[se,X]=m.useState(ee),[Ee,De]=m.useState([]),[ve,ke]=m.useState(""),[ne,c]=m.useState(""),[j,y]=m.useState(""),[M,C]=m.useState(""),[W,G]=m.useState(!0),[te,fe]=m.useState(""),[Qe,Me]=m.useState(!1),[Fi,Re]=m.useState(""),[Xe,Je]=m.useState(!1),[Wi,ae]=m.useState("catalog"),[Zi,ye]=m.useState("catalog"),[Yi,Hi]=m.useState(new Set),Qi=i=>{Hi(n=>{const d=new Set(n);return d.has(i)?d.delete(i):d.add(i),d})},u=b.find(i=>i.id===I)||b[0]||null,Xi=u?yn(u):"同一个图片模型在不同 API Key 或网关下可能需要不同接口格式;不确定时使用自动。",R=q.find(i=>i.id===ie)||q[0]||null,T=Ys((u==null?void 0:u.id)||A),Ji=m.useDeferredValue(te),ei=Pe(A,"image"),es=Pe(A,"audio"),ii=Pe(A,"video"),si=Pe(A,"text"),is=b.filter(i=>i.enabled),f=x||L<=cn,ni=f&&(Q>0?Q<600:L<600),Te=!!u&&!!u.apiKey.trim(),ss=Ce({profiles:b,presets:q,activePresetId:se,audioModelName:ve,imageModelName:ne,videoModelName:j,textModelName:M,showWorkZoneCard:W}),ti=o.openSettings&&ss!==Fi;m.useEffect(()=>{const i=Ne.current;if(!i||typeof ResizeObserver>"u")return;const n=new ResizeObserver(d=>{var l;const t=(l=d[0])==null?void 0:l.contentRect.width;t&&he(r=>Math.abs(r-t)<1?r:t)});return n.observe(i),()=>{n.disconnect()}},[o.openSettings]);const ns=i=>{w(i),f&&(i==="providers"&&ae("catalog"),i==="presets"&&ye("catalog"))},ts=i=>{z(i),f&&ae("detail")},as=i=>{B(i),f&&ye("detail")},ds=()=>{try{return localStorage.getItem(Ie.WORKZONE_CARD_VISIBLE)!=="false"}catch{return!0}},Oe=()=>{const i=ue(Ve.get()),n=ue(oe.get()),d=oe.getActivePresetId()||ee,t=Ue.get(),l=ds();De(i),Re(Ce({profiles:i,presets:n,activePresetId:d,audioModelName:t.audioModelName||xe(),imageModelName:t.imageModelName||le(),videoModelName:t.videoModelName||re(),textModelName:t.textModelName||ce(),showWorkZoneCard:l}))};m.useEffect(()=>{var h;if(!o.openSettings)return;const i=ue(Ve.get()),n=ue(oe.get()),d=oe.getActivePresetId()||ee,t=Ue.get();let l=!0;const r=kn(),N=(r==null?void 0:r.action)==="select"&&i.some(_=>_.id===r.profileId)?r.profileId:((h=i[0])==null?void 0:h.id)||A;P(i),F(n),De(i),X(d),z(_=>{var D;return r?N:i.some(V=>V.id===_)?_:((D=i[0])==null?void 0:D.id)||A}),B(_=>{var D;return n.some(V=>V.id===_)?_:((D=n[0])==null?void 0:D.id)||ee}),ke(t.audioModelName||xe()),c(t.imageModelName||le()),y(t.videoModelName||re()),C(t.textModelName||ce());try{l=localStorage.getItem(Ie.WORKZONE_CARD_VISIBLE)!=="false"}catch{l=!0}G(l),w("providers"),ae(r&&f?"detail":"catalog"),ye("catalog"),fe(""),Me(!1),Re(Ce({profiles:i,presets:n,activePresetId:d,audioModelName:t.audioModelName||xe(),imageModelName:t.imageModelName||le(),videoModelName:t.videoModelName||re(),textModelName:t.textModelName||ce(),showWorkZoneCard:l})),(r==null?void 0:r.action)==="create"&&di(r,i)},[o.openSettings]),m.useEffect(()=>{if(!I&&b[0]){z(b[0].id);return}I&&b.length>0&&!b.some(i=>i.id===I)&&z(b[0].id)},[b,I]),m.useEffect(()=>{if(!ie&&q[0]){B(q[0].id);return}ie&&q.length>0&&!q.some(i=>i.id===ie)&&B(q[0].id)},[q,ie]),m.useEffect(()=>{fe("")},[I,$]);const pe=(i,n)=>{P(d=>d.map(t=>t.id===i?n(t):t))},os=(i,n)=>{F(d=>d.map(t=>t.id===i?n(t):t))},ai=async(i,n)=>{var d,t;try{const l=Ue.get(),r=((d=i.find(k=>k.id===n))==null?void 0:d.id)||((t=i[0])==null?void 0:t.id)||ee,N=i.find(k=>k.id===r)||i[0]||null,h=K(N==null?void 0:N.audio)||l.audioModelName||xe(),_=K(N==null?void 0:N.image)||l.imageModelName||le(),D=K(N==null?void 0:N.video)||l.videoModelName||re(),V=K(N==null?void 0:N.text)||l.textModelName||l.chatModel||ce();return await oe.update(ue(i)),await oe.setActivePresetId(r),await Ue.update({audioModelName:h,imageModelName:_,videoModelName:D,textModelName:V,chatModel:V}),F(i),X(r),ke(h),c(_),y(D),C(V),Oe(),!0}catch(l){return console.error("Failed to persist preset configuration:",l),O.error("预设保存失败,请重试"),!1}},ls=async(i,n)=>{if(P(d=>d.map(t=>t.id===i?{...t,enabled:n}:t)),!!Ee.some(d=>d.id===i))try{await Ve.update(ue(Ve.get()).map(d=>d.id===i?{...d,enabled:n}:d)),Oe()}catch(d){console.error("Failed to persist provider enabled state:",d),P(t=>t.map(l=>l.id===i?{...l,enabled:!n}:l)),O.error("供应商状态保存失败,请重试")}},rs=async i=>{G(i);try{localStorage.setItem(Ie.WORKZONE_CARD_VISIBLE,String(i)),window.dispatchEvent(new CustomEvent("workzone-visibility-changed")),Oe()}catch(n){console.error("Failed to persist canvas visibility state:",n),G(!i),O.error("画布显示配置保存失败,请重试")}},di=(i,n)=>{var r;const d=n||b;if(w("providers"),f&&ae("detail"),i.action==="select"){const N=d.some(h=>h.id===i.profileId)?i.profileId:((r=d[d.length-1])==null?void 0:r.id)||A;return z(N),d}const t=Ci(d.length+1),l=[...d,t];return P(l),z(t.id),l},oi=()=>{const i=Ci(b.length+1);P(n=>[...n,i]),z(i.id),w("providers"),f&&ae("detail")};m.useEffect(()=>{if(!o.openSettings)return;const i=n=>{const d=n.detail;d&&di(d)};return window.addEventListener(Ui,i),()=>{window.removeEventListener(Ui,i)}},[o.openSettings,f,b]);const li=async i=>{var l;if(Ze(i))return;const n=b.find(r=>r.id===i);if(!await g({title:"确认删除供应商",description:`确定要删除供应商「${(n==null?void 0:n.name)||"未命名供应商"}」吗?相关预设里的路由会被清空。`,confirmText:"删除",cancelText:"取消",danger:!0}))return;const t=b.filter(r=>r.id!==i);P(t),F(r=>r.map(N=>qn(N,i))),I===i&&z(((l=t[0])==null?void 0:l.id)||A),f&&ae("catalog")},ri=m.useCallback(i=>{const n=b.find(t=>t.id===i);if(!n)return;const d={...ue(n),id:He("profile"),name:`${n.name} (副本)`};P(t=>[...t,d]),z(d.id),w("providers"),f&&ae("detail")},[b,f]),ze=Ps(),cs=m.useCallback(i=>{const n=[{key:"clone",label:"克隆",icon:e.jsxDEV(Os,{size:14},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1172,columnNumber:17},void 0),onSelect:ri}];return Ze(i)||n.push({key:"divider",type:"divider"},{key:"delete",label:"删除",icon:e.jsxDEV(ji,{size:14},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1182,columnNumber:19},void 0),danger:!0,onSelect:li}),n},[ri]),ci=()=>{var d;const i=((d=is[0])==null?void 0:d.id)||null,n=Vn(i,{audio:ve||xe(),image:ne||le(),video:j||re(),text:M||ce()});F(t=>[...t,n]),B(n.id),w("presets"),f&&ye("detail")},us=async i=>{var l,r;if(q.length<=1)return;const n=q.find(N=>N.id===i);if(!await g({title:"确认删除预设",description:`确定要删除预设「${(n==null?void 0:n.name)||"未命名预设"}」吗?此操作不可撤销。`,confirmText:"删除",cancelText:"取消",danger:!0}))return;const t=q.filter(N=>N.id!==i);F(t),se===i&&X(((l=t[0])==null?void 0:l.id)||ee),ie===i&&B(((r=t[0])==null?void 0:r.id)||ee),f&&ye("catalog")},ui=(i,n)=>{if(!R)return;const d=q.map(t=>t.id===R.id?Un(t,i,{defaultModelRef:n}):t);F(d),ai(d,se)},gs=async()=>{if(!u){O.warning("请先选择供应商配置");return}if(ti){const d=O.loading("正在保存当前配置...",0),t=await Ni(!1);if(O.close(d),!t)return}const i=u.apiKey.trim(),n=Fe(u.baseUrl.trim()||Se);if(!i){O.warning("请先填写 API Key");return}try{await we.discover(u.id,n,i),Me(!0)}catch(d){const t=d instanceof Error?d.message:"模型同步失败";we.setError(u.id,t),O.error({content:t,duration:3600})}},gi=(i,n)=>{var r,N,h;if(!u)return;const d=we.applySelection(u.id,i),t=d.models;if(u.id===A){const _=t.filter(p=>p.type==="image"),D=t.filter(p=>p.type==="video"),V=t.filter(p=>p.type==="text"),k=T.discoveredModels.filter(p=>p.type==="image").map(p=>p.id),Y=T.discoveredModels.filter(p=>p.type==="video").map(p=>p.id),U=T.discoveredModels.filter(p=>p.type==="text").map(p=>p.id);!_.some(p=>p.id===ne)&&k.includes(ne)&&c(((r=_[0])==null?void 0:r.id)||le()),!D.some(p=>p.id===j)&&Y.includes(j)&&y(((N=D[0])==null?void 0:N.id)||re()),!V.some(p=>p.id===M)&&U.includes(M)&&C(((h=V[0])==null?void 0:h.id)||ce())}const l=(n==null?void 0:n.successMessage)||xn(u.name,d.addedModelIds.length,d.removedModelIds.length,t.length);l&&O.success(l),Me(!1)},ms=i=>{if(!u)return;if(!T.selectedModelIds.includes(i)){O.warning("该模型不是当前分组动态添加的模型,无法在此移除");return}const n=T.selectedModelIds.filter(d=>d!==i);gi(n)},mi=()=>{a(i=>({...i,openSettings:!1}))},Ni=async(i=!1)=>{var n,d,t,l,r,N;if(Xe)return!1;Je(!0);try{const h=b.map(E=>{var je;const _e=E.baseUrl.trim()?Fe(E.baseUrl):"";return{...E,name:E.name.trim()||"未命名供应商",iconUrl:((je=E.iconUrl)==null?void 0:je.trim())||void 0,baseUrl:_e,apiKey:E.apiKey.trim()}}),_=new Set(h.map(E=>E.id)),D=q.map(E=>{const _e={...E,name:E.name.trim()||"未命名预设",audio:{...E.audio},image:{...E.image},video:{...E.video},text:{...E.text}};return["image","video","audio","text"].forEach(je=>{const vi=_e[je],Be=qe(vi),yi=K(vi);if(Be&&!_.has(Be)){_e[je]=ge(me(null,yi));return}_e[je]=ge(me(Be,yi))}),_e}),V=((n=D.find(E=>E.id===se))==null?void 0:n.id)||((d=D[0])==null?void 0:d.id)||ee,k=D.find(E=>E.id===V)||D[0]||null,Y=h.find(E=>E.id===A)||h[0],U=Fe((Y==null?void 0:Y.baseUrl)||Se),p=ve.trim()||((t=es[0])==null?void 0:t.id)||xe(),J=ne.trim()||((l=ei[0])==null?void 0:l.id)||le(),S=j.trim()||((r=ii[0])==null?void 0:r.id)||re(),H=M.trim()||((N=si[0])==null?void 0:N.id)||ce(),Ge=K(k==null?void 0:k.image)||J,de=K(k==null?void 0:k.video)||S,ys=K(k==null?void 0:k.audio)||p,_s=K(k==null?void 0:k.text)||H;h.forEach(E=>{we.invalidateIfConfigChanged(E.id,E.baseUrl||Se,E.apiKey||"")}),await Ue.update({apiKey:(Y==null?void 0:Y.apiKey)||"",baseUrl:U,audioModelName:ys,imageModelName:Ge,videoModelName:de,textModelName:_s}),await Ve.update(h),await Bs.update(we.getCatalogs().filter(E=>_.has(E.profileId))),await oe.update(D),await oe.setActivePresetId(V);try{localStorage.setItem(Ie.WORKZONE_CARD_VISIBLE,String(W)),window.dispatchEvent(new CustomEvent("workzone-visibility-changed"))}catch{}return P(h),De(ue(h)),F(D),X(V),ke(p),c(J),y(S),C(H),Re(Ce({profiles:h,presets:D,activePresetId:V,audioModelName:p,imageModelName:J,videoModelName:S,textModelName:H,showWorkZoneCard:W})),i&&mi(),!0}catch(h){return console.error("Failed to persist settings drafts:",h),O.error("设置保存失败,请稍后重试"),!1}finally{Je(!1)}},Ns=()=>{if(!ti){mi();return}(async()=>{const i=O.loading("正在保存设置...",0),n=await Ni(!0);O.close(i),n||O.warning("设置尚未保存,请检查后重试")})()},fs=()=>{Qe||Xe||Ns()},fi=()=>e.jsxDEV("div",{className:"settings-dialog__sidebar-shell settings-dialog__sidebar-shell--catalog",children:[e.jsxDEV("div",{className:"settings-dialog__sidebar-summary",children:[e.jsxDEV("div",{className:"settings-dialog__sidebar-summary-row",children:[e.jsxDEV("span",{className:"settings-dialog__sidebar-summary-title",children:"供应商目录"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1600,columnNumber:11},void 0),f?e.jsxDEV("button",{type:"button",className:"settings-dialog__sidebar-summary-action",onClick:oi,children:"新增供应商"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1604,columnNumber:13},void 0):null]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1599,columnNumber:9},void 0),f?e.jsxDEV("span",{className:"settings-dialog__sidebar-summary-text",children:"先从列表里选择供应商,再进入对应的配置页面。"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1614,columnNumber:11},void 0):null]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1598,columnNumber:7},void 0),e.jsxDEV("div",{className:"settings-dialog__sidebar-list",children:b.map(i=>{const n=i.id===(u==null?void 0:u.id);return e.jsxDEV("div",{className:`settings-dialog__provider-row ${n?"settings-dialog__provider-row--active":""} ${i.enabled?"":"settings-dialog__provider-row--disabled"}`,onContextMenu:d=>{d.preventDefault(),ze.open(d,i.id)},children:[e.jsxDEV("button",{type:"button",className:"settings-dialog__provider-select",onClick:()=>ts(i.id),"aria-pressed":n,children:[e.jsxDEV("span",{className:"settings-dialog__provider-select-main",children:[e.jsxDEV(Ri,{profile:i},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1644,columnNumber:19},void 0),e.jsxDEV("span",{className:"settings-dialog__provider-copy",children:[e.jsxDEV("span",{className:"settings-dialog__provider-name-row",children:[e.jsxDEV("span",{className:"settings-dialog__provider-name",children:i.name},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1647,columnNumber:23},void 0),i.id===A?e.jsxDEV("span",{className:"settings-dialog__provider-tag",children:"默认"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1651,columnNumber:25},void 0):null]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1646,columnNumber:21},void 0),f?e.jsxDEV("span",{className:"settings-dialog__provider-meta",children:[e.jsxDEV("span",{children:We[i.providerType].label},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1658,columnNumber:25},void 0),e.jsxDEV("span",{children:i.enabled?"启用":"停用"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1661,columnNumber:25},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1657,columnNumber:23},void 0):null]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1645,columnNumber:19},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1643,columnNumber:17},void 0),f?e.jsxDEV(Ke,{size:16,className:"settings-dialog__provider-arrow","aria-hidden":"true"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1667,columnNumber:19},void 0):null]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1637,columnNumber:15},void 0),e.jsxDEV("div",{className:"settings-dialog__provider-switch",children:[e.jsxDEV("span",{className:"settings-dialog__provider-switch-copy",children:i.enabled?"启用":"停用"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1676,columnNumber:17},void 0),e.jsxDEV(wi,{size:"small",value:i.enabled,disabled:i.id===A,onChange:d=>void ls(i.id,d)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1679,columnNumber:17},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1675,columnNumber:15},void 0)]},i.id,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1625,columnNumber:13},void 0)})},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1620,columnNumber:7},void 0),e.jsxDEV(Gs,{state:ze.contextMenu,items:cs,onClose:ze.close,zIndex:2e4},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1696,columnNumber:7},void 0),f?null:e.jsxDEV("button",{type:"button",className:"settings-dialog__sidebar-add",onClick:oi,children:[e.jsxDEV("span",{className:"settings-dialog__sidebar-add-icon",children:"+"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1709,columnNumber:11},void 0),e.jsxDEV("span",{children:"新增供应商"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1710,columnNumber:11},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1704,columnNumber:9},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1597,columnNumber:5},void 0),pi=()=>e.jsxDEV("div",{className:"settings-dialog__sidebar-shell",children:[e.jsxDEV("div",{className:"settings-dialog__sidebar-summary",children:[e.jsxDEV("div",{className:"settings-dialog__sidebar-summary-row",children:[e.jsxDEV("span",{className:"settings-dialog__sidebar-summary-title",children:"默认模型"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1720,columnNumber:11},void 0),f?e.jsxDEV("button",{type:"button",className:"settings-dialog__sidebar-summary-action",onClick:ci,children:"新增预设"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1724,columnNumber:13},void 0):null]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1719,columnNumber:9},void 0),f?e.jsxDEV("span",{className:"settings-dialog__sidebar-summary-text",children:"先选中一个预设,再进入详情页调整默认路由。"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1734,columnNumber:11},void 0):null]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1718,columnNumber:7},void 0),e.jsxDEV("div",{className:"settings-dialog__sidebar-list",children:q.map(i=>{const n=i.id===(R==null?void 0:R.id),d=i.id===se,t=Si(i);return e.jsxDEV("button",{type:"button",className:`settings-dialog__sidebar-item ${n?"settings-dialog__sidebar-item--active":""}`,onClick:()=>as(i.id),children:[e.jsxDEV("div",{className:"settings-dialog__sidebar-item-head",children:[e.jsxDEV("div",{className:"settings-dialog__sidebar-item-top",children:[e.jsxDEV("span",{children:i.name},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1757,columnNumber:19},void 0),d?e.jsxDEV("span",{className:"settings-dialog__sidebar-badge settings-dialog__sidebar-badge--accent",children:"当前"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1759,columnNumber:21},void 0):null]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1756,columnNumber:17},void 0),f?e.jsxDEV(Ke,{size:16,className:"settings-dialog__sidebar-item-arrow","aria-hidden":"true"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1765,columnNumber:19},void 0):null]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1755,columnNumber:15},void 0),e.jsxDEV("div",{className:"settings-dialog__sidebar-item-meta",children:[e.jsxDEV("span",{children:[t,"/3 已配置"]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1774,columnNumber:17},void 0),f?e.jsxDEV("span",{children:d?"正在生效":"点击查看详情"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1776,columnNumber:19},void 0):null]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1773,columnNumber:15},void 0)]},i.id,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1747,columnNumber:13},void 0)})},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1740,columnNumber:7},void 0),f?null:e.jsxDEV("button",{type:"button",className:"settings-dialog__sidebar-add",onClick:ci,children:[e.jsxDEV("span",{className:"settings-dialog__sidebar-add-icon",children:"+"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1790,columnNumber:11},void 0),e.jsxDEV("span",{children:"新增预设"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1791,columnNumber:11},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1785,columnNumber:9},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1717,columnNumber:5},void 0),xi=(i,n)=>e.jsxDEV("div",{className:"settings-dialog__workspace settings-dialog__workspace--single",children:e.jsxDEV("div",{className:"settings-dialog__content-panel settings-dialog__content-panel--compact",children:e.jsxDEV("div",{className:"settings-dialog__mobile-stage",children:n},i,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1800,columnNumber:9},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1799,columnNumber:7},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1798,columnNumber:5},void 0),bi=(i=!1)=>{if(!u)return e.jsxDEV("div",{className:"settings-dialog__empty-panel",children:"请选择一个供应商。"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1810,columnNumber:9},void 0);const n=Ii(T.models),d=Pi(u,Ee),t=n.image+n.video+n.text;return e.jsxDEV("div",{className:`settings-dialog__content-panel settings-dialog__content-panel--providers ${i?"settings-dialog__content-panel--detail":""}`,children:[i?e.jsxDEV("div",{className:"settings-dialog__compact-stage-header",children:[e.jsxDEV("button",{type:"button",className:"settings-dialog__compact-back",onClick:()=>ae("catalog"),children:[e.jsxDEV(Ei,{size:16},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1833,columnNumber:15},void 0),e.jsxDEV("span",{children:"返回供应商目录"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1834,columnNumber:15},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1828,columnNumber:13},void 0),e.jsxDEV("div",{className:"settings-dialog__compact-stage-copy",children:[e.jsxDEV("span",{className:"settings-dialog__compact-stage-eyebrow",children:"供应商配置"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1837,columnNumber:15},void 0),e.jsxDEV("p",{className:"settings-dialog__compact-stage-text",children:"进入详情后再编辑接口信息、密钥和模型同步配置。"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1840,columnNumber:15},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1836,columnNumber:13},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1827,columnNumber:11},void 0):null,e.jsxDEV("div",{className:"settings-dialog__section settings-dialog__section--compact",children:e.jsxDEV("div",{className:"settings-dialog__panel-header",children:[e.jsxDEV("div",{className:"settings-dialog__profile-hero",children:[e.jsxDEV(Ri,{profile:u,size:"large"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1849,columnNumber:15},void 0),e.jsxDEV("div",{children:[e.jsxDEV("h3",{className:"settings-dialog__section-title",children:u.name},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1851,columnNumber:17},void 0),e.jsxDEV("div",{className:"settings-dialog__inline-meta",children:[e.jsxDEV("span",{children:We[u.providerType].label},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1855,columnNumber:19},void 0),e.jsxDEV("span",{children:u.enabled?"启用":"停用"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1858,columnNumber:19},void 0),e.jsxDEV("span",{children:[t," 个模型"]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1859,columnNumber:19},void 0),e.jsxDEV("span",{children:d==="saved"?"已保存":"未保存"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1860,columnNumber:19},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1854,columnNumber:17},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1850,columnNumber:15},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1848,columnNumber:13},void 0),Ze(u.id)?null:e.jsxDEV("button",{type:"button",className:"settings-dialog__danger-button",onClick:()=>li(u.id),children:"删除"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1865,columnNumber:15},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1847,columnNumber:11},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1846,columnNumber:9},void 0),e.jsxDEV("div",{className:"settings-dialog__section",children:[e.jsxDEV("div",{className:"settings-dialog__section-header",children:e.jsxDEV("div",{children:e.jsxDEV("h3",{className:"settings-dialog__section-title",children:"基础配置"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1879,columnNumber:15},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1878,columnNumber:13},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1877,columnNumber:11},void 0),e.jsxDEV("div",{className:"settings-dialog__grid",children:[e.jsxDEV("div",{className:"settings-dialog__field settings-dialog__field--column",children:[e.jsxDEV("label",{className:"settings-dialog__label settings-dialog__label--stacked",children:"名称"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1885,columnNumber:15},void 0),e.jsxDEV("input",{type:"text",className:"settings-dialog__input",value:u.name,onChange:l=>pe(u.id,r=>({...r,name:l.target.value}))},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1888,columnNumber:15},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1884,columnNumber:13},void 0),e.jsxDEV("div",{className:"settings-dialog__field settings-dialog__field--column",children:[e.jsxDEV("label",{className:"settings-dialog__label settings-dialog__label--stacked",children:"接口类型"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1902,columnNumber:15},void 0),e.jsxDEV("select",{className:"settings-dialog__select",value:u.providerType,onChange:l=>pe(u.id,r=>{const N=l.target.value,h=Ai(r.providerType),_=Ai();return{...r,providerType:N,authType:r.authType===h?_:r.authType}}),children:gn.map(l=>e.jsxDEV("option",{value:l,children:We[l].label},l,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1930,columnNumber:19},void 0))},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1905,columnNumber:15},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1901,columnNumber:13},void 0),e.jsxDEV("div",{className:"settings-dialog__field settings-dialog__field--column settings-dialog__field--full",children:[e.jsxDEV("label",{className:"settings-dialog__label settings-dialog__label--stacked",children:"图片接口格式"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1938,columnNumber:15},void 0),e.jsxDEV("select",{className:"settings-dialog__select",value:u.imageApiCompatibility||$i,onChange:l=>pe(u.id,r=>({...r,imageApiCompatibility:l.target.value})),children:mn.map(l=>e.jsxDEV("option",{value:l,children:Ye[l].label},l,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1956,columnNumber:19},void 0))},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1941,columnNumber:15},void 0),e.jsxDEV("span",{className:"settings-dialog__field-hint",children:Xi},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1961,columnNumber:15},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1937,columnNumber:13},void 0),e.jsxDEV("div",{className:"settings-dialog__field settings-dialog__field--column settings-dialog__field--full",children:[e.jsxDEV("label",{className:"settings-dialog__label settings-dialog__label--stacked",children:"图标 URL"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1967,columnNumber:15},void 0),e.jsxDEV("input",{type:"url",className:"settings-dialog__input",value:u.iconUrl||"",onChange:l=>pe(u.id,r=>({...r,iconUrl:l.target.value})),placeholder:"可选,留空时自动生成默认图标"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1970,columnNumber:15},void 0),e.jsxDEV("span",{className:"settings-dialog__field-hint",children:"支持填写远程图片地址;未填写时将根据供应商名称生成默认图标。"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1982,columnNumber:15},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1966,columnNumber:13},void 0),e.jsxDEV("div",{className:"settings-dialog__field settings-dialog__field--column settings-dialog__field--full",children:[e.jsxDEV("label",{className:"settings-dialog__label settings-dialog__label--stacked",children:"API 地址"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1988,columnNumber:15},void 0),e.jsxDEV("input",{type:"text",className:"settings-dialog__input",value:u.baseUrl,onChange:l=>pe(u.id,r=>({...r,baseUrl:l.target.value})),placeholder:Se},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1991,columnNumber:15},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1987,columnNumber:13},void 0),e.jsxDEV("div",{className:"settings-dialog__field settings-dialog__field--column settings-dialog__field--full",children:[e.jsxDEV("div",{className:"settings-dialog__label-with-tooltip settings-dialog__label-with-tooltip--left",children:[e.jsxDEV("label",{className:"settings-dialog__label settings-dialog__label--stacked",children:"API Key"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2007,columnNumber:17},void 0),e.jsxDEV(be,{content:e.jsxDEV("div",{style:{maxWidth:480},children:["您可以从以下地址获取 API Key:",e.jsxDEV("br",{},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2014,columnNumber:23},void 0),e.jsxDEV("a",{href:"https://api.tu-zi.com/token",target:"_blank",rel:"noopener noreferrer",style:{color:"#F39C12",textDecoration:"none",display:"inline-block",marginBottom:8},children:"api.tu-zi.com/token"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2015,columnNumber:23},void 0),e.jsxDEV("div",{style:{position:"relative",width:"100%",paddingTop:"56.25%",marginTop:8,borderRadius:8,overflow:"hidden",backgroundColor:"#000",boxShadow:"0 4px 16px rgba(0,0,0,0.2)"},children:e.jsxDEV("iframe",{title:"Bilibili tutorial video",src:"//player.bilibili.com/player.html?isOutside=true&aid=116171584049629&bvid=BV1k4PqzPEKz&cid=36455319822&p=1",allowFullScreen:!0,style:{position:"absolute",top:0,left:0,width:"100%",height:"100%",border:0}},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2040,columnNumber:25},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2028,columnNumber:23},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2012,columnNumber:21},void 0),placement:"top",theme:"light",showArrow:!1,overlayStyle:{maxWidth:"none"},children:e.jsxDEV(Ls,{className:"settings-dialog__tooltip-icon"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2061,columnNumber:19},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2010,columnNumber:17},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2006,columnNumber:15},void 0),e.jsxDEV("div",{style:{display:"flex",gap:"8px",alignItems:"center",width:"100%",flexDirection:f?"column":"row"},children:[e.jsxDEV("input",{type:"password",className:"settings-dialog__input",style:{flex:f?"none":1,width:"100%"},value:u.apiKey,onChange:l=>pe(u.id,r=>({...r,apiKey:l.target.value})),autoComplete:"off"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2073,columnNumber:17},void 0),e.jsxDEV("button",{type:"button",className:"settings-dialog__button settings-dialog__button--fetch",style:{whiteSpace:"nowrap",height:f?"42px":"32px",width:f?"100%":"auto"},onClick:gs,disabled:!Te||T.status==="loading",children:T.status==="loading"?e.jsxDEV(e.Fragment,{children:[e.jsxDEV($s,{size:15,className:"settings-dialog__button-spinner"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2101,columnNumber:23},void 0),"同步中"]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2100,columnNumber:21},void 0):"获取模型"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2086,columnNumber:17},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2064,columnNumber:15},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2005,columnNumber:13},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1883,columnNumber:11},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1876,columnNumber:9},void 0),e.jsxDEV(ln,{profile:u,onUpdateProfile:l=>pe(u.id,l)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2116,columnNumber:9},void 0),u.id===A?e.jsxDEV("div",{className:"settings-dialog__section settings-dialog__section--compact",children:e.jsxDEV("div",{className:"settings-dialog__compat-card",children:[e.jsxDEV("div",{className:"settings-dialog__compat-title",children:"兼容默认模型"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2126,columnNumber:15},void 0),e.jsxDEV("div",{className:"settings-dialog__compat-meta",children:[e.jsxDEV("span",{children:["图片:",ne||le()]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2128,columnNumber:17},void 0),e.jsxDEV("span",{children:["视频:",j||re()]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2129,columnNumber:17},void 0),e.jsxDEV("span",{children:["音频:",ve||xe()]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2130,columnNumber:17},void 0),e.jsxDEV("span",{children:["文本:",M||ce()]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2131,columnNumber:17},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2127,columnNumber:15},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2125,columnNumber:13},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2124,columnNumber:11},void 0):null,ps()]},i?`provider-detail-${u.id}`:void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1820,columnNumber:7},void 0)},Le=m.useCallback(i=>{i.profileId&&Js({profileId:i.profileId,modelId:i.modelId,modality:i.modality,compareMode:i.compareMode})},[a]),ps=()=>{const i=u?Pi(u,Ee):"saved",n=!!(u!=null&&u.apiKey.trim())&&i==="saved"&&T.status!=="loading",d=(u==null?void 0:u.id)===A,t=jn(T.models),l=new Map(Gi.map((U,p)=>[U,p])),r=Ji.trim(),N=Ii(t),h=t.filter(U=>_n(U,r)),_=bn.map(U=>({type:U,models:h.filter(p=>p.type===U).sort((p,J)=>{const S=l.get(p.vendor)??Number.MAX_SAFE_INTEGER,H=l.get(J.vendor)??Number.MAX_SAFE_INTEGER;return S!==H?S-H:Ks(p,J)})})).filter(U=>U.models.length>0),D=Te||t.length>0,V=t.length>0&&h.length===0&&!!r,k=T.status==="error"&&t.length===0,Y=!Te&&t.length===0;return e.jsxDEV("div",{className:"settings-dialog__section",children:[e.jsxDEV("div",{className:"settings-dialog__section-header",children:e.jsxDEV("div",{children:[e.jsxDEV("h3",{className:"settings-dialog__section-title",children:"模型"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2211,columnNumber:13},void 0),e.jsxDEV("div",{className:"settings-dialog__inline-meta",children:[e.jsxDEV("span",{children:["已添加 ",t.length," 个"]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2213,columnNumber:15},void 0),e.jsxDEV("span",{children:["图 ",N.image]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2214,columnNumber:15},void 0),e.jsxDEV("span",{children:["视 ",N.video]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2215,columnNumber:15},void 0),e.jsxDEV("span",{children:["音 ",N.audio]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2216,columnNumber:15},void 0),e.jsxDEV("span",{children:["文 ",N.text]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2217,columnNumber:15},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2212,columnNumber:13},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2210,columnNumber:11},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2209,columnNumber:9},void 0),D?e.jsxDEV("div",{className:"settings-dialog__model-toolbar",children:e.jsxDEV("label",{className:`settings-dialog__model-search ${t.length===0?"settings-dialog__model-search--disabled":""}`,children:[e.jsxDEV(Oi,{size:15},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2231,columnNumber:15},void 0),e.jsxDEV("input",{type:"text",value:te,onChange:U=>fe(U.target.value),placeholder:t.length>0?"搜索模型 ID、名称或品牌":"获取模型后可搜索",disabled:t.length===0},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2232,columnNumber:15},void 0),te?e.jsxDEV("button",{type:"button",className:"settings-dialog__model-search-clear",onClick:()=>fe(""),"aria-label":"清空搜索",children:e.jsxDEV(Ti,{size:14},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2250,columnNumber:19},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2244,columnNumber:17},void 0):null]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2224,columnNumber:13},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2223,columnNumber:11},void 0):null,_.length>0?e.jsxDEV("div",{className:"settings-dialog__model-type-groups",children:_.map(({type:U,models:p})=>{const J=Yi.has(U);return e.jsxDEV("div",{className:"settings-dialog__model-type-group",children:[e.jsxDEV("div",{className:"settings-dialog__model-type-header",style:{cursor:"pointer"},onClick:()=>Qi(U),children:[e.jsxDEV("div",{className:"settings-dialog__model-type-meta",children:[J?e.jsxDEV(Ke,{size:16,className:"settings-dialog__model-type-toggle"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2271,columnNumber:25},void 0):e.jsxDEV(zi,{size:16,className:"settings-dialog__model-type-toggle"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2276,columnNumber:25},void 0),e.jsxDEV("span",{className:"settings-dialog__model-type-title",children:Nn[U]},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2281,columnNumber:23},void 0),e.jsxDEV("span",{className:"settings-dialog__model-type-count",children:p.length},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2284,columnNumber:23},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2269,columnNumber:21},void 0),e.jsxDEV("button",{type:"button",className:"settings-dialog__model-group-test",onClick:S=>{S.stopPropagation(),u&&Le({profileId:u.id,modality:U,compareMode:"cross-model"})},disabled:!n,title:n?"测试当前供应商这一组模型":"请先保存供应商配置并确保 API Key 可用",children:"测试本组"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2288,columnNumber:21},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2264,columnNumber:19},void 0),!J&&e.jsxDEV("div",{className:"settings-dialog__model-type-list",children:p.map(S=>{const H=Bi(S.vendor),Ge=!d||T.selectedModelIds.includes(S.id);return e.jsxDEV("div",{className:"settings-dialog__model-type-item",style:{"--model-brand-accent":H.accent,"--model-brand-surface":H.surface,"--model-brand-border":H.border},children:[e.jsxDEV("span",{className:"settings-dialog__model-type-item-logo",children:e.jsxDEV(Ki,{vendor:S.vendor,size:16},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2331,columnNumber:31},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2330,columnNumber:29},void 0),e.jsxDEV("div",{className:"settings-dialog__model-type-item-copy",children:[e.jsxDEV(pn,{profileId:u.id,modelId:S.id},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2337,columnNumber:31},void 0),e.jsxDEV("span",{className:"settings-dialog__model-type-item-vendor",children:Ae(S.vendor)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2341,columnNumber:31},void 0),e.jsxDEV(fn,{profileId:u.id,modelId:S.id},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2344,columnNumber:31},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2336,columnNumber:29},void 0),e.jsxDEV("div",{className:"settings-dialog__model-type-item-btns",children:[(()=>{const de=en.getLatestEntryStatus(u.id,S.id);return de==="completed"?e.jsxDEV(be,{content:"上次测试成功",showArrow:!1,children:e.jsxDEV("span",{className:"settings-dialog__model-tip-trigger",children:e.jsxDEV("span",{className:"settings-dialog__model-status settings-dialog__model-status--ok"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2363,columnNumber:41},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2362,columnNumber:39},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2358,columnNumber:37},void 0):de==="failed"?e.jsxDEV(be,{content:"上次测试失败",showArrow:!1,children:e.jsxDEV("span",{className:"settings-dialog__model-tip-trigger",children:e.jsxDEV("span",{className:"settings-dialog__model-status settings-dialog__model-status--fail"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2374,columnNumber:41},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2373,columnNumber:39},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2369,columnNumber:37},void 0):null})(),e.jsxDEV(be,{content:n?"测试":"请先保存供应商配置并确保 API Key 可用",showArrow:!1,children:e.jsxDEV("span",{className:"settings-dialog__model-tip-trigger",children:e.jsxDEV("button",{type:"button",className:"settings-dialog__model-icon-btn settings-dialog__model-icon-btn--test",onClick:de=>{de.stopPropagation(),u&&Le({profileId:u.id,modality:U,modelId:S.id,compareMode:"cross-provider"})},disabled:!n,children:e.jsxDEV(Li,{size:14},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2404,columnNumber:37},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2389,columnNumber:35},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2388,columnNumber:33},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2380,columnNumber:31},void 0),Ge?e.jsxDEV(be,{content:"移除此模型",showArrow:!1,children:e.jsxDEV("span",{className:"settings-dialog__model-tip-trigger",children:e.jsxDEV("button",{type:"button",className:"settings-dialog__model-icon-btn settings-dialog__model-icon-btn--delete",onClick:de=>{de.stopPropagation(),ms(S.id)},children:e.jsxDEV(ji,{size:14},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2422,columnNumber:39},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2414,columnNumber:37},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2413,columnNumber:35},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2409,columnNumber:33},void 0):null]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2349,columnNumber:29},void 0)]},S.id,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2319,columnNumber:27},void 0)})},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2311,columnNumber:21},void 0)]},U,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2263,columnNumber:17},void 0)})},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2258,columnNumber:11},void 0):V?e.jsxDEV("div",{className:"settings-dialog__model-empty",children:"没有匹配的模型,试试搜索品牌名或更完整的模型 ID。"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2438,columnNumber:11},void 0):k?e.jsxDEV("div",{className:"settings-dialog__model-empty settings-dialog__model-empty--error",children:[e.jsxDEV(Fs,{size:16},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2443,columnNumber:13},void 0),e.jsxDEV("span",{children:T.error||"模型获取失败,请稍后重试"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2444,columnNumber:13},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2442,columnNumber:11},void 0):Y?e.jsxDEV("div",{className:"settings-dialog__model-empty",children:"填写 API Key 后即可获取模型,获取完成后可在这里检索和浏览。"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2447,columnNumber:11},void 0):e.jsxDEV("div",{className:"settings-dialog__model-empty",children:"还没有已添加的模型"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2451,columnNumber:11},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2208,columnNumber:7},void 0)},xs=(i,n,d)=>{const t=qe(d),l=K(d);return b.filter(r=>r.id===t||r.enabled&&r.capabilities[n]).map(r=>{const h=(r.id===A?i==="image"?ei:i==="video"?ii:si:we.getState(r.id).models.filter(_=>_.type===i)).filter((_,D,V)=>V.findIndex(k=>k.id===_.id)===D);return r.id===t&&l&&!h.some(_=>_.id===l)&&h.unshift({id:l,label:l,shortLabel:l,type:i,vendor:Ws.OTHER}),{profile:r,models:h}}).filter(r=>r.models.length>0)},$e=(i,n,d)=>{var D;const t=xs(i,d,n),l=qe(n),r=K(n),N=((D=b.find(V=>V.id===l))==null?void 0:D.name)||"未配置",h=In(t),_=l&&r?`${l}::${r}`:r||void 0;return e.jsxDEV("div",{className:`settings-dialog__route-card settings-dialog__route-card--${i}`,children:[e.jsxDEV("div",{className:"settings-dialog__route-card-top",children:e.jsxDEV("div",{className:"settings-dialog__route-card-title",children:qi[i]},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2536,columnNumber:11},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2535,columnNumber:9},void 0),e.jsxDEV("div",{className:"settings-dialog__stack",children:[e.jsxDEV("div",{className:"settings-dialog__field settings-dialog__field--column",children:[e.jsxDEV("label",{className:"settings-dialog__label settings-dialog__label--stacked",children:"默认模型"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2542,columnNumber:13},void 0),e.jsxDEV("div",{className:"settings-dialog__route-model-picker",children:[e.jsxDEV(Xs,{variant:"form",selectedModel:r||"",selectedSelectionKey:_,models:h,providerProfilesOverride:b,placement:"down",placeholder:`搜索${qi[i]}模型或供应商`,allowCustomValue:!1,showProviderAction:!1,onSelect:(V,k)=>{ui(i,k||me(null,V))},disabled:h.length===0},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2546,columnNumber:15},void 0),r?e.jsxDEV("button",{type:"button",className:"settings-dialog__route-clear",onClick:()=>ui(i,null),children:"清空"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2565,columnNumber:17},void 0):null]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2545,columnNumber:13},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2541,columnNumber:11},void 0),e.jsxDEV("div",{className:"settings-dialog__route-meta",children:[e.jsxDEV("span",{children:N},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2577,columnNumber:13},void 0),e.jsxDEV("span",{children:r||"未选择模型"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2578,columnNumber:13},void 0),t.length===0?e.jsxDEV("span",{children:"暂无可选模型"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2579,columnNumber:41},void 0):null]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2576,columnNumber:11},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2540,columnNumber:9},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2532,columnNumber:7},void 0)},hi=(i=!1)=>{if(!R)return e.jsxDEV("div",{className:"settings-dialog__empty-panel",children:"请选择一个默认模型预设。"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2589,columnNumber:9},void 0);const n=Si(R),d=R.id===se;return e.jsxDEV("div",{className:`settings-dialog__content-panel ${i?"settings-dialog__content-panel--detail":""}`,children:[i?e.jsxDEV("div",{className:"settings-dialog__compact-stage-header",children:[e.jsxDEV("button",{type:"button",className:"settings-dialog__compact-back",onClick:()=>ye("catalog"),children:[e.jsxDEV(Ei,{size:16},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2612,columnNumber:15},void 0),e.jsxDEV("span",{children:"返回模型预设"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2613,columnNumber:15},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2607,columnNumber:13},void 0),e.jsxDEV("div",{className:"settings-dialog__compact-stage-copy",children:[e.jsxDEV("span",{className:"settings-dialog__compact-stage-eyebrow",children:"模型预设"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2616,columnNumber:15},void 0),e.jsxDEV("p",{className:"settings-dialog__compact-stage-text",children:"在这里设置图片、视频和文本模型的默认路由。"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2619,columnNumber:15},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2615,columnNumber:13},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2606,columnNumber:11},void 0):null,e.jsxDEV("div",{className:"settings-dialog__section",children:[e.jsxDEV("div",{className:"settings-dialog__panel-header",children:[e.jsxDEV("div",{children:[e.jsxDEV("h3",{className:"settings-dialog__section-title",children:R.name},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2628,columnNumber:15},void 0),e.jsxDEV("div",{className:"settings-dialog__inline-meta",children:[e.jsxDEV("span",{children:d?"当前预设":"未激活"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2632,columnNumber:17},void 0),e.jsxDEV("span",{children:[n,"/3 已配置"]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2633,columnNumber:17},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2631,columnNumber:15},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2627,columnNumber:13},void 0),e.jsxDEV("div",{className:"settings-dialog__inline-row",children:[e.jsxDEV("button",{type:"button",className:"settings-dialog__ghost-button",onClick:()=>{ai(q,R.id)},children:"设为当前预设"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2637,columnNumber:15},void 0),e.jsxDEV("button",{type:"button",className:"settings-dialog__danger-button",onClick:()=>us(R.id),disabled:q.length<=1,children:"删除预设"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2649,columnNumber:15},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2636,columnNumber:13},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2626,columnNumber:11},void 0),e.jsxDEV("div",{className:"settings-dialog__grid",children:e.jsxDEV("div",{className:"settings-dialog__field settings-dialog__field--column settings-dialog__field--full",children:[e.jsxDEV("label",{className:"settings-dialog__label settings-dialog__label--stacked",children:"预设名称"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2662,columnNumber:15},void 0),e.jsxDEV("input",{type:"text",className:"settings-dialog__input",value:R.name,onChange:t=>os(R.id,l=>({...l,name:t.target.value}))},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2665,columnNumber:15},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2661,columnNumber:13},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2660,columnNumber:11},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2625,columnNumber:9},void 0),e.jsxDEV("div",{className:"settings-dialog__routes",children:[$e("image",R.image,"supportsImage"),$e("video",R.video,"supportsVideo"),$e("text",R.text,"supportsText")]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2680,columnNumber:9},void 0)]},i?`preset-detail-${R.id}`:void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2599,columnNumber:7},void 0)},bs=()=>e.jsxDEV("div",{className:"settings-dialog__workspace settings-dialog__workspace--single",children:e.jsxDEV("div",{className:"settings-dialog__content-panel settings-dialog__content-panel--canvas",children:[f?e.jsxDEV("div",{className:"settings-dialog__compact-stage-header",children:e.jsxDEV("div",{className:"settings-dialog__compact-stage-copy",children:[e.jsxDEV("span",{className:"settings-dialog__compact-stage-eyebrow",children:"画布显示"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2703,columnNumber:15},void 0),e.jsxDEV("p",{className:"settings-dialog__compact-stage-text",children:"手机上会以更集中的卡片形式展示,方便快速切换画布相关开关。"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2706,columnNumber:15},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2702,columnNumber:13},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2701,columnNumber:11},void 0):null,e.jsxDEV("div",{className:"settings-dialog__section settings-dialog__section--canvas-card",children:[e.jsxDEV("div",{className:"settings-dialog__section-header",children:e.jsxDEV("div",{children:e.jsxDEV("h3",{className:"settings-dialog__section-title",children:"画布显示配置"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2715,columnNumber:15},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2714,columnNumber:13},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2713,columnNumber:11},void 0),e.jsxDEV("div",{className:"settings-dialog__preference settings-dialog__preference--panel",children:[e.jsxDEV("div",{className:"settings-dialog__toggle-copy",children:[e.jsxDEV("span",{className:"settings-dialog__toggle-title",children:"任务进度卡片"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2721,columnNumber:15},void 0),e.jsxDEV("span",{className:"settings-dialog__toggle-desc",children:"在画布中显示任务进度卡片,便于追踪当前生成状态。"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2724,columnNumber:15},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2720,columnNumber:13},void 0),e.jsxDEV(wi,{size:"small",value:W,onChange:i=>void rs(i)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2728,columnNumber:13},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2719,columnNumber:11},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2712,columnNumber:9},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2699,columnNumber:7},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2698,columnNumber:5},void 0),hs=()=>e.jsxDEV("aside",{className:"settings-dialog__nav",children:e.jsxDEV("div",{className:"settings-dialog__nav-shell",children:e.jsxDEV("div",{className:"settings-dialog__nav-list",children:un.map(i=>e.jsxDEV("button",{type:"button",className:`settings-dialog__nav-item ${$===i.value?"settings-dialog__nav-item--active":""}`,onClick:()=>ns(i.value),children:e.jsxDEV("span",{className:"settings-dialog__nav-item-title",children:i.label},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2757,columnNumber:17},void 0)},i.value,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2747,columnNumber:15},void 0))},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2745,columnNumber:11},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2744,columnNumber:9},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2743,columnNumber:7},void 0),vs=()=>$==="canvas"?bs():$==="speech"?e.jsxDEV(zs,{},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2774,columnNumber:14},void 0):$==="presets"?ni?Zi==="catalog"?xi("presets-catalog",pi()):hi(!0):e.jsxDEV("div",{className:`settings-dialog__workspace ${f?"settings-dialog__workspace--show-sidebar":""}`,children:[e.jsxDEV("aside",{className:"settings-dialog__sidebar",children:pi()},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2790,columnNumber:11},void 0),hi(!1)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2785,columnNumber:9},void 0):ni?Wi==="catalog"?xi("providers-catalog",fi()):bi(!0):e.jsxDEV("div",{className:`settings-dialog__workspace ${f?"settings-dialog__workspace--show-sidebar":""}`,children:[e.jsxDEV("aside",{className:"settings-dialog__sidebar",children:fi()},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2810,columnNumber:9},void 0),bi(!1)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2805,columnNumber:7},void 0);return e.jsxDEV(e.Fragment,{children:[e.jsxDEV(Cs,{id:"settings-dialog",visible:o.openSettings,title:"设置",onClose:fs,width:f?"100%":"88%",height:f?"100%":"88%",minWidth:f?Math.max(320,Math.min(L-16,640)):1080,minHeight:f?Math.max(520,Math.min(Z-16,820)):680,x:"center",y:"center",maximizable:!0,minimizable:!1,resizable:!f,movable:!f,modal:!1,className:"winbox-ai-generation winbox-tool-window winbox-settings-window",container:s,background:"#ffffff",children:e.jsxDEV("div",{ref:Ne,className:`settings-dialog ${f?"settings-dialog--compact":""}`,"data-testid":"settings-dialog",children:e.jsxDEV("div",{className:"settings-dialog__layout",children:[hs(),e.jsxDEV("div",{className:"settings-dialog__main",children:vs()},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2857,columnNumber:13},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2855,columnNumber:11},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2848,columnNumber:9},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2820,columnNumber:7},void 0),e.jsxDEV(on,{open:Qe,container:s,models:T.discoveredModels,selectedModelIds:T.selectedModelIds,onClose:()=>Me(!1),onConfirm:gi,onTestModel:i=>{if(!u)return;const n=T.discoveredModels.find(d=>d.id===i);Le({profileId:u.id,modelId:i,modality:(n==null?void 0:n.type)||"image",compareMode:"cross-provider"})}},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2861,columnNumber:7},void 0),v]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2819,columnNumber:5},void 0)};export{Ln as IMAGE_MODEL_GROUPED_OPTIONS,Tn as SettingsDialog,$n as VIDEO_MODEL_OPTIONS};
|
|
1
|
+
import{iI as js,r as m,iJ as ws,y as e,iy as Es,iz as Ds,bW as Ti,iK as Oi,bw as zi,hj as ks,bV as be,iL as Li,aI as Vs,iM as Us,iN as _i,al as O,i8 as qs,iO as $i,bL as Ms,bm as Is,eP as Ss,iP as A,iQ as ee,iR as Ve,it as oe,hd as Ue,hf as xe,hg as le,he as re,hx as ce,gP as Ie,iS as Ps,iT as ji,iA as Cs,iU as As,iV as Rs,iW as Ts,cV as Os,iX as zs,iY as we,iZ as qe,i_ as ge,fI as wi,i$ as Ei,j0 as Ke,j1 as Se,j2 as Ls,j3 as $s,j4 as Gs,j5 as Fe,j6 as K,hv as me,j7 as Bs,j8 as Ks,j9 as Fs,ja as Ws}from"./tool-windows-BTXOQvEU.js";import{jb as Ln,jc as $n}from"./tool-windows-BTXOQvEU.js";import{D as Gi,g as Ae,a as Bi,b as Ki,c as Zs,d as Ys,e as Pe,f as Hs,h as Qs}from"./use-runtime-models-C_YMetmY.js";import{M as Xs}from"./ModelDropdown-iU3c5Z_N.js";import{o as Js}from"./model-benchmark-launcher-CUPxnAZr.js";import{m as en}from"./model-benchmark-service-C3taFBGp.js";const Di={all:"全部",image:"图片",video:"视频",audio:"音频",text:"文本"},sn={image:"图片",video:"视频",audio:"音频",text:"文本"},nn={image:"图",video:"视",audio:"音",text:"文"},ki=["text","image","video","audio"];function tn(s,o){const a=o.trim().toLowerCase();return a?[s.id,s.label,s.shortLabel,s.shortCode,s.description,s.sourceProfileName,Ae(s.vendor)].filter(Boolean).some(g=>g==null?void 0:g.toLowerCase().includes(a)):!0}function an(s){return js(s)}function Vi(s,o){const a=new Map;for(const v of s){const x=a.get(v.vendor)||{vendor:v.vendor,models:[],counts:{image:0,video:0,audio:0,text:0},selectedCount:0};x.models.push(v),x.counts[v.type]+=1,o.has(v.id)&&(x.selectedCount+=1),a.set(v.vendor,x)}const g=new Map(Gi.map((v,x)=>[v,x]));return Array.from(a.values()).sort((v,x)=>{const L=g.get(v.vendor)??Number.MAX_SAFE_INTEGER,Z=g.get(x.vendor)??Number.MAX_SAFE_INTEGER;return L!==Z?L-Z:x.models.length-v.models.length})}function dn(s){return["image","video","audio","text"].filter(o=>s.counts[o]>0).map(o=>({type:o,models:an(s.models.filter(a=>a.type===o))})).sort((o,a)=>a.models.length!==o.models.length?a.models.length-o.models.length:ki.indexOf(o.type)-ki.indexOf(a.type))}const on=({open:s,container:o,models:a,selectedModelIds:g,onClose:v,onConfirm:x,onTestModel:L})=>{const[Z,Ne]=m.useState(""),[Q,he]=m.useState("all"),[$,w]=m.useState(g),[I,z]=m.useState({});m.useEffect(()=>{var C,W;if(!s)return;Ne(""),he("all"),w(g);const c=new Set(g),j=Vi(a,c),y=((C=j.find(G=>G.selectedCount>0))==null?void 0:C.vendor)||((W=j[0])==null?void 0:W.vendor)||null,M={};j.forEach(G=>{M[G.vendor]=G.vendor===y}),z(M)},[a,s,g]);const ie=m.useMemo(()=>({all:a.length,image:a.filter(c=>c.type==="image").length,video:a.filter(c=>c.type==="video").length,audio:a.filter(c=>c.type==="audio").length,text:a.filter(c=>c.type==="text").length}),[a]),B=m.useMemo(()=>{const c=Z.trim(),j=Q==="all"?a:a.filter(y=>y.type===Q);return c?j.filter(y=>tn(y,c)):j},[Q,a,Z]),b=m.useMemo(()=>new Set($),[$]),P=m.useMemo(()=>Vi(B,b),[b,B]),q=$.length,F=m.useMemo(()=>({image:a.filter(c=>c.type==="image"&&b.has(c.id)).length,video:a.filter(c=>c.type==="video"&&b.has(c.id)).length,text:a.filter(c=>c.type==="text"&&b.has(c.id)).length}),[a,b]),se=B.length>0&&B.every(c=>b.has(c.id)),X=m.useMemo(()=>a.filter(c=>ws(c.id)).map(c=>c.id),[a]),Ee=X.length>0&&X.every(c=>b.has(c));m.useEffect(()=>{P.length===0||P.some(y=>I[y.vendor])||!Object.values(I).some(Boolean)||z(P.reduce((y,M,C)=>(y[M.vendor]=C===0,y),{}))},[I,P]);const De=c=>{w(j=>j.includes(c)?j.filter(y=>y!==c):[...j,c])},ve=()=>{const c=B.map(y=>y.id),j=c.every(y=>b.has(y));w(y=>j?y.filter(M=>!c.includes(M)):Array.from(new Set([...y,...c])))},ke=()=>{w(c=>Array.from(new Set([...c,...X])))},ne=c=>{z(j=>{const y=!j[c],M={};return P.forEach(C=>{M[C.vendor]=C.vendor===c?y:!1}),M})};return e.jsxDEV(Es,{open:s,onOpenChange:c=>!c&&v(),children:e.jsxDEV(Ds,{className:"model-discovery-dialog",container:o,"data-testid":"model-discovery-dialog",children:[e.jsxDEV("div",{className:"model-discovery-dialog__header",children:[e.jsxDEV("div",{className:"model-discovery-dialog__headline",children:[e.jsxDEV("h3",{className:"model-discovery-dialog__title",children:"获取模型"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:216,columnNumber:13},void 0),e.jsxDEV("div",{className:"model-discovery-dialog__header-stats",children:[e.jsxDEV("span",{className:"model-discovery-dialog__header-pill",children:["已发现 ",a.length]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:218,columnNumber:15},void 0),e.jsxDEV("span",{className:"model-discovery-dialog__header-pill",children:["品牌 ",P.length]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:221,columnNumber:15},void 0),e.jsxDEV("span",{className:"model-discovery-dialog__header-pill model-discovery-dialog__header-pill--accent",children:["已选 ",q]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:224,columnNumber:15},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:217,columnNumber:13},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:215,columnNumber:11},void 0),e.jsxDEV("button",{type:"button",className:"model-discovery-dialog__close",onClick:v,"aria-label":"关闭",children:e.jsxDEV(Ti,{size:18},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:235,columnNumber:13},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:229,columnNumber:11},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:214,columnNumber:9},void 0),e.jsxDEV("div",{className:"model-discovery-dialog__toolbar",children:e.jsxDEV("label",{className:"model-discovery-dialog__search",children:[e.jsxDEV(Oi,{size:16},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:241,columnNumber:13},void 0),e.jsxDEV("input",{type:"text",value:Z,onChange:c=>Ne(c.target.value),placeholder:"搜索模型名称、ID 或品牌"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:242,columnNumber:13},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:240,columnNumber:11},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:239,columnNumber:9},void 0),e.jsxDEV("div",{className:"model-discovery-dialog__type-tabs",children:Object.keys(Di).map(c=>{const j=Q===c;return e.jsxDEV("button",{type:"button",className:`model-discovery-dialog__type-tab ${j?"model-discovery-dialog__type-tab--active":""}`,onClick:()=>he(c),children:[e.jsxDEV("span",{children:Di[c]},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:263,columnNumber:17},void 0),e.jsxDEV("span",{className:"model-discovery-dialog__type-tab-count",children:ie[c]},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:264,columnNumber:17},void 0)]},c,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:255,columnNumber:15},void 0)})},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:251,columnNumber:9},void 0),e.jsxDEV("div",{className:"model-discovery-dialog__body",children:P.length===0?e.jsxDEV("div",{className:"model-discovery-dialog__empty",children:Z.trim()?"没有匹配的模型":"暂无模型"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:274,columnNumber:13},void 0):e.jsxDEV("div",{className:"model-discovery-dialog__group-list",children:P.map(c=>{const j=Bi(c.vendor),y=dn(c),M=!!I[c.vendor];return e.jsxDEV("section",{className:`model-discovery-dialog__vendor-group ${M?"model-discovery-dialog__vendor-group--expanded":""}`,style:{"--vendor-accent":j.accent,"--vendor-surface":j.surface,"--vendor-border":j.border},children:[e.jsxDEV("button",{type:"button",className:"model-discovery-dialog__vendor-header",onClick:()=>ne(c.vendor),children:[e.jsxDEV("div",{className:"model-discovery-dialog__vendor-main",children:[e.jsxDEV("span",{className:"model-discovery-dialog__vendor-logo-shell",children:e.jsxDEV(Ki,{vendor:c.vendor,size:22},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:307,columnNumber:27},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:306,columnNumber:25},void 0),e.jsxDEV("div",{className:"model-discovery-dialog__vendor-copy",children:[e.jsxDEV("span",{className:"model-discovery-dialog__vendor-name",children:Ae(c.vendor)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:310,columnNumber:27},void 0),e.jsxDEV("div",{className:"model-discovery-dialog__vendor-meta",children:y.map(({type:C,models:W})=>e.jsxDEV("span",{className:"model-discovery-dialog__vendor-meta-pill",children:[nn[C]," ",W.length]},`${c.vendor}-${C}`,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:316,columnNumber:33},void 0))},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:313,columnNumber:27},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:309,columnNumber:25},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:305,columnNumber:23},void 0),e.jsxDEV("span",{className:"model-discovery-dialog__vendor-spacer"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:328,columnNumber:23},void 0),e.jsxDEV("div",{className:"model-discovery-dialog__vendor-side",children:[c.selectedCount>0?e.jsxDEV("span",{className:"model-discovery-dialog__vendor-selected",children:["已选 ",c.selectedCount]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:332,columnNumber:27},void 0):null,e.jsxDEV("span",{className:"model-discovery-dialog__vendor-count",children:c.models.length},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:336,columnNumber:25},void 0),e.jsxDEV("span",{className:`model-discovery-dialog__vendor-chevron ${M?"model-discovery-dialog__vendor-chevron--expanded":""}`,children:e.jsxDEV(zi,{size:16},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:346,columnNumber:27},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:339,columnNumber:25},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:330,columnNumber:23},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:300,columnNumber:21},void 0),M?e.jsxDEV("div",{className:"model-discovery-dialog__vendor-body",children:y.map(({type:C,models:W})=>e.jsxDEV("div",{className:"model-discovery-dialog__type-section",children:[e.jsxDEV("div",{className:"model-discovery-dialog__type-section-header",children:[e.jsxDEV("span",{className:"model-discovery-dialog__type-section-title",children:sn[C]},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:359,columnNumber:31},void 0),e.jsxDEV("span",{className:"model-discovery-dialog__type-section-count",children:W.length},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:362,columnNumber:31},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:358,columnNumber:29},void 0),e.jsxDEV("div",{className:"model-discovery-dialog__model-stack",children:W.map(G=>{const te=b.has(G.id);return e.jsxDEV("label",{className:`model-discovery-dialog__item ${te?"model-discovery-dialog__item--checked":""}`,children:[e.jsxDEV("input",{type:"checkbox",className:"model-discovery-dialog__checkbox",checked:te,onChange:()=>De(G.id)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:380,columnNumber:37},void 0),e.jsxDEV("span",{className:"model-discovery-dialog__checkmark",children:te?e.jsxDEV(ks,{size:12},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:387,columnNumber:50},void 0):null},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:386,columnNumber:37},void 0),e.jsxDEV("div",{className:"model-discovery-dialog__item-body",children:e.jsxDEV("div",{className:`model-discovery-dialog__item-id ${te?"model-discovery-dialog__item-id--checked":""}`,children:G.id},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:391,columnNumber:39},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:390,columnNumber:37},void 0),L?e.jsxDEV(be,{content:"测试此模型",showArrow:!1,children:e.jsxDEV("button",{type:"button",className:"model-discovery-dialog__item-test",onClick:fe=>{fe.preventDefault(),fe.stopPropagation(),L(G.id)},children:e.jsxDEV(Li,{size:13},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:412,columnNumber:43},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:403,columnNumber:41},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:402,columnNumber:39},void 0):null]},G.id,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:372,columnNumber:35},void 0)})},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:367,columnNumber:29},void 0)]},`${c.vendor}-${C}`,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:354,columnNumber:27},void 0))},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:352,columnNumber:23},void 0):null]},c.vendor,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:285,columnNumber:19},void 0)})},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:278,columnNumber:13},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:272,columnNumber:9},void 0),e.jsxDEV("div",{className:"model-discovery-dialog__footer",children:[e.jsxDEV("span",{className:"model-discovery-dialog__selection-count",children:["已选 ",q," 个 · 图 ",F.image," / 视"," ",F.video," / 文 ",F.text]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:432,columnNumber:11},void 0),e.jsxDEV("div",{className:"model-discovery-dialog__footer-bulk",children:[e.jsxDEV("button",{type:"button",className:"model-discovery-dialog__ghost-button",onClick:ve,disabled:B.length===0,children:se?"取消当前筛选":"全选"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:437,columnNumber:13},void 0),e.jsxDEV("button",{type:"button",className:"model-discovery-dialog__ghost-button",onClick:ke,disabled:X.length===0||Ee,children:"选中推荐模型"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:445,columnNumber:13},void 0),e.jsxDEV("button",{type:"button",className:"model-discovery-dialog__ghost-button model-discovery-dialog__ghost-button--muted",onClick:()=>w([]),disabled:$.length===0,children:"清空"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:453,columnNumber:13},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:436,columnNumber:11},void 0),e.jsxDEV("div",{className:"model-discovery-dialog__actions",children:[e.jsxDEV("button",{type:"button",className:"model-discovery-dialog__button model-discovery-dialog__button--secondary",onClick:v,children:"取消"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:463,columnNumber:13},void 0),e.jsxDEV("button",{type:"button",className:"model-discovery-dialog__button model-discovery-dialog__button--primary",onClick:()=>x($),children:"添加模型"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:470,columnNumber:13},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:462,columnNumber:11},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:431,columnNumber:9},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:209,columnNumber:7},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/model-discovery-dialog.tsx",lineNumber:208,columnNumber:5},void 0)},ln=Vs.memo(({profile:s,onUpdateProfile:o})=>{const[a,g]=m.useState(!1),v=Zs(s.id),x=Us(s),L=(x==null?void 0:x.pricingUrl)||"",Z=(x==null?void 0:x.cnyPerUsd)??1,Ne=(x==null?void 0:x.pricingGroup)||"default",Q=m.useCallback(async()=>{if(x){g(!0);try{await _i.fetchAndCache(s.id,x.pricingUrl,s.apiKey,x.pricingGroup,x.cnyPerUsd,{force:!0,promoteToAutoRefresh:!0}),O.success("价格信息已同步")}catch(w){O.error(`获取价格失败: ${w instanceof Error?w.message:"未知错误"}`)}finally{g(!1)}}},[x,s.id,s.apiKey]),he=m.useCallback(async w=>{const I=String(w);if(o(z=>({...z,pricingGroup:I})),!!x){g(!0);try{await _i.fetchAndCache(s.id,x.pricingUrl,s.apiKey,I,x.cnyPerUsd)}catch{}finally{g(!1)}}},[o,x,s.id,s.apiKey]),$=v.map(w=>({label:w.displayName||w.name,value:w.name}));return e.jsxDEV("div",{className:"settings-dialog__pricing-group",children:[e.jsxDEV("div",{className:"settings-dialog__pricing-row",children:[e.jsxDEV("div",{className:"settings-dialog__field settings-dialog__field--column",style:{flex:1,minWidth:0},children:[e.jsxDEV("label",{className:"settings-dialog__label settings-dialog__label--stacked",children:"模型价格 URL"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/pricing-field-group.tsx",lineNumber:78,columnNumber:13},void 0),e.jsxDEV("input",{type:"text",className:"settings-dialog__input",value:L,onChange:w=>o(I=>({...I,pricingUrl:w.target.value})),placeholder:"如 https://api.tu-zi.com/api/pricing"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/pricing-field-group.tsx",lineNumber:81,columnNumber:13},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/pricing-field-group.tsx",lineNumber:77,columnNumber:11},void 0),e.jsxDEV("div",{className:"settings-dialog__field settings-dialog__field--column",style:{width:110,flexShrink:0},children:[e.jsxDEV("label",{className:"settings-dialog__label settings-dialog__label--stacked",children:"¥/1USD"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/pricing-field-group.tsx",lineNumber:92,columnNumber:13},void 0),e.jsxDEV("input",{type:"number",className:"settings-dialog__input",value:Z,step:.01,min:0,onChange:w=>o(I=>({...I,cnyPerUsd:parseFloat(w.target.value)||0}))},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/pricing-field-group.tsx",lineNumber:95,columnNumber:13},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/pricing-field-group.tsx",lineNumber:91,columnNumber:11},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/pricing-field-group.tsx",lineNumber:76,columnNumber:9},void 0),e.jsxDEV("div",{className:"settings-dialog__pricing-row",children:[$.length>0?e.jsxDEV("div",{className:"settings-dialog__field settings-dialog__field--column",style:{flex:1,minWidth:0},children:[e.jsxDEV("label",{className:"settings-dialog__label settings-dialog__label--stacked",children:"当前分组"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/pricing-field-group.tsx",lineNumber:113,columnNumber:15},void 0),e.jsxDEV(qs,{value:Ne,options:$,onChange:w=>he(w),style:{width:"100%"}},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/pricing-field-group.tsx",lineNumber:116,columnNumber:15},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/pricing-field-group.tsx",lineNumber:112,columnNumber:13},void 0):null,e.jsxDEV("button",{type:"button",className:"settings-dialog__button settings-dialog__button--fetch",style:{alignSelf:"flex-end",height:32,flexShrink:0},onClick:Q,disabled:a||!L,children:a?"同步中":"获取价格"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/pricing-field-group.tsx",lineNumber:124,columnNumber:11},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/pricing-field-group.tsx",lineNumber:110,columnNumber:9},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/pricing-field-group.tsx",lineNumber:75,columnNumber:7},void 0)});function rn(s,o){return{id:o,name:`供应商 ${s}`,iconUrl:"",providerType:"openai-compatible",baseUrl:"",apiKey:"",authType:"bearer",imageApiCompatibility:$i,enabled:!0,capabilities:{supportsModelsEndpoint:!0,supportsText:!0,supportsImage:!0,supportsVideo:!0,supportsAudio:!0,supportsTools:!0}}}const Ui="aitu:settings:provider-nav",cn=980,un=[{value:"providers",label:"供应商"},{value:"presets",label:"模型预设"},{value:"canvas",label:"画布显示"},{value:"speech",label:"语音播放"}],gn=["openai-compatible","gemini-compatible","custom"],mn=["auto","openai-gpt-image","tuzi-gpt-image","openai-compatible-basic"],qi={image:"图片",video:"视频",audio:"音频",text:"文本"},Nn={image:"图片模型",video:"视频模型",audio:"音频模型",text:"文本模型"},fn=m.memo(function({profileId:o,modelId:a}){const g=Qs(o,a);return g?e.jsxDEV("span",{className:"settings-dialog__model-price",children:g},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:157,columnNumber:10},this):null}),pn=m.memo(function({profileId:o,modelId:a}){const g=Hs(o,a);return g!=null&&g.description?e.jsxDEV(be,{content:g.description,placement:"top",children:e.jsxDEV("span",{className:"settings-dialog__model-type-item-id settings-dialog__model-type-item-id--has-desc",children:a},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:175,columnNumber:7},this)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:174,columnNumber:5},this):e.jsxDEV("span",{className:"settings-dialog__model-type-item-id",children:a},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:170,columnNumber:7},this)});function xn(s,o,a,g){return o===0&&a===0?null:g===0&&a>0?`已清空 ${s} 的已添加模型`:o>0&&a>0?`已更新 ${s} 的模型(新增 ${o} 个,移除 ${a} 个)`:o>0?`已为 ${s} 添加 ${o} 个模型`:`已从 ${s} 移除 ${a} 个模型`}const bn=["text","image","video","audio"],We={"openai-compatible":{label:"OpenAI 兼容"},"gemini-compatible":{label:"Gemini 兼容"},custom:{label:"自定义接入"}},Ye={auto:{label:"自动"},"openai-gpt-image":{label:"OpenAI GPT Image"},"tuzi-gpt-image":{label:"Tuzi GPT 兼容"},"openai-compatible-basic":{label:"OpenAI-compatible 通用兼容(兜底)"}};function hn(s){return s==="auto"||s==="openai-gpt-image"||s==="tuzi-gpt-image"||s==="openai-compatible-basic"?s:s==="tuzi-compatible"?"tuzi-gpt-image":"auto"}function vn(s){const o=s.baseUrl.trim().toLowerCase();return o.includes("api.openai.com")?"openai-gpt-image":o.includes("api.tu-zi.com")?"tuzi-gpt-image":"openai-compatible-basic"}function yn(s){const o=hn(s.imageApiCompatibility);if(o==="auto"){const a=vn(s);return`默认推荐显式选择 OpenAI GPT Image;如果保留自动模式,GPT Image 模型当前会解析为 ${Ye[a].label}。`}return o==="openai-gpt-image"?"默认推荐模式。适用于官方 GPT Image 请求格式,也便于后续继续扩展官方图生图能力。":`同一个图片模型在不同 API Key 或网关下可能需要不同接口格式;当前已固定为 ${Ye[o].label}。`}const Mi=["amber","sky","mint","rose","violet"];function Ii(s){return s.reduce((o,a)=>(o[a.type]+=1,o),{image:0,video:0,audio:0,text:0})}function _n(s,o){const a=o.trim().toLowerCase();return a?[s.id,s.label,s.shortLabel,s.shortCode,s.description,s.sourceProfileName,Ae(s.vendor)].filter(Boolean).some(g=>g==null?void 0:g.toLowerCase().includes(a)):!0}function jn(s){const o=new Set,a=[];return s.forEach(g=>{const v=`${g.type}:${g.id}`;o.has(v)||(o.add(v),a.push(g))}),a}function Si(s){return s?["image","video","audio","text"].filter(o=>!!K(s[o])).length:0}function Pi(s,o){const a=o.find(g=>g.id===s.id);return a?Mn(a,s)?"saved":"dirty":"new"}function Ce(s){return JSON.stringify(s)}function wn(s){return typeof s.iconUrl!="string"?null:s.iconUrl.trim()||null}function En(s){var g;const o=s.trim();if(!o)return"供";const a=o.match(/[A-Za-z0-9]+/g);return a!=null&&a[0]?a[0][0].toUpperCase():((g=Array.from(o)[0])==null?void 0:g.toUpperCase())||"供"}function Dn(s){const o=Array.from(`${s.id}-${s.providerType}-${s.name}`).reduce((a,g,v)=>a+g.charCodeAt(0)*(v+1),0);return Mi[o%Mi.length]}function ue(s){return JSON.parse(JSON.stringify(s))}function He(s){return`${s}-${Date.now()}-${Math.random().toString(36).slice(2,8)}`}function Ci(s){return rn(s,He("profile"))}function kn(){if(typeof window>"u")return null;const s=window.__aituPendingProviderNavigationIntent||null;return window.__aituPendingProviderNavigationIntent=void 0,s}function Ai(s){return"bearer"}function Ze(s){return s===A||s===As||s===Rs||s===Ts}const Ri=({profile:s,size:o="regular"})=>{const a=wn(s),[g,v]=m.useState(a);m.useEffect(()=>{v(a)},[a]);const x=Dn(s),L=En(s.name);return e.jsxDEV("span",{className:`settings-dialog__provider-avatar settings-dialog__provider-avatar--${x} ${o==="large"?"settings-dialog__provider-avatar--large":""}`,"aria-hidden":"true",children:g?e.jsxDEV("img",{src:g,alt:`${s.name} 图标`,className:"settings-dialog__provider-avatar-image",loading:"lazy",onError:()=>v(null)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:512,columnNumber:9},void 0):e.jsxDEV("span",{className:"settings-dialog__provider-avatar-text",children:L},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:520,columnNumber:9},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:505,columnNumber:5},void 0)};function Vn(s,o){return{id:He("preset"),name:"新预设",text:ge(me(s,o.text||null)),image:ge(me(s,o.image||null)),video:ge(me(s,o.video||null)),audio:ge(me(s,o.audio||null))}}function Un(s,o,a){const g=s[o],v=a.defaultModelRef!==void 0?a.defaultModelRef:me(a.profileId!==void 0?a.profileId:qe(g),a.defaultModelId!==void 0?a.defaultModelId:K(g));return{...s,[o]:ge(v)}}function qn(s,o){const a={...s};return["image","video","audio","text"].forEach(g=>{qe(a[g])===o&&(a[g]=ge(null))}),a}function Mn(s,o){return JSON.stringify(s)===JSON.stringify(o)}function In(s){return s.flatMap(({profile:o,models:a})=>a.map(g=>({...g,sourceProfileId:o.id,sourceProfileName:o.name,selectionKey:g.selectionKey||`${o.id}::${g.id}`})))}const Tn=({container:s})=>{const{appState:o,setAppState:a}=Ms(),{confirm:g,confirmDialog:v}=Is({container:s}),{isMobile:x,viewportWidth:L,viewportHeight:Z}=Ss(),Ne=m.useRef(null),[Q,he]=m.useState(0),[$,w]=m.useState("providers"),[I,z]=m.useState(A),[ie,B]=m.useState(ee),[b,P]=m.useState([]),[q,F]=m.useState([]),[se,X]=m.useState(ee),[Ee,De]=m.useState([]),[ve,ke]=m.useState(""),[ne,c]=m.useState(""),[j,y]=m.useState(""),[M,C]=m.useState(""),[W,G]=m.useState(!0),[te,fe]=m.useState(""),[Qe,Me]=m.useState(!1),[Fi,Re]=m.useState(""),[Xe,Je]=m.useState(!1),[Wi,ae]=m.useState("catalog"),[Zi,ye]=m.useState("catalog"),[Yi,Hi]=m.useState(new Set),Qi=i=>{Hi(n=>{const d=new Set(n);return d.has(i)?d.delete(i):d.add(i),d})},u=b.find(i=>i.id===I)||b[0]||null,Xi=u?yn(u):"同一个图片模型在不同 API Key 或网关下可能需要不同接口格式;不确定时使用自动。",R=q.find(i=>i.id===ie)||q[0]||null,T=Ys((u==null?void 0:u.id)||A),Ji=m.useDeferredValue(te),ei=Pe(A,"image"),es=Pe(A,"audio"),ii=Pe(A,"video"),si=Pe(A,"text"),is=b.filter(i=>i.enabled),f=x||L<=cn,ni=f&&(Q>0?Q<600:L<600),Te=!!u&&!!u.apiKey.trim(),ss=Ce({profiles:b,presets:q,activePresetId:se,audioModelName:ve,imageModelName:ne,videoModelName:j,textModelName:M,showWorkZoneCard:W}),ti=o.openSettings&&ss!==Fi;m.useEffect(()=>{const i=Ne.current;if(!i||typeof ResizeObserver>"u")return;const n=new ResizeObserver(d=>{var l;const t=(l=d[0])==null?void 0:l.contentRect.width;t&&he(r=>Math.abs(r-t)<1?r:t)});return n.observe(i),()=>{n.disconnect()}},[o.openSettings]);const ns=i=>{w(i),f&&(i==="providers"&&ae("catalog"),i==="presets"&&ye("catalog"))},ts=i=>{z(i),f&&ae("detail")},as=i=>{B(i),f&&ye("detail")},ds=()=>{try{return localStorage.getItem(Ie.WORKZONE_CARD_VISIBLE)!=="false"}catch{return!0}},Oe=()=>{const i=ue(Ve.get()),n=ue(oe.get()),d=oe.getActivePresetId()||ee,t=Ue.get(),l=ds();De(i),Re(Ce({profiles:i,presets:n,activePresetId:d,audioModelName:t.audioModelName||xe(),imageModelName:t.imageModelName||le(),videoModelName:t.videoModelName||re(),textModelName:t.textModelName||ce(),showWorkZoneCard:l}))};m.useEffect(()=>{var h;if(!o.openSettings)return;const i=ue(Ve.get()),n=ue(oe.get()),d=oe.getActivePresetId()||ee,t=Ue.get();let l=!0;const r=kn(),N=(r==null?void 0:r.action)==="select"&&i.some(_=>_.id===r.profileId)?r.profileId:((h=i[0])==null?void 0:h.id)||A;P(i),F(n),De(i),X(d),z(_=>{var D;return r?N:i.some(V=>V.id===_)?_:((D=i[0])==null?void 0:D.id)||A}),B(_=>{var D;return n.some(V=>V.id===_)?_:((D=n[0])==null?void 0:D.id)||ee}),ke(t.audioModelName||xe()),c(t.imageModelName||le()),y(t.videoModelName||re()),C(t.textModelName||ce());try{l=localStorage.getItem(Ie.WORKZONE_CARD_VISIBLE)!=="false"}catch{l=!0}G(l),w("providers"),ae(r&&f?"detail":"catalog"),ye("catalog"),fe(""),Me(!1),Re(Ce({profiles:i,presets:n,activePresetId:d,audioModelName:t.audioModelName||xe(),imageModelName:t.imageModelName||le(),videoModelName:t.videoModelName||re(),textModelName:t.textModelName||ce(),showWorkZoneCard:l})),(r==null?void 0:r.action)==="create"&&di(r,i)},[o.openSettings]),m.useEffect(()=>{if(!I&&b[0]){z(b[0].id);return}I&&b.length>0&&!b.some(i=>i.id===I)&&z(b[0].id)},[b,I]),m.useEffect(()=>{if(!ie&&q[0]){B(q[0].id);return}ie&&q.length>0&&!q.some(i=>i.id===ie)&&B(q[0].id)},[q,ie]),m.useEffect(()=>{fe("")},[I,$]);const pe=(i,n)=>{P(d=>d.map(t=>t.id===i?n(t):t))},os=(i,n)=>{F(d=>d.map(t=>t.id===i?n(t):t))},ai=async(i,n)=>{var d,t;try{const l=Ue.get(),r=((d=i.find(k=>k.id===n))==null?void 0:d.id)||((t=i[0])==null?void 0:t.id)||ee,N=i.find(k=>k.id===r)||i[0]||null,h=K(N==null?void 0:N.audio)||l.audioModelName||xe(),_=K(N==null?void 0:N.image)||l.imageModelName||le(),D=K(N==null?void 0:N.video)||l.videoModelName||re(),V=K(N==null?void 0:N.text)||l.textModelName||l.chatModel||ce();return await oe.update(ue(i)),await oe.setActivePresetId(r),await Ue.update({audioModelName:h,imageModelName:_,videoModelName:D,textModelName:V,chatModel:V}),F(i),X(r),ke(h),c(_),y(D),C(V),Oe(),!0}catch(l){return console.error("Failed to persist preset configuration:",l),O.error("预设保存失败,请重试"),!1}},ls=async(i,n)=>{if(P(d=>d.map(t=>t.id===i?{...t,enabled:n}:t)),!!Ee.some(d=>d.id===i))try{await Ve.update(ue(Ve.get()).map(d=>d.id===i?{...d,enabled:n}:d)),Oe()}catch(d){console.error("Failed to persist provider enabled state:",d),P(t=>t.map(l=>l.id===i?{...l,enabled:!n}:l)),O.error("供应商状态保存失败,请重试")}},rs=async i=>{G(i);try{localStorage.setItem(Ie.WORKZONE_CARD_VISIBLE,String(i)),window.dispatchEvent(new CustomEvent("workzone-visibility-changed")),Oe()}catch(n){console.error("Failed to persist canvas visibility state:",n),G(!i),O.error("画布显示配置保存失败,请重试")}},di=(i,n)=>{var r;const d=n||b;if(w("providers"),f&&ae("detail"),i.action==="select"){const N=d.some(h=>h.id===i.profileId)?i.profileId:((r=d[d.length-1])==null?void 0:r.id)||A;return z(N),d}const t=Ci(d.length+1),l=[...d,t];return P(l),z(t.id),l},oi=()=>{const i=Ci(b.length+1);P(n=>[...n,i]),z(i.id),w("providers"),f&&ae("detail")};m.useEffect(()=>{if(!o.openSettings)return;const i=n=>{const d=n.detail;d&&di(d)};return window.addEventListener(Ui,i),()=>{window.removeEventListener(Ui,i)}},[o.openSettings,f,b]);const li=async i=>{var l;if(Ze(i))return;const n=b.find(r=>r.id===i);if(!await g({title:"确认删除供应商",description:`确定要删除供应商「${(n==null?void 0:n.name)||"未命名供应商"}」吗?相关预设里的路由会被清空。`,confirmText:"删除",cancelText:"取消",danger:!0}))return;const t=b.filter(r=>r.id!==i);P(t),F(r=>r.map(N=>qn(N,i))),I===i&&z(((l=t[0])==null?void 0:l.id)||A),f&&ae("catalog")},ri=m.useCallback(i=>{const n=b.find(t=>t.id===i);if(!n)return;const d={...ue(n),id:He("profile"),name:`${n.name} (副本)`};P(t=>[...t,d]),z(d.id),w("providers"),f&&ae("detail")},[b,f]),ze=Ps(),cs=m.useCallback(i=>{const n=[{key:"clone",label:"克隆",icon:e.jsxDEV(Os,{size:14},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1172,columnNumber:17},void 0),onSelect:ri}];return Ze(i)||n.push({key:"divider",type:"divider"},{key:"delete",label:"删除",icon:e.jsxDEV(ji,{size:14},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1182,columnNumber:19},void 0),danger:!0,onSelect:li}),n},[ri]),ci=()=>{var d;const i=((d=is[0])==null?void 0:d.id)||null,n=Vn(i,{audio:ve||xe(),image:ne||le(),video:j||re(),text:M||ce()});F(t=>[...t,n]),B(n.id),w("presets"),f&&ye("detail")},us=async i=>{var l,r;if(q.length<=1)return;const n=q.find(N=>N.id===i);if(!await g({title:"确认删除预设",description:`确定要删除预设「${(n==null?void 0:n.name)||"未命名预设"}」吗?此操作不可撤销。`,confirmText:"删除",cancelText:"取消",danger:!0}))return;const t=q.filter(N=>N.id!==i);F(t),se===i&&X(((l=t[0])==null?void 0:l.id)||ee),ie===i&&B(((r=t[0])==null?void 0:r.id)||ee),f&&ye("catalog")},ui=(i,n)=>{if(!R)return;const d=q.map(t=>t.id===R.id?Un(t,i,{defaultModelRef:n}):t);F(d),ai(d,se)},gs=async()=>{if(!u){O.warning("请先选择供应商配置");return}if(ti){const d=O.loading("正在保存当前配置...",0),t=await Ni(!1);if(O.close(d),!t)return}const i=u.apiKey.trim(),n=Fe(u.baseUrl.trim()||Se);if(!i){O.warning("请先填写 API Key");return}try{await we.discover(u.id,n,i),Me(!0)}catch(d){const t=d instanceof Error?d.message:"模型同步失败";we.setError(u.id,t),O.error({content:t,duration:3600})}},gi=(i,n)=>{var r,N,h;if(!u)return;const d=we.applySelection(u.id,i),t=d.models;if(u.id===A){const _=t.filter(p=>p.type==="image"),D=t.filter(p=>p.type==="video"),V=t.filter(p=>p.type==="text"),k=T.discoveredModels.filter(p=>p.type==="image").map(p=>p.id),Y=T.discoveredModels.filter(p=>p.type==="video").map(p=>p.id),U=T.discoveredModels.filter(p=>p.type==="text").map(p=>p.id);!_.some(p=>p.id===ne)&&k.includes(ne)&&c(((r=_[0])==null?void 0:r.id)||le()),!D.some(p=>p.id===j)&&Y.includes(j)&&y(((N=D[0])==null?void 0:N.id)||re()),!V.some(p=>p.id===M)&&U.includes(M)&&C(((h=V[0])==null?void 0:h.id)||ce())}const l=(n==null?void 0:n.successMessage)||xn(u.name,d.addedModelIds.length,d.removedModelIds.length,t.length);l&&O.success(l),Me(!1)},ms=i=>{if(!u)return;if(!T.selectedModelIds.includes(i)){O.warning("该模型不是当前分组动态添加的模型,无法在此移除");return}const n=T.selectedModelIds.filter(d=>d!==i);gi(n)},mi=()=>{a(i=>({...i,openSettings:!1}))},Ni=async(i=!1)=>{var n,d,t,l,r,N;if(Xe)return!1;Je(!0);try{const h=b.map(E=>{var je;const _e=E.baseUrl.trim()?Fe(E.baseUrl):"";return{...E,name:E.name.trim()||"未命名供应商",iconUrl:((je=E.iconUrl)==null?void 0:je.trim())||void 0,baseUrl:_e,apiKey:E.apiKey.trim()}}),_=new Set(h.map(E=>E.id)),D=q.map(E=>{const _e={...E,name:E.name.trim()||"未命名预设",audio:{...E.audio},image:{...E.image},video:{...E.video},text:{...E.text}};return["image","video","audio","text"].forEach(je=>{const vi=_e[je],Be=qe(vi),yi=K(vi);if(Be&&!_.has(Be)){_e[je]=ge(me(null,yi));return}_e[je]=ge(me(Be,yi))}),_e}),V=((n=D.find(E=>E.id===se))==null?void 0:n.id)||((d=D[0])==null?void 0:d.id)||ee,k=D.find(E=>E.id===V)||D[0]||null,Y=h.find(E=>E.id===A)||h[0],U=Fe((Y==null?void 0:Y.baseUrl)||Se),p=ve.trim()||((t=es[0])==null?void 0:t.id)||xe(),J=ne.trim()||((l=ei[0])==null?void 0:l.id)||le(),S=j.trim()||((r=ii[0])==null?void 0:r.id)||re(),H=M.trim()||((N=si[0])==null?void 0:N.id)||ce(),Ge=K(k==null?void 0:k.image)||J,de=K(k==null?void 0:k.video)||S,ys=K(k==null?void 0:k.audio)||p,_s=K(k==null?void 0:k.text)||H;h.forEach(E=>{we.invalidateIfConfigChanged(E.id,E.baseUrl||Se,E.apiKey||"")}),await Ue.update({apiKey:(Y==null?void 0:Y.apiKey)||"",baseUrl:U,audioModelName:ys,imageModelName:Ge,videoModelName:de,textModelName:_s}),await Ve.update(h),await Bs.update(we.getCatalogs().filter(E=>_.has(E.profileId))),await oe.update(D),await oe.setActivePresetId(V);try{localStorage.setItem(Ie.WORKZONE_CARD_VISIBLE,String(W)),window.dispatchEvent(new CustomEvent("workzone-visibility-changed"))}catch{}return P(h),De(ue(h)),F(D),X(V),ke(p),c(J),y(S),C(H),Re(Ce({profiles:h,presets:D,activePresetId:V,audioModelName:p,imageModelName:J,videoModelName:S,textModelName:H,showWorkZoneCard:W})),i&&mi(),!0}catch(h){return console.error("Failed to persist settings drafts:",h),O.error("设置保存失败,请稍后重试"),!1}finally{Je(!1)}},Ns=()=>{if(!ti){mi();return}(async()=>{const i=O.loading("正在保存设置...",0),n=await Ni(!0);O.close(i),n||O.warning("设置尚未保存,请检查后重试")})()},fs=()=>{Qe||Xe||Ns()},fi=()=>e.jsxDEV("div",{className:"settings-dialog__sidebar-shell settings-dialog__sidebar-shell--catalog",children:[e.jsxDEV("div",{className:"settings-dialog__sidebar-summary",children:[e.jsxDEV("div",{className:"settings-dialog__sidebar-summary-row",children:[e.jsxDEV("span",{className:"settings-dialog__sidebar-summary-title",children:"供应商目录"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1600,columnNumber:11},void 0),f?e.jsxDEV("button",{type:"button",className:"settings-dialog__sidebar-summary-action",onClick:oi,children:"新增供应商"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1604,columnNumber:13},void 0):null]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1599,columnNumber:9},void 0),f?e.jsxDEV("span",{className:"settings-dialog__sidebar-summary-text",children:"先从列表里选择供应商,再进入对应的配置页面。"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1614,columnNumber:11},void 0):null]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1598,columnNumber:7},void 0),e.jsxDEV("div",{className:"settings-dialog__sidebar-list",children:b.map(i=>{const n=i.id===(u==null?void 0:u.id);return e.jsxDEV("div",{className:`settings-dialog__provider-row ${n?"settings-dialog__provider-row--active":""} ${i.enabled?"":"settings-dialog__provider-row--disabled"}`,onContextMenu:d=>{d.preventDefault(),ze.open(d,i.id)},children:[e.jsxDEV("button",{type:"button",className:"settings-dialog__provider-select",onClick:()=>ts(i.id),"aria-pressed":n,children:[e.jsxDEV("span",{className:"settings-dialog__provider-select-main",children:[e.jsxDEV(Ri,{profile:i},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1644,columnNumber:19},void 0),e.jsxDEV("span",{className:"settings-dialog__provider-copy",children:[e.jsxDEV("span",{className:"settings-dialog__provider-name-row",children:[e.jsxDEV("span",{className:"settings-dialog__provider-name",children:i.name},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1647,columnNumber:23},void 0),i.id===A?e.jsxDEV("span",{className:"settings-dialog__provider-tag",children:"默认"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1651,columnNumber:25},void 0):null]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1646,columnNumber:21},void 0),f?e.jsxDEV("span",{className:"settings-dialog__provider-meta",children:[e.jsxDEV("span",{children:We[i.providerType].label},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1658,columnNumber:25},void 0),e.jsxDEV("span",{children:i.enabled?"启用":"停用"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1661,columnNumber:25},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1657,columnNumber:23},void 0):null]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1645,columnNumber:19},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1643,columnNumber:17},void 0),f?e.jsxDEV(Ke,{size:16,className:"settings-dialog__provider-arrow","aria-hidden":"true"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1667,columnNumber:19},void 0):null]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1637,columnNumber:15},void 0),e.jsxDEV("div",{className:"settings-dialog__provider-switch",children:[e.jsxDEV("span",{className:"settings-dialog__provider-switch-copy",children:i.enabled?"启用":"停用"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1676,columnNumber:17},void 0),e.jsxDEV(wi,{size:"small",value:i.enabled,disabled:i.id===A,onChange:d=>void ls(i.id,d)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1679,columnNumber:17},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1675,columnNumber:15},void 0)]},i.id,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1625,columnNumber:13},void 0)})},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1620,columnNumber:7},void 0),e.jsxDEV(Gs,{state:ze.contextMenu,items:cs,onClose:ze.close,zIndex:2e4},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1696,columnNumber:7},void 0),f?null:e.jsxDEV("button",{type:"button",className:"settings-dialog__sidebar-add",onClick:oi,children:[e.jsxDEV("span",{className:"settings-dialog__sidebar-add-icon",children:"+"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1709,columnNumber:11},void 0),e.jsxDEV("span",{children:"新增供应商"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1710,columnNumber:11},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1704,columnNumber:9},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1597,columnNumber:5},void 0),pi=()=>e.jsxDEV("div",{className:"settings-dialog__sidebar-shell",children:[e.jsxDEV("div",{className:"settings-dialog__sidebar-summary",children:[e.jsxDEV("div",{className:"settings-dialog__sidebar-summary-row",children:[e.jsxDEV("span",{className:"settings-dialog__sidebar-summary-title",children:"默认模型"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1720,columnNumber:11},void 0),f?e.jsxDEV("button",{type:"button",className:"settings-dialog__sidebar-summary-action",onClick:ci,children:"新增预设"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1724,columnNumber:13},void 0):null]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1719,columnNumber:9},void 0),f?e.jsxDEV("span",{className:"settings-dialog__sidebar-summary-text",children:"先选中一个预设,再进入详情页调整默认路由。"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1734,columnNumber:11},void 0):null]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1718,columnNumber:7},void 0),e.jsxDEV("div",{className:"settings-dialog__sidebar-list",children:q.map(i=>{const n=i.id===(R==null?void 0:R.id),d=i.id===se,t=Si(i);return e.jsxDEV("button",{type:"button",className:`settings-dialog__sidebar-item ${n?"settings-dialog__sidebar-item--active":""}`,onClick:()=>as(i.id),children:[e.jsxDEV("div",{className:"settings-dialog__sidebar-item-head",children:[e.jsxDEV("div",{className:"settings-dialog__sidebar-item-top",children:[e.jsxDEV("span",{children:i.name},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1757,columnNumber:19},void 0),d?e.jsxDEV("span",{className:"settings-dialog__sidebar-badge settings-dialog__sidebar-badge--accent",children:"当前"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1759,columnNumber:21},void 0):null]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1756,columnNumber:17},void 0),f?e.jsxDEV(Ke,{size:16,className:"settings-dialog__sidebar-item-arrow","aria-hidden":"true"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1765,columnNumber:19},void 0):null]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1755,columnNumber:15},void 0),e.jsxDEV("div",{className:"settings-dialog__sidebar-item-meta",children:[e.jsxDEV("span",{children:[t,"/3 已配置"]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1774,columnNumber:17},void 0),f?e.jsxDEV("span",{children:d?"正在生效":"点击查看详情"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1776,columnNumber:19},void 0):null]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1773,columnNumber:15},void 0)]},i.id,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1747,columnNumber:13},void 0)})},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1740,columnNumber:7},void 0),f?null:e.jsxDEV("button",{type:"button",className:"settings-dialog__sidebar-add",onClick:ci,children:[e.jsxDEV("span",{className:"settings-dialog__sidebar-add-icon",children:"+"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1790,columnNumber:11},void 0),e.jsxDEV("span",{children:"新增预设"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1791,columnNumber:11},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1785,columnNumber:9},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1717,columnNumber:5},void 0),xi=(i,n)=>e.jsxDEV("div",{className:"settings-dialog__workspace settings-dialog__workspace--single",children:e.jsxDEV("div",{className:"settings-dialog__content-panel settings-dialog__content-panel--compact",children:e.jsxDEV("div",{className:"settings-dialog__mobile-stage",children:n},i,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1800,columnNumber:9},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1799,columnNumber:7},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1798,columnNumber:5},void 0),bi=(i=!1)=>{if(!u)return e.jsxDEV("div",{className:"settings-dialog__empty-panel",children:"请选择一个供应商。"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1810,columnNumber:9},void 0);const n=Ii(T.models),d=Pi(u,Ee),t=n.image+n.video+n.text;return e.jsxDEV("div",{className:`settings-dialog__content-panel settings-dialog__content-panel--providers ${i?"settings-dialog__content-panel--detail":""}`,children:[i?e.jsxDEV("div",{className:"settings-dialog__compact-stage-header",children:[e.jsxDEV("button",{type:"button",className:"settings-dialog__compact-back",onClick:()=>ae("catalog"),children:[e.jsxDEV(Ei,{size:16},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1833,columnNumber:15},void 0),e.jsxDEV("span",{children:"返回供应商目录"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1834,columnNumber:15},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1828,columnNumber:13},void 0),e.jsxDEV("div",{className:"settings-dialog__compact-stage-copy",children:[e.jsxDEV("span",{className:"settings-dialog__compact-stage-eyebrow",children:"供应商配置"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1837,columnNumber:15},void 0),e.jsxDEV("p",{className:"settings-dialog__compact-stage-text",children:"进入详情后再编辑接口信息、密钥和模型同步配置。"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1840,columnNumber:15},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1836,columnNumber:13},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1827,columnNumber:11},void 0):null,e.jsxDEV("div",{className:"settings-dialog__section settings-dialog__section--compact",children:e.jsxDEV("div",{className:"settings-dialog__panel-header",children:[e.jsxDEV("div",{className:"settings-dialog__profile-hero",children:[e.jsxDEV(Ri,{profile:u,size:"large"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1849,columnNumber:15},void 0),e.jsxDEV("div",{children:[e.jsxDEV("h3",{className:"settings-dialog__section-title",children:u.name},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1851,columnNumber:17},void 0),e.jsxDEV("div",{className:"settings-dialog__inline-meta",children:[e.jsxDEV("span",{children:We[u.providerType].label},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1855,columnNumber:19},void 0),e.jsxDEV("span",{children:u.enabled?"启用":"停用"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1858,columnNumber:19},void 0),e.jsxDEV("span",{children:[t," 个模型"]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1859,columnNumber:19},void 0),e.jsxDEV("span",{children:d==="saved"?"已保存":"未保存"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1860,columnNumber:19},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1854,columnNumber:17},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1850,columnNumber:15},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1848,columnNumber:13},void 0),Ze(u.id)?null:e.jsxDEV("button",{type:"button",className:"settings-dialog__danger-button",onClick:()=>li(u.id),children:"删除"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1865,columnNumber:15},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1847,columnNumber:11},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1846,columnNumber:9},void 0),e.jsxDEV("div",{className:"settings-dialog__section",children:[e.jsxDEV("div",{className:"settings-dialog__section-header",children:e.jsxDEV("div",{children:e.jsxDEV("h3",{className:"settings-dialog__section-title",children:"基础配置"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1879,columnNumber:15},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1878,columnNumber:13},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1877,columnNumber:11},void 0),e.jsxDEV("div",{className:"settings-dialog__grid",children:[e.jsxDEV("div",{className:"settings-dialog__field settings-dialog__field--column",children:[e.jsxDEV("label",{className:"settings-dialog__label settings-dialog__label--stacked",children:"名称"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1885,columnNumber:15},void 0),e.jsxDEV("input",{type:"text",className:"settings-dialog__input",value:u.name,onChange:l=>pe(u.id,r=>({...r,name:l.target.value}))},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1888,columnNumber:15},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1884,columnNumber:13},void 0),e.jsxDEV("div",{className:"settings-dialog__field settings-dialog__field--column",children:[e.jsxDEV("label",{className:"settings-dialog__label settings-dialog__label--stacked",children:"接口类型"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1902,columnNumber:15},void 0),e.jsxDEV("select",{className:"settings-dialog__select",value:u.providerType,onChange:l=>pe(u.id,r=>{const N=l.target.value,h=Ai(r.providerType),_=Ai();return{...r,providerType:N,authType:r.authType===h?_:r.authType}}),children:gn.map(l=>e.jsxDEV("option",{value:l,children:We[l].label},l,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1930,columnNumber:19},void 0))},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1905,columnNumber:15},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1901,columnNumber:13},void 0),e.jsxDEV("div",{className:"settings-dialog__field settings-dialog__field--column settings-dialog__field--full",children:[e.jsxDEV("label",{className:"settings-dialog__label settings-dialog__label--stacked",children:"图片接口格式"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1938,columnNumber:15},void 0),e.jsxDEV("select",{className:"settings-dialog__select",value:u.imageApiCompatibility||$i,onChange:l=>pe(u.id,r=>({...r,imageApiCompatibility:l.target.value})),children:mn.map(l=>e.jsxDEV("option",{value:l,children:Ye[l].label},l,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1956,columnNumber:19},void 0))},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1941,columnNumber:15},void 0),e.jsxDEV("span",{className:"settings-dialog__field-hint",children:Xi},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1961,columnNumber:15},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1937,columnNumber:13},void 0),e.jsxDEV("div",{className:"settings-dialog__field settings-dialog__field--column settings-dialog__field--full",children:[e.jsxDEV("label",{className:"settings-dialog__label settings-dialog__label--stacked",children:"图标 URL"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1967,columnNumber:15},void 0),e.jsxDEV("input",{type:"url",className:"settings-dialog__input",value:u.iconUrl||"",onChange:l=>pe(u.id,r=>({...r,iconUrl:l.target.value})),placeholder:"可选,留空时自动生成默认图标"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1970,columnNumber:15},void 0),e.jsxDEV("span",{className:"settings-dialog__field-hint",children:"支持填写远程图片地址;未填写时将根据供应商名称生成默认图标。"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1982,columnNumber:15},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1966,columnNumber:13},void 0),e.jsxDEV("div",{className:"settings-dialog__field settings-dialog__field--column settings-dialog__field--full",children:[e.jsxDEV("label",{className:"settings-dialog__label settings-dialog__label--stacked",children:"API 地址"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1988,columnNumber:15},void 0),e.jsxDEV("input",{type:"text",className:"settings-dialog__input",value:u.baseUrl,onChange:l=>pe(u.id,r=>({...r,baseUrl:l.target.value})),placeholder:Se},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1991,columnNumber:15},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1987,columnNumber:13},void 0),e.jsxDEV("div",{className:"settings-dialog__field settings-dialog__field--column settings-dialog__field--full",children:[e.jsxDEV("div",{className:"settings-dialog__label-with-tooltip settings-dialog__label-with-tooltip--left",children:[e.jsxDEV("label",{className:"settings-dialog__label settings-dialog__label--stacked",children:"API Key"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2007,columnNumber:17},void 0),e.jsxDEV(be,{content:e.jsxDEV("div",{style:{maxWidth:480},children:["您可以从以下地址获取 API Key:",e.jsxDEV("br",{},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2014,columnNumber:23},void 0),e.jsxDEV("a",{href:"https://api.tu-zi.com/token",target:"_blank",rel:"noopener noreferrer",style:{color:"#F39C12",textDecoration:"none",display:"inline-block",marginBottom:8},children:"api.tu-zi.com/token"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2015,columnNumber:23},void 0),e.jsxDEV("div",{style:{position:"relative",width:"100%",paddingTop:"56.25%",marginTop:8,borderRadius:8,overflow:"hidden",backgroundColor:"#000",boxShadow:"0 4px 16px rgba(0,0,0,0.2)"},children:e.jsxDEV("iframe",{title:"Bilibili tutorial video",src:"//player.bilibili.com/player.html?isOutside=true&aid=116171584049629&bvid=BV1k4PqzPEKz&cid=36455319822&p=1",allowFullScreen:!0,style:{position:"absolute",top:0,left:0,width:"100%",height:"100%",border:0}},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2040,columnNumber:25},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2028,columnNumber:23},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2012,columnNumber:21},void 0),placement:"top",theme:"light",showArrow:!1,overlayStyle:{maxWidth:"none"},children:e.jsxDEV(Ls,{className:"settings-dialog__tooltip-icon"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2061,columnNumber:19},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2010,columnNumber:17},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2006,columnNumber:15},void 0),e.jsxDEV("div",{style:{display:"flex",gap:"8px",alignItems:"center",width:"100%",flexDirection:f?"column":"row"},children:[e.jsxDEV("input",{type:"password",className:"settings-dialog__input",style:{flex:f?"none":1,width:"100%"},value:u.apiKey,onChange:l=>pe(u.id,r=>({...r,apiKey:l.target.value})),autoComplete:"off"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2073,columnNumber:17},void 0),e.jsxDEV("button",{type:"button",className:"settings-dialog__button settings-dialog__button--fetch",style:{whiteSpace:"nowrap",height:f?"42px":"32px",width:f?"100%":"auto"},onClick:gs,disabled:!Te||T.status==="loading",children:T.status==="loading"?e.jsxDEV(e.Fragment,{children:[e.jsxDEV($s,{size:15,className:"settings-dialog__button-spinner"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2101,columnNumber:23},void 0),"同步中"]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2100,columnNumber:21},void 0):"获取模型"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2086,columnNumber:17},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2064,columnNumber:15},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2005,columnNumber:13},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1883,columnNumber:11},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1876,columnNumber:9},void 0),e.jsxDEV(ln,{profile:u,onUpdateProfile:l=>pe(u.id,l)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2116,columnNumber:9},void 0),u.id===A?e.jsxDEV("div",{className:"settings-dialog__section settings-dialog__section--compact",children:e.jsxDEV("div",{className:"settings-dialog__compat-card",children:[e.jsxDEV("div",{className:"settings-dialog__compat-title",children:"兼容默认模型"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2126,columnNumber:15},void 0),e.jsxDEV("div",{className:"settings-dialog__compat-meta",children:[e.jsxDEV("span",{children:["图片:",ne||le()]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2128,columnNumber:17},void 0),e.jsxDEV("span",{children:["视频:",j||re()]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2129,columnNumber:17},void 0),e.jsxDEV("span",{children:["音频:",ve||xe()]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2130,columnNumber:17},void 0),e.jsxDEV("span",{children:["文本:",M||ce()]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2131,columnNumber:17},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2127,columnNumber:15},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2125,columnNumber:13},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2124,columnNumber:11},void 0):null,ps()]},i?`provider-detail-${u.id}`:void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:1820,columnNumber:7},void 0)},Le=m.useCallback(i=>{i.profileId&&Js({profileId:i.profileId,modelId:i.modelId,modality:i.modality,compareMode:i.compareMode})},[a]),ps=()=>{const i=u?Pi(u,Ee):"saved",n=!!(u!=null&&u.apiKey.trim())&&i==="saved"&&T.status!=="loading",d=(u==null?void 0:u.id)===A,t=jn(T.models),l=new Map(Gi.map((U,p)=>[U,p])),r=Ji.trim(),N=Ii(t),h=t.filter(U=>_n(U,r)),_=bn.map(U=>({type:U,models:h.filter(p=>p.type===U).sort((p,J)=>{const S=l.get(p.vendor)??Number.MAX_SAFE_INTEGER,H=l.get(J.vendor)??Number.MAX_SAFE_INTEGER;return S!==H?S-H:Ks(p,J)})})).filter(U=>U.models.length>0),D=Te||t.length>0,V=t.length>0&&h.length===0&&!!r,k=T.status==="error"&&t.length===0,Y=!Te&&t.length===0;return e.jsxDEV("div",{className:"settings-dialog__section",children:[e.jsxDEV("div",{className:"settings-dialog__section-header",children:e.jsxDEV("div",{children:[e.jsxDEV("h3",{className:"settings-dialog__section-title",children:"模型"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2211,columnNumber:13},void 0),e.jsxDEV("div",{className:"settings-dialog__inline-meta",children:[e.jsxDEV("span",{children:["已添加 ",t.length," 个"]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2213,columnNumber:15},void 0),e.jsxDEV("span",{children:["图 ",N.image]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2214,columnNumber:15},void 0),e.jsxDEV("span",{children:["视 ",N.video]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2215,columnNumber:15},void 0),e.jsxDEV("span",{children:["音 ",N.audio]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2216,columnNumber:15},void 0),e.jsxDEV("span",{children:["文 ",N.text]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2217,columnNumber:15},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2212,columnNumber:13},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2210,columnNumber:11},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2209,columnNumber:9},void 0),D?e.jsxDEV("div",{className:"settings-dialog__model-toolbar",children:e.jsxDEV("label",{className:`settings-dialog__model-search ${t.length===0?"settings-dialog__model-search--disabled":""}`,children:[e.jsxDEV(Oi,{size:15},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2231,columnNumber:15},void 0),e.jsxDEV("input",{type:"text",value:te,onChange:U=>fe(U.target.value),placeholder:t.length>0?"搜索模型 ID、名称或品牌":"获取模型后可搜索",disabled:t.length===0},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2232,columnNumber:15},void 0),te?e.jsxDEV("button",{type:"button",className:"settings-dialog__model-search-clear",onClick:()=>fe(""),"aria-label":"清空搜索",children:e.jsxDEV(Ti,{size:14},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2250,columnNumber:19},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2244,columnNumber:17},void 0):null]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2224,columnNumber:13},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2223,columnNumber:11},void 0):null,_.length>0?e.jsxDEV("div",{className:"settings-dialog__model-type-groups",children:_.map(({type:U,models:p})=>{const J=Yi.has(U);return e.jsxDEV("div",{className:"settings-dialog__model-type-group",children:[e.jsxDEV("div",{className:"settings-dialog__model-type-header",style:{cursor:"pointer"},onClick:()=>Qi(U),children:[e.jsxDEV("div",{className:"settings-dialog__model-type-meta",children:[J?e.jsxDEV(Ke,{size:16,className:"settings-dialog__model-type-toggle"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2271,columnNumber:25},void 0):e.jsxDEV(zi,{size:16,className:"settings-dialog__model-type-toggle"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2276,columnNumber:25},void 0),e.jsxDEV("span",{className:"settings-dialog__model-type-title",children:Nn[U]},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2281,columnNumber:23},void 0),e.jsxDEV("span",{className:"settings-dialog__model-type-count",children:p.length},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2284,columnNumber:23},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2269,columnNumber:21},void 0),e.jsxDEV("button",{type:"button",className:"settings-dialog__model-group-test",onClick:S=>{S.stopPropagation(),u&&Le({profileId:u.id,modality:U,compareMode:"cross-model"})},disabled:!n,title:n?"测试当前供应商这一组模型":"请先保存供应商配置并确保 API Key 可用",children:"测试本组"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2288,columnNumber:21},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2264,columnNumber:19},void 0),!J&&e.jsxDEV("div",{className:"settings-dialog__model-type-list",children:p.map(S=>{const H=Bi(S.vendor),Ge=!d||T.selectedModelIds.includes(S.id);return e.jsxDEV("div",{className:"settings-dialog__model-type-item",style:{"--model-brand-accent":H.accent,"--model-brand-surface":H.surface,"--model-brand-border":H.border},children:[e.jsxDEV("span",{className:"settings-dialog__model-type-item-logo",children:e.jsxDEV(Ki,{vendor:S.vendor,size:16},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2331,columnNumber:31},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2330,columnNumber:29},void 0),e.jsxDEV("div",{className:"settings-dialog__model-type-item-copy",children:[e.jsxDEV(pn,{profileId:u.id,modelId:S.id},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2337,columnNumber:31},void 0),e.jsxDEV("span",{className:"settings-dialog__model-type-item-vendor",children:Ae(S.vendor)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2341,columnNumber:31},void 0),e.jsxDEV(fn,{profileId:u.id,modelId:S.id},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2344,columnNumber:31},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2336,columnNumber:29},void 0),e.jsxDEV("div",{className:"settings-dialog__model-type-item-btns",children:[(()=>{const de=en.getLatestEntryStatus(u.id,S.id);return de==="completed"?e.jsxDEV(be,{content:"上次测试成功",showArrow:!1,children:e.jsxDEV("span",{className:"settings-dialog__model-tip-trigger",children:e.jsxDEV("span",{className:"settings-dialog__model-status settings-dialog__model-status--ok"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2363,columnNumber:41},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2362,columnNumber:39},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2358,columnNumber:37},void 0):de==="failed"?e.jsxDEV(be,{content:"上次测试失败",showArrow:!1,children:e.jsxDEV("span",{className:"settings-dialog__model-tip-trigger",children:e.jsxDEV("span",{className:"settings-dialog__model-status settings-dialog__model-status--fail"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2374,columnNumber:41},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2373,columnNumber:39},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2369,columnNumber:37},void 0):null})(),e.jsxDEV(be,{content:n?"测试":"请先保存供应商配置并确保 API Key 可用",showArrow:!1,children:e.jsxDEV("span",{className:"settings-dialog__model-tip-trigger",children:e.jsxDEV("button",{type:"button",className:"settings-dialog__model-icon-btn settings-dialog__model-icon-btn--test",onClick:de=>{de.stopPropagation(),u&&Le({profileId:u.id,modality:U,modelId:S.id,compareMode:"cross-provider"})},disabled:!n,children:e.jsxDEV(Li,{size:14},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2404,columnNumber:37},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2389,columnNumber:35},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2388,columnNumber:33},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2380,columnNumber:31},void 0),Ge?e.jsxDEV(be,{content:"移除此模型",showArrow:!1,children:e.jsxDEV("span",{className:"settings-dialog__model-tip-trigger",children:e.jsxDEV("button",{type:"button",className:"settings-dialog__model-icon-btn settings-dialog__model-icon-btn--delete",onClick:de=>{de.stopPropagation(),ms(S.id)},children:e.jsxDEV(ji,{size:14},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2422,columnNumber:39},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2414,columnNumber:37},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2413,columnNumber:35},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2409,columnNumber:33},void 0):null]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2349,columnNumber:29},void 0)]},S.id,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2319,columnNumber:27},void 0)})},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2311,columnNumber:21},void 0)]},U,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2263,columnNumber:17},void 0)})},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2258,columnNumber:11},void 0):V?e.jsxDEV("div",{className:"settings-dialog__model-empty",children:"没有匹配的模型,试试搜索品牌名或更完整的模型 ID。"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2438,columnNumber:11},void 0):k?e.jsxDEV("div",{className:"settings-dialog__model-empty settings-dialog__model-empty--error",children:[e.jsxDEV(Fs,{size:16},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2443,columnNumber:13},void 0),e.jsxDEV("span",{children:T.error||"模型获取失败,请稍后重试"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2444,columnNumber:13},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2442,columnNumber:11},void 0):Y?e.jsxDEV("div",{className:"settings-dialog__model-empty",children:"填写 API Key 后即可获取模型,获取完成后可在这里检索和浏览。"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2447,columnNumber:11},void 0):e.jsxDEV("div",{className:"settings-dialog__model-empty",children:"还没有已添加的模型"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2451,columnNumber:11},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2208,columnNumber:7},void 0)},xs=(i,n,d)=>{const t=qe(d),l=K(d);return b.filter(r=>r.id===t||r.enabled&&r.capabilities[n]).map(r=>{const h=(r.id===A?i==="image"?ei:i==="video"?ii:si:we.getState(r.id).models.filter(_=>_.type===i)).filter((_,D,V)=>V.findIndex(k=>k.id===_.id)===D);return r.id===t&&l&&!h.some(_=>_.id===l)&&h.unshift({id:l,label:l,shortLabel:l,type:i,vendor:Ws.OTHER}),{profile:r,models:h}}).filter(r=>r.models.length>0)},$e=(i,n,d)=>{var D;const t=xs(i,d,n),l=qe(n),r=K(n),N=((D=b.find(V=>V.id===l))==null?void 0:D.name)||"未配置",h=In(t),_=l&&r?`${l}::${r}`:r||void 0;return e.jsxDEV("div",{className:`settings-dialog__route-card settings-dialog__route-card--${i}`,children:[e.jsxDEV("div",{className:"settings-dialog__route-card-top",children:e.jsxDEV("div",{className:"settings-dialog__route-card-title",children:qi[i]},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2536,columnNumber:11},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2535,columnNumber:9},void 0),e.jsxDEV("div",{className:"settings-dialog__stack",children:[e.jsxDEV("div",{className:"settings-dialog__field settings-dialog__field--column",children:[e.jsxDEV("label",{className:"settings-dialog__label settings-dialog__label--stacked",children:"默认模型"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2542,columnNumber:13},void 0),e.jsxDEV("div",{className:"settings-dialog__route-model-picker",children:[e.jsxDEV(Xs,{variant:"form",selectedModel:r||"",selectedSelectionKey:_,models:h,providerProfilesOverride:b,placement:"down",placeholder:`搜索${qi[i]}模型或供应商`,allowCustomValue:!1,showProviderAction:!1,onSelect:(V,k)=>{ui(i,k||me(null,V))},disabled:h.length===0},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2546,columnNumber:15},void 0),r?e.jsxDEV("button",{type:"button",className:"settings-dialog__route-clear",onClick:()=>ui(i,null),children:"清空"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2565,columnNumber:17},void 0):null]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2545,columnNumber:13},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2541,columnNumber:11},void 0),e.jsxDEV("div",{className:"settings-dialog__route-meta",children:[e.jsxDEV("span",{children:N},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2577,columnNumber:13},void 0),e.jsxDEV("span",{children:r||"未选择模型"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2578,columnNumber:13},void 0),t.length===0?e.jsxDEV("span",{children:"暂无可选模型"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2579,columnNumber:41},void 0):null]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2576,columnNumber:11},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2540,columnNumber:9},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2532,columnNumber:7},void 0)},hi=(i=!1)=>{if(!R)return e.jsxDEV("div",{className:"settings-dialog__empty-panel",children:"请选择一个默认模型预设。"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2589,columnNumber:9},void 0);const n=Si(R),d=R.id===se;return e.jsxDEV("div",{className:`settings-dialog__content-panel ${i?"settings-dialog__content-panel--detail":""}`,children:[i?e.jsxDEV("div",{className:"settings-dialog__compact-stage-header",children:[e.jsxDEV("button",{type:"button",className:"settings-dialog__compact-back",onClick:()=>ye("catalog"),children:[e.jsxDEV(Ei,{size:16},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2612,columnNumber:15},void 0),e.jsxDEV("span",{children:"返回模型预设"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2613,columnNumber:15},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2607,columnNumber:13},void 0),e.jsxDEV("div",{className:"settings-dialog__compact-stage-copy",children:[e.jsxDEV("span",{className:"settings-dialog__compact-stage-eyebrow",children:"模型预设"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2616,columnNumber:15},void 0),e.jsxDEV("p",{className:"settings-dialog__compact-stage-text",children:"在这里设置图片、视频和文本模型的默认路由。"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2619,columnNumber:15},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2615,columnNumber:13},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2606,columnNumber:11},void 0):null,e.jsxDEV("div",{className:"settings-dialog__section",children:[e.jsxDEV("div",{className:"settings-dialog__panel-header",children:[e.jsxDEV("div",{children:[e.jsxDEV("h3",{className:"settings-dialog__section-title",children:R.name},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2628,columnNumber:15},void 0),e.jsxDEV("div",{className:"settings-dialog__inline-meta",children:[e.jsxDEV("span",{children:d?"当前预设":"未激活"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2632,columnNumber:17},void 0),e.jsxDEV("span",{children:[n,"/3 已配置"]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2633,columnNumber:17},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2631,columnNumber:15},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2627,columnNumber:13},void 0),e.jsxDEV("div",{className:"settings-dialog__inline-row",children:[e.jsxDEV("button",{type:"button",className:"settings-dialog__ghost-button",onClick:()=>{ai(q,R.id)},children:"设为当前预设"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2637,columnNumber:15},void 0),e.jsxDEV("button",{type:"button",className:"settings-dialog__danger-button",onClick:()=>us(R.id),disabled:q.length<=1,children:"删除预设"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2649,columnNumber:15},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2636,columnNumber:13},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2626,columnNumber:11},void 0),e.jsxDEV("div",{className:"settings-dialog__grid",children:e.jsxDEV("div",{className:"settings-dialog__field settings-dialog__field--column settings-dialog__field--full",children:[e.jsxDEV("label",{className:"settings-dialog__label settings-dialog__label--stacked",children:"预设名称"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2662,columnNumber:15},void 0),e.jsxDEV("input",{type:"text",className:"settings-dialog__input",value:R.name,onChange:t=>os(R.id,l=>({...l,name:t.target.value}))},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2665,columnNumber:15},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2661,columnNumber:13},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2660,columnNumber:11},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2625,columnNumber:9},void 0),e.jsxDEV("div",{className:"settings-dialog__routes",children:[$e("image",R.image,"supportsImage"),$e("video",R.video,"supportsVideo"),$e("text",R.text,"supportsText")]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2680,columnNumber:9},void 0)]},i?`preset-detail-${R.id}`:void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2599,columnNumber:7},void 0)},bs=()=>e.jsxDEV("div",{className:"settings-dialog__workspace settings-dialog__workspace--single",children:e.jsxDEV("div",{className:"settings-dialog__content-panel settings-dialog__content-panel--canvas",children:[f?e.jsxDEV("div",{className:"settings-dialog__compact-stage-header",children:e.jsxDEV("div",{className:"settings-dialog__compact-stage-copy",children:[e.jsxDEV("span",{className:"settings-dialog__compact-stage-eyebrow",children:"画布显示"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2703,columnNumber:15},void 0),e.jsxDEV("p",{className:"settings-dialog__compact-stage-text",children:"手机上会以更集中的卡片形式展示,方便快速切换画布相关开关。"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2706,columnNumber:15},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2702,columnNumber:13},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2701,columnNumber:11},void 0):null,e.jsxDEV("div",{className:"settings-dialog__section settings-dialog__section--canvas-card",children:[e.jsxDEV("div",{className:"settings-dialog__section-header",children:e.jsxDEV("div",{children:e.jsxDEV("h3",{className:"settings-dialog__section-title",children:"画布显示配置"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2715,columnNumber:15},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2714,columnNumber:13},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2713,columnNumber:11},void 0),e.jsxDEV("div",{className:"settings-dialog__preference settings-dialog__preference--panel",children:[e.jsxDEV("div",{className:"settings-dialog__toggle-copy",children:[e.jsxDEV("span",{className:"settings-dialog__toggle-title",children:"任务进度卡片"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2721,columnNumber:15},void 0),e.jsxDEV("span",{className:"settings-dialog__toggle-desc",children:"在画布中显示任务进度卡片,便于追踪当前生成状态。"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2724,columnNumber:15},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2720,columnNumber:13},void 0),e.jsxDEV(wi,{size:"small",value:W,onChange:i=>void rs(i)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2728,columnNumber:13},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2719,columnNumber:11},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2712,columnNumber:9},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2699,columnNumber:7},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2698,columnNumber:5},void 0),hs=()=>e.jsxDEV("aside",{className:"settings-dialog__nav",children:e.jsxDEV("div",{className:"settings-dialog__nav-shell",children:e.jsxDEV("div",{className:"settings-dialog__nav-list",children:un.map(i=>e.jsxDEV("button",{type:"button",className:`settings-dialog__nav-item ${$===i.value?"settings-dialog__nav-item--active":""}`,onClick:()=>ns(i.value),children:e.jsxDEV("span",{className:"settings-dialog__nav-item-title",children:i.label},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2757,columnNumber:17},void 0)},i.value,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2747,columnNumber:15},void 0))},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2745,columnNumber:11},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2744,columnNumber:9},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2743,columnNumber:7},void 0),vs=()=>$==="canvas"?bs():$==="speech"?e.jsxDEV(zs,{},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2774,columnNumber:14},void 0):$==="presets"?ni?Zi==="catalog"?xi("presets-catalog",pi()):hi(!0):e.jsxDEV("div",{className:`settings-dialog__workspace ${f?"settings-dialog__workspace--show-sidebar":""}`,children:[e.jsxDEV("aside",{className:"settings-dialog__sidebar",children:pi()},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2790,columnNumber:11},void 0),hi(!1)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2785,columnNumber:9},void 0):ni?Wi==="catalog"?xi("providers-catalog",fi()):bi(!0):e.jsxDEV("div",{className:`settings-dialog__workspace ${f?"settings-dialog__workspace--show-sidebar":""}`,children:[e.jsxDEV("aside",{className:"settings-dialog__sidebar",children:fi()},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2810,columnNumber:9},void 0),bi(!1)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2805,columnNumber:7},void 0);return e.jsxDEV(e.Fragment,{children:[e.jsxDEV(Cs,{id:"settings-dialog",visible:o.openSettings,title:"设置",onClose:fs,width:f?"100%":"88%",height:f?"100%":"88%",minWidth:f?Math.max(320,Math.min(L-16,640)):1080,minHeight:f?Math.max(520,Math.min(Z-16,820)):680,x:"center",y:"center",maximizable:!0,minimizable:!1,resizable:!f,movable:!f,modal:!1,className:"winbox-ai-generation winbox-tool-window winbox-settings-window",container:s,background:"#ffffff",children:e.jsxDEV("div",{ref:Ne,className:`settings-dialog ${f?"settings-dialog--compact":""}`,"data-testid":"settings-dialog",children:e.jsxDEV("div",{className:"settings-dialog__layout",children:[hs(),e.jsxDEV("div",{className:"settings-dialog__main",children:vs()},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2857,columnNumber:13},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2855,columnNumber:11},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2848,columnNumber:9},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2820,columnNumber:7},void 0),e.jsxDEV(on,{open:Qe,container:s,models:T.discoveredModels,selectedModelIds:T.selectedModelIds,onClose:()=>Me(!1),onConfirm:gi,onTestModel:i=>{if(!u)return;const n=T.discoveredModels.find(d=>d.id===i);Le({profileId:u.id,modelId:i,modality:(n==null?void 0:n.type)||"image",compareMode:"cross-provider"})}},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2861,columnNumber:7},void 0),v]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/settings-dialog/settings-dialog.tsx",lineNumber:2819,columnNumber:5},void 0)};export{Ln as IMAGE_MODEL_GROUPED_OPTIONS,Tn as SettingsDialog,$n as VIDEO_MODEL_OPTIONS};
|