@farris/ui-vue
Version:
Farris Vue, a Farris Design based Vue3 component library.
1 lines • 87.8 kB
JavaScript
(function(j,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("vue"),require("lodash-es"),require("../query-solution/index.umd.js/src/composition/types"),require("../drawer/index.umd.js"),require("../condition/index.umd.js"),require("../dynamic-form/index.umd.js"),require("../property-panel/index.umd.js"),require("../lookup/index.umd.js"),require("../field-selector/index.umd.js"),require("../transfer/index.umd.js/src/transfer.component"),require("../dynamic-resolver/index.umd.js"),require("../tags/index.umd.js"),require("../popover/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es","../query-solution/index.umd.js/src/composition/types","../drawer/index.umd.js","../condition/index.umd.js","../dynamic-form/index.umd.js","../property-panel/index.umd.js","../lookup/index.umd.js","../field-selector/index.umd.js","../transfer/index.umd.js/src/transfer.component","../dynamic-resolver/index.umd.js","../tags/index.umd.js","../popover/index.umd.js"],t):(j=typeof globalThis<"u"?globalThis:j||self,t(j["filter-bar"]={},j.Vue,j.LodashES,j.types,j.drawer,j.condition,j.dynamicForm,j.propertyPanel,j.lookup$1,j.fieldSelector,j.FTransfer,j.dynamicResolver,j.FTags,j.FPopover))})(this,function(j,t,L,P,Fe,Ve,ke,Me,Be,K,Se,Ne,Ee,Pe){"use strict";var yn=Object.defineProperty;var hn=(j,t,L)=>t in j?yn(j,t,{enumerable:!0,configurable:!0,writable:!0,value:L}):j[t]=L;var x=(j,t,L)=>hn(j,typeof t!="symbol"?t+"":t,L);const re={},se={};function ee(n){const{properties:e,title:l,ignore:a}=n,s=a&&Array.isArray(a),p=Object.keys(e).reduce((f,c)=>((!s||!a.find(u=>u===c))&&(f[c]=e[c].type==="object"&&e[c].properties?ee(e[c]):L.cloneDeep(e[c].default)),f),{});if(l&&(!s||!a.find(f=>f==="id"))){const f=l.toLowerCase().replace(/-/g,"_");p.id=`${f}_${Math.random().toString().slice(2,6)}`}return p}function Re(n){const{properties:e,title:l,required:a}=n;if(a&&Array.isArray(a)){const s=a.reduce((p,f)=>(p[f]=e[f].type==="object"&&e[f].properties?ee(e[f]):L.cloneDeep(e[f].default),p),{});if(l&&a.find(p=>p==="id")){const p=l.toLowerCase().replace(/-/g,"_");s.id=`${p}_${Math.random().toString().slice(2,6)}`}return s}return{type:l}}function ue(n,e={},l){const a=re[n];if(a){let s=Re(a);const p=se[n];return s=p?p({getSchemaByType:ue},s,e,l):s,s}return null}function Oe(n,e){const l=ee(e);return Object.keys(l).reduce((a,s)=>(Object.prototype.hasOwnProperty.call(n,s)&&(a[s]&&L.isPlainObject(a[s])&&L.isPlainObject(n[s]||!n[s])?Object.assign(a[s],n[s]||{}):a[s]=n[s]),a),l),l}function ce(n,e){return Object.keys(n).filter(a=>n[a]!=null).reduce((a,s)=>{if(e.has(s)){const p=e.get(s);if(typeof p=="string")a[p]=n[s];else{const f=p(s,n[s],n);Object.assign(a,f)}}else a[s]=n[s];return a},{})}function $e(n,e,l=new Map){const a=Oe(n,e);return ce(a,l)}function je(n={}){function e(i,y,o,r){if(typeof o=="number")return r[i].length===o;if(typeof o=="object"){const d=Object.keys(o)[0],m=o[d];if(d==="not")return Number(r[i].length)!==Number(m);if(d==="moreThan")return Number(r[i].length)>=Number(m);if(d==="lessThan")return Number(r[i].length)<=Number(m)}return!1}function l(i,y,o,r){return r[i]&&r[i].propertyValue&&String(r[i].propertyValue.value)===String(o)}const a=new Map([["length",e],["getProperty",l]]);Object.keys(n).reduce((i,y)=>(i.set(y,n[y]),i),a);function s(i,y){const o=i;return typeof y=="number"?[{target:o,operator:"length",param:null,value:Number(y)}]:typeof y=="boolean"?[{target:o,operator:"getProperty",param:i,value:!!y}]:typeof y=="object"?Object.keys(y).map(r=>{if(r==="length")return{target:o,operator:"length",param:null,value:y[r]};const d=r,m=y[r];return{target:o,operator:"getProperty",param:d,value:m}}):[]}function p(i){return Object.keys(i).reduce((o,r)=>{const d=s(r,i[r]);return o.push(...d),o},[])}function f(i,y){if(a.has(i.operator)){const o=a.get(i.operator);return o&&o(i.target,i.param,i.value,y)||!1}return!1}function c(i,y){return p(i).reduce((d,m)=>d&&f(m,y),!0)}function u(i,y){const o=Object.keys(i),r=o.includes("allOf"),d=o.includes("anyOf"),m=r||d,V=(m?i[m?r?"allOf":"anyOf":"allOf"]:[i]).map(E=>c(E,y));return r?!V.includes(!1):V.includes(!0)}return{parseValueSchema:u}}const Ie={},Le={};je();function Y(n,e,l=new Map,a=(f,c,u,i)=>c,s={},p=f=>f){return re[e.title]=e,se[e.title]=a,Ie[e.title]=s,Le[e.title]=p,(f={},c=!0)=>{if(!c)return ce(f,l);const u=$e(f,e,l),i=Object.keys(n).reduce((y,o)=>(y[o]=n[o].default,y),{});return Object.assign(i,u)}}function te(n,e){return{customClass:e.class,customStyle:e.style}}const qe=new Map([["appearance",te]]);function Ae(n,e,l){return e}const ze={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/filter-bar.schema.json",title:"filter-bar",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for filter-bar",type:"string"},type:{description:"The type string of filter-bar",type:"string",default:"filter-bar"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disable:{type:"string",default:!1},editable:{description:"",type:"boolean",default:!0},placeholder:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},require:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},visible:{description:"",type:"boolean",default:!0}},required:["id","type"]},He={title:"filter-bar",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:[]}},controlSource:{description:"筛选方式",title:"筛选方式",type:"select",editor:{type:"combo-list",data:[{value:"normal",name:"常规筛选"},{value:"light",name:"轻量筛选"}],valueField:"value",textField:"name",idField:"value"}}}},appearance:{description:"",title:"外观",properties:{showReminder:{description:"启用提示",type:"boolean",title:"启用提示",visible:{anyOf:[{controlSource:{equal:"light"}}]}},showExtendInSidebar:{description:"启用侧边栏收折",type:"boolean",title:"启用侧边栏收折",visible:{anyOf:[{controlSource:{equal:"light"}}]}},clearSelectedText:{description:"按钮“清空已选”的文本",type:"string",title:"按钮“清空已选”的文本",visible:{anyOf:[{controlSource:{equal:"light"}}]}},alLeft:{description:"表单左对齐",type:"boolean",title:"表单左对齐",visible:{anyOf:[{controlSource:{equal:"normal"}}]}},autoWidth:{description:"自动列宽",type:"boolean",title:"自动列宽",visible:{anyOf:[{controlSource:{equal:"normal"}}]}},filterClass:{description:"筛选样式",type:"string",title:"筛选样式",visible:{anyOf:[{controlSource:{equal:"normal"}}]}},autoLabel:{description:"自适应标签宽度",type:"string",title:"自适应标签宽度",visible:{anyOf:[{controlSource:{equal:"normal"}}]}}}},behavior:{description:"Basic Infomation",title:"行为",properties:{visible:{description:"是否可见",type:"boolean",title:"是否可见"},disable:{description:"是否禁用",type:"boolean",title:"是否禁用"},fields:{description:"筛选条字段设置",title:"筛选条字段",type:"",$converter:"",editor:{type:"filter-bar-config",source:"filter-bar"}},liveSearch:{description:"实时搜索",type:"boolean",title:"实时搜索",visible:{anyOf:[{controlSource:{equal:"normal"}}]}},defaultEmptyValueSearch:{description:"默认值为空时是否过滤数据",type:"boolean",title:"默认值为空时是否过滤数据"}}}}},Q={data:{type:Array,default:[{id:"name",fieldCode:"name",fieldName:"名称",compareType:"0",valueType:0,value:"示例1",relation:"1"}]},fields:{type:Array,default:[{id:"name",code:"name",labelCode:"name",name:"名称",editor:{type:"text"}}]},mode:{type:String,default:"editable"},resetText:{type:String,default:"清空"},showReset:{type:Boolean,default:!1}},ne=Y(Q,ze,qe,Ae,He);class De{constructor(e={value:[]}){x(this,"editorType","check-box");x(this,"value");x(this,"valueType","boolean");const a=(Array.isArray(e.value)?e.value:typeof e.value=="string"?e.value.split(","):[]).map(s=>JSON.parse(s));this.value=a}clear(){this.value=[]}setValue(e){this.value=e}getValue(){return this.value}getDisplayText(){return this.value.map(e=>e?"是":"否").join(",")}isEmpty(){return this.value.length===0}}class We{constructor(e={textValue:"",value:"",valueField:""}){x(this,"editorType","combo-lookup");x(this,"textValue");x(this,"value");x(this,"valueField");x(this,"valueType","text");this.textValue=e.textValue,this.value=e.value,this.valueField=e.valueField}clear(){this.value="",this.valueField="",this.textValue=""}getPropValue(e,l){if(l.length>1){const a=l.shift();return e[a]?this.getPropValue(e[a],l):null}return e[l[0]]}getTextValue(e){const l=e.split("."),a=this.value.split(",").map(s=>this.getPropValue(s,L.cloneDeep(l)));return a&&a.length?a.join(","):""}getValue(){const e=this.valueField.split("."),l=this.value.split(",").map(a=>this.getPropValue(a,L.cloneDeep(e)));return l&&l.length?l.join(","):""}getDisplayText(){return this.getValue()}setValue(e){throw new Error("Method not implemented.")}isEmpty(){return!this.valueField}}class Ue{constructor(e={value:"",displayFormat:"",valueFormat:""}){x(this,"editorType","date-picker");x(this,"value");x(this,"valueType","datetime");x(this,"displayFormat","");x(this,"valueFormat","");this.value=e.value,this.displayFormat=e.displayFormat,this.valueFormat=e.valueFormat}setValue(e){this.value=e.formatted}getValue(){return this.value}getDisplayText(){return this.getValue()}isEmpty(){return!this.value}clear(){this.value=void 0}}class de{constructor(e={begin:"",end:""}){x(this,"editorType","date-range");x(this,"begin","");x(this,"end","");x(this,"valueType","datetime");this.begin=e.begin,this.end=e.end}clear(){this.begin="",this.end=""}getValue(){return!this.begin||!this.end?"":`${this.begin}~${this.end}`}getDisplayText(){return this.getValue()}setValue(e){e.dataRange?(this.begin=e.dataRange.split(e.delimiter)[0],this.end=e.dataRange.split(e.delimiter)[1]):this.clear()}isEmpty(){return!this.begin||!this.end}}class Ge{constructor(e={value:""}){x(this,"editorType","datetime-picker");x(this,"value");x(this,"valueType","datetime");this.value=e.value}clear(){this.value=void 0}getValue(){return this.value}getDisplayText(){return this.getValue()}setValue(e){this.value=e.formatted}isEmpty(){return!this.value}}class _e{constructor(e={value:"",valueList:[]}){x(this,"editorType","combo-list");x(this,"value");x(this,"valueType","enum");x(this,"valueList",[]);this.value=e.value,this.valueList=e.valueList}clear(){this.value="",this.valueList=[]}getValue(){return this.value}getDisplayText(){var s,p;const e=typeof this.value;let l="",a=[];switch(e){case"string":a=this.value.split(",")||[],l=this.valueList.filter(f=>a.indexOf(f.value)>-1).map(f=>f.name).join(",");break;case"boolean":l=((s=this.valueList.find(f=>f.value===this.value))==null?void 0:s.name)||"";break;case"number":l=((p=this.valueList.find(f=>f.value===this.value))==null?void 0:p.name)||"";break}return l}setValue(e){this.value=e.value}isEmpty(){return!this.value&&this.value!==!1&&this.value!==0}}class Xe{constructor(e={value:"",displayText:"",displayField:"",isInputText:!1}){x(this,"editorType","input-group");x(this,"value");x(this,"valueType","text");x(this,"displayText");x(this,"valueField");x(this,"isInputText");this.value=e.value,this.displayText=e.displayText,this.valueField=e.displayField,this.isInputText=e.isInputText}clear(){this.value="",this.displayText="",this.valueField=""}getPropValue(e,l){if(l.length>1){const a=l.shift();return e[a]?this.getPropValue(e[a],l):""}return e[l[0]]}getTextValue(e){const l=e.split("."),a=this.value.map(s=>this.getPropValue(s,L.cloneDeep(l)));return a&&a.length?a.join(","):""}getValue(){return this.value}getDisplayText(){return this.getValue()}setValue(e){throw new Error("Method not implemented.")}isEmpty(){return!this.displayText&&!this.value.length}}class Ye{constructor(e={mapFields:[],value:"",valueField:"",isInputText:!1,helpId:""}){x(this,"editorType","lookup");x(this,"idValue");x(this,"helpId");x(this,"mapFields");x(this,"value");x(this,"valueField");x(this,"valueType","text");x(this,"isInputText");this.value=e.value,this.valueField=e.valueField,this.mapFields=e.mapFields,this.idValue=e.mapFields.map(l=>l.id).join(","),this.isInputText=e.isInputText,this.helpId=e.helpId}clear(){this.value="",this.idValue="",this.mapFields=[]}getValue(){return this.mapFields.map(e=>e[this.valueField||"id"]).join(",")}getDisplayText(){return this.getValue()}setValue(e){throw new Error("Method not implemented.")}isEmpty(){return!this.mapFields.length}}class Qe{constructor(e={value:""}){x(this,"editorType","month-picker");x(this,"value");x(this,"valueType","datetime");this.value=e.value}setValue(e){this.value=e.formatted}getValue(){return this.value}getDisplayText(){return this.getValue()}clear(){this.value=void 0}isEmpty(){return!this.value}}class Je{constructor(e={begin:"",end:""}){x(this,"editorType","month-range");x(this,"begin");x(this,"end");x(this,"valueType","datetime");this.begin=e.begin,this.end=e.end}clear(){this.begin="",this.end=""}getValue(){return!this.begin||!this.end?"":`${this.begin}~${this.end}`}getDisplayText(){return this.getValue()}setValue(e){e.dataRange?(this.begin=e.dataRange.split(e.delimiter)[0],this.end=e.dataRange.split(e.delimiter)[1]):this.clear()}isEmpty(){return!this.begin||!this.end}}class Ze{constructor(e={begin:null,end:null}){x(this,"editorType","number-range");x(this,"begin");x(this,"end");x(this,"valueType","number");this.begin=e.begin==null?null:parseFloat(e.begin),this.end=e.end==null?null:parseFloat(e.end)}clear(){this.begin=null,this.end=null}getValue(){return{begin:this.begin,end:this.end}}getDisplayText(){return this.getValue()}setValue(e){this.begin=e.begin==null?null:parseFloat(e.begin),this.end=e.end==null?null:parseFloat(e.end)}isEmpty(){return this.begin==null&&this.end==null}}class Ke{constructor(e={value:""}){x(this,"editorType","number-spinner");x(this,"value");x(this,"valueType","number");this.value=e.value==null?null:parseFloat(e.value)}clear(){this.value=null}getValue(){return this.value}getDisplayText(){return this.getValue()}setValue(e){this.value=isNaN(parseFloat(e))?null:e}isEmpty(){return this.value==null||isNaN(this.value)}}class et{constructor(e={value:null,valueList:[]}){x(this,"editorType","radio-group");x(this,"value");x(this,"valueType","enum");x(this,"valueList",[]);this.value=e.value,this.valueList=e.valueList}clear(){this.value=void 0,this.valueList=[]}getValue(){return this.value}getDisplayText(){var e;return((e=this.valueList.find(l=>l.value===this.value))==null?void 0:e.name)||""}setValue(e){this.value=e}isEmpty(){return!this.value&&this.value!==0&&this.value!==!1}}class tt{constructor(e={value:""}){x(this,"editorType","text");x(this,"value");x(this,"valueType","text");this.value=e.value}clear(){this.value=void 0}getValue(){return this.value}getDisplayText(){return this.getValue()}setValue(e){this.value=e}isEmpty(){return!this.value}}function nt(){function n(e,l){switch(e){case"check-box":return new De(l);case"combo-list":return new _e(l);case"combo-lookup":return new We(l);case"input-group":return new Xe(l);case"date-picker":return new Ue(l);case"date-range":return new de(l);case"datetime-picker":return new Ge(l);case"datetime-range":return new de(l);case"lookup":return new Ye(l);case"month-picker":return new Qe(l);case"month-range":return new Je(l);case"number-range":return new Ze(l);case"number-spinner":return new Ke(l);case"radio-group":return new et(l);default:return new tt(l)}}return{createConditionValue:n}}function lt(n,e){function l(o){const r=o.value,d=[];return d.push({FilterField:o.fieldCode,Compare:o.compareType||o.compareType===0?o.compareType:P.CompareType.Like,Value:r.value,Relation:o.relation||o.relation===0?o.relation:P.RelationType.And,Expresstype:P.ValueType.Value,Lbracket:o.Lbracket||null,Rbracket:o.Rbracket||null}),d}function a(o){const r=o.value.getValue();return[{FilterField:o.fieldCode,Compare:o.compareType||o.compareType===0?o.compareType:P.CompareType.Equal,Value:r,Relation:o.relation||o.relation===0?o.relation:P.RelationType.And,Expresstype:P.ValueType.Value,Lbracket:o.Lbracket||null,Rbracket:o.Rbracket||null}]}function s(o){const r=[],d=o.value.getValue();return d.begin!=null&&r.push({FilterField:o.fieldCode,Compare:P.CompareType.GreaterOrEqual,Value:d.begin,Relation:P.RelationType.And,Expresstype:P.ValueType.Value}),d.end!=null&&r.push({FilterField:o.fieldCode,Compare:P.CompareType.LessOrEqual,Value:d.end,Relation:P.RelationType.And,Expresstype:P.ValueType.Value}),r}function p(o){const r=[],d=o.value.getValue();return d===""?[]:(d.split(",").forEach(m=>{m&&r.push({FilterField:o.fieldCode,Compare:o.compareType||o.compareType===0?o.compareType:P.CompareType.Equal,Value:m,Relation:o.compareType===P.CompareType.NotEqual?P.RelationType.And:P.RelationType.Or,Expresstype:P.ValueType.Value})}),r.length>0?(r[0].Lbracket=o.Lbracket?o.Lbracket+"(":"(",r[r.length-1].Rbracket=o.Rbracket?o.Rbracket+")":")",r[r.length-1].Relation=o.relation||o.relation===0?o.relation:P.RelationType.And,r):[])}function f(o){const r=[],d=o.value.getValue();return r.push({FilterField:o.fieldCode,Compare:o.compareType||o.compareType===0?o.compareType:P.CompareType.Equal,Value:d,Relation:o.relation||o.relation===0?o.relation:P.RelationType.And,Expresstype:P.ValueType.Value,Lbracket:o.Lbracket||null,Rbracket:o.Rbracket||null}),r}function c(o,r){const d=[],m=o.value.getValue();return r.editor.enumValueType==="string"?(m.split(",").forEach(g=>{d.push({FilterField:o.fieldCode,Compare:o.compareType||o.compareType===0?o.compareType:P.CompareType.Equal,Value:g,Relation:o.compareType===P.CompareType.NotEqual?P.RelationType.And:P.RelationType.Or,Expresstype:P.ValueType.Value})}),d[0].Lbracket=o.Lbracket?o.Lbracket+"(":"(",d[d.length-1].Rbracket=o.Rbracket?o.Rbracket+")":")",d[d.length-1].Relation=o.relation||o.relation===0?o.relation:P.RelationType.And):(r.editor.enumValueType==="int"||r.editor.enumValueType==="boolean")&&d.push({FilterField:o.fieldCode,Compare:o.compareType||o.compareType===0?o.compareType:P.CompareType.Equal,Value:m,Relation:P.RelationType.And,Expresstype:P.ValueType.Value}),d}function u(o){const r=o.value.getValue();return[{FilterField:o.fieldCode,Compare:o.compareType||o.compareType===0?o.compareType:P.CompareType.Equal,Value:r,Relation:o.relation||o.relation===0?o.relation:P.RelationType.And,Expresstype:P.ValueType.Value,Lbracket:o.Lbracket||null,Rbracket:o.Rbracket||null}]}function i(o,r){let d=[];switch(o.value.editorType){case"input-group":d=l(o);break;case"number-spinner":d=a(o);break;case"number-range":d=s(o);break;case"lookup":d=p(o);break;case"date-picker":d=f(o);break;case"combo-list":d=c(o,r);break;case"radio-group":d=u(o);break;default:d=[]}return d}function y(o,r){const d=[];return o.forEach(m=>{if(!m.value.isEmpty()){const g=r.find(V=>V.id===m.id),F=i(m,g);d.push(...F)}}),d}return{getFilterConditions:y}}function pe(n,e){const l=t.ref([]),a=t.ref([]),s=t.ref([]),p=t.ref(""),f=t.ref(!1),c=t.ref(n.mode),u=new Map,i=nt(),y=lt(),{getFilterConditions:o}=y;function r(v){return!f.value&&c.value==="display-only"&&!v.value.isEmpty()&&!!v.value.getDisplayText()}function d(v){const h={id:v.id,fieldCode:v.labelCode,fieldName:v.name,required:v.editor.required,editor:v.editor,value:i.createConditionValue(v.controlType||"text")};return v.controlType==="lookup"&&(h.value.valueField=v.editor.valueField),h}function m(v){a.value=n.fields.map(h=>{const T=L.cloneDeep(h);return T.editor.type||(T.editor.type=h.controlType),(T.editor.type==="number-spinner"||T.editor.type==="number-range")&&(T.editor.showZero=!0,T.editor.nullable=!0),T.editor.type==="combo-list"&&(T.editor.enableClear=!0),T}),a.value.reduce((h,T)=>h,u)}function g(v){s.value=a.value.map(h=>d(h))}function F(v,h){m(n.fields),g(n.data)}function V(v){s.value=s.value.filter(h=>h.id!==v.id),l.value=l.value.filter(h=>h.fieldCode!==v.fieldCode),a.value=a.value.filter(h=>h.id!==v.id),e.emit("remove",v.fieldCode)}function S(v){v.value.clear(),l.value=l.value.filter(h=>h.fieldCode!==v.fieldCode),e.emit("clear",v.fieldCode)}function E(){s.value.forEach(v=>v.value.clear())}function b(){s.value.forEach(v=>{v.value.clear()}),e.emit("reset")}F(n.fields,n.data);function B(){var T;const v=(T=s.value)==null?void 0:T.filter(N=>{var w;return!((w=N.value)!=null&&w.isEmpty())});return o(v,a.value)}return{clearAll:E,clearFilterItem:S,currentFilterId:p,filterFields:a,filterItems:s,loadFilterItems:F,removeFilterItem:V,reset:b,shouldShowClearButtonInFilterItem:r,handleQuery:B}}function fe(n,e){function l(){}return()=>t.createVNode("div",{class:"f-filter-list-ellipsis",onClick:a=>void 0},[t.createTextVNode("...")])}function at(n,e,l,a,s){const{filterFields:p,handleQuery:f}=s,c=t.ref(L.cloneDeep(a.value));function u(){l.value=!1,c.value=L.cloneDeep(a.value)}function i(){l.value=!1,a.value.forEach(r=>{const d=c.value.find(m=>m.id===r.id);d!=null&&d.value&&(r.value=d.value)});const o=f();e.emit("conditionChange",o)}function y(){return t.createVNode("div",null,[t.createVNode("div",null,[t.createTextVNode("更多筛选")]),t.createVNode(Ve.FConditionFields,{fields:p.value,conditions:c.value},null),t.createVNode("div",null,[t.createVNode("button",{class:"btn btn-secondary",onClick:u},[t.createTextVNode("取消")]),t.createVNode("button",{class:"btn btn-primary",onClick:i},[t.createTextVNode("确定")])])])}return()=>t.createVNode(Fe.FDrawer,{modelValue:l.value,"onUpdate:modelValue":o=>l.value=o,showClose:!1,width:480,closeByMask:!1},{content:y})}function me(n,e,l){const a=t.ref([]),s=t.ref(!0),p=t.ref("更多"),f=t.ref(n.resetText),c=t.ref(n.showReset),u=t.ref(!1),{clearAll:i,reset:y,filterItems:o,filterFields:r}=l;function d(){a.value=o.value.filter(E=>E.editor.isExtend)}d();const m=t.computed(()=>s.value&&a.value&&a.value.length>0),g=t.computed(()=>c.value);function F(E){u.value=!0}function V(E){n.mode==="display-only"?i():y()}const S=at(n,e,u,a,l);return()=>t.createVNode("div",{class:"f-filter-toolbars"},[m.value&&t.createVNode("button",{class:"btn btn-link",onClick:E=>F()},[p.value]),g.value&&t.createVNode("button",{class:"btn btn-link",onClick:E=>V()},[f.value]),S()])}const ot={filterItem:{type:Object,default:null},position:{type:Object,default:null}},it=t.defineComponent({name:"FFilterBarItem",props:ot,emits:["cancel","confirm"],setup(n,e){const l=t.ref(L.cloneDeep(n.filterItem)),a=t.ref(n.position),s={left:a.value.left+"px",top:a.value.top+a.value.height+"px"};function p(i,y,o){i.value.editorType==="combo-list"&&o.newValue?i.value.valueList=o.newValue.map(r=>({name:r[i.editor.textField||"name"],value:r[i.editor.valueField||"value"]})):i.value.editorType==="radio-group"&&(i.value.valueList=[i.editor.data.find(r=>r.value===y)])}function f(){var o,r;const{editor:i}=l.value,y=l.value;return((o=y.value)==null?void 0:o.editorType)==="lookup"&&i?(i.idValue=y.value.idValue,i.onClear=()=>{y.value.idValue="",y.value.mapFields=[]},i["onUpdate:dataMapping"]=d=>{y.value.mapFields=d.items}):((r=y.value)==null?void 0:r.editorType)==="number-range"&&i&&(i.beginValue=y.value.begin,i.onBeginValueChange=d=>{y.value.begin=d},i.endValue=y.value.end,i.onEndValueChange=d=>{y.value.end=d}),t.createVNode(ke.FDynamicFormGroup,{label:l.value.fieldName,editor:i,required:i==null?void 0:i.required,modelValue:y.value.value,"onUpdate:modelValue":d=>y.value.value=d,onChange:(d,m)=>p(y,d,m)},null)}function c(i){e.emit("cancel")}function u(i){i.stopPropagation(),e.emit("confirm",l.value)}return()=>t.createVNode("div",{class:"f-filter-panel-wrapper can-close",onClick:c},[t.createVNode("div",{class:"f-filter-panel",style:s},[t.createVNode("div",{class:"f-filter-panel-inner",onClick:i=>i.stopPropagation()},[t.createVNode("div",{class:"f-filter-panel-arrow",style:{left:26,right:"auto"}},null),f(),t.createVNode("div",null,[t.createVNode("button",{class:"btn btn-secondary can-close",onClick:c},[t.createTextVNode("取消")]),t.createVNode("button",{class:"btn btn-primary",onClick:u},[t.createTextVNode("确定")])])])])])}}),rt={filterItem:{type:Object,default:null},useFilterItemsComposition:{type:Object,default:null},disabled:{type:Boolean,default:!1}},ye=t.defineComponent({name:"FFilterBarItem",props:rt,emits:["confirm"],setup(n,e){const l=t.ref(n.filterItem),{clearFilterItem:a,currentFilterId:s,removeFilterItem:p,shouldShowClearButtonInFilterItem:f}=n.useFilterItemsComposition,c=t.ref(n.disabled),u=t.ref(null),i=t.ref(!1),y=function(){return{"f-filter-item":!0,"f-filter-item-actived":!l.value.value.isEmpty(),"f-filter-item-edit":l.value.id===s.value}};t.computed(()=>!c.value&&n.mode==="editable");function o(g){n.mode==="display-only"?p(l.value):a(l.value)}function r(g){var F;u.value=(F=g.currentTarget)==null?void 0:F.getBoundingClientRect(),i.value=!0}function d(){i.value=!1}function m(g){i.value=!1,l.value.value=g.value,e.emit("confirm",g)}return()=>t.createVNode("div",{key:l.value.id,id:l.value.id,class:y()},[t.createVNode("div",{class:"f-filter-item-inner",onClick:g=>r(g)},[l.value.editor.required&&t.createVNode("span",{class:"f-filter-item-required text-danger"},[t.createTextVNode("*")]),t.createVNode("span",{class:"f-filter-item-text"},[l.value.fieldName]),l.value.value.getDisplayText()&&t.createVNode(t.Fragment,null,[t.createVNode("span",{class:"f-filter-item-tip"},[t.createTextVNode(":")]),t.createVNode("span",{class:"f-filter-item-content"},[l.value.value.getDisplayText()])]),!c.value&&t.createVNode("span",{class:"f-filter-item-arrow f-icon f-icon-arrow-chevron-down"},null)]),f(l.value)&&t.createVNode("span",{class:"f-filter-item-clear",onClick:g=>o()},[t.createVNode("span",{class:"f-icon f-icon-close-circle"},null)]),i.value&&t.createVNode(it,{position:u.value,filterItem:l.value,onConfirm:m,onCancel:d},null)])}}),J=t.defineComponent({name:"FFilterBar",props:Q,emits:["clear","remove","reset","conditionChange","change"],setup(n,e){const l=t.ref(!1),a=t.ref(!1),s=t.ref(!1),p=t.ref(!1),f=pe(n,e),{filterFields:c,filterItems:u,loadFilterItems:i,handleQuery:y}=f,o=t.computed(()=>({display:c.value&&c.value.length?"":"none"}));t.watch([()=>n.data,()=>n.fields],([B,v])=>{i(v,B)});const r=t.computed(()=>a.value&&l.value),d=t.computed(()=>({"f-filter-list":!0,"f-filter-list-extend":r.value})),m=t.computed(()=>u.value.length>0);function g(B){e.emit("change",B);const v=y();e.emit("conditionChange",v)}function F(){return t.createVNode("div",{class:d.value},[u.value.map((B,v)=>!B.editor.isExtend&&t.createVNode(ye,{filterItem:B,useFilterItemsComposition:f,onConfirm:g},null))])}const V=t.computed(()=>s.value&&!a.value&&p.value),S=fe(),E=t.computed(()=>!a.value),b=me(n,e,f);return()=>t.createVNode("div",{class:"f-filter-wrapper",style:o.value},[t.createVNode("div",{class:"f-filter-wrapper-inner f-utils-fill"},[t.createVNode("div",{class:"f-filter-main f-utils-fill"},[t.createVNode("div",{class:"f-filter-list-wrapper d-flex"},[m.value&&F(),V.value&&S(),E.value&&b()])])])])}});function st(n,e,l){var v;const a="",s="",p=t.ref();function f(){return(e==null?void 0:e.schema.componentType)!=="frame"}function c(){return!1}function u(){return(e==null?void 0:e.schema.componentType)!=="frame"}function i(){return(e==null?void 0:e.schema.componentType)==="frame"}function y(h){if(!h||!h.value)return null;if(h.value.schema&&h.value.schema.type==="component")return h.value;const T=t.ref(h==null?void 0:h.value.parent),N=y(T);return N||null}function o(h=e){var O;const{componentInstance:T,designerItemElementRef:N}=h;if(!T||!T.value)return null;const{getCustomButtons:w}=T.value;return T.value.canMove||w&&((O=w())!=null&&O.length)?N:o(h.parent)}function r(h){return!!l}function d(){return(e==null?void 0:e.schema.label)||(e==null?void 0:e.schema.title)||(e==null?void 0:e.schema.name)}function m(){}function g(h,T){var N;!h||!T||(N=e==null?void 0:e.setupContext)==null||N.emit("dragEnd")}function F(h,T){const{componentType:N}=h;let w=ue(N,h,T);const O=N.toLowerCase().replace(/-/g,"_");return w&&!w.id&&w.type===N&&(w.id=`${O}_${Math.random().toString().slice(2,6)}`),w}function V(h){}function S(...h){}function E(){e!=null&&e.schema.contents&&e.schema.contents.map(h=>{let T=h.id;h.type==="component-ref"&&(T=h.component);const N=n.value.querySelectorAll(`#${T}-design-item`);N!=null&&N.length&&Array.from(N).map(w=>{var O;(O=w==null?void 0:w.componentInstance)!=null&&O.value.onRemoveComponent&&w.componentInstance.value.onRemoveComponent()})})}function b(){}function B(h){}return p.value={canMove:f(),canSelectParent:c(),canDelete:u(),canNested:!i(),contents:e==null?void 0:e.schema.contents,elementRef:n,parent:(v=e==null?void 0:e.parent)==null?void 0:v.componentInstance,schema:e==null?void 0:e.schema,styles:a,designerClass:s,canAccepts:r,getBelongedComponentInstance:y,getDraggableDesignItemElement:o,getDraggingDisplayText:d,getPropConfig:S,getDragScopeElement:m,onAcceptMovedChildElement:g,onChildElementMovedOut:V,addNewChildComponentSchema:F,triggerBelongedComponentToMoveWhenMoved:t.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:t.ref(!1),onRemoveComponent:E,getCustomButtons:b,onPropertyChanged:B},p}const ut=t.defineComponent({name:"FFilterBarDesign",props:Q,emits:["Clear","Remove","Reset"],setup(n,e){const l=t.ref(!1),a=t.ref(!1),s=t.ref(!1),p=t.ref(!1),f=pe(n,e),{filterFields:c,filterItems:u,loadFilterItems:i}=f,y=t.computed(()=>({display:c.value&&c.value.length?"":"none"})),o=t.ref(),r=t.inject("design-item-context"),d=st(o,r);t.onMounted(()=>{o.value.componentInstance=d}),e.expose(d.value),t.watch([()=>n.data,()=>n.fields],([v,h])=>{i(h,v)});const m=t.computed(()=>a.value&&l.value),g=t.computed(()=>({"f-filter-list":!0,"f-filter-list-extend":m.value})),F=t.computed(()=>u.value.length>0);function V(){return t.createVNode("div",{class:g.value},[u.value.map((v,h)=>t.createVNode(ye,{filterItem:v,useFilterItemsComposition:f},null))])}const S=t.computed(()=>s.value&&!a.value&&p.value),E=fe(),b=t.computed(()=>!a.value),B=me(n,e,f);return()=>t.createVNode("div",{ref:o,class:"f-filter-wrapper",style:y.value},[t.createVNode("div",{class:"f-filter-wrapper-inner f-utils-fill"},[t.createVNode("div",{class:"f-filter-main f-utils-fill"},[t.createVNode("div",{class:"f-filter-list-wrapper"},[F.value&&V(),S.value&&E(),b.value&&B()])])])])}}),ct={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/query-solution-config.schema.json",title:"query-solution-config",description:"A Farris Container Component",properties:{fieldsConfig:{description:"所有字段(树结构)",type:"array"},flatAllFields:{description:"所有字段(扁平化)",type:"array"},designViewModelUtils:{description:"",type:"object"},formSchemaUtils:{description:"",type:"object"},metadataService:{description:"",type:"object"},viewModelId:{description:"",type:"array"},eventsEditorUtils:{description:"",type:"object"}}},dt=new Map([["appearance",te]]);function pt(n,e,l){return e}const he={fieldsConfig:{type:Array,default:[]},flatAllFields:{type:Array,default:[]},modelValue:{type:Array,default:[]},source:{type:String,default:"query-solution"},onFieldsChanged:{type:Function,default:null},formSchemaUtils:{type:Object,default:{}},metadataService:{type:Object,default:{}},designViewModelUtils:{type:Object,default:{}},eventsEditorUtils:{type:Object,default:{}},viewModelId:{type:String,default:""}};Y(he,ct,dt,pt);const ft={"input-group":{class:{description:"样式",title:"样式",type:"string"},required:{description:"必填",title:"是否必填",type:"boolean"}},"number-spinner":{class:{description:"样式",title:"样式",type:"string"},required:{description:"必填",title:"是否必填",type:"boolean"},precision:{description:"精度",title:"精度",type:"number"},max:{description:"最大值",title:"最大值",type:"number",editor:{type:"number-spinner",nullable:!0}},min:{description:"最小值",title:"最小值",type:"number",editor:{type:"number-spinner",nullable:!0}}},"number-range":{class:{description:"样式",title:"样式",type:"string"},required:{description:"必填",title:"是否必填",type:"boolean"},precision:{description:"精度",title:"精度",type:"number"},max:{description:"最大值",title:"最大值",type:"number",editor:{type:"number-spinner",nullable:!0}},min:{description:"最小值",title:"最小值",type:"number",editor:{type:"number-spinner",nullable:!0}}},"combo-list":{class:{description:"样式",title:"样式",type:"string"},required:{description:"必填",title:"是否必填",type:"boolean"},enumValueType:{description:"值类型",title:"值类型",type:"select",editor:{type:"combo-list",data:[{value:"int",name:"整型"},{value:"string",name:"字符串"},{value:"boolean",name:"布尔"}],valueField:"value",textField:"name",idField:"value"}}},lookup:{class:{description:"样式",title:"样式",type:"string"},required:{description:"必填",title:"是否必填",type:"boolean"},helpId:{description:"帮助元数据ID",title:"帮助元数据ID",type:"string"},displayName:{description:"帮助元数据名称",title:"帮助元数据名称",type:"string",readonly:!0},uri:{description:"uri",title:"uri",type:"string",readonly:!0},textField:{description:"文本字段",title:"文本字段",type:"string"},valueField:{description:"值字段",title:"值字段",type:"string"},idField:{description:"标识字段",title:"标识字段",type:"string",readonly:!0},displayType:{description:"类型: 树列表、列表、双列表、左树右列表",title:"展示类型",type:"string",editor:{type:"combo-list",editable:!1,disabled:!0,data:[{text:"列表",value:"List"},{text:"树列表",value:"TreeList"},{text:"双列表",value:"NavList"},{text:"左树右列表",value:"NavTreeList"}],textField:"text",idField:"value",valueField:"value"}},mapFields:{description:"映射",title:"映射",type:"string"}},"combo-lookup":{class:{description:"样式",title:"样式",type:"string"},required:{description:"必填",title:"是否必填",type:"boolean"},helpId:{description:"帮助元数据",title:"帮助元数据",type:"string"},uri:{description:"uri",title:"uri",type:"string"},textField:{description:"文本字段",title:"文本字段",type:"string"},valueField:{description:"值字段",title:"值字段",type:"string"},idField:{description:"标识字段",title:"标识字段",type:"string"},mapFields:{description:"映射",title:"映射",type:"string"},multiSelect:{description:"是否多选",title:"是否多选",type:"boolean"},editable:{description:"允许编辑",title:"允许编辑",type:"boolean"},nosearch:{description:"任意输入",title:"任意输入",type:"boolean"},displayFields:{description:"展示字段",title:"展示字段",type:"string"},clearFields:{description:"值变化时清空字段",title:"值变化时清空字段",type:"string"},dialogTitle:{description:"面板标题",title:"面板标题",type:"string"},enableMultiFieldSearch:{description:"多字段查询",title:"多字段查询",type:"boolean"}},"date-range":{class:{description:"样式",title:"样式",type:"string"},required:{description:"必填",title:"是否必填",type:"boolean"},returnFormat:{description:"查询格式",title:"查询格式",type:"string"},format:{description:"显示格式",title:"显示格式",type:"string"}},"date-picker":{class:{description:"样式",title:"样式",type:"string"},required:{description:"必填",title:"是否必填",type:"boolean"},valueFormat:{description:"查询格式",title:"查询格式",type:"enum",editor:{data:[{name:"yyyy-MM-dd",id:"yyyy-MM-dd"},{name:"yyyy/MM/dd",id:"yyyy/MM/dd"},{name:"yyyyMMdd",id:"yyyyMMdd"},{name:"MM/dd/yyyy",id:"MM/dd/yyyy"}]}},displayFormat:{description:"显示格式",title:"显示格式",type:"enum",editor:{data:[{name:"yyyy-MM-dd",id:"yyyy-MM-dd"},{name:"yyyy/MM/dd",id:"yyyy/MM/dd"},{name:"yyyyMMdd",id:"yyyyMMdd"},{name:"MM/dd/yyyy",id:"MM/dd/yyyy"},{name:"yyyy年MM月dd日",id:"yyyy年MM月dd日"}]}}},"date-time":{class:{description:"样式",title:"样式",type:"string"},required:{description:"必填",title:"是否必填",type:"boolean"},returnFormat:{description:"查询格式",title:"查询格式",type:"string"},format:{description:"显示格式",title:"显示格式",type:"string"}},"single-date-time":{class:{description:"样式",title:"样式",type:"string"},required:{description:"必填",title:"是否必填",type:"boolean"},returnFormat:{description:"查询格式",title:"查询格式",type:"string"},format:{description:"显示格式",title:"显示格式",type:"string"}},month:{class:{description:"样式",title:"样式",type:"string"},required:{description:"必填",title:"是否必填",type:"boolean"},returnFormat:{description:"查询格式",title:"查询格式",type:"string"},format:{description:"显示格式",title:"显示格式",type:"string"}},"single-year":{class:{description:"样式",title:"样式",type:"string"},required:{description:"必填",title:"是否必填",type:"boolean"},returnFormat:{description:"查询格式",title:"查询格式",type:"string"},format:{description:"显示格式",title:"显示格式",type:"string"}},"radio-group":{class:{description:"样式",title:"样式",type:"string"},required:{description:"必填",title:"是否必填",type:"boolean"},direction:{description:"布局方向",title:"布局方向",type:"select",editor:{type:"combo-list",data:[{text:"水平",value:"horizontal"},{text:"垂直",value:"vertical"}],textField:"text",idField:"value",valueField:"value"}},showLabel:{description:"是否显示标签",title:"是否显示标签",type:"boolean"}}},mt={convertFrom:(n,e)=>n[e],convertTo:(n,e,l)=>{n[e]=l}};function le(){function n(c){const u={"input-group":{key:"input-group",value:"文本"},"number-spinner":{key:"number-spinner",value:"数值"},"number-range":{key:"number-range",value:"数值区间"},lookup:{key:"lookup",value:"弹出帮助"},"combo-lookup":{key:"combo-lookup",value:"下拉帮助"},"date-picker":{key:"date-picker",value:"日期"},"combo-list":{key:"combo-list",value:"下拉列表"},"radio-group":{key:"radio-group",value:"单选组"}};let i=[];if(c){switch(c){case"Enum":case"Boolean":i=[u["radio-group"],u["combo-list"]];break;case"Number":case"Integer":case"Decimal":case"BigNumber":i=[u["number-spinner"],u["number-range"]];break;case"String":i=[u["input-group"],u.lookup,u["date-picker"],u["radio-group"],u["combo-list"]];break;case"Date":case"DateTime":i=[u["date-picker"]];break}return i}else return[{key:"input-group",value:"文本"}]}function e(c,u){const i={required:!1};let y={};switch(c){case"input-group":break;case"number-range":case"number-spinner":y={precision:u.precision||0,max:null,min:null};break;case"combo-list":y={uri:"",multiSelect:!1,data:(u==null?void 0:u.data)||[],valueField:"value",textField:"name",idField:"value",enumValueType:(u==null?void 0:u.enumValueType)||"string"};break;case"lookup":y={helpId:"",uri:"",textField:"",valueField:"",idField:"",mapFields:"",multiSelect:!1,panelHeight:null};break;case"combo-lookup":y={helpId:"",uri:"",textField:"",valueField:"",idField:"",mapFields:"",multiSelect:!1,editable:!1,nosearch:!1,clearFields:"",dialogTitle:"",enableMultiFieldSearch:!1};break;case"date-range":case"date-picker":y={valueFormat:"yyyy-MM-dd",displayFormat:"yyyy-MM-dd"};break;case"radio-group":y={direction:"horizontal",showLabel:!1,data:(u==null?void 0:u.data)||[],enumValueType:u==null?void 0:u.enumValueType};break}return{...i,...y}}function l(c){const u={class:"",required:!1,isExtend:!1};let i={};switch(c){case"input-group":break;case"number-range":case"number-spinner":i={precision:2,max:null,min:null};break;case"combo-list":i={uri:"",enumValue:[],multiSelect:!1};break;case"lookup":i={helpId:"",uri:"",textField:"",valueField:"",idField:"",mapFields:"",multiSelect:!1,panelHeight:null};break;case"combo-lookup":i={helpId:"",uri:"",textField:"",valueField:"",idField:"",mapFields:"",multiSelect:!1,editable:!1,nosearch:!1,clearFields:"",dialogTitle:"",enableMultiFieldSearch:!1};break;case"date-range":case"date-picker":i={valueFormat:"yyyy-MM-dd",displayFormat:"yyyy-MM-dd"};break;case"radio-group":i={direction:"horizontal",showLabel:!1};break}return{...u,...i}}function a(c,u){return e(c,u)}function s(c,u){return a(c,u)}function p(c){let u="",i={};switch(c.type.name){case"String":{u="input-group",i=s("input-group");break}case"Number":case"Integer":case"Decimal":case"BigNumber":{u="number-range";const o={precision:c.type.precision};i=s("number-spinner",o);break}case"Date":case"DateTime":{u="date-picker",i=s("date-picker");break}case"Enum":{u="combo-list";const o={data:c.type.enumValues,enumValueType:"string"};i=s("combo-list",o);break}case"Boolean":{u="combo-list";const o={data:c.type.enumValues||[{name:"true",value:!0},{name:"false",value:!1}],enumValueType:"boolean"};i=s("combo-list",o);break}default:u="input-group",i=s("input-group")}return i?{id:c.id,labelCode:c.path,code:c.code,name:c.name,labelName:c.name,placeHolder:"",controlType:u,$type:c.$type,$typeInfo:c.type,...i}:void 0}function f(c){if(!c||!c.id)return null;const{id:u,code:i,labelCode:y,name:o,controlType:r,labelName:d,$type:m,$typeInfo:g,...F}=c,V={id:u,code:i,labelCode:y,name:o,controlType:r,$type:m,$typeInfo:g,editor:F};return V.editor.type=r,V}return{getQuerySolutionExtendSchemaProerty:e,getFilterBarionExtendSchemaProerty:l,getExtendSchemaProerty:a,getEditorByType:s,getSolutionField:p,getControlTypeListByFieldType:n,formatUsingFieldToField:f}}function yt(n,e){const{getControlTypeListByFieldType:l}=le();function a(r){return{description:"Basic Infomation",title:"基本信息",properties:{id:{description:"标识",title:"标识",type:"string",readonly:!0},code:{description:"编号",title:"控件编号",type:"string",readonly:!0},labelCode:{description:"标签",title:"标签",type:"string",readonly:!0},name:{description:"控件名称",title:"控件名称",type:"string"},controlType:{description:"控件类型",title:"控件类型",type:"string",editor:{type:"combo-list",data:l(r.$typeInfo.name),valueField:"key",textField:"value",idField:"key",editable:!1,multiSelect:!1}}}}}function s(r){let d="form_group_"+Date.now();return r&&(d=r.replaceAll("-","_").replaceAll(".","_")),"lookup."+d}function p(r){const d={description:"帮助元数据",title:"帮助元数据",type:"string",refreshPanelAfterChanged:!0,editor:{type:"schema-selector",title:"选择数据源",textField:"id",editorParams:{propertyData:r,formBasicInfo:n.formSchemaUtils.getFormMetadataBasicInfo()},viewOptions:[{id:"recommend",title:"推荐",type:"List",dataSource:"Recommand",enableGroup:!0,groupField:"category",groupFormatter:(V,S)=>`${V==="local"?"本地元数据":"最近使用"}`},{id:"total",title:"全部",type:"List",dataSource:"Total"}],repositoryToken:Be.LookupSchemaRepositoryToken,onSubmitModal:V=>{if(V){const S=n.formSchemaUtils.getFormMetadataBasicInfo();return n.metadataService.getPickMetadata(S.relativePath,V[0].data).then(E=>{const b=JSON.parse(E==null?void 0:E.metadata.content);return r.helpId=b.id,r.displayName=b.name,r.displayType=b.displayType,r.textField=b.textField,r.valueField=b.valueField,r.idField=b.idField,r.uri=s(b.id),r.dataSource={displayName:b.name,idField:b.idField,uri:r.uri},null})}}}},m={description:"显示文本字段",title:"文本字段",type:"string",editor:{type:"field-selector",bindingType:{enable:!1},textField:"bindingPath",idField:"bindingPath",editorParams:{propertyData:r,formBasicInfo:n.formSchemaUtils.getFormMetadataBasicInfo()},columns:[{field:"name",title:"名称"},{field:"code",title:"编号"},{field:"bindingPath",title:"绑定字段"}],repositoryToken:K.FieldSelectorRepositoryToken,onSubmitModal:V=>(r.textField=V[0].bindingPath,null)}},g={description:"显示值字段",title:"值字段",type:"string",editor:{type:"field-selector",bindingType:{enable:!1},textField:"bindingPath",idField:"bindingPath",editorParams:{propertyData:r,formBasicInfo:n.formSchemaUtils.getFormMetadataBasicInfo()},columns:[{field:"name",title:"名称"},{field:"code",title:"编号"},{field:"bindingPath",title:"绑定字段"}],repositoryToken:K.FieldSelectorRepositoryToken,onSubmitModal:V=>(r.valueField=V[0].bindingPath,null)}},F={description:"字段映射",title:"字段映射",type:"string",editor:{type:"mapping-editor",modalWidth:800,modalHeight:600,editable:!1,editorParams:{propertyData:r,formBasicInfo:n.formSchemaUtils.getFormMetadataBasicInfo()},fromData:{editable:!1,formatter:(V,S)=>`${S.raw.name} [${S.raw.bindingPath}]`,idField:"id",textField:"bindingPath",valueField:"bindingPath",repositoryToken:K.FieldSelectorRepositoryToken},toData:{idField:"id",textField:"bindingPath",valueField:"bindingPath",dataSource:n.designViewModelUtils.getAllFields2TreeByVMId(n.viewModelId),formatter:(V,S)=>`${S.raw.name} [${S.raw.bindingPath}]`}}};return{helpId:d,textField:m,valueField:g,mappingFields:F}}function f(r){return{enumValues:{description:"枚举值",title:"枚举值",type:"string",editor:{columns:[{field:"value",title:"值",dataType:"string"},{field:"name",title:"名称",dataType:"string"},{field:"disabled",title:"禁用",visible:!1,dataType:"boolean",editor:{type:"switch"}}],type:"item-collection-editor",valueField:"value",nameField:"name",requiredFields:["value","name"],uniqueFields:["value","name"]},$converter:mt}}}function c(r){const d={description:"精度",title:"精度",type:"number",editor:{type:"number-spinner",nullable:!1,precision:0,min:0}},m={description:"最大值",title:"最大值",type:"number",editor:{type:"number-spinner",nullable:!0,precision:r.precision,min:r.min}},g={description:"最小值",title:"最小值",type:"number",editor:{type:"number-spinner",nullable:!0,precision:r.precision,max:r.max}};return{precision:d,max:m,min:g}}function u(r){const{controlType:d}=r,m={description:"",title:"控件",properties:ft[d]};if(d==="lookup"||d==="combo-lookup"){const{helpId:g,textField:F,valueField:V,mappingFields:S}=p(r);m.properties.helpId=g,m.properties.textField=F,m.properties.valueField=V,m.properties.mapFields=S}else if(d==="radio-group"||d==="combo-list"){const{enumValues:g}=f();m.properties.data=g}else if(d==="date-picker"){const{$typeInfo:g}=r;if(g&&(g.name==="Date"||g.name==="DateTime")){const{valueFormat:F,...V}=m.properties;m.properties=V}}else if(d==="number-spinner"||d==="number-range"){const{precision:g,max:F,min:V}=c(r);m.properties.precision=g,m.properties.max=F,m.properties.min=V}return m}function i(r){const d=[{label:"valueChangedCmd",name:"值变化事件"}];switch(r){case"combo-lookup":case"lookup":d.push({label:"preEventCmd",name:"帮助前事件"},{label:"preEventCmd",name:"帮助前事件"});break;case"combo-list":d.push({label:"beforeShow",name:"面板展开前事件"},{label:"afterShow",name:"面板关闭后事件"});break}return d}function y(r){const d=i(r.controlType),m=n.eventsEditorUtils.formProperties(r,n.viewModelId,d),g={};return g[n.viewModelId]={type:"events-editor",editor:{initialData:m}},{title:"事件",hideTitle:!0,properties:g,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(V,S){const E=V.propertyValue;delete r[n.viewModelId],E&&(E.setPropertyRelates=this.setPropertyRelates,n.eventsEditorUtils.saveRelatedParameters(r,n.viewModelId,E.events,E)),r.remoteSort=!!r.columnSorted}}}function o(r){const d=a(r),m=u(r);return y(r),{title:"query-solution-config",description:"A Farris Component",type:"object",categories:{basic:d,control:m}}}return{getPropertyConfig:o}}function ht(n,e,l,a){const s=t.ref(),p=t.ref("query-solution-config"),f=t.ref({}),c=t.ref(),u=t.ref(null),{getPropertyConfig:i}=yt(n),{getExtendSchemaProerty:y}=le();t.watch(()=>{var m;return(m=l.value)==null?void 0:m.id},(m,g)=>{if(!m)u.value=null;else if(m!==g){const F=a.get(m);u.value=F}});function o(m){return{id:m.id,code:m.code||m.id,labelCode:m.labelCode,name:m.name,controlType:m.controlType,$typeInfo:m.$typeInfo,$type:m.$type}}t.watch(()=>{var m,g;return[(m=u.value)==null?void 0:m.id,(g=u.value)==null?void 0:g.controlType]},([m,g],[F,V])=>{if(!m)s.value.updatePropertyConfig({},{},!0);else if(m!==F){const S=i(u.value);s.value.updatePropertyConfig(S,u.value,!0)}else if(g!==V){const S=a.get(m),E=o(S);E.controlType=g;const b={...E,...y(g,S)};a.set(m,b),u.value=a.get(m);const B=i(u.value);s.value.updatePropertyConfig(B,u.value,!0)}});function r(m){const{propertyID:g}=m.changeObject;if(g==="precision"||g==="max"||g==="min"){const F=i(u.value);s.value.updatePropertyConfig(F,u.value)}}function d(){return t.createVNode(Me.FPropertyPanel,{propertyConfig:c.value,ref:s,propertyName:p.value,enableSearch:!1,schema:f.value,onPropertyChanged:r},{default:()=>[t.createTextVNode(" ")]})}return{renderPanel:d}}function gt(n,e,l,a){const s=new Map,p=t.ref(!1),f=t.ref(),c=t.ref([]),u=t.ref([]),i=t.ref([]),{getSolutionField:y}=le(),o={customRowStatus:b=>{const B=b.raw;b.disabled=B.$type!=="SimpleField"||B.$typeInfo.name==="Text"}};function r(b){l.value=b.length?b[0]:null}function d(b){var v;u.value.forEach(h=>{!b.find(N=>N.id===h.id)&&a.set(h.id,L.cloneDeep(s.get(h.id)))}),u.value=b;const B=(v=l.value)==null?void 0:v.id;(!B||!u.value.find(h=>h.id===B))&&(l.value=null)}function m(b,B=!1){if(b.forEach(v=>{v.data=y(v.data),a.set(v.data.id,L.cloneDeep(v.data)),s.set(v.data.id,L.cloneDeep(v.data)),v.children&&v.children.length&&m(v.children)}),B)return b}function g(){const b=L.cloneDeep(n.fieldsConfig);return m(b,!0)}function F(){i.value=g();const b={},B=L.cloneDeep(n.modelValue)||[];u.value=[],B.forEach(v=>{const h=n.flatAllFields.get(v.id);h&&(b[v.id]={...v.editor,id:h.id,code:h.code,labelCode:h.path,labelName:h.name,name:v.name,$type:h.$type,$typeInfo:h.type,controlType:v.controlType},delete b[v.id].type,u.value.push(b[v.id]),a.set(v.id,L.cloneDeep(b[v.id])))}),p.value=!0,f.value=L.cloneDeep(b),c.value=L.cloneDeep(u.value)}function V(){const b=[];u.value.forEach(B=>{const v=a.get(B.id);if(v){const{id:h,code:T,labelCode:N,name:w,controlType:O,labelName:z,$type:H,$typeInfo:G,..._}=v,W={id:h,code:T,labelCode:N,name:w,controlType:O,$type:H,$typeInfo:G,editor:_};W.editor.type=O,b.push(W)}}),e.emit("update:modelValue",b),n.onFieldsChanged&&typeof n.onFieldsChanged=="function"&&n.onFieldsChanged(b),p.value=!1,l.value=null}function S(){u.value=L.cloneDeep(c.value),p.value=!1,l.value=null}function E(){return p.value?t.createVNode(Se,{selections:u.value,"data-source":i.value,rowOption:o,"display-type":"Tree",class:"query-solution-config-transfer","text-field":"labelName",onActiveChange:r,onChange:d},null):null}return{renderTransfer:E,initData:F,selectPanels:u,confirm:V,cancel:S}}const vt=new Map([["appearance",Ne.resolveAppearance]]);function bt(n,e,l){return e}const Ct={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/button-edit.schema.json",title:"button-edit",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a Input Group",type:"string"},type:{description:"The type string of Input Group component",type:"string",default:"button-edit"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disable:{type:"string",default:!1},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:""},forcePlaceholder:{description:"",type:"boolean",default:!1},readonly:{description:"",type:"boolean",default:!1},require:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},textAlign:{description:"",type:"string",enum:["left","middle","right