@farris/ui-vue
Version:
Farris Vue, a Farris Design based Vue3 component library.
1 lines • 274 kB
JavaScript
(function(G,n){typeof exports=="object"&&typeof module<"u"?n(exports,require("vue"),require("lodash-es"),require("../dynamic-resolver/index.umd.js"),require("../tags/index.umd.js"),require("../popover/index.umd.js"),require("../list-view/index.umd.js"),require("../button-edit/index.umd.js"),require("../designer-canvas/index.umd.js"),require("bignumber.js"),require("../common/index.umd.js"),require("@vueuse/core"),require("../data-view/index.umd.js"),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("../binding-selector/index.umd.js"),require("../notify/index.umd.js"),require("../accordion/index.umd.js"),require("../avatar/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("../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("../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","../list-view/index.umd.js","../button-edit/index.umd.js","../designer-canvas/index.umd.js","bignumber.js","../common/index.umd.js","@vueuse/core","../data-view/index.umd.js","../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","../binding-selector/index.umd.js","../notify/index.umd.js","../accordion/index.umd.js","../avatar/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","../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","../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"],n):(G=typeof globalThis<"u"?globalThis:G||self,n(G["filter-condition-editor"]={},G.Vue,G.LodashES,G.dynamicResolver,G.FTags,G.FPopover,G.FListView,G.FButtonEdit$1,G.designerCanvas,G.BigNumber,G.common,G.VueUseCore,G.dataView,null,G.FTransfer,G.FTabs,G.FOrder,null,G.FCheckBox,G.FFilterBar,G.FTooltip,G.FPagination,G.FButton,G.FSearchBox,G.FDynamicForm,G.FBindingSelector,null,G.FAccordion,G.FAvatar,G.FButtonGroup,G.FCalendar,G.FCapsule,G.FColorPicker,G.FComboList$1,G.FContentContainer,G.FDataGrid,G.FDatePicker,G.FDropdown,null,G.FEventsEditor,G.FImageCropper,G.FInputGroup,G.FLayout,G.FListNav,G.FLookup,G.FNav,G.FNumberSpinner,G.FNumberRange,G.FPageHeader,G.FPageFooter,G.FProgress,G.FQuerySolution,G.FRadioGroup,G.FRate,G.FResponseToolbar,G.FResponseLayout,G.FResponseLayoutEditorSetting,G.FSection,G.FSmokeDetector,G.FSplitter,G.FStep,G.FSwitch,G.FText,G.FTimePicker,G.FTreeview,G.FUploader,G.FVerifyDetail,G.FComponent,G.FVideo,G.FTextArea,G.FTreeGrid$1,G.FFieldset,G.FDrawer,G.FComboTree$1,G.FFieldSelector,G.FMappingEditor,G.FSchemaSelector,G.FEventParameter,G.FFilterConditionEditor,G.FSortConditionEditor,G.FMenuLookup))})(this,function(G,n,Me,Qt,Zt,to,en,It,Ct,bl,Se,tn,Ce,Cl,no,oo,ao,wl,nn,io,on,ro,lo,so,Bt,uo,xl,co,fo,po,mo,ho,go,Mt,yo,vo,bo,Co,Sl,wo,xo,So,_o,To,Vo,Fo,No,ko,Io,Bo,Mo,Eo,Oo,jo,$o,Ro,Do,Po,Lo,Wo,Ao,Ho,qo,Go,an,zo,Uo,Yo,Xo,Ko,Jo,Qo,Zo,ea,ta,na,oa,aa,ia,ra,la){"use strict";var yl=Object.defineProperty;var vl=(G,n,Me)=>n in G?yl(G,n,{enumerable:!0,configurable:!0,writable:!0,value:Me}):G[n]=Me;var q=(G,n,Me)=>vl(G,typeof n!="symbol"?n+"":n,Me);const rn={},ln={};function Et(e){const{properties:t,title:o,ignore:a}=e,i=a&&Array.isArray(a),r=Object.keys(t).reduce((l,c)=>((!i||!a.find(d=>d===c))&&(l[c]=t[c].type==="object"&&t[c].properties?Et(t[c]):Me.cloneDeep(t[c].default)),l),{});if(o&&(!i||!a.find(l=>l==="id"))){const l=o.toLowerCase().replace(/-/g,"_");r.id=`${l}_${Math.random().toString().slice(2,6)}`}return r}function sa(e){const{properties:t,title:o,required:a}=e;if(a&&Array.isArray(a)){const i=a.reduce((r,l)=>(r[l]=t[l].type==="object"&&t[l].properties?Et(t[l]):Me.cloneDeep(t[l].default),r),{});if(o&&a.find(r=>r==="id")){const r=o.toLowerCase().replace(/-/g,"_");i.id=`${r}_${Math.random().toString().slice(2,6)}`}return i}return{type:o}}function sn(e,t={},o){const a=rn[e];if(a){let i=sa(a);const r=ln[e];return i=r?r({getSchemaByType:sn},i,t,o):i,i}return null}function ua(e,t){const o=Et(t);return Object.keys(o).reduce((a,i)=>(Object.prototype.hasOwnProperty.call(e,i)&&(a[i]&&Me.isPlainObject(a[i])&&Me.isPlainObject(e[i]||!e[i])?Object.assign(a[i],e[i]||{}):a[i]=e[i]),a),o),o}function un(e,t){return Object.keys(e).filter(a=>e[a]!=null).reduce((a,i)=>{if(t.has(i)){const r=t.get(i);if(typeof r=="string")a[r]=e[i];else{const l=r(i,e[i],e);Object.assign(a,l)}}else a[i]=e[i];return a},{})}function ca(e,t,o=new Map){const a=ua(e,t);return un(a,o)}function da(e={}){function t(p,f,s,u){if(typeof s=="number")return u[p].length===s;if(typeof s=="object"){const g=Object.keys(s)[0],v=s[g];if(g==="not")return Number(u[p].length)!==Number(v);if(g==="moreThan")return Number(u[p].length)>=Number(v);if(g==="lessThan")return Number(u[p].length)<=Number(v)}return!1}function o(p,f,s,u){return u[p]&&u[p].propertyValue&&String(u[p].propertyValue.value)===String(s)}const a=new Map([["length",t],["getProperty",o]]);Object.keys(e).reduce((p,f)=>(p.set(f,e[f]),p),a);function i(p,f){const s=p;return typeof f=="number"?[{target:s,operator:"length",param:null,value:Number(f)}]:typeof f=="boolean"?[{target:s,operator:"getProperty",param:p,value:!!f}]:typeof f=="object"?Object.keys(f).map(u=>{if(u==="length")return{target:s,operator:"length",param:null,value:f[u]};const g=u,v=f[u];return{target:s,operator:"getProperty",param:g,value:v}}):[]}function r(p){return Object.keys(p).reduce((s,u)=>{const g=i(u,p[u]);return s.push(...g),s},[])}function l(p,f){if(a.has(p.operator)){const s=a.get(p.operator);return s&&s(p.target,p.param,p.value,f)||!1}return!1}function c(p,f){return r(p).reduce((g,v)=>g&&l(v,f),!0)}function d(p,f){const s=Object.keys(p),u=s.includes("allOf"),g=s.includes("anyOf"),v=u||g,y=(v?p[v?u?"allOf":"anyOf":"allOf"]:[p]).map(_=>c(_,f));return u?!y.includes(!1):y.includes(!0)}return{parseValueSchema:d}}const ie={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:"抽屉"}},fa={},pa={};da();function Ye(e,t,o=new Map,a=(l,c,d,p)=>c,i={},r=l=>l){return rn[t.title]=t,ln[t.title]=a,fa[t.title]=i,pa[t.title]=r,(l={},c=!0)=>{if(!c)return un(l,o);const d=ca(l,t,o),p=Object.keys(e).reduce((f,s)=>(f[s]=e[s].default,f),{});return Object.assign(p,d)}}function mt(e,t){return{customClass:t.class,customStyle:t.style}}function ma(){function e(t,o){const{dataSource:a}=t||{};return a===void 0?{}:{}}return{resolve:e}}function ha(){function e(t,o){return t.selectItemById(o)}return{selectItemById:e}}function ga(){function e(t,o){const{columns:a}=o;return t.updateColumns(a)}return{updateColumns:e}}const ya=new Map([["appearance",Qt.resolveAppearance]]);function va(e,t,o){return t}const ba={$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"]},Ca={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:"右对齐"}]}}}}}},Ot={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}},cn=Ye(Ot,ba,ya,va,Ca),wa={popupContentPosition:{type:Object,default:{left:0,top:0}},host:{type:Object},backgroundColor:{type:String,default:""}},xa=n.defineComponent({name:"FOverlay",props:wa,emits:["click"],setup(e,t){const o=n.ref(e.popupContentPosition),a=n.ref(e.host),i=n.computed(()=>({backgroundColor:e.backgroundColor||"",pointerEvents:"auto"}));function r(c){t.emit("click"),c.preventDefault(),c.stopPropagation()}n.computed(()=>{const c=a.value;if(c){const d=c.getBoundingClientRect(),{left:p,top:f,height:s}=d;return{left:p,top:f+s}}return o.value});const l=n.computed(()=>({}));return()=>n.createVNode(n.Teleport,{to:"body"},{default:()=>{var c,d;return[n.createVNode("div",{class:"overlay-container",onClick:p=>r(p),style:i.value},[n.createVNode("div",{style:l.value},[(d=(c=t.slots).default)==null?void 0:d.call(c)])])]}})}});function Sa(e){if(e.content&&e.content.render)return e.content.render;if(e.render&&typeof e.render=="function")return e.render}function _a(e){const t=document.createElement("div");t.style.display="contents";let o;const a=e.onClickCallback||(()=>{}),i=()=>{a(),o&&o.unmount()};return o=n.createApp({setup(){n.onUnmounted(()=>{document.body.removeChild(t)});const r=Sa(e);return()=>n.createVNode(xa,{"popup-content-position":e.popupPosition,host:e.host,onClick:i,backgroundColor:e.backgroundColor},{default:()=>[r&&r()]})}}),document.body.appendChild(t),o.mount(t),o}class Ta{static show(t){return _a(t)}}const Va={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 Ie{constructor(t,o){this.x=t,this.y=o}static getTransformInfo(t){const a=window.getComputedStyle(t).getPropertyValue("transform").replace(/[^-\d,]/g,"").split(",");if(a.length>=6){const i=parseInt(a[4],10),r=parseInt(a[5],10);return{x:i,y:r}}return{x:0,y:0}}static fromEvent(t,o=null){if(this.isMouseEvent(t))return new Ie(t.clientX,t.clientY);if(o===null||t.changedTouches.length===1)return new Ie(t.changedTouches[0].clientX,t.changedTouches[0].clientY);for(let a=0;a<t.changedTouches.length;a++)if(t.changedTouches[a].target===o)return new Ie(t.changedTouches[a].clientX,t.changedTouches[a].clientY)}static isMouseEvent(t){return Object.prototype.toString.apply(t).indexOf("MouseEvent")===8}static isIPosition(t){return!!t&&"x"in t&&"y"in t}static getCurrent(t){const o=new Ie(0,0);if(window){const a=window.getComputedStyle(t);if(a){const i=parseInt(a.getPropertyValue("left"),10),r=parseInt(a.getPropertyValue("top"),10);o.x=isNaN(i)?0:i,o.y=isNaN(r)?0:r}return o}return null}static copy(t){return new Ie(0,0).set(t)}get value(){return{x:this.x,y:this.y}}add(t){return this.x+=t.x,this.y+=t.y,this}subtract(t){return this.x-=t.x,this.y-=t.y,this}multiply(t){this.x*=t,this.y*=t}divide(t){this.x/=t,this.y/=t}reset(){return this.x=0,this.y=0,this}set(t){return this.x=t.x,this.y=t.y,this}}class ft{constructor(t,o){this.width=t,this.height=o}static getCurrent(t){const o=new ft(0,0);if(window){const a=window.getComputedStyle(t);return a&&(o.width=parseInt(a.getPropertyValue("width"),10),o.height=parseInt(a.getPropertyValue("height"),10)),o}return null}static copy(t){return new ft(0,0).set(t)}set(t){return this.width=t.width,this.height=t.height,this}}function Fa(e,t){const o=n.ref(),a=n.ref(),i=n.ref(),r=n.ref(),l=n.ref(),c=n.ref(),d=n.ref(),p=n.ref(),f=n.ref(),s=n.ref(),u=n.ref(),g=n.ref(),v=n.ref(e.draggable),F=n.ref(!1);function C(){const I=a.value||document.body,j=window.getComputedStyle(I);if(!j||!o.value)return;const L=Ie.getTransformInfo(o.value),X={};d.value&&(X.deltaL=o.value.offsetLeft-d.value.x,X.deltaT=o.value.offsetTop-d.value.y);const ne=j.getPropertyValue("position");X.width=I.clientWidth,X.height=I.clientHeight,X.pr=parseInt(j.getPropertyValue("padding-right"),10),X.pb=parseInt(j.getPropertyValue("padding-bottom"),10),X.position=j.getPropertyValue("position"),ne==="static"&&(I.style.position="relative"),X.translateX=L.x,X.translateY=L.y,s.value=X}function y(I){if(o.value){r.value=ft.getCurrent(o.value),l.value=Ie.getCurrent(o.value),c.value=r.value?ft.copy(r.value):null,d.value=l.value?Ie.copy(l.value):null,C();const j=I.target.getAttribute("type")||"";p.value={n:!!j.match(/n/),s:!!j.match(/s/),w:!!j.match(/w/),e:!!j.match(/e/)}}}function h(){var I,j,L,X;if(o.value){const ne=o.value;p.value&&((p.value.n||p.value.s)&&((I=c.value)!=null&&I.height)&&(ne.style.height=c.value.height+"px"),(p.value.w||p.value.e)&&((j=c.value)!=null&&j.width)&&(ne.style.width=c.value.width+"px"),d.value&&((L=d.value)!=null&&L.x&&(ne.style.left=d.value.x+"px"),(X=d.value)!=null&&X.y&&(ne.style.top=d.value.y+"px")))}}function _(){const I=e.minHeight?e.minHeight:1,j=e.minWidth?e.minWidth:1;c.value&&d.value&&p.value&&r.value&&(c.value.height<I&&(c.value.height=I,p.value.n&&l.value&&(d.value.y=l.value.y+(r.value.height-I))),c.value.width<j&&(c.value.width=j,p.value.w&&l.value&&(d.value.x=l.value.x+(r.value.width-j))),e.maxHeight&&c.value.height>e.maxHeight&&(c.value.height=e.maxHeight,l.value&&p.value.n&&(d.value.y=l.value.y+(r.value.height-e.maxHeight))),e.maxWidth&&c.value.width>e.maxWidth&&(c.value.width=e.maxWidth,p.value.w&&l.value&&(d.value.x=l.value.x+(r.value.width-e.maxWidth))))}function b(){if(a.value){const I=s.value;if(d.value&&c.value&&p.value&&r.value){const j=I.width-I.pr-I.deltaL-I.translateX-d.value.x,L=I.height-I.pb-I.deltaT-I.translateY-d.value.y;p.value.n&&d.value.y+I.translateY<0&&l.value&&(d.value.y=-I.translateY,c.value.height=r.value.height+l.value.y+I.translateY),p.value.w&&d.value.x+I.translateX<0&&l.value&&(d.value.x=-I.translateX,c.value.width=r.value.width+l.value.x+I.translateX),c.value.width>j&&(c.value.width=j),c.value.height>L&&(c.value.height=L)}}}function V(I){if(!i.value||!r.value||!l.value||!p.value)return;I.subtract(i.value);const j=I.x,L=I.y;p.value.n?(d.value.y=l.value.y+L,c.value.height=r.value.height-L):p.value.s&&(c.value.height=r.value.height+L),p.value.e?c.value.width=r.value.width+j:p.value.w&&(c.value.width=r.value.width-j,d.value.x=l.value.x+j),b(),_(),h()}function N(I){if(!f.value)return;const j=Ie.fromEvent(I);j&&V(j)}function m(){if(o.value){const{width:I,height:j,x:L,y:X}=o.value.getBoundingClientRect(),ne=Ie.getTransformInfo(o.value);return{size:{width:I,height:j},position:{x:L-ne.x,y:X-ne.y}}}return null}function T(I){if(o.value){const j=m();u.value=j}i.value=void 0,r.value=null,l.value=null,c.value=null,d.value=null,p.value=null,f.value=null,document.removeEventListener("mousemove",N),document.removeEventListener("mouseup",T)}function w(){document.addEventListener("mousemove",N),document.addEventListener("mouseup",T)}function x(I){I instanceof MouseEvent&&I.button===2||v.value&&(document.body.click(),I.stopPropagation(),I.preventDefault(),i.value=Ie.fromEvent(I),f.value=I.target,y(I),w())}function S(I){return o.value=I,n.createVNode(n.Fragment,null,[n.createVNode("div",{class:"fv-resizable-handle fv-resizable-n",type:"n",onMousedown:j=>x(j)},null),n.createVNode("div",{class:"fv-resizable-handle fv-resizable-e",type:"e",onMousedown:j=>x(j)},null),n.createVNode("div",{class:"fv-resizable-handle fv-resizable-s",type:"s",onMousedown:j=>x(j)},null),n.createVNode("div",{class:"fv-resizable-handle fv-resizable-w",type:"w",onMousedown:j=>x(j)},null),n.createVNode("div",{class:"fv-resizable-handle fv-resizable-ne",type:"ne",onMousedown:j=>x(j)},null),n.createVNode("div",{class:"fv-resizable-handle fv-resizable-se fv-resizable-diagonal",type:"se",onMousedown:j=>x(j)},null),n.createVNode("div",{class:"fv-resizable-handle fv-resizable-sw",type:"sw",onMousedown:j=>x(j)},null),n.createVNode("div",{class:"fv-resizable-handle fv-resizable-nw",type:"nw",onMousedown:j=>x(j)},null)])}function B(I=!0){document.body.click();const j=a.value||document.body,L=ft.getCurrent(j),X=o.value;I&&X&&(g.value=m(),g.value.transform=X.style.transform),L&&X&&(c.value=L,X.style.height=c.value.height-14+"px",X.style.width=c.value.width-14+"px",X.style.left="7px",X.style.top="7px",X.style.transform="",u.value={size:c.value,position:{x:0,y:0}},v.value=!1,F.value=!0)}function E(){var I,j;if(document.body.click(),g.value){const L={width:g.value.size.width||0,height:g.value.size.height||0},X={x:(window.innerWidth-L.width)/2,y:(window.innerHeight-L.height)/2};(I=c.value)==null||I.set(L),(j=d.value)==null||j.set(X);const ne=o.value;ne.style.height=L.height+"px",ne.style.width=L.width+"px",ne.style.left=`${X.x}px`,ne.style.top=`${X.y}px`,ne.style.transform="",u.value={size:L,position:X},v.value=e.draggable,F.value=!1}}function M(){if(o.value){const I=ft.getCurrent(o.value);if(I){const{width:j,height:L}=I;o.value.style.left=`${(window.innerWidth-j)/2}px`,o.value.style.top=`${(window.innerHeight-L)/2}px`,o.value.style.transform=""}}}function k(){const I=()=>{F.value?B(!1):M(),document.body.click()};return window.addEventListener("resize",I),()=>{window.removeEventListener("resize",I)}}const O=k();return{renderResizeBar:S,boundingElement:a,resizedEventParam:u,maximize:B,restore:E,allowDrag:v,isMaximized:F,unWindowResizeHandle:O}}function Na(e,t,o){const a=n.ref(),i=n.ref(e.draggable),r=n.ref(e.lockAxis),l=n.ref(),c=n.ref(),d=n.ref(!1),p=n.ref(new Ie(0,0)),f=n.ref(new Ie(0,0)),s=n.ref(new Ie(0,0)),u=n.ref(new Ie(0,0));n.watch(()=>o.value,m=>{l.value.style.cursor=m?"move":"default"});function g(m,T){if(T.tagName==="BUTTON")return!1;if(T===m)return!0;for(const w in T.children)if(Object.prototype.hasOwnProperty.call(T.children,w)&&g(m,T.children[w]))return!0;return!1}function v(){var x,S;let m=s.value.x+f.value.x,T=s.value.y+f.value.y;r.value==="x"?(m=((x=p.value)==null?void 0:x.x)||0,s.value.x=0):r.value==="y"&&(T=((S=p.value)==null?void 0:S.y)||0,s.value.y=0);const w=`translate3d(${Math.round(m)}px, ${Math.round(T)}px, 0px)`;a.value&&(a.value.style.transform=w),u.value.x=m,u.value.y=T}function F(){if(!c.value||!a.value)return null;const m=c.value.getBoundingClientRect(),T=a.value.getBoundingClientRect(),w={top:m.top<T.top,right:m.right>T.right,bottom:m.bottom>T.bottom,left:m.left<T.left};return w.top||(s.value.y-=T.top-m.top),w.bottom||(s.value.y-=T.bottom-m.bottom),w.right||(s.value.x-=T.right-m.right),w.left||(s.value.x-=T.left-m.left),v(),w}function C(m){m&&(p.value&&m.subtract(p.value),s.value.set(m),v(),F())}function y(m){d.value&&i.value&&(m.stopPropagation(),m.preventDefault(),C(Ie.fromEvent(m,l.value)))}function h(){var m;d.value&&(d.value=!1,f.value.add(s.value),s.value.reset(),(m=a.value)==null||m.classList.remove("ng-dragging"),document.removeEventListener("mousemove",y),document.removeEventListener("mouseup",h))}function _(){!d.value&&l.value&&(d.value=!0,l.value.classList.add("ng-dragging"),document.addEventListener("mousemove",y),document.addEventListener("mouseup",h))}function b(){if(a.value){const m=Ie.getTransformInfo(a.value);f.value.set(m);return}f.value.reset()}function V(m){if(!o.value||m instanceof MouseEvent&&m.button===2)return;const T=m.target||m.srcElement;l.value!==void 0&&T&&!g(T,l.value)||i.value!==!1&&(document.body.click(),m.stopPropagation(),m.preventDefault(),p.value=Ie.fromEvent(m,a.value),b(),_())}function N(m,T,w){if(i.value&&T){if(m)l.value=m;else if(e.dragHandle){if(e.dragHandle instanceof HTMLElement)l.value=e.dragHandle;else if(typeof e.dragHandle=="string"){const x=T.querySelector(e.dragHandle);x&&(l.value=x)}}a.value=T,c.value=w,l.value?(l.value.classList.add("ng-draggable"),l.value.addEventListener("mousedown",V)):i.value=!1}}return{registerDraggle:N,resetTranslate:b}}function dn(e,t){if(e){const o=a=>{a.key.toLowerCase()===e.toLowerCase()&&t({event:a,key:e})};return document.addEventListener("keydown",o),()=>{document.removeEventListener("keydown",o)}}}function ka(e,t){const o=n.ref(e.enableEsc);let a=null;return o.value?(a=dn("Escape",i=>{t.emit("esc",{event:i.event,type:"esc"})}),{remove:a}):null}function Ia(e,t){const o=n.ref(e.enableEnter);let a=null;return o.value?(a=dn("Enter",i=>{t.emit("enter",{event:i.event,type:"enter"})}),{remove:a}):null}const yt=n.defineComponent({name:"FModal",props:Va,emits:["update:modelValue","accept","cancel","closed","resize","esc","enter"],setup(e,t){const o=n.ref(e.width||300),a=n.ref(e.height||200),i=n.ref(e.modelValue),r=n.ref(""),l=n.ref(e.class),c=n.ref(e.fitContent),d=n.ref(e.showHeader),p=n.ref(""),f=n.ref(e.showCloseButton),s=n.ref(e.showMaxButton),u=n.ref(!1),g=n.ref(e.dialogType),v=n.ref(e.src),F=n.ref(""),C=n.ref(e.showButtons),y=n.ref(e.title),h=n.ref(e.resizeable),_=n.ref(e.containment||null),b=n.ref(),V=n.ref(!1);function N(te,ve){i.value=!1,t.emit("update:modelValue",!1),ve!=null&&t.emit(ve?"accept":"cancel"),t.emit("closed",te)}const m=[{name:"cancel",text:"取消",class:"btn btn-secondary",handle:te=>{N(te,!1)}},{name:"accept",text:"确定",class:"btn btn-primary",handle:te=>{N(te,!0)}}],T=n.ref(e.buttons&&e.buttons.length?e.buttons:m),w=n.computed(()=>!!p.value),x=n.computed(()=>!!C.value&&!!T.value),S=n.ref(),B=n.ref(),E=n.ref(!1),{renderResizeBar:M,maximize:k,restore:O,boundingElement:I,resizedEventParam:j,allowDrag:L,unWindowResizeHandle:X}=Fa(e),{registerDraggle:ne}=Na(e,t,L);function ee(){return!!document.querySelectorAll(".farris-modal").length&&document.body.classList.contains("modal-open")}function fe(){const te=document.querySelectorAll(".farris-modal").length;(!te||te-1<=0)&&document.body.classList.remove("modal-open"),b.value&&b.value.classList.remove("show")}n.watch(()=>e.title,(te,ve)=>{te!==ve&&(y.value=te)}),n.watch(()=>e.modelValue,(te,ve)=>{te!==ve&&(i.value=te,te||fe()),i.value&&(V.value=ee())}),n.watch(()=>e.showHeader,(te,ve)=>{te!==ve&&(d.value=te)}),n.watch(()=>e.showButtons,(te,ve)=>{te!==ve&&(C.value=te)}),n.watch(()=>j.value,(te,ve)=>{const Ne=te||{},Oe=ve||{};JSON.stringify(Ne)!==JSON.stringify(Oe)&&t.emit("resize",{newSize:te,oldSize:ve})});const P=n.computed(()=>(i.value&&document.body.classList.add("modal-open"),i.value)),D=n.computed(()=>{const te={modal:!0,"farris-modal":!0,fade:!0};return te["f-modal-fitContent"]=!!c.value,te.show=!!P.value,te}),W=n.computed(()=>{var Ne;const te={"modal-dialog":!0},ve=(Ne=l.value)==null?void 0:Ne.split(" ");return ve==null||ve.reduce((Oe,Fe)=>(Oe[Fe]=!0,Oe),te),te}),U=n.computed(()=>({position:"absolute",top:`${(window.innerHeight-a.value)/2}px`,left:`${(window.innerWidth-o.value)/2}px`,width:`${o.value}px`,height:c.value?"auto":`${a.value}px`})),J=n.computed(()=>({"modal-content":!0,"modal-content-has-header":d.value})),Y=n.computed(()=>{const te={display:d.value?"":"none"};return te["pointer-events"]=L.value?"auto":"none",te}),$=n.computed(()=>({"f-icon":!0,modal_maximize:!0,modalrevert:E.value})),H=n.computed(()=>({"modal-body":!0,"f-utils-flex-column":g.value==="iframe","f-utils-fill":!0}));function ae(){return{height:`${e.footerHeight||60}px`}}const Q=n.computed(()=>{const te={textAlgin:F.value},ve=ae();return Object.assign(te,ve)});function Z(te){if(te.stopPropagation(),E.value){E.value=!1,O();return}k(),E.value=!0}async function _e(te,ve){te.handle&&await te.handle(ve,te)&&t.emit("closed",ve)}function Ve(te){te.width&&(o.value=te.width),te.height&&(a.value=te.height),te.buttons&&(T.value=te.buttons),te.title&&(y.value=te.title)}const Te=n.computed(()=>{const te={display:"inline-block"};return V.value&&(te["background-color"]="transparent"),te});let We=null,$e=null;n.onBeforeMount(()=>{V.value=ee()}),n.onMounted(()=>{B.value&&!_.value&&(_.value=B.value.parentElement,I.value=_.value,ne(S.value,B.value,I.value)),P.value&&document.body.classList.add("modal-open"),We=ka(e,t),$e=Ia(e,t)}),n.onUnmounted(()=>{X&&X(),We&&We.remove(),$e&&$e.remove()}),t.expose({modalElementRef:B,updateModalOptions:Ve,close:N,maxDialog:Z});function Be(){return n.createVNode("ul",null,[u.value&&n.createVNode("li",{class:"f-btn-icon f-bare"},[n.createVNode("span",{class:"f-icon modal_minimize"},null)]),s.value&&n.createVNode("li",{onClick:Z,class:"f-btn-icon f-bare",style:"pointer-events: auto;"},[n.createVNode("span",{class:$.value},null)]),f.value&&n.createVNode("li",{class:"f-btn-icon f-bare",onClick:te=>N(te,!1),style:"pointer-events: auto;"},[n.createVNode("span",{class:"f-icon modal_close"},null)])])}function Ge(){return n.createVNode("div",{class:"modal-footer",style:Q.value},[T.value&&T.value.map(te=>n.createVNode("button",{name:te.name,type:"button",class:te.class+(te.iconClass?" btn-icontext":""),onClick:ve=>{_e(te,ve)}},[!!te.iconClass&&n.createVNode("i",{class:te.iconClass},null),te.text]))])}function He(){return n.createVNode("div",{ref:S,class:"modal-header",style:Y.value},[n.createVNode("div",{class:"modal-title"},[w.value&&n.createVNode("span",{class:p.value,style:"margin-right: 8px"},null),n.createVNode("span",{class:"modal-title-label"},[y.value])]),n.createVNode("div",{class:"actions"},[Be()])])}function rt(te){te.stopPropagation()}return()=>n.createVNode(n.Teleport,{to:"body"},{default:()=>[P.value&&n.createVNode(n.Transition,{name:"fade",appear:!0},{default:()=>{var te,ve;return[n.createVNode("div",{class:D.value,style:Te.value,ref:b,onClick:rt},[n.createVNode("div",{id:r.value,class:W.value,style:U.value,ref:B},[n.createVNode("div",{class:J.value},[d.value&&He(),n.createVNode("div",{class:H.value},[(ve=(te=t.slots).default)==null?void 0:ve.call(te),g.value==="iframe"&&n.createVNode("iframe",{title:r.value,class:"f-utils-fill",width:"100%",frameborder:"0",src:v.value},null)]),x.value&&Ge()]),!c.value&&h.value&&B.value&&!E.value&&M(B.value)])])]}})]})}});function fn(e){if(e.content&&e.content.render)return e.content.render;if(e.render&&typeof e.render=="function")return e.render}function Ba(e){const t=document.createElement("div");t.style.display="contents";const o=n.createApp({setup(a,i){n.onUnmounted(()=>{document.body.removeChild(t)});const r=n.ref(),l=n.ref(e.class||""),c=n.ref(!!e.showButtons),d=n.ref(!!e.showHeader),p=n.ref(e.showCloseButton==null?!0:e.showCloseButton),f=n.ref(!0),s=n.ref(e.title||""),u=e.acceptCallback||(()=>{}),g=e.rejectCallback||(()=>{}),v=e.closedCallback||(h=>{}),F=e.resizeHandle||(h=>{}),C=fn(e),y=h=>{f.value=!1,o.unmount(),v(h)};return n.onMounted(()=>{}),i.expose({modalRef:r}),()=>n.createVNode(yt,{ref:r,class:l.value,modelValue:f.value,"onUpdate:modelValue":h=>f.value=h,title:s.value,width:e.width,height:e.height,buttons:e.buttons,"show-header":d.value,"show-buttons":c.value,"show-close-button":p.value,"show-max-button":!1,onAccept:u,onCancel:g,fitContent:e.fitContent==null?!0:e.fitContent,onClosed:y,onResize:F},{default:()=>[C&&C(o)]})}});return document.body.appendChild(t),o.mount(t),o}class pn{constructor(t){q(this,"appContext",null);q(this,"modalRef",n.ref());q(this,"activeModalIndex",n.ref(0));q(this,"modalRefs",{});q(this,"isUseEscCloseModal",n.ref(!1));q(this,"activeModalInstance",n.computed(()=>this.modalRefs[this.activeModalIndex.value]));this.app=t,this.appContext=t?t._context:null}getCurrentModal(){return this.activeModalInstance.value}adaptToWindow(t,o){const{width:a,height:i}={width:window.innerWidth,height:window.innerHeight};return a<t&&(t=a),i<o&&(o=i),{width:t,height:o}}static show(t){const o=Object.assign({title:"",showButtons:!0,showHeader:!0},t);return Ba(o)}close(t){var o,a;t?(a=t.value)==null||a.close():(o=this.getCurrentModal())==null||o.close()}open(t){const o=document.createDocumentFragment();t.showMaxButton&&t.fitContent&&(t.showMaxButton=!1);const a=n.shallowRef(Object.assign({title:"",showButtons:!0,showHeader:!0},t)),i=n.ref(!0),r=a.value.acceptCallback||(()=>{}),l=a.value.rejectCallback||(()=>{}),c=a.value.closedCallback||((b,V)=>{}),d=a.value.resizeHandle||(b=>{});let p;const f=fn(a.value),s=b=>{var N;i.value=!1;const V=(N=b==null?void 0:b.target)==null?void 0:N.classList.contains("modal_close");c(b,this.isUseEscCloseModal.value?"esc":V?"icon":"button")},u=b=>{s(b),p&&n.nextTick(()=>{if(this.modalRefs[this.activeModalIndex.value]&&delete this.modalRefs[this.activeModalIndex.value],n.render(null,o),p=null,this.modalRef.value=null,this.modalRefs){const V=Object.keys(this.modalRefs).map(N=>Number(N));V.length>0?this.activeModalIndex.value=Math.max(...V):this.activeModalIndex.value=0}this.isUseEscCloseModal.value=!1})},g=b=>{var V;this.isUseEscCloseModal.value=!0,this.activeModalInstance&&((V=this.activeModalInstance.value)==null||V.close(b==null?void 0:b.event))},{width:v,height:F}=a.value,C=this.adaptToWindow(v||500,F||320);Object.assign(a.value,C);const y=()=>n.createVNode(yt,n.mergeProps({ref:this.modalRef,modelValue:i.value,"onUpdate:modelValue":b=>i.value=b},a.value,{onAccept:r,onCancel:l,onClosed:u,onResize:d,onEsc:g}),{default:()=>[f&&f(this.app)]});return p=(b=>{const V=n.h(y,b);return V.appContext=this.appContext,n.render(V,o),V})({...a.value}),this.activeModalIndex.value++,this.modalRefs[this.activeModalIndex.value]=this.modalRef.value,{update:b=>{a.value={...a.value,...b},p&&n.render(n.cloneVNode(p,{...a}),o)},destroy:u,modalRef:this.activeModalInstance,close:this.close}}}const mn=Symbol("FModalService");yt.install=e=>{e.component(yt.name,yt);const t=new pn(e);e.provide(mn,t),e.provide("FModalService",t)};function hn(e,t){function o(){const a=e.beforeOpen||e.beforeClickButton||null;let i=Promise.resolve(!0);if(a){const r=a(t.value);if(typeof r>"u")return i;typeof r=="boolean"?i=Promise.resolve(r):i=r}return i}return{judgeCanOpen:o}}function gn(e,t,o,a,i){const r=n.ref(e.buttonBehavior),l=n.ref(e.popupOnInput),c=n.computed(()=>({"input-group-append":!0,"append-force-show":e.showButtonWhenDisabled&&(e.readonly||e.disable)})),{judgeCanOpen:d}=hn(e,i),p=n.computed(()=>e.showButtonWhenDisabled||(!e.editable||!e.readonly)&&!e.disable),f=n.inject(mn,null),s=n.ref();async function u(F){if(await d()&&p.value){const C=!!t.slots.default;if(r.value==="Modal"){const y=e.modalOptions,h=f==null?void 0:f.open({...y,render:()=>t.slots.default&&t.slots.default()});s.value=h==null?void 0:h.modalRef}r.value==="Overlay"&&Ta.show({host:document.body,backgroundColor:"rgba(0,0,0,.15)",render:()=>t.slots.default&&t.slots.default()}),C&&r.value==="Popup"&&a.togglePopup(!0),C&&l.value&&a.hidePopup(),t.emit("clickButton",{origin:F,value:e.modelValue})}}function g(F){t.emit("mouseEnterIcon",F)}function v(F){t.emit("mouseLeaveIcon",F)}return{buttonGroupClass:c,onClickButton:u,onMouseEnterButton:g,onMouseLeaveButton:v,modalRef:s}}function Ma(e,t,o,a,i,r){const l=n.ref(!1),c=n.computed(()=>e.enableClear&&!e.readonly&&!e.disable),{changeTextBoxValue:d,hasClearClass:p}=r;function f(v){l.value=v,p.value=v}n.watch(i,()=>{f(!!i.value)});function s(v){const F=!e.readonly&&!e.disable&&e.editable,C=!e.editable;v.stopPropagation(),(F||C)&&(d(""),f(!l.value),t.emit("clear"))}function u(v){if(c.value){if(!o.value){f(!1);return}!e.disable&&!e.readonly&&f(!0)}}function g(v){c.value&&f(!1)}return{enableClearButton:c,showClearButton:l,onClearValue:s,onMouseEnterTextBox:u,onMouseLeaveTextBox:g}}function Ea(e,t,o,a,i){const r=n.computed(()=>e.popupOnInput),l=n.computed(()=>e.popupOnFocus),{shouldPopupContent:c}=i,d=n.ref(!1),p=n.computed(()=>e.enableTitle?o.value:""),f=n.computed(()=>(e.disable||e.readonly)&&!e.forcePlaceholder?"":e.placeholder),s=n.computed(()=>e.readonly||!e.editable),u=n.ref(!1),g=n.computed(()=>!e.disable&&u.value),v=n.computed(()=>({"text-left":e.textAlign==="left","text-center":e.textAlign==="center","text-right":e.textAlign==="right","form-control":!0,"f-utils-fill":!0})),F=n.computed(()=>({"input-group":!0,"f-state-disabled":e.disable,"f-state-editable":e.editable&&!e.disable&&!e.readonly,"f-state-readonly":e.readonly&&!e.disable,"f-state-focus":g.value,"input-group--has-clear":d.value}));function C(x,S=!0){o.value=x,S&&(t.emit("change",x),t.emit("update:modelValue",x))}function y(x){c.value=!1,C(x,!0)}n.watch(()=>e.modelValue,x=>{o.value=x});function h(x){u.value=!1,t.emit("blur",x),x.stopPropagation()}function _(x){t.emit("click",x),!e.disable&&!e.readonly&&e.popupOnClick&&(i.togglePopup(),document.body.click())}function b(x){e.disable||(u.value=!0,s.value||(t.emit("focus",x),l.value&&!c.value&&i.popup()))}function V(x){t.emit("input",x.target.value);const S=x.target.value;a.value=S,o.value!==S&&C(S,e.updateOn==="change"),r.value&&!c.value&&i.popup()}function N(x){x.target.tagName!=="INPUT"&&x.preventDefault(),x.stopPropagation()}function m(x){t.emit("keydown",x)}function T(x){x.key==="Enter"&&(r.value||l.value)&&i.hidePopup(),t.emit("keyup",x)}function w(x){const S=x.target.value;x.stopPropagation(),C(S)}return{hasFocusedTextBox:g,isTextBoxReadonly:s,textBoxClass:v,textBoxPlaceholder:f,textBoxTitle:p,inputGroupClass:F,hasClearClass:d,changeTextBoxValue:C,commitValue:y,onBlurTextBox:h,onClickTextBox:_,onFocusTextBox:b,onInput:V,onKeyDownTextBox:m,onKeyUpTextBox:T,onMouseDownTextBox:N,onTextBoxValueChange:w}}function yn(e,t,o,a){const i=n.ref(),r=n.ref(!1),{judgeCanOpen:l}=hn(e,a);function c(){const u=i.value;u&&u.show(o.value)}async function d(u=!1){if(!!t.slots.default){if(!u&&!r.value&&!await l())return;r.value=!r.value,await n.nextTick(),c()}}async function p(u=!1){if(!!t.slots.default){if(!u&&!await l())return;r.value=!0,await n.nextTick(),c()}}function f(){r.value=!1}function s(){r.value=!0,n.nextTick(()=>{c()})}return{hidePopup:f,showPopup:s,popup:p,shouldPopupContent:r,togglePopup:d,popoverRef:i}}function Oa(e,t,o){const a=n.ref(),{isTextBoxReadonly:i,textBoxClass:r,textBoxPlaceholder:l,textBoxTitle:c,onBlurTextBox:d,onClickTextBox:p,onFocusTextBox:f,onInput:s,onKeyDownTextBox:u,onKeyUpTextBox:g,onMouseDownTextBox:v,onTextBoxValueChange:F}=o;return n.onMounted(()=>{var C,y;e.selectOnCreated&&((C=a.value)==null||C.select()),e.focusOnCreated&&((y=a.value)==null||y.focus({preventScroll:e.preventScroll}))}),()=>n.createVNode("input",{ref:a,name:"input-group-value",autocomplete:e.autoComplete?"on":"off",class:r.value,disabled:e.disable,maxlength:e.maxLength,minlength:e.minLength,placeholder:l.value,readonly:i.value,tabindex:e.tabIndex,title:c.value,type:e.inputType,value:t.value,onBlur:d,onChange:F,onClick:p,onFocus:f,onInput:s,onKeydown:u,onKeyup:g,onMousedown:v},null)}function ja(e,t,o){const a=n.ref(e.separator),{changeTextBoxValue:i}=o,r=n.computed(()=>t.value?t.value.split(a.value).map(c=>({name:c,selectable:!0})):[]);function l(c){i(c.map(d=>d.name).join(a.value),!0)}return()=>n.createVNode(Zt,{id:`${e.id}-tag-editor`,class:"form-control",data:r.value,showClose:!0,showInput:!0,onChange:l},null)}function $a(e,t,o,a){const{buttonGroupClass:i,onClickButton:r,onMouseEnterButton:l,onMouseLeaveButton:c}=o,{enableClearButton:d,showClearButton:p,onClearValue:f}=a,s=n.ref();return{renderButtonGroup:()=>n.createVNode("div",{id:`${e.id}-button-group`,class:i.value},[d.value&&n.withDirectives(n.createVNode("span",{class:"input-group-text input-group-clear",onClick:f},[n.createVNode("i",{class:"f-icon modal_close"},null)]),[[n.vShow,p.value]]),t.slots.buttonContent?n.createVNode("span",{class:"input-group-text input-group-append-button",onClick:r,onMouseenter:l,onMouseleave:c},[t.slots.buttonContent()]):e.buttonContent?n.createVNode("span",{class:"input-group-text input-group-append-button",innerHTML:e.buttonContent,ref:s,onClick:r,onMouseenter:l,onMouseleave:c},null):null]),buttonHandleElement:s}}function Ra(e,t,o){const a=n.ref(e.popupMinWidth),{hidePopup:i,popoverRef:r}=o;return()=>n.createVNode(to,{id:`${e.id}-popover`,ref:r,visible:!0,placement:e.placement,host:e.popupHost,"keep-width-with-reference":e.keepWidthWithReference,fitContent:!0,"right-boundary":e.popupRightBoundary,minWidth:a.value,class:e.popupClass,offsetX:e.popupOffsetX,onHidden:i},{default:()=>{var l,c;return[(c=(l=t.slots).default)==null?void 0:c.call(l)]}})}const ht=n.defineComponent({name:"FButtonEdit",props:Ot,emits:["updateExtendInfo","clear","change","click","clickButton","blur","focus","mouseEnterIcon","mouseLeaveIcon","keyup","keydown","inputClick","input","update:modelValue"],setup(e,t){const o=n.ref(),a=n.ref(e.customClass),i=n.ref(e.modelValue),r=yn(e,t,o,i),{shouldPopupContent:l,hidePopup:c,showPopup:d,togglePopup:p}=r,f=gn(e,t,o,r,i),s=n.ref(""),u=Ea(e,t,i,s,r),{hasFocusedTextBox:g,commitValue:v,inputGroupClass:F}=u,C=Ma(e,t,i,g,s,u),{onMouseEnterTextBox:y,onMouseLeaveTextBox:h}=C,_=n.computed(()=>{const x={"f-button-edit":!0,"f-cmp-inputgroup":!0,"f-button-edit-nowrap":!e.wrapText};return a.value&&a.value.split(" ").reduce((S,B)=>(S[B]=!0,S),x),x});function b(){return e.multiSelect&&e.inputType==="tag"?ja(e,i,u):Oa(e,i,u)}let V=b();n.watch([()=>e.multiSelect,()=>e.inputType],()=>{V=b()});const{renderButtonGroup:N,buttonHandleElement:m}=$a(e,t,f,C),T=Ra(e,t,r),w={commitValue:v,elementRef:o,hidePopup:c,showPopup:d,popoverRef:r.popoverRef,shouldPopupContent:l,togglePopup:p,openDialog:()=>{m.value&&e.buttonBehavior==="Modal"&&m.value.click()},getModal:()=>{var x;return e.buttonBehavior==="Modal"?(x=f.modalRef.value)==null?void 0:x.value:null}};return n.onMounted(()=>{o.value.componentInstance=w,window.onresize=()=>{document.body.click()}}),t.expose(w),()=>n.createVNode(n.Fragment,null,[n.createVNode("div",n.mergeProps(t.attrs,{ref:o,class:_.value,id:e.id}),[n.createVNode("div",{id:`${e.id}-input-group`,class:F.value,onMouseenter:y,onMouseleave:h},[V(),N()])]),l.value&&T()])}}),Da={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/field-selector.schema.json",title:"field-selector",description:"A Farris Input Component",type:"object",properties:{disabled:{description:"",type:"boolean",default:"false"},readonly:{description:"",type:"boolean",default:"false"},modelValue:{description:"",type:"object",default:null},repositoryToken:{description:"",type:"object",default:null},fields:{description:"",type:"array",default:null},editorParams:{type:"object",default:null},displayText:{description:"",type:"string",default:""},enableClear:{description:"",type:"boolean",default:!0},beforeOpen:{description:"",type:"function",default:null},onSubmitModal:{description:"",type:"function",default:null},editorType:{description:"",type:"string",default:"filter"}}},jt={disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},enableClear:{type:Boolean,default:!0},displayText:{type:String,default:""},enableExpress:{type:Boolean,default:!1},modelValue:{type:Array,default:[]},insertType:{type:String,default:"below"},fields:{type:Array,default:[]},repositoryToken:{type:Object,default:null},editorParams:{type:Object,default:null},onSubmitModal:{type:Function,default:null},beforeOpen:{type:Function,default:null},editorType:{type:String,default:"filter"}},vn=Ye(jt,Da),bn={conditions:{type:Array,default:[]},fields:{type:Array,default:[]},activeIndex:{type:Number,default:-1},formatter:{type:Function,default:(e,t)=>`${t.raw.name} [${t.raw.path}]`}},Pa=new Map([["appearance",mt]]),La={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/combo-list.schema.json",title:"combo-list",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a combo list",type:"string"},type:{description:"The type string of number combo list component",type:"string",default:"combo-list"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disabled:{description:"",type:"boolean",default:!1},enableClear:{description:"",type:"boolean",default:!1},editable:{description:"",type:"boolean",default:!1},enableLinkLabel:{description:"",type:"boolean",default:!1},label:{description:"",type:"string",default:""},lableWidth:{description:"",type:"number"},placeholder:{description:"",type:"string",default:"请选择"},idField:{description:"",type:"string",default:"id"},valueField:{description:"",type:"string",default:"id"},titleField:{description:"",type:"string",default:"name"},textField:{description:"",type:"string",default:"name"},dataSourceType:{description:"",type:"string",default:"static"},data:{description:"",type:"array"},remote:{description:"",type:"string"},readonly:{description:"",type:"boolean",default:!1},required:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},textAlign:{description:"",type:"string",enum:["left","middle","right"],default:"left"},multiSelect:{description:"",type:"boolean",default:!1},visible:{description:"",type:"boolean",defa