import k from"./CollapseItem-DLyJjKsZ.js";import B from"./FormComponentPanel-BNz0yWsU.js";import G from"./JsonModal-C8JDZthL.js";import V from"./index-CB1d7eHu.js";import{_ as N}from"./useForm.vue_vue_type_script_setup_true_lang-Bi5LPdia.js";import Z from"./Toolbar-M-1CdCTQ.js";import q from"./PropsPanel-BwhSwfO9.js";import Q from"./ImportJsonModal-D-59cD6r.js";import U from"./CodeModal-gDCEyehe.js";import"./javascript-JNW0jDht.js";import{g as P,a as X}from"./index-CuePLYzQ.js";import{b as Y,a as ee,l as oe}from"./formItemConfig-BOUWjayo.js";import{j as te,bI as re,C as b,_ as ne}from"./entry/index-DCo3Lhkx.js";import{g as se}from"./formItemPropsConfig-B8XivIkZ.js";import{bM as J,bN as ae,L as le,f as c}from"./antd-FjOLgRLC.js";import{d as ie,f as l,p as f,Z as me,_ as pe,k as n,a8 as i,u as s,a1 as z,ad as ue,aa as de,ae as ce,aj as fe,ak as ve,F as he}from"./vue-ByATgq5d.js";import"./vuedraggable.umd-DPvbEkm0.js";import"./LayoutItem-CNLVklNm.js";import"./FormNode-BhUE8LMh.js";import"./FormNodeOperate-wgVLFhf1.js";import"./useFormDesignState-BkhFEFlr.js";import"./index-CM_tf0nz.js";import"./componentMap-BVa9IJUU.js";import"./useFormItem-DmfL7Ss_.js";import"./RadioButtonGroup.vue_vue_type_script_setup_true_lang-g84CAQ2G.js";import"./index-BRGiQNXL.js";import"./index-C4ONroOz.js";import"./useWindowSizeFn-CeI7recv.js";import"./uuid-D0SLUWHI.js";import"./useSortable-CMhqkHA2.js";import"./download-NQo8kl2m.js";import"./base64Conver-bBv-IO2K.js";import"./index-6Omir9wS.js";import"./IconPicker.vue_vue_type_script_setup_true_lang-DSboRwOV.js";import"./copyTextToClipboard-D9zCzvi-.js";import"./index-BNjFNUTx.js";import"./index-D33H5Q2H.js";import"./PreviewCode-Ard1i-aa.js";import"./index-Cp9EfOOc.js";import"./index-fRlA23MB.js";import"./FormRender-phm17rs0.js";import"./BasicForm.vue_vue_type_script_setup_true_lang-Dj6uJwaq.js";import"./FormItem.vue_vue_type_script_lang-DWlG_Vlb.js";import"./helper-C0-CVdau.js";import"./BasicForm.vue_vue_type_style_index_0_lang-DcIDwTaz.js";import"./useForm-D6nWKRkQ.js";import"./FormProps.vue_vue_type_script_setup_true_name_FormProps_lang-DwsAfMsQ.js";import"./FormItemProps.vue_vue_type_script_setup_true_name_FormItemProps_lang-C-rsoGwR.js";import"./RuleProps-DvIyAxyy.js";import"./ComponentProps-B3Ui1mRT.js";import"./FormOptions-9-lffDWl.js";import"./FormItemColumnProps-CCD6Od8J.js";const ye=ie({__name:"index",props:{title:{type:String,default:"v-form-antd表单设计器"}},setup(Pe){const{prefixCls:F}=te("form-design"),D=l(null),I=l(null),M=l(null),w=l(null),L=l(null),S=l(null),H=l({}),t=l({schemas:[],layout:"horizontal",labelLayout:"flex",labelWidth:100,labelCol:{},wrapperCol:{},currentItem:{component:"",componentProps:{}},activeKey:1}),T=o=>{o.schemas=o.schemas||[],o.schemas.forEach(e=>{e.colProps=e.colProps||{span:24},e.componentProps=e.componentProps||{},e.itemProps=e.itemProps||{}}),t.value=o},W=re(t,{deep:!0,capacity:20,parse:o=>{const e=c(o),{currentItem:r,schemas:a}=e,d=a&&a.find(m=>m.key===(r==null?void 0:r.key));return d&&(e.currentItem=d),e}}),p=o=>{t.value.currentItem=o,E(o.key?t.value.activeKey===1?2:t.value.activeKey:1)},$=o=>{o.colProps=o.colProps||{},o.colProps.span=se.span},v=(o,e)=>{},g=o=>{const e=c(o);return $(e),P(e),e},h=o=>{var r;const e=c(o);if($(e),P(e),!((r=t.value.currentItem)!=null&&r.key)){p(e),t.value.schemas&&t.value.schemas.push(e);return}A(e,!1)},j=o=>{const e=c(o);return e.component==="Grid"&&X([o],r=>{P(r)}),e},A=(o=t.value.currentItem,e=!0)=>{var d;const r=(d=t.value.currentItem)==null?void 0:d.key,a=m=>{m.some((y,C)=>{var K;if(y.key===r){e?m.splice(C,0,j(y)):m.splice(C+1,0,o);const _={newIndex:C+1};return x(_,m,e),!0}["Grid","Tabs"].includes(y.component)&&((K=y.columns)==null||K.forEach(_=>{a(_.children)}))})};t.value.schemas&&a(t.value.schemas)},x=({newIndex:o},e,r=!1)=>{const a=e[o];r&&P(a),p(a)},u=o=>{const e=c(t.value);o==null||o.showModal(e)},E=o=>{t.value.activeKey=o},O=()=>{t.value.schemas=[],p({component:""})},R=(o,e)=>H.value[o]=e;return f("formModel",H),f("setFormModelMethod",R),f("formConfig",t),f("historyReturn",W),f("formDesignMethods",{handleBeforeColAdd:x,handleCopy:A,handleListPush:h,handleSetSelectItem:p,handleAddAttrs:v,setFormConfig:T}),(o,e)=>(me(),pe(he,null,[n(s(le),null,{default:i(()=>[n(s(J),{class:z(`left ${s(F)}-sider`),collapsible:"",collapsedWidth:"0",width:"270",zeroWidthTriggerStyle:{"margin-top":"-70px","background-color":"gray"},breakpoint:"md"},{default:i(()=>[n(s(b),{title:"基础控件"},{default:i(()=>[n(k,{list:s(Y),handleListPush:g,onAddAttrs:v,onHandleListPush:h},null,8,["list"])]),_:1}),n(s(b),{title:"自定义控件"},{default:i(()=>[n(k,{list:s(ee),onAddAttrs:v,handleListPush:g,onHandleListPush:h},null,8,["list"])]),_:1}),n(s(b),{title:"布局控件"},{default:i(()=>[n(k,{list:s(oe),handleListPush:g,onAddAttrs:v,onHandleListPush:h},null,8,["list"])]),_:1})]),_:1},8,["class"]),n(s(ae),null,{default:i(()=>[n(Z,{onHandleOpenJsonModal:e[0]||(e[0]=r=>u(I.value)),onHandleOpenImportJsonModal:e[1]||(e[1]=r=>u(M.value)),onHandlePreview:e[2]||(e[2]=r=>u(w.value)),onHandlePreview2:e[3]||(e[3]=r=>u(L.value)),onHandleOpenCodeModal:e[4]||(e[4]=r=>u(S.value)),onHandleClearFormItems:O}),n(B,{"current-item":t.value.currentItem,data:t.value,onHandleSetSelectItem:p},null,8,["current-item","data"])]),_:1}),n(s(J),{class:z(`right ${s(F)}-sider`),collapsible:"",reverseArrow:!0,collapsedWidth:"0",width:"270",zeroWidthTriggerStyle:{"margin-top":"-70px","background-color":"gray"},breakpoint:"lg"},{default:i(()=>[n(q,{ref_key:"propsPanel",ref:D,activeKey:t.value.activeKey},ue({_:2},[de(t.value.schemas,r=>({name:`${r.component}Props`,fn:i(a=>[ce(o.$slots,`${r.component}Props`,fe(ve({formItem:a,props:a.componentProps})),void 0,!0)])}))]),1032,["activeKey"])]),_:3},8,["class"])]),_:3}),n(G,{ref_key:"jsonModal",ref:I},null,512),n(U,{ref_key:"codeModal",ref:S},null,512),n(Q,{ref_key:"importJsonModal",ref:M},null,512),n(V,{ref_key:"eFormPreview",ref:w,formConfig:t.value},null,8,["formConfig"]),n(N,{ref_key:"eFormPreview2",ref:L,formConfig:t.value},null,8,["formConfig"])],64))}}),Po=ne(ye,[["__scopeId","data-v-52ba6cd3"]]);export{Po as default};