@farris/ui-vue
Version:
Farris Vue, a Farris Design based Vue3 component library.
2 lines (1 loc) • 40.7 kB
JavaScript
(function(I,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("vue"),require("../locale/index.umd.js"),require("../common/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("../drawer/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","../locale/index.umd.js","../common/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","../drawer/index.umd.js"],t):(I=typeof globalThis<"u"?globalThis:I||self,t(I["button-edit"]={},I.Vue,I.locale,I.common,null,null,null,null,I.FTags,I.LodashES,I.useInputExpand,I.FPopover,I.Drawer))})(this,function(I,t,q,U,dt,ft,ht,mt,me,le,ve,ge,pe){"use strict";var rt=Object.defineProperty;var ct=(I,t,q)=>t in I?rt(I,t,{enumerable:!0,configurable:!0,writable:!0,value:q}):I[t]=q;var J=(I,t,q)=>ct(I,typeof t!="symbol"?t+"":t,q);const ae={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}},ye={popupContentPosition:{type:Object,default:{left:0,top:0}},host:{type:Object},backgroundColor:{type:String,default:""}};function be(){const e=t.ref(!1);return t.onMounted(()=>{e.value=!0}),e}const we=t.defineComponent({name:"FOverlay",props:ye,emits:["click"],setup(e,n){const l=t.ref(e.popupContentPosition),o=t.ref(e.host),i=be(),s=t.computed(()=>({backgroundColor:e.backgroundColor||"",pointerEvents:"auto"}));function f(r){n.emit("click"),r.preventDefault(),r.stopPropagation()}t.computed(()=>{const r=o.value;if(r){const v=r.getBoundingClientRect(),{left:x,top:g,height:k}=v;return{left:x,top:g+k}}return l.value});const c=t.computed(()=>({}));return()=>i.value?t.createVNode(t.Teleport,{to:"body"},{default:()=>{var r,v;return[t.createVNode("div",{class:"overlay-container",onClick:x=>f(x),style:s.value},[t.createVNode("div",{style:c.value},[(v=(r=n.slots).default)==null?void 0:v.call(r)])])]}}):null}});function xe(e){if(e.content&&e.content.render)return e.content.render;if(e.render&&typeof e.render=="function")return e.render}function Ce(e){const n=document.createElement("div");n.style.display="contents";let l;const o=e.onClickCallback||(()=>{}),i=()=>{o(),l&&l.unmount()};return l=t.createApp({setup(){t.onUnmounted(()=>{document.body.removeChild(n)});const s=xe(e);return()=>t.createVNode(we,{"popup-content-position":e.popupPosition,host:e.host,onClick:i,backgroundColor:e.backgroundColor},{default:()=>[s&&s()]})}}),document.body.appendChild(n),l.mount(n),l}class Be{static show(n){return Ce(n)}}const Me={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 R{constructor(n,l){this.x=n,this.y=l}static getTransformInfo(n){const o=window.getComputedStyle(n).getPropertyValue("transform").replace(/[^-\d,]/g,"").split(",");if(o.length>=6){const i=parseInt(o[4],10),s=parseInt(o[5],10);return{x:i,y:s}}return{x:0,y:0}}static fromEvent(n,l=null){if(this.isMouseEvent(n))return new R(n.clientX,n.clientY);if(l===null||n.changedTouches.length===1)return new R(n.changedTouches[0].clientX,n.changedTouches[0].clientY);for(let o=0;o<n.changedTouches.length;o++)if(n.changedTouches[o].target===l)return new R(n.changedTouches[o].clientX,n.changedTouches[o].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 l=new R(0,0);if(window){const o=window.getComputedStyle(n);if(o){const i=parseInt(o.getPropertyValue("left"),10),s=parseInt(o.getPropertyValue("top"),10);l.x=isNaN(i)?0:i,l.y=isNaN(s)?0:s}return l}return null}static copy(n){return new R(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 X{constructor(n,l){this.width=n,this.height=l}static getCurrent(n){const l=new X(0,0);if(window){const o=window.getComputedStyle(n);return o&&(l.width=parseInt(o.getPropertyValue("width"),10),l.height=parseInt(o.getPropertyValue("height"),10)),l}return null}static copy(n){return new X(0,0).set(n)}set(n){return this.width=n.width,this.height=n.height,this}}function ke(e,n){const l=t.ref(),o=t.ref(),i=t.ref(),s=t.ref(),f=t.ref(),c=t.ref(),r=t.ref(),v=t.ref(),x=t.ref(),g=t.ref(),k=t.ref(),w=t.ref(e.resizeable),y=t.ref(),B=t.ref(e.draggable),T=t.ref(!1);function O(){const u=o.value||document.body,d=window.getComputedStyle(u);if(!d||!l.value)return;const C=R.getTransformInfo(l.value),V={};r.value&&(V.deltaL=l.value.offsetLeft-r.value.x,V.deltaT=l.value.offsetTop-r.value.y);const L=d.getPropertyValue("position");V.width=u.clientWidth,V.height=u.clientHeight,V.pr=parseInt(d.getPropertyValue("padding-right"),10),V.pb=parseInt(d.getPropertyValue("padding-bottom"),10),V.position=d.getPropertyValue("position"),L==="static"&&(u.style.position="relative"),V.translateX=C.x,V.translateY=C.y,g.value=V}function E(u){if(l.value){s.value=X.getCurrent(l.value),f.value=R.getCurrent(l.value),c.value=s.value?X.copy(s.value):null,r.value=f.value?R.copy(f.value):null,O();const d=u.target.getAttribute("type")||"";v.value={n:!!d.match(/n/),s:!!d.match(/s/),w:!!d.match(/w/),e:!!d.match(/e/)}}}function N(){var u,d,C,V;if(l.value){const L=l.value;v.value&&((v.value.n||v.value.s)&&((u=c.value)!=null&&u.height)&&(L.style.height=c.value.height+"px"),(v.value.w||v.value.e)&&((d=c.value)!=null&&d.width)&&(L.style.width=c.value.width+"px"),r.value&&((C=r.value)!=null&&C.x&&(L.style.left=r.value.x+"px"),(V=r.value)!=null&&V.y&&(L.style.top=r.value.y+"px")))}}function P(){const u=e.minHeight?e.minHeight:1,d=e.minWidth?e.minWidth:1;c.value&&r.value&&v.value&&s.value&&(c.value.height<u&&(c.value.height=u,v.value.n&&f.value&&(r.value.y=f.value.y+(s.value.height-u))),c.value.width<d&&(c.value.width=d,v.value.w&&f.value&&(r.value.x=f.value.x+(s.value.width-d))),e.maxHeight&&c.value.height>e.maxHeight&&(c.value.height=e.maxHeight,f.value&&v.value.n&&(r.value.y=f.value.y+(s.value.height-e.maxHeight))),e.maxWidth&&c.value.width>e.maxWidth&&(c.value.width=e.maxWidth,v.value.w&&f.value&&(r.value.x=f.value.x+(s.value.width-e.maxWidth))))}function D(){if(o.value){const u=g.value;if(r.value&&c.value&&v.value&&s.value){const d=u.width-u.pr-u.deltaL-u.translateX-r.value.x,C=u.height-u.pb-u.deltaT-u.translateY-r.value.y;v.value.n&&r.value.y+u.translateY<0&&f.value&&(r.value.y=-u.translateY,c.value.height=s.value.height+f.value.y+u.translateY),v.value.w&&r.value.x+u.translateX<0&&f.value&&(r.value.x=-u.translateX,c.value.width=s.value.width+f.value.x+u.translateX),c.value.width>d&&(c.value.width=d),c.value.height>C&&(c.value.height=C)}}}function F(u){if(!i.value||!s.value||!f.value||!v.value)return;u.subtract(i.value);const d=u.x,C=u.y;v.value.n?(r.value.y=f.value.y+C,c.value.height=s.value.height-C):v.value.s&&(c.value.height=s.value.height+C),v.value.e?c.value.width=s.value.width+d:v.value.w&&(c.value.width=s.value.width-d,r.value.x=f.value.x+d),D(),P(),N()}function m(u){if(!x.value)return;const d=R.fromEvent(u);d&&F(d)}function h(){if(l.value){const{width:u,height:d,x:C,y:V}=l.value.getBoundingClientRect(),L=R.getTransformInfo(l.value);return{size:{width:u,height:d},position:{x:C-L.x,y:V-L.y}}}return null}function M(u){if(l.value){const d=h();k.value=d}i.value=void 0,s.value=null,f.value=null,c.value=null,r.value=null,v.value=null,x.value=null,document.removeEventListener("mousemove",m),document.removeEventListener("mouseup",M)}function z(){document.addEventListener("mousemove",m),document.addEventListener("mouseup",M)}function p(u){u instanceof MouseEvent&&u.button===2||B.value&&(document.body.click(),u.stopPropagation(),u.preventDefault(),i.value=R.fromEvent(u),x.value=u.target,E(u),z())}function S(u){return l.value=u,w.value&&t.createVNode(t.Fragment,null,[t.createVNode("div",{class:"fv-resizable-handle fv-resizable-n",type:"n",onMousedown:d=>p(d)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-e",type:"e",onMousedown:d=>p(d)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-s",type:"s",onMousedown:d=>p(d)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-w",type:"w",onMousedown:d=>p(d)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-ne",type:"ne",onMousedown:d=>p(d)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-se fv-resizable-diagonal",type:"se",onMousedown:d=>p(d)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-sw",type:"sw",onMousedown:d=>p(d)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-nw",type:"nw",onMousedown:d=>p(d)},null)])}function W(u=!0){document.body.click();const d=o.value||document.body,C=X.getCurrent(d),V=l.value;u&&V&&(y.value=h(),y.value.transform=V.style.transform),C&&V&&(c.value=C,c.value.height-=14,c.value.width-=14,V.style.height=c.value.height+"px",V.style.width=c.value.width+"px",V.style.left="7px",V.style.top="7px",V.style.transform="",k.value={size:c.value,position:{x:0,y:0}},B.value=!1,T.value=!0)}function _(){var u,d;if(document.body.click(),y.value){const C={width:y.value.size.width||0,height:y.value.size.height||0},V={x:(window.innerWidth-C.width)/2,y:(window.innerHeight-C.height)/2};(u=c.value)==null||u.set(C),(d=r.value)==null||d.set(V);const L=l.value;L.style.height=C.height+"px",L.style.width=C.width+"px",L.style.left=`${V.x}px`,L.style.top=`${V.y}px`,L.style.transform="",k.value={size:C,position:V},B.value=e.draggable,T.value=!1}}function $(){if(l.value){const u=X.getCurrent(l.value);if(u){const{width:d,height:C}=u;l.value.style.left=`${(window.innerWidth-d)/2}px`,l.value.style.top=`${(window.innerHeight-C)/2}px`,l.value.style.transform=""}}}function A(){const u=()=>{T.value?W(!1):$(),document.body.click()};return window.addEventListener("resize",u),()=>{window.removeEventListener("resize",u)}}const Y=A();return{renderResizeBar:S,boundingElement:o,resizedEventParam:k,maximize:W,restore:_,allowDrag:B,isMaximized:T,unWindowResizeHandle:Y,moveToCenter:$}}function Te(e,n,l){const o=t.ref(),i=t.ref(e.draggable),s=t.ref(e.lockAxis),f=t.ref(),c=t.ref(),r=t.ref(!1),v=t.ref(new R(0,0)),x=t.ref(new R(0,0)),g=t.ref(new R(0,0)),k=t.ref(new R(0,0));t.watch(()=>l.value,m=>{f.value.style.cursor=m?"move":"default"});function w(m,h){if(h.tagName==="BUTTON")return!1;if(h===m)return!0;for(const M in h.children)if(Object.prototype.hasOwnProperty.call(h.children,M)&&w(m,h.children[M]))return!0;return!1}function y(){var z,p;let m=g.value.x+x.value.x,h=g.value.y+x.value.y;s.value==="x"?(m=((z=v.value)==null?void 0:z.x)||0,g.value.x=0):s.value==="y"&&(h=((p=v.value)==null?void 0:p.y)||0,g.value.y=0);const M=`translate3d(${Math.round(m)}px, ${Math.round(h)}px, 0px)`;o.value&&(o.value.style.transform=M),k.value.x=m,k.value.y=h}function B(){if(!c.value||!o.value)return null;const m=c.value.getBoundingClientRect(),h=o.value.getBoundingClientRect(),M={top:m.top<h.top,right:m.right>h.right,bottom:m.bottom>h.bottom,left:m.left<h.left};return M.top||(g.value.y-=h.top-m.top),M.bottom||(g.value.y-=h.bottom-m.bottom),M.right||(g.value.x-=h.right-m.right),M.left||(g.value.x-=h.left-m.left),y(),M}function T(m){m&&(v.value&&m.subtract(v.value),g.value.set(m),y(),B())}function O(m){r.value&&i.value&&(m.stopPropagation(),m.preventDefault(),T(R.fromEvent(m,f.value)))}function E(){var m;if(r.value){if(r.value=!1,x.value.add(g.value),g.value.reset(),(m=o.value)==null||m.classList.remove("ng-dragging"),!e.useTransform&&o.value){const{left:h,top:M}=o.value.getBoundingClientRect();o.value.style.left=Math.ceil(h)+"px",o.value.style.top=Math.ceil(M)+"px",o.value.style.transform="none"}n.emit("stopMove"),document.removeEventListener("mousemove",O),document.removeEventListener("mouseup",E)}}function N(){!r.value&&f.value&&(r.value=!0,f.value.classList.add("ng-dragging"),document.addEventListener("mousemove",O),document.addEventListener("mouseup",E))}function P(){if(o.value){const m=R.getTransformInfo(o.value);x.value.set(m);return}x.value.reset()}function D(m){if(!l.value||m instanceof MouseEvent&&m.button===2)return;const h=m.target||m.srcElement;f.value!==void 0&&h&&!w(h,f.value)||i.value!==!1&&(document.body.click(),m.stopPropagation(),m.preventDefault(),v.value=R.fromEvent(m,o.value),P(),N())}function F(m,h,M){if(i.value&&h){if(m)f.value=m;else if(e.dragHandle){if(e.dragHandle instanceof HTMLElement)f.value=e.dragHandle;else if(typeof e.dragHandle=="string"){const z=h.querySelector(e.dragHandle);z&&(f.value=z)}}o.value=h,c.value=M,f.value?(f.value.classList.add("ng-draggable"),f.value.addEventListener("mousedown",D)):i.value=!1}}return{registerDraggle:F,resetTranslate:P}}function oe(e,n){if(e){const l=o=>{o.key.toLowerCase()===e.toLowerCase()&&n({event:o,key:e})};return document.addEventListener("keydown",l),()=>{document.removeEventListener("keydown",l)}}}function Ve(e,n){const l=t.ref(e.enableEsc);let o=null;return l.value?(o=oe("Escape",i=>{n.emit("esc",{event:i.event,type:"esc"})}),{remove:o}):null}function Ee(e,n){const l=t.ref(e.enableEnter);let o=null;return l.value?(o=oe("Enter",i=>{n.emit("enter",{event:i.event,type:"enter"})}),{remove:o}):null}const Z=t.defineComponent({name:"FModal",props:Me,emits:["update:modelValue","accept","cancel","closed","resize","esc","enter","stopMove","buttonClick"],setup(e,n){const l=t.ref(e.width||300),o=t.ref(e.height||200),i=t.ref(e.modelValue),s=t.ref(""),f=t.ref(e.class),c=t.ref(e.fitContent),r=t.ref(e.showHeader),v=t.ref(""),x=t.ref(e.showCloseButton),g=t.ref(e.showMaxButton),k=t.ref(!1),w=t.ref(e.dialogType),y=t.ref(e.src),B=t.ref(""),T=t.ref(e.showButtons),O=t.ref(e.title),E=t.ref(e.containment||null),N=t.ref();O.value==="错误提示"&&(O.value=q.LocaleService.getLocaleValue("messageBox.errorTitle"));const P=t.ref(!1);function D(){const a=document.querySelectorAll(".farris-modal").length;(!a||a-1<=0)&&N.value===document.querySelectorAll(".farris-modal")[0]&&document.body.classList.remove("modal-open"),N.value&&N.value.classList.remove("show")}function F(a,b){const H=b?"accept":"cancel";Promise.resolve().then(()=>{var j;return(j=e.beforeClose)==null?void 0:j.call(e,{closeType:H})}).then(j=>{j&&(i.value=!1,n.emit("update:modelValue",!1),b!=null&&n.emit(b?"accept":"cancel"),n.emit("closed",a),D())})}const m=[{name:"cancel",text:q.LocaleService.getLocaleValue("messageBox.cancel")||"取消",class:"btn btn-secondary",handle:a=>{F(a,!1)}},{name:"accept",text:q.LocaleService.getLocaleValue("messageBox.ok")||"确定",class:"btn btn-primary",handle:a=>{F(a,!0)}}],h=t.ref(e.buttons&&e.buttons.length?e.buttons:m),M=t.computed(()=>!!v.value),z=t.computed(()=>!!T.value&&!!h.value),p=t.ref(),S=t.ref(),W=t.ref(e.maximized||!1),{renderResizeBar:_,maximize:$,restore:A,boundingElement:Y,resizedEventParam:u,allowDrag:d,unWindowResizeHandle:C,moveToCenter:V}=ke(e),{registerDraggle:L}=Te(e,n,d);function ce(){return!!document.querySelectorAll(".farris-modal").length&&document.body.classList.contains("modal-open")}t.watch(()=>e.title,(a,b)=>{a!==b&&(O.value=a)}),t.watch(()=>e.modelValue,(a,b)=>{a!==b&&(i.value=a,i.value&&e.draggable&&t.nextTick(()=>{S.value&&!E.value&&(E.value=S.value.parentElement,Y.value=E.value,L(p.value,S.value,Y.value),V())}),a||(E.value&&(E.value=null),D())),i.value?P.value=ce():(W.value=!1,d.value=e.draggable)}),t.watch(()=>e.showHeader,(a,b)=>{a!==b&&(r.value=a)}),t.watch(()=>e.showButtons,(a,b)=>{a!==b&&(T.value=a)}),t.watch(()=>u.value,(a,b)=>{const H=a||{},j=b||{};JSON.stringify(H)!==JSON.stringify(j)&&n.emit("resize",{newSize:a,oldSize:b,isMaximized:W.value})}),t.watch([()=>e.width,()=>e.height],(a,b)=>{(a[0]!==b[0]||a[1]!==b[1])&&(l.value=a[0]||500,o.value=a[1]||600)}),t.watch(()=>e.class,(a,b)=>{f.value=a});const Q=t.computed(()=>(i.value&&document.body.classList.add("modal-open"),i.value)),We=t.computed(()=>{var H;const a={modal:!0,"farris-modal":!0,fade:!0,"fe-cmp-page-modal":!!e.showFloatingClose};a["f-modal-fitContent"]=!!c.value,a.show=!!Q.value;const b=(H=e.maskClass)==null?void 0:H.split(" ");return b==null||b.reduce((j,G)=>(j[G]=!0,j),a),a}),De=t.computed(()=>{var H;const a={"modal-dialog":!0},b=(H=f.value)==null?void 0:H.split(" ");return b==null||b.reduce((j,G)=>(j[G]=!0,j),a),a}),Ae=()=>U.isMobilePhone()&&!e.isMessager||!!e.fullscreen,qe=t.computed(()=>{const a=document.documentElement.clientWidth,b=document.documentElement.clientHeight;if(W.value)return{position:"fixed",top:"0px",left:"0px",width:"100vw",height:"100vh",margin:"0"};const H=Math.min(l.value,a),j=e.position==="right"?"100%":c.value?"auto":`${Math.min(o.value,b-10)}px`,G=`${(window.innerHeight-(j==="100%"||j==="auto"?0:parseInt(j)))/2}px`,st=e.position==="right"?`${window.innerWidth-H}px`:`${(window.innerWidth-H)/2}px`,he={position:"absolute",top:G,left:st,width:U.isMobilePhone()?"auto":`${H}px`,height:j};return e.mask||(he.pointerEvents="auto"),he}),de=t.ref(U.getMaxZIndex()||1050),Ue=t.computed(()=>{const a={display:"block",overflow:"hidden"};return e.mask||(a.pointerEvents="none",a.backgroundColor="transparent"),P.value&&(a.backgroundColor="transparent"),a.zIndex=de.value,a}),Ye=t.computed(()=>({"modal-content":!0,"modal-content-has-header":r.value,"is-mobile":Ae()})),Xe=t.computed(()=>{const a={display:r.value?"":"none"};return a["pointer-events"]=d.value?"auto":"none",a}),Ke=t.computed(()=>({"f-icon":!0,modal_maximize:!0,modalrevert:W.value})),Ge=t.computed(()=>({"modal-body":!0,"f-utils-flex-column":w.value==="iframe","f-utils-fill":!0}));function _e(){return{height:`${e.footerHeight||60}px`}}const $e=t.computed(()=>{const a={textAlgin:B.value},b=_e();return Object.assign(a,b)});function ee(a){if(a==null||a.stopPropagation(),W.value){W.value=!1,A();return}$(),W.value=!0}async function Je(a,b){a.handle?await a.handle(b,a)&&n.emit("closed",b):n.emit("buttonClick",{button:a,$event:b})}function Ze(a){a.width&&(l.value=a.width),a.height&&(o.value=a.height),a.buttons&&(h.value=a.buttons),a.title&&(O.value=a.title)}let te=null,ne=null;t.onBeforeMount(()=>{P.value=ce()}),t.onMounted(()=>{S.value&&!E.value&&(E.value=S.value.parentElement,Y.value=E.value,L(p.value,S.value,Y.value)),Q.value&&document.body.classList.add("modal-open"),te=Ve(e,n),ne=Ee(e,n)}),t.onUnmounted(()=>{C&&C(),te&&te.remove(),ne&&ne.remove()}),n.expose({modalElementRef:S,updateModalOptions:Ze,close:F,maxDialog:ee,isMaximized:W,disableButtons:(a,b=!0)=>{h.value.forEach(H=>{H.name&&a.includes(H.name)&&(H.disabled=b)})}});function Qe(){return t.createVNode("div",{class:"action-wrapper",onClick:a=>F(a,!1)},[t.createVNode("span",{class:"close-icon"},[t.createVNode("i",{class:"f-icon f-icon-close"},null)])])}function et(){return t.createVNode("ul",null,[k.value&&t.createVNode("li",{class:"f-btn-icon f-bare"},[t.createVNode("span",{class:"f-icon modal_minimize"},null)]),g.value&&t.createVNode("li",{onClick:ee,class:"f-btn-icon f-bare",style:"pointer-events: auto;"},[t.createVNode("span",{class:Ke.value},null)]),x.value&&t.createVNode("li",{class:"f-btn-icon f-bare",onClick:a=>F(a,!1),style:"pointer-events: auto;"},[t.createVNode("span",{class:"f-icon modal_close"},null)])])}const tt=a=>{a.preventDefault();const b=a.currentTarget,H=a.deltaY*.5;b.scrollLeft+=H};function nt(){return t.createVNode("div",{class:"modal-footer",style:$e.value},[h.value&&t.createVNode("div",{class:"buttons",onWheel:tt},[h.value.map(a=>{var j;const b=t.ref(a.disabled),H=a.class||((j=a.appearance)==null?void 0:j.class);return t.createVNode("button",{name:a.name,style:a.styles,type:"button",disabled:b.value,class:H+(a.iconClass?" btn-icontext":"")+(a.visible===!1?"d-none":""),onClick:G=>{Je(a,G)}},[!!a.iconClass&&t.createVNode("i",{class:a.iconClass},null),a.text])})])])}function fe(a){g.value&&ee()}function lt(){return t.createVNode(t.Fragment,null,[W.value&&t.createVNode("div",{class:"modal-header",style:"position: absolute;background: transparent;height: 45px;width: 100%;",onDblclick:a=>fe()},null),t.createVNode("div",{ref:p,class:"modal-header",style:Xe.value,onDblclick:a=>fe()},[n.slots.headerTemplate?n.slots.headerTemplate():t.createVNode("div",{class:"modal-title"},[M.value&&t.createVNode("span",{class:v.value,style:"margin-right: 8px"},null),t.createVNode("span",{class:"modal-title-label"},[O.value])]),t.createVNode("div",{class:"actions"},[et()])])])}function at(){return n.slots.footerTemplate?n.slots.footerTemplate():z.value&&nt()}function ot(a){if(a.stopPropagation(),e.allowClickMaskToClose){if(a.target!==N.value)return;F(a,!1)}}function ut(){var a,b;return t.createVNode("div",{id:s.value,class:De.value,style:qe.value,ref:S},[e.showFloatingClose&&Qe(),t.createVNode("div",{class:Ye.value},[r.value&<(),t.createVNode("div",{class:Ge.value},[(b=(a=n.slots).default)==null?void 0:b.call(a),w.value==="iframe"&&t.createVNode("iframe",{title:s.value,class:"f-utils-fill",width:"100%",frameborder:"0",src:y.value},null)]),at()]),!c.value&&S.value&&!W.value&&_(S.value)])}function it(a){return a||"body"}return t.watchEffect(()=>{Q.value&&(de.value=U.getMaxZIndex()||1050)}),()=>t.createVNode(t.Teleport,{to:it(e.host)},{default:()=>[Q.value&&t.createVNode(t.Transition,{name:"fade",appear:!0},{default:()=>[t.createVNode("div",{ref:N,class:We.value,style:Ue.value,onClick:ot},[ut()])]})]})}});function ue(e){if(e.content&&e.content.render)return e.content.render;if(e.render&&typeof e.render=="function")return e.render}function Oe(e){const n=document.createElement("div");n.style.display="contents";const l=t.createApp({setup(o,i){t.onUnmounted(()=>{document.body.removeChild(n)});const s=t.ref(),f=t.ref(e.class||""),c=t.ref(!!e.showButtons),r=t.ref(!!e.showHeader),v=t.ref(e.showCloseButton==null?!0:e.showCloseButton),x=t.ref(!!e.showFloatingClose),g=t.ref(!0),k=t.ref(e.title||""),w=e.acceptCallback||(()=>{}),y=e.rejectCallback||(()=>{}),B=e.closedCallback||(P=>{}),T=e.resizeHandle||(P=>{}),O=e.stopMoveHandle||(P=>{}),E=ue(e),N=P=>{g.value=!1,l.unmount(),B(P)};return t.onMounted(()=>{}),i.expose({modalRef:s}),()=>t.createVNode(Z,{ref:s,class:f.value,modelValue:g.value,"onUpdate:modelValue":P=>g.value=P,title:k.value,width:e.width,height:e.height,buttons:e.buttons,"show-header":r.value,"show-buttons":c.value,"show-close-button":v.value,"show-max-button":!1,showFloatingClose:x.value,onAccept:w,onCancel:y,fitContent:e.fitContent==null?!0:e.fitContent,onClosed:N,onResize:T,onStopMove:O},{default:()=>[E&&E(l)]})}});return document.body.appendChild(n),l.use(q.LocaleService.i18n),l.mount(n),l}class Ne{constructor(n){J(this,"appContext",null);J(this,"modalRef",t.ref());J(this,"activeModalIndex",t.ref(0));J(this,"modalRefs",{});J(this,"isUseEscCloseModal",t.ref(!1));this.app=n,this.appContext=n?n._context:null}getCurrentModal(){return this.modalRefs[this.activeModalIndex.value]}adaptToWindow(n,l){const{width:o,height:i}={width:window.innerWidth,height:window.innerHeight};return o<n&&(n=o-14),i<l&&(l=i-14),{width:n,height:l}}static show(n){const l=Object.assign({title:"",showButtons:!0,showHeader:!0},n);return Oe(l)}close(n){var l,o;n?(o=n.value)==null||o.close():(l=this.getCurrentModal())==null||l.close()}open(n){const l=document.createDocumentFragment();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),s=o.value.acceptCallback||(()=>{}),f=o.value.rejectCallback||(()=>{}),c=o.value.closedCallback||((h,M)=>{}),r=o.value.openedCallback||(h=>{}),v=o.value.resizeHandle||(h=>{}),x=n.stopMoveHandle||(h=>{});let g;const k=ue(o.value),w=h=>{var z;i.value=!1;const M=(z=h==null?void 0:h.target)==null?void 0:z.classList.contains("modal_close");c(h,this.isUseEscCloseModal.value?"esc":M?"icon":"button")},y=h=>{w(h),g&&t.nextTick(()=>{if(this.modalRefs[this.activeModalIndex.value]&&delete this.modalRefs[this.activeModalIndex.value],t.render(null,l),g=null,this.modalRef.value=null,this.modalRefs){const M=Object.keys(this.modalRefs).map(z=>Number(z));M.length>0?this.activeModalIndex.value=Math.max(...M):this.activeModalIndex.value=0,this.modalRefs[this.activeModalIndex.value]&&(this.modalRef.value=this.modalRefs[this.activeModalIndex.value])}this.isUseEscCloseModal.value=!1})},B=h=>{var M;this.isUseEscCloseModal.value=!0,(M=this.getCurrentModal())==null||M.close(h==null?void 0:h.event)},{width:T,height:O}=o.value,E=this.adaptToWindow(T||500,O||320);Object.assign(o.value,E);const N=t.ref(),P=()=>t.createVNode(Z,t.mergeProps({ref:N,modelValue:i.value,"onUpdate:modelValue":h=>i.value=h},o.value,{isMessager:o.value.class&&o.value.class.indexOf("modal-message")>-1,onAccept:s,onCancel:f,onClosed:y,onResize:v,onEsc:B,onStopMove:x,maximized:o.value.maximized}),{default:()=>[k&&k(this.app)]});g=(h=>{const M=t.h(P,h);return M.appContext=this.appContext,t.render(M,l),M})({...o.value}),this.activeModalIndex.value++;const F=this.activeModalIndex.value;this.modalRefs[F]=N.value;const m=h=>{o.value={...o.value,...h},g&&t.render(t.cloneVNode(g,{...o}),l)};return t.nextTick(()=>{this.modalRefs[F]=N.value,this.modalRef.value=N.value,r(new Event("opened"))}),{update:m,destroy:y,modalRef:N,close:()=>{var h;(h=N.value)==null||h.close()},disableButtons:(h,M=!0)=>{var z;(z=N.value)==null||z.disableButtons(h,M)}}}}const ie=Symbol("FModalService");Z.install=e=>{e.component(Z.name,Z);const n=new Ne(e);e.provide(ie,n),e.provide("FModalService",n)};function se(e,n){function l(){const o=e.beforeOpen||e.beforeClickButton||null;let i=Promise.resolve(!0);if(o){const s=o(n.value);if(typeof s>"u")return i;typeof s=="boolean"?i=Promise.resolve(s):i=s}return i}return{judgeCanOpen:l}}function Pe(e,n,l,o,i){const s=t.ref(e.buttonBehavior),f=t.ref(e.popupOnInput),c=t.computed(()=>({"input-group-append":!0,"append-force-show":e.showButtonWhenDisabled&&(e.readonly||e.disable)})),{judgeCanOpen:r}=se(e,i),v=t.computed(()=>e.showButtonWhenDisabled||(!e.editable||!e.readonly)&&!e.disable),x=t.inject(ie,null),g=t.ref();async function k(B){if(await r()&&v.value){const T=!!n.slots.default;if(s.value==="Modal"){const O=e.modalOptions,E=x==null?void 0:x.open({...O,render:()=>n.slots.default&&n.slots.default()});g.value=E==null?void 0:E.modalRef}s.value==="Overlay"&&Be.show({host:document.body,backgroundColor:"rgba(0,0,0,.15)",render:()=>n.slots.default&&n.slots.default()}),T&&s.value==="Popup"&&o.togglePopup(!0),T&&f.value&&o.hidePopup(),n.emit("clickButton",{origin:B,value:e.modelValue})}}function w(B){n.emit("mouseEnterIcon",B)}function y(B){n.emit("mouseLeaveIcon",B)}return{buttonGroupClass:c,onClickButton:k,onMouseEnterButton:w,onMouseLeaveButton:y,modalRef:g}}function Se(e,n,l,o,i,s){const f=t.ref(!1),c=t.computed(()=>e.enableClear&&!e.readonly&&!e.disable&&!U.isMobilePhone()),{changeTextBoxValue:r,hasClearClass:v}=s,x=t.ref(!1);function g(T){f.value=T,v.value=T}const k=t.computed(()=>c.value&&!!(i!=null&&i.value)&&x.value);t.watch(i,()=>{g(k.value)});function w(T){const O=!e.readonly&&!e.disable&&e.editable,E=!e.editable;T==null||T.stopPropagation(),(O||E)&&(r(""),i.value="",g(!f.value),n.emit("clear"))}function y(T){if(x.value=!0,!!c.value){if(!l.value){g(!1);return}!e.disable&&!e.readonly&&g(!0)}}function B(T){x.value=!1,c.value&&g(!1)}return{enableClearButton:c,showClearButton:f,onClearValue:w,onMouseEnterTextBox:y,onMouseLeaveTextBox:B}}function ze(e,n,l,o,i){const s=t.computed(()=>e.popupOnInput),f=t.computed(()=>e.popupOnFocus),{shouldPopupContent:c,closeAllPopover:r}=i,v=t.ref(!1),x=t.computed(()=>e.enableTitle?l.value:""),g=t.computed(()=>(e.disable||e.readonly)&&!e.forcePlaceholder?"":e.placeholder),k=t.computed(()=>e.readonly||!e.editable||U.isMobilePhone()),w=t.ref(!1),y=t.computed(()=>!e.disable&&w.value),B=t.computed(()=>({"text-left":e.textAlign==="left","text-center":e.textAlign==="center","text-right":e.textAlign==="right","form-control":!0,"f-utils-fill":!0})),T=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":y.value,"input-group--has-clear":e.enableClear&&v.value}));function O(p,S=!0){l.value=p,S&&(n.emit("change",p),n.emit("update:modelValue",p))}function E(p){c.value=!1,O(p,!0)}t.watch(()=>e.modelValue,p=>{l.value=p});function N(p){w.value=!1,n.emit("blur",p),p.stopPropagation()}function P(p){n.emit("click",p),r(),n.slots.default&&!e.disable&&!e.readonly&&e.popupOnClick&&i.togglePopup()}function D(p){!e.disable&&!e.readonly&&(w.value=!0,k.value||(n.emit("focus",p),f.value&&!c.value&&i.popup()))}function F(p){n.emit("input",p);const S=p.target.value;o.value=S,l.value!==S&&O(S,e.updateOn==="change"),s.value&&!c.value&&i.popup()}function m(p){p.target.tagName!=="INPUT"&&p.preventDefault(),p.stopPropagation()}function h(p){n.emit("keydown",p)}function M(p){p.key==="Enter"&&(s.value||f.value)&&i.hidePopup(),n.emit("keyup",p)}function z(p){const S=p.target.value;p.stopPropagation(),O(S)}return{hasFocusedTextBox:y,isTextBoxReadonly:k,textBoxClass:B,textBoxPlaceholder:g,textBoxTitle:x,inputGroupClass:T,hasClearClass:v,changeTextBoxValue:O,commitValue:E,onBlurTextBox:N,onClickTextBox:P,onFocusTextBox:D,onInput:F,onKeyDownTextBox:h,onKeyUpTextBox:M,onMouseDownTextBox:m,onTextBoxValueChange:z}}const K="FarrisVue_PopoverInstancesKey";function Ie(e,n,l,o){const i=t.ref(),s=t.ref(!1),{judgeCanOpen:f}=se(e,o);t.watch(()=>i.value,(w,y)=>{window[K]=window[K]||new WeakMap,w?window[K].set(l.value,w):window[K].delete(l.value)});function c(){if(window[K]){const w=window[K];document.querySelectorAll(".f-button-edit,.v-popover").forEach(y=>{const B=w.get(y);B&&y!==l.value&&!l.value.closest(".popover-fitcontent")&&B.hide()})}}function r(){const w=i.value;w&&(w.show?w.show(l.value):w.open&&w.open(l.value))}async function v(w=!1){if(!!n.slots.default){if(!w&&!s.value&&!await f())return;s.value=!s.value,s.value&&(await t.nextTick(),r())}}async function x(w=!1){if(!!n.slots.default){if(!w&&!await f())return;s.value=!0,await t.nextTick(),r()}}function g(){s.value=!1}function k(){s.value=!0,t.nextTick(()=>{r()})}return{hidePopup:g,showPopup:k,popup:x,shouldPopupContent:s,togglePopup:v,popoverRef:i,closeAllPopover:c}}function He(e,n,l){const o=t.ref(),{isTextBoxReadonly:i,textBoxClass:s,textBoxPlaceholder:f,textBoxTitle:c,onBlurTextBox:r,onClickTextBox:v,onFocusTextBox:x,onInput:g,onKeyDownTextBox:k,onKeyUpTextBox:w,onMouseDownTextBox:y,onTextBoxValueChange:B}=l,T=t.ref(e.id),{uuid:O}=U.useGuid(),E=t.computed(()=>({}));t.onMounted(()=>{var m,h;e.selectOnCreated&&((m=o.value)==null||m.select()),e.focusOnCreated&&((h=o.value)==null||h.focus({preventScroll:!0})),T.value||(T.value="button-edit_"+O(8)),T.value=T.value+"-textbox"});const N=t.ref(!1),P=m=>{m.preventDefault(),N.value=!0},D=m=>{m.preventDefault(),N.value=!1,g(m)};function F(m){N.value||g(m)}return()=>t.createVNode("input",{id:e.id?e.id+"-textbox":void 0,ref:o,name:"input-group-value",autocomplete:e.autoComplete?"on":"off",class:s.value,style:E.value,disabled:e.disable,maxlength:e.maxLength,minlength:e.minLength,placeholder:f.value,readonly:i.value,tabindex:e.tabIndex,title:c.value,type:e.inputType,value:n.value,onBlur:r,onChange:B,onClick:v,onFocus:x,onInput:F,onKeydown:k,onKeyup:w,onMousedown:y,onCompositionend:D,onCompositionstart:P},null)}function je(e,n,l){const o=t.ref(e.separator),i=t.computed(()=>e.readonly||e.disable),{changeTextBoxValue:s,onFocusTextBox:f,onBlurTextBox:c,onClickTextBox:r,textBoxPlaceholder:v}=l,x=t.computed(()=>n.value?n.value.split(o.value).map(y=>({name:y,selectable:!0})):[]);function g(y){s(y.map(B=>B.name).join(o.value),!0)}t.watch(()=>e.separator,y=>{o.value=y});const k=t.ref(!e.disable&&!e.readonly);t.watch([()=>e.disable,()=>e.readonly],([y,B],[T,O])=>{k.value=!y&&!B});function w(y){r(y)}return()=>t.createVNode(me,{tabindex:e.tabIndex,onFocus:f,onBlur:c,id:`${e.id}-tag-editor`,class:"form-control",placeholder:v.value,data:x.value,showClose:!i.value,showInput:!0,disable:i.value,onChange:g,onClick:w},null)}function Re(e,n,l,o){const{buttonGroupClass:i,onClickButton:s,onMouseEnterButton:f,onMouseLeaveButton:c}=l,{enableClearButton:r,showClearButton:v,onClearValue:x}=o,g=t.ref(),k=le.debounce(B=>{s(B)},e.buttonBehavior==="Modal"?0:200),w=()=>{n.emit("beforeClearValue")},{renderExpandContent:y}=ve.useInputExpand(e,n);return{renderButtonGroup:()=>t.createVNode(t.Fragment,null,[t.createVNode("div",{id:e.id?`${e.id}-button-group`:void 0,class:i.value},[r.value&&t.withDirectives(t.createVNode("span",{class:"input-group-text input-group-clear",onClick:x,onMousedown:w},[t.createVNode("i",{class:"f-icon modal_close"},null)]),[[t.vShow,v.value]]),n.slots.buttonContent?t.createVNode("span",{class:"input-group-text input-group-append-button",onClick:k,onMouseenter:f,onMouseleave:c},[n.slots.buttonContent()]):e.buttonContent?t.createVNode("span",{class:"input-group-text input-group-append-button",innerHTML:e.buttonContent,ref:g,onClick:B=>k(B),onMouseenter:f,onMouseleave:c},null):null]),y()]),buttonHandleElement:g}}function Fe(e,n,l){const o=t.ref(e.popupMinWidth),{hidePopup:i,popoverRef:s}=l,f=()=>{n.emit("shown")},c=()=>{i(),n.emit("hidden")};return()=>U.isMobilePhone()?t.createVNode(pe,{id:`${e.id}-drawer`,ref:s,position:e.placement,width:"auto",height:"auto",host:e.popupHost,showHeader:!1,showFooter:!1,customClass:"f-drawer--no-padding","onUpdate:modelValue":r=>r?f():c()},{default:()=>{var r,v;return[t.createTextVNode(" "),(v=(r=n.slots).default)==null?void 0:v.call(r),t.createTextVNode(" ")]}}):t.createVNode(ge,{id:`${e.id}-popover`,ref:s,placement:e.placement,host:e.popupHost,"keep-width-with-reference":e.keepWidthWithReference,fitContent:!0,"right-boundary":e.popupRightBoundary,minWidth:o.value,class:e.popupClass,offsetX:e.popupOffsetX,offsetY:e.popupOffsetY,onHidden:c,onShown:f,beforeClose:e.beforeClosePopup,limitContentBySpace:e.limitContentBySpace},{default:()=>{var r,v;return[(v=(r=n.slots).default)==null?void 0:v.call(r)]}})}const re=t.defineComponent({name:"FButtonEdit",props:ae,emits:["updateExtendInfo","clear","change","click","clickButton","blur","focus","mouseEnterIcon","mouseLeaveIcon","keyup","keydown","inputClick","input","update:modelValue","beforeClearValue","expandClick","hidden","shown"],setup(e,n){const l=t.ref(),o=t.ref(e.customClass),i=t.ref(e.modelValue),s=Ie(e,n,l,i),{shouldPopupContent:f,hidePopup:c,showPopup:r,togglePopup:v}=s,x=Pe(e,n,l,s,i),g=t.ref(""),k=ze(e,n,i,g,s),{hasFocusedTextBox:w,commitValue:y,inputGroupClass:B,changeTextBoxValue:T}=k,O=Se(e,n,i,w,g,k),{onMouseEnterTextBox:E,onMouseLeaveTextBox:N}=O,P=t.ref(!1),D=t.computed(()=>{const u={"f-button-edit":!0,"f-cmp-inputgroup":!0,"f-button-edit-nowrap":!e.wrapText};return o.value&&o.value.split(" ").reduce((d,C)=>(d[C]=!0,d),u),u}),F=t.computed(()=>({overflow:e.wrapText?"hidden":""})),m=t.computed(()=>({})),h=t.ref(e.showAppendButton);function M(){if(!e.multiSelect||e.inputType!=="tag"||!l.value)return 0;let u=0;const d=Array.from(l.value.querySelectorAll(".farris-tag-item"));return d&&d.length&&(u=d.map(C=>C.offsetTop).filter(C=>C>20).length),u}const z=t.ref(M());t.onUpdated(()=>{z.value=M()});function p(){return e.multiSelect&&e.inputType==="tag"?()=>t.createVNode(t.Fragment,null,[je(e,i,k)(),!!z.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("+"),z.value])])]):He(e,i,k)}let S=p();t.watch([()=>e.multiSelect,()=>e.inputType],()=>{S=p()});const{renderButtonGroup:W,buttonHandleElement:_}=Re(e,n,x,O),$=Fe(e,n,s),A=t.ref(f.value),Y={displayText:g,commitValue:y,elementRef:l,hidePopup:c,showPopup:r,popoverRef:s.popoverRef,shouldPopupContent:f,togglePopup:v,openDialog:()=>{_.value&&e.buttonBehavior==="Modal"&&_.value.click(),n.slots.content&&le.debounce(()=>{x.onClickButton(null)},e.buttonBehavior==="Modal"?0:200)()},getModal:()=>{var u;return e.buttonBehavior==="Modal"?(u=x.modalRef.value)==null?void 0:u.value:null},getTextbox:()=>{var u;return(u=l.value)==null?void 0:u.querySelector("input")},forceClosePopup:()=>{A.value=!1,P.value=!0,f.value=!1},clear:()=>{T(""),g.value=""},setText:u=>{T(u,!1),g.value=u}};return t.onMounted(()=>{l.value.componentInstance=Y,window.onresize=()=>{document.body.click()}}),t.onBeforeUnmount(()=>{var u;window.onresize=null,(u=window[K])==null||u.delete(l.value)}),n.expose(Y),t.watch(()=>f.value,async(u,d)=>{if(P.value){A.value=u,P.value=!1;return}if(!u&&e.beforeClosePopup&&typeof e.beforeClosePopup=="function"){try{const C=await e.beforeClosePopup();A.value=!C,(!C||e.readonly)&&(f.value=!0)}catch(C){console.error("Error in beforeClosePopup:",C),A.value=d,f.value=d}return}A.value=u}),()=>{var u,d;return t.createVNode(t.Fragment,null,[t.createVNode("div",t.mergeProps(n.attrs,{ref:l,class:D.value,id:e.id?e.id:void 0,style:F.value}),[t.createVNode("div",{id:e.id?`${e.id}-input-group`:void 0,class:B.value,style:m.value,onMouseenter:E,onMouseleave:N},[(d=(u=n.slots).precontent)==null?void 0:d.call(u),n.slots.content?n.slots.content():S(),n.slots.content?null:h.value&&W()])]),A.value&&$()])}}}),Le=U.withInstall(re);I.FButtonEdit=re,I.buttonEditProps=ae,I.default=Le,Object.defineProperties(I,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});