@farris/ui-vue 1.8.5-beta.3 → 1.8.5-beta.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/batch-editor/index.esm.js +6850 -6840
- package/components/batch-editor/index.umd.cjs +20 -20
- package/components/button/index.esm.js +6852 -6842
- package/components/button/index.umd.cjs +20 -20
- package/components/button-edit/index.esm.js +140 -140
- package/components/button-edit/index.umd.cjs +1 -1
- package/components/button-group/index.esm.js +46 -45
- package/components/button-group/index.umd.cjs +1 -1
- package/components/common/index.esm.js +16 -12
- package/components/common/index.umd.cjs +1 -1
- package/components/component/index.esm.js +411 -411
- package/components/component/index.umd.cjs +2 -2
- package/components/data-view/index.esm.js +6500 -6487
- package/components/data-view/index.umd.cjs +21 -21
- package/components/designer-canvas/index.esm.js +269 -269
- package/components/designer-canvas/index.umd.cjs +1 -1
- package/components/expression-editor/index.esm.js +458 -458
- package/components/expression-editor/index.umd.cjs +2 -2
- package/components/filter-condition-editor/index.esm.js +386 -386
- package/components/filter-condition-editor/index.umd.cjs +1 -1
- package/components/flow-canvas/index.esm.js +1100 -1100
- package/components/flow-canvas/index.umd.cjs +7 -7
- package/components/mapping-editor/index.esm.js +243 -243
- package/components/mapping-editor/index.umd.cjs +2 -2
- package/components/message-box/index.esm.js +82 -82
- package/components/message-box/index.umd.cjs +1 -1
- package/components/modal/index.esm.js +76 -76
- package/components/modal/index.umd.cjs +1 -1
- package/components/order/index.esm.js +139 -138
- package/components/order/index.umd.cjs +1 -1
- package/components/query-solution/index.esm.js +891 -891
- package/components/query-solution/index.umd.cjs +1 -1
- package/components/response-toolbar/index.esm.js +151 -149
- package/components/response-toolbar/index.umd.cjs +1 -1
- package/components/schema-selector/index.esm.js +947 -941
- package/components/schema-selector/index.umd.cjs +6 -6
- package/components/section/index.esm.js +121 -121
- package/components/section/index.umd.cjs +2 -2
- package/components/sort-condition-editor/index.esm.js +539 -539
- package/components/sort-condition-editor/index.umd.cjs +1 -1
- package/components/tabs/index.esm.js +448 -442
- package/components/tabs/index.umd.cjs +1 -1
- package/designer/button-edit/index.esm.js +97 -97
- package/designer/button-edit/index.umd.cjs +1 -1
- package/designer/data-grid/index.esm.js +6483 -6470
- package/designer/data-grid/index.umd.cjs +21 -21
- package/designer/farris-designer.all.esm.js +1891 -1885
- package/designer/farris-designer.all.umd.cjs +14 -14
- package/designer/radio-group/index.esm.js +183 -183
- package/designer/radio-group/index.umd.cjs +2 -2
- package/designer/response-toolbar/index.esm.js +558 -556
- package/designer/response-toolbar/index.umd.cjs +1 -1
- package/designer/tabs/index.esm.js +416 -416
- package/designer/tabs/index.umd.cjs +2 -2
- package/farris.all.esm.js +9133 -9119
- package/farris.all.umd.cjs +35 -35
- package/package.json +1 -1
- package/types/common/index.d.ts +1 -0
- package/types/common/utils/attrs.d.ts +26 -0
- package/types/modal/src/composition/type.d.ts +2 -0
- package/types/tabs/src/composition/types.d.ts +2 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
(function(L,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("vue"),require("../locale/index.umd.js"),require("../common/index.umd.js"),require("../drawer/index.umd.js"),require("../property-panel/index.umd.js"),require("../button/index.umd.js"),require("../field-selector/index.umd.js"),require("../collection-property-editor/index.umd.js/src/use-button-items.designer"),require("../tags/index.umd.js"),require("lodash-es"),require("../common/index.umd.js/text-box/use-input-expand"),require("../popover/index.umd.js"),require("../dynamic-resolver/index.umd.js"),require("../button-edit/index.umd.js"),require("../list-view/index.umd.js"),require("bignumber.js"),require("../../designer/button-edit/index.umd.js"),require("../designer-canvas/index.umd.js"),require("../tree-view/index.umd.js"),require("../event-parameter/index.umd.js"),require("../input-group/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","../locale/index.umd.js","../common/index.umd.js","../drawer/index.umd.js","../property-panel/index.umd.js","../button/index.umd.js","../field-selector/index.umd.js","../collection-property-editor/index.umd.js/src/use-button-items.designer","../tags/index.umd.js","lodash-es","../common/index.umd.js/text-box/use-input-expand","../popover/index.umd.js","../dynamic-resolver/index.umd.js","../button-edit/index.umd.js","../list-view/index.umd.js","bignumber.js","../../designer/button-edit/index.umd.js","../designer-canvas/index.umd.js","../tree-view/index.umd.js","../event-parameter/index.umd.js","../input-group/index.umd.js"],t):(L=typeof globalThis<"u"?globalThis:L||self,t(L["filter-condition-editor"]={},L.Vue,L.locale,L.common,L.FDrawer,L.propertyPanel,null,null,null,L.FTags,L.LodashES,L.useInputExpand,L.FPopover,L.dynamicResolver,L.FButtonEdit$1,L.FListView,L.BigNumber,L.FButtonEditDesign,L.designerCanvas,L.FTreeView,L.FEventParameter,L.inputGroup))})(this,function(L,t,G,z,Ne,Ot,Pl,Il,jl,Et,X,Dt,Pt,K,pe,It,Rl,jt,he,Ue,Rt,Lt){"use strict";var El=Object.defineProperty;var Dl=(L,t,G)=>t in L?El(L,t,{enumerable:!0,configurable:!0,writable:!0,value:G}):L[t]=G;var Q=(L,t,G)=>Dl(L,typeof t!="symbol"?t+"":t,G);const At={id:{type:String,default:""},buttonContent:{type:String,default:'<i class="f-icon f-icon-lookup"></i>'},buttonBehavior:{type:String,default:"Popup"},autoComplete:{type:Boolean,default:!1},customClass:{type:String,default:""},disable:{type:Boolean,default:!1},editable:{type:Boolean,default:!0},enableClear:{type:Boolean,default:!1},modelValue:{type:String,default:""},readonly:{type:Boolean,default:!1},showButtonWhenDisabled:{type:Boolean,default:!1},showAppendButton:{type:Boolean,default:!0},enableTitle:{type:Boolean,default:!1},inputType:{type:String,default:"text"},forcePlaceholder:{type:Boolean,default:!1},placeholder:{type:String,default:""},minLength:Number,maxLength:{type:Number},tabIndex:Number,popupHost:{type:Object},popupRightBoundary:{type:Object},popupOffsetX:{type:Object,default:0},popupOffsetY:{type:Object,default:0},popupOnInput:{type:Boolean,default:!1},popupOnFocus:{type:Boolean,default:!1},popupOnClick:{type:Boolean,default:!1},popupClass:{type:String,default:""},popupMinWidth:{type:Number,default:160},modalOptions:{type:Object,default:{}},wrapText:{type:Boolean,default:!1},multiSelect:{type:Boolean,default:!1},separator:{type:String,default:","},textAlign:{type:String,default:"left"},beforeClickButton:{type:Function,default:null},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1},beforeOpen:{type:Function,default:null},updateOn:{type:String,default:"change"},keepWidthWithReference:{type:Boolean,default:!0},placement:{type:String,default:"bottom-left"},limitContentBySpace:{type:Boolean,default:!1},beforeClosePopup:{type:Function,default:null},expandable:{type:Boolean,default:!1},expandMode:{type:String,default:"text"},expandContent:{type:String,default:""},expandDisabled:{type:Boolean,default:!1}},Ht={popupContentPosition:{type:Object,default:{left:0,top:0}},host:{type:Object},backgroundColor:{type:String,default:""}};function $t(){const e=t.ref(!1);return t.onMounted(()=>{e.value=!0}),e}const zt=t.defineComponent({name:"FOverlay",props:Ht,emits:["click"],setup(e,n){const a=t.ref(e.popupContentPosition),l=t.ref(e.host),o=$t(),i=t.computed(()=>({backgroundColor:e.backgroundColor||"",pointerEvents:"auto"}));function r(d){n.emit("click"),d.preventDefault(),d.stopPropagation()}t.computed(()=>{const d=l.value;if(d){const m=d.getBoundingClientRect(),{left:v,top:y,height:p}=m;return{left:v,top:y+p}}return a.value});const h=t.computed(()=>({}));return()=>o.value?t.createVNode(t.Teleport,{to:"body"},{default:()=>{var d,m;return[t.createVNode("div",{class:"overlay-container",onClick:v=>r(v),style:i.value},[t.createVNode("div",{style:h.value},[(m=(d=n.slots).default)==null?void 0:m.call(d)])])]}}):null}});function Wt(e){if(e.content&&e.content.render)return e.content.render;if(e.render&&typeof e.render=="function")return e.render}function qt(e){const n=document.createElement("div");n.style.display="contents";let a;const l=e.onClickCallback||(()=>{}),o=()=>{l(),a&&a.unmount()};return a=t.createApp({setup(){t.onUnmounted(()=>{document.body.removeChild(n)});const i=Wt(e);return()=>t.createVNode(zt,{"popup-content-position":e.popupPosition,host:e.host,onClick:o,backgroundColor:e.backgroundColor},{default:()=>[i&&i()]})}}),document.body.appendChild(n),a.mount(n),a}class Ut{static show(n){return qt(n)}}const Yt={allowClickMaskToClose:{type:Boolean,default:!1},beforeClose:{type:Function,default:()=>!0},class:{type:String,default:""},maskClass:{type:String,default:""},title:{type:String,default:""},width:{type:Number,default:500},height:{type:Number,default:320},buttons:{type:Array,default:[]},modelValue:{type:Boolean,default:!1},mask:{type:Boolean,default:!0},showHeader:{type:Boolean,default:!0},showButtons:{type:Boolean,default:!0},fitContent:{type:Boolean,default:!0},showCloseButton:{type:Boolean,default:!0},showFloatingClose:{type:Boolean,default:!1},showMaxButton:{type:Boolean,default:!1},minHeight:{type:Number},maxHeight:{type:Number},minWidth:{type:Number},maxWidth:{type:Number},containment:{type:Object,default:null},resizeable:{type:Boolean,default:!1},draggable:{type:Boolean,default:!1},dragHandle:{type:Object,default:null},closedCallback:{type:Function,default:null},openedCallback:{type:Function,default:null},resizeHandle:{type:Function,default:null},render:{type:Function,default:null},acceptCallback:{type:Function,default:null},rejectCallback:{type:Function,default:null},enableEsc:{type:Boolean,default:!0},enableEnter:{type:Boolean,default:!1},dialogType:{type:String,default:""},src:{type:String,default:""},footerHeight:{type:Number,default:60},position:{type:String,default:"center"},host:{type:Object,default:"body"},isMessager:{type:Boolean,default:!1},fullscreen:{type:Boolean,default:!1},maximized:{type:Boolean,default:!1},useTransform:{type:Boolean,default:!0}};class Y{constructor(n,a){this.x=n,this.y=a}static getTransformInfo(n){const l=window.getComputedStyle(n).getPropertyValue("transform").replace(/[^-\d,]/g,"").split(",");if(l.length>=6){const o=parseInt(l[4],10),i=parseInt(l[5],10);return{x:o,y:i}}return{x:0,y:0}}static fromEvent(n,a=null){if(this.isMouseEvent(n))return new Y(n.clientX,n.clientY);if(a===null||n.changedTouches.length===1)return new Y(n.changedTouches[0].clientX,n.changedTouches[0].clientY);for(let l=0;l<n.changedTouches.length;l++)if(n.changedTouches[l].target===a)return new Y(n.changedTouches[l].clientX,n.changedTouches[l].clientY)}static isMouseEvent(n){return Object.prototype.toString.apply(n).indexOf("MouseEvent")===8}static isIPosition(n){return!!n&&"x"in n&&"y"in n}static getCurrent(n){const a=new Y(0,0);if(window){const l=window.getComputedStyle(n);if(l){const o=parseInt(l.getPropertyValue("left"),10),i=parseInt(l.getPropertyValue("top"),10);a.x=isNaN(o)?0:o,a.y=isNaN(i)?0:i}return a}return null}static copy(n){return new Y(0,0).set(n)}get value(){return{x:this.x,y:this.y}}add(n){return this.x+=n.x,this.y+=n.y,this}subtract(n){return this.x-=n.x,this.y-=n.y,this}multiply(n){this.x*=n,this.y*=n}divide(n){this.x/=n,this.y/=n}reset(){return this.x=0,this.y=0,this}set(n){return this.x=n.x,this.y=n.y,this}}class ne{constructor(n,a){this.width=n,this.height=a}static getCurrent(n){const a=new ne(0,0);if(window){const l=window.getComputedStyle(n);return l&&(a.width=parseInt(l.getPropertyValue("width"),10),a.height=parseInt(l.getPropertyValue("height"),10)),a}return null}static copy(n){return new ne(0,0).set(n)}set(n){return this.width=n.width,this.height=n.height,this}}function Gt(e,n){const a=t.ref(),l=t.ref(),o=t.ref(),i=t.ref(),r=t.ref(),h=t.ref(),d=t.ref(),m=t.ref(),v=t.ref(),y=t.ref(),p=t.ref(),x=t.ref(e.resizeable),k=t.ref(),S=t.ref(e.draggable),g=t.ref(!1);function s(){const N=l.value||document.body,M=window.getComputedStyle(N);if(!M||!a.value)return;const R=Y.getTransformInfo(a.value),$={};d.value&&($.deltaL=a.value.offsetLeft-d.value.x,$.deltaT=a.value.offsetTop-d.value.y);const q=M.getPropertyValue("position");$.width=N.clientWidth,$.height=N.clientHeight,$.pr=parseInt(M.getPropertyValue("padding-right"),10),$.pb=parseInt(M.getPropertyValue("padding-bottom"),10),$.position=M.getPropertyValue("position"),q==="static"&&(N.style.position="relative"),$.translateX=R.x,$.translateY=R.y,y.value=$}function f(N){if(a.value){i.value=ne.getCurrent(a.value),r.value=Y.getCurrent(a.value),h.value=i.value?ne.copy(i.value):null,d.value=r.value?Y.copy(r.value):null,s();const M=N.target.getAttribute("type")||"";m.value={n:!!M.match(/n/),s:!!M.match(/s/),w:!!M.match(/w/),e:!!M.match(/e/)}}}function w(){var N,M,R,$;if(a.value){const q=a.value;m.value&&((m.value.n||m.value.s)&&((N=h.value)!=null&&N.height)&&(q.style.height=h.value.height+"px"),(m.value.w||m.value.e)&&((M=h.value)!=null&&M.width)&&(q.style.width=h.value.width+"px"),d.value&&((R=d.value)!=null&&R.x&&(q.style.left=d.value.x+"px"),($=d.value)!=null&&$.y&&(q.style.top=d.value.y+"px")))}}function C(){const N=e.minHeight?e.minHeight:1,M=e.minWidth?e.minWidth:1;h.value&&d.value&&m.value&&i.value&&(h.value.height<N&&(h.value.height=N,m.value.n&&r.value&&(d.value.y=r.value.y+(i.value.height-N))),h.value.width<M&&(h.value.width=M,m.value.w&&r.value&&(d.value.x=r.value.x+(i.value.width-M))),e.maxHeight&&h.value.height>e.maxHeight&&(h.value.height=e.maxHeight,r.value&&m.value.n&&(d.value.y=r.value.y+(i.value.height-e.maxHeight))),e.maxWidth&&h.value.width>e.maxWidth&&(h.value.width=e.maxWidth,m.value.w&&r.value&&(d.value.x=r.value.x+(i.value.width-e.maxWidth))))}function c(){if(l.value){const N=y.value;if(d.value&&h.value&&m.value&&i.value){const M=N.width-N.pr-N.deltaL-N.translateX-d.value.x,R=N.height-N.pb-N.deltaT-N.translateY-d.value.y;m.value.n&&d.value.y+N.translateY<0&&r.value&&(d.value.y=-N.translateY,h.value.height=i.value.height+r.value.y+N.translateY),m.value.w&&d.value.x+N.translateX<0&&r.value&&(d.value.x=-N.translateX,h.value.width=i.value.width+r.value.x+N.translateX),h.value.width>M&&(h.value.width=M),h.value.height>R&&(h.value.height=R)}}}function u(N){if(!o.value||!i.value||!r.value||!m.value)return;N.subtract(o.value);const M=N.x,R=N.y;m.value.n?(d.value.y=r.value.y+R,h.value.height=i.value.height-R):m.value.s&&(h.value.height=i.value.height+R),m.value.e?h.value.width=i.value.width+M:m.value.w&&(h.value.width=i.value.width-M,d.value.x=r.value.x+M),c(),C(),w()}function b(N){if(!v.value)return;const M=Y.fromEvent(N);M&&u(M)}function F(){if(a.value){const{width:N,height:M,x:R,y:$}=a.value.getBoundingClientRect(),q=Y.getTransformInfo(a.value);return{size:{width:N,height:M},position:{x:R-q.x,y:$-q.y}}}return null}function E(N){if(a.value){const M=F();p.value=M}o.value=void 0,i.value=null,r.value=null,h.value=null,d.value=null,m.value=null,v.value=null,document.removeEventListener("mousemove",b),document.removeEventListener("mouseup",E)}function I(){document.addEventListener("mousemove",b),document.addEventListener("mouseup",E)}function D(N){N instanceof MouseEvent&&N.button===2||S.value&&(document.body.click(),N.stopPropagation(),N.preventDefault(),o.value=Y.fromEvent(N),v.value=N.target,f(N),I())}function O(N){return a.value=N,x.value&&t.createVNode(t.Fragment,null,[t.createVNode("div",{class:"fv-resizable-handle fv-resizable-n",type:"n",onMousedown:M=>D(M)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-e",type:"e",onMousedown:M=>D(M)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-s",type:"s",onMousedown:M=>D(M)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-w",type:"w",onMousedown:M=>D(M)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-ne",type:"ne",onMousedown:M=>D(M)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-se fv-resizable-diagonal",type:"se",onMousedown:M=>D(M)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-sw",type:"sw",onMousedown:M=>D(M)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-nw",type:"nw",onMousedown:M=>D(M)},null)])}function T(N=!0){document.body.click();const M=l.value||document.body,R=ne.getCurrent(M),$=a.value;N&&$&&(k.value=F(),k.value.transform=$.style.transform),R&&$&&(h.value=R,h.value.height-=14,h.value.width-=14,$.style.height=h.value.height+"px",$.style.width=h.value.width+"px",$.style.left="7px",$.style.top="7px",$.style.transform="",p.value={size:h.value,position:{x:0,y:0}},S.value=!1,g.value=!0)}function B(){var N,M;if(document.body.click(),k.value){const R={width:k.value.size.width||0,height:k.value.size.height||0},$={x:(window.innerWidth-R.width)/2,y:(window.innerHeight-R.height)/2};(N=h.value)==null||N.set(R),(M=d.value)==null||M.set($);const q=a.value;q.style.height=R.height+"px",q.style.width=R.width+"px",q.style.left=`${$.x}px`,q.style.top=`${$.y}px`,q.style.transform="",p.value={size:R,position:$},S.value=e.draggable,g.value=!1}}function P(){if(a.value){const N=ne.getCurrent(a.value);if(N){const{width:M,height:R}=N;a.value.style.left=`${(window.innerWidth-M)/2}px`,a.value.style.top=`${(window.innerHeight-R)/2}px`,a.value.style.transform=""}}}function H(){const N=()=>{g.value?T(!1):P(),document.body.click()};return window.addEventListener("resize",N),()=>{window.removeEventListener("resize",N)}}const j=H();return{renderResizeBar:O,boundingElement:l,resizedEventParam:p,maximize:T,restore:B,allowDrag:S,isMaximized:g,unWindowResizeHandle:j,moveToCenter:P}}function _t(e,n,a){const l=t.ref(),o=t.ref(e.draggable),i=t.ref(e.lockAxis),r=t.ref(),h=t.ref(),d=t.ref(!1),m=t.ref(new Y(0,0)),v=t.ref(new Y(0,0)),y=t.ref(new Y(0,0)),p=t.ref(new Y(0,0));t.watch(()=>a.value,b=>{r.value.style.cursor=b?"move":"default"});function x(b,F){if(F.tagName==="BUTTON")return!1;if(F===b)return!0;for(const E in F.children)if(Object.prototype.hasOwnProperty.call(F.children,E)&&x(b,F.children[E]))return!0;return!1}function k(){var I,D;let b=y.value.x+v.value.x,F=y.value.y+v.value.y;i.value==="x"?(b=((I=m.value)==null?void 0:I.x)||0,y.value.x=0):i.value==="y"&&(F=((D=m.value)==null?void 0:D.y)||0,y.value.y=0);const E=`translate3d(${Math.round(b)}px, ${Math.round(F)}px, 0px)`;l.value&&(l.value.style.transform=E),p.value.x=b,p.value.y=F}function S(){if(!h.value||!l.value)return null;const b=h.value.getBoundingClientRect(),F=l.value.getBoundingClientRect(),E={top:b.top<F.top,right:b.right>F.right,bottom:b.bottom>F.bottom,left:b.left<F.left};return E.top||(y.value.y-=F.top-b.top),E.bottom||(y.value.y-=F.bottom-b.bottom),E.right||(y.value.x-=F.right-b.right),E.left||(y.value.x-=F.left-b.left),k(),E}function g(b){b&&(m.value&&b.subtract(m.value),y.value.set(b),k(),S())}function s(b){d.value&&o.value&&(b.stopPropagation(),b.preventDefault(),g(Y.fromEvent(b,r.value)))}function f(){var b;if(d.value){if(d.value=!1,v.value.add(y.value),y.value.reset(),(b=l.value)==null||b.classList.remove("ng-dragging"),!e.useTransform&&l.value){const{left:F,top:E}=l.value.getBoundingClientRect();l.value.style.left=Math.ceil(F)+"px",l.value.style.top=Math.ceil(E)+"px",l.value.style.transform="none"}n.emit("stopMove"),document.removeEventListener("mousemove",s),document.removeEventListener("mouseup",f)}}function w(){!d.value&&r.value&&(d.value=!0,r.value.classList.add("ng-dragging"),document.addEventListener("mousemove",s),document.addEventListener("mouseup",f))}function C(){if(l.value){const b=Y.getTransformInfo(l.value);v.value.set(b);return}v.value.reset()}function c(b){if(!a.value||b instanceof MouseEvent&&b.button===2)return;const F=b.target||b.srcElement;r.value!==void 0&&F&&!x(F,r.value)||o.value!==!1&&(document.body.click(),b.stopPropagation(),b.preventDefault(),m.value=Y.fromEvent(b,l.value),C(),w())}function u(b,F,E){if(o.value&&F){if(b)r.value=b;else if(e.dragHandle){if(e.dragHandle instanceof HTMLElement)r.value=e.dragHandle;else if(typeof e.dragHandle=="string"){const I=F.querySelector(e.dragHandle);I&&(r.value=I)}}l.value=F,h.value=E,r.value?(r.value.classList.add("ng-draggable"),r.value.addEventListener("mousedown",c)):o.value=!1}}return{registerDraggle:u,resetTranslate:C}}function Ye(e,n){if(e){const a=l=>{l.key.toLowerCase()===e.toLowerCase()&&n({event:l,key:e})};return document.addEventListener("keydown",a),()=>{document.removeEventListener("keydown",a)}}}function Xt(e,n){const a=t.ref(e.enableEsc);let l=null;return a.value?(l=Ye("Escape",o=>{n.emit("esc",{event:o.event,type:"esc"})}),{remove:l}):null}function Kt(e,n){const a=t.ref(e.enableEnter);let l=null;return a.value?(l=Ye("Enter",o=>{n.emit("enter",{event:o.event,type:"enter"})}),{remove:l}):null}const ce=t.defineComponent({name:"FModal",props:Yt,emits:["update:modelValue","accept","cancel","closed","resize","esc","enter","stopMove","buttonClick"],setup(e,n){const a=t.ref(e.width||300),l=t.ref(e.height||200),o=t.ref(e.modelValue),i=t.ref(""),r=t.ref(e.class),h=t.ref(e.fitContent),d=t.ref(e.showHeader),m=t.ref(""),v=t.ref(e.showCloseButton),y=t.ref(e.showMaxButton),p=t.ref(!1),x=t.ref(e.dialogType),k=t.ref(e.src),S=t.ref(""),g=t.ref(e.showButtons),s=t.ref(e.title),f=t.ref(e.containment||null),w=t.ref();s.value==="错误提示"&&(s.value=G.LocaleService.getLocaleValue("messageBox.errorTitle"));const C=t.ref(!1);function c(){const V=document.querySelectorAll(".farris-modal").length;(!V||V-1<=0)&&w.value===document.querySelectorAll(".farris-modal")[0]&&document.body.classList.remove("modal-open"),w.value&&w.value.classList.remove("show")}function u(V,A){const W=A?"accept":"cancel";Promise.resolve().then(()=>{var U;return(U=e.beforeClose)==null?void 0:U.call(e,{closeType:W})}).then(U=>{U&&(o.value=!1,n.emit("update:modelValue",!1),A!=null&&n.emit(A?"accept":"cancel"),n.emit("closed",V),c())})}const b=[{name:"cancel",text:G.LocaleService.getLocaleValue("messageBox.cancel")||"取消",class:"btn btn-secondary",handle:V=>{u(V,!1)}},{name:"accept",text:G.LocaleService.getLocaleValue("messageBox.ok")||"确定",class:"btn btn-primary",handle:V=>{u(V,!0)}}],F=t.ref(e.buttons&&e.buttons.length?e.buttons:b),E=t.computed(()=>!!m.value),I=t.computed(()=>!!g.value&&!!F.value),D=t.ref(),O=t.ref(),T=t.ref(e.maximized||!1),{renderResizeBar:B,maximize:P,restore:H,boundingElement:j,resizedEventParam:N,allowDrag:M,unWindowResizeHandle:R,moveToCenter:$}=Gt(e),{registerDraggle:q}=_t(e,n,M);function Te(){return!!document.querySelectorAll(".farris-modal").length&&document.body.classList.contains("modal-open")}t.watch(()=>e.title,(V,A)=>{V!==A&&(s.value=V)}),t.watch(()=>e.modelValue,(V,A)=>{V!==A&&(o.value=V,o.value&&e.draggable&&t.nextTick(()=>{O.value&&!f.value&&(f.value=O.value.parentElement,j.value=f.value,q(D.value,O.value,j.value),$())}),V||(f.value&&(f.value=null),c())),o.value?C.value=Te():(T.value=!1,M.value=e.draggable)}),t.watch(()=>e.showHeader,(V,A)=>{V!==A&&(d.value=V)}),t.watch(()=>e.showButtons,(V,A)=>{V!==A&&(g.value=V)}),t.watch(()=>N.value,(V,A)=>{const W=V||{},U=A||{};JSON.stringify(W)!==JSON.stringify(U)&&n.emit("resize",{newSize:V,oldSize:A,isMaximized:T.value})}),t.watch([()=>e.width,()=>e.height],(V,A)=>{(V[0]!==A[0]||V[1]!==A[1])&&(a.value=V[0]||500,l.value=V[1]||600)}),t.watch(()=>e.class,(V,A)=>{r.value=V});const se=t.computed(()=>(o.value&&document.body.classList.add("modal-open"),o.value)),$e=t.computed(()=>{var W;const V={modal:!0,"farris-modal":!0,fade:!0,"fe-cmp-page-modal":!!e.showFloatingClose};V["f-modal-fitContent"]=!!h.value,V.show=!!se.value;const A=(W=e.maskClass)==null?void 0:W.split(" ");return A==null||A.reduce((U,ie)=>(U[ie]=!0,U),V),V}),ul=t.computed(()=>{var W;const V={"modal-dialog":!0},A=(W=r.value)==null?void 0:W.split(" ");return A==null||A.reduce((U,ie)=>(U[ie]=!0,U),V),V}),dl=()=>z.isMobilePhone()&&!e.isMessager||!!e.fullscreen,fl=t.computed(()=>{const V=document.documentElement.clientWidth,A=document.documentElement.clientHeight;if(T.value)return{position:"fixed",top:"0px",left:"0px",width:"100vw",height:"100vh",margin:"0"};const W=Math.min(a.value,V),U=e.position==="right"?"100%":h.value?"auto":`${Math.min(l.value,A-10)}px`,ie=`${(window.innerHeight-(U==="100%"||U==="auto"?0:parseInt(U)))/2}px`,Ol=e.position==="right"?`${window.innerWidth-W}px`:`${(window.innerWidth-W)/2}px`,Bt={position:"absolute",top:ie,left:Ol,width:z.isMobilePhone()?"auto":`${W}px`,height:U};return e.mask||(Bt.pointerEvents="auto"),Bt}),Vt=t.ref(z.getMaxZIndex()||1050),ml=t.computed(()=>{const V={display:"block",overflow:"hidden"};return e.mask||(V.pointerEvents="none",V.backgroundColor="transparent"),C.value&&(V.backgroundColor="transparent"),V.zIndex=Vt.value,V}),yl=t.computed(()=>({"modal-content":!0,"modal-content-has-header":d.value,"is-mobile":dl()})),pl=t.computed(()=>{const V={display:d.value?"":"none"};return V["pointer-events"]=M.value?"auto":"none",V}),hl=t.computed(()=>({"f-icon":!0,modal_maximize:!0,modalrevert:T.value})),gl=t.computed(()=>({"modal-body":!0,"f-utils-flex-column":x.value==="iframe","f-utils-fill":!0}));function bl(){return{height:`${e.footerHeight||60}px`}}const vl=t.computed(()=>{const V={textAlgin:S.value},A=bl();return Object.assign(V,A)});function ze(V){if(V==null||V.stopPropagation(),T.value){T.value=!1,H();return}P(),T.value=!0}async function xl(V,A){V.handle?await V.handle(A,V)&&n.emit("closed",A):n.emit("buttonClick",{button:V,$event:A})}function Cl(V){V.width&&(a.value=V.width),V.height&&(l.value=V.height),V.buttons&&(F.value=V.buttons),V.title&&(s.value=V.title)}let We=null,qe=null;t.onBeforeMount(()=>{C.value=Te()}),t.onMounted(()=>{O.value&&!f.value&&(f.value=O.value.parentElement,j.value=f.value,q(D.value,O.value,j.value)),se.value&&document.body.classList.add("modal-open"),We=Xt(e,n),qe=Kt(e,n)}),t.onUnmounted(()=>{R&&R(),We&&We.remove(),qe&&qe.remove()}),n.expose({modalElementRef:O,updateModalOptions:Cl,close:u,maxDialog:ze,isMaximized:T,disableButtons:(V,A=!0)=>{F.value.forEach(W=>{W.name&&V.includes(W.name)&&(W.disabled=A)})}});function wl(){return t.createVNode("div",{class:"action-wrapper",onClick:V=>u(V,!1)},[t.createVNode("span",{class:"close-icon"},[t.createVNode("i",{class:"f-icon f-icon-close"},null)])])}function kl(){return t.createVNode("ul",null,[p.value&&t.createVNode("li",{class:"f-btn-icon f-bare"},[t.createVNode("span",{class:"f-icon modal_minimize"},null)]),y.value&&t.createVNode("li",{onClick:ze,class:"f-btn-icon f-bare",style:"pointer-events: auto;"},[t.createVNode("span",{class:hl.value},null)]),v.value&&t.createVNode("li",{class:"f-btn-icon f-bare",onClick:V=>u(V,!1),style:"pointer-events: auto;"},[t.createVNode("span",{class:"f-icon modal_close"},null)])])}const Sl=V=>{V.preventDefault();const A=V.currentTarget,W=V.deltaY*.5;A.scrollLeft+=W};function Fl(){return t.createVNode("div",{class:"modal-footer",style:vl.value},[F.value&&t.createVNode("div",{class:"buttons",onWheel:Sl},[F.value.map(V=>{var U;const A=t.ref(V.disabled),W=V.class||((U=V.appearance)==null?void 0:U.class);return t.createVNode("button",{name:V.name,style:V.styles,type:"button",disabled:A.value,class:W+(V.iconClass?" btn-icontext":"")+(V.visible===!1?"d-none":""),onClick:ie=>{xl(V,ie)}},[!!V.iconClass&&t.createVNode("i",{class:V.iconClass},null),V.text])})])])}function Mt(V){y.value&&ze()}function Tl(){return t.createVNode(t.Fragment,null,[T.value&&t.createVNode("div",{class:"modal-header",style:"position: absolute;background: transparent;height: 45px;width: 100%;",onDblclick:V=>Mt()},null),t.createVNode("div",{ref:D,class:"modal-header",style:pl.value,onDblclick:V=>Mt()},[n.slots.headerTemplate?n.slots.headerTemplate():t.createVNode("div",{class:"modal-title"},[E.value&&t.createVNode("span",{class:m.value,style:"margin-right: 8px"},null),t.createVNode("span",{class:"modal-title-label"},[s.value])]),t.createVNode("div",{class:"actions"},[kl()])])])}function Nl(){return n.slots.footerTemplate?n.slots.footerTemplate():I.value&&Fl()}function Vl(V){if(V.stopPropagation(),e.allowClickMaskToClose){if(V.target!==w.value)return;u(V,!1)}}function Ml(){var V,A;return t.createVNode("div",{id:i.value,class:ul.value,style:fl.value,ref:O},[e.showFloatingClose&&wl(),t.createVNode("div",{class:yl.value},[d.value&&Tl(),t.createVNode("div",{class:gl.value},[(A=(V=n.slots).default)==null?void 0:A.call(V),x.value==="iframe"&&t.createVNode("iframe",{title:i.value,class:"f-utils-fill",width:"100%",frameborder:"0",src:k.value},null)]),Nl()]),!h.value&&O.value&&!T.value&&B(O.value)])}function Bl(V){return V||"body"}return t.watchEffect(()=>{se.value&&(Vt.value=z.getMaxZIndex()||1050)}),()=>t.createVNode(t.Teleport,{to:Bl(e.host)},{default:()=>[se.value&&t.createVNode(t.Transition,{name:"fade",appear:!0},{default:()=>[t.createVNode("div",{ref:w,class:$e.value,style:ml.value,onClick:Vl},[Ml()])]})]})}});function Ge(e){if(e.content&&e.content.render)return e.content.render;if(e.render&&typeof e.render=="function")return e.render}function Jt(e){const n=document.createElement("div");n.style.display="contents";const a=e.type||"modal",l=t.createApp({setup(o,i){t.onUnmounted(()=>{document.body.removeChild(n)});const r=t.ref(),h=t.ref(e.class||""),d=t.ref(!0),m=t.ref(e.title||""),v=Ge(e),y=e.closedCallback||(c=>{}),p=c=>{d.value=!1,l.unmount(),y(c)};if(i.expose({ref:r}),a==="drawer")return()=>t.createVNode(Ne,{ref:r,modelValue:d.value,"onUpdate:modelValue":c=>d.value=c,id:"modal-service-drawer",title:m.value,width:e.width,height:e.height,position:e.position,backgroundColor:e.backgroundColor,host:e.host,showMask:e.showMask,allowClickMaskToClose:e.allowClickMaskToClose,transparent:e.transparent,showHeader:e.showHeader,showFooter:e.showButtons,buttons:e.buttons,beforeClose:e.beforeClose,customClass:h.value,onAfterClose:p},{default:()=>[v&&v(l)]});const x=t.ref(!!e.showButtons),k=t.ref(!!e.showHeader),S=t.ref(e.showCloseButton==null?!0:e.showCloseButton),g=t.ref(!!e.showFloatingClose),s=e.acceptCallback||(()=>{}),f=e.rejectCallback||(()=>{}),w=e.resizeHandle||(c=>{}),C=e.stopMoveHandle||(c=>{});return()=>t.createVNode(ce,{ref:r,class:h.value,modelValue:d.value,"onUpdate:modelValue":c=>d.value=c,title:m.value,width:e.width,height:e.height,buttons:e.buttons,"show-header":k.value,"show-buttons":x.value,"show-close-button":S.value,"show-max-button":!1,showFloatingClose:g.value,onAccept:s,onCancel:f,fitContent:e.fitContent==null?!0:e.fitContent,onClosed:p,onResize:w,onStopMove:C},{default:()=>[v&&v(l)]})}});return document.body.appendChild(n),l.use(G.LocaleService.i18n),l.mount(n),l}class _e{constructor(n){Q(this,"appContext",null);Q(this,"modalRef",t.ref());Q(this,"activeModalIndex",t.ref(0));Q(this,"modalRefs",{});Q(this,"isUseEscCloseModal",t.ref(!1));this.app=n,this.appContext=n?n._context:null}getCurrentModal(){return this.modalRefs[this.activeModalIndex.value]}adaptToWindow(n,a){const{width:l,height:o}={width:window.innerWidth,height:window.innerHeight};return l<n&&(n=l-14),o<a&&(a=o-14),{width:n,height:a}}static show(n){const a=Object.assign({title:"",showButtons:!0,showHeader:!0},n);return Jt(a)}close(n){var a,l;n?(l=n.value)==null||l.close():(a=this.getCurrentModal())==null||a.close()}open(n){const a=document.createDocumentFragment(),l=n.type||"modal";n.showMaxButton&&n.fitContent&&(n.showMaxButton=!1);const o=t.shallowRef(Object.assign({title:"",showButtons:!0,showHeader:!0,maximized:!1},n)),i=t.ref(!0),r=Ge(o.value),h=o.value.closedCallback||((s,f)=>{}),d=o.value.openedCallback||(s=>{});let m;const v=s=>{var w;i.value=!1;const f=(w=s==null?void 0:s.target)==null?void 0:w.classList.contains("modal_close");h(s,this.isUseEscCloseModal.value?"esc":f?"icon":"button")},y=s=>{v(s),m&&t.nextTick(()=>{if(this.modalRefs[this.activeModalIndex.value]&&delete this.modalRefs[this.activeModalIndex.value],t.render(null,a),m=null,this.modalRef.value=null,this.modalRefs){const f=Object.keys(this.modalRefs).map(w=>Number(w));f.length>0?this.activeModalIndex.value=Math.max(...f):this.activeModalIndex.value=0,this.modalRefs[this.activeModalIndex.value]&&(this.modalRef.value=this.modalRefs[this.activeModalIndex.value])}this.isUseEscCloseModal.value=!1})},p=t.ref();let x;if(l==="drawer")x=()=>t.createVNode(Ne,t.mergeProps({ref:p,modelValue:i.value,"onUpdate:modelValue":s=>i.value=s,id:"modal-service-drawer"},o.value,{onAfterClose:y}),{default:()=>[r&&r(this.app)]});else{const s=o.value.acceptCallback||(()=>{}),f=o.value.rejectCallback||(()=>{}),w=o.value.resizeHandle||(E=>{}),C=n.stopMoveHandle||(E=>{}),c=E=>{var I;this.isUseEscCloseModal.value=!0,(I=this.getCurrentModal())==null||I.close(E==null?void 0:E.event)},{width:u,height:b}=o.value,F=this.adaptToWindow(Number(u)||500,Number(b)||320);Object.assign(o.value,F),x=()=>t.createVNode(ce,t.mergeProps({ref:p,modelValue:i.value,"onUpdate:modelValue":E=>i.value=E},o.value,{isMessager:o.value.class&&o.value.class.indexOf("modal-message")>-1,onAccept:s,onCancel:f,onClosed:y,onResize:w,onEsc:c,onStopMove:C,maximized:o.value.maximized}),{default:()=>[r&&r(this.app)]})}m=(s=>{const f=t.h(x,s);return f.appContext=this.appContext,t.render(f,a),f})({...o.value}),this.activeModalIndex.value++;const S=this.activeModalIndex.value;this.modalRefs[S]=p.value;const g=s=>{o.value={...o.value,...s},m&&t.render(t.cloneVNode(m,{...o}),a)};return t.nextTick(()=>{this.modalRefs[S]=p.value,this.modalRef.value=p.value,d(new Event("opened"))}),{update:g,destroy:y,modalRef:p,close:()=>{var s;(s=p.value)==null||s.close()},disableButtons:(s,f=!0)=>{var w,C;(C=(w=p.value)==null?void 0:w.disableButtons)==null||C.call(w,s,f)}}}}const ue=Symbol("FModalService");ce.install=e=>{e.component(ce.name,ce);const n=new _e(e);e.provide(ue,n),e.provide("FModalService",n)};function Xe(e,n){function a(){const l=e.beforeOpen||e.beforeClickButton||null;let o=Promise.resolve(!0);if(l){const i=l(n.value);if(typeof i>"u")return o;typeof i=="boolean"?o=Promise.resolve(i):o=i}return o}return{judgeCanOpen:a}}function Zt(e,n,a,l,o){const i=t.ref(e.buttonBehavior),r=t.ref(e.popupOnInput),h=t.computed(()=>({"input-group-append":!0,"append-force-show":e.showButtonWhenDisabled&&(e.readonly||e.disable)})),{judgeCanOpen:d}=Xe(e,o),m=t.computed(()=>e.showButtonWhenDisabled||(!e.editable||!e.readonly)&&!e.disable),v=t.inject(ue,null),y=t.ref();async function p(S){if(await d()&&m.value){const g=!!n.slots.default;if(i.value==="Modal"){const s=e.modalOptions,f=v==null?void 0:v.open({...s,render:()=>n.slots.default&&n.slots.default()});y.value=f==null?void 0:f.modalRef}i.value==="Overlay"&&Ut.show({host:document.body,backgroundColor:"rgba(0,0,0,.15)",render:()=>n.slots.default&&n.slots.default()}),g&&i.value==="Popup"&&l.togglePopup(!0),g&&r.value&&l.hidePopup(),n.emit("clickButton",{origin:S,value:e.modelValue})}}function x(S){n.emit("mouseEnterIcon",S)}function k(S){n.emit("mouseLeaveIcon",S)}return{buttonGroupClass:h,onClickButton:p,onMouseEnterButton:x,onMouseLeaveButton:k,modalRef:y}}function Qt(e,n,a,l,o,i){const r=t.ref(!1),h=t.computed(()=>e.enableClear&&!e.readonly&&!e.disable&&!z.isMobilePhone()),{changeTextBoxValue:d,hasClearClass:m}=i,v=t.ref(!1);function y(g){r.value=g,m.value=g}const p=t.computed(()=>h.value&&!!(o!=null&&o.value)&&v.value);t.watch(o,()=>{y(p.value)});function x(g){const s=!e.readonly&&!e.disable&&e.editable,f=!e.editable;g==null||g.stopPropagation(),(s||f)&&(d(""),o.value="",y(!r.value),n.emit("clear"))}function k(g){if(v.value=!0,!!h.value){if(!a.value){y(!1);return}!e.disable&&!e.readonly&&y(!0)}}function S(g){v.value=!1,h.value&&y(!1)}return{enableClearButton:h,showClearButton:r,onClearValue:x,onMouseEnterTextBox:k,onMouseLeaveTextBox:S}}function en(e,n,a,l,o){const i=t.computed(()=>e.popupOnInput),r=t.computed(()=>e.popupOnFocus),{shouldPopupContent:h,closeAllPopover:d}=o,m=t.ref(!1),v=t.computed(()=>e.enableTitle?a.value:""),y=t.computed(()=>(e.disable||e.readonly)&&!e.forcePlaceholder?"":e.placeholder),p=t.computed(()=>e.readonly||!e.editable||z.isMobilePhone()),x=t.ref(!1),k=t.computed(()=>!e.disable&&x.value),S=t.computed(()=>({"text-left":e.textAlign==="left","text-center":e.textAlign==="center","text-right":e.textAlign==="right","form-control":!0,"f-utils-fill":!0})),g=t.computed(()=>({"input-group":!0,"f-state-disabled":e.disable,"f-state-editable":e.editable&&!e.disable&&!e.readonly,"f-state-readonly":e.readonly,"f-state-focus":k.value,"input-group--has-clear":e.enableClear&&m.value}));function s(D,O=!0){a.value=D,O&&(n.emit("change",D),n.emit("update:modelValue",D))}function f(D){h.value=!1,s(D,!0)}t.watch(()=>e.modelValue,D=>{a.value=D});function w(D){x.value=!1,n.emit("blur",D),D.stopPropagation()}function C(D){n.emit("click",D),d(),n.slots.default&&!e.disable&&!e.readonly&&e.popupOnClick&&o.togglePopup()}function c(D){!e.disable&&!e.readonly&&(x.value=!0,p.value||(n.emit("focus",D),r.value&&!h.value&&o.popup()))}function u(D){n.emit("input",D);const O=D.target.value;l.value=O,a.value!==O&&s(O,e.updateOn==="change"),i.value&&!h.value&&o.popup()}function b(D){D.target.tagName!=="INPUT"&&D.preventDefault(),D.stopPropagation()}function F(D){n.emit("keydown",D)}function E(D){D.key==="Enter"&&(i.value||r.value)&&o.hidePopup(),n.emit("keyup",D)}function I(D){const O=D.target.value;D.stopPropagation(),s(O)}return{hasFocusedTextBox:k,isTextBoxReadonly:p,textBoxClass:S,textBoxPlaceholder:y,textBoxTitle:v,inputGroupClass:g,hasClearClass:m,changeTextBoxValue:s,commitValue:f,onBlurTextBox:w,onClickTextBox:C,onFocusTextBox:c,onInput:u,onKeyDownTextBox:F,onKeyUpTextBox:E,onMouseDownTextBox:b,onTextBoxValueChange:I}}const ae="FarrisVue_PopoverInstancesKey";function tn(e,n,a,l){const o=t.ref(),i=t.ref(!1),{judgeCanOpen:r}=Xe(e,l);t.watch(()=>o.value,(x,k)=>{window[ae]=window[ae]||new WeakMap,x?window[ae].set(a.value,x):window[ae].delete(a.value)});function h(){if(window[ae]){const x=window[ae];document.querySelectorAll(".f-button-edit,.v-popover").forEach(k=>{const S=x.get(k);S&&k!==a.value&&!a.value.closest(".popover-fitcontent")&&S.hide()})}}function d(){const x=o.value;x&&(x.show?x.show(a.value):x.open&&x.open(a.value))}async function m(x=!1){if(!!n.slots.default){if(!x&&!i.value&&!await r())return;i.value=!i.value,i.value&&(await t.nextTick(),d())}}async function v(x=!1){if(!!n.slots.default){if(!x&&!await r())return;i.value=!0,await t.nextTick(),d()}}function y(){i.value=!1}function p(){i.value=!0,t.nextTick(()=>{d()})}return{hidePopup:y,showPopup:p,popup:v,shouldPopupContent:i,togglePopup:m,popoverRef:o,closeAllPopover:h}}function nn(e,n,a){const l=t.ref(),{isTextBoxReadonly:o,textBoxClass:i,textBoxPlaceholder:r,textBoxTitle:h,onBlurTextBox:d,onClickTextBox:m,onFocusTextBox:v,onInput:y,onKeyDownTextBox:p,onKeyUpTextBox:x,onMouseDownTextBox:k,onTextBoxValueChange:S}=a,g=t.ref(e.id),{uuid:s}=z.useGuid(),f=t.computed(()=>({}));t.onMounted(()=>{var b,F;e.selectOnCreated&&((b=l.value)==null||b.select()),e.focusOnCreated&&((F=l.value)==null||F.focus({preventScroll:!0})),g.value||(g.value="button-edit_"+s(8)),g.value=g.value+"-textbox"});const w=t.ref(!1),C=b=>{b.preventDefault(),w.value=!0},c=b=>{b.preventDefault(),w.value=!1,y(b)};function u(b){w.value||y(b)}return()=>t.createVNode("input",{id:e.id?e.id+"-textbox":void 0,ref:l,name:"input-group-value",autocomplete:e.autoComplete?"on":"off",class:i.value,style:f.value,disabled:e.disable,maxlength:e.maxLength,minlength:e.minLength,placeholder:r.value,readonly:o.value,tabindex:e.tabIndex,title:h.value,type:e.inputType,value:n.value,onBlur:d,onChange:S,onClick:m,onFocus:v,onInput:u,onKeydown:p,onKeyup:x,onMousedown:k,onCompositionend:c,onCompositionstart:C},null)}function an(e,n,a){const l=t.ref(e.separator),o=t.computed(()=>e.readonly||e.disable),{changeTextBoxValue:i,onFocusTextBox:r,onBlurTextBox:h,onClickTextBox:d,textBoxPlaceholder:m}=a,v=t.computed(()=>n.value?n.value.split(l.value).map(k=>({name:k,selectable:!0})):[]);function y(k){i(k.map(S=>S.name).join(l.value),!0)}t.watch(()=>e.separator,k=>{l.value=k});const p=t.ref(!e.disable&&!e.readonly);t.watch([()=>e.disable,()=>e.readonly],([k,S],[g,s])=>{p.value=!k&&!S});function x(k){d(k)}return()=>t.createVNode(Et,{tabindex:e.tabIndex,onFocus:r,onBlur:h,id:`${e.id}-tag-editor`,class:"form-control",placeholder:m.value,data:v.value,showClose:!o.value,showInput:!0,disable:o.value,onChange:y,onClick:x},null)}function ln(e,n,a,l){const{buttonGroupClass:o,onClickButton:i,onMouseEnterButton:r,onMouseLeaveButton:h}=a,{enableClearButton:d,showClearButton:m,onClearValue:v}=l,y=t.ref(),p=X.debounce(S=>{i(S)},e.buttonBehavior==="Modal"?0:200),x=()=>{n.emit("beforeClearValue")},{renderExpandContent:k}=Dt.useInputExpand(e,n);return{renderButtonGroup:()=>t.createVNode(t.Fragment,null,[t.createVNode("div",{id:e.id?`${e.id}-button-group`:void 0,class:o.value},[d.value&&t.withDirectives(t.createVNode("span",{class:"input-group-text input-group-clear",onClick:v,onMousedown:x},[t.createVNode("i",{class:"f-icon modal_close"},null)]),[[t.vShow,m.value]]),n.slots.buttonContent?t.createVNode("span",{class:"input-group-text input-group-append-button",onClick:p,onMouseenter:r,onMouseleave:h},[n.slots.buttonContent()]):e.buttonContent?t.createVNode("span",{class:"input-group-text input-group-append-button",innerHTML:e.buttonContent,ref:y,onClick:S=>p(S),onMouseenter:r,onMouseleave:h},null):null]),k()]),buttonHandleElement:y}}function on(e,n,a){const l=t.ref(e.popupMinWidth),{hidePopup:o,popoverRef:i}=a,r=()=>{n.emit("shown")},h=()=>{o(),n.emit("hidden")};return()=>z.isMobilePhone()?t.createVNode(Ne,{id:`${e.id}-drawer`,ref:i,position:e.placement,width:"auto",height:"auto",host:e.popupHost,showHeader:!1,showFooter:!1,customClass:"f-drawer--no-padding","onUpdate:modelValue":d=>d?r():h()},{default:()=>{var d,m;return[t.createTextVNode(" "),(m=(d=n.slots).default)==null?void 0:m.call(d),t.createTextVNode(" ")]}}):t.createVNode(Pt,{id:`${e.id}-popover`,ref:i,placement:e.placement,host:e.popupHost,"keep-width-with-reference":e.keepWidthWithReference,fitContent:!0,"right-boundary":e.popupRightBoundary,minWidth:l.value,class:e.popupClass,offsetX:e.popupOffsetX,offsetY:e.popupOffsetY,onHidden:h,onShown:r,beforeClose:e.beforeClosePopup,limitContentBySpace:e.limitContentBySpace},{default:()=>{var d,m;return[(m=(d=n.slots).default)==null?void 0:m.call(d)]}})}const ge=t.defineComponent({name:"FButtonEdit",props:At,emits:["updateExtendInfo","clear","change","click","clickButton","blur","focus","mouseEnterIcon","mouseLeaveIcon","keyup","keydown","inputClick","input","update:modelValue","beforeClearValue","expandClick","hidden","shown"],setup(e,n){const a=t.ref(),l=t.ref(e.customClass),o=t.ref(e.modelValue),i=tn(e,n,a,o),{shouldPopupContent:r,hidePopup:h,showPopup:d,togglePopup:m}=i,v=Zt(e,n,a,i,o),y=t.ref(""),p=en(e,n,o,y,i),{hasFocusedTextBox:x,commitValue:k,inputGroupClass:S,changeTextBoxValue:g}=p,s=Qt(e,n,o,x,y,p),{onMouseEnterTextBox:f,onMouseLeaveTextBox:w}=s,C=t.ref(!1),c=t.computed(()=>{const N={"f-button-edit":!0,"f-cmp-inputgroup":!0,"f-button-edit-nowrap":!e.wrapText};return l.value&&l.value.split(" ").reduce((M,R)=>(M[R]=!0,M),N),N}),u=t.computed(()=>({overflow:e.wrapText?"hidden":""})),b=t.computed(()=>({})),F=t.ref(e.showAppendButton);function E(){if(!e.multiSelect||e.inputType!=="tag"||!a.value)return 0;let N=0;const M=Array.from(a.value.querySelectorAll(".farris-tag-item"));return M&&M.length&&(N=M.map(R=>R.offsetTop).filter(R=>R>20).length),N}const I=t.ref(E());t.onUpdated(()=>{I.value=E()});function D(){return e.multiSelect&&e.inputType==="tag"?()=>t.createVNode(t.Fragment,null,[an(e,o,p)(),!!I.value&&t.createVNode("div",{class:"d-flex flex-row mr-2 more-tags","more-tags":!0},[t.createVNode("span",{class:"multi--more-text"},[t.createTextVNode("+"),I.value])])]):nn(e,o,p)}let O=D();t.watch([()=>e.multiSelect,()=>e.inputType],()=>{O=D()});const{renderButtonGroup:T,buttonHandleElement:B}=ln(e,n,v,s),P=on(e,n,i),H=t.ref(r.value),j={displayText:y,commitValue:k,elementRef:a,hidePopup:h,showPopup:d,popoverRef:i.popoverRef,shouldPopupContent:r,togglePopup:m,openDialog:()=>{B.value&&e.buttonBehavior==="Modal"&&B.value.click(),n.slots.content&&X.debounce(()=>{v.onClickButton(null)},e.buttonBehavior==="Modal"?0:200)()},getModal:()=>{var N;return e.buttonBehavior==="Modal"?(N=v.modalRef.value)==null?void 0:N.value:null},getTextbox:()=>{var N;return(N=a.value)==null?void 0:N.querySelector("input")},forceClosePopup:()=>{H.value=!1,C.value=!0,r.value=!1},clear:()=>{g(""),y.value=""},setText:N=>{g(N,!1),y.value=N}};return t.onMounted(()=>{a.value.componentInstance=j,window.onresize=()=>{document.body.click()}}),t.onBeforeUnmount(()=>{var N;window.onresize=null,(N=window[ae])==null||N.delete(a.value)}),n.expose(j),t.watch(()=>r.value,async(N,M)=>{if(C.value){H.value=N,C.value=!1;return}if(!N&&e.beforeClosePopup&&typeof e.beforeClosePopup=="function"){try{const R=await e.beforeClosePopup();H.value=!R,(!R||e.readonly)&&(r.value=!0)}catch(R){console.error("Error in beforeClosePopup:",R),H.value=M,r.value=M}return}H.value=N}),()=>{var N,M;return t.createVNode(t.Fragment,null,[t.createVNode("div",t.mergeProps(n.attrs,{ref:a,class:c.value,id:e.id?e.id:void 0,style:u.value}),[t.createVNode("div",{id:e.id?`${e.id}-input-group`:void 0,class:S.value,style:b.value,onMouseenter:f,onMouseleave:w},[(M=(N=n.slots).precontent)==null?void 0:M.call(N),n.slots.content?n.slots.content():O(),n.slots.content?null:F.value&&T()])]),H.value&&P()])}}}),rn={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/field-selector.schema.json",title:"field-selector",description:"A Farris Input Component",type:"object",properties:{disabled:{description:"",type:"boolean",default:!1},readonly:{description:"",type:"boolean",default:!1},modelValue:{description:"",type:"string",default:""},repositoryToken:{description:"",type:"object",default:null},fields:{description:"",type:"array",default:null},editorParams:{type:"object",default:null},displayText:{description:"",type:"string",default:""},enableClear:{description:"",type:"boolean",default:!0},beforeOpen:{description:"",type:"function",default:null},onSubmitModal:{description:"",type:"function",default:null},editorType:{description:"",type:"string",default:"filter"},enableExpression:{description:"",type:"boolean",default:!1},expressionOptions:{description:"",type:"object",default:null},formContextData:{description:"",type:"object",default:{}},singleValue:{description:"",type:"boolean",default:!0},idField:{description:"",type:"string",default:"id"},textField:{type:"string",default:""},valueField:{type:"string",default:""},editable:{type:"boolean",default:!0},enableTitle:{type:"boolean",default:!0}}},Ve={disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},enableClear:{type:Boolean,default:!0},displayText:{type:String,default:""},enableExpression:{type:Boolean,default:!1},modelValue:{type:String,default:""},insertType:{type:String,default:"below"},fields:{type:Array,default:[]},repositoryToken:{type:Object,default:null},editorParams:{type:Object,default:null},onSubmitModal:{type:Function,default:null},beforeOpen:{type:Function,default:null},editorType:{type:String,default:"filter"},expressionOptions:{type:Object,default:null},formContextData:{type:Object,default:{}},singleValue:{type:Boolean,default:!0},idField:{type:String,default:"id"},textField:{type:String,default:""},valueField:{type:String,default:""},editable:{type:Boolean,default:!0},enableTitle:{type:Boolean,default:!0},disableConfirmWhenUnchanged:{type:Boolean,default:!1},compareOperators:{type:Array,default:[]},enableSearch:{type:Boolean,default:!1}},Ke=K.createPropsResolver(Ve,rn),Je={conditions:{type:Array,default:[]},fields:{type:Array,default:[]},activeIndex:{type:Number,default:-1},formatter:{type:Function,default:(e,n)=>`${n.raw.name} [${n.raw.path}]`},enableExpression:{type:Boolean,default:!1},expressionOptions:{type:Object,default:null},formContextData:{type:Object,default:{}},singleValue:{type:Boolean,default:!0},idField:{type:String,default:"id"},textField:{type:String,default:""},valueField:{type:String,default:""},compareOperators:{type:Array,default:[]},enableSearch:{type:Boolean,default:!1}},Ze=new Map([["appearance",K.resolveAppearance]]),Qe={$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"},beforeHide:{description:"关闭下拉面板前回调",type:"string"},onShown:{description:"面板打开事件",type:"string"},onHidden:{description:"面板关闭事件",type:"string"},onChange:{description:"值变化事件",type:"string",default:""},onInput:{description:"输入事件",type:"string",default:""},onClear:{description:"清空事件",type:"string",default:""},onDataChanged:{description:"清空事件",type:"string",default:""},hideDisabledItems:{description:"隐藏禁用项",type:"boolean",default:!1},expandable:{description:"",type:"boolean",default:!1},expandMode:{description:"",type:"string",default:"text"},expandContent:{description:"",type:"string",default:""},expandDisabled:{description:"",type:"boolean",default:!1},onExpandClick:{description:"",type:"string",default:""},showSelectAll:{description:"",type:"boolean",default:!1}},required:["type"],ignore:["id","appearance","binding","visible"],events:{onClear:"清空事件",onShown:"面板打开事件",onHidden:"面板关闭事件",onChange:"值变化事件",beforeOpen:"打开面板前事件",beforeHide:"关闭面板前事件"}};function et(e,n,a){return n}function sn(){function e(n,a,l){const o={};return o.beforeOpen=i=>a.call("beforeOpen",n,[i,n],l),o}return{resolve:e}}const be={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},showSelectAll:{type:Boolean,default:!1},modelValue:{type:String,default:""},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},expandable:{type:Boolean,default:!1},expandMode:{type:String,default:"text"},expandContent:{type:String,default:""},expandDisabled:{type:Boolean,default:!1},popupClass:{type:String,default:""},hideDisabledItems:{type:Boolean,default:!1}},cn=Object.assign({},be,{readonly:{}});K.createPropsResolver(be,Qe,Ze,et);const tt=K.getPropsResolverGenerator(be,Qe,Ze,et),un=sn(),dn={dataSource:{type:Array,default:[]},enableSearch:{type:Boolean,default:!1},idField:{type:String,default:"id"},multiSelect:{type:Boolean,default:!1},showSelectAll:{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}},fn=t.defineComponent({name:"FComboListContainer",props:dn,emits:["selectionChange"],setup(e,n){const a=t.ref(),l=t.ref(e.dataSource),o=t.ref(e.dataSource),i=t.ref([]),r=t.ref(e.separator),h=t.ref(e.width),d=t.ref(e.maxHeight),m=t.computed(()=>e.multiSelect),v=t.ref(e.multiSelect?String(e.selectedValues).split(r.value):[e.selectedValues]),y=t.computed(()=>({enableSelectRow:!0,multiSelect:e.multiSelect,multiSelectMode:"OnCheckAndClick",showCheckbox:m.value,showSelectAll:e.showSelectAll,showSelection:!0}));t.watch(e.dataSource,()=>{l.value=e.dataSource,o.value=e.dataSource}),t.computed(()=>e.enableSearch?"SearchBar":"ContentHeader");const p=t.computed(()=>{const s={};return h.value!==void 0&&(s.width=`${h.value}px`),d.value!==void 0&&d.value>0&&(s.maxHeight=`${d.value}px`),s});function x(s){a.value.search(s)}function k(s){i.value=s.map(f=>Object.assign({},f)),v.value=s.map(f=>f[e.idField]),n.emit("selectionChange",i.value)}function S(s){if(e.enableHighlightSearch)return;let f=[];const{searchOption:w}=e;typeof w=="function"?f=l.value.filter(C=>w(s,C)):f=l.value.filter(C=>C[e.valueField].indexOf(s)>-1||C[e.textField].indexOf(s)>-1),a.value.updateDataSource(f)}t.watch([()=>e.selectedValues],([s])=>{e.multiSelect?s===null?v.value=[]:v.value=String(s).split(r.value):s===null?v.value=[]:v.value=[s]});function g(s){a.value.activeRowById(s)}return t.onMounted(()=>{var s,f;if(!e.multiSelect){const w=(s=v.value)==null?void 0:s[0];let C=w;const c=l.value.map(u=>u[e.valueField||e.idField]);if(!X.isUndefined(w)&&c.includes(w)){const u=typeof w,b=typeof((f=l.value[0])==null?void 0:f[e.valueField||e.idField]);b==="number"&&u!==b&&(C=Number(w)),b==="boolean"&&u!==b&&(C=w==="true"?!0:w==="false"?!1:w),g(C)}}}),n.expose({search:x,activeRowById:g}),()=>t.createVNode("div",{class:"f-combo-list-container",style:p.value},[t.createVNode(It,{ref:a,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:y.value,enableHighlightSearch:e.enableHighlightSearch,selectionValues:v.value,onSelectionUpdate:k,onAfterSearch:S},null)])}}),nt={property:"all",duration:.3,timingFunction:"cubic-bezier(0.17, 0.89, 0.45, 1)",delay:0},mn=(e,n)=>{const a=e.lineHeight/2,l=z.useTouchMomentum({maxOverflowY:44}),o=t.reactive({...nt}),i=C=>{n.emit("change",C)},r=t.reactive({value:0,max:0,min:0,start:0,index:0,currentItem:void 0,active:!1}),h=()=>{r.max=e.visiableOptionCount/2*e.lineHeight;const C=e.column.length*e.lineHeight;r.min=r.max-C+e.lineHeight},d=(C=0)=>{h(),r.index=C,r.value=r.max-C*e.lineHeight,r.currentItem=e.column[C]},m=C=>{const c=e.column.length-1,u=Math.min(r.index,c),b=e.column.findIndex(F=>F[e.valueField]===C);return b>=0?b:u},v=C=>{const c=e.column.length-1;return r.index>c?e.column[c]:e.column[C]},y=C=>{C&&(r.currentItem=C,o.duration=0);const c=r.currentItem[e.valueField],u=m(c),b=v(r.index)[e.valueField];d(u),c!==b&&setTimeout(()=>{i(r.currentItem)},o.duration*1e3)},p=()=>{const C=Array.isArray(e.value)?e.value[0]:e.value;d(m(C))};p(),t.watch(()=>e.value,()=>{e.multiSelect||p()}),t.watch(()=>e.column,()=>y());const x=(C,c=r.max,u=r.min)=>{const b=r.start+C;r.value=b>a?Math.min(b,c):Math.max(b,u),r.index=Math.round((r.max-r.value)/e.lineHeight),r.currentItem=v(r.index)},k=z.useTouch(),S=C=>{k.start(C),r.active=!0,r.start=r.value,l.start(r.start),o.duration=0},g=C=>{C.preventDefault(),k.move(C),x(k.deltaY.value,r.max+e.lineHeight,r.min-e.lineHeight),l.move(k.deltaY.value),o.duration=nt.duration},s=C=>{const c=C<0,u=C%e.lineHeight>a?1:0,b=Math.floor(C/e.lineHeight);return(c?b-u:b+u)*e.lineHeight+a};return{translateY:r,transition:o,onTouchStart:S,onTouchMove:g,onTouchEnd:()=>{r.start=0;const C=l.end();let c=0;if(C){const{destination:u,duration:b}=l.get(r.value,r.min,r.max);c=u,o.duration=b/1e3}else c=r.value;x(s(c)),i(r.currentItem)},onTransitionend:()=>{r.active=!1},updateTranslate:y}},yn={column:{type:Array,default:()=>[]},valueField:{type:String,default:"value"},textField:{type:String,default:"text"},value:{type:[Array,String,Number],default:()=>[]},multiSelect:{type:Boolean,default:!1},showIcon:{type:Boolean,default:!1},lineHeight:{type:Number,default:0},visiableOptionCount:{type:Number,default:5}},pn=t.defineComponent({props:yn,emits:["change","click"],setup(e,n){const{addUnit:a}=z.useCommonUtils(),{bem:l}=z.useBem("FComboTouchList"),{translateY:o,transition:i,onTouchStart:r,onTouchMove:h,onTouchEnd:d,onTransitionend:m}=mn(e,n),v=x=>{n.emit("click",x)},y=t.computed(()=>({transform:`translateY(${a(o.value)})`,transition:`all ${o.active?i.duration:0}s ${i.timingFunction} 0s`})),p=x=>e.showIcon?Array.isArray(e.value)&&e.value.includes(x[e.valueField]):!1;return()=>t.createVNode("div",{class:l("column"),style:y.value,onTouchstart:r,onTouchmove:h,onTouchend:d,onTransitionend:m},[e.column.map(x=>t.createVNode("div",{class:l("column-item"),onClick:()=>v(x)},[t.createVNode("span",null,[x[e.textField]]),p(x)&&t.createVNode("span",{class:`f-icon f-icon-check ${l("column-item-icon")}`},null)]))])}}),hn={modelValue:{type:[String,Array],default:""},columns:{type:Array,default:()=>[]},title:{type:String,default:""},valueField:{type:String,default:"value"},textField:{type:String,default:"text"},childrenField:{type:String,default:"children"},multiSelect:{type:Boolean,default:!1},lineHeight:{type:Number,default:44},cancelText:{type:String,default:"取消"},confirmText:{type:String,default:"确定"},optionFormatter:{type:Function,default:void 0},visiableOptionCount:{type:Number,default:5},showToolbar:{type:Boolean,default:!0},separator:{type:String,default:","}},gn=(e,n)=>{const{finalValue:a,initValue:l,setSelectedByIndex:o,getSelectedValueByIndex:i}=n,{isArray:r,isFunction:h,isObject:d}=z.useCommonUtils(),m=c=>c&&c[0],v=t.computed(()=>{var c;return((c=e.columns)==null?void 0:c.length)>0&&r(e.columns[0])}),y=c=>{if((c==null?void 0:c.length)===0)return!1;const u=m(c);return u&&r(u[e.childrenField])},p=(c,u)=>{const b=m(c),F=i(u);let E=c.find(D=>D[e.valueField]===F);E=E||b;const I=E[e.childrenField]||[];if(y(I)){const D=p(I,u+1);return[I,...D]}return[I]},x=()=>{const c=e.columns,u=p(c,0);return[c,...u]},k=(c,u)=>{const b=c[e.textField];return h(e.optionFormatter)?e.optionFormatter(u,c):b},S=(c,u)=>c.map(b=>{const F=d(b)?b:{[e.valueField]:b,[e.textField]:b};return F[e.textField]=k(F,u),F}),g=t.computed(()=>{let c=[];return v.value?c=e.columns:y(e.columns)?c=x():c=[e.columns],c.map(S)}),s=()=>g.value.map((c,u)=>{const b=a.value[u];return c.find(E=>E[e.valueField]===b)}).filter(c=>c),f=()=>s().map(c=>c[e.valueField]),w=()=>s().map(c=>c[e.textField]).join("-"),C=()=>{g.value.forEach((c,u)=>{if(e.multiSelect)a.value[u].forEach(F=>{const E=c.find(I=>I[e.valueField]===F);E&&o(u,E)});else{const b=a.value[u],F=c.find(E=>E[e.valueField]===b);F?o(u,F):o(u,m(c))}})};return t.watch(()=>e.modelValue,()=>{l(e.modelValue),C()},{immediate:!0}),{columns:g,getPickeds:s,getValue:f,getTextValue:w}},bn=e=>{const{isArray:n,isMultiArray:a,isString:l,isDef:o}=z.useCommonUtils(),i=s=>{let f=[];return n(s)?f=s:l(s)?f=s.split(e.separator):o(s)&&(f=[s]),e.multiSelect?a(f)?f:[f]:f},r=t.ref([]),h=s=>{r.value=i(s)},d=t.reactive([]),m=t.computed(()=>d.map(s=>s[e.valueField])),v=t.reactive([]),y=t.computed(()=>v.map(s=>s.map(f=>f[e.valueField])));return{finalValue:r,initValue:h,getSelected:()=>e.multiSelect?v:d,getSelectedValue:()=>e.multiSelect?y.value:m.value,setSelectedByIndex:(s,f)=>{if(e.multiSelect){const w=v[s]||[];w.includes(f)?v[s]=w.filter(C=>C!==f):v[s]=[...w,f]}else d[s]=f},getSelectedByIndex:s=>e.multiSelect?v[s]:d[s],getSelectedValueByIndex:s=>e.multiSelect?y.value[s]:m.value[s]}},vn=t.defineComponent({props:hn,emits:["change","confirm","cancel","update:modelValue"],setup(e,n){const{emit:a}=n,{addUnit:l}=z.useCommonUtils(),o=bn(e),{finalValue:i,getSelectedValue:r,getSelectedValueByIndex:h,getSelected:d,setSelectedByIndex:m}=o,{columns:v}=gn(e,o),y=(w,C=!0)=>{const{value:c,index:u}=w;(C&&!e.multiSelect||!C&&e.multiSelect)&&(a("change",w),m(u,c))},p=()=>{i.value=r(),a("confirm",d()),a("update:modelValue",i.value)},x=()=>{a("cancel")},{bem:k}=z.useBem("FComboTouchList"),S=()=>t.createVNode("div",{class:k("toolbar")},[t.createVNode("div",{class:k("toolbar-left"),onClick:x},[t.createVNode("span",null,[e.cancelText])]),t.createVNode("div",{class:k("toolbar-title")},[t.createVNode("span",null,[e.title])]),t.createVNode("div",{class:k("toolbar-right"),onClick:p},[t.createVNode("span",null,[e.confirmText])])]),g=t.computed(()=>{const w=(e.visiableOptionCount+1)*e.lineHeight;return{height:l(w)}}),s=t.computed(()=>{const w=e.visiableOptionCount*e.lineHeight/2;return{backgroundSize:`100% ${l(w)}`}}),f=()=>t.createVNode("div",{class:k("content")},[t.createVNode("div",{class:k("columns"),style:g.value},[v.value.map((w,C)=>t.createVNode(pn,{column:w,value:h(C),showIcon:e.multiSelect,textField:e.textField,multiSelect:e.multiSelect,valueField:e.valueField,lineHeight:e.lineHeight,visiableOptionCount:e.visiableOptionCount,onChange:c=>y({value:c,index:C}),onClick:c=>y({value:c,index:C},!1)},null)),!e.multiSelect&&t.createVNode("div",{class:k("mask"),style:s.value},null),t.createVNode("div",{class:k("frame")},null)])]);return()=>t.createVNode("div",{class:k("")},[e.showToolbar&&S(),f()])}});function xn(e,n){const a=t.ref(""),l=t.ref(e.modelValue),o=t.ref(e.data||[]),i=t.ref(e.editable),r=t.computed(()=>e.hideDisabledItems?o.value.filter(s=>!s.disabled):o.value);function h(s){const f=e.multiSelect?String(s).split(e.separator):[String(s)],w=f.map(u=>[u,!0]),C=new Map(w);return o.value.filter(u=>C.has(String(u[e.valueField]))).sort((u,b)=>{const F=f.indexOf(u[e.valueField]),E=f.indexOf(b[e.valueField]);return F-E})}function d(s){const f=h(s).map(w=>w[e.textField]).join(e.separator);a.value=i.value?f||s:f}function m(s){if(e.multiSelect){const f=s.split(e.separator).map(C=>[C,!0]),w=new Map(f);return o.value.filter(C=>w.has(C[e.textField]))}return o.value.filter(f=>""+f[e.textField]===s)}function v(s){const f={};return f[e.idField]=s,f[e.textField]=s,[f]}function y(s){let f=m(s);const w=f&&f.length>0;return i.value&&!w&&(f=v(s)),f}function p(){const{url:s,method:f="GET",headers:w={"Content-Type":"application/json;charset=utf-8;"},body:C=null}=e.remote;if(!s)return;const{basePath:c}=z.useFarrisConfig().value,u=f.toLowerCase()==="get"?{method:f,headers:w}:{method:f,headers:w,body:C};let b=!1;fetch(new Request(c+s,u)).then(F=>{var I,D;if(F.status===200)return b=!!((D=(I=F.headers)==null?void 0:I.get("content-type"))!=null&&D.includes("application/json")),b?F.text():F.json();throw F.status===405?new Error(G.LocaleService.getLocaleValue("comboList.remoteError")):new Error(F.statusText)}).then(F=>{F.length&&(o.value=b?JSON.parse(F):F,l.value&&d(l.value))}).catch(F=>{console.warn(F)})}e.remote&&(e.load?e.load().then(s=>{o.value=s}).catch(s=>{console.log(s)}):p()),t.watch(()=>e.data,()=>{o.value=e.data}),t.watch([o],([s],[f])=>{if(e.modelValue!=null&&!e.multiSelect){const w=s.find(C=>C[e.valueField]===l.value);w?w[e.valueField]!==l.value?(l.value=w[e.valueField],a.value=w[e.textField],n.emit("update:modelValue",w[e.valueField]),n.emit("change",[w],w[e.valueField])):a.value!==w[e.textField]&&(a.value=w[e.textField]):l.value!==""&&(l.value="",a.value="",n.emit("update:modelValue",""),n.emit("change",[],""))}}),t.watch(()=>e.modelValue,(s,f)=>{f!==s&&(l.value=s,d(s))});function x(s){o.value=s,n.emit("dataChanged",s)}function k(){return o.value}function S(){return a.value}async function g(){const s=typeof e.beforeOpen=="function";return!e.beforeOpen||!s?Promise.resolve(!0):Promise.resolve().then(()=>e.beforeOpen({instance:{updateDataSource:x,getData:k,getDisplayText:S}})).then(f=>typeof(f==null?void 0:f.canOpen)=="boolean"?f==null?void 0:f.canOpen:!0)}return d(e.modelValue),{dataSource:o,filteredDataSource:r,displayText:a,editable:i,modelValue:l,beforeOpenList:g,getItemsByDisplayText:m,getItemsByValue:h,getSelectedItemsByDisplayText:y}}const Cn=["moz","ms","webkit"];function wn(){let e=0;return n=>{const a=new Date().getTime(),l=Math.max(0,16-(a-e)),o=setTimeout(()=>{n(a+l)},l);return e=a+l,o}}function kn(){if(typeof window>"u")return()=>0;if(window.requestAnimationFrame)return window.requestAnimationFrame.bind(window);const e=Cn.filter(n=>`${n}RequestAnimationFrame`in window)[0];return e?window[`${e}RequestAnimationFrame`]:wn()}kn(),t.ref("");function de(){if(typeof window>"u"||typeof navigator>"u")return!1;const e=navigator.userAgent||navigator.vendor||window.opera,n=[/iPhone/i,/iPod/i,/Android.*Mobile/i,/webOS/i,/BlackBerry/i,/IEMobile/i,/Opera Mini/i,/Harmony/i],a=[/iPad/i,/Android(?!.*Mobile)/i,/Tablet/i,/PlayBook/i,/Kindle/i,/Silk/i];for(const d of a)if(d.test(e))return!1;for(const d of n)if(d.test(e))return!0;if(typeof screen>"u")return!1;const l="ontouchstart"in window||navigator.maxTouchPoints>0,o=screen.width,i=screen.height,r=Math.min(o,i);return!!(l&&r<=768)}function Sn(){const e=de();return e&&document.body.classList.add("f-mobile"),e}typeof document<"u"&&Sn();const le=t.defineComponent({name:"FComboList",props:be,emits:["clear","update:modelValue","change","input","dataChanged","expandClick","hidden","shown"],setup(e,n){const a=t.ref(),l=t.ref(),o=t.ref(e.disabled||e.readonly),i=t.ref(e.enableClear),r=t.ref(e.enableSearch),h=t.ref(e.readonly),{dataSource:d,displayText:m,editable:v,modelValue:y,filteredDataSource:p,getItemsByDisplayText:x,getItemsByValue:k,beforeOpenList:S}=xn(e,n),g=t.ref(e.dropDownIcon);g.value==='<span class="f-icon f-icon-arrow-chevron-down"></span>'&&(g.value='<span id="'+e.id+'-icon-dropdown" class="f-icon f-icon-arrow-chevron-down"></span>');const s=t.computed(()=>e.multiSelect),f=t.computed(()=>l.value?l.value.elementRef.getBoundingClientRect().width:0);function w(){!s.value&&l.value&&l.value.hidePopup()}function C(j){m.value=j.map(M=>M[e.textField]).join(e.separator)||y.value;let N="";j.length===1?N=j[0][e.valueField]:N=j.map(M=>M[e.valueField]).join(e.separator),y.value!==N&&(y.value=N,n.emit("update:modelValue",y.value),n.emit("change",j,y.value))}function c(){const j=k(y.value);C(j)}function u(){h.value||m.value}function b(j){var N;y.value="",(N=a.value)==null||N.activeRowById(""),n.emit("clear")}function F(j){var N,M;e.enableSearch&&e.enableHighlightSearch&&((N=a.value)==null||N.search(j)),(M=a.value)==null||M.activeRowById(j),n.emit("change",[y.value],y.value)}function E(j){if(e.multiSelect){const N=x(j);e.viewType;const R=N.map($=>$[e.idField||e.valueField]).join(e.separator);y.value!==R&&(y.value=R,n.emit("update:modelValue",y.value),n.emit("change",N,y.value))}else j!==y.value&&(y.value=j,n.emit("update:modelValue",y.value),n.emit("change",[],j))}function I(){return m.value}function D(j){const{value:N}=j.target;F(N),n.emit("input",N)}function O(){l.value.hidePopup()}function T(j){d.value=j}function B(){return d.value}const P={getDisplayText:I,hidePopup:O,updateDataSource:T,getData:B};n.expose(P),t.watch([()=>e.disabled,()=>e.editable,()=>e.enableClear,()=>e.enableSearch,()=>e.readonly],([j,N,M,R,$])=>{o.value=j,v.value=N,i.value=M,r.value=R,h.value=$});const H=()=>{n.emit("expandClick")};return()=>t.createVNode(pe,{ref:l,id:e.id,disable:o.value,readonly:h.value,forcePlaceholder:e.forcePlaceholder,editable:v.value,buttonContent:g.value,placeholder:e.placeholder==="请选择"?G.LocaleService.getLocaleValue("comboList.placeholder"):e.placeholder,enableClear:i.value,maxLength:e.maxLength,tabIndex:e.tabIndex,enableTitle:e.enableTitle,multiSelect:e.multiSelect,inputType:e.multiSelect?e.viewType:"text",modelValue:m.value,"onUpdate:modelValue":j=>m.value=j,focusOnCreated:e.focusOnCreated,selectOnCreated:e.selectOnCreated,onClear:b,onClick:u,onChange:E,onBlur:c,onInput:D,beforeOpen:S,placement:de()?"bottom":e.placement,popupMinWidth:e.minPanelWidth,popupClass:"f-combo-list-wrapper",popupOnClick:e.popupOnClick,limitContentBySpace:!0,expandable:e.expandable,expandMode:e.expandMode,expandContent:e.expandContent,expandDisabled:e.expandDisabled,onExpandClick:H,onHidden:()=>n.emit("hidden"),onShown:()=>n.emit("shown")},{default:()=>[de()?t.createVNode(vn,{modelValue:y.value,valueField:e.valueField,textField:e.textField,columns:d.value,multiSelect:e.multiSelect,separator:e.separator,onConfirm:j=>{const N=e.multiSelect?j[0]||[]:j;C(N),l==null||l.value.hidePopup()},onCancel:()=>{l==null||l.value.hidePopup()}},null):t.createVNode(fn,{class:e.popupClass,ref:a,idField:e.idField,valueField:e.valueField,textField:e.textField,titleField:e.titleField,dataSource:p.value,selectedValues:y.value,separator:e.separator,multiSelect:e.multiSelect,showSelectAll:e.showSelectAll,enableSearch:r.value,maxHeight:e.maxHeight,enableHighlightSearch:e.enableHighlightSearch,width:e.fitEditor?f.value:void 0,onSelectionChange:j=>{C(j),w()}},null)]})}}),at={convertFrom:(e,n)=>(e.editor.remote||{})[n],convertTo:(e,n,a)=>{e.editor.remote=e.editor.remote||{},e.editor.remote[n]=a}};class Fn extends Ot.InputBaseProperty{constructor(n,a){super(n,a)}getCommonEditorProperties(n){var a,l,o,i;return{showSelectAll:{visible:!!((a=n.editor)!=null&&a.multiSelect),description:"多选模式下是否显示全选复选框",title:"启用全选",type:"boolean",default:!1,refreshPanelAfterChanged:!0},viewType:{visible:!!((l=n.editor)!=null&&l.multiSelect),description:"数据展示类型,有标签和文本两种方式",title:"数据展示类型",type:"enum",editor:{data:[{id:"tag",name:"标签"},{id:"text",name:"文本"}]},refreshPanelAfterChanged:!0},separator:{visible:!!((o=n.editor)!=null&&o.multiSelect)&&((i=n.editor)==null?void 0:i.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},hideDisabledItems:{description:"当数据项禁用时,隐藏数据项",title:"隐藏禁用项",type:"boolean",refreshPanelAfterChanged:!0}}}getEditorProperties(n){var d,m,v,y,p,x,k,S,g,s,f,w,C;const a=this;let l="";if(((d=n==null?void 0:n.binding)==null?void 0:d.type)==="Form"){const c=this.schemaService.getFieldByIDAndVMID(n.binding.field,this.viewModelId);(m=c==null?void 0:c.schemaField)!=null&&m.type&&(l=c.schemaField.type.$type)}const o=this.getPropertyEditorParams(n,["Variable"]),i=!n.editor.dataSourceType||n.editor.dataSourceType==="static",r=(((y=(v=this.designViewModelField)==null?void 0:v.type)==null?void 0:y.$type)===z.FormSchemaEntityFieldType$Type.StringType||!!this.formRule&&((p=this.designerHostService.schemaService.getFieldByID(n.binding.field))==null?void 0:p.type.$type)===z.FormSchemaEntityFieldType$Type.StringType)&&((x=n.editor)==null?void 0:x.type)==="combo-list"&&((k=n.editor)==null?void 0:k.dataSourceType)==="dynamic"&&!((g=(S=n.editor)==null?void 0:S.remote)!=null&&g.url)&&!((s=n.editor)!=null&&s.multiSelect);return a.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:{...o,controlName:"",enableClear:!0},refreshPanelAfterChanged:!0},data:{description:"",title:"数据",type:"array",visible:i,...a.getItemCollectionEditor(n,n.editor.valueField,n.editor.textField),refreshPanelAfterChanged:!0},url:{visible:n.editor.dataSourceType==="dynamic"&&!((f=n.editor)!=null&&f.dataSource),$converter:at,description:"",title:"服务端API",type:"string",refreshPanelAfterChanged:!0},body:{visible:!1,$converter:at,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:((w=n.editor)==null?void 0:w.dataSourceType)==="dynamic"&&!!((C=n.editor)!=null&&C.dataSource),type:"boolean",refreshPanelAfterChanged:!0},maxLength:{description:"",title:"最大输入长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1,needValid:!0}},...this.getCommonEditorProperties(n)},(c,u)=>{if(!c||!u.editor)return;const b=this;switch(c.propertyID){case"dataSourceType":{c.propertyValue==="static"?(u.editor.valueField="value",u.editor.textField="name",u.editor.remote=null):c.propertyValue==="dynamic"&&(u.editor.remote={method:"GET"},u.editor.valueField="value",u.editor.textField="name");break}case"data":{!b.checkEnumDataReadonly(u)&&u.formatter&&(u.formatter.data=[...c.propertyValue]);break}case"viewType":{c.propertyValue==="tag"&&(u.editor.editable=!1);break}case"dataSource":b.afterMutilEditorChanged(u,c);break}})}getGridFieldEdtiorProperties(n,a){var d,m,v,y,p,x,k,S,g,s,f,w,C;const l=this;let o="";if(((d=n==null?void 0:n.binding)==null?void 0:d.type)==="Form"){const c=this.schemaService.getFieldByIDAndVMID(n.binding.field,this.viewModelId);(m=c==null?void 0:c.schemaField)!=null&&m.type&&(o=c.schemaField.type.$type)}const i=((y=(v=this.designViewModelField)==null?void 0:v.type)==null?void 0:y.$type)===z.FormSchemaEntityFieldType$Type.StringType&&((p=n.editor)==null?void 0:p.type)==="combo-list"&&((x=n.editor)==null?void 0:x.dataSourceType)==="dynamic"&&!((k=n.editor)!=null&&k.multiSelect),r=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:i,title:"数据",editor:{...r,controlName:"",enableClear:!0},refreshPanelAfterChanged:!0},data:{description:"",title:"数据",type:"array",visible:!((S=n.editor)!=null&&S.dataSourceType)||((g=n.editor)==null?void 0:g.dataSourceType)==="static",...l.getItemCollectionEditor(n,(s=n.editor)==null?void 0:s.valueField,(f=n.editor)==null?void 0:f.textField),refreshPanelAfterChanged:!0},textField:{description:"",title:"数据源显示字段",type:"string",readonly:!0},valueField:{description:"",title:"数据源值字段",type:"string",readonly:!0},multiSelect:{description:"",title:"启用多选",visible:o==="StringType",readonly:((w=n.editor)==null?void 0:w.dataSourceType)==="dynamic"&&!!((C=n.editor)!=null&&C.dataSource),type:"boolean",refreshPanelAfterChanged:!0},maxLength:{description:"",title:"最大输入长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1,needValid:!0}},...this.getCommonEditorProperties(n)},(c,u)=>{if(!c||!u.editor)return;const b=this;switch(c.propertyID){case"dataSourceType":{c.propertyValue==="static"?(u.editor.valueField="value",u.editor.textField="name",u.editor.remote=null):c.propertyValue==="dynamic"&&(u.editor.remote={method:"GET"},u.editor.valueField="value",u.editor.textField="name");break}case"data":{!b.checkEnumDataReadonly(u)&&u.formatter&&(u.formatter.data=[...c.propertyValue]);break}case"dataSource":b.afterMutilEditorChanged(u,c)}})}setEditorPropertyRelates(n,a,l){if(!n||!a.editor)return;const o=this;switch(n.propertyID){case"dataSourceType":{n.propertyValue==="static"&&(a.editor.valueField="value",a.editor.textField="name",a.editor.remote={});break}case"data":{!o.checkEnumDataReadonly(a)&&a.formatter&&(a.formatter.data=[...n.propertyValue]);break}}}changeBindingField(n,a,l){var i;super.changeBindingField(n,a);const o=l;n.editor&&((i=o==null?void 0:o.type)==null?void 0:i.$type)===z.FormSchemaEntityFieldType$Type.EnumType&&(n.editor.data=o.type.enumValues||[])}getEventPropertyConfig(n,a="card",l,o){const i=this;let r=[{label:"onChange",name:"值变化事件"},{label:"beforeOpen",name:"打开面板前事件"},{label:"beforeHide",name:"关闭面板前事件"},{label:"onShown",name:"面板打开事件"},{label:"onHidden",name:"面板关闭事件"}];r=[...r,...this.getInputCommonEvents(n)],l&&(r=r.concat(l)),this.formRule&&(r=r.filter(v=>v.label!=="onChange")),this.appendFieldValueChangeEvents(n,r);const h=i.eventsEditorUtils.formProperties(n,i.viewModelId,r);return{title:"事件",hideTitle:!0,properties:i.createBaseEventProperty(h),tabId:z.EVENT_PROPERTY_TAB_IDS,tabName:"交互",setPropertyRelates(v,y){const p=v.propertyValue;delete n[i.viewModelId],p&&(p.setPropertyRelates=this.setPropertyRelates,i.eventsEditorUtils.saveRelatedParameters(n,i.viewModelId,p.events,p),i.updateLinkedLabel(p,y)),o&&o(v,y,p);const x=i.designViewModelUtils.getDgViewModel(i.viewModelId);x&&i.designViewModelField&&x.changeField(i.designViewModelField.id,{valueChanging:n.fieldValueChanging||"",valueChanged:n.fieldValueChanged||""}),n.editor.onShown=n.onShown,n.editor.onHidden=n.onHidden,n.editor.beforeHide=n.beforeHide,n.editor.beforeOpen=n.beforeOpen,n.editor.onChange=n.onChange,n.editor.onClear=n.onClear}}}}function Tn(e,n){const a=e.schema;function l(o,i){return new Fn(o,n).getPropertyConfig(a,i)}return{getPropsConfig:l}}const Nn=t.defineComponent({name:"FComboListDesign",props:cn,emits:["clear","update:modelValue","change"],setup(e,n){const a=t.ref(),l=t.inject("designer-host-service"),o=t.inject("design-item-context"),i=Tn(o,l),r=he.useDesignerComponent(a,o,i);return t.onMounted(()=>{a.value.componentInstance=r}),n.expose(r.value),()=>t.createVNode(jt,{ref:a,buttonContent:e.dropDownIcon,readonly:!0,editable:!1,forcePlaceholder:!0,placeholder:e.placeholder,expandable:e.expandable,expandMode:e.expandMode,expandContent:e.expandContent,expandDisabled:e.expandDisabled},null)}});le.register=(e,n,a,l,o)=>{e["combo-list"]=le,n["combo-list"]=tt(o),l["combo-list"]={callbackResolver:un}},le.registerDesigner=(e,n,a,l)=>{e["combo-list"]=Nn,n["combo-list"]=tt(l)},z.withInstall(le),z.withInstall(ge);const Vn={modelValue:{type:String,default:""},singleExpand:{type:Boolean,default:!0},entities:{type:Array,default:[]},variables:{type:Array,default:[]},disabledFunctions:{type:Object,default:null},esprimaPath:{type:String,default:"assets/esprima-config.json"},showMessage:{type:Boolean,default:!1},validateMessage:{type:String,default:""},messageType:{type:String,default:"info"},showMessageType:{type:Boolean,default:!1},showDataPanel:{type:Boolean,default:!0},isServerSide:{type:Boolean,default:!1}},lt=new Map([["appearance",K.resolveAppearance]]);function ot(e,n,a){return n}const Mn={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/layout.schema.json",title:"layout",description:"A Farris Container Component",type:"object",properties:{id:{description:"The unique identifier for layout component",type:"string"},type:{description:"The type string of layout component",type:"string",default:"layout"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},contents:{description:"",type:"array",default:[]},collapsable:{description:"",type:"boolean",default:!1},resizable:{description:"",type:"boolean",default:!0},visible:{description:"",type:"boolean",default:!0}},required:["id","type","contents"]},Bn={title:"layout",description:"A Farris Component",type:"object",categories:{basic:{description:"Basic Infomation",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"类型",title:"类型",type:"string",readonly:!0}}},behavior:{description:"Basic Infomation",title:"行为",properties:{collapsable:{description:"",title:"可收折",type:"boolean"},resizable:{description:"",title:"可调整尺寸",type:"boolean"}}}}},Me={customStyle:{type:String,defaut:""},customClass:{type:String,defaut:""}},it=K.createPropsResolver(Me,Mn,lt,ot,Bn);function rt(e){const n=t.ref(-1),a=t.ref(-1),l=t.ref(0),o=t.ref(0),i=t.ref(!1),r=t.ref(!1),h=t.computed(()=>({display:i.value?"block":"none",left:`${l.value}px`,cursor:"e-resize"})),d=t.computed(()=>({display:r.value?"block":"none",top:`${o.value}px`,cursor:"n-resize"})),m=t.computed(()=>{const g={display:r.value||i.value?"block":"none"};return o.value>0&&(g.cursor="n-resize"),g});function v(g,s,f,w){const C=e.value;if(C){const{left:c,right:u,width:b}=C.getBoundingClientRect();let F=g.clientX-c;w==="right"&&(F=u-g.clientX),F>s&&(F=s),F<f&&(F=f),w==="right"&&(F=b-F),l.value=F}}function y(g,s,f,w){const C=e.value;if(C){const{top:c,bottom:u,height:b}=C.getBoundingClientRect();let F=g.clientY-c;w==="bottom"&&(F=u-g.clientY),F>s&&(F=s),F<f&&(F=f),w==="bottom"&&(F=b-F),o.value=F}}function p(){const g=e.value;if(g){const{width:s,height:f}=g.getBoundingClientRect();return{width:s,height:f}}return null}function x(){const g=e.value;return g?Array.from(g.querySelectorAll("[data-position]")).reduce((s,f)=>{const w=f.getAttribute("data-position");return s=Object.assign(s,{[w]:f}),s},{}):null}function k(g,s){const f=p(),w=x();if(f&&w){const C=w==null?void 0:w.right,c=w==null?void 0:w.left;if(g==="left"&&c)return C?f.width-C.clientWidth-s:f.width-s;if(g==="right"&&C)return c?f.width-c.clientWidth-s:f.width-s}}function S(g,s){const f=p(),w=x();if(f&&w){const C=w==null?void 0:w.bottom,c=w==null?void 0:w.top;if(g==="top"&&c)return C?f.height-C.clientHeight-s:f.height-s;if(g==="bottom"&&C)return c?f.height-c.clientHeight-s:f.height-s}}return{horizontalResizeHandleStyle:h,verticalResizeHandleStyle:d,resizeOverlayStyle:m,showHorizontalResizeHandle:i,showVerticalResizeHandle:r,horizontalResizeBarPosition:n,verticalResizeBarPosition:a,verticalResizeHandleOffset:o,horizontalResizeHandleOffset:l,draggingHorizontalResizeHandle:v,draggingVerticalResizeHandle:y,getPanelMaxHeight:S,getPanelMaxWidth:k}}const ee=t.defineComponent({name:"FLayout",props:Me,emits:[],setup(e,n){const a=t.ref(),l=rt(a),{horizontalResizeHandleStyle:o,verticalResizeHandleStyle:i,resizeOverlayStyle:r}=l;t.provide("layout",{useResizeHandleComposition:l});const h=t.computed(()=>{const m={"f-layout":!0};return z.getCustomClass(m,e==null?void 0:e.customClass)}),d=t.computed(()=>{const m={};return z.getCustomStyle(m,e==null?void 0:e.customStyle)});return()=>t.createVNode("div",{class:h.value,style:d.value,ref:a},[n.slots.default&&n.slots.default(),t.createVNode("div",{class:"f-layout-resize-overlay",style:r.value},null),t.createVNode("div",{class:"f-layout-horizontal-resize-proxy",style:o.value},null),t.createVNode("div",{class:"f-layout-vertical-resize-proxy",style:i.value},null)])}}),On={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/layout-pane.schema.json",title:"layout-pane",description:"A Farris Container Component",type:"object",properties:{id:{description:"The unique identifier for a layout pane",type:"string"},type:{description:"The type string of layout paney",type:"string",default:"layout-pane"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},collapsable:{description:"",type:"boolean",default:!1},contents:{description:"",type:"array",default:[]},height:{description:"",type:"number"},position:{description:"",type:"string",default:"left",enum:["left","center","right","top","bottom"]},resizeable:{description:"",type:"boolean",default:!0},width:{description:"",type:"number"},visible:{description:"",type:"number",default:!0}},required:["id","type","contents"]},En={title:"layout-pane",description:"A Farris Container Component",type:"object",categories:{basic:{description:"Basic Infomation",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"enum"},width:{description:"",type:"number",title:"宽度"},height:{description:"",type:"number",title:"高度"}}},appearance:{title:"样式",description:"Appearance",properties:{class:{title:"class样式",type:"string",description:""},style:{title:"style",type:"string",description:""}}},behavior:{description:"",title:"行为",properties:{collapsable:{description:"",type:"boolean",title:"允许收折"},position:{description:"",type:"enum",title:"位置",editor:{type:"combo-list",data:[{id:"left",name:"左侧"},{id:"center",name:"居中"},{id:"right",name:"右侧"},{id:"top",name:"顶部"},{id:"bottom",name:"底部"}]}},resizeable:{description:"",type:"boolean",title:"允许调整尺寸"},visible:{description:"运行时组件是否可见",type:"boolean",title:"是否可见"}}}}},Be={customClass:{type:String,defaut:""},customStyle:{type:String,defaut:""},width:{type:Number,default:-1},height:{type:Number,default:-1},position:{type:String,default:"left"},visible:{type:Boolean,default:!0},resizable:{type:Boolean,default:!0},collapsable:{type:Boolean,default:!1},minWidth:{type:Number,default:100},minHeight:{type:Number,default:100},maxWidth:{type:Number,default:null}},st=K.createPropsResolver(Be,On,lt,ot,En);function ct(e,n,a,l,o,i){const{horizontalResizeBarPosition:r,horizontalResizeHandleOffset:h,showHorizontalResizeHandle:d,showVerticalResizeHandle:m,verticalResizeBarPosition:v,verticalResizeHandleOffset:y,draggingHorizontalResizeHandle:p,draggingVerticalResizeHandle:x,getPanelMaxHeight:k,getPanelMaxWidth:S}=o;let g="",s,f,w;const C=()=>i.maxWidth?i.maxWidth:S(g,a.value)||0;function c(F){if((g==="left"||g==="right")&&f){const{left:E}=f.getBoundingClientRect(),{width:I}=s.getBoundingClientRect(),D=F.clientX-E;let O=g==="left"?(I||0)+(D-r.value):(I||0)-(D-r.value);O=a.value>0?Math.max(a.value,O):O;const T=C();T!=null&&(O=T>O?O:T),e.value=O}if((g==="top"||g==="bottom")&&f){const{top:E}=f.getBoundingClientRect(),{height:I}=s.getBoundingClientRect(),D=F.clientY-E;let O=g==="top"?(I||0)+(D-v.value):(I||0)-(D-v.value);O=l.value>0?Math.max(l.value,O):O;const T=k(g,l.value);T!=null&&(O=T>O?O:T),n.value=O}h.value=0,y.value=0,r.value=-1,v.value=-1,d.value=!1,m.value=!1,document.removeEventListener("mousemove",w),document.removeEventListener("mouseup",c),document.body.style.userSelect="",g="",s=null,f=null}function u(F,E,I){if(g=E,s=I,d.value=!0,f=F.composedPath().find(O=>(O.className||"").split(" ")[0]==="f-layout"),f){const{left:O}=f.getBoundingClientRect(),T=F.clientX-O;h.value=T,r.value=T;const B=C();w=P=>p(P,B,a.value,g),document.addEventListener("mousemove",w),document.addEventListener("mouseup",c),document.body.style.userSelect="none"}}function b(F,E,I){if(g=E,s=I,m.value=!0,f=F.composedPath().find(O=>(O.className||"").split(" ")[0]==="f-layout"),f){const{top:O}=f.getBoundingClientRect();y.value=F.clientY-O,v.value=F.clientY-O;const T=k(g,l.value)||0;w=B=>x(B,T,l.value,g),document.addEventListener("mousemove",w),document.addEventListener("mouseup",c),document.body.style.userSelect="none"}}return{onClickHorizontalResizeBar:u,onClickVerticalResizeBar:b}}const Z=t.defineComponent({name:"FLayoutPane",props:Be,emits:[],setup(e,n){const a=t.ref(e.minHeight<=0?100:e.minHeight),l=t.ref(e.minWidth<=0?100:e.minWidth),o=t.ref(e.width<=0?100:e.width),i=t.ref(e.height<=0?100:e.height),r=t.ref(Math.max(a.value,i.value)),h=t.ref(Math.max(l.value,o.value)),d=t.ref(),m=t.ref(e.position),v=t.ref(e.resizable);t.watch(()=>e.resizable,c=>{v.value=c});const y=t.inject("layout"),{useResizeHandleComposition:p}=y,x=ct(h,r,l,a,p,e),{onClickHorizontalResizeBar:k,onClickVerticalResizeBar:S}=x,g=t.computed(()=>({"f-layout-resize-bar":!0,"f-layout-resize-bar-e":m.value==="left","f-layout-resize-bar-n":m.value==="bottom","f-layout-resize-bar-s":m.value==="top","f-layout-resize-bar-w":m.value==="right"})),s=t.computed(()=>m.value!=="center"&&v.value);function f(c,u){(u==="left"||u==="right")&&k(c,u,d.value),(u==="top"||u==="bottom")&&S(c,u,d.value)}const w=t.computed(()=>{const c={"f-layout-pane":!0,"f-page-content-nav":m.value==="left"||m.value==="right","f-page-content-main":m.value==="center"};return e.customClass&&String(e.customClass).split(" ").reduce((u,b)=>(u[b]=!0,u),c),c}),C=t.computed(()=>{const c={};return(h.value&&m.value==="left"||m.value==="right")&&(c.width=`${h.value}px`),(r.value&&m.value==="bottom"||m.value==="top")&&(c.height=`${r.value}px`),e.visible||(c.display="none"),c});return()=>t.createVNode("div",{ref:d,class:w.value,style:C.value,"data-position":m.value},[n.slots.default&&n.slots.default(),s.value&&t.createVNode("span",{class:g.value,onMousedown:c=>f(c,m.value)},null)])}});function Dn(e,n){function a(){return!1}return{canAccepts:a}}const Pn=t.defineComponent({name:"FLayoutDesign",props:Me,emits:[],setup(e,n){var v;const a=t.ref(),l=t.inject("design-item-context"),o=Dn(l.schema,(v=l.parent)==null?void 0:v.schema),i=he.useDesignerComponent(a,l,o);i.value.canNested=!1;const r=rt(a),{horizontalResizeHandleStyle:h,verticalResizeHandleStyle:d,resizeOverlayStyle:m}=r;return t.provide("layout",{useResizeHandleComposition:r}),t.onMounted(()=>{a.value.componentInstance=i}),n.expose(i.value),()=>t.createVNode("div",{class:"f-layout f-page-content",ref:a},[n.slots.default&&n.slots.default(),t.createVNode("div",{class:"f-layout-resize-overlay",style:m.value},null),t.createVNode("div",{class:"f-layout-horizontal-resize-proxy",style:h.value},null),t.createVNode("div",{class:"f-layout-vertical-resize-proxy",style:d.value},null)])}});function In(e,n){const a=e.schema;function l(i){return!!he.useDragulaCommonRule().basalDragulaRuleForContainer(i)}function o(){const i=["f-layout-pane"];return(a.position==="left"||a.position==="right")&&i.push("f-page-content-nav"),a.position==="center"&&i.push("f-page-content-main"),i.join(" ")}return{canAccepts:l,getDesignerClass:o}}const jn=t.defineComponent({name:"FLayoutPaneDesign",props:Be,emits:[],setup(e,n){const a=t.ref(),l=t.ref();t.inject("designer-host-service");const o=t.inject("design-item-context"),i=In(o),r=he.useDesignerComponent(l,o,i);r.value.canNested=!1,r.value.canMove=!1,r.value.canDelete=!1,t.onMounted(()=>{l.value.componentInstance=r}),n.expose(r.value);const h=t.ref(Math.max(e.minHeight,e.height)),d=t.ref(Math.max(e.minWidth,e.width)),m=t.ref(e.minHeight),v=t.ref(e.minWidth),y=t.ref(e.position),p=t.inject("layout"),{useResizeHandleComposition:x}=p,k=ct(d,h,v,m,x,e),{onClickHorizontalResizeBar:S,onClickVerticalResizeBar:g}=k,s=t.computed(()=>({"f-layout-resize-bar":!0,"f-layout-resize-bar-e":y.value==="left","f-layout-resize-bar-n":y.value==="bottom","f-layout-resize-bar-s":y.value==="top","f-layout-resize-bar-w":y.value==="right"}));function f(c,u){(u==="left"||u==="right")&&S(c,u,a.value),(u==="top"||u==="bottom")&&g(c,u,a.value)}const w=t.computed(()=>{const c={"f-layout-pane":!0,"f-page-content-nav":y.value==="left"||y.value==="right","f-page-content-main":y.value==="center"};return e.customClass&&String(e.customClass).split(" ").reduce((u,b)=>(u[b]=!0,u),c),c}),C=t.computed(()=>{const c={flex:"1"};return(d.value&&y.value==="left"||y.value==="right")&&(c.width=`${d.value}px`),(h.value&&y.value==="bottom"||y.value==="top")&&(c.height=`${h.value}px`),c});return()=>t.createVNode("div",{ref:a,class:w.value,style:C.value},[t.createVNode("div",{ref:l,class:"drag-container","data-dragref":`${o.schema.id}-container`},[n.slots.default&&n.slots.default()]),t.createVNode("span",{class:s.value,onMousedown:c=>f(c,y.value)},null)])}});ee.install=e=>{e.component(ee.name,ee),e.component(Z.name,Z)},ee.register=(e,n,a,l)=>{e.layout=ee,n.layout=it,e["layout-pane"]=Z,n["layout-pane"]=st},ee.registerDesigner=(e,n,a)=>{e.layout=Pn,n.layout=it,e["layout-pane"]=jn,n["layout-pane"]=st};const Rn={analytical:{name:"数据",items:[{key:"IsNull",name:"是空值",params:[{key:"obj",name:"检测对象",type:"object"}],description:`【功能】判断检测对象是否为空值(null)。检测对象为null返回true,否则返回false
|
|
1
|
+
(function(L,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("vue"),require("../locale/index.umd.js"),require("../common/index.umd.js"),require("../drawer/index.umd.js"),require("../property-panel/index.umd.js"),require("../button/index.umd.js"),require("../field-selector/index.umd.js"),require("../collection-property-editor/index.umd.js/src/use-button-items.designer"),require("../tags/index.umd.js"),require("lodash-es"),require("../common/index.umd.js/text-box/use-input-expand"),require("../popover/index.umd.js"),require("../dynamic-resolver/index.umd.js"),require("../button-edit/index.umd.js"),require("../list-view/index.umd.js"),require("bignumber.js"),require("../../designer/button-edit/index.umd.js"),require("../designer-canvas/index.umd.js"),require("../tree-view/index.umd.js"),require("../event-parameter/index.umd.js"),require("../input-group/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","../locale/index.umd.js","../common/index.umd.js","../drawer/index.umd.js","../property-panel/index.umd.js","../button/index.umd.js","../field-selector/index.umd.js","../collection-property-editor/index.umd.js/src/use-button-items.designer","../tags/index.umd.js","lodash-es","../common/index.umd.js/text-box/use-input-expand","../popover/index.umd.js","../dynamic-resolver/index.umd.js","../button-edit/index.umd.js","../list-view/index.umd.js","bignumber.js","../../designer/button-edit/index.umd.js","../designer-canvas/index.umd.js","../tree-view/index.umd.js","../event-parameter/index.umd.js","../input-group/index.umd.js"],t):(L=typeof globalThis<"u"?globalThis:L||self,t(L["filter-condition-editor"]={},L.Vue,L.locale,L.common,L.FDrawer,L.propertyPanel,null,null,null,L.FTags,L.LodashES,L.useInputExpand,L.FPopover,L.dynamicResolver,L.FButtonEdit$1,L.FListView,L.BigNumber,L.FButtonEditDesign,L.designerCanvas,L.FTreeView,L.FEventParameter,L.inputGroup))})(this,function(L,t,G,z,Ne,Ot,Pl,Il,jl,Et,X,Dt,Pt,K,pe,It,Rl,jt,he,Ue,Rt,Lt){"use strict";var El=Object.defineProperty;var Dl=(L,t,G)=>t in L?El(L,t,{enumerable:!0,configurable:!0,writable:!0,value:G}):L[t]=G;var Q=(L,t,G)=>Dl(L,typeof t!="symbol"?t+"":t,G);const At={id:{type:String,default:""},buttonContent:{type:String,default:'<i class="f-icon f-icon-lookup"></i>'},buttonBehavior:{type:String,default:"Popup"},autoComplete:{type:Boolean,default:!1},customClass:{type:String,default:""},disable:{type:Boolean,default:!1},editable:{type:Boolean,default:!0},enableClear:{type:Boolean,default:!1},modelValue:{type:String,default:""},readonly:{type:Boolean,default:!1},showButtonWhenDisabled:{type:Boolean,default:!1},showAppendButton:{type:Boolean,default:!0},enableTitle:{type:Boolean,default:!1},inputType:{type:String,default:"text"},forcePlaceholder:{type:Boolean,default:!1},placeholder:{type:String,default:""},minLength:Number,maxLength:{type:Number},tabIndex:Number,popupHost:{type:Object},popupRightBoundary:{type:Object},popupOffsetX:{type:Object,default:0},popupOffsetY:{type:Object,default:0},popupOnInput:{type:Boolean,default:!1},popupOnFocus:{type:Boolean,default:!1},popupOnClick:{type:Boolean,default:!1},popupClass:{type:String,default:""},popupMinWidth:{type:Number,default:160},modalOptions:{type:Object,default:{}},wrapText:{type:Boolean,default:!1},multiSelect:{type:Boolean,default:!1},separator:{type:String,default:","},textAlign:{type:String,default:"left"},beforeClickButton:{type:Function,default:null},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1},beforeOpen:{type:Function,default:null},updateOn:{type:String,default:"change"},keepWidthWithReference:{type:Boolean,default:!0},placement:{type:String,default:"bottom-left"},limitContentBySpace:{type:Boolean,default:!1},beforeClosePopup:{type:Function,default:null},expandable:{type:Boolean,default:!1},expandMode:{type:String,default:"text"},expandContent:{type:String,default:""},expandDisabled:{type:Boolean,default:!1}},Ht={popupContentPosition:{type:Object,default:{left:0,top:0}},host:{type:Object},backgroundColor:{type:String,default:""}};function $t(){const e=t.ref(!1);return t.onMounted(()=>{e.value=!0}),e}const zt=t.defineComponent({name:"FOverlay",props:Ht,emits:["click"],setup(e,n){const a=t.ref(e.popupContentPosition),l=t.ref(e.host),o=$t(),i=t.computed(()=>({backgroundColor:e.backgroundColor||"",pointerEvents:"auto"}));function r(d){n.emit("click"),d.preventDefault(),d.stopPropagation()}t.computed(()=>{const d=l.value;if(d){const m=d.getBoundingClientRect(),{left:v,top:y,height:p}=m;return{left:v,top:y+p}}return a.value});const h=t.computed(()=>({}));return()=>o.value?t.createVNode(t.Teleport,{to:"body"},{default:()=>{var d,m;return[t.createVNode("div",{class:"overlay-container",onClick:v=>r(v),style:i.value},[t.createVNode("div",{style:h.value},[(m=(d=n.slots).default)==null?void 0:m.call(d)])])]}}):null}});function Wt(e){if(e.content&&e.content.render)return e.content.render;if(e.render&&typeof e.render=="function")return e.render}function qt(e){const n=document.createElement("div");n.style.display="contents";let a;const l=e.onClickCallback||(()=>{}),o=()=>{l(),a&&a.unmount()};return a=t.createApp({setup(){t.onUnmounted(()=>{document.body.removeChild(n)});const i=Wt(e);return()=>t.createVNode(zt,{"popup-content-position":e.popupPosition,host:e.host,onClick:o,backgroundColor:e.backgroundColor},{default:()=>[i&&i()]})}}),document.body.appendChild(n),a.mount(n),a}class Ut{static show(n){return qt(n)}}const Yt={allowClickMaskToClose:{type:Boolean,default:!1},beforeClose:{type:Function,default:()=>!0},class:{type:String,default:""},maskClass:{type:String,default:""},title:{type:String,default:""},width:{type:Number,default:500},height:{type:Number,default:320},buttons:{type:Array,default:[]},modelValue:{type:Boolean,default:!1},mask:{type:Boolean,default:!0},showHeader:{type:Boolean,default:!0},showButtons:{type:Boolean,default:!0},fitContent:{type:Boolean,default:!0},showCloseButton:{type:Boolean,default:!0},showFloatingClose:{type:Boolean,default:!1},showMaxButton:{type:Boolean,default:!1},minHeight:{type:Number},maxHeight:{type:Number},minWidth:{type:Number},maxWidth:{type:Number},containment:{type:Object,default:null},resizeable:{type:Boolean,default:!1},draggable:{type:Boolean,default:!1},dragHandle:{type:Object,default:null},closedCallback:{type:Function,default:null},openedCallback:{type:Function,default:null},resizeHandle:{type:Function,default:null},render:{type:Function,default:null},acceptCallback:{type:Function,default:null},rejectCallback:{type:Function,default:null},enableEsc:{type:Boolean,default:!0},enableEnter:{type:Boolean,default:!1},dialogType:{type:String,default:""},src:{type:String,default:""},footerHeight:{type:Number,default:60},position:{type:String,default:"center"},host:{type:Object,default:"body"},isMessager:{type:Boolean,default:!1},fullscreen:{type:Boolean,default:!1},maximized:{type:Boolean,default:!1},useTransform:{type:Boolean,default:!0}};class Y{constructor(n,a){this.x=n,this.y=a}static getTransformInfo(n){const l=window.getComputedStyle(n).getPropertyValue("transform").replace(/[^-\d,]/g,"").split(",");if(l.length>=6){const o=parseInt(l[4],10),i=parseInt(l[5],10);return{x:o,y:i}}return{x:0,y:0}}static fromEvent(n,a=null){if(this.isMouseEvent(n))return new Y(n.clientX,n.clientY);if(a===null||n.changedTouches.length===1)return new Y(n.changedTouches[0].clientX,n.changedTouches[0].clientY);for(let l=0;l<n.changedTouches.length;l++)if(n.changedTouches[l].target===a)return new Y(n.changedTouches[l].clientX,n.changedTouches[l].clientY)}static isMouseEvent(n){return Object.prototype.toString.apply(n).indexOf("MouseEvent")===8}static isIPosition(n){return!!n&&"x"in n&&"y"in n}static getCurrent(n){const a=new Y(0,0);if(window){const l=window.getComputedStyle(n);if(l){const o=parseInt(l.getPropertyValue("left"),10),i=parseInt(l.getPropertyValue("top"),10);a.x=isNaN(o)?0:o,a.y=isNaN(i)?0:i}return a}return null}static copy(n){return new Y(0,0).set(n)}get value(){return{x:this.x,y:this.y}}add(n){return this.x+=n.x,this.y+=n.y,this}subtract(n){return this.x-=n.x,this.y-=n.y,this}multiply(n){this.x*=n,this.y*=n}divide(n){this.x/=n,this.y/=n}reset(){return this.x=0,this.y=0,this}set(n){return this.x=n.x,this.y=n.y,this}}class ne{constructor(n,a){this.width=n,this.height=a}static getCurrent(n){const a=new ne(0,0);if(window){const l=window.getComputedStyle(n);return l&&(a.width=parseInt(l.getPropertyValue("width"),10),a.height=parseInt(l.getPropertyValue("height"),10)),a}return null}static copy(n){return new ne(0,0).set(n)}set(n){return this.width=n.width,this.height=n.height,this}}function Gt(e,n){const a=t.ref(),l=t.ref(),o=t.ref(),i=t.ref(),r=t.ref(),h=t.ref(),d=t.ref(),m=t.ref(),v=t.ref(),y=t.ref(),p=t.ref(),x=t.ref(e.resizeable),k=t.ref(),S=t.ref(e.draggable),g=t.ref(!1);function s(){const N=l.value||document.body,M=window.getComputedStyle(N);if(!M||!a.value)return;const R=Y.getTransformInfo(a.value),$={};d.value&&($.deltaL=a.value.offsetLeft-d.value.x,$.deltaT=a.value.offsetTop-d.value.y);const q=M.getPropertyValue("position");$.width=N.clientWidth,$.height=N.clientHeight,$.pr=parseInt(M.getPropertyValue("padding-right"),10),$.pb=parseInt(M.getPropertyValue("padding-bottom"),10),$.position=M.getPropertyValue("position"),q==="static"&&(N.style.position="relative"),$.translateX=R.x,$.translateY=R.y,y.value=$}function f(N){if(a.value){i.value=ne.getCurrent(a.value),r.value=Y.getCurrent(a.value),h.value=i.value?ne.copy(i.value):null,d.value=r.value?Y.copy(r.value):null,s();const M=N.target.getAttribute("type")||"";m.value={n:!!M.match(/n/),s:!!M.match(/s/),w:!!M.match(/w/),e:!!M.match(/e/)}}}function w(){var N,M,R,$;if(a.value){const q=a.value;m.value&&((m.value.n||m.value.s)&&((N=h.value)!=null&&N.height)&&(q.style.height=h.value.height+"px"),(m.value.w||m.value.e)&&((M=h.value)!=null&&M.width)&&(q.style.width=h.value.width+"px"),d.value&&((R=d.value)!=null&&R.x&&(q.style.left=d.value.x+"px"),($=d.value)!=null&&$.y&&(q.style.top=d.value.y+"px")))}}function C(){const N=e.minHeight?e.minHeight:1,M=e.minWidth?e.minWidth:1;h.value&&d.value&&m.value&&i.value&&(h.value.height<N&&(h.value.height=N,m.value.n&&r.value&&(d.value.y=r.value.y+(i.value.height-N))),h.value.width<M&&(h.value.width=M,m.value.w&&r.value&&(d.value.x=r.value.x+(i.value.width-M))),e.maxHeight&&h.value.height>e.maxHeight&&(h.value.height=e.maxHeight,r.value&&m.value.n&&(d.value.y=r.value.y+(i.value.height-e.maxHeight))),e.maxWidth&&h.value.width>e.maxWidth&&(h.value.width=e.maxWidth,m.value.w&&r.value&&(d.value.x=r.value.x+(i.value.width-e.maxWidth))))}function c(){if(l.value){const N=y.value;if(d.value&&h.value&&m.value&&i.value){const M=N.width-N.pr-N.deltaL-N.translateX-d.value.x,R=N.height-N.pb-N.deltaT-N.translateY-d.value.y;m.value.n&&d.value.y+N.translateY<0&&r.value&&(d.value.y=-N.translateY,h.value.height=i.value.height+r.value.y+N.translateY),m.value.w&&d.value.x+N.translateX<0&&r.value&&(d.value.x=-N.translateX,h.value.width=i.value.width+r.value.x+N.translateX),h.value.width>M&&(h.value.width=M),h.value.height>R&&(h.value.height=R)}}}function u(N){if(!o.value||!i.value||!r.value||!m.value)return;N.subtract(o.value);const M=N.x,R=N.y;m.value.n?(d.value.y=r.value.y+R,h.value.height=i.value.height-R):m.value.s&&(h.value.height=i.value.height+R),m.value.e?h.value.width=i.value.width+M:m.value.w&&(h.value.width=i.value.width-M,d.value.x=r.value.x+M),c(),C(),w()}function b(N){if(!v.value)return;const M=Y.fromEvent(N);M&&u(M)}function F(){if(a.value){const{width:N,height:M,x:R,y:$}=a.value.getBoundingClientRect(),q=Y.getTransformInfo(a.value);return{size:{width:N,height:M},position:{x:R-q.x,y:$-q.y}}}return null}function E(N){if(a.value){const M=F();p.value=M}o.value=void 0,i.value=null,r.value=null,h.value=null,d.value=null,m.value=null,v.value=null,document.removeEventListener("mousemove",b),document.removeEventListener("mouseup",E)}function I(){document.addEventListener("mousemove",b),document.addEventListener("mouseup",E)}function D(N){N instanceof MouseEvent&&N.button===2||S.value&&(document.body.click(),N.stopPropagation(),N.preventDefault(),o.value=Y.fromEvent(N),v.value=N.target,f(N),I())}function O(N){return a.value=N,x.value&&t.createVNode(t.Fragment,null,[t.createVNode("div",{class:"fv-resizable-handle fv-resizable-n",type:"n",onMousedown:M=>D(M)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-e",type:"e",onMousedown:M=>D(M)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-s",type:"s",onMousedown:M=>D(M)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-w",type:"w",onMousedown:M=>D(M)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-ne",type:"ne",onMousedown:M=>D(M)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-se fv-resizable-diagonal",type:"se",onMousedown:M=>D(M)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-sw",type:"sw",onMousedown:M=>D(M)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-nw",type:"nw",onMousedown:M=>D(M)},null)])}function T(N=!0){document.body.click();const M=l.value||document.body,R=ne.getCurrent(M),$=a.value;N&&$&&(k.value=F(),k.value.transform=$.style.transform),R&&$&&(h.value=R,h.value.height-=14,h.value.width-=14,$.style.height=h.value.height+"px",$.style.width=h.value.width+"px",$.style.left="7px",$.style.top="7px",$.style.transform="",p.value={size:h.value,position:{x:0,y:0}},S.value=!1,g.value=!0)}function B(){var N,M;if(document.body.click(),k.value){const R={width:k.value.size.width||0,height:k.value.size.height||0},$={x:(window.innerWidth-R.width)/2,y:(window.innerHeight-R.height)/2};(N=h.value)==null||N.set(R),(M=d.value)==null||M.set($);const q=a.value;q.style.height=R.height+"px",q.style.width=R.width+"px",q.style.left=`${$.x}px`,q.style.top=`${$.y}px`,q.style.transform="",p.value={size:R,position:$},S.value=e.draggable,g.value=!1}}function P(){if(a.value){const N=ne.getCurrent(a.value);if(N){const{width:M,height:R}=N;a.value.style.left=`${(window.innerWidth-M)/2}px`,a.value.style.top=`${(window.innerHeight-R)/2}px`,a.value.style.transform=""}}}function H(){const N=()=>{g.value?T(!1):P(),document.body.click()};return window.addEventListener("resize",N),()=>{window.removeEventListener("resize",N)}}const j=H();return{renderResizeBar:O,boundingElement:l,resizedEventParam:p,maximize:T,restore:B,allowDrag:S,isMaximized:g,unWindowResizeHandle:j,moveToCenter:P}}function _t(e,n,a){const l=t.ref(),o=t.ref(e.draggable),i=t.ref(e.lockAxis),r=t.ref(),h=t.ref(),d=t.ref(!1),m=t.ref(new Y(0,0)),v=t.ref(new Y(0,0)),y=t.ref(new Y(0,0)),p=t.ref(new Y(0,0));t.watch(()=>a.value,b=>{r.value.style.cursor=b?"move":"default"});function x(b,F){if(F.tagName==="BUTTON")return!1;if(F===b)return!0;for(const E in F.children)if(Object.prototype.hasOwnProperty.call(F.children,E)&&x(b,F.children[E]))return!0;return!1}function k(){var I,D;let b=y.value.x+v.value.x,F=y.value.y+v.value.y;i.value==="x"?(b=((I=m.value)==null?void 0:I.x)||0,y.value.x=0):i.value==="y"&&(F=((D=m.value)==null?void 0:D.y)||0,y.value.y=0);const E=`translate3d(${Math.round(b)}px, ${Math.round(F)}px, 0px)`;l.value&&(l.value.style.transform=E),p.value.x=b,p.value.y=F}function S(){if(!h.value||!l.value)return null;const b=h.value.getBoundingClientRect(),F=l.value.getBoundingClientRect(),E={top:b.top<F.top,right:b.right>F.right,bottom:b.bottom>F.bottom,left:b.left<F.left};return E.top||(y.value.y-=F.top-b.top),E.bottom||(y.value.y-=F.bottom-b.bottom),E.right||(y.value.x-=F.right-b.right),E.left||(y.value.x-=F.left-b.left),k(),E}function g(b){b&&(m.value&&b.subtract(m.value),y.value.set(b),k(),S())}function s(b){d.value&&o.value&&(b.stopPropagation(),b.preventDefault(),g(Y.fromEvent(b,r.value)))}function f(){var b;if(d.value){if(d.value=!1,v.value.add(y.value),y.value.reset(),(b=l.value)==null||b.classList.remove("ng-dragging"),!e.useTransform&&l.value){const{left:F,top:E}=l.value.getBoundingClientRect();l.value.style.left=Math.ceil(F)+"px",l.value.style.top=Math.ceil(E)+"px",l.value.style.transform="none"}n.emit("stopMove"),document.removeEventListener("mousemove",s),document.removeEventListener("mouseup",f)}}function w(){!d.value&&r.value&&(d.value=!0,r.value.classList.add("ng-dragging"),document.addEventListener("mousemove",s),document.addEventListener("mouseup",f))}function C(){if(l.value){const b=Y.getTransformInfo(l.value);v.value.set(b);return}v.value.reset()}function c(b){if(!a.value||b instanceof MouseEvent&&b.button===2)return;const F=b.target||b.srcElement;r.value!==void 0&&F&&!x(F,r.value)||o.value!==!1&&(document.body.click(),b.stopPropagation(),b.preventDefault(),m.value=Y.fromEvent(b,l.value),C(),w())}function u(b,F,E){if(o.value&&F){if(b)r.value=b;else if(e.dragHandle){if(e.dragHandle instanceof HTMLElement)r.value=e.dragHandle;else if(typeof e.dragHandle=="string"){const I=F.querySelector(e.dragHandle);I&&(r.value=I)}}l.value=F,h.value=E,r.value?(r.value.classList.add("ng-draggable"),r.value.addEventListener("mousedown",c)):o.value=!1}}return{registerDraggle:u,resetTranslate:C}}function Ye(e,n){if(e){const a=l=>{l.key.toLowerCase()===e.toLowerCase()&&n({event:l,key:e})};return document.addEventListener("keydown",a),()=>{document.removeEventListener("keydown",a)}}}function Xt(e,n){const a=t.ref(e.enableEsc);let l=null;return a.value?(l=Ye("Escape",o=>{n.emit("esc",{event:o.event,type:"esc"})}),{remove:l}):null}function Kt(e,n){const a=t.ref(e.enableEnter);let l=null;return a.value?(l=Ye("Enter",o=>{n.emit("enter",{event:o.event,type:"enter"})}),{remove:l}):null}const ce=t.defineComponent({name:"FModal",props:Yt,emits:["update:modelValue","accept","cancel","closed","resize","esc","enter","stopMove","buttonClick"],setup(e,n){const a=t.ref(e.width||300),l=t.ref(e.height||200),o=t.ref(e.modelValue),i=t.ref(""),r=t.ref(e.class),h=t.ref(e.fitContent),d=t.ref(e.showHeader),m=t.ref(""),v=t.ref(e.showCloseButton),y=t.ref(e.showMaxButton),p=t.ref(!1),x=t.ref(e.dialogType),k=t.ref(e.src),S=t.ref(""),g=t.ref(e.showButtons),s=t.ref(e.title),f=t.ref(e.containment||null),w=t.ref();s.value==="错误提示"&&(s.value=G.LocaleService.getLocaleValue("messageBox.errorTitle"));const C=t.ref(!1);function c(){const V=document.querySelectorAll(".farris-modal").length;(!V||V-1<=0)&&w.value===document.querySelectorAll(".farris-modal")[0]&&document.body.classList.remove("modal-open"),w.value&&w.value.classList.remove("show")}function u(V,A){const W=A?"accept":"cancel";Promise.resolve().then(()=>{var U;return(U=e.beforeClose)==null?void 0:U.call(e,{closeType:W})}).then(U=>{U&&(o.value=!1,n.emit("update:modelValue",!1),A!=null&&n.emit(A?"accept":"cancel"),n.emit("closed",V),c())})}const b=[{name:"cancel",text:G.LocaleService.getLocaleValue("messageBox.cancel")||"取消",class:"btn btn-secondary",handle:V=>{u(V,!1)}},{name:"accept",text:G.LocaleService.getLocaleValue("messageBox.ok")||"确定",class:"btn btn-primary",handle:V=>{u(V,!0)}}],F=t.ref(e.buttons&&e.buttons.length?e.buttons:b),E=t.computed(()=>!!m.value),I=t.computed(()=>!!g.value&&!!F.value),D=t.ref(),O=t.ref(),T=t.ref(e.maximized||!1),{renderResizeBar:B,maximize:P,restore:H,boundingElement:j,resizedEventParam:N,allowDrag:M,unWindowResizeHandle:R,moveToCenter:$}=Gt(e),{registerDraggle:q}=_t(e,n,M);function Te(){return!!document.querySelectorAll(".farris-modal").length&&document.body.classList.contains("modal-open")}t.watch(()=>e.title,(V,A)=>{V!==A&&(s.value=V)}),t.watch(()=>e.modelValue,(V,A)=>{V!==A&&(o.value=V,o.value&&e.draggable&&t.nextTick(()=>{O.value&&!f.value&&(f.value=O.value.parentElement,j.value=f.value,q(D.value,O.value,j.value),$())}),V||(f.value&&(f.value=null),c())),o.value?C.value=Te():(T.value=!1,M.value=e.draggable)}),t.watch(()=>e.showHeader,(V,A)=>{V!==A&&(d.value=V)}),t.watch(()=>e.showButtons,(V,A)=>{V!==A&&(g.value=V)}),t.watch(()=>N.value,(V,A)=>{const W=V||{},U=A||{};JSON.stringify(W)!==JSON.stringify(U)&&n.emit("resize",{newSize:V,oldSize:A,isMaximized:T.value})}),t.watch([()=>e.width,()=>e.height],(V,A)=>{(V[0]!==A[0]||V[1]!==A[1])&&(a.value=V[0]||500,l.value=V[1]||600)}),t.watch(()=>e.class,(V,A)=>{r.value=V});const se=t.computed(()=>(o.value&&document.body.classList.add("modal-open"),o.value)),$e=t.computed(()=>{var W;const V={modal:!0,"farris-modal":!0,fade:!0,"fe-cmp-page-modal":!!e.showFloatingClose};V["f-modal-fitContent"]=!!h.value,V.show=!!se.value;const A=(W=e.maskClass)==null?void 0:W.split(" ");return A==null||A.reduce((U,ie)=>(U[ie]=!0,U),V),V}),ul=t.computed(()=>{var W;const V={"modal-dialog":!0},A=(W=r.value)==null?void 0:W.split(" ");return A==null||A.reduce((U,ie)=>(U[ie]=!0,U),V),V}),dl=()=>z.isMobilePhone()&&!e.isMessager||!!e.fullscreen,fl=t.computed(()=>{const V=document.documentElement.clientWidth,A=document.documentElement.clientHeight;if(T.value)return{position:"fixed",top:"0px",left:"0px",width:"100vw",height:"100vh",margin:"0"};const W=Math.min(a.value,V),U=e.position==="right"?"100%":h.value?"auto":`${Math.min(l.value,A-10)}px`,ie=`${(window.innerHeight-(U==="100%"||U==="auto"?0:parseInt(U)))/2}px`,Ol=e.position==="right"?`${window.innerWidth-W}px`:`${(window.innerWidth-W)/2}px`,Bt={position:"absolute",top:ie,left:Ol,width:z.isMobilePhone()?"auto":`${W}px`,height:U};return e.mask||(Bt.pointerEvents="auto"),Bt}),Vt=t.ref(z.getMaxZIndex()||1050),ml=t.computed(()=>{const V={display:"block",overflow:"hidden"};return e.mask||(V.pointerEvents="none",V.backgroundColor="transparent"),C.value&&(V.backgroundColor="transparent"),V.zIndex=Vt.value,V}),yl=t.computed(()=>({"modal-content":!0,"modal-content-has-header":d.value,"is-mobile":dl()})),pl=t.computed(()=>{const V={display:d.value?"":"none"};return V["pointer-events"]=M.value?"auto":"none",V}),hl=t.computed(()=>({"f-icon":!0,modal_maximize:!0,modalrevert:T.value})),gl=t.computed(()=>({"modal-body":!0,"f-utils-flex-column":x.value==="iframe","f-utils-fill":!0}));function bl(){return{height:`${e.footerHeight||60}px`}}const vl=t.computed(()=>{const V={textAlgin:S.value},A=bl();return Object.assign(V,A)});function ze(V){if(V==null||V.stopPropagation(),T.value){T.value=!1,H();return}P(),T.value=!0}async function xl(V,A){V.handle?await V.handle(A,V)&&n.emit("closed",A):n.emit("buttonClick",{button:V,$event:A})}function Cl(V){V.width&&(a.value=V.width),V.height&&(l.value=V.height),V.buttons&&(F.value=V.buttons),V.title&&(s.value=V.title)}let We=null,qe=null;t.onBeforeMount(()=>{C.value=Te()}),t.onMounted(()=>{O.value&&!f.value&&(f.value=O.value.parentElement,j.value=f.value,q(D.value,O.value,j.value)),se.value&&document.body.classList.add("modal-open"),We=Xt(e,n),qe=Kt(e,n)}),t.onUnmounted(()=>{R&&R(),We&&We.remove(),qe&&qe.remove()}),n.expose({modalElementRef:O,updateModalOptions:Cl,close:u,maxDialog:ze,isMaximized:T,disableButtons:(V,A=!0)=>{F.value.forEach(W=>{W.name&&V.includes(W.name)&&(W.disabled=A)})}});function wl(){return t.createVNode("div",{class:"action-wrapper",onClick:V=>u(V,!1)},[t.createVNode("span",{class:"close-icon"},[t.createVNode("i",{class:"f-icon f-icon-close"},null)])])}function kl(){return t.createVNode("ul",null,[p.value&&t.createVNode("li",{class:"f-btn-icon f-bare"},[t.createVNode("span",{class:"f-icon modal_minimize"},null)]),y.value&&t.createVNode("li",{onClick:ze,class:"f-btn-icon f-bare",style:"pointer-events: auto;"},[t.createVNode("span",{class:hl.value},null)]),v.value&&t.createVNode("li",{class:"f-btn-icon f-bare",onClick:V=>u(V,!1),style:"pointer-events: auto;"},[t.createVNode("span",{class:"f-icon modal_close"},null)])])}const Sl=V=>{V.preventDefault();const A=V.currentTarget,W=V.deltaY*.5;A.scrollLeft+=W};function Fl(){return t.createVNode("div",{class:"modal-footer",style:vl.value},[F.value&&t.createVNode("div",{class:"buttons",onWheel:Sl},[F.value.map(V=>{var U;const A=t.ref(V.disabled),W=V.class||((U=V.appearance)==null?void 0:U.class)||"btn btn-secondary";return t.createVNode("button",t.mergeProps(z.extractDataAttrs(V),{name:V.name,style:V.styles,type:"button",disabled:A.value,class:W+(V.iconClass?" btn-icontext":"")+(V.visible===!1?"d-none":""),onClick:ie=>{xl(V,ie)}}),[!!V.iconClass&&t.createVNode("i",{class:V.iconClass},null),V.text])})])])}function Mt(V){y.value&&ze()}function Tl(){return t.createVNode(t.Fragment,null,[T.value&&t.createVNode("div",{class:"modal-header",style:"position: absolute;background: transparent;height: 45px;width: 100%;",onDblclick:V=>Mt()},null),t.createVNode("div",{ref:D,class:"modal-header",style:pl.value,onDblclick:V=>Mt()},[n.slots.headerTemplate?n.slots.headerTemplate():t.createVNode("div",{class:"modal-title"},[E.value&&t.createVNode("span",{class:m.value,style:"margin-right: 8px"},null),t.createVNode("span",{class:"modal-title-label"},[s.value])]),t.createVNode("div",{class:"actions"},[kl()])])])}function Nl(){return n.slots.footerTemplate?n.slots.footerTemplate():I.value&&Fl()}function Vl(V){if(V.stopPropagation(),e.allowClickMaskToClose){if(V.target!==w.value)return;u(V,!1)}}function Ml(){var V,A;return t.createVNode("div",{id:i.value,class:ul.value,style:fl.value,ref:O},[e.showFloatingClose&&wl(),t.createVNode("div",{class:yl.value},[d.value&&Tl(),t.createVNode("div",{class:gl.value},[(A=(V=n.slots).default)==null?void 0:A.call(V),x.value==="iframe"&&t.createVNode("iframe",{title:i.value,class:"f-utils-fill",width:"100%",frameborder:"0",src:k.value},null)]),Nl()]),!h.value&&O.value&&!T.value&&B(O.value)])}function Bl(V){return V||"body"}return t.watchEffect(()=>{se.value&&(Vt.value=z.getMaxZIndex()||1050)}),()=>t.createVNode(t.Teleport,{to:Bl(e.host)},{default:()=>[se.value&&t.createVNode(t.Transition,{name:"fade",appear:!0},{default:()=>[t.createVNode("div",{ref:w,class:$e.value,style:ml.value,onClick:Vl},[Ml()])]})]})}});function Ge(e){if(e.content&&e.content.render)return e.content.render;if(e.render&&typeof e.render=="function")return e.render}function Jt(e){const n=document.createElement("div");n.style.display="contents";const a=e.type||"modal",l=t.createApp({setup(o,i){t.onUnmounted(()=>{document.body.removeChild(n)});const r=t.ref(),h=t.ref(e.class||""),d=t.ref(!0),m=t.ref(e.title||""),v=Ge(e),y=e.closedCallback||(c=>{}),p=c=>{d.value=!1,l.unmount(),y(c)};if(i.expose({ref:r}),a==="drawer")return()=>t.createVNode(Ne,{ref:r,modelValue:d.value,"onUpdate:modelValue":c=>d.value=c,id:"modal-service-drawer",title:m.value,width:e.width,height:e.height,position:e.position,backgroundColor:e.backgroundColor,host:e.host,showMask:e.showMask,allowClickMaskToClose:e.allowClickMaskToClose,transparent:e.transparent,showHeader:e.showHeader,showFooter:e.showButtons,buttons:e.buttons,beforeClose:e.beforeClose,customClass:h.value,onAfterClose:p},{default:()=>[v&&v(l)]});const x=t.ref(!!e.showButtons),k=t.ref(!!e.showHeader),S=t.ref(e.showCloseButton==null?!0:e.showCloseButton),g=t.ref(!!e.showFloatingClose),s=e.acceptCallback||(()=>{}),f=e.rejectCallback||(()=>{}),w=e.resizeHandle||(c=>{}),C=e.stopMoveHandle||(c=>{});return()=>t.createVNode(ce,{ref:r,class:h.value,modelValue:d.value,"onUpdate:modelValue":c=>d.value=c,title:m.value,width:e.width,height:e.height,buttons:e.buttons,"show-header":k.value,"show-buttons":x.value,"show-close-button":S.value,"show-max-button":!1,showFloatingClose:g.value,onAccept:s,onCancel:f,fitContent:e.fitContent==null?!0:e.fitContent,onClosed:p,onResize:w,onStopMove:C},{default:()=>[v&&v(l)]})}});return document.body.appendChild(n),l.use(G.LocaleService.i18n),l.mount(n),l}class _e{constructor(n){Q(this,"appContext",null);Q(this,"modalRef",t.ref());Q(this,"activeModalIndex",t.ref(0));Q(this,"modalRefs",{});Q(this,"isUseEscCloseModal",t.ref(!1));this.app=n,this.appContext=n?n._context:null}getCurrentModal(){return this.modalRefs[this.activeModalIndex.value]}adaptToWindow(n,a){const{width:l,height:o}={width:window.innerWidth,height:window.innerHeight};return l<n&&(n=l-14),o<a&&(a=o-14),{width:n,height:a}}static show(n){const a=Object.assign({title:"",showButtons:!0,showHeader:!0},n);return Jt(a)}close(n){var a,l;n?(l=n.value)==null||l.close():(a=this.getCurrentModal())==null||a.close()}open(n){const a=document.createDocumentFragment(),l=n.type||"modal";n.showMaxButton&&n.fitContent&&(n.showMaxButton=!1);const o=t.shallowRef(Object.assign({title:"",showButtons:!0,showHeader:!0,maximized:!1},n)),i=t.ref(!0),r=Ge(o.value),h=o.value.closedCallback||((s,f)=>{}),d=o.value.openedCallback||(s=>{});let m;const v=s=>{var w;i.value=!1;const f=(w=s==null?void 0:s.target)==null?void 0:w.classList.contains("modal_close");h(s,this.isUseEscCloseModal.value?"esc":f?"icon":"button")},y=s=>{v(s),m&&t.nextTick(()=>{if(this.modalRefs[this.activeModalIndex.value]&&delete this.modalRefs[this.activeModalIndex.value],t.render(null,a),m=null,this.modalRef.value=null,this.modalRefs){const f=Object.keys(this.modalRefs).map(w=>Number(w));f.length>0?this.activeModalIndex.value=Math.max(...f):this.activeModalIndex.value=0,this.modalRefs[this.activeModalIndex.value]&&(this.modalRef.value=this.modalRefs[this.activeModalIndex.value])}this.isUseEscCloseModal.value=!1})},p=t.ref();let x;if(l==="drawer")x=()=>t.createVNode(Ne,t.mergeProps({ref:p,modelValue:i.value,"onUpdate:modelValue":s=>i.value=s,id:"modal-service-drawer"},o.value,{onAfterClose:y}),{default:()=>[r&&r(this.app)]});else{const s=o.value.acceptCallback||(()=>{}),f=o.value.rejectCallback||(()=>{}),w=o.value.resizeHandle||(E=>{}),C=n.stopMoveHandle||(E=>{}),c=E=>{var I;this.isUseEscCloseModal.value=!0,(I=this.getCurrentModal())==null||I.close(E==null?void 0:E.event)},{width:u,height:b}=o.value,F=this.adaptToWindow(Number(u)||500,Number(b)||320);Object.assign(o.value,F),x=()=>t.createVNode(ce,t.mergeProps({ref:p,modelValue:i.value,"onUpdate:modelValue":E=>i.value=E},o.value,{isMessager:o.value.class&&o.value.class.indexOf("modal-message")>-1,onAccept:s,onCancel:f,onClosed:y,onResize:w,onEsc:c,onStopMove:C,maximized:o.value.maximized}),{default:()=>[r&&r(this.app)]})}m=(s=>{const f=t.h(x,s);return f.appContext=this.appContext,t.render(f,a),f})({...o.value}),this.activeModalIndex.value++;const S=this.activeModalIndex.value;this.modalRefs[S]=p.value;const g=s=>{o.value={...o.value,...s},m&&t.render(t.cloneVNode(m,{...o}),a)};return t.nextTick(()=>{this.modalRefs[S]=p.value,this.modalRef.value=p.value,d(new Event("opened"))}),{update:g,destroy:y,modalRef:p,close:()=>{var s;(s=p.value)==null||s.close()},disableButtons:(s,f=!0)=>{var w,C;(C=(w=p.value)==null?void 0:w.disableButtons)==null||C.call(w,s,f)}}}}const ue=Symbol("FModalService");ce.install=e=>{e.component(ce.name,ce);const n=new _e(e);e.provide(ue,n),e.provide("FModalService",n)};function Xe(e,n){function a(){const l=e.beforeOpen||e.beforeClickButton||null;let o=Promise.resolve(!0);if(l){const i=l(n.value);if(typeof i>"u")return o;typeof i=="boolean"?o=Promise.resolve(i):o=i}return o}return{judgeCanOpen:a}}function Zt(e,n,a,l,o){const i=t.ref(e.buttonBehavior),r=t.ref(e.popupOnInput),h=t.computed(()=>({"input-group-append":!0,"append-force-show":e.showButtonWhenDisabled&&(e.readonly||e.disable)})),{judgeCanOpen:d}=Xe(e,o),m=t.computed(()=>e.showButtonWhenDisabled||(!e.editable||!e.readonly)&&!e.disable),v=t.inject(ue,null),y=t.ref();async function p(S){if(await d()&&m.value){const g=!!n.slots.default;if(i.value==="Modal"){const s=e.modalOptions,f=v==null?void 0:v.open({...s,render:()=>n.slots.default&&n.slots.default()});y.value=f==null?void 0:f.modalRef}i.value==="Overlay"&&Ut.show({host:document.body,backgroundColor:"rgba(0,0,0,.15)",render:()=>n.slots.default&&n.slots.default()}),g&&i.value==="Popup"&&l.togglePopup(!0),g&&r.value&&l.hidePopup(),n.emit("clickButton",{origin:S,value:e.modelValue})}}function x(S){n.emit("mouseEnterIcon",S)}function k(S){n.emit("mouseLeaveIcon",S)}return{buttonGroupClass:h,onClickButton:p,onMouseEnterButton:x,onMouseLeaveButton:k,modalRef:y}}function Qt(e,n,a,l,o,i){const r=t.ref(!1),h=t.computed(()=>e.enableClear&&!e.readonly&&!e.disable&&!z.isMobilePhone()),{changeTextBoxValue:d,hasClearClass:m}=i,v=t.ref(!1);function y(g){r.value=g,m.value=g}const p=t.computed(()=>h.value&&!!(o!=null&&o.value)&&v.value);t.watch(o,()=>{y(p.value)});function x(g){const s=!e.readonly&&!e.disable&&e.editable,f=!e.editable;g==null||g.stopPropagation(),(s||f)&&(d(""),o.value="",y(!r.value),n.emit("clear"))}function k(g){if(v.value=!0,!!h.value){if(!a.value){y(!1);return}!e.disable&&!e.readonly&&y(!0)}}function S(g){v.value=!1,h.value&&y(!1)}return{enableClearButton:h,showClearButton:r,onClearValue:x,onMouseEnterTextBox:k,onMouseLeaveTextBox:S}}function en(e,n,a,l,o){const i=t.computed(()=>e.popupOnInput),r=t.computed(()=>e.popupOnFocus),{shouldPopupContent:h,closeAllPopover:d}=o,m=t.ref(!1),v=t.computed(()=>e.enableTitle?a.value:""),y=t.computed(()=>(e.disable||e.readonly)&&!e.forcePlaceholder?"":e.placeholder),p=t.computed(()=>e.readonly||!e.editable||z.isMobilePhone()),x=t.ref(!1),k=t.computed(()=>!e.disable&&x.value),S=t.computed(()=>({"text-left":e.textAlign==="left","text-center":e.textAlign==="center","text-right":e.textAlign==="right","form-control":!0,"f-utils-fill":!0})),g=t.computed(()=>({"input-group":!0,"f-state-disabled":e.disable,"f-state-editable":e.editable&&!e.disable&&!e.readonly,"f-state-readonly":e.readonly,"f-state-focus":k.value,"input-group--has-clear":e.enableClear&&m.value}));function s(D,O=!0){a.value=D,O&&(n.emit("change",D),n.emit("update:modelValue",D))}function f(D){h.value=!1,s(D,!0)}t.watch(()=>e.modelValue,D=>{a.value=D});function w(D){x.value=!1,n.emit("blur",D),D.stopPropagation()}function C(D){n.emit("click",D),d(),n.slots.default&&!e.disable&&!e.readonly&&e.popupOnClick&&o.togglePopup()}function c(D){!e.disable&&!e.readonly&&(x.value=!0,p.value||(n.emit("focus",D),r.value&&!h.value&&o.popup()))}function u(D){n.emit("input",D);const O=D.target.value;l.value=O,a.value!==O&&s(O,e.updateOn==="change"),i.value&&!h.value&&o.popup()}function b(D){D.target.tagName!=="INPUT"&&D.preventDefault(),D.stopPropagation()}function F(D){n.emit("keydown",D)}function E(D){D.key==="Enter"&&(i.value||r.value)&&o.hidePopup(),n.emit("keyup",D)}function I(D){const O=D.target.value;D.stopPropagation(),s(O)}return{hasFocusedTextBox:k,isTextBoxReadonly:p,textBoxClass:S,textBoxPlaceholder:y,textBoxTitle:v,inputGroupClass:g,hasClearClass:m,changeTextBoxValue:s,commitValue:f,onBlurTextBox:w,onClickTextBox:C,onFocusTextBox:c,onInput:u,onKeyDownTextBox:F,onKeyUpTextBox:E,onMouseDownTextBox:b,onTextBoxValueChange:I}}const ae="FarrisVue_PopoverInstancesKey";function tn(e,n,a,l){const o=t.ref(),i=t.ref(!1),{judgeCanOpen:r}=Xe(e,l);t.watch(()=>o.value,(x,k)=>{window[ae]=window[ae]||new WeakMap,x?window[ae].set(a.value,x):window[ae].delete(a.value)});function h(){if(window[ae]){const x=window[ae];document.querySelectorAll(".f-button-edit,.v-popover").forEach(k=>{const S=x.get(k);S&&k!==a.value&&!a.value.closest(".popover-fitcontent")&&S.hide()})}}function d(){const x=o.value;x&&(x.show?x.show(a.value):x.open&&x.open(a.value))}async function m(x=!1){if(!!n.slots.default){if(!x&&!i.value&&!await r())return;i.value=!i.value,i.value&&(await t.nextTick(),d())}}async function v(x=!1){if(!!n.slots.default){if(!x&&!await r())return;i.value=!0,await t.nextTick(),d()}}function y(){i.value=!1}function p(){i.value=!0,t.nextTick(()=>{d()})}return{hidePopup:y,showPopup:p,popup:v,shouldPopupContent:i,togglePopup:m,popoverRef:o,closeAllPopover:h}}function nn(e,n,a){const l=t.ref(),{isTextBoxReadonly:o,textBoxClass:i,textBoxPlaceholder:r,textBoxTitle:h,onBlurTextBox:d,onClickTextBox:m,onFocusTextBox:v,onInput:y,onKeyDownTextBox:p,onKeyUpTextBox:x,onMouseDownTextBox:k,onTextBoxValueChange:S}=a,g=t.ref(e.id),{uuid:s}=z.useGuid(),f=t.computed(()=>({}));t.onMounted(()=>{var b,F;e.selectOnCreated&&((b=l.value)==null||b.select()),e.focusOnCreated&&((F=l.value)==null||F.focus({preventScroll:!0})),g.value||(g.value="button-edit_"+s(8)),g.value=g.value+"-textbox"});const w=t.ref(!1),C=b=>{b.preventDefault(),w.value=!0},c=b=>{b.preventDefault(),w.value=!1,y(b)};function u(b){w.value||y(b)}return()=>t.createVNode("input",{id:e.id?e.id+"-textbox":void 0,ref:l,name:"input-group-value",autocomplete:e.autoComplete?"on":"off",class:i.value,style:f.value,disabled:e.disable,maxlength:e.maxLength,minlength:e.minLength,placeholder:r.value,readonly:o.value,tabindex:e.tabIndex,title:h.value,type:e.inputType,value:n.value,onBlur:d,onChange:S,onClick:m,onFocus:v,onInput:u,onKeydown:p,onKeyup:x,onMousedown:k,onCompositionend:c,onCompositionstart:C},null)}function an(e,n,a){const l=t.ref(e.separator),o=t.computed(()=>e.readonly||e.disable),{changeTextBoxValue:i,onFocusTextBox:r,onBlurTextBox:h,onClickTextBox:d,textBoxPlaceholder:m}=a,v=t.computed(()=>n.value?n.value.split(l.value).map(k=>({name:k,selectable:!0})):[]);function y(k){i(k.map(S=>S.name).join(l.value),!0)}t.watch(()=>e.separator,k=>{l.value=k});const p=t.ref(!e.disable&&!e.readonly);t.watch([()=>e.disable,()=>e.readonly],([k,S],[g,s])=>{p.value=!k&&!S});function x(k){d(k)}return()=>t.createVNode(Et,{tabindex:e.tabIndex,onFocus:r,onBlur:h,id:`${e.id}-tag-editor`,class:"form-control",placeholder:m.value,data:v.value,showClose:!o.value,showInput:!0,disable:o.value,onChange:y,onClick:x},null)}function ln(e,n,a,l){const{buttonGroupClass:o,onClickButton:i,onMouseEnterButton:r,onMouseLeaveButton:h}=a,{enableClearButton:d,showClearButton:m,onClearValue:v}=l,y=t.ref(),p=X.debounce(S=>{i(S)},e.buttonBehavior==="Modal"?0:200),x=()=>{n.emit("beforeClearValue")},{renderExpandContent:k}=Dt.useInputExpand(e,n);return{renderButtonGroup:()=>t.createVNode(t.Fragment,null,[t.createVNode("div",{id:e.id?`${e.id}-button-group`:void 0,class:o.value},[d.value&&t.withDirectives(t.createVNode("span",{class:"input-group-text input-group-clear",onClick:v,onMousedown:x},[t.createVNode("i",{class:"f-icon modal_close"},null)]),[[t.vShow,m.value]]),n.slots.buttonContent?t.createVNode("span",{class:"input-group-text input-group-append-button",onClick:p,onMouseenter:r,onMouseleave:h},[n.slots.buttonContent()]):e.buttonContent?t.createVNode("span",{class:"input-group-text input-group-append-button",innerHTML:e.buttonContent,ref:y,onClick:S=>p(S),onMouseenter:r,onMouseleave:h},null):null]),k()]),buttonHandleElement:y}}function on(e,n,a){const l=t.ref(e.popupMinWidth),{hidePopup:o,popoverRef:i}=a,r=()=>{n.emit("shown")},h=()=>{o(),n.emit("hidden")};return()=>z.isMobilePhone()?t.createVNode(Ne,{id:`${e.id}-drawer`,ref:i,position:e.placement,width:"auto",height:"auto",host:e.popupHost,showHeader:!1,showFooter:!1,customClass:"f-drawer--no-padding","onUpdate:modelValue":d=>d?r():h()},{default:()=>{var d,m;return[t.createTextVNode(" "),(m=(d=n.slots).default)==null?void 0:m.call(d),t.createTextVNode(" ")]}}):t.createVNode(Pt,{id:`${e.id}-popover`,ref:i,placement:e.placement,host:e.popupHost,"keep-width-with-reference":e.keepWidthWithReference,fitContent:!0,"right-boundary":e.popupRightBoundary,minWidth:l.value,class:e.popupClass,offsetX:e.popupOffsetX,offsetY:e.popupOffsetY,onHidden:h,onShown:r,beforeClose:e.beforeClosePopup,limitContentBySpace:e.limitContentBySpace},{default:()=>{var d,m;return[(m=(d=n.slots).default)==null?void 0:m.call(d)]}})}const ge=t.defineComponent({name:"FButtonEdit",props:At,emits:["updateExtendInfo","clear","change","click","clickButton","blur","focus","mouseEnterIcon","mouseLeaveIcon","keyup","keydown","inputClick","input","update:modelValue","beforeClearValue","expandClick","hidden","shown"],setup(e,n){const a=t.ref(),l=t.ref(e.customClass),o=t.ref(e.modelValue),i=tn(e,n,a,o),{shouldPopupContent:r,hidePopup:h,showPopup:d,togglePopup:m}=i,v=Zt(e,n,a,i,o),y=t.ref(""),p=en(e,n,o,y,i),{hasFocusedTextBox:x,commitValue:k,inputGroupClass:S,changeTextBoxValue:g}=p,s=Qt(e,n,o,x,y,p),{onMouseEnterTextBox:f,onMouseLeaveTextBox:w}=s,C=t.ref(!1),c=t.computed(()=>{const N={"f-button-edit":!0,"f-cmp-inputgroup":!0,"f-button-edit-nowrap":!e.wrapText};return l.value&&l.value.split(" ").reduce((M,R)=>(M[R]=!0,M),N),N}),u=t.computed(()=>({overflow:e.wrapText?"hidden":""})),b=t.computed(()=>({})),F=t.ref(e.showAppendButton);function E(){if(!e.multiSelect||e.inputType!=="tag"||!a.value)return 0;let N=0;const M=Array.from(a.value.querySelectorAll(".farris-tag-item"));return M&&M.length&&(N=M.map(R=>R.offsetTop).filter(R=>R>20).length),N}const I=t.ref(E());t.onUpdated(()=>{I.value=E()});function D(){return e.multiSelect&&e.inputType==="tag"?()=>t.createVNode(t.Fragment,null,[an(e,o,p)(),!!I.value&&t.createVNode("div",{class:"d-flex flex-row mr-2 more-tags","more-tags":!0},[t.createVNode("span",{class:"multi--more-text"},[t.createTextVNode("+"),I.value])])]):nn(e,o,p)}let O=D();t.watch([()=>e.multiSelect,()=>e.inputType],()=>{O=D()});const{renderButtonGroup:T,buttonHandleElement:B}=ln(e,n,v,s),P=on(e,n,i),H=t.ref(r.value),j={displayText:y,commitValue:k,elementRef:a,hidePopup:h,showPopup:d,popoverRef:i.popoverRef,shouldPopupContent:r,togglePopup:m,openDialog:()=>{B.value&&e.buttonBehavior==="Modal"&&B.value.click(),n.slots.content&&X.debounce(()=>{v.onClickButton(null)},e.buttonBehavior==="Modal"?0:200)()},getModal:()=>{var N;return e.buttonBehavior==="Modal"?(N=v.modalRef.value)==null?void 0:N.value:null},getTextbox:()=>{var N;return(N=a.value)==null?void 0:N.querySelector("input")},forceClosePopup:()=>{H.value=!1,C.value=!0,r.value=!1},clear:()=>{g(""),y.value=""},setText:N=>{g(N,!1),y.value=N}};return t.onMounted(()=>{a.value.componentInstance=j,window.onresize=()=>{document.body.click()}}),t.onBeforeUnmount(()=>{var N;window.onresize=null,(N=window[ae])==null||N.delete(a.value)}),n.expose(j),t.watch(()=>r.value,async(N,M)=>{if(C.value){H.value=N,C.value=!1;return}if(!N&&e.beforeClosePopup&&typeof e.beforeClosePopup=="function"){try{const R=await e.beforeClosePopup();H.value=!R,(!R||e.readonly)&&(r.value=!0)}catch(R){console.error("Error in beforeClosePopup:",R),H.value=M,r.value=M}return}H.value=N}),()=>{var N,M;return t.createVNode(t.Fragment,null,[t.createVNode("div",t.mergeProps(n.attrs,{ref:a,class:c.value,id:e.id?e.id:void 0,style:u.value}),[t.createVNode("div",{id:e.id?`${e.id}-input-group`:void 0,class:S.value,style:b.value,onMouseenter:f,onMouseleave:w},[(M=(N=n.slots).precontent)==null?void 0:M.call(N),n.slots.content?n.slots.content():O(),n.slots.content?null:F.value&&T()])]),H.value&&P()])}}}),rn={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/field-selector.schema.json",title:"field-selector",description:"A Farris Input Component",type:"object",properties:{disabled:{description:"",type:"boolean",default:!1},readonly:{description:"",type:"boolean",default:!1},modelValue:{description:"",type:"string",default:""},repositoryToken:{description:"",type:"object",default:null},fields:{description:"",type:"array",default:null},editorParams:{type:"object",default:null},displayText:{description:"",type:"string",default:""},enableClear:{description:"",type:"boolean",default:!0},beforeOpen:{description:"",type:"function",default:null},onSubmitModal:{description:"",type:"function",default:null},editorType:{description:"",type:"string",default:"filter"},enableExpression:{description:"",type:"boolean",default:!1},expressionOptions:{description:"",type:"object",default:null},formContextData:{description:"",type:"object",default:{}},singleValue:{description:"",type:"boolean",default:!0},idField:{description:"",type:"string",default:"id"},textField:{type:"string",default:""},valueField:{type:"string",default:""},editable:{type:"boolean",default:!0},enableTitle:{type:"boolean",default:!0}}},Ve={disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},enableClear:{type:Boolean,default:!0},displayText:{type:String,default:""},enableExpression:{type:Boolean,default:!1},modelValue:{type:String,default:""},insertType:{type:String,default:"below"},fields:{type:Array,default:[]},repositoryToken:{type:Object,default:null},editorParams:{type:Object,default:null},onSubmitModal:{type:Function,default:null},beforeOpen:{type:Function,default:null},editorType:{type:String,default:"filter"},expressionOptions:{type:Object,default:null},formContextData:{type:Object,default:{}},singleValue:{type:Boolean,default:!0},idField:{type:String,default:"id"},textField:{type:String,default:""},valueField:{type:String,default:""},editable:{type:Boolean,default:!0},enableTitle:{type:Boolean,default:!0},disableConfirmWhenUnchanged:{type:Boolean,default:!1},compareOperators:{type:Array,default:[]},enableSearch:{type:Boolean,default:!1}},Ke=K.createPropsResolver(Ve,rn),Je={conditions:{type:Array,default:[]},fields:{type:Array,default:[]},activeIndex:{type:Number,default:-1},formatter:{type:Function,default:(e,n)=>`${n.raw.name} [${n.raw.path}]`},enableExpression:{type:Boolean,default:!1},expressionOptions:{type:Object,default:null},formContextData:{type:Object,default:{}},singleValue:{type:Boolean,default:!0},idField:{type:String,default:"id"},textField:{type:String,default:""},valueField:{type:String,default:""},compareOperators:{type:Array,default:[]},enableSearch:{type:Boolean,default:!1}},Ze=new Map([["appearance",K.resolveAppearance]]),Qe={$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"},beforeHide:{description:"关闭下拉面板前回调",type:"string"},onShown:{description:"面板打开事件",type:"string"},onHidden:{description:"面板关闭事件",type:"string"},onChange:{description:"值变化事件",type:"string",default:""},onInput:{description:"输入事件",type:"string",default:""},onClear:{description:"清空事件",type:"string",default:""},onDataChanged:{description:"清空事件",type:"string",default:""},hideDisabledItems:{description:"隐藏禁用项",type:"boolean",default:!1},expandable:{description:"",type:"boolean",default:!1},expandMode:{description:"",type:"string",default:"text"},expandContent:{description:"",type:"string",default:""},expandDisabled:{description:"",type:"boolean",default:!1},onExpandClick:{description:"",type:"string",default:""},showSelectAll:{description:"",type:"boolean",default:!1}},required:["type"],ignore:["id","appearance","binding","visible"],events:{onClear:"清空事件",onShown:"面板打开事件",onHidden:"面板关闭事件",onChange:"值变化事件",beforeOpen:"打开面板前事件",beforeHide:"关闭面板前事件"}};function et(e,n,a){return n}function sn(){function e(n,a,l){const o={};return o.beforeOpen=i=>a.call("beforeOpen",n,[i,n],l),o}return{resolve:e}}const be={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},showSelectAll:{type:Boolean,default:!1},modelValue:{type:String,default:""},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},expandable:{type:Boolean,default:!1},expandMode:{type:String,default:"text"},expandContent:{type:String,default:""},expandDisabled:{type:Boolean,default:!1},popupClass:{type:String,default:""},hideDisabledItems:{type:Boolean,default:!1}},cn=Object.assign({},be,{readonly:{}});K.createPropsResolver(be,Qe,Ze,et);const tt=K.getPropsResolverGenerator(be,Qe,Ze,et),un=sn(),dn={dataSource:{type:Array,default:[]},enableSearch:{type:Boolean,default:!1},idField:{type:String,default:"id"},multiSelect:{type:Boolean,default:!1},showSelectAll:{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}},fn=t.defineComponent({name:"FComboListContainer",props:dn,emits:["selectionChange"],setup(e,n){const a=t.ref(),l=t.ref(e.dataSource),o=t.ref(e.dataSource),i=t.ref([]),r=t.ref(e.separator),h=t.ref(e.width),d=t.ref(e.maxHeight),m=t.computed(()=>e.multiSelect),v=t.ref(e.multiSelect?String(e.selectedValues).split(r.value):[e.selectedValues]),y=t.computed(()=>({enableSelectRow:!0,multiSelect:e.multiSelect,multiSelectMode:"OnCheckAndClick",showCheckbox:m.value,showSelectAll:e.showSelectAll,showSelection:!0}));t.watch(e.dataSource,()=>{l.value=e.dataSource,o.value=e.dataSource}),t.computed(()=>e.enableSearch?"SearchBar":"ContentHeader");const p=t.computed(()=>{const s={};return h.value!==void 0&&(s.width=`${h.value}px`),d.value!==void 0&&d.value>0&&(s.maxHeight=`${d.value}px`),s});function x(s){a.value.search(s)}function k(s){i.value=s.map(f=>Object.assign({},f)),v.value=s.map(f=>f[e.idField]),n.emit("selectionChange",i.value)}function S(s){if(e.enableHighlightSearch)return;let f=[];const{searchOption:w}=e;typeof w=="function"?f=l.value.filter(C=>w(s,C)):f=l.value.filter(C=>C[e.valueField].indexOf(s)>-1||C[e.textField].indexOf(s)>-1),a.value.updateDataSource(f)}t.watch([()=>e.selectedValues],([s])=>{e.multiSelect?s===null?v.value=[]:v.value=String(s).split(r.value):s===null?v.value=[]:v.value=[s]});function g(s){a.value.activeRowById(s)}return t.onMounted(()=>{var s,f;if(!e.multiSelect){const w=(s=v.value)==null?void 0:s[0];let C=w;const c=l.value.map(u=>u[e.valueField||e.idField]);if(!X.isUndefined(w)&&c.includes(w)){const u=typeof w,b=typeof((f=l.value[0])==null?void 0:f[e.valueField||e.idField]);b==="number"&&u!==b&&(C=Number(w)),b==="boolean"&&u!==b&&(C=w==="true"?!0:w==="false"?!1:w),g(C)}}}),n.expose({search:x,activeRowById:g}),()=>t.createVNode("div",{class:"f-combo-list-container",style:p.value},[t.createVNode(It,{ref:a,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:y.value,enableHighlightSearch:e.enableHighlightSearch,selectionValues:v.value,onSelectionUpdate:k,onAfterSearch:S},null)])}}),nt={property:"all",duration:.3,timingFunction:"cubic-bezier(0.17, 0.89, 0.45, 1)",delay:0},mn=(e,n)=>{const a=e.lineHeight/2,l=z.useTouchMomentum({maxOverflowY:44}),o=t.reactive({...nt}),i=C=>{n.emit("change",C)},r=t.reactive({value:0,max:0,min:0,start:0,index:0,currentItem:void 0,active:!1}),h=()=>{r.max=e.visiableOptionCount/2*e.lineHeight;const C=e.column.length*e.lineHeight;r.min=r.max-C+e.lineHeight},d=(C=0)=>{h(),r.index=C,r.value=r.max-C*e.lineHeight,r.currentItem=e.column[C]},m=C=>{const c=e.column.length-1,u=Math.min(r.index,c),b=e.column.findIndex(F=>F[e.valueField]===C);return b>=0?b:u},v=C=>{const c=e.column.length-1;return r.index>c?e.column[c]:e.column[C]},y=C=>{C&&(r.currentItem=C,o.duration=0);const c=r.currentItem[e.valueField],u=m(c),b=v(r.index)[e.valueField];d(u),c!==b&&setTimeout(()=>{i(r.currentItem)},o.duration*1e3)},p=()=>{const C=Array.isArray(e.value)?e.value[0]:e.value;d(m(C))};p(),t.watch(()=>e.value,()=>{e.multiSelect||p()}),t.watch(()=>e.column,()=>y());const x=(C,c=r.max,u=r.min)=>{const b=r.start+C;r.value=b>a?Math.min(b,c):Math.max(b,u),r.index=Math.round((r.max-r.value)/e.lineHeight),r.currentItem=v(r.index)},k=z.useTouch(),S=C=>{k.start(C),r.active=!0,r.start=r.value,l.start(r.start),o.duration=0},g=C=>{C.preventDefault(),k.move(C),x(k.deltaY.value,r.max+e.lineHeight,r.min-e.lineHeight),l.move(k.deltaY.value),o.duration=nt.duration},s=C=>{const c=C<0,u=C%e.lineHeight>a?1:0,b=Math.floor(C/e.lineHeight);return(c?b-u:b+u)*e.lineHeight+a};return{translateY:r,transition:o,onTouchStart:S,onTouchMove:g,onTouchEnd:()=>{r.start=0;const C=l.end();let c=0;if(C){const{destination:u,duration:b}=l.get(r.value,r.min,r.max);c=u,o.duration=b/1e3}else c=r.value;x(s(c)),i(r.currentItem)},onTransitionend:()=>{r.active=!1},updateTranslate:y}},yn={column:{type:Array,default:()=>[]},valueField:{type:String,default:"value"},textField:{type:String,default:"text"},value:{type:[Array,String,Number],default:()=>[]},multiSelect:{type:Boolean,default:!1},showIcon:{type:Boolean,default:!1},lineHeight:{type:Number,default:0},visiableOptionCount:{type:Number,default:5}},pn=t.defineComponent({props:yn,emits:["change","click"],setup(e,n){const{addUnit:a}=z.useCommonUtils(),{bem:l}=z.useBem("FComboTouchList"),{translateY:o,transition:i,onTouchStart:r,onTouchMove:h,onTouchEnd:d,onTransitionend:m}=mn(e,n),v=x=>{n.emit("click",x)},y=t.computed(()=>({transform:`translateY(${a(o.value)})`,transition:`all ${o.active?i.duration:0}s ${i.timingFunction} 0s`})),p=x=>e.showIcon?Array.isArray(e.value)&&e.value.includes(x[e.valueField]):!1;return()=>t.createVNode("div",{class:l("column"),style:y.value,onTouchstart:r,onTouchmove:h,onTouchend:d,onTransitionend:m},[e.column.map(x=>t.createVNode("div",{class:l("column-item"),onClick:()=>v(x)},[t.createVNode("span",null,[x[e.textField]]),p(x)&&t.createVNode("span",{class:`f-icon f-icon-check ${l("column-item-icon")}`},null)]))])}}),hn={modelValue:{type:[String,Array],default:""},columns:{type:Array,default:()=>[]},title:{type:String,default:""},valueField:{type:String,default:"value"},textField:{type:String,default:"text"},childrenField:{type:String,default:"children"},multiSelect:{type:Boolean,default:!1},lineHeight:{type:Number,default:44},cancelText:{type:String,default:"取消"},confirmText:{type:String,default:"确定"},optionFormatter:{type:Function,default:void 0},visiableOptionCount:{type:Number,default:5},showToolbar:{type:Boolean,default:!0},separator:{type:String,default:","}},gn=(e,n)=>{const{finalValue:a,initValue:l,setSelectedByIndex:o,getSelectedValueByIndex:i}=n,{isArray:r,isFunction:h,isObject:d}=z.useCommonUtils(),m=c=>c&&c[0],v=t.computed(()=>{var c;return((c=e.columns)==null?void 0:c.length)>0&&r(e.columns[0])}),y=c=>{if((c==null?void 0:c.length)===0)return!1;const u=m(c);return u&&r(u[e.childrenField])},p=(c,u)=>{const b=m(c),F=i(u);let E=c.find(D=>D[e.valueField]===F);E=E||b;const I=E[e.childrenField]||[];if(y(I)){const D=p(I,u+1);return[I,...D]}return[I]},x=()=>{const c=e.columns,u=p(c,0);return[c,...u]},k=(c,u)=>{const b=c[e.textField];return h(e.optionFormatter)?e.optionFormatter(u,c):b},S=(c,u)=>c.map(b=>{const F=d(b)?b:{[e.valueField]:b,[e.textField]:b};return F[e.textField]=k(F,u),F}),g=t.computed(()=>{let c=[];return v.value?c=e.columns:y(e.columns)?c=x():c=[e.columns],c.map(S)}),s=()=>g.value.map((c,u)=>{const b=a.value[u];return c.find(E=>E[e.valueField]===b)}).filter(c=>c),f=()=>s().map(c=>c[e.valueField]),w=()=>s().map(c=>c[e.textField]).join("-"),C=()=>{g.value.forEach((c,u)=>{if(e.multiSelect)a.value[u].forEach(F=>{const E=c.find(I=>I[e.valueField]===F);E&&o(u,E)});else{const b=a.value[u],F=c.find(E=>E[e.valueField]===b);F?o(u,F):o(u,m(c))}})};return t.watch(()=>e.modelValue,()=>{l(e.modelValue),C()},{immediate:!0}),{columns:g,getPickeds:s,getValue:f,getTextValue:w}},bn=e=>{const{isArray:n,isMultiArray:a,isString:l,isDef:o}=z.useCommonUtils(),i=s=>{let f=[];return n(s)?f=s:l(s)?f=s.split(e.separator):o(s)&&(f=[s]),e.multiSelect?a(f)?f:[f]:f},r=t.ref([]),h=s=>{r.value=i(s)},d=t.reactive([]),m=t.computed(()=>d.map(s=>s[e.valueField])),v=t.reactive([]),y=t.computed(()=>v.map(s=>s.map(f=>f[e.valueField])));return{finalValue:r,initValue:h,getSelected:()=>e.multiSelect?v:d,getSelectedValue:()=>e.multiSelect?y.value:m.value,setSelectedByIndex:(s,f)=>{if(e.multiSelect){const w=v[s]||[];w.includes(f)?v[s]=w.filter(C=>C!==f):v[s]=[...w,f]}else d[s]=f},getSelectedByIndex:s=>e.multiSelect?v[s]:d[s],getSelectedValueByIndex:s=>e.multiSelect?y.value[s]:m.value[s]}},vn=t.defineComponent({props:hn,emits:["change","confirm","cancel","update:modelValue"],setup(e,n){const{emit:a}=n,{addUnit:l}=z.useCommonUtils(),o=bn(e),{finalValue:i,getSelectedValue:r,getSelectedValueByIndex:h,getSelected:d,setSelectedByIndex:m}=o,{columns:v}=gn(e,o),y=(w,C=!0)=>{const{value:c,index:u}=w;(C&&!e.multiSelect||!C&&e.multiSelect)&&(a("change",w),m(u,c))},p=()=>{i.value=r(),a("confirm",d()),a("update:modelValue",i.value)},x=()=>{a("cancel")},{bem:k}=z.useBem("FComboTouchList"),S=()=>t.createVNode("div",{class:k("toolbar")},[t.createVNode("div",{class:k("toolbar-left"),onClick:x},[t.createVNode("span",null,[e.cancelText])]),t.createVNode("div",{class:k("toolbar-title")},[t.createVNode("span",null,[e.title])]),t.createVNode("div",{class:k("toolbar-right"),onClick:p},[t.createVNode("span",null,[e.confirmText])])]),g=t.computed(()=>{const w=(e.visiableOptionCount+1)*e.lineHeight;return{height:l(w)}}),s=t.computed(()=>{const w=e.visiableOptionCount*e.lineHeight/2;return{backgroundSize:`100% ${l(w)}`}}),f=()=>t.createVNode("div",{class:k("content")},[t.createVNode("div",{class:k("columns"),style:g.value},[v.value.map((w,C)=>t.createVNode(pn,{column:w,value:h(C),showIcon:e.multiSelect,textField:e.textField,multiSelect:e.multiSelect,valueField:e.valueField,lineHeight:e.lineHeight,visiableOptionCount:e.visiableOptionCount,onChange:c=>y({value:c,index:C}),onClick:c=>y({value:c,index:C},!1)},null)),!e.multiSelect&&t.createVNode("div",{class:k("mask"),style:s.value},null),t.createVNode("div",{class:k("frame")},null)])]);return()=>t.createVNode("div",{class:k("")},[e.showToolbar&&S(),f()])}});function xn(e,n){const a=t.ref(""),l=t.ref(e.modelValue),o=t.ref(e.data||[]),i=t.ref(e.editable),r=t.computed(()=>e.hideDisabledItems?o.value.filter(s=>!s.disabled):o.value);function h(s){const f=e.multiSelect?String(s).split(e.separator):[String(s)],w=f.map(u=>[u,!0]),C=new Map(w);return o.value.filter(u=>C.has(String(u[e.valueField]))).sort((u,b)=>{const F=f.indexOf(u[e.valueField]),E=f.indexOf(b[e.valueField]);return F-E})}function d(s){const f=h(s).map(w=>w[e.textField]).join(e.separator);a.value=i.value?f||s:f}function m(s){if(e.multiSelect){const f=s.split(e.separator).map(C=>[C,!0]),w=new Map(f);return o.value.filter(C=>w.has(C[e.textField]))}return o.value.filter(f=>""+f[e.textField]===s)}function v(s){const f={};return f[e.idField]=s,f[e.textField]=s,[f]}function y(s){let f=m(s);const w=f&&f.length>0;return i.value&&!w&&(f=v(s)),f}function p(){const{url:s,method:f="GET",headers:w={"Content-Type":"application/json;charset=utf-8;"},body:C=null}=e.remote;if(!s)return;const{basePath:c}=z.useFarrisConfig().value,u=f.toLowerCase()==="get"?{method:f,headers:w}:{method:f,headers:w,body:C};let b=!1;fetch(new Request(c+s,u)).then(F=>{var I,D;if(F.status===200)return b=!!((D=(I=F.headers)==null?void 0:I.get("content-type"))!=null&&D.includes("application/json")),b?F.text():F.json();throw F.status===405?new Error(G.LocaleService.getLocaleValue("comboList.remoteError")):new Error(F.statusText)}).then(F=>{F.length&&(o.value=b?JSON.parse(F):F,l.value&&d(l.value))}).catch(F=>{console.warn(F)})}e.remote&&(e.load?e.load().then(s=>{o.value=s}).catch(s=>{console.log(s)}):p()),t.watch(()=>e.data,()=>{o.value=e.data}),t.watch([o],([s],[f])=>{if(e.modelValue!=null&&!e.multiSelect){const w=s.find(C=>C[e.valueField]===l.value);w?w[e.valueField]!==l.value?(l.value=w[e.valueField],a.value=w[e.textField],n.emit("update:modelValue",w[e.valueField]),n.emit("change",[w],w[e.valueField])):a.value!==w[e.textField]&&(a.value=w[e.textField]):l.value!==""&&(l.value="",a.value="",n.emit("update:modelValue",""),n.emit("change",[],""))}}),t.watch(()=>e.modelValue,(s,f)=>{f!==s&&(l.value=s,d(s))});function x(s){o.value=s,n.emit("dataChanged",s)}function k(){return o.value}function S(){return a.value}async function g(){const s=typeof e.beforeOpen=="function";return!e.beforeOpen||!s?Promise.resolve(!0):Promise.resolve().then(()=>e.beforeOpen({instance:{updateDataSource:x,getData:k,getDisplayText:S}})).then(f=>typeof(f==null?void 0:f.canOpen)=="boolean"?f==null?void 0:f.canOpen:!0)}return d(e.modelValue),{dataSource:o,filteredDataSource:r,displayText:a,editable:i,modelValue:l,beforeOpenList:g,getItemsByDisplayText:m,getItemsByValue:h,getSelectedItemsByDisplayText:y}}const Cn=["moz","ms","webkit"];function wn(){let e=0;return n=>{const a=new Date().getTime(),l=Math.max(0,16-(a-e)),o=setTimeout(()=>{n(a+l)},l);return e=a+l,o}}function kn(){if(typeof window>"u")return()=>0;if(window.requestAnimationFrame)return window.requestAnimationFrame.bind(window);const e=Cn.filter(n=>`${n}RequestAnimationFrame`in window)[0];return e?window[`${e}RequestAnimationFrame`]:wn()}kn(),t.ref("");function de(){if(typeof window>"u"||typeof navigator>"u")return!1;const e=navigator.userAgent||navigator.vendor||window.opera,n=[/iPhone/i,/iPod/i,/Android.*Mobile/i,/webOS/i,/BlackBerry/i,/IEMobile/i,/Opera Mini/i,/Harmony/i],a=[/iPad/i,/Android(?!.*Mobile)/i,/Tablet/i,/PlayBook/i,/Kindle/i,/Silk/i];for(const d of a)if(d.test(e))return!1;for(const d of n)if(d.test(e))return!0;if(typeof screen>"u")return!1;const l="ontouchstart"in window||navigator.maxTouchPoints>0,o=screen.width,i=screen.height,r=Math.min(o,i);return!!(l&&r<=768)}function Sn(){const e=de();return e&&document.body.classList.add("f-mobile"),e}typeof document<"u"&&Sn();const le=t.defineComponent({name:"FComboList",props:be,emits:["clear","update:modelValue","change","input","dataChanged","expandClick","hidden","shown"],setup(e,n){const a=t.ref(),l=t.ref(),o=t.ref(e.disabled||e.readonly),i=t.ref(e.enableClear),r=t.ref(e.enableSearch),h=t.ref(e.readonly),{dataSource:d,displayText:m,editable:v,modelValue:y,filteredDataSource:p,getItemsByDisplayText:x,getItemsByValue:k,beforeOpenList:S}=xn(e,n),g=t.ref(e.dropDownIcon);g.value==='<span class="f-icon f-icon-arrow-chevron-down"></span>'&&(g.value='<span id="'+e.id+'-icon-dropdown" class="f-icon f-icon-arrow-chevron-down"></span>');const s=t.computed(()=>e.multiSelect),f=t.computed(()=>l.value?l.value.elementRef.getBoundingClientRect().width:0);function w(){!s.value&&l.value&&l.value.hidePopup()}function C(j){m.value=j.map(M=>M[e.textField]).join(e.separator)||y.value;let N="";j.length===1?N=j[0][e.valueField]:N=j.map(M=>M[e.valueField]).join(e.separator),y.value!==N&&(y.value=N,n.emit("update:modelValue",y.value),n.emit("change",j,y.value))}function c(){const j=k(y.value);C(j)}function u(){h.value||m.value}function b(j){var N;y.value="",(N=a.value)==null||N.activeRowById(""),n.emit("clear")}function F(j){var N,M;e.enableSearch&&e.enableHighlightSearch&&((N=a.value)==null||N.search(j)),(M=a.value)==null||M.activeRowById(j),n.emit("change",[y.value],y.value)}function E(j){if(e.multiSelect){const N=x(j);e.viewType;const R=N.map($=>$[e.idField||e.valueField]).join(e.separator);y.value!==R&&(y.value=R,n.emit("update:modelValue",y.value),n.emit("change",N,y.value))}else j!==y.value&&(y.value=j,n.emit("update:modelValue",y.value),n.emit("change",[],j))}function I(){return m.value}function D(j){const{value:N}=j.target;F(N),n.emit("input",N)}function O(){l.value.hidePopup()}function T(j){d.value=j}function B(){return d.value}const P={getDisplayText:I,hidePopup:O,updateDataSource:T,getData:B};n.expose(P),t.watch([()=>e.disabled,()=>e.editable,()=>e.enableClear,()=>e.enableSearch,()=>e.readonly],([j,N,M,R,$])=>{o.value=j,v.value=N,i.value=M,r.value=R,h.value=$});const H=()=>{n.emit("expandClick")};return()=>t.createVNode(pe,{ref:l,id:e.id,disable:o.value,readonly:h.value,forcePlaceholder:e.forcePlaceholder,editable:v.value,buttonContent:g.value,placeholder:e.placeholder==="请选择"?G.LocaleService.getLocaleValue("comboList.placeholder"):e.placeholder,enableClear:i.value,maxLength:e.maxLength,tabIndex:e.tabIndex,enableTitle:e.enableTitle,multiSelect:e.multiSelect,inputType:e.multiSelect?e.viewType:"text",modelValue:m.value,"onUpdate:modelValue":j=>m.value=j,focusOnCreated:e.focusOnCreated,selectOnCreated:e.selectOnCreated,onClear:b,onClick:u,onChange:E,onBlur:c,onInput:D,beforeOpen:S,placement:de()?"bottom":e.placement,popupMinWidth:e.minPanelWidth,popupClass:"f-combo-list-wrapper",popupOnClick:e.popupOnClick,limitContentBySpace:!0,expandable:e.expandable,expandMode:e.expandMode,expandContent:e.expandContent,expandDisabled:e.expandDisabled,onExpandClick:H,onHidden:()=>n.emit("hidden"),onShown:()=>n.emit("shown")},{default:()=>[de()?t.createVNode(vn,{modelValue:y.value,valueField:e.valueField,textField:e.textField,columns:d.value,multiSelect:e.multiSelect,separator:e.separator,onConfirm:j=>{const N=e.multiSelect?j[0]||[]:j;C(N),l==null||l.value.hidePopup()},onCancel:()=>{l==null||l.value.hidePopup()}},null):t.createVNode(fn,{class:e.popupClass,ref:a,idField:e.idField,valueField:e.valueField,textField:e.textField,titleField:e.titleField,dataSource:p.value,selectedValues:y.value,separator:e.separator,multiSelect:e.multiSelect,showSelectAll:e.showSelectAll,enableSearch:r.value,maxHeight:e.maxHeight,enableHighlightSearch:e.enableHighlightSearch,width:e.fitEditor?f.value:void 0,onSelectionChange:j=>{C(j),w()}},null)]})}}),at={convertFrom:(e,n)=>(e.editor.remote||{})[n],convertTo:(e,n,a)=>{e.editor.remote=e.editor.remote||{},e.editor.remote[n]=a}};class Fn extends Ot.InputBaseProperty{constructor(n,a){super(n,a)}getCommonEditorProperties(n){var a,l,o,i;return{showSelectAll:{visible:!!((a=n.editor)!=null&&a.multiSelect),description:"多选模式下是否显示全选复选框",title:"启用全选",type:"boolean",default:!1,refreshPanelAfterChanged:!0},viewType:{visible:!!((l=n.editor)!=null&&l.multiSelect),description:"数据展示类型,有标签和文本两种方式",title:"数据展示类型",type:"enum",editor:{data:[{id:"tag",name:"标签"},{id:"text",name:"文本"}]},refreshPanelAfterChanged:!0},separator:{visible:!!((o=n.editor)!=null&&o.multiSelect)&&((i=n.editor)==null?void 0:i.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},hideDisabledItems:{description:"当数据项禁用时,隐藏数据项",title:"隐藏禁用项",type:"boolean",refreshPanelAfterChanged:!0}}}getEditorProperties(n){var d,m,v,y,p,x,k,S,g,s,f,w,C;const a=this;let l="";if(((d=n==null?void 0:n.binding)==null?void 0:d.type)==="Form"){const c=this.schemaService.getFieldByIDAndVMID(n.binding.field,this.viewModelId);(m=c==null?void 0:c.schemaField)!=null&&m.type&&(l=c.schemaField.type.$type)}const o=this.getPropertyEditorParams(n,["Variable"]),i=!n.editor.dataSourceType||n.editor.dataSourceType==="static",r=(((y=(v=this.designViewModelField)==null?void 0:v.type)==null?void 0:y.$type)===z.FormSchemaEntityFieldType$Type.StringType||!!this.formRule&&((p=this.designerHostService.schemaService.getFieldByID(n.binding.field))==null?void 0:p.type.$type)===z.FormSchemaEntityFieldType$Type.StringType)&&((x=n.editor)==null?void 0:x.type)==="combo-list"&&((k=n.editor)==null?void 0:k.dataSourceType)==="dynamic"&&!((g=(S=n.editor)==null?void 0:S.remote)!=null&&g.url)&&!((s=n.editor)!=null&&s.multiSelect);return a.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:{...o,controlName:"",enableClear:!0},refreshPanelAfterChanged:!0},data:{description:"",title:"数据",type:"array",visible:i,...a.getItemCollectionEditor(n,n.editor.valueField,n.editor.textField),refreshPanelAfterChanged:!0},url:{visible:n.editor.dataSourceType==="dynamic"&&!((f=n.editor)!=null&&f.dataSource),$converter:at,description:"",title:"服务端API",type:"string",refreshPanelAfterChanged:!0},body:{visible:!1,$converter:at,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:((w=n.editor)==null?void 0:w.dataSourceType)==="dynamic"&&!!((C=n.editor)!=null&&C.dataSource),type:"boolean",refreshPanelAfterChanged:!0},maxLength:{description:"",title:"最大输入长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1,needValid:!0}},...this.getCommonEditorProperties(n)},(c,u)=>{if(!c||!u.editor)return;const b=this;switch(c.propertyID){case"dataSourceType":{c.propertyValue==="static"?(u.editor.valueField="value",u.editor.textField="name",u.editor.remote=null):c.propertyValue==="dynamic"&&(u.editor.remote={method:"GET"},u.editor.valueField="value",u.editor.textField="name");break}case"data":{!b.checkEnumDataReadonly(u)&&u.formatter&&(u.formatter.data=[...c.propertyValue]);break}case"viewType":{c.propertyValue==="tag"&&(u.editor.editable=!1);break}case"dataSource":b.afterMutilEditorChanged(u,c);break}})}getGridFieldEdtiorProperties(n,a){var d,m,v,y,p,x,k,S,g,s,f,w,C;const l=this;let o="";if(((d=n==null?void 0:n.binding)==null?void 0:d.type)==="Form"){const c=this.schemaService.getFieldByIDAndVMID(n.binding.field,this.viewModelId);(m=c==null?void 0:c.schemaField)!=null&&m.type&&(o=c.schemaField.type.$type)}const i=((y=(v=this.designViewModelField)==null?void 0:v.type)==null?void 0:y.$type)===z.FormSchemaEntityFieldType$Type.StringType&&((p=n.editor)==null?void 0:p.type)==="combo-list"&&((x=n.editor)==null?void 0:x.dataSourceType)==="dynamic"&&!((k=n.editor)!=null&&k.multiSelect),r=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:i,title:"数据",editor:{...r,controlName:"",enableClear:!0},refreshPanelAfterChanged:!0},data:{description:"",title:"数据",type:"array",visible:!((S=n.editor)!=null&&S.dataSourceType)||((g=n.editor)==null?void 0:g.dataSourceType)==="static",...l.getItemCollectionEditor(n,(s=n.editor)==null?void 0:s.valueField,(f=n.editor)==null?void 0:f.textField),refreshPanelAfterChanged:!0},textField:{description:"",title:"数据源显示字段",type:"string",readonly:!0},valueField:{description:"",title:"数据源值字段",type:"string",readonly:!0},multiSelect:{description:"",title:"启用多选",visible:o==="StringType",readonly:((w=n.editor)==null?void 0:w.dataSourceType)==="dynamic"&&!!((C=n.editor)!=null&&C.dataSource),type:"boolean",refreshPanelAfterChanged:!0},maxLength:{description:"",title:"最大输入长度",type:"number",editor:{nullable:!0,min:0,useThousands:!1,needValid:!0}},...this.getCommonEditorProperties(n)},(c,u)=>{if(!c||!u.editor)return;const b=this;switch(c.propertyID){case"dataSourceType":{c.propertyValue==="static"?(u.editor.valueField="value",u.editor.textField="name",u.editor.remote=null):c.propertyValue==="dynamic"&&(u.editor.remote={method:"GET"},u.editor.valueField="value",u.editor.textField="name");break}case"data":{!b.checkEnumDataReadonly(u)&&u.formatter&&(u.formatter.data=[...c.propertyValue]);break}case"dataSource":b.afterMutilEditorChanged(u,c)}})}setEditorPropertyRelates(n,a,l){if(!n||!a.editor)return;const o=this;switch(n.propertyID){case"dataSourceType":{n.propertyValue==="static"&&(a.editor.valueField="value",a.editor.textField="name",a.editor.remote={});break}case"data":{!o.checkEnumDataReadonly(a)&&a.formatter&&(a.formatter.data=[...n.propertyValue]);break}}}changeBindingField(n,a,l){var i;super.changeBindingField(n,a);const o=l;n.editor&&((i=o==null?void 0:o.type)==null?void 0:i.$type)===z.FormSchemaEntityFieldType$Type.EnumType&&(n.editor.data=o.type.enumValues||[])}getEventPropertyConfig(n,a="card",l,o){const i=this;let r=[{label:"onChange",name:"值变化事件"},{label:"beforeOpen",name:"打开面板前事件"},{label:"beforeHide",name:"关闭面板前事件"},{label:"onShown",name:"面板打开事件"},{label:"onHidden",name:"面板关闭事件"}];r=[...r,...this.getInputCommonEvents(n)],l&&(r=r.concat(l)),this.formRule&&(r=r.filter(v=>v.label!=="onChange")),this.appendFieldValueChangeEvents(n,r);const h=i.eventsEditorUtils.formProperties(n,i.viewModelId,r);return{title:"事件",hideTitle:!0,properties:i.createBaseEventProperty(h),tabId:z.EVENT_PROPERTY_TAB_IDS,tabName:"交互",setPropertyRelates(v,y){const p=v.propertyValue;delete n[i.viewModelId],p&&(p.setPropertyRelates=this.setPropertyRelates,i.eventsEditorUtils.saveRelatedParameters(n,i.viewModelId,p.events,p),i.updateLinkedLabel(p,y)),o&&o(v,y,p);const x=i.designViewModelUtils.getDgViewModel(i.viewModelId);x&&i.designViewModelField&&x.changeField(i.designViewModelField.id,{valueChanging:n.fieldValueChanging||"",valueChanged:n.fieldValueChanged||""}),n.editor.onShown=n.onShown,n.editor.onHidden=n.onHidden,n.editor.beforeHide=n.beforeHide,n.editor.beforeOpen=n.beforeOpen,n.editor.onChange=n.onChange,n.editor.onClear=n.onClear}}}}function Tn(e,n){const a=e.schema;function l(o,i){return new Fn(o,n).getPropertyConfig(a,i)}return{getPropsConfig:l}}const Nn=t.defineComponent({name:"FComboListDesign",props:cn,emits:["clear","update:modelValue","change"],setup(e,n){const a=t.ref(),l=t.inject("designer-host-service"),o=t.inject("design-item-context"),i=Tn(o,l),r=he.useDesignerComponent(a,o,i);return t.onMounted(()=>{a.value.componentInstance=r}),n.expose(r.value),()=>t.createVNode(jt,{ref:a,buttonContent:e.dropDownIcon,readonly:!0,editable:!1,forcePlaceholder:!0,placeholder:e.placeholder,expandable:e.expandable,expandMode:e.expandMode,expandContent:e.expandContent,expandDisabled:e.expandDisabled},null)}});le.register=(e,n,a,l,o)=>{e["combo-list"]=le,n["combo-list"]=tt(o),l["combo-list"]={callbackResolver:un}},le.registerDesigner=(e,n,a,l)=>{e["combo-list"]=Nn,n["combo-list"]=tt(l)},z.withInstall(le),z.withInstall(ge);const Vn={modelValue:{type:String,default:""},singleExpand:{type:Boolean,default:!0},entities:{type:Array,default:[]},variables:{type:Array,default:[]},disabledFunctions:{type:Object,default:null},esprimaPath:{type:String,default:"assets/esprima-config.json"},showMessage:{type:Boolean,default:!1},validateMessage:{type:String,default:""},messageType:{type:String,default:"info"},showMessageType:{type:Boolean,default:!1},showDataPanel:{type:Boolean,default:!0},isServerSide:{type:Boolean,default:!1}},lt=new Map([["appearance",K.resolveAppearance]]);function ot(e,n,a){return n}const Mn={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/layout.schema.json",title:"layout",description:"A Farris Container Component",type:"object",properties:{id:{description:"The unique identifier for layout component",type:"string"},type:{description:"The type string of layout component",type:"string",default:"layout"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},contents:{description:"",type:"array",default:[]},collapsable:{description:"",type:"boolean",default:!1},resizable:{description:"",type:"boolean",default:!0},visible:{description:"",type:"boolean",default:!0}},required:["id","type","contents"]},Bn={title:"layout",description:"A Farris Component",type:"object",categories:{basic:{description:"Basic Infomation",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"类型",title:"类型",type:"string",readonly:!0}}},behavior:{description:"Basic Infomation",title:"行为",properties:{collapsable:{description:"",title:"可收折",type:"boolean"},resizable:{description:"",title:"可调整尺寸",type:"boolean"}}}}},Me={customStyle:{type:String,defaut:""},customClass:{type:String,defaut:""}},it=K.createPropsResolver(Me,Mn,lt,ot,Bn);function rt(e){const n=t.ref(-1),a=t.ref(-1),l=t.ref(0),o=t.ref(0),i=t.ref(!1),r=t.ref(!1),h=t.computed(()=>({display:i.value?"block":"none",left:`${l.value}px`,cursor:"e-resize"})),d=t.computed(()=>({display:r.value?"block":"none",top:`${o.value}px`,cursor:"n-resize"})),m=t.computed(()=>{const g={display:r.value||i.value?"block":"none"};return o.value>0&&(g.cursor="n-resize"),g});function v(g,s,f,w){const C=e.value;if(C){const{left:c,right:u,width:b}=C.getBoundingClientRect();let F=g.clientX-c;w==="right"&&(F=u-g.clientX),F>s&&(F=s),F<f&&(F=f),w==="right"&&(F=b-F),l.value=F}}function y(g,s,f,w){const C=e.value;if(C){const{top:c,bottom:u,height:b}=C.getBoundingClientRect();let F=g.clientY-c;w==="bottom"&&(F=u-g.clientY),F>s&&(F=s),F<f&&(F=f),w==="bottom"&&(F=b-F),o.value=F}}function p(){const g=e.value;if(g){const{width:s,height:f}=g.getBoundingClientRect();return{width:s,height:f}}return null}function x(){const g=e.value;return g?Array.from(g.querySelectorAll("[data-position]")).reduce((s,f)=>{const w=f.getAttribute("data-position");return s=Object.assign(s,{[w]:f}),s},{}):null}function k(g,s){const f=p(),w=x();if(f&&w){const C=w==null?void 0:w.right,c=w==null?void 0:w.left;if(g==="left"&&c)return C?f.width-C.clientWidth-s:f.width-s;if(g==="right"&&C)return c?f.width-c.clientWidth-s:f.width-s}}function S(g,s){const f=p(),w=x();if(f&&w){const C=w==null?void 0:w.bottom,c=w==null?void 0:w.top;if(g==="top"&&c)return C?f.height-C.clientHeight-s:f.height-s;if(g==="bottom"&&C)return c?f.height-c.clientHeight-s:f.height-s}}return{horizontalResizeHandleStyle:h,verticalResizeHandleStyle:d,resizeOverlayStyle:m,showHorizontalResizeHandle:i,showVerticalResizeHandle:r,horizontalResizeBarPosition:n,verticalResizeBarPosition:a,verticalResizeHandleOffset:o,horizontalResizeHandleOffset:l,draggingHorizontalResizeHandle:v,draggingVerticalResizeHandle:y,getPanelMaxHeight:S,getPanelMaxWidth:k}}const ee=t.defineComponent({name:"FLayout",props:Me,emits:[],setup(e,n){const a=t.ref(),l=rt(a),{horizontalResizeHandleStyle:o,verticalResizeHandleStyle:i,resizeOverlayStyle:r}=l;t.provide("layout",{useResizeHandleComposition:l});const h=t.computed(()=>{const m={"f-layout":!0};return z.getCustomClass(m,e==null?void 0:e.customClass)}),d=t.computed(()=>{const m={};return z.getCustomStyle(m,e==null?void 0:e.customStyle)});return()=>t.createVNode("div",{class:h.value,style:d.value,ref:a},[n.slots.default&&n.slots.default(),t.createVNode("div",{class:"f-layout-resize-overlay",style:r.value},null),t.createVNode("div",{class:"f-layout-horizontal-resize-proxy",style:o.value},null),t.createVNode("div",{class:"f-layout-vertical-resize-proxy",style:i.value},null)])}}),On={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/layout-pane.schema.json",title:"layout-pane",description:"A Farris Container Component",type:"object",properties:{id:{description:"The unique identifier for a layout pane",type:"string"},type:{description:"The type string of layout paney",type:"string",default:"layout-pane"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},collapsable:{description:"",type:"boolean",default:!1},contents:{description:"",type:"array",default:[]},height:{description:"",type:"number"},position:{description:"",type:"string",default:"left",enum:["left","center","right","top","bottom"]},resizeable:{description:"",type:"boolean",default:!0},width:{description:"",type:"number"},visible:{description:"",type:"number",default:!0}},required:["id","type","contents"]},En={title:"layout-pane",description:"A Farris Container Component",type:"object",categories:{basic:{description:"Basic Infomation",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"enum"},width:{description:"",type:"number",title:"宽度"},height:{description:"",type:"number",title:"高度"}}},appearance:{title:"样式",description:"Appearance",properties:{class:{title:"class样式",type:"string",description:""},style:{title:"style",type:"string",description:""}}},behavior:{description:"",title:"行为",properties:{collapsable:{description:"",type:"boolean",title:"允许收折"},position:{description:"",type:"enum",title:"位置",editor:{type:"combo-list",data:[{id:"left",name:"左侧"},{id:"center",name:"居中"},{id:"right",name:"右侧"},{id:"top",name:"顶部"},{id:"bottom",name:"底部"}]}},resizeable:{description:"",type:"boolean",title:"允许调整尺寸"},visible:{description:"运行时组件是否可见",type:"boolean",title:"是否可见"}}}}},Be={customClass:{type:String,defaut:""},customStyle:{type:String,defaut:""},width:{type:Number,default:-1},height:{type:Number,default:-1},position:{type:String,default:"left"},visible:{type:Boolean,default:!0},resizable:{type:Boolean,default:!0},collapsable:{type:Boolean,default:!1},minWidth:{type:Number,default:100},minHeight:{type:Number,default:100},maxWidth:{type:Number,default:null}},st=K.createPropsResolver(Be,On,lt,ot,En);function ct(e,n,a,l,o,i){const{horizontalResizeBarPosition:r,horizontalResizeHandleOffset:h,showHorizontalResizeHandle:d,showVerticalResizeHandle:m,verticalResizeBarPosition:v,verticalResizeHandleOffset:y,draggingHorizontalResizeHandle:p,draggingVerticalResizeHandle:x,getPanelMaxHeight:k,getPanelMaxWidth:S}=o;let g="",s,f,w;const C=()=>i.maxWidth?i.maxWidth:S(g,a.value)||0;function c(F){if((g==="left"||g==="right")&&f){const{left:E}=f.getBoundingClientRect(),{width:I}=s.getBoundingClientRect(),D=F.clientX-E;let O=g==="left"?(I||0)+(D-r.value):(I||0)-(D-r.value);O=a.value>0?Math.max(a.value,O):O;const T=C();T!=null&&(O=T>O?O:T),e.value=O}if((g==="top"||g==="bottom")&&f){const{top:E}=f.getBoundingClientRect(),{height:I}=s.getBoundingClientRect(),D=F.clientY-E;let O=g==="top"?(I||0)+(D-v.value):(I||0)-(D-v.value);O=l.value>0?Math.max(l.value,O):O;const T=k(g,l.value);T!=null&&(O=T>O?O:T),n.value=O}h.value=0,y.value=0,r.value=-1,v.value=-1,d.value=!1,m.value=!1,document.removeEventListener("mousemove",w),document.removeEventListener("mouseup",c),document.body.style.userSelect="",g="",s=null,f=null}function u(F,E,I){if(g=E,s=I,d.value=!0,f=F.composedPath().find(O=>(O.className||"").split(" ")[0]==="f-layout"),f){const{left:O}=f.getBoundingClientRect(),T=F.clientX-O;h.value=T,r.value=T;const B=C();w=P=>p(P,B,a.value,g),document.addEventListener("mousemove",w),document.addEventListener("mouseup",c),document.body.style.userSelect="none"}}function b(F,E,I){if(g=E,s=I,m.value=!0,f=F.composedPath().find(O=>(O.className||"").split(" ")[0]==="f-layout"),f){const{top:O}=f.getBoundingClientRect();y.value=F.clientY-O,v.value=F.clientY-O;const T=k(g,l.value)||0;w=B=>x(B,T,l.value,g),document.addEventListener("mousemove",w),document.addEventListener("mouseup",c),document.body.style.userSelect="none"}}return{onClickHorizontalResizeBar:u,onClickVerticalResizeBar:b}}const Z=t.defineComponent({name:"FLayoutPane",props:Be,emits:[],setup(e,n){const a=t.ref(e.minHeight<=0?100:e.minHeight),l=t.ref(e.minWidth<=0?100:e.minWidth),o=t.ref(e.width<=0?100:e.width),i=t.ref(e.height<=0?100:e.height),r=t.ref(Math.max(a.value,i.value)),h=t.ref(Math.max(l.value,o.value)),d=t.ref(),m=t.ref(e.position),v=t.ref(e.resizable);t.watch(()=>e.resizable,c=>{v.value=c});const y=t.inject("layout"),{useResizeHandleComposition:p}=y,x=ct(h,r,l,a,p,e),{onClickHorizontalResizeBar:k,onClickVerticalResizeBar:S}=x,g=t.computed(()=>({"f-layout-resize-bar":!0,"f-layout-resize-bar-e":m.value==="left","f-layout-resize-bar-n":m.value==="bottom","f-layout-resize-bar-s":m.value==="top","f-layout-resize-bar-w":m.value==="right"})),s=t.computed(()=>m.value!=="center"&&v.value);function f(c,u){(u==="left"||u==="right")&&k(c,u,d.value),(u==="top"||u==="bottom")&&S(c,u,d.value)}const w=t.computed(()=>{const c={"f-layout-pane":!0,"f-page-content-nav":m.value==="left"||m.value==="right","f-page-content-main":m.value==="center"};return e.customClass&&String(e.customClass).split(" ").reduce((u,b)=>(u[b]=!0,u),c),c}),C=t.computed(()=>{const c={};return(h.value&&m.value==="left"||m.value==="right")&&(c.width=`${h.value}px`),(r.value&&m.value==="bottom"||m.value==="top")&&(c.height=`${r.value}px`),e.visible||(c.display="none"),c});return()=>t.createVNode("div",{ref:d,class:w.value,style:C.value,"data-position":m.value},[n.slots.default&&n.slots.default(),s.value&&t.createVNode("span",{class:g.value,onMousedown:c=>f(c,m.value)},null)])}});function Dn(e,n){function a(){return!1}return{canAccepts:a}}const Pn=t.defineComponent({name:"FLayoutDesign",props:Me,emits:[],setup(e,n){var v;const a=t.ref(),l=t.inject("design-item-context"),o=Dn(l.schema,(v=l.parent)==null?void 0:v.schema),i=he.useDesignerComponent(a,l,o);i.value.canNested=!1;const r=rt(a),{horizontalResizeHandleStyle:h,verticalResizeHandleStyle:d,resizeOverlayStyle:m}=r;return t.provide("layout",{useResizeHandleComposition:r}),t.onMounted(()=>{a.value.componentInstance=i}),n.expose(i.value),()=>t.createVNode("div",{class:"f-layout f-page-content",ref:a},[n.slots.default&&n.slots.default(),t.createVNode("div",{class:"f-layout-resize-overlay",style:m.value},null),t.createVNode("div",{class:"f-layout-horizontal-resize-proxy",style:h.value},null),t.createVNode("div",{class:"f-layout-vertical-resize-proxy",style:d.value},null)])}});function In(e,n){const a=e.schema;function l(i){return!!he.useDragulaCommonRule().basalDragulaRuleForContainer(i)}function o(){const i=["f-layout-pane"];return(a.position==="left"||a.position==="right")&&i.push("f-page-content-nav"),a.position==="center"&&i.push("f-page-content-main"),i.join(" ")}return{canAccepts:l,getDesignerClass:o}}const jn=t.defineComponent({name:"FLayoutPaneDesign",props:Be,emits:[],setup(e,n){const a=t.ref(),l=t.ref();t.inject("designer-host-service");const o=t.inject("design-item-context"),i=In(o),r=he.useDesignerComponent(l,o,i);r.value.canNested=!1,r.value.canMove=!1,r.value.canDelete=!1,t.onMounted(()=>{l.value.componentInstance=r}),n.expose(r.value);const h=t.ref(Math.max(e.minHeight,e.height)),d=t.ref(Math.max(e.minWidth,e.width)),m=t.ref(e.minHeight),v=t.ref(e.minWidth),y=t.ref(e.position),p=t.inject("layout"),{useResizeHandleComposition:x}=p,k=ct(d,h,v,m,x,e),{onClickHorizontalResizeBar:S,onClickVerticalResizeBar:g}=k,s=t.computed(()=>({"f-layout-resize-bar":!0,"f-layout-resize-bar-e":y.value==="left","f-layout-resize-bar-n":y.value==="bottom","f-layout-resize-bar-s":y.value==="top","f-layout-resize-bar-w":y.value==="right"}));function f(c,u){(u==="left"||u==="right")&&S(c,u,a.value),(u==="top"||u==="bottom")&&g(c,u,a.value)}const w=t.computed(()=>{const c={"f-layout-pane":!0,"f-page-content-nav":y.value==="left"||y.value==="right","f-page-content-main":y.value==="center"};return e.customClass&&String(e.customClass).split(" ").reduce((u,b)=>(u[b]=!0,u),c),c}),C=t.computed(()=>{const c={flex:"1"};return(d.value&&y.value==="left"||y.value==="right")&&(c.width=`${d.value}px`),(h.value&&y.value==="bottom"||y.value==="top")&&(c.height=`${h.value}px`),c});return()=>t.createVNode("div",{ref:a,class:w.value,style:C.value},[t.createVNode("div",{ref:l,class:"drag-container","data-dragref":`${o.schema.id}-container`},[n.slots.default&&n.slots.default()]),t.createVNode("span",{class:s.value,onMousedown:c=>f(c,y.value)},null)])}});ee.install=e=>{e.component(ee.name,ee),e.component(Z.name,Z)},ee.register=(e,n,a,l)=>{e.layout=ee,n.layout=it,e["layout-pane"]=Z,n["layout-pane"]=st},ee.registerDesigner=(e,n,a)=>{e.layout=Pn,n.layout=it,e["layout-pane"]=jn,n["layout-pane"]=st};const Rn={analytical:{name:"数据",items:[{key:"IsNull",name:"是空值",params:[{key:"obj",name:"检测对象",type:"object"}],description:`【功能】判断检测对象是否为空值(null)。检测对象为null返回true,否则返回false
|
|
2
2
|
【参数】
|
|
3
3
|
【obj】检测对象
|
|
4
4
|
【返回值】true或false
|