index.DyY_YUf0.js 13 KB

1
  1. import{d as V,r as v,_ as U,f as I,o as d,u as A,e as _,j as p,q as N,A as W,k as f,l as h,p as E,x,y as m,aa as J,n as F,s as K,v as T,I as G,J as Y,b8 as O,b5 as H}from"./.pnpm.ZhcTz5Wm.js";import{E as z,d as X,p as Z,a as ee,i as te}from"./element-plus.K6A-vihL.js";import{e as L}from"./@form-create/designer.Bw0zwQqi.js";import"./lodash-es.C-xrcuFl.js";(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const o of document.querySelectorAll('link[rel="modulepreload"]'))l(o);new MutationObserver(o=>{for(const r of o)if(r.type==="childList")for(const u of r.addedNodes)u.tagName==="LINK"&&u.rel==="modulepreload"&&l(u)}).observe(document,{childList:!0,subtree:!0});function n(o){const r={};return o.integrity&&(r.integrity=o.integrity),o.referrerPolicy&&(r.referrerPolicy=o.referrerPolicy),o.crossOrigin==="use-credentials"?r.credentials="include":o.crossOrigin==="anonymous"?r.credentials="omit":r.credentials="same-origin",r}function l(o){if(o.ep)return;o.ep=!0;const r=n(o);fetch(o.href,r)}})();function B(t,e=300){let n=null;return function(...l){n&&clearTimeout(n),n=setTimeout(()=>{t(...l)},e)}}const oe={device:"mobile",hiddenMenu:["subform","aide","layout"],hiddenItem:["password","inputNumber","rate","slider","datePicker","colorPicker","cascader","fcEditor","elTreeSelect","tree","elTransfer","timePicker","switch","upload","timeRange","dateRange","select","radio","checkbox"],showComponentName:!1,showLanguage:!1,showJsonPreview:!1,showInputData:!1,hiddenItemConfig:{default:["field","info","labelWidth"],select:["remote","allowCreate","remoteMethod","reserveKeyword","defaultFirstOption","collapseTags"],checkbox:["textColor","fill"],radio:["textColor","fill"],textarea:["showWordLimit"]},formOptions:{form:{labelWidth:"100px",labelPosition:"top"}},updateDefaultRule:{},showSaveBtn:!0,showDevice:!1,showStyleForm:!1,showControl:!1,switchType:!1,showEventForm:!1,showCustomProps:!1,componentRule:{default:{prepend:!0,rule(t){return[{type:"input",field:"defaultValue",label:"默认值",title:"默认值",on:{change:e=>{t.value=e}}}]}},input:{append:!0,rule(t){return[{type:"rc-switch",field:"synchronize_field",label:"高级功能",title:"高级功能",props:{rule:t}}]}},textarea:{append:!0,rule(t){return[{type:"rc-switch",field:"synchronize_field",label:"高级功能",title:"高级功能",props:{rule:t}}]}}},formRule(){return[{type:"input",field:"formName",label:"表单名称",title:"表单名称"},{type:"upload",field:"cover",label:"头图",title:"头图",props:{limit:1,accept:"image/*",action:"/openwork/media/uploadimg",drag:!0,data:{access_token_openwork:localStorage.getItem("access_token_openwork")},onSuccess(t,e){e.url=t.data.url,window.__QIANKUN__EVENT__.emit("formCoverChange",t.data.url)},onRemove(){window.__QIANKUN__EVENT__.emit("formCoverChange")}}}]}},ne=t=>{const e=["radio","checkbox","select"];return{id:t.id,title:t.options.form.formName,name:t.options.form.formName,cover:t.options.form.cover,rule:t.original.rule,options:t.original.options,form_content:t.rule.map(n=>{const l={field_name:n.title,field_type:n.type.substring(3),default_text:n.value,is_required:n.$required?1:0,field_options:n.options?.map(o=>({count:0,option_name:o.label,tags:o.tags.map(r=>r.tag_id)})),synchronize_field:n.synchronize_field};return e.includes(l.field_type)||delete l.field_options,l}).filter(n=>n.field_type!=="image")}},le=B(t=>{const e=ne(t);if(!e.name){z({message:"表单标题不能为空",type:"error"});return}(t.id?window.__QIANKUN__REQUSET__.CustomrForm._edit:window.__QIANKUN__REQUSET__.CustomrForm._add).bind(window.__QIANKUN__REQUSET__.CustomrForm)(e).then(l=>{l&&z({message:t.id?"修改成功":"保存成功",type:"success",onClose:()=>{t.onSuccess?.()}})})},300),ae={menu:"aide",icon:"icon-title",label:"下拉框",name:"rc-select",input:!0,languageKey:[],rule(){return{type:"rc-select",title:"下拉框",props:{placeholder:"请选择",clearable:!0}}},props(t){return[{type:"rc-options",field:"options",title:"选项内容",props:{field:t.field}}]}},re={menu:"aide",icon:"icon-title",label:"单选框",name:"rc-radio",input:!0,languageKey:[],rule(){return{type:"rc-radio",title:"单选框",props:{clearable:!0}}},props(t){return[{type:"rc-options",field:"options",title:"选项内容",props:{field:t.field}}]}},se={menu:"aide",icon:"icon-title",label:"多选框",name:"rc-checkbox",input:!0,languageKey:[],rule(){return{type:"rc-checkbox",title:"多选框",props:{clearable:!0}}},props(t){return[{type:"rc-options",field:"options",title:"选项内容",props:{field:t.field}}]}},ie={title:"选项组件",name:"rc-options-component",list:[{name:"rc-select",icon:"icon-select",label:"选择器"},{name:"rc-radio",icon:"icon-radio",label:"单选框"},{name:"rc-checkbox",icon:"icon-checkbox",label:"多选框"}]},ue=V({__name:"App",setup(t){const e=v(null),n=v(null),l=v("100vh"),o=v(oe),r=v([]);let u="";const b=async s=>{const c=s.rule,a=s.options;le({rule:JSON.parse(c),options:JSON.parse(a),original:s,id:u,onSuccess(){window.__QIANKUN__QUITE__()}})};return window.__QIANKUN__EVENT__.on("formCoverChange",s=>{const c=e.value.getRule();if(!s){c.shift(),e.value?.setRule(c);return}c[0]?.type==="rc-image"?c[0].props.cover=s:c.unshift({type:"rc-image",props:{cover:s}}),e.value?.setRule(JSON.stringify(c))}),U(async()=>{console.log(window.__QIANKUN__EVENT__),e.value?.addMenu(ie),e.value?.addComponent(ae),e.value?.addComponent(re),e.value?.addComponent(se),u=location.search?.substring(1).split("=")[1]||"",u&&window.__QIANKUN__REQUSET__.CustomrForm._getDetail({id:u}).then(s=>{s&&(e.value?.setRule(s.data.rule),e.value?.setOptions(s.data.options))})}),(s,c)=>(d(),I(A(L),{ref_key:"designer",ref:e,height:l.value,handle:r.value,config:o.value,api:n.value,"onUpdate:api":c[0]||(c[0]=a=>n.value=a),onSave:b},null,8,["height","handle","config","api"]))}}),$=(t,e)=>{const n=t.__vccOpts||t;for(const[l,o]of e)n[l]=o;return n},ce={};function de(t,e){const n=_("el-result");return d(),I(n,{title:"404",icon:"error","sub-title":"抱歉,您访问的页面不存在"},{default:p(()=>e[0]||(e[0]=[N("1 ")])),_:1})}const D=$(ce,[["render",de]]),Q=V({__name:"create-option",props:{formCreateInject:{}},setup(t){const e=t,n=v([]);return window.__QIANKUN__EVENT__?.on(e.formCreateInject.field,l=>{e.formCreateInject.rule?.props!==void 0&&(e.formCreateInject.rule.props.options=e.formCreateInject.rule.options=l.map(o=>({...o,value:o.label})),n.value=l)}),U(()=>{n.value=e.formCreateInject.rule.options}),(l,o)=>W(l.$slots,"default",{options:n.value})}}),pe=V({__name:"rc-checkbox",props:{formCreateInject:{},defaultValue:{}},setup(t){const e=t,n=v([]);return U(()=>{e.defaultValue&&(n.value=[e.defaultValue])}),(l,o)=>{const r=_("el-checkbox"),u=_("el-checkbox-group");return d(),I(Q,{formCreateInject:l.formCreateInject},{default:p(({options:b})=>[f(u,{modelValue:n.value,"onUpdate:modelValue":o[0]||(o[0]=s=>n.value=s)},{default:p(()=>[(d(!0),h(E,null,x(b,s=>(d(),I(r,{size:"large",key:s.key,value:s.label,label:s.label},null,8,["value","label"]))),128))]),_:2},1032,["modelValue"])]),_:1},8,["formCreateInject"])}}}),_e=["src"],fe=V({__name:"rc-image",props:{cover:{}},setup(t){return(e,n)=>(d(),h("div",null,[m("img",{src:e.cover,class:"image",alt:""},null,8,_e)]))}}),me=$(fe,[["__scopeId","data-v-512df0dc"]]),ve={class:"options-container"},ge={class:"options"},he={key:0,style:{color:"red"}},ye={class:"tags"},be=["onClick"],Ce=V({__name:"rc-options",props:{formCreateInject:{},field:{}},setup(t){window.__QIANKUN__EVENT__?.on("tagsChange",c=>{o.value[e].tags=c});let e=0;const n=window.__QIANKUN__GUID__||(()=>"default-guid"),l=t,o=v([]),r=()=>{o.value.push({key:n(),label:"",value:"",validate:!1,tags:[],default:""})},u=c=>{o.value.splice(c,1)},b=(c,a)=>{e=c,window.__QIANKUN__OPEN__TAG__?.(a)},s=(c,a)=>{if(c===""){o.value.forEach(g=>{g.validate=!1});return}o.value.forEach(g=>{g.validate=g.label===c}),!(o.value.filter(g=>g.validate).length>1)&&(a.validate=!1)};return J(B(()=>{window.__QIANKUN__EVENT__?.emit(l.formCreateInject.rule?.props?.field,o.value)})),U(()=>{F(()=>{l.formCreateInject?.api?.activeRule?.options!==void 0&&(o.value=l.formCreateInject.api.activeRule.options)})}),(c,a)=>{const i=_("el-input"),g=_("el-icon"),S=_("el-tag"),R=_("el-button");return d(),h("div",ve,[o.value.length>0?(d(!0),h(E,{key:0},x(o.value,(w,j)=>(d(),h("div",{style:{display:"flex",gap:"5px","flex-direction":"column"},key:w.key},[m("div",ge,[f(i,{modelValue:w.label,"onUpdate:modelValue":C=>w.label=C,style:{width:"240px"},autosize:"",type:"textarea",placeholder:"请输入内容",onChange:C=>s(C,w)},null,8,["modelValue","onUpdate:modelValue","onChange"]),f(g,{style:{cursor:"pointer"},onClick:C=>u(j)},{default:p(()=>[f(A(X))]),_:2},1032,["onClick"])]),w.validate?(d(),h("span",he,"不能出现重复的值")):K("",!0),m("div",ye,[(d(!0),h(E,null,x(w.tags,C=>(d(),I(S,{type:"success",key:C.tag_id},{default:p(()=>[N(T(C.tag_name),1)]),_:2},1024))),128))]),m("div",{style:{width:"40%"},onClick:C=>b(j,w.tags)},[f(R,{icon:A(Z)},{default:p(()=>a[0]||(a[0]=[N("添加标签")])),_:1},8,["icon"])],8,be)]))),128)):K("",!0),f(R,{onClick:r,type:"primary"},{default:p(()=>a[1]||(a[1]=[N(" 添加选项 ")])),_:1})])}}}),we=V({__name:"rc-radio",props:{formCreateInject:{},defaultValue:{}},setup(t){const e=t,n=v("");return U(()=>{e.defaultValue&&(n.value=e.defaultValue)}),(l,o)=>{const r=_("el-radio"),u=_("el-radio-group");return d(),I(Q,{formCreateInject:l.formCreateInject},{default:p(({options:b})=>[f(u,{modelValue:n.value,"onUpdate:modelValue":o[0]||(o[0]=s=>n.value=s)},{default:p(()=>[(d(!0),h(E,null,x(b,s=>(d(),I(r,{size:"large",key:s.key,value:s.label},{default:p(()=>[N(T(s.label),1)]),_:2},1032,["value"]))),128))]),_:2},1032,["modelValue"])]),_:1},8,["formCreateInject"])}}}),Ne=V({__name:"rc-select",props:{formCreateInject:{}},setup(t){return(e,n)=>{const l=_("el-option"),o=_("el-select");return d(),I(Q,{formCreateInject:e.formCreateInject},{default:p(({options:r})=>[f(o,G(Y(e.$attrs)),{default:p(()=>[(d(!0),h(E,null,x(r,u=>(d(),I(l,{key:u.key,label:u.label,value:u.label},null,8,["label","value"]))),128))]),_:2},1040)]),_:1},8,["formCreateInject"])}}}),Ie={class:"rc-switch"},ke={class:"edit"},Ve={key:0,class:"aaatip"},Ee={class:"body"},xe={class:"t"},Ue={class:"tags"},Re={class:"dialog-footer"},je=V({__name:"rc-switch",props:{formCreateInject:{}},setup(t){const e=t,n=v(!1),l=v({value:"",label:""}),o=v(!1),r=v(""),u=v([]),b=a=>{a?e.formCreateInject.api.activeRule.synchronize_field={field_name:l.value.label,synchronize_to:l.value.value}:e.formCreateInject.api.activeRule.synchronize_field=null},s=a=>{r.value=l.value.value||"",a()},c=()=>{o.value=!1,u.value.find(a=>a.value===r.value),l.value=u.value.find(a=>a.value===r.value),b(!0)};return U(()=>{window.__QIANKUN__REQUSET__.CustomrForm._getUserPortrait().then(a=>{if(!a.data)return;const i=[];for(const g in a.data)i.push({value:g,label:a.data[g]});u.value=i}),F(()=>{const a=e.formCreateInject?.api?.activeRule;a&&(n.value=!!a?.synchronize_field,n.value&&(l.value={label:a?.synchronize_field?.field_name,value:a?.synchronize_field?.synchronize_to},r.value=l.value.value))})}),(a,i)=>{const g=_("el-switch"),S=_("el-text"),R=_("BellFilled"),w=_("el-icon"),j=_("el-radio"),C=_("el-radio-group"),P=_("el-button"),q=_("el-dialog");return d(),h(E,null,[m("div",Ie,[m("div",ke,[f(g,{modelValue:n.value,"onUpdate:modelValue":i[0]||(i[0]=y=>n.value=y),onChange:b},null,8,["modelValue"]),i[5]||(i[5]=m("span",null,"自动同步至客户画像",-1))]),n.value?(d(),h("div",Ve,[m("span",null,"开启后,将同步至【客户画像-"+T(l.value.label)+"】",1),f(S,{class:"mx-1",type:"primary",style:{cursor:"pointer"},onClick:i[1]||(i[1]=y=>o.value=!0)},{default:p(()=>i[6]||(i[6]=[N("修改")])),_:1})])):K("",!0)]),f(q,{"destroy-on-close":"",modelValue:o.value,"onUpdate:modelValue":i[4]||(i[4]=y=>o.value=y),"before-close":s,title:"同步客户画像设置",center:""},{footer:p(()=>[m("div",Re,[f(P,{onClick:i[3]||(i[3]=y=>o.value=!1)},{default:p(()=>i[9]||(i[9]=[N("取 消")])),_:1}),f(P,{type:"primary",onClick:c},{default:p(()=>i[10]||(i[10]=[N("确定")])),_:1})])]),default:p(()=>[m("div",Ee,[m("div",xe,[f(w,{color:"#1890ff"},{default:p(()=>[f(R,{style:{height:"40px"}})]),_:1}),i[7]||(i[7]=m("div",null,[m("div",null,"1、请选择将表单信息同步至一下客户画像字段"),m("div",null,"2、建议避免多个元素设置相同画像字段,以免造成同步信息混乱")],-1))]),m("div",Ue,[i[8]||(i[8]=m("div",{class:"title"},"基本信息",-1)),f(C,{modelValue:r.value,"onUpdate:modelValue":i[2]||(i[2]=y=>r.value=y)},{default:p(()=>[(d(!0),h(E,null,x(u.value,y=>(d(),h("div",{class:"el-radio",key:y.value},[f(j,{value:y.value,size:"small",border:""},{default:p(()=>[N(T(y.label),1)]),_:2},1032,["value"])]))),128))]),_:1},8,["modelValue"])])])]),_:1},8,["modelValue"])],64)}}}),Te=$(je,[["__scopeId","data-v-61045a6c"]]),Qe=async t=>{const e=Object.assign({"./404/no_found.vue":D,"./rc-checkbox/rc-checkbox.vue":pe,"./rc-image/rc-image.vue":me,"./rc-options/create-option.vue":Q,"./rc-options/rc-options.vue":Ce,"./rc-radio/rc-radio.vue":we,"./rc-select/rc-select.vue":Ne,"./rc-switch/rc-switch.vue":Te});for(const n in e)t.component(e[n].__name,e[n])};let k=null;async function M(t){O.qiankunWindow.__POWERED_BY_QIANKUN__&&console.log("处于独立运行模式..."),k=H(t),await Qe(k);for(const[e,n]of Object.entries(ee))k.component(e,n);k.use(te),k.use(L.formCreate),k.mount(document.getElementById("app"))}const Se=()=>{O.renderWithQiankun({mount(t){M(ue),t.setLoading(!1),t.onGlobalStateChange(e=>{console.log("res:",e)})},bootstrap(){},update(){},unmount(){k?.unmount(),k=null}})};O.qiankunWindow.__POWERED_BY_QIANKUN__?Se():M(D);