@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.
Files changed (61) hide show
  1. package/components/batch-editor/index.esm.js +6850 -6840
  2. package/components/batch-editor/index.umd.cjs +20 -20
  3. package/components/button/index.esm.js +6852 -6842
  4. package/components/button/index.umd.cjs +20 -20
  5. package/components/button-edit/index.esm.js +140 -140
  6. package/components/button-edit/index.umd.cjs +1 -1
  7. package/components/button-group/index.esm.js +46 -45
  8. package/components/button-group/index.umd.cjs +1 -1
  9. package/components/common/index.esm.js +16 -12
  10. package/components/common/index.umd.cjs +1 -1
  11. package/components/component/index.esm.js +411 -411
  12. package/components/component/index.umd.cjs +2 -2
  13. package/components/data-view/index.esm.js +6500 -6487
  14. package/components/data-view/index.umd.cjs +21 -21
  15. package/components/designer-canvas/index.esm.js +269 -269
  16. package/components/designer-canvas/index.umd.cjs +1 -1
  17. package/components/expression-editor/index.esm.js +458 -458
  18. package/components/expression-editor/index.umd.cjs +2 -2
  19. package/components/filter-condition-editor/index.esm.js +386 -386
  20. package/components/filter-condition-editor/index.umd.cjs +1 -1
  21. package/components/flow-canvas/index.esm.js +1100 -1100
  22. package/components/flow-canvas/index.umd.cjs +7 -7
  23. package/components/mapping-editor/index.esm.js +243 -243
  24. package/components/mapping-editor/index.umd.cjs +2 -2
  25. package/components/message-box/index.esm.js +82 -82
  26. package/components/message-box/index.umd.cjs +1 -1
  27. package/components/modal/index.esm.js +76 -76
  28. package/components/modal/index.umd.cjs +1 -1
  29. package/components/order/index.esm.js +139 -138
  30. package/components/order/index.umd.cjs +1 -1
  31. package/components/query-solution/index.esm.js +891 -891
  32. package/components/query-solution/index.umd.cjs +1 -1
  33. package/components/response-toolbar/index.esm.js +151 -149
  34. package/components/response-toolbar/index.umd.cjs +1 -1
  35. package/components/schema-selector/index.esm.js +947 -941
  36. package/components/schema-selector/index.umd.cjs +6 -6
  37. package/components/section/index.esm.js +121 -121
  38. package/components/section/index.umd.cjs +2 -2
  39. package/components/sort-condition-editor/index.esm.js +539 -539
  40. package/components/sort-condition-editor/index.umd.cjs +1 -1
  41. package/components/tabs/index.esm.js +448 -442
  42. package/components/tabs/index.umd.cjs +1 -1
  43. package/designer/button-edit/index.esm.js +97 -97
  44. package/designer/button-edit/index.umd.cjs +1 -1
  45. package/designer/data-grid/index.esm.js +6483 -6470
  46. package/designer/data-grid/index.umd.cjs +21 -21
  47. package/designer/farris-designer.all.esm.js +1891 -1885
  48. package/designer/farris-designer.all.umd.cjs +14 -14
  49. package/designer/radio-group/index.esm.js +183 -183
  50. package/designer/radio-group/index.umd.cjs +2 -2
  51. package/designer/response-toolbar/index.esm.js +558 -556
  52. package/designer/response-toolbar/index.umd.cjs +1 -1
  53. package/designer/tabs/index.esm.js +416 -416
  54. package/designer/tabs/index.umd.cjs +2 -2
  55. package/farris.all.esm.js +9133 -9119
  56. package/farris.all.umd.cjs +35 -35
  57. package/package.json +1 -1
  58. package/types/common/index.d.ts +1 -0
  59. package/types/common/utils/attrs.d.ts +26 -0
  60. package/types/modal/src/composition/type.d.ts +2 -0
  61. package/types/tabs/src/composition/types.d.ts +2 -0
