mirror of
https://github.com/Tencent/tmagic-editor.git
synced 2026-09-12 23:19:32 +00:00
2 lines
7.1 KiB
JavaScript
2 lines
7.1 KiB
JavaScript
import{A as e,C as t,G as n,Lt as r,Rt as i,St as a,T as o,W as s,_ as c,at as l,b as u,f as d,g as f,pt as p,rt as m,tt as h,v as g,w as _,y as v}from"./runtime-dom.esm-bundler-Cuik2PbZ.js";import{It as y,Q as b,X as x,Z as S,an as C,cn as w,et as T,in as E,jt as D,ln as O,on as k}from"./index-DfF1hI2W.js";var A=t=>{n(`services`,t.services);let r=p([]),i=e(`codeOptions`,{}),a=e=>{if(!e)return{};let t={...e};if(t.content&&typeof t.content!=`string`)try{t.content=t.content.toString()}catch{t.content=``}return t},o=f(()=>t.category===`code-block`?a(t.value):t.value||{}),s=f(()=>{if(t.height)return{height:t.height,overflow:`auto`}}),c=S(()=>t.services),l=async()=>{if(!t.services)return[];switch(t.category){case`node`:return t.type?t.services.propsService.getPropsConfig(t.type,{node:t.value}):[];case`data-source`:return t.services.dataSourceService.getFormConfig(t.type||`base`).map(e=>`type`in e&&e.type===`tab`?{...e,active:`fields`}:e);case`code-block`:return b({paramColConfig:t.services.codeBlockService.getParamsColConfig(),isDataSource:()=>!!t.dataSourceType,dataSourceType:()=>t.dataSourceType,codeOptions:i,editable:!1});default:return[]}},u=async()=>{if(t.loadConfig){r.value=await t.loadConfig({category:t.category,type:t.type,dataSourceType:t.dataSourceType,defaultLoadConfig:l});return}r.value=await l()};return m([()=>t.category,()=>t.type,()=>t.dataSourceType,()=>t.loadConfig],()=>{u()},{immediate:!0}),{config:r,currentValues:o,wrapperStyle:s,formContext:c,loadConfig:u,formRef:h(`form`),normalizeCodeBlockValue:a}},j=o({name:`MEditorCompareForm`,__name:`CompareForm`,props:{value:{},type:{},category:{default:`node`},dataSourceType:{},labelWidth:{default:`120px`},height:{},size:{},loadConfig:{},services:{},lastValue:{},selfDiffFieldTypes:{}},setup(e,{expose:t}){let n=e,{config:i,currentValues:o,wrapperStyle:c,formContext:l,loadConfig:d,formRef:p,normalizeCodeBlockValue:m}=A(n),h=f(()=>n.category===`code-block`?m(n.lastValue):n.lastValue||{}),_=e=>e===``||e==null||Array.isArray(e)&&e.length===0?!0:typeof e==`object`&&e.hookType===D.CODE&&Array.isArray(e.hookData)&&e.hookData.length===0,b=({curValue:e,lastValue:t,config:n})=>n?.type===`code-select`&&_(e)&&_(t)?!1:!y(e,t);return t({form:p,config:i,reload:d}),(t,n)=>(s(),u(`div`,{class:`m-editor-compare-form-wrapper`,style:r(a(c))},[a(i).length?(s(),g(a(T),{key:0,ref:`form`,class:`m-editor-compare-form`,config:a(i),"init-values":a(o),"last-values":h.value,"is-compare":!0,disabled:!0,"label-width":e.labelWidth,context:a(l),"show-diff":b,"self-diff-field-types":e.selfDiffFieldTypes,size:e.size},null,8,[`config`,`init-values`,`last-values`,`label-width`,`context`,`self-diff-field-types`,`size`])):v(`v-if`,!0)],4))}}),M={key:0,class:`m-editor-history-diff-dialog-body`},N={key:0,class:`m-editor-history-diff-dialog-notice`},P={class:`m-editor-history-diff-dialog-header`},F={class:`m-editor-history-diff-dialog-target`},I={class:`m-editor-history-diff-dialog-controls`},L={class:`m-editor-history-diff-dialog-legend`},R={key:0,class:`m-editor-history-diff-dialog-tip`},z=o({name:`MEditorHistoryDiffDialog`,__name:`HistoryDiffDialog`,props:{services:{},loadConfig:{},width:{default:`900px`},size:{},isConfirm:{type:Boolean},onConfirm:{},selfDiffFieldTypes:{}},emits:[`close`],setup(e,{expose:n,emit:r}){let o=e,h=r,b=p(!1),S=p(null),T=p(`before`),D=p(`form`),A={readOnly:!0,tabSize:2,minimap:{enabled:!1},renderSideBySide:!0,useInlineViewWhenSpaceIsLimited:!1,scrollBeyondLastLine:!1,hideUnchangedRegions:{enabled:!0}},z=f(()=>o.onConfirm?`确认回滚`:`查看修改差异`),B=f(()=>S.value?.currentValue!==void 0&&S.value?.currentValue!==null),V=f(()=>S.value?.value!==void 0&&S.value?.value!==null),H=e=>e===`current`?B.value:V.value,U=e=>e&&H(e)?e:!V.value&&B.value?`current`:`before`,W=f(()=>S.value?T.value===`current`?S.value.value:S.value.lastValue:{}),G=f(()=>S.value?T.value===`current`?S.value.currentValue||{}:S.value.value:{}),K=f(()=>T.value===`current`?`该步修改后`:`修改前`),q=f(()=>T.value===`current`?`当前`:`修改后`),J=f(()=>T.value!==`current`||!S.value?!1:y(S.value.value,S.value.currentValue)),Y=null,X=()=>{o.onConfirm?.(),Y?.(!0),Y=null,b.value=!1},Z=f(()=>{if(!S.value)return``;let e={node:`节点`,"data-source":`数据源`,"code-block":`代码块`},{category:t}=S.value,n=t?e[t]:``,r=S.value.targetLabel||S.value.type||``,{id:i}=S.value;return[n,i!==void 0&&i!==``?`${r}(${i})`:r].filter(Boolean).join(`:`)}),Q=e=>{S.value=e,T.value=U(e.mode),D.value=`form`,b.value=!0},$=e=>(Y?.(!1),Y=null,new Promise(t=>{Y=t,Q(e)})),ee=()=>{b.value=!1};m(b,e=>{e||(S.value=null,Y?.(!1),Y=null)});let te=()=>{h(`close`)};return n({open:Q,confirm:$,close:ee}),(n,r)=>(s(),g(a(w),{modelValue:b.value,"onUpdate:modelValue":r[4]||(r[4]=e=>b.value=e),class:`m-editor-history-diff-dialog`,title:z.value,top:`5vh`,"destroy-on-close":``,"append-to-body":``,width:e.width,onClose:te},{footer:l(()=>[e.isConfirm?(s(),u(d,{key:0},[_(a(O),{size:`small`,onClick:r[2]||(r[2]=e=>b.value=!1)},{default:l(()=>[...r[10]||(r[10]=[t(`取消`,-1)])]),_:1}),_(a(O),{size:`small`,type:`primary`,onClick:X},{default:l(()=>[...r[11]||(r[11]=[t(`确定回滚`,-1)])]),_:1})],64)):(s(),g(a(O),{key:1,size:`small`,onClick:r[3]||(r[3]=e=>b.value=!1)},{default:l(()=>[...r[12]||(r[12]=[t(`关闭`,-1)])]),_:1}))]),default:l(()=>[S.value&&b.value?(s(),u(`div`,M,[e.onConfirm?(s(),u(`div`,N,`仅回滚有差异的字段`)):v(`v-if`,!0),c(`div`,P,[c(`span`,F,i(Z.value),1),c(`div`,I,[_(a(C),{modelValue:D.value,"onUpdate:modelValue":r[0]||(r[0]=e=>D.value=e),size:`small`,class:`m-editor-history-diff-dialog-view`},{default:l(()=>[_(a(k),{value:`form`},{default:l(()=>[...r[5]||(r[5]=[t(`表单对比`,-1)])]),_:1}),_(a(k),{value:`code`},{default:l(()=>[...r[6]||(r[6]=[t(`源码对比`,-1)])]),_:1})]),_:1},8,[`modelValue`]),_(a(C),{modelValue:T.value,"onUpdate:modelValue":r[1]||(r[1]=e=>T.value=e),size:`small`,class:`m-editor-history-diff-dialog-mode`},{default:l(()=>[_(a(k),{value:`before`,disabled:!V.value},{default:l(()=>[...r[7]||(r[7]=[t(`与修改前对比`,-1)])]),_:1},8,[`disabled`]),_(a(k),{value:`current`,disabled:!B.value},{default:l(()=>[...r[8]||(r[8]=[t(`与当前对比`,-1)])]),_:1},8,[`disabled`])]),_:1},8,[`modelValue`])])]),c(`div`,L,[_(a(E),{size:`small`,type:`danger`},{default:l(()=>[t(i(K.value),1)]),_:1}),r[9]||(r[9]=c(`span`,{class:`m-editor-history-diff-dialog-arrow`},`→`,-1)),_(a(E),{size:`small`,type:`success`},{default:l(()=>[t(i(q.value),1)]),_:1}),T.value===`current`&&J.value?(s(),u(`span`,R,` 当前值与该步修改后一致,无差异 `)):v(`v-if`,!0)]),D.value===`form`?(s(),g(j,{key:1,category:S.value.category,type:S.value.type,"data-source-type":S.value.dataSourceType,value:G.value,"last-value":W.value,"load-config":e.loadConfig,"self-diff-field-types":e.selfDiffFieldTypes,services:o.services,size:o.size,height:`70vh`},null,8,[`category`,`type`,`data-source-type`,`value`,`last-value`,`load-config`,`self-diff-field-types`,`services`,`size`])):(s(),g(x,{key:2,type:`diff`,language:`json`,"init-values":W.value,"modified-values":G.value,options:A,"disabled-full-screen":``,height:`70vh`},null,8,[`init-values`,`modified-values`]))])):v(`v-if`,!0)]),_:1},8,[`modelValue`,`title`,`width`]))}});export{z as default};
|
||
//# sourceMappingURL=HistoryDiffDialog-C9Jgbc3j.js.map
|