@farris/ui-vue 1.7.2-beta.1 → 1.7.2-beta.2

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.
Files changed (128) hide show
  1. package/components/avatar/index.esm.js +155 -148
  2. package/components/avatar/index.umd.cjs +1 -1
  3. package/components/button-edit/index.esm.js +1 -1
  4. package/components/button-edit/index.umd.cjs +1 -1
  5. package/components/calendar/index.esm.js +226 -224
  6. package/components/calendar/index.umd.cjs +3 -3
  7. package/components/collection-property-editor/index.esm.js +225 -223
  8. package/components/collection-property-editor/index.umd.cjs +2 -2
  9. package/components/combo-list/index.esm.js +76 -71
  10. package/components/combo-list/index.umd.cjs +1 -1
  11. package/components/comment/index.esm.js +169 -167
  12. package/components/comment/index.umd.cjs +6 -6
  13. package/components/component/index.esm.js +3691 -3043
  14. package/components/component/index.umd.cjs +2 -2
  15. package/components/condition/index.esm.js +2015 -1352
  16. package/components/condition/index.umd.cjs +2 -2
  17. package/components/data-grid/index.esm.js +407 -430
  18. package/components/data-grid/index.umd.cjs +1 -1
  19. package/components/data-view/index.esm.js +3082 -3196
  20. package/components/data-view/index.umd.cjs +1 -1
  21. package/components/designer-canvas/index.esm.js +3364 -2713
  22. package/components/designer-canvas/index.umd.cjs +1 -1
  23. package/components/drawer/index.esm.js +66 -64
  24. package/components/drawer/index.umd.cjs +2 -2
  25. package/components/dynamic-form/index.esm.js +1176 -524
  26. package/components/dynamic-form/index.umd.cjs +1 -1
  27. package/components/dynamic-resolver/index.esm.js +182 -180
  28. package/components/dynamic-resolver/index.umd.cjs +2 -2
  29. package/components/dynamic-view/index.esm.js +531 -455
  30. package/components/dynamic-view/index.umd.cjs +1 -1
  31. package/components/events-editor/index.esm.js +2352 -1700
  32. package/components/events-editor/index.umd.cjs +3 -3
  33. package/components/expression-editor/index.esm.js +8 -3
  34. package/components/expression-editor/index.umd.cjs +2 -2
  35. package/components/filter-bar/index.esm.js +422 -413
  36. package/components/filter-bar/index.umd.cjs +2 -2
  37. package/components/filter-condition-editor/index.esm.js +8 -3
  38. package/components/filter-condition-editor/index.umd.cjs +1 -1
  39. package/components/image/index.esm.js +363 -354
  40. package/components/image/index.umd.cjs +2 -2
  41. package/components/language-textbox/index.esm.js +189 -187
  42. package/components/language-textbox/index.umd.cjs +2 -2
  43. package/components/list-view/index.esm.js +388 -389
  44. package/components/list-view/index.umd.cjs +5 -5
  45. package/components/mapping-editor/index.esm.js +1465 -1488
  46. package/components/mapping-editor/index.umd.cjs +1 -1
  47. package/components/number-range/index.esm.js +180 -173
  48. package/components/number-range/index.umd.cjs +1 -1
  49. package/components/order/index.esm.js +815 -811
  50. package/components/order/index.umd.cjs +5 -5
  51. package/components/property-panel/index.esm.js +429 -420
  52. package/components/property-panel/index.umd.cjs +3 -3
  53. package/components/query-solution/index.esm.js +4746 -4085
  54. package/components/query-solution/index.umd.cjs +7 -7
  55. package/components/schema-selector/index.esm.js +1401 -1402
  56. package/components/schema-selector/index.umd.cjs +5 -5
  57. package/components/section/index.esm.js +102 -100
  58. package/components/section/index.umd.cjs +2 -2
  59. package/components/sort-condition-editor/index.esm.js +8 -3
  60. package/components/sort-condition-editor/index.umd.cjs +1 -1
  61. package/components/transfer/index.esm.js +537 -538
  62. package/components/transfer/index.umd.cjs +5 -5
  63. package/components/tree-grid/index.esm.js +280 -283
  64. package/components/tree-grid/index.umd.cjs +1 -1
  65. package/components/tree-view/index.esm.js +200 -202
  66. package/components/tree-view/index.umd.cjs +1 -1
  67. package/components/uploader/index.esm.js +533 -519
  68. package/components/uploader/index.umd.cjs +2 -2
  69. package/designer/data-grid/index.esm.js +3806 -3905
  70. package/designer/data-grid/index.umd.cjs +9 -9
  71. package/designer/drawer/index.esm.js +188 -186
  72. package/designer/drawer/index.umd.cjs +2 -2
  73. package/designer/dynamic-form/index.esm.js +1562 -1073
  74. package/designer/dynamic-form/index.umd.cjs +2 -2
  75. package/designer/farris-designer.all.esm.js +9793 -8613
  76. package/designer/farris-designer.all.umd.cjs +8 -8
  77. package/designer/list-view/index.esm.js +564 -564
  78. package/designer/list-view/index.umd.cjs +6 -6
  79. package/designer/radio-group/index.esm.js +236 -229
  80. package/designer/radio-group/index.umd.cjs +1 -1
  81. package/designer/response-layout-editor/index.esm.js +178 -171
  82. package/designer/response-layout-editor/index.umd.cjs +1 -1
  83. package/designer/tabs/index.esm.js +3154 -2508
  84. package/designer/tabs/index.umd.cjs +2 -2
  85. package/designer/time-picker/index.esm.js +193 -186
  86. package/designer/time-picker/index.umd.cjs +1 -1
  87. package/designer/tree-grid/index.esm.js +444 -447
  88. package/designer/tree-grid/index.umd.cjs +1 -1
  89. package/farris.all.esm.js +60126 -59649
  90. package/farris.all.umd.cjs +30 -30
  91. package/index.css +1 -1
  92. package/package.json +1 -1
  93. package/types/components.d.ts +1 -1
  94. package/types/condition/src/composition/condition-value/dropdown-value.d.ts +4 -0
  95. package/types/data-grid/index.d.ts +2 -5
  96. package/types/data-grid/src/data-grid.component.d.ts +1 -2
  97. package/types/data-view/components/row/hierarchy-row.component.d.ts +2 -2
  98. package/types/data-view/composition/appearance/use-cell-position.d.ts +1 -1
  99. package/types/data-view/composition/types.d.ts +0 -4
  100. package/types/data-view/composition/visualization/use-virtual-scroll.d.ts +2 -2
  101. package/types/data-view/composition/visualization/use-visual-data-bound.d.ts +2 -3
  102. package/types/data-view/composition/visualization/use-visual-data-row.d.ts +1 -2
  103. package/types/designer-canvas/src/composition/dg-control.d.ts +24 -0
  104. package/types/dynamic-form/designer.d.ts +0 -1
  105. package/types/dynamic-form/index.d.ts +4 -3
  106. package/types/dynamic-form/src/designer/dynamic-form.design.component.d.ts +8 -0
  107. package/types/dynamic-form/src/designer/response-form.design.props.d.ts +14 -0
  108. package/types/dynamic-form/src/designer/use-dynamic-form-rules.d.ts +2 -0
  109. package/types/dynamic-form/src/dynamic-form.component.d.ts +8 -0
  110. package/types/dynamic-form/src/response-form.props.d.ts +13 -1
  111. package/types/dynamic-form/src/schema/response-form-schema-resolver.d.ts +1 -0
  112. package/types/dynamic-form/src/types.d.ts +1 -0
  113. package/types/dynamic-resolver/src/types.d.ts +1 -0
  114. package/types/dynamic-view/index.d.ts +43 -3
  115. package/types/dynamic-view/src/components/maps.d.ts +6 -6
  116. package/types/dynamic-view/src/composition/index.d.ts +5 -0
  117. package/types/dynamic-view/src/composition/use-utils.d.ts +12 -0
  118. package/types/dynamic-view/src/dynamic-view.component.d.ts +6 -6
  119. package/types/language-textbox/index.d.ts +3 -3
  120. package/types/language-textbox/src/components/language-contents.component.d.ts +1 -1
  121. package/types/language-textbox/src/language-textbox.component.d.ts +1 -1
  122. package/types/lookup/src/components/favorite/lookup-favorite.component.d.ts +1 -1
  123. package/types/lookup/src/components/popup-container.component.d.ts +3 -3
  124. package/types/property-panel/src/property-panel.component.d.ts +3 -3
  125. package/types/tree-grid/src/components/data/data-area.component.d.ts +2 -2
  126. package/types/tree-grid/src/tree-grid.props.d.ts +0 -1
  127. package/types/tree-view/src/components/data/tree-area.component.d.ts +1 -1
  128. package/types/tree-view/src/tree-view.props.d.ts +0 -1
