@farris/ui-vue 1.3.4 → 1.3.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/condition/index.esm.js +2 -2
- package/components/condition/index.umd.cjs +1 -1
- package/components/data-grid/index.esm.js +4458 -4195
- package/components/data-grid/index.umd.cjs +1 -1
- package/components/data-view/index.esm.js +2464 -2445
- package/components/data-view/index.umd.cjs +1 -1
- package/components/designer-canvas/index.esm.js +2606 -2587
- package/components/designer-canvas/index.umd.cjs +1 -1
- package/components/event-parameter/index.css +1 -0
- package/components/event-parameter/index.esm.js +2640 -164
- package/components/event-parameter/index.umd.cjs +1 -1
- package/components/events-editor/index.esm.js +1 -1
- package/components/events-editor/index.umd.cjs +1 -1
- package/components/external-container/index.esm.js +2 -2
- package/components/external-container/index.umd.cjs +1 -1
- package/components/field-selector/index.esm.js +2267 -2248
- package/components/field-selector/index.umd.cjs +1 -1
- package/components/filter-bar/index.esm.js +3320 -3301
- package/components/filter-bar/index.umd.cjs +1 -1
- package/components/flow-canvas/index.esm.js +2843 -2824
- package/components/flow-canvas/index.umd.cjs +1 -1
- package/components/list-view/index.esm.js +2 -2
- package/components/list-view/index.umd.cjs +1 -1
- package/components/lookup/index.esm.js +5275 -5012
- package/components/lookup/index.umd.cjs +1 -1
- package/components/mapping-editor/index.esm.js +4572 -4309
- package/components/mapping-editor/index.umd.cjs +1 -1
- package/components/query-solution/index.esm.js +3142 -3124
- package/components/query-solution/index.umd.cjs +6 -6
- package/components/radio-group/index.esm.js +6 -6
- package/components/radio-group/index.umd.cjs +1 -1
- package/components/schema-selector/index.esm.js +2 -2
- package/components/schema-selector/index.umd.cjs +1 -1
- package/components/tree-grid/index.esm.js +2672 -2653
- package/components/tree-grid/index.umd.cjs +1 -1
- package/components/tree-view/index.esm.js +533 -529
- package/components/tree-view/index.umd.cjs +1 -1
- package/farris.all.esm.js +8836 -8574
- package/farris.all.umd.cjs +13 -13
- package/index.css +1 -1
- package/package.json +1 -1
- package/types/condition/src/composition/condition-value/input-group-value.d.ts +1 -1
- package/types/data-grid/src/components/data/data-grid-area.component.d.ts +8 -0
- package/types/data-grid/src/components/data/data-grid-area.props.d.ts +3 -0
- package/types/data-view/composition/types.d.ts +1 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(D,n){typeof exports=="object"&&typeof module<"u"?n(exports,require("vue"),require("lodash-es"),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("../pagination/index.umd.js"),require("../dynamic-form/index.umd.js"),require("../combo-list/index.umd.js"),require("../designer-canvas/index.umd.js"),require("../common/index.umd.js"),require("../number-spinner/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("../combo-tree/index.umd.js"),require("../component/index.umd.js"),require("../color-picker/index.umd.js"),require("../content-container/index.umd.js"),require("../date-picker/index.umd.js"),require("../data-grid/index.umd.js"),require("../dropdown/index.umd.js"),require("../events-editor/index.umd.js"),require("../field-selector/index.umd.js"),require("../binding-selector/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("../mapping-editor/index.umd.js"),require("../nav/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("../search-box/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("../tags/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("../weather/index.umd.js"),require("../video/index.umd.js"),require("../textarea/index.umd.js"),require("../schema-selector/index.umd.js"),require("../tree-grid/index.umd.js"),require("../event-parameter/index.umd.js"),require("../external-container/index.umd.js"),require("../dynamic-resolver/index.umd.js"),require("../data-view/index.umd.js"),require("../popover/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es","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","../pagination/index.umd.js","../dynamic-form/index.umd.js","../combo-list/index.umd.js","../designer-canvas/index.umd.js","../common/index.umd.js","../number-spinner/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","../combo-tree/index.umd.js","../component/index.umd.js","../color-picker/index.umd.js","../content-container/index.umd.js","../date-picker/index.umd.js","../data-grid/index.umd.js","../dropdown/index.umd.js","../events-editor/index.umd.js","../field-selector/index.umd.js","../binding-selector/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","../mapping-editor/index.umd.js","../nav/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","../search-box/index.umd.js","../section/index.umd.js","../smoke-detector/index.umd.js","../splitter/index.umd.js","../step/index.umd.js","../switch/index.umd.js","../tags/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","../weather/index.umd.js","../video/index.umd.js","../textarea/index.umd.js","../schema-selector/index.umd.js","../tree-grid/index.umd.js","../event-parameter/index.umd.js","../external-container/index.umd.js","../dynamic-resolver/index.umd.js","../data-view/index.umd.js","../popover/index.umd.js"],n):(D=typeof globalThis<"u"?globalThis:D||self,n(D["data-grid"]={},D.Vue,D.LodashES,D.BigNumber,D.VueUseCore,null,D.FTransfer$1,D.FTabs,D.FOrder,null,D.FCheckBox$1,D.FFilterBar,D.FPagination,D.FDynamicForm,D.FComboList,D.designerCanvas,D.common,D.FNumberSpinner,D.FAccordion,D.FAvatar,D.FButtonEdit$1,D.FButtonGroup,D.FCalendar,D.FCapsule,D.FComboTree,D.FComponent,D.FColorPicker,D.FContentContainer,D.FDatePicker,D.FDataGrid$1,D.FDropdown,D.FEventsEditor,D.FFieldSelector,D.FBindingSelector,D.FImageCropper,D.FInputGroup$1,D.FLayout,D.FListNav,D.FListView$1,D.FLookup,D.FMappingEditor,D.FNav,D.FNumberRange,D.FPageHeader,D.FPageFooter,D.FProgress,D.FQuerySolution,D.FRadioGroup,D.FRate,D.FResponseToolbar,D.FResponseLayout,D.FResponseLayoutEditorSetting,D.FSearchBox,D.FSection,D.FSmokeDetector,D.FSplitter,D.FStep,D.FSwitch,D.FTags,D.FText,D.FTimePicker,D.FTreeview,D.FUploader,D.FVerifyDetail,D.FWeather,D.FVideo,D.FTextArea,D.FSchemaSelector,D.FTreeGrid$1,D.FEventParameter,null,D.dynamicResolver,D.dataView,D.FPopover))})(this,function(D,n,je,Ts,dt,Is,lo,so,co,Ms,at,jt,Et,yt,vt,Rt,Ee,lt,uo,fo,po,mo,ho,go,yo,vo,bo,Co,wo,So,xo,_o,Fo,Vo,No,ko,To,Io,Mo,Bo,Oo,Po,$o,jo,Eo,Ro,Do,Ao,Ho,Go,Lo,Wo,qo,zo,Uo,Ko,Xo,Yo,Dt,Jo,Qo,Zo,ei,ti,ni,oi,ii,ri,ai,li,Bs,At,L,si){"use strict";var Ns=Object.defineProperty;var ks=(D,n,je)=>n in D?Ns(D,n,{enumerable:!0,configurable:!0,writable:!0,value:je}):D[n]=je;var H=(D,n,je)=>ks(D,typeof n!="symbol"?n+"":n,je);const Ht={},Gt={};function bt(e){const{properties:t,title:o,ignore:i}=e,a=i&&Array.isArray(i),r=Object.keys(t).reduce((l,s)=>((!a||!i.find(d=>d===s))&&(l[s]=t[s].type==="object"&&t[s].properties?bt(t[s]):je.cloneDeep(t[s].default)),l),{});if(o&&(!a||!i.find(l=>l==="id"))){const l=o.toLowerCase().replace(/-/g,"_");r.id=`${l}_${Math.random().toString().slice(2,6)}`}return r}function Lt(e,t={},o){const i=Ht[e];if(i){let a=bt(i);const r=Gt[e];return a=r?r({getSchemaByType:Lt},a,t,o):a,a}return null}function ci(e,t){const o=bt(t);return Object.keys(o).reduce((i,a)=>(i[a]&&je.isPlainObject(i[a])&&je.isPlainObject(e[a]||!e[a])?Object.assign(i[a],e[a]||{}):i[a]=e[a],i),o),o}function di(e,t){return Object.keys(e).filter(i=>e[i]!=null).reduce((i,a)=>{if(t.has(a)){const r=t.get(a);if(typeof r=="string")i[r]=e[a];else{const l=r(a,e[a],e);Object.assign(i,l)}}else i[a]=e[a];return i},{})}function ui(e,t,o=new Map){const i=ci(e,t);return di(i,o)}function fi(e={}){function t(u,f,c,p){if(typeof c=="number")return p[u].length===c;if(typeof c=="object"){const C=Object.keys(c)[0],g=c[C];if(C==="not")return Number(p[u].length)!==Number(g);if(C==="moreThan")return Number(p[u].length)>=Number(g);if(C==="lessThan")return Number(p[u].length)<=Number(g)}return!1}function o(u,f,c,p){return p[u]&&p[u].propertyValue&&String(p[u].propertyValue.value)===String(c)}const i=new Map([["length",t],["getProperty",o]]);Object.keys(e).reduce((u,f)=>(u.set(f,e[f]),u),i);function a(u,f){const c=u;return typeof f=="number"?[{target:c,operator:"length",param:null,value:Number(f)}]:typeof f=="boolean"?[{target:c,operator:"getProperty",param:u,value:!!f}]:typeof f=="object"?Object.keys(f).map(p=>{if(p==="length")return{target:c,operator:"length",param:null,value:f[p]};const C=p,g=f[p];return{target:c,operator:"getProperty",param:C,value:g}}):[]}function r(u){return Object.keys(u).reduce((c,p)=>{const C=a(p,u[p]);return c.push(...C),c},[])}function l(u,f){if(i.has(u.operator)){const c=i.get(u.operator);return c&&c(u.target,u.param,u.value,f)||!1}return!1}function s(u,f){return r(u).reduce((C,g)=>C&&l(g,f),!0)}function d(u,f){const c=Object.keys(u),p=c.includes("allOf"),C=c.includes("anyOf"),g=p||C,b=(g?u[g?p?"allOf":"anyOf":"allOf"]:[u]).map(y=>s(y,f));return p?!b.includes(!1):b.includes(!0)}return{parseValueSchema:d}}const ee={button:{type:"button",name:"按钮",icon:"Button"},"response-toolbar":{type:"response-toolbar",name:"工具栏",icon:"ButtonGroup"},"response-toolbar-item":{type:"response-toolbar-item",name:"按钮",icon:"Button"},"content-container":{type:"content-container",name:"容器",icon:"ContentContainer"},"input-group":{type:"input-group",name:"文本",icon:"TextBox"},textarea:{type:"textarea",name:"多行文本",icon:"MultiTextBox"},lookup:{type:"lookup",name:"帮助",icon:"LookupEdit"},"number-spinner":{type:"number-spinner",name:"数值",icon:"NumericBox"},"date-picker":{type:"date-picker",name:"日期",icon:"DateBox"},switch:{type:"switch",name:"开关",icon:"SwitchField"},"radio-group":{type:"radio-group",name:"单选组",icon:"RadioGroup"},"check-box":{type:"check-box",name:"复选框",icon:"CheckBox"},"check-group":{type:"check-group",name:"复选框组",icon:"CheckGroup"},"combo-list":{type:"combo-list",name:"下拉列表",icon:"EnumField"},"response-form":{type:"response-form",name:"卡片面板",icon:"Form"},"response-layout":{type:"response-layout",name:"布局容器",icon:"ResponseLayout3"},"response-layout-item":{type:"response-layout-item",name:"布局",icon:"ResponseLayout1"},"tree-grid":{type:"tree-grid",name:"树表格",icon:"TreeGrid"},"tree-grid-column":{type:"tree-grid-column",name:"树表格列"},"data-grid":{type:"data-grid",name:"表格",icon:"DataGrid"},"data-grid-column":{type:"data-grid-column",name:"表格列"},module:{type:"Module",name:"模块",icon:"Module"},component:{type:"component",name:"组件",icon:"Component"},tabs:{type:"tabs",name:"标签页",icon:"Tab"},"tab-page":{type:"tab-page",name:"标签页项",dependentParentControl:"Tab"},"tab-toolbar-item":{type:"tab-toolbar-item",name:"标签页工具栏按钮",icon:"Button"},"time-picker":{type:"time-picker",name:"时间选择",icon:"TimePicker"},section:{type:"section",name:"分组面板",icon:"Section"},"section-toolbar":{type:"section-toolbar",name:"分组面板工具栏"},"section-toolbar-item":{type:"section-toolbar-item",name:"分组面板按钮"},splitter:{type:"splitter",name:"分栏面板",icon:"Splitter"},"splitter-pane":{type:"splitter-pane",name:"分栏面板项",dependentParentControl:"Splitter"},"component-ref":{type:"component-ref",name:"组件引用节点"},uploader:{type:"uploader",name:"附件上传",icon:"FileUpload"},"page-header":{type:"page-header",name:"页头",icon:"Header"},"page-footer":{type:"page-footer",name:"页脚",icon:"ModalFooter"},"tab-toolbar":{type:"tab-toolbar",name:"标签页工具栏",icon:"TabToolbar"},fieldset:{type:"fieldset",name:"分组",icon:"fieldset"},"query-solution":{type:"query-solution",name:"筛选方案",icon:"QueryScheme"}},pi={},mi={};fi();function Ae(e,t,o=new Map,i=(l,s,d,u)=>s,a={},r=l=>l){return Ht[t.title]=t,Gt[t.title]=i,pi[t.title]=a,mi[t.title]=r,(l={})=>{const s=ui(l,t,o),d=Object.keys(e).reduce((u,f)=>(u[f]=e[f].default,u),{});return Object.assign(d,s)}}function Ye(e,t){return{customClass:t.class,customStyle:t.style}}function hi(){function e(t,o){const{id:i}=t||{},{dataSource:a}=t||{};return a===void 0?{}:{data:o.getValue(i),"onUpdate:data":(...r)=>{}}}return{resolve:e}}function gi(){function e(t,o){const{dataSource:i}=t||{};return i===void 0?{}:{}}return{resolve:e}}function yi(){function e(t,o){return t.selectItemById(o)}return{selectItemById:e}}function vi(){function e(t,o){return t.selectItemById(o)}return{selectItemById:e}}const Wt=new Map([["appearance",Ye],["column","columnOption"]]),qt=new Map([]);var zt=(e=>(e.SimpleField="SimpleField",e.ComplexField="ComplexField",e))(zt||{}),st=(e=>(e.String="String",e.DateTime="DateTime",e.Date="Date",e.Enum="Enum",e.Boolean="Boolean",e.Number="Number",e.Text="Text",e.BigNumber="BigNumber",e))(st||{});function Ut(){function e(){const o=i=>{const a=Math.random()*16|0;return(i==="x"?a:a&3|8).toString(16)};return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,o)}function t(o,i){const a="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".split(""),r=[];let l;if(i=i||a.length,o)for(l=0;l<o;l++)r[l]=a[0|Math.random()*i];else{let s;for(r[8]=r[13]=r[18]=r[23]="-",r[14]="4",l=0;l<36;l++)r[l]||(s=0|Math.random()*16,r[l]=a[l===19?s&3|8:s])}return r.join("")}return{guid:e,uuid:t}}const bi=["moz","ms","webkit"];function Ci(){let e=0;return t=>{const o=new Date().getTime(),i=Math.max(0,16-(o-e)),a=setTimeout(()=>{t(o+i)},i);return e=o+i,a}}function wi(){if(typeof window>"u")return()=>0;if(window.requestAnimationFrame)return window.requestAnimationFrame.bind(window);const e=bi.filter(t=>`${t}RequestAnimationFrame`in window)[0];return e?window[`${e}RequestAnimationFrame`]:Ci()}wi();const Si="root-viewmodel";class xi{constructor(t,o){H(this,"formSchemaUtils");H(this,"controlCreatorUtils");H(this,"designViewModelUtils");H(this,"useFormCommand");this.resolver=t,this.designerHostService=o,this.formSchemaUtils=this.designerHostService.formSchemaUtils,this.controlCreatorUtils=this.designerHostService.controlCreatorUtils,this.designViewModelUtils=this.designerHostService.designViewModelUtils,this.useFormCommand=this.designerHostService.useFormCommand}createComponent(t){const o=this.createComponentRefNode(t),i=this.createComponentNode(t),a=this.createViewModeNode(t),r=this.formSchemaUtils.getFormSchema();return r.module.viewmodels.push(a),r.module.components.push(i),this.designViewModelUtils.assembleDesignViewModel(),this.wrapContainerSectionForComponent(o,t,a,i.id)}wrapContainerSectionForComponent(t,o,i,a){var s,d,u,f,c,p;const r=(d=(s=o==null?void 0:o.parentComponentInstance)==null?void 0:s.schema)==null?void 0:d.type,l=[ee["content-container"].type,ee["response-layout-item"].type,ee["splitter-pane"].type];if(r&&l.includes(r)){const C=this.resolver.getSchemaByType("section",{parentComponentInstance:o.parentComponentInstance,mainTitle:o.componentName},this.designerHostService);if(C&&C.contents&&C.contents.length){const g=C.contents[0];return g.contents=[t],this.appendAddDeleteBtnToParentContainer(g,o,i),C}}return this.appendAddDeleteBtnToParentContainer((u=o==null?void 0:o.parentComponentInstance)==null?void 0:u.schema,o,i),r===ee["tab-page"].type&&(f=o.parentComponentInstance)!=null&&f.parent&&(c=o.parentComponentInstance)!=null&&c.parent.updateToolbarItems&&((p=o.parentComponentInstance)==null||p.parent.updateToolbarItems()),t}appendAddDeleteBtnToParentContainer(t,o,i){const a=t.type,r=i.id.replace(/-/g,"").replace(/_/g,"").replace("component","").replace("viewmodel","");if(o.bindTo==="/"||o.componentType!=="data-grid"&&o.componentType!=="form")return;const l=ee["tab-page"].type===a?"tab-toolbar-item":"section-toolbar-item",s=[{id:`button-add-${o.componentId}`,type:l,text:"新增",disable:"!viewModel.stateMachine['canAddDetail']",appearance:{class:"btn btn-secondary f-btn-ml"},onClick:`root-viewModel.${i.id}.${r}AddItem1`},{id:`button-remove-${o.componentId}`,type:l,text:"删除",disable:"!viewModel.stateMachine['canRemoveDetail']",appearance:{class:"btn btn-secondary f-btn-ml"},onClick:`root-viewModel.${i.id}.${r}RemoveItem1`}];t.toolbar||(t.toolbar={buttons:[]}),t.toolbar.buttons||(t.toolbar.buttons=[]),t.toolbar.buttons=t.toolbar.buttons.concat(s),this.appendAddAndDeleteCommands(i)}appendAddAndDeleteCommands(t){const o=t.id.replace(/-/g,"").replace(/_/g,"").replace("component","").replace("viewmodel",""),i=Ut().guid,a=Ut().guid,r=this.resolveCommandController();t.commands.push({id:i,code:`${o}AddItem1`,name:"增加一条子表数据",params:[],handlerName:"AddItem",cmpId:r,shortcut:{},extensions:[]},{id:a,code:`${o}RemoveItem1`,name:"删除一条子表数据",params:[{name:"id",shownName:"待删除子表数据的标识",value:`{DATA~${t.bindTo}/id}`}],handlerName:"RemoveItem",cmpId:r,shortcut:{},extensions:[]}),this.formSchemaUtils.getFormSchema().module.webcmds.find(d=>d.id===r).refedHandlers.push({host:i,handler:"AddItem"},{host:a,handler:"RemoveItem"})}resolveCommandController(){const t=this.formSchemaUtils.getFormSchema().module.webcmds,o=["8172a979-2c80-4637-ace7-b13074d3f393","8fe977a1-2b32-4f0f-a6b3-2657c4d03574","45be24f9-c1f7-44f7-b447-fe2ada458a61"],i=t.find(r=>o.includes(r.id));if(i)return i.id;const a="45be24f9-c1f7-44f7-b447-fe2ada458a61";return t.push({id:a,path:"/projects/packages/Inspur.GS.Gsp.Web.WebCmp/webcmd",name:"AdvancedListCardController.webcmd",refedHandlers:[]}),this.useFormCommand&&this.useFormCommand.checkCommands(),a}createComponentRefNode(t){const o=this.resolver.getSchemaByType("component-ref");return Object.assign(o,{id:`${t.componentId}-component-ref`,component:`${t.componentId}-component`}),o}createComponentNode(t){const o=this.resolver.getSchemaByType("component"),i=this.createDateGridComponentContents(t);return Object.assign(o,{id:`${t.componentId}-component`,viewModel:`${t.componentId}-component-viewmodel`,componentType:t.componentType,appearance:{class:this.getDataGridComponentClass()},contents:i}),o}createViewModeNode(t){return{id:`${t.componentId}-component-viewmodel`,code:`${t.componentId}-component-viewmodel`,name:t.componentName,bindTo:t.bindTo,parent:Si,fields:this.assembleViewModelFields(t),commands:[],states:[],enableValidation:!0}}getDataGridComponentClass(){const{templateId:t}=this.formSchemaUtils.getFormSchema().module;return t==="double-list-in-tab-template"?"f-struct-wrapper f-utils-fill-flex-column":"f-struct-is-subgrid"}createDateGridComponentContents(t){const{templateId:o}=this.formSchemaUtils.getFormSchema().module;let i;if(o==="double-list-in-tab-template"){const s=this.resolver.getSchemaByType("section");Object.assign(s,{id:t.componentId+"-section",appearance:{class:"f-section-grid f-section-in-main px-0 pt-0"},fill:!0,showHeader:!1}),i=s}else{const s=this.resolver.getSchemaByType("content-container");Object.assign(s,{id:t.componentId+"-container",appearance:{class:"f-grid-is-sub f-utils-flex-column"}}),i=s}const a=this.resolver.getSchemaByType("data-grid"),r=[];Object.assign(a,{id:t.componentId+"-dataGrid",appearance:{class:"f-component-grid f-utils-fill"},columns:r,fieldEditable:t.editable,dataSource:t.dataSource||"",pagination:{enable:!t.editable}}),i.contents=[a];const{selectedFields:l}=t;return l==null||l.forEach(s=>{if(s.$type===zt.ComplexField)return;const d=je.cloneDeep(s),u=this.controlCreatorUtils.setGridFieldProperty("data-grid-column",d,"",t.editable);u&&r.push(u)}),[i]}assembleViewModelFields(t){const o=[],{selectedFields:i}=t;return i==null||i.forEach(a=>{let r="blur";const l=a.type.name;(l===st.Enum||l===st.Boolean)&&(r="change"),o.push({type:"Form",id:a.id,fieldName:a.bindingField,groupId:null,groupName:null,updateOn:r,fieldSchema:{}})}),o}}function Kt(e,t,o,i){var r,l,s,d,u,f;const a=o.parentComponentInstance;if(a&&i){const c=Math.random().toString(36).slice(2,6),p={componentId:`data-grid-${c}`,componentName:((l=(r=o.bindingSourceContext)==null?void 0:r.bindingEntity)==null?void 0:l.name)||`表格-${c}`,componentType:"data-grid",parentContainerId:a.schema.id,parentComponentInstance:a,editable:!0,bindTo:((s=o.bindingSourceContext)==null?void 0:s.bindTo)||"",dataSource:(u=(d=o.bindingSourceContext)==null?void 0:d.bindingEntity)==null?void 0:u.label,selectedFields:(f=o.bindingSourceContext)==null?void 0:f.bindingEntityFields};return new xi(e,i).createComponent(p)}else return t}function Xt(e,t,o){return t}const _i={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/data-grid.schema.json",title:"data-grid",description:"A Farris Data Grid 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:"data-grid"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},fit:{type:"boolean",default:!1},showStripe:{type:"boolean",default:!0},showBorder:{type:"boolean",default:!1},showSetting:{type:"boolean",default:!1},size:{description:"",type:"object",properties:{width:{type:"number"},height:{type:"number"}},default:null},dataSource:{description:"",type:"string",default:""},columns:{description:"",type:"array",default:[]},identifyField:{description:"",type:"string"},editable:{description:"",type:"boolean",default:!1},disable:{description:"",type:"boolean",default:!1},visible:{description:"",type:"boolean",default:!0},fieldEditable:{description:"是否可编辑",type:"boolean",default:!1},cell:{type:"object",properties:{highlightFocusingCell:{description:"",type:"boolean",default:!1},mergeCell:{description:"",type:"boolean",default:!1},showEditableIcon:{description:"",type:"boolean",default:!1}}},column:{type:"object",properties:{fitColumns:{description:"",type:"boolean",default:!1},fitMode:{description:"",type:"string",default:"average"},groups:{description:"",type:"array",default:[]},reorderColumn:{description:"Enable to drag column to reorder",type:"boolean",default:!1},resizeColumn:{type:"boolean",default:!0},resizeColumnOnDoubleClick:{description:"",type:"boolean",default:!0}}},command:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},commands:{type:"array",default:[]},commandColumnWidth:{description:"",type:"number",default:120},onClickDeleteCommand:{description:"",type:"string",default:""},onClickEditCommand:{description:"",type:"string",default:""}}},contextMenu:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1}}},customizaiton:{type:"object",properties:{enableScheme:{description:"",type:"boolean",default:!1},enableSetting:{description:"",type:"boolean",default:!1}}},edit:{type:"obejct",properties:{mode:{description:"",type:"string",default:"cell",enum:["cell","row","card"]},selectOnEditing:{description:"",type:"boolean",default:!1},onAppendRow:{description:"",type:"string",default:""},onBeforeEdit:{description:"",type:"string",default:""}}},filter:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},filterStyle:{description:"",type:"string",default:"filter-column",enum:["filter-column","filter-row"]},mode:{description:"",type:"string",default:"server",enum:["client","server"]},showSummary:{description:"",type:"boolean",default:!0},onFilterChange:{description:"",type:"string",default:""}}},footer:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},customFooterStyle:{description:"",type:"object"},footerDataCommand:{description:"",type:"string",default:""},footerDataFrom:{description:"",type:"string",default:"client"},footerHeight:{description:"",type:"number",default:29},footerPosition:{description:"",type:"string",default:"bottom"},footerTemplate:{description:"",type:"string",default:""}}},group:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1},customGroupRow:{description:"",type:"object"},customGroupRowStyle:{description:"",type:"obejct"},customSummaryStyle:{description:"",type:"obejct"},groupColSpan:{description:"",type:"number",default:1},groupFields:{description:"",type:"array",default:[]},showGroupedColumn:{description:"",type:"boolean",default:!0},showGroupPanel:{description:"",type:"boolean",default:!1},showSummary:{description:"",type:"boolean",default:!1},summaryPosition:{description:"",type:"string",default:"separate",enum:["separate","merge-to-group"]},disableGroupOnEditing:{description:"",type:"boolean",default:!0},expandGroupRows:{description:"",type:"boolean",default:!0}}},header:{type:"object",properties:{wrapHeadings:{description:"",type:"boolean",default:!1}}},pagination:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},disablePagination:{description:"",type:"string",default:""},contentTemplate:{description:"",type:"string",default:""},index:{description:"",type:"number",default:1},mode:{description:"",type:"enum",default:"client",enum:["server","client"]},showGoto:{description:"",type:"boolean",default:!1},showIndex:{description:"",type:"boolean",default:!0},showLimits:{description:"",type:"boolean",default:!1},showPageInfo:{description:"",type:"boolean",default:!0},size:{description:"",type:"number",default:20},sizeLimits:{description:"",type:"array",default:[10,20,30,50,100]},onPageChange:{description:"",type:"string",default:""},onPageSizeChange:{description:"",type:"string",default:""}}},row:{type:"object",properties:{customRowStyle:{description:"",type:"object"},disable:{description:"",type:"obejct"},height:{description:"",type:"number",default:30},showHovering:{type:"boolean",default:!0},wrapContent:{type:"boolean",default:!1}}},rowNumber:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!0},heading:{description:"",type:"string",default:"序号"},width:{description:"",type:"number",default:36},showEllipsis:{description:"",type:"boolean",default:!0}}},onClickRow:{description:"行点击事件",type:"string",default:""},onSelectionChange:{description:"行切换事件",type:"string",default:""},onPageIndexChanged:{description:"切换页码事件",type:"string",default:""},onPageSizeChanged:{description:"分页条数变化事件",type:"string",default:""},selection:{type:"object",properties:{enableSelectRow:{description:"允许选中行",type:"boolean",default:!0},enable:{description:"",type:"boolean",default:!0},checkOnSelect:{description:"",type:"boolean",default:!1},clearSelectionOnEmpty:{description:"",type:"boolean",default:!0},customSelectionItem:{description:"",type:"object"},focusSelection:{description:"",type:"string",default:"current",enum:["current","all"]},keepSelectingOnClick:{description:"",type:"boolean",default:!0},keepSelectingOnPaging:{description:"",type:"boolean",default:!0},multiSelect:{description:"",type:"boolean",default:!1},selectionMode:{description:"",type:"string",default:"default"},selectOnCheck:{description:"",type:"boolean",default:!1},selectOnEditing:{description:"",type:"boolean",default:!1},showCheckbox:{description:"",type:"boolean",default:!1},showCheckAll:{description:"",type:"boolean",default:!1},showSelection:{description:"",type:"boolean",default:!1},onBeforeSelect:{description:"",type:"string",default:""},onBeforeUnCheck:{description:"",type:"",default:""},onBeforeUnSelect:{description:"",type:"string",default:""},onCheckAll:{description:"",type:"string",default:""},onChecked:{description:"",type:"string",default:""},onSelectionChange:{description:"",type:"string",default:""},onUnCheckAll:{description:"",type:"string",default:""},onUnChecked:{description:"",type:"string",default:""},onCheckedChange:{description:"",type:"string"}}},sort:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},fields:{description:"",type:"array",default:[]},mode:{description:"",type:"string",default:"client",enum:["client","server"]},multiSort:{description:"",type:"boolean",default:!1}}},summary:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1},customSummaryStyle:{description:"",type:"object"},groupFields:{description:"",type:"array",default:[]},mode:{description:"",type:"string",default:"client",enum:["client","server"]},position:{description:"",type:"boolean",default:"bottom",enum:["bottom","top","both"]}}},toolbar:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1}}},visualization:{autoHeight:{description:"",type:"boolean",default:!1},emptyDataHeight:{description:"",type:"number",default:36},emptyTemplate:{description:"",type:"string",default:""},maxHeight:{description:"",type:"number",default:300},scrollBarShowMode:{description:"",type:"string",default:"auto"},showBorder:{description:"",type:"boolean",default:!1},showScrollArrow:{description:"",type:"boolean",default:!1},striped:{description:"",type:"boolean",default:!0},useBlankWhenDataIsEmpty:{description:"",type:"boolean",default:!1}}},required:["id","type"]},Fi={enable:{type:Boolean,default:!1},index:{type:Number,default:1},mode:{type:String,default:"client"},showGoto:{type:Boolean,default:!1},showIndex:{type:Boolean,default:!0},showLimits:{type:Boolean,default:!1},showPageInfo:{type:Boolean,default:!0},size:{type:Number,default:20},sizeLimits:{type:Array,default:[10,20,30,50,100]},total:{type:Number,default:0}},Vi={enable:{type:Boolean,default:!1},fields:{type:Array,default:[]},mode:{type:String,default:"client"},multiSort:{type:Boolean,default:!1}},Ni={customGroupRow:{type:Function,default:()=>{}},customGroupRowStyle:{type:Function,default:()=>{}},customSummaryStyle:{type:Function,default:()=>{}},enable:{type:Boolean,default:!1},groupColSpan:{type:Number,default:1},groupFields:{type:Array,default:[]},showGroupedColumn:{type:Boolean,default:!0},showGroupPanel:{type:Boolean,default:!1},showSummary:{type:Boolean,default:!1},summaryPosition:{type:String,default:"separate"}},ki={enable:{type:Boolean,default:!1},filterStyle:{type:String,default:"filter-column"},mode:{type:String,default:"server"},showSummary:{type:Boolean,default:!0}},Ti={wrapHeadings:{type:Boolean,default:!1}},Ii={enable:{type:Boolean,default:!1},heading:{type:String,default:"序号"},width:{type:Number,default:36},showEllipsis:{type:Boolean,default:!0}},Mi={customRowStyle:{type:Function,default:()=>{}},customRowStatus:{type:Function,default:()=>{}},disable:{type:Function,default:()=>{}},height:{type:Number,default:28},showHovering:{type:Boolean,default:!0},wrapContent:{type:Boolean,default:!1}},Bi={enable:{type:Boolean,default:!1},customSummaryStyle:{type:Function,default:()=>{}},groupFields:{type:Array,default:[]},mode:{type:String,default:"client"},position:{type:String,default:"bottom"}},Oi={fitColumns:{type:Boolean,default:!1},fitMode:{type:String,default:"average"},groups:{type:Array,defaut:[]},reorderColumn:{type:Boolean,default:!1},resizeColumn:{type:Boolean,default:!0},resizeColumnOnDoubleClick:{type:Boolean,default:!0}},Pi={checkOnSelect:{type:Boolean,default:!1},clearSelectionOnEmpty:{type:Boolean,default:!0},customSelectionItem:{type:Function,default:()=>{}},enabelSelectRow:{type:Boolean,default:!0},keepSelectingOnClick:{type:Boolean,default:!0},keepSelectingOnPaging:{type:Boolean,default:!0},multiSelect:{type:Boolean,default:!1},focusSelection:{type:String,default:"current"},selectOnCheck:{type:Boolean,default:!1},showCheckbox:{type:Boolean,default:!1},showSelectAll:{type:Boolean,default:!1},showSelection:{type:Boolean,default:!1}},$i={selectOnEditing:{type:Boolean,default:!1},editMode:{type:String,default:"cell"}},ji={show:{type:Boolean,default:!1},message:{type:String,default:"加载中..."}},ut={changePolicy:{type:String,default:"push"},columns:{type:Array,default:[]},columnOption:{type:Object},data:{type:Array,default:[]},disabled:{type:Boolean,default:!1},disabledField:{type:String,default:"disabled"},editable:{type:Boolean,default:!1},editOption:{type:Object,default:{selectOnEditing:!1,editMode:"cell"}},filter:{type:Object},fit:{type:Boolean,default:!1},focusOnEditingCell:{type:Boolean,default:!0},selectOnEditingCell:{type:Boolean,default:!1},group:{type:Object},header:{type:Object},height:{type:Number,default:-1},id:{type:String,default:""},idField:{type:String,default:"id",require:!0},minHeight:{type:Number,default:300},minWidth:{type:Number,default:400},mergeCell:{type:Boolean,default:!1},pagination:{type:Object,default:{enable:!1,size:20}},rowNumber:{type:Object,default:{enable:!0,width:32,heading:"序号"}},rowOption:{type:Object,default:{wrapContent:!1}},selection:{type:Object,default:{enableSelectRow:!0,multiSelect:!1,multiSelectMode:"DependOnCheck",showCheckbox:!1,showSelectAll:!1,showSelection:!0}},selectionValues:{type:Array,default:[]},showBorder:{type:Boolean,default:!1},showFooter:{type:Boolean,default:!1},showHeader:{type:Boolean,default:!0},showScrollBar:{type:String,default:"auto"},showSetting:{type:Boolean,default:!1},showStripe:{type:Boolean,default:!0},sort:{type:Object},summary:{type:Object,default:{enable:!1,groupFields:["numericField1","numericField2"]}},virtualized:{type:Boolean,default:!1},width:{type:Number,default:-1},newDataItem:{type:Function,default:()=>{}},enableCommands:{type:Boolean,default:!1},commandOption:{type:Object,default:{enable:!1,commands:[]}},appendOnEnterAtLastCell:{type:Boolean,default:!1},loading:{type:Boolean,default:!1}},Yt=Object.assign({},ut,{componentId:{type:String,default:""}}),Ct=Ae(ut,_i,Wt,Kt),Jt=hi(),Qt=yi();var Pe=(e=>(e[e.readonly=0]="readonly",e[e.editable=1]="editable",e[e.editing=2]="editing",e))(Pe||{}),Ge=(e=>(e[e.initial=0]="initial",e[e.editing=1]="editing",e))(Ge||{}),Je=(e=>(e[e.data=0]="data",e[e.group=1]="group",e[e.summary=2]="summary",e))(Je||{}),Te=(e=>(e[e.none=0]="none",e[e.filterable=1]="filterable",e[e.sortable=2]="sortable",e[e.filtered=4]="filtered",e[e.sorted=8]="sorted",e[e.ascending=16]="ascending",e[e.descending=32]="descending",e))(Te||{}),wt=(e=>(e.NONE="none",e.NUMBER="number",e.DATE="date",e.TEXT="boolean",e.IMAGE="boolean2",e.ENUM="enum",e.CUSTOM="custom",e))(wt||{});function Ei(){function e(){return n.createVNode("div",{class:"fv-grid-disable"},null)}return{renderDisableMask:e}}function Ri(e,t,o,i,a){const{columnContext:r}=t,{conditions:l,clearCondition:s,removeCondition:d}=i,u=n.ref([]);function f(){const g=[];Array.from(l.value).forEach((x,S)=>{var h;const b={id:x.id,code:x.fieldCode,labelCode:x.fieldCode,name:x.fieldName,editor:{type:(h=x.value)==null?void 0:h.editorType}};g.push(b)}),u.value=g}n.watch(l,()=>f());function c(g){d(`field_filter_${g}`);const x=r.value.primaryHeaderColumns.find(S=>S.field===g);if(x){x.filterValue=null;let S=x.status;S=(S&Te.filtered)===Te.filtered?S^Te.filtered:S,x.status=S}o.refresh(),a.reCalculateVisualDataRows()}function p(){s(),r.value.primaryHeaderColumns.forEach(g=>{g.filterValue=null;let x=g.status;x=(x&Te.filtered)===Te.filtered?x^Te.filtered:x,g.status=x}),o.refresh(),a.reCalculateVisualDataRows()}function C(){return n.createVNode("div",{class:"fv-grid-filter-panel"},[n.createVNode(jt.FFilterBar,{data:l.value,fields:u.value,mode:"display-only","show-reset":!0,onRemove:c,onReset:p},null)])}return{renderFilterPanel:C}}function Di(e,t,o,i,a){const{dropOnGroupPanel:r,groupColumnItems:l}=o,{groupFields:s,shouldGroupingData:d,showGroupPanel:u}=i,f=n.ref();function c(g){s.value=g.map(x=>x.value),t.updateDataView(),a.reCalculateVisualDataRows()}function p(g){g.preventDefault()}function C(){return d.value&&u.value&&n.createVNode("div",{class:"fv-grid-group-panel",onDrop:r,onDragover:p},[l.value&&n.createVNode(n.resolveComponent("f-tags"),{ref:f,style:"margin:0.375rem","tag-type":"default",data:l.value,"tag-style":"capsule","show-close":!0,onChange:c},null)])}return{renderGroupPanel:C}}function St(e,t){var C;const o=String(Date.now()),i=((C=e.rowOption)==null?void 0:C.height)||28,a=n.ref(t.value.primaryColumnsWidth);function r(g){const x={};return g.reduce((S,b,h)=>{const y=h<g.length-1?g[h+1]:null;return h===0&&(S[b.field]={left:0}),b.actualWidth!==void 0&&(S[b.field].width=b.actualWidth),y&&(S[y.field]={left:S[b.field].left+(b.actualWidth||0)}),S},x),x}function l(g,x,S){const b=i*(S+1),y=x[g.field].left-b+(x[g.field].width||0),_=g.parent.height?`${g.parent.height}px`:"";return{left:`${b}px`,width:`${y}px`,height:`${_}`}}function s(g,x,S){return{right:"0px",height:`${g.parent.height?`${g.parent.height}px`:""}`}}function d(g,x){const S=g.parent.height?`${g.parent.height}px`:"";return{left:`${x[g.field].left}px`,height:`${S}`,width:isNaN(Number(x[g.field].width))?"100%":`${x[g.field].width}px`}}function u(g,x,S){const h=(x.spanned||[]).reduce((_,w)=>_+(w.parent.height||0),0)+(g.height||0);return{top:`${g.top}px`,left:`${S[x.field].left}px`,width:`${S[x.field].width}px`,height:`${h}px`,padding:`calc(${h/2}px - 1rem) 0`}}function f(g,x){return`${o}_${g.type}_r_${g.index}_c_${x}_${g.refreshKey||""}`}function c(g){return`${o}_${g.type}_r_${g.index}_${g.refreshKey||""}`}function p(g){const x=g.height?`${g.height}px`:"";return{top:`${g.top}px`,width:isNaN(a.value)?"100%":`${a.value}px`,height:`${x}`}}return n.watch(t,()=>{a.value=t.value.primaryColumnsWidth}),{calculateCellPositionInRow:r,cellKey:f,cellPosition:d,groupCellPosition:l,rowKey:c,rowPosition:p,rowSpanCellPosition:u,summaryCellPosition:s}}function Ai(e,t,o){const{hasChildrenField:i}=o,a=n.ref("#9399a0"),r=n.ref(28);function l(){return[].concat(...t.value.filter(p=>p.raw.__fv_descendant_index__.length!==0).map(p=>[...p.raw.__fv_descendant_index__.slice(-1)]).flat()).sort((p,C)=>Number(p)-Number(C))}function s(f){const c=new Array(t.value.length).fill(0);if(e.showLines){const p=l();t.value.forEach((C,g)=>{const x=p.includes(g),S=C.raw[i.value];c[g]=`repeating-linear-gradient(90deg, ${a.value} 0 1px, transparent 0px 2px) ${S?"-10px":"0px"} ${r.value/2}px/20px 1px no-repeat,repeating-linear-gradient(${a.value} 0 1px, transparent 0px 2px) 0px 0px/1px ${x?"50%":"100%"} no-repeat`}),c[0]=""}return c[f]}function d(f,c,p){return p[f].parents.set(f,!0).forEach(g=>{p[g].childsLength=p[g].childWithLines.filter(x=>c[x].visible).length}),c}function u(f){const C=f.raw.__fv_parent_index__===void 0||f.raw.__fv_parent_index__===-1?0:8,g=0,x=f.raw[i.value],S=f.visible?{left:`${f.layer*10+f.layer*C+g}px`,background:s(f.index),display:"flex",width:"100%",position:"relative",paddingLeft:"0.75rem"}:{display:"none"};return x||(S.paddingLeft="2rem"),S}return{hierarchyCellContentStyle:u,handleCollapsedPaddingBottom:d}}function Hi(e,t,o){const i=n.ref(e.iconField);function a(r,l){if(i.value)return r.raw[e.iconField];let s="";return r.raw[o.value]!==!0?s=t.value.leafnodes:s=r.collapse?t.value.fold:t.value.unfold,s}return{treeNodeIconsClass:a}}function xt(){function e(o,i){const a=o.pre;if(a){const r=o.visible?(a.__fv_data_position__||0)+(a.__fv_data_height__||0):a.__fv_data_position__;o.top=r,i.__fv_data_position__=r}else o.top=0,i.__fv_data_position__=0}function t(o,i,a){if(o){const r=i.parent;i.cellHeight!==o.offsetHeight&&(i.cellHeight=o.offsetHeight),i.cellHeight&&i.cellHeight>(r.height||0)&&(r.height=i.cellHeight,a.__fv_data_height__=r.height),e(r,a)}}return{updateRowPosition:e,updateVisualInfomation:t}}function Gi(e,t,o,i,a,r){const{dataView:l,fold:s,hasRealChildren:d,unFold:u}=i,{collapseField:f,hasChildrenField:c}=a,{updateRowPosition:p}=xt();function C(S,b){const h=b[S].layer;let y=S+1;for(;y<b.length&&b[y].layer>h;)y++;return y-1}function g(S,b){o.value[S].collapse=!o.value[S].collapse,o.value[S].raw[f.value]=o.value[S].collapse,o.value[S].raw[c.value]=d(o.value[S].raw);const h=o.value[S].collapse;let y=!1,_=S;for(;_<o.value.length;){const F=o.value[_];if((typeof F.raw.__fv_parent_index__=="number"?Number(F.raw.__fv_parent_index__):-1)>b)F.visible=!h,F.raw.__fv_visible__=F.visible,F.collapse&&(_=C(_,o.value)),y=!0;else if(y){_++;break}_++}let w=S;for(;w<o.value.length;){const F=o.value[w];p(F,F.raw),w++}}function x(S){if(S.raw[c.value]){const h=typeof S.raw.__fv_parent_index__=="number"?Number(S.raw.__fv_parent_index__):-1;g(Number(S.raw.__fv_index__),h)}t.emit("expandNode",{row:S})}return{toggleTreeNode:x}}function Li(e,t,o,i,a,r,l,s,d,u,f){const{onClickCell:c}=r,{gridRowClass:p,onClickRow:C,onMouseoverRow:g,onMouseoutRow:x}=s,{clearSelection:S,enableMultiSelect:b,select:h,unSelect:y,isSelectingHirarchyItem:_,multiSelectOnClickRow:w,multiSelectOnlyOnCheck:F,selectItem:V,toggleSelectItem:v}=d;n.ref(e.cellHeight);const m=n.ref(e.treeNodeIconsData||{}),{hasChildrenField:N,shouldShowCheckBox:T,shouldShowIcon:I}=l,{toggleTreeNode:O}=Gi(e,t,i,a,l),{toggleSelectHierarchyItem:k}=u,{cellKey:B,cellPosition:P,rowKey:M,rowPosition:$}=St(e,o),{hierarchyCellContentStyle:R}=Ai(e,i,l),{treeNodeIconsClass:E}=Hi(e,m,N);function A(W,z){const ce=W.raw[N.value];return{"fv-tree-node-toggle":ce&&W.collapse,"fv-tree-node-toggle-minus":ce&&!W.collapse}}function K(W,z){W.stopPropagation(),O(z)}function oe(W,z){return n.createVNode("div",{class:A(W),onClick:ce=>K(ce,W)},null)}function pe(W,z){return I.value&&n.createVNode("div",{id:"treeNodeIcons",class:E(W,z)},null)}function Ve(W){b.value?(W.checked?h(W):y(W),k(W)):V(W)}function me(W,z){return T.value&&n.createVNode(at.FCheckBox,{id:"checkbox_for_"+B(W,z.index),indeterminate:W.indeterminate,checked:W.checked,"onUpdate:checked":ce=>W.checked=ce,onChange:()=>Ve(W)},null)}function Se(W,z){return n.createVNode("span",{title:z.data},[z.mode===Pe.editing?z.getEditor(z):z.formatter?z.formatter(z,W):z.data!=null?z.data.toString():z.data])}function xe(W,z,ce){return n.createVNode("div",{ref:z.setRef,key:B(W,z.index),class:"fv-grid-hierarchy-cell",style:P(z,ce)},[n.createVNode("div",{style:R(W)},[oe(W),pe(W,z),me(W,z),Se(W,z)])])}function de(W,z,ce,we){return n.createVNode("div",{ref:z.setRef,key:B(W,z.index),class:"fv-grid-cell",style:P(z,ce),onClick:ae=>c(ae,z,W,we)},[z.mode===Pe.editing?z.getEditor(z):z.formatter?z.formatter(z,W):z.data!=null?z.data.toString():z.data])}function ue(W,z){return z==="left"&&o.value.leftColumns.length>0&&o.value.leftColumns[0].field===W.field||z==="primary"&&o.value.primaryColumns.length>0&&o.value.primaryColumns[0].field===W.field}function ye(W,z,ce="primary",we){return n.createVNode("div",{ref:W.setRef,key:M(W),class:p(W),style:$(W),onMouseover:ae=>g(ae,W),onMouseout:ae=>x(ae,W),onClick:ae=>C(ae,W)},[Object.values(W.data).filter(ae=>z[ae.field]&&ae.rowSpan===1).map((ae,ie)=>{const he=we.find(ge=>ge.field===ae.field);return ue(ae,ce)?xe(W,ae,z):de(W,ae,z,he)})])}return{renderDataRow:ye}}function Zt(e,t,o){const{horizontalScrollThumbStyle:i,onMouseDownScrollThumb:a,shouldShowHorizontalScrollbar:r}=o;function l(){return r.value&&n.createVNode("div",{class:"fv-grid-horizontal-scroll"},[n.createVNode("div",{class:"fv-grid-horizontal-scroll-thumb",style:i.value,onMousedown:s=>a(s,t,"horizontal")},null)])}return{renderHorizontalScrollbar:l}}function Wi(e,t,o,i,a){const{currentPage:r,pageSize:l,pageList:s,total:d,showPageIndex:u,showPageList:f,mode:c}=a;function p(S){const{pageIndex:b,pageSize:h}=S;o.navigatePageTo(b),i.resetScroll(),t.emit("pageIndexChanged",{pageIndex:b,pageSize:h})}function C(S){const{pageIndex:b,pageSize:h}=S;o.changePageSizeTo(h),i.resetScroll(),t.emit("pageSizeChanged",{pageIndex:b,pageSize:h})}function g(S){const{pageIndex:b,pageSize:h}=S;o.navigatePageTo(b),i.resetScroll(),t.emit("changed",{pageIndex:b,pageSize:h})}n.onMounted(()=>{});function x(){return n.createVNode("div",{class:"fv-datagrid-pagination"},[n.createVNode(Et,{mode:"default",currentPage:r.value,"onUpdate:currentPage":S=>r.value=S,pageSize:l.value,"onUpdate:pageSize":S=>l.value=S,showPageList:f.value,showPageNumbers:u.value,totalItems:d.value,pageList:s.value,onPageIndexChanged:p,onPageSizeChanged:C,onChange:g},null)])}return{renderDataGridPagination:x}}function en(e,t,o,i,a){const{isSelectingHirarchyItem:r,multiSelectOnClickRow:l,multiSelectOnlyOnCheck:s,selectItem:d,toggleSelectItem:u}=o,{onMouseoverRow:f,sidebarRowClass:c}=t,{showRowNumer:p,showSidebarCheckBox:C,sidebarCellPosition:g,rowKey:x,cellKey:S}=i,{gridSideStyle:b}=a;function h(v){v.stopPropagation()}function y(v){return n.createVNode("div",{class:"d-inline-flex "},[n.createVNode("div",{class:"custom-control custom-checkbox f-checkradio-single",style:"margin:0;padding-left:0.5rem"},[n.withDirectives(n.createVNode("input",{id:S(v),title:S(v),type:"checkbox",indeterminate:v.indeterminate,"onUpdate:modelValue":m=>v.checked=m,class:"custom-control-input"},null),[[n.vModelCheckbox,v.checked]]),n.createVNode("label",{class:"custom-control-label",for:S(v),onClick:h},null)])])}function _(v){return n.createVNode("div",{class:"fv-grid-sidebar-row-number justify-content-center",style:"padding:0",onMouseover:m=>f(m,v)},[n.createVNode("div",{title:v.dataIndex,class:{"text-center":!0,"text-truncate":e.rowNumber.showEllipsis,"w-100":e.rowNumber.showEllipsis}},[v.dataIndex])])}function w(v,m,N){r.value?l.value?u(N):d(N):s.value||l.value?u(N):d(N)}function F(v){return(C.value||p.value)&&v.value.map(m=>n.createVNode("div",{key:x(m),class:c(m),style:g(m),onClick:N=>w(N,v,m)},[C.value&&!e.hierarchy&&y(m),p.value&&_(m)]))}function V(v){return n.createVNode("div",{class:"fv-grid-content-side"},[n.createVNode("div",{class:"fv-grid-side",style:b.value},[F(v)])])}return{renderDataGridSidebar:V}}function qi(e,t,o){const{columnContext:i}=o,a=n.ref(e.summary),r=n.computed(()=>{const s=a.value;return s&&s.enable&&s.groupFields&&s.groupFields.length>0});function l(){return r.value&&n.createVNode("div",{class:"fv-datagrid-summary"},[n.createVNode("div",{class:"fv-datagird-summary-panel"},[n.createVNode("span",{class:"fv-datagrid-summary-title"},[n.createTextVNode("当页合计")]),n.createVNode("div",{class:"fv-datagrid-summary-content"},[i.value.summaryColumns.map(s=>n.createVNode("div",{class:"fv-datagrid-summary-field"},[n.createVNode("span",{class:"fv-datagrid-summary-field-title"},[`${s.title}:`]),n.createVNode("span",{class:"fv-datagrid-summary-field-value"},[t.summaries.get(s.field)])]))])])])}return{renderDataGridSummery:l}}function tn(e,t,o){const{verticalScrollThumbStyle:i,onMouseDownScrollThumb:a,shouldShowVirticalScrollbar:r}=o;function l(){return r.value&&n.createVNode("div",{class:"fv-grid-vertical-scroll"},[n.createVNode("div",{class:"fv-grid-vertical-scroll-thumb",style:i.value,onMousedown:s=>a(s,t,"vertical")},null)])}return{renderVerticalScrollbar:l}}function zi(){function e(i,a){switch(i.command){case"edit":case"remove":return a.status===Ge.initial;case"accept":case"cancel":return a.status===Ge.editing;default:return!i.hidden}}function t(i,a,r){switch(i.onClick(a,r.dataIndex,r),i.command){case"edit":r.status,Ge.editing;break;case"accept":case"cancel":r.status,Ge.initial;break}}function o(i,a){return n.createVNode("div",null,[i.commands&&i.commands.map(r=>e(r,a)&&n.createVNode(n.resolveComponent("f-button"),{class:"ml-2",type:r.type,size:r.size||"small",onClick:l=>t(r,l,a)},{default:()=>[n.createTextVNode(" "),r.text,n.createTextVNode(" ")]}))])}return{renderCommandColumn:o}}function Ui(e){function t(){return n.createVNode("div",{class:"d-flex flex-column f-datagrid-norecords"},[n.createVNode("div",{class:"f-datagrid-norecords-content",style:"margin: 0;width: 100%;position: relative; top: 0"},[n.createTextVNode(" "),e.slots.empty&&e.slots.empty()||"暂无数据"])])}return{renderEmpty:t}}function nn(e){const t=n.ref(e.minHeight),o=n.ref(e.minWidth),i=n.ref(e.height),a=n.ref(e.width),r=n.computed(()=>i.value<=0?0:Math.max(i.value,t.value)),l=n.computed(()=>a.value<=0?0:Math.max(a.value,o.value));return n.watch([()=>e.height,()=>e.width,()=>e.minHeight,()=>e.minWidth],([d,u,f,c])=>{t.value=Number(f),o.value=Number(c),i.value=Number(d),a.value=Number(u)}),{containerStyleObject:n.computed(()=>({height:r.value>0?`${r.value}px`:e.fit?"100%":"",width:l.value>0?`${l.value}px`:e.fit?"100%":""}))}}function on(e){const o={defaultColumnWidth:120,headerDepth:1,leftColumns:[],leftColumnsMap:new Map,leftColumnsWidth:0,leftHeaderColumns:[],primaryColumns:[],primaryColumnsMap:new Map,primaryColumnsWidth:0,primaryHeaderColumns:[],rightColumns:[],rightColumnsMap:new Map,rightColumnsWidth:0,rightHeaderColumns:[],summaryColumns:[]},i=n.ref(o);function a(){i.value={defaultColumnWidth:120,headerDepth:1,leftColumns:[],leftColumnsMap:new Map,leftColumnsWidth:0,leftHeaderColumns:[],primaryColumns:[],primaryColumnsMap:new Map,primaryColumnsWidth:0,primaryHeaderColumns:[],rightColumns:[],rightColumnsMap:new Map,rightColumnsWidth:0,rightHeaderColumns:[],summaryColumns:[]}}const r=n.ref(e.summary),l=n.computed(()=>{const y=r.value;return(y==null?void 0:y.groupFields)||[]});function s(){i.value.rightColumns.forEach(w=>{w.showSetting=!1}),i.value.primaryColumns.forEach(w=>{w.showSetting=!1});const y=i.value.rightColumns.filter(w=>w.visible),_=i.value.primaryColumns.filter(w=>w.visible);y.length>0?y[y.length-1].showSetting=!0:_.length>0&&(_[_.length-1].showSetting=!0)}function d(y){a();const _=new Map;return l.value&&l.value.reduce((w,F)=>(w.set(F,!0),w),_),y.reduce((w,F)=>(F.visible=F.visible!==!1,F.fixed==="left"?(i.value.leftColumns.push(F),i.value.leftColumnsMap.set(F.field,F),i.value.leftColumnsWidth+=F.actualWidth):F.fixed==="right"?(i.value.rightColumns.push(F),i.value.rightColumnsMap.set(F.field,F),i.value.rightColumnsWidth+=F.actualWidth):(i.value.primaryColumns.push(F),i.value.primaryColumnsMap.set(F.field,F),i.value.primaryColumnsWidth+=F.actualWidth),_.has(F.field)&&i.value.summaryColumns.push(F),w),i),s(),i}d(e.columns);const u=n.computed(()=>i.value.leftColumns.length>0),f=n.computed(()=>i.value.rightColumns.length>0);function c(y,_){return _.sortable&&_.sort&&_.sort!=="none"&&y.push(_),y}function p(y,_){return y.sortOrder=y.sortOrder||0,_.sortOrder=_.sortOrder||0,y.sortOrder===_.sortOrder?0:y.sortOrder<_.sortOrder?-1:1}function C(y,_){return y.sortOrder=y.sortOrder||0,_.sortOrder=_.sortOrder||0,y.sortOrder===_.sortOrder?0:y.sortOrder<_.sortOrder?1:-1}function g(y,_){return _.filterable&&y.push(_),y}function x(){const y=[];return i.value.leftColumns.reduce(g,y),i.value.primaryColumns.reduce(g,y),i.value.rightColumns.reduce(g,y),y}function S(){const y=[];i.value.leftColumns.reduce(c,y),i.value.primaryColumns.reduce(c,y),i.value.rightColumns.reduce(c,y);const _=Math.max(...y.map(w=>w.sortOrder||0));return y.sort(C).map(w=>{const F=w.sortOrder||_+1;return w.sortOrder=F,w}).sort(p).map((w,F)=>{const V=F+1;return w.sortOrder=V,w})}function b(y,_,w){const F=y.map(V=>{const v=w.getSorterByColumn(V),m=V.sort==="asc",N=V.sort==="desc",T=m?v.ascend:N?v.decend:void 0;return{field:V.field,compare:T}});_.setSorters(F)}function h(y,_){const w=S();b(w,y,_)}return{applyColumnSorter:h,collectionFilterableColumns:x,applySortableColumns:b,collectionSortableColumns:S,columnContext:i,hasLeftFixedColumn:u,hasRightFixedColumn:f,updateColumnRenderContext:d,updateColumnSettingIcon:s}}const Ki=[{name:"是",value:!0},{name:"否",value:!1}];function Xi(e){return e.filter=e.filter||function(t){return String(e.filterValue).split(",").includes(String(t[e.field]))},n.createVNode("div",null,[n.createVNode(n.resolveComponent("f-checkbox-group"),{modelValue:e.filterValue,"onUpdate:modelValue":t=>e.filterValue=t,"enum-data":Ki},null)])}const Yi=n.ref([{name:"七天",selectable:!0},{name:"一个月",selectable:!0},{name:"三个月",selectable:!0},{name:"半年",selectable:!0}]);function Ji(e){const t=n.ref(!1);return e.filter=e.filter||function(o){const i=new Date(new Date(e.filterValue).toLocaleDateString()).valueOf();return new Date(new Date(o[e.field]).toLocaleDateString()).valueOf()===i},n.createVNode("div",{style:"display:flex;flex-direction:column;"},[n.createVNode("div",{style:"display:flex;margin-bottom:6px;"},[n.createVNode("label",{style:"margin-right:8px"},[n.createTextVNode("按区间筛选")]),n.createVNode(n.resolveComponent("f-switch"),{modelValue:t.value,"onUpdate:modelValue":o=>t.value=o,size:"small"},null)]),n.createVNode(n.resolveComponent("f-date-picker"),{modelValue:e.filterValue,"onUpdate:modelValue":o=>e.filterValue=o},null),n.createVNode(n.resolveComponent("f-tags"),{style:"margin-top:10px",data:Yi.value,selectable:!0,"tag-style":"capsule"},null)])}function Qi(e){e.filter=e.filter||function(o){const i=Number.parseFloat(e.filterValue),a=Number.parseFloat(o[e.field]);return isNaN(i)?isNaN(a):i===a};function t(o){e.filterValue=o}return n.createVNode("div",null,[n.createVNode(n.resolveComponent("f-number-spinner"),{"can-null":!0,precision:"2",value:e.filterValue,onValueChange:t},null)])}function Zi(e,t,o,i,a,r){e.filterHistory=e.filterHistory||a.getFilterHistory(e),e.filter=e.filter||function(p){return(p[e.field]||"").startsWith(e.filterValue)};function l(p,C){a.removeFilterHistory(e,p.name),e.filterHistory=a.getFilterHistory(e)}function s(p){e.filterValue=p.name}function d(p){e.filterHistory=p}const u=i.rawView.value.reduce((p,C,g)=>(p.push(C[e.field]),p),[]),c=[...new Set(u)].map((p,C)=>({id:C,name:p}));return n.createVNode("div",{style:"display:flex;flex-direction:column;"},[n.createVNode(n.resolveComponent("f-search-box"),{modelValue:e.filterValue,"onUpdate:modelValue":p=>e.filterValue=p,"popup-host":t.value,"popup-right-boundary":o.value,"popup-offset-x":r.offsetX,"recommended-data":c},null),n.createVNode(n.resolveComponent("f-tags"),{style:"margin-top:10px","tag-type":"default",data:e.filterHistory,"show-close":!0,selectable:!0,onRemove:l,onSelectionChange:s,onChange:d},null)])}function er(e,t,o,i,a,r){e.filter=e.filter||function(C){return String(e.filterValue).split(",").includes(String(C[e.field]))};const l=",",s=i.rawView.value.reduce((C,g,x)=>(C.push(g[e.field]),C),[]),u=[...new Set(s)].map((C,g)=>({id:g,name:C}));function f(C){return(C==null?void 0:C.split(l))||[]}function c(C){return C.map(x=>x.name).join(l)}function p(C){e.filterValue=c(C)}return n.createVNode(n.resolveComponent("f-list-view"),{data:u,"multi-select":!0,"multi-select-mode":"OnCheckAndClick","id-field":"name",view:"SingleView",header:"Search",size:"Small","selection-values":f(e.filterValue),onSelectChange:C=>p(C)},{default:()=>[n.createTextVNode(" ")]})}function tr(e){n.ref("请输入关键词"),n.ref('<i class="f-icon f-icon-search"></i>');const t=[{name:"发票类型",checked:!1},{name:"发票代码",checked:!1},{name:"开票日期",checked:!1},{name:"票价(燃油附加费)",checked:!1},{name:"税收分类编号",checked:!1},{name:"不含税单价",checked:!1},{name:"往来单位",checked:!1},{name:"商品服务描述",checked:!1},{name:"项目负责人",checked:!1},{name:"所属单位",checked:!1}];return n.createVNode(n.resolveComponent("f-list-view"),{data:t,"multi-select":!0,view:"SingleView",size:"Small"},{default:()=>[n.createTextVNode(" ")]})}function rn(e,t,o,i,a){const r=new Map([["boolean","boolean-filter"],["date","date-filter"],["datetime","date-filter"],["number","numeric-filter"],["string","text-filter"],["text","text-filter"],["enum","enum-filter"],["reference","list-filter"]]),l=new Map([["boolean-filter",Xi],["date-filter",Ji],["enum-filter",er],["list-filter",tr],["numeric-filter",Qi],["text-filter",Zi]]);function s(d){var p,C;const u=((p=d.column)==null?void 0:p.dataType)||"string",f=((C=d.column)==null?void 0:C.filter)||r.get(u)||"text-editor",c=l.get(f);if(c)return c(d,e,t,o,i,a)}return{getFilterEditor:s}}function an(e){const o=n.ref(e.commandOption.enable||!1),i=n.ref(e.commandOption.commands||[]);function a(r){if(o.value&&!(r.value.findIndex(s=>s.dataType==="commands")>-1)){const s={field:"__commands__",title:"操作",width:120,fixed:"right",dataType:"commands",commands:i.value,visible:!0};r.value.push(s)}}return{applyCommands:a}}function ln(e,t,o,i,a,r,l){const{columnContext:s}=o,{getGridHeaderCells:d}=a,{groupFields:u}=r,f=n.ref(-1),c=n.ref(!1),p=n.computed(()=>u.value&&u.value.map(h=>{var y;return{name:((y=s.value.primaryColumnsMap.get(h))==null?void 0:y.title)||h,value:h}}));function C(h,y,_){var w,F,V;if(h.stopPropagation(),y){const v=`${(w=y.column)==null?void 0:w.title}:${(F=y.column)==null?void 0:F.field}`;(V=h.dataTransfer)==null||V.setData("Text",v),setTimeout(()=>{f.value=_,c.value=!0})}}function g(h,y){if(h.preventDefault(),f.value!==y){const{primaryColumns:_}=s.value,w=_[f.value],F=_;F.splice(f.value,1),F.splice(y,0,w),s.value.primaryHeaderColumns=Array.from(d(F).values()),f.value=y}}function x(h,y){h.preventDefault(),h.dataTransfer&&(h.dataTransfer.dropEffect="move")}function S(h,y){c.value=!1,i.updateDataView(),l.reCalculateVisualDataRows()}function b(h){var _;h.preventDefault(),h.stopPropagation();const y=(_=h.dataTransfer)==null?void 0:_.getData("Text");if(y){const w=y.split(":");w[0];const F=w[1];r.groupFields.value.push(F)}i.updateDataView(),l.reCalculateVisualDataRows()}return{dragstart:C,dragenter:g,dragover:x,dragend:S,dropOnGroupPanel:b,isDragging:c,groupColumnItems:p}}function sn(e,t,o,i,a){const{getGridHeaderCells:r}=a,l=120,s=50,d=n.computed(()=>{var v;return((v=e.rowNumber)==null?void 0:v.enable)||!1}),u=n.computed(()=>{var v,m;return((v=e.selection)==null?void 0:v.multiSelect)||((m=e.selection)==null?void 0:m.showCheckbox)||!1}),f=n.computed(()=>{var v;return 0+(d.value?((v=e.rowNumber)==null?void 0:v.width)||32:0)+(u.value?s:0)}),c=n.computed(()=>{var v;return(v=e.columnOption)==null?void 0:v.fitColumns}),p=n.computed(()=>{var v;return c.value&&((v=e.columnOption)==null?void 0:v.fitMode)||"average"});function C(v,m,N){const T=parseInt(v.width,10)/100;return N*T}function g(v,m,N){return typeof v.width=="string"?C(v,m,N):v.width||l}function x(v,m){const N=[],T=[];let I=0;v.value.primaryColumns.filter(B=>B.visible).forEach(B=>{typeof B.width=="string"?T.push(B):(B.width=B.width||l,I+=B.width,N.push(B))});const O=m*(N.length/v.value.primaryColumns.filter(B=>B.visible).length);N.forEach(B=>{const P=O*(B.width/I);B.actualWidth=P,v.value.primaryColumnsWidth+=B.actualWidth});const k=m-O;T.forEach(B=>{const P=C(B,v.value,k);B.actualWidth=P,v.value.primaryColumnsWidth+=B.actualWidth})}function S(v,m){const N=m/(v.value.primaryColumns.filter(T=>T.visible).length||1);v.value.primaryColumns.filter(T=>T.visible).forEach(T=>{T.actualWidth=N,v.value.primaryColumnsWidth+=T.actualWidth})}function b(v,m){const N=[],T=[],I=new WeakMap;let O=0,k=0;if(v.value.primaryColumns.filter(P=>P.visible).forEach(P=>{if(typeof P.width=="string"){const M=C(P,v.value,m);I.set(P,M),O+=M,T.push(P)}else P.width=P.width||l,k+=P.width,N.push(P)}),m-O>k){const P=m-O;T.forEach(M=>{M.actualWidth=I.get(M)||l,v.value.primaryColumnsWidth+=M.actualWidth}),N.forEach(M=>{M.actualWidth=P*(M.width/k),v.value.primaryColumnsWidth+=M.actualWidth})}else x(v,m)}function h(v,m){v.value.primaryColumns.filter(N=>N.visible).forEach(N=>{N.actualWidth=g(N,v.value,m),v.value.primaryColumnsWidth+=N.actualWidth})}const y={average:S,expand:b,none:h,percentage:x};function _(v){v.value.leftHeaderColumns=Array.from(r(v.value.leftColumns.filter(m=>m.visible)).values()),v.value.primaryHeaderColumns=Array.from(r(v.value.primaryColumns.filter(m=>m.visible)).values()),v.value.rightHeaderColumns=Array.from(r(v.value.rightColumns.filter(m=>m.visible)).values())}function w(v){v.value.leftColumnsWidth=0,v.value.primaryColumnsWidth=0,v.value.rightColumnsWidth=0,v.value.leftColumns.filter(m=>m.visible).forEach(m=>{v.value.leftColumnsWidth+=m.actualWidth||0}),v.value.primaryColumns.filter(m=>m.visible).forEach(m=>{v.value.primaryColumnsWidth+=m.actualWidth||0}),v.value.rightColumns.filter(m=>m.visible).forEach(m=>{v.value.rightColumnsWidth+=m.actualWidth||0}),v.value=Object.assign({},v.value)}function F(v,m,N){var M;let T=0;const I=v.value.primaryColumns,O=v.value.rightColumns;v.value.rightColumns.filter($=>$.visible).forEach($=>{$.actualWidth=g($,v.value,m),T+=$.actualWidth});const k=N-T,B=y[p.value];if(B&&B(v,k),v.value.primaryColumnsWidth+T<=N)return v.value.primaryColumns=[...I,...O],v.value.primaryColumnsWidth+=T,v.value.rightColumns=[],v.value.rightColumnsWidth=0,!0;const P=new Map;return P.set("primary",[]),P.set("right",[]),v.value.primaryColumns.reduce(($,R)=>{var E,A;return R.fixed==="right"?(E=$.get("right"))==null||E.push(R):(A=$.get("primary"))==null||A.push(R),$},P),(M=P.get("right"))!=null&&M.length&&(v.value.primaryColumns=[...P.get("primary")||[]],v.value.rightColumns=[...P.get("right")||[]]),v.value.primaryColumnsWidth=0,v.value.rightColumnsWidth=0,!1}function V(){if(o.value){t.value.leftColumnsWidth=0,t.value.primaryColumnsWidth=0,t.value.rightColumnsWidth=0;const v=o.value.clientWidth-f.value;t.value.leftColumns.filter(N=>N.visible).forEach(N=>{N.actualWidth=g(N,t.value,v),t.value.leftColumnsWidth+=N.actualWidth});const m=v-t.value.leftColumnsWidth;if(F(t,v,m))i.value=m;else{t.value.rightColumns.filter(I=>I.visible).forEach(I=>{I.actualWidth=g(I,t.value,v),t.value.rightColumnsWidth+=I.actualWidth});const N=v-t.value.leftColumnsWidth-t.value.rightColumnsWidth,T=y[p.value];T&&T(t,N),i.value=N}_(t),t.value=Object.assign({},t.value)}}return n.watch(()=>{var v;return(v=e.columnOption)==null?void 0:v.fitColumns},(v,m)=>{v!==m&&v&&V()}),n.watch(p,(v,m)=>{v!==m&&c.value&&V()}),{calculateColumnHeaders:_,calculateColumnsSize:V,calculateColumnsWidth:w}}function cn(e,t){var u;const o=n.ref((u=e.columnOption)==null?void 0:u.groups);function i(f,c,p,C,g){const x={actualWidth:0,children:[],depth:1,field:f.field,layer:1,left:0,parent:p,resizable:!1,title:f.title||"",status:Te.none,popoverRef:n.ref(),showPopover:!1,column:null,filterValue:null,sortType:"none"},S=C||x;if(f.group){let b=1;f.group.reduce((h,y)=>{if(typeof y=="string"){const _=c.get(y);_&&(g.fieldToRootMap.set(y,S),h.actualWidth+=_.actualWidth,h.children.push(_))}else{const _=i(y,c,h,S,g);b=Math.max(b,_.depth),h.actualWidth+=_.actualWidth,h.children.push(_)}return h},x),x.depth+=b}return t.value.headerDepth=Math.max(t.value.headerDepth,x.depth),x}function a(f){const c={groupedCells:new Map,fieldToRootMap:new Map};return o.value&&o.value.reduce((p,C)=>{const g=i(C,f,null,null,c);return p.groupedCells.set(C.field,g),p},c),c}function r(f){if(!f||f.length===0)return 0;const c=f[0];return c.children&&c.children.length>0&&(c.left=r(c.children)),c.left}function l(f,c){const p=t.value.headerDepth;f.forEach(C=>{C.layer=c?c.layer+1:1;const g=C.children&&C.children.length===0;C.depth=g?p-(C.layer-1):1,C.left=g?C.left:r(C.children),C.children&&l(C.children,C)})}function s(f,c){const p=new Map;return f.forEach(C=>{const g=c.fieldToRootMap.get(C.field),x=g!=null;x&&!p.has(g.field)&&p.set(g.field,g),x||p.set(C.field,C)}),l(Array.from(p.values())),p}function d(f){let c=new Map,p=0;if(f.reduce((C,g)=>{let x=Te.none;x=g.sortable?x|Te.sortable:x,x=g.filterable?x|Te.filterable:x,x=g.sort&&g.sort!=="none"?x|Te.sorted|(g.sort==="asc"?Te.ascending:Te.descending):x;const S=g.binding&&g.binding.field?g.binding.field:g.field;return C.set(S,{actualWidth:g.actualWidth||0,children:[],depth:1,layer:1,left:p,field:S,parent:null,resizable:g.resizable||!1,title:g.title,status:x,popoverRef:n.ref(),showPopover:!1,column:g,filterValue:null,sortType:g.sort||"none",showSetting:g.showSetting}),p+=g.actualWidth||0,C},c),o.value){const C=a(c);c=s(c,C)}return c}return{getGridHeaderCells:d}}const dn={conditions:{type:Array,default:[]},fields:{type:Array,default:[]},key:{type:String,default:""},isControlInline:{type:Boolean,default:!0}};class nr{constructor(t={value:[]}){H(this,"editorType","check-box");H(this,"value");H(this,"valueType","boolean");this.value=t.value}clear(){this.value=[]}setValue(t){this.value=t}getValue(){return this.value}isEmpty(){return this.value.length===0}}class or{constructor(t={textValue:"",value:"",valueField:""}){H(this,"editorType","combo-lookup");H(this,"textValue");H(this,"value");H(this,"valueField");H(this,"valueType","text");this.textValue=t.textValue,this.value=t.value,this.valueField=t.valueField}clear(){this.value="",this.valueField="",this.textValue=""}getPropValue(t,o){if(o.length>1){const i=o.shift();return t[i]?this.getPropValue(t[i],o):null}return t[o[0]]}getTextValue(t){const o=t.split("."),i=this.value.split(",").map(a=>this.getPropValue(a,je.cloneDeep(o)));return i&&i.length?i.join(","):""}getValue(){const t=this.valueField.split("."),o=this.value.split(",").map(i=>this.getPropValue(i,je.cloneDeep(t)));return o&&o.length?o.join(","):""}setValue(t){throw new Error("Method not implemented.")}isEmpty(){return!this.valueField}}class ir{constructor(t={value:""}){H(this,"editorType","date-picker");H(this,"value");H(this,"valueType","datetime");this.value=t.value}setValue(t){this.value=t.formatted}getValue(){return this.value}isEmpty(){return!this.value}clear(){this.value=void 0}}class un{constructor(t={begin:"",end:""}){H(this,"editorType","date-range");H(this,"begin","");H(this,"end","");H(this,"valueType","datetime");this.begin=t.begin,this.end=t.end}clear(){this.begin="",this.end=""}getValue(){return!this.begin||!this.end?"":`${this.begin}~${this.end}`}setValue(t){t.dataRange?(this.begin=t.dataRange.split(t.delimiter)[0],this.end=t.dataRange.split(t.delimiter)[1]):this.clear()}isEmpty(){return!this.begin||!this.end}}class rr{constructor(t={value:""}){H(this,"editorType","datetime-picker");H(this,"value");H(this,"valueType","datetime");this.value=t.value}clear(){this.value=void 0}getValue(){return this.value}setValue(t){this.value=t.formatted}isEmpty(){return!this.value}}class ar{constructor(t={value:"",dispalyText:""}){H(this,"editorType","combo-list");H(this,"value");H(this,"valueType","enum");H(this,"displayText");this.displayText=t.dispalyText,this.value=t.value}clear(){this.value="",this.displayText=""}getValue(){return this.displayText}setValue(t){this.displayText=t.dispalyText,this.value=t.value}isEmpty(){return!this.displayText&&!this.value}}class lr{constructor(t={value:[],displayText:"",displayField:"",isInputText:!1}){H(this,"editorType","input-group");H(this,"value");H(this,"valueType","text");H(this,"displayText");H(this,"valueField");H(this,"isInputText");this.value=t.value,this.displayText=t.displayText,this.valueField=t.displayField,this.isInputText=t.isInputText}clear(){this.value=[],this.displayText="",this.valueField=""}getPropValue(t,o){if(o.length>1){const i=o.shift();return t[i]?this.getPropValue(t[i],o):""}return t[o[0]]}getTextValue(t){const o=t.split("."),i=this.value.map(a=>this.getPropValue(a,je.cloneDeep(o)));return i&&i.length?i.join(","):""}getValue(){const t=this.valueField.split(".")||[],o=this.value.map(i=>this.getPropValue(i,je.cloneDeep(t)));return o&&o.length?o.join(","):""}setValue(t){throw new Error("Method not implemented.")}isEmpty(){return!this.displayText&&!this.value}}class sr{constructor(t={textValue:"",value:[],valueField:"",isInputText:!1}){H(this,"editorType","lookup");H(this,"textValue");H(this,"value");H(this,"valueField");H(this,"valueType","text");H(this,"isInputText");this.value=t.value,this.valueField=t.valueField,this.textValue=t.textValue,this.isInputText=t.isInputText}clear(){this.value=[],this.valueField="",this.textValue=""}getPropValue(t,o){if(o.length>1){const i=o.shift();return t[i]?this.getPropValue(t[i],o):null}return t[o[0]]}getTextValue(t){const o=t.split("."),i=this.value.map(a=>this.getPropValue(a,o));return i&&i.length?i.join(","):""}getValue(){const t=this.valueField.split("."),o=this.value.map(i=>this.getPropValue(i,t));return o&&o.length?o.join(","):""}setValue(t){throw new Error("Method not implemented.")}isEmpty(){return!this.value.length}}class cr{constructor(t={value:""}){H(this,"editorType","month-picker");H(this,"value");H(this,"valueType","datetime");this.value=t.value}setValue(t){this.value=t.formatted}getValue(){return this.value}clear(){this.value=void 0}isEmpty(){return!this.value}}class dr{constructor(t={begin:"",end:""}){H(this,"editorType","month-range");H(this,"begin");H(this,"end");H(this,"valueType","datetime");this.begin=t.begin,this.end=t.end}clear(){this.begin="",this.end=""}getValue(){return!this.begin||!this.end?"":`${this.begin}~${this.end}`}setValue(t){t.dataRange?(this.begin=t.dataRange.split(t.delimiter)[0],this.end=t.dataRange.split(t.delimiter)[1]):this.clear()}isEmpty(){return!this.begin||!this.end}}class ur{constructor(t={begin:null,end:null}){H(this,"editorType","number-range");H(this,"begin");H(this,"end");H(this,"valueType","number");this.begin=t.begin==null?null:parseFloat(t.begin),this.end=t.end==null?null:parseFloat(t.end)}clear(){this.begin=null,this.end=null}getValue(){return{begin:this.begin,end:this.end}}setValue(t){this.begin=t.begin==null?null:parseFloat(t.begin),this.end=t.end==null?null:parseFloat(t.end)}isEmpty(){return this.begin==null&&this.end==null}}class fr{constructor(t={value:""}){H(this,"editorType","number-spinner");H(this,"value");H(this,"valueType","number");this.value=t.value==null?null:parseFloat(t.value)}clear(){this.value=void 0}getValue(){return this.value}setValue(t){this.value=isNaN(parseFloat(t))?null:t}isEmpty(){return this.value==null}}class pr{constructor(t={value:null}){H(this,"editorType","radio-group");H(this,"value");H(this,"valueType","enum");this.value=t.value}clear(){this.value=void 0}getValue(){return this.value}setValue(t){this.value=t}isEmpty(){return!this.value}}class fn{constructor(t={value:""}){H(this,"editorType","text");H(this,"value");H(this,"valueType","text");this.value=t.value}clear(){this.value=void 0}getValue(){return this.value}setValue(t){this.value=t}isEmpty(){return!this.value}}function pn(){function e(t,o){switch(t){case"check-box":return new nr(o);case"combo-list":return new ar(o);case"combo-lookup":return new or(o);case"input-group":return new lr(o);case"date-picker":return new ir(o);case"date-range":return new un(o);case"datetime-picker":return new rr(o);case"datetime-range":return new un(o);case"lookup":return new sr(o);case"month-picker":return new cr(o);case"month-range":return new dr(o);case"number-range":return new ur(o);case"number-spinner":return new fr(o);case"radio-group":return new pr(o);default:return new fn(o)}}return{createConditionValue:e}}function mn(e,t){const o=n.ref(e.fields),i=n.ref([]),a=new Map,{createConditionValue:r}=pn();function l(f){switch(f.editor?f.editor.type:"input-group"){case"date-range":f.editor.type="date-picker";break;case"datetime-range":f.editor.type="datetime-picker";break;case"number-range":f.editor.type="number-spinner";break}return f.editor}function s(f){return f.map(p=>Object.assign({},p)).map(p=>(p.editor=l(p),p))}function d(f=!0){o.value.reduce((c,p)=>(f||(p.editor=l(p)),c.set(p.labelCode,p),c),a)}function u(f){return f.forEach(c=>{if(c){const p=a.get(c.fieldCode);c.value=r(p.editor.type,c.value)}}),f}return{convertToSingleControl:s,fields:o,fieldMap:a,fieldConditions:i,loadFieldConfigs:d,initialConditionValue:u}}function mr(e,t,o){const i=n.ref(null),a=n.ref(o),r=n.ref(0);function l(f,c){let p=null;return function(){const C=arguments;p||(p=setTimeout(()=>{p=null},500),f(...C))}}function s(){a.value&&(i.value=new ResizeObserver(l(f=>{const c=f[0];r.value=c.contentRect.width})),i.value.observe(a.value))}function d(f){let p="col-12";return f>250*6?p="col-2":f>250*4?p="col-3":f>250*3?p="col-4":f>250*2&&(p="col-6"),p}const u=n.computed(()=>d(r.value));return n.watch([o],([f])=>{a.value=f,s()}),{conditionClass:u,resizeObserver:i}}const hn=n.defineComponent({name:"FConditionFields",props:dn,emits:["valueChange","blur","focus","click","input"],setup(e,t){const o=n.ref(),i=n.ref(e.key),a=n.ref(e.isControlInline),r=n.ref(e.conditions),l=mn(e),{initialConditionValue:s,fieldMap:d,loadFieldConfigs:u}=l,f=mr(e,t,o),{conditionClass:c,resizeObserver:p}=f;u(!0),s(r.value),n.onBeforeUnmount(()=>{var b;(b=p.value)==null||b.unobserve(o.value)}),n.watch(()=>e.conditions,()=>{r.value=e.conditions,s(r.value)});const C=n.computed(()=>({"f-utils-flex-row-wrap":!0,"farris-form":!0,"farris-form-controls-inline":a.value})),g=n.computed(()=>c.value);function x(b,h){t.emit("valueChange",b,h)}function S(){return r.value.map(b=>{var h;return n.createVNode(yt.FDynamicFormGroup,{customClass:g.value,label:b.fieldName,editor:(h=d.get(b.fieldCode))==null?void 0:h.editor,modelValue:b.value.value,"onUpdate:modelValue":y=>b.value.value=y,onChange:y=>{x(y,b)}},null)})}return()=>n.createVNode("div",{class:C.value,key:i.value,ref:o},[S()])}}),_t=new Map([["appearance",Ye]]),hr=new Map([]),gr="root-viewmodel";class yr{constructor(t,o){H(this,"formSchemaUtils");H(this,"controlCreatorUtils");H(this,"designViewModelUtils");this.resolver=t,this.designerHostService=o,this.formSchemaUtils=this.designerHostService.formSchemaUtils,this.controlCreatorUtils=this.designerHostService.controlCreatorUtils,this.designViewModelUtils=this.designerHostService.designViewModelUtils}createComponent(t){const o=this.createComponentRefNode(t),i=this.createComponentNode(t),a=this.createViewModeNode(t),r=this.formSchemaUtils.getFormSchema();return r.module.viewmodels.push(a),r.module.components.push(i),this.designViewModelUtils.assembleDesignViewModel(),o}createComponentRefNode(t){const o=this.resolver.getSchemaByType("component-ref");return Object.assign(o,{id:`${t.componentId}-component-ref`,component:`${t.componentId}-component`}),o}createComponentNode(t){const o=this.resolver.getSchemaByType("component"),i=this.createFormComponentContents(t);return Object.assign(o,{id:`${t.componentId}-component`,viewModel:`${t.componentId}-component-viewmodel`,componentType:t.componentType,appearance:{class:this.getFormComponentClass()},formColumns:t.formColumns,contents:i}),o}getFormComponentClass(){const{templateId:t}=this.formSchemaUtils.getFormSchema().module;return t==="double-list-in-tab-template"?"f-struct-wrapper f-utils-fill-flex-column":"f-struct-wrapper"}createFormComponentContents(t){const o=this.resolver.getSchemaByType("section");Object.assign(o,{id:t.componentId+"-form-section",appearance:{class:"f-section-form f-section-in-mainsubcard"},mainTitle:t.componentName});const i=this.resolver.getSchemaByType("response-form"),a=[];Object.assign(i,{id:t.componentId+"-form",appearance:{class:"f-form-layout farris-form farris-form-controls-inline"},contents:a}),o.contents=[i];const{selectedFields:r}=t;r==null||r.forEach(s=>{const d=je.cloneDeep(s),u=this.resolveControlClassByFormColumns(t),f=this.controlCreatorUtils.setFormFieldProperty(d,"",u);f&&a.push(f)});const{templateId:l}=this.formSchemaUtils.getFormSchema().module;return l==="double-list-in-tab-template"&&(o.appearance.class="f-section-grid f-section-in-main px-0 pt-0",o.fill=!0),[o]}resolveControlClassByFormColumns(t){let o="";switch(t.formColumns){case 1:{o="col-12";break}case 2:{o="col-12 col-md-6 col-xl-6 col-el-6";break}case 3:{o="col-12 col-md-6 col-xl-4 col-el-4";break}case 4:{o="col-12 col-md-6 col-xl-3 col-el-2";break}}return o}createViewModeNode(t){return{id:`${t.componentId}-component-viewmodel`,code:`${t.componentId}-component-viewmodel`,name:t.componentName,bindTo:t.bindTo,parent:gr,fields:this.assembleViewModelFields(t),commands:[],states:[],enableValidation:!0}}assembleViewModelFields(t){const o=[],{selectedFields:i}=t;return i==null||i.forEach(a=>{let r="blur";const l=a.type.name;(l===st.Enum||l===st.Boolean)&&(r="change"),o.push({type:"Form",id:a.id,fieldName:a.bindingField,groupId:null,groupName:null,updateOn:r,fieldSchema:{}})}),o}}function vr(e,t,o,i){var r,l,s,d,u;const a=o.parentComponentInstance;if(a&&i){const f=(r=a.schema)==null?void 0:r.type,p={componentId:`form-${Math.random().toString(36).slice(2,6)}`,componentName:((s=(l=o.bindingSourceContext)==null?void 0:l.bindingEntity)==null?void 0:s.name)||"标题",componentType:"form",formColumns:f==="splitter-pane"?1:4,parentContainerId:a.schema.id,bindTo:((d=o.bindingSourceContext)==null?void 0:d.bindTo)||"/",selectedFields:(u=o.bindingSourceContext)==null?void 0:u.bindingEntityFields};return new yr(e,i).createComponent(p)}else return t}function br(e,t,o){return t}Ae({customClass:{type:String,default:""},customStyle:{type:String,defaut:""}},{$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/response-form.schema.json",title:"response-form",description:"A Farris Data Collection Component",type:"object",properties:{id:{description:"The unique identifier for a form group",type:"string"},type:{description:"The type string of form group component",type:"string",default:"response-form"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},contents:{description:"",type:"array",default:[]}},required:["id","type"]},_t,vr);const gn={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/form-group.schema.json",title:"form-group",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a form group",type:"string"},type:{description:"The type string of form group component",type:"string",default:"form-group"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},enableLinkLabel:{description:"",type:"boolean",default:!1},editor:{description:"",type:"obejct"},label:{description:"",type:"string",default:""},lableWidth:{description:"",type:"number"},binding:{description:"",type:"object",default:{}}},required:["id","type"]},yn={id:{type:String,default:""},customClass:{type:String,default:""},customStyle:{type:String,default:""},editor:{type:Object,default:{}},label:{type:String,default:""},modelValue:{type:[String,Boolean,Array,Number],default:""},visible:{type:Boolean,default:!0},required:{type:Boolean,default:!1},showLabel:{type:Boolean,default:!0},type:{type:String,default:"input-group"}};Ae(yn,gn,_t,void 0);function Ft(e,t,o){var _;const i=o&&o.getStyles&&o.getStyles()||"",a=o&&o.getDesignerClass&&o.getDesignerClass()||"",r=n.ref();function l(){return(t==null?void 0:t.schema.componentType)==="frame"?!1:o&&o.checkCanMoveComponent?o.checkCanMoveComponent():!0}function s(){return!1}function d(){return(t==null?void 0:t.schema.componentType)==="frame"?!1:o&&o.checkCanDeleteComponent?o.checkCanDeleteComponent():!0}function u(){return(t==null?void 0:t.schema.componentType)==="frame"?!0:o&&o.hideNestedPaddingInDesginerView?o.hideNestedPaddingInDesginerView():!1}function f(w){if(!w||!w.value)return null;if(w.value.schema&&w.value.schema.type==="component")return w.value;const F=n.ref(w==null?void 0:w.value.parent),V=f(F);return V||null}function c(w=t){const{componentInstance:F,designerItemElementRef:V}=w;return!F||!F.value?null:F.value.canMove?V:c(w.parent)}function p(w){return!!o&&o.canAccepts(w)}function C(){return(t==null?void 0:t.schema.label)||(t==null?void 0:t.schema.title)||(t==null?void 0:t.schema.name)}function g(){}function x(w,F){F&&o!=null&&o.onAcceptMovedChildElement&&o.onAcceptMovedChildElement(F)}function S(w,F){const{componentType:V}=w;let v=Lt(V,w,F);o&&o.onResolveNewComponentSchema&&(v=o.onResolveNewComponentSchema(w,v));const m=V.toLowerCase().replace(/-/g,"_");return v&&!v.id&&v.type===V&&(v.id=`${m}_${Math.random().toString().slice(2,6)}`),v}function b(w){}function h(...w){if(o&&o.getPropsConfig)return o.getPropsConfig(...w)}function y(){o&&o.onRemoveComponent&&o.onRemoveComponent(),t!=null&&t.schema.contents&&t.schema.contents.map(w=>{var v;let F=w.id;w.type==="component-ref"&&(F=w.component);const V=e.value.querySelector(`#${F}-design-item`);(v=V==null?void 0:V.componentInstance)!=null&&v.value.onRemoveComponent&&V.componentInstance.value.onRemoveComponent()})}return r.value={canMove:l(),canSelectParent:s(),canDelete:d(),canNested:!u(),contents:t==null?void 0:t.schema.contents,elementRef:e,parent:(_=t==null?void 0:t.parent)==null?void 0:_.componentInstance,schema:t==null?void 0:t.schema,styles:i,designerClass:a,canAccepts:p,getBelongedComponentInstance:f,getDraggableDesignItemElement:c,getDraggingDisplayText:C,getPropConfig:h,getDragScopeElement:g,onAcceptMovedChildElement:x,onChildElementMovedOut:b,addNewChildComponentSchema:S,triggerBelongedComponentToMoveWhenMoved:!!o&&o.triggerBelongedComponentToMoveWhenMoved||n.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:!!o&&o.triggerBelongedComponentToDeleteWhenDeleted||n.ref(!1),onRemoveComponent:y},r}class ft{constructor(t,o){H(this,"componentId");H(this,"viewModelId");H(this,"eventsEditorUtils");H(this,"formSchemaUtils");H(this,"formMetadataConverter");H(this,"designViewModelUtils");H(this,"designViewModelField");H(this,"controlCreatorUtils");H(this,"designerHostService");H(this,"schemaService",null);H(this,"metadataService",null);H(this,"propertyConfig",{type:"object",categories:{}});var i;this.componentId=t,this.designerHostService=o,this.eventsEditorUtils=o.eventsEditorUtils,this.formSchemaUtils=o.formSchemaUtils,this.formMetadataConverter=o.formMetadataConverter,this.viewModelId=((i=this.formSchemaUtils)==null?void 0:i.getViewModelIdByComponentId(t))||"",this.designViewModelUtils=o.designViewModelUtils,this.controlCreatorUtils=o.controlCreatorUtils,this.metadataService=o.metadataService,this.schemaService=o.schemaService}getTableInfo(){var t;return(t=this.schemaService)==null?void 0:t.getTableInfoByViewModelId(this.viewModelId)}setDesignViewModelField(t){var i;const o=t.binding&&t.binding.type==="Form"&&t.binding.field;if(o){if(!this.designViewModelField){const a=this.designViewModelUtils.getDgViewModel(this.viewModelId);this.designViewModelField=a.fields.find(r=>r.id===o)}t.updateOn=(i=this.designViewModelField)==null?void 0:i.updateOn}}changeFieldEditorType(t,o){}getBasicPropConfig(t){return{description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"combo-list",textField:"name",valueField:"value",data:[{value:t.type,name:ee[t.type].name}]}}}}}getAppearanceConfig(t=null){return{title:"样式",description:"Appearance",properties:{class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter"},style:{title:"style样式",type:"string",description:"组件的样式",$converter:"/converter/appearance.converter"}}}}updateElementByParentContainer(t,o){const i=o&&o.parent&&o.parent.schema;if(!i)return;const a=i.contents.findIndex(l=>l.id===t),r=je.cloneDeep(i.contents[a]);i.contents.splice(a,1),i.contents.splice(a,0,r)}}class Cr{constructor(){H(this,"label","");H(this,"id","");H(this,"columnInSM",12);H(this,"columnInMD",6);H(this,"columnInLG",3);H(this,"columnInEL",2);H(this,"displayWidthInSM",1);H(this,"displayWidthInMD",1);H(this,"displayWidthInLG",1);H(this,"displayWidthInEL",1);H(this,"displayColumnCountAtBreakPoint","md");H(this,"tagRow",0);H(this,"showTopBorder",0);H(this,"group",1);H(this,"isSupportedClass",!0);H(this,"fieldSetId","")}}function wr(e){let t,o;const i=new Map;let a=[];function r(f,c){const C=f.split(" ").filter(h=>h.startsWith("col-"));if(C.length===0){c.isSupportedClass=!1;return}let g=C.find(h=>/^col-([1-9]|10|11|12)$/.test(h)),x=C.find(h=>/^col-md-([1-9]|10|11|12)$/.test(h)),S=C.find(h=>/^col-xl-([1-9]|10|11|12)$/.test(h)),b=C.find(h=>/^col-el-([1-9]|10|11|12)$/.test(h));g=g||"col-12",c.columnInSM=parseInt(g.replace("col-",""),10),c.displayWidthInSM=c.columnInSM/12,c.displayWidthInSM!==1&&(c.isSupportedClass=!1),x=x||"col-md-"+c.columnInSM,c.columnInMD=parseInt(x.replace("col-md-",""),10),c.displayWidthInMD=c.columnInMD/6,[1,2].includes(c.displayWidthInMD)||(c.isSupportedClass=!1),S=S||"col-xl-"+c.columnInMD,c.columnInLG=parseInt(S.replace("col-xl-",""),10),c.displayWidthInLG=c.columnInLG/3,[1,2,3,4].includes(c.displayWidthInLG)||(c.isSupportedClass=!1),b=b||"col-el-"+c.columnInLG,c.columnInEL=parseInt(b.replace("col-el-",""),10),c.displayWidthInEL=c.columnInEL/2,[1,2,3,4,5,6].includes(c.displayWidthInEL)||(c.isSupportedClass=!1)}function l(f,c,p,C=!1){let g=!1;f.contents.forEach(x=>{if(x.type==="fieldset"){p+=1,l(x,c,p,!0),g=!0;return}g&&(p+=1,g=!1);const S=x.appearance&&x.appearance.class,b=new Cr;S?r(S,b):b.isSupportedClass=!1,b.label=x.label||x.id,b.id=x.id,b.group=p,C&&(b.fieldSetId=f.id),o===x.id&&(t=p),i.set(x.id,x),c.push(b)})}function s(f){const c=e.getComponentById(f);if(!c||!c.componentType||!c.componentType.startsWith("form"))return{result:!1,message:"只可以在响应式表单组件中调整响应式布局配置"};const p=e.selectNode(c,C=>C.type===Rt.DgControl["response-form"].type);return!p||!p.contents||p.contents.length===0?{result:!1,message:"Form区域内没有控件,请先添加控件"}:{result:!0,message:"",formNode:p}}function d(f,c){c=c||f.id;const{result:p,message:C,formNode:g}=s(c);if(!p)return{result:p,message:C};o=f.id,a=[],i.clear();const x=g.contents[0].type===Rt.DgControl.fieldset.type?0:1;l(g,a,x);const S=a.find(h=>!h.isSupportedClass);return{defaultState:{defaultGroupNumber:t||1,model:S?"customize":"standard"},importData:a}}function u(f,c){c=c;const{result:p,formNode:C}=s(c);if(!p)return"";const g=[];return f.forEach(x=>{var h;const S=i.get(x.id),b=S.appearance&&S.appearance.class;if(b){const _=b.split(" ").filter(N=>!N.startsWith("col-")),w="col-"+x.columnInSM,F="col-md-"+x.columnInMD,V="col-xl-"+x.columnInLG,v="col-el-"+x.columnInEL,m=[w,F,V,v].concat(_);S.appearance.class=m.join(" ")}if(x.fieldSetId){const y=C.contents.find(w=>w.id===x.fieldSetId),_=g.find(w=>w.id===x.fieldSetId);_?(h=_.contents)==null||h.push(S):(g.push(y),y.contents=[S])}else g.push(S)}),C.contents=g,C.id}return{checkCanFindFormNode:s,checkCanOpenLayoutEditor:d,changeFormControlsByResponseLayoutConfig:u,getResonseFormLayoutConfig:l}}const Sr={id:{type:String},required:{type:Boolean,default:!1},text:{type:String,default:""},title:{type:String}},xr=n.defineComponent({name:"FDynamicFormLabel",props:Sr,emits:[],setup(e,t){const o=n.ref(e.title||e.text),i=n.ref(e.required),a=n.ref(e.text);return n.watch(()=>e.text,()=>{a.value=e.text}),n.watch(()=>e.required,(r,l)=>{r!==l&&(i.value=r)}),()=>a.value&&n.createVNode("label",{class:"col-form-label",title:o.value},[i.value&&n.createVNode("span",{class:"farris-label-info text-danger"},[n.createTextVNode("*")]),n.createVNode("span",{class:"farris-label-text"},[a.value])])}}),_r=new Map([["appearance",Ye]]);function Fr(e,t,o){return t}const Vr={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/input-group.schema.json",title:"input-group",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:"input-group"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},editable:{description:"",type:"boolean",default:!0},enableLinkLabel:{description:"",type:"boolean",default:!1},label:{description:"",type:"string",default:""},labelWidth:{description:"",type:"number"},placeholder:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},disabled:{description:"",type:"boolean",default:!1},tabIndex:{description:"",type:"number",default:-1},textAlign:{description:"",type:"enum",enum:["left","middle","right"],default:"left"},visible:{description:"",type:"boolean",default:!0},onBlur:{description:"",type:"string",default:""},onClickLinkLabel:{description:"",type:"sting",default:""},addonDisabled:{description:"",type:"boolean",default:!1},addonContent:{description:"",type:"string",default:""},autoHeight:{description:"",type:"boolean",default:!1},enableAddon:{description:"",type:"boolean",default:!1},addonType:{description:"",type:"string",enum:["button","static"],default:"button"},enableClear:{description:"",type:"boolean",default:!0},enableViewPassword:{description:"",type:"boolean",default:!1},inputType:{description:"",type:"string",enum:["input","password","text"],default:"input"},maxHeight:{description:"",type:"number",default:500},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}}},showButtonWhenDisabled:{description:"",type:"boolean",default:!1},onClear:{description:"",type:"string",default:""}},required:["id","type"],ignore:["id","appearance","binding","visible"]},vn={id:{Type:String,default:""},autocomplete:{Type:String,default:"off"},customClass:{Type:String,default:""},disabled:{Type:Boolean,default:!1},editable:{Type:Boolean,default:!0},enableClear:{Type:Boolean,default:!0},enableTitle:{Type:Boolean,default:!0},enableViewPassword:{Type:Boolean,default:!0},forcePlaceholder:{Type:Boolean,default:!1},groupText:{Type:String,default:""},type:{Type:String,default:"text"},max:{type:[Number,String]},min:{type:[Number,String]},maxLength:{Type:Number||void 0,default:void 0},minLength:{Type:Number||void 0,default:void 0},modelValue:{Type:String||Boolean,default:""},showBorder:{Type:Boolean,default:!0},step:{Type:Number,default:1},placeholder:{Type:String,default:""},precision:{Type:Number,default:0},readonly:{Type:Boolean,default:!1},showButtonWhenDisabled:{Type:Boolean,default:!1},tabIndex:{Type:Number||void 0,default:void 0},textAlign:{Type:String,default:"left"},useExtendInfo:{Type:Boolean,default:!1},extendInfo:{Type:String,default:""},value:{Type:String,default:""},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1},updateOn:{type:String,default:"blur"}};Ae(vn,Vr,_r,Fr);function Nr(e,t){const o=n.ref(e.groupText),i=n.computed(()=>e.showButtonWhenDisabled&&(e.readonly||e.disabled)),a=n.computed(()=>e.enableClear||!!e.groupText);return{appendedButtonClass:n.computed(()=>({"input-group-append":!0,"append-force-show":i.value})),appendedContent:o,shouldShowAppendedButton:a}}function kr(e,t,o,i){const{appendedContent:a}=i,r=n.ref(e.enableViewPassword),l=n.computed(()=>e.type==="password"),s='<span class="f-icon f-icon-eye" style="color: rgb(56, 143, 255);"></span>',d='<span class="f-icon f-icon-eye"></span>',u=n.ref(!1);n.watch(()=>[e.readonly,e.disabled],([p,C])=>{l.value&&(o.value=p||C?"password":o.value,a.value=p||C?d:a.value)});function f(){return u.value=!u.value,o.value=u.value?"text":"password",a.value=u.value?s:d,!1}function c(){o.value=l.value?"password":"text",a.value=l.value?r.value?d:"":a.value}return c(),{isPassword:l,onClickAppendedButton:f}}function Tr(e,t,o){const i=n.ref(),{onBlurTextBox:a,onFocusTextBox:r,onInput:l,onKeyDown:s,textBoxValue:d}=o,u=n.computed(()=>e.disabled||e.readonly||!e.editable?"":e.placeholder),f=n.computed(()=>({"form-control":!0,"f-utils-fill":!0})),c=n.computed(()=>({"text-align":e.textAlign}));function p(x){x.stopPropagation()}function C(){e.selectOnCreated,e.focusOnCreated}async function g(x){r(x),await n.nextTick,C()}return n.onMounted(async()=>{await n.nextTick,C()}),()=>n.createVNode("input",{ref:i,class:f.value,style:c.value,type:"text",value:d.value,disabled:e.disabled,readonly:e.readonly||!e.editable,placeholder:u.value,onBlur:a,onChange:p,onFocus:g,onInput:l,onKeydown:s},null)}function Ir(e,t,o){const{canDownward:i,canUpward:a,onClickDownButton:r,onClickUpButton:l}=o,s=n.computed(()=>({"input-group-append":!0,"btn-group":!0,"btn-group-number":!0})),d=n.computed(()=>({btn:!0,"btn-secondary":!0,"btn-number-flag":!0})),u=n.computed(()=>({cursor:a()?"pointer":"not-allowed","margin-left":0})),f=n.computed(()=>({cursor:i()?"pointer":"not-allowed","margin-left":0}));return()=>n.createVNode("div",{class:s.value},[n.createVNode("button",{title:"upButton",class:d.value,style:u.value,onClick:l,disabled:!a()},[n.createVNode("span",{class:"f-icon f-icon-arrow-chevron-up number-arrow-chevron"},null)]),n.createVNode("button",{title:"downButton",class:d.value,style:f.value,onClick:r,disabled:!i()},[n.createVNode("span",{class:"f-icon f-icon-arrow-chevron-down number-arrow-chevron"},null)])])}function Mr(e,t){const o=lt.useNumber(e,t),i=lt.useFormat(e,t,o),a=lt.useSpinner(e,t,i,o),r=lt.useTextBox(e,t,i,o,a),l=Ir(e,t,a),{displayValue:s,modelValue:d,getRealValue:u}=o,f=Tr(e,t,r),{format:c}=i,{isFocus:p}=r,C=n.computed(()=>!e.disabled&&!e.readonly);return n.onMounted(()=>{const g=u(e.modelValue);s.value=c(g)}),n.watch(()=>[e.value],([g])=>{const x=u(g);d.value=x,s.value=c(x)}),n.watch(()=>[e.modelValue],([g])=>{g!==d.value&&(d.value=g,!p.value&&(s.value=c(u(g))))}),n.watch(()=>[e.precision,e.useThousands,e.prefix,e.suffix,e.showZero],()=>{s.value=c(d.value)}),()=>n.createVNode("div",{class:"input-group f-state-hover flex-row f-cmp-number-spinner"},[f(),C.value&&l()])}function Br(e,t,o,i){const a=n.ref(),r=n.ref(e.autocomplete),l=n.ref(e.enableTitle),{isPassword:s}=o,d=n.ref(e.minLength),u=n.ref(e.maxLength),f=n.ref(e.tabIndex),{disabled:c,displayText:p,inputType:C,onBlur:g,onFocus:x,onInput:S,onClick:b,onKeydown:h,onKeyup:y,onMousedown:_,onTextBoxValueChange:w,readonly:F,placeholder:V,textBoxClass:v,textBoxTitle:m}=i;return n.onMounted(()=>{e.selectOnCreated,e.focusOnCreated}),()=>n.createVNode("input",{ref:a,name:"input-group-value",autocomplete:r.value,class:v.value,disabled:c==null?void 0:c.value,maxlength:u.value,minlength:d.value,placeholder:V.value,readonly:F==null?void 0:F.value,tabindex:f.value,title:l.value&&!s.value?m.value:"",type:C.value,value:p==null?void 0:p.value,onBlur:g,onClick:b,onChange:w,onFocus:x,onInput:S,onKeydown:h,onKeyup:y,onMousedown:_},null)}function Or(e,t){const o=n.computed(()=>e.useExtendInfo&&!!e.extendInfo),i=n.reactive({content:e.extendInfo});function a(){t.emit("updateExtendInfo")}return()=>o.value&&n.withDirectives(n.createVNode("span",{class:"input-group-before-tips",onMouseenter:a},[n.createVNode("i",{class:"f-icon f-icon-info-circle"},null),n.createVNode("b",{class:"tips-arrow"},null)]),[[n.resolveDirective("tooltip"),i]])}function Pr(e,t,o,i,a){const{appendedButtonClass:r,appendedContent:l}=o,s=n.computed(()=>e.showButtonWhenDisabled&&(!e.editable||!e.readonly)&&!e.disabled),d=n.computed(()=>l.value&&!t.slots.groupTextTemplate),u=n.computed(()=>!!t.slots.groupTextTemplate),{clearButtonClass:f,clearButtonStyle:c,onClearValue:p,shouldShowClearButton:C}=i;function g(){return n.createVNode("span",{id:"clearIcon",class:f.value,style:c.value,onClick:V=>p(V)},[n.createVNode("i",{class:"f-icon modal_close"},null)])}function x(V){t.emit("iconMouseEnter",V)}function S(V){t.emit("iconMouseLeave",V)}function b(V){s.value&&t.emit("clickHandle",{originalEvent:V}),V.stopPropagation()}const h=e.type==="password"?a.onClickAppendedButton:b;function y(){return n.createVNode("span",{class:"input-group-text",onMouseenter:V=>x(V),onMouseleave:V=>S(V),innerHTML:l.value,onClick:V=>h(V)},null)}function _(){return t.slots.groupTextTemplate&&t.slots.groupTextTemplate()}function w(){return d.value?y:u.value?_:""}const F=w();return()=>n.createVNode("div",{class:r.value},[C.value&&g(),F&&F()])}const $r=n.defineComponent({name:"FInputGroup",props:vn,emits:["clear","change","blur","click","clickHandle","focus","input","keydown","keyup","iconMouseEnter","iconMouseLeave","update:modelValue","update:value","updateExtendInfo","valueChange"],setup(e,t){const o=n.ref(e.modelValue),i=n.ref(e.modelValue),a=Ee.useTextBox(e,t,o,i),{inputGroupClass:r,inputType:l,inputGroupStyle:s}=a,d=Nr(e),{shouldShowAppendedButton:u}=d,f=Ee.useClear(e,t,a),{onMouseEnter:c,onMouseLeave:p}=f,C=kr(e,t,l,d),g=Mr(e,t),x=Br(e,t,C,a),S=Pr(e,t,d,f,C),b=Or(e,t),h=n.computed(()=>e.type==="number");n.watch(()=>[e.value],([_])=>{o.value=_,i.value=_}),n.watch(()=>[e.modelValue],([_])=>{o.value=_,i.value=_}),n.onMounted(()=>{e.value&&(o.value=e.value,i.value=e.value)});const y=()=>n.createVNode(n.Fragment,null,[n.createVNode("div",{id:e.id,class:r.value,style:s.value,onMouseenter:c,onMouseleave:p},[h.value?g():n.createVNode(n.Fragment,null,[b(),x(),u.value&&S()])])]);return()=>y()}}),Y={},J={},Q={},Z={};let bn=!1;function jr(){bn||(bn=!0,fo.register(Y,J,Q,Z),uo.register(Y,J,Q,Z),po.register(Y,J,Q,Z),mo.register(Y,J,Q,Z),ho.register(Y,J,Q,Z),go.register(Y,J,Q,Z),at.register(Y,J,Q,Z),vt.register(Y,J,Q,Z),yo.register(Y,J,Q,Z),vo.register(Y,J,Q,Z),Co.register(Y,J,Q,Z),bo.register(Y,J,Q,Z),wo.register(Y,J,Q,Z),So.register(Y,J,Q,Z),xo.register(Y,J,Q,Z),yt.register(Y,J,Q,Z),_o.register(Y,J,Q,Z),jt.register(Y,J,Q,Z),Fo.register(Y,J,Q,Z),No.register(Y,J,Q,Z),ko.register(Y,J,Q,Z),To.register(Y,J,Q,Z),Mo.register(Y,J,Q,Z),Io.register(Y,J,Q,Z),Bo.register(Y,J,Q,Z),Oo.register(Y,J,Q,Z),Po.register(Y,J,Q,Z),$o.register(Y,J,Q,Z),lt.register(Y,J,Q,Z),co.register(Y,J,Q,Z),jo.register(Y,J,Q,Z),Eo.register(Y,J,Q,Z),Et.register(Y,J,Q,Z),Ro.register(Y,J,Q,Z),Do.register(Y,J,Q,Z),Ao.register(Y,J,Q,Z),Ho.register(Y,J,Q,Z),Lo.register(Y,J,Q,Z),Wo.register(Y,J,Q,Z),Go.register(Y,J,Q,Z),ri.register(Y,J,Q),qo.register(Y,J,Q,Z),zo.register(Y,J,Q,Z),Uo.register(Y,J,Q,Z),Ko.register(Y,J,Q,Z),Xo.register(Y,J,Q,Z),Yo.register(Y,J,Q,Z),so.register(Y,J,Q,Z),Dt.register(Y,J,Q,Z),Jo.register(Y,J,Q,Z),Qo.register(Y,J,Q,Z),lo.register(Y,J,Q,Z),Zo.register(Y,J,Q,Z),ti.register(Y,J,Q,Z),ei.register(Y,J,Q,Z),ni.register(Y,J,Q,Z),oi.register(Y,J,Q,Z),ii.register(Y,J,Q,Z),ai.register(Y,J,Q,Z),Vo.register(Y,J,Q,Z),li.register(Y,J,Q,Z))}function Er(){jr();function e(a){return Y[a]||$r}function t(a,r){const l=J[a];return l?l(r):{}}function o(a){switch(a){case"check-box":return"onChangeValue";case"switch":return"onModelValueChanged";case"check-group":return"onChangeValue";case"combo-list":case"combo-tree":return"onChange";case"combo-lookup":return"";case"date-picker":return"onDatePicked";case"date-range":return"";case"datetime-picker":return"";case"datetime-range":return"";case"month-picker":return"";case"month-range":return"";case"year-picker":return"";case"year-range":return"";case"input-group":return"onChange";case"lookup":return"onUpdate:modelValue";case"number-range":return"onValueChange";case"number-spinner":return"onValueChange";case"radio-group":return"onChangeValue";case"text":return"";case"response-layout-editor-setting":return"onChange";case"events-editor":return"onSavedCommandListChanged";case"grid-field-editor":return"onChange";case"item-collection-editor":return"onChange";case"response-form-layout-setting":return"onChange";case"field-selector":case"binding-selector":return"onFieldSelected";case"schema-selector":return"onSchemaSelected";case"mapping-editor":return"onMappingFieldsChanged";case"textarea":return"onValueChange";case"query-solution-config":return"onFieldsChanged"}}function i(a){switch(a){case"combo-list":case"input-group":case"textarea":return"onClear"}}return{resolveEditorProps:t,resolveEditorType:e,getChangeFunctionName:o,getClearFunctionName:i}}const Rr=n.defineComponent({name:"FDynamicFormGroup",props:yn,emits:["change","update:modelValue"],setup(e,t){const o=n.ref(e.id),i=n.ref(e.customClass),a=n.ref(e.editor),r=n.ref(e.label),l=n.ref(e.modelValue),s=n.ref(e.readonly),d=n.ref(e.required),u=n.ref(e.showLabel),f=n.ref(e.visible);n.ref(e.type);const c=n.ref(),{resolveEditorProps:p,resolveEditorType:C,getChangeFunctionName:g,getClearFunctionName:x}=Er(),S=n.computed(()=>({"form-group":!0,"farris-form-group":!0,"common-group":!0,"q-state-readonly":s.value}));function b(_,w){l.value=w!==void 0?w:_,t.emit("update:modelValue",l.value),t.emit("change",l.value)}function h(){t.emit("update:modelValue","")}const y=n.computed(()=>{const _=a.value.type||"input-group",w=C(_),F=p(_,a.value),V=g(_),v=x(a.value.type);return v&&(F[v]=h),F[V]=b,(F.id==null||F.id==="")&&(F.id=o.value),()=>n.createVNode(w,n.mergeProps({ref:c},F,{modelValue:l.value,"onUpdate:modelValue":m=>l.value=m}),t.slots)});return n.watch([()=>e.id,()=>e.customClass,()=>e.editor,()=>e.label,()=>e.modelValue,()=>e.readonly,()=>e.required,()=>e.showLabel,()=>e.visible],([_,w,F,V,v,m,N,T,I])=>{o.value=_,i.value=w,a.value=F,r.value=V,l.value=v,s.value=m,d.value=N,u.value=T,f.value=I}),t.expose({editorRef:c}),()=>f.value&&n.createVNode("div",{id:`${o.value}-input-group`,class:i.value,style:e.customStyle},[n.createVNode("div",{class:"farris-group-wrap"},[n.createVNode("div",{class:S.value},[u.value&&n.createVNode(xr,{id:`${o.value}-lable`,required:d.value,text:r.value,title:r.value},null),n.createVNode("div",{class:"farris-input-wrap"},[y.value()])])])])}}),Dr={},Ar={},ot=class ot{static getEditorTypesByMDataType(t){const o=ot.fieldControlTypeMapping[t];return o||[{key:"",value:""}]}static getAllInputTypes(){const t=[];for(const o in ot.fieldControlTypeMapping)ot.fieldControlTypeMapping[o].forEach(i=>{t.find(a=>a.key===i.key&&a.value===i.value)||t.push({key:i.key,value:i.value})});return t}};H(ot,"fieldControlTypeMapping",{String:[{key:ee["input-group"].type,value:ee["input-group"].name},{key:ee.lookup.type,value:ee.lookup.name},{key:ee["date-picker"].type,value:ee["date-picker"].name},{key:ee["check-box"].type,value:ee["check-box"].name},{key:ee["check-group"].type,value:ee["check-group"].name},{key:ee["radio-group"].type,value:ee["radio-group"].name},{key:ee["combo-list"].type,value:ee["combo-list"].name},{key:ee.textarea.type,value:ee.textarea.name}],Text:[{key:ee.textarea.type,value:ee.textarea.name},{key:ee.lookup.type,value:ee.lookup.name}],Decimal:[{key:ee["number-spinner"].type,value:ee["number-spinner"].name}],Integer:[{key:ee["number-spinner"].type,value:ee["number-spinner"].name}],Number:[{key:ee["number-spinner"].type,value:ee["number-spinner"].name}],BigNumber:[{key:ee["number-spinner"].type,value:ee["number-spinner"].name}],Date:[{key:ee["date-picker"].type,value:ee["date-picker"].name}],DateTime:[{key:ee["date-picker"].type,value:ee["date-picker"].name}],Boolean:[{key:ee.switch.type,value:ee.switch.name},{key:ee["check-box"].type,value:ee["check-box"].name}],Enum:[{key:ee["combo-list"].type,value:ee["combo-list"].name},{key:ee["radio-group"].type,value:ee["radio-group"].name}],Object:[{key:ee.lookup.type,value:ee.lookup.name},{key:ee["combo-list"].type,value:ee["combo-list"].name},{key:ee["radio-group"].type,value:ee["radio-group"].name}]});let ct=ot;const pt=n.ref(0);function Hr(e,t){const o=t.getBoundingClientRect(),i=e.getBoundingClientRect(),a=i.top>=o.top,r=i.top<=o.bottom;return a&&r}function Gr(e){if(!e)return;let t;if(e.className.includes("dgComponentSelected")?t=e:t=e.querySelector(".dgComponentSelected"),!t)return;const o=t.getBoundingClientRect();if(o.width===0&&o.height===0)return;const i=t.querySelector(".component-btn-group");if(i){if(!Hr(t,e)){i.style.display="none";return}i.style.display="";const r=i.getBoundingClientRect(),l=i.querySelector("div");if(l){const s=l.getBoundingClientRect();l.style.top=r.top+"px",l.style.left=r.left-s.width+"px"}}}class He extends ft{constructor(o,i){super(o,i);H(this,"responseLayoutEditorFunction");this.responseLayoutEditorFunction=wr(this.formSchemaUtils)}getPropertyConfig(o,i){return this.propertyConfig.categories.basic=this.getBasicProperties(o,i),this.propertyConfig.categories.appearance=this.getAppearanceProperties(o,i),this.propertyConfig.categories.editor=this.getEditorProperties(o),this.propertyConfig}getBasicProperties(o,i){var r;const a=this;return this.setDesignViewModelField(o),this.formSchemaUtils.getFormMetadataBasicInfo(),{description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"编辑器类型",title:"编辑器类型",type:"string",refreshPanelAfterChanged:!0,$converter:"/converter/change-editor.converter",editor:{type:"combo-list",textField:"value",valueField:"key",editable:!1,data:a.designViewModelField?ct.getEditorTypesByMDataType((r=a.designViewModelField.type)==null?void 0:r.name):ct.getAllInputTypes()}},label:{title:"标签",type:"string",$converter:"/converter/form-group-label.converter"},binding:{description:"绑定的表单字段",title:"绑定",editor:{type:"binding-selector",bindingType:{enable:!1},editorParams:{componentSchema:o,needSyncToViewModel:!0,viewModelId:this.viewModelId,designerHostService:this.designerHostService,disableOccupiedFields:!0},textField:"bindingField"}}},setPropertyRelates(l,s){if(l)switch(l&&l.propertyID){case"type":{a.changeControlType(o,l,i);break}case"label":{l.needRefreshControlTree=!0;break}}}}}getAppearanceProperties(o,i){const a=this;return{title:"样式",description:"Appearance",properties:{class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter"},style:{title:"style样式",type:"string",description:"组件的样式",$converter:"/converter/appearance.converter"},responseLayout:{description:"响应式列宽",title:"响应式列宽",type:"boolean",visible:!0,refreshPanelAfterChanged:!0,editor:{type:"response-layout-editor-setting",initialState:a.responseLayoutEditorFunction.checkCanOpenLayoutEditor(o,a.componentId)}}},setPropertyRelates(r,l){if(r)switch(r&&r.propertyID){case"responseLayout":a.responseLayoutEditorFunction.changeFormControlsByResponseLayoutConfig(r.propertyValue,a.componentId||o.id),a.updateUnifiedLayoutAfterResponseLayoutChanged(a.componentId),a.updateElementByParentContainer(o.id,i),delete o.responseLayout;break;case"class":a.updateUnifiedLayoutAfterControlChanged(r.propertyValue,o.id,this.componentId),a.updateElementByParentContainer(o.id,i);break}}}}getEditorProperties(o){return this.getComponentConfig(o)}changeControlType(o,i,a){var f,c,p,C;const r=i.propertyValue,l=a&&a.parent&&a.parent.schema;if(!l)return;const s=l.contents.findIndex(g=>g.id===o.id),d=l.contents[s];let u;this.designViewModelField&&(this.designViewModelUtils.getDgViewModel(this.viewModelId).changeField(this.designViewModelField.id,{editor:{$type:r},name:this.designViewModelField.name,require:this.designViewModelField.require,readonly:this.designViewModelField.readonly},!1),u=this.controlCreatorUtils.setFormFieldProperty(this.designViewModelField,r)),u||(u=this.controlCreatorUtils.createFormGroupWithoutField(r)),Object.assign(u,{id:d.id,appearance:d.appearance,size:d.size,label:d.label,binding:d.binding,visible:d.visible}),Object.assign(u.editor,{isTextArea:u.isTextArea&&d.isTextArea,placeholder:(f=d.editor)==null?void 0:f.placeholder,holdPlace:(c=d.editor)==null?void 0:c.holdPlace,readonly:(p=d.editor)==null?void 0:p.readonly,require:(C=d.editor)==null?void 0:C.require}),l.contents.splice(s,1),l.contents.splice(s,0,u),a.schema=Object.assign(d,u),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(g=>g.classList.remove("dgComponentSelected")),pt.value++}getComponentConfig(o,i={},a={}){const r=Object.assign({description:"编辑器",title:"编辑器",type:"input-group",$converter:"/converter/property-editor.converter"},i),l=Object.assign({readonly:{description:"",title:"只读",type:"boolean"},disabled:{description:"",title:"禁用",type:"boolean"},placeholder:{description:"空值时,输入控件内的占位文本",title:"提示文本",type:"string"}},a);return{...r,properties:{...l}}}updateUnifiedLayoutAfterControlChanged(o,i,a){const r=o.split(" ");let l=r.find(c=>/^col-([1-9]|10|11|12)$/.test(c)),s=r.find(c=>/^col-md-([1-9]|10|11|12)$/.test(c)),d=r.find(c=>/^col-xl-([1-9]|10|11|12)$/.test(c)),u=r.find(c=>/^col-el-([1-9]|10|11|12)$/.test(c));l=l||"col-12",s=s||"col-md-"+l.replace("col-",""),d=d||"col-xl-"+s.replace("col-md-",""),u=u||"col-el-"+d.replace("col-xl-","");const f={id:i,columnInSM:parseInt(l.replace("col-",""),10),columnInMD:parseInt(s.replace("col-md-",""),10),columnInLG:parseInt(d.replace("col-xl-",""),10),columnInEL:parseInt(u.replace("col-el-",""),10)};this.updateUnifiedLayoutAfterResponseLayoutChanged(a,f)}updateUnifiedLayoutAfterResponseLayoutChanged(o,i){const{formNode:a}=this.responseLayoutEditorFunction.checkCanFindFormNode(o);if(!a||!a.unifiedLayout)return;const r=[];if(this.responseLayoutEditorFunction.getResonseFormLayoutConfig(a,r,1),i){const g=r.find(x=>x.id===i.id);Object.assign(g||{},i)}const l=r.map(g=>g.columnInSM),s=r.map(g=>g.columnInMD),d=r.map(g=>g.columnInLG),u=r.map(g=>g.columnInEL),f=this.checkIsUniqueColumn(l)?l[0]:null,c=this.checkIsUniqueColumn(s)?s[0]:null,p=this.checkIsUniqueColumn(d)?d[0]:null,C=this.checkIsUniqueColumn(u)?u[0]:null;Object.assign(a.unifiedLayout,{uniqueColClassInSM:f,uniqueColClassInMD:c,uniqueColClassInLG:p,uniqueColClassInEL:C})}checkIsUniqueColumn(o){const i=new Set(o);return Array.from(i).length===1}}class Lr extends He{constructor(t,o){super(t,o)}}Ae({id:{type:String,default:""},editor:{type:Object,default:{}},modelValue:{type:[String,Boolean,Array,Number],default:""},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1}},gn,_t,void 0);const Wr={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/grid-field-editor.schema.json",title:"response-form-layout-setting",description:"A Farris Data Grid 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:"response-form-layout-setting"},viewModelId:{description:"",type:"string",default:""},gridData:{description:"",type:"Object",default:null}},required:["id","type"]},qr={initialState:{type:Object,default:{uniqueColClassInSM:12,uniqueColClassInMD:6,uniqueColClassInLG:3,uniqueColClassInEL:2}}};At.createPropsResolver(qr,Wr,hr,br);const zr={width:{Type:Number,default:400},type:{Type:String,default:"info"},title:{Type:String,default:""},detail:{Type:String,default:""},okButtonText:{Type:String,default:"确定"},cancelButtonText:{Type:String,default:"取消"},exceptionInfo:{Type:Object,default:null},promptEditorType:{Type:String,default:"text-area"}};function Vt(){return new DOMException("The request is not allowed","NotAllowedError")}async function Ur(e){if(!navigator.clipboard)throw Vt();return navigator.clipboard.writeText(e)}async function Kr(e){const t=document.createElement("span");t.textContent=e,t.style.whiteSpace="pre",t.style.webkitUserSelect="auto",t.style.userSelect="all",document.body.appendChild(t);const o=window.getSelection(),i=window.document.createRange();o==null||o.removeAllRanges(),i.selectNode(t),o==null||o.addRange(i);let a=!1;try{a=window.document.execCommand("copy")}finally{o==null||o.removeAllRanges(),window.document.body.removeChild(t)}if(!a)throw Vt()}async function Xr(e){try{await Ur(e)}catch(t){try{await Kr(e)}catch(o){throw o||t||Vt()}}}function Yr(){async function e(t){await Xr(t)}return{onCopy:e}}function Jr(e,t,o,i){const a=n.ref(14),r=n.ref(140),l=n.ref(""),s=n.ref(i.value.length),d=n.computed(()=>i.value),u=n.computed(()=>({"font-size":`${a.value}px`,height:"100%"}));function f(c){if(c.currentTarget){const p=c.currentTarget.value||"";s.value=p.length}}return()=>n.createVNode(n.Fragment,null,[n.createVNode("textarea",{title:"promptMessage",name:"promptMessage",class:"form-control",style:u.value,rows:"4",maxlength:r.value,onInput:c=>f(c)},[d.value]),n.createVNode("span",{class:"textarea-wordcount",title:l.value,style:"position: absolute; bottom: 76px; right: 32px; cursor: pointer; text-align: right;"},[s.value+" / "+r.value])])}function Qr(e,t,o,i){const a=Jr(e,t,o,i),r=new Map([["text-area",a]]);function l(s){return r.get(s)||null}return{getEditorRender:l}}function Zr(){const e=n.ref(!1),t=n.ref("复制成功");return{feedbackStyle:n.computed(()=>{const i={position:"absolute",left:"50%",top:"50%",width:"100px",height:"40px",background:"#303C53","line-height":"40px","text-align":"center","margin-left":"-30px","margin-top":"-50px","border-radius":"10px","box-shadow":"0px 2px 8px 0px",color:"#fff",transition:"all .3s ease"};return i.opacity=e.value?"0.8":"0",i.display=e.value?"":"none",i}),feedbackMessage:t,toShowFeedback:e}}function ea(e,t){const o=t.getEditorRender(e.promptEditorType);return()=>o&&o()}function ta(e){const t=n.ref(3),o=n.ref(480),i=n.computed(()=>!!e.value&&!!e.value.date),a=n.computed(()=>`发生时间 : ${e.value&&e.value.date||""}`),r=n.computed(()=>!!e.value&&!!e.value.detail),l=n.computed(()=>{const S=`${o.value}px`;return{overflow:"hidden","text-overflow":"ellipsis",display:"-webkit-box","-webkit-box-orient":"vertical","-webkit-line-clamp":t.value,"max-height":S}}),s=n.computed(()=>e.value&&e.value.detail||""),d=n.computed(()=>!0),u=n.ref(!1),f=n.ref("展开"),c=n.ref("收起"),p=n.computed(()=>{const S={display:"block",color:"#2A87FF"};return S["text-align"]=u.value?"":"right",S});function C(S,b){u.value=!u.value,t.value=u.value?20:3}function g(S){return C()}function x(S){return C()}return()=>n.createVNode("div",{class:"toast-msg-detail"},[i.value&&n.createVNode("div",null,[a.value]),r.value&&n.createVNode("div",{id:"exception_error_msg",ref:"exceptionMessageRef",style:l.value},[n.createTextVNode("详细信息 : "),n.createVNode("span",{innerHTML:s.value},null)]),d.value&&n.createVNode("span",{style:p.value},[u.value&&n.createVNode("span",{onClick:g,style:"cursor: pointer;"},[c.value]),!u.value&&n.createVNode("span",{onClick:x,style:"cursor: pointer;"},[f.value])])])}function na(e){return()=>n.createVNode("p",{class:"toast-msg-detail",innerHTML:e.value},null)}function oa(e,t,o,i){const a=n.ref(e.exceptionInfo),r=n.computed(()=>{const p={"f-icon":!0},C=`f-icon-${t.value}`;return p[C]=!0,p}),l=n.computed(()=>o.value||a.value&&a.value.message),s=n.computed(()=>i.value),d=n.computed(()=>!!i.value),u=n.computed(()=>!!a.value);function f(){return u.value?ta(a):d.value?na(s):()=>null}const c=f();return()=>n.createVNode(n.Fragment,null,[n.createVNode("div",{class:"float-left modal-tips-iconwrap"},[n.createVNode("span",{class:r.value},null)]),n.createVNode("div",{class:"modal-tips-content"},[n.createVNode("p",{class:"toast-msg-title",innerHTML:l.value},null),c()])])}function ia(e,t,o){const{onCopy:i}=t,{toShowFeedback:a}=o,r=n.ref("复制成功"),l=n.ref("复制详细信息"),s=n.ref(e.exceptionInfo||{date:"",message:"",detail:""}),d=n.computed(()=>s.value&&s.value.detail||"");function u(f){i(d.value).catch(c=>{r.value="复制失败"}).finally(()=>{a.value=!0,setTimeout(()=>{a.value=!1},700)})}return()=>n.createVNode("span",{style:"width: 100%;color: #2A87FF;padding-left: 37px;"},[n.createVNode("span",{onClick:u,style:"cursor: pointer;"},[l.value])])}function ra(e,t,o,i){const a=n.ref(e.type),r=n.ref([]),l=n.ref(e.exceptionInfo),s=n.ref(e.okButtonText),d=n.ref(e.cancelButtonText),u=n.ref(!0),f=n.ref(!0),c=n.computed(()=>!!(r.value&&r.value.length)),p=n.computed(()=>l.value&&l.value.date&&l.value.message&&l.value.detail),C=n.computed(()=>!(r.value&&r.value.length)&&(s.value||d.value)),g=n.computed(()=>f.value&&s.value),x=n.computed(()=>u.value&&d.value),S=ia(e,o,i);function b(y){a.value==="question"&&t.emit("reject"),t.emit("close")}function h(y){a.value==="question"&&t.emit("accept"),t.emit("close")}return()=>n.createVNode("div",{class:"modal-footer"},[p.value&&S(),C.value&&x.value&&n.createVNode("button",{type:"button",class:"btn btn-secondary btn-lg",onClick:b},[d.value]),C.value&&g.value&&n.createVNode("button",{type:"button",class:"btn btn-primary btn-lg",onClick:h},[s.value]),c.value&&r.value.length&&r.value.map(y=>n.createVNode("button",{type:"button",onClick:y.handle,class:y.class},[y.iconClass&&n.createVNode("span",{class:y.iconClass},null),y.text]))])}const mt=n.defineComponent({name:"FMessageBox",props:zr,emits:["accept","reject","close"],setup(e,t){const o=n.ref(e.type),i=n.ref(e.title),a=n.ref(e.detail),r=n.computed(()=>{const S={"modal-tips":!0,"d-flex":!0,"flex-row":!0},b=`messager-type-${o.value}`;return S[b]=!0,S}),l=n.computed(()=>{const S={};return o.value==="prompt"?S.padding="0.5rem 0.5rem 1rem 1.5rem":o.value==="error"&&(S.padding="0.5rem 1.5rem 1rem 1.5rem"),S}),s=Yr(),d=Qr(e,o,i,a),u=Zr(),{feedbackStyle:f,feedbackMessage:c}=u;function p(){return n.createVNode("div",{style:f.value},[c.value])}function C(){switch(o.value){case"prompt":return ea(e,d);default:return oa(e,o,i,a)}}const g=C(),x=ra(e,t,s,u);return()=>n.createVNode("div",{class:"farris-messager"},[n.createVNode("section",{class:r.value,style:l.value},[g()]),x(),p()])}}),aa={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},reiszeable:{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}};class Oe{constructor(t,o){this.x=t,this.y=o}static getTransformInfo(t){const i=window.getComputedStyle(t).getPropertyValue("transform").replace(/[^-\d,]/g,"").split(",");if(i.length>=6){const a=parseInt(i[4],10),r=parseInt(i[5],10);return{x:a,y:r}}return{x:0,y:0}}static fromEvent(t,o=null){if(this.isMouseEvent(t))return new Oe(t.clientX,t.clientY);if(o===null||t.changedTouches.length===1)return new Oe(t.changedTouches[0].clientX,t.changedTouches[0].clientY);for(let i=0;i<t.changedTouches.length;i++)if(t.changedTouches[i].target===o)return new Oe(t.changedTouches[i].clientX,t.changedTouches[i].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 Oe(0,0);if(window){const i=window.getComputedStyle(t);if(i){const a=parseInt(i.getPropertyValue("left"),10),r=parseInt(i.getPropertyValue("top"),10);o.x=isNaN(a)?0:a,o.y=isNaN(r)?0:r}return o}return null}static copy(t){return new Oe(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 Qe{constructor(t,o){this.width=t,this.height=o}static getCurrent(t){const o=new Qe(0,0);if(window){const i=window.getComputedStyle(t);return i&&(o.width=parseInt(i.getPropertyValue("width"),10),o.height=parseInt(i.getPropertyValue("height"),10)),o}return null}static copy(t){return new Qe(0,0).set(t)}set(t){return this.width=t.width,this.height=t.height,this}}function la(e,t){const o=n.ref(),i=n.ref(),a=n.ref(),r=n.ref(),l=n.ref(),s=n.ref(),d=n.ref(),u=n.ref(),f=n.ref(),c=n.ref(),p=n.ref(),C=n.ref(),g=n.ref(e.draggable),x=n.ref(!1);function S(){const M=i.value||document.body,$=window.getComputedStyle(M);if(!$||!o.value)return;const R=Oe.getTransformInfo(o.value),E={};d.value&&(E.deltaL=o.value.offsetLeft-d.value.x,E.deltaT=o.value.offsetTop-d.value.y);const A=$.getPropertyValue("position");E.width=M.clientWidth,E.height=M.clientHeight,E.pr=parseInt($.getPropertyValue("padding-right"),10),E.pb=parseInt($.getPropertyValue("padding-bottom"),10),E.position=$.getPropertyValue("position"),A==="static"&&(M.style.position="relative"),E.translateX=R.x,E.translateY=R.y,c.value=E}function b(M){if(o.value){r.value=Qe.getCurrent(o.value),l.value=Oe.getCurrent(o.value),s.value=r.value?Qe.copy(r.value):null,d.value=l.value?Oe.copy(l.value):null,S();const $=M.target.getAttribute("type")||"";u.value={n:!!$.match(/n/),s:!!$.match(/s/),w:!!$.match(/w/),e:!!$.match(/e/)}}}function h(){var M,$,R,E;if(o.value){const A=o.value;u.value&&((u.value.n||u.value.s)&&((M=s.value)!=null&&M.height)&&(A.style.height=s.value.height+"px"),(u.value.w||u.value.e)&&(($=s.value)!=null&&$.width)&&(A.style.width=s.value.width+"px"),d.value&&((R=d.value)!=null&&R.x&&(A.style.left=d.value.x+"px"),(E=d.value)!=null&&E.y&&(A.style.top=d.value.y+"px")))}}function y(){const M=e.minHeight?e.minHeight:1,$=e.minWidth?e.minWidth:1;s.value&&d.value&&u.value&&r.value&&(s.value.height<M&&(s.value.height=M,u.value.n&&l.value&&(d.value.y=l.value.y+(r.value.height-M))),s.value.width<$&&(s.value.width=$,u.value.w&&l.value&&(d.value.x=l.value.x+(r.value.width-$))),e.maxHeight&&s.value.height>e.maxHeight&&(s.value.height=e.maxHeight,l.value&&u.value.n&&(d.value.y=l.value.y+(r.value.height-e.maxHeight))),e.maxWidth&&s.value.width>e.maxWidth&&(s.value.width=e.maxWidth,u.value.w&&l.value&&(d.value.x=l.value.x+(r.value.width-e.maxWidth))))}function _(){if(i.value){const M=c.value;if(d.value&&s.value&&u.value&&r.value){const $=M.width-M.pr-M.deltaL-M.translateX-d.value.x,R=M.height-M.pb-M.deltaT-M.translateY-d.value.y;u.value.n&&d.value.y+M.translateY<0&&l.value&&(d.value.y=-M.translateY,s.value.height=r.value.height+l.value.y+M.translateY),u.value.w&&d.value.x+M.translateX<0&&l.value&&(d.value.x=-M.translateX,s.value.width=r.value.width+l.value.x+M.translateX),s.value.width>$&&(s.value.width=$),s.value.height>R&&(s.value.height=R)}}}function w(M){if(!a.value||!r.value||!l.value||!u.value)return;M.subtract(a.value);const $=M.x,R=M.y;u.value.n?(d.value.y=l.value.y+R,s.value.height=r.value.height-R):u.value.s&&(s.value.height=r.value.height+R),u.value.e?s.value.width=r.value.width+$:u.value.w&&(s.value.width=r.value.width-$,d.value.x=l.value.x+$),_(),y(),h()}function F(M){if(!f.value)return;const $=Oe.fromEvent(M);$&&w($)}function V(){if(o.value){const{width:M,height:$,x:R,y:E}=o.value.getBoundingClientRect(),A=Oe.getTransformInfo(o.value);return{size:{width:M,height:$},position:{x:R-A.x,y:E-A.y}}}return null}function v(M){if(o.value){const $=V();p.value=$}a.value=void 0,r.value=null,l.value=null,s.value=null,d.value=null,u.value=null,f.value=null,document.removeEventListener("mousemove",F),document.removeEventListener("mouseup",v)}function m(){document.addEventListener("mousemove",F),document.addEventListener("mouseup",v)}function N(M){M instanceof MouseEvent&&M.button===2||g.value&&(M.stopPropagation(),M.preventDefault(),a.value=Oe.fromEvent(M),f.value=M.target,b(M),m())}function T(M){return o.value=M,n.createVNode(n.Fragment,null,[n.createVNode("div",{class:"fv-resizable-handle fv-resizable-n",type:"n",onMousedown:$=>N($)},null),n.createVNode("div",{class:"fv-resizable-handle fv-resizable-e",type:"e",onMousedown:$=>N($)},null),n.createVNode("div",{class:"fv-resizable-handle fv-resizable-s",type:"s",onMousedown:$=>N($)},null),n.createVNode("div",{class:"fv-resizable-handle fv-resizable-w",type:"w",onMousedown:$=>N($)},null),n.createVNode("div",{class:"fv-resizable-handle fv-resizable-ne",type:"ne",onMousedown:$=>N($)},null),n.createVNode("div",{class:"fv-resizable-handle fv-resizable-se fv-resizable-diagonal",type:"se",onMousedown:$=>N($)},null),n.createVNode("div",{class:"fv-resizable-handle fv-resizable-sw",type:"sw",onMousedown:$=>N($)},null),n.createVNode("div",{class:"fv-resizable-handle fv-resizable-nw",type:"nw",onMousedown:$=>N($)},null)])}function I(M=!0){const $=i.value||document.body,R=Qe.getCurrent($),E=o.value;M&&(C.value=V(),C.value.transform=E.style.transform),R&&E&&(s.value=R,E.style.height=s.value.height-14+"px",E.style.width=s.value.width-14+"px",E.style.left="7px",E.style.top="7px",E.style.transform="",p.value={size:s.value,position:{x:0,y:0}},g.value=!1,x.value=!0)}function O(){var M,$;if(C.value){const R={width:C.value.size.width||0,height:C.value.size.height||0},E={x:(window.innerWidth-R.width)/2,y:(window.innerHeight-R.height)/2};(M=s.value)==null||M.set(R),($=d.value)==null||$.set(E);const A=o.value;A.style.height=R.height+"px",A.style.width=R.width+"px",A.style.left=`${E.x}px`,A.style.top=`${E.y}px`,A.style.transform="",p.value={size:R,position:E},g.value=e.draggable,x.value=!1}}function k(){if(o.value){const M=Qe.getCurrent(o.value);if(M){const{width:$,height:R}=M;o.value.style.left=`${(window.innerWidth-$)/2}px`,o.value.style.top=`${(window.innerHeight-R)/2}px`,o.value.style.transform=""}}}function B(){const M=()=>{x.value?I(!1):k()};return window.addEventListener("resize",M),()=>{window.removeEventListener("resize",M)}}const P=B();return{renderResizeBar:T,boundingElement:i,resizedEventParam:p,maximize:I,restore:O,allowDrag:g,isMaximized:x,unWindowResizeHandle:P}}function sa(e,t,o){const i=n.ref(),a=n.ref(e.draggable),r=n.ref(e.lockAxis),l=n.ref(),s=n.ref(),d=n.ref(!1),u=n.ref(new Oe(0,0)),f=n.ref(new Oe(0,0)),c=n.ref(new Oe(0,0)),p=n.ref(new Oe(0,0));n.watch(()=>o.value,V=>{l.value.style.cursor=V?"move":"default"});function C(V,v){if(v.tagName==="BUTTON")return!1;if(v===V)return!0;for(const m in v.children)if(Object.prototype.hasOwnProperty.call(v.children,m)&&C(V,v.children[m]))return!0;return!1}function g(){var N,T;let V=c.value.x+f.value.x,v=c.value.y+f.value.y;r.value==="x"?(V=((N=u.value)==null?void 0:N.x)||0,c.value.x=0):r.value==="y"&&(v=((T=u.value)==null?void 0:T.y)||0,c.value.y=0);const m=`translate3d(${Math.round(V)}px, ${Math.round(v)}px, 0px)`;i.value&&(i.value.style.transform=m),p.value.x=V,p.value.y=v}function x(){if(!s.value||!i.value)return null;const V=s.value.getBoundingClientRect(),v=i.value.getBoundingClientRect(),m={top:V.top<v.top,right:V.right>v.right,bottom:V.bottom>v.bottom,left:V.left<v.left};return m.top||(c.value.y-=v.top-V.top),m.bottom||(c.value.y-=v.bottom-V.bottom),m.right||(c.value.x-=v.right-V.right),m.left||(c.value.x-=v.left-V.left),g(),m}function S(V){V&&(u.value&&V.subtract(u.value),c.value.set(V),g(),x())}function b(V){d.value&&a.value&&(V.stopPropagation(),V.preventDefault(),S(Oe.fromEvent(V,l.value)))}function h(){var V;d.value&&(d.value=!1,f.value.add(c.value),c.value.reset(),(V=i.value)==null||V.classList.remove("ng-dragging"),document.removeEventListener("mousemove",b),document.removeEventListener("mouseup",h))}function y(){!d.value&&l.value&&(d.value=!0,l.value.classList.add("ng-dragging"),document.addEventListener("mousemove",b),document.addEventListener("mouseup",h))}function _(){if(i.value){const V=Oe.getTransformInfo(i.value);f.value.set(V);return}f.value.reset()}function w(V){if(!o.value||V instanceof MouseEvent&&V.button===2)return;const v=V.target||V.srcElement;l.value!==void 0&&v&&!C(v,l.value)||a.value!==!1&&(document.body.click(),V.stopPropagation(),V.preventDefault(),u.value=Oe.fromEvent(V,i.value),_(),y())}function F(V,v,m){if(a.value&&v){if(V)l.value=V;else if(e.dragHandle){if(e.dragHandle instanceof HTMLElement)l.value=e.dragHandle;else if(typeof e.dragHandle=="string"){const N=v.querySelector(e.dragHandle);N&&(l.value=N)}}i.value=v,s.value=m,l.value.classList.add("ng-draggable"),l.value.addEventListener("mousedown",w)}}return{registerDraggle:F,resetTranslate:_}}function Cn(e,t){if(e){const o=i=>{i.key.toLowerCase()===e.toLowerCase()&&t({event:i,key:e})};return document.addEventListener("keydown",o),()=>{document.removeEventListener("keydown",o)}}}function ca(e,t){const o=n.ref(e.enableEsc);let i=null;return o.value?(i=Cn("Escape",a=>{t.emit("esc",{event:a.event,type:"esc"})}),{remove:i}):null}function da(e,t){const o=n.ref(e.enableEnter);let i=null;return o.value?(i=Cn("Enter",a=>{t.emit("enter",{event:a.event,type:"enter"})}),{remove:i}):null}const wn=n.defineComponent({name:"FModal",props:aa,emits:["update:modelValue","accept","cancel","closed","resize","esc","enter"],setup(e,t){const o=n.ref(e.width||300),i=n.ref(e.height||200),a=n.ref(e.modelValue),r=n.ref(""),l=n.ref(e.class),s=n.ref(e.fitContent),d=n.ref(e.showHeader),u=n.ref(""),f=n.ref(e.showCloseButton),c=n.ref(e.showMaxButton),p=n.ref(!1),C=n.ref(""),g=n.ref(""),x=n.ref(""),S=n.ref(e.showButtons),b=n.ref(e.title),h=n.ref(e.reiszeable),y=n.ref(e.containment||null),_=n.ref();function w(j,X){a.value=!1,t.emit("update:modelValue",!1),X!=null&&t.emit(X?"accept":"cancel"),t.emit("closed",j)}const F=[{name:"cancel",text:"取消",class:"btn btn-secondary",handle:j=>{w(j,!1)}},{name:"accept",text:"确定",class:"btn btn-primary",handle:j=>{w(j,!0)}}],V=n.ref(e.buttons&&e.buttons.length?e.buttons:F),v=n.computed(()=>!!u.value),m=n.computed(()=>!!S.value&&!!V.value),N=n.ref(),T=n.ref(),I=n.ref(!1),{renderResizeBar:O,maximize:k,restore:B,boundingElement:P,resizedEventParam:M,allowDrag:$,unWindowResizeHandle:R}=la(e),{registerDraggle:E}=sa(e,t,$);n.watch(()=>e.title,(j,X)=>{j!==X&&(b.value=j)}),n.watch(()=>e.modelValue,(j,X)=>{j!==X&&(a.value=j)}),n.watch(()=>e.showHeader,(j,X)=>{j!==X&&(d.value=j)}),n.watch(()=>e.showButtons,(j,X)=>{j!==X&&(S.value=j)}),n.watch(()=>M.value,(j,X)=>{const re=j||{},q=X||{};JSON.stringify(re)!==JSON.stringify(q)&&t.emit("resize",{newSize:j,oldSize:X})});function A(){const j=document.querySelectorAll(".farris-modal").length;(!j||j-1<=0)&&document.body.classList.remove("modal-open"),_.value&&_.value.classList.remove("show")}const K=n.computed(()=>(a.value?document.body.classList.add("modal-open"):A(),a.value)),oe=n.computed(()=>{const j={modal:!0,"farris-modal":!0,fade:!0};return j["f-modal-fitContent"]=!!s.value,j.show=!!K.value,j}),pe=n.computed(()=>{var re;const j={"modal-dialog":!0},X=(re=l.value)==null?void 0:re.split(" ");return X==null||X.reduce((q,_e)=>(q[_e]=!0,q),j),j}),Ve=n.computed(()=>({position:"absolute",top:`${(window.innerHeight-i.value)/2}px`,left:`${(window.innerWidth-o.value)/2}px`,width:`${o.value}px`,height:s.value?"auto":`${i.value}px`})),me=n.computed(()=>({"modal-content":!0,"modal-content-has-header":d.value})),Se=n.computed(()=>{const j={display:d.value?"":"none"};return j["pointer-events"]=$.value?"auto":"none",j}),xe=n.computed(()=>({"f-icon":!0,modal_maximize:!0,modalrevert:I.value})),de=n.computed(()=>({"modal-body":!0,"f-utils-flex-column":C.value==="iframe"}));function ue(){return{}}const ye=n.computed(()=>{const j={textAlgin:x.value},X=ue();return Object.assign(j,X)});function W(j){if(j.stopPropagation(),I.value){I.value=!1,B();return}k(),I.value=!0}async function z(j,X){j.handle&&await j.handle(X,j)&&t.emit("closed",X)}function ce(j){j.width&&(o.value=j.width),j.height&&(i.value=j.height),j.buttons&&(V.value=j.buttons),j.title&&(b.value=j.title)}let we=null,ae=null;n.onMounted(()=>{T.value&&!y.value&&(y.value=T.value.parentElement,P.value=y.value,E(N.value,T.value,P.value)),K.value&&document.body.classList.add("modal-open"),we=ca(e,t),ae=da(e,t)}),n.onUnmounted(()=>{A(),R&&R(),we&&we.remove(),ae&&ae.remove()}),t.expose({modalElementRef:T,updateModalOptions:ce,close:w,maxDialog:W});function ie(){return n.createVNode("ul",null,[p.value&&n.createVNode("li",{class:"f-btn-icon f-bare"},[n.createVNode("span",{class:"f-icon modal_minimize"},null)]),c.value&&n.createVNode("li",{onClick:W,class:"f-btn-icon f-bare",style:"pointer-events: auto;"},[n.createVNode("span",{class:xe.value},null)]),f.value&&n.createVNode("li",{class:"f-btn-icon f-bare",onClick:j=>w(j,!1),style:"pointer-events: auto;"},[n.createVNode("span",{class:"f-icon modal_close"},null)])])}function he(){return n.createVNode("div",{class:"modal-footer",style:ye.value},[V.value&&V.value.map(j=>n.createVNode("button",{name:j.name,type:"button",class:j.class+(j.iconClass?" btn-icontext":""),onClick:X=>{z(j,X)}},[!!j.iconClass&&n.createVNode("i",{class:j.iconClass},null),j.text]))])}function ge(){return n.createVNode("div",{ref:N,class:"modal-header",style:Se.value},[n.createVNode("div",{class:"modal-title"},[v.value&&n.createVNode("span",{class:u.value,style:"margin-right: 8px"},null),n.createVNode("span",{class:"modal-title-label"},[b.value])]),n.createVNode("div",{class:"actions"},[ie()])])}function ve(j){j.stopPropagation()}return()=>n.createVNode(n.Teleport,{to:"body"},{default:()=>[K.value&&n.createVNode(n.Transition,{name:"fade",appear:!0},{default:()=>{var j,X;return[n.createVNode("div",{class:oe.value,style:"display: block",ref:_,onClick:ve},[n.createVNode("div",{id:r.value,class:pe.value,style:Ve.value,ref:T},[n.createVNode("div",{class:me.value},[d.value&&ge(),n.createVNode("div",{class:de.value},[(X=(j=t.slots).default)==null?void 0:X.call(j),C.value==="iframe"&&n.createVNode("iframe",{title:r.value,class:"f-utils-fill",width:"100%",frameborder:"0",src:g.value},null)]),m.value&&he()]),!s.value&&h.value&&T.value&&O(T.value)])])]}})]})}});function Sn(e){if(e.content&&e.content.render)return e.content.render;if(e.render&&typeof e.render=="function")return e.render}function ua(e){const t=document.createElement("div");t.style.display="contents";const o=n.createApp({setup(i,a){n.onUnmounted(()=>{document.body.removeChild(t)});const r=n.ref(),l=n.ref(e.class||""),s=n.ref(!!e.showButtons),d=n.ref(!!e.showHeader),u=n.ref(e.showCloseButton==null?!0:e.showCloseButton),f=n.ref(!0),c=n.ref(e.title||""),p=e.acceptCallback||(()=>{}),C=e.rejectCallback||(()=>{}),g=e.closedCallback||(h=>{}),x=e.resizeHandle||(h=>{}),S=Sn(e),b=h=>{f.value=!1,o.unmount(),g(h)};return n.onMounted(()=>{}),a.expose({modalRef:r}),()=>n.createVNode(wn,{ref:r,class:l.value,modelValue:f.value,"onUpdate:modelValue":h=>f.value=h,title:c.value,width:e.width,height:e.height,buttons:e.buttons,"show-header":d.value,"show-buttons":s.value,"show-close-button":u.value,"show-max-button":!1,onAccept:p,onCancel:C,fitContent:e.fitContent==null?!0:e.fitContent,onClosed:b,onResize:x},{default:()=>[S&&S(o)]})}});return document.body.appendChild(t),o.mount(t),o}class fa{constructor(t){H(this,"appContext",null);H(this,"modalRef",n.ref());H(this,"activeModalIndex",n.ref(0));H(this,"modalRefs",{});H(this,"isUseEscCloseModal",n.ref(!1));H(this,"activeModalInstance",n.computed(()=>this.modalRefs[this.activeModalIndex.value]));this.app=t,this.appContext=t?t._context:null}getCurrentModal(){return this.activeModalInstance.value}static show(t){const o=Object.assign({title:"",showButtons:!0,showHeader:!0},t);return ua(o)}open(t){const o=document.createDocumentFragment();t.showMaxButton&&t.fitContent&&(t.showMaxButton=!1);const i=n.shallowRef(Object.assign({title:"",showButtons:!0,showHeader:!0},t)),a=n.ref(!0),r=i.value.acceptCallback||(()=>{}),l=i.value.rejectCallback||(()=>{}),s=i.value.closedCallback||((b,h)=>{}),d=i.value.resizeHandle||(b=>{});let u;const f=Sn(i.value),c=b=>{var y;a.value=!1;const h=(y=b==null?void 0:b.target)==null?void 0:y.classList.contains("modal_close");s(b,this.isUseEscCloseModal.value?"esc":h?"icon":"button")},p=b=>{c(b),u&&n.nextTick(()=>{if(this.modalRefs[this.activeModalIndex.value]&&delete this.modalRefs[this.activeModalIndex.value],n.render(null,o),u=null,this.modalRef.value=null,this.modalRefs){const h=Object.keys(this.modalRefs).map(y=>Number(y));h.length>0?this.activeModalIndex.value=Math.max(...h):this.activeModalIndex.value=0}this.isUseEscCloseModal.value=!1})},C=b=>{var h;this.isUseEscCloseModal.value=!0,this.activeModalInstance&&((h=this.activeModalInstance.value)==null||h.close(b==null?void 0:b.event))},g=()=>n.createVNode(wn,n.mergeProps({ref:this.modalRef,modelValue:a.value,"onUpdate:modelValue":b=>a.value=b},i.value,{onAccept:r,onCancel:l,onClosed:p,onResize:d,onEsc:C}),{default:()=>[f&&f(this.app)]});return u=(b=>{const h=n.h(g,b);return h.appContext=this.appContext,n.render(h,o),h})({...i.value}),this.activeModalIndex.value++,this.modalRefs[this.activeModalIndex.value]=this.modalRef.value,{update:b=>{i.value={...i.value,...b},u&&n.render(n.cloneVNode(u,{...i}),o)},destroy:p,modalRef:this.activeModalInstance}}}const pa=Symbol("FModalService");class qe{static show(t){const o=n.reactive({...t}),i=!1,a=o.type==="error"||o.type==="prompt",r=o.type==="error"?"错误提示":o.type==="prompt"&&o.title||"",l=o.acceptCallback||(()=>{}),s=o.rejectCallback||(()=>{});let d=null,u=new fa(d);const f=()=>{d&&(d==null||d.destroy(),u=null)};d=u==null?void 0:u.open({class:"modal-message modal-message-type-info",title:r,showButtons:i,showHeader:a,width:o.width||400,fitContent:!0,showMaxButton:!1,render:()=>n.createVNode(mt,n.mergeProps(o,{onAccept:l,onReject:s,onClose:f}),null)})}static info(t,o){const i=n.reactive({type:"info",title:t,detail:o,okButtonText:"知道了",cancelButtonText:""});qe.show(i)}static warning(t,o){const i=n.reactive({type:"warning",title:t,detail:o,okButtonText:"知道了",cancelButtonText:""});qe.show(i)}static success(t,o){const i=n.reactive({type:"success",title:t,detail:o,okButtonText:"关闭",cancelButtonText:""});qe.show(i)}static error(t,o,i){const a=n.reactive({width:500,type:"error",okButtonText:"关闭",cancelButtonText:"",exceptionInfo:{date:i,message:t,detail:o}});qe.show(a)}static prompt(t,o){const i=n.reactive({type:"prompt",title:t,detail:o,okButtonText:"确定",cancelButtonText:"取消"});qe.show(i)}static question(t,o,i,a){const r=n.reactive({type:"question",title:t,detail:o,okButtonText:"确定",cancelButtonText:"取消",acceptCallback:i,rejectCallback:a});qe.show(r)}}mt.install=e=>{e.component(mt.name,mt),e.provide("FMessageBoxService",qe)};var xn=(e=>(e[e.Value=0]="Value",e[e.SmartHelp=1]="SmartHelp",e[e.Enum=2]="Enum",e[e.Express=3]="Express",e))(xn||{}),_n=(e=>(e.Equal="0",e.NotEqual="1",e.Greater="2",e.GreaterOrEqual="3",e.Less="4",e.LessOrEqual="5",e.Like="6",e.LikeStartWith="7",e.LikeEndWith="8",e))(_n||{});const ma=[{value:"0",name:"等于"},{value:"1",name:"不等于"},{value:"2",name:"大于"},{value:"3",name:"大于等于"},{value:"4",name:"小于"},{value:"5",name:"小于等于"},{value:"6",name:"包含"},{value:"7",name:"开始是"},{value:"8",name:"结束是"}],ha={"button-edit":["0","1"," 6","7","8"],"check-box":["0"],"combo-list":["0","1"],"combo-lookup":["0","1"," 6","7","8"],"date-picker":["0","1","2","3","4","5"],"date-range":[],"datetime-picker":["0","1","2","3","4","5"],"datetime-range":[],"month-picker":["0","1","2","3","4","5"],"month-range":[],"year-picker":["0","1","2","3","4","5"],"year-range":[],"input-group":["0","1","6","7","8"],lookup:["0","1"],"number-range":[],"number-spinner":["0"," 1","2","3","4","5"],"radio-group":["0"],text:["0","1"," 6","7","8"]};function ga(e,t,o){const{fieldMap:i}=o;function a(r){const l=i.get(r.fieldCode);if(!l)return[];const s=l.editor.type,d=new Set(ha[s]);return ma.filter(f=>d.has(f.value))}return{getCompareOperators:a}}function Fn(){const e=n.ref({relation:0,items:[],children:[],path:[],groupId:0,level:0}),t=new Map,o=new Map;let i=0;function a(){return{id:"",fieldCode:"",fieldName:"",compareType:_n.Equal,valueType:xn.Value,value:new fn,relation:0,conditionId:Date.now()}}function r(m,N){return{relation:m,items:[],children:[],path:[],groupId:++i,level:N}}function l(){const m=Object.assign({},e.value);o.forEach((N,T)=>{N.groupId===m.groupId&&o.set(T,m)}),t.forEach((N,T)=>{N.groupId===m.groupId&&t.set(T,m)}),e.value=m}function s(m){const N=new Map;let T=0;return m.forEach((I,O)=>{var k,B;if(T+=((k=I.lBracket)==null?void 0:k.length)||0,N.set(O,T),T-=((B=I.rBracket)==null?void 0:B.length)||0,T<0)throw new Error("The right bracket is out of range.")}),N}function d(m,N,T,I,O){for(let k=0;k<N;k++){const B=m+(k+1),P=r(O,B);T.children.push(P),o.set(P.groupId,T),T=T.children[T.children.length-1],I.push(T)}return T}function u(m,N,T,I,O){for(let M=N;M<=0;M++)I.pop();const k=I[I.length-1];if(!k)throw new Error("The group path is out of range");const B=m+N,P=r(O,B);return k.children.push(P),o.set(P.groupId,k),T=k.children[k.children.length-1],I.push(T),T}function f(m,N,T,I){T.pop();const O=T[T.length-1],k=r(I,m);return O.children.push(k),o.set(k.groupId,O),N=O.children[O.children.length-1],T.push(N),N}function c(m,N,T,I,O,k){let B=m[m.length-1];if(!B)throw new Error("The group path is out of range");const P=N.get(I)||0,M=N.get(T)||0;if(T<0||T===I)return m[m.length-1];const $=P-M,R=O&&O.relation!==void 0?O.relation:1;return B=$>0?d(M,$,B,m,R):B,B=$<0?u(M,$,B,m,R):B,B=$===0&&M>0&&P>0&&O&&k&&!!O.rBracket&&!!k.lBracket?f(M,B,m,R):B,B}function p(m){const T={relation:m.length&&m[0].relation!==void 0?m[0].relation:1,items:[],children:[],path:[],groupId:0,level:0},I=[T],O=s(m);return m.forEach((k,B)=>{const P=B-1,M=m[P],$=c(I,O,P,B,M,k);$.items.push(k),t.set(k.conditionId,$)}),e.value=T,T}function C(){const m=a();t.set(m.conditionId,e.value),e.value.items.push(m)}function g(m){if(!m)return;const N=t.get(m.conditionId);if(N){const T=N.items.findIndex(O=>O.conditionId===m.conditionId)+1,I=a();t.set(I.conditionId,N),N.items.splice(T,0,I),l()}}function x(m,N,T,I){m.reduce((O,k)=>{const B=k.conditionId!==void 0,P=k.groupId!==void 0;if(B){const M=k;T.push(M),O.items.set(M.conditionId,M)}if(P){const M=k;I.push(M),O.groups.set(M.groupId,M)}return O},N)}function S(m,N,T,I,O){m&&(m.items=N.length?m.items.filter(k=>!T.has(k.conditionId)):m.items,m.children=I.length?m.children.filter(k=>!O.has(k.groupId)):m.children)}function b(m,N,T){N.forEach(I=>{m.items.push(I),t.set(I.conditionId,m)}),T.forEach(I=>{m.children.push(I),o.set(I.groupId,m)})}function h(m){const N=m[0],T=N.conditionId!==void 0?t.get(N.conditionId):o.get(N.groupId),I={items:new Map,groups:new Map},O=[],k=[];if(T){x(m,I,O,k),S(T,O,I.items,k,I.groups);const B=r(T.relation,T.level+1);b(B,O,k),T.children.push(B),o.set(B.groupId,T),l()}}function y(m){const N=[...m.items],T=[...m.children],I=o.get(m.groupId);I&&(I.children=I.children.filter(O=>O.groupId!==m.groupId),o.delete(m.groupId),N.forEach(O=>{I.items.push(O),t.set(O.conditionId,I)}),T.forEach(O=>{I.children.push(O),o.set(O.groupId,I)}),l())}function _(m){m.relation=m.relation===1?2:1,l()}let w;function F(m){const{relation:N}=m;return(m.children&&m.children.length?m.children.map((I,O,k)=>{const B=w(I);return B[0].lBracket=(B[0].lBracket||"")+"(",B[B.length-1].rBracket=(B[B.length-1].rBracket||"")+")",B[B.length-1].relation=O<k.length-1?N:0,B}):[]).flat()}w=(m=e.value)=>{const{relation:N}=m,T=m.items.map((O,k,B)=>(O.lBracket=k===0?"(":"",O.rBracket=k===B.length-1?")":"",O.relation=k<B.length-1?N||1:0,O)),I=F(m);return[...T,...I]};function V(m){const N=m||e.value;if(N.children.length&&N.children.forEach(T=>{V(T)}),N.level===0&&!N.items.length&&N.children.length===1){const T=N.children[0];e.value.relation=T.relation,y(T)}else N.items.length===0&&N.children.length<=1&&y(N)}function v(m){const N=t.get(m.conditionId);N&&(N.items=N.items.filter(T=>T.conditionId!==m.conditionId),t.delete(m.conditionId),V(),l())}return{addCondition:C,changeGroupRelation:_,conditionGroupMap:t,getConditions:w,group:h,groupParentMap:o,insertConditionTo:g,loadConditionGroup:p,refresh:l,removeCondition:v,rootGroup:e,unGroup:y}}function ya(e,t,o){const i=n.ref(new Set),a=n.ref(new Set),{conditionGroupMap:r,groupParentMap:l}=o;let s,d;function u(b){let h=s.level<=b.level?s:b,y=s.level>b.level?s:b;const _=[];for(;y&&h&&y!==h;)y.level>h.level?(_.push(y),y=l.get(y.groupId)):y.level===h.level&&(h=l.get(h.groupId),h&&_.unshift(h));return _}function f(b){a.value.add(b.groupId),b.items.forEach(h=>i.value.add(h.conditionId)),b.children.forEach(h=>f(h))}function c(b){const{conditionId:h}=b;i.value.add(h),s=i.value.size===0?r.get(h):s;const y=r.get(b.conditionId);u(y).forEach(w=>f(w))}const p=n.computed(()=>i.value.size===0&&a.value.size===1),C=function(b){a.value.delete(b.groupId),b.items.forEach(y=>d(y)),b.children.forEach(y=>!p.value&&C(y));const h=l.get(b.groupId);h&&a.value.has(h.groupId)&&C(h)};d=function(b){const{conditionId:h}=b;if(i.value.has(h)&&i.value.delete(h),a.value.size>0){const y=r.get(h);y&&a.value.has(y.groupId)&&C(y)}};function g(b){const{conditionId:h}=b;i.value.size===0&&(s=r.get(h)),i.value.has(h)?d(b):c(b)}function x(){const b=[];return s&&(s.items.filter(h=>i.value.has(h.conditionId)).forEach(h=>b.push(h)),s.children.filter(h=>a.value.has(h.groupId)).forEach(h=>b.push(h))),b}function S(){i.value.clear(),a.value.clear()}return{clear:S,getSelectedGroupItem:x,selectedItems:i,toggleSelect:g}}const Nt=n.defineComponent({name:"FConditionList",props:dn,emits:["valueChange","labelCodeChange","compareTypeChange"],setup(e,t){const o=n.ref(e.key),i=n.ref(e.conditions),a=mn(e),{convertToSingleControl:r,fields:l,fieldMap:s,loadFieldConfigs:d}=a,u=Fn(),{addCondition:f,changeGroupRelation:c,getConditions:p,group:C,insertConditionTo:g,loadConditionGroup:x,refresh:S,removeCondition:b,rootGroup:h,unGroup:y}=u,{createConditionValue:_}=pn(),w=ya(e,t,u),{selectedItems:F,toggleSelect:V}=w,{getCompareOperators:v}=ga(e,t,a);d(!1),l.value=r(l.value),x(i.value);function m($){var E;const R=((E=s.get($.fieldCode))==null?void 0:E.editor)||{type:"text"};$.value=_(R.type,void 0),t.emit("labelCodeChange",$)}function N($,R){t.emit("compareTypeChange",R)}function T(){}t.expose({getConditions:p});function I($,R){t.emit("valueChange",$,R)}function O($){return $.items.map(R=>{var E;return n.createVNode("div",{class:"condition-list-item",key:R.conditionId},[n.createVNode("div",{class:"condition-list-item-type mr-3"},[n.createVNode(vt,{"value-field":"labelCode","text-field":"name","id-field":"id",data:l.value,modelValue:R.fieldCode,"onUpdate:modelValue":A=>R.fieldCode=A,onChange:A=>m(R)},null)]),n.createVNode("div",{class:"condition-list-item-compare mr-3"},[n.createVNode(vt,{"value-field":"value","text-field":"name","id-field":"id",data:v(R),modelValue:R.compareType,"onUpdate:modelValue":A=>R.compareType=A,onChange:A=>N(A,R)},null)]),n.createVNode("div",{class:"condition-list-item-control mr-3"},[n.createVNode(Rr,{editor:(E=s.get(R.fieldCode))==null?void 0:E.editor,showLabel:!1,modelValue:R.value.value,"onUpdate:modelValue":A=>R.value.value=A,onChange:A=>{I(A,R)}},null)]),n.createVNode("div",{class:"condition-list-item-extend"},[n.createVNode("span",{class:"f-icon f-icon-plus-sm mr-2",onClick:()=>g(R)},null),n.createVNode("span",{class:"f-icon f-icon-minus-sm",onClick:()=>b(R)},null)]),n.createVNode("div",{class:"custom-control custom-checkbox"},[n.createVNode("input",{title:"selection",class:"custom-control-input",type:"checkbox",checked:F.value.has(R.conditionId)},null),n.createVNode("label",{class:"custom-control-label",onClick:()=>V(R)},null)])])})}function k($){return n.createVNode("div",{class:"condition-list-relation"},[n.createVNode("span",{class:"condition-list-relation-close f-icon-filter-cancel btn-link",onClick:()=>y($)},null),n.createVNode("span",{class:"condition-list-relation-text btn-link",onClick:()=>c($)},[$.relation===1?"与":"或"])])}function B($){return n.createVNode("div",{class:"condition-list-content"},[n.createVNode("div",{class:"condition-list-content-group"},[O($),$.children&&$.children.map(R=>B(R))]),k($)])}function P(){C(w.getSelectedGroupItem()),w.clear()}function M(){return n.createVNode("div",{class:"condition-list-bottom"},[n.createVNode("div",{class:"add-condition-btn mb-1 mr-3",onClick:f},[n.createVNode("span",{class:"f-icon f-icon-filter-add"},null),n.createVNode("span",{class:"ml-1"},[n.createTextVNode("添加条件")])]),n.createVNode("div",{class:"add-condition-btn mb-1",onClick:P},[n.createVNode("span",{class:"f-icon f-icon-filter-grouping"},null),n.createVNode("span",{class:"ml-1"},[n.createTextVNode("生成条件组")])]),n.createVNode("div",{class:"condition-list-reset add-condition-btn",onClick:T},[n.createTextVNode("重置")])])}return()=>n.createVNode("div",{class:"condition-list",key:o.value},[n.createVNode("div",{class:"condition-list-body"},[B(h.value)]),M()])}});Nt.install=e=>{e.component(hn.name,hn).component(Nt.name,Nt)};const va=["equal","notEqual","greaterThan","greaterThanOrEqual","lessThan","lessThanOrEqual","contain","startWidth","endWidth"],ba={equal:(e,t,o)=>e&&e[t]===o,notEqual:(e,t,o)=>e&&e[t]!==o,contain:(e,t,o)=>e?(e[t]||"").indexOf(o)>-1:!1,startWidth:(e,t,o)=>e?(e[t]||"").startsWith(o):!1,endWidth:(e,t,o)=>e?(e[t]||"").endsWith(o):!1},Ca={equal:(e,t,o)=>e&&e[t]===o,notEqual:(e,t,o)=>e&&e[t]!==o},wa={equal:(e,t,o)=>{if(e){const i=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[t]).toLocaleDateString()).valueOf()===i}return!1},notEqual:(e,t,o)=>{if(e){const i=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[t]).toLocaleDateString()).valueOf()!==i}return!1},greaterThan:(e,t,o)=>{if(e){const i=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[t]).toLocaleDateString()).valueOf()>i}return!1},greaterThanOrEqual:(e,t,o)=>{if(e){const i=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[t]).toLocaleDateString()).valueOf()>=i}return!1},lessThan:(e,t,o)=>{if(e){const i=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[t]).toLocaleDateString()).valueOf()<i}return!1},lessThanOrEqual:(e,t,o)=>{if(e){const i=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[t]).toLocaleDateString()).valueOf()<=i}return!1}},Sa={equal:(e,t,o)=>e?String(o).split(",").includes(String(e[t])):!1,notEqual:(e,t,o)=>e?String(o).split(",").findIndex(a=>a===String(e[t]))===-1:!1},xa={equal:(e,t,o)=>{if(e){const i=Number.parseFloat(String(o)),a=Number.parseFloat(String(e[t]));return isNaN(i)?isNaN(a):i===a}return!1},notEqual:(e,t,o)=>{if(e){const i=Number.parseFloat(String(o)),a=Number.parseFloat(String(e[t]));return isNaN(i)?!0:i!==a}return!1},greaterThan:(e,t,o)=>{if(e){const i=Number.parseFloat(String(o)),a=Number.parseFloat(String(e[t]));return isNaN(i)?isNaN(a):a>i}return!1},greaterThanOrEqual:(e,t,o)=>{if(e){const i=Number.parseFloat(String(o)),a=Number.parseFloat(String(e[t]));return isNaN(i)?isNaN(a):a>=i}return!1},lessThan:(e,t,o)=>{if(e){const i=Number.parseFloat(String(o)),a=Number.parseFloat(String(e[t]));return isNaN(i)?isNaN(a):a<i}return!1},lessThanOrEqual:(e,t,o)=>{if(e){const i=Number.parseFloat(String(o)),a=Number.parseFloat(String(e[t]));return isNaN(i)?isNaN(a):a<=i}return!1}};function kt(){const e=n.ref([]),t=new Map,{loadConditionGroup:o}=Fn(),i=new Map([["boolean",Ca],["datetime",wa],["enum",Sa],["number",xa],["text",ba]]);function a(c){t.delete(c),e.value=Array.from(t.values())}function r(){t.clear(),e.value=[]}function l(c){const{valueType:p}=c.value,C=c.compareType||"0",g=va[Number(C)];return i.get(p)[g]}function s(c){const p=c.relation===2?0:1,C=c.items.map(x=>{const S=l(x);return h=>S(h,x.fieldCode,x.value.getValue())}),g=c.children&&c.children.length?c.children.map(x=>s(x)):[];return{relation:p,filterFunctions:C,children:g}}function d(){const c=o(e.value);return s(c)}function u(c,p){const C=p.filterFunctions.map(x=>x(c)),g=p.children.map(x=>u(c,x));return p.relation===1?C.every(x=>x)&&g.every(x=>x):C.includes(!0)||g.includes(!0)}function f(c){const p=d();return u(c,p)}return{apply:f,clearCondition:r,conditions:e,removeCondition:a}}function Tt(e,t){var b;const{idField:o}=t,i=n.ref(e.summary),a=n.ref(e.group),r=n.ref(((b=e.group)==null?void 0:b.groupFields)||[]),l=n.computed(()=>{var h;return(h=e.group)==null?void 0:h.enable}),s=n.computed(()=>{var h;return(h=e.group)==null?void 0:h.showGroupPanel}),d=n.computed(()=>{const h=i.value;return(h==null?void 0:h.groupFields)||[]}),u=n.computed(()=>{const h=a.value;return h&&h.showSummary}),f=new Map;let c=[];function p(h,y,_,w,F){const V=w[_];V&&(y.reduce((v,m,N)=>{var O;const T=m[V];let I=v.get(T);if(!I){const k=d.value.reduce((B,P)=>(B.set(P,0),B),new Map);I={field:V,title:((O=F.get(V))==null?void 0:O.title)||V,value:T,layer:_,details:[],groupSummaries:k},v.set(T,I)}return d.value&&d.value.forEach(k=>{if(I){const B=I.groupSummaries.get(k)||0;I.groupSummaries.set(k,B+m[k])}}),I.details.push(m),v},h),_<w.length-1&&h.forEach((v,m)=>{v.nestGroup=new Map,p(v.nestGroup,v.details,_+1,w,F),v.details=[]}))}function C(h,y){return e.group&&e.group.formatter?e.group.formatter(h.value,{...h,total:y}):`${h.title}:${h.value} (${y})`}function g(h){const y=[];return h.forEach(_=>{const w={__fv_data_grid_group_collapse__:!1,__fv_data_grid_group_field__:_.field,__fv_data_grid_group_layer__:_.layer,__fv_data_grid_group_row__:!0,__fv_data_grid_group_value__:_.value};let F=0;if(y.push(w),_.nestGroup){const V=g(_.nestGroup);y.push(...V),F+=V.length}if(_.details&&_.details.length&&(y.push(..._.details),F+=_.details.length),u.value){const V={__fv_data_grid_group_field__:_.field,__fv_data_grid_group_layer__:_.layer,__fv_data_grid_group_summary__:!0};V[o.value]=`summary_of_${_.field}_${_.value}`,V[_.field]=Array.from(_.groupSummaries.entries()).reduce((v,[m,N])=>`${v} ${m} total:${N} `,""),y.push(V)}_.groupSummaries&&_.groupSummaries.size&&_.groupSummaries.forEach((V,v)=>{w[v]=V}),w[o.value]=`group_of_${_.field}_${_.value}`,w[_.field]=C(_,F)}),y.forEach((_,w)=>{_.__fv_data_index__=w}),y}function x(h,y,_){return!h||h.length===0||!y.length?y:(h.join(","),f.clear(),c=[],p(f,y,0,h,_),c=g(f),c)}function S(h){return{"f-icon":!0,"f-icon-arrow-chevron-down":!0,"fv-grid-group-row-icon-collapse":h.collapse}}return{collpaseGroupIconClass:S,generateGroupData:x,groupFields:r,shouldGroupingData:l,showGroupPanel:s}}function _a(e,t,o,i){const a=n.ref(!!e.hierarchy),{idField:r}=i,{collapseField:l,hasChildrenField:s,parentIdField:d}=o,u=new Map;function f(I,O){const k=new Map;return I.reduce((B,P)=>{const M=P[d.value]!==void 0?P[d.value]:"";if(M&&O.has(M)){const R=O.get(M);P.__fv_parent_index__=R.__fv_index__,R.__fv_hasChildren__=!0}const $=B.has(M)?B.get(M):[];return $.push(P),B.set(M,$),B},k),k}function c(I){const O=new Map;return I.reduce((k,B)=>{const P=B[r.value];return k.set(P,B),k},O),O}function p(I){I.forEach(O=>{const k=O[r.value];O.__fv_children_index__.map(P=>I[P]).forEach(P=>{P.__fv_parents__=new Map([...O.__fv_parents__.entries(),[k,!0]])})})}function C(I){I.forEach(O=>{const k=new Set(O.__fv_children_index__);O.__fv_children_index__=[...k].sort((B,P)=>B-P)})}function g(I,O){I.forEach(k=>{const B=k.__fv_parents__;Array.from(B.keys()).map(P=>O.get(P)).forEach(P=>{P.__fv_children_index__.push(k.__fv_index__)})}),C(I)}function x(I){I.forEach(O=>{O.__fv_child_with_lines__=[],O.__fv_child_length__=O.__fv_descendant_index__.length,O.__fv_descendant_index__.map(k=>I[k]).reduce((k,B)=>(k.__fv_child_length__+=B.__fv_children_index__.length,k.__fv_child_with_lines__.push(...B.__fv_children_index__,B.__fv_index__),k),O)})}function S(I,O){return{id:I,index:O,parentId:"",parentIndex:-1,parents:new Map,children:new Map,descendant:new Map}}function b(I,O){Array.from(O.keys()).forEach(k=>{O.get(k).reduce((P,M)=>{const $=M[r.value],R=I.get(M[r.value]),E=I.get(k);return E&&(E.children.set($,R),E.children.set($,R),R.parentId=k,R.parentIndex=E.index,R.parents.set(k,E)),P},I)})}function h(I){I.children.forEach(k=>{k.parents=new Map([...I.parents.entries(),[I.id,I]]),h(k)})}function y(I,O){I.filter(k=>k[d.value]===void 0||k[d.value]==="").forEach(k=>{const B=k[r.value],P=O.get(B);h(P)})}function _(I){Array.from(I.values()).forEach(O=>{Array.from(O.parents.values()).forEach(k=>{k.descendant.set(O.id,O)})})}function w(I){u.clear(),I.forEach((B,P)=>{const M=B[r.value];u.set(M,S(M,P))});const O=c(I),k=f(I,O);return b(u,k),y(I,u),_(u),u}function F(I){const O=I[r.value],k=u.get(O);return k&&k.children.size>0}function V(I){return I[s.value]&&!F(I)}function v(I){w(t.value);const O=c(I),k=f(I,O);return I.forEach((B,P)=>{var E;const M=B[r.value],$=k.has(M)?(E=k.get(M))==null?void 0:E.map(A=>A.__fv_index__):[],R=S(M,P);B.__fv_graph_node__=R,B.__fv_children_index__=$,B.__fv_descendant_index__=[...$],B.__fv_parents__=new Map,V(B)&&(B[l.value]=!0)}),p(I),g(I,O),e.showLines&&x(I),I}function m(I,O,k){const P=k.value[I][r.value],M=u.get(P);if(M){const $=u.get(M.parentId);let R=k.value.length-1;if($){const E=Array.from($.children.keys()).indexOf(M.id);if(E===$.children.size-1){const K=Array.from($.descendant.values())[$.descendant.size-1];R=k.value.findIndex(pe=>pe[r.value]===K.id)+1}else{const K=Array.from($.children.values())[E+1];R=k.value.findIndex(pe=>pe[r.value]===K.id)}O[s.value]=!1,O[d.value]=$.id,k.value.splice(R,0,O)}}}function N(I,O,k){const B=k.value[I],P=B[r.value];if(u.get(P)){const R=k.value.findIndex(E=>E[r.value]===P)+1;B[s.value]=!0,B[l.value]=!1,O[s.value]=!1,O[d.value]=P,k.value.splice(R,0,O)}}function T(I,O){const k=I[r.value],B=u.get(k),P=Array.from(B.descendant.keys());P.unshift(k);const M=u.get(B.parentId);if(M&&(M.children.delete(k),M.children.size===0)){const R=O.find(E=>E[r.value]===B.parentId);R[s.value]=!1,R[l.value]=!1}return O.filter(R=>P.indexOf(R.id)===-1)}return{generateHierarchyData:v,hasRealChildren:F,insertSibling:m,insertChild:N,shouldStratifyData:a,trimmedOriginalData:T}}const Fa={showCloseButton:{type:Boolean,default:!0},position:{type:String,default:"top-center"},timeout:{type:Number,default:3e3},theme:{type:String,default:"bootstrap"},left:{type:Number},right:{type:Number},top:{type:Number},bottom:{type:Number},id:{type:String},animate:{type:String,default:"fadeIn"},options:{type:Object}},Va={showCloseButton:{type:Boolean,default:!0},animate:{type:String,default:"fadeIn"},options:{type:Object}},It=n.defineComponent({name:"Toast",props:Va,emits:["close","click"],setup:(e,t)=>{const o=n.ref(e.animate),i="fadeOut",a=n.computed(()=>e.options),r=n.ref(!1),l=n.computed(()=>{const b={animated:r.value,toast:!0};return b[e.animate]=!1,b[i]=r.value,b[a.value.type]=!0,a.value.theme&&(b[a.value.theme]=!0),b}),s=n.computed(()=>{const y=`f-icon-${a.value&&a.value.type?a.value.type.replace("toasty-type-",""):"default"}`,_={"f-icon":!0};return _[y]=!0,_}),d=n.computed(()=>a.value.title||a.value.message),u=n.computed(()=>a.value.title&&a.value.message),f=n.computed(()=>!a.value.title&&a.value.message),c=n.computed(()=>e.showCloseButton),p=n.computed(()=>!!a.value.buttons||!!t.slots.default);function C(b){b.stopPropagation(),b.preventDefault(),r.value=!1,setTimeout(()=>{t.emit("close",a.value)},200)}function g(b,h){}function x(b){return`f-preten-link ${b.customClass?b.customClass:""}`}n.watch(o,()=>{o.value});const S=()=>{var b;return n.createVNode(n.Fragment,null,[n.createVNode("div",{class:"after-toast-msg text-right"},[!t.slots.default&&((b=a.value.buttons)==null?void 0:b.map(h=>n.createVNode("span",{class:x(h),onClick:y=>void 0},[h.text]))),t.slots.default&&t.slots.default()])])};return()=>n.createVNode("div",{class:l.value},[c.value&&n.createVNode("button",{title:"close",class:"toast-close f-btn-icon f-bare",onClick:C},[n.createVNode("span",{class:"f-icon modal_close"},null)]),d.value&&n.createVNode("section",{class:"modal-tips"},[n.createVNode("div",{class:"float-left modal-tips-iconwrap"},[n.createVNode("span",{class:s.value},null)]),n.createVNode("div",{class:"modal-tips-content"},[u.value&&n.createVNode(n.Fragment,null,[n.createVNode("h5",{class:"toast-title modal-tips-title",innerHTML:a.value.title},null),n.createVNode("p",{class:"toast-msg",innerHTML:a.value.message},null),p.value&&S()]),f.value&&(a.value.buttons?n.createVNode("div",{class:"toast-title-btns-wrapper d-flex"},[n.createVNode("h5",{class:"toast-title modal-tips-title only-toast-msg",innerHTML:a.value.message},null),n.createVNode("div",{class:"after-toast-title text-right ml-auto"},[S()])]):n.createVNode("h5",{class:"toast-title modal-tips-title only-toast-msg",innerHTML:a.value.message},null))])])])}}),ht=n.defineComponent({name:"Notify",props:Fa,emits:["close","empty"],setup(e,t){const o=n.computed(()=>({"farris-notify":!0})),i={left:12,right:12,top:20,bottom:12},a=n.ref(),r=n.ref(e.options),l=n.ref(e.showCloseButton),s=n.computed(()=>e.position||"bottom-right"),d=n.computed(()=>e.timeout!=null?e.timeout:3e3),u=n.computed(()=>{const p=e.bottom?e.bottom:i.bottom,C=e.top?e.top:i.top,g={transition:"all 0.2s ease",left:s.value.indexOf("left")>-1?`${e.left?e.left:i.left}px`:"",right:s.value.indexOf("right")>-1?`${e.right?e.right:i.right}px`:"",top:s.value.indexOf("top")>-1?`${C}px`:"",bottom:s.value.indexOf("bottom")>-1?`${p}px`:""};return s.value.indexOf("center")>-1&&(g.left="50%",g.marginLeft="calc(-24rem / 2)",s.value==="center-center"&&(g.top="50%",g.transform="translate(-50%, -50%)")),g});function f(p){t.emit("close")}d.value&&setTimeout(()=>{f()},d.value),t.expose({closeToast:f,container:a,notifyPosition:s});function c(p,C){f()}return()=>n.createVNode("div",{class:o.value,style:u.value,ref:a},[n.createVNode(It,{options:r.value,showCloseButton:l.value,animate:e.animate,onClose:p=>c(p,r.value)},null)])}});class Vn{constructor(){H(this,"notifyRefs",[]);H(this,"globalConfig",n.reactive({}))}createNotifyInstance(t){const o=this,a=Object.assign({timeout:3e3,position:"bottom-right",showCloseButton:!0},this.globalConfig,{...t}),r=document.createElement("div");r.style.display="contents";const l=n.createApp({setup(){const s=n.ref();function d(){s.value.container.style.transform="scale(0)",setTimeout(()=>{o.updateNotifyPositionForClose(a,s),l.unmount()},220)}if(a.position.indexOf("top")>-1){const u=o.getNotifyInstances(a.position),f=u[u.length-1];if(f){const c=f.value.container.getBoundingClientRect();a.top=c.bottom}}return n.onUnmounted(()=>{document.body.removeChild(r)}),n.onMounted(()=>{o.updateNotifyPositionForCreate(a,s)}),()=>n.createVNode(n.Transition,{mode:"out-in",name:"fade",appear:!0},{default:()=>[n.createVNode(ht,n.mergeProps({ref:s},a,{onClose:d}),null)]})}});return l.provide("NotifyService",this),document.body.appendChild(r),l.mount(r),l}getNotifyInstances(t){return this.notifyRefs.filter(o=>o.value.notifyPosition===t)}updateNotifyPositionForCreate(t,o){if(this.notifyRefs&&this.notifyRefs.length){const i=window.innerHeight;t.position.indexOf("bottom")>-1&&this.getNotifyInstances(t.position).forEach(a=>{const r=a.value.container.getBoundingClientRect();a.value.container.style.bottom=r.height+i-r.bottom+"px"})}this.notifyRefs=[...this.notifyRefs,o]}updateNotifyPositionForClose(t,o){const i=this.notifyRefs.indexOf(o);if(t.position.indexOf("top")>-1){const a=this.getNotifyInstances(t.position),r=a.indexOf(o);a.slice(r+1).forEach(l=>{l.value.container.style.top=l.value.container.offsetTop-l.value.container.offsetHeight+"px"})}i>-1&&this.notifyRefs.splice(i,1)}show(t){return this.createNotifyInstance(t)}buildNotifyProps(t,o){let i="",a="",r,l,s;typeof o=="string"?i=o:o&&(i=o.message||"",a=o.title||"",l=o.position||null,s=o.showCloseButton!=null?o.showCloseButton:null,r=o.timeout!=null?o.timeout:null);const u={options:{type:t,message:i,title:a}};return l!=null&&(u.position=l),s!=null&&(u.showCloseButton=s),r!=null&&(u.timeout=r),u}info(t){const o=this.buildNotifyProps("info",t);return this.show(o)}success(t){const o=this.buildNotifyProps("success",t);return this.show(o)}warning(t){const o=this.buildNotifyProps("warning",t);return this.show(o)}error(t){const o=this.buildNotifyProps("error",t);return this.show(o)}close(t){t&&t.unmount()}closeAll(){this.notifyRefs.forEach(t=>{t==null||t.value.closeToast()}),this.notifyRefs.length=0}}const Na=Symbol("NOTIFY_SERVICE_TOKEN");ht.install=e=>{e.component(ht.name,ht),e.component(It.name,It);const t=new Vn;e.provide(Na,t),e.provide("FNotifyService",t)};function Nn(e,t,o,i,a){var Ke;const{pageSize:r,total:l,shouldRenderPagination:s,currentPage:d,mode:u}=a,f=new Map,c=new Map,p=new Map,C=new Map,g=new Map,x=n.ref([]),S=n.ref([]),b=kt(),h=Tt(e,i),{generateGroupData:y,groupFields:_,shouldGroupingData:w}=h,F=n.ref(e.data),V=_a(e,F,o,i),{generateHierarchyData:v,hasRealChildren:m,insertSibling:N,insertChild:T,shouldStratifyData:I,trimmedOriginalData:O}=V,{idField:k,reviseIdentifyField:B}=i,P=n.ref(e.newDataItem),M=n.ref(e.data),$=n.ref(e.data),{flatTreeData:R}=La(e);function E(G){return R(G)}if(e.data&&((Ke=e.data[0])!=null&&Ke.children)){const G=E(e.data);F.value=G,M.value=G,$.value=G}const A=n.ref(e.summary),K=n.computed(()=>{const G=A.value;return(G==null?void 0:G.groupFields)||[]});let oe=new Map;const pe=n.computed(()=>{var G;return((G=M.value)==null?void 0:G.length)||0}),Ve=n.ref(e.pagination),me=new Vn,Se=n.computed(()=>e.hierarchy?0:s.value?u.value==="server"?0:(d.value-1)*r.value:0),xe=n.computed(()=>s.value?u.value==="server"?Math.min(r.value,pe.value):Math.min(Se.value+r.value,l.value,pe.value):pe.value);n.watch(()=>F.value.length,(G,te)=>{G!==te&&(l.value=G)});function de(){var Me,se;M.value=je.cloneDeep(F.value),w.value&&(M.value=y(_.value,F.value,t)),oe=K.value.reduce(($e,Fe)=>($e.set(Fe,0),$e),oe);const G=Se.value,te=xe.value;let le=0;const Ie=[];if((Me=M.value)!=null&&Me.length){B(M.value);const $e=k.value!==e.idField;for(let Fe=G;Fe<te;Fe++){const ke=M.value[Fe];ke.__fv_data_grid_group_row__?(le=0,ke.__fv_data_index__=""):ke.__fv_data_grid_group_summary__?ke.__fv_data_index__="":(ke.__fv_disabled__=ke[((se=e.rowOption)==null?void 0:se.disabledField)||"disabled"],le++,s.value?ke.__fv_data_index__=le+(d.value-1)*r.value:ke.__fv_data_index__=le),ke.__fv_index__=Fe,$e&&(ke[k.value]=Fe),K.value.forEach(De=>{const Ce=oe.get(De)||0;oe.set(De,Ce+ke[De])}),Ie.push(ke)}}return I.value&&v(Ie),$.value=[...Ie],Ie}const ue=n.ref(de());function ye(G,te,le=!1){const Me=(le?de():[...$.value]).filter(Fe=>b.apply(Fe)),se=G&&G.length?Me.filter(Fe=>G.reduce((ke,De)=>ke&&De.filter(Fe),!0)):Me,$e=te&&te.length?se.sort((Fe,ke)=>{const De=[...te],Ce=De.shift();let Xe=Ce.compare(Fe[Ce.field],ke[Ce.field]);for(;Xe===0&&De.length!==0;){const it=De.shift();it&&(Xe=it.compare(Fe[it.field],ke[it.field]))}return Xe}):se;return ue.value=$e.map((Fe,ke)=>{if(Fe.__fv_data_grid_group_row__){const De=`group_of_${Fe.__fv_data_grid_group_field__}_${Fe.__fv_data_grid_group_value__}`;Fe.__fv_data_grid_group_collapse__=!!f.get(De)}return Fe.__fv_index__=ke,Fe}),ue.value}function W(G){return g.clear(),S.value=G,S.value.reduce((te,le)=>(te.set(le.field,le),te),g),ye([],S.value)}function z(G,te){return g.set(G,te),S.value=Array.from(g.values()),ye([],S.value)}function ce(G){return g.delete(G),S.value=Array.from(g.values()),ye([],S.value)}function we(G,te){return c.set(G,te),x.value=Array.from(c.values()),ye([],Array.from(g.values()))}function ae(G){return c.delete(G),x.value=Array.from(c.values()),ye([],Array.from(g.values()),!0)}function ie(){return c.clear(),x.value=[],ye([],Array.from(g.values()),!0)}function he(G,te){const le=`group_of_${G}_${te}`;f.set(le,!0);const Ie=Me=>Me[G]!==te;return p.set(`collapse_${G}_${te}`,{field:G,fieldName:G,fieldType:"string",filterValue:te,filter:Ie}),ye(Array.from(p.values()),Array.from(g.values()))}function ge(G,te){const le=`group_of_${G}_${te}`;return f.set(le,!1),p.delete(`collapse_${G}_${te}`),ye(Array.from(p.values()),Array.from(g.values()),!0)}function ve(G){const te=G.raw[k.value],le=Ie=>!Ie.__fv_parents__.has(te);C.set(`fold_${te}`,{field:"id",fieldName:"id",fieldType:"string",filterValue:String(te),filter:le}),ye(Array.from(C.values()),Array.from(g.values())),v(ue.value)}function j(G){const te=G[k.value];C.delete(`fold_${te}`)}function X(G){j(G.raw),ye(Array.from(C.values()),Array.from(g.values()),!0),v(ue.value)}function re(){const G=de();ue.value=G,e.hierarchy&&(ye(Array.from(C.values()),Array.from(g.values())),v(ue.value))}function q(G){var te;if(G&&((te=G[0])!=null&&te.children)){const le=E(G);F.value=le,M.value=le,$.value=le}else F.value=G,M.value=G,$.value=G;re()}function _e(G,te,le){return(G&&G.length?ue.value.filter((Me,se)=>G.reduce(($e,Fe)=>$e&&Fe.filter(Me),!0)):ue.value).slice(te,le)}function U(G){(G-1)*r.value<=pe.value&&re()}function ne(G){F.value.push(je.cloneDeep(G)),ue.value=de()}function fe(G=0){if(!(G>-1))return!1;const le=P.value();e.hierarchy?N(G,le,F):F.value.splice(G,0,le),re()}function Ne(G=0){if(!(G>-1&&e.hierarchy))return!1;const le=P.value(),Ie=F.value[G];j(Ie),T(G,le,F),re()}function Be(G){const te=G?G-1:0;F.value.splice(te,1),re()}function Re(G){const te=F.value.findIndex(le=>le[k.value]===G);te!==-1&&(F.value.splice(te,1),re())}function Le(G){const te=G>-1?F.value[G]:null;if(!(te&&te.deletable!==!1))return!1;F.value=O(te,F.value),re()}function We(){const G=p.size>0?Array.from(p.values()):[];return ye(G,Array.from(g.values()))}function Ze(G){Ve.value&&(Ve.value.size=G,re())}function et(G,te){const le=F.value[Number(G)-1];le.editable!==!1?(le.name=te,re()):me.show({showCloseButton:!1,timeout:3e3,animate:"fadeIn",toasts:[{type:"string",title:"提示",msg:"当前节点禁止编辑"}]})}function tt(G){return G.map(le=>{const Ie=$.value.findIndex(Me=>Me[k.value]===le);return Ie>-1?$.value[Ie]:null}).filter(le=>le!=null)}return{addFilter:we,addNewDataItem:ne,addSorter:z,changePageSizeTo:Ze,collapse:he,dataView:ue,editDataItem:et,expand:ge,filters:x,fold:ve,getRange:_e,getSelectionItems:tt,hasRealChildren:m,load:q,navigatePageTo:U,summaries:oe,totalItems:pe,insertNewDataItem:fe,insertNewChildDataItem:Ne,removeAllFilter:ie,removeDataItem:Be,removeDataItemById:Re,removeFilter:ae,removeHierarchyDataItem:Le,removeSorter:ce,rawView:$,refresh:We,setSorters:W,sorters:S,updateDataView:re,unFold:X,startIndex:Se,endIndex:xe,originalData:F}}function kn(){function t(l){return l.field}function o(l){const s=t(l),d=localStorage.getItem(s);return d?JSON.parse(d):[]}function i(l,s){const d=t(l);localStorage.setItem(d,JSON.stringify(s))}function a(l,s){if(!s)return;const d=o(l),f=[d.find(c=>c.name===s)||{id:Date.now(),name:s,selectable:!0},...d.filter(c=>c.name!==s)];f.length>5&&(f.length=5),i(l,f)}function r(l,s){const u=[...o(l).filter(c=>c.name!==s)],f=t(l);localStorage.setItem(f,JSON.stringify(u))}return{getFilterHistory:o,removeFilterHistory:r,setFilterHistory:i,updateFilterHistory:a}}function Tn(e){n.ref(e.selection.showCheckbox||!1);const t=n.computed(()=>{var l;return((l=e.hierarchy)==null?void 0:l.collapseField)||"__fv_collapse__"}),o=n.computed(()=>{var l;return((l=e.hierarchy)==null?void 0:l.hasChildrenField)||"__fv_hasChildren__"}),i=n.computed(()=>{var l;return((l=e.hierarchy)==null?void 0:l.parentIdField)||"parent"}),a=n.computed(()=>e.hierarchy&&e.selection.showCheckbox),r=n.computed(()=>(e.treeNodeIconsData.fold||e.iconField)&&e.showTreeNodeIcons);return{collapseField:t,hasChildrenField:o,parentIdField:i,shouldShowCheckBox:a,shouldShowIcon:r}}function ka(e,t,o,i){var x,S,b,h,y,_;const{idField:a}=o,r=n.ref(((S=(x=e.hierarchy)==null?void 0:x.cascadeOption)==null?void 0:S.autoCheckChildren)||!1),l=n.ref(((h=(b=e.hierarchy)==null?void 0:b.cascadeOption)==null?void 0:h.autoCheckParent)||!1),s=n.ref(((_=(y=e.hierarchy)==null?void 0:y.cascadeOption)==null?void 0:_.selectionRange)||"All");n.watch(()=>{var w;return(w=e.hierarchy)==null?void 0:w.cascadeOption},w=>{r.value=w?!!w.autoCheckChildren:!1,l.value=w?!!w.autoCheckParent:!1,s.value=w?w.selectionRange:"All"});function d(w,F){for(let V=0;V<F.length;V++)if(!w.includes(F[V]))return!1;return!0}function u(w,F){return w.filter(v=>F.indexOf(v)===-1)}const f=n.computed(()=>s.value==="OnlyParent"),c=n.computed(()=>s.value==="OnlyChildren");function p(w,F){let V=w;const v=t.value[F],m=v[a.value],N=Array.from(v.raw.__fv_descendant_index__).map(P=>t.value[P]),T=N.map(P=>P.raw[a.value]),I=d(w,T),O=d(w,[m]);return O&&I&&f.value&&(V=u(w,T),N.forEach(P=>{P.disabled=!0})),O&&I&&c.value&&(V=u(w,[m]),N.forEach(P=>{P.disabled=!0})),V}function C(w,F){let V=w;const v=F[a.value],m=Array.from(F.__fv_children_index__).map(B=>t.value[B]),N=m.map(B=>B.raw[a.value]),T=d(w,N),I=d(w,[F[a.value]]);return I&&T&&f.value&&(V=u(w,N),m.forEach(B=>{B.disabled=!0})),I&&T&&c.value&&(V=u(w,[v]),m.forEach(B=>{B.disabled=!0})),V}function g(w,F){let V=w.map(T=>T[a.value]);return F.__fv_parent_index__>0&&(V=p(V,F.__fv_parent_index__)),F.__fv_children_index__.length>0&&(V=C(V,F)),w.filter(T=>V.includes(T[a.value]))}return{autoCheckChildren:r,autoCheckParent:l,interactAfterCheckHierarchyItem:g}}function Ta(e,t,o,i,a){const{select:r,unSelect:l,indeterminate:s,getSelectedItems:d,selectedValues:u,currentSelectedDataId:f}=i,{autoCheckChildren:c,autoCheckParent:p,interactAfterCheckHierarchyItem:C}=ka(e,t,o),{idField:g}=o;function x(){return t.value.filter(v=>!!v.checked).map(v=>v.raw.__fv_index__)}function S(v,m){return v.filter(T=>m.indexOf(T)===-1)}function b(v){const m=x();v.raw.__fv_children_index__.some(T=>m.includes(T))&&!!v.checked!==!0&&s(v)}function h(v){let m=v.raw.__fv_parent_index__;for(;m!==void 0;){const N=x(),T=t.value[m],I=S(T.raw.__fv_children_index__,N);I.length===T.raw.__fv_children_index__.length&&I.length!==0?l(T):I.length===0?p.value&&r(T):I.length<T.raw.__fv_children_index__.length&&T.checked!==!0&&s(T),m=T.raw.__fv_parent_index__}}function y(v){const m=!!v.checked;c.value&&v.raw.__fv_children_index__.map(T=>t.value[T]).forEach(T=>{m?r(T):l(T)})}function _(v){y(v),h(v);const m=v.raw;let N=d();N=C(N,m),b(v),a.emit("selectionChange",N)}function w(v,m){let N=-1;if(v.raw.__fv_parent_index__>-1){const k=t.value[v.raw.__fv_parent_index__].raw.__fv_descendant_index__,B=k.length>1,P=k.findIndex($=>$===m),M=P===k.length-1;N=B?M?k[P-1]:k[P+1]:-1}return N>-1?t.value[N]:null}function F(v){return v.raw.__fv_parent_index__>-1?t.value[v.raw.__fv_parent_index__]:null}function V(v){const m=t.value[v];if(!m)return null;const N=w(m,v),I=N!==null?N:F(m);return I?I.raw[g.value]:null}return{getNextSelectableHierarchyItemId:V,toggleSelectHierarchyItem:_}}function In(e,t,o,i,a,r,l,s){var _e;const{dataView:d}=t,{getVisualData:u,maxVisibleRowIndex:f,minVisibleRowIndex:c}=a,p=n.ref(i.value.primaryColumnsWidth),C=n.ref(i.value.leftColumnsWidth),g=n.ref(i.value.rightColumnsWidth),x=((_e=e.rowOption)==null?void 0:_e.height)||28,S=n.ref(0),b=n.ref(0);let h=0,y=r.value-1;const _=n.ref(0),w=n.ref(0),F=n.ref(0);function V(){if(d.value.length<=0)return 0;const U=f.value<d.value.length?d.value[f.value]:d.value[d.value.length-1];return(U.__fv_data_position__||0)+(U.__fv_data_height__||0)+Math.max(d.value.length-1-f.value,0)*x}const v=n.computed(()=>{const U=V();return d.value.length>r.value+l?Math.floor((r.value+l)/d.value.length*w.value):Math.floor(w.value/Math.max(U,w.value)*w.value)}),m=n.computed(()=>Math.floor(F.value/Math.max(p.value,F.value)*_.value)),N=0,T=0,I=n.computed(()=>_.value-(C.value+p.value+g.value+s.value));function O(U){const ne=d.value.find(fe=>fe.__fv_data_position__>U);return ne?ne.__fv_index__-1:0}function k(U){var Le,We;if(!d.value.length){o.value=[];return}const ne=(Le=e.pagination)!=null&&Le.enable?0:Math.max(h-l,0),fe=d.value[d.value.length-1].__fv_index__,Ne=(We=e.pagination)!=null&&We.enable?d.value.length-1:Math.min(y+l-1,fe),Be=d.value[ne-1],Re=u(ne,Ne,Be,U);Re.length&&(o.value=[...Re])}const B=n.computed(()=>V()>w.value),P=n.computed(()=>Math.floor(p.value)>F.value);function M(U){let ne=S.value+U;ne>N&&(ne=N);const fe=ne>N,Ne=V(),Be=B.value;Be&&ne<w.value-Ne&&(ne=w.value-Ne),(!Be||fe)&&(ne=N),S.value!==ne&&(S.value=ne,h=O(Math.abs(S.value)),y=h+r.value,(h<c.value||y>f.value-l/2)&&k())}function $(U){if(!P.value){b.value=0;return}let ne=b.value+U;ne>T&&(ne=T),ne<I.value&&(ne=I.value),b.value!==ne&&(b.value=ne)}function R(){Math.abs(b.value)+F.value>p.value&&(b.value=Math.min(F.value-p.value,0))}function E(){S.value=0,h=0,y=r.value-1,k()}n.watch(F,()=>{$(0)}),n.watch(i,()=>{p.value=i.value.primaryColumnsWidth,C.value=i.value.leftColumnsWidth,g.value=i.value.rightColumnsWidth});function A(U){let{deltaX:ne}=U.deltaX,fe=-1*U.deltaY;return typeof ne>"u"&&(ne=-1*U.wheelDeltaX/6),typeof fe>"u"&&(fe=U.wheelDeltaY/6),U.deltaMode&&U.deltaMode===1&&(ne*=10,fe*=10),U.shiftKey?{deltaY:-fe,deltaX:-ne}:{deltaX:ne,deltaY:fe}}function K(U){if(e.disabled)return;U.preventDefault(),U.stopPropagation();const{deltaX:ne,deltaY:fe}=A(U);M(fe),$(ne)}const oe=n.computed(()=>({height:`${d.value.length*x}px`,width:`${C.value}px`,transform:`translateY(${S.value}px)`})),pe=n.computed(()=>({transform:`translateY(${S.value}px)`})),Ve=n.computed(()=>({height:`${d.value.length*x}px`,width:`${p.value}px`,transform:`translate(${b.value}px, ${S.value}px)`})),me=n.computed(()=>({transform:`translate(${b.value}px, ${S.value}px)`})),Se=n.computed(()=>({height:`${d.value.length*x}px`,width:`${g.value}px`,transform:`translateY(${S.value}px)`})),xe=n.computed(()=>({transform:`translateY(${S.value}px)`})),de=n.computed(()=>({height:`${d.value.length*x}px`,width:`${s.value}px`,transform:`translateY(${S.value}px)`})),ue=n.computed(()=>({width:`${C.value}px`})),ye=n.computed(()=>({transform:`translateX(${b.value}px)`})),W=n.computed(()=>({width:`${g.value}px`})),z=n.computed(()=>{const U=V();return S.value/(w.value-U)*(w.value-v.value)}),ce=n.computed(()=>({height:`${v.value}px`,top:`${z.value}px`})),we=n.computed(()=>b.value/I.value*(_.value-m.value)),ae=n.computed(()=>({width:`${m.value}px`,left:`${we.value}px`})),ie=n.ref(!1),he=n.ref(-1),ge=n.ref(-1),ve=n.ref();function j(U){if(ie.value&&ge.value!==-1){const ne=ge.value-U.pageX,fe=_.value-m.value;if(Math.abs(ne)<=fe){const Ne=ne/(F.value-m.value)*(p.value-F.value);$(Ne),ge.value=U.pageX}}}function X(U){if(ie.value&&he.value!==-1){const ne=he.value-U.pageY,fe=V(),Ne=fe-v.value;if(Math.abs(ne)<=Ne){const Be=ne/(w.value-v.value)*(fe-w.value);M(Be),he.value=U.pageY}}}function re(U){ie.value=!1,he.value=-1,ge.value=-1,document.removeEventListener("mouseup",re),document.removeEventListener("mousemove",j),document.removeEventListener("mousemove",X),document.body.style.userSelect="",ve.value&&(ve.value.style.opacity=null)}function q(U,ne,fe){var Re;ie.value=!0;const Ne=(Re=U.target)==null?void 0:Re.parentElement;Ne&&(Ne.style.opacity="1",ve.value=Ne);const Be=fe==="horizontal"?j:X;fe==="vertical"&&(he.value=U.pageY),fe==="horizontal"&&(ge.value=U.pageX),ne.value&&(ne.value,document.addEventListener("mousemove",Be),document.addEventListener("mouseup",re),document.body.style.userSelect="none")}return{onMouseDownScrollThumb:q,onWheel:K,dataGridWidth:_,gridDataStyle:Ve,gridHeaderColumnsStyle:ye,gridMergedDataStyle:me,gridSideStyle:de,fitHorizontalScroll:R,viewPortWidth:F,viewPortHeight:w,horizontalScrollThumbStyle:ae,leftFixedGridDataStyle:oe,leftFixedGridHeaderColumnsStyle:ue,leftFixedGridMergedDataStyle:pe,reCalculateVisualDataRows:k,resetScroll:E,rightFixedGridDataStyle:Se,rightFixedGridHeaderColumnsStyle:W,rightFixedGridMergedDataStyle:xe,shouldShowHorizontalScrollbar:P,shouldShowVirticalScrollbar:B,verticalScrollThumbStyle:ce,offsetX:b,offsetY:S}}function Mn(e,t,o,i,a,r,l,s){const d=n.ref(i.value-1+a),u=n.ref(0),{renderDataRow:f}=r,c=l?l.renderGroupRow:f,p=s?s.renderSummaryRow:f;function C(S){let b=f;return S.__fv_data_grid_group_row__&&(b=c),S.__fv_data_grid_group_summary__&&(b=p),b}function g(S,b,h,y){const{dataView:_}=o,w=[];if(_.value.length>0){const F=y?Date.now().toString():"";for(let V=S,v=0;V<=b;V++,v++){const m=_.value[V],N=_.value[V-1]||h,T=w[v-1],I=N?(N.__fv_data_position__||0)+(N.__fv_data_height__||0):0,k=C(m)(m,N,T,V,I,t.value,w);k.refreshKey=F,w.push(k)}}return u.value=w.length>0?w[0].index:0,d.value=w.length>0?w[w.length-1].index:0,w}function x(S,b,h){const y=b.groupField||"",{groupValue:_}=b;o[S](y,_);const{dataView:w}=o,F=h[0].index,V=Math.min(F+i.value+a+1,w.value.length-1);return g(F,V)}return{getVisualData:g,maxVisibleRowIndex:d,minVisibleRowIndex:u,toggleGroupRow:x}}function Ia(){function e(t,o){const{formatter:i}=t,a=o.raw[t.field];return i.data.find(l=>l.value===a).name}return{renderEnumColumn:e}}function Ma(){function e(i,a){return i?n.createVNode("span",{innerHTML:a.formatter.trueText},null):n.createVNode("span",{innerHTML:a.formatter.falseText},null)}function t(i,a){var r,l;return i?(r=a.formatter)==null?void 0:r.trueText:(l=a.formatter)==null?void 0:l.falseText}function o(i,a){const{formatter:r}=i,l=a.raw[i.field];if(r.type===wt.TEXT)return t(l,i);if(r.type===wt.IMAGE)return e(l,i)}return{renderBooleanColumn:o}}function Ba(){const{formatTo:e}=Ee.useDateFormat();function t(i,a){return e(i,a.formatter.dateFormat)}function o(i,a){const r=a.raw[i.field];return t(r,i)}return{renderDateColumn:o}}function Oa(){const{formatTo:e}=Ee.useNumberFormat();function t(i,a){const{formatter:r}=a,l={precision:r.precision,prefix:r.prefix||"",suffix:r.suffix||"",decimalSeparator:r.decimal||".",groupSeparator:r.thousand||""};return e(i,l)}function o(i,a){const r=a.raw[i.field];return t(r,i)}return{renderNumberColumn:o}}function Pa(){const{renderBooleanColumn:e}=Ma(),{renderEnumColumn:t}=Ia(),{renderNumberColumn:o}=Oa(),{renderDateColumn:i}=Ba();function a(s){return s}function r(s,d){const{formatter:u}=d;return u.customFormat?new Function(`return ${u.customFormat}`)():s}function l(s,d,u){const f=u.data[d.field],{formatter:c}=d;return c.type==="none"?f:c.type==="custom"?r(f,d):c.type==="enum"?t(d,u):c.type==="number"?o(d,u):c.type==="boolean"?e(d,u):c.type==="date"?i(d,u):f}return{renderFormatColumn:l}}function Bn(e,t,o){var S;const i=n.ref(e.mergeCell),r=((S=n.ref(e.rowOption).value)==null?void 0:S.wrapContent)||!1,{updateVisualInfomation:l}=o,{renderCommandColumn:s}=zi(),{renderFormatColumn:d}=Pa();function u(b,h,y,_,w,F=1){const V={colSpan:F,rowSpan:1,index:y,field:b,data:Ee.resolveField(_,b),editingData:Ee.resolveField(_,b),parent:w,mode:h,align:"left",valign:"start",showEllipsis:!0,getEditor:v=>v.data,setRef:v=>l(v,V,_),update:()=>{},accept:()=>{},cancel:()=>{},updateData:()=>{}};return V}function f(b,h,y){return b.getEditor=_=>t.getEditor(_,h,_.parent),b.setRef=_=>r&&l(_,b,y),b.update=_=>{_!==void 0&&(b.editingData=_)},b.accept=()=>{Ee.setFieldValue(b.editingData,y,h.field),b.data=Ee.resolveField(y,h.field)},b.cancel=()=>{b.editingData=b.data},b.updateData=_=>{Ee.setFieldValue(Ee.resolveField(_,h.field),y,h.field),b.data=Ee.resolveField(y,h.field)},b}function c(b,h){h.dataType==="commands"?b.formatter=(y,_)=>s(h,_):h.formatter&&(b.formatter=(y,_)=>typeof h.formatter=="function"?h.formatter(y,_):d(h.dataType,h,_))}function p(b,h,y){const _=h&&h.data[y];if(_&&_.data===b.data){const F=_&&_.spannedBy||_;F.rowSpan++,F.spanned=F.spanned||[],F.spanned.push(b),b.colSpan=0,b.rowSpan=0,b.spannedBy=F}}function C(b,h,y){i.value&&p(b,h,y.field)}function g(b,h){h.showEllipsis!==void 0&&(b.showEllipsis=h.showEllipsis),b.align=h.align||"left",b.valign=h.valign||"middle"}function x(b,h,y,_,w){const F=b.readonly?Pe.readonly:Pe.editable,V=u(b.field,F,h,y,_);return g(V,b),f(V,b,y),c(V,b),C(V,w,b),V}return{createCellByColumn:x,createCellByField:u}}function On(e,t,o,i,a,r){var b,h;const l=n.ref(e.rowOption),s=((b=l.value)==null?void 0:b.height)||28,d=((h=l.value)==null?void 0:h.wrapContent)||!1,{idField:u}=i,{collapseField:f}=o,{updateRowPosition:c}=a,{createCellByColumn:p}=r;function C(y,_,w,F,V,v,m){var pe,Ve,me;const{__fv_data_grid_group_field__:N,__fv_data_grid_group_value__:T,__fv_data_index__:I}=w,O=w.__fv_data_grid_group_layer__||(w.__fv_parents__?(pe=w.__fv_parents__)==null?void 0:pe.size:0)||0,k=typeof w.parent=="number"?Number(w.parent):-1,B=w.__fv_data_grid_group_collapse__||w[f.value],P=w.__fv_visible__===void 0?!0:w.__fv_visible__,M=w.__fv_checked__,$=w.__fv_indeterminate__,R=w.__fv_disabled__||w[((Ve=e.rowOption)==null?void 0:Ve.disabledField)||"disabled"],E=m==null?void 0:m.find(Se=>Se.raw[u.value]===w.parent),A=E&&E.collapse;F&&(F.parent,w.parent);const K=A||E&&!E.visible,oe={collapse:B,data:{},dataIndex:I,groupField:N,groupValue:T,layer:O,index:_,parentIndex:k,pre:F,top:v,type:y,raw:w,checked:M,disabled:R,indeterminate:$,setRef:Se=>{oe.ref=Se},visible:P&&!K,status:Ge.initial};return F||(w.__fv_data_position__=0),d||(oe.height=s,w.__fv_data_height__=oe.height,c(oe,w)),(me=l.value)!=null&&me.customRowStatus&&(l.value.customRowStatus(oe),w.__fv_collapse__=oe.collapse,w.__fv_visible__=oe.visible,w.__fv_disabled__=oe.disabled),oe}function g(y,_,w,F,V,v,m){const N=C(Je.data,V,_,w,F,v,m);return y.forEach((T,I)=>{N.data[T.field]=p(T,V,_,N,F)}),N}function x(y,_,w,F,V){return Object.assign(y,{index:_,dataIndex:w,top:F,pre:V})}function S(y,_,w,F,V,v,m){const N=y.__fv_data_index__,T=y[u.value],I=t.getEditingSnapshot(T);return I===null?g(v,y,_,w,F,V,m):x(I,F,N,V,w)}return{createEmptyRow:C,createNewRowFromDataItem:g,renderDataRow:S}}function $a(e,t,o,i){const a=n.ref(e.summary),{idField:r}=t,{createCellByField:l}=o,{createEmptyRow:s}=i,d=n.computed(()=>{const p=a.value;return(p==null?void 0:p.groupFields)||[]}),u=n.computed(()=>{const p=a.value;return p&&p.enable&&p.groupFields&&p.groupFields.length>0});function f(p,C,g,x){if(u.value){const S=p.data[C];let b=S.colSpan;const h=d.value.reduce((y,_)=>(y.set(_,!0),y),new Map);x.reduce((y,_,w)=>{if(h.has(_.field)){const F=l(_.field,Pe.readonly,w,g,p);p.data[_.field]=F,b-1>w&&(b=w)}return y},p),S.colSpan=b}}function c(p,C,g,x,S,b,h){const y=p.__fv_data_grid_group_field__,_=s(Je.group,x,p,C,g,S);return _.data[r.value]=l(r.value,Pe.readonly,-1,p,_,0),_.data[y]=l(y,Pe.readonly,1,p,_,b.length),f(_,y,p,b),_}return{renderGroupRow:c}}function ja(e,t,o,i){const{idField:a}=t,{createCellByField:r}=o,{createEmptyRow:l}=i;function s(d,u,f,c,p,C,g){const x=d.__fv_data_grid_group_field__,S=l(Je.summary,c,d,u,f,p);return S.data[a.value]=r(a.value,Pe.readonly,-1,d,S),S.data[x]=r(x,Pe.readonly,1,d,S,C.length),S}return{renderSummaryRow:s}}function Pn(e,t,o){var v;const{idField:i}=o,a=n.ref(e.editable),r=n.ref(e.editOption),l=n.ref(((v=e.rowOption)==null?void 0:v.wrapContent)||!1);n.watch(()=>e.editable,()=>{a.value=e.editable}),n.watch(()=>{var m;return(m=e.editOption)==null?void 0:m.editMode},m=>{r.value.editMode=m});const s=new Map([["boolean","check-box"],["datetime","date-picker"],["enum","combo-list"],["number","number-spinner"],["string","input-group"],["text","text"],["commands","commands-editor"]]);let d,u,f,c;function p(m){return u&&u.raw[i.value]===m?u:null}const C=n.reactive({});function g(m,N,T={}){m.mode=Pe.editing,d=m,u=N,f=N==null?void 0:N.raw[m.field],c=T}function x(m){m.accept(),m.mode=Pe.editable,d=null,t.emit("endEditCell",{cell:m,row:u,newValue:u==null?void 0:u.raw[m.field],oldValue:f,column:c,editor:C})}function S(m){document.body.classList.contains("lookup-modal-open")||(d&&(x(d),u&&(u=void 0)),document.body.removeEventListener("click",S))}function b(m,N,T,I={}){a.value&&r.value.editMode==="cell"&&N.mode===Pe.editable&&(d&&x(d),g(N,T,I),document.body.removeEventListener("click",S),document.body.addEventListener("click",S))}function h(m){Object.values(m.data).filter(N=>N.mode===Pe.editable&&N.field!=="__commands__").forEach(N=>{N.mode=Pe.editing}),m.status=Ge.editing,u=m}function y(m,N){Object.values(m.data).filter(T=>T.mode===Pe.editing).forEach(T=>{N?T.accept():T.cancel(),T.mode=Pe.editable}),m.status=Ge.initial,u===m&&(u=void 0)}function _(m){a.value&&r.value.editMode==="row"&&u!==m&&(u&&y(u,!1),h(m))}function w(m){y(m,!0),m.status=Ge.initial}function F(m){y(m,!1),m.status=Ge.initial}function V(m,N,T){const I=N.dataType,O=N.editor||{type:s.get(I)||"input-group"};return!l.value&&O.type==="text"&&(O.type="input-group"),O?(O.context={rowData:T.raw,column:N,cell:m,editor:C},n.createVNode(yt.FDynamicFormInput,{focusOnCreated:e.focusOnEditingCell,selectOnCreated:e.selectOnEditingCell,editor:O,modelValue:m.editingData,"onUpdate:modelValue":k=>m.editingData=k,id:N.id},null)):m.data}return{onClickCell:b,onEditingRow:_,acceptEditingRow:w,cancelEditingRow:F,getEditingSnapshot:p,getEditor:V}}function $n(e){const t=n.ref(e.idField);function o(i){if(i&&i.length){const a=i[0];Object.keys(a).includes(t.value)||(t.value="__fv_indetify__")}}return{idField:t,reviseIdentifyField:o}}function Ea(e,t,o,i,a,r){const{addNewDataItemAtLast:l}=o,{columnContext:s}=i,{onClickCell:d}=a;function u(g,x){const S=s.value.primaryColumns.findIndex(V=>V.field===g.field),b=g.parent,h=b.index,y=s.value.primaryColumns.length-1,_=r.value.length-1,w=S===y,F=h===_;if(S>-1&&!w){const V=s.value.primaryColumns[S+1],v=b.data[V.field];d(x,v,b,V)}if(w&&!F){const V=r.value[h+1],v=s.value.primaryColumns[0],m=V.data[s.value.primaryColumns[0].field];d(x,m,b,v)}if(w&&F){if(e.appendOnEnterAtLastCell){l();const V=r.value[h+1],v=s.value.primaryColumns[0],m=V.data[s.value.primaryColumns[0].field];d(x,m,V,v)}t.emit("enterUpInLastCell")}}function f(g,x){const S=s.value.primaryColumns.findIndex(_=>_.field===g.field),b=g.parent,h=s.value.primaryColumns.length-1;if(S>0&&S<=h){const _=s.value.primaryColumns[S-1],w=b.data[_.field];d(x,w,b,_)}}function c(g,x){const S=g.field,h=g.parent.index,y=r.value.length-1;if(h>-1&&h<y){const w=r.value[h+1],F=w.data[S];d(x,F,w)}}function p(g,x){const S=g.field,h=g.parent.index,y=r.value.length-1;if(h>0&&h<=y){const w=r.value[h-1],F=w.data[S];d(x,F,w)}}function C(g,x){const{key:S,shiftKey:b}=g;if(S==="Enter"&&!b){u(x,g);return}if(b&&S==="Enter"){f(x,g);return}if(S==="ArrowDown"){c(x,g);return}S==="ArrowUp"&&p(x,g)}return{navigateOnKeyUp:C}}function jn(e,t,o,i){const{idField:a}=i,{currentSelectedDataId:r,multiSelectOnClickRow:l,multiSelectOnClickRowWithShift:s,selectItem:d,selectedValues:u,toggleSelectItem:f,enableSelectRow:c}=o,p=n.ref(0),C=n.ref(-1);function g(F){return c.value&&(s.value?u.value.includes(F.raw[a.value]):F.raw[a.value]===r.value)}function x(F){var v;const V={"fv-grid-row":F.type===Je.data,"fv-grid-group-row":F.type===Je.group,"fv-grid-summary-row":F.type===Je.summary,"fv-grid-row-hover":F.index===C.value,"fv-grid-row-selected":g(F),"fv-grid-row-odd":F.dataIndex%2>0,"fv-grid-row-even":F.dataIndex%2===0,"fv-grid-disabled":F.disabled};if((v=e.rowOption)!=null&&v.customRowStyle){const m=e.rowOption.customRowStyle(F.raw)||{};return Object.assign({},V,m)}return V}function S(F){var v;const V={"fv-grid-cell":!0};if((v=e.rowOption)!=null&&v.customCellStyle){const m=e.rowOption.customCellStyle(F)||{};return Object.assign({},V,m)}return V}function b(F){p.value+=1,setTimeout(()=>{p.value===1&&t.emit("clickRow",F.index,F.raw),p.value=0},250),p.value>1&&(t.emit("doubleClickRow",F.index,F.raw),console.log(`on double click row: ${F.index}`),p.value=0)}function h(F,V){if(V.disabled)return;s.value&&F.shiftKey||l.value?f(V):d(V),b(V),F.stopPropagation()}function y(F,V){}function _(F,V){}function w(F){var v;const V={"fv-grid-sidebar-row":!0,"fv-grid-sidebar-row-hover":F.index===C.value,"fv-grid-sidebar-row-selected":g(F),"fv-grid-sidebar-row-odd":F.dataIndex%2>0,"fv-grid-sidebar-row-even":F.dataIndex%2===0};if((v=e.rowOption)!=null&&v.customRowStyle){const m=e.rowOption.customRowStyle(F.raw)||{};return Object.assign({},V,m)}return V}return{gridCellClass:S,gridRowClass:x,onClickRow:h,onMouseoverRow:y,sidebarRowClass:w,onMouseoutRow:_}}function En(e,t,o,i,a){const{idField:r}=o,l=n.ref(""),s=n.computed(()=>e.selection.enableSelectRow),d=n.ref(e.selection.multiSelect??!1),u=n.ref(e.selection.multiSelectMode),f=n.ref(e.selection.showCheckbox),c=n.ref(e.selection.showSelectAll),p=n.ref(e.selectionValues);n.watch(()=>e.selection.showSelectAll,(E,A)=>{E!==A&&(c.value=E)});function C(){return t.getSelectionItems(p.value)}function g(){const E=i.value.reduce((K,oe)=>(K.set(oe.raw[r.value],oe),K),new Map);return p.value.map(K=>E.get(K)).filter(K=>!!K)}const x=n.computed(()=>s.value&&d.value),S=n.computed(()=>!!e.hierarchy),b=n.computed(()=>{const E=f.value&&u.value==="DependOnCheck";return x.value&&E}),h=n.computed(()=>x.value&&!f.value),y=n.computed(()=>x.value&&f.value&&u.value==="OnCheckAndClick");n.computed(()=>y.value);function _(){const E=t.getSelectionItems(p.value);a.emit("selectionChange",E)}function w(){i.value.forEach(A=>{A.checked=!1,A.indeterminate=!1,A.raw.__fv_checked__=!1,A.raw.__fv_indeterminate__=!1}),g().forEach(A=>{A.checked=!0,A.raw.__fv_checked__=!0})}n.watch(()=>i.value,()=>{w()}),n.watch(()=>e.selectionValues,E=>{p.value=E,w()},{immediate:!0}),n.watch(()=>e.selection,E=>{d.value=!!E.multiSelect,u.value=E.multiSelectMode||"DependOnCheck",f.value=!!E.showCheckbox});const F=n.computed(()=>!d.value);function V(E){return E.raw[r.value]||""}function v(E){return p.value.findIndex(K=>K===V(E))}function m(){g().forEach(K=>{K.checked=!1}),t.getSelectionItems(p.value).forEach(K=>{K.__fv_checked__=!1}),p.value=[],l.value=""}function N(E){const A=E.raw;A.__fv_checked__=!0,A.__fv_indeterminate__=!1;const K=new Set(p.value);K.add(A[r.value]),p.value=Array.from(K.values()),E.checked=!0,E.indeterminate=!1,l.value=E.raw[r.value]}function T(E){const A=E.raw;A.__fv_checked__=!1,A.__fv_indeterminate__=!1,p.value=p.value.filter(K=>K!==A[r.value]),E.checked=!1,E.indeterminate=!1,l.value=""}function I(E){const A=E.raw;A.__fv_checked__=!1,A.__fv_indeterminate__=!0,p.value=p.value.filter(K=>K!==A[r.value]),E.checked=!1,E.indeterminate=!0}function O(E){F.value&&m(),E.checked?T(E):N(E),_()}function k(E){E.raw[r.value]!==l.value&&(m(),N(E),_())}function B(E){const A=i.value.find(K=>K.raw[r.value]===E);A&&k(A)}function P(E){const A=i.value.filter(K=>E.includes(K.raw[r.value]));A&&A.length&&(m(),A.forEach(K=>{N(K)}),_())}function M(){i.value.forEach(E=>N(E)),l.value="",_()}function $(){p.value.splice(0,p.value.length),l.value="",i.value.forEach(E=>{const A=E.raw;A.__fv_checked__=!1,A.__fv_indeterminate__=!1,E.checked=!1,E.indeterminate=!1}),_()}function R(){return i.value.find(E=>E.raw[r.value]===l.value)}return{clearSelection:m,currentSelectedDataId:l,enableMultiSelect:d,enableSelectRow:s,findIndexInSelectedItems:v,getSelectedItems:C,getSelectionRow:R,indeterminate:I,isSelectingHirarchyItem:S,multiSelectMode:u,multiSelectOnClickRow:y,multiSelectOnClickRowWithShift:h,multiSelectOnlyOnCheck:b,select:N,selectAll:M,selectedValues:p,selectItem:k,selectItemById:B,selectItemByIds:P,showCheckBox:f,showSelectAll:c,toggleSelectItem:O,unSelect:T,unSelectAll:$}}function Rn(e,t){var S,b;const o=String(Date.now()),i=50,{showCheckBox:a,showSelectAll:r}=t,l=n.ref(((S=e.rowNumber)==null?void 0:S.enable)??!1),s=n.computed(()=>e.hierarchy&&a.value&&e.selection.enableSelectRow&&e.selection.multiSelect?!1:a.value),d=n.ref(l.value?((b=e.rowNumber)==null?void 0:b.width)??32:0),u=n.ref(s.value?i:0),f=n.computed(()=>{var h;return l.value?((h=e.rowNumber)==null?void 0:h.heading)??"序号":""}),c=n.computed(()=>(s.value&&!e.hierarchy?Number(u.value):0)+(l.value?Number(d.value):0));n.watch(()=>e.rowNumber,h=>{h&&h.enable!==void 0&&(l.value=h.enable),h&&h.width!==void 0&&(d.value=h.width)});function p(h){return{top:`${h.top}px`,width:`${c.value}px`,height:`${h.height||""}px`}}const C=n.computed(()=>({width:`${c.value}px`}));function g(h){return`${o}_${h.type}_r_${h.index}_${h.refreshKey||""}`}function x(h){return`${o}_${h.type}_r_${h.index}_${h.refreshKey||""}`}return{showRowNumer:l,showSidebarCheckBox:s,sidebarCellPosition:p,sidebarCornerCellStyle:C,sidebarTitle:f,sidebarWidth:c,rowKey:x,cellKey:g}}const Ra={ascend:(e,t)=>e===t?0:e===!1?-1:1,decend:(e,t)=>e===t?0:e===!0?-1:1},Da={ascend:(e,t)=>{const o=new Date(new Date(e).toLocaleDateString()).valueOf(),i=new Date(new Date(t).toLocaleDateString()).valueOf();return o===i?0:o<i?-1:1},decend:(e,t)=>{const o=new Date(new Date(e).toLocaleDateString()).valueOf(),i=new Date(new Date(t).toLocaleDateString()).valueOf();return o===i?0:o<i?1:-1}},Aa={ascend:(e,t)=>e===t?0:e<t?-1:1,decend:(e,t)=>e===t?0:e<t?1:-1},Ha={ascend:(e,t)=>e===t?0:e<t?-1:1,decend:(e,t)=>e===t?0:e<t?1:-1};function Dn(e){const t=new Map([["boolean","boolean-sorter"],["date","datetime-sorter"],["datetime","datetime-sorter"],["number","numeric-sorter"],["string","text-sorter"],["text","text-sorter"],["enum","text-sorter"],["reference","text-sorter"]]),o=new Map([["boolean-sorter",Ra],["datetime-sorter",Da],["numeric-sorter",Aa],["text-sorter",Ha]]);function i(l){const s=(l==null?void 0:l.dataType)||"string",d=t.get(s)||"text-sorter";return o.get(d)||(l==null?void 0:l.sorter)}function a(l){return i(l.column)}function r(l,s){const d=a(l),u=(l.status&Te.sortable)===Te.sortable&&(l.status&Te.sorted)===Te.sorted,f=(l.status&Te.ascending)===Te.ascending,c=(l.status&Te.descending)===Te.descending;if(u&&d){const p=f?d.ascend:c?d.decend:void 0;p?s.addSorter(l.field,{field:l.field,compare:p}):s.removeSorter(l.field)}else s.removeSorter(l.field)}return{getSorterByColumn:i,updateSorter:r}}function Ga(e){function t(a){return{}}function o(a){const{valign:r,align:l}=a;return{"d-flex":!0,"h-100":!0,"w-100":!0,"justify-content-start":l!=="center"&&l!=="right","justify-content-center":l==="center","justify-content-right":l==="right","align-items-start":r!=="middle"&&r!=="bottom","align-items-center":r==="middle","align-items-end":r==="bottom"}}function i(a){const{align:r,showEllipsis:l}=a;return{"w-100":!0,"text-left":r!=="center"&&r!=="right","text-center":r==="center","text-right":r==="right","text-truncate":l}}return{cellContentPosition:t,cellContentClass:o,cellContentClassWithEllipsis:i}}function ze(e){return typeof e>"u"}function An(e){var c,p,C,g,x,S,b,h;const t=n.ref((c=e.pagination)==null?void 0:c.enable),o=n.ref(((p=e.pagination)==null?void 0:p.index)||1),i=n.ref((C=e.pagination)==null?void 0:C.size),a=n.ref((g=e.pagination)==null?void 0:g.sizeLimits),r=n.ref((x=e.pagination)==null?void 0:x.mode),l=n.ref((S=e.pagination)==null?void 0:S.showIndex),s=n.ref((b=e.pagination)==null?void 0:b.showLimits),d=n.ref(((h=e.pagination)==null?void 0:h.total)||0),u=n.ref(d.value||e.data.length||0);return n.watch(()=>{var y;return(y=e.pagination)==null?void 0:y.sizeLimits},(y,_)=>{a.value=y},{immediate:!0,deep:!0}),n.watch(()=>{var y;return(y=e.pagination)==null?void 0:y.showIndex},(y,_)=>{y!==_&&(l.value=y)}),n.watch(()=>{var y;return(y=e.pagination)==null?void 0:y.showLimits},(y,_)=>{y!==_&&(s.value=y)}),n.watch(()=>{var y;return(y=e.pagination)==null?void 0:y.total},(y,_)=>{y!==_&&(d.value=y,u.value=y)}),n.watch(()=>{var y;return(y=e.pagination)==null?void 0:y.enable},(y,_)=>{y!==_&&(t.value=y)}),{currentPage:o,pageSize:i,pageList:a,pageTotal:d,total:u,shouldRenderPagination:t,showPageIndex:l,showPageList:s,mode:r,updatePagination:y=>{if(!y)return;const{enable:_,total:w,size:F,index:V,sizeLimits:v,showIndex:m,showLimits:N,mode:T}=y;ze(_)||(t.value=_),ze(V)||(o.value=V),ze(F)||(i.value=F),ze(v)||(a.value=v),ze(m)||(l.value=m),ze(N)||(s.value=N),ze(w)||(d.value=w),ze(T)||(r.value=T)}}}function La(e){const t="parent",o="layer",i="hasChildren",a=(r,l=1,s=[],d=null)=>(r=r||[],r.reduce((u,f)=>(f.id=f.id||f.data[e.idField],f[t]=d,f[o]=l,f[i]=!1,f={...f,...f.data},s.push(f),f.children&&f.children.length&&(f[i]=!0,a(f.children,l+1,s,f.id)),u),s),s);return{flatTreeData:a}}function Hn(e,t,o,i,a,r,l,s,d,u,f,c,p,C,g){const{calculateCellPositionInRow:x,cellKey:S,cellPosition:b,rowKey:h,rowPosition:y,rowSpanCellPosition:_,groupCellPosition:w,summaryCellPosition:F}=l,{cellContentClass:V,cellContentPosition:v,cellContentClassWithEllipsis:m}=r,{collpaseGroupIconClass:N}=u,{gridCellClass:T,gridRowClass:I,onClickRow:O,onMouseoverRow:k,onMouseoutRow:B}=c,{onClickCell:P}=d,{toggleGroupRow:M}=p,{columnContext:$,hasLeftFixedColumn:R,hasRightFixedColumn:E}=s,{navigateOnKeyUp:A}=f,{gridDataStyle:K,gridMergedDataStyle:oe,leftFixedGridDataStyle:pe,leftFixedGridMergedDataStyle:Ve,rightFixedGridDataStyle:me,rightFixedGridMergedDataStyle:Se}=C;function xe(j,X){X.collapse=!X.collapse,g.value=M(X.collapse?"collapse":"expand",X,g.value)}function de(j,X){const re=[];if(j.groupField&&X[j.groupField]){for(let _e=0;_e<=j.layer;_e++)re.push(n.createVNode("div",{class:"fv-grid-group-row-icon",onClick:U=>xe(U,j)},[n.createVNode("span",{class:N(j)},null)]));const q=j.data[j.groupField];re.push(n.createVNode("div",{ref:q.setRef,key:S(j,j.layer+1),class:"fv-grid-cell",style:w(q,X,j.layer)},[q.data])),Object.values(j.data).filter(_e=>_e.field!==j.groupField&&_e.colSpan!==0).forEach(_e=>{re.push(n.createVNode("div",{ref:_e.setRef,key:S(j,_e.index),class:"fv-grid-cell",style:b(_e,X)},[_e.data]))})}return re}function ue(j,X,re){return j.layer>-1&&n.createVNode("div",{ref:j.setRef,key:h(j),class:I(j),style:y(j),onClick:q=>O(q,j),onMouseover:q=>k(q,j)},[de(j,X)])}function ye(j,X){const re=[];if(j.groupField&&X[j.groupField]){const q=j.data[j.groupField];re.push(n.createVNode("div",{ref:q.setRef,key:S(j,j.layer+1),class:"fv-grid-cell",style:F(q,X,j.layer)},[q.data]))}return re}function W(j,X,re){return j.layer>-1&&n.createVNode("div",{ref:j.setRef,key:h(j),class:I(j),style:y(j),onClick:q=>O(q,j),onMouseover:q=>k(q,j)},[ye(j,X)])}function z(j,X,re){return n.createVNode("div",{ref:j.setRef,key:h(j),class:I(j),style:y(j),onClick:q=>O(q,j),onMouseover:q=>k(q,j),onMouseout:q=>B(q,j)},[Object.values(j.data).filter(q=>X[q.field]&&q.rowSpan===1).map(q=>{const _e=re==null?void 0:re.find(U=>U.field===q.field);return n.createVNode("div",{ref:q.setRef,key:S(j,q.index),class:T(q),style:b(q,X),onClick:U=>P(U,q,j,_e),onKeyup:U=>A(U,q)},[n.createVNode("div",{class:V(q,_e),style:v(q)},[n.createVNode("div",{class:m(q)},[q.data!=null&&t.slots.cellTemplate?t.slots.cellTemplate({cell:q,row:j}):q.mode===Pe.editing?q.getEditor(q):q.formatter?q.formatter(q,j):q.data!=null?q.data.toString():q.data])])])})])}const ce=[z,ue,W];function we(j,X){const re=x(j);return g.value.map(q=>ce[q.type](q,re,j))}function ae(j){const X=x(j);return g.value.map(re=>Object.values(re.data).filter(q=>X[q.field]&&q.rowSpan>1).map(q=>n.createVNode("div",{key:S(re,q.index),class:"fv-grid-cell fv-grid-merged-cell",style:_(re,q,X)},[q.data])))}function ie(){return n.createVNode("div",{ref:i,class:"fv-grid-content-left-fixed"},[n.createVNode("div",{class:"fv-grid-data",style:pe.value},[we($.value.leftColumns.filter(j=>j.visible))]),n.createVNode("div",{class:"fv-grid-merge-date",style:Ve.value},[ae($.value.leftColumns.filter(j=>j.visible))])])}function he(){return n.createVNode("div",{ref:o,class:"fv-grid-content-primary"},[n.createVNode("div",{class:"fv-grid-data",style:K.value},[we($.value.primaryColumns.filter(j=>j.visible))]),n.createVNode("div",{class:"fv-grid-merge-date",style:oe.value},[ae($.value.primaryColumns.filter(j=>j.visible))])])}function ge(){return n.createVNode("div",{ref:a,class:"fv-grid-content-right-fixed"},[n.createVNode("div",{class:"fv-grid-data",style:me.value},[we($.value.rightColumns.filter(j=>j.visible))]),n.createVNode("div",{class:"fv-grid-merge-date",style:Se.value},[ae($.value.rightColumns.filter(j=>j.visible))])])}function ve(){const j=[];return R.value&&j.push(ie()),j.push(he()),E.value&&j.push(ge()),j}return{renderDataArea:ve}}const Ue=n.defineComponent({name:"FDataGrid",props:ut,emits:["changed","clickRow","doubleClickRow","selectionChange","enterUpInLastCell","pageIndexChanged","pageSizeChanged","beginEditCell","endEditCell"],setup(e,t){var io;const a=n.ref(e.columns),r=L.useIdentify(e),l=n.ref(),s=n.ref(),d=n.ref(),u=n.ref(),f=n.ref(),c=n.ref([]),p=n.ref(!1),C=n.ref(((io=e.rowOption)==null?void 0:io.wrapContent)||!1),g=L.useGroupData(e,r),x=L.useFilter(),S=L.useHierarchy(e),{showLoading:b,renderLoading:h}=L.useLoading(e,l),y=L.usePagination(e),{shouldRenderPagination:_}=y,w=L.useDataView(e,new Map,S,r,y),F=L.useSelection(e,w,r,c,t),V=n.computed(()=>Math.min(w.dataView.value.length,100));n.computed(()=>e.loadingConfig.message);const{containerStyleObject:v}=L.useDataViewContainerStyle(e),m=L.useCommandColumn(e),{applyCommands:N}=m;N(a);const T=L.useColumn(e),I=L.useSort(e),{applyColumnSorter:O,columnContext:k,updateColumnRenderContext:B}=T;O(w,I);const P=L.useGroupColumn(e,k),M=L.useEdit(e,t,r),$=L.useVisualDataBound(),R=L.useVisualDataCell(e,M,$),E=L.useVisualDataRow(e,M,S,r,$,R),A=L.useVisualGroupRow(e,r,R,E),K=L.useVisualSummaryRow(e,r,R,E),oe=L.useVisualData(e,a,w,V,0,E,A,K),{getVisualData:pe}=oe,Ve=L.useCellContentStyle(k),me=L.useCellPosition(e,k),Se=L.useSidebar(e,F),{sidebarWidth:xe}=Se;c.value=pe(0,V.value+0-1);const de=L.useVirtualScroll(e,w,c,k,oe,V,0,xe),{onWheel:ue,dataGridWidth:ye,viewPortHeight:W,viewPortWidth:z,resetScroll:ce}=de,we=L.useFitColumn(e,k,s,z,P),{calculateColumnsSize:ae}=we,ie=L.useFilterHistory(),he=L.useColumnFilter(s,f,w,ie,de),ge=L.useRow(e,t,F,r),ve=L.useDragColumn(e,t,T,w,P,g,de),j=n.computed(()=>({"fv-grid":!0,"fv-datagrid-strip":e.showStripe})),X=n.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":p.value,"fv-grid-wrap-content":C.value})),{renderGridHeader:re,renderGridColumnResizeOverlay:q}=L.getColumnHeader(e,s,u,f,T,w,ve,he,x,ie,we,P,F,Se,I,de,z,c),{renderDataGridPagination:_e}=L.getPagination(e,t,w,de,y),{renderDataGridSidebar:U}=L.getSidebar(e,ge,F,Se,de),{renderDisableMask:ne}=L.getDisableMask(),{renderDataGridSummery:fe}=L.getSummary(e,w,T),{renderHorizontalScrollbar:Ne}=L.getHorizontalScrollbar(e,s,de),{renderVerticalScrollbar:Be}=L.getVerticalScrollbar(e,s,de),{renderFilterPanel:Re}=L.getFilterPanel(e,T,w,x,de),{renderGroupPanel:Le}=L.getGroupPanel(e,w,ve,g,de);function We(){var be,rt;W.value=((be=d.value)==null?void 0:be.clientHeight)||0,ye.value=((rt=s.value)==null?void 0:rt.clientWidth)||0,ae()}n.onMounted(()=>{s.value&&(dt.useResizeObserver(s.value,We),ae(),n.nextTick(()=>{s.value&&(ye.value=s.value.clientWidth),d.value&&(z.value=d.value.clientWidth,W.value=d.value.clientHeight)})),b.value&&h()}),n.onUnmounted(()=>{}),n.watch(z,()=>{});function Ze(){w.insertNewDataItem(),ce()}function et(){w.insertNewDataItem(c.value.length),ce()}function tt(be){M.onEditingRow(be)}function Ke(be){w.removeDataItem(be),ce()}function G(be){w.removeDataItemById(be),ce()}function te(be){M.acceptEditingRow(be)}function le(be){M.cancelEditingRow(be)}function Ie(be){be&&(a.value=be,N(a),B(a.value),O(w,I),ae())}function Me(be){be&&(ce(),w.load(be),c.value=pe(0,V.value+0-1))}function se(be){y.updatePagination(be)}n.watch([w.startIndex,w.endIndex],([be,rt],[Fs,Vs])=>{var ro,ao;be!==Fs&&Me((ro=w.originalData)==null?void 0:ro.value),rt!==Vs&&Me((ao=w.originalData)==null?void 0:ao.value)}),n.watch(()=>e.data,be=>{e.changePolicy==="default"&&Me(be)},{deep:!0});function $e(be){F.selectItemById(be)}function Fe(be){F.selectItemByIds(be)}function ke(){return c.value}function De(be){return c.value.filter(rt=>be.includes(rt.raw[e.idField]))}const Ce={addNewDataItem:Ze,addNewDataItemAtLast:et,removeDataItem:Ke,removeDataItemById:G,editDataItem:tt,acceptDataItem:te,cancelDataItem:le,selectItemById:$e,selectItemByIds:Fe,updateColumns:Ie,updateDataSource:Me,updatePagination:se,getVisibleData:ke,getVisibleDataByIds:De};t.expose(Ce);const Xe=L.useNavigation(e,t,Ce,T,M,c),{renderDataArea:it}=Hn(e,t,d,u,f,Ve,me,T,M,g,Xe,ge,oe,de,c),xs=n.computed(()=>!c.value||!c.value.length),{renderEmpty:_s}=L.getEmpty(t);return()=>n.createVNode("div",{ref:l,class:j.value,style:v.value,onWheel:ue},[Re(),Le(),re(),xs.value&&_s(),n.createVNode("div",{ref:s,class:X.value,onMouseover:()=>{p.value=!0},onMouseleave:()=>{p.value=!1}},[U(c),it(),Ne(),Be()]),fe(),_.value&&_e(),q(),e.disabled&&ne()])}}),Wa={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/check-box.schema.json",title:"check-box",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a check box",type:"string"},type:{description:"The type string of check box component",type:"string",default:"check-box"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disabled:{type:"string",default:!1},editable:{description:"",type:"boolean",default:!0},placeholder:{description:"",type:"string",default:""},text:{description:"",type:"string",default:""},value:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},visible:{description:"",type:"boolean",default:!0}},required:["id","type"],ignore:["id","appearance","binding","visible"]},qa=new Map([["appearance",Ye]]);function za(e,t,o){return t}const Gn={id:{Type:String,default:""},customClass:{Type:String,default:""},disabled:{Type:Boolean,default:!1},readonly:{type:Boolean,default:!1},indeterminate:{Type:Boolean,default:!1},modelValue:{Type:Boolean,default:!1},focusOnCreated:{type:Boolean,default:!1},value:{type:String,default:""},name:{type:String,default:""},label:{type:String,default:""},checked:{type:Boolean,default:!1}};Ae(Gn,Wa,qa,za);const Ua=n.defineComponent({name:"FCheckBox",props:Gn,emits:["change","changeValue","update:modelValue","update:checked"],setup(e,t){const o=n.inject(Ee.CHECKBOX_CONTEXT,null),{buttonClass:i,disabled:a,name:r,shouldRenderButton:l,shouldRenderNative:s,shouldRenderTag:d,tagClass:u,checked:f,onClickCheckBox:c}=Ee.useCheck(e,t,o==null?void 0:o.parentProps,o==null?void 0:o.parentContext);n.ref();const p=n.ref(e.id),C=n.ref(e.customClass),g=n.ref(e.modelValue),x=n.ref(e.indeterminate);return n.computed(()=>{const S={"custom-control":!0,"custom-checkbox":!0};return C.value&&C.value.split(" ").reduce((b,h)=>(b[h]=!0,b),S),S}),n.watch(()=>e.modelValue,S=>{g.value=S}),n.watch(()=>e.indeterminate,S=>{x.value=S}),n.onMounted(()=>{}),()=>{var S,b,h,y,_,w;return n.createVNode(n.Fragment,null,[l.value&&n.createVNode("div",{class:i.value,style:"border-radius:0;border: 1px solid #E8EBF2;",onClick:c},[(b=(S=t.slots).default)==null?void 0:b.call(S)]),d.value&&n.createVNode("div",{class:u.value,onClick:c},[n.createVNode("div",{class:"title"},[(y=(h=t.slots).default)==null?void 0:y.call(h)]),n.createVNode("div",{class:"tip"},null),n.createVNode("span",{class:"f-icon f-icon-check f-radio-icon"},null)]),s.value&&n.createVNode("div",{class:"custom-control custom-checkbox",onClick:c},[n.createVNode("input",{type:"checkbox",class:"custom-control-input",name:r.value,id:p,value:e.value,checked:f.value,indeterminate:x.value,disabled:a.value},null),n.createVNode("div",{class:"custom-control-label"},[(w=(_=t.slots).default)==null?void 0:w.call(_)])])])}}}),Ka={id:{type:String,default:""},componentId:{type:String,default:""},type:{type:String,default:""},canDelete:{type:Boolean,default:!0},canMove:{type:Boolean,default:!0},canSelectParent:{type:Boolean,default:!0},customButtons:{type:Array,default:[]},customClass:{type:String,default:""},customStyle:{type:String,default:""},modelValue:{type:Object},ignore:{type:Boolean,default:!1}},Xa={id:{type:String}},Ya=n.defineComponent({name:"FDesignerPlaceholder",props:Xa,emits:[],setup(e){const t=n.computed(()=>({"drag-and-drop-alert":!0,"no-drag":!0,"w-100":!0})),o=n.computed(()=>({height:"60px",display:"flex","justify-content":"center","align-items":"center",margin:0,padding:".75rem 1.25rem",border:"1px solid transparent","border-radius":"3px",color:"#315585","background-color":"#dfedff","border-color":"#d2e6ff"}));return()=>n.createVNode("div",{class:t.value,style:o.value,role:"alert","data-noattach":"true","data-position":"0"},[n.createTextVNode("拖拽组件到这里")])}});function Ja(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!n.isVNode(e)}const Mt=n.defineComponent({name:"FDesignerItem",props:Ka,emits:["selectionChange"],setup(e,t){const o=n.ref(`${e.modelValue.id}-component`),i=n.ref(e.canMove),a=n.ref(e.canDelete),r=n.ref(!1),l=n.ref(e.modelValue),s=n.ref(e.componentId||""),d=n.ref(""),u=n.ref(""),f=n.ref(e.customClass),c=n.ref(),p=n.inject("canvas-dragula"),C=n.ref(),g=n.inject("design-item-context"),x={designerItemElementRef:c,componentInstance:C,schema:l.value,parent:g,setupContext:t};n.provide("design-item-context",x);const S=n.inject("useFormSchema"),b=n.computed(()=>{const k=e.modelValue.appearance&&e.modelValue.appearance.class||"";let B={"farris-component":!0,"flex-fill":l.value.id==="root-component","position-relative":i.value&&a.value,"farris-nested":r.value,"can-move":i.value,"d-none":c.value&&c.value.classList.contains("d-none"),dgComponentSelected:c.value&&c.value.classList.contains("dgComponentSelected"),dgComponentFocused:c.value&&c.value.classList.contains("dgComponentFocused")};return B[`farris-component-${l.value.type}`]=!0,B=Ee.getCustomClass(B,k),B=Ee.getCustomClass(B,u.value),B=Ee.getCustomClass(B,f.value),B}),h=n.computed(()=>{const k={},B=e.modelValue.appearance&&e.modelValue.appearance.style||"";return B&&B.split(";").reduce((P,M)=>{const[$,R]=M.split(":");return P[$]=R,P},k),d.value&&d.value.split(";").reduce((P,M)=>{const[$,R]=M.split(":");return $&&(P[$]=R),P},k),k});function y(k,B){var $,R;if(k&&(k.preventDefault(),k.stopPropagation()),C.value.triggerBelongedComponentToDeleteWhenDeleted){const E=C.value.getBelongedComponentInstance(C);if(E&&E.parent){const A=n.ref(E==null?void 0:E.parent),K=A.value.contents.findIndex(oe=>oe.id===E.schema.id);(R=($=A.value)==null?void 0:$.contents)==null||R.splice(K,1),pt.value++}return}C.value.onRemoveComponent();let P=g,M=E=>E.id===B.id;if(B.type==="component"&&(P=g==null?void 0:g.parent,M=E=>E.component===B.id),P&&P.schema.contents){const E=P.schema.contents.findIndex(M);P.schema.contents.splice(E,1),pt.value++,t.emit("selectionChange")}}function _(k){return a.value&&n.createVNode("div",{role:"button",class:"btn component-settings-button",title:"删除",ref:"removeComponent",onClick:B=>{y(B,k)}},[n.createVNode("i",{class:"f-icon f-icon-yxs_delete"},null)])}function w(){return i.value&&n.createVNode("div",{role:"button",class:"btn component-settings-button",title:"移动",ref:"moveComponent"},[n.createVNode("i",{"data-dragging-icon":"true",class:"cmp_move f-icon f-icon-yxs_move"},null)])}function F(){return e.customButtons&&!!e.customButtons.length&&e.customButtons.map(k=>n.createVNode("div",{role:"button",class:`btn component-settings-button ${k.class||""}`,title:k.title,ref:k.id},[n.createVNode("i",{class:k.icon},null)]))}function V(k){return n.createVNode("div",{class:"component-btn-group","data-noattach":"true"},[n.createVNode("div",null,[_(k),w(),F()])])}function v(k,B,P,M){t.emit("selectionChange",k,B,P,M)}function m(k){let B;const P=k.type,M=Dr[P],$=Ar[P],R=$?$(k):{};R.customClass=e.ignore?R.customClass:"",R.componentId=s.value,R.id=k.id;const E=k.contents&&k.contents.length===0;return k.contents&&!!k.contents.length&&M?n.createVNode(M,n.mergeProps({ref:C},R),Ja(B=k.contents.map(K=>n.createVNode(Mt,{key:K.id,modelValue:K,"onUpdate:modelValue":oe=>K=oe,componentId:s.value,onSelectionChange:v},null)))?B:{default:()=>[B]}):M?E?n.createVNode(M,n.mergeProps({ref:C},R),{default:()=>[n.createVNode(Ya,null,null)]}):n.createVNode(M,n.mergeProps({ref:C},R),null):n.createVNode("div",null,null)}function N(k){if(k.type==="component-ref"){let P=S==null?void 0:S.getFormSchema().module.components.find(M=>M.id===k.component);if(P)return n.createVNode(Mt,{key:P.id,modelValue:P,"onUpdate:modelValue":M=>P=M,componentId:P.id,onSelectionChange:v},null)}}n.watch(()=>e.modelValue,k=>{l.value=k,o.value=`${k.id}-component`});function T(k){const B=k==null?void 0:k.target;Gr(B)}function I(){var k,B;(B=(k=l.value)==null?void 0:k.contents)!=null&&B.length&&c.value&&c.value.addEventListener("scroll",T)}n.onMounted(()=>{if(c.value&&C.value&&C.value.schema){const k=c.value.querySelector(`[data-dragref='${C.value.schema.id}-container']`);p&&k&&p.attachComponents(k,l.value),r.value=C.value.canNested!==void 0?C.value.canNested:r.value,a.value=C.value.canDelete!==void 0?C.value.canDelete:a.value,i.value=C.value.canMove!==void 0?C.value.canMove:i.value,d.value=C.value.styles||"",u.value=C.value.designerClass||"",c.value&&(c.value.componentInstance=C,c.value.designItemContext=x),C.value.belongedComponentId=s.value}I(),pt.value++}),n.onBeforeUnmount(()=>{c.value&&c.value.removeEventListener("scroll",T)});function O(k){Array.from(document.getElementsByClassName("dgComponentFocused")).forEach(M=>M.classList.remove("dgComponentFocused")),k&&(k.preventDefault(),k.stopPropagation());let B=x.designerItemElementRef;const P=c.value;if(P){const M=document.getElementsByClassName("dgComponentSelected");M&&M.length===1&&M[0]===c.value||(Array.from(M).forEach(R=>R.classList.remove("dgComponentSelected")),P.classList.add("dgComponentFocused"),t.emit("selectionChange",l.value.type,l.value,s.value,C.value),C.value.getDraggableDesignItemElement&&(B=C.value.getDraggableDesignItemElement(x),B&&B.value&&B.value.classList.add("dgComponentSelected")))}T({target:B==null?void 0:B.value})}return()=>l.value.type==="component-ref"?N(l.value):n.createVNode("div",{id:`${l.value.id}-design-item`,ref:c,class:b.value,style:h.value,onClick:O},[V(l.value),m(l.value)])}});function Ln(e,t,o,i,a,r,l,s,d,u,f,c,p,C,g,x,S,b,h,y="data-grid-column"){const{showSelectAll:_,selectAll:w,unSelectAll:F,selectedValues:V}=C,{showRowNumer:v,showSidebarCheckBox:m,sidebarTitle:N,sidebarCornerCellStyle:T}=g,{columnContext:I,hasLeftFixedColumn:O,hasRightFixedColumn:k}=r,{gridHeaderColumnsStyle:B,leftFixedGridHeaderColumnsStyle:P,rightFixedGridHeaderColumnsStyle:M}=S,$=n.computed(()=>_.value||m.value||v.value),R=I.value.defaultColumnWidth,E=32,A=new Map([[0,0]]);function K(ie,he){const ge=A.get(he)||0,ve={height:`${ie.depth*E}px`,left:`${ie.left}px`,top:`${(ie.layer-1)*E}px`,width:`${ie.actualWidth}px`,padding:0};return I.value.headerDepth>1&&(ve["line-height"]=`${ie.depth*E}px`),A.set(he+1,ge+(ie.actualWidth||R)),ve}const oe=n.computed(()=>({"fv-grid-header":!0,"fv-grid-header-group-columns":I.value.headerDepth>1})),pe=n.computed(()=>({height:`${I.value.headerDepth*E}px`})),Ve=function(ie){return t.showSetting&&!!ie.showSetting};function me(){return n.createVNode("span",{class:"fv-grid-settings-icon d-flex align-items-center"},[n.createVNode("i",{class:"f-icon f-icon-home-setup"},null)])}function Se(ie,he,ge,ve){var j;(j=e==null?void 0:e.setupContext)==null||j.emit("selectionChange",ie,he,ge,ve)}function xe(ie,he,ge){var j;const ve=n.ref(ie.column);return n.createVNode("div",{class:"fv-grid-header-cell",style:K(ie,ge)},[n.createVNode(Mt,{modelValue:ve.value,"onUpdate:modelValue":X=>ve.value=X,customClass:"w-100 d-flex align-items-center justify-content-center",canAdd:!1,canDelete:!1,canMove:!1,key:(j=ve.value)==null?void 0:j.id,type:y,componentId:t.componentId,onSelectionChange:Se},null),Ve(ie)&&me(),ie.resizable&&n.createVNode("span",{class:"fv-column-resize-bar"},null)])}function de(ie){return ie.map((he,ge)=>{const ve=[];if(ve.push(xe(he,ie,ge)),he.children&&he.children.length){const j=de(he.children);ve.push(...j)}return ve})}function ue(){return n.createVNode("div",{class:"fv-grid-header-left-fixed"},[n.createVNode("div",{class:"fv-grid-header-columns",style:P.value},[de(I.value.leftHeaderColumns)])])}function ye(){return n.createVNode("div",{class:"fv-grid-header-right-fixed"},[n.createVNode("div",{class:"fv-grid-header-columns",style:M.value},[de(I.value.rightHeaderColumns)])])}const W=n.ref(h.value.length===V.value.length);function z(ie){W.value?w():F()}const ce=n.computed(()=>V.value.length>0&&h.value.length!==V.value.length);function we(){return n.createVNode("div",{class:"fv-grid-header-corner d-flex",style:T.value},[_.value&&n.createVNode(Ua,{id:"checkbox_for_select_all",indeterminate:ce.value,modelValue:W.value,"onUpdate:modelValue":ie=>W.value=ie,onChange:z,style:"margin-left:8px"},null),v.value&&n.createVNode("div",{style:"line-height:18px"},[N.value])])}function ae(){return n.createVNode("div",{class:oe.value,style:pe.value},[$.value&&we(),O.value&&ue(),n.createVNode("div",{class:"fv-grid-header-primary"},[n.createVNode("div",{class:"fv-grid-header-columns",style:B.value},[de(I.value.primaryHeaderColumns)])]),k.value&&ye()])}return{renderGridHeader:ae}}class Qa extends ft{constructor(t,o){super(t,o)}getPropertyConfig(t){return this.getBasicPropConfig(t),this.getAppearanceProperties(t),this.getEventPropConfig(t),this.propertyConfig}getBasicPropConfig(t){var r,l,s;const o=(s=(l=(r=this.formSchemaUtils.getFormSchema())==null?void 0:r.module)==null?void 0:l.entity[0])==null?void 0:s.entities[0],i=this.assembleSchemaEntityToTree(o,0),a=this;this.propertyConfig.categories.basic={description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",editor:{type:"combo-list",textField:"value",valueField:"key",data:[{key:"data-grid",value:ee["data-grid"].name}]}},dataSource:{description:"绑定数据源",title:"绑定数据源",editor:{type:"combo-tree",textField:"name",valueField:"label",data:i,editable:!1},readonly:t.columns&&t.columns.length>0}},setPropertyRelates(d,u){switch(d&&d.propertyID){case"dataSource":{const f=a.formSchemaUtils.getViewModelById(a.viewModelId);if(f){const c=i.find(p=>p.label===d.propertyValue);f.bindTo=c.bindTo}a.designViewModelUtils.assembleDesignViewModel();break}}}}}assembleSchemaEntityToTree(t,o,i,a="",r=[]){const l=a?`${a}/${t.label}`:"/";return r.push({id:t.id,name:t.name,label:t.label,layer:o,parent:i&&i.id,bindTo:l.replace("//","/")}),t.type.entities&&t.type.entities.length&&t.type.entities.map(s=>this.assembleSchemaEntityToTree(s,o+1,t,l,r)),r}getAppearanceProperties(t){var o,i,a,r,l,s;this.propertyConfig.categories.appearance={title:"外观",properties:{columns:{title:"列设置",description:"列设置",type:"",$converter:"/converter/items-count.converter",editor:{type:"grid-field-editor",viewModelId:this.viewModelId,gridData:t,getLatestGridData:d=>t},refreshPanelAfterChanged:!0},fit:{title:"适配父组件尺寸",type:"boolean",description:"是否适配父组件尺寸"},showStripe:{title:"显示条纹",type:"boolean",description:"是否显示条纹"},showBorder:{title:"显示边框",type:"boolean",description:"是否显示边框"},showSetting:{title:"显示设置按钮",type:"boolean",description:"是否显示设置按钮"}},setPropertyRelates(d,u){switch(d&&d.propertyID){case"useBlankWhenDataIsEmpty":t.emptyDataHeight=t.useBlankWhenDataIsEmpty?36:240;break;case"columns":t.columns=d.propertyValue||[];break}}},this.propertyConfig.categories.rowNumber={title:"行号配置",$converter:"/converter/row-number.converter",properties:{enable:{title:"启用行号配置",type:"boolean",refreshPanelAfterChanged:!0},width:{visible:((o=t.rowNumber)==null?void 0:o.enable)||!0,title:"显示页码",type:"number"},heading:{visible:((i=t.rowNumber)==null?void 0:i.enable)||!0,title:"标题",type:"string"},showEllipsis:{visible:((a=t.rowNumber)==null?void 0:a.enable)||!0,title:"展示省略号",type:"boolean"}}},this.propertyConfig.categories.pagination={title:"分页",$converter:"/converter/pagination.converter",properties:{enable:{title:"启用分页",type:"boolean",refreshPanelAfterChanged:!0},mode:{visible:((r=t.pagination)==null?void 0:r.enable)||!1,title:"分页交互模式",type:"enum",editor:{type:"combo-list",textField:"value",valueField:"key",data:[{key:"client",value:"客户端"},{key:"server",value:"服务器端"}]}},showIndex:{visible:((l=t.pagination)==null?void 0:l.enable)||!1,title:"显示页码",type:"boolean"},showLimits:{visible:((s=t.pagination)==null?void 0:s.enable)||!1,title:"显示每页记录数",type:"boolean"}}}}getEventPropConfig(t){const o=[{label:"onClickRow",name:"行点击事件"},{label:"onSelectionChange",name:"行切换事件"},{label:"onPageIndexChanged",name:"切换页码事件"},{label:"onPageSizeChanged",name:"分页条数变化事件"}],i=this,a=i.eventsEditorUtils.formProperties(t,i.viewModelId,o),r={};r[i.viewModelId]={type:"events-editor",editor:{initialData:a}},this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:r,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(l,s){const d=l.propertyValue;delete t[i.viewModelId],d&&(d.setPropertyRelates=this.setPropertyRelates,i.eventsEditorUtils.saveRelatedParameters(t,i.viewModelId,d.events,d)),t.remoteSort=!!t.columnSorted}}}}function Za(e,t){const o=e.schema,i=n.ref(!0),a=n.ref(!0);function r(f){return f&&f.sourceType==="control"?f.componentCategory==="input":!1}function l(){return!1}function s(){return!1}function d(){return!0}function u(f){return new Qa(f,t).getPropertyConfig(o)}return{canAccepts:r,checkCanDeleteComponent:l,checkCanMoveComponent:s,hideNestedPaddingInDesginerView:d,triggerBelongedComponentToMoveWhenMoved:i,triggerBelongedComponentToDeleteWhenDeleted:a,getPropsConfig:u}}const Bt=n.defineComponent({name:"FDataGridDesign",props:Yt,emits:["ClickRow","DoubleClickRow","selectionChange","enterUpInLastCell","pageIndexChanged","pageSizeChanged"],setup(e,t){var De;const o=n.ref(),i=n.inject("designer-host-service"),a=n.inject("design-item-context"),r=Za(a,i),l=Ft(o,a,r);l.value.styles="display:flex;flex:1;",n.onMounted(()=>{o.value.componentInstance=l}),t.expose(l.value);const s=n.ref(e.columns),d=20,u=$n(e),f=0,c=n.ref(),p=n.ref(),C=n.ref(),g=n.ref(),x=n.ref(e.showStripe),S=n.ref([]),b=n.ref(!1),h=n.ref(((De=e.rowOption)==null?void 0:De.wrapContent)||!1),y=Tt(e,u),_=kt(),w=Tn(e),F=An(e),V=Nn(e,new Map,w,u,F),v=En(e,V,u,S,t),m=n.computed(()=>e.disable),N=n.computed(()=>V.totalItems.value<d?V.totalItems.value:d),{containerStyleObject:T}=nn(e),I=an(e),{applyCommands:O}=I;O(s);const k=on(e),B=Dn(),{applyColumnSorter:P,columnContext:M,updateColumnRenderContext:$}=k;P(V,B);const R=cn(e,M),E=Pn(e,t,u),A=xt(),K=Bn(e,E,A),oe=On(e,E,w,u,A,K),pe=$a(e,u,K,oe),Ve=ja(e,u,K,oe),me=Mn(e,s,V,N,f,oe,pe,Ve),{getVisualData:Se}=me,xe=Ga(),de=St(e,M),ue=Rn(e,v),{sidebarWidth:ye}=ue;S.value=Se(0,N.value+f-1);const W=In(e,V,S,M,me,N,f,ye),{onWheel:z,dataGridWidth:ce,viewPortHeight:we,viewPortWidth:ae,resetScroll:ie}=W,he=sn(e,M,c,ae,R),{calculateColumnsSize:ge}=he,ve=kn(),j=rn(c,g,V,ve,W),X=jn(e,t,v,u),re=ln(e,t,k,V,R,y,W),q=n.computed(()=>({"fv-grid":!0,"fv-datagrid-strip":x.value})),_e=n.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":b.value,"fv-grid-wrap-content":h.value})),{renderGridHeader:U}=Ln(a,e,c,C,g,k,V,re,j,_,ve,he,R,v,ue,B,W,ae,S);Wi(e,t,V,W,F);const{renderDataGridSidebar:ne}=en(e,X,v,ue,W),{renderDisableMask:fe}=Ei(),{renderDataGridSummery:Ne}=qi(e,V,k),{renderHorizontalScrollbar:Be}=Zt(e,c,W),{renderVerticalScrollbar:Re}=tn(e,c,W),{renderFilterPanel:Le}=Ri(e,k,V,_,W),{renderGroupPanel:We}=Di(e,V,re,y,W);function Ze(){var Ce,Xe;we.value=((Ce=p.value)==null?void 0:Ce.clientHeight)||0,ce.value=((Xe=c.value)==null?void 0:Xe.clientWidth)||0,ge()}n.onMounted(()=>{c.value&&(dt.useResizeObserver(c.value,Ze),ge(),n.nextTick(()=>{c.value&&(ce.value=c.value.clientWidth),p.value&&(ae.value=p.value.clientWidth,we.value=p.value.clientHeight)}))}),n.onUnmounted(()=>{}),n.watch(ae,()=>{c.value&&ge()});function et(){V.insertNewDataItem(),ie()}function tt(){V.insertNewDataItem(S.value.length),ie()}function Ke(Ce){E.onEditingRow(Ce)}function G(Ce){V.removeDataItem(Ce),ie()}function te(Ce){V.removeDataItemById(Ce),ie()}function le(Ce){E.acceptEditingRow(Ce)}function Ie(Ce){E.cancelEditingRow(Ce)}function Me(Ce){Ce&&(s.value=Ce,O(s),$(s.value),P(V,B),ge())}function se(Ce){Ce&&(V.load(Ce),S.value=Se(0,N.value+f-1))}const Fe=Ea(e,t,{addNewDataItem:et,addNewDataItemAtLast:tt,removeDataItem:G,removeDataItemById:te,editDataItem:Ke,acceptDataItem:le,cancelDataItem:Ie,updateColumns:Me,updateDataSource:se},k,E,S);n.watch(()=>e.columns,Ce=>{Me(Ce)});const{renderDataArea:ke}=Hn(e,t,p,C,g,xe,de,k,E,y,Fe,X,me,W,S);return()=>n.createVNode("div",{ref:o,class:q.value,style:T.value,onWheel:z},[Le(),We(),U(),n.createVNode("div",{ref:c,class:_e.value,onMouseover:()=>{b.value=!0},onMouseleave:()=>{b.value=!1}},[ne(S),ke(),Be(),Re()]),Ne(),m.value&&fe()])}}),el=new Map([["appearance",At.resolveAppearance]]);function tl(e,t,o){return t}const nl={$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:""},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}}},separator:{type:"string",default:","},showButtonWhenDisabled:{description:"",type:"boolean",default:!1},wrapText:{type:"boolean",default:!1},onClear:{description:"",type:"string",default:""}},required:["id","type"]},ol={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:"右对齐"}]}}}}}},Wn={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},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"}};Ae(Wn,nl,el,tl,ol);const il={popupContentPosition:{type:Object,default:{left:0,top:0}},host:{type:Object},backgroundColor:{type:String,default:""}},rl=n.defineComponent({name:"FOverlay",props:il,emits:["click"],setup(e,t){const o=n.ref(e.popupContentPosition),i=n.ref(e.host),a=n.computed(()=>({backgroundColor:e.backgroundColor||"",pointerEvents:"auto"}));function r(s){t.emit("click"),s.preventDefault(),s.stopPropagation()}n.computed(()=>{const s=i.value;if(s){const d=s.getBoundingClientRect(),{left:u,top:f,height:c}=d;return{left:u,top:f+c}}return o.value});const l=n.computed(()=>({}));return()=>n.createVNode(n.Teleport,{to:"body"},{default:()=>{var s,d;return[n.createVNode("div",{class:"overlay-container",onClick:u=>r(u),style:a.value},[n.createVNode("div",{style:l.value},[(d=(s=t.slots).default)==null?void 0:d.call(s)])])]}})}});function al(e){if(e.content&&e.content.render)return e.content.render;if(e.render&&typeof e.render=="function")return e.render}function ll(e){const t=document.createElement("div");t.style.display="contents";let o;const i=e.onClickCallback||(()=>{}),a=()=>{i(),o&&o.unmount()};return o=n.createApp({setup(){n.onUnmounted(()=>{document.body.removeChild(t)});const r=al(e);return()=>n.createVNode(rl,{"popup-content-position":e.popupPosition,host:e.host,onClick:a,backgroundColor:e.backgroundColor},{default:()=>[r&&r()]})}}),document.body.appendChild(t),o.mount(t),o}class sl{static show(t){return ll(t)}}function qn(e,t){function o(){const i=e.beforeOpen||e.beforeClickButton||null;let a=Promise.resolve(!0);if(i){const r=i(t.value);if(typeof r>"u")return a;typeof r=="boolean"?a=Promise.resolve(r):a=r}return a}return{judgeCanOpen:o}}function cl(e,t,o,i,a){const r=n.ref(e.buttonBehavior),l=n.ref(e.popupOnInput),s=n.computed(()=>({"input-group-append":!0,"append-force-show":e.showButtonWhenDisabled&&(e.readonly||e.disable)})),{judgeCanOpen:d}=qn(e,a),u=n.computed(()=>e.showButtonWhenDisabled||(!e.editable||!e.readonly)&&!e.disable),f=n.inject(pa,null),c=n.ref();async function p(x){if(await d()&&u.value){const S=!!t.slots.default;if(r.value==="Modal"){const b=e.modalOptions,h=f==null?void 0:f.open({...b,render:()=>t.slots.default&&t.slots.default()});c.value=h==null?void 0:h.modalRef}r.value==="Overlay"&&sl.show({host:document.body,backgroundColor:"rgba(0,0,0,.15)",render:()=>t.slots.default&&t.slots.default()}),S&&r.value==="Popup"&&i.togglePopup(!0),S&&l.value&&i.hidePopup(),t.emit("clickButton",{origin:x,value:e.modelValue})}}function C(x){t.emit("mouseEnterIcon",x)}function g(x){t.emit("mouseLeaveIcon",x)}return{buttonGroupClass:s,onClickButton:p,onMouseEnterButton:C,onMouseLeaveButton:g,modalRef:c}}function dl(e,t,o,i,a,r){const l=n.ref(!1),s=n.computed(()=>e.enableClear&&!e.readonly&&!e.disable),{changeTextBoxValue:d}=r;function u(C){l.value=C}n.watch(a,()=>{u(!!a.value)});function f(C){const g=!e.readonly&&!e.disable&&e.editable,x=!e.editable;C.stopPropagation(),(g||x)&&(d("",!1),u(!l.value),t.emit("clear"))}function c(C){if(s.value){if(!o.value){u(!1);return}!e.disable&&!e.readonly&&u(!0)}}function p(C){s.value&&u(!1)}return{enableClearButton:s,showClearButton:l,onClearValue:f,onMouseEnterTextBox:c,onMouseLeaveTextBox:p}}function ul(e,t,o,i,a){const r=n.computed(()=>e.popupOnInput),l=n.computed(()=>e.popupOnFocus),{shouldPopupContent:s}=a,d=n.computed(()=>e.enableTitle?o.value:""),u=n.computed(()=>(e.disable||e.readonly)&&!e.forcePlaceholder?"":e.placeholder),f=n.computed(()=>e.readonly||!e.editable),c=n.ref(!1),p=n.computed(()=>!e.disable&&c.value),C=n.computed(()=>({"text-left":e.textAlign==="left","text-center":e.textAlign==="center","text-right":e.textAlign==="right","form-control":!0,"f-utils-fill":!0})),g=n.computed(()=>({"input-group":!0,"f-state-disable":e.disable,"f-state-editable":e.editable&&!e.disable&&!e.readonly,"f-state-readonly":e.readonly&&!e.disable,"f-state-focus":p.value}));function x(m,N=!0){o.value!==m&&(o.value=m,N&&(t.emit("change",m),t.emit("update:modelValue",m)))}function S(m){s.value=!1,x(m,!0)}n.watch(()=>e.modelValue,m=>{o.value=m});function b(m){c.value=!1,t.emit("blur",m),m.stopPropagation()}function h(m){t.emit("click",m)}function y(m){e.disable||(c.value=!0,f.value||(t.emit("focus",m),l.value&&!s.value&&a.popup()))}function _(m){t.emit("input",m.target.value);const N=m.target.value;i.value=N,o.value!==N&&x(N,e.updateOn==="change"),r.value&&!s.value&&a.popup()}function w(m){m.target.tagName!=="INPUT"&&m.preventDefault(),m.stopPropagation()}function F(m){t.emit("keydown",m)}function V(m){m.key==="Enter"&&(r.value||l.value)&&a.hidePopup(),t.emit("keyup",m)}function v(m){const N=m.target.value;m.stopPropagation(),x(N)}return{hasFocusedTextBox:p,isTextBoxReadonly:f,textBoxClass:C,textBoxPlaceholder:u,textBoxTitle:d,inputGroupClass:g,changeTextBoxValue:x,commitValue:S,onBlurTextBox:b,onClickTextBox:h,onFocusTextBox:y,onInput:_,onKeyDownTextBox:F,onKeyUpTextBox:V,onMouseDownTextBox:w,onTextBoxValueChange:v}}function fl(e,t,o,i){const a=n.ref(),r=n.ref(!1),{judgeCanOpen:l}=qn(e,i);function s(){const c=a.value;c&&c.show(o.value)}async function d(c=!1){if(!!t.slots.default){if(!c&&!r.value&&!await l())return;r.value=!r.value,await n.nextTick(),s()}}async function u(c=!1){if(!!t.slots.default){if(!c&&!await l())return;r.value=!0,await n.nextTick(),s()}}function f(){r.value=!1}return{hidePopup:f,popup:u,shouldPopupContent:r,togglePopup:d,popoverRef:a}}function pl(e,t,o){const i=n.ref(),{isTextBoxReadonly:a,textBoxClass:r,textBoxPlaceholder:l,textBoxTitle:s,onBlurTextBox:d,onClickTextBox:u,onFocusTextBox:f,onInput:c,onKeyDownTextBox:p,onKeyUpTextBox:C,onMouseDownTextBox:g,onTextBoxValueChange:x}=o;return n.onMounted(()=>{var S,b;e.selectOnCreated&&((S=i.value)==null||S.select()),e.focusOnCreated&&((b=i.value)==null||b.focus())}),()=>n.createVNode("input",{ref:i,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:a.value,tabindex:e.tabIndex,title:s.value,type:e.inputType,value:t.value,onBlur:d,onChange:x,onClick:u,onFocus:f,onInput:c,onKeydown:p,onKeyup:C,onMousedown:g},null)}function ml(e,t,o){const i=n.ref(e.separator),{changeTextBoxValue:a}=o,r=n.computed(()=>t.value?t.value.split(i.value).map(s=>({name:s,selectable:!0})):[]);function l(s){a(s.map(d=>d.name).join(i.value),!0)}return()=>n.createVNode(Dt,{id:`${e.id}-tag-editor`,class:"form-control",data:r.value,showClose:!0,showInput:!0,onChange:l},null)}function hl(e,t,o,i){const{buttonGroupClass:a,onClickButton:r,onMouseEnterButton:l,onMouseLeaveButton:s}=o,{enableClearButton:d,showClearButton:u,onClearValue:f}=i,c=n.ref();return{renderButtonGroup:()=>n.createVNode("div",{id:`${e.id}-button-group`,class:a.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,u.value]]),t.slots.buttonContent?n.createVNode("span",{class:"input-group-text input-group-append-button",onClick:r,onMouseenter:l,onMouseleave:s},[t.slots.buttonContent()]):e.buttonContent?n.createVNode("span",{class:"input-group-text input-group-append-button",innerHTML:e.buttonContent,ref:c,onClick:r,onMouseenter:l,onMouseleave:s},null):null]),buttonHandleElement:c}}function gl(e,t,o){const i=n.ref(e.popupMinWidth),{hidePopup:a,popoverRef:r}=o;return()=>n.createVNode(si,{id:`${e.id}-popover`,ref:r,visible:!0,placement:"bottom-left",host:e.popupHost,"keep-width-with-reference":!0,fitContent:!0,"right-boundary":e.popupRightBoundary,minWidth:i.value,offsetX:e.popupOffsetX,onHidden:a},{default:()=>{var l,s;return[(s=(l=t.slots).default)==null?void 0:s.call(l)]}})}const yl=n.defineComponent({name:"FButtonEdit",props:Wn,emits:["updateExtendInfo","clear","change","click","clickButton","blur","focus","mouseEnterIcon","mouseLeaveIcon","keyup","keydown","inputClick","input","update:modelValue"],setup(e,t){const o=n.ref(),i=n.ref(e.customClass),a=n.ref(e.modelValue),r=fl(e,t,o,a),{shouldPopupContent:l,hidePopup:s,togglePopup:d}=r,u=cl(e,t,o,r,a),f=n.ref(""),c=ul(e,t,a,f,r),{hasFocusedTextBox:p,commitValue:C,inputGroupClass:g}=c,x=dl(e,t,a,p,f,c),{onMouseEnterTextBox:S,onMouseLeaveTextBox:b}=x,h=n.computed(()=>{const m={"f-button-edit":!0,"f-cmp-inputgroup":!0,"f-button-edit-nowrap":!e.wrapText};return i.value&&i.value.split(" ").reduce((N,T)=>(N[T]=!0,N),m),m});function y(){return e.multiSelect&&e.inputType==="tag"?ml(e,a,c):pl(e,a,c)}let _=y();n.watch([()=>e.multiSelect,()=>e.inputType],()=>{_=y()});const{renderButtonGroup:w,buttonHandleElement:F}=hl(e,t,u,x),V=gl(e,t,r),v={commitValue:C,elementRef:o,hidePopup:s,shouldPopupContent:l,togglePopup:d,openDialog:()=>{F.value&&e.buttonBehavior==="Modal"&&F.value.click()},getModal:()=>{var m;return e.buttonBehavior==="Modal"?(m=u.modalRef.value)==null?void 0:m.value:null}};return n.onMounted(()=>{o.value.componentInstance=v,window.onresize=()=>{document.body.click()}}),t.expose(v),()=>n.createVNode(n.Fragment,null,[n.createVNode("div",n.mergeProps(t.attrs,{ref:o,class:h.value,id:e.id}),[n.createVNode("div",{id:`${e.id}-input-group`,class:g.value,onMouseenter:S,onMouseleave:b},[_(),w()])]),l.value&&V()])}}),vl={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/grid-field-editor.schema.json",title:"grid-field-editor",description:"A Farris Data Grid 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:"grid-field-editor"},viewModelId:{description:"",type:"string",default:""},gridData:{description:"",type:"Object",default:null}},required:["id","type"]},zn={modelValue:{type:String,default:""},viewModelId:{Type:String,default:""},gridData:{Type:Object,default:null},gridType:{Type:String,default:"data-grid-column"},getLatestGridData:{Type:Function}},bl=Ae(zn,vl,Wt,Kt),Cl=new Map([["appearance",Ye]]);function wl(e,t,o){return t}const Sl={title:"transfer",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:[]}}}}}},xl={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/transfer.schema.json",title:"transfer",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for transfer",type:"string"},type:{description:"The type string of transfer",type:"string",default:"transfer"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disable:{type:"string",default:!1},editable:{description:"",type:"boolean",default:!0},placeholder:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},require:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},visible:{description:"",type:"boolean",default:!0}},required:["id","type"]},Un={dataSource:{type:Array,default:[]},displayType:{type:String,default:"List"},enableSearch:{type:Boolean,default:!0},identifyField:{type:String,default:"id"},textField:{type:String,default:"name"},placeholder:{type:String,default:""},selections:{type:Array,default:[]},selectionValues:{type:Array,default:[]}};Ae(Un,xl,Cl,wl,Sl);const _l=new Map([["appearance",Ye]]);function Fl(e,t,o){return t}const Vl={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/list-view.schema.json",title:"list-view",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for list-view",type:"string"},type:{description:"The type string of list-view",type:"string",default:"list-view"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disable:{type:"string",default:!1},editable:{description:"",type:"boolean",default:!0},placeholder:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},require:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},visible:{description:"",type:"boolean",default:!0}},required:["id","type"]},Nl={title:"list-view",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:[]}}}}}},Kn={columns:{type:Array,default:[{field:"name",title:"",dataType:"string"}]},data:{type:Array,default:[]},draggable:{type:Boolean,default:!1},multiSelect:{Type:Boolean,default:!1},multiSelectMode:{Type:String,default:"OnCheck"},idField:{Type:String,default:"id"},valueField:{Type:String,default:"id"},textField:{Type:String,default:"name"},titleField:{Type:String,default:"name"},view:{Type:String,default:"ContentView"},size:{Type:String,default:"default"},placeholder:{type:String,default:""},header:{Type:String,default:"ContentHeader"},headerClass:{Type:String,default:""},itemClass:{Type:String,default:""},selectionValues:{type:Array,default:[]},group:{type:Object},selection:{type:Object,default:{enableSelectRow:!0,multiSelect:!1,multiSelectMode:"DependOnCheck",showCheckbox:!1,showSelectAll:!1,showSelection:!0}},keepOrder:{type:Boolean,default:!1},disableField:{type:String,default:"disabled"},enableHighlightSearch:{type:Boolean,default:!0}};Ae(Kn,Vl,_l,Fl,Nl);function kl(e,t){function o(r){const l=[];let s=r.nextNode();for(;s;)l.push(s),s=r.nextNode();return l}function i(r,l){const s=document.createTreeWalker(r,NodeFilter.SHOW_TEXT);return o(s).map(c=>({textNode:c,text:(c.textContent||"").toLocaleLowerCase()})).map(({textNode:c,text:p})=>{const C=[];let g=0;for(;g<p.length;){const x=p.indexOf(l,g);if(x===-1)break;C.push(x),g=x+l.length}return C.map(x=>{const S=new Range;return S.setStart(c,x),S.setEnd(c,x+l.length),S})}).flat()}function a(r){if(!CSS.highlights||(CSS.highlights.clear(),!r||!t))return;const l=i(t.value,r.toLocaleLowerCase()),s=new Highlight(...l);CSS.highlights.set("search-result",s)}return{search:a}}function Xn(e,t,o,i,a,r,l,s,d,u){const f=n.ref(e.size),c=n.ref(e.textField),p=n.ref(e.titleField),C=n.ref(e.disableField),g=n.computed(()=>{var v,m;return((v=e.selection)==null?void 0:v.multiSelect)&&((m=e.selection)==null?void 0:m.showCheckbox)}),{onMouseenterItem:x,onMouseoverItem:S,onMouseoutItem:b}=r,{getKey:h,listViewItemClass:y,onCheckItem:_,onClickItem:w}=l,F=n.computed(()=>({margin:f.value==="small"?"0.25rem 0":"10px 0"}));function V(v,m,N){return v.checked=s.findIndexInSelectedItems(v)>-1,n.createVNode("li",{class:y(v,m),id:h(v,m),key:h(v,m),onClick:T=>w(T,v,m),onMouseenter:T=>x(T,v,m),onMouseover:T=>S(T,v,m),onMouseout:T=>b(T,v,m)},[g.value&&n.createVNode("div",{class:"f-list-select",onClick:T=>T.stopPropagation()},[n.createVNode(at.FCheckBox,{id:"list-"+h(v,m),customClass:"listview-checkbox",disabled:v[C.value],checked:v.checked,"onUpdate:checked":T=>v.checked=T,onChange:T=>{_(v,m,!T.checked)}},null)]),n.createVNode("div",{class:"f-list-content"},[n.createVNode("div",{style:F.value,title:v.raw[p.value]||v.raw[c.value]},[v.raw[c.value]])])])}return{renderItem:V}}function Tl(e,t,o,i,a,r,l,s,d,u){const f=n.ref(e.multiSelect),c=n.ref(e.disableField),{onMouseenterItem:p,onMouseoverItem:C,onMouseoutItem:g}=r,{getKey:x,listViewItemClass:S,onCheckItem:b,onClickItem:h}=l;function y(w,F,V){return t.slots.content?n.createVNode(n.Fragment,null,[t.slots.content&&t.slots.content({item:w.raw,index:F,selectedItem:V})]):n.createVNode("div",{style:"margin: 10px 0;"},[w.raw.name])}function _(w,F,V){return n.createVNode("li",{class:S(w,F),id:x(w,F),key:x(w,F),onClick:v=>h(v,w,F),onMouseenter:v=>p(v,w,F),onMouseover:v=>C(v,w,F),onMouseout:v=>g(v,w,F)},[f.value&&n.createVNode("div",{class:"f-list-select",onClick:v=>v.stopPropagation()},[n.createVNode(at.FCheckBox,{id:"list-"+x(w,F),customClass:"listview-checkbox",disabled:w[c.value]||!w.checked,checked:w.checked,"onUpdate:checked":v=>w.checked=v,onChange:v=>b(w,F,!v.checked)},null)]),n.createVNode("div",{class:"f-list-content"},[y(w,F,V)])])}return{renderItem:_}}function Il(e,t,o,i,a,r,l,s,d,u){const f=n.ref(e.multiSelect),c=n.ref(e.disableField),{onMouseenterItem:p,onMouseoverItem:C,onMouseoutItem:g}=r,{getKey:x,listViewItemClass:S,onCheckItem:b,onClickItem:h}=l,{dragstart:y,dragenter:_,dragover:w,dragend:F}=i,{removeItem:V}=d,v=n.computed(()=>({margin:f.value?"10px 0":"10px 0px 10px 14px"}));function m(O){return n.createVNode("div",{style:v.value},[O.raw.name])}function N(){return t.slots.itemContent?t.slots.itemContent:m}const T=N();function I(O,k,B){return n.createVNode("li",{class:S(O,k),id:x(O,k),key:x(O,k),onClick:P=>h(P,O,k),onMouseenter:P=>p(P,O,k),onMouseover:P=>C(P,O,k),onMouseout:P=>g(P,O,k),draggable:"true",onDragstart:P=>y(P,O,k),onDragenter:P=>_(P,k),onDragend:P=>F(P,O),onDragover:P=>w(P,k)},[f.value&&n.createVNode("div",{class:"f-list-select",onClick:P=>P.stopPropagation()},[n.createVNode(at.FCheckBox,{id:"list-"+x(O,k),customClass:"listview-checkbox",disabled:O[c.value]||!O.checked,checked:O.checked,"onUpdate:checked":P=>O.checked=P,onChange:P=>b(O,k,!P.checked)},null)]),n.createVNode("div",{class:"f-list-content"},[T(O)]),n.createVNode("div",{class:"f-list-remove",onClick:P=>V(k)},[n.createVNode("div",{class:"f-list-remove-icon"},[n.createVNode("i",{class:"f-icon f-icon-remove_face"},null)])]),n.createVNode("div",{class:"f-list-handle"},[n.createVNode("div",null,[n.createVNode("i",{class:"f-icon f-icon-drag-vertical"},null)])])])}return{renderItem:I}}function Ml(e,t,o,i,a,r,l,s,d,u){var x;const f=n.ref(((x=e.group)==null?void 0:x.groupFields)||[]),{collpaseGroupIconClass:c}=a,{toggleGroupRow:p}=u;function C(S,b){b.collapse=!b.collapse,o.value=p(b.collapse?"collapse":"expand",b,o.value)}function g(S,b,h){return S.layer>-1&&n.createVNode("div",{class:"f-navlookup-recentHeader",onClick:y=>C(y,S)},[n.createVNode("div",{class:"fv-grid-group-row-icon"},[n.createVNode("span",{class:c(S)},null)]),n.createVNode("div",{class:"f-navlookup-recommandLabel"},[S.raw[f.value[S.layer]]])])}return{renderItem:g}}function Bl(){const e=n.ref(-1),t=n.ref(""),o=n.ref(-1),i=n.ref(!1);function a(u,f,c){o.value=c}function r(u,f,c){i.value||(o.value=c)}function l(u,f,c){o.value=-1}function s(){i.value=!0}function d(){i.value=!1}return{activeIndex:e,focusedItemId:t,hoverIndex:o,onMouseenterItem:a,onMouseoverItem:r,onMouseoutItem:l,resumeHover:d,suspendHover:s}}function Ol(e,t,o,i){const a=n.ref(e.idField),{dataView:r}=o,l=n.ref(-1),s=n.ref(!1),{activeIndex:d,focusedItemId:u,hoverIndex:f,resumeHover:c,suspendHover:p}=i;function C(b,h,y){b.stopPropagation(),p(),h&&setTimeout(()=>{l.value=y,s.value=!0,h.moving=!0})}function g(b,h){if(b.preventDefault(),l.value!==h){const y=r.value[l.value],_=r.value;_.splice(l.value,1),_.splice(h,0,y),l.value=h}}function x(b,h){b.preventDefault(),b.dataTransfer&&(b.dataTransfer.dropEffect="move")}function S(b,h){h&&(h.moving=!1),r.value.forEach((y,_)=>{y.__fv_index__=_}),s.value=!1,c(),f.value=h.raw.__fv_index__,d.value=h.raw.__fv_index__,u.value=h.raw[a.value],t.emit("change",r.value),t.emit("activeChange",h)}return{dragstart:C,dragenter:g,dragover:x,dragend:S,isDragging:s}}function Pl(e,t,o){const{dataView:i}=o;function a(r){if(r>-1&&r<i.value.length){const l=i.value.splice(r,1);t.emit("removeItem",l[0])}}return{removeItem:a}}function $l(e,t,o,i,a,r){const l=n.ref(e.idField),s=n.ref(e.disableField),d=n.ref(e.draggable),u=n.ref(e.itemClass),f=n.ref(e.selection.multiSelect??!1),c=n.ref(e.selection.multiSelectMode),{isDragging:p}=i,{activeIndex:C,focusedItemId:g,hoverIndex:x}=a,{clearSelection:S,getSelectedItems:b,toggleSelectItem:h}=r,y=n.ref(b());function _(T,I){const O={"f-listview-item":!0,"f-list-view-group-item":!0,"f-list-view-draggable-item":d.value,"f-un-click":!T.checked,"f-un-select":!!T.raw[s.value],"f-listview-active":y.value.findIndex(B=>B[l.value]===T.raw[l.value])>-1,"f-listview-item-active":y.value.findIndex(B=>B[l.value]===T.raw[l.value])>-1,"f-listview-hover":!p.value&&I===x.value,"f-listview-item-hover":!p.value&&I===x.value,moving:!!T.moving};return u.value.split(" ").reduce((B,P)=>(B[P]=!0,B),O),O}function w(T,I){return T.raw[l.value]||""}const F=n.computed(()=>!f.value);function V(T,I,O){T.checked=O,!T.raw[s.value]&&(F.value&&(g.value=T.raw[l.value]),h(T))}const v=n.computed(()=>f.value&&c.value==="OnCheckClearByClick"),m=n.computed(()=>!f.value||f.value&&(c.value==="OnCheckAndClick"||c.value==="OnClick"));function N(T,I,O){if(I.raw[s.value]){T.preventDefault(),T.stopPropagation();return}g.value=I.raw[l.value],C.value=O,v.value&&S(),m.value&&(h(I),y.value=b()),t.emit("clickItem",{data:y.value,index:O}),t.emit("activeChange",y.value)}return{getKey:w,listViewItemClass:_,onCheckItem:V,onClickItem:N}}function jl(e,t,o,i,a,r,l){const s=n.ref(e.view),d=n.ref(e.view==="CardView"),u=n.ref({}),f=n.ref("暂无数据"),c=Bl(),p=Ol(e,t,i,c),C=Pl(e,t,i),g=$l(e,t,o,p,c,r),x=n.computed(()=>({"f-list-view-group":!0,"d-flex":d.value,"flex-wrap":d.value})),S=n.computed(()=>!!o.value&&o.value.length>0),b=n.computed(()=>o.value.length===0);n.computed(()=>b.value&&!t.slots.empty);function h(){return s.value==="SingleView"?Xn:s.value==="DraggableView"?Il:(s.value==="ContentView"||s.value==="CardView")&&t.slots.content?Tl:Xn}const y=h(),{renderItem:_}=y(e,t,o,p,a,c,g,r,C,l),{renderItem:w}=Ml(e,t,o,p,a,c,g,r,C,l),F=[_,w];function V(){return o.value.filter(N=>N.visible!==!1).map((N,T)=>F[N.type](N,T,u))}function v(){return n.createVNode("div",{class:"f-list-view-emptydata"},[n.createVNode("p",{class:"f-empty-title"},[t.slots.empty?t.slots.empty():f.value])])}function m(){return n.createVNode("ul",{class:x.value,style:"list-style: none;"},[S.value&&V(),b.value&&v()])}return{renderListArea:m}}function El(e,t,o){function i(){return t.slots.header&&n.createVNode("div",{class:"f-list-view-header"},[t.slots.header()])}return{renderHeader:i}}function Yn(e,t,o){const i=n.ref(e.headerClass),a=n.ref(e.placeholder),r=n.ref(""),l=n.computed(()=>!r.value),s=n.computed(()=>!!r.value);function d(p){r.value=""}n.watch(r,p=>{e.enableHighlightSearch&&o.search(p),t.emit("afterSearch",p)});const u=n.computed(()=>{const p={"form-group":!0,"farris-form-group":!0};return i.value&&i.value.split(" ").reduce((g,x)=>(g[x]=!0,g),p),p});function f(p){}function c(){return n.createVNode("div",{class:"f-list-view-header",onClick:n.withModifiers(()=>f,["prevent","stop"])},[n.createVNode("div",{class:u.value},[n.createVNode("div",{class:"farris-input-wrap"},[n.createVNode("div",{class:"f-cmp-inputgroup"},[n.createVNode("div",{class:"input-group f-state-editable"},[n.withDirectives(n.createVNode("input",{class:"form-control f-utils-fill text-left","onUpdate:modelValue":p=>r.value=p,name:"input-group-value",type:"text",placeholder:a.value,autocomplete:"off"},null),[[n.vModelText,r.value]]),n.createVNode("div",{class:"input-group-append"},[s.value&&n.createVNode("span",{class:"input-group-text input-group-clear",onClick:p=>d()},[n.createVNode("i",{class:"f-icon f-icon-close-circle"},null)]),l.value&&n.createVNode("span",{class:"input-group-text"},[n.createVNode("span",{class:"f-icon f-icon-search"},null)])])])])])])])}return{renderHeader:c}}const Jn=n.defineComponent({name:"FListView",props:Kn,emits:["afterSearch","checkValuesChange","clickItem","selectionChange","removeItem","change","activeChange"],setup(e,t){const o=n.ref(),i=n.ref(!0),a=n.ref(!1),r=n.ref([]),l=0,s=n.ref(e.columns),d=L.useIdentify(e),u=L.useHierarchy(e),f=L.useGroupData(e,d),c=L.usePagination(e),p=L.useDataView(e,new Map,u,d,c),C=L.useSelection(e,p,d,r,t),g=kl(e,o),x=n.computed(()=>p.dataView.value.length),S=L.useEdit(e,t,d),b=L.useVisualDataBound(),h=L.useVisualDataCell(e,{},b),y=L.useVisualDataRow(e,S,u,d,b,h),_=L.useVisualGroupRow(e,d,h,y),w=L.useVisualSummaryRow(e,d,h,y),F=L.useVisualData(e,s,p,x,l,y,_,w),{getVisualData:V}=F;r.value=V(0,x.value+l-1);const v=n.computed(()=>{const M={"f-list-view":!0,"f-list-view-multiple":e.multiSelect};return e.size!=="default"&&(M[`${e.size}-item`]=!0),M}),m=n.computed(()=>!!t.slots.footer||i.value);function N(){return e.header==="SearchBar"?Yn:e.header==="ContentHeader"?El:Yn}const T=N(),{renderHeader:I}=T(e,t,g),{renderListArea:O}=jl(e,t,r,p,f,C,F);function k(M){g.search(M)}function B(M){M&&(p.load(M),r.value=V(0,x.value+l-1))}t.expose({search:k,updateDataSource:B});function P(M){e.multiSelect&&(M.preventDefault(),M.stopPropagation())}return()=>n.createVNode("div",{class:v.value,onClick:P},[I(),n.createVNode("div",{ref:o,class:"f-list-view-content",onMouseover:()=>{a.value=!0},onMouseleave:()=>{a.value=!1}},[O()]),m.value&&n.createVNode("div",{class:"f-list-view-footer"},[t.slots.footer&&t.slots.footer()])])}}),Rl=n.defineComponent({name:"FTransfer",props:Un,emits:["change","activeChange"],setup(e,t){const o=n.ref(e.identifyField),i=n.ref("已选:"),a=n.ref("项数据"),r=n.ref(e.displayType),l=n.ref(!1),s=n.ref(e.dataSource),d=n.ref(e.selections||[]),u=n.computed(()=>d.value.map(m=>m[o.value])),f=new Map,c=n.ref();function p(){const m=new Map,N=e.selectionValues||[];N.length&&N.reduce((I,O)=>(I.set(O,!0),I),m);const T=e.selections||[];T.length&&(m.clear(),T.reduce((I,O)=>(I.set(O[o.value],!0),I),m)),d.value.length||(d.value=s.value.filter(I=>m.has(I[o.value])).map(I=>Object.assign({},I))),s.value.forEach(I=>{const O=I[o.value],k=m.has(O);I.checked=k,k&&f.set(O,I)})}p();const C=n.computed(()=>r.value==="List"),g=n.computed(()=>r.value==="Tree");function x(m){d.value=m.map(N=>Object.assign({},N)),t.emit("change",d.value)}function S(){return n.createVNode(Jn,{class:"f-utils-fill",data:s.value,multiSelect:!0,selection:{enableSelectRow:!0,multiSelect:!0,multiSelectMode:"OnCheckAndClick",showCheckbox:!0,showSelectAll:!1,showSelection:!0},draggable:!1,header:"Search",headerClass:"transfer-search-box","selection-values":u.value,onSelectionChange:x},{default:()=>[n.createTextVNode(" ")]})}function b(){return n.createVNode(n.Fragment,null,null)}function h(){return n.createVNode("div",{class:"f-utils-fill option-pane d-flex flex-column"},[n.createVNode("div",{class:"f-utils-flex-column option-pane-content f-utils-fill"},[n.createVNode("div",{class:"container columns-box d-flex f-utils-fill"},[C.value&&S(),g.value&&b()])])])}function y(m){const N=m[o.value];if(N!==null||N!==void 0){d.value=d.value.filter(I=>I[o.value]!==N);const T=f.get(N);T&&(T.checked=!1,f.delete(N)),t.emit("change",d.value)}}n.watch(d,m=>{c.value.updateDataSource(m)});function _(m){const N=new Map;d.value.reduce((T,I)=>(T.set(I[o.value],I),T),N),d.value=m.map(T=>N.get(T[o.value])),t.emit("change",d.value)}function w(m){t.emit("activeChange",m)}function F(){return n.createVNode(Jn,{ref:c,style:"flex:1",data:d.value,draggable:!0,view:"DraggableView","keep-order":!0,onChange:_,onRemoveItem:y,onActiveChange:w},null)}function V(){return n.createVNode("div",{class:"f-utils-fill selection-pane d-flex flex-column"},[n.createVNode("div",{class:"f-utils-flex-column selection-pane-content f-utils-fill"},[n.createVNode("div",{class:"selection-pane-title"},[n.createVNode("span",{class:"selection-title"},[i.value]),n.createVNode("span",{class:"selection-count"},[d.value&&d.value.length]),n.createVNode("span",{class:"selection-item-title"},[a.value])]),n.createVNode("div",{class:"container columns-box f-utils-fill d-flex"},[F()])])])}const v=n.computed(()=>({transfer:!0,row:!0,"f-utils-fill":l.value}));return()=>n.createVNode("div",{class:v.value,style:"height:480px"},[h(),V()])}}),Dl=n.defineComponent({name:"FGridFieldEditor",props:zn,emits:["change"],setup(e,t){const o=n.ref(e.viewModelId),i=n.inject("designViewModelUtils"),a=n.inject("useFormSchema"),r=n.inject("controlCreatorUtils"),l=n.ref(e.modelValue);let s=e.gridData.columns;const d=n.ref([]),u=n.ref([]);let f=[];function c(){if(d.value=[],!s||s.length===0)return[];s.forEach(h=>{if(h.binding&&h.binding.field){const y=f.find(_=>_.data.id===h.binding.field);y?d.value.push(Object.assign({},y.data)):d.value.push({id:h.binding.field,name:h.caption,bindingField:null,isInValidBinding:!0,inValidTip:"绑定字段不存在,请手动移除列"})}})}function p(h,y=[]){return h&&h.forEach(_=>{y.push(_),_.children&&p(_.children,y)}),y}function C(){u.value=i.getAllFields2TreeByVMId(o.value),f=p(u.value)}function g(){const h=i.getDgViewModel(o.value),y=[],_=[];d.value.forEach(F=>{delete F.inValidTip,delete F.isInValidBinding;const V=s==null?void 0:s.find(v=>{if(v.binding&&v.binding.field)return v.binding.field===F.id});if(V)y.push(V);else{const v=u.value.find(N=>N.id===F.id),m=r.setGridFieldProperty(e.gridType,v.data,null,!0);h.addField(F),y.push(m)}_.push(F.id)});const w=h.fields.filter(F=>!_.includes(F.id));if(w&&w.length>0){const F=w.map(V=>V.id);if(h.removeField(F),a.getExpressions()&&a.getExpressions().length&&F.length){const V=a.getExpressions().filter(v=>!F.includes(v.fieldId));a.setExpressions(V)}}l.value=`共 ${y.length} 项`,t.emit("change",y)}const x={fitContent:!1,width:900,height:600,title:"列编辑器",acceptCallback:()=>{g()},rejectCallback:()=>{}};function S(h){d.value=h?[...h]:[]}function b(){return e.getLatestGridData&&(e.gridData=e.getLatestGridData(),C()),s=e.gridData.columns,c(),Promise.resolve(!0)}return n.onMounted(()=>{C()}),()=>n.createVNode(yl,{"button-behavior":"Modal","modal-options":x,modelValue:l.value,"onUpdate:modelValue":h=>l.value=h,editable:!1,beforeOpen:b},{default:()=>[n.createVNode("div",{class:"f-utils-absolute-all"},[n.createVNode(Rl,{selections:d.value,"data-source":u.value,class:"mx-2",onChange:h=>S(h)},null)])]})}}),Al={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/data-grid-column.schema.json",title:"data-grid-column",description:"A Farris data-grid-column Component",type:"object",properties:{id:{description:"The unique identifier for a data-grid-column",type:"string",default:"col"},type:{description:"The type string of data-grid-column component",type:"string",default:"data-grid-column"},allowGrouping:{description:"",type:"boolean",default:!0},colspan:{description:"",type:"number"},dataType:{type:"string"},editor:{description:"",type:"obejct",default:{}},field:{description:"",type:"string"},filterable:{description:"",type:"boolean",default:!0},fixed:{description:"",type:"string",enum:["left","right"]},halign:{description:"",type:"enum",default:"left",enum:["left","center","right"]},title:{description:"",type:"string"},readonly:{description:"",type:"boolean",default:!0},resizable:{description:"",type:"boolean",default:!0},rowspan:{description:"",type:"number"},showTips:{description:"",type:"boolean",default:!0},sort:{description:"",type:"string",default:"none",enum:["asc","desc","none"]},sortable:{description:"",type:"boolean",default:!0},sortOrder:{description:"",type:"number"},tipMode:{description:"",type:"string",enum:["allways","auto"]},valign:{description:"",type:"enum",default:"middle",enum:["top","middle","bottom"]},visible:{description:"",type:"boolean",default:!0},width:{description:"",type:"number",default:120}}},Hl={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/data-grid-column.schema.json",title:"tree-grid-column",description:"A Farris data-grid-column Component",type:"object",properties:{id:{description:"The unique identifier for a data-grid-column",type:"string"},type:{description:"The type string of data-grid-column component",type:"string",default:"tree-grid-column"},allowGrouping:{description:"",type:"boolean",default:!0},colspan:{description:"",type:"number"},dataType:{type:"string"},editor:{description:"",type:"obejct"},field:{description:"",type:"string"},filterable:{description:"",type:"boolean",default:!0},fixed:{description:"",type:"string",enum:["left","right"]},halign:{description:"",type:"enum",default:"left",enum:["left","center","right"]},title:{description:"",type:"string"},readonly:{description:"",type:"boolean",default:!0},resizable:{description:"",type:"boolean",default:!0},rowspan:{description:"",type:"number"},showTips:{description:"",type:"boolean",default:!0},sort:{description:"",type:"string",enum:["asc","desc","none"]},sortable:{description:"",type:"boolean",default:!0},sortOrder:{description:"",type:"number"},tipMode:{description:"",type:"string",enum:["allways","auto"]},valign:{description:"",type:"enum",default:"middle",enum:["top","middle","bottom"]},visible:{description:"",type:"boolean",default:!0},width:{description:"",type:"number"}}},Ot={id:{type:String,default:""},type:{type:String,default:""},allowGrouping:{type:Boolean,default:!0},colspan:{type:Number,default:1},dataType:{type:String,default:""},parentId:{type:String,default:""},editor:{type:Object},field:{type:String,default:""},filterable:{type:Boolean,default:!0},fixed:{type:String,default:""},halign:{type:String,default:"left"},title:{type:String,default:""},readonly:{type:Boolean,default:!0},resizable:{type:Boolean,default:!0},rowspan:{type:Boolean,default:!0},showTips:{type:Boolean,default:!0},sort:{type:String,default:"none"},sortable:{type:Boolean,default:!0},sortOrder:{type:Number},tipMode:{type:String,default:"auto"},valign:{type:String,default:"middle"},visible:{type:Boolean,default:!0},width:{type:Number},actualWidth:{type:Number},align:{type:String,default:""},left:{type:Number},sorter:{type:Function,default:()=>{}},origianlColSpan:{type:Number},index:{type:Number},isMultilingualField:{type:Boolean,default:!1},commands:{type:Array,default:[]},filter:{type:String,default:""},showSetting:{type:Boolean,default:!0},formatter:{type:Function,default:()=>{}},componentId:{type:String,default:""}},Gl=Ae(Ot,Al,qt,Xt),Ll=Ae(Ot,Hl,qt,Xt);class Wl extends He{constructor(t,o){super(t,o)}getEditorProperties(t){return{description:"编辑器",title:"编辑器",type:"avatar",$converter:"/converter/property-editor.converter",properties:{readonly:{description:"",title:"只读",type:"boolean"},avatarWidth:{description:"",title:"头像宽度",type:"number"},avatarHeight:{description:"",title:"头像高度",type:"number"},cover:{description:"",title:"封面",type:"string"}}}}}class ql extends He{constructor(t,o){super(t,o)}getEditorProperties(t){const o=this.getComponentConfig(t,{type:"check-group"},{placeholder:{visible:!1},disabled:{visible:!1},textField:{description:"",title:"文本字段",type:"string"},valueField:{description:"",title:"值字段",type:"string"},data:{description:"",title:"数据",type:"array",editor:{columns:[{field:t.editor.valueField,title:"值",dataType:"string"},{field:t.editor.textField,title:"名称",dataType:"string"},{field:"disabled",title:"禁用",visible:!1,dataType:"boolean",editor:{type:"switch"}}],type:"item-collection-editor",valueField:t.editor.valueField,nameField:t.editor.textField,requiredFields:[t.editor.valueField,t.editor.textField],uniqueFields:[t.editor.valueField,t.editor.textField]},refreshPanelAfterChanged:!0}});return o.setPropertyRelates=function(i){if(i)switch(i.propertyID){case"data":{i.propertyValue.parameters&&(t.editor.valueField=i.propertyValue.parameters.valueField,t.editor.textField=i.propertyValue.parameters.nameField),t.editor.data=i.propertyValue.value;break}}},o}}class zl extends He{constructor(t,o){super(t,o)}getEditorProperties(t){return this.getComponentConfig(t,{type:"check-group"},{placeholder:{visible:!1},disabled:{visible:!1},text:{description:"",title:"显示文本",type:"string"},value:{description:"",title:"选中值",type:"string"}})}}class Ul extends He{constructor(t,o){super(t,o)}getEditorProperties(t){const o=this.getComponentConfig(t,{type:"combo-list"},{editable:{description:"",title:"允许编辑",type:"boolean"},enableClear:{description:"",title:"启用清空",type:"boolean"},textField:{visible:!1,description:"",title:"数据源显示字段",type:"string"},valueField:{visible:!1,description:"",title:"数据源值字段",type:"string"},idField:{visible:!1,description:"",title:"数据源标识字段",type:"string"},data:{description:"",title:"数据",type:"array",editor:{columns:[{field:t.editor.valueField,title:"值",dataType:"string"},{field:t.editor.textField,title:"名称",dataType:"string"},{field:"disabled",title:"禁用",visible:!1,dataType:"boolean",editor:{type:"switch"}}],type:"item-collection-editor",valueField:t.editor.valueField,nameField:t.editor.textField,requiredFields:[t.editor.valueField,t.editor.textField],uniqueFields:[t.editor.valueField,t.editor.textField]},refreshPanelAfterChanged:!0}});return o.setPropertyRelates=function(i){if(i)switch(i.propertyID){case"data":{i.propertyValue.parameters&&(t.editor.valueField=i.propertyValue.parameters.valueField,t.editor.textField=i.propertyValue.parameters.nameField),t.editor.data=i.propertyValue.value;break}}},o}}class Kl extends He{constructor(t,o){super(t,o)}getEditorProperties(t){return this.getComponentConfig(t,{type:"textarea"},{rows:{description:"",title:"文本区域可见的行数",type:"number"},showCount:{description:"",title:"展示输入文本数量",type:"boolean"}})}}class Xl extends He{constructor(t,o){super(t,o)}getEditorProperties(t){return this.getComponentConfig(t,{type:"date-picker"},{displayFormat:{description:"",title:"展示格式",type:"enum",editor:{data:[{name:"yyyy-MM-dd",id:"yyyy-MM-dd"},{name:"yyyy/MM/dd",id:"yyyy/MM/dd"},{name:"yyyyMMdd",id:"yyyyMMdd"},{name:"MM/dd/yyyy",id:"MM/dd/yyyy"},{name:"yyyy年MM月dd日",id:"yyyy年MM月dd日"}]}},valueFormat:{description:"",title:"存储格式",type:"enum",editor:{data:[{name:"yyyy-MM-dd",id:"yyyy-MM-dd"},{name:"yyyy/MM/dd",id:"yyyy/MM/dd"},{name:"yyyyMMdd",id:"yyyyMMdd"},{name:"MM/dd/yyyy",id:"MM/dd/yyyy"},{name:"yyyy年MM月dd日",id:"yyyy年MM月dd日"}]}},maxYear:{description:"",title:"最大年限",type:"number",editor:{canNull:!0}},minYear:{description:"",title:"最小年限",type:"number",editor:{canNull:!0}}})}}const Yl={$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},data:{description:"",type:"array",default:[]},idField:{description:"",type:"string",default:"id"},columns:{description:"",type:"array",default:[]},title:{description:"",type:"string",default:"字段选择器"},modalWidth:{description:"",type:"number",default:800},modalHeight:{description:"",type:"number",default:600},multiSelect:{description:"",type:"boolean",default:!1},separator:{description:"",type:"string",default:","},bindingData:{description:"",type:"array",default:[]},textField:{description:"",type:"string",default:"code"},beforeOpenDialog:{description:"",type:"object",default:null},editorParams:{description:"",type:"object",default:null},onSubmitModal:{description:"",type:"object",default:null},onFieldSelected:{description:"",type:"object",default:null},repositoryToken:{description:"",type:"object",default:null}}},Jl=[{field:"code",title:"绑定字段"},{field:"name",title:"名称"},{field:"fieldType",title:"字段类型"}],Pt=Symbol("Field_Selector Component Repository Service Token");Ae({disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},modelValue:{type:[String,Array],default:null},data:{type:Array,default:[]},idField:{type:String,default:"id"},columns:{type:Array,default:Jl},title:{type:String,default:"字段选择器"},modalWidth:{type:Number,default:800},modalHeight:{type:Number,default:600},multiSelect:{type:Boolean,default:!1},separator:{type:String,default:","},bindingData:{type:Array,default:[]},textField:{type:String,default:"code"},beforeOpenDialog:{type:Function,default:null},editorParams:{type:Object,default:null},onSubmitModal:{type:Function,default:null},onFieldSelected:{type:Function,default:null},repositoryToken:{type:Symbol,default:null}},Yl);const Qn=new Map([["appearance",Ye],["column","columnOption"]]);function Ql(e,t,o){var c;const i=o.parentComponentInstance,a=i.schema.type,r=String(((c=i.schema.appearance)==null?void 0:c.class)||"").split(" "),l=a==="section"||a==="tab-page",s=r.includes("f-page-content-nav"),d=r.includes("f-page-main"),u=e.getSchemaByType("component");u.id=`${t.id}-component`,u.componentType="data-grid";let f="";return f+=l?"f-struct-data-grid-in-card f-struct-is-subgrid":"",f+=s?"f-struct-data-grid-in-nav f-struct-wrapper f-utils-fill-flex-column":"",f+=d?"f-struct-data-grid f-struct-wrapper":"",u.appearance={class:f},u.contents=[t],u}function Zl(e,t,o){const i=o.parentComponentInstance,a=String(i.schema.appearance.class||"").split(" "),r=a.includes("f-page-content-nav"),l=a.includes("f-page-main"),s=e.getSchemaByType("section");s.id=`${t.id}-section`;let d="";return d+=r?"f-section-in-nav ":"",d+=l?"f-section-in-managelist ":"",d+="f-section-grid",s.appearance={class:d},s.contents=[t],s}function es(e,t,o){const i=e.getSchemaByType("content-container");return i.id=`${t.id}-layout`,i.appearance={class:"f-grid-is-sub f-utils-flex-column"},i.contents=[t],i}function Zn(e,t,o){const a=o.parentComponentInstance.schema.type,r=a==="section"||a==="tab-page";t.appearance={class:"f-component-grid"};const s=(r?es:Zl)(e,t,o);return Ql(e,s,o)}const eo={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/tree-grid.schema.json",title:"tree-grid",description:"A Farris Data Grid 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:"tree-grid"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},fit:{type:"boolean",default:!1},showStripe:{type:"boolean",default:!0},showBorder:{type:"boolean",default:!1},showTreeNodeIcons:{type:"boolean",default:!1},showSetting:{type:"boolean",default:!1},size:{description:"",type:"object",properties:{width:{type:"number"},height:{type:"number"}},default:null},dataSource:{description:"",type:"string",default:""},columns:{description:"",type:"array",default:[]},identifyField:{description:"",type:"string"},editable:{description:"",type:"boolean",default:!1},disable:{description:"",type:"boolean",default:!1},visible:{description:"",type:"boolean",default:!0},cell:{type:"object",properties:{highlightFocusingCell:{description:"",type:"boolean",default:!1},mergeCell:{description:"",type:"boolean",default:!1},showEditableIcon:{description:"",type:"boolean",default:!1}}},column:{type:"object",properties:{fitColumns:{description:"",type:"boolean",default:!1},fitMode:{description:"",type:"string",default:"average"},groups:{description:"",type:"array",default:[]},reorderColumn:{description:"Enable to drag column to reorder",type:"boolean",default:!1},resizeColumn:{type:"boolean",default:!0},resizeColumnOnDoubleClick:{description:"",type:"boolean",default:!0}}},command:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},commands:{type:"array",default:[]},commandColumnWidth:{description:"",type:"number",default:120},onClickDeleteCommand:{description:"",type:"string",default:""},onClickEditCommand:{description:"",type:"string",default:""}}},contextMenu:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1}}},customizaiton:{type:"object",properties:{enableScheme:{description:"",type:"boolean",default:!1},enableSetting:{description:"",type:"boolean",default:!1}}},edit:{type:"obejct",properties:{mode:{description:"",type:"string",default:"cell",enum:["cell","row","card"]},selectOnEditing:{description:"",type:"boolean",default:!1},onAppendRow:{description:"",type:"string",default:""},onBeforeEdit:{description:"",type:"string",default:""}}},filter:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},filterStyle:{description:"",type:"string",default:"filter-column",enum:["filter-column","filter-row"]},mode:{description:"",type:"string",default:"server",enum:["client","server"]},showSummary:{description:"",type:"boolean",default:!0},onFilterChange:{description:"",type:"string",default:""}}},footer:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},customFooterStyle:{description:"",type:"object"},footerDataCommand:{description:"",type:"string",default:""},footerDataFrom:{description:"",type:"string",default:"client"},footerHeight:{description:"",type:"number",default:29},footerPosition:{description:"",type:"string",default:"bottom"},footerTemplate:{description:"",type:"string",default:""}}},group:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1},customGroupRow:{description:"",type:"object"},customGroupRowStyle:{description:"",type:"obejct"},customSummaryStyle:{description:"",type:"obejct"},groupColSpan:{description:"",type:"number",default:1},groupFields:{description:"",type:"array",default:[]},showGroupedColumn:{description:"",type:"boolean",default:!0},showGroupPanel:{description:"",type:"boolean",default:!1},showSummary:{description:"",type:"boolean",default:!1},summaryPosition:{description:"",type:"string",default:"separate",enum:["separate","merge-to-group"]},disableGroupOnEditing:{description:"",type:"boolean",default:!0},expandGroupRows:{description:"",type:"boolean",default:!0}}},header:{type:"object",properties:{wrapHeadings:{description:"",type:"boolean",default:!1}}},pagination:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},disablePagination:{description:"",type:"string",default:""},contentTemplate:{description:"",type:"string",default:""},index:{description:"",type:"number",default:1},mode:{description:"",type:"string",default:"server",enum:["server","client"]},showGoto:{description:"",type:"boolean",default:!1},showIndex:{description:"",type:"boolean",default:!0},showLimits:{description:"",type:"boolean",default:!1},showPageInfo:{description:"",type:"boolean",default:!0},size:{description:"",type:"number",default:20},sizeLimits:{description:"",type:"array",default:[10,20,30,50,100]},onPageChange:{description:"",type:"string",default:""},onPageSizeChange:{description:"",type:"string",default:""}}},row:{type:"object",properties:{customRowStyle:{description:"",type:"object"},disable:{description:"",type:"obejct"},height:{description:"",type:"number",default:30},showHovering:{type:"boolean",default:!0},wrapContent:{type:"boolean",default:!1}}},rowNumber:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1},heading:{description:"",type:"string",default:"序号"},width:{description:"",type:"number",default:36},onClickRow:{description:"",type:"string",default:""},onDoubleClickRow:{description:"",type:"string",default:""}}},selection:{type:"object",properties:{enableSelectRow:{description:"允许选中行",type:"boolean",default:!0},enable:{description:"",type:"boolean",default:!0},checkOnSelect:{description:"",type:"boolean",default:!1},clearSelectionOnEmpty:{description:"",type:"boolean",default:!0},customSelectionItem:{description:"",type:"object"},focusSelection:{description:"",type:"string",default:"current",enum:["current","all"]},keepSelectingOnClick:{description:"",type:"boolean",default:!0},keepSelectingOnPaging:{description:"",type:"boolean",default:!0},multiSelect:{description:"",type:"boolean",default:!1},selectionMode:{description:"",type:"string",default:"default"},selectOnCheck:{description:"",type:"boolean",default:!1},selectOnEditing:{description:"",type:"boolean",default:!1},showCheckbox:{description:"",type:"boolean",default:!1},showCheckAll:{description:"",type:"boolean",default:!1},showSelection:{description:"",type:"boolean",default:!1},onBeforeSelect:{description:"",type:"string",default:""},onBeforeUnCheck:{description:"",type:"",default:""},onBeforeUnSelect:{description:"",type:"string",default:""},onCheckAll:{description:"",type:"string",default:""},onChecked:{description:"",type:"string",default:""},onSelectionChange:{description:"",type:"string",default:""},onUnCheckAll:{description:"",type:"string",default:""},onUnChecked:{description:"",type:"string",default:""},onCheckedChange:{description:"",type:"string"}}},sort:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},fields:{description:"",type:"array",default:[]},mode:{description:"",type:"string",default:"client",enum:["client","server"]},multiSort:{description:"",type:"boolean",default:!1}}},summary:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1},customSummaryStyle:{description:"",type:"object"},groupFields:{description:"",type:"array",default:[]},mode:{description:"",type:"string",default:"client",enum:["client","server"]},position:{description:"",type:"boolean",default:"bottom",enum:["bottom","top","both"]}}},toolbar:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1}}},visualization:{autoHeight:{description:"",type:"boolean",default:!1},emptyDataHeight:{description:"",type:"number",default:36},emptyTemplate:{description:"",type:"string",default:""},maxHeight:{description:"",type:"number",default:300},scrollBarShowMode:{description:"",type:"string",default:"auto"},showBorder:{description:"",type:"boolean",default:!1},showScrollArrow:{description:"",type:"boolean",default:!1},striped:{description:"",type:"boolean",default:!0},useBlankWhenDataIsEmpty:{description:"",type:"boolean",default:!1}},onSelectionChange:{description:"行切换事件",type:"string",default:""}},required:["id","type"]},$t={columns:{type:Array,default:[]},displayField:{type:String,default:"name"},showLines:{type:Boolean,default:!1},columnOption:{type:Object},data:{type:Array,default:[]},disabled:{type:Boolean,default:!1},disabledField:{type:String,default:"disabled"},editable:{type:Boolean,default:!1},editOption:{type:Object,default:{selectOnEditing:!1,editMode:"cell"}},fit:{type:Boolean,default:!1},header:{type:Object},height:{type:Number,default:-1},id:{type:String,default:""},idField:{type:String,default:"id",require:!0},loading:{type:Boolean,default:!1},minHeight:{type:Number,default:300},minWidth:{type:Number,default:400},pagination:{type:Object,default:{enable:!1,size:-1}},rowNumber:{type:Object,default:{enable:!0,width:32,heading:"序号"}},rowOption:{type:Object,default:{wrapContent:!1}},selection:{type:Object,default:{enableSelectRow:!0,multiSelect:!1,multiSelectMode:"DependOnCheck",showCheckbox:!1,showSelectAll:!1,showSelection:!0}},selectionValues:{type:Array,default:[]},showBorder:{type:Boolean,default:!1},showOptions:{type:Boolean,default:!1},showScrollBar:{type:String,default:"auto"},showStripe:{type:Boolean,default:!0},showTreeNodeIcons:{type:Boolean,default:!1},treeNodeIconsData:{type:[Object,String],default:{}},width:{type:Number,default:-1},newDataItem:{type:Function,default:()=>{}},commandOption:{type:Object,default:{enable:!1,commands:[]}},hierarchy:{type:Object,default:{cascadeOption:{autoCheckChildren:!1,autoCheckParent:!1,selectionRange:"All"},parentIdField:"parent"}},autoCheckChildren:{type:Boolean,default:!1},showSetting:{type:Boolean,default:!1}},ts=Ae($t,eo,Qn,Zn),ns=vi(),os=gi(),to=Object.assign({},$t,{componentId:{type:String,default:""}}),is=Ae(to,eo,Qn,Zn);function no(e,t,o,i,a,r,l,s,d,u,f,c,p,C,g,x){const{calculateCellPositionInRow:S}=r,{columnContext:b,hasLeftFixedColumn:h,hasRightFixedColumn:y}=l,{gridDataStyle:_,leftFixedGridDataStyle:w,rightFixedGridDataStyle:F}=C,{renderDataRow:V}=Li(e,t,b,x,s,d,u,f,c,p),v=[V];function m(k,B){const P=S(k);return x.value.filter(M=>M.visible!==!1).map(M=>v[M.type](M,P,B,k))}function N(){return n.createVNode("div",{ref:i,class:"fv-grid-content-left-fixed"},[n.createVNode("div",{class:"fv-grid-data",style:w.value},[m(b.value.leftColumns.filter(k=>k.visible),"left")])])}function T(){return n.createVNode("div",{ref:o,class:"fv-grid-content-primary"},[n.createVNode("div",{class:"fv-grid-data",style:_.value},[m(b.value.primaryColumns.filter(k=>k.visible),"primary")])])}function I(){return n.createVNode("div",{ref:a,class:"fv-grid-content-right-fixed"},[n.createVNode("div",{class:"fv-grid-data",style:F.value},[m(b.value.rightColumns.filter(k=>k.visible),"right")])])}function O(){const k=[];return h.value&&k.push(N()),k.push(T()),y.value&&k.push(I()),k}return{renderDataArea:O}}const gt=n.defineComponent({name:"FTreeGrid",props:$t,emits:["selectionChange","clickRow","expandNode"],setup(e,t){var Me;const a=n.ref(),r=n.ref(),l=n.ref(),s=n.ref(),d=n.ref(),u=n.ref([]),f=n.ref(!1),c=n.ref(((Me=e.rowOption)==null?void 0:Me.wrapContent)||!1),{showLoading:p,renderLoading:C}=L.useLoading(e,a),g=L.useIdentify(e),x=L.useGroupData(e,g),S=L.useFilter(),b=L.useHierarchy(e),h=L.usePagination(e),y=L.useDataView(e,new Map,b,g,h),_=L.useSelection(e,y,g,u,t),w=L.useSelectHierarchyItem(e,u,g,_,t),F=n.computed(()=>Math.min(y.dataView.value.length,100)),{containerStyleObject:V}=L.useDataViewContainerStyle(e),v=L.useCommandColumn(e),m=n.ref(e.columns),{applyCommands:N}=v;N(m);const T=L.useColumn(e),I=L.useSort(e),{applyColumnSorter:O,columnContext:k,updateColumnRenderContext:B}=T;O(y,I);const P=L.useGroupColumn(e,k),M=L.useEdit(e,t,g),$=L.useVisualDataBound(),R=L.useVisualDataCell(e,M,$),E=L.useVisualDataRow(e,M,b,g,$,R),A=L.useVisualData(e,m,y,F,0,E),{getVisualData:K}=A,oe=L.useCellPosition(e,k),pe=L.useSidebar(e,_),{sidebarWidth:Ve}=pe;u.value=K(0,F.value+0-1);const me=L.useVirtualScroll(e,y,u,k,A,F,0,Ve),{onWheel:Se,dataGridWidth:xe,viewPortHeight:de,viewPortWidth:ue,resetScroll:ye}=me,W=L.useFitColumn(e,k,r,ue,P),{calculateColumnsSize:z}=W,ce=L.useFilterHistory(),we=L.useColumnFilter(r,d,y,ce,me),ae=L.useRow(e,t,_,g),ie=L.useDragColumn(e,t,T,y,P,x,me),he=n.computed(()=>({"fv-grid":!0,"fv-grid-bordered":e.showBorder,"fv-datagrid-strip":e.showStripe})),ge=n.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":f.value,"fv-grid-wrap-content":c.value})),{renderDataArea:ve}=no(e,t,l,s,d,oe,T,y,M,b,ae,_,w,me,A,u),{renderGridHeader:j,renderGridColumnResizeOverlay:X}=L.getColumnHeader(e,r,s,d,T,y,ie,we,S,ce,W,P,_,pe,I,me,ue,u),{renderDataGridSidebar:re}=L.getSidebar(e,ae,_,pe,me),{renderDisableMask:q}=L.getDisableMask(),{renderHorizontalScrollbar:_e}=L.getHorizontalScrollbar(e,r,me),{renderVerticalScrollbar:U}=L.getVerticalScrollbar(e,r,me);function ne(){var se,$e;de.value=((se=l.value)==null?void 0:se.clientHeight)||0,xe.value=(($e=r.value)==null?void 0:$e.clientWidth)||0,z()}n.onMounted(()=>{r.value&&(dt.useResizeObserver(r.value,ne),z(),n.nextTick(()=>{r.value&&(xe.value=r.value.clientWidth),l.value&&(ue.value=l.value.clientWidth,de.value=l.value.clientHeight)})),p.value&&C()}),n.onUnmounted(()=>{}),n.watch(ue,()=>{r.value&&z()});function fe(){const se=_.getSelectionRow();return se?se.dataIndex-1:-1}function Ne(){const se=fe();y.insertNewDataItem(se),u.value=K(0,F.value+0-1)}function Be(){const se=fe();y.insertNewChildDataItem(se),u.value=K(0,F.value+0-1)}function Re(){const se=fe(),$e=w.getNextSelectableHierarchyItemId(se);y.removeHierarchyDataItem(se),u.value=K(0,F.value+0-1),$e&&_.selectItemById($e)}function Le(se){M.onEditingRow(se)}function We(se){M.acceptEditingRow(se)}function Ze(se){M.cancelEditingRow(se)}function et(se){se&&(m.value=se,N(m),B(m.value),O(y,I),z())}function tt(se){se&&(ye(),y.load(se),u.value=K(0,F.value+0-1))}function Ke(se){_.selectItemById(se)}function G(){return _.getSelectedItems()}function te(){_.clearSelection()}const le=n.computed(()=>!u.value||!u.value.length),{renderEmpty:Ie}=L.getEmpty(t);return t.expose({addNewDataItem:Ne,addNewChildDataItem:Be,removeDataItem:Re,editDataItem:Le,acceptDataItem:We,cancelDataItem:Ze,updateColumns:et,updateDataSource:tt,selectItemById:Ke,getSelectedItems:G,clearSelection:te}),()=>n.createVNode("div",{ref:a,class:he.value,style:V.value,onWheel:Se},[j(),le.value&&Ie(),n.createVNode("div",{ref:r,class:ge.value,onMouseover:()=>{f.value=!0},onMouseleave:()=>{f.value=!1}},[re(u),ve(),_e(),U()]),X(),e.disabled&&q()])}});class rs extends ft{constructor(t,o){super(t,o)}getPropertyConfig(t){return this.getBasicPropConfig(t),this.getAppearanceProperties(t),this.getEventPropConfig(t),this.propertyConfig}getBasicPropConfig(t){this.propertyConfig.categories.basic={description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",editor:{type:"combo-list",textField:"value",valueField:"key",data:[{key:"tree-grid",value:ee["tree-grid"].name}]}}}}}getAppearanceProperties(t){var o,i,a;this.propertyConfig.categories.appearance={title:"外观",properties:{columns:{title:"列设置",description:"列设置",$converter:"/converter/items-count.converter",editor:{type:"grid-field-editor",viewModelId:this.viewModelId,gridData:t,gridType:"tree-grid-column"},refreshPanelAfterChanged:!0},fit:{title:"适配父组件尺寸",type:"boolean",description:"是否适配父组件尺寸"},showStripe:{title:"显示条纹",type:"boolean",description:"是否显示条纹"},showBorder:{title:"显示边框",type:"boolean",description:"是否显示边框"},showTreeNodeIcons:{title:"显示图标",type:"boolean",description:"是否显示图标"},showSetting:{title:"显示设置按钮",type:"boolean",description:"是否显示设置按钮"}},setPropertyRelates(r,l){switch(r&&r.propertyID){case"useBlankWhenDataIsEmpty":t.emptyDataHeight=t.useBlankWhenDataIsEmpty?36:240;break;case"fields":t.fields=r.propertyValue||[];break}}},this.propertyConfig.categories.pagination={title:"分页",$converter:"/converter/pagination.converter",properties:{enable:{title:"启用分页",type:"boolean",refreshPanelAfterChanged:!0},mode:{visible:((o=t.pagination)==null?void 0:o.enable)||!1,title:"分页交互模式",type:"enum",editor:{type:"combo-list",textField:"name",valueField:"value",data:[{value:"client",name:"客户端"},{value:"server",name:"服务器端"}]}},showIndex:{visible:((i=t.pagination)==null?void 0:i.enable)||!1,title:"显示页码",type:"boolean"},showLimits:{visible:((a=t.pagination)==null?void 0:a.enable)||!1,title:"显示每页记录数",type:"boolean"}}}}getEventPropConfig(t){const o=[{label:"onSelectionChange",name:"行切换事件"}],i=this,a=i.eventsEditorUtils.formProperties(t,i.viewModelId,o),r={};r[i.viewModelId]={type:"events-editor",editor:{initialData:a}},this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:r,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(l,s){const d=l.propertyValue;delete t[i.viewModelId],d&&(d.setPropertyRelates=this.setPropertyRelates,i.eventsEditorUtils.saveRelatedParameters(t,i.viewModelId,d.events,d)),t.remoteSort=!!t.columnSorted}}}}function as(e,t){const o=e.schema,i=n.ref(!0),a=n.ref(!0);function r(f){return f&&f.sourceType==="control"?f.componentCategory==="input":!1}function l(){return!1}function s(){return!1}function d(){return!0}function u(f){return new rs(f,t).getPropertyConfig(o)}return{canAccepts:r,checkCanDeleteComponent:l,checkCanMoveComponent:s,hideNestedPaddingInDesginerView:d,triggerBelongedComponentToMoveWhenMoved:i,triggerBelongedComponentToDeleteWhenDeleted:a,getPropsConfig:u}}const ls=n.defineComponent({name:"FTreeGridDesign",props:to,emits:[],setup(e,t){var Ne;const o=n.ref(),i=0,a=100,r=n.ref(),l=n.ref(),s=n.ref(),d=n.ref(),u=n.ref([]),f=n.ref(!1),c=n.ref(((Ne=e.rowOption)==null?void 0:Ne.wrapContent)||!1),p=n.inject("designer-host-service"),C=n.inject("design-item-context"),g=as(C,p),x=Ft(o,C,g);x.value.designerClass="f-utils-fill-flex-column";const S=$n(e),b=Tt(e,S),h=kt(),y=Tn(e),_=An(e),w=Nn(e,new Map,y,S,_),F=En(e,w,S,u,t),V=Ta(e,u,S,F,t),v=n.computed(()=>Math.min(w.dataView.value.length,a)),{containerStyleObject:m}=nn(e),N=an(e),T=n.ref(e.columns),{applyCommands:I}=N;I(T);const O=on(e),k=Dn(),{applyColumnSorter:B,columnContext:P,updateColumnRenderContext:M}=O;B(w,k);const $=cn(e,P),R=Pn(e,t,S),E=xt(),A=Bn(e,R,E),K=On(e,R,y,S,E,A),oe=Mn(e,T,w,v,i,K),{getVisualData:pe}=oe,Ve=St(e,P),me=Rn(e,F),{sidebarWidth:Se}=me;u.value=pe(0,v.value+i-1);const xe=In(e,w,u,P,oe,v,i,Se),{onWheel:de,dataGridWidth:ue,viewPortHeight:ye,viewPortWidth:W}=xe,z=sn(e,P,r,W,$),{calculateColumnsSize:ce}=z,we=kn(),ae=rn(r,d,w,we,xe),ie=jn(e,t,F,S),he=ln(e,t,O,w,$,b,xe),ge=n.computed(()=>({"drag-container":!0,"fv-grid":!0,"fv-grid-bordered":e.showBorder,"fv-datagrid-strip":e.showStripe})),ve=n.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":f.value,"fv-grid-wrap-content":c.value})),{renderDataArea:j}=no(e,t,l,s,d,Ve,O,w,R,y,ie,F,V,xe,oe,u),{renderGridHeader:X}=Ln(C,e,r,s,d,O,w,he,ae,h,we,z,$,F,me,k,xe,W,u,"tree-grid-column"),{renderDataGridSidebar:re}=en(e,ie,F,me,xe),{renderHorizontalScrollbar:q}=Zt(e,r,xe),{renderVerticalScrollbar:_e}=tn(e,r,xe);function U(){var Be,Re;ye.value=((Be=l.value)==null?void 0:Be.clientHeight)||0,ue.value=((Re=r.value)==null?void 0:Re.clientWidth)||0,ce()}n.onMounted(()=>{o.value.componentInstance=x,r.value&&(dt.useResizeObserver(r.value,U),ce(),n.nextTick(()=>{r.value&&(ue.value=r.value.clientWidth),l.value&&(W.value=l.value.clientWidth,ye.value=l.value.clientHeight)}))}),n.onUnmounted(()=>{}),n.watch(W,()=>{r.value&&ce()});const ne=n.computed(()=>!u.value||!u.value.length),{renderEmpty:fe}=Ui(t);return t.expose(x.value),()=>n.createVNode("div",{ref:o,dragref:`${C.schema.id}-container`,class:ge.value,style:m.value,onWheel:de},[X(),ne.value&&fe(),n.createVNode("div",{ref:r,class:ve.value,onMouseover:()=>{f.value=!0},onMouseleave:()=>{f.value=!1}},[re(u),j(),q(),_e()])])}});gt.register=(e,t,o,i)=>{e["tree-grid"]=gt,t["tree-grid"]=ts,i["tree-grid"]={bindingResolver:os,selectionItemResolver:ns}},gt.registerDesigner=(e,t,o)=>{e["tree-grid"]=ls,t["tree-grid"]=is},Ee.withInstall(gt);const nt={convertFrom:(e,t)=>t==="multiSelect"?!!e.editor[t]:t==="separator"?e.editor[t]||",":e.editor[t],convertTo:(e,t,o)=>{e.editor[t]=o}},ss={convertFrom:(e,t)=>e[t]==null?!0:e[t],convertTo:(e,t,o)=>{e[t]=o}};function cs(e){let t="form_group_"+Date.now();return e&&(t=e.replaceAll("-","_").replaceAll(".","_")),"lookup."+t}const ds={convertFrom:(e,t)=>{var o;return(o=e.editor[t])==null?void 0:o.displayName},convertTo:(e,t,o)=>{if(o&&o.length>0){const i=o[0],{name:a,id:r,metadataContent:l}=i;e.editor.dataSource||(e.editor.dataSource={}),e.editor.dataSource.displayName=a,e.editor.helpId=r;const{displayType:s,idField:d,textField:u}=l;e.editor.displayType=s,e.editor.dataSource.idField=d,e.editor.textField=u,e.editor.dataSource.type="ViewObject",e.editor.dataSource.uri||(e.editor.dataSource.uri=cs(e.id))}}},us={convertFrom:(e,t)=>{var o;return(o=e.editor.dataSource)==null?void 0:o.idField},convertTo:(e,t,o)=>{if(o&&o.length>0){const i=o[0];e.editor.dataSource.idField=i==null?void 0:i.bindingPath}}},fs={convertFrom:(e,t)=>{var o;return(o=e.editor)==null?void 0:o.textField},convertTo:(e,t,o)=>{if(o&&o.length>0){const i=o[0];e.editor.textField=i==null?void 0:i.bindingPath}}},ps={convertFrom:(e,t)=>e.editor.displayType?e.editor.displayType.toUpperCase():"LIST",convertTo:(e,t,o)=>{e.editor.displayType=o}},ms=Symbol("schema_repository_token");class hs extends He{getPropertyConfig(t,o){const i=this.getBasicProperties(t,o),a=this.getAppearanceConfig(),r=this.getBehaviorConfig(t),l=this.getLookupConfig(t.editor);return{type:"object",categories:{basic:i,appearance:a,behavior:r,lookup:l}}}getBehaviorConfig(t){return{description:"Basic Infomation",title:"行为",properties:{editable:{description:"",title:"允许编辑",type:"boolean",$converter:nt},readonly:{description:"",title:"只读",type:"boolean",$converter:nt},required:{visible:!1,description:"",title:"必填",type:"boolean",$converter:nt},visible:{description:"",title:"可见",type:"boolean",$converter:ss},placeHolder:{visible:!1,description:"",title:"提示文本",type:"string"},tabindex:{visible:!1,description:"",title:"tab索引",type:"number"}}}}getLookupConfig(t){return{description:"Basic Infomation",title:"编辑器",properties:{dataSource:{description:"数据源",title:"数据源",type:"string",refreshPanelAfterChanged:!0,editor:{type:"schema-selector",title:"选择数据源",editorParams:{propertyData:t,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},viewOptions:[{id:"recommend",title:"推荐",type:"List",dataSource:"Recommand",enableGroup:!0,groupField:"category",groupFormatter:(o,i)=>`${o==="local"?"本地元数据":"最近使用"}`},{id:"total",title:"全部",type:"List",dataSource:"Total"}],repositoryToken:ms,onSubmitModal:o=>{if(o){const i=this.formSchemaUtils.getFormMetadataBasicInfo();return this.metadataService.getPickMetadata(i.relativePath,o[0].data).then(a=>JSON.parse(a==null?void 0:a.metadata.content))}}},$converter:ds},displayType:{description:"类型: 树列表、列表、双列表、左树右列表",title:"展示类型",type:"string",$converter:ps,editor:{type:"combo-list",editable:!1,disabled:!0,data:[{text:"列表",value:"LIST"},{text:"树列表",value:"TREELIST"},{text:"双列表",value:"NAVLIST"},{text:"左树右列表",value:"NAVTREELIST"}],textField:"text",idField:"value",valueField:"value"}},idField:{description:"数据源标识字段",title:"标识字段",type:"string",editor:{type:"field-selector",textField:"bindingPath",idField:"bindingPath",editorParams:{propertyData:t,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},columns:[{field:"name",title:"名称"},{field:"code",title:"编号"},{field:"bindingPath",title:"绑定字段"}],repositoryToken:Pt},$converter:us},textField:{description:"显示文本字段",title:"文本字段",type:"string",$converter:fs,editor:{type:"field-selector",textField:"bindingPath",idField:"bindingPath",editorParams:{propertyData:t,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},columns:[{field:"name",title:"名称"},{field:"code",title:"编号"},{field:"bindingPath",title:"绑定字段"}],repositoryToken:Pt}},mappingFields:{description:"字段映射",title:"字段映射",type:"string",$converter:nt,editor:{type:"mapping-editor",modalWidth:800,modalHeight:600,editable:!1,editorParams:{propertyData:t,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},fromData:{editable:!1,formatter:(o,i)=>`${i.raw[o.field]} [${i.raw.bindingPath}]`,idField:"id",textField:"bindingPath",valueField:"bindingPath",repositoryToken:Pt},toData:{idField:"id",textField:"bindingPath",valueField:"bindingPath",dataSource:this.designViewModelUtils.getAllFields2TreeByVMId(this.viewModelId),formatter:(o,i)=>`${i.raw[o.field]} [${i.raw.bindingPath}]`}}},multiSelect:{description:"启用多选",$converter:nt,title:"启用多选",type:"boolean"},separator:{description:"多选分隔符",$converter:nt,title:"多选分隔符",type:"string"}}}}}class gs extends He{constructor(t,o){super(t,o)}getEditorProperties(t){return this.getComponentConfig(t,{type:"number-range"},{editable:{description:"",title:"允许编辑",type:"boolean"}})}}class ys extends He{constructor(t,o){super(t,o)}getEditorProperties(t){return this.getComponentConfig(t,{type:"number-spinner"},{precision:{description:"",title:"精度",type:"number"},step:{description:"",title:"步长",type:"number"},max:{description:"",title:"最大值",type:"number",editor:{canNull:!0}},min:{description:"",title:"最小值",type:"number",editor:{canNull:!0}},textAlign:{description:"",title:"对齐方式",type:"enum",editor:{type:"combo-list",textField:"name",valueField:"value",data:[{value:"left",name:"左对齐"},{value:"center",name:"居中"},{value:"right",name:"右对齐"}]}}})}}class vs extends He{constructor(t,o){super(t,o)}getEditorProperties(t){const o=this.getComponentConfig(t,{type:"radio-group"},{disabled:{visible:!1},placeholder:{visible:!1},horizontal:{description:"",title:"是否横向",type:"boolean"},textField:{visible:!1,description:"",title:"显示文本字段",type:"string"},valueField:{visible:!1,description:"",title:"值字段",type:"string"},data:{description:"",title:"数据",type:"array",editor:{columns:[{field:t.editor.valueField,title:"值",dataType:"string"},{field:t.editor.textField,title:"名称",dataType:"string"},{field:"disabled",title:"禁用",visible:!1,dataType:"boolean",editor:{type:"switch"}}],type:"item-collection-editor",valueField:t.editor.valueField,nameField:t.editor.textField,requiredFields:[t.editor.valueField,t.editor.textField],uniqueFields:[t.editor.valueField,t.editor.textField]},refreshPanelAfterChanged:!0}});return o.setPropertyRelates=function(i){if(i)switch(i.propertyID){case"data":{i.propertyValue.parameters&&(t.editor.valueField=i.propertyValue.parameters.valueField,t.editor.textField=i.propertyValue.parameters.nameField),t.editor.data=i.propertyValue.value;break}}},o}}class bs extends He{constructor(t,o){super(t,o)}getEditorProperties(t){return this.getComponentConfig(t,{type:"switch"},{disabled:{visible:!1},placeholder:{visible:!1},onLabel:{description:"",title:"打开时标签",type:"string"},offLabel:{description:"",title:"关闭时标签",type:"string"},onBackground:{description:"",title:"打开时背景色",type:"string"},offBackground:{description:"",title:"关闭时背景色",type:"string"},size:{description:"",title:"尺寸",type:"enum",editor:{data:[{id:"small",name:"小号"},{id:"middle",name:"中号"},{id:"large",name:"大号"}]}}})}}class Cs extends He{constructor(t,o){super(t,o)}getEditorProperties(t){return this.getComponentConfig(t,{type:"time-picker"},{editable:{description:"",title:"允许编辑",type:"boolean"},format:{description:"",title:"格式",type:"enum",editor:{type:"combo-list",textField:"name",valueField:"value",data:[{value:"HH:mm:ss",name:"HH:mm:ss"}]}},showHeader:{description:"",title:"是否显示头部区域",type:"boolean"},use12Hours:{description:"",title:"是否使用12小时制",type:"boolean"}})}}class ws extends ft{constructor(t,o){super(t,o)}getPropertyConfig(t,o){return this.getBasicPropConfig(t),this.getAppearanceProperties(t),this.getFieldEditorProperties(t,o),this.propertyConfig}getBasicPropConfig(t){this.propertyConfig.categories.basic={description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},title:{description:"标题",title:"标题",type:"string"}}}}getAppearanceProperties(t){this.propertyConfig.categories.appearance={description:"",title:"外观",properties:{halign:{description:"数据水平对齐方式选择",title:"数据水平对齐方式",type:"enum",editor:{data:[{id:"left",name:"左对齐"},{id:"right",name:"居中"},{id:"center",name:"右对齐"}]}},valign:{description:"数据垂直对齐方式选择",title:"数据垂直对齐方式",type:"enum",editor:{data:[{id:"top",name:"顶对齐"},{id:"middle",name:"居中"},{id:"bottom",name:"底对齐"}]}}}}}getFieldEditorProperties(t,o){o.fieldEditable&&t.editor&&this.getFieldEditorProp(t)}getFieldEditorProp(t,o="gridFieldEditor",i=!1){const a=this.formMetadataConverter.getRealEditorType(t.editor.type);let r;switch(a){case"avatar":r=new Wl(this.componentId,this.designerHostService);break;case"check-group":r=new ql(this.componentId,this.designerHostService);break;case"check-box":r=new zl(this.componentId,this.designerHostService);break;case"combo-list":r=new Ul(this.componentId,this.designerHostService);break;case"date-picker":r=new Xl(this.componentId,this.designerHostService);break;case"lookup":r=new hs(this.componentId,this.designerHostService);break;case"number-range":r=new gs(this.componentId,this.designerHostService);break;case"number-spinner":r=new ys(this.componentId,this.designerHostService);break;case"radio-group":r=new vs(this.componentId,this.designerHostService);break;case"switch":r=new bs(this.componentId,this.designerHostService);break;case"textarea":r=new Kl(this.componentId,this.designerHostService);break;case"time-picker":r=new Cs(this.componentId,this.designerHostService);break;default:r=new Lr(this.componentId,this.designerHostService)}this.setDesignViewModelField(t);const l=this;this.propertyConfig.categories[`${o}_editorType`]={description:"",title:"编辑器类型",propertyData:t.editor,tabId:"gridFieldEditor",parentPropertyID:"editor",tabName:"编辑器",properties:{type:{description:"",title:"编辑器类型",type:"enum",$converter:"/converter/change-editor.converter",refreshPanelAfterChanged:!0,editor:{type:"combo-list",textField:"value",valueField:"key",data:ct.getEditorTypesByMDataType(l.designViewModelField.type.name)}}},setPropertyRelates(u,f){if(u)switch(u&&u.propertyID){case"type":{l.changeFieldEditorType(t,u.propertyValue);break}}}};const s=["id","type","class","style","binding","label","responseLayout"],{categories:d}=r.getPropertyConfig(t);Object.keys(d).map(u=>{const f=d[u],c={};if(Object.keys(f.properties).map(p=>{s.findIndex(C=>C===p)===-1&&f.properties[p]!==!1&&(c[p]=f.properties[p])}),Object.keys(c).length!==0){const p=f==null?void 0:f.title,C="gridFieldEditor",g="编辑器",x=f==null?void 0:f.description,S=(f==null?void 0:f.$converter)||"";l.propertyConfig.categories[o+"_"+u]={title:p,tabId:C,tabName:g,description:x,$converter:S,propertyData:t,properties:c}}})}changeFieldEditorType(t,o){const i=this.designViewModelUtils.getDgViewModel(this.viewModelId);i.changeField(this.designViewModelField.id,{editor:{$type:o},name:this.designViewModelField.name,require:this.designViewModelField.require,readonly:this.designViewModelField.readonly},!1);const a=this.formSchemaUtils.getComponentByViewModelId(this.viewModelId),r=this.formSchemaUtils.selectNode(a,f=>f.type===ee["data-grid"].type||f.type===ee["tree-grid"].type);if(!r)return;const l=i.fields.find(f=>f.id===this.designViewModelField.id),s=this.controlCreatorUtils.setGridFieldProperty(o,l,null,!0),d=Object.prototype.hasOwnProperty.call(r,"columns")?r.columns:r.fields,u=d.findIndex(f=>f.id===t.id);u>-1&&d[u].editor&&(d[u].editor=Object.assign(s.editor,{required:d[u].editor.required}))}}function Ss(e,t){const o=e.schema,i=n.ref(!0),a=n.ref(!0);function r(c){return!1}function l(){return!1}function s(){return!1}function d(){return!0}function u(c){}function f(c){var C;return new ws(c,t).getPropertyConfig(o,(C=e==null?void 0:e.parent)==null?void 0:C.schema)}return{canAccepts:r,checkCanDeleteComponent:l,checkCanMoveComponent:s,hideNestedPaddingInDesginerView:d,onAcceptMovedChildElement:u,triggerBelongedComponentToMoveWhenMoved:i,triggerBelongedComponentToDeleteWhenDeleted:a,getPropsConfig:f}}const oo=n.defineComponent({name:"FDataGridColumnDesign",props:Ot,emits:[],setup(e,t){const o=n.ref(),i=n.inject("designer-host-service"),a=n.inject("design-item-context"),r=Ss(a,i),l=Ft(o,a,r);n.onMounted(()=>{o.value.componentInstance=l}),t.expose(l.value);function s(d){var u;(u=a==null?void 0:a.setupContext)==null||u.emit("selectionChange",l.value.schema,a.schema,e.componentId,l.value)}return()=>n.createVNode("span",{class:"fv-column-title",ref:o,onClick:d=>s()},[e.title])}});Ue.install=e=>{e.component(Ue.name,Ue),e.component(Bt.name,Bt)},Ue.register=(e,t,o,i)=>{e["data-grid"]=Ue,t["data-grid"]=Ct,e["grid-field-editor"]=Dl,t["grid-field-editor"]=bl,i["data-grid"]={bindingResolver:Jt,selectionItemResolver:Qt}},Ue.registerDesigner=(e,t,o)=>{e["data-grid"]=Bt,t["data-grid"]=Ct,t["data-grid-column"]=Gl,e["data-grid-column"]=oo,t["tree-grid-column"]=Ll,e["tree-grid-column"]=oo},D.FDataGrid=Ue,D.bindingResolver=Jt,D.columnOptions=Oi,D.dataGridDesignProps=Yt,D.dataGridProps=ut,D.default=Ue,D.editOptions=$i,D.filterOptions=ki,D.groupOptions=Ni,D.headerOptions=Ti,D.loadingOptions=ji,D.paginationOptions=Fi,D.propsResolver=Ct,D.rowNumberOptions=Ii,D.rowOptions=Mi,D.selectionItemResolver=Qt,D.selectionOptions=Pi,D.sortOptions=Vi,D.summaryOptions=Bi,Object.defineProperties(D,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
|
1
|
+
(function(H,n){typeof exports=="object"&&typeof module<"u"?n(exports,require("vue"),require("lodash-es"),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("../pagination/index.umd.js"),require("../dynamic-form/index.umd.js"),require("../combo-list/index.umd.js"),require("../designer-canvas/index.umd.js"),require("../common/index.umd.js"),require("../number-spinner/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("../combo-tree/index.umd.js"),require("../component/index.umd.js"),require("../color-picker/index.umd.js"),require("../content-container/index.umd.js"),require("../date-picker/index.umd.js"),require("../data-grid/index.umd.js"),require("../dropdown/index.umd.js"),require("../events-editor/index.umd.js"),require("../field-selector/index.umd.js"),require("../binding-selector/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("../mapping-editor/index.umd.js"),require("../nav/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("../search-box/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("../tags/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("../weather/index.umd.js"),require("../video/index.umd.js"),require("../textarea/index.umd.js"),require("../schema-selector/index.umd.js"),require("../tree-grid/index.umd.js"),require("../event-parameter/index.umd.js"),require("../external-container/index.umd.js"),require("../dynamic-resolver/index.umd.js"),require("../data-view/index.umd.js"),require("../popover/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es","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","../pagination/index.umd.js","../dynamic-form/index.umd.js","../combo-list/index.umd.js","../designer-canvas/index.umd.js","../common/index.umd.js","../number-spinner/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","../combo-tree/index.umd.js","../component/index.umd.js","../color-picker/index.umd.js","../content-container/index.umd.js","../date-picker/index.umd.js","../data-grid/index.umd.js","../dropdown/index.umd.js","../events-editor/index.umd.js","../field-selector/index.umd.js","../binding-selector/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","../mapping-editor/index.umd.js","../nav/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","../search-box/index.umd.js","../section/index.umd.js","../smoke-detector/index.umd.js","../splitter/index.umd.js","../step/index.umd.js","../switch/index.umd.js","../tags/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","../weather/index.umd.js","../video/index.umd.js","../textarea/index.umd.js","../schema-selector/index.umd.js","../tree-grid/index.umd.js","../event-parameter/index.umd.js","../external-container/index.umd.js","../dynamic-resolver/index.umd.js","../data-view/index.umd.js","../popover/index.umd.js"],n):(H=typeof globalThis<"u"?globalThis:H||self,n(H["data-grid"]={},H.Vue,H.LodashES,H.BigNumber,H.VueUseCore,null,H.FTransfer$1,H.FTabs,H.FOrder,null,H.FCheckBox$1,H.FFilterBar,H.FPagination,H.FDynamicForm,H.FComboList,H.designerCanvas,H.common,H.FNumberSpinner,H.FAccordion,H.FAvatar,H.FButtonEdit$1,H.FButtonGroup,H.FCalendar,H.FCapsule,H.FComboTree,H.FComponent,H.FColorPicker,H.FContentContainer,H.FDatePicker,H.FDataGrid$1,H.FDropdown,H.FEventsEditor,H.FFieldSelector,H.FBindingSelector,H.FImageCropper,H.FInputGroup$1,H.FLayout,H.FListNav,H.FListView$1,H.FLookup,H.FMappingEditor,H.FNav,H.FNumberRange,H.FPageHeader,H.FPageFooter,H.FProgress,H.FQuerySolution,H.FRadioGroup,H.FRate,H.FResponseToolbar,H.FResponseLayout,H.FResponseLayoutEditorSetting,H.FSearchBox,H.FSection,H.FSmokeDetector,H.FSplitter,H.FStep,H.FSwitch,H.FTags,H.FText,H.FTimePicker,H.FTreeview,H.FUploader,H.FVerifyDetail,H.FWeather,H.FVideo,H.FTextArea,H.FSchemaSelector,H.FTreeGrid$1,H.FEventParameter,null,H.dynamicResolver,H.dataView,H.FPopover))})(this,function(H,n,je,Is,dt,Bs,lo,so,co,Os,at,jt,Et,yt,vt,Dt,Ee,lt,uo,fo,po,mo,ho,go,yo,vo,bo,Co,wo,So,xo,_o,Fo,Vo,No,ko,To,Mo,Io,Bo,Oo,Po,$o,jo,Eo,Do,Ro,Go,Ao,Ho,Lo,Wo,qo,zo,Uo,Ko,Xo,Yo,Rt,Jo,Qo,Zo,ei,ti,ni,oi,ii,ri,ai,li,Ps,Gt,U,si){"use strict";var Ts=Object.defineProperty;var Ms=(H,n,je)=>n in H?Ts(H,n,{enumerable:!0,configurable:!0,writable:!0,value:je}):H[n]=je;var L=(H,n,je)=>Ms(H,typeof n!="symbol"?n+"":n,je);const At={},Ht={};function bt(e){const{properties:t,title:o,ignore:i}=e,a=i&&Array.isArray(i),r=Object.keys(t).reduce((l,s)=>((!a||!i.find(d=>d===s))&&(l[s]=t[s].type==="object"&&t[s].properties?bt(t[s]):je.cloneDeep(t[s].default)),l),{});if(o&&(!a||!i.find(l=>l==="id"))){const l=o.toLowerCase().replace(/-/g,"_");r.id=`${l}_${Math.random().toString().slice(2,6)}`}return r}function Lt(e,t={},o){const i=At[e];if(i){let a=bt(i);const r=Ht[e];return a=r?r({getSchemaByType:Lt},a,t,o):a,a}return null}function ci(e,t){const o=bt(t);return Object.keys(o).reduce((i,a)=>(i[a]&&je.isPlainObject(i[a])&&je.isPlainObject(e[a]||!e[a])?Object.assign(i[a],e[a]||{}):i[a]=e[a],i),o),o}function di(e,t){return Object.keys(e).filter(i=>e[i]!=null).reduce((i,a)=>{if(t.has(a)){const r=t.get(a);if(typeof r=="string")i[r]=e[a];else{const l=r(a,e[a],e);Object.assign(i,l)}}else i[a]=e[a];return i},{})}function ui(e,t,o=new Map){const i=ci(e,t);return di(i,o)}function fi(e={}){function t(u,f,c,p){if(typeof c=="number")return p[u].length===c;if(typeof c=="object"){const b=Object.keys(c)[0],h=c[b];if(b==="not")return Number(p[u].length)!==Number(h);if(b==="moreThan")return Number(p[u].length)>=Number(h);if(b==="lessThan")return Number(p[u].length)<=Number(h)}return!1}function o(u,f,c,p){return p[u]&&p[u].propertyValue&&String(p[u].propertyValue.value)===String(c)}const i=new Map([["length",t],["getProperty",o]]);Object.keys(e).reduce((u,f)=>(u.set(f,e[f]),u),i);function a(u,f){const c=u;return typeof f=="number"?[{target:c,operator:"length",param:null,value:Number(f)}]:typeof f=="boolean"?[{target:c,operator:"getProperty",param:u,value:!!f}]:typeof f=="object"?Object.keys(f).map(p=>{if(p==="length")return{target:c,operator:"length",param:null,value:f[p]};const b=p,h=f[p];return{target:c,operator:"getProperty",param:b,value:h}}):[]}function r(u){return Object.keys(u).reduce((c,p)=>{const b=a(p,u[p]);return c.push(...b),c},[])}function l(u,f){if(i.has(u.operator)){const c=i.get(u.operator);return c&&c(u.target,u.param,u.value,f)||!1}return!1}function s(u,f){return r(u).reduce((b,h)=>b&&l(h,f),!0)}function d(u,f){const c=Object.keys(u),p=c.includes("allOf"),b=c.includes("anyOf"),h=p||b,y=(h?u[h?p?"allOf":"anyOf":"allOf"]:[u]).map(g=>s(g,f));return p?!y.includes(!1):y.includes(!0)}return{parseValueSchema:d}}const te={button:{type:"button",name:"按钮",icon:"Button"},"response-toolbar":{type:"response-toolbar",name:"工具栏",icon:"ButtonGroup"},"response-toolbar-item":{type:"response-toolbar-item",name:"按钮",icon:"Button"},"content-container":{type:"content-container",name:"容器",icon:"ContentContainer"},"input-group":{type:"input-group",name:"文本",icon:"TextBox"},textarea:{type:"textarea",name:"多行文本",icon:"MultiTextBox"},lookup:{type:"lookup",name:"帮助",icon:"LookupEdit"},"number-spinner":{type:"number-spinner",name:"数值",icon:"NumericBox"},"date-picker":{type:"date-picker",name:"日期",icon:"DateBox"},switch:{type:"switch",name:"开关",icon:"SwitchField"},"radio-group":{type:"radio-group",name:"单选组",icon:"RadioGroup"},"check-box":{type:"check-box",name:"复选框",icon:"CheckBox"},"check-group":{type:"check-group",name:"复选框组",icon:"CheckGroup"},"combo-list":{type:"combo-list",name:"下拉列表",icon:"EnumField"},"response-form":{type:"response-form",name:"卡片面板",icon:"Form"},"response-layout":{type:"response-layout",name:"布局容器",icon:"ResponseLayout3"},"response-layout-item":{type:"response-layout-item",name:"布局",icon:"ResponseLayout1"},"tree-grid":{type:"tree-grid",name:"树表格",icon:"TreeGrid"},"tree-grid-column":{type:"tree-grid-column",name:"树表格列"},"data-grid":{type:"data-grid",name:"表格",icon:"DataGrid"},"data-grid-column":{type:"data-grid-column",name:"表格列"},module:{type:"Module",name:"模块",icon:"Module"},component:{type:"component",name:"组件",icon:"Component"},tabs:{type:"tabs",name:"标签页",icon:"Tab"},"tab-page":{type:"tab-page",name:"标签页项",dependentParentControl:"Tab"},"tab-toolbar-item":{type:"tab-toolbar-item",name:"标签页工具栏按钮",icon:"Button"},"time-picker":{type:"time-picker",name:"时间选择",icon:"TimePicker"},section:{type:"section",name:"分组面板",icon:"Section"},"section-toolbar":{type:"section-toolbar",name:"分组面板工具栏"},"section-toolbar-item":{type:"section-toolbar-item",name:"分组面板按钮"},splitter:{type:"splitter",name:"分栏面板",icon:"Splitter"},"splitter-pane":{type:"splitter-pane",name:"分栏面板项",dependentParentControl:"Splitter"},"component-ref":{type:"component-ref",name:"组件引用节点"},uploader:{type:"uploader",name:"附件上传",icon:"FileUpload"},"page-header":{type:"page-header",name:"页头",icon:"Header"},"page-footer":{type:"page-footer",name:"页脚",icon:"ModalFooter"},"tab-toolbar":{type:"tab-toolbar",name:"标签页工具栏",icon:"TabToolbar"},fieldset:{type:"fieldset",name:"分组",icon:"fieldset"},"query-solution":{type:"query-solution",name:"筛选方案",icon:"QueryScheme"}},pi={},mi={};fi();function Ge(e,t,o=new Map,i=(l,s,d,u)=>s,a={},r=l=>l){return At[t.title]=t,Ht[t.title]=i,pi[t.title]=a,mi[t.title]=r,(l={})=>{const s=ui(l,t,o),d=Object.keys(e).reduce((u,f)=>(u[f]=e[f].default,u),{});return Object.assign(d,s)}}function Ye(e,t){return{customClass:t.class,customStyle:t.style}}function hi(){function e(t,o){const{id:i}=t||{},{dataSource:a}=t||{};return a===void 0?{}:{data:o.getValue(i),"onUpdate:data":(...r)=>{}}}return{resolve:e}}function gi(){function e(t,o){const{dataSource:i}=t||{};return i===void 0?{}:{}}return{resolve:e}}function yi(){function e(t,o){return t.selectItemById(o)}return{selectItemById:e}}function vi(){function e(t,o){return t.selectItemById(o)}return{selectItemById:e}}const Wt=new Map([["appearance",Ye],["column","columnOption"]]),qt=new Map([]);var zt=(e=>(e.SimpleField="SimpleField",e.ComplexField="ComplexField",e))(zt||{}),st=(e=>(e.String="String",e.DateTime="DateTime",e.Date="Date",e.Enum="Enum",e.Boolean="Boolean",e.Number="Number",e.Text="Text",e.BigNumber="BigNumber",e))(st||{});function Ut(){function e(){const o=i=>{const a=Math.random()*16|0;return(i==="x"?a:a&3|8).toString(16)};return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,o)}function t(o,i){const a="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".split(""),r=[];let l;if(i=i||a.length,o)for(l=0;l<o;l++)r[l]=a[0|Math.random()*i];else{let s;for(r[8]=r[13]=r[18]=r[23]="-",r[14]="4",l=0;l<36;l++)r[l]||(s=0|Math.random()*16,r[l]=a[l===19?s&3|8:s])}return r.join("")}return{guid:e,uuid:t}}const bi=["moz","ms","webkit"];function Ci(){let e=0;return t=>{const o=new Date().getTime(),i=Math.max(0,16-(o-e)),a=setTimeout(()=>{t(o+i)},i);return e=o+i,a}}function wi(){if(typeof window>"u")return()=>0;if(window.requestAnimationFrame)return window.requestAnimationFrame.bind(window);const e=bi.filter(t=>`${t}RequestAnimationFrame`in window)[0];return e?window[`${e}RequestAnimationFrame`]:Ci()}wi();const Si="root-viewmodel";class xi{constructor(t,o){L(this,"formSchemaUtils");L(this,"controlCreatorUtils");L(this,"designViewModelUtils");L(this,"useFormCommand");this.resolver=t,this.designerHostService=o,this.formSchemaUtils=this.designerHostService.formSchemaUtils,this.controlCreatorUtils=this.designerHostService.controlCreatorUtils,this.designViewModelUtils=this.designerHostService.designViewModelUtils,this.useFormCommand=this.designerHostService.useFormCommand}createComponent(t){const o=this.createComponentRefNode(t),i=this.createComponentNode(t),a=this.createViewModeNode(t),r=this.formSchemaUtils.getFormSchema();return r.module.viewmodels.push(a),r.module.components.push(i),this.designViewModelUtils.assembleDesignViewModel(),this.wrapContainerSectionForComponent(o,t,a,i.id)}wrapContainerSectionForComponent(t,o,i,a){var s,d,u,f,c,p;const r=(d=(s=o==null?void 0:o.parentComponentInstance)==null?void 0:s.schema)==null?void 0:d.type,l=[te["content-container"].type,te["response-layout-item"].type,te["splitter-pane"].type];if(r&&l.includes(r)){const b=this.resolver.getSchemaByType("section",{parentComponentInstance:o.parentComponentInstance,mainTitle:o.componentName},this.designerHostService);if(b&&b.contents&&b.contents.length){const h=b.contents[0];return h.contents=[t],this.appendAddDeleteBtnToParentContainer(h,o,i),b}}return this.appendAddDeleteBtnToParentContainer((u=o==null?void 0:o.parentComponentInstance)==null?void 0:u.schema,o,i),r===te["tab-page"].type&&(f=o.parentComponentInstance)!=null&&f.parent&&(c=o.parentComponentInstance)!=null&&c.parent.updateToolbarItems&&((p=o.parentComponentInstance)==null||p.parent.updateToolbarItems()),t}appendAddDeleteBtnToParentContainer(t,o,i){const a=t.type,r=i.id.replace(/-/g,"").replace(/_/g,"").replace("component","").replace("viewmodel","");if(o.bindTo==="/"||o.componentType!=="data-grid"&&o.componentType!=="form")return;const l=te["tab-page"].type===a?"tab-toolbar-item":"section-toolbar-item",s=[{id:`button-add-${o.componentId}`,type:l,text:"新增",disable:"!viewModel.stateMachine['canAddDetail']",appearance:{class:"btn btn-secondary f-btn-ml"},onClick:`root-viewModel.${i.id}.${r}AddItem1`},{id:`button-remove-${o.componentId}`,type:l,text:"删除",disable:"!viewModel.stateMachine['canRemoveDetail']",appearance:{class:"btn btn-secondary f-btn-ml"},onClick:`root-viewModel.${i.id}.${r}RemoveItem1`}];t.toolbar||(t.toolbar={buttons:[]}),t.toolbar.buttons||(t.toolbar.buttons=[]),t.toolbar.buttons=t.toolbar.buttons.concat(s),this.appendAddAndDeleteCommands(i)}appendAddAndDeleteCommands(t){const o=t.id.replace(/-/g,"").replace(/_/g,"").replace("component","").replace("viewmodel",""),i=Ut().guid,a=Ut().guid,r=this.resolveCommandController();t.commands.push({id:i,code:`${o}AddItem1`,name:"增加一条子表数据",params:[],handlerName:"AddItem",cmpId:r,shortcut:{},extensions:[]},{id:a,code:`${o}RemoveItem1`,name:"删除一条子表数据",params:[{name:"id",shownName:"待删除子表数据的标识",value:`{DATA~${t.bindTo}/id}`}],handlerName:"RemoveItem",cmpId:r,shortcut:{},extensions:[]}),this.formSchemaUtils.getFormSchema().module.webcmds.find(d=>d.id===r).refedHandlers.push({host:i,handler:"AddItem"},{host:a,handler:"RemoveItem"})}resolveCommandController(){const t=this.formSchemaUtils.getFormSchema().module.webcmds,o=["8172a979-2c80-4637-ace7-b13074d3f393","8fe977a1-2b32-4f0f-a6b3-2657c4d03574","45be24f9-c1f7-44f7-b447-fe2ada458a61"],i=t.find(r=>o.includes(r.id));if(i)return i.id;const a="45be24f9-c1f7-44f7-b447-fe2ada458a61";return t.push({id:a,path:"/projects/packages/Inspur.GS.Gsp.Web.WebCmp/webcmd",name:"AdvancedListCardController.webcmd",refedHandlers:[]}),this.useFormCommand&&this.useFormCommand.checkCommands(),a}createComponentRefNode(t){const o=this.resolver.getSchemaByType("component-ref");return Object.assign(o,{id:`${t.componentId}-component-ref`,component:`${t.componentId}-component`}),o}createComponentNode(t){const o=this.resolver.getSchemaByType("component"),i=this.createDateGridComponentContents(t);return Object.assign(o,{id:`${t.componentId}-component`,viewModel:`${t.componentId}-component-viewmodel`,componentType:t.componentType,appearance:{class:this.getDataGridComponentClass()},contents:i}),o}createViewModeNode(t){return{id:`${t.componentId}-component-viewmodel`,code:`${t.componentId}-component-viewmodel`,name:t.componentName,bindTo:t.bindTo,parent:Si,fields:this.assembleViewModelFields(t),commands:[],states:[],enableValidation:!0}}getDataGridComponentClass(){const{templateId:t}=this.formSchemaUtils.getFormSchema().module;return t==="double-list-in-tab-template"?"f-struct-wrapper f-utils-fill-flex-column":"f-struct-is-subgrid"}createDateGridComponentContents(t){const{templateId:o}=this.formSchemaUtils.getFormSchema().module;let i;if(o==="double-list-in-tab-template"){const s=this.resolver.getSchemaByType("section");Object.assign(s,{id:t.componentId+"-section",appearance:{class:"f-section-grid f-section-in-main px-0 pt-0"},fill:!0,showHeader:!1}),i=s}else{const s=this.resolver.getSchemaByType("content-container");Object.assign(s,{id:t.componentId+"-container",appearance:{class:"f-grid-is-sub f-utils-flex-column"}}),i=s}const a=this.resolver.getSchemaByType("data-grid"),r=[];Object.assign(a,{id:t.componentId+"-dataGrid",appearance:{class:"f-component-grid f-utils-fill"},columns:r,fieldEditable:t.editable,dataSource:t.dataSource||"",pagination:{enable:!t.editable}}),i.contents=[a];const{selectedFields:l}=t;return l==null||l.forEach(s=>{if(s.$type===zt.ComplexField)return;const d=je.cloneDeep(s),u=this.controlCreatorUtils.setGridFieldProperty("data-grid-column",d,"",t.editable);u&&r.push(u)}),[i]}assembleViewModelFields(t){const o=[],{selectedFields:i}=t;return i==null||i.forEach(a=>{let r="blur";const l=a.type.name;(l===st.Enum||l===st.Boolean)&&(r="change"),o.push({type:"Form",id:a.id,fieldName:a.bindingField,groupId:null,groupName:null,updateOn:r,fieldSchema:{}})}),o}}function Kt(e,t,o,i){var r,l,s,d,u,f;const a=o.parentComponentInstance;if(a&&i){const c=Math.random().toString(36).slice(2,6),p={componentId:`data-grid-${c}`,componentName:((l=(r=o.bindingSourceContext)==null?void 0:r.bindingEntity)==null?void 0:l.name)||`表格-${c}`,componentType:"data-grid",parentContainerId:a.schema.id,parentComponentInstance:a,editable:!0,bindTo:((s=o.bindingSourceContext)==null?void 0:s.bindTo)||"",dataSource:(u=(d=o.bindingSourceContext)==null?void 0:d.bindingEntity)==null?void 0:u.label,selectedFields:(f=o.bindingSourceContext)==null?void 0:f.bindingEntityFields};return new xi(e,i).createComponent(p)}else return t}function Xt(e,t,o){return t}const _i={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/data-grid.schema.json",title:"data-grid",description:"A Farris Data Grid 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:"data-grid"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},fit:{type:"boolean",default:!1},showStripe:{type:"boolean",default:!0},showBorder:{type:"boolean",default:!1},showSetting:{type:"boolean",default:!1},size:{description:"",type:"object",properties:{width:{type:"number"},height:{type:"number"}},default:null},dataSource:{description:"",type:"string",default:""},columns:{description:"",type:"array",default:[]},identifyField:{description:"",type:"string"},editable:{description:"",type:"boolean",default:!1},disable:{description:"",type:"boolean",default:!1},visible:{description:"",type:"boolean",default:!0},fieldEditable:{description:"是否可编辑",type:"boolean",default:!1},cell:{type:"object",properties:{highlightFocusingCell:{description:"",type:"boolean",default:!1},mergeCell:{description:"",type:"boolean",default:!1},showEditableIcon:{description:"",type:"boolean",default:!1}}},column:{type:"object",properties:{fitColumns:{description:"",type:"boolean",default:!1},fitMode:{description:"",type:"string",default:"average"},groups:{description:"",type:"array",default:[]},reorderColumn:{description:"Enable to drag column to reorder",type:"boolean",default:!1},resizeColumn:{type:"boolean",default:!0},resizeColumnOnDoubleClick:{description:"",type:"boolean",default:!0}}},command:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},commands:{type:"array",default:[]},commandColumnWidth:{description:"",type:"number",default:120},onClickDeleteCommand:{description:"",type:"string",default:""},onClickEditCommand:{description:"",type:"string",default:""}}},contextMenu:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1}}},customizaiton:{type:"object",properties:{enableScheme:{description:"",type:"boolean",default:!1},enableSetting:{description:"",type:"boolean",default:!1}}},edit:{type:"obejct",properties:{mode:{description:"",type:"string",default:"cell",enum:["cell","row","card"]},selectOnEditing:{description:"",type:"boolean",default:!1},onAppendRow:{description:"",type:"string",default:""},onBeforeEdit:{description:"",type:"string",default:""}}},filter:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},filterStyle:{description:"",type:"string",default:"filter-column",enum:["filter-column","filter-row"]},mode:{description:"",type:"string",default:"server",enum:["client","server"]},showSummary:{description:"",type:"boolean",default:!0},onFilterChange:{description:"",type:"string",default:""}}},footer:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},customFooterStyle:{description:"",type:"object"},footerDataCommand:{description:"",type:"string",default:""},footerDataFrom:{description:"",type:"string",default:"client"},footerHeight:{description:"",type:"number",default:29},footerPosition:{description:"",type:"string",default:"bottom"},footerTemplate:{description:"",type:"string",default:""}}},group:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1},customGroupRow:{description:"",type:"object"},customGroupRowStyle:{description:"",type:"obejct"},customSummaryStyle:{description:"",type:"obejct"},groupColSpan:{description:"",type:"number",default:1},groupFields:{description:"",type:"array",default:[]},showGroupedColumn:{description:"",type:"boolean",default:!0},showGroupPanel:{description:"",type:"boolean",default:!1},showSummary:{description:"",type:"boolean",default:!1},summaryPosition:{description:"",type:"string",default:"separate",enum:["separate","merge-to-group"]},disableGroupOnEditing:{description:"",type:"boolean",default:!0},expandGroupRows:{description:"",type:"boolean",default:!0}}},header:{type:"object",properties:{wrapHeadings:{description:"",type:"boolean",default:!1}}},pagination:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},disablePagination:{description:"",type:"string",default:""},contentTemplate:{description:"",type:"string",default:""},index:{description:"",type:"number",default:1},mode:{description:"",type:"enum",default:"client",enum:["server","client"]},showGoto:{description:"",type:"boolean",default:!1},showIndex:{description:"",type:"boolean",default:!0},showLimits:{description:"",type:"boolean",default:!1},showPageInfo:{description:"",type:"boolean",default:!0},size:{description:"",type:"number",default:20},sizeLimits:{description:"",type:"array",default:[10,20,30,50,100]},onPageChange:{description:"",type:"string",default:""},onPageSizeChange:{description:"",type:"string",default:""}}},row:{type:"object",properties:{customRowStyle:{description:"",type:"object"},disable:{description:"",type:"obejct"},height:{description:"",type:"number",default:30},showHovering:{type:"boolean",default:!0},wrapContent:{type:"boolean",default:!1}}},rowNumber:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!0},heading:{description:"",type:"string",default:"序号"},width:{description:"",type:"number",default:36},showEllipsis:{description:"",type:"boolean",default:!0}}},onClickRow:{description:"行点击事件",type:"string",default:""},onSelectionChange:{description:"行切换事件",type:"string",default:""},onPageIndexChanged:{description:"切换页码事件",type:"string",default:""},onPageSizeChanged:{description:"分页条数变化事件",type:"string",default:""},selection:{type:"object",properties:{enableSelectRow:{description:"允许选中行",type:"boolean",default:!0},enable:{description:"",type:"boolean",default:!0},checkOnSelect:{description:"",type:"boolean",default:!1},clearSelectionOnEmpty:{description:"",type:"boolean",default:!0},customSelectionItem:{description:"",type:"object"},focusSelection:{description:"",type:"string",default:"current",enum:["current","all"]},keepSelectingOnClick:{description:"",type:"boolean",default:!0},keepSelectingOnPaging:{description:"",type:"boolean",default:!0},multiSelect:{description:"",type:"boolean",default:!1},selectionMode:{description:"",type:"string",default:"default"},selectOnCheck:{description:"",type:"boolean",default:!1},selectOnEditing:{description:"",type:"boolean",default:!1},showCheckbox:{description:"",type:"boolean",default:!1},showCheckAll:{description:"",type:"boolean",default:!1},showSelection:{description:"",type:"boolean",default:!1},onBeforeSelect:{description:"",type:"string",default:""},onBeforeUnCheck:{description:"",type:"",default:""},onBeforeUnSelect:{description:"",type:"string",default:""},onCheckAll:{description:"",type:"string",default:""},onChecked:{description:"",type:"string",default:""},onSelectionChange:{description:"",type:"string",default:""},onUnCheckAll:{description:"",type:"string",default:""},onUnChecked:{description:"",type:"string",default:""},onCheckedChange:{description:"",type:"string"}}},sort:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},fields:{description:"",type:"array",default:[]},mode:{description:"",type:"string",default:"client",enum:["client","server"]},multiSort:{description:"",type:"boolean",default:!1}}},summary:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1},customSummaryStyle:{description:"",type:"object"},groupFields:{description:"",type:"array",default:[]},mode:{description:"",type:"string",default:"client",enum:["client","server"]},position:{description:"",type:"boolean",default:"bottom",enum:["bottom","top","both"]}}},toolbar:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1}}},visualization:{autoHeight:{description:"",type:"boolean",default:!1},emptyDataHeight:{description:"",type:"number",default:36},emptyTemplate:{description:"",type:"string",default:""},maxHeight:{description:"",type:"number",default:300},scrollBarShowMode:{description:"",type:"string",default:"auto"},showBorder:{description:"",type:"boolean",default:!1},showScrollArrow:{description:"",type:"boolean",default:!1},striped:{description:"",type:"boolean",default:!0},useBlankWhenDataIsEmpty:{description:"",type:"boolean",default:!1}}},required:["id","type"]},Fi={enable:{type:Boolean,default:!1},index:{type:Number,default:1},mode:{type:String,default:"client"},showGoto:{type:Boolean,default:!1},showIndex:{type:Boolean,default:!0},showLimits:{type:Boolean,default:!1},showPageInfo:{type:Boolean,default:!0},size:{type:Number,default:20},sizeLimits:{type:Array,default:[10,20,30,50,100]},total:{type:Number,default:0}},Vi={enable:{type:Boolean,default:!1},fields:{type:Array,default:[]},mode:{type:String,default:"client"},multiSort:{type:Boolean,default:!1}},Ni={customGroupRow:{type:Function,default:()=>{}},customGroupRowStyle:{type:Function,default:()=>{}},customSummaryStyle:{type:Function,default:()=>{}},enable:{type:Boolean,default:!1},groupColSpan:{type:Number,default:1},groupFields:{type:Array,default:[]},showGroupedColumn:{type:Boolean,default:!0},showGroupPanel:{type:Boolean,default:!1},showSummary:{type:Boolean,default:!1},summaryPosition:{type:String,default:"separate"}},ki={enable:{type:Boolean,default:!1},filterStyle:{type:String,default:"filter-column"},mode:{type:String,default:"server"},showSummary:{type:Boolean,default:!0}},Ti={wrapHeadings:{type:Boolean,default:!1}},Mi={enable:{type:Boolean,default:!1},heading:{type:String,default:"序号"},width:{type:Number,default:36},showEllipsis:{type:Boolean,default:!0}},Ii={customRowStyle:{type:Function,default:()=>{}},customRowStatus:{type:Function,default:()=>{}},disable:{type:Function,default:()=>{}},height:{type:Number,default:28},showHovering:{type:Boolean,default:!0},wrapContent:{type:Boolean,default:!1}},Bi={enable:{type:Boolean,default:!1},customSummaryStyle:{type:Function,default:()=>{}},groupFields:{type:Array,default:[]},mode:{type:String,default:"client"},position:{type:String,default:"bottom"}},Oi={fitColumns:{type:Boolean,default:!1},fitMode:{type:String,default:"average"},groups:{type:Array,defaut:[]},reorderColumn:{type:Boolean,default:!1},resizeColumn:{type:Boolean,default:!0},resizeColumnOnDoubleClick:{type:Boolean,default:!0}},Pi={checkOnSelect:{type:Boolean,default:!1},clearSelectionOnEmpty:{type:Boolean,default:!0},customSelectionItem:{type:Function,default:()=>{}},enabelSelectRow:{type:Boolean,default:!0},keepSelectingOnClick:{type:Boolean,default:!0},keepSelectingOnPaging:{type:Boolean,default:!0},multiSelect:{type:Boolean,default:!1},focusSelection:{type:String,default:"current"},selectOnCheck:{type:Boolean,default:!1},showCheckbox:{type:Boolean,default:!1},showSelectAll:{type:Boolean,default:!1},showSelection:{type:Boolean,default:!1}},$i={selectOnEditing:{type:Boolean,default:!1},editMode:{type:String,default:"cell"}},ji={show:{type:Boolean,default:!1},message:{type:String,default:"加载中..."}},ut={changePolicy:{type:String,default:"push"},columns:{type:Array,default:[]},columnOption:{type:Object},data:{type:Array,default:[]},disabled:{type:Boolean,default:!1},disabledField:{type:String,default:"disabled"},editable:{type:Boolean,default:!1},editOption:{type:Object,default:{selectOnEditing:!1,editMode:"cell"}},filter:{type:Object},fit:{type:Boolean,default:!1},focusOnEditingCell:{type:Boolean,default:!0},selectOnEditingCell:{type:Boolean,default:!1},group:{type:Object},header:{type:Object},height:{type:Number,default:-1},id:{type:String,default:""},idField:{type:String,default:"id",require:!0},minHeight:{type:Number,default:300},minWidth:{type:Number,default:400},mergeCell:{type:Boolean,default:!1},pagination:{type:Object,default:{enable:!1,size:20}},rowNumber:{type:Object,default:{enable:!0,width:32,heading:"序号"}},rowOption:{type:Object,default:{wrapContent:!1}},selection:{type:Object,default:{enableSelectRow:!0,multiSelect:!1,multiSelectMode:"DependOnCheck",showCheckbox:!1,showSelectAll:!1,showSelection:!0}},selectionValues:{type:Array,default:[]},showBorder:{type:Boolean,default:!1},showFooter:{type:Boolean,default:!1},showHeader:{type:Boolean,default:!0},showScrollBar:{type:String,default:"auto"},showSetting:{type:Boolean,default:!1},showStripe:{type:Boolean,default:!0},sort:{type:Object},summary:{type:Object,default:{enable:!1,groupFields:["numericField1","numericField2"]}},virtualized:{type:Boolean,default:!1},width:{type:Number,default:-1},newDataItem:{type:Function,default:()=>{}},enableCommands:{type:Boolean,default:!1},commandOption:{type:Object,default:{enable:!1,commands:[]}},appendOnEnterAtLastCell:{type:Boolean,default:!1},loading:{type:Boolean,default:!1}},Yt=Object.assign({},ut,{componentId:{type:String,default:""}}),Ct=Ge(ut,_i,Wt,Kt),Jt=hi(),Qt=yi();var Pe=(e=>(e[e.readonly=0]="readonly",e[e.editable=1]="editable",e[e.editing=2]="editing",e))(Pe||{}),He=(e=>(e[e.initial=0]="initial",e[e.editing=1]="editing",e))(He||{}),Je=(e=>(e[e.data=0]="data",e[e.group=1]="group",e[e.summary=2]="summary",e))(Je||{}),Me=(e=>(e[e.none=0]="none",e[e.filterable=1]="filterable",e[e.sortable=2]="sortable",e[e.filtered=4]="filtered",e[e.sorted=8]="sorted",e[e.ascending=16]="ascending",e[e.descending=32]="descending",e))(Me||{}),wt=(e=>(e.NONE="none",e.NUMBER="number",e.DATE="date",e.TEXT="boolean",e.IMAGE="boolean2",e.ENUM="enum",e.CUSTOM="custom",e))(wt||{});function Ei(){function e(){return n.createVNode("div",{class:"fv-grid-disable"},null)}return{renderDisableMask:e}}function Di(e,t,o,i,a){const{columnContext:r}=t,{conditions:l,clearCondition:s,removeCondition:d}=i,u=n.ref([]);function f(){const h=[];Array.from(l.value).forEach((x,S)=>{var m;const y={id:x.id,code:x.fieldCode,labelCode:x.fieldCode,name:x.fieldName,editor:{type:(m=x.value)==null?void 0:m.editorType}};h.push(y)}),u.value=h}n.watch(l,()=>f());function c(h){d(`field_filter_${h}`);const x=r.value.primaryHeaderColumns.find(S=>S.field===h);if(x){x.filterValue=null;let S=x.status;S=(S&Me.filtered)===Me.filtered?S^Me.filtered:S,x.status=S}o.refresh(),a.reCalculateVisualDataRows()}function p(){s(),r.value.primaryHeaderColumns.forEach(h=>{h.filterValue=null;let x=h.status;x=(x&Me.filtered)===Me.filtered?x^Me.filtered:x,h.status=x}),o.refresh(),a.reCalculateVisualDataRows()}function b(){return n.createVNode("div",{class:"fv-grid-filter-panel"},[n.createVNode(jt.FFilterBar,{data:l.value,fields:u.value,mode:"display-only","show-reset":!0,onRemove:c,onReset:p},null)])}return{renderFilterPanel:b}}function Ri(e,t,o,i,a){const{dropOnGroupPanel:r,groupColumnItems:l}=o,{groupFields:s,shouldGroupingData:d,showGroupPanel:u}=i,f=n.ref();function c(h){s.value=h.map(x=>x.value),t.updateDataView(),a.reCalculateVisualDataRows()}function p(h){h.preventDefault()}function b(){return d.value&&u.value&&n.createVNode("div",{class:"fv-grid-group-panel",onDrop:r,onDragover:p},[l.value&&n.createVNode(n.resolveComponent("f-tags"),{ref:f,style:"margin:0.375rem","tag-type":"default",data:l.value,"tag-style":"capsule","show-close":!0,onChange:c},null)])}return{renderGroupPanel:b}}function St(e,t){var b;const o=String(Date.now()),i=((b=e.rowOption)==null?void 0:b.height)||28,a=n.ref(t.value.primaryColumnsWidth);function r(h){const x={};return h.reduce((S,y,m)=>{const g=m<h.length-1?h[m+1]:null;return m===0&&(S[y.field]={left:0}),y.actualWidth!==void 0&&(S[y.field].width=y.actualWidth),g&&(S[g.field]={left:S[y.field].left+(y.actualWidth||0)}),S},x),x}function l(h,x,S){const y=i*(S+1),g=x[h.field].left-y+(x[h.field].width||0),_=h.parent.height?`${h.parent.height}px`:"";return{left:`${y}px`,width:`${g}px`,height:`${_}`}}function s(h,x,S){return{right:"0px",height:`${h.parent.height?`${h.parent.height}px`:""}`}}function d(h,x){const S=h.parent.height?`${h.parent.height}px`:"";return{left:`${x[h.field].left}px`,height:`${S}`,width:isNaN(Number(x[h.field].width))?"100%":`${x[h.field].width}px`}}function u(h,x,S){const m=(x.spanned||[]).reduce((_,C)=>_+(C.parent.height||0),0)+(h.height||0);return{top:`${h.top}px`,left:`${S[x.field].left}px`,width:`${S[x.field].width}px`,height:`${m}px`,padding:`calc(${m/2}px - 1rem) 0`}}function f(h,x){return`${o}_${h.type}_r_${h.index}_c_${x}_${h.refreshKey||""}`}function c(h){return`${o}_${h.type}_r_${h.index}_${h.refreshKey||""}`}function p(h){const x=h.height?`${h.height}px`:"";return{top:`${h.top}px`,width:isNaN(a.value)?"100%":`${a.value}px`,height:`${x}`}}return n.watch(t,()=>{a.value=t.value.primaryColumnsWidth}),{calculateCellPositionInRow:r,cellKey:f,cellPosition:d,groupCellPosition:l,rowKey:c,rowPosition:p,rowSpanCellPosition:u,summaryCellPosition:s}}function Gi(e,t,o){const{hasChildrenField:i}=o,a=n.ref("#9399a0"),r=n.ref(28);function l(){return[].concat(...t.value.filter(p=>p.raw.__fv_descendant_index__.length!==0).map(p=>[...p.raw.__fv_descendant_index__.slice(-1)]).flat()).sort((p,b)=>Number(p)-Number(b))}function s(f){const c=new Array(t.value.length).fill(0);if(e.showLines){const p=l();t.value.forEach((b,h)=>{const x=p.includes(h),S=b.raw[i.value];c[h]=`repeating-linear-gradient(90deg, ${a.value} 0 1px, transparent 0px 2px) ${S?"-10px":"0px"} ${r.value/2}px/20px 1px no-repeat,repeating-linear-gradient(${a.value} 0 1px, transparent 0px 2px) 0px 0px/1px ${x?"50%":"100%"} no-repeat`}),c[0]=""}return c[f]}function d(f,c,p){return p[f].parents.set(f,!0).forEach(h=>{p[h].childsLength=p[h].childWithLines.filter(x=>c[x].visible).length}),c}function u(f){const b=f.raw.__fv_parent_index__===void 0||f.raw.__fv_parent_index__===-1?0:8,h=0,x=f.raw[i.value],S=f.visible?{left:`${f.layer*10+f.layer*b+h}px`,background:s(f.index),display:"flex",width:"100%",position:"relative",paddingLeft:"0.75rem"}:{display:"none"};return x||(S.paddingLeft="2rem"),S}return{hierarchyCellContentStyle:u,handleCollapsedPaddingBottom:d}}function Ai(e,t,o){const i=n.ref(e.iconField);function a(r,l){if(i.value)return r.raw[e.iconField];let s="";return r.raw[o.value]!==!0?s=t.value.leafnodes:s=r.collapse?t.value.fold:t.value.unfold,s}return{treeNodeIconsClass:a}}function xt(){function e(o,i){const a=o.pre;if(a){const r=o.visible?(a.__fv_data_position__||0)+(a.__fv_data_height__||0):a.__fv_data_position__;o.top=r,i.__fv_data_position__=r}else o.top=0,i.__fv_data_position__=0}function t(o,i,a){if(o){const r=i.parent;i.cellHeight!==o.offsetHeight&&(i.cellHeight=o.offsetHeight),i.cellHeight&&i.cellHeight>(r.height||0)&&(r.height=i.cellHeight,a.__fv_data_height__=r.height),e(r,a)}}return{updateRowPosition:e,updateVisualInfomation:t}}function Hi(e,t,o,i,a,r){const{dataView:l,fold:s,hasRealChildren:d,unFold:u}=i,{collapseField:f,hasChildrenField:c}=a,{updateRowPosition:p}=xt();function b(S,y){const m=y[S].layer;let g=S+1;for(;g<y.length&&y[g].layer>m;)g++;return g-1}function h(S,y){o.value[S].collapse=!o.value[S].collapse,o.value[S].raw[f.value]=o.value[S].collapse,o.value[S].raw[c.value]=d(o.value[S].raw);const m=o.value[S].collapse;let g=!1,_=S;for(;_<o.value.length;){const F=o.value[_];if((typeof F.raw.__fv_parent_index__=="number"?Number(F.raw.__fv_parent_index__):-1)>y)F.visible=!m,F.raw.__fv_visible__=F.visible,F.collapse&&(_=b(_,o.value)),g=!0;else if(g){_++;break}_++}let C=S;for(;C<o.value.length;){const F=o.value[C];p(F,F.raw),C++}}function x(S){if(S.raw[c.value]){const m=typeof S.raw.__fv_parent_index__=="number"?Number(S.raw.__fv_parent_index__):-1;h(Number(S.raw.__fv_index__),m)}t.emit("expandNode",{row:S})}return{toggleTreeNode:x}}function Li(e,t,o,i,a,r,l,s,d,u,f){const{onClickCell:c}=r,{gridRowClass:p,onClickRow:b,onMouseoverRow:h,onMouseoutRow:x}=s,{clearSelection:S,enableMultiSelect:y,select:m,unSelect:g,isSelectingHirarchyItem:_,multiSelectOnClickRow:C,multiSelectOnlyOnCheck:F,selectItem:N,toggleSelectItem:k}=d;n.ref(e.cellHeight);const v=n.ref(e.treeNodeIconsData||{}),{hasChildrenField:M,shouldShowCheckBox:w,shouldShowIcon:T}=l,{toggleTreeNode:I}=Hi(e,t,i,a,l),{toggleSelectHierarchyItem:V}=u,{cellKey:O,cellPosition:$,rowKey:B,rowPosition:P}=St(e,o),{hierarchyCellContentStyle:E}=Gi(e,i,l),{treeNodeIconsClass:j}=Ai(e,v,M);function G(K,Y){const ue=K.raw[M.value];return{"fv-tree-node-toggle":ue&&K.collapse,"fv-tree-node-toggle-minus":ue&&!K.collapse}}function X(K,Y){K.stopPropagation(),I(Y)}function ne(K,Y){return n.createVNode("div",{class:G(K),onClick:ue=>X(ue,K)},null)}function me(K,Y){return T.value&&n.createVNode("div",{id:"treeNodeIcons",class:j(K,Y)},null)}function Ne(K){y.value?(K.checked?m(K):g(K),V(K)):N(K)}function ge(K,Y){return w.value&&n.createVNode(at.FCheckBox,{id:"checkbox_for_"+O(K,Y.index),indeterminate:K.indeterminate,checked:K.checked,"onUpdate:checked":ue=>K.checked=ue,onChange:()=>Ne(K)},null)}function Se(K,Y){return n.createVNode("span",{title:Y.data},[Y.mode===Pe.editing?Y.getEditor(Y):Y.formatter?Y.formatter(Y,K):Y.data!=null?Y.data.toString():Y.data])}function xe(K,Y,ue){return n.createVNode("div",{ref:Y.setRef,key:O(K,Y.index),class:"fv-grid-hierarchy-cell",style:$(Y,ue)},[n.createVNode("div",{style:E(K)},[ne(K),me(K,Y),ge(K,Y),Se(K,Y)])])}function pe(K,Y,ue,Fe){return n.createVNode("div",{ref:Y.setRef,key:O(K,Y.index),class:"fv-grid-cell",style:$(Y,ue),onClick:se=>c(se,Y,K,Fe)},[Y.mode===Pe.editing?Y.getEditor(Y):Y.formatter?Y.formatter(Y,K):Y.data!=null?Y.data.toString():Y.data])}function ye(K,Y){return Y==="left"&&o.value.leftColumns.length>0&&o.value.leftColumns[0].field===K.field||Y==="primary"&&o.value.primaryColumns.length>0&&o.value.primaryColumns[0].field===K.field}function Ce(K,Y,ue="primary",Fe){return n.createVNode("div",{ref:K.setRef,key:B(K),class:p(K),style:P(K),onMouseover:se=>h(se,K),onMouseout:se=>x(se,K),onClick:se=>b(se,K)},[Object.values(K.data).filter(se=>Y[se.field]&&se.rowSpan===1).map((se,re)=>{const he=Fe.find(ve=>ve.field===se.field);return ye(se,ue)?xe(K,se,Y):pe(K,se,Y,he)})])}return{renderDataRow:Ce}}function Zt(e,t,o){const{horizontalScrollThumbStyle:i,onMouseDownScrollThumb:a,shouldShowHorizontalScrollbar:r}=o;function l(){return r.value&&n.createVNode("div",{class:"fv-grid-horizontal-scroll"},[n.createVNode("div",{class:"fv-grid-horizontal-scroll-thumb",style:i.value,onMousedown:s=>a(s,t,"horizontal")},null)])}return{renderHorizontalScrollbar:l}}function Wi(e,t,o,i,a){const{currentPage:r,pageSize:l,pageList:s,total:d,showPageIndex:u,showPageList:f,mode:c}=a;function p(S){const{pageIndex:y,pageSize:m}=S;o.navigatePageTo(y),i.resetScroll(),t.emit("pageIndexChanged",{pageIndex:y,pageSize:m})}function b(S){const{pageIndex:y,pageSize:m}=S;o.changePageSizeTo(m),i.resetScroll(),t.emit("pageSizeChanged",{pageIndex:y,pageSize:m})}function h(S){const{pageIndex:y,pageSize:m}=S;o.navigatePageTo(y),i.resetScroll(),t.emit("changed",{pageIndex:y,pageSize:m})}n.onMounted(()=>{});function x(){return n.createVNode("div",{class:"fv-datagrid-pagination"},[n.createVNode(Et,{mode:"default",currentPage:r.value,"onUpdate:currentPage":S=>r.value=S,pageSize:l.value,"onUpdate:pageSize":S=>l.value=S,showPageList:f.value,showPageNumbers:u.value,totalItems:d.value,pageList:s.value,onPageIndexChanged:p,onPageSizeChanged:b,onChange:h},null)])}return{renderDataGridPagination:x}}function en(e,t,o,i,a){const{isSelectingHirarchyItem:r,multiSelectOnClickRow:l,multiSelectOnlyOnCheck:s,selectItem:d,toggleSelectItem:u}=o,{onMouseoverRow:f,sidebarRowClass:c}=t,{showRowNumer:p,showSidebarCheckBox:b,sidebarCellPosition:h,rowKey:x,cellKey:S}=i,{gridSideStyle:y}=a;function m(k){k.stopPropagation()}function g(k){return n.createVNode("div",{class:"d-inline-flex "},[n.createVNode("div",{class:"custom-control custom-checkbox f-checkradio-single",style:"margin:0;padding-left:0.5rem"},[n.withDirectives(n.createVNode("input",{id:S(k),title:S(k),type:"checkbox",indeterminate:k.indeterminate,"onUpdate:modelValue":v=>k.checked=v,class:"custom-control-input"},null),[[n.vModelCheckbox,k.checked]]),n.createVNode("label",{class:"custom-control-label",for:S(k),onClick:m},null)])])}function _(k){return n.createVNode("div",{class:"fv-grid-sidebar-row-number justify-content-center",style:"padding:0",onMouseover:v=>f(v,k)},[n.createVNode("div",{title:k.dataIndex,class:{"text-center":!0,"text-truncate":e.rowNumber.showEllipsis,"w-100":e.rowNumber.showEllipsis}},[k.dataIndex])])}function C(k,v,M){r.value?l.value?u(M):d(M):s.value||l.value?u(M):d(M)}function F(k){return(b.value||p.value)&&k.value.map(v=>n.createVNode("div",{key:x(v),class:c(v),style:h(v),onClick:M=>C(M,k,v)},[b.value&&!e.hierarchy&&g(v),p.value&&_(v)]))}function N(k){return n.createVNode("div",{class:"fv-grid-content-side"},[n.createVNode("div",{class:"fv-grid-side",style:y.value},[F(k)])])}return{renderDataGridSidebar:N}}function qi(e,t,o){const{columnContext:i}=o,a=n.ref(e.summary),r=n.computed(()=>{const s=a.value;return s&&s.enable&&s.groupFields&&s.groupFields.length>0});function l(){return r.value&&n.createVNode("div",{class:"fv-datagrid-summary"},[n.createVNode("div",{class:"fv-datagird-summary-panel"},[n.createVNode("span",{class:"fv-datagrid-summary-title"},[n.createTextVNode("当页合计")]),n.createVNode("div",{class:"fv-datagrid-summary-content"},[i.value.summaryColumns.map(s=>n.createVNode("div",{class:"fv-datagrid-summary-field"},[n.createVNode("span",{class:"fv-datagrid-summary-field-title"},[`${s.title}:`]),n.createVNode("span",{class:"fv-datagrid-summary-field-value"},[t.summaries.get(s.field)])]))])])])}return{renderDataGridSummery:l}}function tn(e,t,o){const{verticalScrollThumbStyle:i,onMouseDownScrollThumb:a,shouldShowVirticalScrollbar:r}=o;function l(){return r.value&&n.createVNode("div",{class:"fv-grid-vertical-scroll"},[n.createVNode("div",{class:"fv-grid-vertical-scroll-thumb",style:i.value,onMousedown:s=>a(s,t,"vertical")},null)])}return{renderVerticalScrollbar:l}}function zi(){function e(i,a){switch(i.command){case"edit":case"remove":return a.status===He.initial;case"accept":case"cancel":return a.status===He.editing;default:return!i.hidden}}function t(i,a,r){switch(i.onClick(a,r.dataIndex,r),i.command){case"edit":r.status,He.editing;break;case"accept":case"cancel":r.status,He.initial;break}}function o(i,a){return n.createVNode("div",null,[i.commands&&i.commands.map(r=>e(r,a)&&n.createVNode(n.resolveComponent("f-button"),{class:"ml-2",type:r.type,size:r.size||"small",onClick:l=>t(r,l,a)},{default:()=>[n.createTextVNode(" "),r.text,n.createTextVNode(" ")]}))])}return{renderCommandColumn:o}}function Ui(e){function t(){return n.createVNode("div",{class:"d-flex flex-column f-datagrid-norecords"},[n.createVNode("div",{class:"f-datagrid-norecords-content",style:"margin: 0;width: 100%;position: relative; top: 0"},[n.createTextVNode(" "),e.slots.empty&&e.slots.empty()||"暂无数据"])])}return{renderEmpty:t}}function nn(e){const t=n.ref(e.minHeight),o=n.ref(e.minWidth),i=n.ref(e.height),a=n.ref(e.width),r=n.computed(()=>i.value<=0?0:Math.max(i.value,t.value)),l=n.computed(()=>a.value<=0?0:Math.max(a.value,o.value));return n.watch([()=>e.height,()=>e.width,()=>e.minHeight,()=>e.minWidth],([d,u,f,c])=>{t.value=Number(f),o.value=Number(c),i.value=Number(d),a.value=Number(u)}),{containerStyleObject:n.computed(()=>({height:r.value>0?`${r.value}px`:e.fit?"100%":"",width:l.value>0?`${l.value}px`:e.fit?"100%":""}))}}function on(e){const o={defaultColumnWidth:120,headerDepth:1,leftColumns:[],leftColumnsMap:new Map,leftColumnsWidth:0,leftHeaderColumns:[],primaryColumns:[],primaryColumnsMap:new Map,primaryColumnsWidth:0,primaryHeaderColumns:[],rightColumns:[],rightColumnsMap:new Map,rightColumnsWidth:0,rightHeaderColumns:[],summaryColumns:[]},i=n.ref(o);function a(){i.value={defaultColumnWidth:120,headerDepth:1,leftColumns:[],leftColumnsMap:new Map,leftColumnsWidth:0,leftHeaderColumns:[],primaryColumns:[],primaryColumnsMap:new Map,primaryColumnsWidth:0,primaryHeaderColumns:[],rightColumns:[],rightColumnsMap:new Map,rightColumnsWidth:0,rightHeaderColumns:[],summaryColumns:[]}}const r=n.ref(e.summary),l=n.computed(()=>{const g=r.value;return(g==null?void 0:g.groupFields)||[]});function s(){i.value.rightColumns.forEach(C=>{C.showSetting=!1}),i.value.primaryColumns.forEach(C=>{C.showSetting=!1});const g=i.value.rightColumns.filter(C=>C.visible),_=i.value.primaryColumns.filter(C=>C.visible);g.length>0?g[g.length-1].showSetting=!0:_.length>0&&(_[_.length-1].showSetting=!0)}function d(g){a();const _=new Map;return l.value&&l.value.reduce((C,F)=>(C.set(F,!0),C),_),g.reduce((C,F)=>(F.visible=F.visible!==!1,F.fixed==="left"?(i.value.leftColumns.push(F),i.value.leftColumnsMap.set(F.field,F),i.value.leftColumnsWidth+=F.actualWidth):F.fixed==="right"?(i.value.rightColumns.push(F),i.value.rightColumnsMap.set(F.field,F),i.value.rightColumnsWidth+=F.actualWidth):(i.value.primaryColumns.push(F),i.value.primaryColumnsMap.set(F.field,F),i.value.primaryColumnsWidth+=F.actualWidth),_.has(F.field)&&i.value.summaryColumns.push(F),C),i),s(),i}d(e.columns);const u=n.computed(()=>i.value.leftColumns.length>0),f=n.computed(()=>i.value.rightColumns.length>0);function c(g,_){return _.sortable&&_.sort&&_.sort!=="none"&&g.push(_),g}function p(g,_){return g.sortOrder=g.sortOrder||0,_.sortOrder=_.sortOrder||0,g.sortOrder===_.sortOrder?0:g.sortOrder<_.sortOrder?-1:1}function b(g,_){return g.sortOrder=g.sortOrder||0,_.sortOrder=_.sortOrder||0,g.sortOrder===_.sortOrder?0:g.sortOrder<_.sortOrder?1:-1}function h(g,_){return _.filterable&&g.push(_),g}function x(){const g=[];return i.value.leftColumns.reduce(h,g),i.value.primaryColumns.reduce(h,g),i.value.rightColumns.reduce(h,g),g}function S(){const g=[];i.value.leftColumns.reduce(c,g),i.value.primaryColumns.reduce(c,g),i.value.rightColumns.reduce(c,g);const _=Math.max(...g.map(C=>C.sortOrder||0));return g.sort(b).map(C=>{const F=C.sortOrder||_+1;return C.sortOrder=F,C}).sort(p).map((C,F)=>{const N=F+1;return C.sortOrder=N,C})}function y(g,_,C){const F=g.map(N=>{const k=C.getSorterByColumn(N),v=N.sort==="asc",M=N.sort==="desc",w=v?k.ascend:M?k.decend:void 0;return{field:N.field,compare:w}});_.setSorters(F)}function m(g,_){const C=S();y(C,g,_)}return{applyColumnSorter:m,collectionFilterableColumns:x,applySortableColumns:y,collectionSortableColumns:S,columnContext:i,hasLeftFixedColumn:u,hasRightFixedColumn:f,updateColumnRenderContext:d,updateColumnSettingIcon:s}}const Ki=[{name:"是",value:!0},{name:"否",value:!1}];function Xi(e){return e.filter=e.filter||function(t){return String(e.filterValue).split(",").includes(String(t[e.field]))},n.createVNode("div",null,[n.createVNode(n.resolveComponent("f-checkbox-group"),{modelValue:e.filterValue,"onUpdate:modelValue":t=>e.filterValue=t,"enum-data":Ki},null)])}const Yi=n.ref([{name:"七天",selectable:!0},{name:"一个月",selectable:!0},{name:"三个月",selectable:!0},{name:"半年",selectable:!0}]);function Ji(e){const t=n.ref(!1);return e.filter=e.filter||function(o){const i=new Date(new Date(e.filterValue).toLocaleDateString()).valueOf();return new Date(new Date(o[e.field]).toLocaleDateString()).valueOf()===i},n.createVNode("div",{style:"display:flex;flex-direction:column;"},[n.createVNode("div",{style:"display:flex;margin-bottom:6px;"},[n.createVNode("label",{style:"margin-right:8px"},[n.createTextVNode("按区间筛选")]),n.createVNode(n.resolveComponent("f-switch"),{modelValue:t.value,"onUpdate:modelValue":o=>t.value=o,size:"small"},null)]),n.createVNode(n.resolveComponent("f-date-picker"),{modelValue:e.filterValue,"onUpdate:modelValue":o=>e.filterValue=o},null),n.createVNode(n.resolveComponent("f-tags"),{style:"margin-top:10px",data:Yi.value,selectable:!0,"tag-style":"capsule"},null)])}function Qi(e){e.filter=e.filter||function(o){const i=Number.parseFloat(e.filterValue),a=Number.parseFloat(o[e.field]);return isNaN(i)?isNaN(a):i===a};function t(o){e.filterValue=o}return n.createVNode("div",null,[n.createVNode(n.resolveComponent("f-number-spinner"),{"can-null":!0,precision:"2",value:e.filterValue,onValueChange:t},null)])}function Zi(e,t,o,i,a,r){e.filterHistory=e.filterHistory||a.getFilterHistory(e),e.filter=e.filter||function(p){return(p[e.field]||"").startsWith(e.filterValue)};function l(p,b){a.removeFilterHistory(e,p.name),e.filterHistory=a.getFilterHistory(e)}function s(p){e.filterValue=p.name}function d(p){e.filterHistory=p}const u=i.rawView.value.reduce((p,b,h)=>(p.push(b[e.field]),p),[]),c=[...new Set(u)].map((p,b)=>({id:b,name:p}));return n.createVNode("div",{style:"display:flex;flex-direction:column;"},[n.createVNode(n.resolveComponent("f-search-box"),{modelValue:e.filterValue,"onUpdate:modelValue":p=>e.filterValue=p,"popup-host":t.value,"popup-right-boundary":o.value,"popup-offset-x":r.offsetX,"recommended-data":c},null),n.createVNode(n.resolveComponent("f-tags"),{style:"margin-top:10px","tag-type":"default",data:e.filterHistory,"show-close":!0,selectable:!0,onRemove:l,onSelectionChange:s,onChange:d},null)])}function er(e,t,o,i,a,r){e.filter=e.filter||function(b){return String(e.filterValue).split(",").includes(String(b[e.field]))};const l=",",s=i.rawView.value.reduce((b,h,x)=>(b.push(h[e.field]),b),[]),u=[...new Set(s)].map((b,h)=>({id:h,name:b}));function f(b){return(b==null?void 0:b.split(l))||[]}function c(b){return b.map(x=>x.name).join(l)}function p(b){e.filterValue=c(b)}return n.createVNode(n.resolveComponent("f-list-view"),{data:u,"multi-select":!0,"multi-select-mode":"OnCheckAndClick","id-field":"name",view:"SingleView",header:"Search",size:"Small","selection-values":f(e.filterValue),onSelectChange:b=>p(b)},{default:()=>[n.createTextVNode(" ")]})}function tr(e){n.ref("请输入关键词"),n.ref('<i class="f-icon f-icon-search"></i>');const t=[{name:"发票类型",checked:!1},{name:"发票代码",checked:!1},{name:"开票日期",checked:!1},{name:"票价(燃油附加费)",checked:!1},{name:"税收分类编号",checked:!1},{name:"不含税单价",checked:!1},{name:"往来单位",checked:!1},{name:"商品服务描述",checked:!1},{name:"项目负责人",checked:!1},{name:"所属单位",checked:!1}];return n.createVNode(n.resolveComponent("f-list-view"),{data:t,"multi-select":!0,view:"SingleView",size:"Small"},{default:()=>[n.createTextVNode(" ")]})}function rn(e,t,o,i,a){const r=new Map([["boolean","boolean-filter"],["date","date-filter"],["datetime","date-filter"],["number","numeric-filter"],["string","text-filter"],["text","text-filter"],["enum","enum-filter"],["reference","list-filter"]]),l=new Map([["boolean-filter",Xi],["date-filter",Ji],["enum-filter",er],["list-filter",tr],["numeric-filter",Qi],["text-filter",Zi]]);function s(d){var p,b;const u=((p=d.column)==null?void 0:p.dataType)||"string",f=((b=d.column)==null?void 0:b.filter)||r.get(u)||"text-editor",c=l.get(f);if(c)return c(d,e,t,o,i,a)}return{getFilterEditor:s}}function an(e){const o=n.ref(e.commandOption.enable||!1),i=n.ref(e.commandOption.commands||[]);function a(r){if(o.value&&!(r.value.findIndex(s=>s.dataType==="commands")>-1)){const s={field:"__commands__",title:"操作",width:120,fixed:"right",dataType:"commands",commands:i.value,visible:!0};r.value.push(s)}}return{applyCommands:a}}function ln(e,t,o,i,a,r,l){const{columnContext:s}=o,{getGridHeaderCells:d}=a,{groupFields:u}=r,f=n.ref(-1),c=n.ref(!1),p=n.computed(()=>u.value&&u.value.map(m=>{var g;return{name:((g=s.value.primaryColumnsMap.get(m))==null?void 0:g.title)||m,value:m}}));function b(m,g,_){var C,F,N;if(m.stopPropagation(),g){const k=`${(C=g.column)==null?void 0:C.title}:${(F=g.column)==null?void 0:F.field}`;(N=m.dataTransfer)==null||N.setData("Text",k),setTimeout(()=>{f.value=_,c.value=!0})}}function h(m,g){if(m.preventDefault(),f.value!==g){const{primaryColumns:_}=s.value,C=_[f.value],F=_;F.splice(f.value,1),F.splice(g,0,C),s.value.primaryHeaderColumns=Array.from(d(F).values()),f.value=g}}function x(m,g){m.preventDefault(),m.dataTransfer&&(m.dataTransfer.dropEffect="move")}function S(m,g){c.value=!1,i.updateDataView(),l.reCalculateVisualDataRows()}function y(m){var _;m.preventDefault(),m.stopPropagation();const g=(_=m.dataTransfer)==null?void 0:_.getData("Text");if(g){const C=g.split(":");C[0];const F=C[1];r.groupFields.value.push(F)}i.updateDataView(),l.reCalculateVisualDataRows()}return{dragstart:b,dragenter:h,dragover:x,dragend:S,dropOnGroupPanel:y,isDragging:c,groupColumnItems:p}}function sn(e,t,o,i,a){const r=n.ref({}),{getGridHeaderCells:l}=a,s=120,d=50,u=n.computed(()=>{var w;return((w=e.rowNumber)==null?void 0:w.enable)||!1}),f=n.computed(()=>{var w,T;return((w=e.selection)==null?void 0:w.multiSelect)||((T=e.selection)==null?void 0:T.showCheckbox)||!1}),c=n.computed(()=>{var w;return 0+(u.value?((w=e.rowNumber)==null?void 0:w.width)||32:0)+(f.value?d:0)}),p=n.computed(()=>{var w;return(w=e.columnOption)==null?void 0:w.fitColumns}),b=n.computed(()=>{var w;return p.value&&((w=e.columnOption)==null?void 0:w.fitMode)||"average"});function h(w,T,I){const V=parseInt(w.width,10)/100;return I*V}function x(w,T,I){return typeof w.width=="string"?h(w,T,I):w.width||s}function S(w,T){const I=[],V=[];let O=0;w.value.primaryColumns.filter(P=>P.visible).forEach(P=>{typeof P.width=="string"?V.push(P):(P.width=P.width||s,O+=P.width,I.push(P))});const $=T*(I.length/w.value.primaryColumns.filter(P=>P.visible).length);I.forEach(P=>{const E=$*(P.width/O);P.actualWidth=E,w.value.primaryColumnsWidth+=P.actualWidth});const B=T-$;V.forEach(P=>{const E=h(P,w.value,B);P.actualWidth=E,w.value.primaryColumnsWidth+=P.actualWidth})}function y(w,T){const I=T/(w.value.primaryColumns.filter(V=>V.visible).length||1);w.value.primaryColumns.filter(V=>V.visible).forEach(V=>{V.actualWidth=I,w.value.primaryColumnsWidth+=V.actualWidth})}function m(w,T){const I=[],V=[],O=new WeakMap;let $=0,B=0;if(w.value.primaryColumns.filter(E=>E.visible).forEach(E=>{if(typeof E.width=="string"){const j=h(E,w.value,T);O.set(E,j),$+=j,V.push(E)}else E.width=E.width||s,B+=E.width,I.push(E)}),T-$>B){const E=T-$;V.forEach(j=>{j.actualWidth=O.get(j)||s,w.value.primaryColumnsWidth+=j.actualWidth}),I.forEach(j=>{j.actualWidth=E*(j.width/B),w.value.primaryColumnsWidth+=j.actualWidth})}else S(w,T)}function g(w,T){w.value.primaryColumns.filter(I=>I.visible).forEach(I=>{I.actualWidth=x(I,w.value,T),w.value.primaryColumnsWidth+=I.actualWidth})}const _={average:y,expand:m,none:g,percentage:S};function C(w){w.value.leftHeaderColumns=Array.from(l(w.value.leftColumns.filter(T=>T.visible)).values()),w.value.primaryHeaderColumns=Array.from(l(w.value.primaryColumns.filter(T=>T.visible)).values()),w.value.rightHeaderColumns=Array.from(l(w.value.rightColumns.filter(T=>T.visible)).values())}function F(w){w.value.leftColumnsWidth=0,w.value.primaryColumnsWidth=0,w.value.rightColumnsWidth=0,w.value.leftColumns.filter(T=>T.visible).forEach(T=>{w.value.leftColumnsWidth+=T.actualWidth||0}),w.value.primaryColumns.filter(T=>T.visible).forEach(T=>{w.value.primaryColumnsWidth+=T.actualWidth||0}),w.value.rightColumns.filter(T=>T.visible).forEach(T=>{w.value.rightColumnsWidth+=T.actualWidth||0}),w.value=Object.assign({},w.value)}function N(w,T,I){var j;let V=0;const O=w.value.primaryColumns,$=w.value.rightColumns;w.value.rightColumns.filter(G=>G.visible).forEach(G=>{G.actualWidth=x(G,w.value,T),V+=G.actualWidth});const B=I-V,P=_[b.value];if(P&&P(w,B),w.value.primaryColumnsWidth+V<=I)return w.value.primaryColumns=[...O,...$],w.value.primaryColumnsWidth+=V,w.value.rightColumns=[],w.value.rightColumnsWidth=0,!0;const E=new Map;return E.set("primary",[]),E.set("right",[]),w.value.primaryColumns.reduce((G,X)=>{var ne,me;return X.fixed==="right"?(ne=G.get("right"))==null||ne.push(X):(me=G.get("primary"))==null||me.push(X),G},E),(j=E.get("right"))!=null&&j.length&&(w.value.primaryColumns=[...E.get("primary")||[]],w.value.rightColumns=[...E.get("right")||[]]),w.value.primaryColumnsWidth=0,w.value.rightColumnsWidth=0,!1}function k(w){const T={};return w.reduce((I,V,O)=>{const $=O<w.length-1?w[O+1]:null;return O===0&&(I[V.field]={left:0}),V.actualWidth!==void 0&&(I[V.field].width=V.actualWidth),$&&(I[$.field]={left:I[V.field].left+(V.actualWidth||0)}),I},T),T}function v(){return{left:k(t.value.leftColumns.filter(w=>w.visible)),primary:k(t.value.primaryColumns.filter(w=>w.visible)),right:k(t.value.rightColumns.filter(w=>w.visible))}}function M(){if(o.value){t.value.leftColumnsWidth=0,t.value.primaryColumnsWidth=0,t.value.rightColumnsWidth=0;const w=o.value.clientWidth-c.value;t.value.leftColumns.filter(I=>I.visible).forEach(I=>{I.actualWidth=x(I,t.value,w),t.value.leftColumnsWidth+=I.actualWidth});const T=w-t.value.leftColumnsWidth;if(N(t,w,T))i.value=T;else{t.value.rightColumns.filter(O=>O.visible).forEach(O=>{O.actualWidth=x(O,t.value,w),t.value.rightColumnsWidth+=O.actualWidth});const I=w-t.value.leftColumnsWidth-t.value.rightColumnsWidth,V=_[b.value];V&&V(t,I),i.value=I}C(t),t.value=Object.assign({},t.value),r.value=v()}}return n.watch(()=>{var w;return(w=e.columnOption)==null?void 0:w.fitColumns},(w,T)=>{w!==T&&w&&M()}),n.watch(b,(w,T)=>{w!==T&&p.value&&M()}),{calculateColumnHeaders:C,calculateColumnsSize:M,calculateColumnsWidth:F,cellPositionMap:r}}function cn(e,t){var u;const o=n.ref((u=e.columnOption)==null?void 0:u.groups);function i(f,c,p,b,h){const x={actualWidth:0,children:[],depth:1,field:f.field,layer:1,left:0,parent:p,resizable:!1,title:f.title||"",status:Me.none,popoverRef:n.ref(),showPopover:!1,column:null,filterValue:null,sortType:"none"},S=b||x;if(f.group){let y=1;f.group.reduce((m,g)=>{if(typeof g=="string"){const _=c.get(g);_&&(h.fieldToRootMap.set(g,S),m.actualWidth+=_.actualWidth,m.children.push(_))}else{const _=i(g,c,m,S,h);y=Math.max(y,_.depth),m.actualWidth+=_.actualWidth,m.children.push(_)}return m},x),x.depth+=y}return t.value.headerDepth=Math.max(t.value.headerDepth,x.depth),x}function a(f){const c={groupedCells:new Map,fieldToRootMap:new Map};return o.value&&o.value.reduce((p,b)=>{const h=i(b,f,null,null,c);return p.groupedCells.set(b.field,h),p},c),c}function r(f){if(!f||f.length===0)return 0;const c=f[0];return c.children&&c.children.length>0&&(c.left=r(c.children)),c.left}function l(f,c){const p=t.value.headerDepth;f.forEach(b=>{b.layer=c?c.layer+1:1;const h=b.children&&b.children.length===0;b.depth=h?p-(b.layer-1):1,b.left=h?b.left:r(b.children),b.children&&l(b.children,b)})}function s(f,c){const p=new Map;return f.forEach(b=>{const h=c.fieldToRootMap.get(b.field),x=h!=null;x&&!p.has(h.field)&&p.set(h.field,h),x||p.set(b.field,b)}),l(Array.from(p.values())),p}function d(f){let c=new Map,p=0;if(f.reduce((b,h)=>{let x=Me.none;x=h.sortable?x|Me.sortable:x,x=h.filterable?x|Me.filterable:x,x=h.sort&&h.sort!=="none"?x|Me.sorted|(h.sort==="asc"?Me.ascending:Me.descending):x;const S=h.binding&&h.binding.field?h.binding.field:h.field;return b.set(S,{actualWidth:h.actualWidth||0,children:[],depth:1,layer:1,left:p,field:S,parent:null,resizable:h.resizable||!1,title:h.title,status:x,popoverRef:n.ref(),showPopover:!1,column:h,filterValue:null,sortType:h.sort||"none",showSetting:h.showSetting}),p+=h.actualWidth||0,b},c),o.value){const b=a(c);c=s(c,b)}return c}return{getGridHeaderCells:d}}const dn={conditions:{type:Array,default:[]},fields:{type:Array,default:[]},key:{type:String,default:""},isControlInline:{type:Boolean,default:!0}};class nr{constructor(t={value:[]}){L(this,"editorType","check-box");L(this,"value");L(this,"valueType","boolean");this.value=t.value}clear(){this.value=[]}setValue(t){this.value=t}getValue(){return this.value}isEmpty(){return this.value.length===0}}class or{constructor(t={textValue:"",value:"",valueField:""}){L(this,"editorType","combo-lookup");L(this,"textValue");L(this,"value");L(this,"valueField");L(this,"valueType","text");this.textValue=t.textValue,this.value=t.value,this.valueField=t.valueField}clear(){this.value="",this.valueField="",this.textValue=""}getPropValue(t,o){if(o.length>1){const i=o.shift();return t[i]?this.getPropValue(t[i],o):null}return t[o[0]]}getTextValue(t){const o=t.split("."),i=this.value.split(",").map(a=>this.getPropValue(a,je.cloneDeep(o)));return i&&i.length?i.join(","):""}getValue(){const t=this.valueField.split("."),o=this.value.split(",").map(i=>this.getPropValue(i,je.cloneDeep(t)));return o&&o.length?o.join(","):""}setValue(t){throw new Error("Method not implemented.")}isEmpty(){return!this.valueField}}class ir{constructor(t={value:""}){L(this,"editorType","date-picker");L(this,"value");L(this,"valueType","datetime");this.value=t.value}setValue(t){this.value=t.formatted}getValue(){return this.value}isEmpty(){return!this.value}clear(){this.value=void 0}}class un{constructor(t={begin:"",end:""}){L(this,"editorType","date-range");L(this,"begin","");L(this,"end","");L(this,"valueType","datetime");this.begin=t.begin,this.end=t.end}clear(){this.begin="",this.end=""}getValue(){return!this.begin||!this.end?"":`${this.begin}~${this.end}`}setValue(t){t.dataRange?(this.begin=t.dataRange.split(t.delimiter)[0],this.end=t.dataRange.split(t.delimiter)[1]):this.clear()}isEmpty(){return!this.begin||!this.end}}class rr{constructor(t={value:""}){L(this,"editorType","datetime-picker");L(this,"value");L(this,"valueType","datetime");this.value=t.value}clear(){this.value=void 0}getValue(){return this.value}setValue(t){this.value=t.formatted}isEmpty(){return!this.value}}class ar{constructor(t={value:"",dispalyText:""}){L(this,"editorType","combo-list");L(this,"value");L(this,"valueType","enum");L(this,"displayText");this.displayText=t.dispalyText,this.value=t.value}clear(){this.value="",this.displayText=""}getValue(){return this.displayText}setValue(t){this.displayText=t.dispalyText,this.value=t.value}isEmpty(){return!this.displayText&&!this.value}}class lr{constructor(t={value:[],displayText:"",displayField:"",isInputText:!1}){L(this,"editorType","input-group");L(this,"value");L(this,"valueType","text");L(this,"displayText");L(this,"valueField");L(this,"isInputText");this.value=t.value,this.displayText=t.displayText,this.valueField=t.displayField,this.isInputText=t.isInputText}clear(){this.value=[],this.displayText="",this.valueField=""}getPropValue(t,o){if(o.length>1){const i=o.shift();return t[i]?this.getPropValue(t[i],o):""}return t[o[0]]}getTextValue(t){const o=t.split("."),i=this.value.map(a=>this.getPropValue(a,je.cloneDeep(o)));return i&&i.length?i.join(","):""}getValue(){const t=this.valueField.split(".")||[],o=this.value.map(i=>this.getPropValue(i,je.cloneDeep(t)));return o&&o.length?o.join(","):""}setValue(t){throw new Error("Method not implemented.")}isEmpty(){return!this.displayText&&!this.value.length}}class sr{constructor(t={textValue:"",value:[],valueField:"",isInputText:!1}){L(this,"editorType","lookup");L(this,"textValue");L(this,"value");L(this,"valueField");L(this,"valueType","text");L(this,"isInputText");this.value=t.value,this.valueField=t.valueField,this.textValue=t.textValue,this.isInputText=t.isInputText}clear(){this.value=[],this.valueField="",this.textValue=""}getPropValue(t,o){if(o.length>1){const i=o.shift();return t[i]?this.getPropValue(t[i],o):null}return t[o[0]]}getTextValue(t){const o=t.split("."),i=this.value.map(a=>this.getPropValue(a,o));return i&&i.length?i.join(","):""}getValue(){const t=this.valueField.split("."),o=this.value.map(i=>this.getPropValue(i,t));return o&&o.length?o.join(","):""}setValue(t){throw new Error("Method not implemented.")}isEmpty(){return!this.value.length}}class cr{constructor(t={value:""}){L(this,"editorType","month-picker");L(this,"value");L(this,"valueType","datetime");this.value=t.value}setValue(t){this.value=t.formatted}getValue(){return this.value}clear(){this.value=void 0}isEmpty(){return!this.value}}class dr{constructor(t={begin:"",end:""}){L(this,"editorType","month-range");L(this,"begin");L(this,"end");L(this,"valueType","datetime");this.begin=t.begin,this.end=t.end}clear(){this.begin="",this.end=""}getValue(){return!this.begin||!this.end?"":`${this.begin}~${this.end}`}setValue(t){t.dataRange?(this.begin=t.dataRange.split(t.delimiter)[0],this.end=t.dataRange.split(t.delimiter)[1]):this.clear()}isEmpty(){return!this.begin||!this.end}}class ur{constructor(t={begin:null,end:null}){L(this,"editorType","number-range");L(this,"begin");L(this,"end");L(this,"valueType","number");this.begin=t.begin==null?null:parseFloat(t.begin),this.end=t.end==null?null:parseFloat(t.end)}clear(){this.begin=null,this.end=null}getValue(){return{begin:this.begin,end:this.end}}setValue(t){this.begin=t.begin==null?null:parseFloat(t.begin),this.end=t.end==null?null:parseFloat(t.end)}isEmpty(){return this.begin==null&&this.end==null}}class fr{constructor(t={value:""}){L(this,"editorType","number-spinner");L(this,"value");L(this,"valueType","number");this.value=t.value==null?null:parseFloat(t.value)}clear(){this.value=void 0}getValue(){return this.value}setValue(t){this.value=isNaN(parseFloat(t))?null:t}isEmpty(){return this.value==null||isNaN(this.value)}}class pr{constructor(t={value:null}){L(this,"editorType","radio-group");L(this,"value");L(this,"valueType","enum");this.value=t.value}clear(){this.value=void 0}getValue(){return this.value}setValue(t){this.value=t}isEmpty(){return!this.value}}class fn{constructor(t={value:""}){L(this,"editorType","text");L(this,"value");L(this,"valueType","text");this.value=t.value}clear(){this.value=void 0}getValue(){return this.value}setValue(t){this.value=t}isEmpty(){return!this.value}}function pn(){function e(t,o){switch(t){case"check-box":return new nr(o);case"combo-list":return new ar(o);case"combo-lookup":return new or(o);case"input-group":return new lr(o);case"date-picker":return new ir(o);case"date-range":return new un(o);case"datetime-picker":return new rr(o);case"datetime-range":return new un(o);case"lookup":return new sr(o);case"month-picker":return new cr(o);case"month-range":return new dr(o);case"number-range":return new ur(o);case"number-spinner":return new fr(o);case"radio-group":return new pr(o);default:return new fn(o)}}return{createConditionValue:e}}function mn(e,t){const o=n.ref(e.fields),i=n.ref([]),a=new Map,{createConditionValue:r}=pn();function l(f){switch(f.editor?f.editor.type:"input-group"){case"date-range":f.editor.type="date-picker";break;case"datetime-range":f.editor.type="datetime-picker";break;case"number-range":f.editor.type="number-spinner";break}return f.editor}function s(f){return f.map(p=>Object.assign({},p)).map(p=>(p.editor=l(p),p))}function d(f=!0){o.value.reduce((c,p)=>(f||(p.editor=l(p)),c.set(p.labelCode,p),c),a)}function u(f){return f.forEach(c=>{if(c){const p=a.get(c.fieldCode);c.value=r(p.editor.type,c.value)}}),f}return{convertToSingleControl:s,fields:o,fieldMap:a,fieldConditions:i,loadFieldConfigs:d,initialConditionValue:u}}function mr(e,t,o){const i=n.ref(null),a=n.ref(o),r=n.ref(0);function l(f,c){let p=null;return function(){const b=arguments;p||(p=setTimeout(()=>{p=null},500),f(...b))}}function s(){a.value&&(i.value=new ResizeObserver(l(f=>{const c=f[0];r.value=c.contentRect.width})),i.value.observe(a.value))}function d(f){let p="col-12";return f>250*6?p="col-2":f>250*4?p="col-3":f>250*3?p="col-4":f>250*2&&(p="col-6"),p}const u=n.computed(()=>d(r.value));return n.watch([o],([f])=>{a.value=f,s()}),{conditionClass:u,resizeObserver:i}}const hn=n.defineComponent({name:"FConditionFields",props:dn,emits:["valueChange","blur","focus","click","input"],setup(e,t){const o=n.ref(),i=n.ref(e.key),a=n.ref(e.isControlInline),r=n.ref(e.conditions),l=mn(e),{initialConditionValue:s,fieldMap:d,loadFieldConfigs:u}=l,f=mr(e,t,o),{conditionClass:c,resizeObserver:p}=f;u(!0),s(r.value),n.onBeforeUnmount(()=>{var y;(y=p.value)==null||y.unobserve(o.value)}),n.watch(()=>e.conditions,()=>{r.value=e.conditions,s(r.value)});const b=n.computed(()=>({"f-utils-flex-row-wrap":!0,"farris-form":!0,"farris-form-controls-inline":a.value})),h=n.computed(()=>c.value);function x(y,m){t.emit("valueChange",y,m)}function S(){return r.value.map(y=>{var m;return n.createVNode(yt.FDynamicFormGroup,{customClass:h.value,label:y.fieldName,editor:(m=d.get(y.fieldCode))==null?void 0:m.editor,modelValue:y.value.value,"onUpdate:modelValue":g=>y.value.value=g,onChange:g=>{x(g,y)}},null)})}return()=>n.createVNode("div",{class:b.value,key:i.value,ref:o},[S()])}}),_t=new Map([["appearance",Ye]]),hr=new Map([]),gr="root-viewmodel";class yr{constructor(t,o){L(this,"formSchemaUtils");L(this,"controlCreatorUtils");L(this,"designViewModelUtils");this.resolver=t,this.designerHostService=o,this.formSchemaUtils=this.designerHostService.formSchemaUtils,this.controlCreatorUtils=this.designerHostService.controlCreatorUtils,this.designViewModelUtils=this.designerHostService.designViewModelUtils}createComponent(t){const o=this.createComponentRefNode(t),i=this.createComponentNode(t),a=this.createViewModeNode(t),r=this.formSchemaUtils.getFormSchema();return r.module.viewmodels.push(a),r.module.components.push(i),this.designViewModelUtils.assembleDesignViewModel(),o}createComponentRefNode(t){const o=this.resolver.getSchemaByType("component-ref");return Object.assign(o,{id:`${t.componentId}-component-ref`,component:`${t.componentId}-component`}),o}createComponentNode(t){const o=this.resolver.getSchemaByType("component"),i=this.createFormComponentContents(t);return Object.assign(o,{id:`${t.componentId}-component`,viewModel:`${t.componentId}-component-viewmodel`,componentType:t.componentType,appearance:{class:this.getFormComponentClass()},formColumns:t.formColumns,contents:i}),o}getFormComponentClass(){const{templateId:t}=this.formSchemaUtils.getFormSchema().module;return t==="double-list-in-tab-template"?"f-struct-wrapper f-utils-fill-flex-column":"f-struct-wrapper"}createFormComponentContents(t){const o=this.resolver.getSchemaByType("section");Object.assign(o,{id:t.componentId+"-form-section",appearance:{class:"f-section-form f-section-in-mainsubcard"},mainTitle:t.componentName});const i=this.resolver.getSchemaByType("response-form"),a=[];Object.assign(i,{id:t.componentId+"-form",appearance:{class:"f-form-layout farris-form farris-form-controls-inline"},contents:a}),o.contents=[i];const{selectedFields:r}=t;r==null||r.forEach(s=>{const d=je.cloneDeep(s),u=this.resolveControlClassByFormColumns(t),f=this.controlCreatorUtils.setFormFieldProperty(d,"",u);f&&a.push(f)});const{templateId:l}=this.formSchemaUtils.getFormSchema().module;return l==="double-list-in-tab-template"&&(o.appearance.class="f-section-grid f-section-in-main px-0 pt-0",o.fill=!0),[o]}resolveControlClassByFormColumns(t){let o="";switch(t.formColumns){case 1:{o="col-12";break}case 2:{o="col-12 col-md-6 col-xl-6 col-el-6";break}case 3:{o="col-12 col-md-6 col-xl-4 col-el-4";break}case 4:{o="col-12 col-md-6 col-xl-3 col-el-2";break}}return o}createViewModeNode(t){return{id:`${t.componentId}-component-viewmodel`,code:`${t.componentId}-component-viewmodel`,name:t.componentName,bindTo:t.bindTo,parent:gr,fields:this.assembleViewModelFields(t),commands:[],states:[],enableValidation:!0}}assembleViewModelFields(t){const o=[],{selectedFields:i}=t;return i==null||i.forEach(a=>{let r="blur";const l=a.type.name;(l===st.Enum||l===st.Boolean)&&(r="change"),o.push({type:"Form",id:a.id,fieldName:a.bindingField,groupId:null,groupName:null,updateOn:r,fieldSchema:{}})}),o}}function vr(e,t,o,i){var r,l,s,d,u;const a=o.parentComponentInstance;if(a&&i){const f=(r=a.schema)==null?void 0:r.type,p={componentId:`form-${Math.random().toString(36).slice(2,6)}`,componentName:((s=(l=o.bindingSourceContext)==null?void 0:l.bindingEntity)==null?void 0:s.name)||"标题",componentType:"form",formColumns:f==="splitter-pane"?1:4,parentContainerId:a.schema.id,bindTo:((d=o.bindingSourceContext)==null?void 0:d.bindTo)||"/",selectedFields:(u=o.bindingSourceContext)==null?void 0:u.bindingEntityFields};return new yr(e,i).createComponent(p)}else return t}function br(e,t,o){return t}Ge({customClass:{type:String,default:""},customStyle:{type:String,defaut:""}},{$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/response-form.schema.json",title:"response-form",description:"A Farris Data Collection Component",type:"object",properties:{id:{description:"The unique identifier for a form group",type:"string"},type:{description:"The type string of form group component",type:"string",default:"response-form"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},contents:{description:"",type:"array",default:[]}},required:["id","type"]},_t,vr);const gn={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/form-group.schema.json",title:"form-group",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a form group",type:"string"},type:{description:"The type string of form group component",type:"string",default:"form-group"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},enableLinkLabel:{description:"",type:"boolean",default:!1},editor:{description:"",type:"obejct"},label:{description:"",type:"string",default:""},lableWidth:{description:"",type:"number"},binding:{description:"",type:"object",default:{}}},required:["id","type"]},yn={id:{type:String,default:""},customClass:{type:String,default:""},customStyle:{type:String,default:""},editor:{type:Object,default:{}},label:{type:String,default:""},modelValue:{type:[String,Boolean,Array,Number],default:""},visible:{type:Boolean,default:!0},required:{type:Boolean,default:!1},showLabel:{type:Boolean,default:!0},type:{type:String,default:"input-group"}};Ge(yn,gn,_t,void 0);function Ft(e,t,o){var _;const i=o&&o.getStyles&&o.getStyles()||"",a=o&&o.getDesignerClass&&o.getDesignerClass()||"",r=n.ref();function l(){return(t==null?void 0:t.schema.componentType)==="frame"?!1:o&&o.checkCanMoveComponent?o.checkCanMoveComponent():!0}function s(){return!1}function d(){return(t==null?void 0:t.schema.componentType)==="frame"?!1:o&&o.checkCanDeleteComponent?o.checkCanDeleteComponent():!0}function u(){return(t==null?void 0:t.schema.componentType)==="frame"?!0:o&&o.hideNestedPaddingInDesginerView?o.hideNestedPaddingInDesginerView():!1}function f(C){if(!C||!C.value)return null;if(C.value.schema&&C.value.schema.type==="component")return C.value;const F=n.ref(C==null?void 0:C.value.parent),N=f(F);return N||null}function c(C=t){const{componentInstance:F,designerItemElementRef:N}=C;return!F||!F.value?null:F.value.canMove?N:c(C.parent)}function p(C){return!!o&&o.canAccepts(C)}function b(){return(t==null?void 0:t.schema.label)||(t==null?void 0:t.schema.title)||(t==null?void 0:t.schema.name)}function h(){}function x(C,F){F&&o!=null&&o.onAcceptMovedChildElement&&o.onAcceptMovedChildElement(F)}function S(C,F){const{componentType:N}=C;let k=Lt(N,C,F);o&&o.onResolveNewComponentSchema&&(k=o.onResolveNewComponentSchema(C,k));const v=N.toLowerCase().replace(/-/g,"_");return k&&!k.id&&k.type===N&&(k.id=`${v}_${Math.random().toString().slice(2,6)}`),k}function y(C){}function m(...C){if(o&&o.getPropsConfig)return o.getPropsConfig(...C)}function g(){o&&o.onRemoveComponent&&o.onRemoveComponent(),t!=null&&t.schema.contents&&t.schema.contents.map(C=>{var k;let F=C.id;C.type==="component-ref"&&(F=C.component);const N=e.value.querySelector(`#${F}-design-item`);(k=N==null?void 0:N.componentInstance)!=null&&k.value.onRemoveComponent&&N.componentInstance.value.onRemoveComponent()})}return r.value={canMove:l(),canSelectParent:s(),canDelete:d(),canNested:!u(),contents:t==null?void 0:t.schema.contents,elementRef:e,parent:(_=t==null?void 0:t.parent)==null?void 0:_.componentInstance,schema:t==null?void 0:t.schema,styles:i,designerClass:a,canAccepts:p,getBelongedComponentInstance:f,getDraggableDesignItemElement:c,getDraggingDisplayText:b,getPropConfig:m,getDragScopeElement:h,onAcceptMovedChildElement:x,onChildElementMovedOut:y,addNewChildComponentSchema:S,triggerBelongedComponentToMoveWhenMoved:!!o&&o.triggerBelongedComponentToMoveWhenMoved||n.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:!!o&&o.triggerBelongedComponentToDeleteWhenDeleted||n.ref(!1),onRemoveComponent:g},r}class ft{constructor(t,o){L(this,"componentId");L(this,"viewModelId");L(this,"eventsEditorUtils");L(this,"formSchemaUtils");L(this,"formMetadataConverter");L(this,"designViewModelUtils");L(this,"designViewModelField");L(this,"controlCreatorUtils");L(this,"designerHostService");L(this,"schemaService",null);L(this,"metadataService",null);L(this,"propertyConfig",{type:"object",categories:{}});var i;this.componentId=t,this.designerHostService=o,this.eventsEditorUtils=o.eventsEditorUtils,this.formSchemaUtils=o.formSchemaUtils,this.formMetadataConverter=o.formMetadataConverter,this.viewModelId=((i=this.formSchemaUtils)==null?void 0:i.getViewModelIdByComponentId(t))||"",this.designViewModelUtils=o.designViewModelUtils,this.controlCreatorUtils=o.controlCreatorUtils,this.metadataService=o.metadataService,this.schemaService=o.schemaService}getTableInfo(){var t;return(t=this.schemaService)==null?void 0:t.getTableInfoByViewModelId(this.viewModelId)}setDesignViewModelField(t){var i;const o=t.binding&&t.binding.type==="Form"&&t.binding.field;if(o){if(!this.designViewModelField){const a=this.designViewModelUtils.getDgViewModel(this.viewModelId);this.designViewModelField=a.fields.find(r=>r.id===o)}t.updateOn=(i=this.designViewModelField)==null?void 0:i.updateOn}}changeFieldEditorType(t,o){}getBasicPropConfig(t){return{description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"combo-list",textField:"name",valueField:"value",data:[{value:t.type,name:te[t.type].name}]}}}}}getAppearanceConfig(t=null){return{title:"样式",description:"Appearance",properties:{class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter"},style:{title:"style样式",type:"string",description:"组件的样式",$converter:"/converter/appearance.converter"}}}}updateElementByParentContainer(t,o){const i=o&&o.parent&&o.parent.schema;if(!i)return;const a=i.contents.findIndex(l=>l.id===t),r=je.cloneDeep(i.contents[a]);i.contents.splice(a,1),i.contents.splice(a,0,r)}}class Cr{constructor(){L(this,"label","");L(this,"id","");L(this,"columnInSM",12);L(this,"columnInMD",6);L(this,"columnInLG",3);L(this,"columnInEL",2);L(this,"displayWidthInSM",1);L(this,"displayWidthInMD",1);L(this,"displayWidthInLG",1);L(this,"displayWidthInEL",1);L(this,"displayColumnCountAtBreakPoint","md");L(this,"tagRow",0);L(this,"showTopBorder",0);L(this,"group",1);L(this,"isSupportedClass",!0);L(this,"fieldSetId","")}}function wr(e){let t,o;const i=new Map;let a=[];function r(f,c){const b=f.split(" ").filter(m=>m.startsWith("col-"));if(b.length===0){c.isSupportedClass=!1;return}let h=b.find(m=>/^col-([1-9]|10|11|12)$/.test(m)),x=b.find(m=>/^col-md-([1-9]|10|11|12)$/.test(m)),S=b.find(m=>/^col-xl-([1-9]|10|11|12)$/.test(m)),y=b.find(m=>/^col-el-([1-9]|10|11|12)$/.test(m));h=h||"col-12",c.columnInSM=parseInt(h.replace("col-",""),10),c.displayWidthInSM=c.columnInSM/12,c.displayWidthInSM!==1&&(c.isSupportedClass=!1),x=x||"col-md-"+c.columnInSM,c.columnInMD=parseInt(x.replace("col-md-",""),10),c.displayWidthInMD=c.columnInMD/6,[1,2].includes(c.displayWidthInMD)||(c.isSupportedClass=!1),S=S||"col-xl-"+c.columnInMD,c.columnInLG=parseInt(S.replace("col-xl-",""),10),c.displayWidthInLG=c.columnInLG/3,[1,2,3,4].includes(c.displayWidthInLG)||(c.isSupportedClass=!1),y=y||"col-el-"+c.columnInLG,c.columnInEL=parseInt(y.replace("col-el-",""),10),c.displayWidthInEL=c.columnInEL/2,[1,2,3,4,5,6].includes(c.displayWidthInEL)||(c.isSupportedClass=!1)}function l(f,c,p,b=!1){let h=!1;f.contents.forEach(x=>{if(x.type==="fieldset"){p+=1,l(x,c,p,!0),h=!0;return}h&&(p+=1,h=!1);const S=x.appearance&&x.appearance.class,y=new Cr;S?r(S,y):y.isSupportedClass=!1,y.label=x.label||x.id,y.id=x.id,y.group=p,b&&(y.fieldSetId=f.id),o===x.id&&(t=p),i.set(x.id,x),c.push(y)})}function s(f){const c=e.getComponentById(f);if(!c||!c.componentType||!c.componentType.startsWith("form"))return{result:!1,message:"只可以在响应式表单组件中调整响应式布局配置"};const p=e.selectNode(c,b=>b.type===Dt.DgControl["response-form"].type);return!p||!p.contents||p.contents.length===0?{result:!1,message:"Form区域内没有控件,请先添加控件"}:{result:!0,message:"",formNode:p}}function d(f,c){c=c||f.id;const{result:p,message:b,formNode:h}=s(c);if(!p)return{result:p,message:b};o=f.id,a=[],i.clear();const x=h.contents[0].type===Dt.DgControl.fieldset.type?0:1;l(h,a,x);const S=a.find(m=>!m.isSupportedClass);return{defaultState:{defaultGroupNumber:t||1,model:S?"customize":"standard"},importData:a}}function u(f,c){c=c;const{result:p,formNode:b}=s(c);if(!p)return"";const h=[];return f.forEach(x=>{var m;const S=i.get(x.id),y=S.appearance&&S.appearance.class;if(y){const _=y.split(" ").filter(M=>!M.startsWith("col-")),C="col-"+x.columnInSM,F="col-md-"+x.columnInMD,N="col-xl-"+x.columnInLG,k="col-el-"+x.columnInEL,v=[C,F,N,k].concat(_);S.appearance.class=v.join(" ")}if(x.fieldSetId){const g=b.contents.find(C=>C.id===x.fieldSetId),_=h.find(C=>C.id===x.fieldSetId);_?(m=_.contents)==null||m.push(S):(h.push(g),g.contents=[S])}else h.push(S)}),b.contents=h,b.id}return{checkCanFindFormNode:s,checkCanOpenLayoutEditor:d,changeFormControlsByResponseLayoutConfig:u,getResonseFormLayoutConfig:l}}const Sr={id:{type:String},required:{type:Boolean,default:!1},text:{type:String,default:""},title:{type:String}},xr=n.defineComponent({name:"FDynamicFormLabel",props:Sr,emits:[],setup(e,t){const o=n.ref(e.title||e.text),i=n.ref(e.required),a=n.ref(e.text);return n.watch(()=>e.text,()=>{a.value=e.text}),n.watch(()=>e.required,(r,l)=>{r!==l&&(i.value=r)}),()=>a.value&&n.createVNode("label",{class:"col-form-label",title:o.value},[i.value&&n.createVNode("span",{class:"farris-label-info text-danger"},[n.createTextVNode("*")]),n.createVNode("span",{class:"farris-label-text"},[a.value])])}}),_r=new Map([["appearance",Ye]]);function Fr(e,t,o){return t}const Vr={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/input-group.schema.json",title:"input-group",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:"input-group"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},editable:{description:"",type:"boolean",default:!0},enableLinkLabel:{description:"",type:"boolean",default:!1},label:{description:"",type:"string",default:""},labelWidth:{description:"",type:"number"},placeholder:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},disabled:{description:"",type:"boolean",default:!1},tabIndex:{description:"",type:"number",default:-1},textAlign:{description:"",type:"enum",enum:["left","middle","right"],default:"left"},visible:{description:"",type:"boolean",default:!0},onBlur:{description:"",type:"string",default:""},onClickLinkLabel:{description:"",type:"sting",default:""},addonDisabled:{description:"",type:"boolean",default:!1},addonContent:{description:"",type:"string",default:""},autoHeight:{description:"",type:"boolean",default:!1},enableAddon:{description:"",type:"boolean",default:!1},addonType:{description:"",type:"string",enum:["button","static"],default:"button"},enableClear:{description:"",type:"boolean",default:!0},enableViewPassword:{description:"",type:"boolean",default:!1},inputType:{description:"",type:"string",enum:["input","password","text"],default:"input"},maxHeight:{description:"",type:"number",default:500},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}}},showButtonWhenDisabled:{description:"",type:"boolean",default:!1},onClear:{description:"",type:"string",default:""}},required:["id","type"],ignore:["id","appearance","binding","visible"]},vn={id:{Type:String,default:""},autocomplete:{Type:String,default:"off"},customClass:{Type:String,default:""},disabled:{Type:Boolean,default:!1},editable:{Type:Boolean,default:!0},enableClear:{Type:Boolean,default:!0},enableTitle:{Type:Boolean,default:!0},enableViewPassword:{Type:Boolean,default:!0},forcePlaceholder:{Type:Boolean,default:!1},groupText:{Type:String,default:""},type:{Type:String,default:"text"},max:{type:[Number,String]},min:{type:[Number,String]},maxLength:{Type:Number||void 0,default:void 0},minLength:{Type:Number||void 0,default:void 0},modelValue:{Type:String||Boolean,default:""},showBorder:{Type:Boolean,default:!0},step:{Type:Number,default:1},placeholder:{Type:String,default:""},precision:{Type:Number,default:0},readonly:{Type:Boolean,default:!1},showButtonWhenDisabled:{Type:Boolean,default:!1},tabIndex:{Type:Number||void 0,default:void 0},textAlign:{Type:String,default:"left"},useExtendInfo:{Type:Boolean,default:!1},extendInfo:{Type:String,default:""},value:{Type:String,default:""},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1},updateOn:{type:String,default:"blur"}};Ge(vn,Vr,_r,Fr);function Nr(e,t){const o=n.ref(e.groupText),i=n.computed(()=>e.showButtonWhenDisabled&&(e.readonly||e.disabled)),a=n.computed(()=>e.enableClear||!!e.groupText);return{appendedButtonClass:n.computed(()=>({"input-group-append":!0,"append-force-show":i.value})),appendedContent:o,shouldShowAppendedButton:a}}function kr(e,t,o,i){const{appendedContent:a}=i,r=n.ref(e.enableViewPassword),l=n.computed(()=>e.type==="password"),s='<span class="f-icon f-icon-eye" style="color: rgb(56, 143, 255);"></span>',d='<span class="f-icon f-icon-eye"></span>',u=n.ref(!1);n.watch(()=>[e.readonly,e.disabled],([p,b])=>{l.value&&(o.value=p||b?"password":o.value,a.value=p||b?d:a.value)});function f(){return u.value=!u.value,o.value=u.value?"text":"password",a.value=u.value?s:d,!1}function c(){o.value=l.value?"password":"text",a.value=l.value?r.value?d:"":a.value}return c(),{isPassword:l,onClickAppendedButton:f}}function Tr(e,t,o){const i=n.ref(),{onBlurTextBox:a,onFocusTextBox:r,onInput:l,onKeyDown:s,textBoxValue:d}=o,u=n.computed(()=>e.disabled||e.readonly||!e.editable?"":e.placeholder),f=n.computed(()=>({"form-control":!0,"f-utils-fill":!0})),c=n.computed(()=>({"text-align":e.textAlign}));function p(x){x.stopPropagation()}function b(){e.selectOnCreated,e.focusOnCreated}async function h(x){r(x),await n.nextTick,b()}return n.onMounted(async()=>{await n.nextTick,b()}),()=>n.createVNode("input",{ref:i,class:f.value,style:c.value,type:"text",value:d.value,disabled:e.disabled,readonly:e.readonly||!e.editable,placeholder:u.value,onBlur:a,onChange:p,onFocus:h,onInput:l,onKeydown:s},null)}function Mr(e,t,o){const{canDownward:i,canUpward:a,onClickDownButton:r,onClickUpButton:l}=o,s=n.computed(()=>({"input-group-append":!0,"btn-group":!0,"btn-group-number":!0})),d=n.computed(()=>({btn:!0,"btn-secondary":!0,"btn-number-flag":!0})),u=n.computed(()=>({cursor:a()?"pointer":"not-allowed","margin-left":0})),f=n.computed(()=>({cursor:i()?"pointer":"not-allowed","margin-left":0}));return()=>n.createVNode("div",{class:s.value},[n.createVNode("button",{title:"upButton",class:d.value,style:u.value,onClick:l,disabled:!a()},[n.createVNode("span",{class:"f-icon f-icon-arrow-chevron-up number-arrow-chevron"},null)]),n.createVNode("button",{title:"downButton",class:d.value,style:f.value,onClick:r,disabled:!i()},[n.createVNode("span",{class:"f-icon f-icon-arrow-chevron-down number-arrow-chevron"},null)])])}function Ir(e,t){const o=lt.useNumber(e,t),i=lt.useFormat(e,t,o),a=lt.useSpinner(e,t,i,o),r=lt.useTextBox(e,t,i,o,a),l=Mr(e,t,a),{displayValue:s,modelValue:d,getRealValue:u}=o,f=Tr(e,t,r),{format:c}=i,{isFocus:p}=r,b=n.computed(()=>!e.disabled&&!e.readonly);return n.onMounted(()=>{const h=u(e.modelValue);s.value=c(h)}),n.watch(()=>[e.value],([h])=>{const x=u(h);d.value=x,s.value=c(x)}),n.watch(()=>[e.modelValue],([h])=>{h!==d.value&&(d.value=h,!p.value&&(s.value=c(u(h))))}),n.watch(()=>[e.precision,e.useThousands,e.prefix,e.suffix,e.showZero],()=>{s.value=c(d.value)}),()=>n.createVNode("div",{class:"input-group f-state-hover flex-row f-cmp-number-spinner"},[f(),b.value&&l()])}function Br(e,t,o,i){const a=n.ref(),r=n.ref(e.autocomplete),l=n.ref(e.enableTitle),{isPassword:s}=o,d=n.ref(e.minLength),u=n.ref(e.maxLength),f=n.ref(e.tabIndex),{disabled:c,displayText:p,inputType:b,onBlur:h,onFocus:x,onInput:S,onClick:y,onKeydown:m,onKeyup:g,onMousedown:_,onTextBoxValueChange:C,readonly:F,placeholder:N,textBoxClass:k,textBoxTitle:v}=i;return n.onMounted(()=>{e.selectOnCreated,e.focusOnCreated}),()=>n.createVNode("input",{ref:a,name:"input-group-value",autocomplete:r.value,class:k.value,disabled:c==null?void 0:c.value,maxlength:u.value,minlength:d.value,placeholder:N.value,readonly:F==null?void 0:F.value,tabindex:f.value,title:l.value&&!s.value?v.value:"",type:b.value,value:p==null?void 0:p.value,onBlur:h,onClick:y,onChange:C,onFocus:x,onInput:S,onKeydown:m,onKeyup:g,onMousedown:_},null)}function Or(e,t){const o=n.computed(()=>e.useExtendInfo&&!!e.extendInfo),i=n.reactive({content:e.extendInfo});function a(){t.emit("updateExtendInfo")}return()=>o.value&&n.withDirectives(n.createVNode("span",{class:"input-group-before-tips",onMouseenter:a},[n.createVNode("i",{class:"f-icon f-icon-info-circle"},null),n.createVNode("b",{class:"tips-arrow"},null)]),[[n.resolveDirective("tooltip"),i]])}function Pr(e,t,o,i,a){const{appendedButtonClass:r,appendedContent:l}=o,s=n.computed(()=>e.showButtonWhenDisabled&&(!e.editable||!e.readonly)&&!e.disabled),d=n.computed(()=>l.value&&!t.slots.groupTextTemplate),u=n.computed(()=>!!t.slots.groupTextTemplate),{clearButtonClass:f,clearButtonStyle:c,onClearValue:p,shouldShowClearButton:b}=i;function h(){return n.createVNode("span",{id:"clearIcon",class:f.value,style:c.value,onClick:N=>p(N)},[n.createVNode("i",{class:"f-icon modal_close"},null)])}function x(N){t.emit("iconMouseEnter",N)}function S(N){t.emit("iconMouseLeave",N)}function y(N){s.value&&t.emit("clickHandle",{originalEvent:N}),N.stopPropagation()}const m=e.type==="password"?a.onClickAppendedButton:y;function g(){return n.createVNode("span",{class:"input-group-text",onMouseenter:N=>x(N),onMouseleave:N=>S(N),innerHTML:l.value,onClick:N=>m(N)},null)}function _(){return t.slots.groupTextTemplate&&t.slots.groupTextTemplate()}function C(){return d.value?g:u.value?_:""}const F=C();return()=>n.createVNode("div",{class:r.value},[b.value&&h(),F&&F()])}const $r=n.defineComponent({name:"FInputGroup",props:vn,emits:["clear","change","blur","click","clickHandle","focus","input","keydown","keyup","iconMouseEnter","iconMouseLeave","update:modelValue","update:value","updateExtendInfo","valueChange"],setup(e,t){const o=n.ref(e.modelValue),i=n.ref(e.modelValue),a=Ee.useTextBox(e,t,o,i),{inputGroupClass:r,inputType:l,inputGroupStyle:s}=a,d=Nr(e),{shouldShowAppendedButton:u}=d,f=Ee.useClear(e,t,a),{onMouseEnter:c,onMouseLeave:p}=f,b=kr(e,t,l,d),h=Ir(e,t),x=Br(e,t,b,a),S=Pr(e,t,d,f,b),y=Or(e,t),m=n.computed(()=>e.type==="number");n.watch(()=>[e.value],([_])=>{o.value=_,i.value=_}),n.watch(()=>[e.modelValue],([_])=>{o.value=_,i.value=_}),n.onMounted(()=>{e.value&&(o.value=e.value,i.value=e.value)});const g=()=>n.createVNode(n.Fragment,null,[n.createVNode("div",{id:e.id,class:r.value,style:s.value,onMouseenter:c,onMouseleave:p},[m.value?h():n.createVNode(n.Fragment,null,[y(),x(),u.value&&S()])])]);return()=>g()}}),J={},Q={},Z={},ee={};let bn=!1;function jr(){bn||(bn=!0,fo.register(J,Q,Z,ee),uo.register(J,Q,Z,ee),po.register(J,Q,Z,ee),mo.register(J,Q,Z,ee),ho.register(J,Q,Z,ee),go.register(J,Q,Z,ee),at.register(J,Q,Z,ee),vt.register(J,Q,Z,ee),yo.register(J,Q,Z,ee),vo.register(J,Q,Z,ee),Co.register(J,Q,Z,ee),bo.register(J,Q,Z,ee),wo.register(J,Q,Z,ee),So.register(J,Q,Z,ee),xo.register(J,Q,Z,ee),yt.register(J,Q,Z,ee),_o.register(J,Q,Z,ee),jt.register(J,Q,Z,ee),Fo.register(J,Q,Z,ee),No.register(J,Q,Z,ee),ko.register(J,Q,Z,ee),To.register(J,Q,Z,ee),Io.register(J,Q,Z,ee),Mo.register(J,Q,Z,ee),Bo.register(J,Q,Z,ee),Oo.register(J,Q,Z,ee),Po.register(J,Q,Z,ee),$o.register(J,Q,Z,ee),lt.register(J,Q,Z,ee),co.register(J,Q,Z,ee),jo.register(J,Q,Z,ee),Eo.register(J,Q,Z,ee),Et.register(J,Q,Z,ee),Do.register(J,Q,Z,ee),Ro.register(J,Q,Z,ee),Go.register(J,Q,Z,ee),Ao.register(J,Q,Z,ee),Lo.register(J,Q,Z,ee),Wo.register(J,Q,Z,ee),Ho.register(J,Q,Z,ee),ri.register(J,Q,Z),qo.register(J,Q,Z,ee),zo.register(J,Q,Z,ee),Uo.register(J,Q,Z,ee),Ko.register(J,Q,Z,ee),Xo.register(J,Q,Z,ee),Yo.register(J,Q,Z,ee),so.register(J,Q,Z,ee),Rt.register(J,Q,Z,ee),Jo.register(J,Q,Z,ee),Qo.register(J,Q,Z,ee),lo.register(J,Q,Z,ee),Zo.register(J,Q,Z,ee),ti.register(J,Q,Z,ee),ei.register(J,Q,Z,ee),ni.register(J,Q,Z,ee),oi.register(J,Q,Z,ee),ii.register(J,Q,Z,ee),ai.register(J,Q,Z,ee),Vo.register(J,Q,Z,ee),li.register(J,Q,Z,ee))}function Er(){jr();function e(a){return J[a]||$r}function t(a,r){const l=Q[a];return l?l(r):{}}function o(a){switch(a){case"check-box":return"onChangeValue";case"switch":return"onModelValueChanged";case"check-group":return"onChangeValue";case"combo-list":case"combo-tree":return"onChange";case"combo-lookup":return"";case"date-picker":return"onDatePicked";case"date-range":return"";case"datetime-picker":return"";case"datetime-range":return"";case"month-picker":return"";case"month-range":return"";case"year-picker":return"";case"year-range":return"";case"input-group":return"onChange";case"lookup":return"onUpdate:modelValue";case"number-range":return"onValueChange";case"number-spinner":return"onValueChange";case"radio-group":return"onChangeValue";case"text":return"";case"response-layout-editor-setting":return"onChange";case"events-editor":return"onSavedCommandListChanged";case"grid-field-editor":return"onChange";case"item-collection-editor":return"onChange";case"response-form-layout-setting":return"onChange";case"field-selector":case"binding-selector":return"onFieldSelected";case"schema-selector":return"onSchemaSelected";case"mapping-editor":return"onMappingFieldsChanged";case"textarea":return"onValueChange";case"query-solution-config":return"onFieldsChanged"}}function i(a){switch(a){case"combo-list":case"input-group":case"textarea":return"onClear"}}return{resolveEditorProps:t,resolveEditorType:e,getChangeFunctionName:o,getClearFunctionName:i}}const Dr=n.defineComponent({name:"FDynamicFormGroup",props:yn,emits:["change","update:modelValue"],setup(e,t){const o=n.ref(e.id),i=n.ref(e.customClass),a=n.ref(e.editor),r=n.ref(e.label),l=n.ref(e.modelValue),s=n.ref(e.readonly),d=n.ref(e.required),u=n.ref(e.showLabel),f=n.ref(e.visible);n.ref(e.type);const c=n.ref(),{resolveEditorProps:p,resolveEditorType:b,getChangeFunctionName:h,getClearFunctionName:x}=Er(),S=n.computed(()=>({"form-group":!0,"farris-form-group":!0,"common-group":!0,"q-state-readonly":s.value}));function y(_,C){l.value=C!==void 0?C:_,t.emit("update:modelValue",l.value),t.emit("change",l.value)}function m(){t.emit("update:modelValue","")}const g=n.computed(()=>{const _=a.value.type||"input-group",C=b(_),F=p(_,a.value),N=h(_),k=x(a.value.type);return k&&(F[k]=m),F[N]=y,(F.id==null||F.id==="")&&(F.id=o.value),()=>n.createVNode(C,n.mergeProps({ref:c},F,{modelValue:l.value,"onUpdate:modelValue":v=>l.value=v}),t.slots)});return n.watch([()=>e.id,()=>e.customClass,()=>e.editor,()=>e.label,()=>e.modelValue,()=>e.readonly,()=>e.required,()=>e.showLabel,()=>e.visible],([_,C,F,N,k,v,M,w,T])=>{o.value=_,i.value=C,a.value=F,r.value=N,l.value=k,s.value=v,d.value=M,u.value=w,f.value=T}),t.expose({editorRef:c}),()=>f.value&&n.createVNode("div",{id:`${o.value}-input-group`,class:i.value,style:e.customStyle},[n.createVNode("div",{class:"farris-group-wrap"},[n.createVNode("div",{class:S.value},[u.value&&n.createVNode(xr,{id:`${o.value}-lable`,required:d.value,text:r.value,title:r.value},null),n.createVNode("div",{class:"farris-input-wrap"},[g.value()])])])])}}),Rr={},Gr={},it=class it{static getEditorTypesByMDataType(t){const o=it.fieldControlTypeMapping[t];return o||[{key:"",value:""}]}static getAllInputTypes(){const t=[];for(const o in it.fieldControlTypeMapping)it.fieldControlTypeMapping[o].forEach(i=>{t.find(a=>a.key===i.key&&a.value===i.value)||t.push({key:i.key,value:i.value})});return t}};L(it,"fieldControlTypeMapping",{String:[{key:te["input-group"].type,value:te["input-group"].name},{key:te.lookup.type,value:te.lookup.name},{key:te["date-picker"].type,value:te["date-picker"].name},{key:te["check-box"].type,value:te["check-box"].name},{key:te["check-group"].type,value:te["check-group"].name},{key:te["radio-group"].type,value:te["radio-group"].name},{key:te["combo-list"].type,value:te["combo-list"].name},{key:te.textarea.type,value:te.textarea.name}],Text:[{key:te.textarea.type,value:te.textarea.name},{key:te.lookup.type,value:te.lookup.name}],Decimal:[{key:te["number-spinner"].type,value:te["number-spinner"].name}],Integer:[{key:te["number-spinner"].type,value:te["number-spinner"].name}],Number:[{key:te["number-spinner"].type,value:te["number-spinner"].name}],BigNumber:[{key:te["number-spinner"].type,value:te["number-spinner"].name}],Date:[{key:te["date-picker"].type,value:te["date-picker"].name}],DateTime:[{key:te["date-picker"].type,value:te["date-picker"].name}],Boolean:[{key:te.switch.type,value:te.switch.name},{key:te["check-box"].type,value:te["check-box"].name}],Enum:[{key:te["combo-list"].type,value:te["combo-list"].name},{key:te["radio-group"].type,value:te["radio-group"].name}],Object:[{key:te.lookup.type,value:te.lookup.name},{key:te["combo-list"].type,value:te["combo-list"].name},{key:te["radio-group"].type,value:te["radio-group"].name}]});let ct=it;const pt=n.ref(0);function Ar(e,t){const o=t.getBoundingClientRect(),i=e.getBoundingClientRect(),a=i.top>=o.top,r=i.top<=o.bottom;return a&&r}function Hr(e){if(!e)return;let t;if(e.className.includes("dgComponentSelected")?t=e:t=e.querySelector(".dgComponentSelected"),!t)return;const o=t.getBoundingClientRect();if(o.width===0&&o.height===0)return;const i=t.querySelector(".component-btn-group");if(i){if(!Ar(t,e)){i.style.display="none";return}i.style.display="";const r=i.getBoundingClientRect(),l=i.querySelector("div");if(l){const s=l.getBoundingClientRect();l.style.top=r.top+"px",l.style.left=r.left-s.width+"px"}}}class Ae extends ft{constructor(o,i){super(o,i);L(this,"responseLayoutEditorFunction");this.responseLayoutEditorFunction=wr(this.formSchemaUtils)}getPropertyConfig(o,i){return this.propertyConfig.categories.basic=this.getBasicProperties(o,i),this.propertyConfig.categories.appearance=this.getAppearanceProperties(o,i),this.propertyConfig.categories.editor=this.getEditorProperties(o),this.propertyConfig}getBasicProperties(o,i){var r;const a=this;return this.setDesignViewModelField(o),this.formSchemaUtils.getFormMetadataBasicInfo(),{description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"编辑器类型",title:"编辑器类型",type:"string",refreshPanelAfterChanged:!0,$converter:"/converter/change-editor.converter",editor:{type:"combo-list",textField:"value",valueField:"key",editable:!1,data:a.designViewModelField?ct.getEditorTypesByMDataType((r=a.designViewModelField.type)==null?void 0:r.name):ct.getAllInputTypes()}},label:{title:"标签",type:"string",$converter:"/converter/form-group-label.converter"},binding:{description:"绑定的表单字段",title:"绑定",editor:{type:"binding-selector",bindingType:{enable:!1},editorParams:{componentSchema:o,needSyncToViewModel:!0,viewModelId:this.viewModelId,designerHostService:this.designerHostService,disableOccupiedFields:!0},textField:"bindingField"}}},setPropertyRelates(l,s){if(l)switch(l&&l.propertyID){case"type":{a.changeControlType(o,l,i);break}case"label":{l.needRefreshControlTree=!0;break}}}}}getAppearanceProperties(o,i){const a=this;return{title:"样式",description:"Appearance",properties:{class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter"},style:{title:"style样式",type:"string",description:"组件的样式",$converter:"/converter/appearance.converter"},responseLayout:{description:"响应式列宽",title:"响应式列宽",type:"boolean",visible:!0,refreshPanelAfterChanged:!0,editor:{type:"response-layout-editor-setting",initialState:a.responseLayoutEditorFunction.checkCanOpenLayoutEditor(o,a.componentId)}}},setPropertyRelates(r,l){if(r)switch(r&&r.propertyID){case"responseLayout":a.responseLayoutEditorFunction.changeFormControlsByResponseLayoutConfig(r.propertyValue,a.componentId||o.id),a.updateUnifiedLayoutAfterResponseLayoutChanged(a.componentId),a.updateElementByParentContainer(o.id,i),delete o.responseLayout;break;case"class":a.updateUnifiedLayoutAfterControlChanged(r.propertyValue,o.id,this.componentId),a.updateElementByParentContainer(o.id,i);break}}}}getEditorProperties(o){return this.getComponentConfig(o)}changeControlType(o,i,a){var f,c,p,b;const r=i.propertyValue,l=a&&a.parent&&a.parent.schema;if(!l)return;const s=l.contents.findIndex(h=>h.id===o.id),d=l.contents[s];let u;this.designViewModelField&&(this.designViewModelUtils.getDgViewModel(this.viewModelId).changeField(this.designViewModelField.id,{editor:{$type:r},name:this.designViewModelField.name,require:this.designViewModelField.require,readonly:this.designViewModelField.readonly},!1),u=this.controlCreatorUtils.setFormFieldProperty(this.designViewModelField,r)),u||(u=this.controlCreatorUtils.createFormGroupWithoutField(r)),Object.assign(u,{id:d.id,appearance:d.appearance,size:d.size,label:d.label,binding:d.binding,visible:d.visible}),Object.assign(u.editor,{isTextArea:u.isTextArea&&d.isTextArea,placeholder:(f=d.editor)==null?void 0:f.placeholder,holdPlace:(c=d.editor)==null?void 0:c.holdPlace,readonly:(p=d.editor)==null?void 0:p.readonly,require:(b=d.editor)==null?void 0:b.require}),l.contents.splice(s,1),l.contents.splice(s,0,u),a.schema=Object.assign(d,u),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(h=>h.classList.remove("dgComponentSelected")),pt.value++}getComponentConfig(o,i={},a={}){const r=Object.assign({description:"编辑器",title:"编辑器",type:"input-group",$converter:"/converter/property-editor.converter"},i),l=Object.assign({readonly:{description:"",title:"只读",type:"boolean"},disabled:{description:"",title:"禁用",type:"boolean"},placeholder:{description:"空值时,输入控件内的占位文本",title:"提示文本",type:"string"}},a);return{...r,properties:{...l}}}updateUnifiedLayoutAfterControlChanged(o,i,a){const r=o.split(" ");let l=r.find(c=>/^col-([1-9]|10|11|12)$/.test(c)),s=r.find(c=>/^col-md-([1-9]|10|11|12)$/.test(c)),d=r.find(c=>/^col-xl-([1-9]|10|11|12)$/.test(c)),u=r.find(c=>/^col-el-([1-9]|10|11|12)$/.test(c));l=l||"col-12",s=s||"col-md-"+l.replace("col-",""),d=d||"col-xl-"+s.replace("col-md-",""),u=u||"col-el-"+d.replace("col-xl-","");const f={id:i,columnInSM:parseInt(l.replace("col-",""),10),columnInMD:parseInt(s.replace("col-md-",""),10),columnInLG:parseInt(d.replace("col-xl-",""),10),columnInEL:parseInt(u.replace("col-el-",""),10)};this.updateUnifiedLayoutAfterResponseLayoutChanged(a,f)}updateUnifiedLayoutAfterResponseLayoutChanged(o,i){const{formNode:a}=this.responseLayoutEditorFunction.checkCanFindFormNode(o);if(!a||!a.unifiedLayout)return;const r=[];if(this.responseLayoutEditorFunction.getResonseFormLayoutConfig(a,r,1),i){const h=r.find(x=>x.id===i.id);Object.assign(h||{},i)}const l=r.map(h=>h.columnInSM),s=r.map(h=>h.columnInMD),d=r.map(h=>h.columnInLG),u=r.map(h=>h.columnInEL),f=this.checkIsUniqueColumn(l)?l[0]:null,c=this.checkIsUniqueColumn(s)?s[0]:null,p=this.checkIsUniqueColumn(d)?d[0]:null,b=this.checkIsUniqueColumn(u)?u[0]:null;Object.assign(a.unifiedLayout,{uniqueColClassInSM:f,uniqueColClassInMD:c,uniqueColClassInLG:p,uniqueColClassInEL:b})}checkIsUniqueColumn(o){const i=new Set(o);return Array.from(i).length===1}}class Lr extends Ae{constructor(t,o){super(t,o)}}Ge({id:{type:String,default:""},editor:{type:Object,default:{}},modelValue:{type:[String,Boolean,Array,Number],default:""},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1}},gn,_t,void 0);const Wr={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/grid-field-editor.schema.json",title:"response-form-layout-setting",description:"A Farris Data Grid 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:"response-form-layout-setting"},viewModelId:{description:"",type:"string",default:""},gridData:{description:"",type:"Object",default:null}},required:["id","type"]},qr={initialState:{type:Object,default:{uniqueColClassInSM:12,uniqueColClassInMD:6,uniqueColClassInLG:3,uniqueColClassInEL:2}}};Gt.createPropsResolver(qr,Wr,hr,br);const zr={width:{Type:Number,default:400},type:{Type:String,default:"info"},title:{Type:String,default:""},detail:{Type:String,default:""},okButtonText:{Type:String,default:"确定"},cancelButtonText:{Type:String,default:"取消"},exceptionInfo:{Type:Object,default:null},promptEditorType:{Type:String,default:"text-area"}};function Vt(){return new DOMException("The request is not allowed","NotAllowedError")}async function Ur(e){if(!navigator.clipboard)throw Vt();return navigator.clipboard.writeText(e)}async function Kr(e){const t=document.createElement("span");t.textContent=e,t.style.whiteSpace="pre",t.style.webkitUserSelect="auto",t.style.userSelect="all",document.body.appendChild(t);const o=window.getSelection(),i=window.document.createRange();o==null||o.removeAllRanges(),i.selectNode(t),o==null||o.addRange(i);let a=!1;try{a=window.document.execCommand("copy")}finally{o==null||o.removeAllRanges(),window.document.body.removeChild(t)}if(!a)throw Vt()}async function Xr(e){try{await Ur(e)}catch(t){try{await Kr(e)}catch(o){throw o||t||Vt()}}}function Yr(){async function e(t){await Xr(t)}return{onCopy:e}}function Jr(e,t,o,i){const a=n.ref(14),r=n.ref(140),l=n.ref(""),s=n.ref(i.value.length),d=n.computed(()=>i.value),u=n.computed(()=>({"font-size":`${a.value}px`,height:"100%"}));function f(c){if(c.currentTarget){const p=c.currentTarget.value||"";s.value=p.length}}return()=>n.createVNode(n.Fragment,null,[n.createVNode("textarea",{title:"promptMessage",name:"promptMessage",class:"form-control",style:u.value,rows:"4",maxlength:r.value,onInput:c=>f(c)},[d.value]),n.createVNode("span",{class:"textarea-wordcount",title:l.value,style:"position: absolute; bottom: 76px; right: 32px; cursor: pointer; text-align: right;"},[s.value+" / "+r.value])])}function Qr(e,t,o,i){const a=Jr(e,t,o,i),r=new Map([["text-area",a]]);function l(s){return r.get(s)||null}return{getEditorRender:l}}function Zr(){const e=n.ref(!1),t=n.ref("复制成功");return{feedbackStyle:n.computed(()=>{const i={position:"absolute",left:"50%",top:"50%",width:"100px",height:"40px",background:"#303C53","line-height":"40px","text-align":"center","margin-left":"-30px","margin-top":"-50px","border-radius":"10px","box-shadow":"0px 2px 8px 0px",color:"#fff",transition:"all .3s ease"};return i.opacity=e.value?"0.8":"0",i.display=e.value?"":"none",i}),feedbackMessage:t,toShowFeedback:e}}function ea(e,t){const o=t.getEditorRender(e.promptEditorType);return()=>o&&o()}function ta(e){const t=n.ref(3),o=n.ref(480),i=n.computed(()=>!!e.value&&!!e.value.date),a=n.computed(()=>`发生时间 : ${e.value&&e.value.date||""}`),r=n.computed(()=>!!e.value&&!!e.value.detail),l=n.computed(()=>{const S=`${o.value}px`;return{overflow:"hidden","text-overflow":"ellipsis",display:"-webkit-box","-webkit-box-orient":"vertical","-webkit-line-clamp":t.value,"max-height":S}}),s=n.computed(()=>e.value&&e.value.detail||""),d=n.computed(()=>!0),u=n.ref(!1),f=n.ref("展开"),c=n.ref("收起"),p=n.computed(()=>{const S={display:"block",color:"#2A87FF"};return S["text-align"]=u.value?"":"right",S});function b(S,y){u.value=!u.value,t.value=u.value?20:3}function h(S){return b()}function x(S){return b()}return()=>n.createVNode("div",{class:"toast-msg-detail"},[i.value&&n.createVNode("div",null,[a.value]),r.value&&n.createVNode("div",{id:"exception_error_msg",ref:"exceptionMessageRef",style:l.value},[n.createTextVNode("详细信息 : "),n.createVNode("span",{innerHTML:s.value},null)]),d.value&&n.createVNode("span",{style:p.value},[u.value&&n.createVNode("span",{onClick:h,style:"cursor: pointer;"},[c.value]),!u.value&&n.createVNode("span",{onClick:x,style:"cursor: pointer;"},[f.value])])])}function na(e){return()=>n.createVNode("p",{class:"toast-msg-detail",innerHTML:e.value},null)}function oa(e,t,o,i){const a=n.ref(e.exceptionInfo),r=n.computed(()=>{const p={"f-icon":!0},b=`f-icon-${t.value}`;return p[b]=!0,p}),l=n.computed(()=>o.value||a.value&&a.value.message),s=n.computed(()=>i.value),d=n.computed(()=>!!i.value),u=n.computed(()=>!!a.value);function f(){return u.value?ta(a):d.value?na(s):()=>null}const c=f();return()=>n.createVNode(n.Fragment,null,[n.createVNode("div",{class:"float-left modal-tips-iconwrap"},[n.createVNode("span",{class:r.value},null)]),n.createVNode("div",{class:"modal-tips-content"},[n.createVNode("p",{class:"toast-msg-title",innerHTML:l.value},null),c()])])}function ia(e,t,o){const{onCopy:i}=t,{toShowFeedback:a}=o,r=n.ref("复制成功"),l=n.ref("复制详细信息"),s=n.ref(e.exceptionInfo||{date:"",message:"",detail:""}),d=n.computed(()=>s.value&&s.value.detail||"");function u(f){i(d.value).catch(c=>{r.value="复制失败"}).finally(()=>{a.value=!0,setTimeout(()=>{a.value=!1},700)})}return()=>n.createVNode("span",{style:"width: 100%;color: #2A87FF;padding-left: 37px;"},[n.createVNode("span",{onClick:u,style:"cursor: pointer;"},[l.value])])}function ra(e,t,o,i){const a=n.ref(e.type),r=n.ref([]),l=n.ref(e.exceptionInfo),s=n.ref(e.okButtonText),d=n.ref(e.cancelButtonText),u=n.ref(!0),f=n.ref(!0),c=n.computed(()=>!!(r.value&&r.value.length)),p=n.computed(()=>l.value&&l.value.date&&l.value.message&&l.value.detail),b=n.computed(()=>!(r.value&&r.value.length)&&(s.value||d.value)),h=n.computed(()=>f.value&&s.value),x=n.computed(()=>u.value&&d.value),S=ia(e,o,i);function y(g){a.value==="question"&&t.emit("reject"),t.emit("close")}function m(g){a.value==="question"&&t.emit("accept"),t.emit("close")}return()=>n.createVNode("div",{class:"modal-footer"},[p.value&&S(),b.value&&x.value&&n.createVNode("button",{type:"button",class:"btn btn-secondary btn-lg",onClick:y},[d.value]),b.value&&h.value&&n.createVNode("button",{type:"button",class:"btn btn-primary btn-lg",onClick:m},[s.value]),c.value&&r.value.length&&r.value.map(g=>n.createVNode("button",{type:"button",onClick:g.handle,class:g.class},[g.iconClass&&n.createVNode("span",{class:g.iconClass},null),g.text]))])}const mt=n.defineComponent({name:"FMessageBox",props:zr,emits:["accept","reject","close"],setup(e,t){const o=n.ref(e.type),i=n.ref(e.title),a=n.ref(e.detail),r=n.computed(()=>{const S={"modal-tips":!0,"d-flex":!0,"flex-row":!0},y=`messager-type-${o.value}`;return S[y]=!0,S}),l=n.computed(()=>{const S={};return o.value==="prompt"?S.padding="0.5rem 0.5rem 1rem 1.5rem":o.value==="error"&&(S.padding="0.5rem 1.5rem 1rem 1.5rem"),S}),s=Yr(),d=Qr(e,o,i,a),u=Zr(),{feedbackStyle:f,feedbackMessage:c}=u;function p(){return n.createVNode("div",{style:f.value},[c.value])}function b(){switch(o.value){case"prompt":return ea(e,d);default:return oa(e,o,i,a)}}const h=b(),x=ra(e,t,s,u);return()=>n.createVNode("div",{class:"farris-messager"},[n.createVNode("section",{class:r.value,style:l.value},[h()]),x(),p()])}}),aa={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},reiszeable:{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}};class Be{constructor(t,o){this.x=t,this.y=o}static getTransformInfo(t){const i=window.getComputedStyle(t).getPropertyValue("transform").replace(/[^-\d,]/g,"").split(",");if(i.length>=6){const a=parseInt(i[4],10),r=parseInt(i[5],10);return{x:a,y:r}}return{x:0,y:0}}static fromEvent(t,o=null){if(this.isMouseEvent(t))return new Be(t.clientX,t.clientY);if(o===null||t.changedTouches.length===1)return new Be(t.changedTouches[0].clientX,t.changedTouches[0].clientY);for(let i=0;i<t.changedTouches.length;i++)if(t.changedTouches[i].target===o)return new Be(t.changedTouches[i].clientX,t.changedTouches[i].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 Be(0,0);if(window){const i=window.getComputedStyle(t);if(i){const a=parseInt(i.getPropertyValue("left"),10),r=parseInt(i.getPropertyValue("top"),10);o.x=isNaN(a)?0:a,o.y=isNaN(r)?0:r}return o}return null}static copy(t){return new Be(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 Qe{constructor(t,o){this.width=t,this.height=o}static getCurrent(t){const o=new Qe(0,0);if(window){const i=window.getComputedStyle(t);return i&&(o.width=parseInt(i.getPropertyValue("width"),10),o.height=parseInt(i.getPropertyValue("height"),10)),o}return null}static copy(t){return new Qe(0,0).set(t)}set(t){return this.width=t.width,this.height=t.height,this}}function la(e,t){const o=n.ref(),i=n.ref(),a=n.ref(),r=n.ref(),l=n.ref(),s=n.ref(),d=n.ref(),u=n.ref(),f=n.ref(),c=n.ref(),p=n.ref(),b=n.ref(),h=n.ref(e.draggable),x=n.ref(!1);function S(){const B=i.value||document.body,P=window.getComputedStyle(B);if(!P||!o.value)return;const E=Be.getTransformInfo(o.value),j={};d.value&&(j.deltaL=o.value.offsetLeft-d.value.x,j.deltaT=o.value.offsetTop-d.value.y);const G=P.getPropertyValue("position");j.width=B.clientWidth,j.height=B.clientHeight,j.pr=parseInt(P.getPropertyValue("padding-right"),10),j.pb=parseInt(P.getPropertyValue("padding-bottom"),10),j.position=P.getPropertyValue("position"),G==="static"&&(B.style.position="relative"),j.translateX=E.x,j.translateY=E.y,c.value=j}function y(B){if(o.value){r.value=Qe.getCurrent(o.value),l.value=Be.getCurrent(o.value),s.value=r.value?Qe.copy(r.value):null,d.value=l.value?Be.copy(l.value):null,S();const P=B.target.getAttribute("type")||"";u.value={n:!!P.match(/n/),s:!!P.match(/s/),w:!!P.match(/w/),e:!!P.match(/e/)}}}function m(){var B,P,E,j;if(o.value){const G=o.value;u.value&&((u.value.n||u.value.s)&&((B=s.value)!=null&&B.height)&&(G.style.height=s.value.height+"px"),(u.value.w||u.value.e)&&((P=s.value)!=null&&P.width)&&(G.style.width=s.value.width+"px"),d.value&&((E=d.value)!=null&&E.x&&(G.style.left=d.value.x+"px"),(j=d.value)!=null&&j.y&&(G.style.top=d.value.y+"px")))}}function g(){const B=e.minHeight?e.minHeight:1,P=e.minWidth?e.minWidth:1;s.value&&d.value&&u.value&&r.value&&(s.value.height<B&&(s.value.height=B,u.value.n&&l.value&&(d.value.y=l.value.y+(r.value.height-B))),s.value.width<P&&(s.value.width=P,u.value.w&&l.value&&(d.value.x=l.value.x+(r.value.width-P))),e.maxHeight&&s.value.height>e.maxHeight&&(s.value.height=e.maxHeight,l.value&&u.value.n&&(d.value.y=l.value.y+(r.value.height-e.maxHeight))),e.maxWidth&&s.value.width>e.maxWidth&&(s.value.width=e.maxWidth,u.value.w&&l.value&&(d.value.x=l.value.x+(r.value.width-e.maxWidth))))}function _(){if(i.value){const B=c.value;if(d.value&&s.value&&u.value&&r.value){const P=B.width-B.pr-B.deltaL-B.translateX-d.value.x,E=B.height-B.pb-B.deltaT-B.translateY-d.value.y;u.value.n&&d.value.y+B.translateY<0&&l.value&&(d.value.y=-B.translateY,s.value.height=r.value.height+l.value.y+B.translateY),u.value.w&&d.value.x+B.translateX<0&&l.value&&(d.value.x=-B.translateX,s.value.width=r.value.width+l.value.x+B.translateX),s.value.width>P&&(s.value.width=P),s.value.height>E&&(s.value.height=E)}}}function C(B){if(!a.value||!r.value||!l.value||!u.value)return;B.subtract(a.value);const P=B.x,E=B.y;u.value.n?(d.value.y=l.value.y+E,s.value.height=r.value.height-E):u.value.s&&(s.value.height=r.value.height+E),u.value.e?s.value.width=r.value.width+P:u.value.w&&(s.value.width=r.value.width-P,d.value.x=l.value.x+P),_(),g(),m()}function F(B){if(!f.value)return;const P=Be.fromEvent(B);P&&C(P)}function N(){if(o.value){const{width:B,height:P,x:E,y:j}=o.value.getBoundingClientRect(),G=Be.getTransformInfo(o.value);return{size:{width:B,height:P},position:{x:E-G.x,y:j-G.y}}}return null}function k(B){if(o.value){const P=N();p.value=P}a.value=void 0,r.value=null,l.value=null,s.value=null,d.value=null,u.value=null,f.value=null,document.removeEventListener("mousemove",F),document.removeEventListener("mouseup",k)}function v(){document.addEventListener("mousemove",F),document.addEventListener("mouseup",k)}function M(B){B instanceof MouseEvent&&B.button===2||h.value&&(B.stopPropagation(),B.preventDefault(),a.value=Be.fromEvent(B),f.value=B.target,y(B),v())}function w(B){return o.value=B,n.createVNode(n.Fragment,null,[n.createVNode("div",{class:"fv-resizable-handle fv-resizable-n",type:"n",onMousedown:P=>M(P)},null),n.createVNode("div",{class:"fv-resizable-handle fv-resizable-e",type:"e",onMousedown:P=>M(P)},null),n.createVNode("div",{class:"fv-resizable-handle fv-resizable-s",type:"s",onMousedown:P=>M(P)},null),n.createVNode("div",{class:"fv-resizable-handle fv-resizable-w",type:"w",onMousedown:P=>M(P)},null),n.createVNode("div",{class:"fv-resizable-handle fv-resizable-ne",type:"ne",onMousedown:P=>M(P)},null),n.createVNode("div",{class:"fv-resizable-handle fv-resizable-se fv-resizable-diagonal",type:"se",onMousedown:P=>M(P)},null),n.createVNode("div",{class:"fv-resizable-handle fv-resizable-sw",type:"sw",onMousedown:P=>M(P)},null),n.createVNode("div",{class:"fv-resizable-handle fv-resizable-nw",type:"nw",onMousedown:P=>M(P)},null)])}function T(B=!0){const P=i.value||document.body,E=Qe.getCurrent(P),j=o.value;B&&(b.value=N(),b.value.transform=j.style.transform),E&&j&&(s.value=E,j.style.height=s.value.height-14+"px",j.style.width=s.value.width-14+"px",j.style.left="7px",j.style.top="7px",j.style.transform="",p.value={size:s.value,position:{x:0,y:0}},h.value=!1,x.value=!0)}function I(){var B,P;if(b.value){const E={width:b.value.size.width||0,height:b.value.size.height||0},j={x:(window.innerWidth-E.width)/2,y:(window.innerHeight-E.height)/2};(B=s.value)==null||B.set(E),(P=d.value)==null||P.set(j);const G=o.value;G.style.height=E.height+"px",G.style.width=E.width+"px",G.style.left=`${j.x}px`,G.style.top=`${j.y}px`,G.style.transform="",p.value={size:E,position:j},h.value=e.draggable,x.value=!1}}function V(){if(o.value){const B=Qe.getCurrent(o.value);if(B){const{width:P,height:E}=B;o.value.style.left=`${(window.innerWidth-P)/2}px`,o.value.style.top=`${(window.innerHeight-E)/2}px`,o.value.style.transform=""}}}function O(){const B=()=>{x.value?T(!1):V()};return window.addEventListener("resize",B),()=>{window.removeEventListener("resize",B)}}const $=O();return{renderResizeBar:w,boundingElement:i,resizedEventParam:p,maximize:T,restore:I,allowDrag:h,isMaximized:x,unWindowResizeHandle:$}}function sa(e,t,o){const i=n.ref(),a=n.ref(e.draggable),r=n.ref(e.lockAxis),l=n.ref(),s=n.ref(),d=n.ref(!1),u=n.ref(new Be(0,0)),f=n.ref(new Be(0,0)),c=n.ref(new Be(0,0)),p=n.ref(new Be(0,0));n.watch(()=>o.value,N=>{l.value.style.cursor=N?"move":"default"});function b(N,k){if(k.tagName==="BUTTON")return!1;if(k===N)return!0;for(const v in k.children)if(Object.prototype.hasOwnProperty.call(k.children,v)&&b(N,k.children[v]))return!0;return!1}function h(){var M,w;let N=c.value.x+f.value.x,k=c.value.y+f.value.y;r.value==="x"?(N=((M=u.value)==null?void 0:M.x)||0,c.value.x=0):r.value==="y"&&(k=((w=u.value)==null?void 0:w.y)||0,c.value.y=0);const v=`translate3d(${Math.round(N)}px, ${Math.round(k)}px, 0px)`;i.value&&(i.value.style.transform=v),p.value.x=N,p.value.y=k}function x(){if(!s.value||!i.value)return null;const N=s.value.getBoundingClientRect(),k=i.value.getBoundingClientRect(),v={top:N.top<k.top,right:N.right>k.right,bottom:N.bottom>k.bottom,left:N.left<k.left};return v.top||(c.value.y-=k.top-N.top),v.bottom||(c.value.y-=k.bottom-N.bottom),v.right||(c.value.x-=k.right-N.right),v.left||(c.value.x-=k.left-N.left),h(),v}function S(N){N&&(u.value&&N.subtract(u.value),c.value.set(N),h(),x())}function y(N){d.value&&a.value&&(N.stopPropagation(),N.preventDefault(),S(Be.fromEvent(N,l.value)))}function m(){var N;d.value&&(d.value=!1,f.value.add(c.value),c.value.reset(),(N=i.value)==null||N.classList.remove("ng-dragging"),document.removeEventListener("mousemove",y),document.removeEventListener("mouseup",m))}function g(){!d.value&&l.value&&(d.value=!0,l.value.classList.add("ng-dragging"),document.addEventListener("mousemove",y),document.addEventListener("mouseup",m))}function _(){if(i.value){const N=Be.getTransformInfo(i.value);f.value.set(N);return}f.value.reset()}function C(N){if(!o.value||N instanceof MouseEvent&&N.button===2)return;const k=N.target||N.srcElement;l.value!==void 0&&k&&!b(k,l.value)||a.value!==!1&&(document.body.click(),N.stopPropagation(),N.preventDefault(),u.value=Be.fromEvent(N,i.value),_(),g())}function F(N,k,v){if(a.value&&k){if(N)l.value=N;else if(e.dragHandle){if(e.dragHandle instanceof HTMLElement)l.value=e.dragHandle;else if(typeof e.dragHandle=="string"){const M=k.querySelector(e.dragHandle);M&&(l.value=M)}}i.value=k,s.value=v,l.value.classList.add("ng-draggable"),l.value.addEventListener("mousedown",C)}}return{registerDraggle:F,resetTranslate:_}}function Cn(e,t){if(e){const o=i=>{i.key.toLowerCase()===e.toLowerCase()&&t({event:i,key:e})};return document.addEventListener("keydown",o),()=>{document.removeEventListener("keydown",o)}}}function ca(e,t){const o=n.ref(e.enableEsc);let i=null;return o.value?(i=Cn("Escape",a=>{t.emit("esc",{event:a.event,type:"esc"})}),{remove:i}):null}function da(e,t){const o=n.ref(e.enableEnter);let i=null;return o.value?(i=Cn("Enter",a=>{t.emit("enter",{event:a.event,type:"enter"})}),{remove:i}):null}const wn=n.defineComponent({name:"FModal",props:aa,emits:["update:modelValue","accept","cancel","closed","resize","esc","enter"],setup(e,t){const o=n.ref(e.width||300),i=n.ref(e.height||200),a=n.ref(e.modelValue),r=n.ref(""),l=n.ref(e.class),s=n.ref(e.fitContent),d=n.ref(e.showHeader),u=n.ref(""),f=n.ref(e.showCloseButton),c=n.ref(e.showMaxButton),p=n.ref(!1),b=n.ref(""),h=n.ref(""),x=n.ref(""),S=n.ref(e.showButtons),y=n.ref(e.title),m=n.ref(e.reiszeable),g=n.ref(e.containment||null),_=n.ref();function C(W,R){a.value=!1,t.emit("update:modelValue",!1),R!=null&&t.emit(R?"accept":"cancel"),t.emit("closed",W)}const F=[{name:"cancel",text:"取消",class:"btn btn-secondary",handle:W=>{C(W,!1)}},{name:"accept",text:"确定",class:"btn btn-primary",handle:W=>{C(W,!0)}}],N=n.ref(e.buttons&&e.buttons.length?e.buttons:F),k=n.computed(()=>!!u.value),v=n.computed(()=>!!S.value&&!!N.value),M=n.ref(),w=n.ref(),T=n.ref(!1),{renderResizeBar:I,maximize:V,restore:O,boundingElement:$,resizedEventParam:B,allowDrag:P,unWindowResizeHandle:E}=la(e),{registerDraggle:j}=sa(e,t,P);n.watch(()=>e.title,(W,R)=>{W!==R&&(y.value=W)}),n.watch(()=>e.modelValue,(W,R)=>{W!==R&&(a.value=W)}),n.watch(()=>e.showHeader,(W,R)=>{W!==R&&(d.value=W)}),n.watch(()=>e.showButtons,(W,R)=>{W!==R&&(S.value=W)}),n.watch(()=>B.value,(W,R)=>{const oe=W||{},D=R||{};JSON.stringify(oe)!==JSON.stringify(D)&&t.emit("resize",{newSize:W,oldSize:R})});function G(){const W=document.querySelectorAll(".farris-modal").length;(!W||W-1<=0)&&document.body.classList.remove("modal-open"),_.value&&_.value.classList.remove("show")}const X=n.computed(()=>(a.value?document.body.classList.add("modal-open"):G(),a.value)),ne=n.computed(()=>{const W={modal:!0,"farris-modal":!0,fade:!0};return W["f-modal-fitContent"]=!!s.value,W.show=!!X.value,W}),me=n.computed(()=>{var oe;const W={"modal-dialog":!0},R=(oe=l.value)==null?void 0:oe.split(" ");return R==null||R.reduce((D,ae)=>(D[ae]=!0,D),W),W}),Ne=n.computed(()=>({position:"absolute",top:`${(window.innerHeight-i.value)/2}px`,left:`${(window.innerWidth-o.value)/2}px`,width:`${o.value}px`,height:s.value?"auto":`${i.value}px`})),ge=n.computed(()=>({"modal-content":!0,"modal-content-has-header":d.value})),Se=n.computed(()=>{const W={display:d.value?"":"none"};return W["pointer-events"]=P.value?"auto":"none",W}),xe=n.computed(()=>({"f-icon":!0,modal_maximize:!0,modalrevert:T.value})),pe=n.computed(()=>({"modal-body":!0,"f-utils-flex-column":b.value==="iframe"}));function ye(){return{}}const Ce=n.computed(()=>{const W={textAlgin:x.value},R=ye();return Object.assign(W,R)});function K(W){if(W.stopPropagation(),T.value){T.value=!1,O();return}V(),T.value=!0}async function Y(W,R){W.handle&&await W.handle(R,W)&&t.emit("closed",R)}function ue(W){W.width&&(o.value=W.width),W.height&&(i.value=W.height),W.buttons&&(N.value=W.buttons),W.title&&(y.value=W.title)}let Fe=null,se=null;n.onMounted(()=>{w.value&&!g.value&&(g.value=w.value.parentElement,$.value=g.value,j(M.value,w.value,$.value)),X.value&&document.body.classList.add("modal-open"),Fe=ca(e,t),se=da(e,t)}),n.onUnmounted(()=>{G(),E&&E(),Fe&&Fe.remove(),se&&se.remove()}),t.expose({modalElementRef:w,updateModalOptions:ue,close:C,maxDialog:K});function re(){return n.createVNode("ul",null,[p.value&&n.createVNode("li",{class:"f-btn-icon f-bare"},[n.createVNode("span",{class:"f-icon modal_minimize"},null)]),c.value&&n.createVNode("li",{onClick:K,class:"f-btn-icon f-bare",style:"pointer-events: auto;"},[n.createVNode("span",{class:xe.value},null)]),f.value&&n.createVNode("li",{class:"f-btn-icon f-bare",onClick:W=>C(W,!1),style:"pointer-events: auto;"},[n.createVNode("span",{class:"f-icon modal_close"},null)])])}function he(){return n.createVNode("div",{class:"modal-footer",style:Ce.value},[N.value&&N.value.map(W=>n.createVNode("button",{name:W.name,type:"button",class:W.class+(W.iconClass?" btn-icontext":""),onClick:R=>{Y(W,R)}},[!!W.iconClass&&n.createVNode("i",{class:W.iconClass},null),W.text]))])}function ve(){return n.createVNode("div",{ref:M,class:"modal-header",style:Se.value},[n.createVNode("div",{class:"modal-title"},[k.value&&n.createVNode("span",{class:u.value,style:"margin-right: 8px"},null),n.createVNode("span",{class:"modal-title-label"},[y.value])]),n.createVNode("div",{class:"actions"},[re()])])}function be(W){W.stopPropagation()}return()=>n.createVNode(n.Teleport,{to:"body"},{default:()=>[X.value&&n.createVNode(n.Transition,{name:"fade",appear:!0},{default:()=>{var W,R;return[n.createVNode("div",{class:ne.value,style:"display: block",ref:_,onClick:be},[n.createVNode("div",{id:r.value,class:me.value,style:Ne.value,ref:w},[n.createVNode("div",{class:ge.value},[d.value&&ve(),n.createVNode("div",{class:pe.value},[(R=(W=t.slots).default)==null?void 0:R.call(W),b.value==="iframe"&&n.createVNode("iframe",{title:r.value,class:"f-utils-fill",width:"100%",frameborder:"0",src:h.value},null)]),v.value&&he()]),!s.value&&m.value&&w.value&&I(w.value)])])]}})]})}});function Sn(e){if(e.content&&e.content.render)return e.content.render;if(e.render&&typeof e.render=="function")return e.render}function ua(e){const t=document.createElement("div");t.style.display="contents";const o=n.createApp({setup(i,a){n.onUnmounted(()=>{document.body.removeChild(t)});const r=n.ref(),l=n.ref(e.class||""),s=n.ref(!!e.showButtons),d=n.ref(!!e.showHeader),u=n.ref(e.showCloseButton==null?!0:e.showCloseButton),f=n.ref(!0),c=n.ref(e.title||""),p=e.acceptCallback||(()=>{}),b=e.rejectCallback||(()=>{}),h=e.closedCallback||(m=>{}),x=e.resizeHandle||(m=>{}),S=Sn(e),y=m=>{f.value=!1,o.unmount(),h(m)};return n.onMounted(()=>{}),a.expose({modalRef:r}),()=>n.createVNode(wn,{ref:r,class:l.value,modelValue:f.value,"onUpdate:modelValue":m=>f.value=m,title:c.value,width:e.width,height:e.height,buttons:e.buttons,"show-header":d.value,"show-buttons":s.value,"show-close-button":u.value,"show-max-button":!1,onAccept:p,onCancel:b,fitContent:e.fitContent==null?!0:e.fitContent,onClosed:y,onResize:x},{default:()=>[S&&S(o)]})}});return document.body.appendChild(t),o.mount(t),o}class fa{constructor(t){L(this,"appContext",null);L(this,"modalRef",n.ref());L(this,"activeModalIndex",n.ref(0));L(this,"modalRefs",{});L(this,"isUseEscCloseModal",n.ref(!1));L(this,"activeModalInstance",n.computed(()=>this.modalRefs[this.activeModalIndex.value]));this.app=t,this.appContext=t?t._context:null}getCurrentModal(){return this.activeModalInstance.value}static show(t){const o=Object.assign({title:"",showButtons:!0,showHeader:!0},t);return ua(o)}open(t){const o=document.createDocumentFragment();t.showMaxButton&&t.fitContent&&(t.showMaxButton=!1);const i=n.shallowRef(Object.assign({title:"",showButtons:!0,showHeader:!0},t)),a=n.ref(!0),r=i.value.acceptCallback||(()=>{}),l=i.value.rejectCallback||(()=>{}),s=i.value.closedCallback||((y,m)=>{}),d=i.value.resizeHandle||(y=>{});let u;const f=Sn(i.value),c=y=>{var g;a.value=!1;const m=(g=y==null?void 0:y.target)==null?void 0:g.classList.contains("modal_close");s(y,this.isUseEscCloseModal.value?"esc":m?"icon":"button")},p=y=>{c(y),u&&n.nextTick(()=>{if(this.modalRefs[this.activeModalIndex.value]&&delete this.modalRefs[this.activeModalIndex.value],n.render(null,o),u=null,this.modalRef.value=null,this.modalRefs){const m=Object.keys(this.modalRefs).map(g=>Number(g));m.length>0?this.activeModalIndex.value=Math.max(...m):this.activeModalIndex.value=0}this.isUseEscCloseModal.value=!1})},b=y=>{var m;this.isUseEscCloseModal.value=!0,this.activeModalInstance&&((m=this.activeModalInstance.value)==null||m.close(y==null?void 0:y.event))},h=()=>n.createVNode(wn,n.mergeProps({ref:this.modalRef,modelValue:a.value,"onUpdate:modelValue":y=>a.value=y},i.value,{onAccept:r,onCancel:l,onClosed:p,onResize:d,onEsc:b}),{default:()=>[f&&f(this.app)]});return u=(y=>{const m=n.h(h,y);return m.appContext=this.appContext,n.render(m,o),m})({...i.value}),this.activeModalIndex.value++,this.modalRefs[this.activeModalIndex.value]=this.modalRef.value,{update:y=>{i.value={...i.value,...y},u&&n.render(n.cloneVNode(u,{...i}),o)},destroy:p,modalRef:this.activeModalInstance}}}const pa=Symbol("FModalService");class ze{static show(t){const o=n.reactive({...t}),i=!1,a=o.type==="error"||o.type==="prompt",r=o.type==="error"?"错误提示":o.type==="prompt"&&o.title||"",l=o.acceptCallback||(()=>{}),s=o.rejectCallback||(()=>{});let d=null,u=new fa(d);const f=()=>{d&&(d==null||d.destroy(),u=null)};d=u==null?void 0:u.open({class:"modal-message modal-message-type-info",title:r,showButtons:i,showHeader:a,width:o.width||400,fitContent:!0,showMaxButton:!1,render:()=>n.createVNode(mt,n.mergeProps(o,{onAccept:l,onReject:s,onClose:f}),null)})}static info(t,o){const i=n.reactive({type:"info",title:t,detail:o,okButtonText:"知道了",cancelButtonText:""});ze.show(i)}static warning(t,o){const i=n.reactive({type:"warning",title:t,detail:o,okButtonText:"知道了",cancelButtonText:""});ze.show(i)}static success(t,o){const i=n.reactive({type:"success",title:t,detail:o,okButtonText:"关闭",cancelButtonText:""});ze.show(i)}static error(t,o,i){const a=n.reactive({width:500,type:"error",okButtonText:"关闭",cancelButtonText:"",exceptionInfo:{date:i,message:t,detail:o}});ze.show(a)}static prompt(t,o){const i=n.reactive({type:"prompt",title:t,detail:o,okButtonText:"确定",cancelButtonText:"取消"});ze.show(i)}static question(t,o,i,a){const r=n.reactive({type:"question",title:t,detail:o,okButtonText:"确定",cancelButtonText:"取消",acceptCallback:i,rejectCallback:a});ze.show(r)}}mt.install=e=>{e.component(mt.name,mt),e.provide("FMessageBoxService",ze)};var xn=(e=>(e[e.Value=0]="Value",e[e.SmartHelp=1]="SmartHelp",e[e.Enum=2]="Enum",e[e.Express=3]="Express",e))(xn||{}),_n=(e=>(e.Equal="0",e.NotEqual="1",e.Greater="2",e.GreaterOrEqual="3",e.Less="4",e.LessOrEqual="5",e.Like="6",e.LikeStartWith="7",e.LikeEndWith="8",e))(_n||{});const ma=[{value:"0",name:"等于"},{value:"1",name:"不等于"},{value:"2",name:"大于"},{value:"3",name:"大于等于"},{value:"4",name:"小于"},{value:"5",name:"小于等于"},{value:"6",name:"包含"},{value:"7",name:"开始是"},{value:"8",name:"结束是"}],ha={"button-edit":["0","1"," 6","7","8"],"check-box":["0"],"combo-list":["0","1"],"combo-lookup":["0","1"," 6","7","8"],"date-picker":["0","1","2","3","4","5"],"date-range":[],"datetime-picker":["0","1","2","3","4","5"],"datetime-range":[],"month-picker":["0","1","2","3","4","5"],"month-range":[],"year-picker":["0","1","2","3","4","5"],"year-range":[],"input-group":["0","1","6","7","8"],lookup:["0","1"],"number-range":[],"number-spinner":["0"," 1","2","3","4","5"],"radio-group":["0"],text:["0","1"," 6","7","8"]};function ga(e,t,o){const{fieldMap:i}=o;function a(r){const l=i.get(r.fieldCode);if(!l)return[];const s=l.editor.type,d=new Set(ha[s]);return ma.filter(f=>d.has(f.value))}return{getCompareOperators:a}}function Fn(){const e=n.ref({relation:0,items:[],children:[],path:[],groupId:0,level:0}),t=new Map,o=new Map;let i=0;function a(){return{id:"",fieldCode:"",fieldName:"",compareType:_n.Equal,valueType:xn.Value,value:new fn,relation:0,conditionId:Date.now()}}function r(v,M){return{relation:v,items:[],children:[],path:[],groupId:++i,level:M}}function l(){const v=Object.assign({},e.value);o.forEach((M,w)=>{M.groupId===v.groupId&&o.set(w,v)}),t.forEach((M,w)=>{M.groupId===v.groupId&&t.set(w,v)}),e.value=v}function s(v){const M=new Map;let w=0;return v.forEach((T,I)=>{var V,O;if(w+=((V=T.lBracket)==null?void 0:V.length)||0,M.set(I,w),w-=((O=T.rBracket)==null?void 0:O.length)||0,w<0)throw new Error("The right bracket is out of range.")}),M}function d(v,M,w,T,I){for(let V=0;V<M;V++){const O=v+(V+1),$=r(I,O);w.children.push($),o.set($.groupId,w),w=w.children[w.children.length-1],T.push(w)}return w}function u(v,M,w,T,I){for(let B=M;B<=0;B++)T.pop();const V=T[T.length-1];if(!V)throw new Error("The group path is out of range");const O=v+M,$=r(I,O);return V.children.push($),o.set($.groupId,V),w=V.children[V.children.length-1],T.push(w),w}function f(v,M,w,T){w.pop();const I=w[w.length-1],V=r(T,v);return I.children.push(V),o.set(V.groupId,I),M=I.children[I.children.length-1],w.push(M),M}function c(v,M,w,T,I,V){let O=v[v.length-1];if(!O)throw new Error("The group path is out of range");const $=M.get(T)||0,B=M.get(w)||0;if(w<0||w===T)return v[v.length-1];const P=$-B,E=I&&I.relation!==void 0?I.relation:1;return O=P>0?d(B,P,O,v,E):O,O=P<0?u(B,P,O,v,E):O,O=P===0&&B>0&&$>0&&I&&V&&!!I.rBracket&&!!V.lBracket?f(B,O,v,E):O,O}function p(v){const w={relation:v.length&&v[0].relation!==void 0?v[0].relation:1,items:[],children:[],path:[],groupId:0,level:0},T=[w],I=s(v);return v.forEach((V,O)=>{const $=O-1,B=v[$],P=c(T,I,$,O,B,V);P.items.push(V),t.set(V.conditionId,P)}),e.value=w,w}function b(){const v=a();t.set(v.conditionId,e.value),e.value.items.push(v)}function h(v){if(!v)return;const M=t.get(v.conditionId);if(M){const w=M.items.findIndex(I=>I.conditionId===v.conditionId)+1,T=a();t.set(T.conditionId,M),M.items.splice(w,0,T),l()}}function x(v,M,w,T){v.reduce((I,V)=>{const O=V.conditionId!==void 0,$=V.groupId!==void 0;if(O){const B=V;w.push(B),I.items.set(B.conditionId,B)}if($){const B=V;T.push(B),I.groups.set(B.groupId,B)}return I},M)}function S(v,M,w,T,I){v&&(v.items=M.length?v.items.filter(V=>!w.has(V.conditionId)):v.items,v.children=T.length?v.children.filter(V=>!I.has(V.groupId)):v.children)}function y(v,M,w){M.forEach(T=>{v.items.push(T),t.set(T.conditionId,v)}),w.forEach(T=>{v.children.push(T),o.set(T.groupId,v)})}function m(v){const M=v[0],w=M.conditionId!==void 0?t.get(M.conditionId):o.get(M.groupId),T={items:new Map,groups:new Map},I=[],V=[];if(w){x(v,T,I,V),S(w,I,T.items,V,T.groups);const O=r(w.relation,w.level+1);y(O,I,V),w.children.push(O),o.set(O.groupId,w),l()}}function g(v){const M=[...v.items],w=[...v.children],T=o.get(v.groupId);T&&(T.children=T.children.filter(I=>I.groupId!==v.groupId),o.delete(v.groupId),M.forEach(I=>{T.items.push(I),t.set(I.conditionId,T)}),w.forEach(I=>{T.children.push(I),o.set(I.groupId,T)}),l())}function _(v){v.relation=v.relation===1?2:1,l()}let C;function F(v){const{relation:M}=v;return(v.children&&v.children.length?v.children.map((T,I,V)=>{const O=C(T);return O[0].lBracket=(O[0].lBracket||"")+"(",O[O.length-1].rBracket=(O[O.length-1].rBracket||"")+")",O[O.length-1].relation=I<V.length-1?M:0,O}):[]).flat()}C=(v=e.value)=>{const{relation:M}=v,w=v.items.map((I,V,O)=>(I.lBracket=V===0?"(":"",I.rBracket=V===O.length-1?")":"",I.relation=V<O.length-1?M||1:0,I)),T=F(v);return[...w,...T]};function N(v){const M=v||e.value;if(M.children.length&&M.children.forEach(w=>{N(w)}),M.level===0&&!M.items.length&&M.children.length===1){const w=M.children[0];e.value.relation=w.relation,g(w)}else M.items.length===0&&M.children.length<=1&&g(M)}function k(v){const M=t.get(v.conditionId);M&&(M.items=M.items.filter(w=>w.conditionId!==v.conditionId),t.delete(v.conditionId),N(),l())}return{addCondition:b,changeGroupRelation:_,conditionGroupMap:t,getConditions:C,group:m,groupParentMap:o,insertConditionTo:h,loadConditionGroup:p,refresh:l,removeCondition:k,rootGroup:e,unGroup:g}}function ya(e,t,o){const i=n.ref(new Set),a=n.ref(new Set),{conditionGroupMap:r,groupParentMap:l}=o;let s,d;function u(y){let m=s.level<=y.level?s:y,g=s.level>y.level?s:y;const _=[];for(;g&&m&&g!==m;)g.level>m.level?(_.push(g),g=l.get(g.groupId)):g.level===m.level&&(m=l.get(m.groupId),m&&_.unshift(m));return _}function f(y){a.value.add(y.groupId),y.items.forEach(m=>i.value.add(m.conditionId)),y.children.forEach(m=>f(m))}function c(y){const{conditionId:m}=y;i.value.add(m),s=i.value.size===0?r.get(m):s;const g=r.get(y.conditionId);u(g).forEach(C=>f(C))}const p=n.computed(()=>i.value.size===0&&a.value.size===1),b=function(y){a.value.delete(y.groupId),y.items.forEach(g=>d(g)),y.children.forEach(g=>!p.value&&b(g));const m=l.get(y.groupId);m&&a.value.has(m.groupId)&&b(m)};d=function(y){const{conditionId:m}=y;if(i.value.has(m)&&i.value.delete(m),a.value.size>0){const g=r.get(m);g&&a.value.has(g.groupId)&&b(g)}};function h(y){const{conditionId:m}=y;i.value.size===0&&(s=r.get(m)),i.value.has(m)?d(y):c(y)}function x(){const y=[];return s&&(s.items.filter(m=>i.value.has(m.conditionId)).forEach(m=>y.push(m)),s.children.filter(m=>a.value.has(m.groupId)).forEach(m=>y.push(m))),y}function S(){i.value.clear(),a.value.clear()}return{clear:S,getSelectedGroupItem:x,selectedItems:i,toggleSelect:h}}const Nt=n.defineComponent({name:"FConditionList",props:dn,emits:["valueChange","labelCodeChange","compareTypeChange"],setup(e,t){const o=n.ref(e.key),i=n.ref(e.conditions),a=mn(e),{convertToSingleControl:r,fields:l,fieldMap:s,loadFieldConfigs:d}=a,u=Fn(),{addCondition:f,changeGroupRelation:c,getConditions:p,group:b,insertConditionTo:h,loadConditionGroup:x,refresh:S,removeCondition:y,rootGroup:m,unGroup:g}=u,{createConditionValue:_}=pn(),C=ya(e,t,u),{selectedItems:F,toggleSelect:N}=C,{getCompareOperators:k}=ga(e,t,a);d(!1),l.value=r(l.value),x(i.value);function v(P){var j;const E=((j=s.get(P.fieldCode))==null?void 0:j.editor)||{type:"text"};P.value=_(E.type,void 0),t.emit("labelCodeChange",P)}function M(P,E){t.emit("compareTypeChange",E)}function w(){}t.expose({getConditions:p});function T(P,E){t.emit("valueChange",P,E)}function I(P){return P.items.map(E=>{var j;return n.createVNode("div",{class:"condition-list-item",key:E.conditionId},[n.createVNode("div",{class:"condition-list-item-type mr-3"},[n.createVNode(vt,{"value-field":"labelCode","text-field":"name","id-field":"id",data:l.value,modelValue:E.fieldCode,"onUpdate:modelValue":G=>E.fieldCode=G,onChange:G=>v(E)},null)]),n.createVNode("div",{class:"condition-list-item-compare mr-3"},[n.createVNode(vt,{"value-field":"value","text-field":"name","id-field":"id",data:k(E),modelValue:E.compareType,"onUpdate:modelValue":G=>E.compareType=G,onChange:G=>M(G,E)},null)]),n.createVNode("div",{class:"condition-list-item-control mr-3"},[n.createVNode(Dr,{editor:(j=s.get(E.fieldCode))==null?void 0:j.editor,showLabel:!1,modelValue:E.value.value,"onUpdate:modelValue":G=>E.value.value=G,onChange:G=>{T(G,E)}},null)]),n.createVNode("div",{class:"condition-list-item-extend"},[n.createVNode("span",{class:"f-icon f-icon-plus-sm mr-2",onClick:()=>h(E)},null),n.createVNode("span",{class:"f-icon f-icon-minus-sm",onClick:()=>y(E)},null)]),n.createVNode("div",{class:"custom-control custom-checkbox"},[n.createVNode("input",{title:"selection",class:"custom-control-input",type:"checkbox",checked:F.value.has(E.conditionId)},null),n.createVNode("label",{class:"custom-control-label",onClick:()=>N(E)},null)])])})}function V(P){return n.createVNode("div",{class:"condition-list-relation"},[n.createVNode("span",{class:"condition-list-relation-close f-icon-filter-cancel btn-link",onClick:()=>g(P)},null),n.createVNode("span",{class:"condition-list-relation-text btn-link",onClick:()=>c(P)},[P.relation===1?"与":"或"])])}function O(P){return n.createVNode("div",{class:"condition-list-content"},[n.createVNode("div",{class:"condition-list-content-group"},[I(P),P.children&&P.children.map(E=>O(E))]),V(P)])}function $(){b(C.getSelectedGroupItem()),C.clear()}function B(){return n.createVNode("div",{class:"condition-list-bottom"},[n.createVNode("div",{class:"add-condition-btn mb-1 mr-3",onClick:f},[n.createVNode("span",{class:"f-icon f-icon-filter-add"},null),n.createVNode("span",{class:"ml-1"},[n.createTextVNode("添加条件")])]),n.createVNode("div",{class:"add-condition-btn mb-1",onClick:$},[n.createVNode("span",{class:"f-icon f-icon-filter-grouping"},null),n.createVNode("span",{class:"ml-1"},[n.createTextVNode("生成条件组")])]),n.createVNode("div",{class:"condition-list-reset add-condition-btn",onClick:w},[n.createTextVNode("重置")])])}return()=>n.createVNode("div",{class:"condition-list",key:o.value},[n.createVNode("div",{class:"condition-list-body"},[O(m.value)]),B()])}});Nt.install=e=>{e.component(hn.name,hn).component(Nt.name,Nt)};const va=["equal","notEqual","greaterThan","greaterThanOrEqual","lessThan","lessThanOrEqual","contain","startWidth","endWidth"],ba={equal:(e,t,o)=>e&&e[t]===o,notEqual:(e,t,o)=>e&&e[t]!==o,contain:(e,t,o)=>e?(e[t]||"").indexOf(o)>-1:!1,startWidth:(e,t,o)=>e?(e[t]||"").startsWith(o):!1,endWidth:(e,t,o)=>e?(e[t]||"").endsWith(o):!1},Ca={equal:(e,t,o)=>e&&e[t]===o,notEqual:(e,t,o)=>e&&e[t]!==o},wa={equal:(e,t,o)=>{if(e){const i=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[t]).toLocaleDateString()).valueOf()===i}return!1},notEqual:(e,t,o)=>{if(e){const i=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[t]).toLocaleDateString()).valueOf()!==i}return!1},greaterThan:(e,t,o)=>{if(e){const i=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[t]).toLocaleDateString()).valueOf()>i}return!1},greaterThanOrEqual:(e,t,o)=>{if(e){const i=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[t]).toLocaleDateString()).valueOf()>=i}return!1},lessThan:(e,t,o)=>{if(e){const i=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[t]).toLocaleDateString()).valueOf()<i}return!1},lessThanOrEqual:(e,t,o)=>{if(e){const i=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[t]).toLocaleDateString()).valueOf()<=i}return!1}},Sa={equal:(e,t,o)=>e?String(o).split(",").includes(String(e[t])):!1,notEqual:(e,t,o)=>e?String(o).split(",").findIndex(a=>a===String(e[t]))===-1:!1},xa={equal:(e,t,o)=>{if(e){const i=Number.parseFloat(String(o)),a=Number.parseFloat(String(e[t]));return isNaN(i)?isNaN(a):i===a}return!1},notEqual:(e,t,o)=>{if(e){const i=Number.parseFloat(String(o)),a=Number.parseFloat(String(e[t]));return isNaN(i)?!0:i!==a}return!1},greaterThan:(e,t,o)=>{if(e){const i=Number.parseFloat(String(o)),a=Number.parseFloat(String(e[t]));return isNaN(i)?isNaN(a):a>i}return!1},greaterThanOrEqual:(e,t,o)=>{if(e){const i=Number.parseFloat(String(o)),a=Number.parseFloat(String(e[t]));return isNaN(i)?isNaN(a):a>=i}return!1},lessThan:(e,t,o)=>{if(e){const i=Number.parseFloat(String(o)),a=Number.parseFloat(String(e[t]));return isNaN(i)?isNaN(a):a<i}return!1},lessThanOrEqual:(e,t,o)=>{if(e){const i=Number.parseFloat(String(o)),a=Number.parseFloat(String(e[t]));return isNaN(i)?isNaN(a):a<=i}return!1}};function kt(){const e=n.ref([]),t=new Map,{loadConditionGroup:o}=Fn(),i=new Map([["boolean",Ca],["datetime",wa],["enum",Sa],["number",xa],["text",ba]]);function a(c){t.delete(c),e.value=Array.from(t.values())}function r(){t.clear(),e.value=[]}function l(c){const{valueType:p}=c.value,b=c.compareType||"0",h=va[Number(b)];return i.get(p)[h]}function s(c){const p=c.relation===2?0:1,b=c.items.map(x=>{const S=l(x);return m=>S(m,x.fieldCode,x.value.getValue())}),h=c.children&&c.children.length?c.children.map(x=>s(x)):[];return{relation:p,filterFunctions:b,children:h}}function d(){const c=o(e.value);return s(c)}function u(c,p){const b=p.filterFunctions.map(x=>x(c)),h=p.children.map(x=>u(c,x));return p.relation===1?b.every(x=>x)&&h.every(x=>x):b.includes(!0)||h.includes(!0)}function f(c){const p=d();return u(c,p)}return{apply:f,clearCondition:r,conditions:e,removeCondition:a}}function Tt(e,t){var y;const{idField:o}=t,i=n.ref(e.summary),a=n.ref(e.group),r=n.ref(((y=e.group)==null?void 0:y.groupFields)||[]),l=n.computed(()=>{var m;return(m=e.group)==null?void 0:m.enable}),s=n.computed(()=>{var m;return(m=e.group)==null?void 0:m.showGroupPanel}),d=n.computed(()=>{const m=i.value;return(m==null?void 0:m.groupFields)||[]}),u=n.computed(()=>{const m=a.value;return m&&m.showSummary}),f=new Map;let c=[];function p(m,g,_,C,F){const N=C[_];N&&(g.reduce((k,v,M)=>{var I;const w=v[N];let T=k.get(w);if(!T){const V=d.value.reduce((O,$)=>(O.set($,0),O),new Map);T={field:N,title:((I=F.get(N))==null?void 0:I.title)||N,value:w,layer:_,details:[],groupSummaries:V},k.set(w,T)}return d.value&&d.value.forEach(V=>{if(T){const O=T.groupSummaries.get(V)||0;T.groupSummaries.set(V,O+v[V])}}),T.details.push(v),k},m),_<C.length-1&&m.forEach((k,v)=>{k.nestGroup=new Map,p(k.nestGroup,k.details,_+1,C,F),k.details=[]}))}function b(m,g){return e.group&&e.group.formatter?e.group.formatter(m.value,{...m,total:g}):`${m.title}:${m.value} (${g})`}function h(m){const g=[];return m.forEach(_=>{const C={__fv_data_grid_group_collapse__:!1,__fv_data_grid_group_field__:_.field,__fv_data_grid_group_layer__:_.layer,__fv_data_grid_group_row__:!0,__fv_data_grid_group_value__:_.value};let F=0;if(g.push(C),_.nestGroup){const N=h(_.nestGroup);g.push(...N),F+=N.length}if(_.details&&_.details.length&&(g.push(..._.details),F+=_.details.length),u.value){const N={__fv_data_grid_group_field__:_.field,__fv_data_grid_group_layer__:_.layer,__fv_data_grid_group_summary__:!0};N[o.value]=`summary_of_${_.field}_${_.value}`,N[_.field]=Array.from(_.groupSummaries.entries()).reduce((k,[v,M])=>`${k} ${v} total:${M} `,""),g.push(N)}_.groupSummaries&&_.groupSummaries.size&&_.groupSummaries.forEach((N,k)=>{C[k]=N}),C[o.value]=`group_of_${_.field}_${_.value}`,C[_.field]=b(_,F)}),g.forEach((_,C)=>{_.__fv_data_index__=C}),g}function x(m,g,_){return!m||m.length===0||!g.length?g:(m.join(","),f.clear(),c=[],p(f,g,0,m,_),c=h(f),c)}function S(m){return{"f-icon":!0,"f-icon-arrow-chevron-down":!0,"fv-grid-group-row-icon-collapse":m.collapse}}return{collpaseGroupIconClass:S,generateGroupData:x,groupFields:r,shouldGroupingData:l,showGroupPanel:s}}function _a(e,t,o,i){const a=n.ref(!!e.hierarchy),{idField:r}=i,{collapseField:l,hasChildrenField:s,parentIdField:d}=o,u=new Map;function f(T,I){const V=new Map;return T.reduce((O,$)=>{const B=$[d.value]!==void 0?$[d.value]:"";if(B&&I.has(B)){const E=I.get(B);$.__fv_parent_index__=E.__fv_index__,E.__fv_hasChildren__=!0}const P=O.has(B)?O.get(B):[];return P.push($),O.set(B,P),O},V),V}function c(T){const I=new Map;return T.reduce((V,O)=>{const $=O[r.value];return V.set($,O),V},I),I}function p(T){T.forEach(I=>{const V=I[r.value];I.__fv_children_index__.map($=>T[$]).forEach($=>{$.__fv_parents__=new Map([...I.__fv_parents__.entries(),[V,!0]])})})}function b(T){T.forEach(I=>{const V=new Set(I.__fv_children_index__);I.__fv_children_index__=[...V].sort((O,$)=>O-$)})}function h(T,I){T.forEach(V=>{const O=V.__fv_parents__;Array.from(O.keys()).map($=>I.get($)).forEach($=>{$.__fv_children_index__.push(V.__fv_index__)})}),b(T)}function x(T){T.forEach(I=>{I.__fv_child_with_lines__=[],I.__fv_child_length__=I.__fv_descendant_index__.length,I.__fv_descendant_index__.map(V=>T[V]).reduce((V,O)=>(V.__fv_child_length__+=O.__fv_children_index__.length,V.__fv_child_with_lines__.push(...O.__fv_children_index__,O.__fv_index__),V),I)})}function S(T,I){return{id:T,index:I,parentId:"",parentIndex:-1,parents:new Map,children:new Map,descendant:new Map}}function y(T,I){Array.from(I.keys()).forEach(V=>{I.get(V).reduce(($,B)=>{const P=B[r.value],E=T.get(B[r.value]),j=T.get(V);return j&&(j.children.set(P,E),j.children.set(P,E),E.parentId=V,E.parentIndex=j.index,E.parents.set(V,j)),$},T)})}function m(T){T.children.forEach(V=>{V.parents=new Map([...T.parents.entries(),[T.id,T]]),m(V)})}function g(T,I){T.filter(V=>V[d.value]===void 0||V[d.value]==="").forEach(V=>{const O=V[r.value],$=I.get(O);m($)})}function _(T){Array.from(T.values()).forEach(I=>{Array.from(I.parents.values()).forEach(V=>{V.descendant.set(I.id,I)})})}function C(T){u.clear(),T.forEach((O,$)=>{const B=O[r.value];u.set(B,S(B,$))});const I=c(T),V=f(T,I);return y(u,V),g(T,u),_(u),u}function F(T){const I=T[r.value],V=u.get(I);return V&&V.children.size>0}function N(T){return T[s.value]&&!F(T)}function k(T){C(t.value);const I=c(T),V=f(T,I);return T.forEach((O,$)=>{var j;const B=O[r.value],P=V.has(B)?(j=V.get(B))==null?void 0:j.map(G=>G.__fv_index__):[],E=S(B,$);O.__fv_graph_node__=E,O.__fv_children_index__=P,O.__fv_descendant_index__=[...P],O.__fv_parents__=new Map,N(O)&&(O[l.value]=!0)}),p(T),h(T,I),e.showLines&&x(T),T}function v(T,I,V){const $=V.value[T][r.value],B=u.get($);if(B){const P=u.get(B.parentId);let E=V.value.length-1;if(P){const j=Array.from(P.children.keys()).indexOf(B.id);if(j===P.children.size-1){const X=Array.from(P.descendant.values())[P.descendant.size-1];E=V.value.findIndex(me=>me[r.value]===X.id)+1}else{const X=Array.from(P.children.values())[j+1];E=V.value.findIndex(me=>me[r.value]===X.id)}I[s.value]=!1,I[d.value]=P.id,V.value.splice(E,0,I)}}}function M(T,I,V){const O=V.value[T],$=O[r.value];if(u.get($)){const E=V.value.findIndex(j=>j[r.value]===$)+1;O[s.value]=!0,O[l.value]=!1,I[s.value]=!1,I[d.value]=$,V.value.splice(E,0,I)}}function w(T,I){const V=T[r.value],O=u.get(V),$=Array.from(O.descendant.keys());$.unshift(V);const B=u.get(O.parentId);if(B&&(B.children.delete(V),B.children.size===0)){const E=I.find(j=>j[r.value]===O.parentId);E[s.value]=!1,E[l.value]=!1}return I.filter(E=>$.indexOf(E.id)===-1)}return{generateHierarchyData:k,hasRealChildren:F,insertSibling:v,insertChild:M,shouldStratifyData:a,trimmedOriginalData:w}}const Fa={showCloseButton:{type:Boolean,default:!0},position:{type:String,default:"top-center"},timeout:{type:Number,default:3e3},theme:{type:String,default:"bootstrap"},left:{type:Number},right:{type:Number},top:{type:Number},bottom:{type:Number},id:{type:String},animate:{type:String,default:"fadeIn"},options:{type:Object}},Va={showCloseButton:{type:Boolean,default:!0},animate:{type:String,default:"fadeIn"},options:{type:Object}},Mt=n.defineComponent({name:"Toast",props:Va,emits:["close","click"],setup:(e,t)=>{const o=n.ref(e.animate),i="fadeOut",a=n.computed(()=>e.options),r=n.ref(!1),l=n.computed(()=>{const y={animated:r.value,toast:!0};return y[e.animate]=!1,y[i]=r.value,y[a.value.type]=!0,a.value.theme&&(y[a.value.theme]=!0),y}),s=n.computed(()=>{const g=`f-icon-${a.value&&a.value.type?a.value.type.replace("toasty-type-",""):"default"}`,_={"f-icon":!0};return _[g]=!0,_}),d=n.computed(()=>a.value.title||a.value.message),u=n.computed(()=>a.value.title&&a.value.message),f=n.computed(()=>!a.value.title&&a.value.message),c=n.computed(()=>e.showCloseButton),p=n.computed(()=>!!a.value.buttons||!!t.slots.default);function b(y){y.stopPropagation(),y.preventDefault(),r.value=!1,setTimeout(()=>{t.emit("close",a.value)},200)}function h(y,m){}function x(y){return`f-preten-link ${y.customClass?y.customClass:""}`}n.watch(o,()=>{o.value});const S=()=>{var y;return n.createVNode(n.Fragment,null,[n.createVNode("div",{class:"after-toast-msg text-right"},[!t.slots.default&&((y=a.value.buttons)==null?void 0:y.map(m=>n.createVNode("span",{class:x(m),onClick:g=>void 0},[m.text]))),t.slots.default&&t.slots.default()])])};return()=>n.createVNode("div",{class:l.value},[c.value&&n.createVNode("button",{title:"close",class:"toast-close f-btn-icon f-bare",onClick:b},[n.createVNode("span",{class:"f-icon modal_close"},null)]),d.value&&n.createVNode("section",{class:"modal-tips"},[n.createVNode("div",{class:"float-left modal-tips-iconwrap"},[n.createVNode("span",{class:s.value},null)]),n.createVNode("div",{class:"modal-tips-content"},[u.value&&n.createVNode(n.Fragment,null,[n.createVNode("h5",{class:"toast-title modal-tips-title",innerHTML:a.value.title},null),n.createVNode("p",{class:"toast-msg",innerHTML:a.value.message},null),p.value&&S()]),f.value&&(a.value.buttons?n.createVNode("div",{class:"toast-title-btns-wrapper d-flex"},[n.createVNode("h5",{class:"toast-title modal-tips-title only-toast-msg",innerHTML:a.value.message},null),n.createVNode("div",{class:"after-toast-title text-right ml-auto"},[S()])]):n.createVNode("h5",{class:"toast-title modal-tips-title only-toast-msg",innerHTML:a.value.message},null))])])])}}),ht=n.defineComponent({name:"Notify",props:Fa,emits:["close","empty"],setup(e,t){const o=n.computed(()=>({"farris-notify":!0})),i={left:12,right:12,top:20,bottom:12},a=n.ref(),r=n.ref(e.options),l=n.ref(e.showCloseButton),s=n.computed(()=>e.position||"bottom-right"),d=n.computed(()=>e.timeout!=null?e.timeout:3e3),u=n.computed(()=>{const p=e.bottom?e.bottom:i.bottom,b=e.top?e.top:i.top,h={transition:"all 0.2s ease",left:s.value.indexOf("left")>-1?`${e.left?e.left:i.left}px`:"",right:s.value.indexOf("right")>-1?`${e.right?e.right:i.right}px`:"",top:s.value.indexOf("top")>-1?`${b}px`:"",bottom:s.value.indexOf("bottom")>-1?`${p}px`:""};return s.value.indexOf("center")>-1&&(h.left="50%",h.marginLeft="calc(-24rem / 2)",s.value==="center-center"&&(h.top="50%",h.transform="translate(-50%, -50%)")),h});function f(p){t.emit("close")}d.value&&setTimeout(()=>{f()},d.value),t.expose({closeToast:f,container:a,notifyPosition:s});function c(p,b){f()}return()=>n.createVNode("div",{class:o.value,style:u.value,ref:a},[n.createVNode(Mt,{options:r.value,showCloseButton:l.value,animate:e.animate,onClose:p=>c(p,r.value)},null)])}});class Vn{constructor(){L(this,"notifyRefs",[]);L(this,"globalConfig",n.reactive({}))}createNotifyInstance(t){const o=this,a=Object.assign({timeout:3e3,position:"bottom-right",showCloseButton:!0},this.globalConfig,{...t}),r=document.createElement("div");r.style.display="contents";const l=n.createApp({setup(){const s=n.ref();function d(){s.value.container.style.transform="scale(0)",setTimeout(()=>{o.updateNotifyPositionForClose(a,s),l.unmount()},220)}if(a.position.indexOf("top")>-1){const u=o.getNotifyInstances(a.position),f=u[u.length-1];if(f){const c=f.value.container.getBoundingClientRect();a.top=c.bottom}}return n.onUnmounted(()=>{document.body.removeChild(r)}),n.onMounted(()=>{o.updateNotifyPositionForCreate(a,s)}),()=>n.createVNode(n.Transition,{mode:"out-in",name:"fade",appear:!0},{default:()=>[n.createVNode(ht,n.mergeProps({ref:s},a,{onClose:d}),null)]})}});return l.provide("NotifyService",this),document.body.appendChild(r),l.mount(r),l}getNotifyInstances(t){return this.notifyRefs.filter(o=>o.value.notifyPosition===t)}updateNotifyPositionForCreate(t,o){if(this.notifyRefs&&this.notifyRefs.length){const i=window.innerHeight;t.position.indexOf("bottom")>-1&&this.getNotifyInstances(t.position).forEach(a=>{const r=a.value.container.getBoundingClientRect();a.value.container.style.bottom=r.height+i-r.bottom+"px"})}this.notifyRefs=[...this.notifyRefs,o]}updateNotifyPositionForClose(t,o){const i=this.notifyRefs.indexOf(o);if(t.position.indexOf("top")>-1){const a=this.getNotifyInstances(t.position),r=a.indexOf(o);a.slice(r+1).forEach(l=>{l.value.container.style.top=l.value.container.offsetTop-l.value.container.offsetHeight+"px"})}i>-1&&this.notifyRefs.splice(i,1)}show(t){return this.createNotifyInstance(t)}buildNotifyProps(t,o){let i="",a="",r,l,s;typeof o=="string"?i=o:o&&(i=o.message||"",a=o.title||"",l=o.position||null,s=o.showCloseButton!=null?o.showCloseButton:null,r=o.timeout!=null?o.timeout:null);const u={options:{type:t,message:i,title:a}};return l!=null&&(u.position=l),s!=null&&(u.showCloseButton=s),r!=null&&(u.timeout=r),u}info(t){const o=this.buildNotifyProps("info",t);return this.show(o)}success(t){const o=this.buildNotifyProps("success",t);return this.show(o)}warning(t){const o=this.buildNotifyProps("warning",t);return this.show(o)}error(t){const o=this.buildNotifyProps("error",t);return this.show(o)}close(t){t&&t.unmount()}closeAll(){this.notifyRefs.forEach(t=>{t==null||t.value.closeToast()}),this.notifyRefs.length=0}}const Na=Symbol("NOTIFY_SERVICE_TOKEN");ht.install=e=>{e.component(ht.name,ht),e.component(Mt.name,Mt);const t=new Vn;e.provide(Na,t),e.provide("FNotifyService",t)};function Nn(e,t,o,i,a){var Xe;const{pageSize:r,total:l,shouldRenderPagination:s,currentPage:d,mode:u}=a,f=new Map,c=new Map,p=new Map,b=new Map,h=new Map,x=n.ref([]),S=n.ref([]),y=kt(),m=Tt(e,i),{generateGroupData:g,groupFields:_,shouldGroupingData:C}=m,F=n.ref(e.data),N=_a(e,F,o,i),{generateHierarchyData:k,hasRealChildren:v,insertSibling:M,insertChild:w,shouldStratifyData:T,trimmedOriginalData:I}=N,{idField:V,reviseIdentifyField:O}=i,$=n.ref(e.newDataItem),B=n.ref(e.data),P=n.ref(e.data),{flatTreeData:E}=La(e);function j(q){return E(q)}if(e.data&&((Xe=e.data[0])!=null&&Xe.children)){const q=j(e.data);F.value=q,B.value=q,P.value=q}const G=n.ref(e.summary),X=n.computed(()=>{const q=G.value;return(q==null?void 0:q.groupFields)||[]});let ne=new Map;const me=n.computed(()=>{var q;return((q=B.value)==null?void 0:q.length)||0}),Ne=n.ref(e.pagination),ge=new Vn,Se=n.computed(()=>e.hierarchy?0:s.value?u.value==="server"?0:(d.value-1)*r.value:0),xe=n.computed(()=>s.value?u.value==="server"?Math.min(r.value,me.value):Math.min(Se.value+r.value,l.value,me.value):me.value);n.watch(()=>F.value.length,(q,ie)=>{q!==ie&&(l.value=q)});function pe(){var Oe,de;B.value=je.cloneDeep(F.value),C.value&&(B.value=g(_.value,F.value,t)),ne=X.value.reduce(($e,Ve)=>($e.set(Ve,0),$e),ne);const q=Se.value,ie=xe.value;let ce=0;const Ie=[];if((Oe=B.value)!=null&&Oe.length){O(B.value);const $e=V.value!==e.idField;for(let Ve=q;Ve<ie;Ve++){const Te=B.value[Ve];Te.__fv_data_grid_group_row__?(ce=0,Te.__fv_data_index__=""):Te.__fv_data_grid_group_summary__?Te.__fv_data_index__="":(Te.__fv_disabled__=Te[((de=e.rowOption)==null?void 0:de.disabledField)||"disabled"],ce++,s.value?Te.__fv_data_index__=ce+(d.value-1)*r.value:Te.__fv_data_index__=ce),Te.__fv_index__=Ve,$e&&(Te[V.value]=Ve),X.value.forEach(Re=>{const _e=ne.get(Re)||0;ne.set(Re,_e+Te[Re])}),Ie.push(Te)}}return T.value&&k(Ie),P.value=[...Ie],Ie}const ye=n.ref(pe());function Ce(q,ie,ce=!1){const Oe=(ce?pe():[...P.value]).filter(Ve=>y.apply(Ve)),de=q&&q.length?Oe.filter(Ve=>q.reduce((Te,Re)=>Te&&Re.filter(Ve),!0)):Oe,$e=ie&&ie.length?de.sort((Ve,Te)=>{const Re=[...ie],_e=Re.shift();let qe=_e.compare(Ve[_e.field],Te[_e.field]);for(;qe===0&&Re.length!==0;){const nt=Re.shift();nt&&(qe=nt.compare(Ve[nt.field],Te[nt.field]))}return qe}):de;return ye.value=$e.map((Ve,Te)=>{if(Ve.__fv_data_grid_group_row__){const Re=`group_of_${Ve.__fv_data_grid_group_field__}_${Ve.__fv_data_grid_group_value__}`;Ve.__fv_data_grid_group_collapse__=!!f.get(Re)}return Ve.__fv_index__=Te,Ve}),ye.value}function K(q){return h.clear(),S.value=q,S.value.reduce((ie,ce)=>(ie.set(ce.field,ce),ie),h),Ce([],S.value)}function Y(q,ie){return h.set(q,ie),S.value=Array.from(h.values()),Ce([],S.value)}function ue(q){return h.delete(q),S.value=Array.from(h.values()),Ce([],S.value)}function Fe(q,ie){return c.set(q,ie),x.value=Array.from(c.values()),Ce([],Array.from(h.values()))}function se(q){return c.delete(q),x.value=Array.from(c.values()),Ce([],Array.from(h.values()),!0)}function re(){return c.clear(),x.value=[],Ce([],Array.from(h.values()),!0)}function he(q,ie){const ce=`group_of_${q}_${ie}`;f.set(ce,!0);const Ie=Oe=>Oe[q]!==ie;return p.set(`collapse_${q}_${ie}`,{field:q,fieldName:q,fieldType:"string",filterValue:ie,filter:Ie}),Ce(Array.from(p.values()),Array.from(h.values()))}function ve(q,ie){const ce=`group_of_${q}_${ie}`;return f.set(ce,!1),p.delete(`collapse_${q}_${ie}`),Ce(Array.from(p.values()),Array.from(h.values()),!0)}function be(q){const ie=q.raw[V.value],ce=Ie=>!Ie.__fv_parents__.has(ie);b.set(`fold_${ie}`,{field:"id",fieldName:"id",fieldType:"string",filterValue:String(ie),filter:ce}),Ce(Array.from(b.values()),Array.from(h.values())),k(ye.value)}function W(q){const ie=q[V.value];b.delete(`fold_${ie}`)}function R(q){W(q.raw),Ce(Array.from(b.values()),Array.from(h.values()),!0),k(ye.value)}function oe(){const q=pe();ye.value=q,e.hierarchy&&(Ce(Array.from(b.values()),Array.from(h.values())),k(ye.value))}function D(q){var ie;if(q&&((ie=q[0])!=null&&ie.children)){const ce=j(q);F.value=ce,B.value=ce,P.value=ce}else F.value=q,B.value=q,P.value=q;oe()}function ae(q,ie,ce){return(q&&q.length?ye.value.filter((Oe,de)=>q.reduce(($e,Ve)=>$e&&Ve.filter(Oe),!0)):ye.value).slice(ie,ce)}function z(q){(q-1)*r.value<=me.value&&oe()}function A(q){F.value.push(je.cloneDeep(q)),ye.value=pe()}function le(q=0){if(!(q>-1))return!1;const ce=$.value();e.hierarchy?M(q,ce,F):F.value.splice(q,0,ce),oe()}function fe(q=0){if(!(q>-1&&e.hierarchy))return!1;const ce=$.value(),Ie=F.value[q];W(Ie),w(q,ce,F),oe()}function ke(q){const ie=q?q-1:0;F.value.splice(ie,1),oe()}function De(q){const ie=F.value.findIndex(ce=>ce[V.value]===q);ie!==-1&&(F.value.splice(ie,1),oe())}function Le(q){const ie=q>-1?F.value[q]:null;if(!(ie&&ie.deletable!==!1))return!1;F.value=I(ie,F.value),oe()}function We(){const q=p.size>0?Array.from(p.values()):[];return Ce(q,Array.from(h.values()))}function Ze(q){Ne.value&&(Ne.value.size=q,oe())}function et(q,ie){const ce=F.value[Number(q)-1];ce.editable!==!1?(ce.name=ie,oe()):ge.show({showCloseButton:!1,timeout:3e3,animate:"fadeIn",toasts:[{type:"string",title:"提示",msg:"当前节点禁止编辑"}]})}function tt(q){return q.map(ce=>{const Ie=P.value.findIndex(Oe=>Oe[V.value]===ce);return Ie>-1?P.value[Ie]:null}).filter(ce=>ce!=null)}return{addFilter:Fe,addNewDataItem:A,addSorter:Y,changePageSizeTo:Ze,collapse:he,dataView:ye,editDataItem:et,expand:ve,filters:x,fold:be,getRange:ae,getSelectionItems:tt,hasRealChildren:v,load:D,navigatePageTo:z,summaries:ne,totalItems:me,insertNewDataItem:le,insertNewChildDataItem:fe,removeAllFilter:re,removeDataItem:ke,removeDataItemById:De,removeFilter:se,removeHierarchyDataItem:Le,removeSorter:ue,rawView:P,refresh:We,setSorters:K,sorters:S,updateDataView:oe,unFold:R,startIndex:Se,endIndex:xe,originalData:F}}function kn(){function t(l){return l.field}function o(l){const s=t(l),d=localStorage.getItem(s);return d?JSON.parse(d):[]}function i(l,s){const d=t(l);localStorage.setItem(d,JSON.stringify(s))}function a(l,s){if(!s)return;const d=o(l),f=[d.find(c=>c.name===s)||{id:Date.now(),name:s,selectable:!0},...d.filter(c=>c.name!==s)];f.length>5&&(f.length=5),i(l,f)}function r(l,s){const u=[...o(l).filter(c=>c.name!==s)],f=t(l);localStorage.setItem(f,JSON.stringify(u))}return{getFilterHistory:o,removeFilterHistory:r,setFilterHistory:i,updateFilterHistory:a}}function Tn(e){n.ref(e.selection.showCheckbox||!1);const t=n.computed(()=>{var l;return((l=e.hierarchy)==null?void 0:l.collapseField)||"__fv_collapse__"}),o=n.computed(()=>{var l;return((l=e.hierarchy)==null?void 0:l.hasChildrenField)||"__fv_hasChildren__"}),i=n.computed(()=>{var l;return((l=e.hierarchy)==null?void 0:l.parentIdField)||"parent"}),a=n.computed(()=>e.hierarchy&&e.selection.showCheckbox),r=n.computed(()=>(e.treeNodeIconsData.fold||e.iconField)&&e.showTreeNodeIcons);return{collapseField:t,hasChildrenField:o,parentIdField:i,shouldShowCheckBox:a,shouldShowIcon:r}}function ka(e,t,o,i){var x,S,y,m,g,_;const{idField:a}=o,r=n.ref(((S=(x=e.hierarchy)==null?void 0:x.cascadeOption)==null?void 0:S.autoCheckChildren)||!1),l=n.ref(((m=(y=e.hierarchy)==null?void 0:y.cascadeOption)==null?void 0:m.autoCheckParent)||!1),s=n.ref(((_=(g=e.hierarchy)==null?void 0:g.cascadeOption)==null?void 0:_.selectionRange)||"All");n.watch(()=>{var C;return(C=e.hierarchy)==null?void 0:C.cascadeOption},C=>{r.value=C?!!C.autoCheckChildren:!1,l.value=C?!!C.autoCheckParent:!1,s.value=C?C.selectionRange:"All"});function d(C,F){for(let N=0;N<F.length;N++)if(!C.includes(F[N]))return!1;return!0}function u(C,F){return C.filter(k=>F.indexOf(k)===-1)}const f=n.computed(()=>s.value==="OnlyParent"),c=n.computed(()=>s.value==="OnlyChildren");function p(C,F){let N=C;const k=t.value[F],v=k[a.value],M=Array.from(k.raw.__fv_descendant_index__).map($=>t.value[$]),w=M.map($=>$.raw[a.value]),T=d(C,w),I=d(C,[v]);return I&&T&&f.value&&(N=u(C,w),M.forEach($=>{$.disabled=!0})),I&&T&&c.value&&(N=u(C,[v]),M.forEach($=>{$.disabled=!0})),N}function b(C,F){let N=C;const k=F[a.value],v=Array.from(F.__fv_children_index__).map(O=>t.value[O]),M=v.map(O=>O.raw[a.value]),w=d(C,M),T=d(C,[F[a.value]]);return T&&w&&f.value&&(N=u(C,M),v.forEach(O=>{O.disabled=!0})),T&&w&&c.value&&(N=u(C,[k]),v.forEach(O=>{O.disabled=!0})),N}function h(C,F){let N=C.map(w=>w[a.value]);return F.__fv_parent_index__>0&&(N=p(N,F.__fv_parent_index__)),F.__fv_children_index__.length>0&&(N=b(N,F)),C.filter(w=>N.includes(w[a.value]))}return{autoCheckChildren:r,autoCheckParent:l,interactAfterCheckHierarchyItem:h}}function Ta(e,t,o,i,a){const{select:r,unSelect:l,indeterminate:s,getSelectedItems:d,selectedValues:u,currentSelectedDataId:f}=i,{autoCheckChildren:c,autoCheckParent:p,interactAfterCheckHierarchyItem:b}=ka(e,t,o),{idField:h}=o;function x(){return t.value.filter(k=>!!k.checked).map(k=>k.raw.__fv_index__)}function S(k,v){return k.filter(w=>v.indexOf(w)===-1)}function y(k){const v=x();k.raw.__fv_children_index__.some(w=>v.includes(w))&&!!k.checked!==!0&&s(k)}function m(k){let v=k.raw.__fv_parent_index__;for(;v!==void 0;){const M=x(),w=t.value[v],T=S(w.raw.__fv_children_index__,M);T.length===w.raw.__fv_children_index__.length&&T.length!==0?l(w):T.length===0?p.value&&r(w):T.length<w.raw.__fv_children_index__.length&&w.checked!==!0&&s(w),v=w.raw.__fv_parent_index__}}function g(k){const v=!!k.checked;c.value&&k.raw.__fv_children_index__.map(w=>t.value[w]).forEach(w=>{v?r(w):l(w)})}function _(k){g(k),m(k);const v=k.raw;let M=d();M=b(M,v),y(k),a.emit("selectionChange",M)}function C(k,v){let M=-1;if(k.raw.__fv_parent_index__>-1){const V=t.value[k.raw.__fv_parent_index__].raw.__fv_descendant_index__,O=V.length>1,$=V.findIndex(P=>P===v),B=$===V.length-1;M=O?B?V[$-1]:V[$+1]:-1}return M>-1?t.value[M]:null}function F(k){return k.raw.__fv_parent_index__>-1?t.value[k.raw.__fv_parent_index__]:null}function N(k){const v=t.value[k];if(!v)return null;const M=C(v,k),T=M!==null?M:F(v);return T?T.raw[h.value]:null}return{getNextSelectableHierarchyItemId:N,toggleSelectHierarchyItem:_}}function Mn(e,t,o,i,a,r,l,s){var ae;const{dataView:d}=t,{getVisualData:u,maxVisibleRowIndex:f,minVisibleRowIndex:c}=a,p=n.ref(i.value.primaryColumnsWidth),b=n.ref(i.value.leftColumnsWidth),h=n.ref(i.value.rightColumnsWidth),x=((ae=e.rowOption)==null?void 0:ae.height)||28,S=n.ref(0),y=n.ref(0);let m=0,g=r.value-1;const _=n.ref(0),C=n.ref(0),F=n.ref(0);function N(){if(d.value.length<=0)return 0;const z=f.value<d.value.length?d.value[f.value]:d.value[d.value.length-1];return(z.__fv_data_position__||0)+(z.__fv_data_height__||0)+Math.max(d.value.length-1-f.value,0)*x}const k=n.computed(()=>{const z=N();return d.value.length>r.value+l?Math.floor((r.value+l)/d.value.length*C.value):Math.floor(C.value/Math.max(z,C.value)*C.value)}),v=n.computed(()=>Math.floor(F.value/Math.max(p.value,F.value)*_.value)),M=0,w=0,T=n.computed(()=>_.value-(b.value+p.value+h.value+s.value));function I(z){const A=d.value.find(le=>le.__fv_data_position__>z);return A?A.__fv_index__-1:0}function V(z){var Le,We;if(!d.value.length){o.value=[];return}const A=(Le=e.pagination)!=null&&Le.enable?0:Math.max(m-l,0),le=d.value[d.value.length-1].__fv_index__,fe=(We=e.pagination)!=null&&We.enable?d.value.length-1:Math.min(g+l-1,le),ke=d.value[A-1],De=u(A,fe,ke,z);De.length&&(o.value=[...De])}const O=n.computed(()=>N()>C.value),$=n.computed(()=>Math.floor(p.value)>F.value);function B(z){let A=S.value+z;A>M&&(A=M);const le=A>M,fe=N(),ke=O.value;ke&&A<C.value-fe&&(A=C.value-fe),(!ke||le)&&(A=M),S.value!==A&&(S.value=A,m=I(Math.abs(S.value)),g=m+r.value,(m<c.value||g>f.value-l/2)&&V())}function P(z){if(!$.value){y.value=0;return}let A=y.value+z;A>w&&(A=w),A<T.value&&(A=T.value),y.value!==A&&(y.value=A)}function E(){Math.abs(y.value)+F.value>p.value&&(y.value=Math.min(F.value-p.value,0))}function j(){S.value=0,m=0,g=r.value-1,V()}n.watch(F,()=>{P(0)}),n.watch(i,()=>{p.value=i.value.primaryColumnsWidth,b.value=i.value.leftColumnsWidth,h.value=i.value.rightColumnsWidth});function G(z){let{deltaX:A}=z.deltaX,le=-1*z.deltaY;return typeof A>"u"&&(A=-1*z.wheelDeltaX/6),typeof le>"u"&&(le=z.wheelDeltaY/6),z.deltaMode&&z.deltaMode===1&&(A*=10,le*=10),z.shiftKey?{deltaY:-le,deltaX:-A}:{deltaX:A,deltaY:le}}function X(z){if(e.disabled)return;z.preventDefault(),z.stopPropagation();const{deltaX:A,deltaY:le}=G(z);B(le),P(A)}const ne=n.computed(()=>({height:`${d.value.length*x}px`,width:`${b.value}px`,transform:`translateY(${S.value}px)`})),me=n.computed(()=>({transform:`translateY(${S.value}px)`})),Ne=n.computed(()=>({height:`${d.value.length*x}px`,width:`${p.value}px`,transform:`translate(${y.value}px, ${S.value}px)`})),ge=n.computed(()=>({transform:`translate(${y.value}px, ${S.value}px)`})),Se=n.computed(()=>({height:`${d.value.length*x}px`,width:`${h.value}px`,transform:`translateY(${S.value}px)`})),xe=n.computed(()=>({transform:`translateY(${S.value}px)`})),pe=n.computed(()=>({height:`${d.value.length*x}px`,width:`${s.value}px`,transform:`translateY(${S.value}px)`})),ye=n.computed(()=>({width:`${b.value}px`})),Ce=n.computed(()=>({transform:`translateX(${y.value}px)`})),K=n.computed(()=>({width:`${h.value}px`})),Y=n.computed(()=>{const z=N();return S.value/(C.value-z)*(C.value-k.value)}),ue=n.computed(()=>({height:`${k.value}px`,top:`${Y.value}px`})),Fe=n.computed(()=>y.value/T.value*(_.value-v.value)),se=n.computed(()=>({width:`${v.value}px`,left:`${Fe.value}px`})),re=n.ref(!1),he=n.ref(-1),ve=n.ref(-1),be=n.ref();function W(z){if(re.value&&ve.value!==-1){const A=ve.value-z.pageX,le=_.value-v.value;if(Math.abs(A)<=le){const fe=A/(F.value-v.value)*(p.value-F.value);P(fe),ve.value=z.pageX}}}function R(z){if(re.value&&he.value!==-1){const A=he.value-z.pageY,le=N(),fe=le-k.value;if(Math.abs(A)<=fe){const ke=A/(C.value-k.value)*(le-C.value);B(ke),he.value=z.pageY}}}function oe(z){re.value=!1,he.value=-1,ve.value=-1,document.removeEventListener("mouseup",oe),document.removeEventListener("mousemove",W),document.removeEventListener("mousemove",R),document.body.style.userSelect="",be.value&&(be.value.style.opacity=null)}function D(z,A,le){var De;re.value=!0;const fe=(De=z.target)==null?void 0:De.parentElement;fe&&(fe.style.opacity="1",be.value=fe);const ke=le==="horizontal"?W:R;le==="vertical"&&(he.value=z.pageY),le==="horizontal"&&(ve.value=z.pageX),A.value&&(A.value,document.addEventListener("mousemove",ke),document.addEventListener("mouseup",oe),document.body.style.userSelect="none")}return{onMouseDownScrollThumb:D,onWheel:X,dataGridWidth:_,gridDataStyle:Ne,gridHeaderColumnsStyle:Ce,gridMergedDataStyle:ge,gridSideStyle:pe,fitHorizontalScroll:E,viewPortWidth:F,viewPortHeight:C,horizontalScrollThumbStyle:se,leftFixedGridDataStyle:ne,leftFixedGridHeaderColumnsStyle:ye,leftFixedGridMergedDataStyle:me,reCalculateVisualDataRows:V,resetScroll:j,rightFixedGridDataStyle:Se,rightFixedGridHeaderColumnsStyle:K,rightFixedGridMergedDataStyle:xe,shouldShowHorizontalScrollbar:$,shouldShowVirticalScrollbar:O,verticalScrollThumbStyle:ue,offsetX:y,offsetY:S}}function In(e,t,o,i,a,r,l,s){const d=n.ref(i.value-1+a),u=n.ref(0),{renderDataRow:f}=r,c=l?l.renderGroupRow:f,p=s?s.renderSummaryRow:f;function b(S){let y=f;return S.__fv_data_grid_group_row__&&(y=c),S.__fv_data_grid_group_summary__&&(y=p),y}function h(S,y,m,g){const{dataView:_}=o,C=[];if(_.value.length>0){const F=g?Date.now().toString():"";for(let N=S,k=0;N<=y;N++,k++){const v=_.value[N],M=_.value[N-1]||m,w=C[k-1],T=M?(M.__fv_data_position__||0)+(M.__fv_data_height__||0):0,V=b(v)(v,M,w,N,T,t.value,C);V.refreshKey=F,C.push(V)}}return u.value=C.length>0?C[0].index:0,d.value=C.length>0?C[C.length-1].index:0,C}function x(S,y,m){const g=y.groupField||"",{groupValue:_}=y;o[S](g,_);const{dataView:C}=o,F=m[0].index,N=Math.min(F+i.value+a+1,C.value.length-1);return h(F,N)}return{getVisualData:h,maxVisibleRowIndex:d,minVisibleRowIndex:u,toggleGroupRow:x}}function Ma(){function e(t,o){const{formatter:i}=t,a=o.raw[t.field];return i.data.find(l=>l.value===a).name}return{renderEnumColumn:e}}function Ia(){function e(i,a){return i?n.createVNode("span",{innerHTML:a.formatter.trueText},null):n.createVNode("span",{innerHTML:a.formatter.falseText},null)}function t(i,a){var r,l;return i?(r=a.formatter)==null?void 0:r.trueText:(l=a.formatter)==null?void 0:l.falseText}function o(i,a){const{formatter:r}=i,l=a.raw[i.field];if(r.type===wt.TEXT)return t(l,i);if(r.type===wt.IMAGE)return e(l,i)}return{renderBooleanColumn:o}}function Ba(){const{formatTo:e}=Ee.useDateFormat();function t(i,a){return e(i,a.formatter.dateFormat)}function o(i,a){const r=a.raw[i.field];return t(r,i)}return{renderDateColumn:o}}function Oa(){const{formatTo:e}=Ee.useNumberFormat();function t(i,a){const{formatter:r}=a,l={precision:r.precision,prefix:r.prefix||"",suffix:r.suffix||"",decimalSeparator:r.decimal||".",groupSeparator:r.thousand||""};return e(i,l)}function o(i,a){const r=a.raw[i.field];return t(r,i)}return{renderNumberColumn:o}}function Pa(){const{renderBooleanColumn:e}=Ia(),{renderEnumColumn:t}=Ma(),{renderNumberColumn:o}=Oa(),{renderDateColumn:i}=Ba();function a(s){return s}function r(s,d){const{formatter:u}=d;return u.customFormat?new Function(`return ${u.customFormat}`)():s}function l(s,d,u){const f=u.data[d.field],{formatter:c}=d;return c.type==="none"?f:c.type==="custom"?r(f,d):c.type==="enum"?t(d,u):c.type==="number"?o(d,u):c.type==="boolean"?e(d,u):c.type==="date"?i(d,u):f}return{renderFormatColumn:l}}function Bn(e,t,o){var S;const i=n.ref(e.mergeCell),r=((S=n.ref(e.rowOption).value)==null?void 0:S.wrapContent)||!1,{updateVisualInfomation:l}=o,{renderCommandColumn:s}=zi(),{renderFormatColumn:d}=Pa();function u(y,m,g,_,C,F=1){const N={colSpan:F,rowSpan:1,index:g,field:y,data:Ee.resolveField(_,y),editingData:Ee.resolveField(_,y),parent:C,mode:m,align:"left",valign:"start",showEllipsis:!0,getEditor:k=>k.data,setRef:k=>l(k,N,_),update:()=>{},accept:()=>{},cancel:()=>{},updateData:()=>{}};return N}function f(y,m,g){return y.getEditor=_=>t.getEditor(_,m,_.parent),y.setRef=_=>r&&l(_,y,g),y.update=_=>{_!==void 0&&(y.editingData=_)},y.accept=()=>{Ee.setFieldValue(y.editingData,g,m.field),y.data=Ee.resolveField(g,m.field)},y.cancel=()=>{y.editingData=y.data},y.updateData=_=>{Ee.setFieldValue(Ee.resolveField(_,m.field),g,m.field),y.data=Ee.resolveField(g,m.field)},y}function c(y,m){m.dataType==="commands"?y.formatter=(g,_)=>s(m,_):m.formatter&&(y.formatter=(g,_)=>typeof m.formatter=="function"?m.formatter(g,_):d(m.dataType,m,_))}function p(y,m,g){const _=m&&m.data[g];if(_&&_.data===y.data){const F=_&&_.spannedBy||_;F.rowSpan++,F.spanned=F.spanned||[],F.spanned.push(y),y.colSpan=0,y.rowSpan=0,y.spannedBy=F}}function b(y,m,g){i.value&&p(y,m,g.field)}function h(y,m){m.showEllipsis!==void 0&&(y.showEllipsis=m.showEllipsis),y.align=m.align||"left",y.valign=m.valign||"middle"}function x(y,m,g,_,C){const F=y.readonly?Pe.readonly:Pe.editable,N=u(y.field,F,m,g,_);return h(N,y),f(N,y,g),c(N,y),b(N,C,y),N}return{createCellByColumn:x,createCellByField:u}}function On(e,t,o,i,a,r){var y,m;const l=n.ref(e.rowOption),s=((y=l.value)==null?void 0:y.height)||28,d=((m=l.value)==null?void 0:m.wrapContent)||!1,{idField:u}=i,{collapseField:f}=o,{updateRowPosition:c}=a,{createCellByColumn:p}=r;function b(g,_,C,F,N,k,v){var me,Ne,ge;const{__fv_data_grid_group_field__:M,__fv_data_grid_group_value__:w,__fv_data_index__:T}=C,I=C.__fv_data_grid_group_layer__||(C.__fv_parents__?(me=C.__fv_parents__)==null?void 0:me.size:0)||0,V=typeof C.parent=="number"?Number(C.parent):-1,O=C.__fv_data_grid_group_collapse__||C[f.value],$=C.__fv_visible__===void 0?!0:C.__fv_visible__,B=C.__fv_checked__,P=C.__fv_indeterminate__,E=C.__fv_disabled__||C[((Ne=e.rowOption)==null?void 0:Ne.disabledField)||"disabled"],j=v==null?void 0:v.find(Se=>Se.raw[u.value]===C.parent),G=j&&j.collapse;F&&(F.parent,C.parent);const X=G||j&&!j.visible,ne={collapse:O,data:{},dataIndex:T,groupField:M,groupValue:w,layer:I,index:_,parentIndex:V,pre:F,top:k,type:g,raw:C,checked:B,disabled:E,indeterminate:P,setRef:Se=>{ne.ref=Se},visible:$&&!X,status:He.initial};return F||(C.__fv_data_position__=0),d||(ne.height=s,C.__fv_data_height__=ne.height,c(ne,C)),(ge=l.value)!=null&&ge.customRowStatus&&(l.value.customRowStatus(ne),C.__fv_collapse__=ne.collapse,C.__fv_visible__=ne.visible,C.__fv_disabled__=ne.disabled),ne}function h(g,_,C,F,N,k,v){const M=b(Je.data,N,_,C,F,k,v);return g.forEach((w,T)=>{M.data[w.field]=p(w,N,_,M,F)}),M}function x(g,_,C,F,N){return Object.assign(g,{index:_,dataIndex:C,top:F,pre:N})}function S(g,_,C,F,N,k,v){const M=g.__fv_data_index__,w=g[u.value],T=t.getEditingSnapshot(w);return T===null?h(k,g,_,C,F,N,v):x(T,F,M,N,C)}return{createEmptyRow:b,createNewRowFromDataItem:h,renderDataRow:S}}function $a(e,t,o,i){const a=n.ref(e.summary),{idField:r}=t,{createCellByField:l}=o,{createEmptyRow:s}=i,d=n.computed(()=>{const p=a.value;return(p==null?void 0:p.groupFields)||[]}),u=n.computed(()=>{const p=a.value;return p&&p.enable&&p.groupFields&&p.groupFields.length>0});function f(p,b,h,x){if(u.value){const S=p.data[b];let y=S.colSpan;const m=d.value.reduce((g,_)=>(g.set(_,!0),g),new Map);x.reduce((g,_,C)=>{if(m.has(_.field)){const F=l(_.field,Pe.readonly,C,h,p);p.data[_.field]=F,y-1>C&&(y=C)}return g},p),S.colSpan=y}}function c(p,b,h,x,S,y,m){const g=p.__fv_data_grid_group_field__,_=s(Je.group,x,p,b,h,S);return _.data[r.value]=l(r.value,Pe.readonly,-1,p,_,0),_.data[g]=l(g,Pe.readonly,1,p,_,y.length),f(_,g,p,y),_}return{renderGroupRow:c}}function ja(e,t,o,i){const{idField:a}=t,{createCellByField:r}=o,{createEmptyRow:l}=i;function s(d,u,f,c,p,b,h){const x=d.__fv_data_grid_group_field__,S=l(Je.summary,c,d,u,f,p);return S.data[a.value]=r(a.value,Pe.readonly,-1,d,S),S.data[x]=r(x,Pe.readonly,1,d,S,b.length),S}return{renderSummaryRow:s}}function Pn(e,t,o){var k;const{idField:i}=o,a=n.ref(e.editable),r=n.ref(e.editOption),l=n.ref(((k=e.rowOption)==null?void 0:k.wrapContent)||!1);n.watch(()=>e.editable,()=>{a.value=e.editable}),n.watch(()=>{var v;return(v=e.editOption)==null?void 0:v.editMode},v=>{r.value.editMode=v});const s=new Map([["boolean","check-box"],["datetime","date-picker"],["enum","combo-list"],["number","number-spinner"],["string","input-group"],["text","text"],["commands","commands-editor"]]);let d,u,f,c;function p(v){return u&&u.raw[i.value]===v?u:null}const b=n.reactive({});function h(v,M,w={}){v.mode=Pe.editing,d=v,u=M,f=M==null?void 0:M.raw[v.field],c=w}function x(v){v.accept(),v.mode=Pe.editable,d=null,t.emit("endEditCell",{cell:v,row:u,newValue:u==null?void 0:u.raw[v.field],oldValue:f,column:c,editor:b})}function S(v){document.body.classList.contains("lookup-modal-open")||(d&&(x(d),u&&(u=void 0)),document.body.removeEventListener("click",S))}function y(v,M,w,T={}){a.value&&r.value.editMode==="cell"&&M.mode===Pe.editable&&(d&&x(d),h(M,w,T),document.body.removeEventListener("click",S),document.body.addEventListener("click",S))}function m(v){Object.values(v.data).filter(M=>M.mode===Pe.editable&&M.field!=="__commands__").forEach(M=>{M.mode=Pe.editing}),v.status=He.editing,u=v}function g(v,M){Object.values(v.data).filter(w=>w.mode===Pe.editing).forEach(w=>{M?w.accept():w.cancel(),w.mode=Pe.editable}),v.status=He.initial,u===v&&(u=void 0)}function _(v){a.value&&r.value.editMode==="row"&&u!==v&&(u&&g(u,!1),m(v))}function C(v){g(v,!0),v.status=He.initial}function F(v){g(v,!1),v.status=He.initial}function N(v,M,w){const T=M.dataType,I=M.editor||{type:s.get(T)||"input-group"};return!l.value&&I.type==="text"&&(I.type="input-group"),I?(I.context={rowData:w.raw,column:M,cell:v,editor:b},n.createVNode(yt.FDynamicFormInput,{focusOnCreated:e.focusOnEditingCell,selectOnCreated:e.selectOnEditingCell,editor:I,modelValue:v.editingData,"onUpdate:modelValue":V=>v.editingData=V,id:M.id},null)):v.data}return{onClickCell:y,onEditingRow:_,acceptEditingRow:C,cancelEditingRow:F,getEditingSnapshot:p,getEditor:N}}function $n(e){const t=n.ref(e.idField);function o(i){if(i&&i.length){const a=i[0];Object.keys(a).includes(t.value)||(t.value="__fv_indetify__")}}return{idField:t,reviseIdentifyField:o}}function Ea(e,t,o,i,a,r){const{addNewDataItemAtLast:l}=o,{columnContext:s}=i,{onClickCell:d}=a;function u(h,x){const S=s.value.primaryColumns.findIndex(N=>N.field===h.field),y=h.parent,m=y.index,g=s.value.primaryColumns.length-1,_=r.value.length-1,C=S===g,F=m===_;if(S>-1&&!C){const N=s.value.primaryColumns[S+1],k=y.data[N.field];d(x,k,y,N)}if(C&&!F){const N=r.value[m+1],k=s.value.primaryColumns[0],v=N.data[s.value.primaryColumns[0].field];d(x,v,y,k)}if(C&&F){if(e.appendOnEnterAtLastCell){l();const N=r.value[m+1],k=s.value.primaryColumns[0],v=N.data[s.value.primaryColumns[0].field];d(x,v,N,k)}t.emit("enterUpInLastCell")}}function f(h,x){const S=s.value.primaryColumns.findIndex(_=>_.field===h.field),y=h.parent,m=s.value.primaryColumns.length-1;if(S>0&&S<=m){const _=s.value.primaryColumns[S-1],C=y.data[_.field];d(x,C,y,_)}}function c(h,x){const S=h.field,m=h.parent.index,g=r.value.length-1;if(m>-1&&m<g){const C=r.value[m+1],F=C.data[S];d(x,F,C)}}function p(h,x){const S=h.field,m=h.parent.index,g=r.value.length-1;if(m>0&&m<=g){const C=r.value[m-1],F=C.data[S];d(x,F,C)}}function b(h,x){const{key:S,shiftKey:y}=h;if(S==="Enter"&&!y){u(x,h);return}if(y&&S==="Enter"){f(x,h);return}if(S==="ArrowDown"){c(x,h);return}S==="ArrowUp"&&p(x,h)}return{navigateOnKeyUp:b}}function jn(e,t,o,i){const{idField:a}=i,{currentSelectedDataId:r,multiSelectOnClickRow:l,multiSelectOnClickRowWithShift:s,selectItem:d,selectedValues:u,toggleSelectItem:f,enableSelectRow:c}=o,p=n.ref(0),b=n.ref(-1);function h(F){return c.value&&(s.value?u.value.includes(F.raw[a.value]):F.raw[a.value]===r.value)}function x(F){var k;const N={"fv-grid-row":F.type===Je.data,"fv-grid-group-row":F.type===Je.group,"fv-grid-summary-row":F.type===Je.summary,"fv-grid-row-hover":F.index===b.value,"fv-grid-row-selected":h(F),"fv-grid-row-odd":F.dataIndex%2>0,"fv-grid-row-even":F.dataIndex%2===0,"fv-grid-disabled":F.disabled};if((k=e.rowOption)!=null&&k.customRowStyle){const v=e.rowOption.customRowStyle(F.raw)||{};return Object.assign({},N,v)}return N}function S(F){var k;const N={"fv-grid-cell":!0};if((k=e.rowOption)!=null&&k.customCellStyle){const v=e.rowOption.customCellStyle(F)||{};return Object.assign({},N,v)}return N}function y(F){p.value+=1,setTimeout(()=>{p.value===1&&t.emit("clickRow",F.index,F.raw),p.value=0},250),p.value>1&&(t.emit("doubleClickRow",F.index,F.raw),console.log(`on double click row: ${F.index}`),p.value=0)}function m(F,N){if(N.disabled)return;s.value&&F.shiftKey||l.value?f(N):d(N),y(N),F.stopPropagation()}function g(F,N){}function _(F,N){}function C(F){var k;const N={"fv-grid-sidebar-row":!0,"fv-grid-sidebar-row-hover":F.index===b.value,"fv-grid-sidebar-row-selected":h(F),"fv-grid-sidebar-row-odd":F.dataIndex%2>0,"fv-grid-sidebar-row-even":F.dataIndex%2===0};if((k=e.rowOption)!=null&&k.customRowStyle){const v=e.rowOption.customRowStyle(F.raw)||{};return Object.assign({},N,v)}return N}return{gridCellClass:S,gridRowClass:x,onClickRow:m,onMouseoverRow:g,sidebarRowClass:C,onMouseoutRow:_}}function En(e,t,o,i,a){const{idField:r}=o,l=n.ref(""),s=n.computed(()=>e.selection.enableSelectRow),d=n.ref(e.selection.multiSelect??!1),u=n.ref(e.selection.multiSelectMode),f=n.ref(e.selection.showCheckbox),c=n.ref(e.selection.showSelectAll),p=n.ref(e.selectionValues);n.watch(()=>e.selection.showSelectAll,(j,G)=>{j!==G&&(c.value=j)});function b(){return t.getSelectionItems(p.value)}function h(){const j=i.value.reduce((X,ne)=>(X.set(ne.raw[r.value],ne),X),new Map);return p.value.map(X=>j.get(X)).filter(X=>!!X)}const x=n.computed(()=>s.value&&d.value),S=n.computed(()=>!!e.hierarchy),y=n.computed(()=>{const j=f.value&&u.value==="DependOnCheck";return x.value&&j}),m=n.computed(()=>x.value&&!f.value),g=n.computed(()=>x.value&&f.value&&u.value==="OnCheckAndClick");n.computed(()=>g.value);function _(){const j=t.getSelectionItems(p.value);a.emit("selectionChange",j)}function C(){i.value.forEach(G=>{G.checked=!1,G.indeterminate=!1,G.raw.__fv_checked__=!1,G.raw.__fv_indeterminate__=!1}),h().forEach(G=>{G.checked=!0,G.raw.__fv_checked__=!0})}n.watch(()=>i.value,()=>{C()}),n.watch(()=>e.selectionValues,j=>{p.value=j,C()},{immediate:!0}),n.watch(()=>e.selection,j=>{d.value=!!j.multiSelect,u.value=j.multiSelectMode||"DependOnCheck",f.value=!!j.showCheckbox});const F=n.computed(()=>!d.value);function N(j){return j.raw[r.value]||""}function k(j){return p.value.findIndex(X=>X===N(j))}function v(){h().forEach(X=>{X.checked=!1}),t.getSelectionItems(p.value).forEach(X=>{X.__fv_checked__=!1}),p.value=[],l.value=""}function M(j){const G=j.raw;G.__fv_checked__=!0,G.__fv_indeterminate__=!1;const X=new Set(p.value);X.add(G[r.value]),p.value=Array.from(X.values()),j.checked=!0,j.indeterminate=!1,l.value=j.raw[r.value]}function w(j){const G=j.raw;G.__fv_checked__=!1,G.__fv_indeterminate__=!1,p.value=p.value.filter(X=>X!==G[r.value]),j.checked=!1,j.indeterminate=!1,l.value=""}function T(j){const G=j.raw;G.__fv_checked__=!1,G.__fv_indeterminate__=!0,p.value=p.value.filter(X=>X!==G[r.value]),j.checked=!1,j.indeterminate=!0}function I(j){F.value&&v(),j.checked?w(j):M(j),_()}function V(j){j.raw[r.value]!==l.value&&(v(),M(j),_())}function O(j){const G=i.value.find(X=>X.raw[r.value]===j);G&&V(G)}function $(j){const G=i.value.filter(X=>j.includes(X.raw[r.value]));G&&G.length&&(v(),G.forEach(X=>{M(X)}),_())}function B(){i.value.forEach(j=>M(j)),l.value="",_()}function P(){p.value.splice(0,p.value.length),l.value="",i.value.forEach(j=>{const G=j.raw;G.__fv_checked__=!1,G.__fv_indeterminate__=!1,j.checked=!1,j.indeterminate=!1}),_()}function E(){return i.value.find(j=>j.raw[r.value]===l.value)}return{clearSelection:v,currentSelectedDataId:l,enableMultiSelect:d,enableSelectRow:s,findIndexInSelectedItems:k,getSelectedItems:b,getSelectionRow:E,indeterminate:T,isSelectingHirarchyItem:S,multiSelectMode:u,multiSelectOnClickRow:g,multiSelectOnClickRowWithShift:m,multiSelectOnlyOnCheck:y,select:M,selectAll:B,selectedValues:p,selectItem:V,selectItemById:O,selectItemByIds:$,showCheckBox:f,showSelectAll:c,toggleSelectItem:I,unSelect:w,unSelectAll:P}}function Dn(e,t){var S,y;const o=String(Date.now()),i=50,{showCheckBox:a,showSelectAll:r}=t,l=n.ref(((S=e.rowNumber)==null?void 0:S.enable)??!1),s=n.computed(()=>e.hierarchy&&a.value&&e.selection.enableSelectRow&&e.selection.multiSelect?!1:a.value),d=n.ref(l.value?((y=e.rowNumber)==null?void 0:y.width)??32:0),u=n.ref(s.value?i:0),f=n.computed(()=>{var m;return l.value?((m=e.rowNumber)==null?void 0:m.heading)??"序号":""}),c=n.computed(()=>(s.value&&!e.hierarchy?Number(u.value):0)+(l.value?Number(d.value):0));n.watch(()=>e.rowNumber,m=>{m&&m.enable!==void 0&&(l.value=m.enable),m&&m.width!==void 0&&(d.value=m.width)});function p(m){return{top:`${m.top}px`,width:`${c.value}px`,height:`${m.height||""}px`}}const b=n.computed(()=>({width:`${c.value}px`}));function h(m){return`${o}_${m.type}_r_${m.index}_${m.refreshKey||""}`}function x(m){return`${o}_${m.type}_r_${m.index}_${m.refreshKey||""}`}return{showRowNumer:l,showSidebarCheckBox:s,sidebarCellPosition:p,sidebarCornerCellStyle:b,sidebarTitle:f,sidebarWidth:c,rowKey:x,cellKey:h}}const Da={ascend:(e,t)=>e===t?0:e===!1?-1:1,decend:(e,t)=>e===t?0:e===!0?-1:1},Ra={ascend:(e,t)=>{const o=new Date(new Date(e).toLocaleDateString()).valueOf(),i=new Date(new Date(t).toLocaleDateString()).valueOf();return o===i?0:o<i?-1:1},decend:(e,t)=>{const o=new Date(new Date(e).toLocaleDateString()).valueOf(),i=new Date(new Date(t).toLocaleDateString()).valueOf();return o===i?0:o<i?1:-1}},Ga={ascend:(e,t)=>e===t?0:e<t?-1:1,decend:(e,t)=>e===t?0:e<t?1:-1},Aa={ascend:(e,t)=>e===t?0:e<t?-1:1,decend:(e,t)=>e===t?0:e<t?1:-1};function Rn(e){const t=new Map([["boolean","boolean-sorter"],["date","datetime-sorter"],["datetime","datetime-sorter"],["number","numeric-sorter"],["string","text-sorter"],["text","text-sorter"],["enum","text-sorter"],["reference","text-sorter"]]),o=new Map([["boolean-sorter",Da],["datetime-sorter",Ra],["numeric-sorter",Ga],["text-sorter",Aa]]);function i(l){const s=(l==null?void 0:l.dataType)||"string",d=t.get(s)||"text-sorter";return o.get(d)||(l==null?void 0:l.sorter)}function a(l){return i(l.column)}function r(l,s){const d=a(l),u=(l.status&Me.sortable)===Me.sortable&&(l.status&Me.sorted)===Me.sorted,f=(l.status&Me.ascending)===Me.ascending,c=(l.status&Me.descending)===Me.descending;if(u&&d){const p=f?d.ascend:c?d.decend:void 0;p?s.addSorter(l.field,{field:l.field,compare:p}):s.removeSorter(l.field)}else s.removeSorter(l.field)}return{getSorterByColumn:i,updateSorter:r}}function Ha(e){function t(a){return{}}function o(a){const{valign:r,align:l}=a;return{"d-flex":!0,"h-100":!0,"w-100":!0,"justify-content-start":l!=="center"&&l!=="right","justify-content-center":l==="center","justify-content-right":l==="right","align-items-start":r!=="middle"&&r!=="bottom","align-items-center":r==="middle","align-items-end":r==="bottom"}}function i(a){const{align:r,showEllipsis:l}=a;return{"w-100":!0,"text-left":r!=="center"&&r!=="right","text-center":r==="center","text-right":r==="right","text-truncate":l}}return{cellContentPosition:t,cellContentClass:o,cellContentClassWithEllipsis:i}}function Ue(e){return typeof e>"u"}function Gn(e){var c,p,b,h,x,S,y,m;const t=n.ref((c=e.pagination)==null?void 0:c.enable),o=n.ref(((p=e.pagination)==null?void 0:p.index)||1),i=n.ref((b=e.pagination)==null?void 0:b.size),a=n.ref((h=e.pagination)==null?void 0:h.sizeLimits),r=n.ref((x=e.pagination)==null?void 0:x.mode),l=n.ref((S=e.pagination)==null?void 0:S.showIndex),s=n.ref((y=e.pagination)==null?void 0:y.showLimits),d=n.ref(((m=e.pagination)==null?void 0:m.total)||0),u=n.ref(d.value||e.data.length||0);return n.watch(()=>{var g;return(g=e.pagination)==null?void 0:g.sizeLimits},(g,_)=>{a.value=g},{immediate:!0,deep:!0}),n.watch(()=>{var g;return(g=e.pagination)==null?void 0:g.showIndex},(g,_)=>{g!==_&&(l.value=g)}),n.watch(()=>{var g;return(g=e.pagination)==null?void 0:g.showLimits},(g,_)=>{g!==_&&(s.value=g)}),n.watch(()=>{var g;return(g=e.pagination)==null?void 0:g.total},(g,_)=>{g!==_&&(d.value=g,u.value=g)}),n.watch(()=>{var g;return(g=e.pagination)==null?void 0:g.enable},(g,_)=>{g!==_&&(t.value=g)}),{currentPage:o,pageSize:i,pageList:a,pageTotal:d,total:u,shouldRenderPagination:t,showPageIndex:l,showPageList:s,mode:r,updatePagination:g=>{if(!g)return;const{enable:_,total:C,size:F,index:N,sizeLimits:k,showIndex:v,showLimits:M,mode:w}=g;Ue(_)||(t.value=_),Ue(N)||(o.value=N),Ue(F)||(i.value=F),Ue(k)||(a.value=k),Ue(v)||(l.value=v),Ue(M)||(s.value=M),Ue(C)||(d.value=C),Ue(w)||(r.value=w)}}}function La(e){const t="parent",o="layer",i="hasChildren",a=(r,l=1,s=[],d=null)=>(r=r||[],r.reduce((u,f)=>(f.id=f.id||f.data[e.idField],f[t]=d,f[o]=l,f[i]=!1,f={...f,...f.data},s.push(f),f.children&&f.children.length&&(f[i]=!0,a(f.children,l+1,s,f.id)),u),s),s);return{flatTreeData:a}}function An(e,t,o,i,a,r,l,s,d,u,f,c,p,b,h){const x=n.inject("FDataGridContext",null),S=n.ref((x==null?void 0:x.cellPositionMap.value)||{left:{},primary:{},right:{}});n.watch(x==null?void 0:x.cellPositionMap,R=>{S.value=R},{deep:!0});const{cellKey:y,cellPosition:m,rowKey:g,rowPosition:_,rowSpanCellPosition:C,groupCellPosition:F,summaryCellPosition:N}=l,{cellContentClass:k,cellContentPosition:v,cellContentClassWithEllipsis:M}=r,{collpaseGroupIconClass:w}=u,{gridCellClass:T,gridRowClass:I,onClickRow:V,onMouseoverRow:O,onMouseoutRow:$}=c,{onClickCell:B}=d,{toggleGroupRow:P}=p,{columnContext:E,hasLeftFixedColumn:j,hasRightFixedColumn:G}=s,{navigateOnKeyUp:X}=f,{gridDataStyle:ne,gridMergedDataStyle:me,leftFixedGridDataStyle:Ne,leftFixedGridMergedDataStyle:ge,rightFixedGridDataStyle:Se,rightFixedGridMergedDataStyle:xe}=b;function pe(R,oe){oe.collapse=!oe.collapse,h.value=P(oe.collapse?"collapse":"expand",oe,h.value)}function ye(R){const oe=[];if(R.groupField&&S.value[R.groupField]){for(let ae=0;ae<=R.layer;ae++)oe.push(n.createVNode("div",{class:"fv-grid-group-row-icon",onClick:z=>pe(z,R)},[n.createVNode("span",{class:w(R)},null)]));const D=R.data[R.groupField];oe.push(n.createVNode("div",{ref:D.setRef,key:y(R,R.layer+1),class:"fv-grid-cell",style:F(D,S.value,R.layer)},[D.data])),Object.values(R.data).filter(ae=>ae.field!==R.groupField&&ae.colSpan!==0).forEach(ae=>{oe.push(n.createVNode("div",{ref:ae.setRef,key:y(R,ae.index),class:"fv-grid-cell",style:m(ae,S.value)},[ae.data]))})}return oe}function Ce(R,oe){return R.layer>-1&&n.createVNode("div",{ref:R.setRef,key:g(R),class:I(R),style:_(R),onClick:D=>V(D,R),onMouseover:D=>O(D,R)},[ye(R)])}function K(R){const oe=[];if(R.groupField&&S.value[R.groupField]){const D=R.data[R.groupField];oe.push(n.createVNode("div",{ref:D.setRef,key:y(R,R.layer+1),class:"fv-grid-cell",style:N(D,S.value,R.layer)},[D.data]))}return oe}function Y(R,oe){return R.layer>-1&&n.createVNode("div",{ref:R.setRef,key:g(R),class:I(R),style:_(R),onClick:D=>V(D,R),onMouseover:D=>O(D,R)},[K(R)])}function ue(R,oe){return n.createVNode("div",{ref:R.setRef,key:g(R),class:I(R),style:_(R),onClick:D=>V(D,R),onMouseover:D=>O(D,R),onMouseout:D=>$(D,R)},[Object.values(R.data).filter(D=>S.value[D.field]&&D.rowSpan===1).map(D=>{const ae=oe==null?void 0:oe.find(z=>z.field===D.field);return n.createVNode("div",{ref:D.setRef,key:y(R,D.index),class:T(D),style:m(D,S.value),onClick:z=>B(z,D,R,ae),onKeyup:z=>X(z,D)},[n.createVNode("div",{class:k(D,ae),style:v(D)},[n.createVNode("div",{class:M(D)},[D.data!=null&&t.slots.cellTemplate?t.slots.cellTemplate({cell:D,row:R}):D.mode===Pe.editing?D.getEditor(D):D.formatter?D.formatter(D,R):D.data!=null?D.data.toString():D.data])])])})])}const Fe=[ue,Ce,Y];function se(R,oe){return h.value.map(D=>Fe[D.type](D,R))}function re(R){return h.value.map(oe=>Object.values(oe.data).filter(D=>S.value[D.field]&&D.rowSpan>1).map(D=>n.createVNode("div",{key:y(oe,D.index),class:"fv-grid-cell fv-grid-merged-cell",style:C(oe,D,S.value)},[D.data])))}function he(){return n.createVNode("div",{ref:i,class:"fv-grid-content-left-fixed"},[n.createVNode("div",{class:"fv-grid-data",style:Ne.value},[se(E.value.leftColumns.filter(R=>R.visible))]),n.createVNode("div",{class:"fv-grid-merge-date",style:ge.value},[re(E.value.leftColumns.filter(R=>R.visible))])])}function ve(){return n.createVNode("div",{ref:o,class:"fv-grid-content-primary"},[n.createVNode("div",{class:"fv-grid-data",style:ne.value},[se(E.value.primaryColumns.filter(R=>R.visible))]),n.createVNode("div",{class:"fv-grid-merge-date",style:me.value},[re(E.value.primaryColumns.filter(R=>R.visible))])])}function be(){return n.createVNode("div",{ref:a,class:"fv-grid-content-right-fixed"},[n.createVNode("div",{class:"fv-grid-data",style:Se.value},[se(E.value.rightColumns.filter(R=>R.visible))]),n.createVNode("div",{class:"fv-grid-merge-date",style:xe.value},[re(E.value.rightColumns.filter(R=>R.visible))])])}function W(){const R=[];return j.value&&R.push(he()),R.push(ve()),G.value&&R.push(be()),R}return{renderDataArea:W}}const Wa={cellPositionMap:{type:Object,default:{}}},qa=n.defineComponent({name:"FDataGridArea",props:Wa,setup(e){const t=n.ref(e.cellPositionMap),o=n.inject("FDataGridContext"),{parentProps:i,parentContext:a,primaryGridContentRef:r,leftFixedGridContentRef:l,rightFixedGridContentRef:s,useCellContentStyleComposition:d,useCellPositionComposition:u,useColumnComposition:f,useEditComposition:c,useGroupDataComposition:p,useNavigationComposition:b,useRowComposition:h,useVisualDataComposition:x,useVirtualScrollComposition:S,visibleDatas:y}=o,{calculateCellPositionInRow:m,cellKey:g,cellPosition:_,rowKey:C,rowPosition:F,rowSpanCellPosition:N,groupCellPosition:k,summaryCellPosition:v}=u,{cellContentClass:M,cellContentPosition:w,cellContentClassWithEllipsis:T}=d,{collpaseGroupIconClass:I}=p,{gridCellClass:V,gridRowClass:O,onClickRow:$,onMouseoverRow:B,onMouseoutRow:P}=h,{onClickCell:E}=c,{toggleGroupRow:j}=x,{columnContext:G,hasLeftFixedColumn:X,hasRightFixedColumn:ne}=f,{navigateOnKeyUp:me}=b,{gridDataStyle:Ne,gridMergedDataStyle:ge,leftFixedGridDataStyle:Se,leftFixedGridMergedDataStyle:xe,rightFixedGridDataStyle:pe,rightFixedGridMergedDataStyle:ye}=S;n.watch(()=>e.cellPositionMap,D=>{t.value=D});function Ce(D,ae){ae.collapse=!ae.collapse,y.value=j(ae.collapse?"collapse":"expand",ae,y.value)}function K(D,ae){var A;const z=[];if(D.groupField&&((A=t.value[ae])!=null&&A[D.groupField])){for(let fe=0;fe<=D.layer;fe++)z.push(n.createVNode("div",{class:"fv-grid-group-row-icon",onClick:ke=>Ce(ke,D)},[n.createVNode("span",{class:I(D)},null)]));const le=D.data[D.groupField];z.push(n.createVNode("div",{ref:le.setRef,key:g(D,D.layer+1),class:"fv-grid-cell",style:k(le,t.value[ae],D.layer)},[le.data])),Object.values(D.data).filter(fe=>fe.field!==D.groupField&&fe.colSpan!==0).forEach(fe=>{z.push(n.createVNode("div",{ref:fe.setRef,key:g(D,fe.index),class:"fv-grid-cell",style:_(fe,t.value[ae])},[fe.data]))})}return z}function Y(D,ae,z){return D.layer>-1&&n.createVNode("div",{ref:D.setRef,key:C(D),class:O(D),style:F(D),onClick:A=>$(A,D),onMouseover:A=>B(A,D)},[K(D,ae)])}function ue(D,ae){var A;const z=[];if(D.groupField&&((A=t.value[ae])!=null&&A[D.groupField])){const le=D.data[D.groupField];z.push(n.createVNode("div",{ref:le.setRef,key:g(D,D.layer+1),class:"fv-grid-cell",style:v(le,t.value[ae],D.layer)},[le.data]))}return z}function Fe(D,ae,z){return D.layer>-1&&n.createVNode("div",{ref:D.setRef,key:C(D),class:O(D),style:F(D),onClick:A=>$(A,D),onMouseover:A=>B(A,D)},[ue(D,ae)])}function se(D,ae,z){return n.createVNode("div",{ref:D.setRef,key:C(D),class:O(D),style:F(D),onClick:A=>$(A,D),onMouseover:A=>B(A,D),onMouseout:A=>P(A,D)},[Object.values(D.data).filter(A=>{var le;return((le=t.value[ae])==null?void 0:le[A.field])&&A.rowSpan===1}).map(A=>{const le=z==null?void 0:z.find(fe=>fe.field===A.field);return n.createVNode("div",{ref:A.setRef,key:g(D,A.index),class:V(A),style:_(A,t.value[ae]),onClick:fe=>E(fe,A,D,le),onKeyup:fe=>me(fe,A)},[n.createVNode("div",{class:M(A,le),style:w(A)},[n.createVNode("div",{class:T(A)},[A.data!=null&&a.slots.cellTemplate?a.slots.cellTemplate({cell:A,row:D}):A.mode===U.CellMode.editing?A.getEditor(A):A.formatter?A.formatter(A,D):A.data!=null?A.data.toString():A.data])])])})])}const re=[se,Y,Fe];function he(D,ae){return y.value.map(z=>re[z.type](z,ae,D))}function ve(D,ae){return y.value.map(z=>Object.values(z.data).filter(A=>{var le;return((le=t.value[ae])==null?void 0:le[A.field])&&A.rowSpan>1}).map(A=>n.createVNode("div",{key:g(z,A.index),class:"fv-grid-cell fv-grid-merged-cell",style:N(z,A,t.value[ae])},[A.data])))}function be(){return n.createVNode("div",{ref:l,class:"fv-grid-content-left-fixed"},[n.createVNode("div",{class:"fv-grid-data",style:Se.value},[he(G.value.leftColumns.filter(D=>D.visible),"left")]),n.createVNode("div",{class:"fv-grid-merge-date",style:xe.value},[ve(G.value.leftColumns.filter(D=>D.visible),"left")])])}function W(){return n.createVNode("div",{ref:r,class:"fv-grid-content-primary"},[n.createVNode("div",{class:"fv-grid-data",style:Ne.value},[he(G.value.primaryColumns.filter(D=>D.visible),"primary")]),n.createVNode("div",{class:"fv-grid-merge-date",style:ge.value},[ve(G.value.primaryColumns.filter(D=>D.visible),"primary")])])}function R(){return n.createVNode("div",{ref:s,class:"fv-grid-content-right-fixed"},[n.createVNode("div",{class:"fv-grid-data",style:pe.value},[he(G.value.rightColumns.filter(D=>D.visible),"right")]),n.createVNode("div",{class:"fv-grid-merge-date",style:ye.value},[ve(G.value.rightColumns.filter(D=>D.visible),"right")])])}function oe(){const D=[];return X.value&&D.push(be()),D.push(W()),ne.value&&D.push(R()),D}return()=>oe()}}),Ke=n.defineComponent({name:"FDataGrid",props:ut,emits:["changed","clickRow","doubleClickRow","selectionChange","enterUpInLastCell","pageIndexChanged","pageSizeChanged","beginEditCell","endEditCell"],setup(e,t){var io;const a=n.ref(e.columns),r=U.useIdentify(e),l=n.ref(),s=n.ref(),d=n.ref(),u=n.ref(),f=n.ref(),c=n.ref([]),p=n.ref(!1),b=n.ref(((io=e.rowOption)==null?void 0:io.wrapContent)||!1),h=U.useGroupData(e,r),x=U.useFilter(),S=U.useHierarchy(e),{showLoading:y,renderLoading:m}=U.useLoading(e,l),g=U.usePagination(e),{shouldRenderPagination:_}=g,C=U.useDataView(e,new Map,S,r,g),F=U.useSelection(e,C,r,c,t),N=n.computed(()=>Math.min(C.dataView.value.length,100));n.computed(()=>e.loadingConfig.message);const{containerStyleObject:k}=U.useDataViewContainerStyle(e),v=U.useCommandColumn(e),{applyCommands:M}=v;M(a);const w=U.useColumn(e),T=U.useSort(e),{applyColumnSorter:I,columnContext:V,updateColumnRenderContext:O}=w;I(C,T);const $=U.useGroupColumn(e,V),B=U.useEdit(e,t,r),P=U.useVisualDataBound(),E=U.useVisualDataCell(e,B,P),j=U.useVisualDataRow(e,B,S,r,P,E),G=U.useVisualGroupRow(e,r,E,j),X=U.useVisualSummaryRow(e,r,E,j),ne=U.useVisualData(e,a,C,N,0,j,G,X),{getVisualData:me}=ne,Ne=U.useCellContentStyle(V),ge=U.useCellPosition(e,V),Se=U.useSidebar(e,F),{sidebarWidth:xe}=Se;c.value=me(0,N.value+0-1);const pe=U.useVirtualScroll(e,C,c,V,ne,N,0,xe),{onWheel:ye,dataGridWidth:Ce,viewPortHeight:K,viewPortWidth:Y,resetScroll:ue}=pe,Fe=U.useFitColumn(e,V,s,Y,$),{calculateColumnsSize:se,cellPositionMap:re}=Fe,he=U.useFilterHistory(),ve=U.useColumnFilter(s,f,C,he,pe),be=U.useRow(e,t,F,r),W=U.useDragColumn(e,t,w,C,$,h,pe),R=n.computed(()=>({"fv-grid":!0,"fv-datagrid-strip":e.showStripe})),oe=n.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":p.value,"fv-grid-wrap-content":b.value})),{renderGridHeader:D,renderGridColumnResizeOverlay:ae}=U.getColumnHeader(e,s,u,f,w,C,W,ve,x,he,Fe,$,F,Se,T,pe,Y,c),{renderDataGridPagination:z}=U.getPagination(e,t,C,pe,g),{renderDataGridSidebar:A}=U.getSidebar(e,be,F,Se,pe),{renderDisableMask:le}=U.getDisableMask(),{renderDataGridSummery:fe}=U.getSummary(e,C,w),{renderHorizontalScrollbar:ke}=U.getHorizontalScrollbar(e,s,pe),{renderVerticalScrollbar:De}=U.getVerticalScrollbar(e,s,pe),{renderFilterPanel:Le}=U.getFilterPanel(e,w,C,x,pe),{renderGroupPanel:We}=U.getGroupPanel(e,C,W,h,pe);function Ze(){var we,rt;K.value=((we=d.value)==null?void 0:we.clientHeight)||0,Ce.value=((rt=s.value)==null?void 0:rt.clientWidth)||0,se()}n.onMounted(()=>{s.value&&(dt.useResizeObserver(s.value,Ze),se(),n.nextTick(()=>{s.value&&(Ce.value=s.value.clientWidth),d.value&&(Y.value=d.value.clientWidth,K.value=d.value.clientHeight)})),y.value&&m()}),n.onUnmounted(()=>{}),n.watch(Y,()=>{});function et(){C.insertNewDataItem(),ue()}function tt(){C.insertNewDataItem(c.value.length),ue()}function Xe(we){B.onEditingRow(we)}function q(we){C.removeDataItem(we),ue()}function ie(we){C.removeDataItemById(we),ue()}function ce(we){B.acceptEditingRow(we)}function Ie(we){B.cancelEditingRow(we)}function Oe(we){we&&(a.value=we,M(a),O(a.value),I(C,T),se())}function de(we){we&&(ue(),C.load(we),c.value=me(0,N.value+0-1))}function $e(we){g.updatePagination(we)}n.watch([C.startIndex,C.endIndex],([we,rt],[Ns,ks])=>{var ro,ao;we!==Ns&&de((ro=C.originalData)==null?void 0:ro.value),rt!==ks&&de((ao=C.originalData)==null?void 0:ao.value)}),n.watch(()=>e.data,we=>{e.changePolicy==="default"&&de(we)},{deep:!0});function Ve(we){F.selectItemById(we)}function Te(we){F.selectItemByIds(we)}function Re(){return c.value}function _e(we){return c.value.filter(rt=>we.includes(rt.raw[e.idField]))}const qe={addNewDataItem:et,addNewDataItemAtLast:tt,removeDataItem:q,removeDataItemById:ie,editDataItem:Xe,acceptDataItem:ce,cancelDataItem:Ie,selectItemById:Ve,selectItemByIds:Te,updateColumns:Oe,updateDataSource:de,updatePagination:$e,getVisibleData:Re,getVisibleDataByIds:_e};t.expose(qe);const nt=U.useNavigation(e,t,qe,w,B,c);An(e,t,d,u,f,Ne,ge,w,B,h,nt,be,ne,pe,c);const Fs=n.computed(()=>!c.value||!c.value.length),{renderEmpty:Vs}=U.getEmpty(t);return n.provide("FDataGridContext",{parentProps:e,parentContext:t,primaryGridContentRef:d,leftFixedGridContentRef:u,rightFixedGridContentRef:f,useCellContentStyleComposition:Ne,useCellPositionComposition:ge,useColumnComposition:w,useEditComposition:B,useGroupDataComposition:h,useNavigationComposition:nt,useRowComposition:be,useVisualDataComposition:ne,useVirtualScrollComposition:pe,visibleDatas:c,cellPositionMap:re}),()=>n.createVNode("div",{ref:l,class:R.value,style:k.value,onWheel:ye},[Le(),We(),D(),Fs.value&&Vs(),n.createVNode("div",{ref:s,class:oe.value,onMouseover:()=>{p.value=!0},onMouseleave:()=>{p.value=!1}},[A(c),n.createVNode(qa,{cellPositionMap:re.value},null),ke(),De()]),fe(),_.value&&z(),ae(),e.disabled&&le()])}}),za={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/check-box.schema.json",title:"check-box",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a check box",type:"string"},type:{description:"The type string of check box component",type:"string",default:"check-box"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disabled:{type:"string",default:!1},editable:{description:"",type:"boolean",default:!0},placeholder:{description:"",type:"string",default:""},text:{description:"",type:"string",default:""},value:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},visible:{description:"",type:"boolean",default:!0}},required:["id","type"],ignore:["id","appearance","binding","visible"]},Ua=new Map([["appearance",Ye]]);function Ka(e,t,o){return t}const Hn={id:{Type:String,default:""},customClass:{Type:String,default:""},disabled:{Type:Boolean,default:!1},readonly:{type:Boolean,default:!1},indeterminate:{Type:Boolean,default:!1},modelValue:{Type:Boolean,default:!1},focusOnCreated:{type:Boolean,default:!1},value:{type:String,default:""},name:{type:String,default:""},label:{type:String,default:""},checked:{type:Boolean,default:!1}};Ge(Hn,za,Ua,Ka);const Xa=n.defineComponent({name:"FCheckBox",props:Hn,emits:["change","changeValue","update:modelValue","update:checked"],setup(e,t){const o=n.inject(Ee.CHECKBOX_CONTEXT,null),{buttonClass:i,disabled:a,name:r,shouldRenderButton:l,shouldRenderNative:s,shouldRenderTag:d,tagClass:u,checked:f,onClickCheckBox:c}=Ee.useCheck(e,t,o==null?void 0:o.parentProps,o==null?void 0:o.parentContext);n.ref();const p=n.ref(e.id),b=n.ref(e.customClass),h=n.ref(e.modelValue),x=n.ref(e.indeterminate);return n.computed(()=>{const S={"custom-control":!0,"custom-checkbox":!0};return b.value&&b.value.split(" ").reduce((y,m)=>(y[m]=!0,y),S),S}),n.watch(()=>e.modelValue,S=>{h.value=S}),n.watch(()=>e.indeterminate,S=>{x.value=S}),n.onMounted(()=>{}),()=>{var S,y,m,g,_,C;return n.createVNode(n.Fragment,null,[l.value&&n.createVNode("div",{class:i.value,style:"border-radius:0;border: 1px solid #E8EBF2;",onClick:c},[(y=(S=t.slots).default)==null?void 0:y.call(S)]),d.value&&n.createVNode("div",{class:u.value,onClick:c},[n.createVNode("div",{class:"title"},[(g=(m=t.slots).default)==null?void 0:g.call(m)]),n.createVNode("div",{class:"tip"},null),n.createVNode("span",{class:"f-icon f-icon-check f-radio-icon"},null)]),s.value&&n.createVNode("div",{class:"custom-control custom-checkbox",onClick:c},[n.createVNode("input",{type:"checkbox",class:"custom-control-input",name:r.value,id:p,value:e.value,checked:f.value,indeterminate:x.value,disabled:a.value},null),n.createVNode("div",{class:"custom-control-label"},[(C=(_=t.slots).default)==null?void 0:C.call(_)])])])}}}),Ya={id:{type:String,default:""},componentId:{type:String,default:""},type:{type:String,default:""},canDelete:{type:Boolean,default:!0},canMove:{type:Boolean,default:!0},canSelectParent:{type:Boolean,default:!0},customButtons:{type:Array,default:[]},customClass:{type:String,default:""},customStyle:{type:String,default:""},modelValue:{type:Object},ignore:{type:Boolean,default:!1}},Ja={id:{type:String}},Qa=n.defineComponent({name:"FDesignerPlaceholder",props:Ja,emits:[],setup(e){const t=n.computed(()=>({"drag-and-drop-alert":!0,"no-drag":!0,"w-100":!0})),o=n.computed(()=>({height:"60px",display:"flex","justify-content":"center","align-items":"center",margin:0,padding:".75rem 1.25rem",border:"1px solid transparent","border-radius":"3px",color:"#315585","background-color":"#dfedff","border-color":"#d2e6ff"}));return()=>n.createVNode("div",{class:t.value,style:o.value,role:"alert","data-noattach":"true","data-position":"0"},[n.createTextVNode("拖拽组件到这里")])}});function Za(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!n.isVNode(e)}const It=n.defineComponent({name:"FDesignerItem",props:Ya,emits:["selectionChange"],setup(e,t){const o=n.ref(`${e.modelValue.id}-component`),i=n.ref(e.canMove),a=n.ref(e.canDelete),r=n.ref(!1),l=n.ref(e.modelValue),s=n.ref(e.componentId||""),d=n.ref(""),u=n.ref(""),f=n.ref(e.customClass),c=n.ref(),p=n.inject("canvas-dragula"),b=n.ref(),h=n.inject("design-item-context"),x={designerItemElementRef:c,componentInstance:b,schema:l.value,parent:h,setupContext:t};n.provide("design-item-context",x);const S=n.inject("useFormSchema"),y=n.computed(()=>{const V=e.modelValue.appearance&&e.modelValue.appearance.class||"";let O={"farris-component":!0,"flex-fill":l.value.id==="root-component","position-relative":i.value&&a.value,"farris-nested":r.value,"can-move":i.value,"d-none":c.value&&c.value.classList.contains("d-none"),dgComponentSelected:c.value&&c.value.classList.contains("dgComponentSelected"),dgComponentFocused:c.value&&c.value.classList.contains("dgComponentFocused")};return O[`farris-component-${l.value.type}`]=!0,O=Ee.getCustomClass(O,V),O=Ee.getCustomClass(O,u.value),O=Ee.getCustomClass(O,f.value),O}),m=n.computed(()=>{const V={},O=e.modelValue.appearance&&e.modelValue.appearance.style||"";return O&&O.split(";").reduce(($,B)=>{const[P,E]=B.split(":");return $[P]=E,$},V),d.value&&d.value.split(";").reduce(($,B)=>{const[P,E]=B.split(":");return P&&($[P]=E),$},V),V});function g(V,O){var P,E;if(V&&(V.preventDefault(),V.stopPropagation()),b.value.triggerBelongedComponentToDeleteWhenDeleted){const j=b.value.getBelongedComponentInstance(b);if(j&&j.parent){const G=n.ref(j==null?void 0:j.parent),X=G.value.contents.findIndex(ne=>ne.id===j.schema.id);(E=(P=G.value)==null?void 0:P.contents)==null||E.splice(X,1),pt.value++}return}b.value.onRemoveComponent();let $=h,B=j=>j.id===O.id;if(O.type==="component"&&($=h==null?void 0:h.parent,B=j=>j.component===O.id),$&&$.schema.contents){const j=$.schema.contents.findIndex(B);$.schema.contents.splice(j,1),pt.value++,t.emit("selectionChange")}}function _(V){return a.value&&n.createVNode("div",{role:"button",class:"btn component-settings-button",title:"删除",ref:"removeComponent",onClick:O=>{g(O,V)}},[n.createVNode("i",{class:"f-icon f-icon-yxs_delete"},null)])}function C(){return i.value&&n.createVNode("div",{role:"button",class:"btn component-settings-button",title:"移动",ref:"moveComponent"},[n.createVNode("i",{"data-dragging-icon":"true",class:"cmp_move f-icon f-icon-yxs_move"},null)])}function F(){return e.customButtons&&!!e.customButtons.length&&e.customButtons.map(V=>n.createVNode("div",{role:"button",class:`btn component-settings-button ${V.class||""}`,title:V.title,ref:V.id},[n.createVNode("i",{class:V.icon},null)]))}function N(V){return n.createVNode("div",{class:"component-btn-group","data-noattach":"true"},[n.createVNode("div",null,[_(V),C(),F()])])}function k(V,O,$,B){t.emit("selectionChange",V,O,$,B)}function v(V){let O;const $=V.type,B=Rr[$],P=Gr[$],E=P?P(V):{};E.customClass=e.ignore?E.customClass:"",E.componentId=s.value,E.id=V.id;const j=V.contents&&V.contents.length===0;return V.contents&&!!V.contents.length&&B?n.createVNode(B,n.mergeProps({ref:b},E),Za(O=V.contents.map(X=>n.createVNode(It,{key:X.id,modelValue:X,"onUpdate:modelValue":ne=>X=ne,componentId:s.value,onSelectionChange:k},null)))?O:{default:()=>[O]}):B?j?n.createVNode(B,n.mergeProps({ref:b},E),{default:()=>[n.createVNode(Qa,null,null)]}):n.createVNode(B,n.mergeProps({ref:b},E),null):n.createVNode("div",null,null)}function M(V){if(V.type==="component-ref"){let $=S==null?void 0:S.getFormSchema().module.components.find(B=>B.id===V.component);if($)return n.createVNode(It,{key:$.id,modelValue:$,"onUpdate:modelValue":B=>$=B,componentId:$.id,onSelectionChange:k},null)}}n.watch(()=>e.modelValue,V=>{l.value=V,o.value=`${V.id}-component`});function w(V){const O=V==null?void 0:V.target;Hr(O)}function T(){var V,O;(O=(V=l.value)==null?void 0:V.contents)!=null&&O.length&&c.value&&c.value.addEventListener("scroll",w)}n.onMounted(()=>{if(c.value&&b.value&&b.value.schema){const V=c.value.querySelector(`[data-dragref='${b.value.schema.id}-container']`);p&&V&&p.attachComponents(V,l.value),r.value=b.value.canNested!==void 0?b.value.canNested:r.value,a.value=b.value.canDelete!==void 0?b.value.canDelete:a.value,i.value=b.value.canMove!==void 0?b.value.canMove:i.value,d.value=b.value.styles||"",u.value=b.value.designerClass||"",c.value&&(c.value.componentInstance=b,c.value.designItemContext=x),b.value.belongedComponentId=s.value}T(),pt.value++}),n.onBeforeUnmount(()=>{c.value&&c.value.removeEventListener("scroll",w)});function I(V){Array.from(document.getElementsByClassName("dgComponentFocused")).forEach(B=>B.classList.remove("dgComponentFocused")),V&&(V.preventDefault(),V.stopPropagation());let O=x.designerItemElementRef;const $=c.value;if($){const B=document.getElementsByClassName("dgComponentSelected");B&&B.length===1&&B[0]===c.value||(Array.from(B).forEach(E=>E.classList.remove("dgComponentSelected")),$.classList.add("dgComponentFocused"),t.emit("selectionChange",l.value.type,l.value,s.value,b.value),b.value.getDraggableDesignItemElement&&(O=b.value.getDraggableDesignItemElement(x),O&&O.value&&O.value.classList.add("dgComponentSelected")))}w({target:O==null?void 0:O.value})}return()=>l.value.type==="component-ref"?M(l.value):n.createVNode("div",{id:`${l.value.id}-design-item`,ref:c,class:y.value,style:m.value,onClick:I},[N(l.value),v(l.value)])}});function Ln(e,t,o,i,a,r,l,s,d,u,f,c,p,b,h,x,S,y,m,g="data-grid-column"){const{showSelectAll:_,selectAll:C,unSelectAll:F,selectedValues:N}=b,{showRowNumer:k,showSidebarCheckBox:v,sidebarTitle:M,sidebarCornerCellStyle:w}=h,{columnContext:T,hasLeftFixedColumn:I,hasRightFixedColumn:V}=r,{gridHeaderColumnsStyle:O,leftFixedGridHeaderColumnsStyle:$,rightFixedGridHeaderColumnsStyle:B}=S,P=n.computed(()=>_.value||v.value||k.value),E=T.value.defaultColumnWidth,j=32,G=new Map([[0,0]]);function X(re,he){const ve=G.get(he)||0,be={height:`${re.depth*j}px`,left:`${re.left}px`,top:`${(re.layer-1)*j}px`,width:`${re.actualWidth}px`,padding:0};return T.value.headerDepth>1&&(be["line-height"]=`${re.depth*j}px`),G.set(he+1,ve+(re.actualWidth||E)),be}const ne=n.computed(()=>({"fv-grid-header":!0,"fv-grid-header-group-columns":T.value.headerDepth>1})),me=n.computed(()=>({height:`${T.value.headerDepth*j}px`})),Ne=function(re){return t.showSetting&&!!re.showSetting};function ge(){return n.createVNode("span",{class:"fv-grid-settings-icon d-flex align-items-center"},[n.createVNode("i",{class:"f-icon f-icon-home-setup"},null)])}function Se(re,he,ve,be){var W;(W=e==null?void 0:e.setupContext)==null||W.emit("selectionChange",re,he,ve,be)}function xe(re,he,ve){var W;const be=n.ref(re.column);return n.createVNode("div",{class:"fv-grid-header-cell",style:X(re,ve)},[n.createVNode(It,{modelValue:be.value,"onUpdate:modelValue":R=>be.value=R,customClass:"w-100 d-flex align-items-center justify-content-center",canAdd:!1,canDelete:!1,canMove:!1,key:(W=be.value)==null?void 0:W.id,type:g,componentId:t.componentId,onSelectionChange:Se},null),Ne(re)&&ge(),re.resizable&&n.createVNode("span",{class:"fv-column-resize-bar"},null)])}function pe(re){return re.map((he,ve)=>{const be=[];if(be.push(xe(he,re,ve)),he.children&&he.children.length){const W=pe(he.children);be.push(...W)}return be})}function ye(){return n.createVNode("div",{class:"fv-grid-header-left-fixed"},[n.createVNode("div",{class:"fv-grid-header-columns",style:$.value},[pe(T.value.leftHeaderColumns)])])}function Ce(){return n.createVNode("div",{class:"fv-grid-header-right-fixed"},[n.createVNode("div",{class:"fv-grid-header-columns",style:B.value},[pe(T.value.rightHeaderColumns)])])}const K=n.ref(m.value.length===N.value.length);function Y(re){K.value?C():F()}const ue=n.computed(()=>N.value.length>0&&m.value.length!==N.value.length);function Fe(){return n.createVNode("div",{class:"fv-grid-header-corner d-flex",style:w.value},[_.value&&n.createVNode(Xa,{id:"checkbox_for_select_all",indeterminate:ue.value,modelValue:K.value,"onUpdate:modelValue":re=>K.value=re,onChange:Y,style:"margin-left:8px"},null),k.value&&n.createVNode("div",{style:"line-height:18px"},[M.value])])}function se(){return n.createVNode("div",{class:ne.value,style:me.value},[P.value&&Fe(),I.value&&ye(),n.createVNode("div",{class:"fv-grid-header-primary"},[n.createVNode("div",{class:"fv-grid-header-columns",style:O.value},[pe(T.value.primaryHeaderColumns)])]),V.value&&Ce()])}return{renderGridHeader:se}}class el extends ft{constructor(t,o){super(t,o)}getPropertyConfig(t){return this.getBasicPropConfig(t),this.getAppearanceProperties(t),this.getEventPropConfig(t),this.propertyConfig}getBasicPropConfig(t){var r,l,s;const o=(s=(l=(r=this.formSchemaUtils.getFormSchema())==null?void 0:r.module)==null?void 0:l.entity[0])==null?void 0:s.entities[0],i=this.assembleSchemaEntityToTree(o,0),a=this;this.propertyConfig.categories.basic={description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",editor:{type:"combo-list",textField:"value",valueField:"key",data:[{key:"data-grid",value:te["data-grid"].name}]}},dataSource:{description:"绑定数据源",title:"绑定数据源",editor:{type:"combo-tree",textField:"name",valueField:"label",data:i,editable:!1},readonly:t.columns&&t.columns.length>0}},setPropertyRelates(d,u){switch(d&&d.propertyID){case"dataSource":{const f=a.formSchemaUtils.getViewModelById(a.viewModelId);if(f){const c=i.find(p=>p.label===d.propertyValue);f.bindTo=c.bindTo}a.designViewModelUtils.assembleDesignViewModel();break}}}}}assembleSchemaEntityToTree(t,o,i,a="",r=[]){const l=a?`${a}/${t.label}`:"/";return r.push({id:t.id,name:t.name,label:t.label,layer:o,parent:i&&i.id,bindTo:l.replace("//","/")}),t.type.entities&&t.type.entities.length&&t.type.entities.map(s=>this.assembleSchemaEntityToTree(s,o+1,t,l,r)),r}getAppearanceProperties(t){var o,i,a,r,l,s;this.propertyConfig.categories.appearance={title:"外观",properties:{columns:{title:"列设置",description:"列设置",type:"",$converter:"/converter/items-count.converter",editor:{type:"grid-field-editor",viewModelId:this.viewModelId,gridData:t,getLatestGridData:d=>t},refreshPanelAfterChanged:!0},fit:{title:"适配父组件尺寸",type:"boolean",description:"是否适配父组件尺寸"},showStripe:{title:"显示条纹",type:"boolean",description:"是否显示条纹"},showBorder:{title:"显示边框",type:"boolean",description:"是否显示边框"},showSetting:{title:"显示设置按钮",type:"boolean",description:"是否显示设置按钮"}},setPropertyRelates(d,u){switch(d&&d.propertyID){case"useBlankWhenDataIsEmpty":t.emptyDataHeight=t.useBlankWhenDataIsEmpty?36:240;break;case"columns":t.columns=d.propertyValue||[];break}}},this.propertyConfig.categories.rowNumber={title:"行号配置",$converter:"/converter/row-number.converter",properties:{enable:{title:"启用行号配置",type:"boolean",refreshPanelAfterChanged:!0},width:{visible:((o=t.rowNumber)==null?void 0:o.enable)||!0,title:"显示页码",type:"number"},heading:{visible:((i=t.rowNumber)==null?void 0:i.enable)||!0,title:"标题",type:"string"},showEllipsis:{visible:((a=t.rowNumber)==null?void 0:a.enable)||!0,title:"展示省略号",type:"boolean"}}},this.propertyConfig.categories.pagination={title:"分页",$converter:"/converter/pagination.converter",properties:{enable:{title:"启用分页",type:"boolean",refreshPanelAfterChanged:!0},mode:{visible:((r=t.pagination)==null?void 0:r.enable)||!1,title:"分页交互模式",type:"enum",editor:{type:"combo-list",textField:"value",valueField:"key",data:[{key:"client",value:"客户端"},{key:"server",value:"服务器端"}]}},showIndex:{visible:((l=t.pagination)==null?void 0:l.enable)||!1,title:"显示页码",type:"boolean"},showLimits:{visible:((s=t.pagination)==null?void 0:s.enable)||!1,title:"显示每页记录数",type:"boolean"}}}}getEventPropConfig(t){const o=[{label:"onClickRow",name:"行点击事件"},{label:"onSelectionChange",name:"行切换事件"},{label:"onPageIndexChanged",name:"切换页码事件"},{label:"onPageSizeChanged",name:"分页条数变化事件"}],i=this,a=i.eventsEditorUtils.formProperties(t,i.viewModelId,o),r={};r[i.viewModelId]={type:"events-editor",editor:{initialData:a}},this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:r,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(l,s){const d=l.propertyValue;delete t[i.viewModelId],d&&(d.setPropertyRelates=this.setPropertyRelates,i.eventsEditorUtils.saveRelatedParameters(t,i.viewModelId,d.events,d)),t.remoteSort=!!t.columnSorted}}}}function tl(e,t){const o=e.schema,i=n.ref(!0),a=n.ref(!0);function r(f){return f&&f.sourceType==="control"?f.componentCategory==="input":!1}function l(){return!1}function s(){return!1}function d(){return!0}function u(f){return new el(f,t).getPropertyConfig(o)}return{canAccepts:r,checkCanDeleteComponent:l,checkCanMoveComponent:s,hideNestedPaddingInDesginerView:d,triggerBelongedComponentToMoveWhenMoved:i,triggerBelongedComponentToDeleteWhenDeleted:a,getPropsConfig:u}}const Bt=n.defineComponent({name:"FDataGridDesign",props:Yt,emits:["ClickRow","DoubleClickRow","selectionChange","enterUpInLastCell","pageIndexChanged","pageSizeChanged"],setup(e,t){var Re;const o=n.ref(),i=n.inject("designer-host-service"),a=n.inject("design-item-context"),r=tl(a,i),l=Ft(o,a,r);l.value.styles="display:flex;flex:1;",n.onMounted(()=>{o.value.componentInstance=l}),t.expose(l.value);const s=n.ref(e.columns),d=20,u=$n(e),f=0,c=n.ref(),p=n.ref(),b=n.ref(),h=n.ref(),x=n.ref(e.showStripe),S=n.ref([]),y=n.ref(!1),m=n.ref(((Re=e.rowOption)==null?void 0:Re.wrapContent)||!1),g=Tt(e,u),_=kt(),C=Tn(e),F=Gn(e),N=Nn(e,new Map,C,u,F),k=En(e,N,u,S,t),v=n.computed(()=>e.disable),M=n.computed(()=>N.totalItems.value<d?N.totalItems.value:d),{containerStyleObject:w}=nn(e),T=an(e),{applyCommands:I}=T;I(s);const V=on(e),O=Rn(),{applyColumnSorter:$,columnContext:B,updateColumnRenderContext:P}=V;$(N,O);const E=cn(e,B),j=Pn(e,t,u),G=xt(),X=Bn(e,j,G),ne=On(e,j,C,u,G,X),me=$a(e,u,X,ne),Ne=ja(e,u,X,ne),ge=In(e,s,N,M,f,ne,me,Ne),{getVisualData:Se}=ge,xe=Ha(),pe=St(e,B),ye=Dn(e,k),{sidebarWidth:Ce}=ye;S.value=Se(0,M.value+f-1);const K=Mn(e,N,S,B,ge,M,f,Ce),{onWheel:Y,dataGridWidth:ue,viewPortHeight:Fe,viewPortWidth:se,resetScroll:re}=K,he=sn(e,B,c,se,E),{calculateColumnsSize:ve}=he,be=kn(),W=rn(c,h,N,be,K),R=jn(e,t,k,u),oe=ln(e,t,V,N,E,g,K),D=n.computed(()=>({"fv-grid":!0,"fv-datagrid-strip":x.value})),ae=n.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":y.value,"fv-grid-wrap-content":m.value})),{renderGridHeader:z}=Ln(a,e,c,b,h,V,N,oe,W,_,be,he,E,k,ye,O,K,se,S);Wi(e,t,N,K,F);const{renderDataGridSidebar:A}=en(e,R,k,ye,K),{renderDisableMask:le}=Ei(),{renderDataGridSummery:fe}=qi(e,N,V),{renderHorizontalScrollbar:ke}=Zt(e,c,K),{renderVerticalScrollbar:De}=tn(e,c,K),{renderFilterPanel:Le}=Di(e,V,N,_,K),{renderGroupPanel:We}=Ri(e,N,oe,g,K);function Ze(){var _e,qe;Fe.value=((_e=p.value)==null?void 0:_e.clientHeight)||0,ue.value=((qe=c.value)==null?void 0:qe.clientWidth)||0,ve()}n.onMounted(()=>{c.value&&(dt.useResizeObserver(c.value,Ze),ve(),n.nextTick(()=>{c.value&&(ue.value=c.value.clientWidth),p.value&&(se.value=p.value.clientWidth,Fe.value=p.value.clientHeight)}))}),n.onUnmounted(()=>{}),n.watch(se,()=>{c.value&&ve()});function et(){N.insertNewDataItem(),re()}function tt(){N.insertNewDataItem(S.value.length),re()}function Xe(_e){j.onEditingRow(_e)}function q(_e){N.removeDataItem(_e),re()}function ie(_e){N.removeDataItemById(_e),re()}function ce(_e){j.acceptEditingRow(_e)}function Ie(_e){j.cancelEditingRow(_e)}function Oe(_e){_e&&(s.value=_e,I(s),P(s.value),$(N,O),ve())}function de(_e){_e&&(N.load(_e),S.value=Se(0,M.value+f-1))}const Ve=Ea(e,t,{addNewDataItem:et,addNewDataItemAtLast:tt,removeDataItem:q,removeDataItemById:ie,editDataItem:Xe,acceptDataItem:ce,cancelDataItem:Ie,updateColumns:Oe,updateDataSource:de},V,j,S);n.watch(()=>e.columns,_e=>{Oe(_e)});const{renderDataArea:Te}=An(e,t,p,b,h,xe,pe,V,j,g,Ve,R,ge,K,S);return()=>n.createVNode("div",{ref:o,class:D.value,style:w.value,onWheel:Y},[Le(),We(),z(),n.createVNode("div",{ref:c,class:ae.value,onMouseover:()=>{y.value=!0},onMouseleave:()=>{y.value=!1}},[A(S),Te(),ke(),De()]),fe(),v.value&&le()])}}),nl=new Map([["appearance",Gt.resolveAppearance]]);function ol(e,t,o){return t}const il={$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:""},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}}},separator:{type:"string",default:","},showButtonWhenDisabled:{description:"",type:"boolean",default:!1},wrapText:{type:"boolean",default:!1},onClear:{description:"",type:"string",default:""}},required:["id","type"]},rl={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:"右对齐"}]}}}}}},Wn={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},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"}};Ge(Wn,il,nl,ol,rl);const al={popupContentPosition:{type:Object,default:{left:0,top:0}},host:{type:Object},backgroundColor:{type:String,default:""}},ll=n.defineComponent({name:"FOverlay",props:al,emits:["click"],setup(e,t){const o=n.ref(e.popupContentPosition),i=n.ref(e.host),a=n.computed(()=>({backgroundColor:e.backgroundColor||"",pointerEvents:"auto"}));function r(s){t.emit("click"),s.preventDefault(),s.stopPropagation()}n.computed(()=>{const s=i.value;if(s){const d=s.getBoundingClientRect(),{left:u,top:f,height:c}=d;return{left:u,top:f+c}}return o.value});const l=n.computed(()=>({}));return()=>n.createVNode(n.Teleport,{to:"body"},{default:()=>{var s,d;return[n.createVNode("div",{class:"overlay-container",onClick:u=>r(u),style:a.value},[n.createVNode("div",{style:l.value},[(d=(s=t.slots).default)==null?void 0:d.call(s)])])]}})}});function sl(e){if(e.content&&e.content.render)return e.content.render;if(e.render&&typeof e.render=="function")return e.render}function cl(e){const t=document.createElement("div");t.style.display="contents";let o;const i=e.onClickCallback||(()=>{}),a=()=>{i(),o&&o.unmount()};return o=n.createApp({setup(){n.onUnmounted(()=>{document.body.removeChild(t)});const r=sl(e);return()=>n.createVNode(ll,{"popup-content-position":e.popupPosition,host:e.host,onClick:a,backgroundColor:e.backgroundColor},{default:()=>[r&&r()]})}}),document.body.appendChild(t),o.mount(t),o}class dl{static show(t){return cl(t)}}function qn(e,t){function o(){const i=e.beforeOpen||e.beforeClickButton||null;let a=Promise.resolve(!0);if(i){const r=i(t.value);if(typeof r>"u")return a;typeof r=="boolean"?a=Promise.resolve(r):a=r}return a}return{judgeCanOpen:o}}function ul(e,t,o,i,a){const r=n.ref(e.buttonBehavior),l=n.ref(e.popupOnInput),s=n.computed(()=>({"input-group-append":!0,"append-force-show":e.showButtonWhenDisabled&&(e.readonly||e.disable)})),{judgeCanOpen:d}=qn(e,a),u=n.computed(()=>e.showButtonWhenDisabled||(!e.editable||!e.readonly)&&!e.disable),f=n.inject(pa,null),c=n.ref();async function p(x){if(await d()&&u.value){const S=!!t.slots.default;if(r.value==="Modal"){const y=e.modalOptions,m=f==null?void 0:f.open({...y,render:()=>t.slots.default&&t.slots.default()});c.value=m==null?void 0:m.modalRef}r.value==="Overlay"&&dl.show({host:document.body,backgroundColor:"rgba(0,0,0,.15)",render:()=>t.slots.default&&t.slots.default()}),S&&r.value==="Popup"&&i.togglePopup(!0),S&&l.value&&i.hidePopup(),t.emit("clickButton",{origin:x,value:e.modelValue})}}function b(x){t.emit("mouseEnterIcon",x)}function h(x){t.emit("mouseLeaveIcon",x)}return{buttonGroupClass:s,onClickButton:p,onMouseEnterButton:b,onMouseLeaveButton:h,modalRef:c}}function fl(e,t,o,i,a,r){const l=n.ref(!1),s=n.computed(()=>e.enableClear&&!e.readonly&&!e.disable),{changeTextBoxValue:d}=r;function u(b){l.value=b}n.watch(a,()=>{u(!!a.value)});function f(b){const h=!e.readonly&&!e.disable&&e.editable,x=!e.editable;b.stopPropagation(),(h||x)&&(d("",!1),u(!l.value),t.emit("clear"))}function c(b){if(s.value){if(!o.value){u(!1);return}!e.disable&&!e.readonly&&u(!0)}}function p(b){s.value&&u(!1)}return{enableClearButton:s,showClearButton:l,onClearValue:f,onMouseEnterTextBox:c,onMouseLeaveTextBox:p}}function pl(e,t,o,i,a){const r=n.computed(()=>e.popupOnInput),l=n.computed(()=>e.popupOnFocus),{shouldPopupContent:s}=a,d=n.computed(()=>e.enableTitle?o.value:""),u=n.computed(()=>(e.disable||e.readonly)&&!e.forcePlaceholder?"":e.placeholder),f=n.computed(()=>e.readonly||!e.editable),c=n.ref(!1),p=n.computed(()=>!e.disable&&c.value),b=n.computed(()=>({"text-left":e.textAlign==="left","text-center":e.textAlign==="center","text-right":e.textAlign==="right","form-control":!0,"f-utils-fill":!0})),h=n.computed(()=>({"input-group":!0,"f-state-disable":e.disable,"f-state-editable":e.editable&&!e.disable&&!e.readonly,"f-state-readonly":e.readonly&&!e.disable,"f-state-focus":p.value}));function x(v,M=!0){o.value!==v&&(o.value=v,M&&(t.emit("change",v),t.emit("update:modelValue",v)))}function S(v){s.value=!1,x(v,!0)}n.watch(()=>e.modelValue,v=>{o.value=v});function y(v){c.value=!1,t.emit("blur",v),v.stopPropagation()}function m(v){t.emit("click",v)}function g(v){e.disable||(c.value=!0,f.value||(t.emit("focus",v),l.value&&!s.value&&a.popup()))}function _(v){t.emit("input",v.target.value);const M=v.target.value;i.value=M,o.value!==M&&x(M,e.updateOn==="change"),r.value&&!s.value&&a.popup()}function C(v){v.target.tagName!=="INPUT"&&v.preventDefault(),v.stopPropagation()}function F(v){t.emit("keydown",v)}function N(v){v.key==="Enter"&&(r.value||l.value)&&a.hidePopup(),t.emit("keyup",v)}function k(v){const M=v.target.value;v.stopPropagation(),x(M)}return{hasFocusedTextBox:p,isTextBoxReadonly:f,textBoxClass:b,textBoxPlaceholder:u,textBoxTitle:d,inputGroupClass:h,changeTextBoxValue:x,commitValue:S,onBlurTextBox:y,onClickTextBox:m,onFocusTextBox:g,onInput:_,onKeyDownTextBox:F,onKeyUpTextBox:N,onMouseDownTextBox:C,onTextBoxValueChange:k}}function ml(e,t,o,i){const a=n.ref(),r=n.ref(!1),{judgeCanOpen:l}=qn(e,i);function s(){const c=a.value;c&&c.show(o.value)}async function d(c=!1){if(!!t.slots.default){if(!c&&!r.value&&!await l())return;r.value=!r.value,await n.nextTick(),s()}}async function u(c=!1){if(!!t.slots.default){if(!c&&!await l())return;r.value=!0,await n.nextTick(),s()}}function f(){r.value=!1}return{hidePopup:f,popup:u,shouldPopupContent:r,togglePopup:d,popoverRef:a}}function hl(e,t,o){const i=n.ref(),{isTextBoxReadonly:a,textBoxClass:r,textBoxPlaceholder:l,textBoxTitle:s,onBlurTextBox:d,onClickTextBox:u,onFocusTextBox:f,onInput:c,onKeyDownTextBox:p,onKeyUpTextBox:b,onMouseDownTextBox:h,onTextBoxValueChange:x}=o;return n.onMounted(()=>{var S,y;e.selectOnCreated&&((S=i.value)==null||S.select()),e.focusOnCreated&&((y=i.value)==null||y.focus())}),()=>n.createVNode("input",{ref:i,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:a.value,tabindex:e.tabIndex,title:s.value,type:e.inputType,value:t.value,onBlur:d,onChange:x,onClick:u,onFocus:f,onInput:c,onKeydown:p,onKeyup:b,onMousedown:h},null)}function gl(e,t,o){const i=n.ref(e.separator),{changeTextBoxValue:a}=o,r=n.computed(()=>t.value?t.value.split(i.value).map(s=>({name:s,selectable:!0})):[]);function l(s){a(s.map(d=>d.name).join(i.value),!0)}return()=>n.createVNode(Rt,{id:`${e.id}-tag-editor`,class:"form-control",data:r.value,showClose:!0,showInput:!0,onChange:l},null)}function yl(e,t,o,i){const{buttonGroupClass:a,onClickButton:r,onMouseEnterButton:l,onMouseLeaveButton:s}=o,{enableClearButton:d,showClearButton:u,onClearValue:f}=i,c=n.ref();return{renderButtonGroup:()=>n.createVNode("div",{id:`${e.id}-button-group`,class:a.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,u.value]]),t.slots.buttonContent?n.createVNode("span",{class:"input-group-text input-group-append-button",onClick:r,onMouseenter:l,onMouseleave:s},[t.slots.buttonContent()]):e.buttonContent?n.createVNode("span",{class:"input-group-text input-group-append-button",innerHTML:e.buttonContent,ref:c,onClick:r,onMouseenter:l,onMouseleave:s},null):null]),buttonHandleElement:c}}function vl(e,t,o){const i=n.ref(e.popupMinWidth),{hidePopup:a,popoverRef:r}=o;return()=>n.createVNode(si,{id:`${e.id}-popover`,ref:r,visible:!0,placement:"bottom-left",host:e.popupHost,"keep-width-with-reference":!0,fitContent:!0,"right-boundary":e.popupRightBoundary,minWidth:i.value,offsetX:e.popupOffsetX,onHidden:a},{default:()=>{var l,s;return[(s=(l=t.slots).default)==null?void 0:s.call(l)]}})}const bl=n.defineComponent({name:"FButtonEdit",props:Wn,emits:["updateExtendInfo","clear","change","click","clickButton","blur","focus","mouseEnterIcon","mouseLeaveIcon","keyup","keydown","inputClick","input","update:modelValue"],setup(e,t){const o=n.ref(),i=n.ref(e.customClass),a=n.ref(e.modelValue),r=ml(e,t,o,a),{shouldPopupContent:l,hidePopup:s,togglePopup:d}=r,u=ul(e,t,o,r,a),f=n.ref(""),c=pl(e,t,a,f,r),{hasFocusedTextBox:p,commitValue:b,inputGroupClass:h}=c,x=fl(e,t,a,p,f,c),{onMouseEnterTextBox:S,onMouseLeaveTextBox:y}=x,m=n.computed(()=>{const v={"f-button-edit":!0,"f-cmp-inputgroup":!0,"f-button-edit-nowrap":!e.wrapText};return i.value&&i.value.split(" ").reduce((M,w)=>(M[w]=!0,M),v),v});function g(){return e.multiSelect&&e.inputType==="tag"?gl(e,a,c):hl(e,a,c)}let _=g();n.watch([()=>e.multiSelect,()=>e.inputType],()=>{_=g()});const{renderButtonGroup:C,buttonHandleElement:F}=yl(e,t,u,x),N=vl(e,t,r),k={commitValue:b,elementRef:o,hidePopup:s,shouldPopupContent:l,togglePopup:d,openDialog:()=>{F.value&&e.buttonBehavior==="Modal"&&F.value.click()},getModal:()=>{var v;return e.buttonBehavior==="Modal"?(v=u.modalRef.value)==null?void 0:v.value:null}};return n.onMounted(()=>{o.value.componentInstance=k,window.onresize=()=>{document.body.click()}}),t.expose(k),()=>n.createVNode(n.Fragment,null,[n.createVNode("div",n.mergeProps(t.attrs,{ref:o,class:m.value,id:e.id}),[n.createVNode("div",{id:`${e.id}-input-group`,class:h.value,onMouseenter:S,onMouseleave:y},[_(),C()])]),l.value&&N()])}}),Cl={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/grid-field-editor.schema.json",title:"grid-field-editor",description:"A Farris Data Grid 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:"grid-field-editor"},viewModelId:{description:"",type:"string",default:""},gridData:{description:"",type:"Object",default:null}},required:["id","type"]},zn={modelValue:{type:String,default:""},viewModelId:{Type:String,default:""},gridData:{Type:Object,default:null},gridType:{Type:String,default:"data-grid-column"},getLatestGridData:{Type:Function}},wl=Ge(zn,Cl,Wt,Kt),Sl=new Map([["appearance",Ye]]);function xl(e,t,o){return t}const _l={title:"transfer",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:[]}}}}}},Fl={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/transfer.schema.json",title:"transfer",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for transfer",type:"string"},type:{description:"The type string of transfer",type:"string",default:"transfer"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disable:{type:"string",default:!1},editable:{description:"",type:"boolean",default:!0},placeholder:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},require:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},visible:{description:"",type:"boolean",default:!0}},required:["id","type"]},Un={dataSource:{type:Array,default:[]},displayType:{type:String,default:"List"},enableSearch:{type:Boolean,default:!0},identifyField:{type:String,default:"id"},textField:{type:String,default:"name"},placeholder:{type:String,default:""},selections:{type:Array,default:[]},selectionValues:{type:Array,default:[]}};Ge(Un,Fl,Sl,xl,_l);const Vl=new Map([["appearance",Ye]]);function Nl(e,t,o){return t}const kl={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/list-view.schema.json",title:"list-view",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for list-view",type:"string"},type:{description:"The type string of list-view",type:"string",default:"list-view"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disable:{type:"string",default:!1},editable:{description:"",type:"boolean",default:!0},placeholder:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},require:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},visible:{description:"",type:"boolean",default:!0}},required:["id","type"]},Tl={title:"list-view",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:[]}}}}}},Kn={columns:{type:Array,default:[{field:"name",title:"",dataType:"string"}]},data:{type:Array,default:[]},draggable:{type:Boolean,default:!1},multiSelect:{Type:Boolean,default:!1},multiSelectMode:{Type:String,default:"OnCheck"},idField:{Type:String,default:"id"},valueField:{Type:String,default:"id"},textField:{Type:String,default:"name"},titleField:{Type:String,default:"name"},view:{Type:String,default:"ContentView"},size:{Type:String,default:"default"},placeholder:{type:String,default:""},header:{Type:String,default:"ContentHeader"},headerClass:{Type:String,default:""},itemClass:{Type:String,default:""},selectionValues:{type:Array,default:[]},group:{type:Object},selection:{type:Object,default:{enableSelectRow:!0,multiSelect:!1,multiSelectMode:"DependOnCheck",showCheckbox:!1,showSelectAll:!1,showSelection:!0}},keepOrder:{type:Boolean,default:!1},disableField:{type:String,default:"disabled"},enableHighlightSearch:{type:Boolean,default:!0}};Ge(Kn,kl,Vl,Nl,Tl);function Ml(e,t){function o(r){const l=[];let s=r.nextNode();for(;s;)l.push(s),s=r.nextNode();return l}function i(r,l){const s=document.createTreeWalker(r,NodeFilter.SHOW_TEXT);return o(s).map(c=>({textNode:c,text:(c.textContent||"").toLocaleLowerCase()})).map(({textNode:c,text:p})=>{const b=[];let h=0;for(;h<p.length;){const x=p.indexOf(l,h);if(x===-1)break;b.push(x),h=x+l.length}return b.map(x=>{const S=new Range;return S.setStart(c,x),S.setEnd(c,x+l.length),S})}).flat()}function a(r){if(!CSS.highlights||(CSS.highlights.clear(),!r||!t))return;const l=i(t.value,r.toLocaleLowerCase()),s=new Highlight(...l);CSS.highlights.set("search-result",s)}return{search:a}}function Xn(e,t,o,i,a,r,l,s,d,u){const f=n.ref(e.size),c=n.ref(e.textField),p=n.ref(e.titleField),b=n.ref(e.disableField),h=n.computed(()=>{var k,v;return((k=e.selection)==null?void 0:k.multiSelect)&&((v=e.selection)==null?void 0:v.showCheckbox)}),{onMouseenterItem:x,onMouseoverItem:S,onMouseoutItem:y}=r,{getKey:m,listViewItemClass:g,onCheckItem:_,onClickItem:C}=l,F=n.computed(()=>({margin:f.value==="small"?"0.25rem 0":"10px 0"}));function N(k,v,M){return k.checked=s.findIndexInSelectedItems(k)>-1,n.createVNode("li",{class:g(k,v),id:m(k,v),key:m(k,v),onClick:w=>C(w,k,v),onMouseenter:w=>x(w,k,v),onMouseover:w=>S(w,k,v),onMouseout:w=>y(w,k,v)},[h.value&&n.createVNode("div",{class:"f-list-select",onClick:w=>w.stopPropagation()},[n.createVNode(at.FCheckBox,{id:"list-"+m(k,v),customClass:"listview-checkbox",disabled:k[b.value],checked:k.checked,"onUpdate:checked":w=>k.checked=w,onChange:w=>{_(k,v,!w.checked)}},null)]),n.createVNode("div",{class:"f-list-content"},[n.createVNode("div",{style:F.value,title:k.raw[p.value]||k.raw[c.value]},[k.raw[c.value]])])])}return{renderItem:N}}function Il(e,t,o,i,a,r,l,s,d,u){const f=n.ref(e.multiSelect),c=n.ref(e.disableField),{onMouseenterItem:p,onMouseoverItem:b,onMouseoutItem:h}=r,{getKey:x,listViewItemClass:S,onCheckItem:y,onClickItem:m}=l;function g(C,F,N){return t.slots.content?n.createVNode(n.Fragment,null,[t.slots.content&&t.slots.content({item:C.raw,index:F,selectedItem:N})]):n.createVNode("div",{style:"margin: 10px 0;"},[C.raw.name])}function _(C,F,N){return n.createVNode("li",{class:S(C,F),id:x(C,F),key:x(C,F),onClick:k=>m(k,C,F),onMouseenter:k=>p(k,C,F),onMouseover:k=>b(k,C,F),onMouseout:k=>h(k,C,F)},[f.value&&n.createVNode("div",{class:"f-list-select",onClick:k=>k.stopPropagation()},[n.createVNode(at.FCheckBox,{id:"list-"+x(C,F),customClass:"listview-checkbox",disabled:C[c.value]||!C.checked,checked:C.checked,"onUpdate:checked":k=>C.checked=k,onChange:k=>y(C,F,!k.checked)},null)]),n.createVNode("div",{class:"f-list-content"},[g(C,F,N)])])}return{renderItem:_}}function Bl(e,t,o,i,a,r,l,s,d,u){const f=n.ref(e.multiSelect),c=n.ref(e.disableField),{onMouseenterItem:p,onMouseoverItem:b,onMouseoutItem:h}=r,{getKey:x,listViewItemClass:S,onCheckItem:y,onClickItem:m}=l,{dragstart:g,dragenter:_,dragover:C,dragend:F}=i,{removeItem:N}=d,k=n.computed(()=>({margin:f.value?"10px 0":"10px 0px 10px 14px"}));function v(I){return n.createVNode("div",{style:k.value},[I.raw.name])}function M(){return t.slots.itemContent?t.slots.itemContent:v}const w=M();function T(I,V,O){return n.createVNode("li",{class:S(I,V),id:x(I,V),key:x(I,V),onClick:$=>m($,I,V),onMouseenter:$=>p($,I,V),onMouseover:$=>b($,I,V),onMouseout:$=>h($,I,V),draggable:"true",onDragstart:$=>g($,I,V),onDragenter:$=>_($,V),onDragend:$=>F($,I),onDragover:$=>C($,V)},[f.value&&n.createVNode("div",{class:"f-list-select",onClick:$=>$.stopPropagation()},[n.createVNode(at.FCheckBox,{id:"list-"+x(I,V),customClass:"listview-checkbox",disabled:I[c.value]||!I.checked,checked:I.checked,"onUpdate:checked":$=>I.checked=$,onChange:$=>y(I,V,!$.checked)},null)]),n.createVNode("div",{class:"f-list-content"},[w(I)]),n.createVNode("div",{class:"f-list-remove",onClick:$=>N(V)},[n.createVNode("div",{class:"f-list-remove-icon"},[n.createVNode("i",{class:"f-icon f-icon-remove_face"},null)])]),n.createVNode("div",{class:"f-list-handle"},[n.createVNode("div",null,[n.createVNode("i",{class:"f-icon f-icon-drag-vertical"},null)])])])}return{renderItem:T}}function Ol(e,t,o,i,a,r,l,s,d,u){var x;const f=n.ref(((x=e.group)==null?void 0:x.groupFields)||[]),{collpaseGroupIconClass:c}=a,{toggleGroupRow:p}=u;function b(S,y){y.collapse=!y.collapse,o.value=p(y.collapse?"collapse":"expand",y,o.value)}function h(S,y,m){return S.layer>-1&&n.createVNode("div",{class:"f-navlookup-recentHeader",onClick:g=>b(g,S)},[n.createVNode("div",{class:"fv-grid-group-row-icon"},[n.createVNode("span",{class:c(S)},null)]),n.createVNode("div",{class:"f-navlookup-recommandLabel"},[S.raw[f.value[S.layer]]])])}return{renderItem:h}}function Pl(){const e=n.ref(-1),t=n.ref(""),o=n.ref(-1),i=n.ref(!1);function a(u,f,c){o.value=c}function r(u,f,c){i.value||(o.value=c)}function l(u,f,c){o.value=-1}function s(){i.value=!0}function d(){i.value=!1}return{activeIndex:e,focusedItemId:t,hoverIndex:o,onMouseenterItem:a,onMouseoverItem:r,onMouseoutItem:l,resumeHover:d,suspendHover:s}}function $l(e,t,o,i){const a=n.ref(e.idField),{dataView:r}=o,l=n.ref(-1),s=n.ref(!1),{activeIndex:d,focusedItemId:u,hoverIndex:f,resumeHover:c,suspendHover:p}=i;function b(y,m,g){y.stopPropagation(),p(),m&&setTimeout(()=>{l.value=g,s.value=!0,m.moving=!0})}function h(y,m){if(y.preventDefault(),l.value!==m){const g=r.value[l.value],_=r.value;_.splice(l.value,1),_.splice(m,0,g),l.value=m}}function x(y,m){y.preventDefault(),y.dataTransfer&&(y.dataTransfer.dropEffect="move")}function S(y,m){m&&(m.moving=!1),r.value.forEach((g,_)=>{g.__fv_index__=_}),s.value=!1,c(),f.value=m.raw.__fv_index__,d.value=m.raw.__fv_index__,u.value=m.raw[a.value],t.emit("change",r.value),t.emit("activeChange",m)}return{dragstart:b,dragenter:h,dragover:x,dragend:S,isDragging:s}}function jl(e,t,o){const{dataView:i}=o;function a(r){if(r>-1&&r<i.value.length){const l=i.value.splice(r,1);t.emit("removeItem",l[0])}}return{removeItem:a}}function El(e,t,o,i,a,r){const l=n.ref(e.idField),s=n.ref(e.disableField),d=n.ref(e.draggable),u=n.ref(e.itemClass),f=n.ref(e.selection.multiSelect??!1),c=n.ref(e.selection.multiSelectMode),{isDragging:p}=i,{activeIndex:b,focusedItemId:h,hoverIndex:x}=a,{clearSelection:S,getSelectedItems:y,toggleSelectItem:m}=r,g=n.ref(y());function _(w,T){const I={"f-listview-item":!0,"f-list-view-group-item":!0,"f-list-view-draggable-item":d.value,"f-un-click":!w.checked,"f-un-select":!!w.raw[s.value],"f-listview-active":g.value.findIndex(O=>O[l.value]===w.raw[l.value])>-1,"f-listview-item-active":g.value.findIndex(O=>O[l.value]===w.raw[l.value])>-1,"f-listview-hover":!p.value&&T===x.value,"f-listview-item-hover":!p.value&&T===x.value,moving:!!w.moving};return u.value.split(" ").reduce((O,$)=>(O[$]=!0,O),I),I}function C(w,T){return w.raw[l.value]||""}const F=n.computed(()=>!f.value);function N(w,T,I){w.checked=I,!w.raw[s.value]&&(F.value&&(h.value=w.raw[l.value]),m(w))}const k=n.computed(()=>f.value&&c.value==="OnCheckClearByClick"),v=n.computed(()=>!f.value||f.value&&(c.value==="OnCheckAndClick"||c.value==="OnClick"));function M(w,T,I){if(T.raw[s.value]){w.preventDefault(),w.stopPropagation();return}h.value=T.raw[l.value],b.value=I,k.value&&S(),v.value&&(m(T),g.value=y()),t.emit("clickItem",{data:g.value,index:I}),t.emit("activeChange",g.value)}return{getKey:C,listViewItemClass:_,onCheckItem:N,onClickItem:M}}function Dl(e,t,o,i,a,r,l){const s=n.ref(e.view),d=n.ref(e.view==="CardView"),u=n.ref({}),f=n.ref("暂无数据"),c=Pl(),p=$l(e,t,i,c),b=jl(e,t,i),h=El(e,t,o,p,c,r),x=n.computed(()=>({"f-list-view-group":!0,"d-flex":d.value,"flex-wrap":d.value})),S=n.computed(()=>!!o.value&&o.value.length>0),y=n.computed(()=>o.value.length===0);n.computed(()=>y.value&&!t.slots.empty);function m(){return s.value==="SingleView"?Xn:s.value==="DraggableView"?Bl:(s.value==="ContentView"||s.value==="CardView")&&t.slots.content?Il:Xn}const g=m(),{renderItem:_}=g(e,t,o,p,a,c,h,r,b,l),{renderItem:C}=Ol(e,t,o,p,a,c,h,r,b,l),F=[_,C];function N(){return o.value.filter(M=>M.visible!==!1).map((M,w)=>F[M.type](M,w,u))}function k(){return n.createVNode("div",{class:"f-list-view-emptydata"},[n.createVNode("p",{class:"f-empty-title"},[t.slots.empty?t.slots.empty():f.value])])}function v(){return n.createVNode("ul",{class:x.value,style:"list-style: none;"},[S.value&&N(),y.value&&k()])}return{renderListArea:v}}function Rl(e,t,o){function i(){return t.slots.header&&n.createVNode("div",{class:"f-list-view-header"},[t.slots.header()])}return{renderHeader:i}}function Yn(e,t,o){const i=n.ref(e.headerClass),a=n.ref(e.placeholder),r=n.ref(""),l=n.computed(()=>!r.value),s=n.computed(()=>!!r.value);function d(p){r.value=""}n.watch(r,p=>{e.enableHighlightSearch&&o.search(p),t.emit("afterSearch",p)});const u=n.computed(()=>{const p={"form-group":!0,"farris-form-group":!0};return i.value&&i.value.split(" ").reduce((h,x)=>(h[x]=!0,h),p),p});function f(p){}function c(){return n.createVNode("div",{class:"f-list-view-header",onClick:n.withModifiers(()=>f,["prevent","stop"])},[n.createVNode("div",{class:u.value},[n.createVNode("div",{class:"farris-input-wrap"},[n.createVNode("div",{class:"f-cmp-inputgroup"},[n.createVNode("div",{class:"input-group f-state-editable"},[n.withDirectives(n.createVNode("input",{class:"form-control f-utils-fill text-left","onUpdate:modelValue":p=>r.value=p,name:"input-group-value",type:"text",placeholder:a.value,autocomplete:"off"},null),[[n.vModelText,r.value]]),n.createVNode("div",{class:"input-group-append"},[s.value&&n.createVNode("span",{class:"input-group-text input-group-clear",onClick:p=>d()},[n.createVNode("i",{class:"f-icon f-icon-close-circle"},null)]),l.value&&n.createVNode("span",{class:"input-group-text"},[n.createVNode("span",{class:"f-icon f-icon-search"},null)])])])])])])])}return{renderHeader:c}}const Jn=n.defineComponent({name:"FListView",props:Kn,emits:["afterSearch","checkValuesChange","clickItem","selectionChange","removeItem","change","activeChange"],setup(e,t){const o=n.ref(),i=n.ref(!0),a=n.ref(!1),r=n.ref([]),l=0,s=n.ref(e.columns),d=U.useIdentify(e),u=U.useHierarchy(e),f=U.useGroupData(e,d),c=U.usePagination(e),p=U.useDataView(e,new Map,u,d,c),b=U.useSelection(e,p,d,r,t),h=Ml(e,o),x=n.computed(()=>p.dataView.value.length),S=U.useEdit(e,t,d),y=U.useVisualDataBound(),m=U.useVisualDataCell(e,{},y),g=U.useVisualDataRow(e,S,u,d,y,m),_=U.useVisualGroupRow(e,d,m,g),C=U.useVisualSummaryRow(e,d,m,g),F=U.useVisualData(e,s,p,x,l,g,_,C),{getVisualData:N}=F;r.value=N(0,x.value+l-1);const k=n.computed(()=>{const B={"f-list-view":!0,"f-list-view-multiple":e.multiSelect};return e.size!=="default"&&(B[`${e.size}-item`]=!0),B}),v=n.computed(()=>!!t.slots.footer||i.value);function M(){return e.header==="SearchBar"?Yn:e.header==="ContentHeader"?Rl:Yn}const w=M(),{renderHeader:T}=w(e,t,h),{renderListArea:I}=Dl(e,t,r,p,f,b,F);function V(B){h.search(B)}function O(B){B&&(p.load(B),r.value=N(0,x.value+l-1))}t.expose({search:V,updateDataSource:O});function $(B){e.multiSelect&&(B.preventDefault(),B.stopPropagation())}return()=>n.createVNode("div",{class:k.value,onClick:$},[T(),n.createVNode("div",{ref:o,class:"f-list-view-content",onMouseover:()=>{a.value=!0},onMouseleave:()=>{a.value=!1}},[I()]),v.value&&n.createVNode("div",{class:"f-list-view-footer"},[t.slots.footer&&t.slots.footer()])])}}),Gl=n.defineComponent({name:"FTransfer",props:Un,emits:["change","activeChange"],setup(e,t){const o=n.ref(e.identifyField),i=n.ref("已选:"),a=n.ref("项数据"),r=n.ref(e.displayType),l=n.ref(!1),s=n.ref(e.dataSource),d=n.ref(e.selections||[]),u=n.computed(()=>d.value.map(v=>v[o.value])),f=new Map,c=n.ref();function p(){const v=new Map,M=e.selectionValues||[];M.length&&M.reduce((T,I)=>(T.set(I,!0),T),v);const w=e.selections||[];w.length&&(v.clear(),w.reduce((T,I)=>(T.set(I[o.value],!0),T),v)),d.value.length||(d.value=s.value.filter(T=>v.has(T[o.value])).map(T=>Object.assign({},T))),s.value.forEach(T=>{const I=T[o.value],V=v.has(I);T.checked=V,V&&f.set(I,T)})}p();const b=n.computed(()=>r.value==="List"),h=n.computed(()=>r.value==="Tree");function x(v){d.value=v.map(M=>Object.assign({},M)),t.emit("change",d.value)}function S(){return n.createVNode(Jn,{class:"f-utils-fill",data:s.value,multiSelect:!0,selection:{enableSelectRow:!0,multiSelect:!0,multiSelectMode:"OnCheckAndClick",showCheckbox:!0,showSelectAll:!1,showSelection:!0},draggable:!1,header:"Search",headerClass:"transfer-search-box","selection-values":u.value,onSelectionChange:x},{default:()=>[n.createTextVNode(" ")]})}function y(){return n.createVNode(n.Fragment,null,null)}function m(){return n.createVNode("div",{class:"f-utils-fill option-pane d-flex flex-column"},[n.createVNode("div",{class:"f-utils-flex-column option-pane-content f-utils-fill"},[n.createVNode("div",{class:"container columns-box d-flex f-utils-fill"},[b.value&&S(),h.value&&y()])])])}function g(v){const M=v[o.value];if(M!==null||M!==void 0){d.value=d.value.filter(T=>T[o.value]!==M);const w=f.get(M);w&&(w.checked=!1,f.delete(M)),t.emit("change",d.value)}}n.watch(d,v=>{c.value.updateDataSource(v)});function _(v){const M=new Map;d.value.reduce((w,T)=>(w.set(T[o.value],T),w),M),d.value=v.map(w=>M.get(w[o.value])),t.emit("change",d.value)}function C(v){t.emit("activeChange",v)}function F(){return n.createVNode(Jn,{ref:c,style:"flex:1",data:d.value,draggable:!0,view:"DraggableView","keep-order":!0,onChange:_,onRemoveItem:g,onActiveChange:C},null)}function N(){return n.createVNode("div",{class:"f-utils-fill selection-pane d-flex flex-column"},[n.createVNode("div",{class:"f-utils-flex-column selection-pane-content f-utils-fill"},[n.createVNode("div",{class:"selection-pane-title"},[n.createVNode("span",{class:"selection-title"},[i.value]),n.createVNode("span",{class:"selection-count"},[d.value&&d.value.length]),n.createVNode("span",{class:"selection-item-title"},[a.value])]),n.createVNode("div",{class:"container columns-box f-utils-fill d-flex"},[F()])])])}const k=n.computed(()=>({transfer:!0,row:!0,"f-utils-fill":l.value}));return()=>n.createVNode("div",{class:k.value,style:"height:480px"},[m(),N()])}}),Al=n.defineComponent({name:"FGridFieldEditor",props:zn,emits:["change"],setup(e,t){const o=n.ref(e.viewModelId),i=n.inject("designViewModelUtils"),a=n.inject("useFormSchema"),r=n.inject("controlCreatorUtils"),l=n.ref(e.modelValue);let s=e.gridData.columns;const d=n.ref([]),u=n.ref([]);let f=[];function c(){if(d.value=[],!s||s.length===0)return[];s.forEach(m=>{if(m.binding&&m.binding.field){const g=f.find(_=>_.data.id===m.binding.field);g?d.value.push(Object.assign({},g.data)):d.value.push({id:m.binding.field,name:m.caption,bindingField:null,isInValidBinding:!0,inValidTip:"绑定字段不存在,请手动移除列"})}})}function p(m,g=[]){return m&&m.forEach(_=>{g.push(_),_.children&&p(_.children,g)}),g}function b(){u.value=i.getAllFields2TreeByVMId(o.value),f=p(u.value)}function h(){const m=i.getDgViewModel(o.value),g=[],_=[];d.value.forEach(F=>{delete F.inValidTip,delete F.isInValidBinding;const N=s==null?void 0:s.find(k=>{if(k.binding&&k.binding.field)return k.binding.field===F.id});if(N)g.push(N);else{const k=u.value.find(M=>M.id===F.id),v=r.setGridFieldProperty(e.gridType,k.data,null,!0);m.addField(F),g.push(v)}_.push(F.id)});const C=m.fields.filter(F=>!_.includes(F.id));if(C&&C.length>0){const F=C.map(N=>N.id);if(m.removeField(F),a.getExpressions()&&a.getExpressions().length&&F.length){const N=a.getExpressions().filter(k=>!F.includes(k.fieldId));a.setExpressions(N)}}l.value=`共 ${g.length} 项`,t.emit("change",g)}const x={fitContent:!1,width:900,height:600,title:"列编辑器",acceptCallback:()=>{h()},rejectCallback:()=>{}};function S(m){d.value=m?[...m]:[]}function y(){return e.getLatestGridData&&(e.gridData=e.getLatestGridData(),b()),s=e.gridData.columns,c(),Promise.resolve(!0)}return n.onMounted(()=>{b()}),()=>n.createVNode(bl,{"button-behavior":"Modal","modal-options":x,modelValue:l.value,"onUpdate:modelValue":m=>l.value=m,editable:!1,beforeOpen:y},{default:()=>[n.createVNode("div",{class:"f-utils-absolute-all"},[n.createVNode(Gl,{selections:d.value,"data-source":u.value,class:"mx-2",onChange:m=>S(m)},null)])]})}}),Hl={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/data-grid-column.schema.json",title:"data-grid-column",description:"A Farris data-grid-column Component",type:"object",properties:{id:{description:"The unique identifier for a data-grid-column",type:"string",default:"col"},type:{description:"The type string of data-grid-column component",type:"string",default:"data-grid-column"},allowGrouping:{description:"",type:"boolean",default:!0},colspan:{description:"",type:"number"},dataType:{type:"string"},editor:{description:"",type:"obejct",default:{}},field:{description:"",type:"string"},filterable:{description:"",type:"boolean",default:!0},fixed:{description:"",type:"string",enum:["left","right"]},halign:{description:"",type:"enum",default:"left",enum:["left","center","right"]},title:{description:"",type:"string"},readonly:{description:"",type:"boolean",default:!0},resizable:{description:"",type:"boolean",default:!0},rowspan:{description:"",type:"number"},showTips:{description:"",type:"boolean",default:!0},sort:{description:"",type:"string",default:"none",enum:["asc","desc","none"]},sortable:{description:"",type:"boolean",default:!0},sortOrder:{description:"",type:"number"},tipMode:{description:"",type:"string",enum:["allways","auto"]},valign:{description:"",type:"enum",default:"middle",enum:["top","middle","bottom"]},visible:{description:"",type:"boolean",default:!0},width:{description:"",type:"number",default:120}}},Ll={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/data-grid-column.schema.json",title:"tree-grid-column",description:"A Farris data-grid-column Component",type:"object",properties:{id:{description:"The unique identifier for a data-grid-column",type:"string"},type:{description:"The type string of data-grid-column component",type:"string",default:"tree-grid-column"},allowGrouping:{description:"",type:"boolean",default:!0},colspan:{description:"",type:"number"},dataType:{type:"string"},editor:{description:"",type:"obejct"},field:{description:"",type:"string"},filterable:{description:"",type:"boolean",default:!0},fixed:{description:"",type:"string",enum:["left","right"]},halign:{description:"",type:"enum",default:"left",enum:["left","center","right"]},title:{description:"",type:"string"},readonly:{description:"",type:"boolean",default:!0},resizable:{description:"",type:"boolean",default:!0},rowspan:{description:"",type:"number"},showTips:{description:"",type:"boolean",default:!0},sort:{description:"",type:"string",enum:["asc","desc","none"]},sortable:{description:"",type:"boolean",default:!0},sortOrder:{description:"",type:"number"},tipMode:{description:"",type:"string",enum:["allways","auto"]},valign:{description:"",type:"enum",default:"middle",enum:["top","middle","bottom"]},visible:{description:"",type:"boolean",default:!0},width:{description:"",type:"number"}}},Ot={id:{type:String,default:""},type:{type:String,default:""},allowGrouping:{type:Boolean,default:!0},colspan:{type:Number,default:1},dataType:{type:String,default:""},parentId:{type:String,default:""},editor:{type:Object},field:{type:String,default:""},filterable:{type:Boolean,default:!0},fixed:{type:String,default:""},halign:{type:String,default:"left"},title:{type:String,default:""},readonly:{type:Boolean,default:!0},resizable:{type:Boolean,default:!0},rowspan:{type:Boolean,default:!0},showTips:{type:Boolean,default:!0},sort:{type:String,default:"none"},sortable:{type:Boolean,default:!0},sortOrder:{type:Number},tipMode:{type:String,default:"auto"},valign:{type:String,default:"middle"},visible:{type:Boolean,default:!0},width:{type:Number},actualWidth:{type:Number},align:{type:String,default:""},left:{type:Number},sorter:{type:Function,default:()=>{}},origianlColSpan:{type:Number},index:{type:Number},isMultilingualField:{type:Boolean,default:!1},commands:{type:Array,default:[]},filter:{type:String,default:""},showSetting:{type:Boolean,default:!0},formatter:{type:Function,default:()=>{}},componentId:{type:String,default:""}},Wl=Ge(Ot,Hl,qt,Xt),ql=Ge(Ot,Ll,qt,Xt);class zl extends Ae{constructor(t,o){super(t,o)}getEditorProperties(t){return{description:"编辑器",title:"编辑器",type:"avatar",$converter:"/converter/property-editor.converter",properties:{readonly:{description:"",title:"只读",type:"boolean"},avatarWidth:{description:"",title:"头像宽度",type:"number"},avatarHeight:{description:"",title:"头像高度",type:"number"},cover:{description:"",title:"封面",type:"string"}}}}}class Ul extends Ae{constructor(t,o){super(t,o)}getEditorProperties(t){const o=this.getComponentConfig(t,{type:"check-group"},{placeholder:{visible:!1},disabled:{visible:!1},textField:{description:"",title:"文本字段",type:"string"},valueField:{description:"",title:"值字段",type:"string"},data:{description:"",title:"数据",type:"array",editor:{columns:[{field:t.editor.valueField,title:"值",dataType:"string"},{field:t.editor.textField,title:"名称",dataType:"string"},{field:"disabled",title:"禁用",visible:!1,dataType:"boolean",editor:{type:"switch"}}],type:"item-collection-editor",valueField:t.editor.valueField,nameField:t.editor.textField,requiredFields:[t.editor.valueField,t.editor.textField],uniqueFields:[t.editor.valueField,t.editor.textField]},refreshPanelAfterChanged:!0}});return o.setPropertyRelates=function(i){if(i)switch(i.propertyID){case"data":{i.propertyValue.parameters&&(t.editor.valueField=i.propertyValue.parameters.valueField,t.editor.textField=i.propertyValue.parameters.nameField),t.editor.data=i.propertyValue.value;break}}},o}}class Kl extends Ae{constructor(t,o){super(t,o)}getEditorProperties(t){return this.getComponentConfig(t,{type:"check-group"},{placeholder:{visible:!1},disabled:{visible:!1},text:{description:"",title:"显示文本",type:"string"},value:{description:"",title:"选中值",type:"string"}})}}class Xl extends Ae{constructor(t,o){super(t,o)}getEditorProperties(t){const o=this.getComponentConfig(t,{type:"combo-list"},{editable:{description:"",title:"允许编辑",type:"boolean"},enableClear:{description:"",title:"启用清空",type:"boolean"},textField:{visible:!1,description:"",title:"数据源显示字段",type:"string"},valueField:{visible:!1,description:"",title:"数据源值字段",type:"string"},idField:{visible:!1,description:"",title:"数据源标识字段",type:"string"},data:{description:"",title:"数据",type:"array",editor:{columns:[{field:t.editor.valueField,title:"值",dataType:"string"},{field:t.editor.textField,title:"名称",dataType:"string"},{field:"disabled",title:"禁用",visible:!1,dataType:"boolean",editor:{type:"switch"}}],type:"item-collection-editor",valueField:t.editor.valueField,nameField:t.editor.textField,requiredFields:[t.editor.valueField,t.editor.textField],uniqueFields:[t.editor.valueField,t.editor.textField]},refreshPanelAfterChanged:!0}});return o.setPropertyRelates=function(i){if(i)switch(i.propertyID){case"data":{i.propertyValue.parameters&&(t.editor.valueField=i.propertyValue.parameters.valueField,t.editor.textField=i.propertyValue.parameters.nameField),t.editor.data=i.propertyValue.value;break}}},o}}class Yl extends Ae{constructor(t,o){super(t,o)}getEditorProperties(t){return this.getComponentConfig(t,{type:"textarea"},{rows:{description:"",title:"文本区域可见的行数",type:"number"},showCount:{description:"",title:"展示输入文本数量",type:"boolean"}})}}class Jl extends Ae{constructor(t,o){super(t,o)}getEditorProperties(t){return this.getComponentConfig(t,{type:"date-picker"},{displayFormat:{description:"",title:"展示格式",type:"enum",editor:{data:[{name:"yyyy-MM-dd",id:"yyyy-MM-dd"},{name:"yyyy/MM/dd",id:"yyyy/MM/dd"},{name:"yyyyMMdd",id:"yyyyMMdd"},{name:"MM/dd/yyyy",id:"MM/dd/yyyy"},{name:"yyyy年MM月dd日",id:"yyyy年MM月dd日"}]}},valueFormat:{description:"",title:"存储格式",type:"enum",editor:{data:[{name:"yyyy-MM-dd",id:"yyyy-MM-dd"},{name:"yyyy/MM/dd",id:"yyyy/MM/dd"},{name:"yyyyMMdd",id:"yyyyMMdd"},{name:"MM/dd/yyyy",id:"MM/dd/yyyy"},{name:"yyyy年MM月dd日",id:"yyyy年MM月dd日"}]}},maxYear:{description:"",title:"最大年限",type:"number",editor:{canNull:!0}},minYear:{description:"",title:"最小年限",type:"number",editor:{canNull:!0}}})}}const Ql={$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},data:{description:"",type:"array",default:[]},idField:{description:"",type:"string",default:"id"},columns:{description:"",type:"array",default:[]},title:{description:"",type:"string",default:"字段选择器"},modalWidth:{description:"",type:"number",default:800},modalHeight:{description:"",type:"number",default:600},multiSelect:{description:"",type:"boolean",default:!1},separator:{description:"",type:"string",default:","},bindingData:{description:"",type:"array",default:[]},textField:{description:"",type:"string",default:"code"},beforeOpenDialog:{description:"",type:"object",default:null},editorParams:{description:"",type:"object",default:null},onSubmitModal:{description:"",type:"object",default:null},onFieldSelected:{description:"",type:"object",default:null},repositoryToken:{description:"",type:"object",default:null}}},Zl=[{field:"code",title:"绑定字段"},{field:"name",title:"名称"},{field:"fieldType",title:"字段类型"}],Pt=Symbol("Field_Selector Component Repository Service Token");Ge({disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},modelValue:{type:[String,Array],default:null},data:{type:Array,default:[]},idField:{type:String,default:"id"},columns:{type:Array,default:Zl},title:{type:String,default:"字段选择器"},modalWidth:{type:Number,default:800},modalHeight:{type:Number,default:600},multiSelect:{type:Boolean,default:!1},separator:{type:String,default:","},bindingData:{type:Array,default:[]},textField:{type:String,default:"code"},beforeOpenDialog:{type:Function,default:null},editorParams:{type:Object,default:null},onSubmitModal:{type:Function,default:null},onFieldSelected:{type:Function,default:null},repositoryToken:{type:Symbol,default:null}},Ql);const Qn=new Map([["appearance",Ye],["column","columnOption"]]);function es(e,t,o){var c;const i=o.parentComponentInstance,a=i.schema.type,r=String(((c=i.schema.appearance)==null?void 0:c.class)||"").split(" "),l=a==="section"||a==="tab-page",s=r.includes("f-page-content-nav"),d=r.includes("f-page-main"),u=e.getSchemaByType("component");u.id=`${t.id}-component`,u.componentType="data-grid";let f="";return f+=l?"f-struct-data-grid-in-card f-struct-is-subgrid":"",f+=s?"f-struct-data-grid-in-nav f-struct-wrapper f-utils-fill-flex-column":"",f+=d?"f-struct-data-grid f-struct-wrapper":"",u.appearance={class:f},u.contents=[t],u}function ts(e,t,o){const i=o.parentComponentInstance,a=String(i.schema.appearance.class||"").split(" "),r=a.includes("f-page-content-nav"),l=a.includes("f-page-main"),s=e.getSchemaByType("section");s.id=`${t.id}-section`;let d="";return d+=r?"f-section-in-nav ":"",d+=l?"f-section-in-managelist ":"",d+="f-section-grid",s.appearance={class:d},s.contents=[t],s}function ns(e,t,o){const i=e.getSchemaByType("content-container");return i.id=`${t.id}-layout`,i.appearance={class:"f-grid-is-sub f-utils-flex-column"},i.contents=[t],i}function Zn(e,t,o){const a=o.parentComponentInstance.schema.type,r=a==="section"||a==="tab-page";t.appearance={class:"f-component-grid"};const s=(r?ns:ts)(e,t,o);return es(e,s,o)}const eo={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/tree-grid.schema.json",title:"tree-grid",description:"A Farris Data Grid 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:"tree-grid"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},fit:{type:"boolean",default:!1},showStripe:{type:"boolean",default:!0},showBorder:{type:"boolean",default:!1},showTreeNodeIcons:{type:"boolean",default:!1},showSetting:{type:"boolean",default:!1},size:{description:"",type:"object",properties:{width:{type:"number"},height:{type:"number"}},default:null},dataSource:{description:"",type:"string",default:""},columns:{description:"",type:"array",default:[]},identifyField:{description:"",type:"string"},editable:{description:"",type:"boolean",default:!1},disable:{description:"",type:"boolean",default:!1},visible:{description:"",type:"boolean",default:!0},cell:{type:"object",properties:{highlightFocusingCell:{description:"",type:"boolean",default:!1},mergeCell:{description:"",type:"boolean",default:!1},showEditableIcon:{description:"",type:"boolean",default:!1}}},column:{type:"object",properties:{fitColumns:{description:"",type:"boolean",default:!1},fitMode:{description:"",type:"string",default:"average"},groups:{description:"",type:"array",default:[]},reorderColumn:{description:"Enable to drag column to reorder",type:"boolean",default:!1},resizeColumn:{type:"boolean",default:!0},resizeColumnOnDoubleClick:{description:"",type:"boolean",default:!0}}},command:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},commands:{type:"array",default:[]},commandColumnWidth:{description:"",type:"number",default:120},onClickDeleteCommand:{description:"",type:"string",default:""},onClickEditCommand:{description:"",type:"string",default:""}}},contextMenu:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1}}},customizaiton:{type:"object",properties:{enableScheme:{description:"",type:"boolean",default:!1},enableSetting:{description:"",type:"boolean",default:!1}}},edit:{type:"obejct",properties:{mode:{description:"",type:"string",default:"cell",enum:["cell","row","card"]},selectOnEditing:{description:"",type:"boolean",default:!1},onAppendRow:{description:"",type:"string",default:""},onBeforeEdit:{description:"",type:"string",default:""}}},filter:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},filterStyle:{description:"",type:"string",default:"filter-column",enum:["filter-column","filter-row"]},mode:{description:"",type:"string",default:"server",enum:["client","server"]},showSummary:{description:"",type:"boolean",default:!0},onFilterChange:{description:"",type:"string",default:""}}},footer:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},customFooterStyle:{description:"",type:"object"},footerDataCommand:{description:"",type:"string",default:""},footerDataFrom:{description:"",type:"string",default:"client"},footerHeight:{description:"",type:"number",default:29},footerPosition:{description:"",type:"string",default:"bottom"},footerTemplate:{description:"",type:"string",default:""}}},group:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1},customGroupRow:{description:"",type:"object"},customGroupRowStyle:{description:"",type:"obejct"},customSummaryStyle:{description:"",type:"obejct"},groupColSpan:{description:"",type:"number",default:1},groupFields:{description:"",type:"array",default:[]},showGroupedColumn:{description:"",type:"boolean",default:!0},showGroupPanel:{description:"",type:"boolean",default:!1},showSummary:{description:"",type:"boolean",default:!1},summaryPosition:{description:"",type:"string",default:"separate",enum:["separate","merge-to-group"]},disableGroupOnEditing:{description:"",type:"boolean",default:!0},expandGroupRows:{description:"",type:"boolean",default:!0}}},header:{type:"object",properties:{wrapHeadings:{description:"",type:"boolean",default:!1}}},pagination:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},disablePagination:{description:"",type:"string",default:""},contentTemplate:{description:"",type:"string",default:""},index:{description:"",type:"number",default:1},mode:{description:"",type:"string",default:"server",enum:["server","client"]},showGoto:{description:"",type:"boolean",default:!1},showIndex:{description:"",type:"boolean",default:!0},showLimits:{description:"",type:"boolean",default:!1},showPageInfo:{description:"",type:"boolean",default:!0},size:{description:"",type:"number",default:20},sizeLimits:{description:"",type:"array",default:[10,20,30,50,100]},onPageChange:{description:"",type:"string",default:""},onPageSizeChange:{description:"",type:"string",default:""}}},row:{type:"object",properties:{customRowStyle:{description:"",type:"object"},disable:{description:"",type:"obejct"},height:{description:"",type:"number",default:30},showHovering:{type:"boolean",default:!0},wrapContent:{type:"boolean",default:!1}}},rowNumber:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1},heading:{description:"",type:"string",default:"序号"},width:{description:"",type:"number",default:36},onClickRow:{description:"",type:"string",default:""},onDoubleClickRow:{description:"",type:"string",default:""}}},selection:{type:"object",properties:{enableSelectRow:{description:"允许选中行",type:"boolean",default:!0},enable:{description:"",type:"boolean",default:!0},checkOnSelect:{description:"",type:"boolean",default:!1},clearSelectionOnEmpty:{description:"",type:"boolean",default:!0},customSelectionItem:{description:"",type:"object"},focusSelection:{description:"",type:"string",default:"current",enum:["current","all"]},keepSelectingOnClick:{description:"",type:"boolean",default:!0},keepSelectingOnPaging:{description:"",type:"boolean",default:!0},multiSelect:{description:"",type:"boolean",default:!1},selectionMode:{description:"",type:"string",default:"default"},selectOnCheck:{description:"",type:"boolean",default:!1},selectOnEditing:{description:"",type:"boolean",default:!1},showCheckbox:{description:"",type:"boolean",default:!1},showCheckAll:{description:"",type:"boolean",default:!1},showSelection:{description:"",type:"boolean",default:!1},onBeforeSelect:{description:"",type:"string",default:""},onBeforeUnCheck:{description:"",type:"",default:""},onBeforeUnSelect:{description:"",type:"string",default:""},onCheckAll:{description:"",type:"string",default:""},onChecked:{description:"",type:"string",default:""},onSelectionChange:{description:"",type:"string",default:""},onUnCheckAll:{description:"",type:"string",default:""},onUnChecked:{description:"",type:"string",default:""},onCheckedChange:{description:"",type:"string"}}},sort:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},fields:{description:"",type:"array",default:[]},mode:{description:"",type:"string",default:"client",enum:["client","server"]},multiSort:{description:"",type:"boolean",default:!1}}},summary:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1},customSummaryStyle:{description:"",type:"object"},groupFields:{description:"",type:"array",default:[]},mode:{description:"",type:"string",default:"client",enum:["client","server"]},position:{description:"",type:"boolean",default:"bottom",enum:["bottom","top","both"]}}},toolbar:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1}}},visualization:{autoHeight:{description:"",type:"boolean",default:!1},emptyDataHeight:{description:"",type:"number",default:36},emptyTemplate:{description:"",type:"string",default:""},maxHeight:{description:"",type:"number",default:300},scrollBarShowMode:{description:"",type:"string",default:"auto"},showBorder:{description:"",type:"boolean",default:!1},showScrollArrow:{description:"",type:"boolean",default:!1},striped:{description:"",type:"boolean",default:!0},useBlankWhenDataIsEmpty:{description:"",type:"boolean",default:!1}},onSelectionChange:{description:"行切换事件",type:"string",default:""}},required:["id","type"]},$t={columns:{type:Array,default:[]},displayField:{type:String,default:"name"},showLines:{type:Boolean,default:!1},columnOption:{type:Object},data:{type:Array,default:[]},disabled:{type:Boolean,default:!1},disabledField:{type:String,default:"disabled"},editable:{type:Boolean,default:!1},editOption:{type:Object,default:{selectOnEditing:!1,editMode:"cell"}},fit:{type:Boolean,default:!1},header:{type:Object},height:{type:Number,default:-1},id:{type:String,default:""},idField:{type:String,default:"id",require:!0},loading:{type:Boolean,default:!1},minHeight:{type:Number,default:300},minWidth:{type:Number,default:400},pagination:{type:Object,default:{enable:!1,size:-1}},rowNumber:{type:Object,default:{enable:!0,width:32,heading:"序号"}},rowOption:{type:Object,default:{wrapContent:!1}},selection:{type:Object,default:{enableSelectRow:!0,multiSelect:!1,multiSelectMode:"DependOnCheck",showCheckbox:!1,showSelectAll:!1,showSelection:!0}},selectionValues:{type:Array,default:[]},showBorder:{type:Boolean,default:!1},showOptions:{type:Boolean,default:!1},showScrollBar:{type:String,default:"auto"},showStripe:{type:Boolean,default:!0},showTreeNodeIcons:{type:Boolean,default:!1},treeNodeIconsData:{type:[Object,String],default:{}},width:{type:Number,default:-1},newDataItem:{type:Function,default:()=>{}},commandOption:{type:Object,default:{enable:!1,commands:[]}},hierarchy:{type:Object,default:{cascadeOption:{autoCheckChildren:!1,autoCheckParent:!1,selectionRange:"All"},parentIdField:"parent"}},autoCheckChildren:{type:Boolean,default:!1},showSetting:{type:Boolean,default:!1}},os=Ge($t,eo,Qn,Zn),is=vi(),rs=gi(),to=Object.assign({},$t,{componentId:{type:String,default:""}}),as=Ge(to,eo,Qn,Zn);function no(e,t,o,i,a,r,l,s,d,u,f,c,p,b,h,x){const{calculateCellPositionInRow:S}=r,{columnContext:y,hasLeftFixedColumn:m,hasRightFixedColumn:g}=l,{gridDataStyle:_,leftFixedGridDataStyle:C,rightFixedGridDataStyle:F}=b,{renderDataRow:N}=Li(e,t,y,x,s,d,u,f,c,p),k=[N];function v(V,O){const $=S(V);return x.value.filter(B=>B.visible!==!1).map(B=>k[B.type](B,$,O,V))}function M(){return n.createVNode("div",{ref:i,class:"fv-grid-content-left-fixed"},[n.createVNode("div",{class:"fv-grid-data",style:C.value},[v(y.value.leftColumns.filter(V=>V.visible),"left")])])}function w(){return n.createVNode("div",{ref:o,class:"fv-grid-content-primary"},[n.createVNode("div",{class:"fv-grid-data",style:_.value},[v(y.value.primaryColumns.filter(V=>V.visible),"primary")])])}function T(){return n.createVNode("div",{ref:a,class:"fv-grid-content-right-fixed"},[n.createVNode("div",{class:"fv-grid-data",style:F.value},[v(y.value.rightColumns.filter(V=>V.visible),"right")])])}function I(){const V=[];return m.value&&V.push(M()),V.push(w()),g.value&&V.push(T()),V}return{renderDataArea:I}}const gt=n.defineComponent({name:"FTreeGrid",props:$t,emits:["selectionChange","clickRow","expandNode"],setup(e,t){var Oe;const a=n.ref(),r=n.ref(),l=n.ref(),s=n.ref(),d=n.ref(),u=n.ref([]),f=n.ref(!1),c=n.ref(((Oe=e.rowOption)==null?void 0:Oe.wrapContent)||!1),{showLoading:p,renderLoading:b}=U.useLoading(e,a),h=U.useIdentify(e),x=U.useGroupData(e,h),S=U.useFilter(),y=U.useHierarchy(e),m=U.usePagination(e),g=U.useDataView(e,new Map,y,h,m),_=U.useSelection(e,g,h,u,t),C=U.useSelectHierarchyItem(e,u,h,_,t),F=n.computed(()=>Math.min(g.dataView.value.length,100)),{containerStyleObject:N}=U.useDataViewContainerStyle(e),k=U.useCommandColumn(e),v=n.ref(e.columns),{applyCommands:M}=k;M(v);const w=U.useColumn(e),T=U.useSort(e),{applyColumnSorter:I,columnContext:V,updateColumnRenderContext:O}=w;I(g,T);const $=U.useGroupColumn(e,V),B=U.useEdit(e,t,h),P=U.useVisualDataBound(),E=U.useVisualDataCell(e,B,P),j=U.useVisualDataRow(e,B,y,h,P,E),G=U.useVisualData(e,v,g,F,0,j),{getVisualData:X}=G,ne=U.useCellPosition(e,V),me=U.useSidebar(e,_),{sidebarWidth:Ne}=me;u.value=X(0,F.value+0-1);const ge=U.useVirtualScroll(e,g,u,V,G,F,0,Ne),{onWheel:Se,dataGridWidth:xe,viewPortHeight:pe,viewPortWidth:ye,resetScroll:Ce}=ge,K=U.useFitColumn(e,V,r,ye,$),{calculateColumnsSize:Y}=K,ue=U.useFilterHistory(),Fe=U.useColumnFilter(r,d,g,ue,ge),se=U.useRow(e,t,_,h),re=U.useDragColumn(e,t,w,g,$,x,ge),he=n.computed(()=>({"fv-grid":!0,"fv-grid-bordered":e.showBorder,"fv-datagrid-strip":e.showStripe})),ve=n.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":f.value,"fv-grid-wrap-content":c.value})),{renderDataArea:be}=no(e,t,l,s,d,ne,w,g,B,y,se,_,C,ge,G,u),{renderGridHeader:W,renderGridColumnResizeOverlay:R}=U.getColumnHeader(e,r,s,d,w,g,re,Fe,S,ue,K,$,_,me,T,ge,ye,u),{renderDataGridSidebar:oe}=U.getSidebar(e,se,_,me,ge),{renderDisableMask:D}=U.getDisableMask(),{renderHorizontalScrollbar:ae}=U.getHorizontalScrollbar(e,r,ge),{renderVerticalScrollbar:z}=U.getVerticalScrollbar(e,r,ge);function A(){var de,$e;pe.value=((de=l.value)==null?void 0:de.clientHeight)||0,xe.value=(($e=r.value)==null?void 0:$e.clientWidth)||0,Y()}n.onMounted(()=>{r.value&&(dt.useResizeObserver(r.value,A),Y(),n.nextTick(()=>{r.value&&(xe.value=r.value.clientWidth),l.value&&(ye.value=l.value.clientWidth,pe.value=l.value.clientHeight)})),p.value&&b()}),n.onUnmounted(()=>{}),n.watch(ye,()=>{r.value&&Y()});function le(){const de=_.getSelectionRow();return de?de.dataIndex-1:-1}function fe(){const de=le();g.insertNewDataItem(de),u.value=X(0,F.value+0-1)}function ke(){const de=le();g.insertNewChildDataItem(de),u.value=X(0,F.value+0-1)}function De(){const de=le(),$e=C.getNextSelectableHierarchyItemId(de);g.removeHierarchyDataItem(de),u.value=X(0,F.value+0-1),$e&&_.selectItemById($e)}function Le(de){B.onEditingRow(de)}function We(de){B.acceptEditingRow(de)}function Ze(de){B.cancelEditingRow(de)}function et(de){de&&(v.value=de,M(v),O(v.value),I(g,T),Y())}function tt(de){de&&(Ce(),g.load(de),u.value=X(0,F.value+0-1))}function Xe(de){_.selectItemById(de)}function q(){return _.getSelectedItems()}function ie(){_.clearSelection()}const ce=n.computed(()=>!u.value||!u.value.length),{renderEmpty:Ie}=U.getEmpty(t);return t.expose({addNewDataItem:fe,addNewChildDataItem:ke,removeDataItem:De,editDataItem:Le,acceptDataItem:We,cancelDataItem:Ze,updateColumns:et,updateDataSource:tt,selectItemById:Xe,getSelectedItems:q,clearSelection:ie}),()=>n.createVNode("div",{ref:a,class:he.value,style:N.value,onWheel:Se},[W(),ce.value&&Ie(),n.createVNode("div",{ref:r,class:ve.value,onMouseover:()=>{f.value=!0},onMouseleave:()=>{f.value=!1}},[oe(u),be(),ae(),z()]),R(),e.disabled&&D()])}});class ls extends ft{constructor(t,o){super(t,o)}getPropertyConfig(t){return this.getBasicPropConfig(t),this.getAppearanceProperties(t),this.getEventPropConfig(t),this.propertyConfig}getBasicPropConfig(t){this.propertyConfig.categories.basic={description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",editor:{type:"combo-list",textField:"value",valueField:"key",data:[{key:"tree-grid",value:te["tree-grid"].name}]}}}}}getAppearanceProperties(t){var o,i,a;this.propertyConfig.categories.appearance={title:"外观",properties:{columns:{title:"列设置",description:"列设置",$converter:"/converter/items-count.converter",editor:{type:"grid-field-editor",viewModelId:this.viewModelId,gridData:t,gridType:"tree-grid-column"},refreshPanelAfterChanged:!0},fit:{title:"适配父组件尺寸",type:"boolean",description:"是否适配父组件尺寸"},showStripe:{title:"显示条纹",type:"boolean",description:"是否显示条纹"},showBorder:{title:"显示边框",type:"boolean",description:"是否显示边框"},showTreeNodeIcons:{title:"显示图标",type:"boolean",description:"是否显示图标"},showSetting:{title:"显示设置按钮",type:"boolean",description:"是否显示设置按钮"}},setPropertyRelates(r,l){switch(r&&r.propertyID){case"useBlankWhenDataIsEmpty":t.emptyDataHeight=t.useBlankWhenDataIsEmpty?36:240;break;case"fields":t.fields=r.propertyValue||[];break}}},this.propertyConfig.categories.pagination={title:"分页",$converter:"/converter/pagination.converter",properties:{enable:{title:"启用分页",type:"boolean",refreshPanelAfterChanged:!0},mode:{visible:((o=t.pagination)==null?void 0:o.enable)||!1,title:"分页交互模式",type:"enum",editor:{type:"combo-list",textField:"name",valueField:"value",data:[{value:"client",name:"客户端"},{value:"server",name:"服务器端"}]}},showIndex:{visible:((i=t.pagination)==null?void 0:i.enable)||!1,title:"显示页码",type:"boolean"},showLimits:{visible:((a=t.pagination)==null?void 0:a.enable)||!1,title:"显示每页记录数",type:"boolean"}}}}getEventPropConfig(t){const o=[{label:"onSelectionChange",name:"行切换事件"}],i=this,a=i.eventsEditorUtils.formProperties(t,i.viewModelId,o),r={};r[i.viewModelId]={type:"events-editor",editor:{initialData:a}},this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:r,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(l,s){const d=l.propertyValue;delete t[i.viewModelId],d&&(d.setPropertyRelates=this.setPropertyRelates,i.eventsEditorUtils.saveRelatedParameters(t,i.viewModelId,d.events,d)),t.remoteSort=!!t.columnSorted}}}}function ss(e,t){const o=e.schema,i=n.ref(!0),a=n.ref(!0);function r(f){return f&&f.sourceType==="control"?f.componentCategory==="input":!1}function l(){return!1}function s(){return!1}function d(){return!0}function u(f){return new ls(f,t).getPropertyConfig(o)}return{canAccepts:r,checkCanDeleteComponent:l,checkCanMoveComponent:s,hideNestedPaddingInDesginerView:d,triggerBelongedComponentToMoveWhenMoved:i,triggerBelongedComponentToDeleteWhenDeleted:a,getPropsConfig:u}}const cs=n.defineComponent({name:"FTreeGridDesign",props:to,emits:[],setup(e,t){var fe;const o=n.ref(),i=0,a=100,r=n.ref(),l=n.ref(),s=n.ref(),d=n.ref(),u=n.ref([]),f=n.ref(!1),c=n.ref(((fe=e.rowOption)==null?void 0:fe.wrapContent)||!1),p=n.inject("designer-host-service"),b=n.inject("design-item-context"),h=ss(b,p),x=Ft(o,b,h);x.value.designerClass="f-utils-fill-flex-column";const S=$n(e),y=Tt(e,S),m=kt(),g=Tn(e),_=Gn(e),C=Nn(e,new Map,g,S,_),F=En(e,C,S,u,t),N=Ta(e,u,S,F,t),k=n.computed(()=>Math.min(C.dataView.value.length,a)),{containerStyleObject:v}=nn(e),M=an(e),w=n.ref(e.columns),{applyCommands:T}=M;T(w);const I=on(e),V=Rn(),{applyColumnSorter:O,columnContext:$,updateColumnRenderContext:B}=I;O(C,V);const P=cn(e,$),E=Pn(e,t,S),j=xt(),G=Bn(e,E,j),X=On(e,E,g,S,j,G),ne=In(e,w,C,k,i,X),{getVisualData:me}=ne,Ne=St(e,$),ge=Dn(e,F),{sidebarWidth:Se}=ge;u.value=me(0,k.value+i-1);const xe=Mn(e,C,u,$,ne,k,i,Se),{onWheel:pe,dataGridWidth:ye,viewPortHeight:Ce,viewPortWidth:K}=xe,Y=sn(e,$,r,K,P),{calculateColumnsSize:ue}=Y,Fe=kn(),se=rn(r,d,C,Fe,xe),re=jn(e,t,F,S),he=ln(e,t,I,C,P,y,xe),ve=n.computed(()=>({"drag-container":!0,"fv-grid":!0,"fv-grid-bordered":e.showBorder,"fv-datagrid-strip":e.showStripe})),be=n.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":f.value,"fv-grid-wrap-content":c.value})),{renderDataArea:W}=no(e,t,l,s,d,Ne,I,C,E,g,re,F,N,xe,ne,u),{renderGridHeader:R}=Ln(b,e,r,s,d,I,C,he,se,m,Fe,Y,P,F,ge,V,xe,K,u,"tree-grid-column"),{renderDataGridSidebar:oe}=en(e,re,F,ge,xe),{renderHorizontalScrollbar:D}=Zt(e,r,xe),{renderVerticalScrollbar:ae}=tn(e,r,xe);function z(){var ke,De;Ce.value=((ke=l.value)==null?void 0:ke.clientHeight)||0,ye.value=((De=r.value)==null?void 0:De.clientWidth)||0,ue()}n.onMounted(()=>{o.value.componentInstance=x,r.value&&(dt.useResizeObserver(r.value,z),ue(),n.nextTick(()=>{r.value&&(ye.value=r.value.clientWidth),l.value&&(K.value=l.value.clientWidth,Ce.value=l.value.clientHeight)}))}),n.onUnmounted(()=>{}),n.watch(K,()=>{r.value&&ue()});const A=n.computed(()=>!u.value||!u.value.length),{renderEmpty:le}=Ui(t);return t.expose(x.value),()=>n.createVNode("div",{ref:o,dragref:`${b.schema.id}-container`,class:ve.value,style:v.value,onWheel:pe},[R(),A.value&&le(),n.createVNode("div",{ref:r,class:be.value,onMouseover:()=>{f.value=!0},onMouseleave:()=>{f.value=!1}},[oe(u),W(),D(),ae()])])}});gt.register=(e,t,o,i)=>{e["tree-grid"]=gt,t["tree-grid"]=os,i["tree-grid"]={bindingResolver:rs,selectionItemResolver:is}},gt.registerDesigner=(e,t,o)=>{e["tree-grid"]=cs,t["tree-grid"]=as},Ee.withInstall(gt);const ot={convertFrom:(e,t)=>t==="multiSelect"?!!e.editor[t]:t==="separator"?e.editor[t]||",":e.editor[t],convertTo:(e,t,o)=>{e.editor[t]=o}},ds={convertFrom:(e,t)=>e[t]==null?!0:e[t],convertTo:(e,t,o)=>{e[t]=o}};function us(e){let t="form_group_"+Date.now();return e&&(t=e.replaceAll("-","_").replaceAll(".","_")),"lookup."+t}const fs={convertFrom:(e,t)=>{var o;return(o=e.editor[t])==null?void 0:o.displayName},convertTo:(e,t,o)=>{if(o&&o.length>0){const i=o[0],{name:a,id:r,metadataContent:l}=i;e.editor.dataSource||(e.editor.dataSource={}),e.editor.dataSource.displayName=a,e.editor.helpId=r;const{displayType:s,idField:d,textField:u}=l;e.editor.displayType=s,e.editor.dataSource.idField=d,e.editor.textField=u,e.editor.dataSource.type="ViewObject",e.editor.dataSource.uri||(e.editor.dataSource.uri=us(e.id))}}},ps={convertFrom:(e,t)=>{var o;return(o=e.editor.dataSource)==null?void 0:o.idField},convertTo:(e,t,o)=>{if(o&&o.length>0){const i=o[0];e.editor.dataSource.idField=i==null?void 0:i.bindingPath}}},ms={convertFrom:(e,t)=>{var o;return(o=e.editor)==null?void 0:o.textField},convertTo:(e,t,o)=>{if(o&&o.length>0){const i=o[0];e.editor.textField=i==null?void 0:i.bindingPath}}},hs={convertFrom:(e,t)=>e.editor.displayType?e.editor.displayType.toUpperCase():"LIST",convertTo:(e,t,o)=>{e.editor.displayType=o}},gs=Symbol("schema_repository_token");class ys extends Ae{getPropertyConfig(t,o){const i=this.getBasicProperties(t,o),a=this.getAppearanceConfig(),r=this.getBehaviorConfig(t),l=this.getLookupConfig(t.editor);return{type:"object",categories:{basic:i,appearance:a,behavior:r,lookup:l}}}getBehaviorConfig(t){return{description:"Basic Infomation",title:"行为",properties:{editable:{description:"",title:"允许编辑",type:"boolean",$converter:ot},readonly:{description:"",title:"只读",type:"boolean",$converter:ot},required:{visible:!1,description:"",title:"必填",type:"boolean",$converter:ot},visible:{description:"",title:"可见",type:"boolean",$converter:ds},placeHolder:{visible:!1,description:"",title:"提示文本",type:"string"},tabindex:{visible:!1,description:"",title:"tab索引",type:"number"}}}}getLookupConfig(t){return{description:"Basic Infomation",title:"编辑器",properties:{dataSource:{description:"数据源",title:"数据源",type:"string",refreshPanelAfterChanged:!0,editor:{type:"schema-selector",title:"选择数据源",editorParams:{propertyData:t,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},viewOptions:[{id:"recommend",title:"推荐",type:"List",dataSource:"Recommand",enableGroup:!0,groupField:"category",groupFormatter:(o,i)=>`${o==="local"?"本地元数据":"最近使用"}`},{id:"total",title:"全部",type:"List",dataSource:"Total"}],repositoryToken:gs,onSubmitModal:o=>{if(o){const i=this.formSchemaUtils.getFormMetadataBasicInfo();return this.metadataService.getPickMetadata(i.relativePath,o[0].data).then(a=>JSON.parse(a==null?void 0:a.metadata.content))}}},$converter:fs},displayType:{description:"类型: 树列表、列表、双列表、左树右列表",title:"展示类型",type:"string",$converter:hs,editor:{type:"combo-list",editable:!1,disabled:!0,data:[{text:"列表",value:"LIST"},{text:"树列表",value:"TREELIST"},{text:"双列表",value:"NAVLIST"},{text:"左树右列表",value:"NAVTREELIST"}],textField:"text",idField:"value",valueField:"value"}},idField:{description:"数据源标识字段",title:"标识字段",type:"string",editor:{type:"field-selector",textField:"bindingPath",idField:"bindingPath",editorParams:{propertyData:t,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},columns:[{field:"name",title:"名称"},{field:"code",title:"编号"},{field:"bindingPath",title:"绑定字段"}],repositoryToken:Pt},$converter:ps},textField:{description:"显示文本字段",title:"文本字段",type:"string",$converter:ms,editor:{type:"field-selector",textField:"bindingPath",idField:"bindingPath",editorParams:{propertyData:t,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},columns:[{field:"name",title:"名称"},{field:"code",title:"编号"},{field:"bindingPath",title:"绑定字段"}],repositoryToken:Pt}},mappingFields:{description:"字段映射",title:"字段映射",type:"string",$converter:ot,editor:{type:"mapping-editor",modalWidth:800,modalHeight:600,editable:!1,editorParams:{propertyData:t,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},fromData:{editable:!1,formatter:(o,i)=>`${i.raw[o.field]} [${i.raw.bindingPath}]`,idField:"id",textField:"bindingPath",valueField:"bindingPath",repositoryToken:Pt},toData:{idField:"id",textField:"bindingPath",valueField:"bindingPath",dataSource:this.designViewModelUtils.getAllFields2TreeByVMId(this.viewModelId),formatter:(o,i)=>`${i.raw[o.field]} [${i.raw.bindingPath}]`}}},multiSelect:{description:"启用多选",$converter:ot,title:"启用多选",type:"boolean"},separator:{description:"多选分隔符",$converter:ot,title:"多选分隔符",type:"string"}}}}}class vs extends Ae{constructor(t,o){super(t,o)}getEditorProperties(t){return this.getComponentConfig(t,{type:"number-range"},{editable:{description:"",title:"允许编辑",type:"boolean"}})}}class bs extends Ae{constructor(t,o){super(t,o)}getEditorProperties(t){return this.getComponentConfig(t,{type:"number-spinner"},{precision:{description:"",title:"精度",type:"number"},step:{description:"",title:"步长",type:"number"},max:{description:"",title:"最大值",type:"number",editor:{canNull:!0}},min:{description:"",title:"最小值",type:"number",editor:{canNull:!0}},textAlign:{description:"",title:"对齐方式",type:"enum",editor:{type:"combo-list",textField:"name",valueField:"value",data:[{value:"left",name:"左对齐"},{value:"center",name:"居中"},{value:"right",name:"右对齐"}]}}})}}class Cs extends Ae{constructor(t,o){super(t,o)}getEditorProperties(t){const o=this.getComponentConfig(t,{type:"radio-group"},{disabled:{visible:!1},placeholder:{visible:!1},horizontal:{description:"",title:"是否横向",type:"boolean"},textField:{visible:!1,description:"",title:"显示文本字段",type:"string"},valueField:{visible:!1,description:"",title:"值字段",type:"string"},data:{description:"",title:"数据",type:"array",editor:{columns:[{field:t.editor.valueField,title:"值",dataType:"string"},{field:t.editor.textField,title:"名称",dataType:"string"},{field:"disabled",title:"禁用",visible:!1,dataType:"boolean",editor:{type:"switch"}}],type:"item-collection-editor",valueField:t.editor.valueField,nameField:t.editor.textField,requiredFields:[t.editor.valueField,t.editor.textField],uniqueFields:[t.editor.valueField,t.editor.textField]},refreshPanelAfterChanged:!0}});return o.setPropertyRelates=function(i){if(i)switch(i.propertyID){case"data":{i.propertyValue.parameters&&(t.editor.valueField=i.propertyValue.parameters.valueField,t.editor.textField=i.propertyValue.parameters.nameField),t.editor.data=i.propertyValue.value;break}}},o}}class ws extends Ae{constructor(t,o){super(t,o)}getEditorProperties(t){return this.getComponentConfig(t,{type:"switch"},{disabled:{visible:!1},placeholder:{visible:!1},onLabel:{description:"",title:"打开时标签",type:"string"},offLabel:{description:"",title:"关闭时标签",type:"string"},onBackground:{description:"",title:"打开时背景色",type:"string"},offBackground:{description:"",title:"关闭时背景色",type:"string"},size:{description:"",title:"尺寸",type:"enum",editor:{data:[{id:"small",name:"小号"},{id:"middle",name:"中号"},{id:"large",name:"大号"}]}}})}}class Ss extends Ae{constructor(t,o){super(t,o)}getEditorProperties(t){return this.getComponentConfig(t,{type:"time-picker"},{editable:{description:"",title:"允许编辑",type:"boolean"},format:{description:"",title:"格式",type:"enum",editor:{type:"combo-list",textField:"name",valueField:"value",data:[{value:"HH:mm:ss",name:"HH:mm:ss"}]}},showHeader:{description:"",title:"是否显示头部区域",type:"boolean"},use12Hours:{description:"",title:"是否使用12小时制",type:"boolean"}})}}class xs extends ft{constructor(t,o){super(t,o)}getPropertyConfig(t,o){return this.getBasicPropConfig(t),this.getAppearanceProperties(t),this.getFieldEditorProperties(t,o),this.propertyConfig}getBasicPropConfig(t){this.propertyConfig.categories.basic={description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},title:{description:"标题",title:"标题",type:"string"}}}}getAppearanceProperties(t){this.propertyConfig.categories.appearance={description:"",title:"外观",properties:{halign:{description:"数据水平对齐方式选择",title:"数据水平对齐方式",type:"enum",editor:{data:[{id:"left",name:"左对齐"},{id:"right",name:"居中"},{id:"center",name:"右对齐"}]}},valign:{description:"数据垂直对齐方式选择",title:"数据垂直对齐方式",type:"enum",editor:{data:[{id:"top",name:"顶对齐"},{id:"middle",name:"居中"},{id:"bottom",name:"底对齐"}]}}}}}getFieldEditorProperties(t,o){o.fieldEditable&&t.editor&&this.getFieldEditorProp(t)}getFieldEditorProp(t,o="gridFieldEditor",i=!1){const a=this.formMetadataConverter.getRealEditorType(t.editor.type);let r;switch(a){case"avatar":r=new zl(this.componentId,this.designerHostService);break;case"check-group":r=new Ul(this.componentId,this.designerHostService);break;case"check-box":r=new Kl(this.componentId,this.designerHostService);break;case"combo-list":r=new Xl(this.componentId,this.designerHostService);break;case"date-picker":r=new Jl(this.componentId,this.designerHostService);break;case"lookup":r=new ys(this.componentId,this.designerHostService);break;case"number-range":r=new vs(this.componentId,this.designerHostService);break;case"number-spinner":r=new bs(this.componentId,this.designerHostService);break;case"radio-group":r=new Cs(this.componentId,this.designerHostService);break;case"switch":r=new ws(this.componentId,this.designerHostService);break;case"textarea":r=new Yl(this.componentId,this.designerHostService);break;case"time-picker":r=new Ss(this.componentId,this.designerHostService);break;default:r=new Lr(this.componentId,this.designerHostService)}this.setDesignViewModelField(t);const l=this;this.propertyConfig.categories[`${o}_editorType`]={description:"",title:"编辑器类型",propertyData:t.editor,tabId:"gridFieldEditor",parentPropertyID:"editor",tabName:"编辑器",properties:{type:{description:"",title:"编辑器类型",type:"enum",$converter:"/converter/change-editor.converter",refreshPanelAfterChanged:!0,editor:{type:"combo-list",textField:"value",valueField:"key",data:ct.getEditorTypesByMDataType(l.designViewModelField.type.name)}}},setPropertyRelates(u,f){if(u)switch(u&&u.propertyID){case"type":{l.changeFieldEditorType(t,u.propertyValue);break}}}};const s=["id","type","class","style","binding","label","responseLayout"],{categories:d}=r.getPropertyConfig(t);Object.keys(d).map(u=>{const f=d[u],c={};if(Object.keys(f.properties).map(p=>{s.findIndex(b=>b===p)===-1&&f.properties[p]!==!1&&(c[p]=f.properties[p])}),Object.keys(c).length!==0){const p=f==null?void 0:f.title,b="gridFieldEditor",h="编辑器",x=f==null?void 0:f.description,S=(f==null?void 0:f.$converter)||"";l.propertyConfig.categories[o+"_"+u]={title:p,tabId:b,tabName:h,description:x,$converter:S,propertyData:t,properties:c}}})}changeFieldEditorType(t,o){const i=this.designViewModelUtils.getDgViewModel(this.viewModelId);i.changeField(this.designViewModelField.id,{editor:{$type:o},name:this.designViewModelField.name,require:this.designViewModelField.require,readonly:this.designViewModelField.readonly},!1);const a=this.formSchemaUtils.getComponentByViewModelId(this.viewModelId),r=this.formSchemaUtils.selectNode(a,f=>f.type===te["data-grid"].type||f.type===te["tree-grid"].type);if(!r)return;const l=i.fields.find(f=>f.id===this.designViewModelField.id),s=this.controlCreatorUtils.setGridFieldProperty(o,l,null,!0),d=Object.prototype.hasOwnProperty.call(r,"columns")?r.columns:r.fields,u=d.findIndex(f=>f.id===t.id);u>-1&&d[u].editor&&(d[u].editor=Object.assign(s.editor,{required:d[u].editor.required}))}}function _s(e,t){const o=e.schema,i=n.ref(!0),a=n.ref(!0);function r(c){return!1}function l(){return!1}function s(){return!1}function d(){return!0}function u(c){}function f(c){var b;return new xs(c,t).getPropertyConfig(o,(b=e==null?void 0:e.parent)==null?void 0:b.schema)}return{canAccepts:r,checkCanDeleteComponent:l,checkCanMoveComponent:s,hideNestedPaddingInDesginerView:d,onAcceptMovedChildElement:u,triggerBelongedComponentToMoveWhenMoved:i,triggerBelongedComponentToDeleteWhenDeleted:a,getPropsConfig:f}}const oo=n.defineComponent({name:"FDataGridColumnDesign",props:Ot,emits:[],setup(e,t){const o=n.ref(),i=n.inject("designer-host-service"),a=n.inject("design-item-context"),r=_s(a,i),l=Ft(o,a,r);n.onMounted(()=>{o.value.componentInstance=l}),t.expose(l.value);function s(d){var u;(u=a==null?void 0:a.setupContext)==null||u.emit("selectionChange",l.value.schema,a.schema,e.componentId,l.value)}return()=>n.createVNode("span",{class:"fv-column-title",ref:o,onClick:d=>s()},[e.title])}});Ke.install=e=>{e.component(Ke.name,Ke),e.component(Bt.name,Bt)},Ke.register=(e,t,o,i)=>{e["data-grid"]=Ke,t["data-grid"]=Ct,e["grid-field-editor"]=Al,t["grid-field-editor"]=wl,i["data-grid"]={bindingResolver:Jt,selectionItemResolver:Qt}},Ke.registerDesigner=(e,t,o)=>{e["data-grid"]=Bt,t["data-grid"]=Ct,t["data-grid-column"]=Wl,e["data-grid-column"]=oo,t["tree-grid-column"]=ql,e["tree-grid-column"]=oo},H.FDataGrid=Ke,H.bindingResolver=Jt,H.columnOptions=Oi,H.dataGridDesignProps=Yt,H.dataGridProps=ut,H.default=Ke,H.editOptions=$i,H.filterOptions=ki,H.groupOptions=Ni,H.headerOptions=Ti,H.loadingOptions=ji,H.paginationOptions=Fi,H.propsResolver=Ct,H.rowNumberOptions=Mi,H.rowOptions=Ii,H.selectionItemResolver=Qt,H.selectionOptions=Pi,H.sortOptions=Vi,H.summaryOptions=Bi,Object.defineProperties(H,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|