Files
qhmes/web-dist/js/VarExtractSetting-BOAqQc3_-Yzy3AJLE.js
2026-06-16 18:19:57 +08:00

2 lines
5.3 KiB
Java

import{s as L,bo as N,x as C,aQ as q,i as _}from"./index-X7Y8jykP.js";import"./index-BDvqZ5j4.js";import{z as $}from"./useSettings-CFG4Ykt4-CKCQ4yAA.js";import j from"./VarPicker-9W32Uooa-DMh8f3Tk.js";import"./helper-DcLcf4v6.js";import"./index-BzChaRPg.js";import"./BasicForm.vue_vue_type_style_index_0_lang-B29PWQy0.js";import"./breakpointEnum-BhAg6bcX.js";import K from"./VarListShow-DHiykxbo-BI2C9xTK.js";import Q from"./LLMModelSelect-DS1rSV2f-D3hgqKy0.js";import{a as U,K as F,l as H}from"./VarDefineModal-CEI5IHr7-0fS42-kw.js";import{u as J}from"./useModal-DaJ3Bflg.js";import{L as T}from"./index-Wl3jtD-0.js";import{e as G,h as W,C as x,z as k,Q as t,f as n,u as o,c as v,v as X,H as Y,J as Z,r as ee,i as a}from"./vue-vendor-DNhG1Cve.js";import"./emoji-mart-vue-fast-R0uJEDq-.js";import"./BasicModal-xH56XuRZ.js";import"./ModalHeader-Sr8KwhJJ.js";import"./useTimeout-D5AmIBZw.js";import"./useWindowSizeFn-C-0M9_Ul.js";import"./index-ByCwbQDV.js";import"./index-Upeu4GGa.js";import"./index-C4wWpZeQ.js";import"./index-M9QP6cvf.js";import"./Skeleton-CimgOdM7.js";import"./useScrollTo-0FPEw5-K.js";import"./useIntersectionObserver-BGOgyKyu.js";import"./useAppInject-DPZGPcR3.js";import"./index-CuWaQdlK.js";import"./index-DO7ZhK45.js";import"./NodeContainer-D9PNfjwh-CawrgSrv.js";import"./runStore-Oe6fP2qb-CrdxkpS7.js";import"./NodeIcon-BiVm3xLp-DYMLCJV5.js";import"./index-Crt100Db-CDbHzweT.js";import"./index-CfNJyBRj.js";import"./dropdown-jkliuVyN.js";import"./propStore-Cl0CojEU-BjnqDV4W.js";import"./LoopBodyNode-wLHHxX8A-D3_JcFF8.js";import"./NodeStyle-Bo2gmgjj-CM4kHPNz.js";import"./_commonjsHelpers-B52_cu2H-BG14nIm9.js";import"./throttle-De_jAmBh.js";import"./LoopIcon-BnGR9e2Y-QnRawAik.js";import"./NodeIcon-ClJ5GSWn-CY3EfdQ2.js";import"./useNode-DryF6TH6-6dWLb65C.js";import"./difference-CGvbIcA7.js";import"./fromPairs-Dx9PT-t0.js";import"./uniqBy--vsL0WVB.js";import"./_plugin-vue_export-helper-CHgC5LLL-lGy7RumW.js";import"./index-DklMb9Qc.js";import"./UpOutlined-B1UMbtrP.js";import"./index-DsixALRt.js";import"./index--p9d2PTL.js";import"./eagerComputed-BTlOruLW.js";const re={class:"setting-item"},te={class:"setting-item"},ie={class:"setting-item"},ae={key:0},oe={class:"setting-item setting-output-params"},le=10,or=G({__name:"VarExtractSetting",props:{type:{type:String,required:!0},node:{type:Object,required:!0},properties:{type:Object,required:!0},isSilentMode:{type:Boolean,required:!0},setProperties:{type:Function,required:!0}},setup(I){const{createMessage:c}=L(),w=I,{prefixCls:A}=N("airag-var-extract-setting"),{inputParams:m,outputParams:f,prevVariables:R,createOptionRef:b,isReadOnly:i}=$(w),g=b("model"),d=b("variables"),[V,{openModal:h}]=J(),l=ee(null),B=v(()=>f.value.filter(r=>F.some(e=>e.field===r.field))),y=v({get(){return!Array.isArray(m.value)||m.value.length===0?{nodeId:"",field:"",type:"string"}:m.value[0]},set(r){m.value=[r]}}),M=v(()=>R.value.filter(r=>r.type==="string")),u=v(()=>Array.isArray(d.value)?d.value:[]);W(u,r=>{const e=H(r);_(f.value,e)||(f.value=e)},{deep:!0,immediate:!0});function O(r){if(!i.value){if(!(r!=null&&r.nodeId)){y.value={nodeId:"",field:"",type:"string"};return}if(r.type&&r.type!=="string"){c.warning("仅支持 string 类型的变量");return}y.value={nodeId:r.nodeId,field:r.field,type:"string",name:r.name}}}function z(){i.value||(l.value=null,h(!0,{}))}function D(r,e){i.value||(l.value=e,h(!0,{record:r}))}function E(r){if(i.value)return;const e=q(u.value);if(e.length<=1){c.warning("请至少保留一个提取变量");return}e.splice(r,1),d.value=e}function P(r){if(i.value)return;const e=q(u.value);if(e.some((s,p)=>s.name===r.name&&p!==l.value)){c.warning("变量名称重复");return}l.value===null||l.value===void 0?e.push(r):e.splice(l.value,1,r),d.value=e}function S({item:r,index:e}){return a("div",{class:"var-item",onClick:()=>{i.value||D(r,e)}},[a("div",{class:"var-info"},[a("div",{class:"var-name"},[...r.required?[a("span",{class:"var-required"},"*")]:[],a("span",{},r.name),a("span",{style:{color:"#999999"}},` <${r.type}>`)]),a("div",{class:"var-desc"},r.description||"未填写描述")]),a("div",{class:"var-actions"},[i.value?null:a("a",{style:{},onClick:s=>{s.preventDefault(),s.stopPropagation(),E(e)}},[a(C,{icon:"ant-design:delete-outlined"})])])])}return(r,e)=>{const s=T;return k(),x("div",{class:Z([o(A)])},[t("div",re,[e[2]||(e[2]=t("div",{class:"label"},"输入变量",-1)),n(o(j),{item:y.value,vars:M.value,allowedTypes:["string"],readonly:o(i),onChange:e[0]||(e[0]=p=>O(p))},null,8,["item","vars","readonly"]),e[3]||(e[3]=t("div",{class:"desc"},"仅支持 string 类型的输入",-1))]),t("div",te,[e[4]||(e[4]=t("div",{class:"label"},"模型",-1)),n(Q,{model:o(g),"onUpdate:model":e[1]||(e[1]=p=>X(g)?g.value=p:null),readonly:o(i)},null,8,["model","readonly"])]),t("div",ie,[e[6]||(e[6]=t("div",{class:"label setting-header"},[t("span",null,"提取变量")],-1)),n(s,{"data-source":u.value,renderItem:S,"item-layout":"horizontal"},null,8,["data-source"]),u.value.length<le&&!o(i)?(k(),x("div",ae,[t("a",{onClick:z},[n(o(C),{icon:"ic:round-add"}),e[5]||(e[5]=t("span",null,"新增变量",-1))])])):Y("",!0)]),t("div",oe,[e[7]||(e[7]=t("div",{class:"label"},"提取失败变量",-1)),e[8]||(e[8]=t("div",{class:"desc",style:{"margin-bottom":"8px"}},[t("span",null,"以下变量仅在提取失败后可用")],-1)),n(o(K),{vars:B.value},null,8,["vars"])]),n(U,{onRegister:o(V),onOk:P},null,8,["onRegister"])],2)}}});export{or as default};