@farris/ui-vue 1.7.0-beta.2 → 1.7.1-beta.0
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/button-group/index.esm.js +62 -62
- package/components/button-group/index.umd.cjs +1 -1
- package/components/combo-list/index.esm.js +96 -92
- package/components/combo-list/index.umd.cjs +1 -1
- package/components/data-view/index.esm.js +823 -823
- package/components/data-view/index.umd.cjs +1 -1
- package/components/expression-editor/index.esm.js +7 -3
- package/components/expression-editor/index.umd.cjs +4 -4
- package/components/filter-condition-editor/index.esm.js +434 -430
- package/components/filter-condition-editor/index.umd.cjs +5 -5
- package/components/order/index.esm.js +7 -3
- package/components/order/index.umd.cjs +1 -1
- package/components/pagination/index.esm.js +70 -70
- package/components/pagination/index.umd.cjs +2 -2
- package/components/response-layout-editor/index.esm.js +8 -0
- package/components/response-layout-editor/index.umd.cjs +1 -1
- package/components/schema-selector/index.esm.js +460 -460
- package/components/schema-selector/index.umd.cjs +1 -1
- package/components/sort-condition-editor/index.esm.js +571 -567
- package/components/sort-condition-editor/index.umd.cjs +5 -5
- package/components/switch/index.esm.js +19 -15
- package/components/switch/index.umd.cjs +2 -2
- package/designer/checkbox-group/index.esm.js +48 -44
- package/designer/checkbox-group/index.umd.cjs +1 -1
- package/designer/data-grid/index.esm.js +14 -14
- package/designer/data-grid/index.umd.cjs +2 -2
- package/designer/data-view/index.esm.js +4 -3
- package/designer/data-view/index.umd.cjs +2 -2
- package/designer/farris-designer.all.esm.js +3 -3
- package/designer/farris-designer.all.umd.cjs +1 -1
- package/farris.all.esm.js +34 -24
- package/farris.all.umd.cjs +25 -25
- package/package.json +1 -1
- package/types/components.d.ts +1 -1
|
@@ -1775,6 +1775,10 @@ const Ie = /* @__PURE__ */ U({
|
|
|
1775
1775
|
description: "清空事件",
|
|
1776
1776
|
type: "string",
|
|
1777
1777
|
default: ""
|
|
1778
|
+
},
|
|
1779
|
+
"onUpdate:modelValue": {
|
|
1780
|
+
description: "",
|
|
1781
|
+
type: "object"
|
|
1778
1782
|
}
|
|
1779
1783
|
}, Ln = [
|
|
1780
1784
|
"type"
|
|
@@ -2277,7 +2281,7 @@ class _n extends Ct {
|
|
|
2277
2281
|
super(t, n);
|
|
2278
2282
|
}
|
|
2279
2283
|
getCommonEditorProperties(t) {
|
|
2280
|
-
var n, i, f, d, m;
|
|
2284
|
+
var n, i, f, d, m, y;
|
|
2281
2285
|
return {
|
|
2282
2286
|
viewType: {
|
|
2283
2287
|
visible: !!((n = t.editor) != null && n.multiSelect),
|
|
@@ -2311,10 +2315,10 @@ class _n extends Ct {
|
|
|
2311
2315
|
title: "允许编辑",
|
|
2312
2316
|
type: "boolean",
|
|
2313
2317
|
refreshPanelAfterChanged: !0,
|
|
2314
|
-
readonly: !!((d = t.editor) != null && d.multiSelect)
|
|
2318
|
+
readonly: !!((d = t.editor) != null && d.multiSelect) && (((m = t.editor) == null ? void 0 : m.viewType) === "tag" || !t.editor.viewType)
|
|
2315
2319
|
},
|
|
2316
2320
|
enableHighlightSearch: {
|
|
2317
|
-
visible: !!((
|
|
2321
|
+
visible: !!((y = t.editor) != null && y.editable),
|
|
2318
2322
|
description: "编辑状态下启用高亮搜索",
|
|
2319
2323
|
title: "启用高亮搜索",
|
|
2320
2324
|
type: "boolean"
|
|
@@ -47,4 +47,4 @@
|
|
|
47
47
|
`,g.children[0].style.cssText="overflow: hidden;flex: 1 1 auto;width: 100%;",g.children[0].children[0].style.cssText=`
|
|
48
48
|
margin: 10px 0px 10px 14px;
|
|
49
49
|
overflow: hidden;text-overflow: ellipsis;white-space: nowrap;
|
|
50
|
-
`,g.children[1].style.cssText="width: 30px;color: #f4625f;padding: 0 14px 0 0",g.children[2].style.cssText="padding: 0 14px 0 0;",document.body.appendChild(g),g}function u(T,k,B){if(T.stopPropagation(),r(),k){if(a=y(T.target),T.dataTransfer){const g=new Image;g.src="",T.dataTransfer.setDragImage(g,0,0)}c=T.pageX,l=T.pageY,setTimeout(()=>{p.value=B,b.value=!0,k.moving=!0})}}function h(T,k){if(T.preventDefault(),p.value!==k){const B=f.value[p.value],g=f.value;g.splice(p.value,1),g.splice(k,0,B),p.value=k,d(T.pageX,T.pageY)}}function N(T){T.preventDefault(),T.dataTransfer&&(T.dataTransfer.dropEffect="move"),d(T.pageX,T.pageY)}function R(T,k){k&&(k.moving=!1,a&&(document.body.removeChild(a),a=null)),f.value.forEach((B,g)=>{B.__fv_index__=g}),b.value=!1,s(),C.value=k.raw.__fv_index__,F.value=k.raw.__fv_index__,v.value=k.raw[m.value],t.emit("change",f.value),t.emit("activeChange",[k.raw])}return{dragstart:u,dragenter:h,dragover:N,dragend:R,isDragging:b}}function Ct(e,t,o,i,m,f){const p=n.ref(e.idField),b=n.ref(e.disableField),F=n.ref(e.draggable);n.ref(e.itemClass);const v=n.ref(e.selection.multiSelect??!1),C=n.ref(e.selection.multiSelectMode),{isDragging:s}=i,{activeIndex:r,focusedItemId:a,hoverIndex:c}=m,{clearSelection:l,getSelectedItems:d,toggleSelectItem:y,currentSelectedDataId:u}=f,h=n.ref(d()),N=V=>h.value.length===0?!1:h.value.some(w=>{let O="";return w.data?O=w.data[p.value]:O=w[p.value],O===V});function R(){h.value=d()}function T(V,w){return V.raw[p.value]!=null?V.raw[p.value]:""}function k(V,w){const O={"f-list-view-group-item":!0,"f-list-view-draggable-item":F.value,"f-un-click":!V.checked,"f-un-select":!!V.raw[b.value],"f-listview-active":v.value&&N(T(V))||!v.value&&V.raw[p.value]===u.value,"f-listview-hover":!s.value&&w===c.value,moving:!!V.moving};if(typeof e.itemClass=="string")return _.getCustomClass(O,e.itemClass);if(typeof e.itemClass=="function"){const P=e.itemClass(V);return _.getCustomClass(O,P)}return O}function B(V,w){const O=v.value&&N(T(V))||!v.value&&V.raw[p.value]===u.value,P={};if(O&&(P.backgroundColor="#dae9ff"),typeof e.itemStyle=="string")return _.getCustomStyle(P,e.itemStyle);if(typeof e.itemStyle=="function"){const M=e.itemStyle(V);return _.getCustomStyle(P,M)}return P}const g=n.computed(()=>!v.value);function I(V,w,O){V.checked=O,!V.raw[b.value]&&(g.value&&(a.value=V.raw[p.value]),y(V))}const E=n.computed(()=>v.value&&C.value==="OnCheckClearByClick"),S=n.computed(()=>!v.value||v.value&&(C.value==="OnCheckAndClick"||C.value==="OnClick"));function j(V,w,O){if(V.raw[b.value]){O==null||O.preventDefault(),O==null||O.stopPropagation();return}a.value=V.raw[p.value],r.value=w,E.value&&l(),S.value&&(y(V),R()),t.emit("clickItem",{data:h.value,index:w,dataItem:V.raw}),t.emit("activeChange",h.value)}return{getKey:T,selectedItems:h,listViewItemClass:k,listViewItemStyle:B,updateSelectedItems:R,onCheckItem:I,onClickItem:j}}const Fe=n.defineComponent({name:"FListView",props:dt,emits:["afterSearch","checkValuesChange","clickItem","selectItem","unSelectItem","selectionChange","removeItem","change","activeChange","pageIndexChanged","pageSizeChanged","changed","selectionUpdate"],setup(e,t){const o=n.ref(),i=n.ref(!0),m=n.ref(!1),f=n.ref([]),p=0,b=n.ref(e.columns),F=A.useFilter(e,t),v=A.useIdentify(e),C=A.useHierarchy(e),s=A.useGroupData(e,v),r=A.useDataView(e,new Map,F,C,v),a=A.useSelection(e,r,v,f,t),c=ut(e,o),l=A.usePagination(e,r),d=n.computed(()=>r.dataView.value.length),y=A.useRow(e,t,a,v),u=A.useEdit(e,t,v,y,f),h=A.useVisualDataBound(e),N=A.useVisualDataCell(e,{},h),R=A.useVisualDataRow(e,r,u,C,v,h,N),T=A.useVisualGroupRow(e,v,N,R),k=A.useVisualSummaryRow(e,v,N,R),B=A.useVisualData(e,b,r,d,p,R,T,k),{getVisualData:g}=B;f.value=g(0,d.value+p-1);const I=n.computed(()=>{const $={"f-list-view":!0,"f-list-view-multiple":e.multiSelect};return e.size!=="default"&&($[`${e.size}-item`]=!0),_.getCustomClass($,e.customClass)}),E=n.computed(()=>!!t.slots.footer||i.value);function S(){return e.header==="SearchBar"?Se:e.header==="ContentHeader"?ht:Se}const j=S(),{renderHeader:V}=j(e,t,c),w=yt(),O=bt(e,t,r,w),P=Ct(e,t,f,O,w,a),{renderListArea:M}=vt(e,t,f,r,s,w,a,B,P,O);function x($){c.search($)}function D($){$&&(r.load($),f.value=g(0,d.value+p-1))}function H(){a.clearSelection(),w.clearActiveItem()}function ie(){return P.selectedItems.value}function ae(){return P.selectedItems.value.map($=>$[v.idField.value])}function Q($){a.selectedValues.value=$,P.updateSelectedItems()}function Z(){return a.currentSelectedDataId.value}function q($){y.activeRowById($)}function le($){const G=v.idField.value,U=f.value.find(ce=>ce.raw[G]===$),K=f.value.findIndex(ce=>ce.raw[G]===$);U&&K>-1&&P.onClickItem(U,K)}function At($){const G=v.idField.value,U=f.value.find(K=>K.raw[G]===$);U&&y.changeRow(U)}function Dt($){l.updatePagination($)}function Ht($){return f.value.filter(G=>$.includes(G.raw[e.idField]))}t.expose({search:x,updateDataSource:D,clearSelection:H,getSelections:ie,updateSelectionByIds:Q,getSelectionIds:ae,activeRowById:q,getCurrentRowId:Z,clickRowItemById:le,updatePagination:Dt,getVisibleDataByIds:Ht,selectRowById:At});function qt($){e.multiSelect&&($.preventDefault(),$.stopPropagation())}n.watch(()=>e.selectionValues,($,G)=>{$!==G&&Q($)});const Gt=A.useSidebar(e,a),{sidebarWidth:_t,showSidebarCheckBox:Fn}=Gt,zt=A.useColumn(e,t),{applyColumnSorter:wn,columnContext:Ut,updateColumnRenderContext:Tn}=zt,Wt=A.useVirtualScroll(e,r,f,Ut,B,d,p,_t,u),{shouldRenderPagination:Xt}=l,{renderDataGridPagination:Yt}=A.getPagination(e,t,r,Wt,l,a);return()=>n.createVNode("div",{class:I.value,onClick:qt},[V(),n.createVNode("div",{ref:o,class:"f-list-view-content",onMouseover:()=>{m.value=!0},onMouseleave:()=>{m.value=!1}},[M()]),E.value&&n.createVNode("div",{class:"f-list-view-footer"},[e.footerTemplate?e.footerTemplate():t.slots.footer&&t.slots.footer()]),Xt.value&&Yt()])}}),St={id:String,type:{type:String,default:"primary"},disabled:{type:Boolean,default:!1},size:{type:String,default:"middle"},icon:{type:String},customClass:{type:Object,default:{}}};function Ft(e,t){function o(i){i.stopPropagation(),e.disabled||t.emit("click",i)}return{onClickButton:o}}function wt(e){const t=n.computed(()=>{const i={"f-icon":!0};if(e.icon){const m=e.icon.trim().split(" ");m&&m.length&&m.reduce((f,p)=>(f[p]=!0,f),i)}return i}),o=n.computed(()=>!!(e.icon&&e.icon.trim()));return{iconClass:t,shouldShowIcon:o}}const we=n.defineComponent({name:"FButton",props:St,emits:["click"],setup(e,t){const{onClickButton:o}=Ft(e,t),{iconClass:i,shouldShowIcon:m}=wt(e),f=n.computed(()=>{const p={btn:!0,"btn-lg":e.size==="large","btn-md":e.size!=="large"&&e.size!=="small","btn-sm":e.size==="small","btn-icontext":m.value};return p[`btn-${e.type}`]=!0,e.customClass&&Object.keys(e.customClass).reduce((b,F)=>(b[F]=e.customClass[F],b),p),p});return()=>n.createVNode("button",{class:f.value,disabled:e.disabled,onClick:p=>o(p)},[m.value&&n.createVNode("i",{class:i.value},null),t.slots.default&&t.slots.default()])}}),Tt=new Map([["appearance",ne.resolveAppearance]]),Vt={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/combo-list.schema.json",title:"combo-list",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a combo list",type:"string"},type:{description:"The type string of number combo list component",type:"string",default:"combo-list"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disabled:{description:"",type:"boolean",default:!1},enableClear:{description:"",type:"boolean",default:!1},editable:{description:"",type:"boolean",default:!1},enableLinkLabel:{description:"",type:"boolean",default:!1},label:{description:"",type:"string",default:""},lableWidth:{description:"",type:"number"},placeholder:{description:"",type:"string",default:"请选择"},idField:{description:"",type:"string",default:"id"},valueField:{description:"",type:"string",default:"id"},titleField:{description:"",type:"string",default:"name"},textField:{description:"",type:"string",default:"name"},dataSourceType:{description:"",type:"string",default:"static"},data:{description:"",type:"array"},remote:{description:"",type:"string"},readonly:{description:"",type:"boolean",default:!1},required:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},textAlign:{description:"",type:"string",enum:["left","middle","right"],default:"left"},multiSelect:{description:"",type:"boolean",default:!1},maxLength:{description:"",type:"number",default:null},visible:{description:"",type:"boolean",default:!0},onBlur:{description:"",type:"string",default:""},onClickLinkLabel:{description:"",type:"sting",default:""},maxHeight:{description:"",type:"number",default:350},minPanelWidth:{description:"",type:"number",default:160},popupOnClick:{description:"",type:"boolean",default:!0},separator:{description:"",type:"string",default:","},viewType:{description:"",type:"string",default:"tag"},enableSearch:{description:"启用搜索",type:"boolean",default:!0},enableHighlightSearch:{description:"启用高亮搜索",type:"boolean",default:!1},beforeOpen:{description:"打卡面板前回调",type:"string"},onChange:{description:"值变化事件",type:"string",default:""},onInput:{description:"输入事件",type:"string",default:""},onClear:{description:"清空事件",type:"string",default:""}},required:["type"],ignore:["id","appearance","binding","visible"]};function kt(e,t,o){return t}function Ot(){function e(t,o,i){const m={};return m.beforeOpen=f=>o.call("beforeOpen",t,[f,t],i),m}return{resolve:e}}const re={id:{type:String},data:{type:Array,default:[]},disabled:{default:!1,type:Boolean},dropDownIcon:{type:String,default:'<span class="f-icon f-icon-arrow-chevron-down"></span>'},editable:{default:!1,type:Boolean},enableClear:{default:!0,type:Boolean},enableSearch:{type:Boolean,default:!1},enableTitle:{default:!0,type:Boolean},fitEditor:{default:!1,type:Boolean},forcePlaceholder:{default:!1,type:Boolean},hidePanelOnClear:{default:!0,type:Boolean},idField:{default:"id",type:String},mapFields:{type:Object},maxHeight:{default:350,type:Number},maxLength:{type:Number},multiSelect:{type:Boolean,default:!1},modelValue:{},placeholder:{type:String,default:"请选择"},placement:{type:String,default:"auto"},readonly:{default:!1,type:Boolean},remote:{default:null,type:Object},remoteSearch:{default:!1,type:Boolean},separator:{default:",",type:String},tabIndex:{type:Number,default:-1},textField:{default:"name",type:String},titleField:{default:"name",type:String},valueField:{default:"id",type:String},viewType:{default:"tag",type:String},change:{type:Function,default:()=>{}},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1},autoHeight:{type:Boolean,default:!0},beforeOpen:{type:Function,default:null},load:{type:Function},searchOption:{type:[Boolean,Function],default:!1},enableHighlightSearch:{type:Boolean,default:!0},minPanelWidth:{type:Number,default:160},popupOnClick:{type:Boolean,default:!0}},Nt=Object.assign({},re,{readonly:{}}),Te=ne.createPropsResolver(re,Vt,Tt,kt),Pt=Ot(),Mt={dataSource:{type:Array,default:[]},enableSearch:{type:Boolean,default:!1},idField:{type:String,default:"id"},multiSelect:{type:Boolean,default:!1},selectedValues:{type:String,default:""},separator:{type:String,default:","},textField:{type:String,default:"name"},titleField:{type:String,default:"name"},width:{type:Number},maxHeight:{type:Number},valueField:{type:String,default:"id"},onSelectionChange:{type:Function,default:()=>{}},searchOption:{type:[Boolean,Function],default:!1},enableHighlightSearch:{type:Boolean,default:!0}},It=n.defineComponent({name:"FComboListContainer",props:Mt,emits:["selectionChange"],setup(e,t){const o=n.ref(),i=n.ref(e.dataSource),m=n.ref([]),f=n.ref(e.separator),p=n.ref(e.width),b=n.ref(e.maxHeight),F=n.ref(String(e.selectedValues).split(f.value)),v=n.computed(()=>e.multiSelect),C=n.computed(()=>({enableSelectRow:!0,multiSelect:e.multiSelect,multiSelectMode:"OnCheckAndClick",showCheckbox:v.value,showSelectAll:!1,showSelection:!0}));n.watch(e.dataSource,()=>{i.value=e.dataSource}),n.computed(()=>e.enableSearch?"SearchBar":"ContentHeader");const s=n.computed(()=>{const d={};return p.value!==void 0&&(d.width=`${p.value}px`),b.value!==void 0&&b.value>0&&(d.maxHeight=`${b.value}px`),d});function r(d){o.value.search(d)}function a(d){m.value=d.map(y=>Object.assign({},y)),F.value=d.map(y=>y[e.idField]),t.emit("selectionChange",m.value)}function c(d){if(e.enableHighlightSearch)return;let y=[];const{searchOption:u}=e;typeof u=="function"?y=i.value.filter(h=>u(d,h)):y=i.value.filter(h=>h[e.valueField].indexOf(d)>-1||h[e.textField].indexOf(d)>-1),o.value.updateDataSource(y)}n.watch([()=>e.selectedValues],([d])=>{e.multiSelect?F.value=d.split(f.value):F.value=[d]});function l(d){o.value.activeRowById(d)}return n.onMounted(()=>{var d,y;if(!e.multiSelect){const u=(d=F.value)==null?void 0:d[0];let h=u;if(!z.isUndefined(u)){const N=typeof u,R=typeof((y=i.value[0])==null?void 0:y[e.valueField||e.idField]);R==="number"&&N!==R&&(h=Number(u)),R==="boolean"&&N!==R&&(h=u==="true"?!0:u==="false"?!1:u),l(h)}}}),t.expose({search:r,activeRowById:l}),()=>n.createVNode("div",{class:"f-combo-list-container",style:s.value},[n.createVNode(Oe,{ref:o,size:"small",itemClass:"f-combo-list-item",itemContentClass:"text-truncate",header:"ContentHeader",headerClass:"f-combo-list-search-box",data:i.value,idField:e.idField,textField:e.textField,titleField:e.titleField,multiSelect:e.multiSelect,selection:C.value,enableHighlightSearch:e.enableHighlightSearch,selectionValues:F.value,onSelectionUpdate:a,onAfterSearch:c},null)])}});function Bt(e){const{t}=ee.useI18n(),o=n.ref(""),i=n.ref(e.modelValue),m=n.ref(e.data||[]),f=n.ref(e.editable);function p(r){const a=e.multiSelect?String(r).split(e.separator):[String(r)],c=a.map(y=>[y,!0]),l=new Map(c);return m.value.filter(y=>l.has(String(y[e.valueField]))).sort((y,u)=>{const h=a.indexOf(y[e.valueField]),N=a.indexOf(u[e.valueField]);return h-N})}function b(r){const a=p(r).map(c=>c[e.textField]).join(e.separator);o.value=f.value?a||r:a}function F(r){if(e.multiSelect){const a=r.split(e.separator).map(l=>[l,!0]),c=new Map(a);return m.value.filter(l=>c.has(l[e.textField]))}return m.value.filter(a=>""+a[e.textField]===r)}function v(r){const a={};return a[e.idField]=r,a[e.textField]=r,[a]}function C(r){let a=F(r);const c=a&&a.length>0;return f.value&&!c&&(a=v(r)),a}function s(){const{url:r,method:a="GET",headers:c={"Content-Type":"application/json;charset=utf-8;"},body:l=null}=e.remote;if(!r)return;const d=a.toLowerCase()==="get"?{method:a,headers:c}:{method:a,headers:c,body:l};let y=!1;fetch(new Request(r,d)).then(u=>{var N,R;if(u.status===200)return y=!!((R=(N=u.headers)==null?void 0:N.get("content-type"))!=null&&R.includes("application/json")),y?u.text():u.json();throw u.status===405?new Error(t("comboList.remoteError")):new Error(u.statusText)}).then(u=>{u.length&&(m.value=y?JSON.parse(u):u)}).catch(u=>{console.warn(u)})}return e.remote&&(e.load?e.load().then(r=>{m.value=r}).catch(r=>{console.log(r)}):s()),n.watch(()=>e.data,()=>{m.value=e.data}),n.watch([m],([r])=>{if(e.modelValue!=null){const a=r.find(c=>c[e.valueField]===e.modelValue);a&&(o.value=a[e.textField])}}),n.watch(()=>e.modelValue,r=>{i.value=r,b(r)}),b(e.modelValue),{dataSource:m,displayText:o,editable:f,modelValue:i,getItemsByDisplayText:F,getItemsByValue:p,getSelectedItemsByDisplayText:C}}const X=n.defineComponent({name:"FComboList",props:re,emits:["clear","update:modelValue","change","input"],setup(e,t){const{t:o}=ee.useI18n(),i=n.ref(),m=n.ref(),f=n.ref(e.disabled||e.readonly),p=n.ref(e.enableClear),b=n.ref(e.enableSearch),F=n.ref(e.readonly),{dataSource:v,displayText:C,editable:s,modelValue:r,getSelectedItemsByDisplayText:a,getItemsByDisplayText:c,getItemsByValue:l}=Bt(e),d=n.ref(e.dropDownIcon);d.value==='<span class="f-icon f-icon-arrow-chevron-down"></span>'&&(d.value='<span id="'+e.id+'-icon-dropdown" class="f-icon f-icon-arrow-chevron-down"></span>');const y=n.computed(()=>e.multiSelect),u=n.computed(()=>m.value?m.value.elementRef.getBoundingClientRect().width:0);function h(){!y.value&&m.value&&m.value.hidePopup()}function N(P){C.value=P.map(x=>x[e.textField]).join(e.separator);let M="";P.length===1?M=P[0][e.valueField]:M=P.map(x=>x[e.valueField]).join(e.separator),r.value!==M&&(r.value=M,t.emit("update:modelValue",r.value),t.emit("change",P,r.value))}function R(){const P=l(r.value);N(P)}function T(){F.value||C.value}function k(P){var M;r.value="",(M=i.value)==null||M.activeRowById(""),t.emit("update:modelValue",""),t.emit("change",[],""),t.emit("clear")}function B(P){var M,x;e.enableSearch&&e.enableHighlightSearch&&((M=i.value)==null||M.search(P)),(x=i.value)==null||x.activeRowById(P),t.emit("change",[r.value],r.value)}function g(P){if(e.multiSelect){const M=l(r.value),D=M.map(H=>H[e.idField||e.valueField]).join(e.separator);r.value!==D&&(r.value=D,t.emit("update:modelValue",r.value),t.emit("change",M,r.value))}}function I(){return C.value}function E(P){const{value:M}=P.target;B(M),t.emit("input",M)}function S(){m.value.hidePopup()}function j(P){v.value=P}function V(){return v.value}const w={getDisplayText:I,hidePopup:S,updateDataSource:j,getData:V};t.expose(w);function O(P){const M=typeof e.beforeOpen=="function";return!e.beforeOpen||!M?Promise.resolve(!0):Promise.resolve().then(()=>e.beforeOpen({instance:w})).then(x=>typeof(x==null?void 0:x.canOpen)=="boolean"?x==null?void 0:x.canOpen:!0)}return n.watch([()=>e.disabled,()=>e.editable,()=>e.enableClear,()=>e.enableSearch,()=>e.readonly],([P,M,x,D,H])=>{f.value=P,s.value=M,p.value=x,b.value=D,F.value=H}),()=>n.createVNode(ke,{ref:m,id:e.id,disable:f.value,readonly:F.value,forcePlaceholder:e.forcePlaceholder,editable:s.value,buttonContent:d.value,placeholder:e.placeholder==="请选择"?o("comboList.placeholder"):e.placeholder,enableClear:p.value,maxLength:e.maxLength,tabIndex:e.tabIndex,enableTitle:e.enableTitle,multiSelect:e.multiSelect,inputType:e.multiSelect?e.viewType:"text",modelValue:C.value,"onUpdate:modelValue":P=>C.value=P,focusOnCreated:e.focusOnCreated,selectOnCreated:e.selectOnCreated,onClear:k,onClick:T,onChange:g,onBlur:R,onInput:E,beforeOpen:O,placement:e.placement,popupMinWidth:e.minPanelWidth,popupClass:"f-combo-list-wrapper",popupOnClick:e.popupOnClick,limitContentBySpace:!0},{default:()=>[n.createVNode(It,{ref:i,idField:e.idField,valueField:e.valueField,textField:e.textField,titleField:e.titleField,dataSource:v.value,selectedValues:r.value,separator:e.separator,multiSelect:e.multiSelect,enableSearch:b.value,maxHeight:e.maxHeight,enableHighlightSearch:e.enableHighlightSearch,width:e.fitEditor?u.value:void 0,onSelectionChange:P=>{N(P),h()}},null)]})}}),Ve={convertFrom:(e,t)=>(e.editor.remote||{})[t],convertTo:(e,t,o)=>{e.editor.remote=e.editor.remote||{},e.editor.remote[t]=o}};class Rt extends Me.InputBaseProperty{constructor(t,o){super(t,o)}getCommonEditorProperties(t){var o,i,m,f,p;return{viewType:{visible:!!((o=t.editor)!=null&&o.multiSelect),description:"数据展示类型,有标签和文本两种方式",title:"数据展示类型",type:"enum",editor:{data:[{id:"tag",name:"标签"},{id:"text",name:"文本"}]},refreshPanelAfterChanged:!0},separator:{visible:!!((i=t.editor)!=null&&i.multiSelect)&&((m=t.editor)==null?void 0:m.viewType)==="text",description:"下拉列表启用多选且数据展示类型为文本时的分隔符",title:"分隔符",type:"enum",editor:{data:[{id:",",name:"逗号(,)"},{id:"#",name:"井号(#)"},{id:".",name:"句号(.)"},{id:"|",name:"竖线(|)"}]}},editable:{description:"",title:"允许编辑",type:"boolean",refreshPanelAfterChanged:!0,readonly:!!((f=t.editor)!=null&&f.multiSelect)},enableHighlightSearch:{visible:!!((p=t.editor)!=null&&p.editable),description:"编辑状态下启用高亮搜索",title:"启用高亮搜索",type:"boolean"}}}getEditorProperties(t){var f,p;const o=this;let i="";if(((f=t==null?void 0:t.binding)==null?void 0:f.type)==="Form"){const b=this.schemaService.getFieldByIDAndVMID(t.binding.field,this.viewModelId);(p=b==null?void 0:b.schemaField)!=null&&p.type&&(i=b.schemaField.type.$type)}return o.getComponentConfig(t,{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:!t.editor.dataSourceType||t.editor.dataSourceType==="static",...o.getItemCollectionEditor(t,t.editor.valueField,t.editor.textField),refreshPanelAfterChanged:!0},url:{visible:t.editor.dataSourceType==="dynamic",$converter:Ve,description:"",title:"服务端API",type:"string"},body:{visible:t.editor.dataSourceType==="dynamic",$converter:Ve,description:"",title:"服务端API参数",type:"string"},textField:{description:"",title:"数据源显示字段",type:"string",readonly:t.editor.dataSourceType!=="dynamic"},valueField:{description:"",title:"数据源值字段",type:"string",readonly:t.editor.dataSourceType!=="dynamic"},multiSelect:{description:"",title:"启用多选",visible:!i||i==="StringType",type:"boolean",refreshPanelAfterChanged:!0},maxLength:{description:"",title:"最大输入长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1}},...this.getCommonEditorProperties(t)},(b,F)=>{if(!b||!F.editor)return;const v=this;switch(b.propertyID){case"dataSourceType":{b.propertyValue==="static"?(F.editor.valueField="value",F.editor.textField="name",F.editor.remote=null):b.propertyValue==="dynamic"&&(F.editor.remote={method:"GET"},F.editor.valueField="value",F.editor.textField="name");break}case"data":{!v.checkEnumDataReadonly(F)&&F.formatter&&(F.formatter.data=[...b.propertyValue]);break}case"viewType":b.propertyValue==="tag"&&(F.editor.editable=!1)}})}getGridFieldEdtiorProperties(t,o){var p,b,F,v,C,s;const i=this;let m="";if(((p=t==null?void 0:t.binding)==null?void 0:p.type)==="Form"){const r=this.schemaService.getFieldByIDAndVMID(t.binding.field,this.viewModelId);(b=r==null?void 0:r.schemaField)!=null&&b.type&&(m=r.schemaField.type.$type)}return i.getComponentConfig(t,{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:!((F=t.editor)!=null&&F.dataSourceType)||((v=t.editor)==null?void 0:v.dataSourceType)==="static",...i.getItemCollectionEditor(t,(C=t.editor)==null?void 0:C.valueField,(s=t.editor)==null?void 0:s.textField),refreshPanelAfterChanged:!0},textField:{description:"",title:"数据源显示字段",type:"string",readonly:!0},valueField:{description:"",title:"数据源值字段",type:"string",readonly:!0},multiSelect:{description:"",title:"启用多选",visible:m==="StringType",type:"boolean",refreshPanelAfterChanged:!0},maxLength:{description:"",title:"最大输入长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1}},...this.getCommonEditorProperties(t)},(r,a)=>{if(!r||!a.editor)return;const c=this;switch(r.propertyID){case"dataSourceType":{r.propertyValue==="static"?(a.editor.valueField="value",a.editor.textField="name",a.editor.remote=null):r.propertyValue==="dynamic"&&(a.editor.remote={method:"GET"},a.editor.valueField="value",a.editor.textField="name");break}case"data":{!c.checkEnumDataReadonly(a)&&a.formatter&&(a.formatter.data=[...r.propertyValue]);break}}})}setEditorPropertyRelates(t,o,i){if(!t||!o.editor)return;const m=this;switch(t.propertyID){case"dataSourceType":{t.propertyValue==="static"&&(o.editor.valueField="value",o.editor.textField="name",o.editor.remote={});break}case"data":{!m.checkEnumDataReadonly(o)&&o.formatter&&(o.formatter.data=[...t.propertyValue]);break}}}changeBindingField(t,o,i){var f;super.changeBindingField(t,o);const m=i;t.editor&&((f=m==null?void 0:m.type)==null?void 0:f.$type)===_.FormSchemaEntityFieldType$Type.EnumType&&(t.editor.data=m.type.enumValues||[])}getEventPropertyConfig(t,o="card",i,m){const f=this;let p=[{label:"onChange",name:"值变化事件"},{label:"onClear",name:"清空事件"},{label:"beforeOpen",name:"打开下拉面板前"}];i&&(p=p.concat(i)),this.appendFieldValueChangeEvents(t,p);const b=f.eventsEditorUtils.formProperties(t,f.viewModelId,p);return{title:"事件",hideTitle:!0,properties:f.createBaseEventProperty(b),tabId:"commands",tabName:"交互",setPropertyRelates(C,s){const r=C.propertyValue;delete t[f.viewModelId],r&&(r.setPropertyRelates=this.setPropertyRelates,f.eventsEditorUtils.saveRelatedParameters(t,f.viewModelId,r.events,r)),m&&m(C,s,r);const a=f.designViewModelUtils.getDgViewModel(f.viewModelId);a&&f.designViewModelField&&a.changeField(f.designViewModelField.id,{valueChanging:t.fieldValueChanging,valueChanged:t.fieldValueChanged}),t.editor.beforeOpen!==t.beforeOpen&&(t.editor.beforeOpen=t.beforeOpen),t.editor.onChange!==t.onChange&&(t.editor.onChange=t.onChange),t.editor.onClear!==t.onClear&&(t.editor.onClear=t.onClear)}}}}function jt(e,t){const o=e.schema;function i(m,f){return new Rt(m,t).getPropertyConfig(o,f)}return{getPropsConfig:i}}const xt=n.defineComponent({name:"FComboListDesign",props:Nt,emits:["clear","update:modelValue","change"],setup(e,t){const o=n.ref(),i=n.inject("designer-host-service"),m=n.inject("design-item-context"),f=jt(m,i),p=Pe.useDesignerComponent(o,m,f);return n.onMounted(()=>{o.value.componentInstance=p}),t.expose(p.value),()=>n.createVNode(Ne,{ref:o,buttonContent:e.dropDownIcon,readonly:!0,editable:!1,forcePlaceholder:!0,placeholder:e.placeholder,enableClear:!0},null)}});X.register=(e,t,o,i)=>{e["combo-list"]=X,t["combo-list"]=Te,i["combo-list"]={callbackResolver:Pt}},X.registerDesigner=(e,t,o)=>{e["combo-list"]=xt,t["combo-list"]=Te};const Y=_.withInstall(X),J=n.defineComponent({name:"FOrder",props:W,emits:["change"],setup(e,t){const o=n.ref(),i=n.ref(e.items);function m(){var h;const u=Array.isArray(e.items)?e.items:[];i.value=[...u],(h=o.value)==null||h.updateDataSource(i.value)}n.watch(()=>e.items,m);const f=n.ref("排序列"),p=n.ref("排序方式"),b=n.ref("添加排序列"),F=[{id:"asc",name:"升序"},{id:"desc",name:"降序"}],v=n.ref(new Map);function C(){const u=i.value.map(h=>[h.id,!0]);v.value=new Map(u)}C();const s=n.computed(()=>e.dataSource.map(u=>(u.disabled=v.value.has(u.id),u))),r=n.computed(()=>({"f-order":!0}));function a(u){i.value=i.value.filter(h=>h.id!==u.id),C(),t.emit("change",i.value)}function c(){i.value=[...i.value,{id:Date.now().toString(),name:"",order:"asc"}],C(),t.emit("change",i.value)}function l(u){if(u&&u.length===1){const h=u[0],N=i.value.find(R=>R.id===h.id);N&&(N.name=h.name)}C(),t.emit("change",i.value)}function d(u){if(u&&u.length){const h=new Map;u.reduce((N,R)=>(N.set(R.id,R),N),h),i.value=u.map(N=>h.get(N.id)),t.emit("change",i.value)}}function y(){return n.createVNode(Fe,{ref:o,style:"flex:1",data:i.value,draggable:!0,view:"DraggableView","keep-order":!0,itemClass:"f-order-item",onRemoveItem:a,onChange:d},{header:()=>n.createVNode("div",{class:"f-order-header"},[n.createVNode("span",{class:"f-order-header-order-field"},[f.value]),n.createVNode("span",{class:"f-order-header-order-type"},[p.value])]),itemContent:u=>n.createVNode("div",{class:"f-order-item-content"},[n.createVNode(Y,{class:"f-order-item-content-order-field",data:s.value,valueField:"id",textField:"name",idField:"id",modelValue:u.raw.id,"onUpdate:modelValue":h=>u.raw.id=h,onChange:l,onClear:l},null),n.createVNode(Y,{class:"f-order-item-content-order-type",data:F,valueField:"id",textField:"name",idField:"id",modelValue:u.raw.order,"onUpdate:modelValue":h=>u.raw.order=h,onChange:l},null)]),footer:()=>n.createVNode("div",{class:"f-order-footer"},[n.createVNode(we,{type:"link",class:"f-order-add-button",onClick:c},{default:()=>n.createVNode(n.Fragment,null,[n.createVNode("span",{class:"f-order-add-icon"},[n.createVNode("i",{class:"f-icon f-icon-add"},null)]),b.value])})])})}return()=>n.createVNode("div",{class:r.value},[y()])}});function $t(e,t,o){var E;const i="",m="",f=n.ref();let p;function b(){return(t==null?void 0:t.schema.componentType)!=="frame"}function F(){return!1}function v(){return(t==null?void 0:t.schema.componentType)!=="frame"}function C(){return(t==null?void 0:t.schema.componentType)==="frame"}function s(S){if(!S||!S.value)return null;if(S.value.schema&&S.value.schema.type==="component")return S.value;const j=n.ref(S==null?void 0:S.value.parent),V=s(j);return V||null}function r(S=t){var O;const{componentInstance:j,designerItemElementRef:V}=S;if(!j||!j.value)return null;const{getCustomButtons:w}=j.value;return j.value.canMove||w&&((O=w())!=null&&O.length)?V:r(S.parent)}function a(S){return!!o}function c(){return(t==null?void 0:t.schema.label)||(t==null?void 0:t.schema.title)||(t==null?void 0:t.schema.name)}function l(){}function d(S,j){var V;!S||!j||(V=t==null?void 0:t.setupContext)==null||V.emit("dragEnd")}function y(S,j){const{componentType:V}=S;let w=ne.getSchemaByTypeForDesigner(V,S,j);const O=V.toLowerCase().replace(/-/g,"_");return w&&!w.id&&w.type===V&&(w.id=`${O}_${Math.random().toString().slice(2,6)}`),w}function u(S){}function h(...S){}function N(S){if(!S)return;const j=t==null?void 0:t.schema,{formSchemaUtils:V}=S;if(j&&V.getExpressions().length){const w=V.getExpressions().findIndex(O=>O.target===j.id);w>-1&&V.getExpressions().splice(w,1)}}function R(S){if(!S||!(t!=null&&t.schema))return;const j=t.schema,{formSchemaUtils:V}=S;V.removeCommunicationInComponent(j)}function T(S){N(S),R(S),t!=null&&t.schema.contents&&t.schema.contents.map(j=>{let V=j.id;j.type==="component-ref"&&(V=j.component);const w=e.value.querySelectorAll(`#${V}-design-item`);w!=null&&w.length&&Array.from(w).map(O=>{var P;(P=O==null?void 0:O.componentInstance)!=null&&P.value.onRemoveComponent&&O.componentInstance.value.onRemoveComponent(S)})})}function k(){}function B(S){var V,w;if(!((V=t==null?void 0:t.schema)!=null&&V.id))return;!p&&S&&(p=S.formSchemaUtils);let j="";{const{text:O,title:P,label:M,mainTitle:x,name:D,type:H}=t.schema;j=O||P||M||x||D||((w=fe[H])==null?void 0:w.name)}j&&p.getControlBasicInfoMap().set(t.schema.id,{componentTitle:j,parentPathName:j})}function g(S){var O;const{changeObject:j}=S,{propertyID:V,propertyValue:w}=j;if(["text","title","label","name","mainTitle"].includes((O=S==null?void 0:S.changeObject)==null?void 0:O.propertyID)&&V&&w&&(B(),p)){const P=p.getControlBasicInfoMap(),M=P.keys().toArray().filter(x=>{var D,H;return((D=P.get(x))==null?void 0:D.reliedComponentId)===((H=t==null?void 0:t.schema)==null?void 0:H.id)});M!=null&&M.length&&M.forEach(x=>{const D=P.get(x).parentPathName.split(" > ");D[0]=w,P.get(x).parentPathName=D.join(" > ")})}}function I(S){g(S)}return f.value={canMove:b(),canSelectParent:F(),canDelete:v(),canNested:!C(),contents:t==null?void 0:t.schema.contents,elementRef:e,parent:(E=t==null?void 0:t.parent)==null?void 0:E.componentInstance,schema:t==null?void 0:t.schema,styles:i,designerClass:m,canAccepts:a,getBelongedComponentInstance:s,getDraggableDesignItemElement:r,getDraggingDisplayText:c,getPropConfig:h,getDragScopeElement:l,onAcceptMovedChildElement:d,onChildElementMovedOut:u,addNewChildComponentSchema:y,triggerBelongedComponentToMoveWhenMoved:n.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:n.ref(!1),onRemoveComponent:T,getCustomButtons:k,onPropertyChanged:I,setComponentBasicInfoMap:B,updateContextSchema:t==null?void 0:t.updateContextSchema},f}const Et=n.defineComponent({name:"FOrderDesign",props:W,emits:["change"],setup(e,t){const o=n.ref(e.items),i=n.ref("排序列"),m=n.ref("排序方式"),f=n.ref("添加排序列"),p=[{id:"asc",name:"升序"},{id:"desc",name:"降序"}],b=n.ref(new Map),F=n.ref(),v=n.inject("design-item-context"),C=$t(F,v);n.onMounted(()=>{F.value.componentInstance=C}),t.expose(C.value);function s(){const h=o.value.map(N=>[N.id,!0]);b.value=new Map(h)}s();const r=n.computed(()=>e.dataSource.map(h=>(h.disabled=b.value.has(h.id),h))),a=n.computed(()=>({"f-order":!0}));function c(h){o.value=o.value.filter(N=>N.id!==h.id),s(),t.emit("change",o.value)}function l(){o.value=[...o.value,{id:Date.now().toString(),name:"",order:"asc"}],s(),t.emit("change",o.value)}function d(h){s(),t.emit("change",o.value)}function y(h){if(h&&h.length){const N=new Map;h.reduce((R,T)=>(R.set(T.id,T),R),N),o.value=h.map(R=>N.get(R.id)),t.emit("change",o.value)}}function u(){return n.createVNode(Fe,{style:"flex:1",data:o.value,draggable:!0,view:"DraggableView","keep-order":!0,itemClass:"f-order-item",onRemoveItem:c,onChange:y},{header:()=>n.createVNode("div",{class:"f-order-header"},[n.createVNode("span",{class:"f-order-header-order-field"},[i.value]),n.createVNode("span",{class:"f-order-header-order-type"},[m.value])]),itemContent:h=>n.createVNode("div",{class:"f-order-item-content"},[n.createVNode(Y,{class:"f-order-item-content-order-field",data:r.value,valueField:"id",textField:"name",idField:"id",modelValue:h.id,"onUpdate:modelValue":N=>h.id=N,onChange:d,onClear:d},null),n.createVNode(Y,{class:"f-order-item-content-order-type",data:p,valueField:"id",textField:"name",idField:"id",modelValue:h.order,"onUpdate:modelValue":N=>h.order=N,onChange:d},null)]),footer:()=>n.createVNode("div",{class:"f-order-footer"},[n.createVNode(we,{type:"link",class:"f-order-add-button",onClick:l},{default:()=>n.createVNode(n.Fragment,null,[n.createVNode("span",{class:"f-order-add-icon"},[n.createVNode("i",{class:"f-icon f-icon-add"},null)]),f.value])})])})}return()=>n.createVNode("div",{ref:F,class:a.value},[u()])}}),Lt={install(e){e.component(J.name,J)},register(e,t,o,i){e.order=J,t.order=oe},registerDesigner(e,t,o){e.order=Et,t.order=oe}};L.FOrder=J,L.default=Lt,L.orderProps=W,L.propsResolver=oe,Object.defineProperties(L,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
|
50
|
+
`,g.children[1].style.cssText="width: 30px;color: #f4625f;padding: 0 14px 0 0",g.children[2].style.cssText="padding: 0 14px 0 0;",document.body.appendChild(g),g}function u(T,k,B){if(T.stopPropagation(),r(),k){if(a=y(T.target),T.dataTransfer){const g=new Image;g.src="",T.dataTransfer.setDragImage(g,0,0)}c=T.pageX,l=T.pageY,setTimeout(()=>{p.value=B,b.value=!0,k.moving=!0})}}function h(T,k){if(T.preventDefault(),p.value!==k){const B=f.value[p.value],g=f.value;g.splice(p.value,1),g.splice(k,0,B),p.value=k,d(T.pageX,T.pageY)}}function N(T){T.preventDefault(),T.dataTransfer&&(T.dataTransfer.dropEffect="move"),d(T.pageX,T.pageY)}function R(T,k){k&&(k.moving=!1,a&&(document.body.removeChild(a),a=null)),f.value.forEach((B,g)=>{B.__fv_index__=g}),b.value=!1,s(),C.value=k.raw.__fv_index__,F.value=k.raw.__fv_index__,v.value=k.raw[m.value],t.emit("change",f.value),t.emit("activeChange",[k.raw])}return{dragstart:u,dragenter:h,dragover:N,dragend:R,isDragging:b}}function Ct(e,t,o,i,m,f){const p=n.ref(e.idField),b=n.ref(e.disableField),F=n.ref(e.draggable);n.ref(e.itemClass);const v=n.ref(e.selection.multiSelect??!1),C=n.ref(e.selection.multiSelectMode),{isDragging:s}=i,{activeIndex:r,focusedItemId:a,hoverIndex:c}=m,{clearSelection:l,getSelectedItems:d,toggleSelectItem:y,currentSelectedDataId:u}=f,h=n.ref(d()),N=V=>h.value.length===0?!1:h.value.some(w=>{let O="";return w.data?O=w.data[p.value]:O=w[p.value],O===V});function R(){h.value=d()}function T(V,w){return V.raw[p.value]!=null?V.raw[p.value]:""}function k(V,w){const O={"f-list-view-group-item":!0,"f-list-view-draggable-item":F.value,"f-un-click":!V.checked,"f-un-select":!!V.raw[b.value],"f-listview-active":v.value&&N(T(V))||!v.value&&V.raw[p.value]===u.value,"f-listview-hover":!s.value&&w===c.value,moving:!!V.moving};if(typeof e.itemClass=="string")return _.getCustomClass(O,e.itemClass);if(typeof e.itemClass=="function"){const P=e.itemClass(V);return _.getCustomClass(O,P)}return O}function B(V,w){const O=v.value&&N(T(V))||!v.value&&V.raw[p.value]===u.value,P={};if(O&&(P.backgroundColor="#dae9ff"),typeof e.itemStyle=="string")return _.getCustomStyle(P,e.itemStyle);if(typeof e.itemStyle=="function"){const M=e.itemStyle(V);return _.getCustomStyle(P,M)}return P}const g=n.computed(()=>!v.value);function I(V,w,O){V.checked=O,!V.raw[b.value]&&(g.value&&(a.value=V.raw[p.value]),y(V))}const E=n.computed(()=>v.value&&C.value==="OnCheckClearByClick"),S=n.computed(()=>!v.value||v.value&&(C.value==="OnCheckAndClick"||C.value==="OnClick"));function j(V,w,O){if(V.raw[b.value]){O==null||O.preventDefault(),O==null||O.stopPropagation();return}a.value=V.raw[p.value],r.value=w,E.value&&l(),S.value&&(y(V),R()),t.emit("clickItem",{data:h.value,index:w,dataItem:V.raw}),t.emit("activeChange",h.value)}return{getKey:T,selectedItems:h,listViewItemClass:k,listViewItemStyle:B,updateSelectedItems:R,onCheckItem:I,onClickItem:j}}const Fe=n.defineComponent({name:"FListView",props:dt,emits:["afterSearch","checkValuesChange","clickItem","selectItem","unSelectItem","selectionChange","removeItem","change","activeChange","pageIndexChanged","pageSizeChanged","changed","selectionUpdate"],setup(e,t){const o=n.ref(),i=n.ref(!0),m=n.ref(!1),f=n.ref([]),p=0,b=n.ref(e.columns),F=A.useFilter(e,t),v=A.useIdentify(e),C=A.useHierarchy(e),s=A.useGroupData(e,v),r=A.useDataView(e,new Map,F,C,v),a=A.useSelection(e,r,v,f,t),c=ut(e,o),l=A.usePagination(e,r),d=n.computed(()=>r.dataView.value.length),y=A.useRow(e,t,a,v),u=A.useEdit(e,t,v,y,f),h=A.useVisualDataBound(e),N=A.useVisualDataCell(e,{},h),R=A.useVisualDataRow(e,r,u,C,v,h,N),T=A.useVisualGroupRow(e,v,N,R),k=A.useVisualSummaryRow(e,v,N,R),B=A.useVisualData(e,b,r,d,p,R,T,k),{getVisualData:g}=B;f.value=g(0,d.value+p-1);const I=n.computed(()=>{const $={"f-list-view":!0,"f-list-view-multiple":e.multiSelect};return e.size!=="default"&&($[`${e.size}-item`]=!0),_.getCustomClass($,e.customClass)}),E=n.computed(()=>!!t.slots.footer||i.value);function S(){return e.header==="SearchBar"?Se:e.header==="ContentHeader"?ht:Se}const j=S(),{renderHeader:V}=j(e,t,c),w=yt(),O=bt(e,t,r,w),P=Ct(e,t,f,O,w,a),{renderListArea:M}=vt(e,t,f,r,s,w,a,B,P,O);function x($){c.search($)}function D($){$&&(r.load($),f.value=g(0,d.value+p-1))}function H(){a.clearSelection(),w.clearActiveItem()}function ie(){return P.selectedItems.value}function ae(){return P.selectedItems.value.map($=>$[v.idField.value])}function Q($){a.selectedValues.value=$,P.updateSelectedItems()}function Z(){return a.currentSelectedDataId.value}function q($){y.activeRowById($)}function le($){const G=v.idField.value,U=f.value.find(ce=>ce.raw[G]===$),K=f.value.findIndex(ce=>ce.raw[G]===$);U&&K>-1&&P.onClickItem(U,K)}function At($){const G=v.idField.value,U=f.value.find(K=>K.raw[G]===$);U&&y.changeRow(U)}function Dt($){l.updatePagination($)}function Ht($){return f.value.filter(G=>$.includes(G.raw[e.idField]))}t.expose({search:x,updateDataSource:D,clearSelection:H,getSelections:ie,updateSelectionByIds:Q,getSelectionIds:ae,activeRowById:q,getCurrentRowId:Z,clickRowItemById:le,updatePagination:Dt,getVisibleDataByIds:Ht,selectRowById:At});function qt($){e.multiSelect&&($.preventDefault(),$.stopPropagation())}n.watch(()=>e.selectionValues,($,G)=>{$!==G&&Q($)});const Gt=A.useSidebar(e,a),{sidebarWidth:_t,showSidebarCheckBox:Fn}=Gt,zt=A.useColumn(e,t),{applyColumnSorter:wn,columnContext:Ut,updateColumnRenderContext:Tn}=zt,Wt=A.useVirtualScroll(e,r,f,Ut,B,d,p,_t,u),{shouldRenderPagination:Xt}=l,{renderDataGridPagination:Yt}=A.getPagination(e,t,r,Wt,l,a);return()=>n.createVNode("div",{class:I.value,onClick:qt},[V(),n.createVNode("div",{ref:o,class:"f-list-view-content",onMouseover:()=>{m.value=!0},onMouseleave:()=>{m.value=!1}},[M()]),E.value&&n.createVNode("div",{class:"f-list-view-footer"},[e.footerTemplate?e.footerTemplate():t.slots.footer&&t.slots.footer()]),Xt.value&&Yt()])}}),St={id:String,type:{type:String,default:"primary"},disabled:{type:Boolean,default:!1},size:{type:String,default:"middle"},icon:{type:String},customClass:{type:Object,default:{}}};function Ft(e,t){function o(i){i.stopPropagation(),e.disabled||t.emit("click",i)}return{onClickButton:o}}function wt(e){const t=n.computed(()=>{const i={"f-icon":!0};if(e.icon){const m=e.icon.trim().split(" ");m&&m.length&&m.reduce((f,p)=>(f[p]=!0,f),i)}return i}),o=n.computed(()=>!!(e.icon&&e.icon.trim()));return{iconClass:t,shouldShowIcon:o}}const we=n.defineComponent({name:"FButton",props:St,emits:["click"],setup(e,t){const{onClickButton:o}=Ft(e,t),{iconClass:i,shouldShowIcon:m}=wt(e),f=n.computed(()=>{const p={btn:!0,"btn-lg":e.size==="large","btn-md":e.size!=="large"&&e.size!=="small","btn-sm":e.size==="small","btn-icontext":m.value};return p[`btn-${e.type}`]=!0,e.customClass&&Object.keys(e.customClass).reduce((b,F)=>(b[F]=e.customClass[F],b),p),p});return()=>n.createVNode("button",{class:f.value,disabled:e.disabled,onClick:p=>o(p)},[m.value&&n.createVNode("i",{class:i.value},null),t.slots.default&&t.slots.default()])}}),Tt=new Map([["appearance",ne.resolveAppearance]]),Vt={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/combo-list.schema.json",title:"combo-list",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a combo list",type:"string"},type:{description:"The type string of number combo list component",type:"string",default:"combo-list"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disabled:{description:"",type:"boolean",default:!1},enableClear:{description:"",type:"boolean",default:!1},editable:{description:"",type:"boolean",default:!1},enableLinkLabel:{description:"",type:"boolean",default:!1},label:{description:"",type:"string",default:""},lableWidth:{description:"",type:"number"},placeholder:{description:"",type:"string",default:"请选择"},idField:{description:"",type:"string",default:"id"},valueField:{description:"",type:"string",default:"id"},titleField:{description:"",type:"string",default:"name"},textField:{description:"",type:"string",default:"name"},dataSourceType:{description:"",type:"string",default:"static"},data:{description:"",type:"array"},remote:{description:"",type:"string"},readonly:{description:"",type:"boolean",default:!1},required:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},textAlign:{description:"",type:"string",enum:["left","middle","right"],default:"left"},multiSelect:{description:"",type:"boolean",default:!1},maxLength:{description:"",type:"number",default:null},visible:{description:"",type:"boolean",default:!0},onBlur:{description:"",type:"string",default:""},onClickLinkLabel:{description:"",type:"sting",default:""},maxHeight:{description:"",type:"number",default:350},minPanelWidth:{description:"",type:"number",default:160},popupOnClick:{description:"",type:"boolean",default:!0},separator:{description:"",type:"string",default:","},viewType:{description:"",type:"string",default:"tag"},enableSearch:{description:"启用搜索",type:"boolean",default:!0},enableHighlightSearch:{description:"启用高亮搜索",type:"boolean",default:!1},beforeOpen:{description:"打卡面板前回调",type:"string"},onChange:{description:"值变化事件",type:"string",default:""},onInput:{description:"输入事件",type:"string",default:""},onClear:{description:"清空事件",type:"string",default:""},"onUpdate:modelValue":{description:"",type:"object"}},required:["type"],ignore:["id","appearance","binding","visible"]};function kt(e,t,o){return t}function Ot(){function e(t,o,i){const m={};return m.beforeOpen=f=>o.call("beforeOpen",t,[f,t],i),m}return{resolve:e}}const re={id:{type:String},data:{type:Array,default:[]},disabled:{default:!1,type:Boolean},dropDownIcon:{type:String,default:'<span class="f-icon f-icon-arrow-chevron-down"></span>'},editable:{default:!1,type:Boolean},enableClear:{default:!0,type:Boolean},enableSearch:{type:Boolean,default:!1},enableTitle:{default:!0,type:Boolean},fitEditor:{default:!1,type:Boolean},forcePlaceholder:{default:!1,type:Boolean},hidePanelOnClear:{default:!0,type:Boolean},idField:{default:"id",type:String},mapFields:{type:Object},maxHeight:{default:350,type:Number},maxLength:{type:Number},multiSelect:{type:Boolean,default:!1},modelValue:{},placeholder:{type:String,default:"请选择"},placement:{type:String,default:"auto"},readonly:{default:!1,type:Boolean},remote:{default:null,type:Object},remoteSearch:{default:!1,type:Boolean},separator:{default:",",type:String},tabIndex:{type:Number,default:-1},textField:{default:"name",type:String},titleField:{default:"name",type:String},valueField:{default:"id",type:String},viewType:{default:"tag",type:String},change:{type:Function,default:()=>{}},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1},autoHeight:{type:Boolean,default:!0},beforeOpen:{type:Function,default:null},load:{type:Function},searchOption:{type:[Boolean,Function],default:!1},enableHighlightSearch:{type:Boolean,default:!0},minPanelWidth:{type:Number,default:160},popupOnClick:{type:Boolean,default:!0}},Nt=Object.assign({},re,{readonly:{}}),Te=ne.createPropsResolver(re,Vt,Tt,kt),Pt=Ot(),Mt={dataSource:{type:Array,default:[]},enableSearch:{type:Boolean,default:!1},idField:{type:String,default:"id"},multiSelect:{type:Boolean,default:!1},selectedValues:{type:String,default:""},separator:{type:String,default:","},textField:{type:String,default:"name"},titleField:{type:String,default:"name"},width:{type:Number},maxHeight:{type:Number},valueField:{type:String,default:"id"},onSelectionChange:{type:Function,default:()=>{}},searchOption:{type:[Boolean,Function],default:!1},enableHighlightSearch:{type:Boolean,default:!0}},It=n.defineComponent({name:"FComboListContainer",props:Mt,emits:["selectionChange"],setup(e,t){const o=n.ref(),i=n.ref(e.dataSource),m=n.ref([]),f=n.ref(e.separator),p=n.ref(e.width),b=n.ref(e.maxHeight),F=n.ref(String(e.selectedValues).split(f.value)),v=n.computed(()=>e.multiSelect),C=n.computed(()=>({enableSelectRow:!0,multiSelect:e.multiSelect,multiSelectMode:"OnCheckAndClick",showCheckbox:v.value,showSelectAll:!1,showSelection:!0}));n.watch(e.dataSource,()=>{i.value=e.dataSource}),n.computed(()=>e.enableSearch?"SearchBar":"ContentHeader");const s=n.computed(()=>{const d={};return p.value!==void 0&&(d.width=`${p.value}px`),b.value!==void 0&&b.value>0&&(d.maxHeight=`${b.value}px`),d});function r(d){o.value.search(d)}function a(d){m.value=d.map(y=>Object.assign({},y)),F.value=d.map(y=>y[e.idField]),t.emit("selectionChange",m.value)}function c(d){if(e.enableHighlightSearch)return;let y=[];const{searchOption:u}=e;typeof u=="function"?y=i.value.filter(h=>u(d,h)):y=i.value.filter(h=>h[e.valueField].indexOf(d)>-1||h[e.textField].indexOf(d)>-1),o.value.updateDataSource(y)}n.watch([()=>e.selectedValues],([d])=>{e.multiSelect?F.value=d.split(f.value):F.value=[d]});function l(d){o.value.activeRowById(d)}return n.onMounted(()=>{var d,y;if(!e.multiSelect){const u=(d=F.value)==null?void 0:d[0];let h=u;if(!z.isUndefined(u)){const N=typeof u,R=typeof((y=i.value[0])==null?void 0:y[e.valueField||e.idField]);R==="number"&&N!==R&&(h=Number(u)),R==="boolean"&&N!==R&&(h=u==="true"?!0:u==="false"?!1:u),l(h)}}}),t.expose({search:r,activeRowById:l}),()=>n.createVNode("div",{class:"f-combo-list-container",style:s.value},[n.createVNode(Oe,{ref:o,size:"small",itemClass:"f-combo-list-item",itemContentClass:"text-truncate",header:"ContentHeader",headerClass:"f-combo-list-search-box",data:i.value,idField:e.idField,textField:e.textField,titleField:e.titleField,multiSelect:e.multiSelect,selection:C.value,enableHighlightSearch:e.enableHighlightSearch,selectionValues:F.value,onSelectionUpdate:a,onAfterSearch:c},null)])}});function Bt(e){const{t}=ee.useI18n(),o=n.ref(""),i=n.ref(e.modelValue),m=n.ref(e.data||[]),f=n.ref(e.editable);function p(r){const a=e.multiSelect?String(r).split(e.separator):[String(r)],c=a.map(y=>[y,!0]),l=new Map(c);return m.value.filter(y=>l.has(String(y[e.valueField]))).sort((y,u)=>{const h=a.indexOf(y[e.valueField]),N=a.indexOf(u[e.valueField]);return h-N})}function b(r){const a=p(r).map(c=>c[e.textField]).join(e.separator);o.value=f.value?a||r:a}function F(r){if(e.multiSelect){const a=r.split(e.separator).map(l=>[l,!0]),c=new Map(a);return m.value.filter(l=>c.has(l[e.textField]))}return m.value.filter(a=>""+a[e.textField]===r)}function v(r){const a={};return a[e.idField]=r,a[e.textField]=r,[a]}function C(r){let a=F(r);const c=a&&a.length>0;return f.value&&!c&&(a=v(r)),a}function s(){const{url:r,method:a="GET",headers:c={"Content-Type":"application/json;charset=utf-8;"},body:l=null}=e.remote;if(!r)return;const d=a.toLowerCase()==="get"?{method:a,headers:c}:{method:a,headers:c,body:l};let y=!1;fetch(new Request(r,d)).then(u=>{var N,R;if(u.status===200)return y=!!((R=(N=u.headers)==null?void 0:N.get("content-type"))!=null&&R.includes("application/json")),y?u.text():u.json();throw u.status===405?new Error(t("comboList.remoteError")):new Error(u.statusText)}).then(u=>{u.length&&(m.value=y?JSON.parse(u):u)}).catch(u=>{console.warn(u)})}return e.remote&&(e.load?e.load().then(r=>{m.value=r}).catch(r=>{console.log(r)}):s()),n.watch(()=>e.data,()=>{m.value=e.data}),n.watch([m],([r])=>{if(e.modelValue!=null){const a=r.find(c=>c[e.valueField]===e.modelValue);a&&(o.value=a[e.textField])}}),n.watch(()=>e.modelValue,r=>{i.value=r,b(r)}),b(e.modelValue),{dataSource:m,displayText:o,editable:f,modelValue:i,getItemsByDisplayText:F,getItemsByValue:p,getSelectedItemsByDisplayText:C}}const X=n.defineComponent({name:"FComboList",props:re,emits:["clear","update:modelValue","change","input"],setup(e,t){const{t:o}=ee.useI18n(),i=n.ref(),m=n.ref(),f=n.ref(e.disabled||e.readonly),p=n.ref(e.enableClear),b=n.ref(e.enableSearch),F=n.ref(e.readonly),{dataSource:v,displayText:C,editable:s,modelValue:r,getSelectedItemsByDisplayText:a,getItemsByDisplayText:c,getItemsByValue:l}=Bt(e),d=n.ref(e.dropDownIcon);d.value==='<span class="f-icon f-icon-arrow-chevron-down"></span>'&&(d.value='<span id="'+e.id+'-icon-dropdown" class="f-icon f-icon-arrow-chevron-down"></span>');const y=n.computed(()=>e.multiSelect),u=n.computed(()=>m.value?m.value.elementRef.getBoundingClientRect().width:0);function h(){!y.value&&m.value&&m.value.hidePopup()}function N(P){C.value=P.map(x=>x[e.textField]).join(e.separator);let M="";P.length===1?M=P[0][e.valueField]:M=P.map(x=>x[e.valueField]).join(e.separator),r.value!==M&&(r.value=M,t.emit("update:modelValue",r.value),t.emit("change",P,r.value))}function R(){const P=l(r.value);N(P)}function T(){F.value||C.value}function k(P){var M;r.value="",(M=i.value)==null||M.activeRowById(""),t.emit("update:modelValue",""),t.emit("change",[],""),t.emit("clear")}function B(P){var M,x;e.enableSearch&&e.enableHighlightSearch&&((M=i.value)==null||M.search(P)),(x=i.value)==null||x.activeRowById(P),t.emit("change",[r.value],r.value)}function g(P){if(e.multiSelect){const M=l(r.value),D=M.map(H=>H[e.idField||e.valueField]).join(e.separator);r.value!==D&&(r.value=D,t.emit("update:modelValue",r.value),t.emit("change",M,r.value))}}function I(){return C.value}function E(P){const{value:M}=P.target;B(M),t.emit("input",M)}function S(){m.value.hidePopup()}function j(P){v.value=P}function V(){return v.value}const w={getDisplayText:I,hidePopup:S,updateDataSource:j,getData:V};t.expose(w);function O(P){const M=typeof e.beforeOpen=="function";return!e.beforeOpen||!M?Promise.resolve(!0):Promise.resolve().then(()=>e.beforeOpen({instance:w})).then(x=>typeof(x==null?void 0:x.canOpen)=="boolean"?x==null?void 0:x.canOpen:!0)}return n.watch([()=>e.disabled,()=>e.editable,()=>e.enableClear,()=>e.enableSearch,()=>e.readonly],([P,M,x,D,H])=>{f.value=P,s.value=M,p.value=x,b.value=D,F.value=H}),()=>n.createVNode(ke,{ref:m,id:e.id,disable:f.value,readonly:F.value,forcePlaceholder:e.forcePlaceholder,editable:s.value,buttonContent:d.value,placeholder:e.placeholder==="请选择"?o("comboList.placeholder"):e.placeholder,enableClear:p.value,maxLength:e.maxLength,tabIndex:e.tabIndex,enableTitle:e.enableTitle,multiSelect:e.multiSelect,inputType:e.multiSelect?e.viewType:"text",modelValue:C.value,"onUpdate:modelValue":P=>C.value=P,focusOnCreated:e.focusOnCreated,selectOnCreated:e.selectOnCreated,onClear:k,onClick:T,onChange:g,onBlur:R,onInput:E,beforeOpen:O,placement:e.placement,popupMinWidth:e.minPanelWidth,popupClass:"f-combo-list-wrapper",popupOnClick:e.popupOnClick,limitContentBySpace:!0},{default:()=>[n.createVNode(It,{ref:i,idField:e.idField,valueField:e.valueField,textField:e.textField,titleField:e.titleField,dataSource:v.value,selectedValues:r.value,separator:e.separator,multiSelect:e.multiSelect,enableSearch:b.value,maxHeight:e.maxHeight,enableHighlightSearch:e.enableHighlightSearch,width:e.fitEditor?u.value:void 0,onSelectionChange:P=>{N(P),h()}},null)]})}}),Ve={convertFrom:(e,t)=>(e.editor.remote||{})[t],convertTo:(e,t,o)=>{e.editor.remote=e.editor.remote||{},e.editor.remote[t]=o}};class Rt extends Me.InputBaseProperty{constructor(t,o){super(t,o)}getCommonEditorProperties(t){var o,i,m,f,p,b;return{viewType:{visible:!!((o=t.editor)!=null&&o.multiSelect),description:"数据展示类型,有标签和文本两种方式",title:"数据展示类型",type:"enum",editor:{data:[{id:"tag",name:"标签"},{id:"text",name:"文本"}]},refreshPanelAfterChanged:!0},separator:{visible:!!((i=t.editor)!=null&&i.multiSelect)&&((m=t.editor)==null?void 0:m.viewType)==="text",description:"下拉列表启用多选且数据展示类型为文本时的分隔符",title:"分隔符",type:"enum",editor:{data:[{id:",",name:"逗号(,)"},{id:"#",name:"井号(#)"},{id:".",name:"句号(.)"},{id:"|",name:"竖线(|)"}]}},editable:{description:"",title:"允许编辑",type:"boolean",refreshPanelAfterChanged:!0,readonly:!!((f=t.editor)!=null&&f.multiSelect)&&(((p=t.editor)==null?void 0:p.viewType)==="tag"||!t.editor.viewType)},enableHighlightSearch:{visible:!!((b=t.editor)!=null&&b.editable),description:"编辑状态下启用高亮搜索",title:"启用高亮搜索",type:"boolean"}}}getEditorProperties(t){var f,p;const o=this;let i="";if(((f=t==null?void 0:t.binding)==null?void 0:f.type)==="Form"){const b=this.schemaService.getFieldByIDAndVMID(t.binding.field,this.viewModelId);(p=b==null?void 0:b.schemaField)!=null&&p.type&&(i=b.schemaField.type.$type)}return o.getComponentConfig(t,{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:!t.editor.dataSourceType||t.editor.dataSourceType==="static",...o.getItemCollectionEditor(t,t.editor.valueField,t.editor.textField),refreshPanelAfterChanged:!0},url:{visible:t.editor.dataSourceType==="dynamic",$converter:Ve,description:"",title:"服务端API",type:"string"},body:{visible:t.editor.dataSourceType==="dynamic",$converter:Ve,description:"",title:"服务端API参数",type:"string"},textField:{description:"",title:"数据源显示字段",type:"string",readonly:t.editor.dataSourceType!=="dynamic"},valueField:{description:"",title:"数据源值字段",type:"string",readonly:t.editor.dataSourceType!=="dynamic"},multiSelect:{description:"",title:"启用多选",visible:!i||i==="StringType",type:"boolean",refreshPanelAfterChanged:!0},maxLength:{description:"",title:"最大输入长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1}},...this.getCommonEditorProperties(t)},(b,F)=>{if(!b||!F.editor)return;const v=this;switch(b.propertyID){case"dataSourceType":{b.propertyValue==="static"?(F.editor.valueField="value",F.editor.textField="name",F.editor.remote=null):b.propertyValue==="dynamic"&&(F.editor.remote={method:"GET"},F.editor.valueField="value",F.editor.textField="name");break}case"data":{!v.checkEnumDataReadonly(F)&&F.formatter&&(F.formatter.data=[...b.propertyValue]);break}case"viewType":b.propertyValue==="tag"&&(F.editor.editable=!1)}})}getGridFieldEdtiorProperties(t,o){var p,b,F,v,C,s;const i=this;let m="";if(((p=t==null?void 0:t.binding)==null?void 0:p.type)==="Form"){const r=this.schemaService.getFieldByIDAndVMID(t.binding.field,this.viewModelId);(b=r==null?void 0:r.schemaField)!=null&&b.type&&(m=r.schemaField.type.$type)}return i.getComponentConfig(t,{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:!((F=t.editor)!=null&&F.dataSourceType)||((v=t.editor)==null?void 0:v.dataSourceType)==="static",...i.getItemCollectionEditor(t,(C=t.editor)==null?void 0:C.valueField,(s=t.editor)==null?void 0:s.textField),refreshPanelAfterChanged:!0},textField:{description:"",title:"数据源显示字段",type:"string",readonly:!0},valueField:{description:"",title:"数据源值字段",type:"string",readonly:!0},multiSelect:{description:"",title:"启用多选",visible:m==="StringType",type:"boolean",refreshPanelAfterChanged:!0},maxLength:{description:"",title:"最大输入长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1}},...this.getCommonEditorProperties(t)},(r,a)=>{if(!r||!a.editor)return;const c=this;switch(r.propertyID){case"dataSourceType":{r.propertyValue==="static"?(a.editor.valueField="value",a.editor.textField="name",a.editor.remote=null):r.propertyValue==="dynamic"&&(a.editor.remote={method:"GET"},a.editor.valueField="value",a.editor.textField="name");break}case"data":{!c.checkEnumDataReadonly(a)&&a.formatter&&(a.formatter.data=[...r.propertyValue]);break}}})}setEditorPropertyRelates(t,o,i){if(!t||!o.editor)return;const m=this;switch(t.propertyID){case"dataSourceType":{t.propertyValue==="static"&&(o.editor.valueField="value",o.editor.textField="name",o.editor.remote={});break}case"data":{!m.checkEnumDataReadonly(o)&&o.formatter&&(o.formatter.data=[...t.propertyValue]);break}}}changeBindingField(t,o,i){var f;super.changeBindingField(t,o);const m=i;t.editor&&((f=m==null?void 0:m.type)==null?void 0:f.$type)===_.FormSchemaEntityFieldType$Type.EnumType&&(t.editor.data=m.type.enumValues||[])}getEventPropertyConfig(t,o="card",i,m){const f=this;let p=[{label:"onChange",name:"值变化事件"},{label:"onClear",name:"清空事件"},{label:"beforeOpen",name:"打开下拉面板前"}];i&&(p=p.concat(i)),this.appendFieldValueChangeEvents(t,p);const b=f.eventsEditorUtils.formProperties(t,f.viewModelId,p);return{title:"事件",hideTitle:!0,properties:f.createBaseEventProperty(b),tabId:"commands",tabName:"交互",setPropertyRelates(C,s){const r=C.propertyValue;delete t[f.viewModelId],r&&(r.setPropertyRelates=this.setPropertyRelates,f.eventsEditorUtils.saveRelatedParameters(t,f.viewModelId,r.events,r)),m&&m(C,s,r);const a=f.designViewModelUtils.getDgViewModel(f.viewModelId);a&&f.designViewModelField&&a.changeField(f.designViewModelField.id,{valueChanging:t.fieldValueChanging,valueChanged:t.fieldValueChanged}),t.editor.beforeOpen!==t.beforeOpen&&(t.editor.beforeOpen=t.beforeOpen),t.editor.onChange!==t.onChange&&(t.editor.onChange=t.onChange),t.editor.onClear!==t.onClear&&(t.editor.onClear=t.onClear)}}}}function jt(e,t){const o=e.schema;function i(m,f){return new Rt(m,t).getPropertyConfig(o,f)}return{getPropsConfig:i}}const xt=n.defineComponent({name:"FComboListDesign",props:Nt,emits:["clear","update:modelValue","change"],setup(e,t){const o=n.ref(),i=n.inject("designer-host-service"),m=n.inject("design-item-context"),f=jt(m,i),p=Pe.useDesignerComponent(o,m,f);return n.onMounted(()=>{o.value.componentInstance=p}),t.expose(p.value),()=>n.createVNode(Ne,{ref:o,buttonContent:e.dropDownIcon,readonly:!0,editable:!1,forcePlaceholder:!0,placeholder:e.placeholder,enableClear:!0},null)}});X.register=(e,t,o,i)=>{e["combo-list"]=X,t["combo-list"]=Te,i["combo-list"]={callbackResolver:Pt}},X.registerDesigner=(e,t,o)=>{e["combo-list"]=xt,t["combo-list"]=Te};const Y=_.withInstall(X),J=n.defineComponent({name:"FOrder",props:W,emits:["change"],setup(e,t){const o=n.ref(),i=n.ref(e.items);function m(){var h;const u=Array.isArray(e.items)?e.items:[];i.value=[...u],(h=o.value)==null||h.updateDataSource(i.value)}n.watch(()=>e.items,m);const f=n.ref("排序列"),p=n.ref("排序方式"),b=n.ref("添加排序列"),F=[{id:"asc",name:"升序"},{id:"desc",name:"降序"}],v=n.ref(new Map);function C(){const u=i.value.map(h=>[h.id,!0]);v.value=new Map(u)}C();const s=n.computed(()=>e.dataSource.map(u=>(u.disabled=v.value.has(u.id),u))),r=n.computed(()=>({"f-order":!0}));function a(u){i.value=i.value.filter(h=>h.id!==u.id),C(),t.emit("change",i.value)}function c(){i.value=[...i.value,{id:Date.now().toString(),name:"",order:"asc"}],C(),t.emit("change",i.value)}function l(u){if(u&&u.length===1){const h=u[0],N=i.value.find(R=>R.id===h.id);N&&(N.name=h.name)}C(),t.emit("change",i.value)}function d(u){if(u&&u.length){const h=new Map;u.reduce((N,R)=>(N.set(R.id,R),N),h),i.value=u.map(N=>h.get(N.id)),t.emit("change",i.value)}}function y(){return n.createVNode(Fe,{ref:o,style:"flex:1",data:i.value,draggable:!0,view:"DraggableView","keep-order":!0,itemClass:"f-order-item",onRemoveItem:a,onChange:d},{header:()=>n.createVNode("div",{class:"f-order-header"},[n.createVNode("span",{class:"f-order-header-order-field"},[f.value]),n.createVNode("span",{class:"f-order-header-order-type"},[p.value])]),itemContent:u=>n.createVNode("div",{class:"f-order-item-content"},[n.createVNode(Y,{class:"f-order-item-content-order-field",data:s.value,valueField:"id",textField:"name",idField:"id",modelValue:u.raw.id,"onUpdate:modelValue":h=>u.raw.id=h,onChange:l,onClear:l},null),n.createVNode(Y,{class:"f-order-item-content-order-type",data:F,valueField:"id",textField:"name",idField:"id",modelValue:u.raw.order,"onUpdate:modelValue":h=>u.raw.order=h,onChange:l},null)]),footer:()=>n.createVNode("div",{class:"f-order-footer"},[n.createVNode(we,{type:"link",class:"f-order-add-button",onClick:c},{default:()=>n.createVNode(n.Fragment,null,[n.createVNode("span",{class:"f-order-add-icon"},[n.createVNode("i",{class:"f-icon f-icon-add"},null)]),b.value])})])})}return()=>n.createVNode("div",{class:r.value},[y()])}});function $t(e,t,o){var E;const i="",m="",f=n.ref();let p;function b(){return(t==null?void 0:t.schema.componentType)!=="frame"}function F(){return!1}function v(){return(t==null?void 0:t.schema.componentType)!=="frame"}function C(){return(t==null?void 0:t.schema.componentType)==="frame"}function s(S){if(!S||!S.value)return null;if(S.value.schema&&S.value.schema.type==="component")return S.value;const j=n.ref(S==null?void 0:S.value.parent),V=s(j);return V||null}function r(S=t){var O;const{componentInstance:j,designerItemElementRef:V}=S;if(!j||!j.value)return null;const{getCustomButtons:w}=j.value;return j.value.canMove||w&&((O=w())!=null&&O.length)?V:r(S.parent)}function a(S){return!!o}function c(){return(t==null?void 0:t.schema.label)||(t==null?void 0:t.schema.title)||(t==null?void 0:t.schema.name)}function l(){}function d(S,j){var V;!S||!j||(V=t==null?void 0:t.setupContext)==null||V.emit("dragEnd")}function y(S,j){const{componentType:V}=S;let w=ne.getSchemaByTypeForDesigner(V,S,j);const O=V.toLowerCase().replace(/-/g,"_");return w&&!w.id&&w.type===V&&(w.id=`${O}_${Math.random().toString().slice(2,6)}`),w}function u(S){}function h(...S){}function N(S){if(!S)return;const j=t==null?void 0:t.schema,{formSchemaUtils:V}=S;if(j&&V.getExpressions().length){const w=V.getExpressions().findIndex(O=>O.target===j.id);w>-1&&V.getExpressions().splice(w,1)}}function R(S){if(!S||!(t!=null&&t.schema))return;const j=t.schema,{formSchemaUtils:V}=S;V.removeCommunicationInComponent(j)}function T(S){N(S),R(S),t!=null&&t.schema.contents&&t.schema.contents.map(j=>{let V=j.id;j.type==="component-ref"&&(V=j.component);const w=e.value.querySelectorAll(`#${V}-design-item`);w!=null&&w.length&&Array.from(w).map(O=>{var P;(P=O==null?void 0:O.componentInstance)!=null&&P.value.onRemoveComponent&&O.componentInstance.value.onRemoveComponent(S)})})}function k(){}function B(S){var V,w;if(!((V=t==null?void 0:t.schema)!=null&&V.id))return;!p&&S&&(p=S.formSchemaUtils);let j="";{const{text:O,title:P,label:M,mainTitle:x,name:D,type:H}=t.schema;j=O||P||M||x||D||((w=fe[H])==null?void 0:w.name)}j&&p.getControlBasicInfoMap().set(t.schema.id,{componentTitle:j,parentPathName:j})}function g(S){var O;const{changeObject:j}=S,{propertyID:V,propertyValue:w}=j;if(["text","title","label","name","mainTitle"].includes((O=S==null?void 0:S.changeObject)==null?void 0:O.propertyID)&&V&&w&&(B(),p)){const P=p.getControlBasicInfoMap(),M=P.keys().toArray().filter(x=>{var D,H;return((D=P.get(x))==null?void 0:D.reliedComponentId)===((H=t==null?void 0:t.schema)==null?void 0:H.id)});M!=null&&M.length&&M.forEach(x=>{const D=P.get(x).parentPathName.split(" > ");D[0]=w,P.get(x).parentPathName=D.join(" > ")})}}function I(S){g(S)}return f.value={canMove:b(),canSelectParent:F(),canDelete:v(),canNested:!C(),contents:t==null?void 0:t.schema.contents,elementRef:e,parent:(E=t==null?void 0:t.parent)==null?void 0:E.componentInstance,schema:t==null?void 0:t.schema,styles:i,designerClass:m,canAccepts:a,getBelongedComponentInstance:s,getDraggableDesignItemElement:r,getDraggingDisplayText:c,getPropConfig:h,getDragScopeElement:l,onAcceptMovedChildElement:d,onChildElementMovedOut:u,addNewChildComponentSchema:y,triggerBelongedComponentToMoveWhenMoved:n.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:n.ref(!1),onRemoveComponent:T,getCustomButtons:k,onPropertyChanged:I,setComponentBasicInfoMap:B,updateContextSchema:t==null?void 0:t.updateContextSchema},f}const Et=n.defineComponent({name:"FOrderDesign",props:W,emits:["change"],setup(e,t){const o=n.ref(e.items),i=n.ref("排序列"),m=n.ref("排序方式"),f=n.ref("添加排序列"),p=[{id:"asc",name:"升序"},{id:"desc",name:"降序"}],b=n.ref(new Map),F=n.ref(),v=n.inject("design-item-context"),C=$t(F,v);n.onMounted(()=>{F.value.componentInstance=C}),t.expose(C.value);function s(){const h=o.value.map(N=>[N.id,!0]);b.value=new Map(h)}s();const r=n.computed(()=>e.dataSource.map(h=>(h.disabled=b.value.has(h.id),h))),a=n.computed(()=>({"f-order":!0}));function c(h){o.value=o.value.filter(N=>N.id!==h.id),s(),t.emit("change",o.value)}function l(){o.value=[...o.value,{id:Date.now().toString(),name:"",order:"asc"}],s(),t.emit("change",o.value)}function d(h){s(),t.emit("change",o.value)}function y(h){if(h&&h.length){const N=new Map;h.reduce((R,T)=>(R.set(T.id,T),R),N),o.value=h.map(R=>N.get(R.id)),t.emit("change",o.value)}}function u(){return n.createVNode(Fe,{style:"flex:1",data:o.value,draggable:!0,view:"DraggableView","keep-order":!0,itemClass:"f-order-item",onRemoveItem:c,onChange:y},{header:()=>n.createVNode("div",{class:"f-order-header"},[n.createVNode("span",{class:"f-order-header-order-field"},[i.value]),n.createVNode("span",{class:"f-order-header-order-type"},[m.value])]),itemContent:h=>n.createVNode("div",{class:"f-order-item-content"},[n.createVNode(Y,{class:"f-order-item-content-order-field",data:r.value,valueField:"id",textField:"name",idField:"id",modelValue:h.id,"onUpdate:modelValue":N=>h.id=N,onChange:d,onClear:d},null),n.createVNode(Y,{class:"f-order-item-content-order-type",data:p,valueField:"id",textField:"name",idField:"id",modelValue:h.order,"onUpdate:modelValue":N=>h.order=N,onChange:d},null)]),footer:()=>n.createVNode("div",{class:"f-order-footer"},[n.createVNode(we,{type:"link",class:"f-order-add-button",onClick:l},{default:()=>n.createVNode(n.Fragment,null,[n.createVNode("span",{class:"f-order-add-icon"},[n.createVNode("i",{class:"f-icon f-icon-add"},null)]),f.value])})])})}return()=>n.createVNode("div",{ref:F,class:a.value},[u()])}}),Lt={install(e){e.component(J.name,J)},register(e,t,o,i){e.order=J,t.order=oe},registerDesigner(e,t,o){e.order=Et,t.order=oe}};L.FOrder=J,L.default=Lt,L.orderProps=W,L.propsResolver=oe,Object.defineProperties(L,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ref as
|
|
1
|
+
import { ref as C, computed as k, watch as W, createVNode as f, defineComponent as I, watchEffect as Te, Fragment as U, createTextVNode as J, inject as we, onMounted as Pe } from "vue";
|
|
2
2
|
import { cloneDeep as Z, isPlainObject as H } from "lodash-es";
|
|
3
3
|
import { useI18n as V } from "vue-i18n";
|
|
4
4
|
import { getSchemaByTypeForDesigner as ke } from "../dynamic-resolver/index.esm.js";
|
|
@@ -6,7 +6,7 @@ import { withInstall as Fe } from "../common/index.esm.js";
|
|
|
6
6
|
function K(e, t) {
|
|
7
7
|
let n;
|
|
8
8
|
function o(a) {
|
|
9
|
-
const { properties: d, title: h, ignore: i } = a, r = i && Array.isArray(i), v = Object.keys(d).reduce((m, S) => ((!r || !i.find((
|
|
9
|
+
const { properties: d, title: h, ignore: i } = a, r = i && Array.isArray(i), v = Object.keys(d).reduce((m, S) => ((!r || !i.find((N) => N === S)) && (m[S] = d[S].type === "object" && d[S].properties ? o(d[S]) : Z(d[S].default)), m), {});
|
|
10
10
|
if (h && (!r || !i.find((m) => m === "id"))) {
|
|
11
11
|
const m = h.toLowerCase().replace(/-/g, "_");
|
|
12
12
|
v.id = `${m}_${Math.random().toString().slice(2, 6)}`;
|
|
@@ -130,7 +130,7 @@ function Me(e = {}) {
|
|
|
130
130
|
return w(l).reduce((h, i) => h && u(i, p), !0);
|
|
131
131
|
}
|
|
132
132
|
function y(l, p) {
|
|
133
|
-
const a = Object.keys(l), d = a.includes("allOf"), h = a.includes("anyOf"), i = d || h, m = (i ? l[i ? d ? "allOf" : "anyOf" : "allOf"] : [l]).map((
|
|
133
|
+
const a = Object.keys(l), d = a.includes("allOf"), h = a.includes("anyOf"), i = d || h, m = (i ? l[i ? d ? "allOf" : "anyOf" : "allOf"] : [l]).map((N) => s(N, p));
|
|
134
134
|
return d ? !m.includes(!1) : m.includes(!0);
|
|
135
135
|
}
|
|
136
136
|
return { parseValueSchema: y };
|
|
@@ -499,61 +499,61 @@ function oe(e, t, n) {
|
|
|
499
499
|
const v = i.$converter || r;
|
|
500
500
|
return typeof v == "string" && v && o.has(v) ? o.get(v) || null : v || null;
|
|
501
501
|
}
|
|
502
|
-
function p(i, r, v, m, S,
|
|
503
|
-
return Object.keys(i).map((
|
|
504
|
-
const B =
|
|
505
|
-
T.readonly = T.readonly === void 0 ?
|
|
506
|
-
const z = b.type === "cascade" ? p(b.properties, r, v, m, S,
|
|
502
|
+
function p(i, r, v, m, S, N = "", x = "") {
|
|
503
|
+
return Object.keys(i).map((O) => {
|
|
504
|
+
const B = C(1), M = O, b = i[O], D = Object.keys(b), R = b.title, g = b.type, P = c.get(g) || { type: "input-group", enableClear: !1 }, T = b.editor ? Object.assign({}, P, b.editor) : Object.assign({}, P), F = s(D, b, r), j = y(D, b, r);
|
|
505
|
+
T.readonly = T.readonly === void 0 ? j() : T.readonly;
|
|
506
|
+
const z = b.type === "cascade" ? p(b.properties, r, v, m, S, N, x) : [], q = !0;
|
|
507
507
|
let $ = l(b, x);
|
|
508
508
|
const A = k({
|
|
509
509
|
get() {
|
|
510
510
|
if (B.value) {
|
|
511
|
-
if (["class", "style"].find((Se) => Se ===
|
|
512
|
-
return $.convertFrom(v,
|
|
513
|
-
const G = v[
|
|
511
|
+
if (["class", "style"].find((Se) => Se === M) && !$ && ($ = o.get("/converter/appearance.converter") || null), $ && $.convertFrom)
|
|
512
|
+
return $.convertFrom(v, O, S, N);
|
|
513
|
+
const G = v[O];
|
|
514
514
|
return Object.prototype.hasOwnProperty.call(b, "defaultValue") && (G === void 0 || typeof G == "string" && G === "") ? b.type === "boolean" ? b.defaultValue : b.defaultValue || "" : G;
|
|
515
515
|
}
|
|
516
516
|
return null;
|
|
517
517
|
},
|
|
518
518
|
set(G) {
|
|
519
|
-
B.value += 1, $ && $.convertTo ? ($.convertTo(m,
|
|
519
|
+
B.value += 1, $ && $.convertTo ? ($.convertTo(m, O, G, S, N), $.convertTo(v, O, G, S, N)) : (m[O] = G, v[O] = G);
|
|
520
520
|
}
|
|
521
|
-
}), { refreshPanelAfterChanged: E, description: _, isExpand: ye, parentPropertyID: he } = b, Y = { propertyID:
|
|
522
|
-
return r[
|
|
521
|
+
}), { refreshPanelAfterChanged: E, description: _, isExpand: ye, parentPropertyID: he } = b, Y = { propertyID: M, propertyName: R, propertyType: g, propertyValue: A, editor: T, visible: F, readonly: j, cascadeConfig: z, hideCascadeTitle: q, refreshPanelAfterChanged: E, description: _, isExpand: ye, parentPropertyID: he };
|
|
522
|
+
return r[M] = Y, Y;
|
|
523
523
|
});
|
|
524
524
|
}
|
|
525
525
|
function a(i, r, v = {}) {
|
|
526
526
|
const m = {}, S = e[i];
|
|
527
527
|
return S && S.categories ? Object.keys(S.categories).map((x) => {
|
|
528
|
-
const L = S.categories[x],
|
|
529
|
-
return { categoryId: x, categoryName:
|
|
528
|
+
const L = S.categories[x], O = L == null ? void 0 : L.title, B = p(L.properties || {}, m, {}, v, r);
|
|
529
|
+
return { categoryId: x, categoryName: O, properties: B };
|
|
530
530
|
}) : [];
|
|
531
531
|
}
|
|
532
532
|
function d(i, r, v, m, S = "") {
|
|
533
|
-
const
|
|
533
|
+
const N = r.$ref.schema, x = r.$ref.converter, L = v[N], O = L.type, B = n(L), M = {}, b = e[O];
|
|
534
534
|
if (b && b.categories) {
|
|
535
535
|
const D = b.categories[i], R = D == null ? void 0 : D.title;
|
|
536
536
|
x && Object.keys(D.properties).forEach((T) => {
|
|
537
537
|
D.properties[T].$converter = x;
|
|
538
538
|
});
|
|
539
|
-
const g = (D == null ? void 0 : D.properties) || {}, P = p(g,
|
|
539
|
+
const g = (D == null ? void 0 : D.properties) || {}, P = p(g, M, B, L, m, S);
|
|
540
540
|
return { categoryId: i, categoryName: R, properties: P };
|
|
541
541
|
}
|
|
542
542
|
return { categoryId: i, categoryName: "", properties: [] };
|
|
543
543
|
}
|
|
544
544
|
function h(i, r, v, m, S) {
|
|
545
|
-
const
|
|
546
|
-
let
|
|
547
|
-
if (
|
|
545
|
+
const N = i.type, x = n(i), L = {};
|
|
546
|
+
let O = S || e[N];
|
|
547
|
+
if (O && Object.keys(O).length === 0 && v && v.getPropConfig && (O = v.getPropConfig(m)), O && O.categories) {
|
|
548
548
|
const B = [];
|
|
549
|
-
return Object.keys(
|
|
550
|
-
const b =
|
|
549
|
+
return Object.keys(O.categories).map((M) => {
|
|
550
|
+
const b = O.categories[M];
|
|
551
551
|
if (b.$ref) {
|
|
552
|
-
B.push(d(
|
|
552
|
+
B.push(d(M, b, i, r, m));
|
|
553
553
|
return;
|
|
554
554
|
}
|
|
555
|
-
const D = b == null ? void 0 : b.title, R = b == null ? void 0 : b.tabId, g = b == null ? void 0 : b.tabName, P = b == null ? void 0 : b.hide, T = b == null ? void 0 : b.hideTitle, F = p(b.properties || {}, L, x, i, r, m, b.$converter), { setPropertyRelates:
|
|
556
|
-
B.push({ categoryId:
|
|
555
|
+
const D = b == null ? void 0 : b.title, R = b == null ? void 0 : b.tabId, g = b == null ? void 0 : b.tabName, P = b == null ? void 0 : b.hide, T = b == null ? void 0 : b.hideTitle, F = p(b.properties || {}, L, x, i, r, m, b.$converter), { setPropertyRelates: j } = b, z = b == null ? void 0 : b.parentPropertyID;
|
|
556
|
+
B.push({ categoryId: M, categoryName: D, tabId: R, tabName: g, hide: P, properties: F, hideTitle: T, setPropertyRelates: j, parentPropertyID: z });
|
|
557
557
|
}), B;
|
|
558
558
|
}
|
|
559
559
|
return [];
|
|
@@ -824,7 +824,7 @@ const X = {
|
|
|
824
824
|
function pe(e, t, n, o) {
|
|
825
825
|
const {
|
|
826
826
|
t: c
|
|
827
|
-
} = V(), w =
|
|
827
|
+
} = V(), w = k(() => c("pagination.goto.prefix")), u = C(""), s = C(e.value);
|
|
828
828
|
W(s, (a, d) => {
|
|
829
829
|
a >= 1 && a <= t.value ? e.value = a : s.value = d;
|
|
830
830
|
}), W(e, (a) => {
|
|
@@ -931,7 +931,7 @@ function fe(e, t, n, o, c) {
|
|
|
931
931
|
function de(e, t) {
|
|
932
932
|
const {
|
|
933
933
|
t: n
|
|
934
|
-
} = V(), o =
|
|
934
|
+
} = V(), o = k(() => n("pagination.totalInfo.firstText")), c = k(() => n("pagination.totalInfo.lastText")), w = k(() => ({
|
|
935
935
|
"pagination-message": !0,
|
|
936
936
|
"text-truncate": !0,
|
|
937
937
|
"d-flex": !0,
|
|
@@ -958,7 +958,7 @@ function de(e, t) {
|
|
|
958
958
|
function ve(e, t, n, o, c) {
|
|
959
959
|
const {
|
|
960
960
|
t: w
|
|
961
|
-
} = V(), u =
|
|
961
|
+
} = V(), u = C(!1), s = k(() => w("pagination.show")), y = k(() => w("pagination.totalInfo.lastText")), l = k(() => ({
|
|
962
962
|
dropup: !0,
|
|
963
963
|
"dropdown-right": !0,
|
|
964
964
|
"pg-pagelist": !0,
|
|
@@ -978,13 +978,13 @@ function ve(e, t, n, o, c) {
|
|
|
978
978
|
function h(m) {
|
|
979
979
|
u.value = !1;
|
|
980
980
|
}
|
|
981
|
-
function i(m, S,
|
|
981
|
+
function i(m, S, N) {
|
|
982
982
|
const L = m * S - S + 1;
|
|
983
|
-
return Math.ceil(L /
|
|
983
|
+
return Math.ceil(L / N);
|
|
984
984
|
}
|
|
985
985
|
function r(m, S) {
|
|
986
|
-
const
|
|
987
|
-
e.value = i(e.value, t.value, S),
|
|
986
|
+
const N = e.value;
|
|
987
|
+
e.value = i(e.value, t.value, S), N !== e.value && c.emit("update:currentPage", e.value), t.value = S, u.value = !1, c.emit("update:pageSize", t.value), c.emit("changed", {
|
|
988
988
|
pageIndex: e.value,
|
|
989
989
|
pageSize: t.value
|
|
990
990
|
}), c.emit("pageSizeChanged", {
|
|
@@ -1120,7 +1120,7 @@ function ge(e, t, n, o, c) {
|
|
|
1120
1120
|
};
|
|
1121
1121
|
}
|
|
1122
1122
|
function be(e) {
|
|
1123
|
-
const t =
|
|
1123
|
+
const t = C([]);
|
|
1124
1124
|
function n(c, w, u, s) {
|
|
1125
1125
|
const y = Math.ceil(u / 2);
|
|
1126
1126
|
return c === u ? s : c === 1 ? c : u < s ? s - y < w ? s - u + c : y < w ? w - y + c : c : c;
|
|
@@ -1129,8 +1129,8 @@ function be(e) {
|
|
|
1129
1129
|
const y = [], l = Math.ceil(u / w), p = Math.ceil(s / 2), a = c <= p, d = l - p < c, h = !a && !d, i = s < l;
|
|
1130
1130
|
let r = 1;
|
|
1131
1131
|
for (; r <= l && r <= s; ) {
|
|
1132
|
-
const v = n(r, c, s, l), m = r === 2 && (h || d), S = r === s - 1 && (h || a),
|
|
1133
|
-
y.push({ label:
|
|
1132
|
+
const v = n(r, c, s, l), m = r === 2 && (h || d), S = r === s - 1 && (h || a), N = i && (m || S) ? "..." : "" + v;
|
|
1133
|
+
y.push({ label: N, value: v }), r++;
|
|
1134
1134
|
}
|
|
1135
1135
|
t.value = y;
|
|
1136
1136
|
}
|
|
@@ -1141,7 +1141,7 @@ const Q = /* @__PURE__ */ I({
|
|
|
1141
1141
|
props: X,
|
|
1142
1142
|
emits: ["changed", "pageIndexChanged", "pageSizeChanged", "update:currentPage", "update:pageSize"],
|
|
1143
1143
|
setup(e, t) {
|
|
1144
|
-
const n =
|
|
1144
|
+
const n = C(!1), o = C(e.mode), c = C(""), w = C(!1), u = C(e.pageSize), s = C(e.currentPage), y = C(e.totalItems), {
|
|
1145
1145
|
pages: l,
|
|
1146
1146
|
updatePages: p
|
|
1147
1147
|
} = be(), a = {
|
|
@@ -1153,8 +1153,8 @@ const Q = /* @__PURE__ */ I({
|
|
|
1153
1153
|
background: "rgba(250,250,252,.6)",
|
|
1154
1154
|
width: "100%",
|
|
1155
1155
|
height: "100%"
|
|
1156
|
-
}, h = k(() => !y.value || s.value === 1), i = k(() => e.pageList), r = k(() => Math.ceil(y.value / u.value)), v = k(() => !y.value || s.value === r.value), m = k(() => e.showGoButton), S = k(() => !!y.value && s.value > 1),
|
|
1157
|
-
renderFirstPage:
|
|
1156
|
+
}, h = k(() => !y.value || s.value === 1), i = k(() => e.pageList), r = k(() => Math.ceil(y.value / u.value)), v = k(() => !y.value || s.value === r.value), m = k(() => e.showGoButton), S = k(() => !!y.value && s.value > 1), N = k(() => !(w.value && l.value.length <= 1)), x = k(() => e.showPageInfo), L = k(() => e.showPageList), O = k(() => e.showPageNumbers), B = k(() => !0), {
|
|
1157
|
+
renderFirstPage: M,
|
|
1158
1158
|
renderPreviousPage: b
|
|
1159
1159
|
} = ge(s, h, S, u, t), {
|
|
1160
1160
|
renderLastPage: D,
|
|
@@ -1195,12 +1195,12 @@ const Q = /* @__PURE__ */ I({
|
|
|
1195
1195
|
"justify-content": c.value === "center" ? "center" : "start"
|
|
1196
1196
|
}));
|
|
1197
1197
|
function $() {
|
|
1198
|
-
return f(U, null, [x.value && g(), L.value && P(), B.value &&
|
|
1198
|
+
return f(U, null, [x.value && g(), L.value && P(), B.value && M(), B.value && b(), O.value && T(), B.value && R(), B.value && D(), m.value && F()]);
|
|
1199
1199
|
}
|
|
1200
1200
|
function A() {
|
|
1201
1201
|
return f(U, null, [f("li", {
|
|
1202
1202
|
class: "page-item d-flex flex-fill"
|
|
1203
|
-
}, null), B.value &&
|
|
1203
|
+
}, null), B.value && M(), B.value && b(), F(), f("li", {
|
|
1204
1204
|
class: "page-item page-separator",
|
|
1205
1205
|
style: "margin-left: 10px"
|
|
1206
1206
|
}, [f("span", {
|
|
@@ -1217,7 +1217,7 @@ const Q = /* @__PURE__ */ I({
|
|
|
1217
1217
|
style: a
|
|
1218
1218
|
}, [e.disabled && f("div", {
|
|
1219
1219
|
style: d
|
|
1220
|
-
}, null),
|
|
1220
|
+
}, null), N.value && f("ul", {
|
|
1221
1221
|
role: "navigation",
|
|
1222
1222
|
class: z.value,
|
|
1223
1223
|
style: q.value
|
|
@@ -1226,7 +1226,7 @@ const Q = /* @__PURE__ */ I({
|
|
|
1226
1226
|
});
|
|
1227
1227
|
function gt(e, t, n) {
|
|
1228
1228
|
var R;
|
|
1229
|
-
const o = "", c = "", w =
|
|
1229
|
+
const o = "", c = "", w = C();
|
|
1230
1230
|
let u;
|
|
1231
1231
|
function s() {
|
|
1232
1232
|
return (t == null ? void 0 : t.schema.componentType) !== "frame";
|
|
@@ -1245,16 +1245,16 @@ function gt(e, t, n) {
|
|
|
1245
1245
|
return null;
|
|
1246
1246
|
if (g.value.schema && g.value.schema.type === "component")
|
|
1247
1247
|
return g.value;
|
|
1248
|
-
const P =
|
|
1248
|
+
const P = C(g == null ? void 0 : g.value.parent), T = a(P);
|
|
1249
1249
|
return T || null;
|
|
1250
1250
|
}
|
|
1251
1251
|
function d(g = t) {
|
|
1252
|
-
var
|
|
1252
|
+
var j;
|
|
1253
1253
|
const { componentInstance: P, designerItemElementRef: T } = g;
|
|
1254
1254
|
if (!P || !P.value)
|
|
1255
1255
|
return null;
|
|
1256
1256
|
const { getCustomButtons: F } = P.value;
|
|
1257
|
-
return P.value.canMove || F && ((
|
|
1257
|
+
return P.value.canMove || F && ((j = F()) != null && j.length) ? T : d(g.parent);
|
|
1258
1258
|
}
|
|
1259
1259
|
function h(g) {
|
|
1260
1260
|
return !!n;
|
|
@@ -1271,19 +1271,19 @@ function gt(e, t, n) {
|
|
|
1271
1271
|
function m(g, P) {
|
|
1272
1272
|
const { componentType: T } = g;
|
|
1273
1273
|
let F = ke(T, g, P);
|
|
1274
|
-
const
|
|
1275
|
-
return F && !F.id && F.type === T && (F.id = `${
|
|
1274
|
+
const j = T.toLowerCase().replace(/-/g, "_");
|
|
1275
|
+
return F && !F.id && F.type === T && (F.id = `${j}_${Math.random().toString().slice(2, 6)}`), F;
|
|
1276
1276
|
}
|
|
1277
1277
|
function S(g) {
|
|
1278
1278
|
}
|
|
1279
|
-
function
|
|
1279
|
+
function N(...g) {
|
|
1280
1280
|
}
|
|
1281
1281
|
function x(g) {
|
|
1282
1282
|
if (!g)
|
|
1283
1283
|
return;
|
|
1284
1284
|
const P = t == null ? void 0 : t.schema, { formSchemaUtils: T } = g;
|
|
1285
1285
|
if (P && T.getExpressions().length) {
|
|
1286
|
-
const F = T.getExpressions().findIndex((
|
|
1286
|
+
const F = T.getExpressions().findIndex((j) => j.target === P.id);
|
|
1287
1287
|
F > -1 && T.getExpressions().splice(F, 1);
|
|
1288
1288
|
}
|
|
1289
1289
|
}
|
|
@@ -1293,28 +1293,28 @@ function gt(e, t, n) {
|
|
|
1293
1293
|
const P = t.schema, { formSchemaUtils: T } = g;
|
|
1294
1294
|
T.removeCommunicationInComponent(P);
|
|
1295
1295
|
}
|
|
1296
|
-
function
|
|
1296
|
+
function O(g) {
|
|
1297
1297
|
x(g), L(g), t != null && t.schema.contents && t.schema.contents.map((P) => {
|
|
1298
1298
|
let T = P.id;
|
|
1299
1299
|
P.type === "component-ref" && (T = P.component);
|
|
1300
1300
|
const F = e.value.querySelectorAll(`#${T}-design-item`);
|
|
1301
|
-
F != null && F.length && Array.from(F).map((
|
|
1301
|
+
F != null && F.length && Array.from(F).map((j) => {
|
|
1302
1302
|
var z;
|
|
1303
|
-
(z =
|
|
1303
|
+
(z = j == null ? void 0 : j.componentInstance) != null && z.value.onRemoveComponent && j.componentInstance.value.onRemoveComponent(g);
|
|
1304
1304
|
});
|
|
1305
1305
|
});
|
|
1306
1306
|
}
|
|
1307
1307
|
function B() {
|
|
1308
1308
|
}
|
|
1309
|
-
function
|
|
1309
|
+
function M(g) {
|
|
1310
1310
|
var T, F;
|
|
1311
1311
|
if (!((T = t == null ? void 0 : t.schema) != null && T.id))
|
|
1312
1312
|
return;
|
|
1313
1313
|
!u && g && (u = g.formSchemaUtils);
|
|
1314
1314
|
let P = "";
|
|
1315
1315
|
{
|
|
1316
|
-
const { text:
|
|
1317
|
-
P =
|
|
1316
|
+
const { text: j, title: z, label: q, mainTitle: $, name: A, type: E } = t.schema;
|
|
1317
|
+
P = j || z || q || $ || A || ((F = ne[E]) == null ? void 0 : F.name);
|
|
1318
1318
|
}
|
|
1319
1319
|
P && u.getControlBasicInfoMap().set(t.schema.id, {
|
|
1320
1320
|
componentTitle: P,
|
|
@@ -1322,9 +1322,9 @@ function gt(e, t, n) {
|
|
|
1322
1322
|
});
|
|
1323
1323
|
}
|
|
1324
1324
|
function b(g) {
|
|
1325
|
-
var
|
|
1325
|
+
var j;
|
|
1326
1326
|
const { changeObject: P } = g, { propertyID: T, propertyValue: F } = P;
|
|
1327
|
-
if (["text", "title", "label", "name", "mainTitle"].includes((
|
|
1327
|
+
if (["text", "title", "label", "name", "mainTitle"].includes((j = g == null ? void 0 : g.changeObject) == null ? void 0 : j.propertyID) && T && F && (M(), u)) {
|
|
1328
1328
|
const z = u.getControlBasicInfoMap(), q = z.keys().toArray().filter(($) => {
|
|
1329
1329
|
var A, E;
|
|
1330
1330
|
return ((A = z.get($)) == null ? void 0 : A.reliedComponentId) === ((E = t == null ? void 0 : t.schema) == null ? void 0 : E.id);
|
|
@@ -1353,17 +1353,17 @@ function gt(e, t, n) {
|
|
|
1353
1353
|
getBelongedComponentInstance: a,
|
|
1354
1354
|
getDraggableDesignItemElement: d,
|
|
1355
1355
|
getDraggingDisplayText: i,
|
|
1356
|
-
getPropConfig:
|
|
1356
|
+
getPropConfig: N,
|
|
1357
1357
|
getDragScopeElement: r,
|
|
1358
1358
|
onAcceptMovedChildElement: v,
|
|
1359
1359
|
onChildElementMovedOut: S,
|
|
1360
1360
|
addNewChildComponentSchema: m,
|
|
1361
|
-
triggerBelongedComponentToMoveWhenMoved:
|
|
1362
|
-
triggerBelongedComponentToDeleteWhenDeleted:
|
|
1363
|
-
onRemoveComponent:
|
|
1361
|
+
triggerBelongedComponentToMoveWhenMoved: C(!1),
|
|
1362
|
+
triggerBelongedComponentToDeleteWhenDeleted: C(!1),
|
|
1363
|
+
onRemoveComponent: O,
|
|
1364
1364
|
getCustomButtons: B,
|
|
1365
1365
|
onPropertyChanged: D,
|
|
1366
|
-
setComponentBasicInfoMap:
|
|
1366
|
+
setComponentBasicInfoMap: M,
|
|
1367
1367
|
updateContextSchema: t == null ? void 0 : t.updateContextSchema
|
|
1368
1368
|
}, w;
|
|
1369
1369
|
}
|
|
@@ -1372,17 +1372,17 @@ const bt = /* @__PURE__ */ I({
|
|
|
1372
1372
|
props: X,
|
|
1373
1373
|
emits: ["pageIndexChanged", "pageSizeChanged"],
|
|
1374
1374
|
setup(e, t) {
|
|
1375
|
-
const n =
|
|
1375
|
+
const n = C(!1), o = C(e.mode), c = C(""), w = C(!1), u = C(e.pageSize), s = C(e.currentPage), y = C(e.totalItems), l = C(), p = we("design-item-context"), a = gt(l, p);
|
|
1376
1376
|
Pe(() => {
|
|
1377
1377
|
l.value.componentInstance = a;
|
|
1378
1378
|
}), t.expose(a.value);
|
|
1379
1379
|
const {
|
|
1380
1380
|
pages: d,
|
|
1381
1381
|
updatePages: h
|
|
1382
|
-
} = be(), i = k(() => s.value === 1), r = k(() => [20, 50, 100]), v = k(() => Math.ceil(y.value / u.value)), m = k(() => s.value === v.value), S = k(() => !0),
|
|
1382
|
+
} = be(), i = k(() => s.value === 1), r = k(() => [20, 50, 100]), v = k(() => Math.ceil(y.value / u.value)), m = k(() => s.value === v.value), S = k(() => !0), N = k(() => s.value > 1), x = k(() => !(w.value && d.value.length <= 1)), L = k(() => !0), O = k(() => !0), B = k(() => !0), M = k(() => !0), {
|
|
1383
1383
|
renderFirstPage: b,
|
|
1384
1384
|
renderPreviousPage: D
|
|
1385
|
-
} = ge(s, i,
|
|
1385
|
+
} = ge(s, i, N, u, t), {
|
|
1386
1386
|
renderLastPage: R,
|
|
1387
1387
|
renderNextPage: g
|
|
1388
1388
|
} = fe(s, m, v, u, t), {
|
|
@@ -1392,7 +1392,7 @@ const bt = /* @__PURE__ */ I({
|
|
|
1392
1392
|
} = ve(s, u, r, y, t), {
|
|
1393
1393
|
renderPageNumbers: F
|
|
1394
1394
|
} = me(e, s, d, u, t), {
|
|
1395
|
-
renderGotoButton:
|
|
1395
|
+
renderGotoButton: j
|
|
1396
1396
|
} = pe(s, v, u, t);
|
|
1397
1397
|
h(s.value, u.value, y.value, 7), W([s, u], () => {
|
|
1398
1398
|
h(s.value, u.value, y.value, 7);
|
|
@@ -1412,12 +1412,12 @@ const bt = /* @__PURE__ */ I({
|
|
|
1412
1412
|
"justify-content": c.value === "center" ? "center" : "start"
|
|
1413
1413
|
}));
|
|
1414
1414
|
function $() {
|
|
1415
|
-
return f(U, null, [L.value && P(),
|
|
1415
|
+
return f(U, null, [L.value && P(), O.value && T(), M.value && b(), M.value && D(), B.value && F(), M.value && g(), M.value && R(), S.value && j()]);
|
|
1416
1416
|
}
|
|
1417
1417
|
function A() {
|
|
1418
1418
|
return f(U, null, [f("li", {
|
|
1419
1419
|
class: "page-item d-flex flex-fill"
|
|
1420
|
-
}, null),
|
|
1420
|
+
}, null), M.value && b(), M.value && D(), j(), f("li", {
|
|
1421
1421
|
class: "page-item page-separator",
|
|
1422
1422
|
style: "margin-left: 10px"
|
|
1423
1423
|
}, [f("span", {
|
|
@@ -1427,7 +1427,7 @@ const bt = /* @__PURE__ */ I({
|
|
|
1427
1427
|
style: "margin-left: 5px"
|
|
1428
1428
|
}, [f("span", {
|
|
1429
1429
|
style: "font-size: 16px; font-weight: 600;"
|
|
1430
|
-
}, [J(" "), v.value])]),
|
|
1430
|
+
}, [J(" "), v.value])]), M.value && g(), M.value && R()]);
|
|
1431
1431
|
}
|
|
1432
1432
|
return () => f("div", {
|
|
1433
1433
|
ref: l,
|