@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(I,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("vue"),require("../locale/index.umd.js"),require("../common/index.umd.js"),require("../drawer/index.umd.js"),require("../property-panel/index.umd.js"),require("../button/index.umd.js"),require("../field-selector/index.umd.js"),require("../collection-property-editor/index.umd.js/src/use-button-items.designer"),require("../tags/index.umd.js"),require("lodash-es"),require("../common/index.umd.js/text-box/use-input-expand"),require("../popover/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","../locale/index.umd.js","../common/index.umd.js","../drawer/index.umd.js","../property-panel/index.umd.js","../button/index.umd.js","../field-selector/index.umd.js","../collection-property-editor/index.umd.js/src/use-button-items.designer","../tags/index.umd.js","lodash-es","../common/index.umd.js/text-box/use-input-expand","../popover/index.umd.js"],t):(I=typeof globalThis<"u"?globalThis:I||self,t(I["button-edit"]={},I.Vue,I.locale,I.common,I.FDrawer,null,null,null,null,I.FTags,I.LodashES,I.useInputExpand,I.FPopover))})(this,function(I,t,q,U,ee,dt,ft,ht,mt,ve,ae,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 oe={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),u=be(),r=t.computed(()=>({backgroundColor:e.backgroundColor||"",pointerEvents:"auto"}));function c(i){n.emit("click"),i.preventDefault(),i.stopPropagation()}t.computed(()=>{const i=o.value;if(i){const h=i.getBoundingClientRect(),{left:b,top:v,height:w}=h;return{left:b,top:v+w}}return l.value});const d=t.computed(()=>({}));return()=>u.value?t.createVNode(t.Teleport,{to:"body"},{default:()=>{var i,h;return[t.createVNode("div",{class:"overlay-container",onClick:b=>c(b),style:r.value},[t.createVNode("div",{style:d.value},[(h=(i=n.slots).default)==null?void 0:h.call(i)])])]}}):null}});function Ce(e){if(e.content&&e.content.render)return e.content.render;if(e.render&&typeof e.render=="function")return e.render}function xe(e){const n=document.createElement("div");n.style.display="contents";let l;const o=e.onClickCallback||(()=>{}),u=()=>{o(),l&&l.unmount()};return l=t.createApp({setup(){t.onUnmounted(()=>{document.body.removeChild(n)});const r=Ce(e);return()=>t.createVNode(we,{"popup-content-position":e.popupPosition,host:e.host,onClick:u,backgroundColor:e.backgroundColor},{default:()=>[r&&r()]})}}),document.body.appendChild(n),l.mount(n),l}class Be{static show(n){return xe(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 u=parseInt(o[4],10),r=parseInt(o[5],10);return{x:u,y:r}}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 u=parseInt(o.getPropertyValue("left"),10),r=parseInt(o.getPropertyValue("top"),10);l.x=isNaN(u)?0:u,l.y=isNaN(r)?0:r}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(),u=t.ref(),r=t.ref(),c=t.ref(),d=t.ref(),i=t.ref(),h=t.ref(),b=t.ref(),v=t.ref(),w=t.ref(),C=t.ref(e.resizeable),B=t.ref(),k=t.ref(e.draggable),V=t.ref(!1);function g(){const s=o.value||document.body,f=window.getComputedStyle(s);if(!f||!l.value)return;const T=R.getTransformInfo(l.value),O={};i.value&&(O.deltaL=l.value.offsetLeft-i.value.x,O.deltaT=l.value.offsetTop-i.value.y);const W=f.getPropertyValue("position");O.width=s.clientWidth,O.height=s.clientHeight,O.pr=parseInt(f.getPropertyValue("padding-right"),10),O.pb=parseInt(f.getPropertyValue("padding-bottom"),10),O.position=f.getPropertyValue("position"),W==="static"&&(s.style.position="relative"),O.translateX=T.x,O.translateY=T.y,v.value=O}function M(s){if(l.value){r.value=X.getCurrent(l.value),c.value=R.getCurrent(l.value),d.value=r.value?X.copy(r.value):null,i.value=c.value?R.copy(c.value):null,g();const f=s.target.getAttribute("type")||"";h.value={n:!!f.match(/n/),s:!!f.match(/s/),w:!!f.match(/w/),e:!!f.match(/e/)}}}function N(){var s,f,T,O;if(l.value){const W=l.value;h.value&&((h.value.n||h.value.s)&&((s=d.value)!=null&&s.height)&&(W.style.height=d.value.height+"px"),(h.value.w||h.value.e)&&((f=d.value)!=null&&f.width)&&(W.style.width=d.value.width+"px"),i.value&&((T=i.value)!=null&&T.x&&(W.style.left=i.value.x+"px"),(O=i.value)!=null&&O.y&&(W.style.top=i.value.y+"px")))}}function S(){const s=e.minHeight?e.minHeight:1,f=e.minWidth?e.minWidth:1;d.value&&i.value&&h.value&&r.value&&(d.value.height<s&&(d.value.height=s,h.value.n&&c.value&&(i.value.y=c.value.y+(r.value.height-s))),d.value.width<f&&(d.value.width=f,h.value.w&&c.value&&(i.value.x=c.value.x+(r.value.width-f))),e.maxHeight&&d.value.height>e.maxHeight&&(d.value.height=e.maxHeight,c.value&&h.value.n&&(i.value.y=c.value.y+(r.value.height-e.maxHeight))),e.maxWidth&&d.value.width>e.maxWidth&&(d.value.width=e.maxWidth,h.value.w&&c.value&&(i.value.x=c.value.x+(r.value.width-e.maxWidth))))}function z(){if(o.value){const s=v.value;if(i.value&&d.value&&h.value&&r.value){const f=s.width-s.pr-s.deltaL-s.translateX-i.value.x,T=s.height-s.pb-s.deltaT-s.translateY-i.value.y;h.value.n&&i.value.y+s.translateY<0&&c.value&&(i.value.y=-s.translateY,d.value.height=r.value.height+c.value.y+s.translateY),h.value.w&&i.value.x+s.translateX<0&&c.value&&(i.value.x=-s.translateX,d.value.width=r.value.width+c.value.x+s.translateX),d.value.width>f&&(d.value.width=f),d.value.height>T&&(d.value.height=T)}}}function F(s){if(!u.value||!r.value||!c.value||!h.value)return;s.subtract(u.value);const f=s.x,T=s.y;h.value.n?(i.value.y=c.value.y+T,d.value.height=r.value.height-T):h.value.s&&(d.value.height=r.value.height+T),h.value.e?d.value.width=r.value.width+f:h.value.w&&(d.value.width=r.value.width-f,i.value.x=c.value.x+f),z(),S(),N()}function m(s){if(!b.value)return;const f=R.fromEvent(s);f&&F(f)}function y(){if(l.value){const{width:s,height:f,x:T,y:O}=l.value.getBoundingClientRect(),W=R.getTransformInfo(l.value);return{size:{width:s,height:f},position:{x:T-W.x,y:O-W.y}}}return null}function E(s){if(l.value){const f=y();w.value=f}u.value=void 0,r.value=null,c.value=null,d.value=null,i.value=null,h.value=null,b.value=null,document.removeEventListener("mousemove",m),document.removeEventListener("mouseup",E)}function L(){document.addEventListener("mousemove",m),document.addEventListener("mouseup",E)}function p(s){s instanceof MouseEvent&&s.button===2||k.value&&(document.body.click(),s.stopPropagation(),s.preventDefault(),u.value=R.fromEvent(s),b.value=s.target,M(s),L())}function P(s){return l.value=s,C.value&&t.createVNode(t.Fragment,null,[t.createVNode("div",{class:"fv-resizable-handle fv-resizable-n",type:"n",onMousedown:f=>p(f)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-e",type:"e",onMousedown:f=>p(f)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-s",type:"s",onMousedown:f=>p(f)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-w",type:"w",onMousedown:f=>p(f)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-ne",type:"ne",onMousedown:f=>p(f)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-se fv-resizable-diagonal",type:"se",onMousedown:f=>p(f)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-sw",type:"sw",onMousedown:f=>p(f)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-nw",type:"nw",onMousedown:f=>p(f)},null)])}function D(s=!0){document.body.click();const f=o.value||document.body,T=X.getCurrent(f),O=l.value;s&&O&&(B.value=y(),B.value.transform=O.style.transform),T&&O&&(d.value=T,d.value.height-=14,d.value.width-=14,O.style.height=d.value.height+"px",O.style.width=d.value.width+"px",O.style.left="7px",O.style.top="7px",O.style.transform="",w.value={size:d.value,position:{x:0,y:0}},k.value=!1,V.value=!0)}function _(){var s,f;if(document.body.click(),B.value){const T={width:B.value.size.width||0,height:B.value.size.height||0},O={x:(window.innerWidth-T.width)/2,y:(window.innerHeight-T.height)/2};(s=d.value)==null||s.set(T),(f=i.value)==null||f.set(O);const W=l.value;W.style.height=T.height+"px",W.style.width=T.width+"px",W.style.left=`${O.x}px`,W.style.top=`${O.y}px`,W.style.transform="",w.value={size:T,position:O},k.value=e.draggable,V.value=!1}}function $(){if(l.value){const s=X.getCurrent(l.value);if(s){const{width:f,height:T}=s;l.value.style.left=`${(window.innerWidth-f)/2}px`,l.value.style.top=`${(window.innerHeight-T)/2}px`,l.value.style.transform=""}}}function A(){const s=()=>{V.value?D(!1):$(),document.body.click()};return window.addEventListener("resize",s),()=>{window.removeEventListener("resize",s)}}const Y=A();return{renderResizeBar:P,boundingElement:o,resizedEventParam:w,maximize:D,restore:_,allowDrag:k,isMaximized:V,unWindowResizeHandle:Y,moveToCenter:$}}function Te(e,n,l){const o=t.ref(),u=t.ref(e.draggable),r=t.ref(e.lockAxis),c=t.ref(),d=t.ref(),i=t.ref(!1),h=t.ref(new R(0,0)),b=t.ref(new R(0,0)),v=t.ref(new R(0,0)),w=t.ref(new R(0,0));t.watch(()=>l.value,m=>{c.value.style.cursor=m?"move":"default"});function C(m,y){if(y.tagName==="BUTTON")return!1;if(y===m)return!0;for(const E in y.children)if(Object.prototype.hasOwnProperty.call(y.children,E)&&C(m,y.children[E]))return!0;return!1}function B(){var L,p;let m=v.value.x+b.value.x,y=v.value.y+b.value.y;r.value==="x"?(m=((L=h.value)==null?void 0:L.x)||0,v.value.x=0):r.value==="y"&&(y=((p=h.value)==null?void 0:p.y)||0,v.value.y=0);const E=`translate3d(${Math.round(m)}px, ${Math.round(y)}px, 0px)`;o.value&&(o.value.style.transform=E),w.value.x=m,w.value.y=y}function k(){if(!d.value||!o.value)return null;const m=d.value.getBoundingClientRect(),y=o.value.getBoundingClientRect(),E={top:m.top<y.top,right:m.right>y.right,bottom:m.bottom>y.bottom,left:m.left<y.left};return E.top||(v.value.y-=y.top-m.top),E.bottom||(v.value.y-=y.bottom-m.bottom),E.right||(v.value.x-=y.right-m.right),E.left||(v.value.x-=y.left-m.left),B(),E}function V(m){m&&(h.value&&m.subtract(h.value),v.value.set(m),B(),k())}function g(m){i.value&&u.value&&(m.stopPropagation(),m.preventDefault(),V(R.fromEvent(m,c.value)))}function M(){var m;if(i.value){if(i.value=!1,b.value.add(v.value),v.value.reset(),(m=o.value)==null||m.classList.remove("ng-dragging"),!e.useTransform&&o.value){const{left:y,top:E}=o.value.getBoundingClientRect();o.value.style.left=Math.ceil(y)+"px",o.value.style.top=Math.ceil(E)+"px",o.value.style.transform="none"}n.emit("stopMove"),document.removeEventListener("mousemove",g),document.removeEventListener("mouseup",M)}}function N(){!i.value&&c.value&&(i.value=!0,c.value.classList.add("ng-dragging"),document.addEventListener("mousemove",g),document.addEventListener("mouseup",M))}function S(){if(o.value){const m=R.getTransformInfo(o.value);b.value.set(m);return}b.value.reset()}function z(m){if(!l.value||m instanceof MouseEvent&&m.button===2)return;const y=m.target||m.srcElement;c.value!==void 0&&y&&!C(y,c.value)||u.value!==!1&&(document.body.click(),m.stopPropagation(),m.preventDefault(),h.value=R.fromEvent(m,o.value),S(),N())}function F(m,y,E){if(u.value&&y){if(m)c.value=m;else if(e.dragHandle){if(e.dragHandle instanceof HTMLElement)c.value=e.dragHandle;else if(typeof e.dragHandle=="string"){const L=y.querySelector(e.dragHandle);L&&(c.value=L)}}o.value=y,d.value=E,c.value?(c.value.classList.add("ng-draggable"),c.value.addEventListener("mousedown",z)):u.value=!1}}return{registerDraggle:F,resetTranslate:S}}function ue(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=ue("Escape",u=>{n.emit("esc",{event:u.event,type:"esc"})}),{remove:o}):null}function Ee(e,n){const l=t.ref(e.enableEnter);let o=null;return l.value?(o=ue("Enter",u=>{n.emit("enter",{event:u.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),u=t.ref(e.modelValue),r=t.ref(""),c=t.ref(e.class),d=t.ref(e.fitContent),i=t.ref(e.showHeader),h=t.ref(""),b=t.ref(e.showCloseButton),v=t.ref(e.showMaxButton),w=t.ref(!1),C=t.ref(e.dialogType),B=t.ref(e.src),k=t.ref(""),V=t.ref(e.showButtons),g=t.ref(e.title),M=t.ref(e.containment||null),N=t.ref();g.value==="错误提示"&&(g.value=q.LocaleService.getLocaleValue("messageBox.errorTitle"));const S=t.ref(!1);function z(){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,x){const H=x?"accept":"cancel";Promise.resolve().then(()=>{var j;return(j=e.beforeClose)==null?void 0:j.call(e,{closeType:H})}).then(j=>{j&&(u.value=!1,n.emit("update:modelValue",!1),x!=null&&n.emit(x?"accept":"cancel"),n.emit("closed",a),z())})}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)}}],y=t.ref(e.buttons&&e.buttons.length?e.buttons:m),E=t.computed(()=>!!h.value),L=t.computed(()=>!!V.value&&!!y.value),p=t.ref(),P=t.ref(),D=t.ref(e.maximized||!1),{renderResizeBar:_,maximize:$,restore:A,boundingElement:Y,resizedEventParam:s,allowDrag:f,unWindowResizeHandle:T,moveToCenter:O}=ke(e),{registerDraggle:W}=Te(e,n,f);function de(){return!!document.querySelectorAll(".farris-modal").length&&document.body.classList.contains("modal-open")}t.watch(()=>e.title,(a,x)=>{a!==x&&(g.value=a)}),t.watch(()=>e.modelValue,(a,x)=>{a!==x&&(u.value=a,u.value&&e.draggable&&t.nextTick(()=>{P.value&&!M.value&&(M.value=P.value.parentElement,Y.value=M.value,W(p.value,P.value,Y.value),O())}),a||(M.value&&(M.value=null),z())),u.value?S.value=de():(D.value=!1,f.value=e.draggable)}),t.watch(()=>e.showHeader,(a,x)=>{a!==x&&(i.value=a)}),t.watch(()=>e.showButtons,(a,x)=>{a!==x&&(V.value=a)}),t.watch(()=>s.value,(a,x)=>{const H=a||{},j=x||{};JSON.stringify(H)!==JSON.stringify(j)&&n.emit("resize",{newSize:a,oldSize:x,isMaximized:D.value})}),t.watch([()=>e.width,()=>e.height],(a,x)=>{(a[0]!==x[0]||a[1]!==x[1])&&(l.value=a[0]||500,o.value=a[1]||600)}),t.watch(()=>e.class,(a,x)=>{c.value=a});const Q=t.computed(()=>(u.value&&document.body.classList.add("modal-open"),u.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"]=!!d.value,a.show=!!Q.value;const x=(H=e.maskClass)==null?void 0:H.split(" ");return x==null||x.reduce((j,G)=>(j[G]=!0,j),a),a}),De=t.computed(()=>{var H;const a={"modal-dialog":!0},x=(H=c.value)==null?void 0:H.split(" ");return x==null||x.reduce((j,G)=>(j[G]=!0,j),a),a}),Ae=()=>U.isMobilePhone()&&!e.isMessager||!!e.fullscreen,qe=t.computed(()=>{const a=document.documentElement.clientWidth,x=document.documentElement.clientHeight;if(D.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%":d.value?"auto":`${Math.min(o.value,x-10)}px`,G=`${(window.innerHeight-(j==="100%"||j==="auto"?0:parseInt(j)))/2}px`,it=e.position==="right"?`${window.innerWidth-H}px`:`${(window.innerWidth-H)/2}px`,me={position:"absolute",top:G,left:it,width:U.isMobilePhone()?"auto":`${H}px`,height:j};return e.mask||(me.pointerEvents="auto"),me}),fe=t.ref(U.getMaxZIndex()||1050),Ue=t.computed(()=>{const a={display:"block",overflow:"hidden"};return e.mask||(a.pointerEvents="none",a.backgroundColor="transparent"),S.value&&(a.backgroundColor="transparent"),a.zIndex=fe.value,a}),Ye=t.computed(()=>({"modal-content":!0,"modal-content-has-header":i.value,"is-mobile":Ae()})),Xe=t.computed(()=>{const a={display:i.value?"":"none"};return a["pointer-events"]=f.value?"auto":"none",a}),Ke=t.computed(()=>({"f-icon":!0,modal_maximize:!0,modalrevert:D.value})),Ge=t.computed(()=>({"modal-body":!0,"f-utils-flex-column":C.value==="iframe","f-utils-fill":!0}));function _e(){return{height:`${e.footerHeight||60}px`}}const $e=t.computed(()=>{const a={textAlgin:k.value},x=_e();return Object.assign(a,x)});function te(a){if(a==null||a.stopPropagation(),D.value){D.value=!1,A();return}$(),D.value=!0}async function Je(a,x){a.handle?await a.handle(x,a)&&n.emit("closed",x):n.emit("buttonClick",{button:a,$event:x})}function Ze(a){a.width&&(l.value=a.width),a.height&&(o.value=a.height),a.buttons&&(y.value=a.buttons),a.title&&(g.value=a.title)}let ne=null,le=null;t.onBeforeMount(()=>{S.value=de()}),t.onMounted(()=>{P.value&&!M.value&&(M.value=P.value.parentElement,Y.value=M.value,W(p.value,P.value,Y.value)),Q.value&&document.body.classList.add("modal-open"),ne=Ve(e,n),le=Ee(e,n)}),t.onUnmounted(()=>{T&&T(),ne&&ne.remove(),le&&le.remove()}),n.expose({modalElementRef:P,updateModalOptions:Ze,close:F,maxDialog:te,isMaximized:D,disableButtons:(a,x=!0)=>{y.value.forEach(H=>{H.name&&a.includes(H.name)&&(H.disabled=x)})}});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,[w.value&&t.createVNode("li",{class:"f-btn-icon f-bare"},[t.createVNode("span",{class:"f-icon modal_minimize"},null)]),v.value&&t.createVNode("li",{onClick:te,class:"f-btn-icon f-bare",style:"pointer-events: auto;"},[t.createVNode("span",{class:Ke.value},null)]),b.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 x=a.currentTarget,H=a.deltaY*.5;x.scrollLeft+=H};function nt(){return t.createVNode("div",{class:"modal-footer",style:$e.value},[y.value&&t.createVNode("div",{class:"buttons",onWheel:tt},[y.value.map(a=>{var j;const x=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:x.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 he(a){v.value&&te()}function lt(){return t.createVNode(t.Fragment,null,[D.value&&t.createVNode("div",{class:"modal-header",style:"position: absolute;background: transparent;height: 45px;width: 100%;",onDblclick:a=>he()},null),t.createVNode("div",{ref:p,class:"modal-header",style:Xe.value,onDblclick:a=>he()},[n.slots.headerTemplate?n.slots.headerTemplate():t.createVNode("div",{class:"modal-title"},[E.value&&t.createVNode("span",{class:h.value,style:"margin-right: 8px"},null),t.createVNode("span",{class:"modal-title-label"},[g.value])]),t.createVNode("div",{class:"actions"},[et()])])])}function at(){return n.slots.footerTemplate?n.slots.footerTemplate():L.value&&nt()}function ot(a){if(a.stopPropagation(),e.allowClickMaskToClose){if(a.target!==N.value)return;F(a,!1)}}function ut(){var a,x;return t.createVNode("div",{id:r.value,class:De.value,style:qe.value,ref:P},[e.showFloatingClose&&Qe(),t.createVNode("div",{class:Ye.value},[i.value&&lt(),t.createVNode("div",{class:Ge.value},[(x=(a=n.slots).default)==null?void 0:x.call(a),C.value==="iframe"&&t.createVNode("iframe",{title:r.value,class:"f-utils-fill",width:"100%",frameborder:"0",src:B.value},null)]),at()]),!d.value&&P.value&&!D.value&&_(P.value)])}function st(a){return a||"body"}return t.watchEffect(()=>{Q.value&&(fe.value=U.getMaxZIndex()||1050)}),()=>t.createVNode(t.Teleport,{to:st(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 se(e){if(e.content&&e.content.render)return e.content.render;if(e.render&&typeof e.render=="function")return e.render}function Ne(e){const n=document.createElement("div");n.style.display="contents";const l=e.type||"modal",o=t.createApp({setup(u,r){t.onUnmounted(()=>{document.body.removeChild(n)});const c=t.ref(),d=t.ref(e.class||""),i=t.ref(!0),h=t.ref(e.title||""),b=se(e),v=e.closedCallback||(z=>{}),w=z=>{i.value=!1,o.unmount(),v(z)};if(r.expose({ref:c}),l==="drawer")return()=>t.createVNode(ee,{ref:c,modelValue:i.value,"onUpdate:modelValue":z=>i.value=z,id:"modal-service-drawer",title:h.value,width:e.width,height:e.height,position:e.position,backgroundColor:e.backgroundColor,host:e.host,showMask:e.showMask,allowClickMaskToClose:e.allowClickMaskToClose,transparent:e.transparent,showHeader:e.showHeader,showFooter:e.showButtons,buttons:e.buttons,beforeClose:e.beforeClose,customClass:d.value,onAfterClose:w},{default:()=>[b&&b(o)]});const C=t.ref(!!e.showButtons),B=t.ref(!!e.showHeader),k=t.ref(e.showCloseButton==null?!0:e.showCloseButton),V=t.ref(!!e.showFloatingClose),g=e.acceptCallback||(()=>{}),M=e.rejectCallback||(()=>{}),N=e.resizeHandle||(z=>{}),S=e.stopMoveHandle||(z=>{});return()=>t.createVNode(Z,{ref:c,class:d.value,modelValue:i.value,"onUpdate:modelValue":z=>i.value=z,title:h.value,width:e.width,height:e.height,buttons:e.buttons,"show-header":B.value,"show-buttons":C.value,"show-close-button":k.value,"show-max-button":!1,showFloatingClose:V.value,onAccept:g,onCancel:M,fitContent:e.fitContent==null?!0:e.fitContent,onClosed:w,onResize:N,onStopMove:S},{default:()=>[b&&b(o)]})}});return document.body.appendChild(n),o.use(q.LocaleService.i18n),o.mount(n),o}class Oe{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:u}={width:window.innerWidth,height:window.innerHeight};return o<n&&(n=o-14),u<l&&(l=u-14),{width:n,height:l}}static show(n){const l=Object.assign({title:"",showButtons:!0,showHeader:!0},n);return Ne(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 u=t.shallowRef(Object.assign({title:"",showButtons:!0,showHeader:!0,maximized:!1},n)),r=t.ref(!0),c=se(u.value),d=u.value.closedCallback||((g,M)=>{}),i=u.value.openedCallback||(g=>{});let h;const b=g=>{var N;r.value=!1;const M=(N=g==null?void 0:g.target)==null?void 0:N.classList.contains("modal_close");d(g,this.isUseEscCloseModal.value?"esc":M?"icon":"button")},v=g=>{b(g),h&&t.nextTick(()=>{if(this.modalRefs[this.activeModalIndex.value]&&delete this.modalRefs[this.activeModalIndex.value],t.render(null,l),h=null,this.modalRef.value=null,this.modalRefs){const M=Object.keys(this.modalRefs).map(N=>Number(N));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})},w=t.ref();let C;if(o==="drawer")C=()=>t.createVNode(ee,t.mergeProps({ref:w,modelValue:r.value,"onUpdate:modelValue":g=>r.value=g,id:"modal-service-drawer"},u.value,{onAfterClose:v}),{default:()=>[c&&c(this.app)]});else{const g=u.value.acceptCallback||(()=>{}),M=u.value.rejectCallback||(()=>{}),N=u.value.resizeHandle||(E=>{}),S=n.stopMoveHandle||(E=>{}),z=E=>{var L;this.isUseEscCloseModal.value=!0,(L=this.getCurrentModal())==null||L.close(E==null?void 0:E.event)},{width:F,height:m}=u.value,y=this.adaptToWindow(Number(F)||500,Number(m)||320);Object.assign(u.value,y),C=()=>t.createVNode(Z,t.mergeProps({ref:w,modelValue:r.value,"onUpdate:modelValue":E=>r.value=E},u.value,{isMessager:u.value.class&&u.value.class.indexOf("modal-message")>-1,onAccept:g,onCancel:M,onClosed:v,onResize:N,onEsc:z,onStopMove:S,maximized:u.value.maximized}),{default:()=>[c&&c(this.app)]})}h=(g=>{const M=t.h(C,g);return M.appContext=this.appContext,t.render(M,l),M})({...u.value}),this.activeModalIndex.value++;const k=this.activeModalIndex.value;this.modalRefs[k]=w.value;const V=g=>{u.value={...u.value,...g},h&&t.render(t.cloneVNode(h,{...u}),l)};return t.nextTick(()=>{this.modalRefs[k]=w.value,this.modalRef.value=w.value,i(new Event("opened"))}),{update:V,destroy:v,modalRef:w,close:()=>{var g;(g=w.value)==null||g.close()},disableButtons:(g,M=!0)=>{var N,S;(S=(N=w.value)==null?void 0:N.disableButtons)==null||S.call(N,g,M)}}}}const ie=Symbol("FModalService");Z.install=e=>{e.component(Z.name,Z);const n=new Oe(e);e.provide(ie,n),e.provide("FModalService",n)};function re(e,n){function l(){const o=e.beforeOpen||e.beforeClickButton||null;let u=Promise.resolve(!0);if(o){const r=o(n.value);if(typeof r>"u")return u;typeof r=="boolean"?u=Promise.resolve(r):u=r}return u}return{judgeCanOpen:l}}function Pe(e,n,l,o,u){const r=t.ref(e.buttonBehavior),c=t.ref(e.popupOnInput),d=t.computed(()=>({"input-group-append":!0,"append-force-show":e.showButtonWhenDisabled&&(e.readonly||e.disable)})),{judgeCanOpen:i}=re(e,u),h=t.computed(()=>e.showButtonWhenDisabled||(!e.editable||!e.readonly)&&!e.disable),b=t.inject(ie,null),v=t.ref();async function w(k){if(await i()&&h.value){const V=!!n.slots.default;if(r.value==="Modal"){const g=e.modalOptions,M=b==null?void 0:b.open({...g,render:()=>n.slots.default&&n.slots.default()});v.value=M==null?void 0:M.modalRef}r.value==="Overlay"&&Be.show({host:document.body,backgroundColor:"rgba(0,0,0,.15)",render:()=>n.slots.default&&n.slots.default()}),V&&r.value==="Popup"&&o.togglePopup(!0),V&&c.value&&o.hidePopup(),n.emit("clickButton",{origin:k,value:e.modelValue})}}function C(k){n.emit("mouseEnterIcon",k)}function B(k){n.emit("mouseLeaveIcon",k)}return{buttonGroupClass:d,onClickButton:w,onMouseEnterButton:C,onMouseLeaveButton:B,modalRef:v}}function Se(e,n,l,o,u,r){const c=t.ref(!1),d=t.computed(()=>e.enableClear&&!e.readonly&&!e.disable&&!U.isMobilePhone()),{changeTextBoxValue:i,hasClearClass:h}=r,b=t.ref(!1);function v(V){c.value=V,h.value=V}const w=t.computed(()=>d.value&&!!(u!=null&&u.value)&&b.value);t.watch(u,()=>{v(w.value)});function C(V){const g=!e.readonly&&!e.disable&&e.editable,M=!e.editable;V==null||V.stopPropagation(),(g||M)&&(i(""),u.value="",v(!c.value),n.emit("clear"))}function B(V){if(b.value=!0,!!d.value){if(!l.value){v(!1);return}!e.disable&&!e.readonly&&v(!0)}}function k(V){b.value=!1,d.value&&v(!1)}return{enableClearButton:d,showClearButton:c,onClearValue:C,onMouseEnterTextBox:B,onMouseLeaveTextBox:k}}function ze(e,n,l,o,u){const r=t.computed(()=>e.popupOnInput),c=t.computed(()=>e.popupOnFocus),{shouldPopupContent:d,closeAllPopover:i}=u,h=t.ref(!1),b=t.computed(()=>e.enableTitle?l.value:""),v=t.computed(()=>(e.disable||e.readonly)&&!e.forcePlaceholder?"":e.placeholder),w=t.computed(()=>e.readonly||!e.editable||U.isMobilePhone()),C=t.ref(!1),B=t.computed(()=>!e.disable&&C.value),k=t.computed(()=>({"text-left":e.textAlign==="left","text-center":e.textAlign==="center","text-right":e.textAlign==="right","form-control":!0,"f-utils-fill":!0})),V=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":B.value,"input-group--has-clear":e.enableClear&&h.value}));function g(p,P=!0){l.value=p,P&&(n.emit("change",p),n.emit("update:modelValue",p))}function M(p){d.value=!1,g(p,!0)}t.watch(()=>e.modelValue,p=>{l.value=p});function N(p){C.value=!1,n.emit("blur",p),p.stopPropagation()}function S(p){n.emit("click",p),i(),n.slots.default&&!e.disable&&!e.readonly&&e.popupOnClick&&u.togglePopup()}function z(p){!e.disable&&!e.readonly&&(C.value=!0,w.value||(n.emit("focus",p),c.value&&!d.value&&u.popup()))}function F(p){n.emit("input",p);const P=p.target.value;o.value=P,l.value!==P&&g(P,e.updateOn==="change"),r.value&&!d.value&&u.popup()}function m(p){p.target.tagName!=="INPUT"&&p.preventDefault(),p.stopPropagation()}function y(p){n.emit("keydown",p)}function E(p){p.key==="Enter"&&(r.value||c.value)&&u.hidePopup(),n.emit("keyup",p)}function L(p){const P=p.target.value;p.stopPropagation(),g(P)}return{hasFocusedTextBox:B,isTextBoxReadonly:w,textBoxClass:k,textBoxPlaceholder:v,textBoxTitle:b,inputGroupClass:V,hasClearClass:h,changeTextBoxValue:g,commitValue:M,onBlurTextBox:N,onClickTextBox:S,onFocusTextBox:z,onInput:F,onKeyDownTextBox:y,onKeyUpTextBox:E,onMouseDownTextBox:m,onTextBoxValueChange:L}}const K="FarrisVue_PopoverInstancesKey";function Ie(e,n,l,o){const u=t.ref(),r=t.ref(!1),{judgeCanOpen:c}=re(e,o);t.watch(()=>u.value,(C,B)=>{window[K]=window[K]||new WeakMap,C?window[K].set(l.value,C):window[K].delete(l.value)});function d(){if(window[K]){const C=window[K];document.querySelectorAll(".f-button-edit,.v-popover").forEach(B=>{const k=C.get(B);k&&B!==l.value&&!l.value.closest(".popover-fitcontent")&&k.hide()})}}function i(){const C=u.value;C&&(C.show?C.show(l.value):C.open&&C.open(l.value))}async function h(C=!1){if(!!n.slots.default){if(!C&&!r.value&&!await c())return;r.value=!r.value,r.value&&(await t.nextTick(),i())}}async function b(C=!1){if(!!n.slots.default){if(!C&&!await c())return;r.value=!0,await t.nextTick(),i()}}function v(){r.value=!1}function w(){r.value=!0,t.nextTick(()=>{i()})}return{hidePopup:v,showPopup:w,popup:b,shouldPopupContent:r,togglePopup:h,popoverRef:u,closeAllPopover:d}}function He(e,n,l){const o=t.ref(),{isTextBoxReadonly:u,textBoxClass:r,textBoxPlaceholder:c,textBoxTitle:d,onBlurTextBox:i,onClickTextBox:h,onFocusTextBox:b,onInput:v,onKeyDownTextBox:w,onKeyUpTextBox:C,onMouseDownTextBox:B,onTextBoxValueChange:k}=l,V=t.ref(e.id),{uuid:g}=U.useGuid(),M=t.computed(()=>({}));t.onMounted(()=>{var m,y;e.selectOnCreated&&((m=o.value)==null||m.select()),e.focusOnCreated&&((y=o.value)==null||y.focus({preventScroll:!0})),V.value||(V.value="button-edit_"+g(8)),V.value=V.value+"-textbox"});const N=t.ref(!1),S=m=>{m.preventDefault(),N.value=!0},z=m=>{m.preventDefault(),N.value=!1,v(m)};function F(m){N.value||v(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:r.value,style:M.value,disabled:e.disable,maxlength:e.maxLength,minlength:e.minLength,placeholder:c.value,readonly:u.value,tabindex:e.tabIndex,title:d.value,type:e.inputType,value:n.value,onBlur:i,onChange:k,onClick:h,onFocus:b,onInput:F,onKeydown:w,onKeyup:C,onMousedown:B,onCompositionend:z,onCompositionstart:S},null)}function je(e,n,l){const o=t.ref(e.separator),u=t.computed(()=>e.readonly||e.disable),{changeTextBoxValue:r,onFocusTextBox:c,onBlurTextBox:d,onClickTextBox:i,textBoxPlaceholder:h}=l,b=t.computed(()=>n.value?n.value.split(o.value).map(B=>({name:B,selectable:!0})):[]);function v(B){r(B.map(k=>k.name).join(o.value),!0)}t.watch(()=>e.separator,B=>{o.value=B});const w=t.ref(!e.disable&&!e.readonly);t.watch([()=>e.disable,()=>e.readonly],([B,k],[V,g])=>{w.value=!B&&!k});function C(B){i(B)}return()=>t.createVNode(ve,{tabindex:e.tabIndex,onFocus:c,onBlur:d,id:`${e.id}-tag-editor`,class:"form-control",placeholder:h.value,data:b.value,showClose:!u.value,showInput:!0,disable:u.value,onChange:v,onClick:C},null)}function Re(e,n,l,o){const{buttonGroupClass:u,onClickButton:r,onMouseEnterButton:c,onMouseLeaveButton:d}=l,{enableClearButton:i,showClearButton:h,onClearValue:b}=o,v=t.ref(),w=ae.debounce(k=>{r(k)},e.buttonBehavior==="Modal"?0:200),C=()=>{n.emit("beforeClearValue")},{renderExpandContent:B}=ge.useInputExpand(e,n);return{renderButtonGroup:()=>t.createVNode(t.Fragment,null,[t.createVNode("div",{id:e.id?`${e.id}-button-group`:void 0,class:u.value},[i.value&&t.withDirectives(t.createVNode("span",{class:"input-group-text input-group-clear",onClick:b,onMousedown:C},[t.createVNode("i",{class:"f-icon modal_close"},null)]),[[t.vShow,h.value]]),n.slots.buttonContent?t.createVNode("span",{class:"input-group-text input-group-append-button",onClick:w,onMouseenter:c,onMouseleave:d},[n.slots.buttonContent()]):e.buttonContent?t.createVNode("span",{class:"input-group-text input-group-append-button",innerHTML:e.buttonContent,ref:v,onClick:k=>w(k),onMouseenter:c,onMouseleave:d},null):null]),B()]),buttonHandleElement:v}}function Fe(e,n,l){const o=t.ref(e.popupMinWidth),{hidePopup:u,popoverRef:r}=l,c=()=>{n.emit("shown")},d=()=>{u(),n.emit("hidden")};return()=>U.isMobilePhone()?t.createVNode(ee,{id:`${e.id}-drawer`,ref:r,position:e.placement,width:"auto",height:"auto",host:e.popupHost,showHeader:!1,showFooter:!1,customClass:"f-drawer--no-padding","onUpdate:modelValue":i=>i?c():d()},{default:()=>{var i,h;return[t.createTextVNode(" "),(h=(i=n.slots).default)==null?void 0:h.call(i),t.createTextVNode(" ")]}}):t.createVNode(pe,{id:`${e.id}-popover`,ref:r,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:d,onShown:c,beforeClose:e.beforeClosePopup,limitContentBySpace:e.limitContentBySpace},{default:()=>{var i,h;return[(h=(i=n.slots).default)==null?void 0:h.call(i)]}})}const ce=t.defineComponent({name:"FButtonEdit",props:oe,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),u=t.ref(e.modelValue),r=Ie(e,n,l,u),{shouldPopupContent:c,hidePopup:d,showPopup:i,togglePopup:h}=r,b=Pe(e,n,l,r,u),v=t.ref(""),w=ze(e,n,u,v,r),{hasFocusedTextBox:C,commitValue:B,inputGroupClass:k,changeTextBoxValue:V}=w,g=Se(e,n,u,C,v,w),{onMouseEnterTextBox:M,onMouseLeaveTextBox:N}=g,S=t.ref(!1),z=t.computed(()=>{const s={"f-button-edit":!0,"f-cmp-inputgroup":!0,"f-button-edit-nowrap":!e.wrapText};return o.value&&o.value.split(" ").reduce((f,T)=>(f[T]=!0,f),s),s}),F=t.computed(()=>({overflow:e.wrapText?"hidden":""})),m=t.computed(()=>({})),y=t.ref(e.showAppendButton);function E(){if(!e.multiSelect||e.inputType!=="tag"||!l.value)return 0;let s=0;const f=Array.from(l.value.querySelectorAll(".farris-tag-item"));return f&&f.length&&(s=f.map(T=>T.offsetTop).filter(T=>T>20).length),s}const L=t.ref(E());t.onUpdated(()=>{L.value=E()});function p(){return e.multiSelect&&e.inputType==="tag"?()=>t.createVNode(t.Fragment,null,[je(e,u,w)(),!!L.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("+"),L.value])])]):He(e,u,w)}let P=p();t.watch([()=>e.multiSelect,()=>e.inputType],()=>{P=p()});const{renderButtonGroup:D,buttonHandleElement:_}=Re(e,n,b,g),$=Fe(e,n,r),A=t.ref(c.value),Y={displayText:v,commitValue:B,elementRef:l,hidePopup:d,showPopup:i,popoverRef:r.popoverRef,shouldPopupContent:c,togglePopup:h,openDialog:()=>{_.value&&e.buttonBehavior==="Modal"&&_.value.click(),n.slots.content&&ae.debounce(()=>{b.onClickButton(null)},e.buttonBehavior==="Modal"?0:200)()},getModal:()=>{var s;return e.buttonBehavior==="Modal"?(s=b.modalRef.value)==null?void 0:s.value:null},getTextbox:()=>{var s;return(s=l.value)==null?void 0:s.querySelector("input")},forceClosePopup:()=>{A.value=!1,S.value=!0,c.value=!1},clear:()=>{V(""),v.value=""},setText:s=>{V(s,!1),v.value=s}};return t.onMounted(()=>{l.value.componentInstance=Y,window.onresize=()=>{document.body.click()}}),t.onBeforeUnmount(()=>{var s;window.onresize=null,(s=window[K])==null||s.delete(l.value)}),n.expose(Y),t.watch(()=>c.value,async(s,f)=>{if(S.value){A.value=s,S.value=!1;return}if(!s&&e.beforeClosePopup&&typeof e.beforeClosePopup=="function"){try{const T=await e.beforeClosePopup();A.value=!T,(!T||e.readonly)&&(c.value=!0)}catch(T){console.error("Error in beforeClosePopup:",T),A.value=f,c.value=f}return}A.value=s}),()=>{var s,f;return t.createVNode(t.Fragment,null,[t.createVNode("div",t.mergeProps(n.attrs,{ref:l,class:z.value,id:e.id?e.id:void 0,style:F.value}),[t.createVNode("div",{id:e.id?`${e.id}-input-group`:void 0,class:k.value,style:m.value,onMouseenter:M,onMouseleave:N},[(f=(s=n.slots).precontent)==null?void 0:f.call(s),n.slots.content?n.slots.content():P(),n.slots.content?null:y.value&&D()])]),A.value&&$()])}}}),Le=U.withInstall(ce);I.FButtonEdit=ce,I.buttonEditProps=oe,I.default=Le,Object.defineProperties(I,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
1
+ (function(I,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("vue"),require("../locale/index.umd.js"),require("../common/index.umd.js"),require("../drawer/index.umd.js"),require("../property-panel/index.umd.js"),require("../button/index.umd.js"),require("../field-selector/index.umd.js"),require("../collection-property-editor/index.umd.js/src/use-button-items.designer"),require("../tags/index.umd.js"),require("lodash-es"),require("../common/index.umd.js/text-box/use-input-expand"),require("../popover/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","../locale/index.umd.js","../common/index.umd.js","../drawer/index.umd.js","../property-panel/index.umd.js","../button/index.umd.js","../field-selector/index.umd.js","../collection-property-editor/index.umd.js/src/use-button-items.designer","../tags/index.umd.js","lodash-es","../common/index.umd.js/text-box/use-input-expand","../popover/index.umd.js"],t):(I=typeof globalThis<"u"?globalThis:I||self,t(I["button-edit"]={},I.Vue,I.locale,I.common,I.FDrawer,null,null,null,null,I.FTags,I.LodashES,I.useInputExpand,I.FPopover))})(this,function(I,t,U,A,ee,dt,ft,ht,mt,ve,ae,ge,pe){"use strict";var rt=Object.defineProperty;var ct=(I,t,U)=>t in I?rt(I,t,{enumerable:!0,configurable:!0,writable:!0,value:U}):I[t]=U;var J=(I,t,U)=>ct(I,typeof t!="symbol"?t+"":t,U);const oe={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 a=t.ref(e.popupContentPosition),o=t.ref(e.host),u=be(),r=t.computed(()=>({backgroundColor:e.backgroundColor||"",pointerEvents:"auto"}));function c(i){n.emit("click"),i.preventDefault(),i.stopPropagation()}t.computed(()=>{const i=o.value;if(i){const h=i.getBoundingClientRect(),{left:b,top:v,height:w}=h;return{left:b,top:v+w}}return a.value});const d=t.computed(()=>({}));return()=>u.value?t.createVNode(t.Teleport,{to:"body"},{default:()=>{var i,h;return[t.createVNode("div",{class:"overlay-container",onClick:b=>c(b),style:r.value},[t.createVNode("div",{style:d.value},[(h=(i=n.slots).default)==null?void 0:h.call(i)])])]}}):null}});function Ce(e){if(e.content&&e.content.render)return e.content.render;if(e.render&&typeof e.render=="function")return e.render}function xe(e){const n=document.createElement("div");n.style.display="contents";let a;const o=e.onClickCallback||(()=>{}),u=()=>{o(),a&&a.unmount()};return a=t.createApp({setup(){t.onUnmounted(()=>{document.body.removeChild(n)});const r=Ce(e);return()=>t.createVNode(we,{"popup-content-position":e.popupPosition,host:e.host,onClick:u,backgroundColor:e.backgroundColor},{default:()=>[r&&r()]})}}),document.body.appendChild(n),a.mount(n),a}class Be{static show(n){return xe(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,a){this.x=n,this.y=a}static getTransformInfo(n){const o=window.getComputedStyle(n).getPropertyValue("transform").replace(/[^-\d,]/g,"").split(",");if(o.length>=6){const u=parseInt(o[4],10),r=parseInt(o[5],10);return{x:u,y:r}}return{x:0,y:0}}static fromEvent(n,a=null){if(this.isMouseEvent(n))return new R(n.clientX,n.clientY);if(a===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===a)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 a=new R(0,0);if(window){const o=window.getComputedStyle(n);if(o){const u=parseInt(o.getPropertyValue("left"),10),r=parseInt(o.getPropertyValue("top"),10);a.x=isNaN(u)?0:u,a.y=isNaN(r)?0:r}return a}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,a){this.width=n,this.height=a}static getCurrent(n){const a=new X(0,0);if(window){const o=window.getComputedStyle(n);return o&&(a.width=parseInt(o.getPropertyValue("width"),10),a.height=parseInt(o.getPropertyValue("height"),10)),a}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 a=t.ref(),o=t.ref(),u=t.ref(),r=t.ref(),c=t.ref(),d=t.ref(),i=t.ref(),h=t.ref(),b=t.ref(),v=t.ref(),w=t.ref(),C=t.ref(e.resizeable),B=t.ref(),k=t.ref(e.draggable),V=t.ref(!1);function g(){const s=o.value||document.body,f=window.getComputedStyle(s);if(!f||!a.value)return;const T=R.getTransformInfo(a.value),O={};i.value&&(O.deltaL=a.value.offsetLeft-i.value.x,O.deltaT=a.value.offsetTop-i.value.y);const W=f.getPropertyValue("position");O.width=s.clientWidth,O.height=s.clientHeight,O.pr=parseInt(f.getPropertyValue("padding-right"),10),O.pb=parseInt(f.getPropertyValue("padding-bottom"),10),O.position=f.getPropertyValue("position"),W==="static"&&(s.style.position="relative"),O.translateX=T.x,O.translateY=T.y,v.value=O}function M(s){if(a.value){r.value=X.getCurrent(a.value),c.value=R.getCurrent(a.value),d.value=r.value?X.copy(r.value):null,i.value=c.value?R.copy(c.value):null,g();const f=s.target.getAttribute("type")||"";h.value={n:!!f.match(/n/),s:!!f.match(/s/),w:!!f.match(/w/),e:!!f.match(/e/)}}}function N(){var s,f,T,O;if(a.value){const W=a.value;h.value&&((h.value.n||h.value.s)&&((s=d.value)!=null&&s.height)&&(W.style.height=d.value.height+"px"),(h.value.w||h.value.e)&&((f=d.value)!=null&&f.width)&&(W.style.width=d.value.width+"px"),i.value&&((T=i.value)!=null&&T.x&&(W.style.left=i.value.x+"px"),(O=i.value)!=null&&O.y&&(W.style.top=i.value.y+"px")))}}function S(){const s=e.minHeight?e.minHeight:1,f=e.minWidth?e.minWidth:1;d.value&&i.value&&h.value&&r.value&&(d.value.height<s&&(d.value.height=s,h.value.n&&c.value&&(i.value.y=c.value.y+(r.value.height-s))),d.value.width<f&&(d.value.width=f,h.value.w&&c.value&&(i.value.x=c.value.x+(r.value.width-f))),e.maxHeight&&d.value.height>e.maxHeight&&(d.value.height=e.maxHeight,c.value&&h.value.n&&(i.value.y=c.value.y+(r.value.height-e.maxHeight))),e.maxWidth&&d.value.width>e.maxWidth&&(d.value.width=e.maxWidth,h.value.w&&c.value&&(i.value.x=c.value.x+(r.value.width-e.maxWidth))))}function z(){if(o.value){const s=v.value;if(i.value&&d.value&&h.value&&r.value){const f=s.width-s.pr-s.deltaL-s.translateX-i.value.x,T=s.height-s.pb-s.deltaT-s.translateY-i.value.y;h.value.n&&i.value.y+s.translateY<0&&c.value&&(i.value.y=-s.translateY,d.value.height=r.value.height+c.value.y+s.translateY),h.value.w&&i.value.x+s.translateX<0&&c.value&&(i.value.x=-s.translateX,d.value.width=r.value.width+c.value.x+s.translateX),d.value.width>f&&(d.value.width=f),d.value.height>T&&(d.value.height=T)}}}function F(s){if(!u.value||!r.value||!c.value||!h.value)return;s.subtract(u.value);const f=s.x,T=s.y;h.value.n?(i.value.y=c.value.y+T,d.value.height=r.value.height-T):h.value.s&&(d.value.height=r.value.height+T),h.value.e?d.value.width=r.value.width+f:h.value.w&&(d.value.width=r.value.width-f,i.value.x=c.value.x+f),z(),S(),N()}function m(s){if(!b.value)return;const f=R.fromEvent(s);f&&F(f)}function y(){if(a.value){const{width:s,height:f,x:T,y:O}=a.value.getBoundingClientRect(),W=R.getTransformInfo(a.value);return{size:{width:s,height:f},position:{x:T-W.x,y:O-W.y}}}return null}function E(s){if(a.value){const f=y();w.value=f}u.value=void 0,r.value=null,c.value=null,d.value=null,i.value=null,h.value=null,b.value=null,document.removeEventListener("mousemove",m),document.removeEventListener("mouseup",E)}function L(){document.addEventListener("mousemove",m),document.addEventListener("mouseup",E)}function p(s){s instanceof MouseEvent&&s.button===2||k.value&&(document.body.click(),s.stopPropagation(),s.preventDefault(),u.value=R.fromEvent(s),b.value=s.target,M(s),L())}function P(s){return a.value=s,C.value&&t.createVNode(t.Fragment,null,[t.createVNode("div",{class:"fv-resizable-handle fv-resizable-n",type:"n",onMousedown:f=>p(f)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-e",type:"e",onMousedown:f=>p(f)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-s",type:"s",onMousedown:f=>p(f)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-w",type:"w",onMousedown:f=>p(f)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-ne",type:"ne",onMousedown:f=>p(f)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-se fv-resizable-diagonal",type:"se",onMousedown:f=>p(f)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-sw",type:"sw",onMousedown:f=>p(f)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-nw",type:"nw",onMousedown:f=>p(f)},null)])}function D(s=!0){document.body.click();const f=o.value||document.body,T=X.getCurrent(f),O=a.value;s&&O&&(B.value=y(),B.value.transform=O.style.transform),T&&O&&(d.value=T,d.value.height-=14,d.value.width-=14,O.style.height=d.value.height+"px",O.style.width=d.value.width+"px",O.style.left="7px",O.style.top="7px",O.style.transform="",w.value={size:d.value,position:{x:0,y:0}},k.value=!1,V.value=!0)}function _(){var s,f;if(document.body.click(),B.value){const T={width:B.value.size.width||0,height:B.value.size.height||0},O={x:(window.innerWidth-T.width)/2,y:(window.innerHeight-T.height)/2};(s=d.value)==null||s.set(T),(f=i.value)==null||f.set(O);const W=a.value;W.style.height=T.height+"px",W.style.width=T.width+"px",W.style.left=`${O.x}px`,W.style.top=`${O.y}px`,W.style.transform="",w.value={size:T,position:O},k.value=e.draggable,V.value=!1}}function $(){if(a.value){const s=X.getCurrent(a.value);if(s){const{width:f,height:T}=s;a.value.style.left=`${(window.innerWidth-f)/2}px`,a.value.style.top=`${(window.innerHeight-T)/2}px`,a.value.style.transform=""}}}function q(){const s=()=>{V.value?D(!1):$(),document.body.click()};return window.addEventListener("resize",s),()=>{window.removeEventListener("resize",s)}}const Y=q();return{renderResizeBar:P,boundingElement:o,resizedEventParam:w,maximize:D,restore:_,allowDrag:k,isMaximized:V,unWindowResizeHandle:Y,moveToCenter:$}}function Te(e,n,a){const o=t.ref(),u=t.ref(e.draggable),r=t.ref(e.lockAxis),c=t.ref(),d=t.ref(),i=t.ref(!1),h=t.ref(new R(0,0)),b=t.ref(new R(0,0)),v=t.ref(new R(0,0)),w=t.ref(new R(0,0));t.watch(()=>a.value,m=>{c.value.style.cursor=m?"move":"default"});function C(m,y){if(y.tagName==="BUTTON")return!1;if(y===m)return!0;for(const E in y.children)if(Object.prototype.hasOwnProperty.call(y.children,E)&&C(m,y.children[E]))return!0;return!1}function B(){var L,p;let m=v.value.x+b.value.x,y=v.value.y+b.value.y;r.value==="x"?(m=((L=h.value)==null?void 0:L.x)||0,v.value.x=0):r.value==="y"&&(y=((p=h.value)==null?void 0:p.y)||0,v.value.y=0);const E=`translate3d(${Math.round(m)}px, ${Math.round(y)}px, 0px)`;o.value&&(o.value.style.transform=E),w.value.x=m,w.value.y=y}function k(){if(!d.value||!o.value)return null;const m=d.value.getBoundingClientRect(),y=o.value.getBoundingClientRect(),E={top:m.top<y.top,right:m.right>y.right,bottom:m.bottom>y.bottom,left:m.left<y.left};return E.top||(v.value.y-=y.top-m.top),E.bottom||(v.value.y-=y.bottom-m.bottom),E.right||(v.value.x-=y.right-m.right),E.left||(v.value.x-=y.left-m.left),B(),E}function V(m){m&&(h.value&&m.subtract(h.value),v.value.set(m),B(),k())}function g(m){i.value&&u.value&&(m.stopPropagation(),m.preventDefault(),V(R.fromEvent(m,c.value)))}function M(){var m;if(i.value){if(i.value=!1,b.value.add(v.value),v.value.reset(),(m=o.value)==null||m.classList.remove("ng-dragging"),!e.useTransform&&o.value){const{left:y,top:E}=o.value.getBoundingClientRect();o.value.style.left=Math.ceil(y)+"px",o.value.style.top=Math.ceil(E)+"px",o.value.style.transform="none"}n.emit("stopMove"),document.removeEventListener("mousemove",g),document.removeEventListener("mouseup",M)}}function N(){!i.value&&c.value&&(i.value=!0,c.value.classList.add("ng-dragging"),document.addEventListener("mousemove",g),document.addEventListener("mouseup",M))}function S(){if(o.value){const m=R.getTransformInfo(o.value);b.value.set(m);return}b.value.reset()}function z(m){if(!a.value||m instanceof MouseEvent&&m.button===2)return;const y=m.target||m.srcElement;c.value!==void 0&&y&&!C(y,c.value)||u.value!==!1&&(document.body.click(),m.stopPropagation(),m.preventDefault(),h.value=R.fromEvent(m,o.value),S(),N())}function F(m,y,E){if(u.value&&y){if(m)c.value=m;else if(e.dragHandle){if(e.dragHandle instanceof HTMLElement)c.value=e.dragHandle;else if(typeof e.dragHandle=="string"){const L=y.querySelector(e.dragHandle);L&&(c.value=L)}}o.value=y,d.value=E,c.value?(c.value.classList.add("ng-draggable"),c.value.addEventListener("mousedown",z)):u.value=!1}}return{registerDraggle:F,resetTranslate:S}}function ue(e,n){if(e){const a=o=>{o.key.toLowerCase()===e.toLowerCase()&&n({event:o,key:e})};return document.addEventListener("keydown",a),()=>{document.removeEventListener("keydown",a)}}}function Ve(e,n){const a=t.ref(e.enableEsc);let o=null;return a.value?(o=ue("Escape",u=>{n.emit("esc",{event:u.event,type:"esc"})}),{remove:o}):null}function Ee(e,n){const a=t.ref(e.enableEnter);let o=null;return a.value?(o=ue("Enter",u=>{n.emit("enter",{event:u.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 a=t.ref(e.width||300),o=t.ref(e.height||200),u=t.ref(e.modelValue),r=t.ref(""),c=t.ref(e.class),d=t.ref(e.fitContent),i=t.ref(e.showHeader),h=t.ref(""),b=t.ref(e.showCloseButton),v=t.ref(e.showMaxButton),w=t.ref(!1),C=t.ref(e.dialogType),B=t.ref(e.src),k=t.ref(""),V=t.ref(e.showButtons),g=t.ref(e.title),M=t.ref(e.containment||null),N=t.ref();g.value==="错误提示"&&(g.value=U.LocaleService.getLocaleValue("messageBox.errorTitle"));const S=t.ref(!1);function z(){const l=document.querySelectorAll(".farris-modal").length;(!l||l-1<=0)&&N.value===document.querySelectorAll(".farris-modal")[0]&&document.body.classList.remove("modal-open"),N.value&&N.value.classList.remove("show")}function F(l,x){const H=x?"accept":"cancel";Promise.resolve().then(()=>{var j;return(j=e.beforeClose)==null?void 0:j.call(e,{closeType:H})}).then(j=>{j&&(u.value=!1,n.emit("update:modelValue",!1),x!=null&&n.emit(x?"accept":"cancel"),n.emit("closed",l),z())})}const m=[{name:"cancel",text:U.LocaleService.getLocaleValue("messageBox.cancel")||"取消",class:"btn btn-secondary",handle:l=>{F(l,!1)}},{name:"accept",text:U.LocaleService.getLocaleValue("messageBox.ok")||"确定",class:"btn btn-primary",handle:l=>{F(l,!0)}}],y=t.ref(e.buttons&&e.buttons.length?e.buttons:m),E=t.computed(()=>!!h.value),L=t.computed(()=>!!V.value&&!!y.value),p=t.ref(),P=t.ref(),D=t.ref(e.maximized||!1),{renderResizeBar:_,maximize:$,restore:q,boundingElement:Y,resizedEventParam:s,allowDrag:f,unWindowResizeHandle:T,moveToCenter:O}=ke(e),{registerDraggle:W}=Te(e,n,f);function de(){return!!document.querySelectorAll(".farris-modal").length&&document.body.classList.contains("modal-open")}t.watch(()=>e.title,(l,x)=>{l!==x&&(g.value=l)}),t.watch(()=>e.modelValue,(l,x)=>{l!==x&&(u.value=l,u.value&&e.draggable&&t.nextTick(()=>{P.value&&!M.value&&(M.value=P.value.parentElement,Y.value=M.value,W(p.value,P.value,Y.value),O())}),l||(M.value&&(M.value=null),z())),u.value?S.value=de():(D.value=!1,f.value=e.draggable)}),t.watch(()=>e.showHeader,(l,x)=>{l!==x&&(i.value=l)}),t.watch(()=>e.showButtons,(l,x)=>{l!==x&&(V.value=l)}),t.watch(()=>s.value,(l,x)=>{const H=l||{},j=x||{};JSON.stringify(H)!==JSON.stringify(j)&&n.emit("resize",{newSize:l,oldSize:x,isMaximized:D.value})}),t.watch([()=>e.width,()=>e.height],(l,x)=>{(l[0]!==x[0]||l[1]!==x[1])&&(a.value=l[0]||500,o.value=l[1]||600)}),t.watch(()=>e.class,(l,x)=>{c.value=l});const Q=t.computed(()=>(u.value&&document.body.classList.add("modal-open"),u.value)),We=t.computed(()=>{var H;const l={modal:!0,"farris-modal":!0,fade:!0,"fe-cmp-page-modal":!!e.showFloatingClose};l["f-modal-fitContent"]=!!d.value,l.show=!!Q.value;const x=(H=e.maskClass)==null?void 0:H.split(" ");return x==null||x.reduce((j,G)=>(j[G]=!0,j),l),l}),De=t.computed(()=>{var H;const l={"modal-dialog":!0},x=(H=c.value)==null?void 0:H.split(" ");return x==null||x.reduce((j,G)=>(j[G]=!0,j),l),l}),Ae=()=>A.isMobilePhone()&&!e.isMessager||!!e.fullscreen,qe=t.computed(()=>{const l=document.documentElement.clientWidth,x=document.documentElement.clientHeight;if(D.value)return{position:"fixed",top:"0px",left:"0px",width:"100vw",height:"100vh",margin:"0"};const H=Math.min(a.value,l),j=e.position==="right"?"100%":d.value?"auto":`${Math.min(o.value,x-10)}px`,G=`${(window.innerHeight-(j==="100%"||j==="auto"?0:parseInt(j)))/2}px`,it=e.position==="right"?`${window.innerWidth-H}px`:`${(window.innerWidth-H)/2}px`,me={position:"absolute",top:G,left:it,width:A.isMobilePhone()?"auto":`${H}px`,height:j};return e.mask||(me.pointerEvents="auto"),me}),fe=t.ref(A.getMaxZIndex()||1050),Ue=t.computed(()=>{const l={display:"block",overflow:"hidden"};return e.mask||(l.pointerEvents="none",l.backgroundColor="transparent"),S.value&&(l.backgroundColor="transparent"),l.zIndex=fe.value,l}),Ye=t.computed(()=>({"modal-content":!0,"modal-content-has-header":i.value,"is-mobile":Ae()})),Xe=t.computed(()=>{const l={display:i.value?"":"none"};return l["pointer-events"]=f.value?"auto":"none",l}),Ke=t.computed(()=>({"f-icon":!0,modal_maximize:!0,modalrevert:D.value})),Ge=t.computed(()=>({"modal-body":!0,"f-utils-flex-column":C.value==="iframe","f-utils-fill":!0}));function _e(){return{height:`${e.footerHeight||60}px`}}const $e=t.computed(()=>{const l={textAlgin:k.value},x=_e();return Object.assign(l,x)});function te(l){if(l==null||l.stopPropagation(),D.value){D.value=!1,q();return}$(),D.value=!0}async function Je(l,x){l.handle?await l.handle(x,l)&&n.emit("closed",x):n.emit("buttonClick",{button:l,$event:x})}function Ze(l){l.width&&(a.value=l.width),l.height&&(o.value=l.height),l.buttons&&(y.value=l.buttons),l.title&&(g.value=l.title)}let ne=null,le=null;t.onBeforeMount(()=>{S.value=de()}),t.onMounted(()=>{P.value&&!M.value&&(M.value=P.value.parentElement,Y.value=M.value,W(p.value,P.value,Y.value)),Q.value&&document.body.classList.add("modal-open"),ne=Ve(e,n),le=Ee(e,n)}),t.onUnmounted(()=>{T&&T(),ne&&ne.remove(),le&&le.remove()}),n.expose({modalElementRef:P,updateModalOptions:Ze,close:F,maxDialog:te,isMaximized:D,disableButtons:(l,x=!0)=>{y.value.forEach(H=>{H.name&&l.includes(H.name)&&(H.disabled=x)})}});function Qe(){return t.createVNode("div",{class:"action-wrapper",onClick:l=>F(l,!1)},[t.createVNode("span",{class:"close-icon"},[t.createVNode("i",{class:"f-icon f-icon-close"},null)])])}function et(){return t.createVNode("ul",null,[w.value&&t.createVNode("li",{class:"f-btn-icon f-bare"},[t.createVNode("span",{class:"f-icon modal_minimize"},null)]),v.value&&t.createVNode("li",{onClick:te,class:"f-btn-icon f-bare",style:"pointer-events: auto;"},[t.createVNode("span",{class:Ke.value},null)]),b.value&&t.createVNode("li",{class:"f-btn-icon f-bare",onClick:l=>F(l,!1),style:"pointer-events: auto;"},[t.createVNode("span",{class:"f-icon modal_close"},null)])])}const tt=l=>{l.preventDefault();const x=l.currentTarget,H=l.deltaY*.5;x.scrollLeft+=H};function nt(){return t.createVNode("div",{class:"modal-footer",style:$e.value},[y.value&&t.createVNode("div",{class:"buttons",onWheel:tt},[y.value.map(l=>{var j;const x=t.ref(l.disabled),H=l.class||((j=l.appearance)==null?void 0:j.class)||"btn btn-secondary";return t.createVNode("button",t.mergeProps(A.extractDataAttrs(l),{name:l.name,style:l.styles,type:"button",disabled:x.value,class:H+(l.iconClass?" btn-icontext":"")+(l.visible===!1?"d-none":""),onClick:G=>{Je(l,G)}}),[!!l.iconClass&&t.createVNode("i",{class:l.iconClass},null),l.text])})])])}function he(l){v.value&&te()}function lt(){return t.createVNode(t.Fragment,null,[D.value&&t.createVNode("div",{class:"modal-header",style:"position: absolute;background: transparent;height: 45px;width: 100%;",onDblclick:l=>he()},null),t.createVNode("div",{ref:p,class:"modal-header",style:Xe.value,onDblclick:l=>he()},[n.slots.headerTemplate?n.slots.headerTemplate():t.createVNode("div",{class:"modal-title"},[E.value&&t.createVNode("span",{class:h.value,style:"margin-right: 8px"},null),t.createVNode("span",{class:"modal-title-label"},[g.value])]),t.createVNode("div",{class:"actions"},[et()])])])}function at(){return n.slots.footerTemplate?n.slots.footerTemplate():L.value&&nt()}function ot(l){if(l.stopPropagation(),e.allowClickMaskToClose){if(l.target!==N.value)return;F(l,!1)}}function ut(){var l,x;return t.createVNode("div",{id:r.value,class:De.value,style:qe.value,ref:P},[e.showFloatingClose&&Qe(),t.createVNode("div",{class:Ye.value},[i.value&&lt(),t.createVNode("div",{class:Ge.value},[(x=(l=n.slots).default)==null?void 0:x.call(l),C.value==="iframe"&&t.createVNode("iframe",{title:r.value,class:"f-utils-fill",width:"100%",frameborder:"0",src:B.value},null)]),at()]),!d.value&&P.value&&!D.value&&_(P.value)])}function st(l){return l||"body"}return t.watchEffect(()=>{Q.value&&(fe.value=A.getMaxZIndex()||1050)}),()=>t.createVNode(t.Teleport,{to:st(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 se(e){if(e.content&&e.content.render)return e.content.render;if(e.render&&typeof e.render=="function")return e.render}function Ne(e){const n=document.createElement("div");n.style.display="contents";const a=e.type||"modal",o=t.createApp({setup(u,r){t.onUnmounted(()=>{document.body.removeChild(n)});const c=t.ref(),d=t.ref(e.class||""),i=t.ref(!0),h=t.ref(e.title||""),b=se(e),v=e.closedCallback||(z=>{}),w=z=>{i.value=!1,o.unmount(),v(z)};if(r.expose({ref:c}),a==="drawer")return()=>t.createVNode(ee,{ref:c,modelValue:i.value,"onUpdate:modelValue":z=>i.value=z,id:"modal-service-drawer",title:h.value,width:e.width,height:e.height,position:e.position,backgroundColor:e.backgroundColor,host:e.host,showMask:e.showMask,allowClickMaskToClose:e.allowClickMaskToClose,transparent:e.transparent,showHeader:e.showHeader,showFooter:e.showButtons,buttons:e.buttons,beforeClose:e.beforeClose,customClass:d.value,onAfterClose:w},{default:()=>[b&&b(o)]});const C=t.ref(!!e.showButtons),B=t.ref(!!e.showHeader),k=t.ref(e.showCloseButton==null?!0:e.showCloseButton),V=t.ref(!!e.showFloatingClose),g=e.acceptCallback||(()=>{}),M=e.rejectCallback||(()=>{}),N=e.resizeHandle||(z=>{}),S=e.stopMoveHandle||(z=>{});return()=>t.createVNode(Z,{ref:c,class:d.value,modelValue:i.value,"onUpdate:modelValue":z=>i.value=z,title:h.value,width:e.width,height:e.height,buttons:e.buttons,"show-header":B.value,"show-buttons":C.value,"show-close-button":k.value,"show-max-button":!1,showFloatingClose:V.value,onAccept:g,onCancel:M,fitContent:e.fitContent==null?!0:e.fitContent,onClosed:w,onResize:N,onStopMove:S},{default:()=>[b&&b(o)]})}});return document.body.appendChild(n),o.use(U.LocaleService.i18n),o.mount(n),o}class Oe{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,a){const{width:o,height:u}={width:window.innerWidth,height:window.innerHeight};return o<n&&(n=o-14),u<a&&(a=u-14),{width:n,height:a}}static show(n){const a=Object.assign({title:"",showButtons:!0,showHeader:!0},n);return Ne(a)}close(n){var a,o;n?(o=n.value)==null||o.close():(a=this.getCurrentModal())==null||a.close()}open(n){const a=document.createDocumentFragment(),o=n.type||"modal";n.showMaxButton&&n.fitContent&&(n.showMaxButton=!1);const u=t.shallowRef(Object.assign({title:"",showButtons:!0,showHeader:!0,maximized:!1},n)),r=t.ref(!0),c=se(u.value),d=u.value.closedCallback||((g,M)=>{}),i=u.value.openedCallback||(g=>{});let h;const b=g=>{var N;r.value=!1;const M=(N=g==null?void 0:g.target)==null?void 0:N.classList.contains("modal_close");d(g,this.isUseEscCloseModal.value?"esc":M?"icon":"button")},v=g=>{b(g),h&&t.nextTick(()=>{if(this.modalRefs[this.activeModalIndex.value]&&delete this.modalRefs[this.activeModalIndex.value],t.render(null,a),h=null,this.modalRef.value=null,this.modalRefs){const M=Object.keys(this.modalRefs).map(N=>Number(N));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})},w=t.ref();let C;if(o==="drawer")C=()=>t.createVNode(ee,t.mergeProps({ref:w,modelValue:r.value,"onUpdate:modelValue":g=>r.value=g,id:"modal-service-drawer"},u.value,{onAfterClose:v}),{default:()=>[c&&c(this.app)]});else{const g=u.value.acceptCallback||(()=>{}),M=u.value.rejectCallback||(()=>{}),N=u.value.resizeHandle||(E=>{}),S=n.stopMoveHandle||(E=>{}),z=E=>{var L;this.isUseEscCloseModal.value=!0,(L=this.getCurrentModal())==null||L.close(E==null?void 0:E.event)},{width:F,height:m}=u.value,y=this.adaptToWindow(Number(F)||500,Number(m)||320);Object.assign(u.value,y),C=()=>t.createVNode(Z,t.mergeProps({ref:w,modelValue:r.value,"onUpdate:modelValue":E=>r.value=E},u.value,{isMessager:u.value.class&&u.value.class.indexOf("modal-message")>-1,onAccept:g,onCancel:M,onClosed:v,onResize:N,onEsc:z,onStopMove:S,maximized:u.value.maximized}),{default:()=>[c&&c(this.app)]})}h=(g=>{const M=t.h(C,g);return M.appContext=this.appContext,t.render(M,a),M})({...u.value}),this.activeModalIndex.value++;const k=this.activeModalIndex.value;this.modalRefs[k]=w.value;const V=g=>{u.value={...u.value,...g},h&&t.render(t.cloneVNode(h,{...u}),a)};return t.nextTick(()=>{this.modalRefs[k]=w.value,this.modalRef.value=w.value,i(new Event("opened"))}),{update:V,destroy:v,modalRef:w,close:()=>{var g;(g=w.value)==null||g.close()},disableButtons:(g,M=!0)=>{var N,S;(S=(N=w.value)==null?void 0:N.disableButtons)==null||S.call(N,g,M)}}}}const ie=Symbol("FModalService");Z.install=e=>{e.component(Z.name,Z);const n=new Oe(e);e.provide(ie,n),e.provide("FModalService",n)};function re(e,n){function a(){const o=e.beforeOpen||e.beforeClickButton||null;let u=Promise.resolve(!0);if(o){const r=o(n.value);if(typeof r>"u")return u;typeof r=="boolean"?u=Promise.resolve(r):u=r}return u}return{judgeCanOpen:a}}function Pe(e,n,a,o,u){const r=t.ref(e.buttonBehavior),c=t.ref(e.popupOnInput),d=t.computed(()=>({"input-group-append":!0,"append-force-show":e.showButtonWhenDisabled&&(e.readonly||e.disable)})),{judgeCanOpen:i}=re(e,u),h=t.computed(()=>e.showButtonWhenDisabled||(!e.editable||!e.readonly)&&!e.disable),b=t.inject(ie,null),v=t.ref();async function w(k){if(await i()&&h.value){const V=!!n.slots.default;if(r.value==="Modal"){const g=e.modalOptions,M=b==null?void 0:b.open({...g,render:()=>n.slots.default&&n.slots.default()});v.value=M==null?void 0:M.modalRef}r.value==="Overlay"&&Be.show({host:document.body,backgroundColor:"rgba(0,0,0,.15)",render:()=>n.slots.default&&n.slots.default()}),V&&r.value==="Popup"&&o.togglePopup(!0),V&&c.value&&o.hidePopup(),n.emit("clickButton",{origin:k,value:e.modelValue})}}function C(k){n.emit("mouseEnterIcon",k)}function B(k){n.emit("mouseLeaveIcon",k)}return{buttonGroupClass:d,onClickButton:w,onMouseEnterButton:C,onMouseLeaveButton:B,modalRef:v}}function Se(e,n,a,o,u,r){const c=t.ref(!1),d=t.computed(()=>e.enableClear&&!e.readonly&&!e.disable&&!A.isMobilePhone()),{changeTextBoxValue:i,hasClearClass:h}=r,b=t.ref(!1);function v(V){c.value=V,h.value=V}const w=t.computed(()=>d.value&&!!(u!=null&&u.value)&&b.value);t.watch(u,()=>{v(w.value)});function C(V){const g=!e.readonly&&!e.disable&&e.editable,M=!e.editable;V==null||V.stopPropagation(),(g||M)&&(i(""),u.value="",v(!c.value),n.emit("clear"))}function B(V){if(b.value=!0,!!d.value){if(!a.value){v(!1);return}!e.disable&&!e.readonly&&v(!0)}}function k(V){b.value=!1,d.value&&v(!1)}return{enableClearButton:d,showClearButton:c,onClearValue:C,onMouseEnterTextBox:B,onMouseLeaveTextBox:k}}function ze(e,n,a,o,u){const r=t.computed(()=>e.popupOnInput),c=t.computed(()=>e.popupOnFocus),{shouldPopupContent:d,closeAllPopover:i}=u,h=t.ref(!1),b=t.computed(()=>e.enableTitle?a.value:""),v=t.computed(()=>(e.disable||e.readonly)&&!e.forcePlaceholder?"":e.placeholder),w=t.computed(()=>e.readonly||!e.editable||A.isMobilePhone()),C=t.ref(!1),B=t.computed(()=>!e.disable&&C.value),k=t.computed(()=>({"text-left":e.textAlign==="left","text-center":e.textAlign==="center","text-right":e.textAlign==="right","form-control":!0,"f-utils-fill":!0})),V=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":B.value,"input-group--has-clear":e.enableClear&&h.value}));function g(p,P=!0){a.value=p,P&&(n.emit("change",p),n.emit("update:modelValue",p))}function M(p){d.value=!1,g(p,!0)}t.watch(()=>e.modelValue,p=>{a.value=p});function N(p){C.value=!1,n.emit("blur",p),p.stopPropagation()}function S(p){n.emit("click",p),i(),n.slots.default&&!e.disable&&!e.readonly&&e.popupOnClick&&u.togglePopup()}function z(p){!e.disable&&!e.readonly&&(C.value=!0,w.value||(n.emit("focus",p),c.value&&!d.value&&u.popup()))}function F(p){n.emit("input",p);const P=p.target.value;o.value=P,a.value!==P&&g(P,e.updateOn==="change"),r.value&&!d.value&&u.popup()}function m(p){p.target.tagName!=="INPUT"&&p.preventDefault(),p.stopPropagation()}function y(p){n.emit("keydown",p)}function E(p){p.key==="Enter"&&(r.value||c.value)&&u.hidePopup(),n.emit("keyup",p)}function L(p){const P=p.target.value;p.stopPropagation(),g(P)}return{hasFocusedTextBox:B,isTextBoxReadonly:w,textBoxClass:k,textBoxPlaceholder:v,textBoxTitle:b,inputGroupClass:V,hasClearClass:h,changeTextBoxValue:g,commitValue:M,onBlurTextBox:N,onClickTextBox:S,onFocusTextBox:z,onInput:F,onKeyDownTextBox:y,onKeyUpTextBox:E,onMouseDownTextBox:m,onTextBoxValueChange:L}}const K="FarrisVue_PopoverInstancesKey";function Ie(e,n,a,o){const u=t.ref(),r=t.ref(!1),{judgeCanOpen:c}=re(e,o);t.watch(()=>u.value,(C,B)=>{window[K]=window[K]||new WeakMap,C?window[K].set(a.value,C):window[K].delete(a.value)});function d(){if(window[K]){const C=window[K];document.querySelectorAll(".f-button-edit,.v-popover").forEach(B=>{const k=C.get(B);k&&B!==a.value&&!a.value.closest(".popover-fitcontent")&&k.hide()})}}function i(){const C=u.value;C&&(C.show?C.show(a.value):C.open&&C.open(a.value))}async function h(C=!1){if(!!n.slots.default){if(!C&&!r.value&&!await c())return;r.value=!r.value,r.value&&(await t.nextTick(),i())}}async function b(C=!1){if(!!n.slots.default){if(!C&&!await c())return;r.value=!0,await t.nextTick(),i()}}function v(){r.value=!1}function w(){r.value=!0,t.nextTick(()=>{i()})}return{hidePopup:v,showPopup:w,popup:b,shouldPopupContent:r,togglePopup:h,popoverRef:u,closeAllPopover:d}}function He(e,n,a){const o=t.ref(),{isTextBoxReadonly:u,textBoxClass:r,textBoxPlaceholder:c,textBoxTitle:d,onBlurTextBox:i,onClickTextBox:h,onFocusTextBox:b,onInput:v,onKeyDownTextBox:w,onKeyUpTextBox:C,onMouseDownTextBox:B,onTextBoxValueChange:k}=a,V=t.ref(e.id),{uuid:g}=A.useGuid(),M=t.computed(()=>({}));t.onMounted(()=>{var m,y;e.selectOnCreated&&((m=o.value)==null||m.select()),e.focusOnCreated&&((y=o.value)==null||y.focus({preventScroll:!0})),V.value||(V.value="button-edit_"+g(8)),V.value=V.value+"-textbox"});const N=t.ref(!1),S=m=>{m.preventDefault(),N.value=!0},z=m=>{m.preventDefault(),N.value=!1,v(m)};function F(m){N.value||v(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:r.value,style:M.value,disabled:e.disable,maxlength:e.maxLength,minlength:e.minLength,placeholder:c.value,readonly:u.value,tabindex:e.tabIndex,title:d.value,type:e.inputType,value:n.value,onBlur:i,onChange:k,onClick:h,onFocus:b,onInput:F,onKeydown:w,onKeyup:C,onMousedown:B,onCompositionend:z,onCompositionstart:S},null)}function je(e,n,a){const o=t.ref(e.separator),u=t.computed(()=>e.readonly||e.disable),{changeTextBoxValue:r,onFocusTextBox:c,onBlurTextBox:d,onClickTextBox:i,textBoxPlaceholder:h}=a,b=t.computed(()=>n.value?n.value.split(o.value).map(B=>({name:B,selectable:!0})):[]);function v(B){r(B.map(k=>k.name).join(o.value),!0)}t.watch(()=>e.separator,B=>{o.value=B});const w=t.ref(!e.disable&&!e.readonly);t.watch([()=>e.disable,()=>e.readonly],([B,k],[V,g])=>{w.value=!B&&!k});function C(B){i(B)}return()=>t.createVNode(ve,{tabindex:e.tabIndex,onFocus:c,onBlur:d,id:`${e.id}-tag-editor`,class:"form-control",placeholder:h.value,data:b.value,showClose:!u.value,showInput:!0,disable:u.value,onChange:v,onClick:C},null)}function Re(e,n,a,o){const{buttonGroupClass:u,onClickButton:r,onMouseEnterButton:c,onMouseLeaveButton:d}=a,{enableClearButton:i,showClearButton:h,onClearValue:b}=o,v=t.ref(),w=ae.debounce(k=>{r(k)},e.buttonBehavior==="Modal"?0:200),C=()=>{n.emit("beforeClearValue")},{renderExpandContent:B}=ge.useInputExpand(e,n);return{renderButtonGroup:()=>t.createVNode(t.Fragment,null,[t.createVNode("div",{id:e.id?`${e.id}-button-group`:void 0,class:u.value},[i.value&&t.withDirectives(t.createVNode("span",{class:"input-group-text input-group-clear",onClick:b,onMousedown:C},[t.createVNode("i",{class:"f-icon modal_close"},null)]),[[t.vShow,h.value]]),n.slots.buttonContent?t.createVNode("span",{class:"input-group-text input-group-append-button",onClick:w,onMouseenter:c,onMouseleave:d},[n.slots.buttonContent()]):e.buttonContent?t.createVNode("span",{class:"input-group-text input-group-append-button",innerHTML:e.buttonContent,ref:v,onClick:k=>w(k),onMouseenter:c,onMouseleave:d},null):null]),B()]),buttonHandleElement:v}}function Fe(e,n,a){const o=t.ref(e.popupMinWidth),{hidePopup:u,popoverRef:r}=a,c=()=>{n.emit("shown")},d=()=>{u(),n.emit("hidden")};return()=>A.isMobilePhone()?t.createVNode(ee,{id:`${e.id}-drawer`,ref:r,position:e.placement,width:"auto",height:"auto",host:e.popupHost,showHeader:!1,showFooter:!1,customClass:"f-drawer--no-padding","onUpdate:modelValue":i=>i?c():d()},{default:()=>{var i,h;return[t.createTextVNode(" "),(h=(i=n.slots).default)==null?void 0:h.call(i),t.createTextVNode(" ")]}}):t.createVNode(pe,{id:`${e.id}-popover`,ref:r,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:d,onShown:c,beforeClose:e.beforeClosePopup,limitContentBySpace:e.limitContentBySpace},{default:()=>{var i,h;return[(h=(i=n.slots).default)==null?void 0:h.call(i)]}})}const ce=t.defineComponent({name:"FButtonEdit",props:oe,emits:["updateExtendInfo","clear","change","click","clickButton","blur","focus","mouseEnterIcon","mouseLeaveIcon","keyup","keydown","inputClick","input","update:modelValue","beforeClearValue","expandClick","hidden","shown"],setup(e,n){const a=t.ref(),o=t.ref(e.customClass),u=t.ref(e.modelValue),r=Ie(e,n,a,u),{shouldPopupContent:c,hidePopup:d,showPopup:i,togglePopup:h}=r,b=Pe(e,n,a,r,u),v=t.ref(""),w=ze(e,n,u,v,r),{hasFocusedTextBox:C,commitValue:B,inputGroupClass:k,changeTextBoxValue:V}=w,g=Se(e,n,u,C,v,w),{onMouseEnterTextBox:M,onMouseLeaveTextBox:N}=g,S=t.ref(!1),z=t.computed(()=>{const s={"f-button-edit":!0,"f-cmp-inputgroup":!0,"f-button-edit-nowrap":!e.wrapText};return o.value&&o.value.split(" ").reduce((f,T)=>(f[T]=!0,f),s),s}),F=t.computed(()=>({overflow:e.wrapText?"hidden":""})),m=t.computed(()=>({})),y=t.ref(e.showAppendButton);function E(){if(!e.multiSelect||e.inputType!=="tag"||!a.value)return 0;let s=0;const f=Array.from(a.value.querySelectorAll(".farris-tag-item"));return f&&f.length&&(s=f.map(T=>T.offsetTop).filter(T=>T>20).length),s}const L=t.ref(E());t.onUpdated(()=>{L.value=E()});function p(){return e.multiSelect&&e.inputType==="tag"?()=>t.createVNode(t.Fragment,null,[je(e,u,w)(),!!L.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("+"),L.value])])]):He(e,u,w)}let P=p();t.watch([()=>e.multiSelect,()=>e.inputType],()=>{P=p()});const{renderButtonGroup:D,buttonHandleElement:_}=Re(e,n,b,g),$=Fe(e,n,r),q=t.ref(c.value),Y={displayText:v,commitValue:B,elementRef:a,hidePopup:d,showPopup:i,popoverRef:r.popoverRef,shouldPopupContent:c,togglePopup:h,openDialog:()=>{_.value&&e.buttonBehavior==="Modal"&&_.value.click(),n.slots.content&&ae.debounce(()=>{b.onClickButton(null)},e.buttonBehavior==="Modal"?0:200)()},getModal:()=>{var s;return e.buttonBehavior==="Modal"?(s=b.modalRef.value)==null?void 0:s.value:null},getTextbox:()=>{var s;return(s=a.value)==null?void 0:s.querySelector("input")},forceClosePopup:()=>{q.value=!1,S.value=!0,c.value=!1},clear:()=>{V(""),v.value=""},setText:s=>{V(s,!1),v.value=s}};return t.onMounted(()=>{a.value.componentInstance=Y,window.onresize=()=>{document.body.click()}}),t.onBeforeUnmount(()=>{var s;window.onresize=null,(s=window[K])==null||s.delete(a.value)}),n.expose(Y),t.watch(()=>c.value,async(s,f)=>{if(S.value){q.value=s,S.value=!1;return}if(!s&&e.beforeClosePopup&&typeof e.beforeClosePopup=="function"){try{const T=await e.beforeClosePopup();q.value=!T,(!T||e.readonly)&&(c.value=!0)}catch(T){console.error("Error in beforeClosePopup:",T),q.value=f,c.value=f}return}q.value=s}),()=>{var s,f;return t.createVNode(t.Fragment,null,[t.createVNode("div",t.mergeProps(n.attrs,{ref:a,class:z.value,id:e.id?e.id:void 0,style:F.value}),[t.createVNode("div",{id:e.id?`${e.id}-input-group`:void 0,class:k.value,style:m.value,onMouseenter:M,onMouseleave:N},[(f=(s=n.slots).precontent)==null?void 0:f.call(s),n.slots.content?n.slots.content():P(),n.slots.content?null:y.value&&D()])]),q.value&&$()])}}}),Le=A.withInstall(ce);I.FButtonEdit=ce,I.buttonEditProps=oe,I.default=Le,Object.defineProperties(I,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
@@ -1,10 +1,10 @@
1
- import { ref as b, nextTick as C, createVNode as r, Fragment as P, defineComponent as D, inject as S, onMounted as R } from "vue";
2
- import { FButton as j } from "../button/index.esm.js";
3
- import { resolveAppearance as F, createPropsResolver as G } from "../dynamic-resolver/index.esm.js";
4
- import x from "../popover/index.esm.js";
5
- import { useDesignerComponent as $ } from "../designer-canvas/index.esm.js";
6
- import { withInstall as T } from "../common/index.esm.js";
7
- const O = "https://json-schema.org/draft/2020-12/schema", q = "https://farris-design.gitee.io/button-group.schema.json", z = "button-group", A = "A Farris Component", N = "object", E = {
1
+ import { ref as b, nextTick as C, createVNode as r, Fragment as P, defineComponent as k, mergeProps as S, inject as R, onMounted as j } from "vue";
2
+ import { FButton as F } from "../button/index.esm.js";
3
+ import { extractDataAttrs as G, withInstall as x } from "../common/index.esm.js";
4
+ import { resolveAppearance as $, createPropsResolver as T } from "../dynamic-resolver/index.esm.js";
5
+ import O from "../popover/index.esm.js";
6
+ import { useDesignerComponent as A } from "../designer-canvas/index.esm.js";
7
+ const q = "https://json-schema.org/draft/2020-12/schema", z = "https://farris-design.gitee.io/button-group.schema.json", N = "button-group", E = "A Farris Component", H = "object", V = {
8
8
  id: {
9
9
  description: "The unique identifier for button-group",
10
10
  type: "string"
@@ -66,24 +66,24 @@ const O = "https://json-schema.org/draft/2020-12/schema", q = "https://farris-de
66
66
  type: "boolean",
67
67
  default: !0
68
68
  }
69
- }, H = [
69
+ }, W = [
70
70
  "id",
71
71
  "type"
72
- ], V = {
73
- $schema: O,
74
- $id: q,
75
- title: z,
76
- description: A,
77
- type: N,
78
- properties: E,
79
- required: H
72
+ ], J = {
73
+ $schema: q,
74
+ $id: z,
75
+ title: N,
76
+ description: E,
77
+ type: H,
78
+ properties: V,
79
+ required: W
80
80
  };
81
- function W(e, o, s) {
81
+ function K(e, o, s) {
82
82
  return o;
83
83
  }
84
- const J = /* @__PURE__ */ new Map([
85
- ["appearance", F]
86
- ]), K = "button-group", L = "A Farris Component", Q = "object", U = {
84
+ const L = /* @__PURE__ */ new Map([
85
+ ["appearance", $]
86
+ ]), Q = "button-group", U = "A Farris Component", X = "object", Y = {
87
87
  basic: {
88
88
  description: "Basic Infomation",
89
89
  title: "基本信息",
@@ -105,12 +105,12 @@ const J = /* @__PURE__ */ new Map([
105
105
  }
106
106
  }
107
107
  }
108
- }, X = {
109
- title: K,
110
- description: L,
111
- type: Q,
112
- categories: U
113
- }, k = {
108
+ }, Z = {
109
+ title: Q,
110
+ description: U,
111
+ type: X,
112
+ categories: Y
113
+ }, D = {
114
114
  /**
115
115
  * 组件标识
116
116
  */
@@ -152,8 +152,8 @@ const J = /* @__PURE__ */ new Map([
152
152
  * @default 'bottom-left'
153
153
  */
154
154
  placement: { type: String, default: "bottom-left" }
155
- }, B = G(k, V, J, W, X);
156
- function Y(e, o, s) {
155
+ }, B = T(D, J, L, K, Z);
156
+ function _(e, o, s) {
157
157
  const u = b(), i = b(!1), a = b(), l = b(!1);
158
158
  function g() {
159
159
  const f = u.value;
@@ -198,7 +198,7 @@ function Y(e, o, s) {
198
198
  togglePopup: p
199
199
  };
200
200
  }
201
- function Z(e, o, s) {
201
+ function I(e, o, s) {
202
202
  const {
203
203
  hidePopup: u,
204
204
  onClickDropdownMenuItem: i,
@@ -218,7 +218,7 @@ function Z(e, o, s) {
218
218
  }, null), r("span", null, [t.text])])]);
219
219
  }
220
220
  function d(t) {
221
- return r(x, {
221
+ return r(O, {
222
222
  id: `${e.id}-popover`,
223
223
  ref: a,
224
224
  visible: !0,
@@ -240,14 +240,14 @@ function Z(e, o, s) {
240
240
  };
241
241
  }
242
242
  function w(e, o) {
243
- const s = b(), u = b(), i = Y(e, o, u), {
243
+ const s = b(), u = b(), i = _(e, o, u), {
244
244
  onMouseleaveDropdownButton: a,
245
245
  onMouseenterDropdownButton: l,
246
246
  onClickDropdownButton: g,
247
247
  shouldPopupContent: p
248
248
  } = i, {
249
249
  renderDropdownMenu: d
250
- } = Z(e, s, i), t = () => ({
250
+ } = I(e, s, i), t = () => ({
251
251
  "margin-bottom": "2px"
252
252
  });
253
253
  function c(v) {
@@ -270,9 +270,9 @@ function w(e, o) {
270
270
  renderDropdownButton: c
271
271
  };
272
272
  }
273
- const h = /* @__PURE__ */ D({
273
+ const h = /* @__PURE__ */ k({
274
274
  name: "FButtonGroup",
275
- props: k,
275
+ props: D,
276
276
  emits: ["click", "change", "changeState"],
277
277
  setup(e, o) {
278
278
  const s = b(), u = e.data && e.data.slice(0, e.count) || [], i = e.data && e.data.slice(e.count) || [], a = (n) => n.type || e.type, l = (n) => n.disabled !== void 0 ? n.disabled : e.disabled, g = function(n) {
@@ -304,15 +304,16 @@ const h = /* @__PURE__ */ D({
304
304
  });
305
305
  }
306
306
  function c(n) {
307
- return r(j, {
308
- disabled: l(n),
307
+ return r(F, S({
308
+ disabled: l(n)
309
+ }, G(n), {
309
310
  id: n.id,
310
311
  icon: n.icon,
311
312
  size: e.size,
312
313
  type: a(n),
313
314
  customClass: g(n),
314
315
  onClick: (y) => t(y, n)
315
- }, {
316
+ }), {
316
317
  default: () => [n.text]
317
318
  });
318
319
  }
@@ -328,13 +329,13 @@ const h = /* @__PURE__ */ D({
328
329
  style: d()
329
330
  }, [u.map((n) => c(n))]), !!i.length && v(i)]);
330
331
  }
331
- }), _ = /* @__PURE__ */ D({
332
+ }), ee = /* @__PURE__ */ k({
332
333
  name: "FButtonGroupDesign",
333
- props: k,
334
+ props: D,
334
335
  emits: ["click", "changeState", "change", "clickMenuOut"],
335
336
  setup(e, o) {
336
- const s = b(), u = S("design-item-context"), i = $(s, u);
337
- R(() => {
337
+ const s = b(), u = R("design-item-context"), i = A(s, u);
338
+ j(() => {
338
339
  s.value.componentInstance = i;
339
340
  }), o.expose(i.value);
340
341
  const a = e.data && e.data.slice(0, e.count) || [], l = e.data && e.data.slice(e.count) || [], g = function(t) {
@@ -373,12 +374,12 @@ h.register = (e, o, s, u) => {
373
374
  e["button-group"] = h, o["button-group"] = B;
374
375
  };
375
376
  h.registerDesigner = (e, o, s) => {
376
- e["button-group"] = _, o["button-group"] = B;
377
+ e["button-group"] = ee, o["button-group"] = B;
377
378
  };
378
- const re = T(h);
379
+ const ue = x(h);
379
380
  export {
380
381
  h as FButtonGroup,
381
- k as buttonGroupProps,
382
- re as default,
382
+ D as buttonGroupProps,
383
+ ue as default,
383
384
  B as propsResolver
384
385
  };
@@ -1 +1 @@
1
- (function(s,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("vue"),require("../button/index.umd.js"),require("../dynamic-resolver/index.umd.js"),require("../popover/index.umd.js"),require("../designer-canvas/index.umd.js"),require("../common/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","../button/index.umd.js","../dynamic-resolver/index.umd.js","../popover/index.umd.js","../designer-canvas/index.umd.js","../common/index.umd.js"],t):(s=typeof globalThis<"u"?globalThis:s||self,t(s["button-group"]={},s.Vue,s.button,s.dynamicResolver,s.FPopover,s.designerCanvas,s.common))})(this,function(s,t,C,D,j,N,V){"use strict";const x={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/button-group.schema.json",title:"button-group",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for button-group",type:"string"},type:{description:"The type string of button-group",type:"string",default:"button-group"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disable:{type:"string",default:!1},editable:{description:"",type:"boolean",default:!0},placeholder:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},require:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},visible:{description:"",type:"boolean",default:!0}},required:["id","type"]};function P(e,i,c){return i}const S=new Map([["appearance",D.resolveAppearance]]),$={title:"button-group",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:[]}}}}}},v={id:String,data:{type:Array,default:[]},disabled:{type:Boolean,default:!1},count:{type:Number,default:2},mode:{type:String,default:"default"},size:{type:String,default:"middle"},type:{type:String,default:"primary"},placement:{type:String,default:"bottom-left"}},k=D.createPropsResolver(v,x,S,P,$);function G(e,i,c){const a=t.ref(),r=t.ref(!1),u=t.ref(),d=t.ref(!1);function g(){const y=a.value;y&&y.show(c.value)}async function p(){r.value=!r.value,await t.nextTick(),g()}function f(){r.value=!1,i.emit("changeState",r.value)}function n(y){y.stopPropagation(),p(),i.emit("changeState",r.value)}function l(y,B){y.stopPropagation(),!B.disabled&&(r.value=!1,i.emit("change",{payload:y,button:B}),i.emit("click",{payload:y,button:B}))}function m(){r.value&&(u.value=setTimeout(()=>{d.value||f()},1e3))}function o(){u.value&&(clearTimeout(u.value),u.value=null)}function b(y){d.value=!0}function M(y){d.value=!1,m()}return{hidePopup:f,onClickDropdownButton:n,onClickDropdownMenuItem:l,onMouseleaveDropdownButton:m,onMouseenterDropdownButton:o,onMouseenterDropMenu:b,onMouseleaveDropMenu:M,popoverRef:a,shouldPopupContent:r,togglePopup:p}}function R(e,i,c){const{hidePopup:a,onClickDropdownMenuItem:r,popoverRef:u,onMouseenterDropMenu:d,onMouseleaveDropMenu:g}=c;function p(n){return t.createVNode(t.Fragment,null,[n.divider&&t.createVNode("div",{class:"dropdown-divider"},null),t.createVNode("div",{id:n.id,class:"dropdown-item"+(n.disabled?" disabled":""),onClick:l=>r(l,n)},[n.icon&&t.createVNode("i",{class:"f-icon dropdown-item-icon"+n.icon},null),t.createVNode("span",null,[n.text])])])}function f(n){return t.createVNode(j,{id:`${e.id}-popover`,ref:u,visible:!0,placement:e.placement,host:"body",fitContent:!0,onHidden:a,minWidth:120},{default:()=>[t.createVNode("div",{class:"bg-white",onMouseenter:d,onMouseleave:g},[n.map(l=>p(l))])]})}return{renderDropdownMenu:f}}function w(e,i){const c=t.ref(),a=t.ref(),r=G(e,i,a),{onMouseleaveDropdownButton:u,onMouseenterDropdownButton:d,onClickDropdownButton:g,shouldPopupContent:p}=r,{renderDropdownMenu:f}=R(e,c,r),n=()=>({"margin-bottom":"2px"});function l(m){return t.createVNode("div",{class:"btn-group f-btn-group-dropdown",ref:c,onMouseleave:u,onMouseenter:d,style:n},[t.createVNode("button",{ref:a,type:"button",class:"f-btn-dropdown",onClick:g},[t.createVNode("span",{class:"f-icon f-icon-lookup"},null)]),p.value&&f(m)])}return{renderDropdownButton:l}}const h=t.defineComponent({name:"FButtonGroup",props:v,emits:["click","change","changeState"],setup(e,i){const c=t.ref(),a=e.data&&e.data.slice(0,e.count)||[],r=e.data&&e.data.slice(e.count)||[],u=o=>o.type||e.type,d=o=>o.disabled!==void 0?o.disabled:e.disabled,g=function(o){const b={"f-btn-ml":(o.type&&o.type!=="link"||e.type!=="link")&&e.mode==="default","btn-link":!o.type&&!e.type||e.type==="link"||o.type==="link"},M=o.type?o.type:e.type&&e.type!=="link"?e.type:"";return M&&(b[`btn-${M}`]=!0),b},p=function(){return{"position-relative":!0,"btn-group":e.mode==="group","f-btn-group-links":e.type==="link"}},f=()=>({display:"inline-flex","vertical-align":"middle","margin-bottom":"2px"});function n(o,b){i.emit("change",{payload:o,button:b}),i.emit("click",{payload:o,button:b})}function l(o){return t.createVNode(C.FButton,{disabled:d(o),id:o.id,icon:o.icon,size:e.size,type:u(o),customClass:g(o),onClick:b=>n(b,o)},{default:()=>[o.text]})}const{renderDropdownButton:m}=w(e,i);return()=>t.createVNode("div",{class:"f-btn-group",style:"position:relative;",ref:c},[t.createVNode("div",{class:p(),style:f()},[a.map(o=>l(o))]),!!r.length&&m(r)])}}),F=t.defineComponent({name:"FButtonGroupDesign",props:v,emits:["click","changeState","change","clickMenuOut"],setup(e,i){const c=t.ref(),a=t.inject("design-item-context"),r=N.useDesignerComponent(c,a);t.onMounted(()=>{c.value.componentInstance=r}),i.expose(r.value);const u=e.data&&e.data.slice(0,e.count)||[],d=e.data&&e.data.slice(e.count)||[],g=function(n){const l={btn:!0,"f-btn-ml":n.type&&n.type!=="link","btn-link":!!n.icon||!n.type,"btn-icontext":!!n.icon,disabled:n.disabled};return n.type&&(l[`btn-${n.type}`]=!0),l};function p(n){return t.createVNode("div",null,[t.createVNode("button",{type:"button",id:n.id,title:n.id,class:g(n)},[n.icon&&t.createVNode("i",{class:`f-icon ${n.icon}`},null),!n.icon&&n.text])])}const{renderDropdownButton:f}=w(e,i);return()=>t.createVNode("div",{class:"f-btn-group",style:"position:relative;",ref:c},[t.createVNode("div",{class:(e.size==="large"?"btn-group-lg":"btn-group-sm")+" btn-group f-btn-group-links"},[u.map(n=>p(n))]),!!d.length&&f(d)])}});h.register=(e,i,c,a)=>{e["button-group"]=h,i["button-group"]=k},h.registerDesigner=(e,i,c)=>{e["button-group"]=F,i["button-group"]=k};const q=V.withInstall(h);s.FButtonGroup=h,s.buttonGroupProps=v,s.default=q,s.propsResolver=k,Object.defineProperties(s,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
1
+ (function(s,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("vue"),require("../button/index.umd.js"),require("../common/index.umd.js"),require("../dynamic-resolver/index.umd.js"),require("../popover/index.umd.js"),require("../designer-canvas/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","../button/index.umd.js","../common/index.umd.js","../dynamic-resolver/index.umd.js","../popover/index.umd.js","../designer-canvas/index.umd.js"],t):(s=typeof globalThis<"u"?globalThis:s||self,t(s["button-group"]={},s.Vue,s.button,s.common,s.dynamicResolver,s.FPopover,s.designerCanvas))})(this,function(s,t,j,B,w,N,V){"use strict";const x={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/button-group.schema.json",title:"button-group",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for button-group",type:"string"},type:{description:"The type string of button-group",type:"string",default:"button-group"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disable:{type:"string",default:!1},editable:{description:"",type:"boolean",default:!0},placeholder:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},require:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},visible:{description:"",type:"boolean",default:!0}},required:["id","type"]};function P(e,i,a){return i}const S=new Map([["appearance",w.resolveAppearance]]),$={title:"button-group",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:[]}}}}}},v={id:String,data:{type:Array,default:[]},disabled:{type:Boolean,default:!1},count:{type:Number,default:2},mode:{type:String,default:"default"},size:{type:String,default:"middle"},type:{type:String,default:"primary"},placement:{type:String,default:"bottom-left"}},D=w.createPropsResolver(v,x,S,P,$);function G(e,i,a){const c=t.ref(),r=t.ref(!1),d=t.ref(),u=t.ref(!1);function g(){const y=c.value;y&&y.show(a.value)}async function p(){r.value=!r.value,await t.nextTick(),g()}function f(){r.value=!1,i.emit("changeState",r.value)}function n(y){y.stopPropagation(),p(),i.emit("changeState",r.value)}function l(y,k){y.stopPropagation(),!k.disabled&&(r.value=!1,i.emit("change",{payload:y,button:k}),i.emit("click",{payload:y,button:k}))}function m(){r.value&&(d.value=setTimeout(()=>{u.value||f()},1e3))}function o(){d.value&&(clearTimeout(d.value),d.value=null)}function b(y){u.value=!0}function M(y){u.value=!1,m()}return{hidePopup:f,onClickDropdownButton:n,onClickDropdownMenuItem:l,onMouseleaveDropdownButton:m,onMouseenterDropdownButton:o,onMouseenterDropMenu:b,onMouseleaveDropMenu:M,popoverRef:c,shouldPopupContent:r,togglePopup:p}}function R(e,i,a){const{hidePopup:c,onClickDropdownMenuItem:r,popoverRef:d,onMouseenterDropMenu:u,onMouseleaveDropMenu:g}=a;function p(n){return t.createVNode(t.Fragment,null,[n.divider&&t.createVNode("div",{class:"dropdown-divider"},null),t.createVNode("div",{id:n.id,class:"dropdown-item"+(n.disabled?" disabled":""),onClick:l=>r(l,n)},[n.icon&&t.createVNode("i",{class:"f-icon dropdown-item-icon"+n.icon},null),t.createVNode("span",null,[n.text])])])}function f(n){return t.createVNode(N,{id:`${e.id}-popover`,ref:d,visible:!0,placement:e.placement,host:"body",fitContent:!0,onHidden:c,minWidth:120},{default:()=>[t.createVNode("div",{class:"bg-white",onMouseenter:u,onMouseleave:g},[n.map(l=>p(l))])]})}return{renderDropdownMenu:f}}function C(e,i){const a=t.ref(),c=t.ref(),r=G(e,i,c),{onMouseleaveDropdownButton:d,onMouseenterDropdownButton:u,onClickDropdownButton:g,shouldPopupContent:p}=r,{renderDropdownMenu:f}=R(e,a,r),n=()=>({"margin-bottom":"2px"});function l(m){return t.createVNode("div",{class:"btn-group f-btn-group-dropdown",ref:a,onMouseleave:d,onMouseenter:u,style:n},[t.createVNode("button",{ref:c,type:"button",class:"f-btn-dropdown",onClick:g},[t.createVNode("span",{class:"f-icon f-icon-lookup"},null)]),p.value&&f(m)])}return{renderDropdownButton:l}}const h=t.defineComponent({name:"FButtonGroup",props:v,emits:["click","change","changeState"],setup(e,i){const a=t.ref(),c=e.data&&e.data.slice(0,e.count)||[],r=e.data&&e.data.slice(e.count)||[],d=o=>o.type||e.type,u=o=>o.disabled!==void 0?o.disabled:e.disabled,g=function(o){const b={"f-btn-ml":(o.type&&o.type!=="link"||e.type!=="link")&&e.mode==="default","btn-link":!o.type&&!e.type||e.type==="link"||o.type==="link"},M=o.type?o.type:e.type&&e.type!=="link"?e.type:"";return M&&(b[`btn-${M}`]=!0),b},p=function(){return{"position-relative":!0,"btn-group":e.mode==="group","f-btn-group-links":e.type==="link"}},f=()=>({display:"inline-flex","vertical-align":"middle","margin-bottom":"2px"});function n(o,b){i.emit("change",{payload:o,button:b}),i.emit("click",{payload:o,button:b})}function l(o){return t.createVNode(j.FButton,t.mergeProps({disabled:u(o)},B.extractDataAttrs(o),{id:o.id,icon:o.icon,size:e.size,type:d(o),customClass:g(o),onClick:b=>n(b,o)}),{default:()=>[o.text]})}const{renderDropdownButton:m}=C(e,i);return()=>t.createVNode("div",{class:"f-btn-group",style:"position:relative;",ref:a},[t.createVNode("div",{class:p(),style:f()},[c.map(o=>l(o))]),!!r.length&&m(r)])}}),F=t.defineComponent({name:"FButtonGroupDesign",props:v,emits:["click","changeState","change","clickMenuOut"],setup(e,i){const a=t.ref(),c=t.inject("design-item-context"),r=V.useDesignerComponent(a,c);t.onMounted(()=>{a.value.componentInstance=r}),i.expose(r.value);const d=e.data&&e.data.slice(0,e.count)||[],u=e.data&&e.data.slice(e.count)||[],g=function(n){const l={btn:!0,"f-btn-ml":n.type&&n.type!=="link","btn-link":!!n.icon||!n.type,"btn-icontext":!!n.icon,disabled:n.disabled};return n.type&&(l[`btn-${n.type}`]=!0),l};function p(n){return t.createVNode("div",null,[t.createVNode("button",{type:"button",id:n.id,title:n.id,class:g(n)},[n.icon&&t.createVNode("i",{class:`f-icon ${n.icon}`},null),!n.icon&&n.text])])}const{renderDropdownButton:f}=C(e,i);return()=>t.createVNode("div",{class:"f-btn-group",style:"position:relative;",ref:a},[t.createVNode("div",{class:(e.size==="large"?"btn-group-lg":"btn-group-sm")+" btn-group f-btn-group-links"},[d.map(n=>p(n))]),!!u.length&&f(u)])}});h.register=(e,i,a,c)=>{e["button-group"]=h,i["button-group"]=D},h.registerDesigner=(e,i,a)=>{e["button-group"]=F,i["button-group"]=D};const q=B.withInstall(h);s.FButtonGroup=h,s.buttonGroupProps=v,s.default=q,s.propsResolver=D,Object.defineProperties(s,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
@@ -4031,11 +4031,14 @@ function Ga() {
4031
4031
  peekNativeGoBackFunction: n
4032
4032
  };
4033
4033
  }
4034
+ function Ua(t) {
4035
+ return t ? Object.keys(t).reduce((r, e) => (e.startsWith("data-") && (r[e] = t[e]), r), {}) : {};
4036
+ }
4034
4037
  const Qe = 5;
4035
4038
  function sa(t, r) {
4036
4039
  return t > r ? "horizontal" : r > t ? "vertical" : "";
4037
4040
  }
4038
- function Ua() {
4041
+ function Va() {
4039
4042
  const t = k(0), r = k(0), e = k(0), n = k(0), a = k(0), i = k(0), o = k(""), s = k(!0), u = () => o.value === "vertical", m = () => o.value === "horizontal", p = () => {
4040
4043
  e.value = 0, n.value = 0, a.value = 0, i.value = 0, o.value = "", s.value = !0;
4041
4044
  };
@@ -4062,7 +4065,7 @@ function Ua() {
4062
4065
  isTap: s
4063
4066
  };
4064
4067
  }
4065
- const Va = (t) => {
4068
+ const Za = (t) => {
4066
4069
  const { maxOverflowY: r = 0, TimeThreshold: e = 200, YThreshold: n = 88 } = t;
4067
4070
  let a = 0, i = 0, o = 0;
4068
4071
  return {
@@ -4100,7 +4103,7 @@ const Va = (t) => {
4100
4103
  };
4101
4104
  }
4102
4105
  };
4103
- }, Za = (t) => {
4106
+ }, Ka = (t) => {
4104
4107
  const { isArray: r, camelToKebabCase: e } = aa(), n = e(t), a = (s) => {
4105
4108
  if (!s)
4106
4109
  return n;
@@ -4116,7 +4119,7 @@ const Va = (t) => {
4116
4119
  getModifierClass: i
4117
4120
  };
4118
4121
  };
4119
- function Ka(t) {
4122
+ function Ja(t) {
4120
4123
  return t.match(/\.(jpeg|jpg|gif|png|svg|bmp|webp)$/) != null;
4121
4124
  }
4122
4125
  function ua(t) {
@@ -4125,11 +4128,11 @@ function ua(t) {
4125
4128
  function ca(t) {
4126
4129
  return !(!t || ua(t) || t.startsWith("http"));
4127
4130
  }
4128
- function Ja(t) {
4131
+ function ei(t) {
4129
4132
  const { basePath: r } = pt().value;
4130
4133
  return !ca(t) || !r ? t : (r.endsWith("/") ? r.slice(0, -1) : r) + (t.startsWith("/") ? "" : "/") + t;
4131
4134
  }
4132
- const ei = {
4135
+ const ti = {
4133
4136
  install(t) {
4134
4137
  t.directive("area-response", Me), t.directive("auto-title", At);
4135
4138
  },
@@ -4160,9 +4163,10 @@ export {
4160
4163
  At as autoTitleDirective,
4161
4164
  Na as cancelRequestAnimationFrame,
4162
4165
  va as compareDate,
4163
- ei as default,
4166
+ ti as default,
4164
4167
  Wa as encrypt,
4165
4168
  $a as excludeProperties,
4169
+ Ua as extractDataAttrs,
4166
4170
  pa as formatDate,
4167
4171
  ba as formatObjecTime,
4168
4172
  jr as formatTime,
@@ -4176,16 +4180,16 @@ export {
4176
4180
  ye as globalRichTextEditorAssetsPath,
4177
4181
  Ba as hmacEncrypt,
4178
4182
  ua as isBase64ImageUrl,
4179
- Ka as isImageUrl,
4183
+ Ja as isImageUrl,
4180
4184
  Xr as isLeapYear,
4181
4185
  vt as isMobilePhone,
4182
4186
  Ha as radioCheckboxCommonProps,
4183
4187
  Ge as removeClass,
4184
4188
  Ra as resolveField,
4185
4189
  qa as setFieldValue,
4186
- Ja as urlPrependBasePath,
4190
+ ei as urlPrependBasePath,
4187
4191
  Fa as useArrayProcessor,
4188
- Za as useBem,
4192
+ Ka as useBem,
4189
4193
  Ia as useCheck,
4190
4194
  ga as useClear,
4191
4195
  aa as useCommonUtils,
@@ -4202,7 +4206,7 @@ export {
4202
4206
  wa as useTextBoxDesign,
4203
4207
  ja as useThirdComponent,
4204
4208
  Da as useTimeAgo,
4205
- Ua as useTouch,
4206
- Va as useTouchMomentum,
4209
+ Va as useTouch,
4210
+ Za as useTouchMomentum,
4207
4211
  Pa as withInstall
4208
4212
  };