UNPKG

@farris/ui-vue

Version:

Farris Vue, a Farris Design based Vue3 component library.

1 lines 344 kB
(function(te,o){typeof exports=="object"&&typeof module<"u"?o(exports,require("vue"),require("lodash-es"),require("../dynamic-resolver/index.umd.js"),require("../tags/index.umd.js"),require("../popover/index.umd.js"),require("../designer-canvas/index.umd.js"),require("../common/index.umd.js"),require("bignumber.js"),require("@vueuse/core"),require("../modal/index.umd.js"),require("../transfer/index.umd.js"),require("../tabs/index.umd.js"),require("../order/index.umd.js"),require("../condition/index.umd.js"),require("../checkbox/index.umd.js"),require("../filter-bar/index.umd.js"),require("../tooltip/index.umd.js"),require("../pagination/index.umd.js"),require("../button/index.umd.js"),require("../search-box/index.umd.js"),require("../dynamic-form/index.umd.js"),require("../data-view/index.umd.js"),require("../accordion/index.umd.js"),require("../avatar/index.umd.js"),require("../button-edit/index.umd.js"),require("../button-group/index.umd.js"),require("../calendar/index.umd.js"),require("../capsule/index.umd.js"),require("../color-picker/index.umd.js"),require("../combo-list/index.umd.js"),require("../content-container/index.umd.js"),require("../data-grid/index.umd.js"),require("../date-picker/index.umd.js"),require("../dropdown/index.umd.js"),require("../external-container/index.umd.js"),require("../events-editor/index.umd.js"),require("../image-cropper/index.umd.js"),require("../input-group/index.umd.js"),require("../layout/index.umd.js"),require("../list-nav/index.umd.js"),require("../list-view/index.umd.js"),require("../lookup/index.umd.js"),require("../nav/index.umd.js"),require("../number-spinner/index.umd.js"),require("../number-range/index.umd.js"),require("../page-header/index.umd.js"),require("../page-footer/index.umd.js"),require("../progress/index.umd.js"),require("../query-solution/index.umd.js"),require("../radio-group/index.umd.js"),require("../rate/index.umd.js"),require("../response-toolbar/index.umd.js"),require("../response-layout/index.umd.js"),require("../response-layout-editor/index.umd.js"),require("../section/index.umd.js"),require("../smoke-detector/index.umd.js"),require("../splitter/index.umd.js"),require("../step/index.umd.js"),require("../switch/index.umd.js"),require("../text/index.umd.js"),require("../time-picker/index.umd.js"),require("../tree-view/index.umd.js"),require("../uploader/index.umd.js"),require("../verify-detail/index.umd.js"),require("../component/index.umd.js"),require("../video/index.umd.js"),require("../textarea/index.umd.js"),require("../tree-grid/index.umd.js"),require("../fieldset/index.umd.js"),require("../drawer/index.umd.js"),require("../binding-selector/index.umd.js"),require("../notify/index.umd.js"),require("../combo-tree/index.umd.js"),require("../field-selector/index.umd.js"),require("../mapping-editor/index.umd.js"),require("../schema-selector/index.umd.js"),require("../event-parameter/index.umd.js"),require("../filter-condition-editor/index.umd.js"),require("../sort-condition-editor/index.umd.js"),require("../menu-lookup/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es","../dynamic-resolver/index.umd.js","../tags/index.umd.js","../popover/index.umd.js","../designer-canvas/index.umd.js","../common/index.umd.js","bignumber.js","@vueuse/core","../modal/index.umd.js","../transfer/index.umd.js","../tabs/index.umd.js","../order/index.umd.js","../condition/index.umd.js","../checkbox/index.umd.js","../filter-bar/index.umd.js","../tooltip/index.umd.js","../pagination/index.umd.js","../button/index.umd.js","../search-box/index.umd.js","../dynamic-form/index.umd.js","../data-view/index.umd.js","../accordion/index.umd.js","../avatar/index.umd.js","../button-edit/index.umd.js","../button-group/index.umd.js","../calendar/index.umd.js","../capsule/index.umd.js","../color-picker/index.umd.js","../combo-list/index.umd.js","../content-container/index.umd.js","../data-grid/index.umd.js","../date-picker/index.umd.js","../dropdown/index.umd.js","../external-container/index.umd.js","../events-editor/index.umd.js","../image-cropper/index.umd.js","../input-group/index.umd.js","../layout/index.umd.js","../list-nav/index.umd.js","../list-view/index.umd.js","../lookup/index.umd.js","../nav/index.umd.js","../number-spinner/index.umd.js","../number-range/index.umd.js","../page-header/index.umd.js","../page-footer/index.umd.js","../progress/index.umd.js","../query-solution/index.umd.js","../radio-group/index.umd.js","../rate/index.umd.js","../response-toolbar/index.umd.js","../response-layout/index.umd.js","../response-layout-editor/index.umd.js","../section/index.umd.js","../smoke-detector/index.umd.js","../splitter/index.umd.js","../step/index.umd.js","../switch/index.umd.js","../text/index.umd.js","../time-picker/index.umd.js","../tree-view/index.umd.js","../uploader/index.umd.js","../verify-detail/index.umd.js","../component/index.umd.js","../video/index.umd.js","../textarea/index.umd.js","../tree-grid/index.umd.js","../fieldset/index.umd.js","../drawer/index.umd.js","../binding-selector/index.umd.js","../notify/index.umd.js","../combo-tree/index.umd.js","../field-selector/index.umd.js","../mapping-editor/index.umd.js","../schema-selector/index.umd.js","../event-parameter/index.umd.js","../filter-condition-editor/index.umd.js","../sort-condition-editor/index.umd.js","../menu-lookup/index.umd.js"],o):(te=typeof globalThis<"u"?globalThis:te||self,o(te["mapping-editor"]={},te.Vue,te.LodashES,te.dynamicResolver,te.FTags,te.FPopover,te.designerCanvas,te.common,te.BigNumber,te.VueUseCore,null,te.FTransfer$1,te.FTabs,te.FOrder,null,te.FCheckbox,te.FFilterBar,te.FTooltip,te.FPagination,te.FButton,te.FSearchBox,te.FDynamicForm,te.dataView,te.FAccordion,te.FAvatar,te.FButtonEdit$1,te.FButtonGroup,te.FCalendar,te.FCapsule,te.FColorPicker,te.FComboList,te.FContentContainer,te.FDataGrid$1,te.FDatePicker,te.FDropdown,null,te.FEventsEditor,te.FImageCropper,te.FInputGroup,te.FLayout,te.FListNav,te.FListView$1,te.FLookup,te.FNav,te.FNumberSpinner,te.FNumberRange,te.FPageHeader,te.FPageFooter,te.FProgress,te.FQuerySolution,te.FRadioGroup,te.FRate,te.FResponseToolbar,te.FResponseLayout,te.FResponseLayoutEditorSetting,te.FSection,te.FSmokeDetector,te.FSplitter,te.FStep,te.FSwitch,te.FText,te.FTimePicker,te.FTreeview,te.FUploader,te.FVerifyDetail,te.FComponent,te.FVideo,te.FTextArea,te.FTreeGrid$1,te.FFieldset,te.FDrawer,te.FBindingSelector,null,te.FComboTree,te.FFieldSelector,te.FMappingEditor,te.FSchemaSelector,te.FEventParameter,te.FFilterConditionEditor,te.FSortConditionEditor,te.FMenuLookup))})(this,function(te,o,Le,dn,un,Do,Wt,Ne,$s,Bt,Ps,Lo,Ho,Ao,Os,Ft,Wo,fn,Go,qo,zo,Gt,ae,Uo,Yo,Xo,Jo,Ko,Qo,Zo,qt,ei,ti,ni,oi,js,ii,ri,ai,li,si,ci,di,ui,fi,pi,mi,hi,gi,yi,vi,bi,Ci,wi,Si,xi,Fi,Ti,Mi,_i,Ii,Vi,pn,ki,Ni,Ei,Bi,$i,Pi,Oi,ji,Ri,Rs,Di,Li,Hi,Ai,Wi,Gi,qi,zi){"use strict";var Es=Object.defineProperty;var Bs=(te,o,Le)=>o in te?Es(te,o,{enumerable:!0,configurable:!0,writable:!0,value:Le}):te[o]=Le;var G=(te,o,Le)=>Bs(te,typeof o!="symbol"?o+"":o,Le);const mn={},hn={};function zt(t){const{properties:e,title:n,ignore:i}=t,r=i&&Array.isArray(i),a=Object.keys(e).reduce((l,s)=>((!r||!i.find(c=>c===s))&&(l[s]=e[s].type==="object"&&e[s].properties?zt(e[s]):Le.cloneDeep(e[s].default)),l),{});if(n&&(!r||!i.find(l=>l==="id"))){const l=n.toLowerCase().replace(/-/g,"_");a.id=`${l}_${Math.random().toString().slice(2,6)}`}return a}function Ui(t){const{properties:e,title:n,required:i}=t;if(i&&Array.isArray(i)){const r=i.reduce((a,l)=>(a[l]=e[l].type==="object"&&e[l].properties?zt(e[l]):Le.cloneDeep(e[l].default),a),{});if(n&&i.find(a=>a==="id")){const a=n.toLowerCase().replace(/-/g,"_");r.id=`${a}_${Math.random().toString().slice(2,6)}`}return r}return{type:n}}function gn(t,e={},n){const i=mn[t];if(i){let r=Ui(i);const a=hn[t];return r=a?a({getSchemaByType:gn},r,e,n):r,r}return null}function Yi(t,e){const n=zt(e);return Object.keys(n).reduce((i,r)=>(Object.prototype.hasOwnProperty.call(t,r)&&(i[r]&&Le.isPlainObject(i[r])&&Le.isPlainObject(t[r]||!t[r])?Object.assign(i[r],t[r]||{}):i[r]=t[r]),i),n),n}function yn(t,e){return Object.keys(t).filter(i=>t[i]!=null).reduce((i,r)=>{if(e.has(r)){const a=e.get(r);if(typeof a=="string")i[a]=t[r];else{const l=a(r,t[r],t);Object.assign(i,l)}}else i[r]=t[r];return i},{})}function Xi(t,e,n=new Map){const i=Yi(t,e);return yn(i,n)}function Ji(t={}){function e(f,p,d,u){if(typeof d=="number")return u[f].length===d;if(typeof d=="object"){const g=Object.keys(d)[0],y=d[g];if(g==="not")return Number(u[f].length)!==Number(y);if(g==="moreThan")return Number(u[f].length)>=Number(y);if(g==="lessThan")return Number(u[f].length)<=Number(y)}return!1}function n(f,p,d,u){return u[f]&&u[f].propertyValue&&String(u[f].propertyValue.value)===String(d)}const i=new Map([["length",e],["getProperty",n]]);Object.keys(t).reduce((f,p)=>(f.set(p,t[p]),f),i);function r(f,p){const d=f;return typeof p=="number"?[{target:d,operator:"length",param:null,value:Number(p)}]:typeof p=="boolean"?[{target:d,operator:"getProperty",param:f,value:!!p}]:typeof p=="object"?Object.keys(p).map(u=>{if(u==="length")return{target:d,operator:"length",param:null,value:p[u]};const g=u,y=p[u];return{target:d,operator:"getProperty",param:g,value:y}}):[]}function a(f){return Object.keys(f).reduce((d,u)=>{const g=r(u,f[u]);return d.push(...g),d},[])}function l(f,p){if(i.has(f.operator)){const d=i.get(f.operator);return d&&d(f.target,f.param,f.value,p)||!1}return!1}function s(f,p){return a(f).reduce((g,y)=>g&&l(y,p),!0)}function c(f,p){const d=Object.keys(f),u=d.includes("allOf"),g=d.includes("anyOf"),y=u||g,v=(y?f[y?u?"allOf":"anyOf":"allOf"]:[f]).map(M=>s(M,p));return u?!v.includes(!1):v.includes(!0)}return{parseValueSchema:c}}const se={button:{type:"button",name:"按钮"},"response-toolbar":{type:"response-toolbar",name:"工具栏"},"response-toolbar-item":{type:"response-toolbar-item",name:"按钮"},"content-container":{type:"content-container",name:"容器"},"input-group":{type:"input-group",name:"文本"},textarea:{type:"textarea",name:"多行文本"},lookup:{type:"lookup",name:"帮助"},"number-spinner":{type:"number-spinner",name:"数值"},"date-picker":{type:"date-picker",name:"日期"},switch:{type:"switch",name:"开关"},"radio-group":{type:"radio-group",name:"单选组"},"check-box":{type:"check-box",name:"复选框"},"check-group":{type:"check-group",name:"复选框组"},"combo-list":{type:"combo-list",name:"下拉列表"},"response-form":{type:"response-form",name:"卡片面板"},"response-layout":{type:"response-layout",name:"布局容器",icon:"response-layout-3"},"response-layout-item":{type:"response-layout-item",name:"布局",icon:"response-layout-1"},"tree-grid":{type:"tree-grid",name:"树表格"},"tree-grid-column":{type:"tree-grid-column",name:"树表格列"},"data-grid":{type:"data-grid",name:"表格"},"data-grid-column":{type:"data-grid-column",name:"表格列"},module:{type:"Module",name:"模块"},component:{type:"component",name:"组件"},tabs:{type:"tabs",name:"标签页"},"tab-page":{type:"tab-page",name:"标签页项",dependentParentControl:"Tab"},"tab-toolbar-item":{type:"tab-toolbar-item",name:"标签页工具栏按钮"},"time-picker":{type:"time-picker",name:"时间选择"},section:{type:"section",name:"分组面板"},"section-toolbar":{type:"section-toolbar",name:"分组面板工具栏"},"section-toolbar-item":{type:"section-toolbar-item",name:"分组面板按钮"},splitter:{type:"splitter",name:"分栏面板"},"splitter-pane":{type:"splitter-pane",name:"分栏面板项",dependentParentControl:"Splitter"},"component-ref":{type:"component-ref",name:"组件引用节点"},uploader:{type:"uploader",name:"附件上传"},"page-header":{type:"page-header",name:"页头"},"page-footer":{type:"page-footer",name:"页脚"},"tab-toolbar":{type:"tab-toolbar",name:"标签页工具栏"},fieldset:{type:"fieldset",name:"分组"},"query-solution":{type:"query-solution",name:"筛选方案"},drawer:{type:"drawer",name:"抽屉"}},Ki={},Qi={};Ji();function Ue(t,e,n=new Map,i=(l,s,c,f)=>s,r={},a=l=>l){return mn[e.title]=e,hn[e.title]=i,Ki[e.title]=r,Qi[e.title]=a,(l={},s=!0)=>{if(!s)return yn(l,n);const c=Xi(l,e,n),f=Object.keys(t).reduce((p,d)=>(p[d]=t[d].default,p),{});return Object.assign(f,c)}}function ht(t,e){return{customClass:e.class,customStyle:e.style}}function Zi(){function t(e,n){const{id:i}=e||{},{dataSource:r}=e||{};return r===void 0?{}:{data:n.getValue(i),"onUpdate:data":(...a)=>{}}}return{resolve:t}}function er(){function t(e,n){const{dataSource:i}=e||{};return i===void 0?{}:{}}return{resolve:t}}function tr(){function t(e,n){return e.selectItemById(n)}return{selectItemById:t}}function nr(){function t(e,n){return e.selectItemById(n)}return{selectItemById:t}}function vn(){function t(e,n){const{columns:i}=n;return e.updateColumns(i)}return{updateColumns:t}}const or=new Map([["appearance",dn.resolveAppearance]]);function ir(t,e,n){return e}const rr={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/button-edit.schema.json",title:"button-edit",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a Input Group",type:"string"},type:{description:"The type string of Input Group component",type:"string",default:"button-edit"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disable:{type:"string",default:!1},editable:{description:"",type:"boolean",default:!0},enableLinkLabel:{description:"",type:"boolean",default:!1},label:{description:"",type:"string",default:""},lableWidth:{description:"",type:"number"},placeholder:{description:"",type:"string",default:""},forcePlaceholder:{description:"",type:"boolean",default:!1},readonly:{description:"",type:"boolean",default:!1},require:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},textAlign:{description:"",type:"string",enum:["left","middle","right"],default:"left"},visible:{description:"",type:"boolean",default:!0},onBlur:{description:"",type:"string",default:""},onClickLinkLabel:{description:"",type:"sting",default:""},autoComplete:{description:"",type:"boolean",default:!1},buttonContent:{description:"",type:"string",default:""},enableClear:{description:"",type:"boolean",default:!0},inputType:{description:"",type:"string",enum:["text","tag"],default:"text"},multiSelect:{description:"",type:"boolean",default:!1},popup:{description:"",type:"object",properties:{footerButtons:{type:"array",default:[]},height:{type:"number",default:600},dataMapping:{type:"object"},contents:{type:"array",default:[]},showMaxButton:{type:"boolean",default:!0},showCloseButton:{type:"boolean",default:!0},showFooter:{type:"boolean",default:!0},title:{type:"string",default:""},width:{type:"number",default:800}}},popupClass:{description:"",type:"sting",default:""},separator:{type:"string",default:","},showButtonWhenDisabled:{description:"",type:"boolean",default:!1},wrapText:{type:"boolean",default:!1},onClear:{description:"",type:"string",default:""}},required:["id","type"]},ar={title:"buttonEdit",description:"A Farris Component",type:"object",categories:{basic:{description:"Basic Infomation",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"waiting for modification",enum:[]}}}},behavior:{description:"Basic Infomation",title:"行为",properties:{editable:{description:"",title:"允许编辑",type:"boolean"},readonly:{description:"",title:"只读",type:"string"},required:{description:"",title:"必填",type:"boolean"},visible:{description:"",title:"可见",type:"boolean"},placeholder:{description:"",title:"提示文本",type:"string"},tabindex:{description:"",title:"tab索引",type:"number"},textAlign:{description:"",title:"对齐方式",type:"enum",editor:{type:"combo-list",textField:"name",valueField:"value",data:[{value:"left",name:"左对齐"},{value:"center",name:"居中"},{value:"right",name:"右对齐"}]}}}}}},Ut={id:String,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},enableTitle:{type:Boolean,default:!1},inputType:{type:String,default:"text"},forcePlaceholder:{type:Boolean,default:!1},placeholder:{type:String,default:""},minLength:Number,maxLength:Number,tabIndex:Number,popupHost:{type:Object},popupRightBoundary:{type:Object},popupOffsetX:{type:Object},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"},preventScroll:{type:Boolean,default:!1}},bn=Ue(Ut,rr,or,ir,ar),lr={popupContentPosition:{type:Object,default:{left:0,top:0}},host:{type:Object},backgroundColor:{type:String,default:""}},sr=o.defineComponent({name:"FOverlay",props:lr,emits:["click"],setup(t,e){const n=o.ref(t.popupContentPosition),i=o.ref(t.host),r=o.computed(()=>({backgroundColor:t.backgroundColor||"",pointerEvents:"auto"}));function a(s){e.emit("click"),s.preventDefault(),s.stopPropagation()}o.computed(()=>{const s=i.value;if(s){const c=s.getBoundingClientRect(),{left:f,top:p,height:d}=c;return{left:f,top:p+d}}return n.value});const l=o.computed(()=>({}));return()=>o.createVNode(o.Teleport,{to:"body"},{default:()=>{var s,c;return[o.createVNode("div",{class:"overlay-container",onClick:f=>a(f),style:r.value},[o.createVNode("div",{style:l.value},[(c=(s=e.slots).default)==null?void 0:c.call(s)])])]}})}});function cr(t){if(t.content&&t.content.render)return t.content.render;if(t.render&&typeof t.render=="function")return t.render}function dr(t){const e=document.createElement("div");e.style.display="contents";let n;const i=t.onClickCallback||(()=>{}),r=()=>{i(),n&&n.unmount()};return n=o.createApp({setup(){o.onUnmounted(()=>{document.body.removeChild(e)});const a=cr(t);return()=>o.createVNode(sr,{"popup-content-position":t.popupPosition,host:t.host,onClick:r,backgroundColor:t.backgroundColor},{default:()=>[a&&a()]})}}),document.body.appendChild(e),n.mount(e),n}class ur{static show(e){return dr(e)}}const fr={class:{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},showHeader:{type:Boolean,default:!0},showButtons:{type:Boolean,default:!0},fitContent:{type:Boolean,default:!0},showCloseButton:{type:Boolean,default:!0},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},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}};class He{constructor(e,n){this.x=e,this.y=n}static getTransformInfo(e){const i=window.getComputedStyle(e).getPropertyValue("transform").replace(/[^-\d,]/g,"").split(",");if(i.length>=6){const r=parseInt(i[4],10),a=parseInt(i[5],10);return{x:r,y:a}}return{x:0,y:0}}static fromEvent(e,n=null){if(this.isMouseEvent(e))return new He(e.clientX,e.clientY);if(n===null||e.changedTouches.length===1)return new He(e.changedTouches[0].clientX,e.changedTouches[0].clientY);for(let i=0;i<e.changedTouches.length;i++)if(e.changedTouches[i].target===n)return new He(e.changedTouches[i].clientX,e.changedTouches[i].clientY)}static isMouseEvent(e){return Object.prototype.toString.apply(e).indexOf("MouseEvent")===8}static isIPosition(e){return!!e&&"x"in e&&"y"in e}static getCurrent(e){const n=new He(0,0);if(window){const i=window.getComputedStyle(e);if(i){const r=parseInt(i.getPropertyValue("left"),10),a=parseInt(i.getPropertyValue("top"),10);n.x=isNaN(r)?0:r,n.y=isNaN(a)?0:a}return n}return null}static copy(e){return new He(0,0).set(e)}get value(){return{x:this.x,y:this.y}}add(e){return this.x+=e.x,this.y+=e.y,this}subtract(e){return this.x-=e.x,this.y-=e.y,this}multiply(e){this.x*=e,this.y*=e}divide(e){this.x/=e,this.y/=e}reset(){return this.x=0,this.y=0,this}set(e){return this.x=e.x,this.y=e.y,this}}class gt{constructor(e,n){this.width=e,this.height=n}static getCurrent(e){const n=new gt(0,0);if(window){const i=window.getComputedStyle(e);return i&&(n.width=parseInt(i.getPropertyValue("width"),10),n.height=parseInt(i.getPropertyValue("height"),10)),n}return null}static copy(e){return new gt(0,0).set(e)}set(e){return this.width=e.width,this.height=e.height,this}}function pr(t,e){const n=o.ref(),i=o.ref(),r=o.ref(),a=o.ref(),l=o.ref(),s=o.ref(),c=o.ref(),f=o.ref(),p=o.ref(),d=o.ref(),u=o.ref(),g=o.ref(),y=o.ref(t.draggable),I=o.ref(!1);function S(){const $=i.value||document.body,P=window.getComputedStyle($);if(!P||!n.value)return;const L=He.getTransformInfo(n.value),U={};c.value&&(U.deltaL=n.value.offsetLeft-c.value.x,U.deltaT=n.value.offsetTop-c.value.y);const oe=P.getPropertyValue("position");U.width=$.clientWidth,U.height=$.clientHeight,U.pr=parseInt(P.getPropertyValue("padding-right"),10),U.pb=parseInt(P.getPropertyValue("padding-bottom"),10),U.position=P.getPropertyValue("position"),oe==="static"&&($.style.position="relative"),U.translateX=L.x,U.translateY=L.y,d.value=U}function v($){if(n.value){a.value=gt.getCurrent(n.value),l.value=He.getCurrent(n.value),s.value=a.value?gt.copy(a.value):null,c.value=l.value?He.copy(l.value):null,S();const P=$.target.getAttribute("type")||"";f.value={n:!!P.match(/n/),s:!!P.match(/s/),w:!!P.match(/w/),e:!!P.match(/e/)}}}function C(){var $,P,L,U;if(n.value){const oe=n.value;f.value&&((f.value.n||f.value.s)&&(($=s.value)!=null&&$.height)&&(oe.style.height=s.value.height+"px"),(f.value.w||f.value.e)&&((P=s.value)!=null&&P.width)&&(oe.style.width=s.value.width+"px"),c.value&&((L=c.value)!=null&&L.x&&(oe.style.left=c.value.x+"px"),(U=c.value)!=null&&U.y&&(oe.style.top=c.value.y+"px")))}}function M(){const $=t.minHeight?t.minHeight:1,P=t.minWidth?t.minWidth:1;s.value&&c.value&&f.value&&a.value&&(s.value.height<$&&(s.value.height=$,f.value.n&&l.value&&(c.value.y=l.value.y+(a.value.height-$))),s.value.width<P&&(s.value.width=P,f.value.w&&l.value&&(c.value.x=l.value.x+(a.value.width-P))),t.maxHeight&&s.value.height>t.maxHeight&&(s.value.height=t.maxHeight,l.value&&f.value.n&&(c.value.y=l.value.y+(a.value.height-t.maxHeight))),t.maxWidth&&s.value.width>t.maxWidth&&(s.value.width=t.maxWidth,f.value.w&&l.value&&(c.value.x=l.value.x+(a.value.width-t.maxWidth))))}function h(){if(i.value){const $=d.value;if(c.value&&s.value&&f.value&&a.value){const P=$.width-$.pr-$.deltaL-$.translateX-c.value.x,L=$.height-$.pb-$.deltaT-$.translateY-c.value.y;f.value.n&&c.value.y+$.translateY<0&&l.value&&(c.value.y=-$.translateY,s.value.height=a.value.height+l.value.y+$.translateY),f.value.w&&c.value.x+$.translateX<0&&l.value&&(c.value.x=-$.translateX,s.value.width=a.value.width+l.value.x+$.translateX),s.value.width>P&&(s.value.width=P),s.value.height>L&&(s.value.height=L)}}}function F($){if(!r.value||!a.value||!l.value||!f.value)return;$.subtract(r.value);const P=$.x,L=$.y;f.value.n?(c.value.y=l.value.y+L,s.value.height=a.value.height-L):f.value.s&&(s.value.height=a.value.height+L),f.value.e?s.value.width=a.value.width+P:f.value.w&&(s.value.width=a.value.width-P,c.value.x=l.value.x+P),h(),M(),C()}function _($){if(!p.value)return;const P=He.fromEvent($);P&&F(P)}function m(){if(n.value){const{width:$,height:P,x:L,y:U}=n.value.getBoundingClientRect(),oe=He.getTransformInfo(n.value);return{size:{width:$,height:P},position:{x:L-oe.x,y:U-oe.y}}}return null}function x($){if(n.value){const P=m();u.value=P}r.value=void 0,a.value=null,l.value=null,s.value=null,c.value=null,f.value=null,p.value=null,document.removeEventListener("mousemove",_),document.removeEventListener("mouseup",x)}function b(){document.addEventListener("mousemove",_),document.addEventListener("mouseup",x)}function T($){$ instanceof MouseEvent&&$.button===2||y.value&&(document.body.click(),$.stopPropagation(),$.preventDefault(),r.value=He.fromEvent($),p.value=$.target,v($),b())}function w($){return n.value=$,o.createVNode(o.Fragment,null,[o.createVNode("div",{class:"fv-resizable-handle fv-resizable-n",type:"n",onMousedown:P=>T(P)},null),o.createVNode("div",{class:"fv-resizable-handle fv-resizable-e",type:"e",onMousedown:P=>T(P)},null),o.createVNode("div",{class:"fv-resizable-handle fv-resizable-s",type:"s",onMousedown:P=>T(P)},null),o.createVNode("div",{class:"fv-resizable-handle fv-resizable-w",type:"w",onMousedown:P=>T(P)},null),o.createVNode("div",{class:"fv-resizable-handle fv-resizable-ne",type:"ne",onMousedown:P=>T(P)},null),o.createVNode("div",{class:"fv-resizable-handle fv-resizable-se fv-resizable-diagonal",type:"se",onMousedown:P=>T(P)},null),o.createVNode("div",{class:"fv-resizable-handle fv-resizable-sw",type:"sw",onMousedown:P=>T(P)},null),o.createVNode("div",{class:"fv-resizable-handle fv-resizable-nw",type:"nw",onMousedown:P=>T(P)},null)])}function k($=!0){document.body.click();const P=i.value||document.body,L=gt.getCurrent(P),U=n.value;$&&U&&(g.value=m(),g.value.transform=U.style.transform),L&&U&&(s.value=L,U.style.height=s.value.height-14+"px",U.style.width=s.value.width-14+"px",U.style.left="7px",U.style.top="7px",U.style.transform="",u.value={size:s.value,position:{x:0,y:0}},y.value=!1,I.value=!0)}function B(){var $,P;if(document.body.click(),g.value){const L={width:g.value.size.width||0,height:g.value.size.height||0},U={x:(window.innerWidth-L.width)/2,y:(window.innerHeight-L.height)/2};($=s.value)==null||$.set(L),(P=c.value)==null||P.set(U);const oe=n.value;oe.style.height=L.height+"px",oe.style.width=L.width+"px",oe.style.left=`${U.x}px`,oe.style.top=`${U.y}px`,oe.style.transform="",u.value={size:L,position:U},y.value=t.draggable,I.value=!1}}function N(){if(n.value){const $=gt.getCurrent(n.value);if($){const{width:P,height:L}=$;n.value.style.left=`${(window.innerWidth-P)/2}px`,n.value.style.top=`${(window.innerHeight-L)/2}px`,n.value.style.transform=""}}}function V(){const $=()=>{I.value?k(!1):N(),document.body.click()};return window.addEventListener("resize",$),()=>{window.removeEventListener("resize",$)}}const E=V();return{renderResizeBar:w,boundingElement:i,resizedEventParam:u,maximize:k,restore:B,allowDrag:y,isMaximized:I,unWindowResizeHandle:E}}function mr(t,e,n){const i=o.ref(),r=o.ref(t.draggable),a=o.ref(t.lockAxis),l=o.ref(),s=o.ref(),c=o.ref(!1),f=o.ref(new He(0,0)),p=o.ref(new He(0,0)),d=o.ref(new He(0,0)),u=o.ref(new He(0,0));o.watch(()=>n.value,m=>{l.value.style.cursor=m?"move":"default"});function g(m,x){if(x.tagName==="BUTTON")return!1;if(x===m)return!0;for(const b in x.children)if(Object.prototype.hasOwnProperty.call(x.children,b)&&g(m,x.children[b]))return!0;return!1}function y(){var T,w;let m=d.value.x+p.value.x,x=d.value.y+p.value.y;a.value==="x"?(m=((T=f.value)==null?void 0:T.x)||0,d.value.x=0):a.value==="y"&&(x=((w=f.value)==null?void 0:w.y)||0,d.value.y=0);const b=`translate3d(${Math.round(m)}px, ${Math.round(x)}px, 0px)`;i.value&&(i.value.style.transform=b),u.value.x=m,u.value.y=x}function I(){if(!s.value||!i.value)return null;const m=s.value.getBoundingClientRect(),x=i.value.getBoundingClientRect(),b={top:m.top<x.top,right:m.right>x.right,bottom:m.bottom>x.bottom,left:m.left<x.left};return b.top||(d.value.y-=x.top-m.top),b.bottom||(d.value.y-=x.bottom-m.bottom),b.right||(d.value.x-=x.right-m.right),b.left||(d.value.x-=x.left-m.left),y(),b}function S(m){m&&(f.value&&m.subtract(f.value),d.value.set(m),y(),I())}function v(m){c.value&&r.value&&(m.stopPropagation(),m.preventDefault(),S(He.fromEvent(m,l.value)))}function C(){var m;c.value&&(c.value=!1,p.value.add(d.value),d.value.reset(),(m=i.value)==null||m.classList.remove("ng-dragging"),document.removeEventListener("mousemove",v),document.removeEventListener("mouseup",C))}function M(){!c.value&&l.value&&(c.value=!0,l.value.classList.add("ng-dragging"),document.addEventListener("mousemove",v),document.addEventListener("mouseup",C))}function h(){if(i.value){const m=He.getTransformInfo(i.value);p.value.set(m);return}p.value.reset()}function F(m){if(!n.value||m instanceof MouseEvent&&m.button===2)return;const x=m.target||m.srcElement;l.value!==void 0&&x&&!g(x,l.value)||r.value!==!1&&(document.body.click(),m.stopPropagation(),m.preventDefault(),f.value=He.fromEvent(m,i.value),h(),M())}function _(m,x,b){if(r.value&&x){if(m)l.value=m;else if(t.dragHandle){if(t.dragHandle instanceof HTMLElement)l.value=t.dragHandle;else if(typeof t.dragHandle=="string"){const T=x.querySelector(t.dragHandle);T&&(l.value=T)}}i.value=x,s.value=b,l.value?(l.value.classList.add("ng-draggable"),l.value.addEventListener("mousedown",F)):r.value=!1}}return{registerDraggle:_,resetTranslate:h}}function Cn(t,e){if(t){const n=i=>{i.key.toLowerCase()===t.toLowerCase()&&e({event:i,key:t})};return document.addEventListener("keydown",n),()=>{document.removeEventListener("keydown",n)}}}function hr(t,e){const n=o.ref(t.enableEsc);let i=null;return n.value?(i=Cn("Escape",r=>{e.emit("esc",{event:r.event,type:"esc"})}),{remove:i}):null}function gr(t,e){const n=o.ref(t.enableEnter);let i=null;return n.value?(i=Cn("Enter",r=>{e.emit("enter",{event:r.event,type:"enter"})}),{remove:i}):null}const Tt=o.defineComponent({name:"FModal",props:fr,emits:["update:modelValue","accept","cancel","closed","resize","esc","enter"],setup(t,e){const n=o.ref(t.width||300),i=o.ref(t.height||200),r=o.ref(t.modelValue),a=o.ref(""),l=o.ref(t.class),s=o.ref(t.fitContent),c=o.ref(t.showHeader),f=o.ref(""),p=o.ref(t.showCloseButton),d=o.ref(t.showMaxButton),u=o.ref(!1),g=o.ref(t.dialogType),y=o.ref(t.src),I=o.ref(""),S=o.ref(t.showButtons),v=o.ref(t.title),C=o.ref(t.resizeable),M=o.ref(t.containment||null),h=o.ref(),F=o.ref(!1);function _(z,J){r.value=!1,e.emit("update:modelValue",!1),J!=null&&e.emit(J?"accept":"cancel"),e.emit("closed",z)}const m=[{name:"cancel",text:"取消",class:"btn btn-secondary",handle:z=>{_(z,!1)}},{name:"accept",text:"确定",class:"btn btn-primary",handle:z=>{_(z,!0)}}],x=o.ref(t.buttons&&t.buttons.length?t.buttons:m),b=o.computed(()=>!!f.value),T=o.computed(()=>!!S.value&&!!x.value),w=o.ref(),k=o.ref(),B=o.ref(!1),{renderResizeBar:N,maximize:V,restore:E,boundingElement:$,resizedEventParam:P,allowDrag:L,unWindowResizeHandle:U}=pr(t),{registerDraggle:oe}=mr(t,e,L);function Y(){return!!document.querySelectorAll(".farris-modal").length&&document.body.classList.contains("modal-open")}function ce(){const z=document.querySelectorAll(".farris-modal").length;(!z||z-1<=0)&&document.body.classList.remove("modal-open"),h.value&&h.value.classList.remove("show")}o.watch(()=>t.title,(z,J)=>{z!==J&&(v.value=z)}),o.watch(()=>t.modelValue,(z,J)=>{z!==J&&(r.value=z,z||ce()),r.value&&(F.value=Y())}),o.watch(()=>t.showHeader,(z,J)=>{z!==J&&(c.value=z)}),o.watch(()=>t.showButtons,(z,J)=>{z!==J&&(S.value=z)}),o.watch(()=>P.value,(z,J)=>{const Te=z||{},Pe=J||{};JSON.stringify(Te)!==JSON.stringify(Pe)&&e.emit("resize",{newSize:z,oldSize:J})});const R=o.computed(()=>(r.value&&document.body.classList.add("modal-open"),r.value)),j=o.computed(()=>{const z={modal:!0,"farris-modal":!0,fade:!0};return z["f-modal-fitContent"]=!!s.value,z.show=!!R.value,z}),H=o.computed(()=>{var Te;const z={"modal-dialog":!0},J=(Te=l.value)==null?void 0:Te.split(" ");return J==null||J.reduce((Pe,Ee)=>(Pe[Ee]=!0,Pe),z),z}),A=o.computed(()=>({position:"absolute",top:`${(window.innerHeight-i.value)/2}px`,left:`${(window.innerWidth-n.value)/2}px`,width:`${n.value}px`,height:s.value?"auto":`${i.value}px`})),Z=o.computed(()=>({"modal-content":!0,"modal-content-has-header":c.value})),X=o.computed(()=>{const z={display:c.value?"":"none"};return z["pointer-events"]=L.value?"auto":"none",z}),O=o.computed(()=>({"f-icon":!0,modal_maximize:!0,modalrevert:B.value})),W=o.computed(()=>({"modal-body":!0,"f-utils-flex-column":g.value==="iframe","f-utils-fill":!0}));function re(){return{height:`${t.footerHeight||60}px`}}const ne=o.computed(()=>{const z={textAlgin:I.value},J=re();return Object.assign(z,J)});function ee(z){if(z.stopPropagation(),B.value){B.value=!1,E();return}V(),B.value=!0}async function Ie(z,J){z.handle&&await z.handle(J,z)&&e.emit("closed",J)}function Me(z){z.width&&(n.value=z.width),z.height&&(i.value=z.height),z.buttons&&(x.value=z.buttons),z.title&&(v.value=z.title)}const Fe=o.computed(()=>{const z={display:"inline-block"};return F.value&&(z["background-color"]="transparent"),z});let Re=null,$e=null;o.onBeforeMount(()=>{F.value=Y()}),o.onMounted(()=>{k.value&&!M.value&&(M.value=k.value.parentElement,$.value=M.value,oe(w.value,k.value,$.value)),R.value&&document.body.classList.add("modal-open"),Re=hr(t,e),$e=gr(t,e)}),o.onUnmounted(()=>{U&&U(),Re&&Re.remove(),$e&&$e.remove()}),e.expose({modalElementRef:k,updateModalOptions:Me,close:_,maxDialog:ee});function _e(){return o.createVNode("ul",null,[u.value&&o.createVNode("li",{class:"f-btn-icon f-bare"},[o.createVNode("span",{class:"f-icon modal_minimize"},null)]),d.value&&o.createVNode("li",{onClick:ee,class:"f-btn-icon f-bare",style:"pointer-events: auto;"},[o.createVNode("span",{class:O.value},null)]),p.value&&o.createVNode("li",{class:"f-btn-icon f-bare",onClick:z=>_(z,!1),style:"pointer-events: auto;"},[o.createVNode("span",{class:"f-icon modal_close"},null)])])}function De(){return o.createVNode("div",{class:"modal-footer",style:ne.value},[x.value&&x.value.map(z=>o.createVNode("button",{name:z.name,type:"button",class:z.class+(z.iconClass?" btn-icontext":""),onClick:J=>{Ie(z,J)}},[!!z.iconClass&&o.createVNode("i",{class:z.iconClass},null),z.text]))])}function Q(){return o.createVNode("div",{ref:w,class:"modal-header",style:X.value},[o.createVNode("div",{class:"modal-title"},[b.value&&o.createVNode("span",{class:f.value,style:"margin-right: 8px"},null),o.createVNode("span",{class:"modal-title-label"},[v.value])]),o.createVNode("div",{class:"actions"},[_e()])])}function Se(z){z.stopPropagation()}return()=>o.createVNode(o.Teleport,{to:"body"},{default:()=>[R.value&&o.createVNode(o.Transition,{name:"fade",appear:!0},{default:()=>{var z,J;return[o.createVNode("div",{class:j.value,style:Fe.value,ref:h,onClick:Se},[o.createVNode("div",{id:a.value,class:H.value,style:A.value,ref:k},[o.createVNode("div",{class:Z.value},[c.value&&Q(),o.createVNode("div",{class:W.value},[(J=(z=e.slots).default)==null?void 0:J.call(z),g.value==="iframe"&&o.createVNode("iframe",{title:a.value,class:"f-utils-fill",width:"100%",frameborder:"0",src:y.value},null)]),T.value&&De()]),!s.value&&C.value&&k.value&&!B.value&&N(k.value)])])]}})]})}});function wn(t){if(t.content&&t.content.render)return t.content.render;if(t.render&&typeof t.render=="function")return t.render}function yr(t){const e=document.createElement("div");e.style.display="contents";const n=o.createApp({setup(i,r){o.onUnmounted(()=>{document.body.removeChild(e)});const a=o.ref(),l=o.ref(t.class||""),s=o.ref(!!t.showButtons),c=o.ref(!!t.showHeader),f=o.ref(t.showCloseButton==null?!0:t.showCloseButton),p=o.ref(!0),d=o.ref(t.title||""),u=t.acceptCallback||(()=>{}),g=t.rejectCallback||(()=>{}),y=t.closedCallback||(C=>{}),I=t.resizeHandle||(C=>{}),S=wn(t),v=C=>{p.value=!1,n.unmount(),y(C)};return o.onMounted(()=>{}),r.expose({modalRef:a}),()=>o.createVNode(Tt,{ref:a,class:l.value,modelValue:p.value,"onUpdate:modelValue":C=>p.value=C,title:d.value,width:t.width,height:t.height,buttons:t.buttons,"show-header":c.value,"show-buttons":s.value,"show-close-button":f.value,"show-max-button":!1,onAccept:u,onCancel:g,fitContent:t.fitContent==null?!0:t.fitContent,onClosed:v,onResize:I},{default:()=>[S&&S(n)]})}});return document.body.appendChild(e),n.mount(e),n}class Sn{constructor(e){G(this,"appContext",null);G(this,"modalRef",o.ref());G(this,"activeModalIndex",o.ref(0));G(this,"modalRefs",{});G(this,"isUseEscCloseModal",o.ref(!1));G(this,"activeModalInstance",o.computed(()=>this.modalRefs[this.activeModalIndex.value]));this.app=e,this.appContext=e?e._context:null}getCurrentModal(){return this.activeModalInstance.value}adaptToWindow(e,n){const{width:i,height:r}={width:window.innerWidth,height:window.innerHeight};return i<e&&(e=i),r<n&&(n=r),{width:e,height:n}}static show(e){const n=Object.assign({title:"",showButtons:!0,showHeader:!0},e);return yr(n)}close(e){var n,i;e?(i=e.value)==null||i.close():(n=this.getCurrentModal())==null||n.close()}open(e){const n=document.createDocumentFragment();e.showMaxButton&&e.fitContent&&(e.showMaxButton=!1);const i=o.shallowRef(Object.assign({title:"",showButtons:!0,showHeader:!0},e)),r=o.ref(!0),a=i.value.acceptCallback||(()=>{}),l=i.value.rejectCallback||(()=>{}),s=i.value.closedCallback||((h,F)=>{}),c=i.value.resizeHandle||(h=>{});let f;const p=wn(i.value),d=h=>{var _;r.value=!1;const F=(_=h==null?void 0:h.target)==null?void 0:_.classList.contains("modal_close");s(h,this.isUseEscCloseModal.value?"esc":F?"icon":"button")},u=h=>{d(h),f&&o.nextTick(()=>{if(this.modalRefs[this.activeModalIndex.value]&&delete this.modalRefs[this.activeModalIndex.value],o.render(null,n),f=null,this.modalRef.value=null,this.modalRefs){const F=Object.keys(this.modalRefs).map(_=>Number(_));F.length>0?this.activeModalIndex.value=Math.max(...F):this.activeModalIndex.value=0}this.isUseEscCloseModal.value=!1})},g=h=>{var F;this.isUseEscCloseModal.value=!0,this.activeModalInstance&&((F=this.activeModalInstance.value)==null||F.close(h==null?void 0:h.event))},{width:y,height:I}=i.value,S=this.adaptToWindow(y||500,I||320);Object.assign(i.value,S);const v=()=>o.createVNode(Tt,o.mergeProps({ref:this.modalRef,modelValue:r.value,"onUpdate:modelValue":h=>r.value=h},i.value,{onAccept:a,onCancel:l,onClosed:u,onResize:c,onEsc:g}),{default:()=>[p&&p(this.app)]});return f=(h=>{const F=o.h(v,h);return F.appContext=this.appContext,o.render(F,n),F})({...i.value}),this.activeModalIndex.value++,this.modalRefs[this.activeModalIndex.value]=this.modalRef.value,{update:h=>{i.value={...i.value,...h},f&&o.render(o.cloneVNode(f,{...i}),n)},destroy:u,modalRef:this.activeModalInstance,close:this.close}}}const xn=Symbol("FModalService");Tt.install=t=>{t.component(Tt.name,Tt);const e=new Sn(t);t.provide(xn,e),t.provide("FModalService",e)};function Fn(t,e){function n(){const i=t.beforeOpen||t.beforeClickButton||null;let r=Promise.resolve(!0);if(i){const a=i(e.value);if(typeof a>"u")return r;typeof a=="boolean"?r=Promise.resolve(a):r=a}return r}return{judgeCanOpen:n}}function Tn(t,e,n,i,r){const a=o.ref(t.buttonBehavior),l=o.ref(t.popupOnInput),s=o.computed(()=>({"input-group-append":!0,"append-force-show":t.showButtonWhenDisabled&&(t.readonly||t.disable)})),{judgeCanOpen:c}=Fn(t,r),f=o.computed(()=>t.showButtonWhenDisabled||(!t.editable||!t.readonly)&&!t.disable),p=o.inject(xn,null),d=o.ref();async function u(I){if(await c()&&f.value){const S=!!e.slots.default;if(a.value==="Modal"){const v=t.modalOptions,C=p==null?void 0:p.open({...v,render:()=>e.slots.default&&e.slots.default()});d.value=C==null?void 0:C.modalRef}a.value==="Overlay"&&ur.show({host:document.body,backgroundColor:"rgba(0,0,0,.15)",render:()=>e.slots.default&&e.slots.default()}),S&&a.value==="Popup"&&i.togglePopup(!0),S&&l.value&&i.hidePopup(),e.emit("clickButton",{origin:I,value:t.modelValue})}}function g(I){e.emit("mouseEnterIcon",I)}function y(I){e.emit("mouseLeaveIcon",I)}return{buttonGroupClass:s,onClickButton:u,onMouseEnterButton:g,onMouseLeaveButton:y,modalRef:d}}function vr(t,e,n,i,r,a){const l=o.ref(!1),s=o.computed(()=>t.enableClear&&!t.readonly&&!t.disable),{changeTextBoxValue:c,hasClearClass:f}=a;function p(y){l.value=y,f.value=y}o.watch(r,()=>{p(!!r.value)});function d(y){const I=!t.readonly&&!t.disable&&t.editable,S=!t.editable;y.stopPropagation(),(I||S)&&(c(""),p(!l.value),e.emit("clear"))}function u(y){if(s.value){if(!n.value){p(!1);return}!t.disable&&!t.readonly&&p(!0)}}function g(y){s.value&&p(!1)}return{enableClearButton:s,showClearButton:l,onClearValue:d,onMouseEnterTextBox:u,onMouseLeaveTextBox:g}}function br(t,e,n,i,r){const a=o.computed(()=>t.popupOnInput),l=o.computed(()=>t.popupOnFocus),{shouldPopupContent:s}=r,c=o.ref(!1),f=o.computed(()=>t.enableTitle?n.value:""),p=o.computed(()=>(t.disable||t.readonly)&&!t.forcePlaceholder?"":t.placeholder),d=o.computed(()=>t.readonly||!t.editable),u=o.ref(!1),g=o.computed(()=>!t.disable&&u.value),y=o.computed(()=>({"text-left":t.textAlign==="left","text-center":t.textAlign==="center","text-right":t.textAlign==="right","form-control":!0,"f-utils-fill":!0})),I=o.computed(()=>({"input-group":!0,"f-state-disabled":t.disable,"f-state-editable":t.editable&&!t.disable&&!t.readonly,"f-state-readonly":t.readonly&&!t.disable,"f-state-focus":g.value,"input-group--has-clear":c.value}));function S(T,w=!0){n.value=T,w&&(e.emit("change",T),e.emit("update:modelValue",T))}function v(T){s.value=!1,S(T,!0)}o.watch(()=>t.modelValue,T=>{n.value=T});function C(T){u.value=!1,e.emit("blur",T),T.stopPropagation()}function M(T){e.emit("click",T),!t.disable&&!t.readonly&&t.popupOnClick&&(r.togglePopup(),document.body.click())}function h(T){t.disable||(u.value=!0,d.value||(e.emit("focus",T),l.value&&!s.value&&r.popup()))}function F(T){e.emit("input",T.target.value);const w=T.target.value;i.value=w,n.value!==w&&S(w,t.updateOn==="change"),a.value&&!s.value&&r.popup()}function _(T){T.target.tagName!=="INPUT"&&T.preventDefault(),T.stopPropagation()}function m(T){e.emit("keydown",T)}function x(T){T.key==="Enter"&&(a.value||l.value)&&r.hidePopup(),e.emit("keyup",T)}function b(T){const w=T.target.value;T.stopPropagation(),S(w)}return{hasFocusedTextBox:g,isTextBoxReadonly:d,textBoxClass:y,textBoxPlaceholder:p,textBoxTitle:f,inputGroupClass:I,hasClearClass:c,changeTextBoxValue:S,commitValue:v,onBlurTextBox:C,onClickTextBox:M,onFocusTextBox:h,onInput:F,onKeyDownTextBox:m,onKeyUpTextBox:x,onMouseDownTextBox:_,onTextBoxValueChange:b}}function Mn(t,e,n,i){const r=o.ref(),a=o.ref(!1),{judgeCanOpen:l}=Fn(t,i);function s(){const u=r.value;u&&u.show(n.value)}async function c(u=!1){if(!!e.slots.default){if(!u&&!a.value&&!await l())return;a.value=!a.value,await o.nextTick(),s()}}async function f(u=!1){if(!!e.slots.default){if(!u&&!await l())return;a.value=!0,await o.nextTick(),s()}}function p(){a.value=!1}function d(){a.value=!0,o.nextTick(()=>{s()})}return{hidePopup:p,showPopup:d,popup:f,shouldPopupContent:a,togglePopup:c,popoverRef:r}}function Cr(t,e,n){const i=o.ref(),{isTextBoxReadonly:r,textBoxClass:a,textBoxPlaceholder:l,textBoxTitle:s,onBlurTextBox:c,onClickTextBox:f,onFocusTextBox:p,onInput:d,onKeyDownTextBox:u,onKeyUpTextBox:g,onMouseDownTextBox:y,onTextBoxValueChange:I}=n;return o.onMounted(()=>{var S,v;t.selectOnCreated&&((S=i.value)==null||S.select()),t.focusOnCreated&&((v=i.value)==null||v.focus({preventScroll:t.preventScroll}))}),()=>o.createVNode("input",{ref:i,name:"input-group-value",autocomplete:t.autoComplete?"on":"off",class:a.value,disabled:t.disable,maxlength:t.maxLength,minlength:t.minLength,placeholder:l.value,readonly:r.value,tabindex:t.tabIndex,title:s.value,type:t.inputType,value:e.value,onBlur:c,onChange:I,onClick:f,onFocus:p,onInput:d,onKeydown:u,onKeyup:g,onMousedown:y},null)}function wr(t,e,n){const i=o.ref(t.separator),{changeTextBoxValue:r}=n,a=o.computed(()=>e.value?e.value.split(i.value).map(s=>({name:s,selectable:!0})):[]);function l(s){r(s.map(c=>c.name).join(i.value),!0)}return()=>o.createVNode(un,{id:`${t.id}-tag-editor`,class:"form-control",data:a.value,showClose:!0,showInput:!0,onChange:l},null)}function Sr(t,e,n,i){const{buttonGroupClass:r,onClickButton:a,onMouseEnterButton:l,onMouseLeaveButton:s}=n,{enableClearButton:c,showClearButton:f,onClearValue:p}=i,d=o.ref();return{renderButtonGroup:()=>o.createVNode("div",{id:`${t.id}-button-group`,class:r.value},[c.value&&o.withDirectives(o.createVNode("span",{class:"input-group-text input-group-clear",onClick:p},[o.createVNode("i",{class:"f-icon modal_close"},null)]),[[o.vShow,f.value]]),e.slots.buttonContent?o.createVNode("span",{class:"input-group-text input-group-append-button",onClick:a,onMouseenter:l,onMouseleave:s},[e.slots.buttonContent()]):t.buttonContent?o.createVNode("span",{class:"input-group-text input-group-append-button",innerHTML:t.buttonContent,ref:d,onClick:a,onMouseenter:l,onMouseleave:s},null):null]),buttonHandleElement:d}}function xr(t,e,n){const i=o.ref(t.popupMinWidth),{hidePopup:r,popoverRef:a}=n;return()=>o.createVNode(Do,{id:`${t.id}-popover`,ref:a,visible:!0,placement:t.placement,host:t.popupHost,"keep-width-with-reference":t.keepWidthWithReference,fitContent:!0,"right-boundary":t.popupRightBoundary,minWidth:i.value,class:t.popupClass,offsetX:t.popupOffsetX,onHidden:r},{default:()=>{var l,s;return[(s=(l=e.slots).default)==null?void 0:s.call(l)]}})}const wt=o.defineComponent({name:"FButtonEdit",props:Ut,emits:["updateExtendInfo","clear","change","click","clickButton","blur","focus","mouseEnterIcon","mouseLeaveIcon","keyup","keydown","inputClick","input","update:modelValue"],setup(t,e){const n=o.ref(),i=o.ref(t.customClass),r=o.ref(t.modelValue),a=Mn(t,e,n,r),{shouldPopupContent:l,hidePopup:s,showPopup:c,togglePopup:f}=a,p=Tn(t,e,n,a,r),d=o.ref(""),u=br(t,e,r,d,a),{hasFocusedTextBox:g,commitValue:y,inputGroupClass:I}=u,S=vr(t,e,r,g,d,u),{onMouseEnterTextBox:v,onMouseLeaveTextBox:C}=S,M=o.computed(()=>{const T={"f-button-edit":!0,"f-cmp-inputgroup":!0,"f-button-edit-nowrap":!t.wrapText};return i.value&&i.value.split(" ").reduce((w,k)=>(w[k]=!0,w),T),T});function h(){return t.multiSelect&&t.inputType==="tag"?wr(t,r,u):Cr(t,r,u)}let F=h();o.watch([()=>t.multiSelect,()=>t.inputType],()=>{F=h()});const{renderButtonGroup:_,buttonHandleElement:m}=Sr(t,e,p,S),x=xr(t,e,a),b={commitValue:y,elementRef:n,hidePopup:s,showPopup:c,popoverRef:a.popoverRef,shouldPopupContent:l,togglePopup:f,openDialog:()=>{m.value&&t.buttonBehavior==="Modal"&&m.value.click()},getModal:()=>{var T;return t.buttonBehavior==="Modal"?(T=p.modalRef.value)==null?void 0:T.value:null}};return o.onMounted(()=>{n.value.componentInstance=b,window.onresize=()=>{document.body.click()}}),e.expose(b),()=>o.createVNode(o.Fragment,null,[o.createVNode("div",o.mergeProps(e.attrs,{ref:n,class:M.value,id:t.id}),[o.createVNode("div",{id:`${t.id}-input-group`,class:I.value,onMouseenter:v,onMouseleave:C},[F(),_()])]),l.value&&x()])}});function Fr(t,e,n){const{buttonGroupClass:i}=n,r=o.ref();return{renderButtonGroup:()=>o.createVNode("div",{id:`${t.id}-button-group`,class:i.value},[e.slots.buttonContent?o.createVNode("span",{class:"input-group-text input-group-append-button"},[e.slots.buttonContent()]):t.buttonContent?o.createVNode("span",{class:"input-group-text input-group-append-button",innerHTML:t.buttonContent,ref:r},null):null]),buttonHandleElement:r}}const Tr=o.defineComponent({name:"FButtonEdit",props:Ut,emits:["updateExtendInfo","clear","change","click","clickButton","blur","focus","mouseEnterIcon","mouseLeaveIcon","keyup","keydown","inputClick","input","update:modelValue"],setup(t,e){const n=o.ref(),i=o.inject("design-item-context"),r=Wt.useDesignerComponent(n,i),a=o.ref(t.customClass),l=o.ref(t.modelValue),s=Mn(t,e,n,l),c=Tn(t,e,n,s,l),f=o.ref(),p=o.computed(()=>({"f-cmp-inputgroup":!0,"input-group":!0,"f-state-disabled":!0,"f-state-editable":!1,"f-state-readonly":!0}));o.onMounted(()=>{n.value.componentInstance=r}),e.expose(r.value);const d=o.computed(()=>{const g={"f-button-edit":!0,"f-cmp-inputgroup":!0,"f-button-edit-nowrap":!t.wrapText};return a.value&&a.value.split(" ").reduce((y,I)=>(y[I]=!0,y),g),g}),{renderButtonGroup:u}=Fr(t,e,c);return()=>o.createVNode("div",o.mergeProps(e.attrs,{ref:n,class:d.value,id:t.id}),[o.createVNode("div",{class:p.value},[o.createVNode("input",{ref:f,class:"form-control",readonly:!0,placeholder:t.placeholder},null),u()])])}});wt.register=(t,e,n,i)=>{t["button-edit"]=wt,e["button-edit"]=bn},wt.registerDesigner=(t,e,n)=>{t["button-edit"]=Tr,e["button-edit"]=bn},Ne.withInstall(wt);const _n=new Map([["appearance",ht],["column","columnOption"]]),In=new Map([]);var Mt=(t=>(t.SimpleField="SimpleField",t.ComplexField="ComplexField",t))(Mt||{}),Vn=(t=>(t.StringType="StringType",t.TextType="TextType",t.NumericType="NumericType",t.BooleanType="BooleanType",t.DateType="DateType",t.DateTimeType="DateTimeType",t.EnumType="EnumType",t.EntityType="EntityType",t.HierarchyType="HierarchyType",t.ObjectType="ObjectType",t.BigNumericType="BigNumericType",t))(Vn||{}),St=(t=>(t.String="String",t.DateTime="DateTime",t.Date="Date",t.Enum="Enum",t.Boolean="Boolean",t.Number="Number",t.Text="Text",t.BigNumber="BigNumber",t))(St||{});function kn(){function t(){const n=i=>{const r=Math.random()*16|0;return(i==="x"?r:r&3|8).toString(16)};return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,n)}function e(n,i){const r="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".split(""),a=[];let l;if(i=i||r.length,n)for(l=0;l<n;l++)a[l]=r[0|Math.random()*i];else{let s;for(a[8]=a[13]=a[18]=a[23]="-",a[14]="4",l=0;l<36;l++)a[l]||(s=0|Math.random()*16,a[l]=r[l===19?s&3|8:s])}return a.join("")}return{guid:t,uuid:e}}const Mr=["moz","ms","webkit"];function _r(){let t=0;return e=>{const n=new Date().getTime(),i=Math.max(0,16-(n-t)),r=setTimeout(()=>{e(n+i)},i);return t=n+i,r}}function I