@@ -1,7 +1,7 @@
1
- (function(L,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("vue"),require("../dynamic-resolver/index.umd.js"),require("../common/index.umd.js"),require("../data-view/index.umd.js"),require("../locale/index.umd.js"),require("../checkbox/index.umd.js"),require("../button-edit/index.umd.js"),require("lodash-es"),require("../list-view/index.umd.js"),require("../../designer/button-edit/index.umd.js"),require("../designer-canvas/index.umd.js"),require("../property-panel/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","../dynamic-resolver/index.umd.js","../common/index.umd.js","../data-view/index.umd.js","../locale/index.umd.js","../checkbox/index.umd.js","../button-edit/index.umd.js","lodash-es","../list-view/index.umd.js","../../designer/button-edit/index.umd.js","../designer-canvas/index.umd.js","../property-panel/index.umd.js"],t):(L=typeof globalThis<"u"?globalThis:L||self,t(L.order={},L.Vue,L.dynamicResolver,L.common,L.dataView,L.locale,L.checkbox,L.FButtonEdit,L.LodashES,L.FListView$1,L.FButtonEditDesign,L.designerCanvas,L.propertyPanel))})(this,function(L,t,G,A,$,Y,J,fe,me,ge,he,ee,pe){"use strict";const ye=new Map([["appearance",G.resolveAppearance]]),ve={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/order.schema.json",title:"order",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for a order",type:"string"},type:{description:"The type string of order component",type:"string",default:"order"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},editable:{description:"",type:"boolean",default:!0},enableLinkLabel:{description:"",type:"boolean",default:!1},label:{description:"",type:"string",default:""},lableWidth:{description:"",type:"number"},placeholder:{description:"",type:"string",default:""},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"},visible:{description:"",type:"boolean",default:!0},onBlur:{description:"",type:"string",default:""},onClickLinkLabel:{description:"",type:"string",default:""}},required:["id","type"]};function Ce(e,n,i){return n}const be={title:"order",description:"A Farris Component",type:"object",categories:{basic:{description:"Basic Infomation",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"waiting for modification",enum:[]}}}},behavior:{description:"Basic Infomation",title:"行为",properties:{editable:{description:"",title:"允许编辑",type:"boolean"},readonly:{description:"",title:"只读",type:"string"},required:{description:"",title:"必填",type:"boolean"},visible:{description:"",title:"可见",type:"boolean"},placeholder:{description:"",title:"提示文本",type:"string"},tabindex:{description:"",title:"tab索引",type:"number"},textAlign:{description:"",title:"对齐方式",type:"enum",editor:{type:"combo-list",textField:"name",valueField:"value",data:[{value:"left",name:"左对齐"},{value:"center",name:"居中"},{value:"right",name:"右对齐"}]}}}}}},z={dataSource:{type:Array,default:[]},items:{type:Array,default:[]}},Q=G.createPropsResolver(z,ve,ye,Ce,be),Se={columns:{type:Array,default:[{field:"name",title:"",dataType:"string"}]},customClass:{type:String,default:""},data:{type:Array,default:[]},draggable:{type:Boolean,default:!1},multiSelect:{type:Boolean,default:!1},multiSelectMode:{type:String,default:"OnCheck"},idField:{type:String,default:"id"},valueField:{type:String,default:"id"},textField:{type:String,default:"name"},titleField:{type:String,default:"name"},view:{type:String,default:"ContentView"},size:{type:String,default:"default"},placeholder:{type:String,default:""},header:{type:String,default:"ContentHeader"},headerClass:{type:String,default:""},itemClass:{type:[String,Function],default:"",validator:e=>typeof e=="string"||typeof e=="function"},itemStyle:{type:[String,Function],default:"",validator:e=>typeof e=="string"||typeof e=="function"},itemContentClass:{type:String,default:""},selectionValues:{type:Array,default:[]},group:{type:Object},selection:{type:Object,default:{enableSelectRow:!0,multiSelect:!1,multiSelectMode:"DependOnCheck",showCheckbox:!1,showSelectAll:!1,showSelection:!0}},keepOrder:{type:Boolean,default:!1},disableField:{type:String,default:"disabled"},enableHighlightSearch:{type:Boolean,default:!0},virtualized:{type:Boolean,default:!0},checkBeforeRemoveItem:{type:Function,default:null},headerTemplate:{type:Object},contentTemplate:{type:Object},footerTemplate:{type:Object},emptyTemplate:{type:Object},pagination:{type:Object,default:{enable:!1,size:20}}};function Fe(e,n){function i(s){const f=[];let h=s.nextNode();for(;h;)f.push(h),h=s.nextNode();return f}function l(s,f){const h=document.createTreeWalker(s,NodeFilter.SHOW_TEXT);return i(h).map(g=>({textNode:g,text:(g.textContent||"").toLocaleLowerCase()})).map(({textNode:g,text:b})=>{const F=[];let V=0;for(;V<b.length;){const S=b.indexOf(f,V);if(S===-1)break;F.push(S),V=S+f.length}return F.map(S=>{const o=new Range;return o.setStart(g,S),o.setEnd(g,S+f.length),o})}).flat()}function c(s){if(!CSS.highlights||(CSS.highlights.clear(),!s||!n))return;const f=l(n.value,s.toLocaleLowerCase()),h=new Highlight(...f);CSS.highlights.set("search-result",h)}return{search:c}}function te(e,n,i,l,c,s,f,h,I,k){const w=t.ref(e.size),g=t.ref(e.textField),b=t.ref(e.titleField),F=t.ref(e.disableField),V=t.computed(()=>{var m,N;return((m=e.selection)==null?void 0:m.multiSelect)&&((N=e.selection)==null?void 0:N.showCheckbox)}),{onMouseenterItem:S,onMouseoverItem:o,onMouseoutItem:d}=s,{getKey:a,listViewItemClass:r,listViewItemStyle:v,onCheckItem:p,onClickItem:u}=f,x=t.computed(()=>{const m={"text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"};return e.itemClass?m:{margin:w.value==="small"?"0.25rem 0":"8px 0",...m}});function T(m,N,B){return m.checked=h.findIndexInSelectedItems(m)>-1,t.createVNode("li",{class:r(m,N),id:a(m,N),key:a(m,N),style:v(m,N),onClick:j=>u(m,N,j),onMouseenter:j=>S(j,m,N),onMouseover:j=>o(j,m,N),onMouseout:j=>d(j,m,N)},[V.value&&t.createVNode("div",{class:"f-list-select",onClick:j=>j.stopPropagation()},[t.createVNode(J.FCheckbox,{id:"list-"+a(m,N),customClass:"listview-checkbox float-left",disabled:m[F.value],checked:m.checked,"onUpdate:checked":j=>m.checked=j,onChange:j=>{p(m,N,!j.checked)}},null)]),t.createVNode("div",{class:"f-list-content"},[t.createVNode("div",{class:e.itemContentClass,style:x.value,title:m.raw[b.value]||m.raw[g.value]},[m.raw[g.value]])])])}return{renderItem:T}}function we(e,n,i,l,c,s,f,h,I,k){const w=t.ref(e.multiSelect),g=t.ref(e.disableField),b=t.ref(e.textField),{onMouseenterItem:F,onMouseoverItem:V,onMouseoutItem:S}=s,{getKey:o,listViewItemClass:d,listViewItemStyle:a,onCheckItem:r,onClickItem:v,updateSelectedItems:p}=f;function u(T,m,N){return e.contentTemplate?t.createVNode(t.Fragment,null,[e.contentTemplate({item:T.raw,index:m,selectedItem:N})]):n.slots.content?t.createVNode(t.Fragment,null,[n.slots.content&&n.slots.content({item:T.raw,index:m,selectedItem:N})]):t.createVNode("div",{style:"margin: 10px 0;"},[T.raw[b.value||"name"]])}function x(T,m,N){return t.createVNode("li",{class:d(T,m),id:o(T,m),key:o(T,m),style:a(T,m),onClick:B=>v(T,m,B),onMouseenter:B=>F(B,T,m),onMouseover:B=>V(B,T,m),onMouseout:B=>S(B,T,m)},[w.value&&t.createVNode("div",{class:"f-list-select",onClick:B=>B.stopPropagation()},[t.createVNode(J.FCheckbox,{id:"list-"+o(T,m),customClass:"listview-checkbox",disabled:T[g.value],checked:T.checked,"onUpdate:checked":B=>T.checked=B,onChange:B=>{r(T,m,!B.checked),p()}},null)]),t.createVNode("div",{class:"f-list-content"},[u(T,m,N)])])}return{renderItem:x}}function Ve(e,n,i,l,c,s,f,h,I,k){const w=t.ref(e.multiSelect),g=t.ref(e.disableField),b=t.ref(e.textField),{onMouseenterItem:F,onMouseoverItem:V,onMouseoutItem:S}=s,{getKey:o,listViewItemClass:d,onCheckItem:a,onClickItem:r}=f,{dragstart:v,dragenter:p,dragover:u,dragend:x}=l,{removeItem:T}=I,m=t.computed(()=>({margin:w.value?"10px 0":"10px 0px 10px 14px"}));function N(y,C=""){const R=y.target;R.title=R.scrollWidth>R.clientWidth?C:""}function B(y){return t.createVNode("div",{style:m.value,onMouseenter:C=>N(C,y.raw[b.value||"name"])},[y.raw[b.value||"name"]])}function j(){return n.slots.itemContent?n.slots.itemContent:B}const q=j();function P(y,C,R){return t.createVNode("li",{class:d(y,C),id:o(y,C),key:o(y,C),onClick:O=>r(y,C,O),onMouseenter:O=>F(O,y,C),onMouseover:O=>V(O,y,C),onMouseout:O=>S(O,y,C),draggable:"true",onDragstart:O=>v(O,y,C),onDragenter:O=>p(O,C),onDragend:O=>x(O,y),onDragover:O=>u(O)},[w.value&&t.createVNode("div",{class:"f-list-select",onClick:O=>O.stopPropagation()},[t.createVNode(J.FCheckbox,{id:"list-"+o(y,C),customClass:"listview-checkbox",disabled:y[g.value]||!y.checked,checked:y.checked,"onUpdate:checked":O=>y.checked=O,onChange:O=>a(y,C,!O.checked)},null)]),t.createVNode("div",{class:"f-list-content"},[q(y)]),t.createVNode("div",{class:"f-list-remove",onClick:O=>{O.stopPropagation(),T(C)}},[t.createVNode("div",{class:"f-list-remove-icon"},[t.createVNode("i",{class:"f-icon f-icon-remove_face"},null)])]),t.createVNode("div",{class:"f-list-handle"},[t.createVNode("div",null,[t.createVNode("i",{class:"f-icon f-icon-drag-vertical"},null)])])])}return{renderItem:P}}function Ie(e,n,i,l,c,s,f,h,I,k){var o;const w=t.ref(((o=e.group)==null?void 0:o.groupFields)||[]),{collpaseGroupIconClass:g}=c,{toggleGroupRow:b}=k;function F(d,a){a.collapse=!a.collapse,i.value=b(a.collapse?"collapse":"expand",a,i.value)}function V(d,a,r){return n.slots.group?t.createVNode(t.Fragment,null,[n.slots.content&&n.slots.group({item:d.raw,index:a,selectedItem:r})]):t.createVNode("div",{class:"f-navlookup-recentHeader",onClick:v=>F(v,d)},[t.createVNode("div",{class:"fv-grid-group-row-icon"},[t.createVNode("span",{class:g(d)},null)]),t.createVNode("div",{class:"f-navlookup-recommandLabel"},[d.raw[w.value[d.layer]]])])}function S(d,a,r){return d.layer>-1&&V(d,a,r)}return{renderItem:S}}function ke(e,n,i,l){const{dataView:c}=i,{updateSelectedItems:s}=l;function f(h){if(h>-1&&h<c.value.length){if(e!=null&&e.checkBeforeRemoveItem&&!e.checkBeforeRemoveItem(c.value[h]))return;const I=c.value.splice(h,1);s(),n.emit("removeItem",I[0])}}return{removeItem:f}}function Te(e,n,i,l,c,s,f,h,I,k){const w=t.ref(e.view),g=t.ref(e.view==="CardView"),b=t.ref({}),F=ke(e,n,l,I),V=t.computed(()=>({"f-list-view-group":!0,"f-list-view-group-multiselect":e.multiSelect,"d-flex":g.value,"flex-wrap":g.value})),S=t.computed(()=>!!i.value&&i.value.length>0),o=t.computed(()=>i.value.length===0);t.computed(()=>o.value&&!n.slots.empty);function d(){return w.value==="SingleView"?te:w.value==="DraggableView"?Ve:(w.value==="ContentView"||w.value==="CardView")&&(e.contentTemplate||n.slots.content)?we:te}const a=d(),{renderItem:r}=a(e,n,i,k,c,s,I,f,F,h),{renderItem:v}=Ie(e,n,i,k,c,s,I,f,F,h),p=[r,v];function u(){return i.value.filter(m=>m.visible!==!1).map((m,N)=>p[m.type](m,N,b))}function x(){return t.createVNode("div",{class:"f-list-view-emptydata",style:"margin: 0 auto;"},[t.createVNode("p",{class:"f-empty-title"},[e.emptyTemplate?e.emptyTemplate():n.slots.empty?n.slots.empty():Y.LocaleService.getLocaleValue("listView.emptyMessage")])])}function T(){return t.createVNode("ul",{class:V.value,style:"list-style: none;"},[S.value&&u(),o.value&&x()])}return{renderListArea:T}}function xe(e,n,i){function l(){return n.slots.header&&t.createVNode("div",{class:"f-list-view-header"},[n.slots.header()])}return{renderHeader:l}}function ne(e,n,i){const l=t.ref(e.headerClass),c=t.ref(e.placeholder),s=t.ref(""),f=t.computed(()=>!s.value),h=t.computed(()=>!!s.value);function I(b){s.value=""}t.watch(s,b=>{e.enableHighlightSearch&&i.search(b),n.emit("afterSearch",b)});const k=t.computed(()=>{const b={"form-group":!0,"farris-form-group":!0};return l.value&&l.value.split(" ").reduce((V,S)=>(V[S]=!0,V),b),b});function w(b){}function g(){return t.createVNode("div",{class:"f-list-view-header",onClick:t.withModifiers(()=>w,["prevent","stop"])},[t.createVNode("div",{class:k.value},[t.createVNode("div",{class:"farris-input-wrap"},[t.createVNode("div",{class:"f-cmp-inputgroup"},[t.createVNode("div",{class:"input-group f-state-editable"},[t.withDirectives(t.createVNode("input",{class:"form-control f-utils-fill text-left","onUpdate:modelValue":b=>s.value=b,name:"input-group-value",type:"text",placeholder:c.value,autocomplete:"off"},null),[[t.vModelText,s.value]]),t.createVNode("div",{class:"input-group-append"},[h.value&&t.createVNode("span",{class:"input-group-text input-group-clear",onClick:b=>I()},[t.createVNode("i",{class:"f-icon f-icon-close-circle"},null)]),f.value&&t.createVNode("span",{class:"input-group-text"},[t.createVNode("span",{class:"f-icon f-icon-search"},null)])])])])])])])}return{renderHeader:g}}function Ne(){const e=t.ref(""),n=t.ref(-1),i=t.ref(""),l=t.ref(-1),c=t.ref(!1);function s(g,b,F){l.value=F}function f(g,b,F){c.value||(l.value=F)}function h(g,b,F){l.value=-1}function I(){c.value=!0}function k(){c.value=!1}function w(){n.value=-1,e.value=""}return{activeIndex:n,focusedItemId:i,hoverIndex:l,clearActiveItem:w,onMouseenterItem:s,onMouseoverItem:f,onMouseoutItem:h,resumeHover:k,suspendHover:I}}function Oe(e,n,i,l){const c=t.ref(e.idField),{dataView:s}=i,f=t.ref(-1),h=t.ref(!1),{activeIndex:I,focusedItemId:k,hoverIndex:w,resumeHover:g,suspendHover:b}=l;let F,V=0,S=0;function o(u,x){const T=u-V,m=x-S;F.style.left=parseInt(F.style.left)+T+"px",F.style.top=parseInt(F.style.top)+m+"px",V=u,S=x}function d(u){const{left:x,top:T}=u.getBoundingClientRect(),m=u.cloneNode(!0);return m.className=m.className+" f-listview-drag-moving",m.style.cssText=`
1
+ (function(L,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("vue"),require("../dynamic-resolver/index.umd.js"),require("../common/index.umd.js"),require("../data-view/index.umd.js"),require("../locale/index.umd.js"),require("../checkbox/index.umd.js"),require("../button-edit/index.umd.js"),require("lodash-es"),require("../list-view/index.umd.js"),require("../../designer/button-edit/index.umd.js"),require("../designer-canvas/index.umd.js"),require("../property-panel/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","../dynamic-resolver/index.umd.js","../common/index.umd.js","../data-view/index.umd.js","../locale/index.umd.js","../checkbox/index.umd.js","../button-edit/index.umd.js","lodash-es","../list-view/index.umd.js","../../designer/button-edit/index.umd.js","../designer-canvas/index.umd.js","../property-panel/index.umd.js"],t):(L=typeof globalThis<"u"?globalThis:L||self,t(L.order={},L.Vue,L.dynamicResolver,L.common,L.dataView,L.locale,L.checkbox,L.FButtonEdit,L.LodashES,L.FListView$1,L.FButtonEditDesign,L.designerCanvas,L.propertyPanel))})(this,function(L,t,q,A,$,Y,J,ue,fe,me,ge,ee,he){"use strict";const pe=new Map([["appearance",q.resolveAppearance]]),ye={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/order.schema.json",title:"order",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for a order",type:"string"},type:{description:"The type string of order component",type:"string",default:"order"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},editable:{description:"",type:"boolean",default:!0},enableLinkLabel:{description:"",type:"boolean",default:!1},label:{description:"",type:"string",default:""},lableWidth:{description:"",type:"number"},placeholder:{description:"",type:"string",default:""},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"},visible:{description:"",type:"boolean",default:!0},onBlur:{description:"",type:"string",default:""},onClickLinkLabel:{description:"",type:"string",default:""}},required:["id","type"]};function ve(e,n,i){return n}const Ce={title:"order",description:"A Farris Component",type:"object",categories:{basic:{description:"Basic Infomation",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"waiting for modification",enum:[]}}}},behavior:{description:"Basic Infomation",title:"行为",properties:{editable:{description:"",title:"允许编辑",type:"boolean"},readonly:{description:"",title:"只读",type:"string"},required:{description:"",title:"必填",type:"boolean"},visible:{description:"",title:"可见",type:"boolean"},placeholder:{description:"",title:"提示文本",type:"string"},tabindex:{description:"",title:"tab索引",type:"number"},textAlign:{description:"",title:"对齐方式",type:"enum",editor:{type:"combo-list",textField:"name",valueField:"value",data:[{value:"left",name:"左对齐"},{value:"center",name:"居中"},{value:"right",name:"右对齐"}]}}}}}},z={dataSource:{type:Array,default:[]},items:{type:Array,default:[]}},Q=q.createPropsResolver(z,ye,pe,ve,Ce),be={columns:{type:Array,default:[{field:"name",title:"",dataType:"string"}]},customClass:{type:String,default:""},data:{type:Array,default:[]},draggable:{type:Boolean,default:!1},multiSelect:{type:Boolean,default:!1},multiSelectMode:{type:String,default:"OnCheck"},idField:{type:String,default:"id"},valueField:{type:String,default:"id"},textField:{type:String,default:"name"},titleField:{type:String,default:"name"},view:{type:String,default:"ContentView"},size:{type:String,default:"default"},placeholder:{type:String,default:""},header:{type:String,default:"ContentHeader"},headerClass:{type:String,default:""},itemClass:{type:[String,Function],default:"",validator:e=>typeof e=="string"||typeof e=="function"},itemStyle:{type:[String,Function],default:"",validator:e=>typeof e=="string"||typeof e=="function"},itemContentClass:{type:String,default:""},selectionValues:{type:Array,default:[]},group:{type:Object},selection:{type:Object,default:{enableSelectRow:!0,multiSelect:!1,multiSelectMode:"DependOnCheck",showCheckbox:!1,showSelectAll:!1,showSelection:!0}},keepOrder:{type:Boolean,default:!1},disableField:{type:String,default:"disabled"},enableHighlightSearch:{type:Boolean,default:!0},virtualized:{type:Boolean,default:!0},checkBeforeRemoveItem:{type:Function,default:null},headerTemplate:{type:Object},contentTemplate:{type:Object},footerTemplate:{type:Object},emptyTemplate:{type:Object},pagination:{type:Object,default:{enable:!1,size:20}}};function Se(e,n){function i(r){const u=[];let F=r.nextNode();for(;F;)u.push(F),F=r.nextNode();return u}function l(r,u){const F=document.createTreeWalker(r,NodeFilter.SHOW_TEXT);return i(F).map(p=>({textNode:p,text:(p.textContent||"").toLocaleLowerCase()})).map(({textNode:p,text:y})=>{const C=[];let T=0;for(;T<y.length;){const V=y.indexOf(u,T);if(V===-1)break;C.push(V),T=V+u.length}return C.map(V=>{const a=new Range;return a.setStart(p,V),a.setEnd(p,V+u.length),a})}).flat()}function c(r){if(!CSS.highlights||(CSS.highlights.clear(),!r||!n))return;const u=l(n.value,r.toLocaleLowerCase()),F=new Highlight(...u);CSS.highlights.set("search-result",F)}return{search:c}}function te(e,n,i,l,c,r,u,F,k,v){const w=t.ref(e.size),p=t.ref(e.textField),y=t.ref(e.titleField),C=t.ref(e.disableField),T=t.computed(()=>{var m,P;return((m=e.selection)==null?void 0:m.multiSelect)&&((P=e.selection)==null?void 0:P.showCheckbox)}),{onMouseenterItem:V,onMouseoverItem:a,onMouseoutItem:s}=r,{getKey:o,listViewItemClass:d,listViewItemStyle:b,onCheckItem:g,onClickItem:f}=u,x=t.computed(()=>{const m={"text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"};return e.itemClass?m:{margin:w.value==="small"?"0.25rem 0":"8px 0",...m}});function I(m,P,R){return m.checked=F.findIndexInSelectedItems(m)>-1,t.createVNode("li",{class:d(m,P),id:o(m,P),key:o(m,P),style:b(m,P),onClick:j=>f(m,P,j),onMouseenter:j=>V(j,m,P),onMouseover:j=>a(j,m,P),onMouseout:j=>s(j,m,P)},[T.value&&t.createVNode("div",{class:"f-list-select",onClick:j=>j.stopPropagation()},[t.createVNode(J.FCheckbox,{id:"list-"+o(m,P),customClass:"listview-checkbox float-left",disabled:m[C.value],checked:m.checked,"onUpdate:checked":j=>m.checked=j,onChange:j=>{g(m,P,!j.checked)}},null)]),t.createVNode("div",{class:"f-list-content"},[t.createVNode("div",{class:e.itemContentClass,style:x.value,title:m.raw[y.value]||m.raw[p.value]},[m.raw[p.value]])])])}return{renderItem:I}}function Fe(e,n,i,l,c,r,u,F,k,v){const w=t.ref(e.multiSelect),p=t.ref(e.disableField),y=t.ref(e.textField),{onMouseenterItem:C,onMouseoverItem:T,onMouseoutItem:V}=r,{getKey:a,listViewItemClass:s,listViewItemStyle:o,onCheckItem:d,onClickItem:b,updateSelectedItems:g}=u;function f(I,m,P){return e.contentTemplate?t.createVNode(t.Fragment,null,[e.contentTemplate({item:I.raw,index:m,selectedItem:P})]):n.slots.content?t.createVNode(t.Fragment,null,[n.slots.content&&n.slots.content({item:I.raw,index:m,selectedItem:P})]):t.createVNode("div",{style:"margin: 10px 0;"},[I.raw[y.value||"name"]])}function x(I,m,P){return t.createVNode("li",{class:s(I,m),id:a(I,m),key:a(I,m),style:o(I,m),onClick:R=>b(I,m,R),onMouseenter:R=>C(R,I,m),onMouseover:R=>T(R,I,m),onMouseout:R=>V(R,I,m)},[w.value&&t.createVNode("div",{class:"f-list-select",onClick:R=>R.stopPropagation()},[t.createVNode(J.FCheckbox,{id:"list-"+a(I,m),customClass:"listview-checkbox",disabled:I[p.value],checked:I.checked,"onUpdate:checked":R=>I.checked=R,onChange:R=>{d(I,m,!R.checked),g()}},null)]),t.createVNode("div",{class:"f-list-content"},[f(I,m,P)])])}return{renderItem:x}}function we(e,n,i,l,c,r,u,F,k,v){const w=t.ref(e.multiSelect),p=t.ref(e.disableField),y=t.ref(e.textField),{onMouseenterItem:C,onMouseoverItem:T,onMouseoutItem:V}=r,{getKey:a,listViewItemClass:s,onCheckItem:o,onClickItem:d}=u,{dragstart:b,dragenter:g,dragover:f,dragend:x}=l,{removeItem:I}=k,m=t.computed(()=>({margin:w.value?"10px 0":"10px 0px 10px 14px"}));function P(h,S=""){const B=h.target;B.title=B.scrollWidth>B.clientWidth?S:""}function R(h){return t.createVNode("div",{style:m.value,onMouseenter:S=>P(S,h.raw[y.value||"name"])},[h.raw[y.value||"name"]])}function j(){return n.slots.itemContent?n.slots.itemContent:R}const H=j();function N(h,S,B){return t.createVNode("li",{class:s(h,S),id:a(h,S),key:a(h,S),onClick:O=>d(h,S,O),onMouseenter:O=>C(O,h,S),onMouseover:O=>T(O,h,S),onMouseout:O=>V(O,h,S),draggable:"true",onDragstart:O=>b(O,h,S),onDragenter:O=>g(O,S),onDragend:O=>x(O,h),onDragover:O=>f(O)},[w.value&&t.createVNode("div",{class:"f-list-select",onClick:O=>O.stopPropagation()},[t.createVNode(J.FCheckbox,{id:"list-"+a(h,S),customClass:"listview-checkbox",disabled:h[p.value]||!h.checked,checked:h.checked,"onUpdate:checked":O=>h.checked=O,onChange:O=>o(h,S,!O.checked)},null)]),t.createVNode("div",{class:"f-list-content"},[H(h)]),t.createVNode("div",{class:"f-list-remove",onClick:O=>{O.stopPropagation(),I(S)}},[t.createVNode("div",{class:"f-list-remove-icon"},[t.createVNode("i",{class:"f-icon f-icon-remove_face"},null)])]),t.createVNode("div",{class:"f-list-handle"},[t.createVNode("div",null,[t.createVNode("i",{class:"f-icon f-icon-drag-vertical"},null)])])])}return{renderItem:N}}function Ve(e,n,i,l,c,r,u,F,k,v){var a;const w=t.ref(((a=e.group)==null?void 0:a.groupFields)||[]),{collpaseGroupIconClass:p}=c,{toggleGroupRow:y}=v;function C(s,o){o.collapse=!o.collapse,i.value=y(o.collapse?"collapse":"expand",o,i.value)}function T(s,o,d){return n.slots.group?t.createVNode(t.Fragment,null,[n.slots.content&&n.slots.group({item:s.raw,index:o,selectedItem:d})]):t.createVNode("div",{class:"f-navlookup-recentHeader",onClick:b=>C(b,s)},[t.createVNode("div",{class:"fv-grid-group-row-icon"},[t.createVNode("span",{class:p(s)},null)]),t.createVNode("div",{class:"f-navlookup-recommandLabel"},[s.raw[w.value[s.layer]]])])}function V(s,o,d){return s.layer>-1&&T(s,o,d)}return{renderItem:V}}function Ie(e,n,i,l){const{dataView:c}=i,{updateSelectedItems:r}=l;function u(F){if(F>-1&&F<c.value.length){if(e!=null&&e.checkBeforeRemoveItem&&!e.checkBeforeRemoveItem(c.value[F]))return;const k=c.value.splice(F,1);r(),n.emit("removeItem",k[0])}}return{removeItem:u}}function ke(e,n,i,l,c,r,u,F,k,v){const w=t.ref(e.view),p=t.ref(e.view==="CardView"),y=t.ref({}),C=Ie(e,n,l,k),T=t.computed(()=>({"f-list-view-group":!0,"f-list-view-group-multiselect":e.multiSelect,"d-flex":p.value,"flex-wrap":p.value})),V=t.computed(()=>!!i.value&&i.value.length>0),a=t.computed(()=>i.value.length===0);t.computed(()=>a.value&&!n.slots.empty);function s(){return w.value==="SingleView"?te:w.value==="DraggableView"?we:(w.value==="ContentView"||w.value==="CardView")&&(e.contentTemplate||n.slots.content)?Fe:te}const o=s(),{renderItem:d}=o(e,n,i,v,c,r,k,u,C,F),{renderItem:b}=Ve(e,n,i,v,c,r,k,u,C,F),g=[d,b];function f(){return i.value.filter(m=>m.visible!==!1).map((m,P)=>g[m.type](m,P,y))}function x(){return t.createVNode("div",{class:"f-list-view-emptydata",style:"margin: 0 auto;"},[t.createVNode("p",{class:"f-empty-title"},[e.emptyTemplate?e.emptyTemplate():n.slots.empty?n.slots.empty():Y.LocaleService.getLocaleValue("listView.emptyMessage")])])}function I(){return t.createVNode("ul",{class:T.value,style:"list-style: none;"},[V.value&&f(),a.value&&x()])}return{renderListArea:I}}function Te(e,n,i){function l(){return n.slots.header&&t.createVNode("div",{class:"f-list-view-header"},[n.slots.header()])}return{renderHeader:l}}function ne(e,n,i){const l=t.ref(e.headerClass),c=t.ref(e.placeholder),r=t.ref(""),u=t.computed(()=>!r.value),F=t.computed(()=>!!r.value);function k(y){r.value=""}t.watch(r,y=>{e.enableHighlightSearch&&i.search(y),n.emit("afterSearch",y)});const v=t.computed(()=>{const y={"form-group":!0,"farris-form-group":!0};return l.value&&l.value.split(" ").reduce((T,V)=>(T[V]=!0,T),y),y});function w(y){}function p(){return t.createVNode("div",{class:"f-list-view-header",onClick:t.withModifiers(()=>w,["prevent","stop"])},[t.createVNode("div",{class:v.value},[t.createVNode("div",{class:"farris-input-wrap"},[t.createVNode("div",{class:"f-cmp-inputgroup"},[t.createVNode("div",{class:"input-group f-state-editable"},[t.withDirectives(t.createVNode("input",{class:"form-control f-utils-fill text-left","onUpdate:modelValue":y=>r.value=y,name:"input-group-value",type:"text",placeholder:c.value,autocomplete:"off"},null),[[t.vModelText,r.value]]),t.createVNode("div",{class:"input-group-append"},[F.value&&t.createVNode("span",{class:"input-group-text input-group-clear",onClick:y=>k()},[t.createVNode("i",{class:"f-icon f-icon-close-circle"},null)]),u.value&&t.createVNode("span",{class:"input-group-text"},[t.createVNode("span",{class:"f-icon f-icon-search"},null)])])])])])])])}return{renderHeader:p}}function xe(){const e=t.ref(""),n=t.ref(-1),i=t.ref(""),l=t.ref(-1),c=t.ref(!1);function r(p,y,C){l.value=C}function u(p,y,C){c.value||(l.value=C)}function F(p,y,C){l.value=-1}function k(){c.value=!0}function v(){c.value=!1}function w(){n.value=-1,e.value=""}return{activeIndex:n,focusedItemId:i,hoverIndex:l,clearActiveItem:w,onMouseenterItem:r,onMouseoverItem:u,onMouseoutItem:F,resumeHover:v,suspendHover:k}}function Ne(e,n,i,l){const c=t.ref(e.idField),{dataView:r}=i,u=t.ref(-1),F=t.ref(!1),{activeIndex:k,focusedItemId:v,hoverIndex:w,resumeHover:p,suspendHover:y}=l;let C,T=0,V=0;function a(f,x){const I=f-T,m=x-V;C.style.left=parseInt(C.style.left)+I+"px",C.style.top=parseInt(C.style.top)+m+"px",T=f,V=x}function s(f){const{left:x,top:I}=f.getBoundingClientRect(),m=f.cloneNode(!0);return m.className=m.className+" f-listview-drag-moving",m.style.cssText=`
2
2
  position:absolute;
3
3
  left:${x}px;
4
- top:${document.documentElement.scrollTop?T+document.documentElement.scrollTop:T}px;
4
+ top:${document.documentElement.scrollTop?I+document.documentElement.scrollTop:I}px;
5
5
  z-index: 999999;
6
6
  pointer-events: none;
7
7
  border-radius: 10px;
@@ -10,9 +10,9 @@
10
10
  align-items: center;
11
11
  float: none;
12
12
  text-align: initial;
13
- width:${getComputedStyle(u).width};
14
- height:${getComputedStyle(u).height};
13
+ width:${getComputedStyle(f).width};
14
+ height:${getComputedStyle(f).height};
15
15
  `,m.children[0].style.cssText="overflow: hidden;flex: 1 1 auto;width: 100%;",m.children[0].children[0].style.cssText=`
16
16
  margin: 10px 0px 10px 14px;
17
17
  overflow: hidden;text-overflow: ellipsis;white-space: nowrap;
18
- `,m.children[1].style.cssText="width: 30px;padding: 0 14px 0 0",m.children[2].style.cssText="padding: 0 14px 0 0;",document.body.appendChild(m),m}function a(u,x,T){if(u.stopPropagation(),b(),x){if(F=d(u.target),u.dataTransfer){const m=new Image;m.src="",u.dataTransfer.setDragImage(m,0,0)}V=u.pageX,S=u.pageY,setTimeout(()=>{f.value=T,h.value=!0,x.moving=!0})}}function r(u,x){if(u.preventDefault(),f.value!==x){const T=s.value[f.value],m=s.value;m.splice(f.value,1),m.splice(x,0,T),f.value=x,o(u.pageX,u.pageY)}}function v(u){u.preventDefault(),u.dataTransfer&&(u.dataTransfer.dropEffect="move"),o(u.pageX,u.pageY)}function p(u,x){x&&(x.moving=!1,F&&(document.body.removeChild(F),F=null)),s.value.forEach((T,m)=>{T.__fv_index__=m}),h.value=!1,g(),w.value=x.raw.__fv_index__,I.value=x.raw.__fv_index__,k.value=x.raw[c.value],n.emit("change",s.value),n.emit("activeChange",[x.raw])}return{dragstart:a,dragenter:r,dragover:v,dragend:p,isDragging:h}}function Pe(e,n,i,l,c,s){const f=t.ref(e.idField),h=t.ref(e.disableField),I=t.ref(e.draggable);t.ref(e.itemClass);const k=t.ref(e.selection.multiSelect??!1),w=t.ref(e.selection.multiSelectMode),{isDragging:g}=l,{activeIndex:b,focusedItemId:F,hoverIndex:V}=c,{clearSelection:S,getSelectedItems:o,toggleSelectItem:d,currentSelectedDataId:a}=s,r=t.ref(o()),v=P=>r.value.length===0?!1:r.value.some(y=>{let C="";return y.data?C=y.data[f.value]:C=y[f.value],C===P});function p(){r.value=o()}function u(P,y){return P.raw[f.value]!=null?P.raw[f.value]:""}function x(P,y){const C={"f-list-view-group-item":!0,"f-list-view-draggable-item":I.value,"f-un-click":!P.checked,"f-un-select":!!P.raw[h.value],"f-listview-active":k.value&&v(u(P))||!k.value&&P.raw[f.value]===a.value,"f-listview-hover":!g.value&&y===V.value,moving:!!P.moving};if(typeof e.itemClass=="string")return A.getCustomClass(C,e.itemClass);if(typeof e.itemClass=="function"){const R=e.itemClass(P);return A.getCustomClass(C,R)}return C}function T(P,y){const C={};if(typeof e.itemStyle=="string")return A.getCustomStyle(C,e.itemStyle);if(typeof e.itemStyle=="function"){const R=e.itemStyle(P);return A.getCustomStyle(C,R)}return C}const m=t.computed(()=>!k.value);function N(P,y,C){P.checked=C,!P.raw[h.value]&&(m.value&&(F.value=P.raw[f.value]),d(P))}const B=t.computed(()=>k.value&&w.value==="OnCheckClearByClick"),j=t.computed(()=>!k.value||k.value&&(w.value==="OnCheckAndClick"||w.value==="OnClick"));function q(P,y,C){if(P.raw[h.value]){C==null||C.preventDefault(),C==null||C.stopPropagation();return}a.value=P.raw[f.value],F.value=P.raw[f.value],b.value=y,B.value&&S(),j.value&&(d(P),p()),n.emit("clickItem",{data:r.value,index:y,dataItem:P.raw}),n.emit("activeChange",r.value)}return{getKey:u,selectedItems:r,listViewItemClass:x,listViewItemStyle:T,updateSelectedItems:p,onCheckItem:N,onClickItem:q}}const ie=t.defineComponent({name:"FListView",props:Se,emits:["afterSearch","checkValuesChange","clickItem","selectItem","unSelectItem","selectionChange","removeItem","change","activeChange","pageIndexChanged","pageSizeChanged","changed","selectionUpdate"],setup(e,n){var ue;const i=t.ref(!1),l=t.ref(),c=t.ref(!0),s=t.ref(((ue=e.rowOption)==null?void 0:ue.rowHeight)||28),f=t.ref(!1),h=t.ref([]),I=0,k=t.ref(e.columns),w=$.useFilter(e,n),g=$.useIdentify(e),b=$.useHierarchy(e),F=$.useGroupData(e,g),V=$.useDataView(e,new Map,w,b,g),S=$.useSelection(e,V,g,h,n),o=Fe(e,l),d=$.usePagination(e,V),a=t.computed(()=>V.dataView.value.length),r=$.useRow(e,n,S,g),v=$.useEdit(e,n,g,r,h),p=$.useVisualDataBound(e,V,s),u=$.useVisualDataCell(e,{},p),x=$.useVisualDataRow(e,V,v,b,g,p,u,s),T=$.useVisualGroupRow(e,g,u,x),m=$.useVisualSummaryRow(e,g,u,x),N=$.useVisualData(e,k,V,a,I,x,T,m),{getVisualData:B}=N;h.value=B(0,a.value+I-1);const j=t.computed(()=>{const M={"f-list-view":!0,"f-list-view-multiple":e.multiSelect};return e.size!=="default"&&(M[`${e.size}-item`]=!0),A.getCustomClass(M,e.customClass)}),q=t.computed(()=>!!n.slots.footer||c.value);function P(){return e.header==="SearchBar"?ne:e.header==="ContentHeader"?xe:ne}const y=P(),{renderHeader:C}=y(e,n,o),R=Ne(),O=Oe(e,n,V,R),H=Pe(e,n,h,O,R,S),{renderListArea:We}=Te(e,n,h,V,F,R,S,N,H,O);function De(M){o.search(M)}function Ke(M){M&&(V.load(M),h.value=B(0,a.value+I-1))}function Xe(){S.clearSelection(),R.clearActiveItem()}function Ye(){return H.selectedItems.value}function Je(){return H.selectedItems.value.map(M=>M[g.idField.value])}function ce(M){S.selectedValues.value=M,H.updateSelectedItems()}function Qe(){return S.currentSelectedDataId.value}function Ze(M){r.activeRowById(M)}function et(M){const E=g.idField.value,_=h.value.find(Z=>Z.raw[E]===M),X=h.value.findIndex(Z=>Z.raw[E]===M);_&&X>-1&&H.onClickItem(_,X)}function tt(M){const E=g.idField.value,_=h.value.find(X=>X.raw[E]===M);_&&r.changeRow(_)}function nt(M){d.updatePagination(M)}function it(M){return h.value.filter(E=>M.includes(E.raw[e.idField]))}n.expose({search:De,updateDataSource:Ke,clearSelection:Xe,getSelections:Ye,updateSelectionByIds:ce,getSelectionIds:Je,activeRowById:Ze,getCurrentRowId:Qe,clickRowItemById:et,updatePagination:nt,getVisibleDataByIds:it,selectRowById:tt});function lt(M){e.multiSelect&&(M.preventDefault(),M.stopPropagation())}t.watch(()=>e.selectionValues,(M,E)=>{M!==E&&ce(M)});const at=$.useSidebar(e,S),{sidebarWidth:ot,showSidebarCheckBox:Ot}=at,rt=$.useColumn(e,n),{applyColumnSorter:Pt,columnContext:dt,updateColumnRenderContext:Mt}=rt,st=$.useVirtualScroll(e,V,h,dt,N,a,I,ot,s,i,v),{shouldRenderPagination:Bt}=d,{renderDataGridPagination:Rt}=$.getPagination(e,n,V,st,d,S);return()=>t.createVNode("div",{class:j.value,onClick:lt},[C(),t.createVNode("div",{ref:l,class:"f-list-view-content",onMouseover:()=>{f.value=!0},onMouseleave:()=>{f.value=!1}},[We()]),q.value&&t.createVNode("div",{class:"f-list-view-footer"},[e.footerTemplate?e.footerTemplate():n.slots.footer&&n.slots.footer()])])}}),Me={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 Be(e,n){function i(l){l.stopPropagation(),e.disabled||n.emit("click",l)}return{onClickButton:i}}function Re(e){const n=t.computed(()=>{const l={"f-icon":!0};if(e.icon){const c=e.icon.trim().split(" ");c&&c.length&&c.reduce((s,f)=>(s[f]=!0,s),l)}return l}),i=t.computed(()=>!!(e.icon&&e.icon.trim()));return{iconClass:n,shouldShowIcon:i}}const le=t.defineComponent({name:"FButton",props:Me,emits:["click"],setup(e,n){const{onClickButton:i}=Be(e,n),{iconClass:l,shouldShowIcon:c}=Re(e),s=t.computed(()=>{const f={btn:!0,"btn-lg":e.size==="large","btn-md":e.size!=="large"&&e.size!=="small","btn-sm":e.size==="small","btn-icontext":c.value};return f[`btn-${e.type}`]=!0,e.customClass&&Object.keys(e.customClass).reduce((h,I)=>(h[I]=e.customClass[I],h),f),f});return()=>t.createVNode("button",{class:s.value,disabled:e.disabled,onClick:f=>i(f)},[c.value&&t.createVNode("i",{class:l.value},null),n.slots.default&&n.slots.default()])}}),ae=new Map([["appearance",G.resolveAppearance]]),oe={$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"},dataSource:{description:"",type:"string"},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:"string",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"],events:{onClear:"清空事件",onChange:"值变化事件",beforeOpen:"打开下拉面板前事件"}};function re(e,n,i){return n}function Le(){function e(n,i,l){const c={};return c.beforeOpen=s=>i.call("beforeOpen",n,[s,n],l),c}return{resolve:e}}const U={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}},je=Object.assign({},U,{readonly:{}});G.createPropsResolver(U,oe,ae,re);const de=G.getPropsResolverGenerator(U,oe,ae,re),$e=Le(),Ae={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}},He=t.defineComponent({name:"FComboListContainer",props:Ae,emits:["selectionChange"],setup(e,n){const i=t.ref(),l=t.ref(e.dataSource),c=t.ref([]),s=t.ref(e.separator),f=t.ref(e.width),h=t.ref(e.maxHeight),I=t.computed(()=>e.multiSelect),k=t.ref(e.multiSelect?String(e.selectedValues).split(s.value):[e.selectedValues]),w=t.computed(()=>({enableSelectRow:!0,multiSelect:e.multiSelect,multiSelectMode:"OnCheckAndClick",showCheckbox:I.value,showSelectAll:!1,showSelection:!0}));t.watch(e.dataSource,()=>{l.value=e.dataSource}),t.computed(()=>e.enableSearch?"SearchBar":"ContentHeader");const g=t.computed(()=>{const o={};return f.value!==void 0&&(o.width=`${f.value}px`),h.value!==void 0&&h.value>0&&(o.maxHeight=`${h.value}px`),o});function b(o){i.value.search(o)}function F(o){c.value=o.map(d=>Object.assign({},d)),k.value=o.map(d=>d[e.idField]),n.emit("selectionChange",c.value)}function V(o){if(e.enableHighlightSearch)return;let d=[];const{searchOption:a}=e;typeof a=="function"?d=l.value.filter(r=>a(o,r)):d=l.value.filter(r=>r[e.valueField].indexOf(o)>-1||r[e.textField].indexOf(o)>-1),i.value.updateDataSource(d)}t.watch([()=>e.selectedValues],([o])=>{e.multiSelect?k.value=o.split(s.value):k.value=[o]});function S(o){i.value.activeRowById(o)}return t.onMounted(()=>{var o,d;if(!e.multiSelect){const a=(o=k.value)==null?void 0:o[0];let r=a;const v=l.value.map(p=>p[e.valueField||e.idField]);if(!me.isUndefined(a)&&v.includes(a)){const p=typeof a,u=typeof((d=l.value[0])==null?void 0:d[e.valueField||e.idField]);u==="number"&&p!==u&&(r=Number(a)),u==="boolean"&&p!==u&&(r=a==="true"?!0:a==="false"?!1:a),S(r)}}}),n.expose({search:b,activeRowById:S}),()=>t.createVNode("div",{class:"f-combo-list-container",style:g.value},[t.createVNode(ge,{ref:i,size:"small",itemClass:"f-combo-list-item",itemContentClass:"text-truncate",header:"ContentHeader",headerClass:"f-combo-list-search-box",data:l.value,idField:e.idField,textField:e.textField,titleField:e.titleField,multiSelect:e.multiSelect,selection:w.value,enableHighlightSearch:e.enableHighlightSearch,selectionValues:k.value,onSelectionUpdate:F,onAfterSearch:V},null)])}});function Ee(e,n){const i=t.ref(""),l=t.ref(e.modelValue),c=t.ref(e.data||[]),s=t.ref(e.editable);function f(o){const d=e.multiSelect?String(o).split(e.separator):[String(o)],a=d.map(p=>[p,!0]),r=new Map(a);return c.value.filter(p=>r.has(String(p[e.valueField]))).sort((p,u)=>{const x=d.indexOf(p[e.valueField]),T=d.indexOf(u[e.valueField]);return x-T})}function h(o){const d=f(o).map(a=>a[e.textField]).join(e.separator);i.value=s.value?d||o:d}function I(o){if(e.multiSelect){const d=o.split(e.separator).map(r=>[r,!0]),a=new Map(d);return c.value.filter(r=>a.has(r[e.textField]))}return c.value.filter(d=>""+d[e.textField]===o)}function k(o){const d={};return d[e.idField]=o,d[e.textField]=o,[d]}function w(o){let d=I(o);const a=d&&d.length>0;return s.value&&!a&&(d=k(o)),d}function g(){const{url:o,method:d="GET",headers:a={"Content-Type":"application/json;charset=utf-8;"},body:r=null}=e.remote;if(!o)return;const v=d.toLowerCase()==="get"?{method:d,headers:a}:{method:d,headers:a,body:r};let p=!1;fetch(new Request(o,v)).then(u=>{var T,m;if(u.status===200)return p=!!((m=(T=u.headers)==null?void 0:T.get("content-type"))!=null&&m.includes("application/json")),p?u.text():u.json();throw u.status===405?new Error(Y.LocaleService.getLocaleValue("comboList.remoteError")):new Error(u.statusText)}).then(u=>{u.length&&(c.value=p?JSON.parse(u):u)}).catch(u=>{console.warn(u)})}e.remote&&(e.load?e.load().then(o=>{c.value=o}).catch(o=>{console.log(o)}):g()),t.watch(()=>e.data,()=>{c.value=e.data}),t.watch([c],([o],[d])=>{if(e.modelValue!=null&&!e.multiSelect){const a=o.find(r=>r[e.valueField]===l.value);a?a[e.valueField]!==l.value?(l.value=a[e.valueField],i.value=a[e.textField],n.emit("update:modelValue",a[e.valueField]),n.emit("change",[a],a[e.valueField])):i.value!==a[e.textField]&&(i.value=a[e.textField]):l.value!==""&&(l.value="",i.value="",n.emit("update:modelValue",""),n.emit("change",[],""))}}),t.watch(()=>e.modelValue,(o,d)=>{d!==o&&(l.value=o,h(o))});function b(o){c.value=o}function F(){return c.value}function V(){return i.value}function S(){const o=typeof e.beforeOpen=="function";return!e.beforeOpen||!o?Promise.resolve(!0):Promise.resolve().then(()=>e.beforeOpen({instance:{updateDataSource:b,getData:F,getDisplayText:V}})).then(d=>typeof(d==null?void 0:d.canOpen)=="boolean"?d==null?void 0:d.canOpen:!0)}return h(e.modelValue),{dataSource:c,displayText:i,editable:s,modelValue:l,beforeOpenList:S,getItemsByDisplayText:I,getItemsByValue:f,getSelectedItemsByDisplayText:w}}const W=t.defineComponent({name:"FComboList",props:U,emits:["clear","update:modelValue","change","input"],setup(e,n){const i=t.ref(),l=t.ref(),c=t.ref(e.disabled||e.readonly),s=t.ref(e.enableClear),f=t.ref(e.enableSearch),h=t.ref(e.readonly),{dataSource:I,displayText:k,editable:w,modelValue:g,getItemsByDisplayText:b,getItemsByValue:F,beforeOpenList:V}=Ee(e,n),S=t.ref(e.dropDownIcon);S.value==='<span class="f-icon f-icon-arrow-chevron-down"></span>'&&(S.value='<span id="'+e.id+'-icon-dropdown" class="f-icon f-icon-arrow-chevron-down"></span>');const o=t.computed(()=>e.multiSelect),d=t.computed(()=>l.value?l.value.elementRef.getBoundingClientRect().width:0);function a(){!o.value&&l.value&&l.value.hidePopup()}function r(y){k.value=y.map(R=>R[e.textField]).join(e.separator)||g.value;let C="";y.length===1?C=y[0][e.valueField]:C=y.map(R=>R[e.valueField]).join(e.separator),g.value!==C&&(g.value=C,n.emit("update:modelValue",g.value),n.emit("change",y,g.value))}function v(){const y=F(g.value);r(y)}function p(){h.value||k.value}function u(y){var C;g.value="",(C=i.value)==null||C.activeRowById(""),n.emit("clear")}function x(y){var C,R;e.enableSearch&&e.enableHighlightSearch&&((C=i.value)==null||C.search(y)),(R=i.value)==null||R.activeRowById(y),n.emit("change",[g.value],g.value)}function T(y){if(e.multiSelect){const C=b(y);e.viewType;const O=C.map(H=>H[e.idField||e.valueField]).join(e.separator);g.value!==O&&(g.value=O,n.emit("update:modelValue",g.value),n.emit("change",C,g.value))}else y!==g.value&&(g.value=y,n.emit("update:modelValue",g.value),n.emit("change",[],y))}function m(){return k.value}function N(y){const{value:C}=y.target;x(C),n.emit("input",C)}function B(){l.value.hidePopup()}function j(y){I.value=y}function q(){return I.value}const P={getDisplayText:m,hidePopup:B,updateDataSource:j,getData:q};return n.expose(P),t.watch([()=>e.disabled,()=>e.editable,()=>e.enableClear,()=>e.enableSearch,()=>e.readonly],([y,C,R,O,H])=>{c.value=y,w.value=C,s.value=R,f.value=O,h.value=H}),()=>t.createVNode(fe,{ref:l,id:e.id,disable:c.value,readonly:h.value,forcePlaceholder:e.forcePlaceholder,editable:w.value,buttonContent:S.value,placeholder:e.placeholder==="请选择"?Y.LocaleService.getLocaleValue("comboList.placeholder"):e.placeholder,enableClear:s.value,maxLength:e.maxLength,tabIndex:e.tabIndex,enableTitle:e.enableTitle,multiSelect:e.multiSelect,inputType:e.multiSelect?e.viewType:"text",modelValue:k.value,"onUpdate:modelValue":y=>k.value=y,focusOnCreated:e.focusOnCreated,selectOnCreated:e.selectOnCreated,onClear:u,onClick:p,onChange:T,onBlur:v,onInput:N,beforeOpen:V,placement:e.placement,popupMinWidth:e.minPanelWidth,popupClass:"f-combo-list-wrapper",popupOnClick:e.popupOnClick,limitContentBySpace:!0},{default:()=>[t.createVNode(He,{ref:i,idField:e.idField,valueField:e.valueField,textField:e.textField,titleField:e.titleField,dataSource:I.value,selectedValues:g.value,separator:e.separator,multiSelect:e.multiSelect,enableSearch:f.value,maxHeight:e.maxHeight,enableHighlightSearch:e.enableHighlightSearch,width:e.fitEditor?d.value:void 0,onSelectionChange:y=>{r(y),a()}},null)]})}}),se={convertFrom:(e,n)=>(e.editor.remote||{})[n],convertTo:(e,n,i)=>{e.editor.remote=e.editor.remote||{},e.editor.remote[n]=i}};class qe extends pe.InputBaseProperty{constructor(n,i){super(n,i)}getCommonEditorProperties(n){var i,l,c;return{viewType:{visible:!!((i=n.editor)!=null&&i.multiSelect),description:"数据展示类型,有标签和文本两种方式",title:"数据展示类型",type:"enum",editor:{data:[{id:"tag",name:"标签"},{id:"text",name:"文本"}]},refreshPanelAfterChanged:!0},separator:{visible:!!((l=n.editor)!=null&&l.multiSelect)&&((c=n.editor)==null?void 0:c.viewType)==="text",description:"下拉列表启用多选且数据展示类型为文本时的分隔符",title:"分隔符",type:"enum",editor:{data:[{id:",",name:"逗号(,)"},{id:"#",name:"井号(#)"},{id:".",name:"句号(.)"},{id:"|",name:"竖线(|)"}]}},editable:{description:"",title:"允许编辑",type:"boolean",refreshPanelAfterChanged:!0,readonly:!0}}}getEditorProperties(n){var I,k,w,g,b,F,V,S,o,d,a,r;const i=this;let l="";if(((I=n==null?void 0:n.binding)==null?void 0:I.type)==="Form"){const v=this.schemaService.getFieldByIDAndVMID(n.binding.field,this.viewModelId);(k=v==null?void 0:v.schemaField)!=null&&k.type&&(l=v.schemaField.type.$type)}const c=this.getPropertyEditorParams(n,["Variable"]),s=!n.editor.dataSourceType||n.editor.dataSourceType==="static",f=((g=(w=this.designViewModelField)==null?void 0:w.type)==null?void 0:g.$type)===A.FormSchemaEntityFieldType$Type.StringType&&((b=n.editor)==null?void 0:b.type)==="combo-list"&&((F=n.editor)==null?void 0:F.dataSourceType)==="dynamic"&&!((S=(V=n.editor)==null?void 0:V.remote)!=null&&S.url)&&!((o=n.editor)!=null&&o.multiSelect);return i.getComponentConfig(n,{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},dataSource:{description:"动态数据源绑定变量",visible:f,title:"数据",editor:{...c,controlName:"",enableClear:!0},refreshPanelAfterChanged:!0},data:{description:"",title:"数据",type:"array",visible:s,...i.getItemCollectionEditor(n,n.editor.valueField,n.editor.textField),refreshPanelAfterChanged:!0},url:{visible:n.editor.dataSourceType==="dynamic"&&!((d=n.editor)!=null&&d.dataSource),$converter:se,description:"",title:"服务端API",type:"string",refreshPanelAfterChanged:!0},body:{visible:!1,$converter:se,description:"",title:"服务端API参数",type:"string"},textField:{description:"",title:"数据源显示字段",type:"string",readonly:n.editor.dataSourceType!=="dynamic"},valueField:{description:"",title:"数据源值字段",type:"string",readonly:n.editor.dataSourceType!=="dynamic"},multiSelect:{description:"",title:"启用多选",visible:!l||l==="StringType",readonly:((a=n.editor)==null?void 0:a.dataSourceType)==="dynamic"&&!!((r=n.editor)!=null&&r.dataSource),type:"boolean",refreshPanelAfterChanged:!0},maxLength:{description:"",title:"最大输入长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1,needValid:!0}},...this.getCommonEditorProperties(n)},(v,p)=>{if(!v||!p.editor)return;const u=this;switch(v.propertyID){case"dataSourceType":{v.propertyValue==="static"?(p.editor.valueField="value",p.editor.textField="name",p.editor.remote=null):v.propertyValue==="dynamic"&&(p.editor.remote={method:"GET"},p.editor.valueField="value",p.editor.textField="name");break}case"data":{!u.checkEnumDataReadonly(p)&&p.formatter&&(p.formatter.data=[...v.propertyValue]);break}case"viewType":{v.propertyValue==="tag"&&(p.editor.editable=!1);break}case"dataSource":u.afterMutilEditorChanged(p,v)}})}getGridFieldEdtiorProperties(n,i){var I,k,w,g,b,F,V,S,o,d,a,r,v;const l=this;let c="";if(((I=n==null?void 0:n.binding)==null?void 0:I.type)==="Form"){const p=this.schemaService.getFieldByIDAndVMID(n.binding.field,this.viewModelId);(k=p==null?void 0:p.schemaField)!=null&&k.type&&(c=p.schemaField.type.$type)}const s=((g=(w=this.designViewModelField)==null?void 0:w.type)==null?void 0:g.$type)===A.FormSchemaEntityFieldType$Type.StringType&&((b=n.editor)==null?void 0:b.type)==="combo-list"&&((F=n.editor)==null?void 0:F.dataSourceType)==="dynamic"&&!((V=n.editor)!=null&&V.multiSelect),f=this.getPropertyEditorParams(n,["Variable"]);return l.getComponentConfig(n,{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},dataSource:{description:"动态数据源绑定变量",visible:s,title:"数据",editor:{...f,controlName:"",enableClear:!0},refreshPanelAfterChanged:!0},data:{description:"",title:"数据",type:"array",visible:!((S=n.editor)!=null&&S.dataSourceType)||((o=n.editor)==null?void 0:o.dataSourceType)==="static",...l.getItemCollectionEditor(n,(d=n.editor)==null?void 0:d.valueField,(a=n.editor)==null?void 0:a.textField),refreshPanelAfterChanged:!0},textField:{description:"",title:"数据源显示字段",type:"string",readonly:!0},valueField:{description:"",title:"数据源值字段",type:"string",readonly:!0},multiSelect:{description:"",title:"启用多选",visible:c==="StringType",readonly:((r=n.editor)==null?void 0:r.dataSourceType)==="dynamic"&&!!((v=n.editor)!=null&&v.dataSource),type:"boolean",refreshPanelAfterChanged:!0},maxLength:{description:"",title:"最大输入长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1,needValid:!0}},...this.getCommonEditorProperties(n)},(p,u)=>{if(!p||!u.editor)return;const x=this;switch(p.propertyID){case"dataSourceType":{p.propertyValue==="static"?(u.editor.valueField="value",u.editor.textField="name",u.editor.remote=null):p.propertyValue==="dynamic"&&(u.editor.remote={method:"GET"},u.editor.valueField="value",u.editor.textField="name");break}case"data":{!x.checkEnumDataReadonly(u)&&u.formatter&&(u.formatter.data=[...p.propertyValue]);break}case"dataSource":x.afterMutilEditorChanged(u,p)}})}setEditorPropertyRelates(n,i,l){if(!n||!i.editor)return;const c=this;switch(n.propertyID){case"dataSourceType":{n.propertyValue==="static"&&(i.editor.valueField="value",i.editor.textField="name",i.editor.remote={});break}case"data":{!c.checkEnumDataReadonly(i)&&i.formatter&&(i.formatter.data=[...n.propertyValue]);break}}}changeBindingField(n,i,l){var s;super.changeBindingField(n,i);const c=l;n.editor&&((s=c==null?void 0:c.type)==null?void 0:s.$type)===A.FormSchemaEntityFieldType$Type.EnumType&&(n.editor.data=c.type.enumValues||[])}getEventPropertyConfig(n,i="card",l,c){const s=this;let f=[{label:"onChange",name:"值变化事件"},{label:"beforeOpen",name:"下拉面板前事件"}];l&&(f=f.concat(l)),this.appendFieldValueChangeEvents(n,f);const h=s.eventsEditorUtils.formProperties(n,s.viewModelId,f);return{title:"事件",hideTitle:!0,properties:s.createBaseEventProperty(h),tabId:"commands",tabName:"交互",setPropertyRelates(w,g){const b=w.propertyValue;delete n[s.viewModelId],b&&(b.setPropertyRelates=this.setPropertyRelates,s.eventsEditorUtils.saveRelatedParameters(n,s.viewModelId,b.events,b)),c&&c(w,g,b);const F=s.designViewModelUtils.getDgViewModel(s.viewModelId);F&&s.designViewModelField&&F.changeField(s.designViewModelField.id,{valueChanging:n.fieldValueChanging,valueChanged:n.fieldValueChanged}),n.editor.beforeOpen!==n.beforeOpen&&(n.editor.beforeOpen=n.beforeOpen),n.editor.onChange!==n.onChange&&(n.editor.onChange=n.onChange),n.editor.onClear!==n.onClear&&(n.editor.onClear=n.onClear)}}}}function Ge(e,n){const i=e.schema;function l(c,s){return new qe(c,n).getPropertyConfig(i,s)}return{getPropsConfig:l}}const _e=t.defineComponent({name:"FComboListDesign",props:je,emits:["clear","update:modelValue","change"],setup(e,n){const i=t.ref(),l=t.inject("designer-host-service"),c=t.inject("design-item-context"),s=Ge(c,l),f=ee.useDesignerComponent(i,c,s);return t.onMounted(()=>{i.value.componentInstance=f}),n.expose(f.value),()=>t.createVNode(he,{ref:i,buttonContent:e.dropDownIcon,readonly:!0,editable:!1,forcePlaceholder:!0,placeholder:e.placeholder,enableClear:!0},null)}});W.register=(e,n,i,l,c)=>{e["combo-list"]=W,n["combo-list"]=de(c),l["combo-list"]={callbackResolver:$e}},W.registerDesigner=(e,n,i,l)=>{e["combo-list"]=_e,n["combo-list"]=de(l)};const D=A.withInstall(W),K=t.defineComponent({name:"FOrder",props:z,emits:["change"],setup(e,n){const i=t.ref(),l=t.ref(e.items);function c(){var r;const a=Array.isArray(e.items)?e.items:[];l.value=[...a],(r=i.value)==null||r.updateDataSource(l.value)}t.watch(()=>e.items,c);const s=t.ref("排序列"),f=t.ref("排序方式"),h=t.ref("添加排序列"),I=[{id:"asc",name:"升序"},{id:"desc",name:"降序"}],k=t.ref(new Map);function w(){const a=l.value.map(r=>[r.id,!0]);k.value=new Map(a)}w();const g=t.computed(()=>e.dataSource.map(a=>(a.disabled=k.value.has(a.id),a))),b=t.computed(()=>({"f-order":!0}));function F(a){l.value=l.value.filter(r=>r.id!==a.id),w(),n.emit("change",l.value)}function V(){l.value=[...l.value,{id:Date.now().toString(),name:"",order:"asc"}],w(),n.emit("change",l.value)}function S(a){if(a&&a.length===1){const r=a[0],v=l.value.find(p=>p.id===r.id);v&&(v.name=r.name)}w(),n.emit("change",l.value)}function o(a){if(a&&a.length){const r=new Map;a.reduce((v,p)=>(v.set(p.id,p),v),r),l.value=a.map(v=>r.get(v.id)),n.emit("change",l.value)}}function d(){return t.createVNode(ie,{ref:i,style:"flex:1",data:l.value,draggable:!0,view:"DraggableView","keep-order":!0,itemClass:"f-order-item",onRemoveItem:F,onChange:o},{header:()=>t.createVNode("div",{class:"f-order-header"},[t.createVNode("span",{class:"f-order-header-order-field"},[s.value]),t.createVNode("span",{class:"f-order-header-order-type"},[f.value])]),itemContent:a=>t.createVNode("div",{class:"f-order-item-content"},[t.createVNode(D,{class:"f-order-item-content-order-field",data:g.value,valueField:"id",textField:"name",idField:"id",modelValue:a.raw.id,"onUpdate:modelValue":r=>a.raw.id=r,onChange:S,onClear:S},null),t.createVNode(D,{class:"f-order-item-content-order-type",data:I,valueField:"id",textField:"name",idField:"id",modelValue:a.raw.order,"onUpdate:modelValue":r=>a.raw.order=r,onChange:S},null)]),footer:()=>t.createVNode("div",{class:"f-order-footer"},[t.createVNode(le,{type:"link",class:"f-order-add-button",onClick:V},{default:()=>t.createVNode(t.Fragment,null,[t.createVNode("span",{class:"f-order-add-icon"},[t.createVNode("i",{class:"f-icon f-icon-add"},null)]),h.value])})])})}return()=>t.createVNode("div",{class:b.value},[d()])}}),ze=t.defineComponent({name:"FOrderDesign",props:z,emits:["change"],setup(e,n){const i=t.ref(e.items),l=t.ref("排序列"),c=t.ref("排序方式"),s=t.ref("添加排序列"),f=[{id:"asc",name:"升序"},{id:"desc",name:"降序"}],h=t.ref(new Map),I=t.ref(),k=t.inject("design-item-context"),w=ee.useDesignerComponent(I,k);t.onMounted(()=>{I.value.componentInstance=w}),n.expose(w.value);function g(){const r=i.value.map(v=>[v.id,!0]);h.value=new Map(r)}g();const b=t.computed(()=>e.dataSource.map(r=>(r.disabled=h.value.has(r.id),r))),F=t.computed(()=>({"f-order":!0}));function V(r){i.value=i.value.filter(v=>v.id!==r.id),g(),n.emit("change",i.value)}function S(){i.value=[...i.value,{id:Date.now().toString(),name:"",order:"asc"}],g(),n.emit("change",i.value)}function o(r){g(),n.emit("change",i.value)}function d(r){if(r&&r.length){const v=new Map;r.reduce((p,u)=>(p.set(u.id,u),p),v),i.value=r.map(p=>v.get(p.id)),n.emit("change",i.value)}}function a(){return t.createVNode(ie,{style:"flex:1",data:i.value,draggable:!0,view:"DraggableView","keep-order":!0,itemClass:"f-order-item",onRemoveItem:V,onChange:d},{header:()=>t.createVNode("div",{class:"f-order-header"},[t.createVNode("span",{class:"f-order-header-order-field"},[l.value]),t.createVNode("span",{class:"f-order-header-order-type"},[c.value])]),itemContent:r=>t.createVNode("div",{class:"f-order-item-content"},[t.createVNode(D,{class:"f-order-item-content-order-field",data:b.value,valueField:"id",textField:"name",idField:"id",modelValue:r.id,"onUpdate:modelValue":v=>r.id=v,onChange:o,onClear:o},null),t.createVNode(D,{class:"f-order-item-content-order-type",data:f,valueField:"id",textField:"name",idField:"id",modelValue:r.order,"onUpdate:modelValue":v=>r.order=v,onChange:o},null)]),footer:()=>t.createVNode("div",{class:"f-order-footer"},[t.createVNode(le,{type:"link",class:"f-order-add-button",onClick:S},{default:()=>t.createVNode(t.Fragment,null,[t.createVNode("span",{class:"f-order-add-icon"},[t.createVNode("i",{class:"f-icon f-icon-add"},null)]),s.value])})])})}return()=>t.createVNode("div",{ref:I,class:F.value},[a()])}}),Ue={install(e){e.component(K.name,K)},register(e,n,i,l){e.order=K,n.order=Q},registerDesigner(e,n,i){e.order=ze,n.order=Q}};L.FOrder=K,L.default=Ue,L.orderProps=z,L.propsResolver=Q,Object.defineProperties(L,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
18
+ `,m.children[1].style.cssText="width: 30px;padding: 0 14px 0 0",m.children[2].style.cssText="padding: 0 14px 0 0;",document.body.appendChild(m),m}function o(f,x,I){if(f.stopPropagation(),y(),x){if(C=s(f.target),f.dataTransfer){const m=new Image;m.src="",f.dataTransfer.setDragImage(m,0,0)}T=f.pageX,V=f.pageY,setTimeout(()=>{u.value=I,F.value=!0,x.moving=!0})}}function d(f,x){if(f.preventDefault(),u.value!==x){const I=r.value[u.value],m=r.value;m.splice(u.value,1),m.splice(x,0,I),u.value=x,a(f.pageX,f.pageY)}}function b(f){f.preventDefault(),f.dataTransfer&&(f.dataTransfer.dropEffect="move"),a(f.pageX,f.pageY)}function g(f,x){x&&(x.moving=!1,C&&(document.body.removeChild(C),C=null)),r.value.forEach((I,m)=>{I.__fv_index__=m}),F.value=!1,p(),w.value=x.raw.__fv_index__,k.value=x.raw.__fv_index__,v.value=x.raw[c.value],n.emit("change",r.value),n.emit("activeChange",[x.raw])}return{dragstart:o,dragenter:d,dragover:b,dragend:g,isDragging:F}}function Oe(e,n,i,l,c,r){const u=t.ref(e.idField),F=t.ref(e.disableField),k=t.ref(e.draggable);t.ref(e.itemClass);const v=t.ref(e.selection.multiSelect??!1),w=t.ref(e.selection.multiSelectMode),{isDragging:p}=l,{activeIndex:y,focusedItemId:C,hoverIndex:T}=c,{clearSelection:V,getSelectedItems:a,toggleSelectItem:s,currentSelectedDataId:o}=r,d=t.ref(a()),b=N=>d.value.length===0?!1:d.value.some(h=>{let S="";return h.data?S=h.data[u.value]:S=h[u.value],S===N});function g(){d.value=a()}function f(N,h){return N.raw[u.value]!=null?N.raw[u.value]:""}function x(N,h){const S={"f-list-view-group-item":!0,"f-list-view-draggable-item":k.value,"f-un-click":!N.checked,"f-un-select":!!N.raw[F.value],"f-listview-active":v.value&&b(f(N))||!v.value&&N.raw[u.value]===o.value,"f-listview-hover":!p.value&&h===T.value,moving:!!N.moving};if(typeof e.itemClass=="string")return A.getCustomClass(S,e.itemClass);if(typeof e.itemClass=="function"){const B=e.itemClass(N);return A.getCustomClass(S,B)}return S}function I(N,h){const S={};if(typeof e.itemStyle=="string")return A.getCustomStyle(S,e.itemStyle);if(typeof e.itemStyle=="function"){const B=e.itemStyle(N);return A.getCustomStyle(S,B)}return S}const m=t.computed(()=>!v.value);function P(N,h,S){N.checked=S,!N.raw[F.value]&&(m.value&&(C.value=N.raw[u.value]),s(N))}const R=t.computed(()=>v.value&&w.value==="OnCheckClearByClick"),j=t.computed(()=>!v.value||v.value&&(w.value==="OnCheckAndClick"||w.value==="OnClick"));function H(N,h,S){if(N.raw[F.value]){S==null||S.preventDefault(),S==null||S.stopPropagation();return}o.value=N.raw[u.value],C.value=N.raw[u.value],y.value=h,R.value&&V(),j.value&&(s(N),g()),n.emit("clickItem",{data:d.value,index:h,dataItem:N.raw}),n.emit("activeChange",d.value)}return{getKey:f,selectedItems:d,listViewItemClass:x,listViewItemStyle:I,updateSelectedItems:g,onCheckItem:P,onClickItem:H}}const ie=t.defineComponent({name:"FListView",props:be,emits:["afterSearch","checkValuesChange","clickItem","selectItem","unSelectItem","selectionChange","removeItem","change","activeChange","pageIndexChanged","pageSizeChanged","changed","selectionUpdate"],setup(e,n){const i=t.ref(),l=t.ref(!0),c=t.ref(!1),r=t.ref([]),u=0,F=t.ref(e.columns),k=$.useFilter(e,n),v=$.useIdentify(e),w=$.useHierarchy(e),p=$.useGroupData(e,v),y=$.useDataView(e,new Map,k,w,v),C=$.useSelection(e,y,v,r,n),T=Se(e,i),V=$.usePagination(e,y),a=t.computed(()=>y.dataView.value.length),s=$.useRow(e,n,C,v),o=$.useEdit(e,n,v,s,r),d=$.useVisualDataBound(e),b=$.useVisualDataCell(e,{},d),g=$.useVisualDataRow(e,y,o,w,v,d,b),f=$.useVisualGroupRow(e,v,b,g),x=$.useVisualSummaryRow(e,v,b,g),I=$.useVisualData(e,F,y,a,u,g,f,x),{getVisualData:m}=I;r.value=m(0,a.value+u-1);const P=t.computed(()=>{const M={"f-list-view":!0,"f-list-view-multiple":e.multiSelect};return e.size!=="default"&&(M[`${e.size}-item`]=!0),A.getCustomClass(M,e.customClass)}),R=t.computed(()=>!!n.slots.footer||l.value);function j(){return e.header==="SearchBar"?ne:e.header==="ContentHeader"?Te:ne}const H=j(),{renderHeader:N}=H(e,n,T),h=xe(),S=Ne(e,n,y,h),B=Oe(e,n,r,S,h,C),{renderListArea:O}=ke(e,n,r,y,p,h,C,I,B,S);function G(M){T.search(M)}function Ue(M){M&&(y.load(M),r.value=m(0,a.value+u-1))}function We(){C.clearSelection(),h.clearActiveItem()}function De(){return B.selectedItems.value}function Ke(){return B.selectedItems.value.map(M=>M[v.idField.value])}function ce(M){C.selectedValues.value=M,B.updateSelectedItems()}function Xe(){return C.currentSelectedDataId.value}function Ye(M){s.activeRowById(M)}function Je(M){const E=v.idField.value,_=r.value.find(Z=>Z.raw[E]===M),X=r.value.findIndex(Z=>Z.raw[E]===M);_&&X>-1&&B.onClickItem(_,X)}function Qe(M){const E=v.idField.value,_=r.value.find(X=>X.raw[E]===M);_&&s.changeRow(_)}function Ze(M){V.updatePagination(M)}function et(M){return r.value.filter(E=>M.includes(E.raw[e.idField]))}n.expose({search:G,updateDataSource:Ue,clearSelection:We,getSelections:De,updateSelectionByIds:ce,getSelectionIds:Ke,activeRowById:Ye,getCurrentRowId:Xe,clickRowItemById:Je,updatePagination:Ze,getVisibleDataByIds:et,selectRowById:Qe});function tt(M){e.multiSelect&&(M.preventDefault(),M.stopPropagation())}t.watch(()=>e.selectionValues,(M,E)=>{M!==E&&ce(M)});const nt=$.useSidebar(e,C),{sidebarWidth:it,showSidebarCheckBox:Tt}=nt,lt=$.useColumn(e,n),{applyColumnSorter:xt,columnContext:at,updateColumnRenderContext:Nt}=lt,ot=$.useVirtualScroll(e,y,r,at,I,a,u,it,o),{shouldRenderPagination:Ot}=V,{renderDataGridPagination:Pt}=$.getPagination(e,n,y,ot,V,C);return()=>t.createVNode("div",{class:P.value,onClick:tt},[N(),t.createVNode("div",{ref:i,class:"f-list-view-content",onMouseover:()=>{c.value=!0},onMouseleave:()=>{c.value=!1}},[O()]),R.value&&t.createVNode("div",{class:"f-list-view-footer"},[e.footerTemplate?e.footerTemplate():n.slots.footer&&n.slots.footer()])])}}),Pe={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 Me(e,n){function i(l){l.stopPropagation(),e.disabled||n.emit("click",l)}return{onClickButton:i}}function Be(e){const n=t.computed(()=>{const l={"f-icon":!0};if(e.icon){const c=e.icon.trim().split(" ");c&&c.length&&c.reduce((r,u)=>(r[u]=!0,r),l)}return l}),i=t.computed(()=>!!(e.icon&&e.icon.trim()));return{iconClass:n,shouldShowIcon:i}}const le=t.defineComponent({name:"FButton",props:Pe,emits:["click"],setup(e,n){const{onClickButton:i}=Me(e,n),{iconClass:l,shouldShowIcon:c}=Be(e),r=t.computed(()=>{const u={btn:!0,"btn-lg":e.size==="large","btn-md":e.size!=="large"&&e.size!=="small","btn-sm":e.size==="small","btn-icontext":c.value};return u[`btn-${e.type}`]=!0,e.customClass&&Object.keys(e.customClass).reduce((F,k)=>(F[k]=e.customClass[k],F),u),u});return()=>t.createVNode("button",{class:r.value,disabled:e.disabled,onClick:u=>i(u)},[c.value&&t.createVNode("i",{class:l.value},null),n.slots.default&&n.slots.default()])}}),ae=new Map([["appearance",q.resolveAppearance]]),oe={$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"},dataSource:{description:"",type:"string"},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:"string",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:""},onDataChanged:{description:"清空事件",type:"string",default:""}},required:["type"],ignore:["id","appearance","binding","visible"],events:{onClear:"清空事件",onChange:"值变化事件",beforeOpen:"打开下拉面板前事件"}};function re(e,n,i){return n}function Re(){function e(n,i,l){const c={};return c.beforeOpen=r=>i.call("beforeOpen",n,[r,n],l),c}return{resolve:e}}const U={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}},Le=Object.assign({},U,{readonly:{}});q.createPropsResolver(U,oe,ae,re);const de=q.getPropsResolverGenerator(U,oe,ae,re),je=Re(),$e={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}},Ae=t.defineComponent({name:"FComboListContainer",props:$e,emits:["selectionChange"],setup(e,n){const i=t.ref(),l=t.ref(e.dataSource),c=t.ref([]),r=t.ref(e.separator),u=t.ref(e.width),F=t.ref(e.maxHeight),k=t.computed(()=>e.multiSelect),v=t.ref(e.multiSelect?String(e.selectedValues).split(r.value):[e.selectedValues]),w=t.computed(()=>({enableSelectRow:!0,multiSelect:e.multiSelect,multiSelectMode:"OnCheckAndClick",showCheckbox:k.value,showSelectAll:!1,showSelection:!0}));t.watch(e.dataSource,()=>{l.value=e.dataSource}),t.computed(()=>e.enableSearch?"SearchBar":"ContentHeader");const p=t.computed(()=>{const a={};return u.value!==void 0&&(a.width=`${u.value}px`),F.value!==void 0&&F.value>0&&(a.maxHeight=`${F.value}px`),a});function y(a){i.value.search(a)}function C(a){c.value=a.map(s=>Object.assign({},s)),v.value=a.map(s=>s[e.idField]),n.emit("selectionChange",c.value)}function T(a){if(e.enableHighlightSearch)return;let s=[];const{searchOption:o}=e;typeof o=="function"?s=l.value.filter(d=>o(a,d)):s=l.value.filter(d=>d[e.valueField].indexOf(a)>-1||d[e.textField].indexOf(a)>-1),i.value.updateDataSource(s)}t.watch([()=>e.selectedValues],([a])=>{e.multiSelect?v.value=a.split(r.value):v.value=[a]});function V(a){i.value.activeRowById(a)}return t.onMounted(()=>{var a,s;if(!e.multiSelect){const o=(a=v.value)==null?void 0:a[0];let d=o;const b=l.value.map(g=>g[e.valueField||e.idField]);if(!fe.isUndefined(o)&&b.includes(o)){const g=typeof o,f=typeof((s=l.value[0])==null?void 0:s[e.valueField||e.idField]);f==="number"&&g!==f&&(d=Number(o)),f==="boolean"&&g!==f&&(d=o==="true"?!0:o==="false"?!1:o),V(d)}}}),n.expose({search:y,activeRowById:V}),()=>t.createVNode("div",{class:"f-combo-list-container",style:p.value},[t.createVNode(me,{ref:i,size:"small",itemClass:"f-combo-list-item",itemContentClass:"text-truncate",header:"ContentHeader",headerClass:"f-combo-list-search-box",data:l.value,idField:e.idField,textField:e.textField,titleField:e.titleField,multiSelect:e.multiSelect,selection:w.value,enableHighlightSearch:e.enableHighlightSearch,selectionValues:v.value,onSelectionUpdate:C,onAfterSearch:T},null)])}});function Ee(e,n){const i=t.ref(""),l=t.ref(e.modelValue),c=t.ref(e.data||[]),r=t.ref(e.editable);function u(a){const s=e.multiSelect?String(a).split(e.separator):[String(a)],o=s.map(g=>[g,!0]),d=new Map(o);return c.value.filter(g=>d.has(String(g[e.valueField]))).sort((g,f)=>{const x=s.indexOf(g[e.valueField]),I=s.indexOf(f[e.valueField]);return x-I})}function F(a){const s=u(a).map(o=>o[e.textField]).join(e.separator);i.value=r.value?s||a:s}function k(a){if(e.multiSelect){const s=a.split(e.separator).map(d=>[d,!0]),o=new Map(s);return c.value.filter(d=>o.has(d[e.textField]))}return c.value.filter(s=>""+s[e.textField]===a)}function v(a){const s={};return s[e.idField]=a,s[e.textField]=a,[s]}function w(a){let s=k(a);const o=s&&s.length>0;return r.value&&!o&&(s=v(a)),s}function p(){const{url:a,method:s="GET",headers:o={"Content-Type":"application/json;charset=utf-8;"},body:d=null}=e.remote;if(!a)return;const b=s.toLowerCase()==="get"?{method:s,headers:o}:{method:s,headers:o,body:d};let g=!1;fetch(new Request(a,b)).then(f=>{var I,m;if(f.status===200)return g=!!((m=(I=f.headers)==null?void 0:I.get("content-type"))!=null&&m.includes("application/json")),g?f.text():f.json();throw f.status===405?new Error(Y.LocaleService.getLocaleValue("comboList.remoteError")):new Error(f.statusText)}).then(f=>{f.length&&(c.value=g?JSON.parse(f):f)}).catch(f=>{console.warn(f)})}e.remote&&(e.load?e.load().then(a=>{c.value=a}).catch(a=>{console.log(a)}):p()),t.watch(()=>e.data,()=>{c.value=e.data}),t.watch([c],([a],[s])=>{if(e.modelValue!=null&&!e.multiSelect){const o=a.find(d=>d[e.valueField]===l.value);o?o[e.valueField]!==l.value?(l.value=o[e.valueField],i.value=o[e.textField],n.emit("update:modelValue",o[e.valueField]),n.emit("change",[o],o[e.valueField])):i.value!==o[e.textField]&&(i.value=o[e.textField]):l.value!==""&&(l.value="",i.value="",n.emit("update:modelValue",""),n.emit("change",[],""))}}),t.watch(()=>e.modelValue,(a,s)=>{s!==a&&(l.value=a,F(a))});function y(a){c.value=a,n.emit("dataChanged",a)}function C(){return c.value}function T(){return i.value}function V(){const a=typeof e.beforeOpen=="function";return!e.beforeOpen||!a?Promise.resolve(!0):Promise.resolve().then(()=>e.beforeOpen({instance:{updateDataSource:y,getData:C,getDisplayText:T}})).then(s=>typeof(s==null?void 0:s.canOpen)=="boolean"?s==null?void 0:s.canOpen:!0)}return F(e.modelValue),{dataSource:c,displayText:i,editable:r,modelValue:l,beforeOpenList:V,getItemsByDisplayText:k,getItemsByValue:u,getSelectedItemsByDisplayText:w}}const W=t.defineComponent({name:"FComboList",props:U,emits:["clear","update:modelValue","change","input","dataChanged"],setup(e,n){const i=t.ref(),l=t.ref(),c=t.ref(e.disabled||e.readonly),r=t.ref(e.enableClear),u=t.ref(e.enableSearch),F=t.ref(e.readonly),{dataSource:k,displayText:v,editable:w,modelValue:p,getItemsByDisplayText:y,getItemsByValue:C,beforeOpenList:T}=Ee(e,n),V=t.ref(e.dropDownIcon);V.value==='<span class="f-icon f-icon-arrow-chevron-down"></span>'&&(V.value='<span id="'+e.id+'-icon-dropdown" class="f-icon f-icon-arrow-chevron-down"></span>');const a=t.computed(()=>e.multiSelect),s=t.computed(()=>l.value?l.value.elementRef.getBoundingClientRect().width:0);function o(){!a.value&&l.value&&l.value.hidePopup()}function d(h){v.value=h.map(B=>B[e.textField]).join(e.separator)||p.value;let S="";h.length===1?S=h[0][e.valueField]:S=h.map(B=>B[e.valueField]).join(e.separator),p.value!==S&&(p.value=S,n.emit("update:modelValue",p.value),n.emit("change",h,p.value))}function b(){const h=C(p.value);d(h)}function g(){F.value||v.value}function f(h){var S;p.value="",(S=i.value)==null||S.activeRowById(""),n.emit("clear")}function x(h){var S,B;e.enableSearch&&e.enableHighlightSearch&&((S=i.value)==null||S.search(h)),(B=i.value)==null||B.activeRowById(h),n.emit("change",[p.value],p.value)}function I(h){if(e.multiSelect){const S=y(h);e.viewType;const O=S.map(G=>G[e.idField||e.valueField]).join(e.separator);p.value!==O&&(p.value=O,n.emit("update:modelValue",p.value),n.emit("change",S,p.value))}else h!==p.value&&(p.value=h,n.emit("update:modelValue",p.value),n.emit("change",[],h))}function m(){return v.value}function P(h){const{value:S}=h.target;x(S),n.emit("input",S)}function R(){l.value.hidePopup()}function j(h){k.value=h}function H(){return k.value}const N={getDisplayText:m,hidePopup:R,updateDataSource:j,getData:H};return n.expose(N),t.watch([()=>e.disabled,()=>e.editable,()=>e.enableClear,()=>e.enableSearch,()=>e.readonly],([h,S,B,O,G])=>{c.value=h,w.value=S,r.value=B,u.value=O,F.value=G}),()=>t.createVNode(ue,{ref:l,id:e.id,disable:c.value,readonly:F.value,forcePlaceholder:e.forcePlaceholder,editable:w.value,buttonContent:V.value,placeholder:e.placeholder==="请选择"?Y.LocaleService.getLocaleValue("comboList.placeholder"):e.placeholder,enableClear:r.value,maxLength:e.maxLength,tabIndex:e.tabIndex,enableTitle:e.enableTitle,multiSelect:e.multiSelect,inputType:e.multiSelect?e.viewType:"text",modelValue:v.value,"onUpdate:modelValue":h=>v.value=h,focusOnCreated:e.focusOnCreated,selectOnCreated:e.selectOnCreated,onClear:f,onClick:g,onChange:I,onBlur:b,onInput:P,beforeOpen:T,placement:e.placement,popupMinWidth:e.minPanelWidth,popupClass:"f-combo-list-wrapper",popupOnClick:e.popupOnClick,limitContentBySpace:!0},{default:()=>[t.createVNode(Ae,{ref:i,idField:e.idField,valueField:e.valueField,textField:e.textField,titleField:e.titleField,dataSource:k.value,selectedValues:p.value,separator:e.separator,multiSelect:e.multiSelect,enableSearch:u.value,maxHeight:e.maxHeight,enableHighlightSearch:e.enableHighlightSearch,width:e.fitEditor?s.value:void 0,onSelectionChange:h=>{d(h),o()}},null)]})}}),se={convertFrom:(e,n)=>(e.editor.remote||{})[n],convertTo:(e,n,i)=>{e.editor.remote=e.editor.remote||{},e.editor.remote[n]=i}};class He extends he.InputBaseProperty{constructor(n,i){super(n,i)}getCommonEditorProperties(n){var i,l,c;return{viewType:{visible:!!((i=n.editor)!=null&&i.multiSelect),description:"数据展示类型,有标签和文本两种方式",title:"数据展示类型",type:"enum",editor:{data:[{id:"tag",name:"标签"},{id:"text",name:"文本"}]},refreshPanelAfterChanged:!0},separator:{visible:!!((l=n.editor)!=null&&l.multiSelect)&&((c=n.editor)==null?void 0:c.viewType)==="text",description:"下拉列表启用多选且数据展示类型为文本时的分隔符",title:"分隔符",type:"enum",editor:{data:[{id:",",name:"逗号(,)"},{id:"#",name:"井号(#)"},{id:".",name:"句号(.)"},{id:"|",name:"竖线(|)"}]}},editable:{description:"",title:"允许编辑",type:"boolean",refreshPanelAfterChanged:!0,readonly:!0}}}getEditorProperties(n){var k,v,w,p,y,C,T,V,a,s,o,d;const i=this;let l="";if(((k=n==null?void 0:n.binding)==null?void 0:k.type)==="Form"){const b=this.schemaService.getFieldByIDAndVMID(n.binding.field,this.viewModelId);(v=b==null?void 0:b.schemaField)!=null&&v.type&&(l=b.schemaField.type.$type)}const c=this.getPropertyEditorParams(n,["Variable"]),r=!n.editor.dataSourceType||n.editor.dataSourceType==="static",u=((p=(w=this.designViewModelField)==null?void 0:w.type)==null?void 0:p.$type)===A.FormSchemaEntityFieldType$Type.StringType&&((y=n.editor)==null?void 0:y.type)==="combo-list"&&((C=n.editor)==null?void 0:C.dataSourceType)==="dynamic"&&!((V=(T=n.editor)==null?void 0:T.remote)!=null&&V.url)&&!((a=n.editor)!=null&&a.multiSelect);return i.getComponentConfig(n,{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},dataSource:{description:"动态数据源绑定变量",visible:u,title:"数据",editor:{...c,controlName:"",enableClear:!0},refreshPanelAfterChanged:!0},data:{description:"",title:"数据",type:"array",visible:r,...i.getItemCollectionEditor(n,n.editor.valueField,n.editor.textField),refreshPanelAfterChanged:!0},url:{visible:n.editor.dataSourceType==="dynamic"&&!((s=n.editor)!=null&&s.dataSource),$converter:se,description:"",title:"服务端API",type:"string",refreshPanelAfterChanged:!0},body:{visible:!1,$converter:se,description:"",title:"服务端API参数",type:"string"},textField:{description:"",title:"数据源显示字段",type:"string",readonly:n.editor.dataSourceType!=="dynamic"},valueField:{description:"",title:"数据源值字段",type:"string",readonly:n.editor.dataSourceType!=="dynamic"},multiSelect:{description:"",title:"启用多选",visible:!l||l==="StringType",readonly:((o=n.editor)==null?void 0:o.dataSourceType)==="dynamic"&&!!((d=n.editor)!=null&&d.dataSource),type:"boolean",refreshPanelAfterChanged:!0},maxLength:{description:"",title:"最大输入长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1,needValid:!0}},...this.getCommonEditorProperties(n)},(b,g)=>{if(!b||!g.editor)return;const f=this;switch(b.propertyID){case"dataSourceType":{b.propertyValue==="static"?(g.editor.valueField="value",g.editor.textField="name",g.editor.remote=null):b.propertyValue==="dynamic"&&(g.editor.remote={method:"GET"},g.editor.valueField="value",g.editor.textField="name");break}case"data":{!f.checkEnumDataReadonly(g)&&g.formatter&&(g.formatter.data=[...b.propertyValue]);break}case"viewType":{b.propertyValue==="tag"&&(g.editor.editable=!1);break}case"dataSource":f.afterMutilEditorChanged(g,b)}})}getGridFieldEdtiorProperties(n,i){var k,v,w,p,y,C,T,V,a,s,o,d,b;const l=this;let c="";if(((k=n==null?void 0:n.binding)==null?void 0:k.type)==="Form"){const g=this.schemaService.getFieldByIDAndVMID(n.binding.field,this.viewModelId);(v=g==null?void 0:g.schemaField)!=null&&v.type&&(c=g.schemaField.type.$type)}const r=((p=(w=this.designViewModelField)==null?void 0:w.type)==null?void 0:p.$type)===A.FormSchemaEntityFieldType$Type.StringType&&((y=n.editor)==null?void 0:y.type)==="combo-list"&&((C=n.editor)==null?void 0:C.dataSourceType)==="dynamic"&&!((T=n.editor)!=null&&T.multiSelect),u=this.getPropertyEditorParams(n,["Variable"]);return l.getComponentConfig(n,{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},dataSource:{description:"动态数据源绑定变量",visible:r,title:"数据",editor:{...u,controlName:"",enableClear:!0},refreshPanelAfterChanged:!0},data:{description:"",title:"数据",type:"array",visible:!((V=n.editor)!=null&&V.dataSourceType)||((a=n.editor)==null?void 0:a.dataSourceType)==="static",...l.getItemCollectionEditor(n,(s=n.editor)==null?void 0:s.valueField,(o=n.editor)==null?void 0:o.textField),refreshPanelAfterChanged:!0},textField:{description:"",title:"数据源显示字段",type:"string",readonly:!0},valueField:{description:"",title:"数据源值字段",type:"string",readonly:!0},multiSelect:{description:"",title:"启用多选",visible:c==="StringType",readonly:((d=n.editor)==null?void 0:d.dataSourceType)==="dynamic"&&!!((b=n.editor)!=null&&b.dataSource),type:"boolean",refreshPanelAfterChanged:!0},maxLength:{description:"",title:"最大输入长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1,needValid:!0}},...this.getCommonEditorProperties(n)},(g,f)=>{if(!g||!f.editor)return;const x=this;switch(g.propertyID){case"dataSourceType":{g.propertyValue==="static"?(f.editor.valueField="value",f.editor.textField="name",f.editor.remote=null):g.propertyValue==="dynamic"&&(f.editor.remote={method:"GET"},f.editor.valueField="value",f.editor.textField="name");break}case"data":{!x.checkEnumDataReadonly(f)&&f.formatter&&(f.formatter.data=[...g.propertyValue]);break}case"dataSource":x.afterMutilEditorChanged(f,g)}})}setEditorPropertyRelates(n,i,l){if(!n||!i.editor)return;const c=this;switch(n.propertyID){case"dataSourceType":{n.propertyValue==="static"&&(i.editor.valueField="value",i.editor.textField="name",i.editor.remote={});break}case"data":{!c.checkEnumDataReadonly(i)&&i.formatter&&(i.formatter.data=[...n.propertyValue]);break}}}changeBindingField(n,i,l){var r;super.changeBindingField(n,i);const c=l;n.editor&&((r=c==null?void 0:c.type)==null?void 0:r.$type)===A.FormSchemaEntityFieldType$Type.EnumType&&(n.editor.data=c.type.enumValues||[])}getEventPropertyConfig(n,i="card",l,c){const r=this;let u=[{label:"onChange",name:"值变化事件"},{label:"beforeOpen",name:"下拉面板前事件"}];l&&(u=u.concat(l)),this.appendFieldValueChangeEvents(n,u);const F=r.eventsEditorUtils.formProperties(n,r.viewModelId,u);return{title:"事件",hideTitle:!0,properties:r.createBaseEventProperty(F),tabId:"commands",tabName:"交互",setPropertyRelates(w,p){const y=w.propertyValue;delete n[r.viewModelId],y&&(y.setPropertyRelates=this.setPropertyRelates,r.eventsEditorUtils.saveRelatedParameters(n,r.viewModelId,y.events,y)),c&&c(w,p,y);const C=r.designViewModelUtils.getDgViewModel(r.viewModelId);C&&r.designViewModelField&&C.changeField(r.designViewModelField.id,{valueChanging:n.fieldValueChanging,valueChanged:n.fieldValueChanged}),n.editor.beforeOpen!==n.beforeOpen&&(n.editor.beforeOpen=n.beforeOpen),n.editor.onChange!==n.onChange&&(n.editor.onChange=n.onChange),n.editor.onClear!==n.onClear&&(n.editor.onClear=n.onClear)}}}}function qe(e,n){const i=e.schema;function l(c,r){return new He(c,n).getPropertyConfig(i,r)}return{getPropsConfig:l}}const Ge=t.defineComponent({name:"FComboListDesign",props:Le,emits:["clear","update:modelValue","change"],setup(e,n){const i=t.ref(),l=t.inject("designer-host-service"),c=t.inject("design-item-context"),r=qe(c,l),u=ee.useDesignerComponent(i,c,r);return t.onMounted(()=>{i.value.componentInstance=u}),n.expose(u.value),()=>t.createVNode(ge,{ref:i,buttonContent:e.dropDownIcon,readonly:!0,editable:!1,forcePlaceholder:!0,placeholder:e.placeholder,enableClear:!0},null)}});W.register=(e,n,i,l,c)=>{e["combo-list"]=W,n["combo-list"]=de(c),l["combo-list"]={callbackResolver:je}},W.registerDesigner=(e,n,i,l)=>{e["combo-list"]=Ge,n["combo-list"]=de(l)};const D=A.withInstall(W),K=t.defineComponent({name:"FOrder",props:z,emits:["change"],setup(e,n){const i=t.ref(),l=t.ref(e.items);function c(){var d;const o=Array.isArray(e.items)?e.items:[];l.value=[...o],(d=i.value)==null||d.updateDataSource(l.value)}t.watch(()=>e.items,c);const r=t.ref("排序列"),u=t.ref("排序方式"),F=t.ref("添加排序列"),k=[{id:"asc",name:"升序"},{id:"desc",name:"降序"}],v=t.ref(new Map);function w(){const o=l.value.map(d=>[d.id,!0]);v.value=new Map(o)}w();const p=t.computed(()=>e.dataSource.map(o=>(o.disabled=v.value.has(o.id),o))),y=t.computed(()=>({"f-order":!0}));function C(o){l.value=l.value.filter(d=>d.id!==o.id),w(),n.emit("change",l.value)}function T(){l.value=[...l.value,{id:Date.now().toString(),name:"",order:"asc"}],w(),n.emit("change",l.value)}function V(o){if(o&&o.length===1){const d=o[0],b=l.value.find(g=>g.id===d.id);b&&(b.name=d.name)}w(),n.emit("change",l.value)}function a(o){if(o&&o.length){const d=new Map;o.reduce((b,g)=>(b.set(g.id,g),b),d),l.value=o.map(b=>d.get(b.id)),n.emit("change",l.value)}}function s(){return t.createVNode(ie,{ref:i,style:"flex:1",data:l.value,draggable:!0,view:"DraggableView","keep-order":!0,itemClass:"f-order-item",onRemoveItem:C,onChange:a},{header:()=>t.createVNode("div",{class:"f-order-header"},[t.createVNode("span",{class:"f-order-header-order-field"},[r.value]),t.createVNode("span",{class:"f-order-header-order-type"},[u.value])]),itemContent:o=>t.createVNode("div",{class:"f-order-item-content"},[t.createVNode(D,{class:"f-order-item-content-order-field",data:p.value,valueField:"id",textField:"name",idField:"id",modelValue:o.raw.id,"onUpdate:modelValue":d=>o.raw.id=d,onChange:V,onClear:V},null),t.createVNode(D,{class:"f-order-item-content-order-type",data:k,valueField:"id",textField:"name",idField:"id",modelValue:o.raw.order,"onUpdate:modelValue":d=>o.raw.order=d,onChange:V},null)]),footer:()=>t.createVNode("div",{class:"f-order-footer"},[t.createVNode(le,{type:"link",class:"f-order-add-button",onClick:T},{default:()=>t.createVNode(t.Fragment,null,[t.createVNode("span",{class:"f-order-add-icon"},[t.createVNode("i",{class:"f-icon f-icon-add"},null)]),F.value])})])})}return()=>t.createVNode("div",{class:y.value},[s()])}}),_e=t.defineComponent({name:"FOrderDesign",props:z,emits:["change"],setup(e,n){const i=t.ref(e.items),l=t.ref("排序列"),c=t.ref("排序方式"),r=t.ref("添加排序列"),u=[{id:"asc",name:"升序"},{id:"desc",name:"降序"}],F=t.ref(new Map),k=t.ref(),v=t.inject("design-item-context"),w=ee.useDesignerComponent(k,v);t.onMounted(()=>{k.value.componentInstance=w}),n.expose(w.value);function p(){const d=i.value.map(b=>[b.id,!0]);F.value=new Map(d)}p();const y=t.computed(()=>e.dataSource.map(d=>(d.disabled=F.value.has(d.id),d))),C=t.computed(()=>({"f-order":!0}));function T(d){i.value=i.value.filter(b=>b.id!==d.id),p(),n.emit("change",i.value)}function V(){i.value=[...i.value,{id:Date.now().toString(),name:"",order:"asc"}],p(),n.emit("change",i.value)}function a(d){p(),n.emit("change",i.value)}function s(d){if(d&&d.length){const b=new Map;d.reduce((g,f)=>(g.set(f.id,f),g),b),i.value=d.map(g=>b.get(g.id)),n.emit("change",i.value)}}function o(){return t.createVNode(ie,{style:"flex:1",data:i.value,draggable:!0,view:"DraggableView","keep-order":!0,itemClass:"f-order-item",onRemoveItem:T,onChange:s},{header:()=>t.createVNode("div",{class:"f-order-header"},[t.createVNode("span",{class:"f-order-header-order-field"},[l.value]),t.createVNode("span",{class:"f-order-header-order-type"},[c.value])]),itemContent:d=>t.createVNode("div",{class:"f-order-item-content"},[t.createVNode(D,{class:"f-order-item-content-order-field",data:y.value,valueField:"id",textField:"name",idField:"id",modelValue:d.id,"onUpdate:modelValue":b=>d.id=b,onChange:a,onClear:a},null),t.createVNode(D,{class:"f-order-item-content-order-type",data:u,valueField:"id",textField:"name",idField:"id",modelValue:d.order,"onUpdate:modelValue":b=>d.order=b,onChange:a},null)]),footer:()=>t.createVNode("div",{class:"f-order-footer"},[t.createVNode(le,{type:"link",class:"f-order-add-button",onClick:V},{default:()=>t.createVNode(t.Fragment,null,[t.createVNode("span",{class:"f-order-add-icon"},[t.createVNode("i",{class:"f-icon f-icon-add"},null)]),r.value])})])})}return()=>t.createVNode("div",{ref:k,class:C.value},[o()])}}),ze={install(e){e.component(K.name,K)},register(e,n,i,l){e.order=K,n.order=Q},registerDesigner(e,n,i){e.order=_e,n.order=Q}};L.FOrder=K,L.default=ze,L.orderProps=z,L.propsResolver=Q,Object.defineProperties(L,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});