@@ -1 +1 @@
1
- (function(O,H){typeof exports=="object"&&typeof module<"u"?H(exports,require("../../components/common/index.umd.js"),require("../../components/dynamic-resolver/index.umd.js"),require("../../components/button-edit/index.umd.js"),require("vue"),require("../../components/locale/index.umd.js"),require("../../components/drawer/index.umd.js"),require("../../components/property-panel/index.umd.js"),require("../../components/button/index.umd.js"),require("../../components/field-selector/index.umd.js"),require("../../components/collection-property-editor/index.umd.js/src/use-button-items.designer"),require("../../components/designer-canvas/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","../../components/common/index.umd.js","../../components/dynamic-resolver/index.umd.js","../../components/button-edit/index.umd.js","vue","../../components/locale/index.umd.js","../../components/drawer/index.umd.js","../../components/property-panel/index.umd.js","../../components/button/index.umd.js","../../components/field-selector/index.umd.js","../../components/collection-property-editor/index.umd.js/src/use-button-items.designer","../../components/designer-canvas/index.umd.js"],H):(O=typeof globalThis<"u"?globalThis:O||self,H(O["button-edit"]={},O.common,O.dynamicResolver,O.FButtonEdit,O.Vue,O.locale,O.FDrawer,null,null,null,null,O.designerCanvas))})(this,function(O,H,q,se,e,J,ie,dt,ct,ft,pt,ve){"use strict";var rt=Object.defineProperty;var ut=(O,H,q)=>H in O?rt(O,H,{enumerable:!0,configurable:!0,writable:!0,value:q}):O[H]=q;var G=(O,H,q)=>ut(O,typeof H!="symbol"?H+"":H,q);const ye={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}},ge={popupContentPosition:{type:Object,default:{left:0,top:0}},host:{type:Object},backgroundColor:{type:String,default:""}};function be(){const t=e.ref(!1);return e.onMounted(()=>{t.value=!0}),t}const we=e.defineComponent({name:"FOverlay",props:ge,emits:["click"],setup(t,n){const l=e.ref(t.popupContentPosition),o=e.ref(t.host),s=be(),i=e.computed(()=>({backgroundColor:t.backgroundColor||"",pointerEvents:"auto"}));function c(r){n.emit("click"),r.preventDefault(),r.stopPropagation()}e.computed(()=>{const r=o.value;if(r){const p=r.getBoundingClientRect(),{left:x,top:b,height:M}=p;return{left:x,top:b+M}}return l.value});const f=e.computed(()=>({}));return()=>s.value?e.createVNode(e.Teleport,{to:"body"},{default:()=>{var r,p;return[e.createVNode("div",{class:"overlay-container",onClick:x=>c(x),style:i.value},[e.createVNode("div",{style:f.value},[(p=(r=n.slots).default)==null?void 0:p.call(r)])])]}}):null}});function Ce(t){if(t.content&&t.content.render)return t.content.render;if(t.render&&typeof t.render=="function")return t.render}function xe(t){const n=document.createElement("div");n.style.display="contents";let l;const o=t.onClickCallback||(()=>{}),s=()=>{o(),l&&l.unmount()};return l=e.createApp({setup(){e.onUnmounted(()=>{document.body.removeChild(n)});const i=Ce(t);return()=>e.createVNode(we,{"popup-content-position":t.popupPosition,host:t.host,onClick:s,backgroundColor:t.backgroundColor},{default:()=>[i&&i()]})}}),document.body.appendChild(n),l.mount(n),l}class Me{static show(n){return xe(n)}}const Be={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 S{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 s=parseInt(o[4],10),i=parseInt(o[5],10);return{x:s,y:i}}return{x:0,y:0}}static fromEvent(n,l=null){if(this.isMouseEvent(n))return new S(n.clientX,n.clientY);if(l===null||n.changedTouches.length===1)return new S(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 S(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 S(0,0);if(window){const o=window.getComputedStyle(n);if(o){const s=parseInt(o.getPropertyValue("left"),10),i=parseInt(o.getPropertyValue("top"),10);l.x=isNaN(s)?0:s,l.y=isNaN(i)?0:i}return l}return null}static copy(n){return new S(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 ${constructor(n,l){this.width=n,this.height=l}static getCurrent(n){const l=new $(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 $(0,0).set(n)}set(n){return this.width=n.width,this.height=n.height,this}}function ke(t,n){const l=e.ref(),o=e.ref(),s=e.ref(),i=e.ref(),c=e.ref(),f=e.ref(),r=e.ref(),p=e.ref(),x=e.ref(),b=e.ref(),M=e.ref(),w=e.ref(t.resizeable),E=e.ref(),k=e.ref(t.draggable),T=e.ref(!1);function y(){const u=o.value||document.body,d=window.getComputedStyle(u);if(!d||!l.value)return;const B=S.getTransformInfo(l.value),C={};r.value&&(C.deltaL=l.value.offsetLeft-r.value.x,C.deltaT=l.value.offsetTop-r.value.y);const I=d.getPropertyValue("position");C.width=u.clientWidth,C.height=u.clientHeight,C.pr=parseInt(d.getPropertyValue("padding-right"),10),C.pb=parseInt(d.getPropertyValue("padding-bottom"),10),C.position=d.getPropertyValue("position"),I==="static"&&(u.style.position="relative"),C.translateX=B.x,C.translateY=B.y,b.value=C}function g(u){if(l.value){i.value=$.getCurrent(l.value),c.value=S.getCurrent(l.value),f.value=i.value?$.copy(i.value):null,r.value=c.value?S.copy(c.value):null,y();const d=u.target.getAttribute("type")||"";p.value={n:!!d.match(/n/),s:!!d.match(/s/),w:!!d.match(/w/),e:!!d.match(/e/)}}}function N(){var u,d,B,C;if(l.value){const I=l.value;p.value&&((p.value.n||p.value.s)&&((u=f.value)!=null&&u.height)&&(I.style.height=f.value.height+"px"),(p.value.w||p.value.e)&&((d=f.value)!=null&&d.width)&&(I.style.width=f.value.width+"px"),r.value&&((B=r.value)!=null&&B.x&&(I.style.left=r.value.x+"px"),(C=r.value)!=null&&C.y&&(I.style.top=r.value.y+"px")))}}function R(){const u=t.minHeight?t.minHeight:1,d=t.minWidth?t.minWidth:1;f.value&&r.value&&p.value&&i.value&&(f.value.height<u&&(f.value.height=u,p.value.n&&c.value&&(r.value.y=c.value.y+(i.value.height-u))),f.value.width<d&&(f.value.width=d,p.value.w&&c.value&&(r.value.x=c.value.x+(i.value.width-d))),t.maxHeight&&f.value.height>t.maxHeight&&(f.value.height=t.maxHeight,c.value&&p.value.n&&(r.value.y=c.value.y+(i.value.height-t.maxHeight))),t.maxWidth&&f.value.width>t.maxWidth&&(f.value.width=t.maxWidth,p.value.w&&c.value&&(r.value.x=c.value.x+(i.value.width-t.maxWidth))))}function P(){if(o.value){const u=b.value;if(r.value&&f.value&&p.value&&i.value){const d=u.width-u.pr-u.deltaL-u.translateX-r.value.x,B=u.height-u.pb-u.deltaT-u.translateY-r.value.y;p.value.n&&r.value.y+u.translateY<0&&c.value&&(r.value.y=-u.translateY,f.value.height=i.value.height+c.value.y+u.translateY),p.value.w&&r.value.x+u.translateX<0&&c.value&&(r.value.x=-u.translateX,f.value.width=i.value.width+c.value.x+u.translateX),f.value.width>d&&(f.value.width=d),f.value.height>B&&(f.value.height=B)}}}function W(u){if(!s.value||!i.value||!c.value||!p.value)return;u.subtract(s.value);const d=u.x,B=u.y;p.value.n?(r.value.y=c.value.y+B,f.value.height=i.value.height-B):p.value.s&&(f.value.height=i.value.height+B),p.value.e?f.value.width=i.value.width+d:p.value.w&&(f.value.width=i.value.width-d,r.value.x=c.value.x+d),P(),R(),N()}function m(u){if(!x.value)return;const d=S.fromEvent(u);d&&W(d)}function v(){if(l.value){const{width:u,height:d,x:B,y:C}=l.value.getBoundingClientRect(),I=S.getTransformInfo(l.value);return{size:{width:u,height:d},position:{x:B-I.x,y:C-I.y}}}return null}function V(u){if(l.value){const d=v();M.value=d}s.value=void 0,i.value=null,c.value=null,f.value=null,r.value=null,p.value=null,x.value=null,document.removeEventListener("mousemove",m),document.removeEventListener("mouseup",V)}function D(){document.addEventListener("mousemove",m),document.addEventListener("mouseup",V)}function L(u){u instanceof MouseEvent&&u.button===2||k.value&&(document.body.click(),u.stopPropagation(),u.preventDefault(),s.value=S.fromEvent(u),x.value=u.target,g(u),D())}function A(u){return l.value=u,w.value&&e.createVNode(e.Fragment,null,[e.createVNode("div",{class:"fv-resizable-handle fv-resizable-n",type:"n",onMousedown:d=>L(d)},null),e.createVNode("div",{class:"fv-resizable-handle fv-resizable-e",type:"e",onMousedown:d=>L(d)},null),e.createVNode("div",{class:"fv-resizable-handle fv-resizable-s",type:"s",onMousedown:d=>L(d)},null),e.createVNode("div",{class:"fv-resizable-handle fv-resizable-w",type:"w",onMousedown:d=>L(d)},null),e.createVNode("div",{class:"fv-resizable-handle fv-resizable-ne",type:"ne",onMousedown:d=>L(d)},null),e.createVNode("div",{class:"fv-resizable-handle fv-resizable-se fv-resizable-diagonal",type:"se",onMousedown:d=>L(d)},null),e.createVNode("div",{class:"fv-resizable-handle fv-resizable-sw",type:"sw",onMousedown:d=>L(d)},null),e.createVNode("div",{class:"fv-resizable-handle fv-resizable-nw",type:"nw",onMousedown:d=>L(d)},null)])}function F(u=!0){document.body.click();const d=o.value||document.body,B=$.getCurrent(d),C=l.value;u&&C&&(E.value=v(),E.value.transform=C.style.transform),B&&C&&(f.value=B,f.value.height-=14,f.value.width-=14,C.style.height=f.value.height+"px",C.style.width=f.value.width+"px",C.style.left="7px",C.style.top="7px",C.style.transform="",M.value={size:f.value,position:{x:0,y:0}},k.value=!1,T.value=!0)}function te(){var u,d;if(document.body.click(),E.value){const B={width:E.value.size.width||0,height:E.value.size.height||0},C={x:(window.innerWidth-B.width)/2,y:(window.innerHeight-B.height)/2};(u=f.value)==null||u.set(B),(d=r.value)==null||d.set(C);const I=l.value;I.style.height=B.height+"px",I.style.width=B.width+"px",I.style.left=`${C.x}px`,I.style.top=`${C.y}px`,I.style.transform="",M.value={size:B,position:C},k.value=t.draggable,T.value=!1}}function Z(){if(l.value){const u=$.getCurrent(l.value);if(u){const{width:d,height:B}=u;l.value.style.left=`${(window.innerWidth-d)/2}px`,l.value.style.top=`${(window.innerHeight-B)/2}px`,l.value.style.transform=""}}}function ne(){const u=()=>{T.value?F(!1):Z(),document.body.click()};return window.addEventListener("resize",u),()=>{window.removeEventListener("resize",u)}}const X=ne();return{renderResizeBar:A,boundingElement:o,resizedEventParam:M,maximize:F,restore:te,allowDrag:k,isMaximized:T,unWindowResizeHandle:X,moveToCenter:Z}}function Ve(t,n,l){const o=e.ref(),s=e.ref(t.draggable),i=e.ref(t.lockAxis),c=e.ref(),f=e.ref(),r=e.ref(!1),p=e.ref(new S(0,0)),x=e.ref(new S(0,0)),b=e.ref(new S(0,0)),M=e.ref(new S(0,0));e.watch(()=>l.value,m=>{c.value.style.cursor=m?"move":"default"});function w(m,v){if(v.tagName==="BUTTON")return!1;if(v===m)return!0;for(const V in v.children)if(Object.prototype.hasOwnProperty.call(v.children,V)&&w(m,v.children[V]))return!0;return!1}function E(){var D,L;let m=b.value.x+x.value.x,v=b.value.y+x.value.y;i.value==="x"?(m=((D=p.value)==null?void 0:D.x)||0,b.value.x=0):i.value==="y"&&(v=((L=p.value)==null?void 0:L.y)||0,b.value.y=0);const V=`translate3d(${Math.round(m)}px, ${Math.round(v)}px, 0px)`;o.value&&(o.value.style.transform=V),M.value.x=m,M.value.y=v}function k(){if(!f.value||!o.value)return null;const m=f.value.getBoundingClientRect(),v=o.value.getBoundingClientRect(),V={top:m.top<v.top,right:m.right>v.right,bottom:m.bottom>v.bottom,left:m.left<v.left};return V.top||(b.value.y-=v.top-m.top),V.bottom||(b.value.y-=v.bottom-m.bottom),V.right||(b.value.x-=v.right-m.right),V.left||(b.value.x-=v.left-m.left),E(),V}function T(m){m&&(p.value&&m.subtract(p.value),b.value.set(m),E(),k())}function y(m){r.value&&s.value&&(m.stopPropagation(),m.preventDefault(),T(S.fromEvent(m,c.value)))}function g(){var m;if(r.value){if(r.value=!1,x.value.add(b.value),b.value.reset(),(m=o.value)==null||m.classList.remove("ng-dragging"),!t.useTransform&&o.value){const{left:v,top:V}=o.value.getBoundingClientRect();o.value.style.left=Math.ceil(v)+"px",o.value.style.top=Math.ceil(V)+"px",o.value.style.transform="none"}n.emit("stopMove"),document.removeEventListener("mousemove",y),document.removeEventListener("mouseup",g)}}function N(){!r.value&&c.value&&(r.value=!0,c.value.classList.add("ng-dragging"),document.addEventListener("mousemove",y),document.addEventListener("mouseup",g))}function R(){if(o.value){const m=S.getTransformInfo(o.value);x.value.set(m);return}x.value.reset()}function P(m){if(!l.value||m instanceof MouseEvent&&m.button===2)return;const v=m.target||m.srcElement;c.value!==void 0&&v&&!w(v,c.value)||s.value!==!1&&(document.body.click(),m.stopPropagation(),m.preventDefault(),p.value=S.fromEvent(m,o.value),R(),N())}function W(m,v,V){if(s.value&&v){if(m)c.value=m;else if(t.dragHandle){if(t.dragHandle instanceof HTMLElement)c.value=t.dragHandle;else if(typeof t.dragHandle=="string"){const D=v.querySelector(t.dragHandle);D&&(c.value=D)}}o.value=v,f.value=V,c.value?(c.value.classList.add("ng-draggable"),c.value.addEventListener("mousedown",P)):s.value=!1}}return{registerDraggle:W,resetTranslate:R}}function re(t,n){if(t){const l=o=>{o.key.toLowerCase()===t.toLowerCase()&&n({event:o,key:t})};return document.addEventListener("keydown",l),()=>{document.removeEventListener("keydown",l)}}}function Ee(t,n){const l=e.ref(t.enableEsc);let o=null;return l.value?(o=re("Escape",s=>{n.emit("esc",{event:s.event,type:"esc"})}),{remove:o}):null}function Ne(t,n){const l=e.ref(t.enableEnter);let o=null;return l.value?(o=re("Enter",s=>{n.emit("enter",{event:s.event,type:"enter"})}),{remove:o}):null}const K=e.defineComponent({name:"FModal",props:Be,emits:["update:modelValue","accept","cancel","closed","resize","esc","enter","stopMove","buttonClick"],setup(t,n){const l=e.ref(t.width||300),o=e.ref(t.height||200),s=e.ref(t.modelValue),i=e.ref(""),c=e.ref(t.class),f=e.ref(t.fitContent),r=e.ref(t.showHeader),p=e.ref(""),x=e.ref(t.showCloseButton),b=e.ref(t.showMaxButton),M=e.ref(!1),w=e.ref(t.dialogType),E=e.ref(t.src),k=e.ref(""),T=e.ref(t.showButtons),y=e.ref(t.title),g=e.ref(t.containment||null),N=e.ref();y.value==="错误提示"&&(y.value=J.LocaleService.getLocaleValue("messageBox.errorTitle"));const R=e.ref(!1);function P(){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 W(a,h){const z=h?"accept":"cancel";Promise.resolve().then(()=>{var j;return(j=t.beforeClose)==null?void 0:j.call(t,{closeType:z})}).then(j=>{j&&(s.value=!1,n.emit("update:modelValue",!1),h!=null&&n.emit(h?"accept":"cancel"),n.emit("closed",a),P())})}const m=[{name:"cancel",text:J.LocaleService.getLocaleValue("messageBox.cancel")||"取消",class:"btn btn-secondary",handle:a=>{W(a,!1)}},{name:"accept",text:J.LocaleService.getLocaleValue("messageBox.ok")||"确定",class:"btn btn-primary",handle:a=>{W(a,!0)}}],v=e.ref(t.buttons&&t.buttons.length?t.buttons:m),V=e.computed(()=>!!p.value),D=e.computed(()=>!!T.value&&!!v.value),L=e.ref(),A=e.ref(),F=e.ref(t.maximized||!1),{renderResizeBar:te,maximize:Z,restore:ne,boundingElement:X,resizedEventParam:u,allowDrag:d,unWindowResizeHandle:B,moveToCenter:C}=ke(t),{registerDraggle:I}=Ve(t,n,d);function fe(){return!!document.querySelectorAll(".farris-modal").length&&document.body.classList.contains("modal-open")}e.watch(()=>t.title,(a,h)=>{a!==h&&(y.value=a)}),e.watch(()=>t.modelValue,(a,h)=>{a!==h&&(s.value=a,s.value&&t.draggable&&e.nextTick(()=>{A.value&&!g.value&&(g.value=A.value.parentElement,X.value=g.value,I(L.value,A.value,X.value),C())}),a||(g.value&&(g.value=null),P())),s.value?R.value=fe():(F.value=!1,d.value=t.draggable)}),e.watch(()=>t.showHeader,(a,h)=>{a!==h&&(r.value=a)}),e.watch(()=>t.showButtons,(a,h)=>{a!==h&&(T.value=a)}),e.watch(()=>u.value,(a,h)=>{const z=a||{},j=h||{};JSON.stringify(z)!==JSON.stringify(j)&&n.emit("resize",{newSize:a,oldSize:h,isMaximized:F.value})}),e.watch([()=>t.width,()=>t.height],(a,h)=>{(a[0]!==h[0]||a[1]!==h[1])&&(l.value=a[0]||500,o.value=a[1]||600)}),e.watch(()=>t.class,(a,h)=>{c.value=a});const Q=e.computed(()=>(s.value&&document.body.classList.add("modal-open"),s.value)),Fe=e.computed(()=>{var z;const a={modal:!0,"farris-modal":!0,fade:!0,"fe-cmp-page-modal":!!t.showFloatingClose};a["f-modal-fitContent"]=!!f.value,a.show=!!Q.value;const h=(z=t.maskClass)==null?void 0:z.split(" ");return h==null||h.reduce((j,Y)=>(j[Y]=!0,j),a),a}),We=e.computed(()=>{var z;const a={"modal-dialog":!0},h=(z=c.value)==null?void 0:z.split(" ");return h==null||h.reduce((j,Y)=>(j[Y]=!0,j),a),a}),De=()=>H.isMobilePhone()&&!t.isMessager||!!t.fullscreen,Ae=e.computed(()=>{const a=document.documentElement.clientWidth,h=document.documentElement.clientHeight;if(F.value)return{position:"fixed",top:"0px",left:"0px",width:"100vw",height:"100vh",margin:"0"};const z=Math.min(l.value,a),j=t.position==="right"?"100%":f.value?"auto":`${Math.min(o.value,h-10)}px`,Y=`${(window.innerHeight-(j==="100%"||j==="auto"?0:parseInt(j)))/2}px`,it=t.position==="right"?`${window.innerWidth-z}px`:`${(window.innerWidth-z)/2}px`,he={position:"absolute",top:Y,left:it,width:H.isMobilePhone()?"auto":`${z}px`,height:j};return t.mask||(he.pointerEvents="auto"),he}),pe=e.ref(H.getMaxZIndex()||1050),qe=e.computed(()=>{const a={display:"block",overflow:"hidden"};return t.mask||(a.pointerEvents="none",a.backgroundColor="transparent"),R.value&&(a.backgroundColor="transparent"),a.zIndex=pe.value,a}),$e=e.computed(()=>({"modal-content":!0,"modal-content-has-header":r.value,"is-mobile":De()})),Ye=e.computed(()=>{const a={display:r.value?"":"none"};return a["pointer-events"]=d.value?"auto":"none",a}),Ue=e.computed(()=>({"f-icon":!0,modal_maximize:!0,modalrevert:F.value})),Xe=e.computed(()=>({"modal-body":!0,"f-utils-flex-column":w.value==="iframe","f-utils-fill":!0}));function Ge(){return{height:`${t.footerHeight||60}px`}}const Ke=e.computed(()=>{const a={textAlgin:k.value},h=Ge();return Object.assign(a,h)});function ae(a){if(a==null||a.stopPropagation(),F.value){F.value=!1,ne();return}Z(),F.value=!0}async function _e(a,h){a.handle?await a.handle(h,a)&&n.emit("closed",h):n.emit("buttonClick",{button:a,$event:h})}function Je(a){a.width&&(l.value=a.width),a.height&&(o.value=a.height),a.buttons&&(v.value=a.buttons),a.title&&(y.value=a.title)}let le=null,oe=null;e.onBeforeMount(()=>{R.value=fe()}),e.onMounted(()=>{A.value&&!g.value&&(g.value=A.value.parentElement,X.value=g.value,I(L.value,A.value,X.value)),Q.value&&document.body.classList.add("modal-open"),le=Ee(t,n),oe=Ne(t,n)}),e.onUnmounted(()=>{B&&B(),le&&le.remove(),oe&&oe.remove()}),n.expose({modalElementRef:A,updateModalOptions:Je,close:W,maxDialog:ae,isMaximized:F,disableButtons:(a,h=!0)=>{v.value.forEach(z=>{z.name&&a.includes(z.name)&&(z.disabled=h)})}});function Ze(){return e.createVNode("div",{class:"action-wrapper",onClick:a=>W(a,!1)},[e.createVNode("span",{class:"close-icon"},[e.createVNode("i",{class:"f-icon f-icon-close"},null)])])}function Qe(){return e.createVNode("ul",null,[M.value&&e.createVNode("li",{class:"f-btn-icon f-bare"},[e.createVNode("span",{class:"f-icon modal_minimize"},null)]),b.value&&e.createVNode("li",{onClick:ae,class:"f-btn-icon f-bare",style:"pointer-events: auto;"},[e.createVNode("span",{class:Ue.value},null)]),x.value&&e.createVNode("li",{class:"f-btn-icon f-bare",onClick:a=>W(a,!1),style:"pointer-events: auto;"},[e.createVNode("span",{class:"f-icon modal_close"},null)])])}const et=a=>{a.preventDefault();const h=a.currentTarget,z=a.deltaY*.5;h.scrollLeft+=z};function tt(){return e.createVNode("div",{class:"modal-footer",style:Ke.value},[v.value&&e.createVNode("div",{class:"buttons",onWheel:et},[v.value.map(a=>{var j;const h=e.ref(a.disabled),z=a.class||((j=a.appearance)==null?void 0:j.class);return e.createVNode("button",{name:a.name,style:a.styles,type:"button",disabled:h.value,class:z+(a.iconClass?" btn-icontext":"")+(a.visible===!1?"d-none":""),onClick:Y=>{_e(a,Y)}},[!!a.iconClass&&e.createVNode("i",{class:a.iconClass},null),a.text])})])])}function me(a){b.value&&ae()}function nt(){return e.createVNode(e.Fragment,null,[F.value&&e.createVNode("div",{class:"modal-header",style:"position: absolute;background: transparent;height: 45px;width: 100%;",onDblclick:a=>me()},null),e.createVNode("div",{ref:L,class:"modal-header",style:Ye.value,onDblclick:a=>me()},[n.slots.headerTemplate?n.slots.headerTemplate():e.createVNode("div",{class:"modal-title"},[V.value&&e.createVNode("span",{class:p.value,style:"margin-right: 8px"},null),e.createVNode("span",{class:"modal-title-label"},[y.value])]),e.createVNode("div",{class:"actions"},[Qe()])])])}function at(){return n.slots.footerTemplate?n.slots.footerTemplate():D.value&&tt()}function lt(a){if(a.stopPropagation(),t.allowClickMaskToClose){if(a.target!==N.value)return;W(a,!1)}}function ot(){var a,h;return e.createVNode("div",{id:i.value,class:We.value,style:Ae.value,ref:A},[t.showFloatingClose&&Ze(),e.createVNode("div",{class:$e.value},[r.value&&nt(),e.createVNode("div",{class:Xe.value},[(h=(a=n.slots).default)==null?void 0:h.call(a),w.value==="iframe"&&e.createVNode("iframe",{title:i.value,class:"f-utils-fill",width:"100%",frameborder:"0",src:E.value},null)]),at()]),!f.value&&A.value&&!F.value&&te(A.value)])}function st(a){return a||"body"}return e.watchEffect(()=>{Q.value&&(pe.value=H.getMaxZIndex()||1050)}),()=>e.createVNode(e.Teleport,{to:st(t.host)},{default:()=>[Q.value&&e.createVNode(e.Transition,{name:"fade",appear:!0},{default:()=>[e.createVNode("div",{ref:N,class:Fe.value,style:qe.value,onClick:lt},[ot()])]})]})}});function ue(t){if(t.content&&t.content.render)return t.content.render;if(t.render&&typeof t.render=="function")return t.render}function ze(t){const n=document.createElement("div");n.style.display="contents";const l=t.type||"modal",o=e.createApp({setup(s,i){e.onUnmounted(()=>{document.body.removeChild(n)});const c=e.ref(),f=e.ref(t.class||""),r=e.ref(!0),p=e.ref(t.title||""),x=ue(t),b=t.closedCallback||(P=>{}),M=P=>{r.value=!1,o.unmount(),b(P)};if(i.expose({ref:c}),l==="drawer")return()=>e.createVNode(ie,{ref:c,modelValue:r.value,"onUpdate:modelValue":P=>r.value=P,id:"modal-service-drawer",title:p.value,width:t.width,height:t.height,position:t.position,backgroundColor:t.backgroundColor,host:t.host,showMask:t.showMask,allowClickMaskToClose:t.allowClickMaskToClose,transparent:t.transparent,showHeader:t.showHeader,showFooter:t.showButtons,buttons:t.buttons,beforeClose:t.beforeClose,customClass:f.value,onAfterClose:M},{default:()=>[x&&x(o)]});const w=e.ref(!!t.showButtons),E=e.ref(!!t.showHeader),k=e.ref(t.showCloseButton==null?!0:t.showCloseButton),T=e.ref(!!t.showFloatingClose),y=t.acceptCallback||(()=>{}),g=t.rejectCallback||(()=>{}),N=t.resizeHandle||(P=>{}),R=t.stopMoveHandle||(P=>{});return()=>e.createVNode(K,{ref:c,class:f.value,modelValue:r.value,"onUpdate:modelValue":P=>r.value=P,title:p.value,width:t.width,height:t.height,buttons:t.buttons,"show-header":E.value,"show-buttons":w.value,"show-close-button":k.value,"show-max-button":!1,showFloatingClose:T.value,onAccept:y,onCancel:g,fitContent:t.fitContent==null?!0:t.fitContent,onClosed:M,onResize:N,onStopMove:R},{default:()=>[x&&x(o)]})}});return document.body.appendChild(n),o.use(J.LocaleService.i18n),o.mount(n),o}class Oe{constructor(n){G(this,"appContext",null);G(this,"modalRef",e.ref());G(this,"activeModalIndex",e.ref(0));G(this,"modalRefs",{});G(this,"isUseEscCloseModal",e.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:s}={width:window.innerWidth,height:window.innerHeight};return o<n&&(n=o-14),s<l&&(l=s-14),{width:n,height:l}}static show(n){const l=Object.assign({title:"",showButtons:!0,showHeader:!0},n);return ze(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(),o=n.type||"modal";n.showMaxButton&&n.fitContent&&(n.showMaxButton=!1);const s=e.shallowRef(Object.assign({title:"",showButtons:!0,showHeader:!0,maximized:!1},n)),i=e.ref(!0),c=ue(s.value),f=s.value.closedCallback||((y,g)=>{}),r=s.value.openedCallback||(y=>{});let p;const x=y=>{var N;i.value=!1;const g=(N=y==null?void 0:y.target)==null?void 0:N.classList.contains("modal_close");f(y,this.isUseEscCloseModal.value?"esc":g?"icon":"button")},b=y=>{x(y),p&&e.nextTick(()=>{if(this.modalRefs[this.activeModalIndex.value]&&delete this.modalRefs[this.activeModalIndex.value],e.render(null,l),p=null,this.modalRef.value=null,this.modalRefs){const g=Object.keys(this.modalRefs).map(N=>Number(N));g.length>0?this.activeModalIndex.value=Math.max(...g):this.activeModalIndex.value=0,this.modalRefs[this.activeModalIndex.value]&&(this.modalRef.value=this.modalRefs[this.activeModalIndex.value])}this.isUseEscCloseModal.value=!1})},M=e.ref();let w;if(o==="drawer")w=()=>e.createVNode(ie,e.mergeProps({ref:M,modelValue:i.value,"onUpdate:modelValue":y=>i.value=y,id:"modal-service-drawer"},s.value,{onAfterClose:b}),{default:()=>[c&&c(this.app)]});else{const y=s.value.acceptCallback||(()=>{}),g=s.value.rejectCallback||(()=>{}),N=s.value.resizeHandle||(V=>{}),R=n.stopMoveHandle||(V=>{}),P=V=>{var D;this.isUseEscCloseModal.value=!0,(D=this.getCurrentModal())==null||D.close(V==null?void 0:V.event)},{width:W,height:m}=s.value,v=this.adaptToWindow(Number(W)||500,Number(m)||320);Object.assign(s.value,v),w=()=>e.createVNode(K,e.mergeProps({ref:M,modelValue:i.value,"onUpdate:modelValue":V=>i.value=V},s.value,{isMessager:s.value.class&&s.value.class.indexOf("modal-message")>-1,onAccept:y,onCancel:g,onClosed:b,onResize:N,onEsc:P,onStopMove:R,maximized:s.value.maximized}),{default:()=>[c&&c(this.app)]})}p=(y=>{const g=e.h(w,y);return g.appContext=this.appContext,e.render(g,l),g})({...s.value}),this.activeModalIndex.value++;const k=this.activeModalIndex.value;this.modalRefs[k]=M.value;const T=y=>{s.value={...s.value,...y},p&&e.render(e.cloneVNode(p,{...s}),l)};return e.nextTick(()=>{this.modalRefs[k]=M.value,this.modalRef.value=M.value,r(new Event("opened"))}),{update:T,destroy:b,modalRef:M,close:()=>{var y;(y=M.value)==null||y.close()},disableButtons:(y,g=!0)=>{var N,R;(R=(N=M.value)==null?void 0:N.disableButtons)==null||R.call(N,y,g)}}}}const de=Symbol("FModalService");K.install=t=>{t.component(K.name,K);const n=new Oe(t);t.provide(de,n),t.provide("FModalService",n)};function ce(t,n){function l(){const o=t.beforeOpen||t.beforeClickButton||null;let s=Promise.resolve(!0);if(o){const i=o(n.value);if(typeof i>"u")return s;typeof i=="boolean"?s=Promise.resolve(i):s=i}return s}return{judgeCanOpen:l}}function je(t,n,l,o,s){const i=e.ref(t.buttonBehavior),c=e.ref(t.popupOnInput),f=e.computed(()=>({"input-group-append":!0,"append-force-show":t.showButtonWhenDisabled&&(t.readonly||t.disable)})),{judgeCanOpen:r}=ce(t,s),p=e.computed(()=>t.showButtonWhenDisabled||(!t.editable||!t.readonly)&&!t.disable),x=e.inject(de,null),b=e.ref();async function M(k){if(await r()&&p.value){const T=!!n.slots.default;if(i.value==="Modal"){const y=t.modalOptions,g=x==null?void 0:x.open({...y,render:()=>n.slots.default&&n.slots.default()});b.value=g==null?void 0:g.modalRef}i.value==="Overlay"&&Me.show({host:document.body,backgroundColor:"rgba(0,0,0,.15)",render:()=>n.slots.default&&n.slots.default()}),T&&i.value==="Popup"&&o.togglePopup(!0),T&&c.value&&o.hidePopup(),n.emit("clickButton",{origin:k,value:t.modelValue})}}function w(k){n.emit("mouseEnterIcon",k)}function E(k){n.emit("mouseLeaveIcon",k)}return{buttonGroupClass:f,onClickButton:M,onMouseEnterButton:w,onMouseLeaveButton:E,modalRef:b}}const U="FarrisVue_PopoverInstancesKey";function Se(t,n,l,o){const s=e.ref(),i=e.ref(!1),{judgeCanOpen:c}=ce(t,o);e.watch(()=>s.value,(w,E)=>{window[U]=window[U]||new WeakMap,w?window[U].set(l.value,w):window[U].delete(l.value)});function f(){if(window[U]){const w=window[U];document.querySelectorAll(".f-button-edit,.v-popover").forEach(E=>{const k=w.get(E);k&&E!==l.value&&!l.value.closest(".popover-fitcontent")&&k.hide()})}}function r(){const w=s.value;w&&(w.show?w.show(l.value):w.open&&w.open(l.value))}async function p(w=!1){if(!!n.slots.default){if(!w&&!i.value&&!await c())return;i.value=!i.value,i.value&&(await e.nextTick(),r())}}async function x(w=!1){if(!!n.slots.default){if(!w&&!await c())return;i.value=!0,await e.nextTick(),r()}}function b(){i.value=!1}function M(){i.value=!0,e.nextTick(()=>{r()})}return{hidePopup:b,showPopup:M,popup:x,shouldPopupContent:i,togglePopup:p,popoverRef:s,closeAllPopover:f}}function Te(t,n,l){const{buttonGroupClass:o}=l,s=e.ref(),i=e.computed(()=>({"input-group-append input-append-wrapper":!0,"input-append-button":t.expandMode==="button","input-append-text":t.expandMode==="text"}));return{renderButtonGroup:()=>e.createVNode("div",{id:t.id?`${t.id}-button-group`:void 0,class:o.value},[n.slots.buttonContent?e.createVNode("span",{class:"input-group-text input-group-append-button"},[n.slots.buttonContent()]):t.buttonContent?e.createVNode("span",{class:"input-group-text input-group-append-button",innerHTML:t.buttonContent,ref:s},null):null,t.expandable&&t.expandContent&&e.createVNode("div",{class:i.value},[e.createVNode("div",{class:"input-group-text",innerHTML:t.expandContent},null)])]),buttonHandleElement:s}}const _=e.defineComponent({name:"FButtonEdit",props:ye,emits:["updateExtendInfo","clear","change","click","clickButton","blur","focus","mouseEnterIcon","mouseLeaveIcon","keyup","keydown","inputClick","input","update:modelValue"],setup(t,n){const l=e.ref(),o=e.inject("design-item-context"),s=ve.useDesignerComponent(l,o),i=e.ref(t.customClass),c=e.ref(t.modelValue),f=Se(t,n,l,c),r=je(t,n,l,f,c),p=e.ref(),x=e.computed(()=>({"f-cmp-inputgroup":!0,"input-group":!0,"f-state-disabled":!0,"f-state-editable":!1,"f-state-readonly":!0}));e.onMounted(()=>{l.value.componentInstance=s}),n.expose(s.value);const b=e.computed(()=>{const E={"f-button-edit":!0,"f-cmp-inputgroup":!0,"f-button-edit-nowrap":!t.wrapText};return i.value&&i.value.split(" ").reduce((k,T)=>(k[T]=!0,k),E),E}),M=e.computed(()=>({"text-left":t.textAlign==="left","text-center":t.textAlign==="center","text-right":t.textAlign==="right","form-control":!0,"f-utils-fill":!0})),{renderButtonGroup:w}=Te(t,n,r);return()=>e.createVNode("div",e.mergeProps(n.attrs,{ref:l,class:b.value,id:t.id?t.id:void 0,style:"pointer-events: none;"}),[e.createVNode("div",{class:x.value},[e.createVNode("input",{ref:p,class:M.value,readonly:!0,placeholder:t.placeholder},null),w()])])}}),Ie=new Map([["appearance",q.resolveAppearance]]);function He(t,n,l){return n}const Pe={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/button-edit.schema.json",title:"button-edit",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a Input Group",type:"string"},type:{description:"The type string of Input Group component",type:"string",default:"button-edit"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disable:{type:"string",default:!1},editable:{description:"",type:"boolean",default:!0},enableLinkLabel:{description:"",type:"boolean",default:!1},label:{description:"",type:"string",default:""},lableWidth:{description:"",type:"number"},placeholder:{description:"",type:"string",default:""},forcePlaceholder:{description:"",type:"boolean",default:!1},readonly:{description:"",type:"boolean",default:!1},require:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},textAlign:{description:"",type:"string",enum:["left","middle","right"],default:"left"},visible:{description:"",type:"boolean",default:!0},onBlur:{description:"",type:"string",default:""},onClickLinkLabel:{description:"",type:"string",default:""},autoComplete:{description:"",type:"boolean",default:!1},buttonContent:{description:"",type:"string",default:""},enableClear:{description:"",type:"boolean",default:!0},inputType:{description:"",type:"string",enum:["text","tag"],default:"text"},multiSelect:{description:"",type:"boolean",default:!1},popup:{description:"",type:"object",properties:{footerButtons:{type:"array",default:[]},height:{type:"number",default:600},dataMapping:{type:"object"},contents:{type:"array",default:[]},showMaxButton:{type:"boolean",default:!0},showCloseButton:{type:"boolean",default:!0},showFooter:{type:"boolean",default:!0},title:{type:"string",default:""},width:{type:"number",default:800}}},popupClass:{description:"",type:"string",default:""},separator:{type:"string",default:","},showButtonWhenDisabled:{description:"",type:"boolean",default:!1},showAppendButton:{description:"",type:"boolean",default:!0},wrapText:{type:"boolean",default:!1},onClear:{description:"",type:"string",default:""},onClickButton:{description:"",type:"string",default:""},modelValue:{description:"",type:"string",default:""}},required:["id","type"]},Re={title:"buttonEdit",description:"A Farris Component",type:"object",categories:{basic:{description:"Basic Infomation",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"waiting for modification",enum:[]}}}},behavior:{description:"Basic Infomation",title:"行为",properties:{editable:{description:"",title:"允许编辑",type:"boolean"},readonly:{description:"",title:"只读",type:"string"},required:{description:"",title:"必填",type:"boolean"},visible:{description:"",title:"可见",type:"boolean"},placeholder:{description:"",title:"提示文本",type:"string"},tabindex:{description:"",title:"tab索引",type:"number"},textAlign:{description:"",title:"对齐方式",type:"enum",editor:{type:"combo-list",textField:"name",valueField:"value",data:[{value:"left",name:"左对齐"},{value:"center",name:"居中"},{value:"right",name:"右对齐"}]}}}}}},ee=q.createPropsResolver(se.buttonEditProps,Pe,Ie,He,Re);_.register=(t,n,l,o)=>{t["button-edit"]=se,n["button-edit"]=ee},_.registerDesigner=(t,n,l)=>{t["button-edit"]=_,n["button-edit"]=ee};const Le=H.withInstall(_);O.FButtonEditDesign=_,O.default=Le,O.propsResolver=ee,Object.defineProperties(O,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
1
+ (function(O,T){typeof exports=="object"&&typeof module<"u"?T(exports,require("../../components/common/index.umd.js"),require("../../components/dynamic-resolver/index.umd.js"),require("../../components/button-edit/index.umd.js"),require("vue"),require("../../components/locale/index.umd.js"),require("../../components/drawer/index.umd.js"),require("../../components/property-panel/index.umd.js"),require("../../components/button/index.umd.js"),require("../../components/field-selector/index.umd.js"),require("../../components/collection-property-editor/index.umd.js/src/use-button-items.designer"),require("../../components/designer-canvas/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","../../components/common/index.umd.js","../../components/dynamic-resolver/index.umd.js","../../components/button-edit/index.umd.js","vue","../../components/locale/index.umd.js","../../components/drawer/index.umd.js","../../components/property-panel/index.umd.js","../../components/button/index.umd.js","../../components/field-selector/index.umd.js","../../components/collection-property-editor/index.umd.js/src/use-button-items.designer","../../components/designer-canvas/index.umd.js"],T):(O=typeof globalThis<"u"?globalThis:O||self,T(O["button-edit"]={},O.common,O.dynamicResolver,O.FButtonEdit,O.Vue,O.locale,O.FDrawer,null,null,null,null,O.designerCanvas))})(this,function(O,T,q,se,e,J,ie,dt,ct,ft,pt,ve){"use strict";var rt=Object.defineProperty;var ut=(O,T,q)=>T in O?rt(O,T,{enumerable:!0,configurable:!0,writable:!0,value:q}):O[T]=q;var G=(O,T,q)=>ut(O,typeof T!="symbol"?T+"":T,q);const ye={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}},ge={popupContentPosition:{type:Object,default:{left:0,top:0}},host:{type:Object},backgroundColor:{type:String,default:""}};function be(){const t=e.ref(!1);return e.onMounted(()=>{t.value=!0}),t}const we=e.defineComponent({name:"FOverlay",props:ge,emits:["click"],setup(t,n){const l=e.ref(t.popupContentPosition),o=e.ref(t.host),s=be(),i=e.computed(()=>({backgroundColor:t.backgroundColor||"",pointerEvents:"auto"}));function c(r){n.emit("click"),r.preventDefault(),r.stopPropagation()}e.computed(()=>{const r=o.value;if(r){const p=r.getBoundingClientRect(),{left:x,top:b,height:M}=p;return{left:x,top:b+M}}return l.value});const f=e.computed(()=>({}));return()=>s.value?e.createVNode(e.Teleport,{to:"body"},{default:()=>{var r,p;return[e.createVNode("div",{class:"overlay-container",onClick:x=>c(x),style:i.value},[e.createVNode("div",{style:f.value},[(p=(r=n.slots).default)==null?void 0:p.call(r)])])]}}):null}});function Ce(t){if(t.content&&t.content.render)return t.content.render;if(t.render&&typeof t.render=="function")return t.render}function xe(t){const n=document.createElement("div");n.style.display="contents";let l;const o=t.onClickCallback||(()=>{}),s=()=>{o(),l&&l.unmount()};return l=e.createApp({setup(){e.onUnmounted(()=>{document.body.removeChild(n)});const i=Ce(t);return()=>e.createVNode(we,{"popup-content-position":t.popupPosition,host:t.host,onClick:s,backgroundColor:t.backgroundColor},{default:()=>[i&&i()]})}}),document.body.appendChild(n),l.mount(n),l}class Me{static show(n){return xe(n)}}const Be={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 S{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 s=parseInt(o[4],10),i=parseInt(o[5],10);return{x:s,y:i}}return{x:0,y:0}}static fromEvent(n,l=null){if(this.isMouseEvent(n))return new S(n.clientX,n.clientY);if(l===null||n.changedTouches.length===1)return new S(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 S(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 S(0,0);if(window){const o=window.getComputedStyle(n);if(o){const s=parseInt(o.getPropertyValue("left"),10),i=parseInt(o.getPropertyValue("top"),10);l.x=isNaN(s)?0:s,l.y=isNaN(i)?0:i}return l}return null}static copy(n){return new S(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 ${constructor(n,l){this.width=n,this.height=l}static getCurrent(n){const l=new $(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 $(0,0).set(n)}set(n){return this.width=n.width,this.height=n.height,this}}function ke(t,n){const l=e.ref(),o=e.ref(),s=e.ref(),i=e.ref(),c=e.ref(),f=e.ref(),r=e.ref(),p=e.ref(),x=e.ref(),b=e.ref(),M=e.ref(),w=e.ref(t.resizeable),E=e.ref(),k=e.ref(t.draggable),I=e.ref(!1);function y(){const u=o.value||document.body,d=window.getComputedStyle(u);if(!d||!l.value)return;const B=S.getTransformInfo(l.value),C={};r.value&&(C.deltaL=l.value.offsetLeft-r.value.x,C.deltaT=l.value.offsetTop-r.value.y);const H=d.getPropertyValue("position");C.width=u.clientWidth,C.height=u.clientHeight,C.pr=parseInt(d.getPropertyValue("padding-right"),10),C.pb=parseInt(d.getPropertyValue("padding-bottom"),10),C.position=d.getPropertyValue("position"),H==="static"&&(u.style.position="relative"),C.translateX=B.x,C.translateY=B.y,b.value=C}function g(u){if(l.value){i.value=$.getCurrent(l.value),c.value=S.getCurrent(l.value),f.value=i.value?$.copy(i.value):null,r.value=c.value?S.copy(c.value):null,y();const d=u.target.getAttribute("type")||"";p.value={n:!!d.match(/n/),s:!!d.match(/s/),w:!!d.match(/w/),e:!!d.match(/e/)}}}function N(){var u,d,B,C;if(l.value){const H=l.value;p.value&&((p.value.n||p.value.s)&&((u=f.value)!=null&&u.height)&&(H.style.height=f.value.height+"px"),(p.value.w||p.value.e)&&((d=f.value)!=null&&d.width)&&(H.style.width=f.value.width+"px"),r.value&&((B=r.value)!=null&&B.x&&(H.style.left=r.value.x+"px"),(C=r.value)!=null&&C.y&&(H.style.top=r.value.y+"px")))}}function R(){const u=t.minHeight?t.minHeight:1,d=t.minWidth?t.minWidth:1;f.value&&r.value&&p.value&&i.value&&(f.value.height<u&&(f.value.height=u,p.value.n&&c.value&&(r.value.y=c.value.y+(i.value.height-u))),f.value.width<d&&(f.value.width=d,p.value.w&&c.value&&(r.value.x=c.value.x+(i.value.width-d))),t.maxHeight&&f.value.height>t.maxHeight&&(f.value.height=t.maxHeight,c.value&&p.value.n&&(r.value.y=c.value.y+(i.value.height-t.maxHeight))),t.maxWidth&&f.value.width>t.maxWidth&&(f.value.width=t.maxWidth,p.value.w&&c.value&&(r.value.x=c.value.x+(i.value.width-t.maxWidth))))}function P(){if(o.value){const u=b.value;if(r.value&&f.value&&p.value&&i.value){const d=u.width-u.pr-u.deltaL-u.translateX-r.value.x,B=u.height-u.pb-u.deltaT-u.translateY-r.value.y;p.value.n&&r.value.y+u.translateY<0&&c.value&&(r.value.y=-u.translateY,f.value.height=i.value.height+c.value.y+u.translateY),p.value.w&&r.value.x+u.translateX<0&&c.value&&(r.value.x=-u.translateX,f.value.width=i.value.width+c.value.x+u.translateX),f.value.width>d&&(f.value.width=d),f.value.height>B&&(f.value.height=B)}}}function W(u){if(!s.value||!i.value||!c.value||!p.value)return;u.subtract(s.value);const d=u.x,B=u.y;p.value.n?(r.value.y=c.value.y+B,f.value.height=i.value.height-B):p.value.s&&(f.value.height=i.value.height+B),p.value.e?f.value.width=i.value.width+d:p.value.w&&(f.value.width=i.value.width-d,r.value.x=c.value.x+d),P(),R(),N()}function m(u){if(!x.value)return;const d=S.fromEvent(u);d&&W(d)}function v(){if(l.value){const{width:u,height:d,x:B,y:C}=l.value.getBoundingClientRect(),H=S.getTransformInfo(l.value);return{size:{width:u,height:d},position:{x:B-H.x,y:C-H.y}}}return null}function V(u){if(l.value){const d=v();M.value=d}s.value=void 0,i.value=null,c.value=null,f.value=null,r.value=null,p.value=null,x.value=null,document.removeEventListener("mousemove",m),document.removeEventListener("mouseup",V)}function D(){document.addEventListener("mousemove",m),document.addEventListener("mouseup",V)}function L(u){u instanceof MouseEvent&&u.button===2||k.value&&(document.body.click(),u.stopPropagation(),u.preventDefault(),s.value=S.fromEvent(u),x.value=u.target,g(u),D())}function A(u){return l.value=u,w.value&&e.createVNode(e.Fragment,null,[e.createVNode("div",{class:"fv-resizable-handle fv-resizable-n",type:"n",onMousedown:d=>L(d)},null),e.createVNode("div",{class:"fv-resizable-handle fv-resizable-e",type:"e",onMousedown:d=>L(d)},null),e.createVNode("div",{class:"fv-resizable-handle fv-resizable-s",type:"s",onMousedown:d=>L(d)},null),e.createVNode("div",{class:"fv-resizable-handle fv-resizable-w",type:"w",onMousedown:d=>L(d)},null),e.createVNode("div",{class:"fv-resizable-handle fv-resizable-ne",type:"ne",onMousedown:d=>L(d)},null),e.createVNode("div",{class:"fv-resizable-handle fv-resizable-se fv-resizable-diagonal",type:"se",onMousedown:d=>L(d)},null),e.createVNode("div",{class:"fv-resizable-handle fv-resizable-sw",type:"sw",onMousedown:d=>L(d)},null),e.createVNode("div",{class:"fv-resizable-handle fv-resizable-nw",type:"nw",onMousedown:d=>L(d)},null)])}function F(u=!0){document.body.click();const d=o.value||document.body,B=$.getCurrent(d),C=l.value;u&&C&&(E.value=v(),E.value.transform=C.style.transform),B&&C&&(f.value=B,f.value.height-=14,f.value.width-=14,C.style.height=f.value.height+"px",C.style.width=f.value.width+"px",C.style.left="7px",C.style.top="7px",C.style.transform="",M.value={size:f.value,position:{x:0,y:0}},k.value=!1,I.value=!0)}function te(){var u,d;if(document.body.click(),E.value){const B={width:E.value.size.width||0,height:E.value.size.height||0},C={x:(window.innerWidth-B.width)/2,y:(window.innerHeight-B.height)/2};(u=f.value)==null||u.set(B),(d=r.value)==null||d.set(C);const H=l.value;H.style.height=B.height+"px",H.style.width=B.width+"px",H.style.left=`${C.x}px`,H.style.top=`${C.y}px`,H.style.transform="",M.value={size:B,position:C},k.value=t.draggable,I.value=!1}}function Z(){if(l.value){const u=$.getCurrent(l.value);if(u){const{width:d,height:B}=u;l.value.style.left=`${(window.innerWidth-d)/2}px`,l.value.style.top=`${(window.innerHeight-B)/2}px`,l.value.style.transform=""}}}function ne(){const u=()=>{I.value?F(!1):Z(),document.body.click()};return window.addEventListener("resize",u),()=>{window.removeEventListener("resize",u)}}const X=ne();return{renderResizeBar:A,boundingElement:o,resizedEventParam:M,maximize:F,restore:te,allowDrag:k,isMaximized:I,unWindowResizeHandle:X,moveToCenter:Z}}function Ve(t,n,l){const o=e.ref(),s=e.ref(t.draggable),i=e.ref(t.lockAxis),c=e.ref(),f=e.ref(),r=e.ref(!1),p=e.ref(new S(0,0)),x=e.ref(new S(0,0)),b=e.ref(new S(0,0)),M=e.ref(new S(0,0));e.watch(()=>l.value,m=>{c.value.style.cursor=m?"move":"default"});function w(m,v){if(v.tagName==="BUTTON")return!1;if(v===m)return!0;for(const V in v.children)if(Object.prototype.hasOwnProperty.call(v.children,V)&&w(m,v.children[V]))return!0;return!1}function E(){var D,L;let m=b.value.x+x.value.x,v=b.value.y+x.value.y;i.value==="x"?(m=((D=p.value)==null?void 0:D.x)||0,b.value.x=0):i.value==="y"&&(v=((L=p.value)==null?void 0:L.y)||0,b.value.y=0);const V=`translate3d(${Math.round(m)}px, ${Math.round(v)}px, 0px)`;o.value&&(o.value.style.transform=V),M.value.x=m,M.value.y=v}function k(){if(!f.value||!o.value)return null;const m=f.value.getBoundingClientRect(),v=o.value.getBoundingClientRect(),V={top:m.top<v.top,right:m.right>v.right,bottom:m.bottom>v.bottom,left:m.left<v.left};return V.top||(b.value.y-=v.top-m.top),V.bottom||(b.value.y-=v.bottom-m.bottom),V.right||(b.value.x-=v.right-m.right),V.left||(b.value.x-=v.left-m.left),E(),V}function I(m){m&&(p.value&&m.subtract(p.value),b.value.set(m),E(),k())}function y(m){r.value&&s.value&&(m.stopPropagation(),m.preventDefault(),I(S.fromEvent(m,c.value)))}function g(){var m;if(r.value){if(r.value=!1,x.value.add(b.value),b.value.reset(),(m=o.value)==null||m.classList.remove("ng-dragging"),!t.useTransform&&o.value){const{left:v,top:V}=o.value.getBoundingClientRect();o.value.style.left=Math.ceil(v)+"px",o.value.style.top=Math.ceil(V)+"px",o.value.style.transform="none"}n.emit("stopMove"),document.removeEventListener("mousemove",y),document.removeEventListener("mouseup",g)}}function N(){!r.value&&c.value&&(r.value=!0,c.value.classList.add("ng-dragging"),document.addEventListener("mousemove",y),document.addEventListener("mouseup",g))}function R(){if(o.value){const m=S.getTransformInfo(o.value);x.value.set(m);return}x.value.reset()}function P(m){if(!l.value||m instanceof MouseEvent&&m.button===2)return;const v=m.target||m.srcElement;c.value!==void 0&&v&&!w(v,c.value)||s.value!==!1&&(document.body.click(),m.stopPropagation(),m.preventDefault(),p.value=S.fromEvent(m,o.value),R(),N())}function W(m,v,V){if(s.value&&v){if(m)c.value=m;else if(t.dragHandle){if(t.dragHandle instanceof HTMLElement)c.value=t.dragHandle;else if(typeof t.dragHandle=="string"){const D=v.querySelector(t.dragHandle);D&&(c.value=D)}}o.value=v,f.value=V,c.value?(c.value.classList.add("ng-draggable"),c.value.addEventListener("mousedown",P)):s.value=!1}}return{registerDraggle:W,resetTranslate:R}}function re(t,n){if(t){const l=o=>{o.key.toLowerCase()===t.toLowerCase()&&n({event:o,key:t})};return document.addEventListener("keydown",l),()=>{document.removeEventListener("keydown",l)}}}function Ee(t,n){const l=e.ref(t.enableEsc);let o=null;return l.value?(o=re("Escape",s=>{n.emit("esc",{event:s.event,type:"esc"})}),{remove:o}):null}function Ne(t,n){const l=e.ref(t.enableEnter);let o=null;return l.value?(o=re("Enter",s=>{n.emit("enter",{event:s.event,type:"enter"})}),{remove:o}):null}const K=e.defineComponent({name:"FModal",props:Be,emits:["update:modelValue","accept","cancel","closed","resize","esc","enter","stopMove","buttonClick"],setup(t,n){const l=e.ref(t.width||300),o=e.ref(t.height||200),s=e.ref(t.modelValue),i=e.ref(""),c=e.ref(t.class),f=e.ref(t.fitContent),r=e.ref(t.showHeader),p=e.ref(""),x=e.ref(t.showCloseButton),b=e.ref(t.showMaxButton),M=e.ref(!1),w=e.ref(t.dialogType),E=e.ref(t.src),k=e.ref(""),I=e.ref(t.showButtons),y=e.ref(t.title),g=e.ref(t.containment||null),N=e.ref();y.value==="错误提示"&&(y.value=J.LocaleService.getLocaleValue("messageBox.errorTitle"));const R=e.ref(!1);function P(){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 W(a,h){const z=h?"accept":"cancel";Promise.resolve().then(()=>{var j;return(j=t.beforeClose)==null?void 0:j.call(t,{closeType:z})}).then(j=>{j&&(s.value=!1,n.emit("update:modelValue",!1),h!=null&&n.emit(h?"accept":"cancel"),n.emit("closed",a),P())})}const m=[{name:"cancel",text:J.LocaleService.getLocaleValue("messageBox.cancel")||"取消",class:"btn btn-secondary",handle:a=>{W(a,!1)}},{name:"accept",text:J.LocaleService.getLocaleValue("messageBox.ok")||"确定",class:"btn btn-primary",handle:a=>{W(a,!0)}}],v=e.ref(t.buttons&&t.buttons.length?t.buttons:m),V=e.computed(()=>!!p.value),D=e.computed(()=>!!I.value&&!!v.value),L=e.ref(),A=e.ref(),F=e.ref(t.maximized||!1),{renderResizeBar:te,maximize:Z,restore:ne,boundingElement:X,resizedEventParam:u,allowDrag:d,unWindowResizeHandle:B,moveToCenter:C}=ke(t),{registerDraggle:H}=Ve(t,n,d);function fe(){return!!document.querySelectorAll(".farris-modal").length&&document.body.classList.contains("modal-open")}e.watch(()=>t.title,(a,h)=>{a!==h&&(y.value=a)}),e.watch(()=>t.modelValue,(a,h)=>{a!==h&&(s.value=a,s.value&&t.draggable&&e.nextTick(()=>{A.value&&!g.value&&(g.value=A.value.parentElement,X.value=g.value,H(L.value,A.value,X.value),C())}),a||(g.value&&(g.value=null),P())),s.value?R.value=fe():(F.value=!1,d.value=t.draggable)}),e.watch(()=>t.showHeader,(a,h)=>{a!==h&&(r.value=a)}),e.watch(()=>t.showButtons,(a,h)=>{a!==h&&(I.value=a)}),e.watch(()=>u.value,(a,h)=>{const z=a||{},j=h||{};JSON.stringify(z)!==JSON.stringify(j)&&n.emit("resize",{newSize:a,oldSize:h,isMaximized:F.value})}),e.watch([()=>t.width,()=>t.height],(a,h)=>{(a[0]!==h[0]||a[1]!==h[1])&&(l.value=a[0]||500,o.value=a[1]||600)}),e.watch(()=>t.class,(a,h)=>{c.value=a});const Q=e.computed(()=>(s.value&&document.body.classList.add("modal-open"),s.value)),Fe=e.computed(()=>{var z;const a={modal:!0,"farris-modal":!0,fade:!0,"fe-cmp-page-modal":!!t.showFloatingClose};a["f-modal-fitContent"]=!!f.value,a.show=!!Q.value;const h=(z=t.maskClass)==null?void 0:z.split(" ");return h==null||h.reduce((j,Y)=>(j[Y]=!0,j),a),a}),We=e.computed(()=>{var z;const a={"modal-dialog":!0},h=(z=c.value)==null?void 0:z.split(" ");return h==null||h.reduce((j,Y)=>(j[Y]=!0,j),a),a}),De=()=>T.isMobilePhone()&&!t.isMessager||!!t.fullscreen,Ae=e.computed(()=>{const a=document.documentElement.clientWidth,h=document.documentElement.clientHeight;if(F.value)return{position:"fixed",top:"0px",left:"0px",width:"100vw",height:"100vh",margin:"0"};const z=Math.min(l.value,a),j=t.position==="right"?"100%":f.value?"auto":`${Math.min(o.value,h-10)}px`,Y=`${(window.innerHeight-(j==="100%"||j==="auto"?0:parseInt(j)))/2}px`,it=t.position==="right"?`${window.innerWidth-z}px`:`${(window.innerWidth-z)/2}px`,he={position:"absolute",top:Y,left:it,width:T.isMobilePhone()?"auto":`${z}px`,height:j};return t.mask||(he.pointerEvents="auto"),he}),pe=e.ref(T.getMaxZIndex()||1050),qe=e.computed(()=>{const a={display:"block",overflow:"hidden"};return t.mask||(a.pointerEvents="none",a.backgroundColor="transparent"),R.value&&(a.backgroundColor="transparent"),a.zIndex=pe.value,a}),$e=e.computed(()=>({"modal-content":!0,"modal-content-has-header":r.value,"is-mobile":De()})),Ye=e.computed(()=>{const a={display:r.value?"":"none"};return a["pointer-events"]=d.value?"auto":"none",a}),Ue=e.computed(()=>({"f-icon":!0,modal_maximize:!0,modalrevert:F.value})),Xe=e.computed(()=>({"modal-body":!0,"f-utils-flex-column":w.value==="iframe","f-utils-fill":!0}));function Ge(){return{height:`${t.footerHeight||60}px`}}const Ke=e.computed(()=>{const a={textAlgin:k.value},h=Ge();return Object.assign(a,h)});function ae(a){if(a==null||a.stopPropagation(),F.value){F.value=!1,ne();return}Z(),F.value=!0}async function _e(a,h){a.handle?await a.handle(h,a)&&n.emit("closed",h):n.emit("buttonClick",{button:a,$event:h})}function Je(a){a.width&&(l.value=a.width),a.height&&(o.value=a.height),a.buttons&&(v.value=a.buttons),a.title&&(y.value=a.title)}let le=null,oe=null;e.onBeforeMount(()=>{R.value=fe()}),e.onMounted(()=>{A.value&&!g.value&&(g.value=A.value.parentElement,X.value=g.value,H(L.value,A.value,X.value)),Q.value&&document.body.classList.add("modal-open"),le=Ee(t,n),oe=Ne(t,n)}),e.onUnmounted(()=>{B&&B(),le&&le.remove(),oe&&oe.remove()}),n.expose({modalElementRef:A,updateModalOptions:Je,close:W,maxDialog:ae,isMaximized:F,disableButtons:(a,h=!0)=>{v.value.forEach(z=>{z.name&&a.includes(z.name)&&(z.disabled=h)})}});function Ze(){return e.createVNode("div",{class:"action-wrapper",onClick:a=>W(a,!1)},[e.createVNode("span",{class:"close-icon"},[e.createVNode("i",{class:"f-icon f-icon-close"},null)])])}function Qe(){return e.createVNode("ul",null,[M.value&&e.createVNode("li",{class:"f-btn-icon f-bare"},[e.createVNode("span",{class:"f-icon modal_minimize"},null)]),b.value&&e.createVNode("li",{onClick:ae,class:"f-btn-icon f-bare",style:"pointer-events: auto;"},[e.createVNode("span",{class:Ue.value},null)]),x.value&&e.createVNode("li",{class:"f-btn-icon f-bare",onClick:a=>W(a,!1),style:"pointer-events: auto;"},[e.createVNode("span",{class:"f-icon modal_close"},null)])])}const et=a=>{a.preventDefault();const h=a.currentTarget,z=a.deltaY*.5;h.scrollLeft+=z};function tt(){return e.createVNode("div",{class:"modal-footer",style:Ke.value},[v.value&&e.createVNode("div",{class:"buttons",onWheel:et},[v.value.map(a=>{var j;const h=e.ref(a.disabled),z=a.class||((j=a.appearance)==null?void 0:j.class)||"btn btn-secondary";return e.createVNode("button",e.mergeProps(T.extractDataAttrs(a),{name:a.name,style:a.styles,type:"button",disabled:h.value,class:z+(a.iconClass?" btn-icontext":"")+(a.visible===!1?"d-none":""),onClick:Y=>{_e(a,Y)}}),[!!a.iconClass&&e.createVNode("i",{class:a.iconClass},null),a.text])})])])}function me(a){b.value&&ae()}function nt(){return e.createVNode(e.Fragment,null,[F.value&&e.createVNode("div",{class:"modal-header",style:"position: absolute;background: transparent;height: 45px;width: 100%;",onDblclick:a=>me()},null),e.createVNode("div",{ref:L,class:"modal-header",style:Ye.value,onDblclick:a=>me()},[n.slots.headerTemplate?n.slots.headerTemplate():e.createVNode("div",{class:"modal-title"},[V.value&&e.createVNode("span",{class:p.value,style:"margin-right: 8px"},null),e.createVNode("span",{class:"modal-title-label"},[y.value])]),e.createVNode("div",{class:"actions"},[Qe()])])])}function at(){return n.slots.footerTemplate?n.slots.footerTemplate():D.value&&tt()}function lt(a){if(a.stopPropagation(),t.allowClickMaskToClose){if(a.target!==N.value)return;W(a,!1)}}function ot(){var a,h;return e.createVNode("div",{id:i.value,class:We.value,style:Ae.value,ref:A},[t.showFloatingClose&&Ze(),e.createVNode("div",{class:$e.value},[r.value&&nt(),e.createVNode("div",{class:Xe.value},[(h=(a=n.slots).default)==null?void 0:h.call(a),w.value==="iframe"&&e.createVNode("iframe",{title:i.value,class:"f-utils-fill",width:"100%",frameborder:"0",src:E.value},null)]),at()]),!f.value&&A.value&&!F.value&&te(A.value)])}function st(a){return a||"body"}return e.watchEffect(()=>{Q.value&&(pe.value=T.getMaxZIndex()||1050)}),()=>e.createVNode(e.Teleport,{to:st(t.host)},{default:()=>[Q.value&&e.createVNode(e.Transition,{name:"fade",appear:!0},{default:()=>[e.createVNode("div",{ref:N,class:Fe.value,style:qe.value,onClick:lt},[ot()])]})]})}});function ue(t){if(t.content&&t.content.render)return t.content.render;if(t.render&&typeof t.render=="function")return t.render}function ze(t){const n=document.createElement("div");n.style.display="contents";const l=t.type||"modal",o=e.createApp({setup(s,i){e.onUnmounted(()=>{document.body.removeChild(n)});const c=e.ref(),f=e.ref(t.class||""),r=e.ref(!0),p=e.ref(t.title||""),x=ue(t),b=t.closedCallback||(P=>{}),M=P=>{r.value=!1,o.unmount(),b(P)};if(i.expose({ref:c}),l==="drawer")return()=>e.createVNode(ie,{ref:c,modelValue:r.value,"onUpdate:modelValue":P=>r.value=P,id:"modal-service-drawer",title:p.value,width:t.width,height:t.height,position:t.position,backgroundColor:t.backgroundColor,host:t.host,showMask:t.showMask,allowClickMaskToClose:t.allowClickMaskToClose,transparent:t.transparent,showHeader:t.showHeader,showFooter:t.showButtons,buttons:t.buttons,beforeClose:t.beforeClose,customClass:f.value,onAfterClose:M},{default:()=>[x&&x(o)]});const w=e.ref(!!t.showButtons),E=e.ref(!!t.showHeader),k=e.ref(t.showCloseButton==null?!0:t.showCloseButton),I=e.ref(!!t.showFloatingClose),y=t.acceptCallback||(()=>{}),g=t.rejectCallback||(()=>{}),N=t.resizeHandle||(P=>{}),R=t.stopMoveHandle||(P=>{});return()=>e.createVNode(K,{ref:c,class:f.value,modelValue:r.value,"onUpdate:modelValue":P=>r.value=P,title:p.value,width:t.width,height:t.height,buttons:t.buttons,"show-header":E.value,"show-buttons":w.value,"show-close-button":k.value,"show-max-button":!1,showFloatingClose:I.value,onAccept:y,onCancel:g,fitContent:t.fitContent==null?!0:t.fitContent,onClosed:M,onResize:N,onStopMove:R},{default:()=>[x&&x(o)]})}});return document.body.appendChild(n),o.use(J.LocaleService.i18n),o.mount(n),o}class Oe{constructor(n){G(this,"appContext",null);G(this,"modalRef",e.ref());G(this,"activeModalIndex",e.ref(0));G(this,"modalRefs",{});G(this,"isUseEscCloseModal",e.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:s}={width:window.innerWidth,height:window.innerHeight};return o<n&&(n=o-14),s<l&&(l=s-14),{width:n,height:l}}static show(n){const l=Object.assign({title:"",showButtons:!0,showHeader:!0},n);return ze(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(),o=n.type||"modal";n.showMaxButton&&n.fitContent&&(n.showMaxButton=!1);const s=e.shallowRef(Object.assign({title:"",showButtons:!0,showHeader:!0,maximized:!1},n)),i=e.ref(!0),c=ue(s.value),f=s.value.closedCallback||((y,g)=>{}),r=s.value.openedCallback||(y=>{});let p;const x=y=>{var N;i.value=!1;const g=(N=y==null?void 0:y.target)==null?void 0:N.classList.contains("modal_close");f(y,this.isUseEscCloseModal.value?"esc":g?"icon":"button")},b=y=>{x(y),p&&e.nextTick(()=>{if(this.modalRefs[this.activeModalIndex.value]&&delete this.modalRefs[this.activeModalIndex.value],e.render(null,l),p=null,this.modalRef.value=null,this.modalRefs){const g=Object.keys(this.modalRefs).map(N=>Number(N));g.length>0?this.activeModalIndex.value=Math.max(...g):this.activeModalIndex.value=0,this.modalRefs[this.activeModalIndex.value]&&(this.modalRef.value=this.modalRefs[this.activeModalIndex.value])}this.isUseEscCloseModal.value=!1})},M=e.ref();let w;if(o==="drawer")w=()=>e.createVNode(ie,e.mergeProps({ref:M,modelValue:i.value,"onUpdate:modelValue":y=>i.value=y,id:"modal-service-drawer"},s.value,{onAfterClose:b}),{default:()=>[c&&c(this.app)]});else{const y=s.value.acceptCallback||(()=>{}),g=s.value.rejectCallback||(()=>{}),N=s.value.resizeHandle||(V=>{}),R=n.stopMoveHandle||(V=>{}),P=V=>{var D;this.isUseEscCloseModal.value=!0,(D=this.getCurrentModal())==null||D.close(V==null?void 0:V.event)},{width:W,height:m}=s.value,v=this.adaptToWindow(Number(W)||500,Number(m)||320);Object.assign(s.value,v),w=()=>e.createVNode(K,e.mergeProps({ref:M,modelValue:i.value,"onUpdate:modelValue":V=>i.value=V},s.value,{isMessager:s.value.class&&s.value.class.indexOf("modal-message")>-1,onAccept:y,onCancel:g,onClosed:b,onResize:N,onEsc:P,onStopMove:R,maximized:s.value.maximized}),{default:()=>[c&&c(this.app)]})}p=(y=>{const g=e.h(w,y);return g.appContext=this.appContext,e.render(g,l),g})({...s.value}),this.activeModalIndex.value++;const k=this.activeModalIndex.value;this.modalRefs[k]=M.value;const I=y=>{s.value={...s.value,...y},p&&e.render(e.cloneVNode(p,{...s}),l)};return e.nextTick(()=>{this.modalRefs[k]=M.value,this.modalRef.value=M.value,r(new Event("opened"))}),{update:I,destroy:b,modalRef:M,close:()=>{var y;(y=M.value)==null||y.close()},disableButtons:(y,g=!0)=>{var N,R;(R=(N=M.value)==null?void 0:N.disableButtons)==null||R.call(N,y,g)}}}}const de=Symbol("FModalService");K.install=t=>{t.component(K.name,K);const n=new Oe(t);t.provide(de,n),t.provide("FModalService",n)};function ce(t,n){function l(){const o=t.beforeOpen||t.beforeClickButton||null;let s=Promise.resolve(!0);if(o){const i=o(n.value);if(typeof i>"u")return s;typeof i=="boolean"?s=Promise.resolve(i):s=i}return s}return{judgeCanOpen:l}}function je(t,n,l,o,s){const i=e.ref(t.buttonBehavior),c=e.ref(t.popupOnInput),f=e.computed(()=>({"input-group-append":!0,"append-force-show":t.showButtonWhenDisabled&&(t.readonly||t.disable)})),{judgeCanOpen:r}=ce(t,s),p=e.computed(()=>t.showButtonWhenDisabled||(!t.editable||!t.readonly)&&!t.disable),x=e.inject(de,null),b=e.ref();async function M(k){if(await r()&&p.value){const I=!!n.slots.default;if(i.value==="Modal"){const y=t.modalOptions,g=x==null?void 0:x.open({...y,render:()=>n.slots.default&&n.slots.default()});b.value=g==null?void 0:g.modalRef}i.value==="Overlay"&&Me.show({host:document.body,backgroundColor:"rgba(0,0,0,.15)",render:()=>n.slots.default&&n.slots.default()}),I&&i.value==="Popup"&&o.togglePopup(!0),I&&c.value&&o.hidePopup(),n.emit("clickButton",{origin:k,value:t.modelValue})}}function w(k){n.emit("mouseEnterIcon",k)}function E(k){n.emit("mouseLeaveIcon",k)}return{buttonGroupClass:f,onClickButton:M,onMouseEnterButton:w,onMouseLeaveButton:E,modalRef:b}}const U="FarrisVue_PopoverInstancesKey";function Se(t,n,l,o){const s=e.ref(),i=e.ref(!1),{judgeCanOpen:c}=ce(t,o);e.watch(()=>s.value,(w,E)=>{window[U]=window[U]||new WeakMap,w?window[U].set(l.value,w):window[U].delete(l.value)});function f(){if(window[U]){const w=window[U];document.querySelectorAll(".f-button-edit,.v-popover").forEach(E=>{const k=w.get(E);k&&E!==l.value&&!l.value.closest(".popover-fitcontent")&&k.hide()})}}function r(){const w=s.value;w&&(w.show?w.show(l.value):w.open&&w.open(l.value))}async function p(w=!1){if(!!n.slots.default){if(!w&&!i.value&&!await c())return;i.value=!i.value,i.value&&(await e.nextTick(),r())}}async function x(w=!1){if(!!n.slots.default){if(!w&&!await c())return;i.value=!0,await e.nextTick(),r()}}function b(){i.value=!1}function M(){i.value=!0,e.nextTick(()=>{r()})}return{hidePopup:b,showPopup:M,popup:x,shouldPopupContent:i,togglePopup:p,popoverRef:s,closeAllPopover:f}}function Te(t,n,l){const{buttonGroupClass:o}=l,s=e.ref(),i=e.computed(()=>({"input-group-append input-append-wrapper":!0,"input-append-button":t.expandMode==="button","input-append-text":t.expandMode==="text"}));return{renderButtonGroup:()=>e.createVNode("div",{id:t.id?`${t.id}-button-group`:void 0,class:o.value},[n.slots.buttonContent?e.createVNode("span",{class:"input-group-text input-group-append-button"},[n.slots.buttonContent()]):t.buttonContent?e.createVNode("span",{class:"input-group-text input-group-append-button",innerHTML:t.buttonContent,ref:s},null):null,t.expandable&&t.expandContent&&e.createVNode("div",{class:i.value},[e.createVNode("div",{class:"input-group-text",innerHTML:t.expandContent},null)])]),buttonHandleElement:s}}const _=e.defineComponent({name:"FButtonEdit",props:ye,emits:["updateExtendInfo","clear","change","click","clickButton","blur","focus","mouseEnterIcon","mouseLeaveIcon","keyup","keydown","inputClick","input","update:modelValue"],setup(t,n){const l=e.ref(),o=e.inject("design-item-context"),s=ve.useDesignerComponent(l,o),i=e.ref(t.customClass),c=e.ref(t.modelValue),f=Se(t,n,l,c),r=je(t,n,l,f,c),p=e.ref(),x=e.computed(()=>({"f-cmp-inputgroup":!0,"input-group":!0,"f-state-disabled":!0,"f-state-editable":!1,"f-state-readonly":!0}));e.onMounted(()=>{l.value.componentInstance=s}),n.expose(s.value);const b=e.computed(()=>{const E={"f-button-edit":!0,"f-cmp-inputgroup":!0,"f-button-edit-nowrap":!t.wrapText};return i.value&&i.value.split(" ").reduce((k,I)=>(k[I]=!0,k),E),E}),M=e.computed(()=>({"text-left":t.textAlign==="left","text-center":t.textAlign==="center","text-right":t.textAlign==="right","form-control":!0,"f-utils-fill":!0})),{renderButtonGroup:w}=Te(t,n,r);return()=>e.createVNode("div",e.mergeProps(n.attrs,{ref:l,class:b.value,id:t.id?t.id:void 0,style:"pointer-events: none;"}),[e.createVNode("div",{class:x.value},[e.createVNode("input",{ref:p,class:M.value,readonly:!0,placeholder:t.placeholder},null),w()])])}}),Ie=new Map([["appearance",q.resolveAppearance]]);function He(t,n,l){return n}const Pe={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/button-edit.schema.json",title:"button-edit",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a Input Group",type:"string"},type:{description:"The type string of Input Group component",type:"string",default:"button-edit"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disable:{type:"string",default:!1},editable:{description:"",type:"boolean",default:!0},enableLinkLabel:{description:"",type:"boolean",default:!1},label:{description:"",type:"string",default:""},lableWidth:{description:"",type:"number"},placeholder:{description:"",type:"string",default:""},forcePlaceholder:{description:"",type:"boolean",default:!1},readonly:{description:"",type:"boolean",default:!1},require:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},textAlign:{description:"",type:"string",enum:["left","middle","right"],default:"left"},visible:{description:"",type:"boolean",default:!0},onBlur:{description:"",type:"string",default:""},onClickLinkLabel:{description:"",type:"string",default:""},autoComplete:{description:"",type:"boolean",default:!1},buttonContent:{description:"",type:"string",default:""},enableClear:{description:"",type:"boolean",default:!0},inputType:{description:"",type:"string",enum:["text","tag"],default:"text"},multiSelect:{description:"",type:"boolean",default:!1},popup:{description:"",type:"object",properties:{footerButtons:{type:"array",default:[]},height:{type:"number",default:600},dataMapping:{type:"object"},contents:{type:"array",default:[]},showMaxButton:{type:"boolean",default:!0},showCloseButton:{type:"boolean",default:!0},showFooter:{type:"boolean",default:!0},title:{type:"string",default:""},width:{type:"number",default:800}}},popupClass:{description:"",type:"string",default:""},separator:{type:"string",default:","},showButtonWhenDisabled:{description:"",type:"boolean",default:!1},showAppendButton:{description:"",type:"boolean",default:!0},wrapText:{type:"boolean",default:!1},onClear:{description:"",type:"string",default:""},onClickButton:{description:"",type:"string",default:""},modelValue:{description:"",type:"string",default:""}},required:["id","type"]},Re={title:"buttonEdit",description:"A Farris Component",type:"object",categories:{basic:{description:"Basic Infomation",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"waiting for modification",enum:[]}}}},behavior:{description:"Basic Infomation",title:"行为",properties:{editable:{description:"",title:"允许编辑",type:"boolean"},readonly:{description:"",title:"只读",type:"string"},required:{description:"",title:"必填",type:"boolean"},visible:{description:"",title:"可见",type:"boolean"},placeholder:{description:"",title:"提示文本",type:"string"},tabindex:{description:"",title:"tab索引",type:"number"},textAlign:{description:"",title:"对齐方式",type:"enum",editor:{type:"combo-list",textField:"name",valueField:"value",data:[{value:"left",name:"左对齐"},{value:"center",name:"居中"},{value:"right",name:"右对齐"}]}}}}}},ee=q.createPropsResolver(se.buttonEditProps,Pe,Ie,He,Re);_.register=(t,n,l,o)=>{t["button-edit"]=se,n["button-edit"]=ee},_.registerDesigner=(t,n,l)=>{t["button-edit"]=_,n["button-edit"]=ee};const Le=T.withInstall(_);O.FButtonEditDesign=_,O.default=Le,O.propsResolver=ee,Object.defineProperties(O,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});