@farris/ui-vue 1.6.0-beta.3 → 1.6.0-beta.4
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/components/discussion-editor/index.esm.js +2 -2
- package/components/discussion-editor/index.umd.cjs +2 -2
- package/components/drawer/index.esm.js +2 -2
- package/components/drawer/index.umd.cjs +2 -2
- package/components/events-editor/index.esm.js +6 -3
- package/components/events-editor/index.umd.cjs +1 -1
- package/components/language-textbox/index.esm.js +84 -77
- package/components/language-textbox/index.umd.cjs +1 -1
- package/components/locale/index.esm.js +2 -2
- package/components/locale/index.umd.cjs +2 -2
- package/components/lookup/index.esm.js +2 -2
- package/components/lookup/index.umd.cjs +1 -1
- package/designer/data-grid/index.esm.js +3 -1
- package/designer/data-grid/index.umd.cjs +1 -1
- package/designer/drawer/index.esm.js +2 -2
- package/designer/drawer/index.umd.cjs +2 -2
- package/designer/farris-designer.all.esm.js +2 -2
- package/designer/farris-designer.all.umd.cjs +1 -1
- package/farris.all.esm.js +6074 -4584
- package/farris.all.umd.cjs +15 -15
- package/package.json +1 -1
- package/types/calendar/src/components/header/header.component.d.ts +2 -2
- package/types/chs.d.ts +494 -0
- package/types/cht.d.ts +490 -0
- package/types/en.d.ts +494 -0
- package/types/filter-bar/index.d.ts +3 -3
- package/types/filter-bar/src/components/filter-item-condition/filter-item-condition.component.d.ts +1 -1
- package/types/filter-bar/src/designer/filter-bar.design.component.d.ts +2 -2
- package/types/filter-bar/src/filter-bar.component.d.ts +1 -1
- package/types/index.d.ts +1479 -1
- package/types/order/src/designer/order.design.component.d.ts +3 -3
- package/types/order/src/order.component.d.ts +3 -3
- package/types/schema-selector/src/schema-selector.component.d.ts +1 -1
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
`,F.children[0].style.cssText="overflow: hidden;flex: 1 1 auto;width: 100%;",F.children[0].children[0].style.cssText=`
|
|
18
18
|
margin: 10px 0px 10px 14px;
|
|
19
19
|
overflow: hidden;text-overflow: ellipsis;white-space: nowrap;
|
|
20
|
-
`,F.children[1].style.cssText="width: 30px;color: #f4625f;padding: 0 14px 0 0",F.children[2].style.cssText="padding: 0 14px 0 0;",document.body.appendChild(F),F}function x(S,b,E){if(S.stopPropagation(),f(),b){if(m=w(S.target),S.dataTransfer){const F=new Image;F.src="",S.dataTransfer.setDragImage(F,0,0)}h=S.pageX,g=S.pageY,setTimeout(()=>{a.value=E,l.value=!0,b.moving=!0})}}function C(S,b){if(S.preventDefault(),a.value!==b){const E=s.value[a.value],F=s.value;F.splice(a.value,1),F.splice(b,0,E),a.value=b,y(S.pageX,S.pageY)}}function k(S){S.preventDefault(),S.dataTransfer&&(S.dataTransfer.dropEffect="move"),y(S.pageX,S.pageY)}function M(S,b){b&&(b.moving=!1,m&&(document.body.removeChild(m),m=null)),s.value.forEach((E,F)=>{E.__fv_index__=F}),l.value=!1,c(),p.value=b.raw.__fv_index__,d.value=b.raw.__fv_index__,u.value=b.raw[r.value],e.emit("change",s.value),e.emit("activeChange",[b.raw])}return{dragstart:x,dragenter:C,dragover:k,dragend:M,isDragging:l}}function Nl(n,e,t,o,r,s){const a=i.ref(n.idField),l=i.ref(n.disableField),d=i.ref(n.draggable);i.ref(n.itemClass);const u=i.ref(n.selection.multiSelect??!1),p=i.ref(n.selection.multiSelectMode),{isDragging:c}=o,{activeIndex:f,focusedItemId:m,hoverIndex:h}=r,{clearSelection:g,getSelectedItems:y,toggleSelectItem:w,currentSelectedDataId:x}=s,C=i.ref(y()),k=_=>C.value.length===0?!1:C.value.some(V=>{let T="";return V.data?T=V.data[a.value]:T=V[a.value],T===_});function M(){C.value=y()}function S(_,V){return _.raw[a.value]!=null?_.raw[a.value]:""}function b(_,V){const T={"f-list-view-group-item":!0,"f-list-view-draggable-item":d.value,"f-un-click":!_.checked,"f-un-select":!!_.raw[l.value],"f-listview-active":u.value&&k(S(_))||!u.value&&_.raw[a.value]===x.value,"f-listview-hover":!c.value&&V===h.value,moving:!!_.moving};if(typeof n.itemClass=="string")return fe.getCustomClass(T,n.itemClass);if(typeof n.itemClass=="function"){const P=n.itemClass(_);return fe.getCustomClass(T,P)}return T}const E=i.computed(()=>!u.value);function F(_,V,T){_.checked=T,!_.raw[l.value]&&(E.value&&(m.value=_.raw[a.value]),w(_))}const N=i.computed(()=>u.value&&p.value==="OnCheckClearByClick"),v=i.computed(()=>!u.value||u.value&&(p.value==="OnCheckAndClick"||p.value==="OnClick"));function I(_,V,T){if(V.raw[l.value]){_.preventDefault(),_.stopPropagation();return}m.value=V.raw[a.value],f.value=T,N.value&&g(),v.value&&(w(V),M()),e.emit("clickItem",{data:C.value,index:T}),e.emit("activeChange",C.value)}return{getKey:S,selectedItems:C,listViewItemClass:b,updateSelectedItems:M,onCheckItem:F,onClickItem:I}}const qo=i.defineComponent({name:"FListView",props:Ao,emits:["afterSearch","checkValuesChange","clickItem","selectItem","unSelectItem","selectionChange","removeItem","change","activeChange"],setup(n,e){const t=i.ref(),o=i.ref(!0),r=i.ref(!1),s=i.ref([]),a=0,l=i.ref(n.columns),d=Se.useFilter(),u=Se.useIdentify(n),p=Se.useHierarchy(n),c=Se.useGroupData(n,u),f=Se.useDataView(n,new Map,d,p,u),m=Se.useSelection(n,f,u,s,e),h=xl(n,t),g=i.computed(()=>f.dataView.value.length),y=Se.useRow(n,e,m,u),w=Se.useEdit(n,e,u,y,s),x=Se.useVisualDataBound(n),C=Se.useVisualDataCell(n,{},x),k=Se.useVisualDataRow(n,f,w,p,u,x,C),M=Se.useVisualGroupRow(n,u,C,k),S=Se.useVisualSummaryRow(n,u,C,k),b=Se.useVisualData(n,l,f,g,a,k,M,S),{getVisualData:E}=b;s.value=E(0,g.value+a-1);const F=i.computed(()=>{const A={"f-list-view":!0,"f-list-view-multiple":n.multiSelect};return n.size!=="default"&&(A[`${n.size}-item`]=!0),fe.getCustomClass(A,n.customClass)}),N=i.computed(()=>!!e.slots.footer||o.value);function v(){return n.header==="SearchBar"?Wo:n.header==="ContentHeader"?El:Wo}const I=v(),{renderHeader:_}=I(n,e,h),V=Il(),T=_l(n,e,f,V),P=Nl(n,e,s,T,V,m),{renderListArea:q}=kl(n,e,s,f,c,V,m,b,P,T);function O(A){h.search(A)}function W(A){A&&(f.load(A),s.value=E(0,g.value+a-1))}function R(){m.clearSelection(),V.clearActiveItem()}function B(){return P.selectedItems.value}function L(){return P.selectedItems.value.map(A=>A[u.idField.value])}function H(A){m.selectedValues.value=A,P.updateSelectedItems()}function Q(){return m.currentSelectedDataId.value}function Y(A){y.activeRowById(A)}e.expose({search:O,updateDataSource:W,clearSelection:R,getSelections:B,updateSelectionByIds:H,getSelectionIds:L,activeRowById:Y,getCurrentRowId:Q});function ue(A){n.multiSelect&&(A.preventDefault(),A.stopPropagation())}return i.watch(()=>n.selectionValues,(A,G)=>{A!==G&&H(A)}),()=>i.createVNode("div",{class:F.value,onClick:ue},[_(),i.createVNode("div",{ref:t,class:"f-list-view-content",onMouseover:()=>{r.value=!0},onMouseleave:()=>{r.value=!1}},[q()]),N.value&&i.createVNode("div",{class:"f-list-view-footer"},[e.slots.footer&&e.slots.footer()])])}}),Pl=i.defineComponent({name:"FTransfer",props:Lo,emits:["change","activeChange"],setup(n,e){const{t}=ot.useI18n(),o=i.ref(n.identifyField),r={selectedStart:t("transfer.selectedStart"),selectedEnd:t("transfer.selectedEnd")},s=i.ref(n.displayType),a=i.ref(!1),l=i.ref(n.dataSource),d=i.ref(n.textField),u=i.ref(n.selections||[]),p=i.computed(()=>u.value.map(_=>_[o.value])),c=new Map,f=i.ref(),m=i.ref();let h;function g(){const _=new Map,V=n.selectionValues||[];V.length&&V.reduce((P,q)=>(P.set(q,!0),P),_);const T=n.selections||[];T.length&&(_.clear(),T.reduce((P,q)=>(P.set(q[o.value],!0),P),_)),u.value.length||(u.value=l.value.filter(P=>_.has(P[o.value])).map(P=>Object.assign({},P))),l.value.forEach(P=>{const q=P[o.value],O=_.has(q);P.checked=O,O&&c.set(q,P)})}g();const y=i.computed(()=>s.value==="List"),w=i.computed(()=>s.value==="Tree");function x(_){u.value=_.map(V=>Object.assign({},V)),e.emit("change",u.value)}function C(){return i.createVNode(qo,{class:"f-utils-fill",data:l.value,multiSelect:!0,itemClass:"f-transfer-list-item",textField:d.value,selection:{enableSelectRow:!0,multiSelect:!0,multiSelectMode:"OnCheckAndClick",showCheckbox:!0,showSelectAll:!1,showSelection:!0},draggable:!1,header:"Search",headerClass:"transfer-search-box",selectionValues:p.value,onSelectionChange:x},null)}function k(){return i.createVNode(vn,{data:l.value,columns:n.columns,virtualized:n.virtualized,rowOption:n.rowOption,textField:d.value,selection:{enableSelectRow:!0,multiSelect:!0,multiSelectMode:"OnCheckAndClick",showCheckbox:!0,showSelectAll:!1,showSelection:!0},selectionValues:p.value,onSelectionChange:x},null)}function M(){return i.createVNode("div",{class:"f-utils-fill option-pane d-flex flex-column"},[i.createVNode("div",{class:"f-utils-flex-column option-pane-content f-utils-fill"},[i.createVNode("div",{class:"container columns-box d-flex f-utils-fill"},[y.value&&C(),w.value&&k()])])])}function S(_){const V=_[o.value];if(V!==null||V!==void 0){u.value=u.value.filter(P=>P[o.value]!==V);const T=c.get(V);T&&(T.checked=!1,c.delete(V)),e.emit("change",u.value)}}function b(_){_.forEach(V=>{Object.keys(V).forEach(T=>{T.indexOf("__fv")>-1&&delete V[T]})})}i.watch(u,_=>{b(_),f.value.updateDataSource(_);const V=h==null?void 0:h[o.value],T=_.find(P=>V===P[o.value]);T?f.value.activeRowById(T[o.value]):(h=null,f.value.activeRowById(""))});function E(_){const V=new Map;u.value.reduce((T,P)=>(T.set(P[o.value],P),T),V),u.value=_.map(T=>V.get(T[o.value])),e.emit("change",u.value)}function F(_){h=_[0],e.emit("activeChange",_)}function N(){var _;return b(u.value),i.createVNode(qo,{ref:f,columns:n.columns,style:"flex:1",data:u.value,draggable:!0,view:"DraggableView","keep-order":!0,textField:d.value,itemClass:n.selectedItemClass,onChange:E,onRemoveItem:S,onActiveChange:F,checkBeforeRemoveItem:n.checkBeforeRemoveItem},{itemContent:(_=e.slots)!=null&&_.text?V=>{var T;return((T=e.slots)==null?void 0:T.text)&&e.slots.text(V)}:null})}function v(){return i.createVNode("div",{class:"f-utils-fill selection-pane d-flex flex-column"},[i.createVNode("div",{class:"f-utils-flex-column selection-pane-content f-utils-fill"},[i.createVNode("div",{class:"selection-pane-title"},[i.createVNode("span",{class:"selection-title"},[r.selectedStart]),i.createVNode("span",{class:"selection-count"},[u.value&&u.value.length]),i.createVNode("span",{class:"selection-item-title"},[r.selectedEnd])]),i.createVNode("div",{class:"container columns-box f-utils-fill d-flex"},[N()])])])}const I=i.computed(()=>({"f-transfer":!0,row:!0,"f-utils-fill":a.value}));return i.onMounted(()=>{m.value&&m.value.parentElement&&getComputedStyle(m.value.parentElement).display==="flex"&&(a.value=!0)}),()=>i.createVNode("div",{ref:m,class:I.value,style:"height:480px"},[M(),v()])}}),Bl=i.defineComponent({name:"FGridFieldEditor",props:Ro,emits:["change"],setup(n,e){const t=i.ref(n.viewModelId),o=i.inject("designViewModelUtils"),r=i.inject("useFormSchema"),s=i.inject("schemaService"),a=i.inject("controlCreatorUtils"),l=i.inject("designerContext");let d=n.gridData.columns;const{fieldEditable:u}=n.gridData,p=i.ref(`共 ${(d||[]).length} 项`),c=i.ref([]),f=i.ref([]);let m=[];function h(v,I=!0){if(l.checkCanDeleteControl){const _=m.find(V=>{var T;return((T=V.data)==null?void 0:T.id)===v.id});return l.checkCanDeleteControl(_,I)}return!0}const g={customRowStatus:v=>{const I=v.raw;I.type&&I.type.fields&&I.type.fields.length>0&&(v.disabled=!0),h(I,!1)||(v.disabled=!0)}};function y(){if(c.value=[],!d||d.length===0)return[];const v="[绑定字段不存在,待移除]";d.forEach(I=>{if(I.binding&&I.binding.field){const _=m.find(V=>V.data.id===I.binding.field);_?_.data.$type===fe.FormSchemaEntityField$Type.ComplexField?c.value.push(Object.assign({isInValidBinding:!0},_.data,{name:_.data.name+v})):c.value.push(Object.assign({},_.data)):c.value.push({id:I.binding.field,name:I.title+v,label:I.field,bindingField:null,isInValidBinding:!0})}}),p.value=`共 ${c.value.length} 项`}function w(v,I=[]){return v&&v.forEach(_=>{if(I.push(_),_.children&&w(_.children,I),l.appendIdentifyForNewControl){const V=d.find(T=>{var P;return((P=T.binding)==null?void 0:P.field)===_.data.id});(!V||V[l.identifyForNewControl])&&l.appendIdentifyForNewControl(_)}}),I}function x(){if(r.designerMode==="PC_RTC"&&s.rtcAddedTreeNodes.value){const v=s.getTableInfoByViewModelId(t.value);if(v!=null&&v.id){const I=s.rtcAddedTreeNodes.value[v.id];I!=null&&I.length&&(f.value=f.value.concat(I))}}}function C(){f.value=o.getAllFields2TreeByVMId(t.value),x(),m=w(f.value)}function k(v,I,_){if(r.getComponents().find(T=>{let P=r.getControlsInCmpWidthBinding(T.viewModel,v);if(P=P.filter(q=>{var W;if(q.id===_)return!1;const O=I.type==="visible"?q[I.type]:(W=q.editor)==null?void 0:W[I.type];if(O&&O.type==="Expression"&&O.expressionId===I.id)return!0}),P.length)return!0}))return!0}function M(v){v.map(I=>{var V;const _=d.find(T=>{var P;return((P=T.binding)==null?void 0:P.field)===I});if(_&&r.getExpressions().length){const T=r.getExpressions(),P=T.findIndex(q=>q.target===I);P>-1&&((V=T[P].rules)==null||V.map(q=>{var O;switch(q.type){case"visible":case"readonly":case"required":{const W=q.type==="visible"?_[q.type]:(O=_.editor)==null?void 0:O[q.type];W&&W.type==="Expression"&&W.expressionId===q.id&&(k(I,q,_.id)||(q.needDelete=!0));break}default:k(I,q,_.id)||(q.needDelete=!0)}}),T[P].rules=T[P].rules.filter(q=>!q.needDelete))}})}function S(){const v=o.getDgViewModel(t.value),I=[],_=[],V=c.value.filter(P=>!P.isInValidBinding);V.forEach(P=>{const q=d==null?void 0:d.find(O=>{if(O.binding&&O.binding.field)return O.binding.field===P.id});if(q)I.push(q);else{const O=a.setGridFieldProperty(n.gridType,P.data,null,u);v.addField(P),I.push(O)}_.push(P.id)});const T=v.fields.filter(P=>!_.includes(P.id));if(T&&T.length>0){const P=T.map(q=>q.id);v.removeField(P),M(P)}V.length!==c.value.length&&(c.value=V),p.value=`共 ${I.length} 项`,e.emit("change",I)}const b={fitContent:!1,width:900,height:600,title:"列编辑器",draggable:!0,acceptCallback:()=>{S()},rejectCallback:()=>{}};function E(v){c.value=v?[...v]:[]}function F(){return n.getLatestGridData?d=n.getLatestGridData().columns:d=n.gridData.columns,C(),y(),Promise.resolve(!0)}const N=[{field:"name",title:"",dataType:"string",width:"100%",formatter:(v,I)=>v.data+` [${I.data.bindingField.data}]`},{field:"bindingField",visible:!1,title:"",dataType:"string"}];return i.onMounted(()=>{C()}),()=>i.createVNode(dl,{"button-behavior":"Modal","modal-options":b,modelValue:p.value,"onUpdate:modelValue":v=>p.value=v,editable:!1,beforeOpen:F},{default:()=>[i.createVNode("div",{class:"f-utils-absolute-all"},[i.createVNode(Pl,{selections:c.value,"data-source":f.value,rowOption:g,class:"mx-2",columns:N,displayType:"Tree",onChange:v=>E(v),checkBeforeRemoveItem:h},{text:v=>i.createVNode("div",{style:"margin: 10px 0px 10px 14px;"},[v.data.name.data,i.createTextVNode(" ["),v.data.bindingField.data,i.createTextVNode("]")])})])]})}}),$l={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/data-grid-column.schema.json",title:"data-grid-column",description:"A Farris data-grid-column Component",type:"object",properties:{id:{description:"The unique identifier for a data-grid-column",type:"string",default:""},type:{description:"The type string of data-grid-column component",type:"string",default:"data-grid-column"},binding:{description:"",type:"object",default:{}},allowGrouping:{description:"",type:"boolean",default:!0},colspan:{description:"",type:"number"},dataType:{type:"string"},editor:{description:"",type:"obejct",default:{}},field:{description:"",type:"string"},filterable:{description:"",type:"boolean",default:!1},fixed:{description:"",type:"string",enum:["left","right"]},align:{description:"",type:"enum",default:"left",enum:["left","center","right"]},halign:{description:"",type:"enum",default:"left",enum:["left","center","right"]},title:{description:"",type:"string"},readonly:{description:"",type:"boolean",default:!0},resizable:{description:"",type:"boolean",default:!0},rowspan:{description:"",type:"number"},showTips:{description:"",type:"boolean",default:!0},sort:{description:"",type:"string",default:"none",enum:["asc","desc","none"]},sortable:{description:"",type:"boolean",default:!0},sortOrder:{description:"",type:"number"},tipMode:{description:"",type:"string",enum:["allways","auto"]},valign:{description:"",type:"enum",default:"middle",enum:["top","middle","bottom"]},visible:{description:"",type:"boolean",default:!0},width:{description:"",type:"number",default:120},formatter:{description:"列格式化",type:"object",default:{type:"none",customFormat:"",trueText:"是",falseText:"否",dateFormat:"yyyy-MM-dd"}},columnTemplate:{description:"列模板",type:"string",default:""},summaryType:{description:"合计类型",type:"enum",default:"none"},formatterEnumData:{description:"",type:"array"},multiLanguage:{description:"是否启用多语",type:"boolean"}},required:["id","type"],events:{onClickLinkCommand:"超链接事件"}},Ol={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/data-grid-column.schema.json",title:"tree-grid-column",description:"A Farris data-grid-column Component",type:"object",properties:{id:{description:"The unique identifier for a data-grid-column",type:"string"},type:{description:"The type string of data-grid-column component",type:"string",default:"tree-grid-column"},allowGrouping:{description:"",type:"boolean",default:!0},colspan:{description:"",type:"number"},dataType:{type:"string"},editor:{description:"",type:"obejct"},field:{description:"",type:"string"},filterable:{description:"",type:"boolean",default:!0},fixed:{description:"",type:"string",enum:["left","right"]},align:{description:"",type:"enum",default:"left",enum:["left","center","right"]},halign:{description:"",type:"enum",default:"left",enum:["left","center","right"]},title:{description:"",type:"string"},readonly:{description:"",type:"boolean",default:!0},resizable:{description:"",type:"boolean",default:!0},rowspan:{description:"",type:"number"},showTips:{description:"",type:"boolean",default:!0},sort:{description:"",type:"string",enum:["asc","desc","none"]},sortable:{description:"",type:"boolean",default:!0},sortOrder:{description:"",type:"number"},tipMode:{description:"",type:"string",enum:["allways","auto"]},valign:{description:"",type:"enum",default:"middle",enum:["top","middle","bottom"]},visible:{description:"",type:"boolean",default:!0},width:{description:"",type:"number"}},required:["id","type"]},dn={id:{type:String,default:""},type:{type:String,default:""},allowGrouping:{type:Boolean,default:!0},colspan:{type:Number,default:1},dataType:{type:String,default:""},parentId:{type:String,default:""},editor:{type:Object},field:{type:String,default:""},filterable:{type:Boolean,default:!0},fixed:{type:String,default:""},halign:{type:String,default:"left"},title:{type:String,default:""},readonly:{type:Boolean,default:!0},resizable:{type:Boolean,default:!0},rowspan:{type:Boolean,default:!0},showTips:{type:Boolean,default:!0},sort:{type:String,default:"none"},sortable:{type:Boolean,default:!0},sortOrder:{type:Number},tipMode:{type:String,default:"auto"},valign:{type:String,default:"middle"},visible:{type:Boolean,default:!0},width:{type:Number},actualWidth:{type:Number},align:{type:String,default:"left"},left:{type:Number},sorter:{type:Function,default:()=>{}},origianlColSpan:{type:Number},index:{type:Number},commands:{type:Array,default:[]},filter:{type:String,default:""},showSetting:{type:Boolean,default:!0},formatter:{type:Function,default:()=>{}},componentId:{type:String,default:""}},jl=rt(dn,$l,$o,jo),Rl=rt(dn,Ol,$o,jo);class Ll extends Bt{constructor(e,t){super(e,t)}getEditorProperties(e){return{description:"编辑器",title:"编辑器",type:"avatar",$converter:"/converter/property-editor.converter",parentPropertyID:"editor",properties:{readonly:{description:"",title:"只读",type:"boolean"},avatarWidth:{description:"",title:"头像宽度",type:"number"},avatarHeight:{description:"",title:"头像高度",type:"number"},cover:{description:"",title:"封面",type:"string"}}}}}class Al extends lt.InputBaseProperty{constructor(e,t){super(e,t)}getEditorProperties(e){const t=this;return t.getComponentConfig(e,{type:"check-group"},{placeholder:{visible:!1},disabled:{visible:!1},direction:{description:"",title:"排列方向",type:"enum",editor:{data:[{id:"horizontal",name:"横向"},{id:"vertical",name:"纵向"}]}},dataSourceType:{description:"",title:"数据源类型",type:"enum",visible:!1,editor:{default:"static",data:[{id:"static",name:"静态"},{id:"dynamic",name:"动态"}]},refreshPanelAfterChanged:!0},data:{description:"",title:"数据",type:"array",visible:!e.editor.dataSourceType||e.editor.dataSourceType==="static",...t.getItemCollectionEditor(e,e.editor.valueField,e.editor.textField),refreshPanelAfterChanged:!0},bindDataSource:{description:"",title:"绑定数据源",type:"string",visible:e.editor.dataSourceType==="dynamic"},textField:{description:"",title:"文本字段",type:"string",readonly:e.editor.dataSourceType!=="dynamic"},valueField:{description:"",title:"值字段",type:"string",readonly:e.editor.dataSourceType!=="dynamic"}},(r,s)=>{if(r)switch(r.propertyID){case"dataSourceType":{r.propertyValue==="static"&&(e.editor.valueField="value",e.editor.textField="name");break}case"data":{e.formatter&&(e.formatter.data=[...r.propertyValue]);break}}})}}class Hl extends lt.InputBaseProperty{constructor(e,t){super(e,t)}getEditorProperties(e){var t,o;return this.getComponentConfig(e,{type:"check-box"},{placeholder:{visible:!1},disabled:{visible:!1},label:{description:"",title:"名称",type:"string"},trueValue:{description:"选中的值",title:"选中的值",type:this.getBindingDataType(),visible:((t=this.designViewModelField)==null?void 0:t.type.name)!=="Boolean",refreshPanelAfterChanged:!0,editor:this.getEditor(),$converter:this.getBooleanValueConverter()},falseValue:{description:"未选中的值",title:"未选中的值",type:this.getBindingDataType(),visible:((o=this.designViewModelField)==null?void 0:o.type.name)!=="Boolean",refreshPanelAfterChanged:!0,editor:this.getEditor(),$converter:this.getBooleanValueConverter()}})}changeBindingField(e,t,o){var s;super.changeBindingField(e,t);const r=o;if(e.editor&&((s=r==null?void 0:r.type)!=null&&s.name)){let a,l;r.type.name===fe.FormSchemaEntityFieldTypeName.String&&(a="true",l="false"),r.type.name===fe.FormSchemaEntityFieldTypeName.Number&&(a=1,l=0),!Object.prototype.hasOwnProperty.call(e.editor,"trueValue")&&a!==void 0&&(e.editor.trueValue=a),!Object.prototype.hasOwnProperty.call(e.editor,"falseValue")&&l!==void 0&&(e.editor.falseValue=l)}}}const Go={convertFrom:(n,e)=>(n.editor.remote||{})[e],convertTo:(n,e,t)=>{n.editor.remote=n.editor.remote||{},n.editor.remote[e]=t}};class Wl extends lt.InputBaseProperty{constructor(e,t){super(e,t)}getEditorProperties(e){var s,a;const t=this;let o="";if(((s=e==null?void 0:e.binding)==null?void 0:s.type)==="Form"){const l=this.schemaService.getFieldByIDAndVMID(e.binding.field,this.viewModelId);(a=l==null?void 0:l.schemaField)!=null&&a.type&&(o=l.schemaField.type.$type)}return t.getComponentConfig(e,{type:"combo-list"},{editable:{description:"",title:"允许编辑",type:"boolean",readonly:e.editor.type==="combo-list"},enableClear:{description:"",title:"启用清空",type:"boolean"},dataSourceType:{description:"",title:"数据源类型",type:"enum",editor:{default:"static",data:[{id:"static",name:"静态"},{id:"dynamic",name:"动态"}]},refreshPanelAfterChanged:!0},data:{description:"",title:"数据",type:"array",visible:!e.editor.dataSourceType||e.editor.dataSourceType==="static",...t.getItemCollectionEditor(e,e.editor.valueField,e.editor.textField),refreshPanelAfterChanged:!0},url:{visible:e.editor.dataSourceType==="dynamic",$converter:Go,description:"",title:"服务端API",type:"string"},body:{visible:e.editor.dataSourceType==="dynamic",$converter:Go,description:"",title:"服务端API参数",type:"string"},textField:{description:"",title:"数据源显示字段",type:"string",readonly:e.editor.dataSourceType!=="dynamic"},valueField:{description:"",title:"数据源值字段",type:"string",readonly:e.editor.dataSourceType!=="dynamic"},multiSelect:{description:"",title:"启用多选",visible:!o||o==="StringType",type:"boolean",refreshPanelAfterChanged:!0},maxLength:{description:"",title:"最大输入长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1}}},(l,d)=>{if(!l||!d.editor)return;const u=this;switch(l.propertyID){case"dataSourceType":{l.propertyValue==="static"?(d.editor.valueField="value",d.editor.textField="name",d.editor.remote=null):l.propertyValue==="dynamic"&&(d.editor.remote={method:"GET"},d.editor.valueField="value",d.editor.textField="name");break}case"data":{!u.checkEnumDataReadonly(d)&&d.formatter&&(d.formatter.data=[...l.propertyValue]);break}}})}getGridFieldEdtiorProperties(e,t){var a,l;const o=this;let r="";if(((a=e==null?void 0:e.binding)==null?void 0:a.type)==="Form"){const d=this.schemaService.getFieldByIDAndVMID(e.binding.field,this.viewModelId);(l=d==null?void 0:d.schemaField)!=null&&l.type&&(r=d.schemaField.type.$type)}return o.getComponentConfig(e,{type:"combo-list"},{editable:{description:"",title:"允许编辑",type:"boolean",readonly:e.editor.type==="combo-list"},enableClear:{description:"",title:"启用清空",type:"boolean"},data:{description:"",title:"数据",type:"array",visible:!0,...o.getItemCollectionEditor(e,e.editor.valueField,e.editor.textField),refreshPanelAfterChanged:!0},textField:{description:"",title:"数据源显示字段",type:"string",readonly:!0},valueField:{description:"",title:"数据源值字段",type:"string",readonly:!0},multiSelect:{description:"",title:"启用多选",visible:r==="StringType",type:"boolean",refreshPanelAfterChanged:!0},maxLength:{description:"",title:"最大输入长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1}}},(d,u)=>{if(!d||!u.editor)return;const p=this;switch(d.propertyID){case"dataSourceType":{d.propertyValue==="static"?(u.editor.valueField="value",u.editor.textField="name",u.editor.remote=null):d.propertyValue==="dynamic"&&(u.editor.remote={method:"GET"});break}case"data":{!p.checkEnumDataReadonly(u)&&u.formatter&&(u.formatter.data=[...d.propertyValue]);break}}})}setEditorPropertyRelates(e,t,o){if(!e||!t.editor)return;const r=this;switch(e.propertyID){case"dataSourceType":{e.propertyValue==="static"&&(t.editor.valueField="value",t.editor.textField="name",t.editor.remote={});break}case"data":{!r.checkEnumDataReadonly(t)&&t.formatter&&(t.formatter.data=[...e.propertyValue]);break}}}changeBindingField(e,t,o){var s;super.changeBindingField(e,t);const r=o;e.editor&&((s=r==null?void 0:r.type)==null?void 0:s.$type)===fe.FormSchemaEntityFieldType$Type.EnumType&&(e.editor.data=r.type.enumValues||[])}}class ql extends Bt{constructor(e,t){super(e,t)}getEditorProperties(e){return this.getComponentConfig(e,{type:"textarea"},{resizable:{description:"",title:"拖拽调整大小",type:"boolean"},autoHeight:{description:"",title:"自动高度",visible:!1,type:"boolean"}})}getGridFieldEdtiorProperties(e){return this.getComponentConfig(e,{type:"textarea"},{autoHeight:{description:"",title:"自动高度",visible:!1,type:"boolean"}})}}function Gl(){let n="zh-CHS";window&&window.top&&window.top.localStorage&&window.top.localStorage.languageCode&&({languageCode:n}=window.top.localStorage);const e=[{id:"yyyy-MM-dd HH:mm:ss",name:"yyyy-MM-dd HH:mm:ss"},{id:"yyyy/MM/dd HH:mm:ss",name:"yyyy/MM/dd HH:mm:ss"},{id:"yyyyMMddHHmmss",name:"yyyyMMddHHmmss"},{id:"yyyy-MM-dd HH:mm",name:"yyyy-MM-dd HH:mm"},{id:"yyyy/MM/dd HH:mm",name:"yyyy/MM/dd HH:mm"},{id:"yyyyMMddHHmm",name:"yyyyMMddHHmm"}],t=[{id:"yyyy-MM-dd",name:"yyyy-MM-dd"},{id:"yyyy/MM/dd",name:"yyyy/MM/dd"},{id:"yyyyMMdd",name:"yyyyMMdd"},{id:"MM/dd/yyyy",name:"MM/dd/yyyy"}],o=[{id:"yyyy-MM",name:"yyyy-MM"},{id:"yyyy/MM",name:"yyyy/MM"},{id:"yyyyMM",name:"yyyyMM"}],r=[{id:"MM/dd",name:"MM/dd"},{id:"MMdd",name:"MMdd"},{id:"MM-dd",name:"MM-dd"}],s=[{id:"yyyy",name:"yyyy"}];return n==="zh-CHS"&&(e.push({id:"yyyy年MM月dd日 HH时mm分ss秒",name:"yyyy年MM月dd日 HH时mm分ss秒"},{id:"yyyy年MM月dd日 HH时mm分",name:"yyyy年MM月dd日 HH时mm分"}),t.push({id:"yyyy年MM月dd日",name:"yyyy年MM月dd日"}),o.push({id:"yyyy年MM月",name:"yyyy年MM月"}),r.push({id:"MM月dd日",name:"MM月dd日"}),s.push({id:"yyyy年",name:"yyyy年"})),n==="zh-CHT"&&(e.push({id:"yyyy年MM月dd日 HH時mm分ss秒",name:"yyyy年MM月dd日 HH時mm分ss秒"},{id:"yyyy年MM月dd日 HH時mm分",name:"yyyy年MM月dd日 HH時mm分"}),t.push({id:"yyyy年MM月dd日",name:"yyyy年MM月dd日"}),o.push({id:"yyyy年MM月",name:"yyyy年MM月"}),r.push({id:"MM月dd日",name:"MM月dd日"}),s.push({id:"yyyy年",name:"yyyy年"})),{timeFormats:e,yMFormats:o,yMdFormats:t,mdFormats:r,yFormats:s}}class zl extends lt.InputBaseProperty{constructor(e,t){super(e,t)}getEditorProperties(e){var r,s,a,l,d,u,p,c,f,m;const t=this.getDateFormatOptions(e==null?void 0:e.editor),o=this.getValueFormatOptions();return this.getComponentConfig(e,{type:"date-picker"},{showTime:{description:"",title:"启用时间选择",type:"boolean",readonly:((r=e==null?void 0:e.editor)==null?void 0:r.fieldType)==="Date",refreshPanelAfterChanged:!0},displayFormat:{description:"",title:"展示格式",type:"enum",editor:{data:t}},valueFormat:{description:"",title:"存储格式",type:"enum",editor:{data:o},visible:((s=e==null?void 0:e.editor)==null?void 0:s.fieldType)==="String"},minDate:{description:"",title:"最小日期",type:"string",editor:{type:"date-picker",enableClear:!0,displayFormat:"yyyy-MM-dd"+((a=e==null?void 0:e.editor)!=null&&a.showTime?" HH:mm:ss":""),valueFormat:"yyyy-MM-dd"+((l=e==null?void 0:e.editor)!=null&&l.showTime?" HH:mm:ss":""),minDate:"1900-01-01",maxDate:((d=e==null?void 0:e.editor)==null?void 0:d.maxDate)||"9999-12-31",showTime:(u=e==null?void 0:e.editor)==null?void 0:u.showTime},refreshPanelAfterChanged:!0},maxDate:{description:"",title:"最大日期",type:"string",editor:{type:"date-picker",enableClear:!0,displayFormat:"yyyy-MM-dd"+((p=e==null?void 0:e.editor)!=null&&p.showTime?" HH:mm:ss":""),valueFormat:"yyyy-MM-dd"+((c=e==null?void 0:e.editor)!=null&&c.showTime?" HH:mm:ss":""),minDate:((f=e==null?void 0:e.editor)==null?void 0:f.minDate)||"1900-01-01",maxDate:"9999-12-31",showTime:(m=e==null?void 0:e.editor)==null?void 0:m.showTime},refreshPanelAfterChanged:!0},enableQuickSelect:{description:"",title:"启用快速选择",type:"boolean"}},this.setEditorPropertyRelates)}setEditorPropertyRelates(e,t,o){if(!(!e||!t.editor))switch(e.propertyID){case"showTime":{const r=t.editor;e.propertyValue?(r.displayFormat="yyyy-MM-dd HH:mm:ss",r.valueFormat="yyyy-MM-dd HH:mm:ss"):(r.displayFormat="yyyy-MM-dd",r.valueFormat="yyyy-MM-dd"),t.formatter&&(t.formatter.dateFormat=r.displayFormat);break}case"displayFormat":{t.formatter&&(t.formatter.dateFormat=e.propertyValue);break}}}getDateFormatOptions(e){let t=[];const{timeFormats:o,yMdFormats:r,yMFormats:s,mdFormats:a,yFormats:l}=Gl();return e.showTime&&(t=t.concat(o)),t=t.concat(r),t=t.concat(s),t=t.concat(l),t=t.concat(a),t}getValueFormatOptions(){return[{id:"yyyy-MM-dd",name:"yyyy-MM-dd"},{id:"yyyy/MM/dd",name:"yyyy/MM/dd"},{id:"MM/dd/yyyy",name:"MM/dd/yyyy"},{id:"yyyy-MM-dd HH:mm:ss",name:"yyyy-MM-dd HH:mm:ss"},{id:"yyyy/MM/dd HH:mm:ss",name:"yyyy/MM/dd HH:mm:ss"},{id:"yyyyMM",name:"yyyyMM"},{id:"yyyy",name:"yyyy"}]}changeBindingField(e,t,o){var s;super.changeBindingField(e,t);const r=o;e.editor&&((s=r==null?void 0:r.type)!=null&&s.name)&&(e.editor.fieldType=r.type.name,r.type.name===fe.FormSchemaEntityFieldTypeName.DateTime&&(Object.prototype.hasOwnProperty.call(e.editor,"showTime")||(e.editor.showTime=!0),Object.prototype.hasOwnProperty.call(e.editor,"displayFormat")||(e.editor.displayFormat="yyyy-MM-dd HH:mm:ss"),Object.prototype.hasOwnProperty.call(e.editor,"valueFormat")||(e.editor.valueFormat="yyyy-MM-dd HH:mm:ss")))}}const Dl=[{value:"both",text:"同步选择"},{value:"up",text:"包含上级"},{value:"down",text:"包含下级"},{value:"disable",text:"仅选择自身"}],Ul="";function Qt(n){let e=[10,20,30,50,100];return n&&(typeof n=="string"&&(e=n.replaceAll("[","").replaceAll("]","").replaceAll(" ","").split(",")),Array.isArray(n)&&(e=n)),e.map(t=>({value:parseInt(t,10)})).sort((t,o)=>t.value-o.value)}const je={convertFrom:(n,e)=>e==="multiSelect"||e==="enableTitle"?!!n.editor[e]:e==="separator"?n.editor[e]||",":e==="onlySelectLeaf"?n.editor[e]==null?!1:n.editor[e]:e==="loadTreeDataType"?n.editor[e]||"default":e==="placeholder"?n.editor.placeholder||"请选择":n.editor[e],convertTo:(n,e,t)=>{n.editor[e]=t,e==="multiSelect"&&!t&&(n.editor.enableCascade=!1),e==="openType"&&t==="Popup"&&(n.editor.showSelections=!1,n.editor.enableCascade=!1)}};function Yl(n){let e="form_group_"+Date.now();return n&&(e=n.replaceAll("-","_").replaceAll(".","_")),"lookup."+e}function Xl(n,e){const{enablePager:t,pageSize:o,pageList:r}=e;n.pagination=n.pagination||{},Object.assign(n.pagination,{enable:t,sizeLimits:Qt(r).map(s=>s.value),size:o,showLimits:!0,showGoto:!1,mode:"server"})}const Zl={convertFrom:(n,e)=>{var t;return(t=n.editor[e])==null?void 0:t.displayName},convertTo:(n,e,t)=>{if(t&&t.length>0){const o=t[0],{name:r,id:s,metadataContent:a,code:l}=o;n.editor.dataSource||(n.editor.dataSource={}),n.editor.dataSource.displayName=`${r}(${l})`,n.editor.helpId=s;const{displayType:d,idField:u,textField:p}=a;n.editor.displayType=d,n.editor.dataSource.idField=u,n.editor.textField=p,n.editor.dataSource.type="ViewObject";const{pageInfo:c}=a.dataSource;Xl(n.editor,c);const{treeInfo:f}=d.toUpperCase()==="NAVTREELIST"?a.navigation:a.dataSource;if(f){const{onlySelectLeaf:m,loadDataType:h}=f;n.editor.loadTreeDataType="default",n.editor.onlySelectLeaf=m??!1}n.editor.dataSource.uri||(n.editor.dataSource.uri=Yl(n.id))}}},Jl={convertFrom:(n,e)=>{var t;return(t=n.editor.dataSource)==null?void 0:t.idField},convertTo:(n,e,t)=>{if(t&&t.length>0){const o=t[0];n.editor.dataSource.idField=o==null?void 0:o.bindingPath}}},Ql={convertFrom:(n,e)=>{var t;return(t=n.editor)==null?void 0:t.textField},convertTo:(n,e,t)=>{if(t&&t.length>0){const o=t[0];n.editor.textField=o==null?void 0:o.bindingPath}}},Kl={convertFrom:(n,e)=>n.editor.displayType?n.editor.displayType.toUpperCase():"LIST",convertTo:(n,e,t)=>{n.editor.displayType=t}},pt={convertFrom:(n,e)=>{var r;const t=n.editor.dialog||{};if(e==="title")return t[e]||Ul;if(n.editor.openType==="Modal"){if(e==="width")return(r=n.editor.displayType)!=null&&r.toUpperCase().startsWith("NAV")?t[e]||960:t[e]||590;if(e==="height")return t[e]||620;if(e==="navigatorWidth")return t[e]||320}else{if(e==="width")return t[e]||460;if(e==="height")return t[e]||380}if(e==="draggable")return!0;if(["showMaxButton","showCloseButton","resizeable","enableEsc","rememberSize"].includes(e))return t[e]==null?!0:t[e]},convertTo:(n,e,t)=>{n.editor.dialog=n.editor.dialog||{},n.editor.dialog[e]=t}},un={convertFrom:(n,e)=>{const t=n.editor.pagination||{};if(e==="enable"||e==="showLimits")return t[e]==null?!1:t[e];if(e==="sizeLimits"){const o=t[e];return Qt(o)}if(e==="size")return t[e]||20},convertTo:(n,e,t)=>{var o,r;if(n.editor.pagination=n.editor.pagination||{},e==="sizeLimits"){const s=t.map(l=>l.value);n.editor.pagination[e]=s;const a=((r=(o=n.editor)==null?void 0:o.pagination)==null?void 0:r.size)??20;s.includes(a)||(n.editor.pagination.size=s[0]);return}n.editor.pagination[e]=t}},ec=[{label:"clear",name:"清空事件"},{label:"dictPicking",name:"帮助前事件"},{label:"beforeLoadData",name:"数据加载前事件"},{label:"beforeSelectData",name:"选择数据确认前事件"},{label:"dictPicked",name:"帮助后事件"}],tc=Symbol("schema_repository_token");class nc extends lt.InputBaseProperty{constructor(){super(...arguments);z(this,"comboListEditor",{type:"combo-list",enableClear:!1,editable:!1});z(this,"numberEditor",{type:"number-spinner",useThousands:!1});z(this,"readonlyEditor",{...this.comboListEditor,editable:!0});z(this,"visibleEditor",{...this.comboListEditor,editable:!1});z(this,"requiredEditor",{...this.comboListEditor,editable:!1});z(this,"freeInputEditor",{...this.comboListEditor,editable:!1})}getExpressionConfig(t,o){const r=["validate"];return t.type==="form-group"&&r.push("dataPicking"),new lt.ExpressionProperty(this.formSchemaUtils).getExpressionConfig(t,"Field",r)}getPropertyConfig(t,o,r="Card"){var y;const s=(y=t.binding)!=null&&y.field?[]:["Const","Variable","StateMachine"];this.readonlyEditor=this.getPropertyEditorParams(t,s,"readonly"),this.visibleEditor=this.getPropertyEditorParams(t,s,"visible"),this.requiredEditor=this.getPropertyEditorParams(t,s,"required"),this.freeInputEditor=this.getPropertyEditorParams(t,["Const","Variable"],"allowFreeInput");const a=this.getBasicProperties(t,o,r),l=this.getBehaviorConfig(t),d=this.getAppearanceProperties(t,o),u=this.getLookupConfig(t),p=this.getEventPropConfig(t),c=this.getDialogPropertyConfig(t),f=this.getPageConfig(t.editor),m=this.getTreePropConfig(t.editor),h=this.getExpressionConfig(t,"Field"),g={basic:a,appearance:d,behavior:l,lookup:u,treeConfig:m,dialog:c,pager:f,expressions:h};return t.type==="form-group"&&(g.eventsEditor=p),{type:"object",categories:g}}getGridFieldEdtiorPropConfig(t){return this.getPropertyConfig(t,null,"Grid").categories}flattenTreeNodes(t){return t.reduce((o,r)=>{var s;return o.push(r),(s=r.children)!=null&&s.length&&o.push(...this.flattenTreeNodes(r.children)),o},[])}isSimpleStringField(){var l;const t=((l=this.designViewModelField)==null?void 0:l.path)||"";if(!t||!t.includes("."))return!0;const o=t.split("."),r=this.designViewModelUtils.getAllFields2TreeByVMId(this.viewModelId);if(!(r!=null&&r.length))return!1;const s=r.find(d=>d.data.code===o[0]);if(!s)return!1;const a=[s,...this.flattenTreeNodes(s.children)];return!o.reduce((d,u,p)=>[...d,p?`${d[p-1]}.${u}`:u],[]).some(d=>{var u,p,c;return((c=(p=(u=a.find(f=>f.data.path===d))==null?void 0:u.data)==null?void 0:p.type)==null?void 0:c.$type)==="EntityType"})}getBehaviorConfig(t){return{description:"Basic Infomation",title:"行为",properties:{visible:{description:"运行时组件是否可见",title:"是否可见",type:"boolean",editor:this.visibleEditor}},setPropertyRelates:(o,r)=>{this.afterMutilEditorChanged(r,o)}}}changeBindingField(t,o){super.changeBindingField(t,o),t.editor.multiSelect=!1}getDisplayType(t){return t.displayType?t.displayType.toUpperCase():""}mapFieldsDisplayFormatter(t){return t&&t.length?t.map(o=>`${o.name}[${o.bindingPath}]`).join(","):""}getLookupConfig(t){const o=t.editor,r=()=>{const s=this.formSchemaUtils.getFormSchema().module.entity[0].id,a=this.formSchemaUtils.getFormMetadataBasicInfo();return{propertyData:o,formBasicInfo:a,viewModelId:s,dataSourceId:o.helpId}};return{description:"Basic Infomation",title:"编辑器",setPropertyRelates:(s,a)=>{if(s)switch(s.propertyID){case"readonly":case"required":this.afterMutilEditorChanged(a,s);break}},parentPropertyID:"editor",properties:{readonly:{description:"",title:"只读",type:"boolean",$converter:"/converter/property-editor.converter",editor:this.readonlyEditor},required:{description:"",title:"必填",type:"boolean",$converter:"/converter/property-editor.converter",editor:this.requiredEditor},placeholder:{description:"当控件没有值时在输入框中显示的文本",title:"提示文本",type:"string",$converter:je},enableTitle:{description:"鼠标悬停显示文本内容",title:"悬停提示",type:"boolean",$converter:je,editor:this.comboListEditor},editable:{description:"",title:"允许编辑",type:"boolean",$converter:je,refreshPanelAfterChanged:!0,editor:this.comboListEditor,visible:!(o.multiSelect&&o.openType==="Popup")},allowFreeInput:{description:"",title:"任意输入",type:"boolean",$converter:je,editor:this.freeInputEditor,visible:!1},enableClear:{title:"启用清除按钮",type:"boolean",$converter:je},dataSource:{description:"数据源",title:"数据源",type:"string",refreshPanelAfterChanged:!0,editor:{type:"schema-selector",title:"选择数据源",editorParams:{propertyData:o,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},displayFormatter:s=>s&&s.length?s.map(a=>`${a.name}(${a.code})`).join(","):"",viewOptions:this.formSchemaUtils.designerMode==="PC_RTC"?[{id:"total",title:"全部",type:"List",dataSource:"Total"}]:[{id:"recommend",title:"推荐",type:"List",dataSource:"Recommand",enableGroup:!0,groupField:"category",groupFormatter:(s,a)=>`${s==="local"?"本地元数据":"最近使用"}`},{id:"total",title:"全部",type:"List",dataSource:"Total"}],repositoryToken:tc,validateFunction:async s=>this.formSchemaUtils.designerMode!=="PC_RTC"?!0:this.checkSameBESource(s,t),onSubmitModal:s=>{if(s){delete o.mappingFields;const a=this.formSchemaUtils.getFormMetadataBasicInfo();return this.metadataService.getPickMetadata(a.relativePath,s[0].data).then(l=>JSON.parse(l==null?void 0:l.metadata.content))}}},$converter:Zl},filterConditions:{descriptions:"帮助过滤条件",title:"过滤条件",type:"string",$converter:je,editor:{type:"filter-condition-editor",editable:!1,displayText:"点击配置",enableClear:!1,enableExpression:!0,editorParams:{propertyData:o,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo(),viewModelId:this.formSchemaUtils.getFormSchema().module.entity[0].id},idField:"path",repositoryToken:Rt.FieldSelectorRepositoryToken,beforeOpen:async({repository:s,notifyService:a})=>{var f;if(!(o==null?void 0:o.helpId))return a==null||a.warning({message:"请先配置数据源!"}),!1;const d=r(),p=new lt.ExpressionProperty(this.formSchemaUtils).getEntitiesAndVariables();let c={};if(s){const m=await s.getData(d),h=await s.getLookupConditions(d);c={fieldList:m,conditionList:h}}return(f=p.variables)!=null&&f.forms&&(p.variables.forms.items=p.variables.forms.items.filter(m=>m.category==="remote")),{...c,...p}},onSubmitModal:async({loadingService:s,repository:a,conditions:l,originalConditions:d,FMessageBoxService:u})=>{if(a)try{const p=r(),c=await a.getLookupConditions(p)||[];return JSON.stringify(c)!==JSON.stringify(d.value)?(s==null||s.clearAll(),u.question("视图对象中的帮助过滤条件已更改,请点击确定同步过滤数据","",()=>{l.value=c,d.value=JSON.parse(JSON.stringify(l.value))},()=>{}),!1):(JSON.stringify(l.value)===JSON.stringify(d.value)||await a.saveFilterCondition(l.value,p,this.formSchemaUtils.getFormMetadataBasicInfo()),!0)}catch{return u==null||u.error("保存失败",""),!1}finally{s==null||s.clearAll()}}},visible:!!o.helpId},displayType:{description:"类型: 树列表、列表、双列表、左树右列表",title:"展示类型",type:"string",$converter:Kl,editor:{type:"combo-list",editable:!1,disabled:!0,data:[{text:"列表",value:"LIST"},{text:"树列表",value:"TREELIST"},{text:"双列表",value:"NAVLIST"},{text:"左树右列表",value:"NAVTREELIST"}],textField:"text",idField:"value",valueField:"value"}},idField:{description:"数据源标识字段",title:"标识字段",type:"string",editor:{type:"field-selector",textField:"bindingPath",idField:"bindingPath",disabled:!0,editorParams:{propertyData:o,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},columns:[{field:"name",title:"名称"},{field:"code",title:"编号"},{field:"bindingPath",title:"绑定字段"}],repositoryToken:Rt.FieldSelectorRepositoryToken},$converter:Jl},textField:{description:"显示文本字段",title:"文本字段",type:"string",$converter:Ql,editor:{type:"field-selector",textField:"bindingPath",idField:"bindingPath",editorParams:{propertyData:o,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},columns:[{field:"name",title:"名称"},{field:"code",title:"编号"},{field:"bindingPath",title:"绑定字段"}],repositoryToken:Rt.FieldSelectorRepositoryToken}},mappingFields:{description:"字段映射",title:"字段映射",type:"string",$converter:je,editor:{type:"mapping-editor",modalWidth:800,modalHeight:600,editable:!1,editorParams:{propertyData:o,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},fromData:{editable:!0,formatter:(s,a)=>`${a.raw.name} [${a.raw.bindingPath}]`,idField:"bindingPath",textField:"name",valueField:"bindingPath",searchFields:["name","bindingPath"],repositoryToken:Rt.FieldSelectorRepositoryToken,displayFormatter:this.mapFieldsDisplayFormatter},toData:{editable:!1,idField:"bindingPath",textField:"name",valueField:"bindingPath",searchFields:["name","bindingPath"],dataSource:()=>{const s=this.designViewModelUtils.getAllFields2TreeByVMId(this.viewModelId),a=this.schemaService.getPrimaryField();return a?s.filter(l=>l.data.bindingPath!==a):s},formatter:(s,a)=>`${a.raw.name} [${a.raw.bindingPath}]`,displayFormatter:this.mapFieldsDisplayFormatter}}},enableToSelect:{description:"数据加载后是否选中现有值",$converter:je,title:"选中已选值",type:"boolean",editor:this.comboListEditor},multiSelect:{description:"启用多选",$converter:je,title:"启用多选",type:"boolean",editor:this.comboListEditor,refreshPanelAfterChanged:!0,visible:this.isSimpleStringField()},showSelections:{description:"显示已选记录",$converter:je,title:"显示已选记录",type:"boolean",visible:!!o.multiSelect&&o.openType!=="Popup"},separator:{description:"多选分隔符",$converter:je,title:"多选分隔符",type:"string",editor:{type:"combo-list",editable:!1,disabled:!1,data:[{text:",",value:","},{text:"|",value:"|"},{text:"#",value:"#"}],textField:"text",idField:"value",valueField:"value",separator:"@"},visible:!!o.multiSelect},enableSearchBar:{description:"显示搜索工具条",$converter:je,refreshPanelAfterChanged:!0,title:"启用搜索框",type:"boolean",visible:!1},searchAnyField:{description:"显示所有列",$converter:je,title:"允许查询所有列",type:"boolean",visible:o.openType!=="Popup"&&o.enableSearchBar==null?!0:!!o.enableSearchBar},enableFavorite:{description:"启用收藏夹",$converter:je,title:"启用收藏夹",type:"boolean",visible:o.openType!=="Popup"},enableUserData:{description:"保存界面状态",$converter:je,refreshPanelAfterChanged:!0,title:"保存界面状态",type:"boolean",visible:o.openType!=="Popup"}}}}showNavigatiorWidth(t){return this.getDisplayType(t).startsWith("NAV")&&t.openType!=="Popup"?t.showNavigation===void 0?!0:!!t.showNavigation:!1}getDialogPropertyConfig(t){var o,r,s,a;return{description:"帮助窗口尺寸配置",title:"帮助窗口",parentPropertyID:"dialog",properties:{openType:{description:"窗口展示方式:弹出窗口、下拉面板",title:"打开方式",type:"string",$converter:je,refreshPanelAfterChanged:!0,editor:{...this.comboListEditor,data:[{text:"弹出窗口",value:"Modal"},{text:"下拉面板",value:"Popup"}],valueField:"value",textField:"text",idField:"value"},visible:!0},title:{description:"帮助标题",title:"标题",type:"string",$converter:pt,visible:t.editor.openType!=="Popup"},width:{description:"窗口宽度,最小值:300px,最大值:3000px",title:"宽度",type:"number",refreshPanelAfterChanged:!0,$converter:pt,editor:{...this.numberEditor,min:this.showNavigatiorWidth(t.editor)?520:300,max:9999}},height:{description:"窗口高度,最小值:200px,最大值:2000px",title:"高度",type:"number",$converter:pt,editor:{...this.numberEditor,min:200,max:9999}},showNavigation:{description:"显示导航栏",$converter:je,refreshPanelAfterChanged:!0,title:"显示导航栏",type:"boolean",visible:this.getDisplayType(t.editor).includes("NAV")&&t.editor.openType!=="Popup"},navigatorWidth:{description:"导航栏宽度,最小200px, 最大为窗口宽度减去200px",title:"导航栏宽度",type:"number",$converter:pt,visible:this.showNavigatiorWidth(t.editor)&&t.editor.openType!=="Popup",editor:{...this.numberEditor,min:200,max:(((r=(o=t.editor)==null?void 0:o.dialog)==null?void 0:r.width)??960)-200}},resizeable:{description:"允许鼠标拖拽窗口边缘调整尺寸",title:"允许调整窗口尺寸",type:"boolean",$converter:pt,refreshPanelAfterChanged:!0,visible:t.editor.openType!=="Popup"},rememberSize:{description:"记录窗口尺寸",title:"记录窗口尺寸",type:"boolean",$converter:pt,visible:!!t.editor.enableUserData&&(((a=(s=t.editor)==null?void 0:s.dialog)==null?void 0:a.resizeable)??!0)&&t.editor.openType!=="Popup"},enableEsc:{description:"允许ESC关闭",title:"允许ESC关闭",type:"boolean",$converter:pt,visible:t.editor.openType!=="Popup"},showMaxButton:{description:"显示最大化按钮",title:"显示最大化按钮",type:"boolean",$converter:pt,visible:t.editor.openType!=="Popup"},showCloseButton:{description:"显示关闭按钮",title:"显示关闭按钮",type:"boolean",$converter:pt,visible:t.editor.openType!=="Popup"}}}}showPagerProperty(t,o){const r=this.getDisplayType(t)!=="TREELIST"||t.treeToList;return o&&r?t.pagination&&t.pagination[o]:r}getPageConfig(t){var r,s,a,l;const o=!((r=t.pagination)!=null&&r.enable);return{hide:this.getDisplayType(t)==="TREELIST"||!t.helpId||o,description:"分页配置",title:"分页",parentPropertyID:"pagination",properties:{showLimits:{description:"显示每页条数选择器",title:"显示条数选择器",type:"boolean",refreshPanelAfterChanged:!0,$converter:un,visible:this.showPagerProperty(t)},sizeLimits:{description:"每页可显示条数",title:"每页显示条数",type:"array",$converter:un,refreshPanelAfterChanged:!0,visible:this.showPagerProperty(t,"showLimits"),editor:{columns:[{field:"value",title:"显示条数",dataType:"number",editor:{...this.numberEditor,min:10,max:1e4}}],title:"每页显示条数编辑器",modalWidth:400,modalHeight:500,type:"item-collection-editor",valueField:"value",nameField:"value",requiredFields:["value"],uniqueFields:["value"],modelValue:Qt((s=t.pagination)==null?void 0:s.sizeLimits),beforeSubmit:({notifyService:d,data:u})=>!u||!u.length?(d==null||d.warning({message:"每页显示条数不能为空!"}),!1):new Set(u.map(c=>parseInt(c.value,10))).size===u.length?!0:(d==null||d.warning({message:"每页显示条数不能重复!"}),!1)}},size:{description:"默认显示条数",title:"默认显示条数",type:"number",visible:this.showPagerProperty(t),$converter:un,editor:{...this.comboListEditor,data:Qt((a=t.pagination)==null?void 0:a.sizeLimits),textField:"value",idField:"value",valueField:"value",modelValue:(l=t.pagination)==null?void 0:l.size}}}}}showLoadType(t){const o=this.getDisplayType(t);return(o==="TREELIST"||o==="NAVTREELIST")&&!t.treeToList&&!t.navTreeToList}isTree(t){return this.getDisplayType(t)==="TREELIST"&&!t.treeToList}getTreePropConfig(t){return{hide:this.getDisplayType(t)!=="TREELIST"&&this.getDisplayType(t)!=="NAVTREELIST",description:"树形数据配置",title:"树形数据配置",parentPropertyID:"editor",properties:{treeToList:{description:"以列表的形式展示树结构数据",$converter:je,refreshPanelAfterChanged:!0,title:"以列表形式展示",type:"boolean",visible:this.getDisplayType(t)==="TREELIST"},navTreeToList:{description:"以列表的形式展示树结构数据",$converter:je,refreshPanelAfterChanged:!0,title:"以列表形式展示",type:"boolean",visible:this.getDisplayType(t)==="NAVTREELIST"},loadTreeDataType:{description:"树形数据加载方式",$converter:je,title:"数据加载方式",type:"string",editor:{...this.comboListEditor,data:[{value:"default",text:"默认"},{value:"all",text:"全部加载"},{value:"async",text:"分层加载"}],textField:"text",valueField:"value"},visible:this.showLoadType(t)},enableFullTree:{description:"启用构造完整树",$converter:je,title:"构造完整树",type:"boolean",visible:this.showLoadType(t)},onlySelectLeaf:{description:"仅选择叶子节点",$converter:je,title:"仅选择叶子节点",type:"boolean",visible:this.isTree(t)},enableCascade:{description:"启用级联选择",$converter:je,refreshPanelAfterChanged:!0,title:"启用级联选择",type:"boolean",visible:this.isTree(t)&&!!t.multiSelect&&t.openType!=="Popup"},showCascadeControl:{description:"是否在界面中显示级联状态",$converter:je,title:"显示级联状态",type:"boolean",visible:!1},cascadeValue:{description:"缺省级联选择模式",$converter:je,title:"缺省级联选择模式",type:"string",visible:!!t.enableCascade&&this.isTree(t),editor:{...this.comboListEditor,data:Dl,textField:"text",valueField:"value"}},expandLevel:{description:"默认展开层级: 0: 不展开; -1: 全部展开;>0: 展开到指定级数 ",$converter:je,title:"默认展开层级",type:"number",visible:this.showLoadType(t),editor:{...this.numberEditor,min:-1,max:99}}}}}getEventPropConfig(t){const o=this;let r=ec;t.editor.openType==="Popup"&&(r=r.filter(l=>l.label!=="beforeSelectData"));const s=o.eventsEditorUtils.formProperties(t,o.viewModelId,r);return{title:"事件",hideTitle:!0,properties:o.createBaseEventProperty(s),refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(l,d){const u=l.propertyValue;delete d[o.viewModelId],u&&o.eventsEditorUtils.saveRelatedParameters(d,o.viewModelId,u.events,u);const p=o.designViewModelUtils.getDgViewModel(o.viewModelId);p&&o.designViewModelField&&p.changeField(o.designViewModelField.id,{valueChanging:d.fieldValueChanging,valueChanged:d.fieldValueChanged})}}}async checkSameBESource(t,o){var r,s,a,l,d;if(t&&((r=o==null?void 0:o.editor)!=null&&r.helpId)&&!o.isRtcControl){if(t.data.id===o.editor.helpId)return!0;const u=await this.metadataService.getPickMetadata("",t.data).then(g=>{var y;if((y=g==null?void 0:g.metadata)!=null&&y.content)return JSON.parse(g.metadata.content)}),p=await this.metadataService.getPickMetadata("",{id:o.editor.helpId}).then(g=>{var y;if((y=g==null?void 0:g.metadata)!=null&&y.content)return JSON.parse(g.metadata.content)}),c=(s=u==null?void 0:u.dataSource)==null?void 0:s.sourceType,f=(a=p.dataSource)==null?void 0:a.sourceType,m=(l=u==null?void 0:u.dataSource)==null?void 0:l.sourceId,h=(d=p==null?void 0:p.dataSource)==null?void 0:d.sourceId;if(c==="BE"&&f==="BE"&&m!==h)return new bn.FNotifyService().error({message:"只允许更换同数据源的帮助元数据",position:"top-center"}),!1}return!0}}class oc extends Bt{constructor(e,t){super(e,t)}getEditorProperties(e){return this.getComponentConfig(e,{type:"number-range"},{editable:{description:"",title:"允许编辑",type:"boolean"}})}}class ic extends Bt{constructor(e,t){super(e,t)}getEditorProperties(e){var r,s,a,l,d,u,p,c;let t;if(((r=e==null?void 0:e.binding)==null?void 0:r.type)==="Form"){const f=this.schemaService.getFieldByIDAndVMID(e.binding.field,this.viewModelId);(s=f==null?void 0:f.schemaField)!=null&&s.type&&(t=f.schemaField.type.precision)}return this.getComponentConfig(e,{type:"number-spinner"},{precision:{description:"",title:"精度",type:"number",editor:{readonly:t===0,min:0,max:t},refreshPanelAfterChanged:!0},step:{description:"",title:"步长",type:"number",editor:{min:0,precision:(a=e==null?void 0:e.editor)==null?void 0:a.precision}},min:{description:"",title:"最小值",type:"number",editor:{nullable:!0,max:(l=e==null?void 0:e.editor)==null?void 0:l.max,precision:(d=e==null?void 0:e.editor)==null?void 0:d.precision},refreshPanelAfterChanged:!0},max:{description:"",title:"最大值",type:"number",editor:{nullable:!0,min:((u=e==null?void 0:e.editor)==null?void 0:u.min)===void 0||(p=e==null?void 0:e.editor)==null?void 0:p.min,precision:(c=e==null?void 0:e.editor)==null?void 0:c.precision},refreshPanelAfterChanged:!0},textAlign:{description:"",title:"对齐方式",type:"enum",editor:{editable:!1,data:[{id:"left",name:"左对齐"},{id:"center",name:"居中"},{id:"right",name:"右对齐"}]}}},function(f,m,h){if(f)switch(f.propertyID){case"precision":{m.formatter&&(m.formatter.precision=f.propertyValue);break}}})}changeBindingField(e,t,o){var s;super.changeBindingField(e,t);const r=o;e.editor&&((s=r==null?void 0:r.type)==null?void 0:s.name)===fe.FormSchemaEntityFieldTypeName.Number&&(e.editor.precision=r.type.precision)}}class rc extends Bt{constructor(e,t){super(e,t)}getEditorProperties(e){const t=this;return t.getComponentConfig(e,{type:"radio-group"},{disabled:{visible:!1},placeholder:{visible:!1},direction:{description:"",title:"排列方向",type:"enum",editor:{data:[{id:"horizontal",name:"横向"},{id:"vertical",name:"纵向"}]}},dataSourceType:{description:"",title:"数据源类型",type:"enum",visible:!1,editor:{default:"static",data:[{id:"static",name:"静态"},{id:"dynamic",name:"动态"}]},refreshPanelAfterChanged:!0},data:{description:"",title:"数据",type:"array",visible:!e.editor.dataSourceType||e.editor.dataSourceType==="static",...t.getItemCollectionEditor(e,e.editor.valueField,e.editor.textField),refreshPanelAfterChanged:!0},bindDataSource:{description:"",title:"绑定数据源",type:"string",visible:e.editor.dataSourceType==="dynamic"},textField:{description:"",title:"文本字段",type:"string",readonly:e.editor.dataSourceType!=="dynamic"},valueField:{description:"",title:"值字段",type:"string",readonly:e.editor.dataSourceType!=="dynamic"}},this.setEditorPropertyRelates)}setEditorPropertyRelates(e,t,o){if(!e||!t.editor)return;const r=this;switch(e.propertyID){case"dataSourceType":{e.propertyValue==="static"&&(t.editor.valueField="value",t.editor.textField="name");break}case"data":{!r.checkEnumDataReadonly(t)&&t.formatter&&(t.formatter.data=[...e.propertyValue]);break}}}changeBindingField(e,t,o){var s;super.changeBindingField(e,t);const r=o;e.editor&&((s=r==null?void 0:r.type)==null?void 0:s.$type)===fe.FormSchemaEntityFieldType$Type.EnumType&&(e.editor.data=r.type.enumValues||[])}}class ac extends lt.InputBaseProperty{constructor(e,t){super(e,t)}getEditorProperties(e){var t,o;return this.getComponentConfig(e,{type:"switch"},{disabled:{visible:!1},placeholder:{visible:!1},onLabel:{description:"",title:"打开标签",type:"string"},offLabel:{description:"",title:"关闭标签",type:"string"},onBackground:{description:"值可以是颜色或者16进制颜色字符串,比如:blue或者#2A87FF",title:"打开背景色",type:"string"},offBackground:{description:"值可以是颜色或者16进制颜色字符串,比如:gray或者#D9DEE7",title:"关闭背景色",type:"string"},size:{description:"",title:"尺寸",type:"enum",editor:{data:[{id:"small",name:"小号"},{id:"medium",name:"中号"},{id:"large",name:"大号"}]}},trueValue:{description:"打开时的值",title:"打开的值",type:this.getBindingDataType(),visible:((t=this.designViewModelField)==null?void 0:t.type.name)!=="Boolean",refreshPanelAfterChanged:!0,editor:this.getEditor(),$converter:this.getBooleanValueConverter()},falseValue:{description:"关闭时的值",title:"关闭的值",type:this.getBindingDataType(),visible:((o=this.designViewModelField)==null?void 0:o.type.name)!=="Boolean",refreshPanelAfterChanged:!0,editor:this.getEditor(),$converter:this.getBooleanValueConverter()}})}changeBindingField(e,t,o){var s;super.changeBindingField(e,t);const r=o;if(e.editor&&((s=r==null?void 0:r.type)!=null&&s.name)){let a,l;r.type.name===fe.FormSchemaEntityFieldTypeName.String&&(a="true",l="false"),r.type.name===fe.FormSchemaEntityFieldTypeName.Number&&(a=1,l=0),!Object.prototype.hasOwnProperty.call(e.editor,"trueValue")&&a!==void 0&&(e.editor.trueValue=a),!Object.prototype.hasOwnProperty.call(e.editor,"falseValue")&&l!==void 0&&(e.editor.falseValue=l)}}}class sc extends Bt{constructor(e,t){super(e,t)}getEditorProperties(e){return this.getComponentConfig(e,{type:"time-picker"},{editable:{description:"",title:"允许编辑",type:"boolean"},use12Hours:{description:"",title:"是否使用12小时制",type:"boolean",refreshPanelAfterChanged:!0},format:{description:"",title:"格式",type:"enum",editor:{type:"combo-list",textField:"name",valueField:"value",data:e.editor.use12Hours?[{value:"hh:mm:ss",name:"hh:mm:ss"},{value:"hh:mm",name:"hh:mm"}]:[{value:"HH:mm:ss",name:"HH:mm:ss"},{value:"HH:mm",name:"HH:mm"}]}},showHeader:{description:"",title:"是否显示时分秒标题",type:"boolean"},hourStep:{description:"",title:"时步长",type:"number",editor:{min:1,max:12,useThousands:!1}},minuteStep:{description:"",title:"分步长",type:"number",editor:{min:1,max:30,useThousands:!1}},secondStep:{description:"",title:"秒步长",type:"number",editor:{min:1,max:30,useThousands:!1}}},(t,o)=>{t.propertyID==="use12Hours"&&(o.editor.format=o.editor.format||"hh:mm:ss",o.editor.format=t.propertyValue?o.editor.format.replace("HH","hh"):o.editor.format.replace("hh","HH"))})}}class lc extends lt.InputBaseProperty{constructor(e,t){super(e,t)}}class cc extends Ut{constructor(t,o){super(t,o);z(this,"dataGridProps",null);z(this,"notifyService",new bn.FNotifyService)}getPropertyConfig(t,o){var l,d;this.dataGridProps=o,this.getBasicPropConfig(t),this.getAppearanceProperties(t,o);const s={formatterEnumData:{description:"",title:"数据",type:"array",visible:!!(((l=t.formatter)==null?void 0:l.type)==="enum"&&!t.editor),$converter:"/converter/change-formatter-enum.converter",...this.getItemCollectionEditor(t,"value","name"),refreshPanelAfterChanged:!0}},a=(u,p)=>{if(u)switch(u.propertyID){case"formatterEnumData":{t.formatter&&(t.formatter.data=[...u.propertyValue]);break}}};return this.propertyConfig.categories.behavior=this.getBehaviorConfig(t,"gridFieldEditor",s,a),this.getFieldEditorProperties(t,o),t.dataType!=="date"&&t.dataType!=="datetime"&&((d=t.formatter)==null?void 0:d.type)!=="multilingual"&&(this.propertyConfig.categories.formatter=this.getTemplateProperties(t)),this.propertyConfig}getItemCollectionEditor(t,o,r){const s=o||"value",a=r||"name";return{editor:{columns:[{field:s,title:"值",dataType:"string"},{field:a,title:"名称",dataType:"string"}],type:"item-collection-editor",valueField:s,nameField:a,requiredFields:[s,a],uniqueFields:[s,a],readonly:this.checkEnumDataReadonly(t)}}}checkEnumDataReadonly(t){return!t.binding||t.binding.type!=="Form"?!1:!!(this.designViewModelField&&this.designViewModelField.type&&this.designViewModelField.type.$type===fe.FormSchemaEntityFieldType$Type.EnumType)}getEventPropConfig(t){const o=[{label:"onClickLinkCommand",name:"超链接事件"}],r=this,s=r.eventsEditorUtils.formProperties(t,r.viewModelId,o),a=r.createBaseEventProperty(s);this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:a,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(l,d){var p;const u=l.propertyValue;delete t[r.viewModelId],u&&(u.setPropertyRelates=this.setPropertyRelates,r.eventsEditorUtils.saveRelatedParameters(t,r.viewModelId,u.events,u)),t.remoteSort=!!t.columnSorted,t.onClickLinkCommand&&!t.onClickLinkCommand.includes("communication:")&&(t.columnTemplate=`<span class="f-pretend-link f-cursor-pointer"
|
|
20
|
+
`,F.children[1].style.cssText="width: 30px;color: #f4625f;padding: 0 14px 0 0",F.children[2].style.cssText="padding: 0 14px 0 0;",document.body.appendChild(F),F}function x(S,b,E){if(S.stopPropagation(),f(),b){if(m=w(S.target),S.dataTransfer){const F=new Image;F.src="",S.dataTransfer.setDragImage(F,0,0)}h=S.pageX,g=S.pageY,setTimeout(()=>{a.value=E,l.value=!0,b.moving=!0})}}function C(S,b){if(S.preventDefault(),a.value!==b){const E=s.value[a.value],F=s.value;F.splice(a.value,1),F.splice(b,0,E),a.value=b,y(S.pageX,S.pageY)}}function k(S){S.preventDefault(),S.dataTransfer&&(S.dataTransfer.dropEffect="move"),y(S.pageX,S.pageY)}function M(S,b){b&&(b.moving=!1,m&&(document.body.removeChild(m),m=null)),s.value.forEach((E,F)=>{E.__fv_index__=F}),l.value=!1,c(),p.value=b.raw.__fv_index__,d.value=b.raw.__fv_index__,u.value=b.raw[r.value],e.emit("change",s.value),e.emit("activeChange",[b.raw])}return{dragstart:x,dragenter:C,dragover:k,dragend:M,isDragging:l}}function Nl(n,e,t,o,r,s){const a=i.ref(n.idField),l=i.ref(n.disableField),d=i.ref(n.draggable);i.ref(n.itemClass);const u=i.ref(n.selection.multiSelect??!1),p=i.ref(n.selection.multiSelectMode),{isDragging:c}=o,{activeIndex:f,focusedItemId:m,hoverIndex:h}=r,{clearSelection:g,getSelectedItems:y,toggleSelectItem:w,currentSelectedDataId:x}=s,C=i.ref(y()),k=_=>C.value.length===0?!1:C.value.some(V=>{let T="";return V.data?T=V.data[a.value]:T=V[a.value],T===_});function M(){C.value=y()}function S(_,V){return _.raw[a.value]!=null?_.raw[a.value]:""}function b(_,V){const T={"f-list-view-group-item":!0,"f-list-view-draggable-item":d.value,"f-un-click":!_.checked,"f-un-select":!!_.raw[l.value],"f-listview-active":u.value&&k(S(_))||!u.value&&_.raw[a.value]===x.value,"f-listview-hover":!c.value&&V===h.value,moving:!!_.moving};if(typeof n.itemClass=="string")return fe.getCustomClass(T,n.itemClass);if(typeof n.itemClass=="function"){const P=n.itemClass(_);return fe.getCustomClass(T,P)}return T}const E=i.computed(()=>!u.value);function F(_,V,T){_.checked=T,!_.raw[l.value]&&(E.value&&(m.value=_.raw[a.value]),w(_))}const N=i.computed(()=>u.value&&p.value==="OnCheckClearByClick"),v=i.computed(()=>!u.value||u.value&&(p.value==="OnCheckAndClick"||p.value==="OnClick"));function I(_,V,T){if(V.raw[l.value]){_.preventDefault(),_.stopPropagation();return}m.value=V.raw[a.value],f.value=T,N.value&&g(),v.value&&(w(V),M()),e.emit("clickItem",{data:C.value,index:T}),e.emit("activeChange",C.value)}return{getKey:S,selectedItems:C,listViewItemClass:b,updateSelectedItems:M,onCheckItem:F,onClickItem:I}}const qo=i.defineComponent({name:"FListView",props:Ao,emits:["afterSearch","checkValuesChange","clickItem","selectItem","unSelectItem","selectionChange","removeItem","change","activeChange"],setup(n,e){const t=i.ref(),o=i.ref(!0),r=i.ref(!1),s=i.ref([]),a=0,l=i.ref(n.columns),d=Se.useFilter(),u=Se.useIdentify(n),p=Se.useHierarchy(n),c=Se.useGroupData(n,u),f=Se.useDataView(n,new Map,d,p,u),m=Se.useSelection(n,f,u,s,e),h=xl(n,t),g=i.computed(()=>f.dataView.value.length),y=Se.useRow(n,e,m,u),w=Se.useEdit(n,e,u,y,s),x=Se.useVisualDataBound(n),C=Se.useVisualDataCell(n,{},x),k=Se.useVisualDataRow(n,f,w,p,u,x,C),M=Se.useVisualGroupRow(n,u,C,k),S=Se.useVisualSummaryRow(n,u,C,k),b=Se.useVisualData(n,l,f,g,a,k,M,S),{getVisualData:E}=b;s.value=E(0,g.value+a-1);const F=i.computed(()=>{const A={"f-list-view":!0,"f-list-view-multiple":n.multiSelect};return n.size!=="default"&&(A[`${n.size}-item`]=!0),fe.getCustomClass(A,n.customClass)}),N=i.computed(()=>!!e.slots.footer||o.value);function v(){return n.header==="SearchBar"?Wo:n.header==="ContentHeader"?El:Wo}const I=v(),{renderHeader:_}=I(n,e,h),V=Il(),T=_l(n,e,f,V),P=Nl(n,e,s,T,V,m),{renderListArea:q}=kl(n,e,s,f,c,V,m,b,P,T);function O(A){h.search(A)}function W(A){A&&(f.load(A),s.value=E(0,g.value+a-1))}function R(){m.clearSelection(),V.clearActiveItem()}function B(){return P.selectedItems.value}function L(){return P.selectedItems.value.map(A=>A[u.idField.value])}function H(A){m.selectedValues.value=A,P.updateSelectedItems()}function Q(){return m.currentSelectedDataId.value}function Y(A){y.activeRowById(A)}e.expose({search:O,updateDataSource:W,clearSelection:R,getSelections:B,updateSelectionByIds:H,getSelectionIds:L,activeRowById:Y,getCurrentRowId:Q});function ue(A){n.multiSelect&&(A.preventDefault(),A.stopPropagation())}return i.watch(()=>n.selectionValues,(A,G)=>{A!==G&&H(A)}),()=>i.createVNode("div",{class:F.value,onClick:ue},[_(),i.createVNode("div",{ref:t,class:"f-list-view-content",onMouseover:()=>{r.value=!0},onMouseleave:()=>{r.value=!1}},[q()]),N.value&&i.createVNode("div",{class:"f-list-view-footer"},[e.slots.footer&&e.slots.footer()])])}}),Pl=i.defineComponent({name:"FTransfer",props:Lo,emits:["change","activeChange"],setup(n,e){const{t}=ot.useI18n(),o=i.ref(n.identifyField),r={selectedStart:t("transfer.selectedStart"),selectedEnd:t("transfer.selectedEnd")},s=i.ref(n.displayType),a=i.ref(!1),l=i.ref(n.dataSource),d=i.ref(n.textField),u=i.ref(n.selections||[]),p=i.computed(()=>u.value.map(_=>_[o.value])),c=new Map,f=i.ref(),m=i.ref();let h;function g(){const _=new Map,V=n.selectionValues||[];V.length&&V.reduce((P,q)=>(P.set(q,!0),P),_);const T=n.selections||[];T.length&&(_.clear(),T.reduce((P,q)=>(P.set(q[o.value],!0),P),_)),u.value.length||(u.value=l.value.filter(P=>_.has(P[o.value])).map(P=>Object.assign({},P))),l.value.forEach(P=>{const q=P[o.value],O=_.has(q);P.checked=O,O&&c.set(q,P)})}g();const y=i.computed(()=>s.value==="List"),w=i.computed(()=>s.value==="Tree");function x(_){u.value=_.map(V=>Object.assign({},V)),e.emit("change",u.value)}function C(){return i.createVNode(qo,{class:"f-utils-fill",data:l.value,multiSelect:!0,itemClass:"f-transfer-list-item",textField:d.value,selection:{enableSelectRow:!0,multiSelect:!0,multiSelectMode:"OnCheckAndClick",showCheckbox:!0,showSelectAll:!1,showSelection:!0},draggable:!1,header:"Search",headerClass:"transfer-search-box",selectionValues:p.value,onSelectionChange:x},null)}function k(){return i.createVNode(vn,{data:l.value,columns:n.columns,virtualized:n.virtualized,rowOption:n.rowOption,textField:d.value,selection:{enableSelectRow:!0,multiSelect:!0,multiSelectMode:"OnCheckAndClick",showCheckbox:!0,showSelectAll:!1,showSelection:!0},selectionValues:p.value,onSelectionChange:x},null)}function M(){return i.createVNode("div",{class:"f-utils-fill option-pane d-flex flex-column"},[i.createVNode("div",{class:"f-utils-flex-column option-pane-content f-utils-fill"},[i.createVNode("div",{class:"container columns-box d-flex f-utils-fill"},[y.value&&C(),w.value&&k()])])])}function S(_){const V=_[o.value];if(V!==null||V!==void 0){u.value=u.value.filter(P=>P[o.value]!==V);const T=c.get(V);T&&(T.checked=!1,c.delete(V)),e.emit("change",u.value)}}function b(_){_.forEach(V=>{Object.keys(V).forEach(T=>{T.indexOf("__fv")>-1&&delete V[T]})})}i.watch(u,_=>{b(_),f.value.updateDataSource(_);const V=h==null?void 0:h[o.value],T=_.find(P=>V===P[o.value]);T?f.value.activeRowById(T[o.value]):(h=null,f.value.activeRowById(""))});function E(_){const V=new Map;u.value.reduce((T,P)=>(T.set(P[o.value],P),T),V),u.value=_.map(T=>V.get(T[o.value])),e.emit("change",u.value)}function F(_){h=_[0],e.emit("activeChange",_)}function N(){var _;return b(u.value),i.createVNode(qo,{ref:f,columns:n.columns,style:"flex:1",data:u.value,draggable:!0,view:"DraggableView","keep-order":!0,textField:d.value,itemClass:n.selectedItemClass,onChange:E,onRemoveItem:S,onActiveChange:F,checkBeforeRemoveItem:n.checkBeforeRemoveItem},{itemContent:(_=e.slots)!=null&&_.text?V=>{var T;return((T=e.slots)==null?void 0:T.text)&&e.slots.text(V)}:null})}function v(){return i.createVNode("div",{class:"f-utils-fill selection-pane d-flex flex-column"},[i.createVNode("div",{class:"f-utils-flex-column selection-pane-content f-utils-fill"},[i.createVNode("div",{class:"selection-pane-title"},[i.createVNode("span",{class:"selection-title"},[r.selectedStart]),i.createVNode("span",{class:"selection-count"},[u.value&&u.value.length]),i.createVNode("span",{class:"selection-item-title"},[r.selectedEnd])]),i.createVNode("div",{class:"container columns-box f-utils-fill d-flex"},[N()])])])}const I=i.computed(()=>({"f-transfer":!0,row:!0,"f-utils-fill":a.value}));return i.onMounted(()=>{m.value&&m.value.parentElement&&getComputedStyle(m.value.parentElement).display==="flex"&&(a.value=!0)}),()=>i.createVNode("div",{ref:m,class:I.value,style:"height:480px"},[M(),v()])}}),Bl=i.defineComponent({name:"FGridFieldEditor",props:Ro,emits:["change"],setup(n,e){const t=i.ref(n.viewModelId),o=i.inject("designViewModelUtils"),r=i.inject("useFormSchema"),s=i.inject("schemaService"),a=i.inject("controlCreatorUtils"),l=i.inject("designerContext");let d=n.gridData.columns;const{fieldEditable:u}=n.gridData,p=i.ref(`共 ${(d||[]).length} 项`),c=i.ref([]),f=i.ref([]);let m=[];function h(v,I=!0){if(l.checkCanDeleteControl){const _=m.find(V=>{var T;return((T=V.data)==null?void 0:T.id)===v.id});return l.checkCanDeleteControl(_,I)}return!0}const g={customRowStatus:v=>{const I=v.raw;I.type&&I.type.fields&&I.type.fields.length>0&&(v.disabled=!0),h(I,!1)||(v.disabled=!0)}};function y(){if(c.value=[],!d||d.length===0)return[];const v="[绑定字段不存在,待移除]";d.forEach(I=>{if(I.binding&&I.binding.field){const _=m.find(V=>V.data.id===I.binding.field);_?_.data.$type===fe.FormSchemaEntityField$Type.ComplexField?c.value.push(Object.assign({isInValidBinding:!0},_.data,{name:_.data.name+v})):c.value.push(Object.assign({},_.data)):c.value.push({id:I.binding.field,name:I.title+v,label:I.field,bindingField:null,isInValidBinding:!0})}}),p.value=`共 ${c.value.length} 项`}function w(v,I=[]){return v&&v.forEach(_=>{if(I.push(_),_.children&&w(_.children,I),l.appendIdentifyForNewControl){const V=d.find(T=>{var P;return((P=T.binding)==null?void 0:P.field)===_.data.id});(!V||V[l.identifyForNewControl])&&l.appendIdentifyForNewControl(_)}}),I}function x(){if(r.designerMode==="PC_RTC"&&s.rtcAddedTreeNodes.value){const v=s.getTableInfoByViewModelId(t.value);if(v!=null&&v.id){const I=s.rtcAddedTreeNodes.value[v.id];I!=null&&I.length&&(f.value=f.value.concat(I))}}}function C(){f.value=o.getAllFields2TreeByVMId(t.value),x(),m=w(f.value)}function k(v,I,_){if(r.getComponents().find(T=>{let P=r.getControlsInCmpWidthBinding(T.viewModel,v);if(P=P.filter(q=>{var W;if(q.id===_)return!1;const O=I.type==="visible"?q[I.type]:(W=q.editor)==null?void 0:W[I.type];if(O&&O.type==="Expression"&&O.expressionId===I.id)return!0}),P.length)return!0}))return!0}function M(v){v.map(I=>{var V;const _=d.find(T=>{var P;return((P=T.binding)==null?void 0:P.field)===I});if(_&&r.getExpressions().length){const T=r.getExpressions(),P=T.findIndex(q=>q.target===I);P>-1&&((V=T[P].rules)==null||V.map(q=>{var O;switch(q.type){case"visible":case"readonly":case"required":{const W=q.type==="visible"?_[q.type]:(O=_.editor)==null?void 0:O[q.type];W&&W.type==="Expression"&&W.expressionId===q.id&&(k(I,q,_.id)||(q.needDelete=!0));break}default:k(I,q,_.id)||(q.needDelete=!0)}}),T[P].rules=T[P].rules.filter(q=>!q.needDelete))}})}function S(){const v=o.getDgViewModel(t.value),I=[],_=[],V=c.value.filter(P=>!P.isInValidBinding);V.forEach(P=>{const q=d==null?void 0:d.find(O=>{if(O.binding&&O.binding.field)return O.binding.field===P.id});if(q)I.push(q);else{const O=a.setGridFieldProperty(n.gridType,P.data,null,u);v.addField(P),I.push(O)}_.push(P.id)});const T=v.fields.filter(P=>!_.includes(P.id));if(T&&T.length>0){const P=T.map(q=>q.id);v.removeField(P),M(P)}V.length!==c.value.length&&(c.value=V),p.value=`共 ${I.length} 项`,e.emit("change",I)}const b={fitContent:!1,width:900,height:600,title:"列编辑器",draggable:!0,acceptCallback:()=>{S()},rejectCallback:()=>{}};function E(v){v.forEach(I=>{c.value.findIndex(_=>_.id===I.id)})}function F(){return n.getLatestGridData?d=n.getLatestGridData().columns:d=n.gridData.columns,C(),y(),Promise.resolve(!0)}const N=[{field:"name",title:"",dataType:"string",width:"100%",formatter:(v,I)=>v.data+` [${I.data.bindingField.data}]`},{field:"bindingField",visible:!1,title:"",dataType:"string"}];return i.onMounted(()=>{C()}),()=>i.createVNode(dl,{"button-behavior":"Modal","modal-options":b,modelValue:p.value,"onUpdate:modelValue":v=>p.value=v,editable:!1,beforeOpen:F},{default:()=>[i.createVNode("div",{class:"f-utils-absolute-all"},[i.createVNode(Pl,{selections:c.value,"data-source":f.value,rowOption:g,class:"mx-2",columns:N,displayType:"Tree",onChange:v=>E(v),checkBeforeRemoveItem:h},{text:v=>i.createVNode("div",{style:"margin: 10px 0px 10px 14px;"},[v.data.name.data,i.createTextVNode(" ["),v.data.bindingField.data,i.createTextVNode("]")])})])]})}}),$l={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/data-grid-column.schema.json",title:"data-grid-column",description:"A Farris data-grid-column Component",type:"object",properties:{id:{description:"The unique identifier for a data-grid-column",type:"string",default:""},type:{description:"The type string of data-grid-column component",type:"string",default:"data-grid-column"},binding:{description:"",type:"object",default:{}},allowGrouping:{description:"",type:"boolean",default:!0},colspan:{description:"",type:"number"},dataType:{type:"string"},editor:{description:"",type:"obejct",default:{}},field:{description:"",type:"string"},filterable:{description:"",type:"boolean",default:!1},fixed:{description:"",type:"string",enum:["left","right"]},align:{description:"",type:"enum",default:"left",enum:["left","center","right"]},halign:{description:"",type:"enum",default:"left",enum:["left","center","right"]},title:{description:"",type:"string"},readonly:{description:"",type:"boolean",default:!0},resizable:{description:"",type:"boolean",default:!0},rowspan:{description:"",type:"number"},showTips:{description:"",type:"boolean",default:!0},sort:{description:"",type:"string",default:"none",enum:["asc","desc","none"]},sortable:{description:"",type:"boolean",default:!0},sortOrder:{description:"",type:"number"},tipMode:{description:"",type:"string",enum:["allways","auto"]},valign:{description:"",type:"enum",default:"middle",enum:["top","middle","bottom"]},visible:{description:"",type:"boolean",default:!0},width:{description:"",type:"number",default:120},formatter:{description:"列格式化",type:"object",default:{type:"none",customFormat:"",trueText:"是",falseText:"否",dateFormat:"yyyy-MM-dd"}},columnTemplate:{description:"列模板",type:"string",default:""},summaryType:{description:"合计类型",type:"enum",default:"none"},formatterEnumData:{description:"",type:"array"},multiLanguage:{description:"是否启用多语",type:"boolean"}},required:["id","type"],events:{onClickLinkCommand:"超链接事件"}},Ol={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/data-grid-column.schema.json",title:"tree-grid-column",description:"A Farris data-grid-column Component",type:"object",properties:{id:{description:"The unique identifier for a data-grid-column",type:"string"},type:{description:"The type string of data-grid-column component",type:"string",default:"tree-grid-column"},allowGrouping:{description:"",type:"boolean",default:!0},colspan:{description:"",type:"number"},dataType:{type:"string"},editor:{description:"",type:"obejct"},field:{description:"",type:"string"},filterable:{description:"",type:"boolean",default:!0},fixed:{description:"",type:"string",enum:["left","right"]},align:{description:"",type:"enum",default:"left",enum:["left","center","right"]},halign:{description:"",type:"enum",default:"left",enum:["left","center","right"]},title:{description:"",type:"string"},readonly:{description:"",type:"boolean",default:!0},resizable:{description:"",type:"boolean",default:!0},rowspan:{description:"",type:"number"},showTips:{description:"",type:"boolean",default:!0},sort:{description:"",type:"string",enum:["asc","desc","none"]},sortable:{description:"",type:"boolean",default:!0},sortOrder:{description:"",type:"number"},tipMode:{description:"",type:"string",enum:["allways","auto"]},valign:{description:"",type:"enum",default:"middle",enum:["top","middle","bottom"]},visible:{description:"",type:"boolean",default:!0},width:{description:"",type:"number"}},required:["id","type"]},dn={id:{type:String,default:""},type:{type:String,default:""},allowGrouping:{type:Boolean,default:!0},colspan:{type:Number,default:1},dataType:{type:String,default:""},parentId:{type:String,default:""},editor:{type:Object},field:{type:String,default:""},filterable:{type:Boolean,default:!0},fixed:{type:String,default:""},halign:{type:String,default:"left"},title:{type:String,default:""},readonly:{type:Boolean,default:!0},resizable:{type:Boolean,default:!0},rowspan:{type:Boolean,default:!0},showTips:{type:Boolean,default:!0},sort:{type:String,default:"none"},sortable:{type:Boolean,default:!0},sortOrder:{type:Number},tipMode:{type:String,default:"auto"},valign:{type:String,default:"middle"},visible:{type:Boolean,default:!0},width:{type:Number},actualWidth:{type:Number},align:{type:String,default:"left"},left:{type:Number},sorter:{type:Function,default:()=>{}},origianlColSpan:{type:Number},index:{type:Number},commands:{type:Array,default:[]},filter:{type:String,default:""},showSetting:{type:Boolean,default:!0},formatter:{type:Function,default:()=>{}},componentId:{type:String,default:""}},jl=rt(dn,$l,$o,jo),Rl=rt(dn,Ol,$o,jo);class Ll extends Bt{constructor(e,t){super(e,t)}getEditorProperties(e){return{description:"编辑器",title:"编辑器",type:"avatar",$converter:"/converter/property-editor.converter",parentPropertyID:"editor",properties:{readonly:{description:"",title:"只读",type:"boolean"},avatarWidth:{description:"",title:"头像宽度",type:"number"},avatarHeight:{description:"",title:"头像高度",type:"number"},cover:{description:"",title:"封面",type:"string"}}}}}class Al extends lt.InputBaseProperty{constructor(e,t){super(e,t)}getEditorProperties(e){const t=this;return t.getComponentConfig(e,{type:"check-group"},{placeholder:{visible:!1},disabled:{visible:!1},direction:{description:"",title:"排列方向",type:"enum",editor:{data:[{id:"horizontal",name:"横向"},{id:"vertical",name:"纵向"}]}},dataSourceType:{description:"",title:"数据源类型",type:"enum",visible:!1,editor:{default:"static",data:[{id:"static",name:"静态"},{id:"dynamic",name:"动态"}]},refreshPanelAfterChanged:!0},data:{description:"",title:"数据",type:"array",visible:!e.editor.dataSourceType||e.editor.dataSourceType==="static",...t.getItemCollectionEditor(e,e.editor.valueField,e.editor.textField),refreshPanelAfterChanged:!0},bindDataSource:{description:"",title:"绑定数据源",type:"string",visible:e.editor.dataSourceType==="dynamic"},textField:{description:"",title:"文本字段",type:"string",readonly:e.editor.dataSourceType!=="dynamic"},valueField:{description:"",title:"值字段",type:"string",readonly:e.editor.dataSourceType!=="dynamic"}},(r,s)=>{if(r)switch(r.propertyID){case"dataSourceType":{r.propertyValue==="static"&&(e.editor.valueField="value",e.editor.textField="name");break}case"data":{e.formatter&&(e.formatter.data=[...r.propertyValue]);break}}})}}class Hl extends lt.InputBaseProperty{constructor(e,t){super(e,t)}getEditorProperties(e){var t,o;return this.getComponentConfig(e,{type:"check-box"},{placeholder:{visible:!1},disabled:{visible:!1},label:{description:"",title:"名称",type:"string"},trueValue:{description:"选中的值",title:"选中的值",type:this.getBindingDataType(),visible:((t=this.designViewModelField)==null?void 0:t.type.name)!=="Boolean",refreshPanelAfterChanged:!0,editor:this.getEditor(),$converter:this.getBooleanValueConverter()},falseValue:{description:"未选中的值",title:"未选中的值",type:this.getBindingDataType(),visible:((o=this.designViewModelField)==null?void 0:o.type.name)!=="Boolean",refreshPanelAfterChanged:!0,editor:this.getEditor(),$converter:this.getBooleanValueConverter()}})}changeBindingField(e,t,o){var s;super.changeBindingField(e,t);const r=o;if(e.editor&&((s=r==null?void 0:r.type)!=null&&s.name)){let a,l;r.type.name===fe.FormSchemaEntityFieldTypeName.String&&(a="true",l="false"),r.type.name===fe.FormSchemaEntityFieldTypeName.Number&&(a=1,l=0),!Object.prototype.hasOwnProperty.call(e.editor,"trueValue")&&a!==void 0&&(e.editor.trueValue=a),!Object.prototype.hasOwnProperty.call(e.editor,"falseValue")&&l!==void 0&&(e.editor.falseValue=l)}}}const Go={convertFrom:(n,e)=>(n.editor.remote||{})[e],convertTo:(n,e,t)=>{n.editor.remote=n.editor.remote||{},n.editor.remote[e]=t}};class Wl extends lt.InputBaseProperty{constructor(e,t){super(e,t)}getEditorProperties(e){var s,a;const t=this;let o="";if(((s=e==null?void 0:e.binding)==null?void 0:s.type)==="Form"){const l=this.schemaService.getFieldByIDAndVMID(e.binding.field,this.viewModelId);(a=l==null?void 0:l.schemaField)!=null&&a.type&&(o=l.schemaField.type.$type)}return t.getComponentConfig(e,{type:"combo-list"},{editable:{description:"",title:"允许编辑",type:"boolean",readonly:e.editor.type==="combo-list"},enableClear:{description:"",title:"启用清空",type:"boolean"},dataSourceType:{description:"",title:"数据源类型",type:"enum",editor:{default:"static",data:[{id:"static",name:"静态"},{id:"dynamic",name:"动态"}]},refreshPanelAfterChanged:!0},data:{description:"",title:"数据",type:"array",visible:!e.editor.dataSourceType||e.editor.dataSourceType==="static",...t.getItemCollectionEditor(e,e.editor.valueField,e.editor.textField),refreshPanelAfterChanged:!0},url:{visible:e.editor.dataSourceType==="dynamic",$converter:Go,description:"",title:"服务端API",type:"string"},body:{visible:e.editor.dataSourceType==="dynamic",$converter:Go,description:"",title:"服务端API参数",type:"string"},textField:{description:"",title:"数据源显示字段",type:"string",readonly:e.editor.dataSourceType!=="dynamic"},valueField:{description:"",title:"数据源值字段",type:"string",readonly:e.editor.dataSourceType!=="dynamic"},multiSelect:{description:"",title:"启用多选",visible:!o||o==="StringType",type:"boolean",refreshPanelAfterChanged:!0},maxLength:{description:"",title:"最大输入长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1}}},(l,d)=>{if(!l||!d.editor)return;const u=this;switch(l.propertyID){case"dataSourceType":{l.propertyValue==="static"?(d.editor.valueField="value",d.editor.textField="name",d.editor.remote=null):l.propertyValue==="dynamic"&&(d.editor.remote={method:"GET"},d.editor.valueField="value",d.editor.textField="name");break}case"data":{!u.checkEnumDataReadonly(d)&&d.formatter&&(d.formatter.data=[...l.propertyValue]);break}}})}getGridFieldEdtiorProperties(e,t){var a,l;const o=this;let r="";if(((a=e==null?void 0:e.binding)==null?void 0:a.type)==="Form"){const d=this.schemaService.getFieldByIDAndVMID(e.binding.field,this.viewModelId);(l=d==null?void 0:d.schemaField)!=null&&l.type&&(r=d.schemaField.type.$type)}return o.getComponentConfig(e,{type:"combo-list"},{editable:{description:"",title:"允许编辑",type:"boolean",readonly:e.editor.type==="combo-list"},enableClear:{description:"",title:"启用清空",type:"boolean"},data:{description:"",title:"数据",type:"array",visible:!0,...o.getItemCollectionEditor(e,e.editor.valueField,e.editor.textField),refreshPanelAfterChanged:!0},textField:{description:"",title:"数据源显示字段",type:"string",readonly:!0},valueField:{description:"",title:"数据源值字段",type:"string",readonly:!0},multiSelect:{description:"",title:"启用多选",visible:r==="StringType",type:"boolean",refreshPanelAfterChanged:!0},maxLength:{description:"",title:"最大输入长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1}}},(d,u)=>{if(!d||!u.editor)return;const p=this;switch(d.propertyID){case"dataSourceType":{d.propertyValue==="static"?(u.editor.valueField="value",u.editor.textField="name",u.editor.remote=null):d.propertyValue==="dynamic"&&(u.editor.remote={method:"GET"});break}case"data":{!p.checkEnumDataReadonly(u)&&u.formatter&&(u.formatter.data=[...d.propertyValue]);break}}})}setEditorPropertyRelates(e,t,o){if(!e||!t.editor)return;const r=this;switch(e.propertyID){case"dataSourceType":{e.propertyValue==="static"&&(t.editor.valueField="value",t.editor.textField="name",t.editor.remote={});break}case"data":{!r.checkEnumDataReadonly(t)&&t.formatter&&(t.formatter.data=[...e.propertyValue]);break}}}changeBindingField(e,t,o){var s;super.changeBindingField(e,t);const r=o;e.editor&&((s=r==null?void 0:r.type)==null?void 0:s.$type)===fe.FormSchemaEntityFieldType$Type.EnumType&&(e.editor.data=r.type.enumValues||[])}}class ql extends Bt{constructor(e,t){super(e,t)}getEditorProperties(e){return this.getComponentConfig(e,{type:"textarea"},{resizable:{description:"",title:"拖拽调整大小",type:"boolean"},autoHeight:{description:"",title:"自动高度",visible:!1,type:"boolean"}})}getGridFieldEdtiorProperties(e){return this.getComponentConfig(e,{type:"textarea"},{autoHeight:{description:"",title:"自动高度",visible:!1,type:"boolean"}})}}function Gl(){let n="zh-CHS";window&&window.top&&window.top.localStorage&&window.top.localStorage.languageCode&&({languageCode:n}=window.top.localStorage);const e=[{id:"yyyy-MM-dd HH:mm:ss",name:"yyyy-MM-dd HH:mm:ss"},{id:"yyyy/MM/dd HH:mm:ss",name:"yyyy/MM/dd HH:mm:ss"},{id:"yyyyMMddHHmmss",name:"yyyyMMddHHmmss"},{id:"yyyy-MM-dd HH:mm",name:"yyyy-MM-dd HH:mm"},{id:"yyyy/MM/dd HH:mm",name:"yyyy/MM/dd HH:mm"},{id:"yyyyMMddHHmm",name:"yyyyMMddHHmm"}],t=[{id:"yyyy-MM-dd",name:"yyyy-MM-dd"},{id:"yyyy/MM/dd",name:"yyyy/MM/dd"},{id:"yyyyMMdd",name:"yyyyMMdd"},{id:"MM/dd/yyyy",name:"MM/dd/yyyy"}],o=[{id:"yyyy-MM",name:"yyyy-MM"},{id:"yyyy/MM",name:"yyyy/MM"},{id:"yyyyMM",name:"yyyyMM"}],r=[{id:"MM/dd",name:"MM/dd"},{id:"MMdd",name:"MMdd"},{id:"MM-dd",name:"MM-dd"}],s=[{id:"yyyy",name:"yyyy"}];return n==="zh-CHS"&&(e.push({id:"yyyy年MM月dd日 HH时mm分ss秒",name:"yyyy年MM月dd日 HH时mm分ss秒"},{id:"yyyy年MM月dd日 HH时mm分",name:"yyyy年MM月dd日 HH时mm分"}),t.push({id:"yyyy年MM月dd日",name:"yyyy年MM月dd日"}),o.push({id:"yyyy年MM月",name:"yyyy年MM月"}),r.push({id:"MM月dd日",name:"MM月dd日"}),s.push({id:"yyyy年",name:"yyyy年"})),n==="zh-CHT"&&(e.push({id:"yyyy年MM月dd日 HH時mm分ss秒",name:"yyyy年MM月dd日 HH時mm分ss秒"},{id:"yyyy年MM月dd日 HH時mm分",name:"yyyy年MM月dd日 HH時mm分"}),t.push({id:"yyyy年MM月dd日",name:"yyyy年MM月dd日"}),o.push({id:"yyyy年MM月",name:"yyyy年MM月"}),r.push({id:"MM月dd日",name:"MM月dd日"}),s.push({id:"yyyy年",name:"yyyy年"})),{timeFormats:e,yMFormats:o,yMdFormats:t,mdFormats:r,yFormats:s}}class zl extends lt.InputBaseProperty{constructor(e,t){super(e,t)}getEditorProperties(e){var r,s,a,l,d,u,p,c,f,m;const t=this.getDateFormatOptions(e==null?void 0:e.editor),o=this.getValueFormatOptions();return this.getComponentConfig(e,{type:"date-picker"},{showTime:{description:"",title:"启用时间选择",type:"boolean",readonly:((r=e==null?void 0:e.editor)==null?void 0:r.fieldType)==="Date",refreshPanelAfterChanged:!0},displayFormat:{description:"",title:"展示格式",type:"enum",editor:{data:t}},valueFormat:{description:"",title:"存储格式",type:"enum",editor:{data:o},visible:((s=e==null?void 0:e.editor)==null?void 0:s.fieldType)==="String"},minDate:{description:"",title:"最小日期",type:"string",editor:{type:"date-picker",enableClear:!0,displayFormat:"yyyy-MM-dd"+((a=e==null?void 0:e.editor)!=null&&a.showTime?" HH:mm:ss":""),valueFormat:"yyyy-MM-dd"+((l=e==null?void 0:e.editor)!=null&&l.showTime?" HH:mm:ss":""),minDate:"1900-01-01",maxDate:((d=e==null?void 0:e.editor)==null?void 0:d.maxDate)||"9999-12-31",showTime:(u=e==null?void 0:e.editor)==null?void 0:u.showTime},refreshPanelAfterChanged:!0},maxDate:{description:"",title:"最大日期",type:"string",editor:{type:"date-picker",enableClear:!0,displayFormat:"yyyy-MM-dd"+((p=e==null?void 0:e.editor)!=null&&p.showTime?" HH:mm:ss":""),valueFormat:"yyyy-MM-dd"+((c=e==null?void 0:e.editor)!=null&&c.showTime?" HH:mm:ss":""),minDate:((f=e==null?void 0:e.editor)==null?void 0:f.minDate)||"1900-01-01",maxDate:"9999-12-31",showTime:(m=e==null?void 0:e.editor)==null?void 0:m.showTime},refreshPanelAfterChanged:!0},enableQuickSelect:{description:"",title:"启用快速选择",type:"boolean"}},this.setEditorPropertyRelates)}setEditorPropertyRelates(e,t,o){if(!(!e||!t.editor))switch(e.propertyID){case"showTime":{const r=t.editor;e.propertyValue?(r.displayFormat="yyyy-MM-dd HH:mm:ss",r.valueFormat="yyyy-MM-dd HH:mm:ss"):(r.displayFormat="yyyy-MM-dd",r.valueFormat="yyyy-MM-dd"),t.formatter&&(t.formatter.dateFormat=r.displayFormat);break}case"displayFormat":{t.formatter&&(t.formatter.dateFormat=e.propertyValue);break}}}getDateFormatOptions(e){let t=[];const{timeFormats:o,yMdFormats:r,yMFormats:s,mdFormats:a,yFormats:l}=Gl();return e.showTime&&(t=t.concat(o)),t=t.concat(r),t=t.concat(s),t=t.concat(l),t=t.concat(a),t}getValueFormatOptions(){return[{id:"yyyy-MM-dd",name:"yyyy-MM-dd"},{id:"yyyy/MM/dd",name:"yyyy/MM/dd"},{id:"MM/dd/yyyy",name:"MM/dd/yyyy"},{id:"yyyy-MM-dd HH:mm:ss",name:"yyyy-MM-dd HH:mm:ss"},{id:"yyyy/MM/dd HH:mm:ss",name:"yyyy/MM/dd HH:mm:ss"},{id:"yyyyMM",name:"yyyyMM"},{id:"yyyy",name:"yyyy"}]}changeBindingField(e,t,o){var s;super.changeBindingField(e,t);const r=o;e.editor&&((s=r==null?void 0:r.type)!=null&&s.name)&&(e.editor.fieldType=r.type.name,r.type.name===fe.FormSchemaEntityFieldTypeName.DateTime&&(Object.prototype.hasOwnProperty.call(e.editor,"showTime")||(e.editor.showTime=!0),Object.prototype.hasOwnProperty.call(e.editor,"displayFormat")||(e.editor.displayFormat="yyyy-MM-dd HH:mm:ss"),Object.prototype.hasOwnProperty.call(e.editor,"valueFormat")||(e.editor.valueFormat="yyyy-MM-dd HH:mm:ss")))}}const Dl=[{value:"both",text:"同步选择"},{value:"up",text:"包含上级"},{value:"down",text:"包含下级"},{value:"disable",text:"仅选择自身"}],Ul="";function Qt(n){let e=[10,20,30,50,100];return n&&(typeof n=="string"&&(e=n.replaceAll("[","").replaceAll("]","").replaceAll(" ","").split(",")),Array.isArray(n)&&(e=n)),e.map(t=>({value:parseInt(t,10)})).sort((t,o)=>t.value-o.value)}const je={convertFrom:(n,e)=>e==="multiSelect"||e==="enableTitle"?!!n.editor[e]:e==="separator"?n.editor[e]||",":e==="onlySelectLeaf"?n.editor[e]==null?!1:n.editor[e]:e==="loadTreeDataType"?n.editor[e]||"default":e==="placeholder"?n.editor.placeholder||"请选择":n.editor[e],convertTo:(n,e,t)=>{n.editor[e]=t,e==="multiSelect"&&!t&&(n.editor.enableCascade=!1),e==="openType"&&t==="Popup"&&(n.editor.showSelections=!1,n.editor.enableCascade=!1)}};function Yl(n){let e="form_group_"+Date.now();return n&&(e=n.replaceAll("-","_").replaceAll(".","_")),"lookup."+e}function Xl(n,e){const{enablePager:t,pageSize:o,pageList:r}=e;n.pagination=n.pagination||{},Object.assign(n.pagination,{enable:t,sizeLimits:Qt(r).map(s=>s.value),size:o,showLimits:!0,showGoto:!1,mode:"server"})}const Zl={convertFrom:(n,e)=>{var t;return(t=n.editor[e])==null?void 0:t.displayName},convertTo:(n,e,t)=>{if(t&&t.length>0){const o=t[0],{name:r,id:s,metadataContent:a,code:l}=o;n.editor.dataSource||(n.editor.dataSource={}),n.editor.dataSource.displayName=`${r}(${l})`,n.editor.helpId=s;const{displayType:d,idField:u,textField:p}=a;n.editor.displayType=d,n.editor.dataSource.idField=u,n.editor.textField=p,n.editor.dataSource.type="ViewObject";const{pageInfo:c}=a.dataSource;Xl(n.editor,c);const{treeInfo:f}=d.toUpperCase()==="NAVTREELIST"?a.navigation:a.dataSource;if(f){const{onlySelectLeaf:m,loadDataType:h}=f;n.editor.loadTreeDataType="default",n.editor.onlySelectLeaf=m??!1}n.editor.dataSource.uri||(n.editor.dataSource.uri=Yl(n.id))}}},Jl={convertFrom:(n,e)=>{var t;return(t=n.editor.dataSource)==null?void 0:t.idField},convertTo:(n,e,t)=>{if(t&&t.length>0){const o=t[0];n.editor.dataSource.idField=o==null?void 0:o.bindingPath}}},Ql={convertFrom:(n,e)=>{var t;return(t=n.editor)==null?void 0:t.textField},convertTo:(n,e,t)=>{if(t&&t.length>0){const o=t[0];n.editor.textField=o==null?void 0:o.bindingPath}}},Kl={convertFrom:(n,e)=>n.editor.displayType?n.editor.displayType.toUpperCase():"LIST",convertTo:(n,e,t)=>{n.editor.displayType=t}},pt={convertFrom:(n,e)=>{var r;const t=n.editor.dialog||{};if(e==="title")return t[e]||Ul;if(n.editor.openType==="Modal"){if(e==="width")return(r=n.editor.displayType)!=null&&r.toUpperCase().startsWith("NAV")?t[e]||960:t[e]||590;if(e==="height")return t[e]||620;if(e==="navigatorWidth")return t[e]||320}else{if(e==="width")return t[e]||460;if(e==="height")return t[e]||380}if(e==="draggable")return!0;if(["showMaxButton","showCloseButton","resizeable","enableEsc","rememberSize"].includes(e))return t[e]==null?!0:t[e]},convertTo:(n,e,t)=>{n.editor.dialog=n.editor.dialog||{},n.editor.dialog[e]=t}},un={convertFrom:(n,e)=>{const t=n.editor.pagination||{};if(e==="enable"||e==="showLimits")return t[e]==null?!1:t[e];if(e==="sizeLimits"){const o=t[e];return Qt(o)}if(e==="size")return t[e]||20},convertTo:(n,e,t)=>{var o,r;if(n.editor.pagination=n.editor.pagination||{},e==="sizeLimits"){const s=t.map(l=>l.value);n.editor.pagination[e]=s;const a=((r=(o=n.editor)==null?void 0:o.pagination)==null?void 0:r.size)??20;s.includes(a)||(n.editor.pagination.size=s[0]);return}n.editor.pagination[e]=t}},ec=[{label:"clear",name:"清空事件"},{label:"dictPicking",name:"帮助前事件"},{label:"beforeLoadData",name:"数据加载前事件"},{label:"beforeSelectData",name:"选择数据确认前事件"},{label:"dictPicked",name:"帮助后事件"}],tc=Symbol("schema_repository_token");class nc extends lt.InputBaseProperty{constructor(){super(...arguments);z(this,"comboListEditor",{type:"combo-list",enableClear:!1,editable:!1});z(this,"numberEditor",{type:"number-spinner",useThousands:!1});z(this,"readonlyEditor",{...this.comboListEditor,editable:!0});z(this,"visibleEditor",{...this.comboListEditor,editable:!1});z(this,"requiredEditor",{...this.comboListEditor,editable:!1});z(this,"freeInputEditor",{...this.comboListEditor,editable:!1})}getExpressionConfig(t,o){const r=["validate"];return t.type==="form-group"&&r.push("dataPicking"),new lt.ExpressionProperty(this.formSchemaUtils).getExpressionConfig(t,"Field",r)}getPropertyConfig(t,o,r="Card"){var y;const s=(y=t.binding)!=null&&y.field?[]:["Const","Variable","StateMachine"];this.readonlyEditor=this.getPropertyEditorParams(t,s,"readonly"),this.visibleEditor=this.getPropertyEditorParams(t,s,"visible"),this.requiredEditor=this.getPropertyEditorParams(t,s,"required"),this.freeInputEditor=this.getPropertyEditorParams(t,["Const","Variable"],"allowFreeInput");const a=this.getBasicProperties(t,o,r),l=this.getBehaviorConfig(t),d=this.getAppearanceProperties(t,o),u=this.getLookupConfig(t),p=this.getEventPropConfig(t),c=this.getDialogPropertyConfig(t),f=this.getPageConfig(t.editor),m=this.getTreePropConfig(t.editor),h=this.getExpressionConfig(t,"Field"),g={basic:a,appearance:d,behavior:l,lookup:u,treeConfig:m,dialog:c,pager:f,expressions:h};return t.type==="form-group"&&(g.eventsEditor=p),{type:"object",categories:g}}getGridFieldEdtiorPropConfig(t){return this.getPropertyConfig(t,null,"Grid").categories}flattenTreeNodes(t){return t.reduce((o,r)=>{var s;return o.push(r),(s=r.children)!=null&&s.length&&o.push(...this.flattenTreeNodes(r.children)),o},[])}isSimpleStringField(){var l;const t=((l=this.designViewModelField)==null?void 0:l.path)||"";if(!t||!t.includes("."))return!0;const o=t.split("."),r=this.designViewModelUtils.getAllFields2TreeByVMId(this.viewModelId);if(!(r!=null&&r.length))return!1;const s=r.find(d=>d.data.code===o[0]);if(!s)return!1;const a=[s,...this.flattenTreeNodes(s.children)];return!o.reduce((d,u,p)=>[...d,p?`${d[p-1]}.${u}`:u],[]).some(d=>{var u,p,c;return((c=(p=(u=a.find(f=>f.data.path===d))==null?void 0:u.data)==null?void 0:p.type)==null?void 0:c.$type)==="EntityType"})}getBehaviorConfig(t){return{description:"Basic Infomation",title:"行为",properties:{visible:{description:"运行时组件是否可见",title:"是否可见",type:"boolean",editor:this.visibleEditor}},setPropertyRelates:(o,r)=>{this.afterMutilEditorChanged(r,o)}}}changeBindingField(t,o){super.changeBindingField(t,o),t.editor.multiSelect=!1}getDisplayType(t){return t.displayType?t.displayType.toUpperCase():""}mapFieldsDisplayFormatter(t){return t&&t.length?t.map(o=>`${o.name}[${o.bindingPath}]`).join(","):""}getLookupConfig(t){const o=t.editor,r=()=>{const s=this.formSchemaUtils.getFormSchema().module.entity[0].id,a=this.formSchemaUtils.getFormMetadataBasicInfo();return{propertyData:o,formBasicInfo:a,viewModelId:s,dataSourceId:o.helpId}};return{description:"Basic Infomation",title:"编辑器",setPropertyRelates:(s,a)=>{if(s)switch(s.propertyID){case"readonly":case"required":this.afterMutilEditorChanged(a,s);break}},parentPropertyID:"editor",properties:{readonly:{description:"",title:"只读",type:"boolean",$converter:"/converter/property-editor.converter",editor:this.readonlyEditor},required:{description:"",title:"必填",type:"boolean",$converter:"/converter/property-editor.converter",editor:this.requiredEditor},placeholder:{description:"当控件没有值时在输入框中显示的文本",title:"提示文本",type:"string",$converter:je},enableTitle:{description:"鼠标悬停显示文本内容",title:"悬停提示",type:"boolean",$converter:je,editor:this.comboListEditor},editable:{description:"",title:"允许编辑",type:"boolean",$converter:je,refreshPanelAfterChanged:!0,editor:this.comboListEditor,visible:!(o.multiSelect&&o.openType==="Popup")},allowFreeInput:{description:"",title:"任意输入",type:"boolean",$converter:je,editor:this.freeInputEditor,visible:!1},enableClear:{title:"启用清除按钮",type:"boolean",$converter:je},dataSource:{description:"数据源",title:"数据源",type:"string",refreshPanelAfterChanged:!0,editor:{type:"schema-selector",title:"选择数据源",editorParams:{propertyData:o,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},displayFormatter:s=>s&&s.length?s.map(a=>`${a.name}(${a.code})`).join(","):"",viewOptions:this.formSchemaUtils.designerMode==="PC_RTC"?[{id:"total",title:"全部",type:"List",dataSource:"Total"}]:[{id:"recommend",title:"推荐",type:"List",dataSource:"Recommand",enableGroup:!0,groupField:"category",groupFormatter:(s,a)=>`${s==="local"?"本地元数据":"最近使用"}`},{id:"total",title:"全部",type:"List",dataSource:"Total"}],repositoryToken:tc,validateFunction:async s=>this.formSchemaUtils.designerMode!=="PC_RTC"?!0:this.checkSameBESource(s,t),onSubmitModal:s=>{if(s){delete o.mappingFields;const a=this.formSchemaUtils.getFormMetadataBasicInfo();return this.metadataService.getPickMetadata(a.relativePath,s[0].data).then(l=>JSON.parse(l==null?void 0:l.metadata.content))}}},$converter:Zl},filterConditions:{descriptions:"帮助过滤条件",title:"过滤条件",type:"string",$converter:je,editor:{type:"filter-condition-editor",editable:!1,displayText:"点击配置",enableClear:!1,enableExpression:!0,editorParams:{propertyData:o,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo(),viewModelId:this.formSchemaUtils.getFormSchema().module.entity[0].id},idField:"path",repositoryToken:Rt.FieldSelectorRepositoryToken,beforeOpen:async({repository:s,notifyService:a})=>{var f;if(!(o==null?void 0:o.helpId))return a==null||a.warning({message:"请先配置数据源!"}),!1;const d=r(),p=new lt.ExpressionProperty(this.formSchemaUtils).getEntitiesAndVariables();let c={};if(s){const m=await s.getData(d),h=await s.getLookupConditions(d);c={fieldList:m,conditionList:h}}return(f=p.variables)!=null&&f.forms&&(p.variables.forms.items=p.variables.forms.items.filter(m=>m.category==="remote")),{...c,...p}},onSubmitModal:async({loadingService:s,repository:a,conditions:l,originalConditions:d,FMessageBoxService:u})=>{if(a)try{const p=r(),c=await a.getLookupConditions(p)||[];return JSON.stringify(c)!==JSON.stringify(d.value)?(s==null||s.clearAll(),u.question("视图对象中的帮助过滤条件已更改,请点击确定同步过滤数据","",()=>{l.value=c,d.value=JSON.parse(JSON.stringify(l.value))},()=>{}),!1):(JSON.stringify(l.value)===JSON.stringify(d.value)||await a.saveFilterCondition(l.value,p,this.formSchemaUtils.getFormMetadataBasicInfo()),!0)}catch{return u==null||u.error("保存失败",""),!1}finally{s==null||s.clearAll()}}},visible:!!o.helpId},displayType:{description:"类型: 树列表、列表、双列表、左树右列表",title:"展示类型",type:"string",$converter:Kl,editor:{type:"combo-list",editable:!1,disabled:!0,data:[{text:"列表",value:"LIST"},{text:"树列表",value:"TREELIST"},{text:"双列表",value:"NAVLIST"},{text:"左树右列表",value:"NAVTREELIST"}],textField:"text",idField:"value",valueField:"value"}},idField:{description:"数据源标识字段",title:"标识字段",type:"string",editor:{type:"field-selector",textField:"bindingPath",idField:"bindingPath",disabled:!0,editorParams:{propertyData:o,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},columns:[{field:"name",title:"名称"},{field:"code",title:"编号"},{field:"bindingPath",title:"绑定字段"}],repositoryToken:Rt.FieldSelectorRepositoryToken},$converter:Jl},textField:{description:"显示文本字段",title:"文本字段",type:"string",$converter:Ql,editor:{type:"field-selector",textField:"bindingPath",idField:"bindingPath",editorParams:{propertyData:o,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},columns:[{field:"name",title:"名称"},{field:"code",title:"编号"},{field:"bindingPath",title:"绑定字段"}],repositoryToken:Rt.FieldSelectorRepositoryToken}},mappingFields:{description:"字段映射",title:"字段映射",type:"string",$converter:je,editor:{type:"mapping-editor",modalWidth:800,modalHeight:600,editable:!1,editorParams:{propertyData:o,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},fromData:{editable:!0,formatter:(s,a)=>`${a.raw.name} [${a.raw.bindingPath}]`,idField:"bindingPath",textField:"name",valueField:"bindingPath",searchFields:["name","bindingPath"],repositoryToken:Rt.FieldSelectorRepositoryToken,displayFormatter:this.mapFieldsDisplayFormatter},toData:{editable:!1,idField:"bindingPath",textField:"name",valueField:"bindingPath",searchFields:["name","bindingPath"],dataSource:()=>{const s=this.designViewModelUtils.getAllFields2TreeByVMId(this.viewModelId),a=this.schemaService.getPrimaryField();return a?s.filter(l=>l.data.bindingPath!==a):s},formatter:(s,a)=>`${a.raw.name} [${a.raw.bindingPath}]`,displayFormatter:this.mapFieldsDisplayFormatter}}},enableToSelect:{description:"数据加载后是否选中现有值",$converter:je,title:"选中已选值",type:"boolean",editor:this.comboListEditor},multiSelect:{description:"启用多选",$converter:je,title:"启用多选",type:"boolean",editor:this.comboListEditor,refreshPanelAfterChanged:!0,visible:this.isSimpleStringField()},showSelections:{description:"显示已选记录",$converter:je,title:"显示已选记录",type:"boolean",visible:!!o.multiSelect&&o.openType!=="Popup"},separator:{description:"多选分隔符",$converter:je,title:"多选分隔符",type:"string",editor:{type:"combo-list",editable:!1,disabled:!1,data:[{text:",",value:","},{text:"|",value:"|"},{text:"#",value:"#"}],textField:"text",idField:"value",valueField:"value",separator:"@"},visible:!!o.multiSelect},enableSearchBar:{description:"显示搜索工具条",$converter:je,refreshPanelAfterChanged:!0,title:"启用搜索框",type:"boolean",visible:!1},searchAnyField:{description:"显示所有列",$converter:je,title:"允许查询所有列",type:"boolean",visible:o.openType!=="Popup"&&o.enableSearchBar==null?!0:!!o.enableSearchBar},enableFavorite:{description:"启用收藏夹",$converter:je,title:"启用收藏夹",type:"boolean",visible:o.openType!=="Popup"},enableUserData:{description:"保存界面状态",$converter:je,refreshPanelAfterChanged:!0,title:"保存界面状态",type:"boolean",visible:o.openType!=="Popup"}}}}showNavigatiorWidth(t){return this.getDisplayType(t).startsWith("NAV")&&t.openType!=="Popup"?t.showNavigation===void 0?!0:!!t.showNavigation:!1}getDialogPropertyConfig(t){var o,r,s,a;return{description:"帮助窗口尺寸配置",title:"帮助窗口",parentPropertyID:"dialog",properties:{openType:{description:"窗口展示方式:弹出窗口、下拉面板",title:"打开方式",type:"string",$converter:je,refreshPanelAfterChanged:!0,editor:{...this.comboListEditor,data:[{text:"弹出窗口",value:"Modal"},{text:"下拉面板",value:"Popup"}],valueField:"value",textField:"text",idField:"value"},visible:!0},title:{description:"帮助标题",title:"标题",type:"string",$converter:pt,visible:t.editor.openType!=="Popup"},width:{description:"窗口宽度,最小值:300px,最大值:3000px",title:"宽度",type:"number",refreshPanelAfterChanged:!0,$converter:pt,editor:{...this.numberEditor,min:this.showNavigatiorWidth(t.editor)?520:300,max:9999}},height:{description:"窗口高度,最小值:200px,最大值:2000px",title:"高度",type:"number",$converter:pt,editor:{...this.numberEditor,min:200,max:9999}},showNavigation:{description:"显示导航栏",$converter:je,refreshPanelAfterChanged:!0,title:"显示导航栏",type:"boolean",visible:this.getDisplayType(t.editor).includes("NAV")&&t.editor.openType!=="Popup"},navigatorWidth:{description:"导航栏宽度,最小200px, 最大为窗口宽度减去200px",title:"导航栏宽度",type:"number",$converter:pt,visible:this.showNavigatiorWidth(t.editor)&&t.editor.openType!=="Popup",editor:{...this.numberEditor,min:200,max:(((r=(o=t.editor)==null?void 0:o.dialog)==null?void 0:r.width)??960)-200}},resizeable:{description:"允许鼠标拖拽窗口边缘调整尺寸",title:"允许调整窗口尺寸",type:"boolean",$converter:pt,refreshPanelAfterChanged:!0,visible:t.editor.openType!=="Popup"},rememberSize:{description:"记录窗口尺寸",title:"记录窗口尺寸",type:"boolean",$converter:pt,visible:!!t.editor.enableUserData&&(((a=(s=t.editor)==null?void 0:s.dialog)==null?void 0:a.resizeable)??!0)&&t.editor.openType!=="Popup"},enableEsc:{description:"允许ESC关闭",title:"允许ESC关闭",type:"boolean",$converter:pt,visible:t.editor.openType!=="Popup"},showMaxButton:{description:"显示最大化按钮",title:"显示最大化按钮",type:"boolean",$converter:pt,visible:t.editor.openType!=="Popup"},showCloseButton:{description:"显示关闭按钮",title:"显示关闭按钮",type:"boolean",$converter:pt,visible:t.editor.openType!=="Popup"}}}}showPagerProperty(t,o){const r=this.getDisplayType(t)!=="TREELIST"||t.treeToList;return o&&r?t.pagination&&t.pagination[o]:r}getPageConfig(t){var r,s,a,l;const o=!((r=t.pagination)!=null&&r.enable);return{hide:this.getDisplayType(t)==="TREELIST"||!t.helpId||o,description:"分页配置",title:"分页",parentPropertyID:"pagination",properties:{showLimits:{description:"显示每页条数选择器",title:"显示条数选择器",type:"boolean",refreshPanelAfterChanged:!0,$converter:un,visible:this.showPagerProperty(t)},sizeLimits:{description:"每页可显示条数",title:"每页显示条数",type:"array",$converter:un,refreshPanelAfterChanged:!0,visible:this.showPagerProperty(t,"showLimits"),editor:{columns:[{field:"value",title:"显示条数",dataType:"number",editor:{...this.numberEditor,min:10,max:1e4}}],title:"每页显示条数编辑器",modalWidth:400,modalHeight:500,type:"item-collection-editor",valueField:"value",nameField:"value",requiredFields:["value"],uniqueFields:["value"],modelValue:Qt((s=t.pagination)==null?void 0:s.sizeLimits),beforeSubmit:({notifyService:d,data:u})=>!u||!u.length?(d==null||d.warning({message:"每页显示条数不能为空!"}),!1):new Set(u.map(c=>parseInt(c.value,10))).size===u.length?!0:(d==null||d.warning({message:"每页显示条数不能重复!"}),!1)}},size:{description:"默认显示条数",title:"默认显示条数",type:"number",visible:this.showPagerProperty(t),$converter:un,editor:{...this.comboListEditor,data:Qt((a=t.pagination)==null?void 0:a.sizeLimits),textField:"value",idField:"value",valueField:"value",modelValue:(l=t.pagination)==null?void 0:l.size}}}}}showLoadType(t){const o=this.getDisplayType(t);return(o==="TREELIST"||o==="NAVTREELIST")&&!t.treeToList&&!t.navTreeToList}isTree(t){return this.getDisplayType(t)==="TREELIST"&&!t.treeToList}getTreePropConfig(t){return{hide:this.getDisplayType(t)!=="TREELIST"&&this.getDisplayType(t)!=="NAVTREELIST",description:"树形数据配置",title:"树形数据配置",parentPropertyID:"editor",properties:{treeToList:{description:"以列表的形式展示树结构数据",$converter:je,refreshPanelAfterChanged:!0,title:"以列表形式展示",type:"boolean",visible:this.getDisplayType(t)==="TREELIST"},navTreeToList:{description:"以列表的形式展示树结构数据",$converter:je,refreshPanelAfterChanged:!0,title:"以列表形式展示",type:"boolean",visible:this.getDisplayType(t)==="NAVTREELIST"},loadTreeDataType:{description:"树形数据加载方式",$converter:je,title:"数据加载方式",type:"string",editor:{...this.comboListEditor,data:[{value:"default",text:"默认"},{value:"all",text:"全部加载"},{value:"async",text:"分层加载"}],textField:"text",valueField:"value"},visible:this.showLoadType(t)},enableFullTree:{description:"启用构造完整树",$converter:je,title:"构造完整树",type:"boolean",visible:this.showLoadType(t)},onlySelectLeaf:{description:"仅选择叶子节点",$converter:je,title:"仅选择叶子节点",type:"boolean",visible:this.isTree(t)},enableCascade:{description:"启用级联选择",$converter:je,refreshPanelAfterChanged:!0,title:"启用级联选择",type:"boolean",visible:this.isTree(t)&&!!t.multiSelect&&t.openType!=="Popup"},showCascadeControl:{description:"是否在界面中显示级联状态",$converter:je,title:"显示级联状态",type:"boolean",visible:!1},cascadeValue:{description:"缺省级联选择模式",$converter:je,title:"缺省级联选择模式",type:"string",visible:!!t.enableCascade&&this.isTree(t),editor:{...this.comboListEditor,data:Dl,textField:"text",valueField:"value"}},expandLevel:{description:"默认展开层级: 0: 不展开; -1: 全部展开;>0: 展开到指定级数 ",$converter:je,title:"默认展开层级",type:"number",visible:this.showLoadType(t),editor:{...this.numberEditor,min:-1,max:99}}}}}getEventPropConfig(t){const o=this;let r=ec;t.editor.openType==="Popup"&&(r=r.filter(l=>l.label!=="beforeSelectData"));const s=o.eventsEditorUtils.formProperties(t,o.viewModelId,r);return{title:"事件",hideTitle:!0,properties:o.createBaseEventProperty(s),refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(l,d){const u=l.propertyValue;delete d[o.viewModelId],u&&o.eventsEditorUtils.saveRelatedParameters(d,o.viewModelId,u.events,u);const p=o.designViewModelUtils.getDgViewModel(o.viewModelId);p&&o.designViewModelField&&p.changeField(o.designViewModelField.id,{valueChanging:d.fieldValueChanging,valueChanged:d.fieldValueChanged})}}}async checkSameBESource(t,o){var r,s,a,l,d;if(t&&((r=o==null?void 0:o.editor)!=null&&r.helpId)&&!o.isRtcControl){if(t.data.id===o.editor.helpId)return!0;const u=await this.metadataService.getPickMetadata("",t.data).then(g=>{var y;if((y=g==null?void 0:g.metadata)!=null&&y.content)return JSON.parse(g.metadata.content)}),p=await this.metadataService.getPickMetadata("",{id:o.editor.helpId}).then(g=>{var y;if((y=g==null?void 0:g.metadata)!=null&&y.content)return JSON.parse(g.metadata.content)}),c=(s=u==null?void 0:u.dataSource)==null?void 0:s.sourceType,f=(a=p.dataSource)==null?void 0:a.sourceType,m=(l=u==null?void 0:u.dataSource)==null?void 0:l.sourceId,h=(d=p==null?void 0:p.dataSource)==null?void 0:d.sourceId;if(c==="BE"&&f==="BE"&&m!==h)return new bn.FNotifyService().error({message:"只允许更换同数据源的帮助元数据",position:"top-center"}),!1}return!0}}class oc extends Bt{constructor(e,t){super(e,t)}getEditorProperties(e){return this.getComponentConfig(e,{type:"number-range"},{editable:{description:"",title:"允许编辑",type:"boolean"}})}}class ic extends Bt{constructor(e,t){super(e,t)}getEditorProperties(e){var r,s,a,l,d,u,p,c;let t;if(((r=e==null?void 0:e.binding)==null?void 0:r.type)==="Form"){const f=this.schemaService.getFieldByIDAndVMID(e.binding.field,this.viewModelId);(s=f==null?void 0:f.schemaField)!=null&&s.type&&(t=f.schemaField.type.precision)}return this.getComponentConfig(e,{type:"number-spinner"},{precision:{description:"",title:"精度",type:"number",editor:{readonly:t===0,min:0,max:t},refreshPanelAfterChanged:!0},step:{description:"",title:"步长",type:"number",editor:{min:0,precision:(a=e==null?void 0:e.editor)==null?void 0:a.precision}},min:{description:"",title:"最小值",type:"number",editor:{nullable:!0,max:(l=e==null?void 0:e.editor)==null?void 0:l.max,precision:(d=e==null?void 0:e.editor)==null?void 0:d.precision},refreshPanelAfterChanged:!0},max:{description:"",title:"最大值",type:"number",editor:{nullable:!0,min:((u=e==null?void 0:e.editor)==null?void 0:u.min)===void 0||(p=e==null?void 0:e.editor)==null?void 0:p.min,precision:(c=e==null?void 0:e.editor)==null?void 0:c.precision},refreshPanelAfterChanged:!0},textAlign:{description:"",title:"对齐方式",type:"enum",editor:{editable:!1,data:[{id:"left",name:"左对齐"},{id:"center",name:"居中"},{id:"right",name:"右对齐"}]}}},function(f,m,h){if(f)switch(f.propertyID){case"precision":{m.formatter&&(m.formatter.precision=f.propertyValue);break}}})}changeBindingField(e,t,o){var s;super.changeBindingField(e,t);const r=o;e.editor&&((s=r==null?void 0:r.type)==null?void 0:s.name)===fe.FormSchemaEntityFieldTypeName.Number&&(e.editor.precision=r.type.precision)}}class rc extends Bt{constructor(e,t){super(e,t)}getEditorProperties(e){const t=this;return t.getComponentConfig(e,{type:"radio-group"},{disabled:{visible:!1},placeholder:{visible:!1},direction:{description:"",title:"排列方向",type:"enum",editor:{data:[{id:"horizontal",name:"横向"},{id:"vertical",name:"纵向"}]}},dataSourceType:{description:"",title:"数据源类型",type:"enum",visible:!1,editor:{default:"static",data:[{id:"static",name:"静态"},{id:"dynamic",name:"动态"}]},refreshPanelAfterChanged:!0},data:{description:"",title:"数据",type:"array",visible:!e.editor.dataSourceType||e.editor.dataSourceType==="static",...t.getItemCollectionEditor(e,e.editor.valueField,e.editor.textField),refreshPanelAfterChanged:!0},bindDataSource:{description:"",title:"绑定数据源",type:"string",visible:e.editor.dataSourceType==="dynamic"},textField:{description:"",title:"文本字段",type:"string",readonly:e.editor.dataSourceType!=="dynamic"},valueField:{description:"",title:"值字段",type:"string",readonly:e.editor.dataSourceType!=="dynamic"}},this.setEditorPropertyRelates)}setEditorPropertyRelates(e,t,o){if(!e||!t.editor)return;const r=this;switch(e.propertyID){case"dataSourceType":{e.propertyValue==="static"&&(t.editor.valueField="value",t.editor.textField="name");break}case"data":{!r.checkEnumDataReadonly(t)&&t.formatter&&(t.formatter.data=[...e.propertyValue]);break}}}changeBindingField(e,t,o){var s;super.changeBindingField(e,t);const r=o;e.editor&&((s=r==null?void 0:r.type)==null?void 0:s.$type)===fe.FormSchemaEntityFieldType$Type.EnumType&&(e.editor.data=r.type.enumValues||[])}}class ac extends lt.InputBaseProperty{constructor(e,t){super(e,t)}getEditorProperties(e){var t,o;return this.getComponentConfig(e,{type:"switch"},{disabled:{visible:!1},placeholder:{visible:!1},onLabel:{description:"",title:"打开标签",type:"string"},offLabel:{description:"",title:"关闭标签",type:"string"},onBackground:{description:"值可以是颜色或者16进制颜色字符串,比如:blue或者#2A87FF",title:"打开背景色",type:"string"},offBackground:{description:"值可以是颜色或者16进制颜色字符串,比如:gray或者#D9DEE7",title:"关闭背景色",type:"string"},size:{description:"",title:"尺寸",type:"enum",editor:{data:[{id:"small",name:"小号"},{id:"medium",name:"中号"},{id:"large",name:"大号"}]}},trueValue:{description:"打开时的值",title:"打开的值",type:this.getBindingDataType(),visible:((t=this.designViewModelField)==null?void 0:t.type.name)!=="Boolean",refreshPanelAfterChanged:!0,editor:this.getEditor(),$converter:this.getBooleanValueConverter()},falseValue:{description:"关闭时的值",title:"关闭的值",type:this.getBindingDataType(),visible:((o=this.designViewModelField)==null?void 0:o.type.name)!=="Boolean",refreshPanelAfterChanged:!0,editor:this.getEditor(),$converter:this.getBooleanValueConverter()}})}changeBindingField(e,t,o){var s;super.changeBindingField(e,t);const r=o;if(e.editor&&((s=r==null?void 0:r.type)!=null&&s.name)){let a,l;r.type.name===fe.FormSchemaEntityFieldTypeName.String&&(a="true",l="false"),r.type.name===fe.FormSchemaEntityFieldTypeName.Number&&(a=1,l=0),!Object.prototype.hasOwnProperty.call(e.editor,"trueValue")&&a!==void 0&&(e.editor.trueValue=a),!Object.prototype.hasOwnProperty.call(e.editor,"falseValue")&&l!==void 0&&(e.editor.falseValue=l)}}}class sc extends Bt{constructor(e,t){super(e,t)}getEditorProperties(e){return this.getComponentConfig(e,{type:"time-picker"},{editable:{description:"",title:"允许编辑",type:"boolean"},use12Hours:{description:"",title:"是否使用12小时制",type:"boolean",refreshPanelAfterChanged:!0},format:{description:"",title:"格式",type:"enum",editor:{type:"combo-list",textField:"name",valueField:"value",data:e.editor.use12Hours?[{value:"hh:mm:ss",name:"hh:mm:ss"},{value:"hh:mm",name:"hh:mm"}]:[{value:"HH:mm:ss",name:"HH:mm:ss"},{value:"HH:mm",name:"HH:mm"}]}},showHeader:{description:"",title:"是否显示时分秒标题",type:"boolean"},hourStep:{description:"",title:"时步长",type:"number",editor:{min:1,max:12,useThousands:!1}},minuteStep:{description:"",title:"分步长",type:"number",editor:{min:1,max:30,useThousands:!1}},secondStep:{description:"",title:"秒步长",type:"number",editor:{min:1,max:30,useThousands:!1}}},(t,o)=>{t.propertyID==="use12Hours"&&(o.editor.format=o.editor.format||"hh:mm:ss",o.editor.format=t.propertyValue?o.editor.format.replace("HH","hh"):o.editor.format.replace("hh","HH"))})}}class lc extends lt.InputBaseProperty{constructor(e,t){super(e,t)}}class cc extends Ut{constructor(t,o){super(t,o);z(this,"dataGridProps",null);z(this,"notifyService",new bn.FNotifyService)}getPropertyConfig(t,o){var l,d;this.dataGridProps=o,this.getBasicPropConfig(t),this.getAppearanceProperties(t,o);const s={formatterEnumData:{description:"",title:"数据",type:"array",visible:!!(((l=t.formatter)==null?void 0:l.type)==="enum"&&!t.editor),$converter:"/converter/change-formatter-enum.converter",...this.getItemCollectionEditor(t,"value","name"),refreshPanelAfterChanged:!0}},a=(u,p)=>{if(u)switch(u.propertyID){case"formatterEnumData":{t.formatter&&(t.formatter.data=[...u.propertyValue]);break}}};return this.propertyConfig.categories.behavior=this.getBehaviorConfig(t,"gridFieldEditor",s,a),this.getFieldEditorProperties(t,o),t.dataType!=="date"&&t.dataType!=="datetime"&&((d=t.formatter)==null?void 0:d.type)!=="multilingual"&&(this.propertyConfig.categories.formatter=this.getTemplateProperties(t)),this.propertyConfig}getItemCollectionEditor(t,o,r){const s=o||"value",a=r||"name";return{editor:{columns:[{field:s,title:"值",dataType:"string"},{field:a,title:"名称",dataType:"string"}],type:"item-collection-editor",valueField:s,nameField:a,requiredFields:[s,a],uniqueFields:[s,a],readonly:this.checkEnumDataReadonly(t)}}}checkEnumDataReadonly(t){return!t.binding||t.binding.type!=="Form"?!1:!!(this.designViewModelField&&this.designViewModelField.type&&this.designViewModelField.type.$type===fe.FormSchemaEntityFieldType$Type.EnumType)}getEventPropConfig(t){const o=[{label:"onClickLinkCommand",name:"超链接事件"}],r=this,s=r.eventsEditorUtils.formProperties(t,r.viewModelId,o),a=r.createBaseEventProperty(s);this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:a,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(l,d){var p;const u=l.propertyValue;delete t[r.viewModelId],u&&(u.setPropertyRelates=this.setPropertyRelates,r.eventsEditorUtils.saveRelatedParameters(t,r.viewModelId,u.events,u)),t.remoteSort=!!t.columnSorted,t.onClickLinkCommand&&!t.onClickLinkCommand.includes("communication:")&&(t.columnTemplate=`<span class="f-pretend-link f-cursor-pointer"
|
|
21
21
|
@click="(ctx)=>viewModel.current.${t.onClickLinkCommand}({id: rowData.id,context: ctx})">
|
|
22
22
|
{{rowData.${t.field}}}
|
|
23
23
|
</span>`,(p=r.getFormDesignerInstance())==null||p.reloadPropertyPanel())}}}getBasicPropConfig(t){const o=this;this.propertyConfig.categories.basic={description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},title:{description:"标题",title:"标题",type:"string"},binding:{description:"绑定的表单字段",title:"绑定",editor:{type:"binding-selector",bindingType:{enable:!1},editorParams:{componentSchema:t,needSyncToViewModel:!0,viewModelId:this.viewModelId,designerHostService:this.designerHostService,disableOccupiedFields:!0},textField:"bindingField"},refreshPanelAfterChanged:!0}},setPropertyRelates(r,s,a){if(r)switch(r&&r.propertyID){case"binding":{o.afterChangeBindingType(t,a),r.needRefreshEntityTree=!0;break}}}}}getAppearanceProperties(t,o){var s,a;const r=this;this.propertyConfig.categories.appearance={description:"",title:"外观",properties:{resizable:{description:"允许拖拽改变列宽",title:"拖拽改变列宽",type:"boolean"},width:{description:"列宽",title:"列宽",type:"number"},showTips:{description:"启用鼠标悬浮提示",title:"鼠标悬浮提示",type:"boolean"},halign:{description:"标题对齐方式",title:"标题对齐方式",type:"enum",editor:{data:[{id:"left",name:"左对齐"},{id:"center",name:"居中"},{id:"right",name:"右对齐"}]}},align:{description:"数据水平对齐方式选择",title:"数据水平对齐方式",type:"enum",editor:{data:[{id:"left",name:"左对齐"},{id:"center",name:"居中"},{id:"right",name:"右对齐"}]}},valign:{description:"数据垂直对齐方式选择",title:"数据垂直对齐方式",type:"enum",editor:{data:[{id:"top",name:"顶对齐"},{id:"middle",name:"居中"},{id:"bottom",name:"底对齐"}]}},columnTemplate:{description:"列模板",title:"列模板",type:"string",refreshPanelAfterChanged:!0,editor:{type:"code-editor",language:"html"}},summaryType:{description:"合计类型",title:"合计类型",visible:!!((a=(s=this.dataGridProps)==null?void 0:s.summary)!=null&&a.enable)&&t.dataType==="number",type:"enum",editor:{data:[{id:"none",name:"无"},{id:"sum",name:"求和"}]},refreshPanelAfterChanged:!0}},setPropertyRelates(l,d,u){if(l)switch(l&&l.propertyID){case"width":{d.actualWidth=l.propertyValue;break}case"summaryType":{const{groupFields:p}=o.summary;!p.includes(d.field)&&l.propertyValue==="sum"&&p.push(d.field),p.includes(d.field)&&l.propertyValue==="none"&&p.splice(p.indexOf(d.field),1);break}case"columnTemplate":{l.propertyValue&&r.notifyService.warning({position:"top-center",message:"注意:已自定义列模板,【列格式化】【悬浮提示】【数据水平对齐方式】【数据垂直对齐方式】等列属性会失效"});break}}}}}getFieldEditorProperties(t,o){o.fieldEditable&&t.editor&&this.getFieldEditorProp(t)}setFormatterEnumData(t){var o,r;(o=t.formatter)!=null&&o.data&&!t.formatterEnumData&&(t.formatterEnumData=(r=t.formatter)==null?void 0:r.data)}getTemplateProperties(t){const o=this,r=Object.prototype.hasOwnProperty;return{title:"列格式化",description:"",properties:{type:{description:"",title:"类型",type:"enum",$converter:"/converter/change-formatter.converter",refreshPanelAfterChanged:!0,editor:{data:{enum:[{id:"enum",name:"枚举"},{id:"none",name:"无"}],boolean:[{id:"boolean",name:"布尔"},{id:"none",name:"无"}],number:[{id:"number",name:"数字"},{id:"none",name:"无"}],date:[{id:"date",name:"日期"},{id:"none",name:"无"}],string:[{id:"enum",name:"枚举"},{id:"none",name:"无"}]}[t.dataType]}},trueText:{title:"布尔为true时文本",$converter:"/converter/change-formatter.converter",type:"string",visible:!!t.formatter&&t.formatter.type==="boolean",refreshPanelAfterChanged:!0,description:"布尔为true时文本"},falseText:{title:"布尔为false时文本",$converter:"/converter/change-formatter.converter",type:"string",visible:!!t.formatter&&t.formatter.type==="boolean",refreshPanelAfterChanged:!0,description:"布尔为false时文本"},prefix:{title:"前缀",$converter:"/converter/change-formatter.converter",type:"string",visible:!!t.formatter&&t.formatter.type==="number",refreshPanelAfterChanged:!0,description:"前缀"},suffix:{title:"后缀",$converter:"/converter/change-formatter.converter",type:"string",visible:!!t.formatter&&t.formatter.type==="number",refreshPanelAfterChanged:!0,description:"后缀"},precision:{title:"精度",$converter:"/converter/change-formatter.converter",type:"number",visible:!!t.formatter&&t.formatter.type==="number",refreshPanelAfterChanged:!0,description:"精度"},decimal:{title:"小数分隔符",$converter:"/converter/change-formatter.converter",type:"string",visible:!!t.formatter&&t.formatter.type==="number",refreshPanelAfterChanged:!0,description:"小数分隔符"},thousand:{title:"千分位",$converter:"/converter/change-formatter.converter",type:"string",visible:!!t.formatter&&t.formatter.type==="number",refreshPanelAfterChanged:!0,description:"千分位"}},setPropertyRelates(a,l,d){if(a)switch(a&&a.propertyID){case"type":{a.propertyValue!=="none"&&l.columnTemplate&&(l.columnTemplate="",o.notifyService.warning({position:"top-center",message:"注意:已设置列格式化,【列模板】被清空且会失效"})),a.propertyValue==="boolean"&&(r.call(l.formatter,"trueText")||(l.formatter.trueText="是"),r.call(l.formatter,"falseText")||(l.formatter.falseText="否")),a.propertyValue==="number"&&(r.call(l.formatter,"prefix")||(l.formatter.prefix=""),r.call(l.formatter,"suffix")||(l.formatter.suffix=""),r.call(l.formatter,"precision")||(l.formatter.precision=0),r.call(l.formatter,"decimal")||(l.formatter.decimal="."),r.call(l.formatter,"thousand")||(l.formatter.thousand=",")),a.propertyValue==="date"&&(r.call(l.formatter,"dateFormat")||(l.formatter.dateFormat="yyyy-MM-dd")),a.propertyValue==="enum"&&(r.call(l.formatter,"data")||(l.formatter.data=[]));break}}}}}getFieldEditorProp(t,o="gridFieldEditor",r=!1){const s=this.formMetadataConverter.getRealEditorType(t.editor.type);let a;switch(s){case"avatar":a=new Ll(this.componentId,this.designerHostService);break;case"check-group":a=new Al(this.componentId,this.designerHostService);break;case"check-box":a=new Hl(this.componentId,this.designerHostService);break;case"combo-list":a=new Wl(this.componentId,this.designerHostService);break;case"date-picker":a=new zl(this.componentId,this.designerHostService);break;case"lookup":a=new nc(this.componentId,this.designerHostService);break;case"number-range":a=new oc(this.componentId,this.designerHostService);break;case"number-spinner":a=new ic(this.componentId,this.designerHostService);break;case"radio-group":a=new rc(this.componentId,this.designerHostService);break;case"switch":a=new ac(this.componentId,this.designerHostService);break;case"textarea":a=new ql(this.componentId,this.designerHostService);break;case"time-picker":a=new sc(this.componentId,this.designerHostService);break;case"language-textbox":a=new lc(this.componentId,this.designerHostService);break;default:a=new Va(this.componentId,this.designerHostService)}this.setDesignViewModelField(t);const l=this,{canChangeControlType:d,editorTypeList:u}=this.getAvailableEditorType(t);this.propertyConfig.categories[`${o}_editorType`]={description:"",title:"编辑器类型",propertyData:t.editor,tabId:"gridFieldEditor",tabName:"编辑器",properties:{type:{description:"",title:"编辑器类型",type:"enum",$converter:"/converter/change-editor.converter",parentPropertyID:"editor",refreshPanelAfterChanged:!0,editor:{type:"combo-list",textField:"value",valueField:"key",idField:"key",data:u,readonly:!d}}},setPropertyRelates(f,m){if(f)switch(f&&f.propertyID){case"type":{l.changeFieldEditorType(t,f.propertyValue);break}}}};const p=["id","type","class","style","binding","label","responseLayout","visible"],c=a.getGridFieldEdtiorPropConfig(t);Object.keys(c).map(f=>{const m=c[f],h={};if(Object.keys(m.properties).map(g=>{p.findIndex(y=>y===g)===-1&&m.properties[g]!==!1&&(h[g]=m.properties[g])}),Object.keys(h).length!==0){const g=m==null?void 0:m.title,y="gridFieldEditor",w="编辑器",x=m==null?void 0:m.description,C=(m==null?void 0:m.$converter)||"";l.propertyConfig.categories[o+"_"+f]={title:g,hide:Object.prototype.hasOwnProperty.call(m,"hide")?m.hide:!1,hideTitle:Object.prototype.hasOwnProperty.call(m,"hideTitle")?m.hideTitle:!1,tabId:m.tabId||y,tabName:m.tabName||w,description:x,$converter:C,parentPropertyID:"editor",propertyData:t,properties:h,setPropertyRelates:m==null?void 0:m.setPropertyRelates}}})}changeFieldEditorType(t,o){const r=this.designViewModelUtils.getDgViewModel(this.viewModelId);r.changeField(this.designViewModelField.id,{editor:{$type:o},name:this.designViewModelField.name,require:this.designViewModelField.require,readonly:this.designViewModelField.readonly},!1);const s=this.formSchemaUtils.getComponentByViewModelId(this.viewModelId),a=this.formSchemaUtils.selectNode(s,c=>c.type===ee["data-grid"].type||c.type===ee["tree-grid"].type);if(!a)return;const l=r.fields.find(c=>c.id===this.designViewModelField.id),d=this.controlCreatorUtils.setGridFieldProperty(o,l,null,!0),u=Object.prototype.hasOwnProperty.call(a,"columns")?a.columns:a.fields,p=u.findIndex(c=>c.id===t.id);if(p>-1&&u[p].editor){const c={};["readonly","required","placeholder"].map(f=>{Object.prototype.hasOwnProperty.call(u[p].editor,f)&&(c[f]=u[p].editor[f])}),u[p].editor=Object.assign(d.editor,c)}Object.assign(u[p],{dataType:d.dataType},d.formatter?{formatter:d.formatter}:{}),!d.formatter&&u[p].formatter&&delete u[p].formatter}checkCanChangeControlType(t,o){return!(!t.binding||!this.designViewModelField||this.designViewModelField.$type!==fe.FormSchemaEntityField$Type.SimpleField)}getAvailableEditorType(t){var s;const o=this.checkCanChangeControlType(t,this.viewModelId);if(!o)return{canChangeControlType:!1,editorTypeList:[{key:t.editor.type,value:((s=ee[t.editor.type])==null?void 0:s.name)||t.editor.type}]};let r=[];return this.designViewModelField&&this.designViewModelField.$type===fe.FormSchemaEntityField$Type.SimpleField&&(r=Ht.getEditorTypesByMDataType(this.designViewModelField.type.name,this.designViewModelField.multiLanguage,t.type)),{canChangeControlType:o,editorTypeList:r}}afterChangeBindingType(t,o){!t||!o||(t.dataType=this.controlCreatorUtils.mapControlType2GridFieldType(o),this.controlCreatorUtils.setGridFieldFormatter(t.dataType,t,o))}}function dc(n,e,t){const o=n.schema,r=i.ref(!0),s=i.ref(!0);function a(f){return!1}function l(){return!1}function d(){return!1}function u(){return!0}function p(f){var g,y;const m=new cc(f,e),h=(g=n==null?void 0:n.parent)==null?void 0:g.schema;return h!=null&&h.groupFields&&h!=null&&h.groupFields.includes(o.field)&&(o.enableSummary=!0),m.getPropertyConfig(o,(y=n==null?void 0:n.parent)==null?void 0:y.schema)}function c(){var y,w;if(!e||!n)return;const{formSchemaUtils:f}=e;let m=ee["data-grid"].name||"表格";const h=f.getControlBasicInfoMap(),g=h.get((w=(y=n.parent)==null?void 0:y.schema)==null?void 0:w.id);g&&g.parentPathName&&(m=g.parentPathName),h.set(o.id,{showName:o.title,parentPathName:`${m} > ${o.title}`,reliedComponentId:g.reliedComponentId})}return{canAccepts:a,checkCanDeleteComponent:l,checkCanMoveComponent:d,hideNestedPaddingInDesginerView:u,triggerBelongedComponentToMoveWhenMoved:r,triggerBelongedComponentToDeleteWhenDeleted:s,getPropsConfig:p,setComponentBasicInfoMap:c}}const zo=i.defineComponent({name:"FDataGridColumnDesign",props:dn,emits:[],setup(n,e){const t=i.ref(),o=i.inject("designer-host-service"),r=i.inject("design-item-context");i.inject("data-grid-context");const s=dc(r,o),a=rn(t,r,s);i.onMounted(()=>{t.value.componentInstance=a}),e.expose(a.value);function l(c){var f;(f=r==null?void 0:r.setupContext)==null||f.emit("selectionChange",a.value.schema,r.schema,n.componentId,a.value)}const{checkBindingFieldValidation:d}=is(o,r,n),p=!i.inject("external-container-id");return()=>{var h;const c=p?d():!0,f="绑定信息已失效,请手动移除列",m=c?"":"color:red";return i.createVNode(i.Fragment,null,[c?"":i.createVNode("span",{class:"f-icon f-icon-warning mr-1",style:"color: red; min-width: 16px;",title:f},null),i.createVNode("span",{class:"fv-column-title",style:m,ref:t,onClick:g=>l()},[((h=n.editor)==null?void 0:h.required)===!0&&i.createVNode("span",{class:"text-danger"},[i.createTextVNode("*")]),n.title])])}}}),uc={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/data-grid.schema.json",title:"data-grid",description:"A Farris Data Grid Component",type:"object",properties:{id:{description:"The unique identifier for a Input Group",type:"string"},type:{description:"The type string of Input Group component",type:"string",default:"data-grid"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},fit:{type:"boolean",default:!1},showStripe:{type:"boolean",default:!0},showBorder:{type:"boolean",default:!1},showSetting:{type:"boolean",default:!1},size:{description:"",type:"object",properties:{width:{type:"number"},height:{type:"number"}},default:null},dataSource:{description:"",type:"string",default:""},columns:{description:"",type:"array",default:[]},identifyField:{description:"",type:"string"},editable:{description:"",type:"boolean",default:!1},disabled:{description:"",type:"boolean",default:!1},visible:{description:"",type:"boolean",default:!0},fieldEditable:{description:"是否可编辑",type:"boolean",default:!1},cell:{type:"object",properties:{highlightFocusingCell:{description:"",type:"boolean",default:!1},mergeCell:{description:"",type:"boolean",default:!1},showEditableIcon:{description:"",type:"boolean",default:!1}}},column:{type:"object",properties:{fitColumns:{description:"",type:"boolean",default:!1},fitMode:{description:"",type:"string",default:"average"},groups:{description:"",type:"array",default:[]},reorderColumn:{description:"Enable to drag column to reorder",type:"boolean",default:!1},resizeColumn:{type:"boolean",default:!0},resizeColumnOnDoubleClick:{description:"",type:"boolean",default:!0}}},command:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},commands:{type:"array",default:[{text:"编辑",type:"primary",command:"edit"},{text:"删除",type:"danger",command:"remove"}]},formatter:{description:"自定义操作列模板",type:"string",default:""},commandColumnWidth:{description:"",type:"number",default:120},onClickDeleteCommand:{description:"",type:"string",default:""},onClickEditCommand:{description:"",type:"string",default:""}}},contextMenu:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1}}},customizaiton:{type:"object",properties:{enableScheme:{description:"",type:"boolean",default:!1},enableSetting:{description:"",type:"boolean",default:!1}}},edit:{type:"obejct",properties:{mode:{description:"",type:"string",default:"cell",enum:["cell","row","card"]},selectOnEditing:{description:"",type:"boolean",default:!1},onAppendRow:{description:"",type:"string",default:""},onBeforeEdit:{description:"",type:"string",default:""}}},filter:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},filterStyle:{description:"",type:"string",default:"filter-column",enum:["filter-column","filter-row"]},mode:{description:"",type:"string",default:"server",enum:["client","server"]},showSummary:{description:"",type:"boolean",default:!0},onFilterChange:{description:"",type:"string",default:""}}},footer:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},customFooterStyle:{description:"",type:"object"},footerDataCommand:{description:"",type:"string",default:""},footerDataFrom:{description:"",type:"string",default:"client"},footerHeight:{description:"",type:"number",default:29},footerPosition:{description:"",type:"string",default:"bottom"},footerTemplate:{description:"",type:"string",default:""}}},group:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1},customGroupRow:{description:"",type:"object"},customGroupRowStyle:{description:"",type:"obejct"},customSummaryStyle:{description:"",type:"obejct"},groupColSpan:{description:"",type:"number",default:1},groupFields:{description:"",type:"array",default:[]},showGroupedColumn:{description:"",type:"boolean",default:!0},showGroupPanel:{description:"",type:"boolean",default:!1},showSummary:{description:"",type:"boolean",default:!1},summaryPosition:{description:"",type:"string",default:"separate",enum:["separate","merge-to-group"]},disableGroupOnEditing:{description:"",type:"boolean",default:!0},expandGroupRows:{description:"",type:"boolean",default:!0}}},header:{type:"object",properties:{wrapHeadings:{description:"",type:"boolean",default:!1}}},pagination:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},disablePagination:{description:"",type:"string",default:""},contentTemplate:{description:"",type:"string",default:""},index:{description:"",type:"number",default:1},mode:{description:"",type:"enum",default:"server",enum:["server","client"]},showGoto:{description:"",type:"boolean",default:!1},showIndex:{description:"",type:"boolean",default:!0},showLimits:{description:"",type:"boolean",default:!1},showPageInfo:{description:"",type:"boolean",default:!0},size:{description:"",type:"number",default:20},sizeLimits:{description:"",type:"array",default:[10,20,30,50,100]},onPageChange:{description:"",type:"string",default:""},onPageSizeChange:{description:"",type:"string",default:""}}},row:{type:"object",properties:{customRowStyle:{description:"",type:"object"},disable:{description:"",type:"obejct"},height:{description:"",type:"number",default:30},showHovering:{type:"boolean",default:!0},wrapContent:{type:"boolean",default:!1}}},rowNumber:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!0},heading:{description:"",type:"string",default:"序号"},width:{description:"",type:"number",default:36},showEllipsis:{description:"",type:"boolean",default:!0}}},onClickRow:{description:"行点击事件",type:"string",default:""},onSelectionChange:{description:"行切换事件",type:"string",default:""},onPageIndexChanged:{description:"切换页码事件",type:"string",default:""},onPageSizeChanged:{description:"分页条数变化事件",type:"string",default:""},selection:{type:"object",properties:{enableSelectRow:{description:"允许选中行",type:"boolean",default:!0},enable:{description:"",type:"boolean",default:!0},checkOnSelect:{description:"",type:"boolean",default:!1},clearSelectionOnEmpty:{description:"",type:"boolean",default:!0},customSelectionItem:{description:"",type:"object"},focusSelection:{description:"",type:"string",default:"current",enum:["current","all"]},keepSelectingOnClick:{description:"",type:"boolean",default:!0},keepSelectingOnPaging:{description:"",type:"boolean",default:!0},multiSelect:{description:"",type:"boolean",default:!1},selectionMode:{description:"",type:"string",default:"default"},selectOnCheck:{description:"",type:"boolean",default:!1},selectOnEditing:{description:"",type:"boolean",default:!1},showCheckbox:{description:"",type:"boolean",default:!1},showSelectAll:{description:"",type:"boolean",default:!1},showSelection:{description:"",type:"boolean",default:!1},onBeforeSelect:{description:"",type:"string",default:""},onBeforeUnCheck:{description:"",type:"",default:""},onBeforeUnSelect:{description:"",type:"string",default:""},onCheckAll:{description:"",type:"string",default:""},onChecked:{description:"",type:"string",default:""},onSelectionChange:{description:"",type:"string",default:""},onUnCheckAll:{description:"",type:"string",default:""},onUnChecked:{description:"",type:"string",default:""},onCheckedChange:{description:"",type:"string"}}},sort:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},fields:{description:"",type:"array",default:[]},mode:{description:"",type:"string",default:"client",enum:["client","server"]},multiSort:{description:"",type:"boolean",default:!1}}},summary:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1},customSummaryStyle:{description:"",type:"object"},groupFields:{description:"",type:"array",default:[]},mode:{description:"",type:"string",default:"client",enum:["client","server"]},position:{description:"",type:"boolean",default:"bottom",enum:["bottom","top","both"]}}},toolbar:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1}}},visualization:{autoHeight:{description:"",type:"boolean",default:!1},emptyDataHeight:{description:"",type:"number",default:36},emptyTemplate:{description:"",type:"string",default:""},maxHeight:{description:"",type:"number",default:300},scrollBarShowMode:{description:"",type:"string",default:"auto"},showBorder:{description:"",type:"boolean",default:!1},showScrollArrow:{description:"",type:"boolean",default:!1},striped:{description:"",type:"boolean",default:!0},useBlankWhenDataIsEmpty:{description:"",type:"boolean",default:!1}}},required:["id","type","columns"],events:{onClickRow:"行点击事件",onSelectionChange:"行切换事件",onPageIndexChanged:"切换页码事件",onPageSizeChanged:"分页条数变化事件",onDoubleClickRow:"行双击事件",onClickEditCommand:"操作列编辑事件",onClickDeleteCommand:"操作列删除事件"}};function fc(){function n(e,t){const o={};return o.beforeEditCell=r=>t.call("beforeEditCell",[r,e]),o}return{resolve:n}}const fn=gt.createPropsResolver(St.dataGridProps,uc,Bo,Oo),Do=gt.createCollectionBindingResolver(),Uo=gt.createDataGridSelectionItemResolver(),Yo=gt.createDataViewUpdateColumnsResolver(),Xo=fc();bt.install=n=>{n.component(bt.name,bt)},bt.register=(n,e,t,o)=>{n["data-grid"]=St,e["data-grid"]=fn,n["grid-field-editor"]=Bl,e["grid-field-editor"]=ml,o["data-grid"]={bindingResolver:Do,selectionItemResolver:Uo,updateColumnsResolver:Yo,callbackResolver:Xo}},bt.registerDesigner=(n,e,t)=>{n["data-grid"]=bt,e["data-grid"]=fn,e["data-grid-column"]=jl,n["data-grid-column"]=zo,e["tree-grid-column"]=Rl,n["tree-grid-column"]=zo};const pc=fe.withInstall(bt);Z.FDataGridDesign=bt,Z.bindingResolver=Do,Z.callbackResolver=Xo,Z.default=pc,Z.propsResolver=fn,Z.selectionItemResolver=Uo,Z.updateColumnsResolver=Yo,Object.defineProperties(Z,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
|
@@ -51,7 +51,7 @@ const We = {
|
|
|
51
51
|
}, Fe = "zh-CHS", Ut = {
|
|
52
52
|
locale: Fe,
|
|
53
53
|
fallbackLocale: Fe,
|
|
54
|
-
uri: "
|
|
54
|
+
uri: ""
|
|
55
55
|
};
|
|
56
56
|
function Ke(e, t) {
|
|
57
57
|
return function() {
|
|
@@ -1793,7 +1793,7 @@ const R = class R {
|
|
|
1793
1793
|
const i = `${R.config.uri}/${t}.json?version=${(/* @__PURE__ */ new Date()).valueOf()}`;
|
|
1794
1794
|
s = await o(i);
|
|
1795
1795
|
}
|
|
1796
|
-
return (n = R.config.localResources) != null && n[t] && (s = { ...
|
|
1796
|
+
return (n = R.config.localResources) != null && n[t] && (s = { ...R.config.localResources[t] }), s;
|
|
1797
1797
|
} catch (s) {
|
|
1798
1798
|
return console.warn(`Failed to load locale ${t}:`, s), ((r = R.config.localResources) == null ? void 0 : r[t]) || {};
|
|
1799
1799
|
}
|