@farris/ui-vue 1.4.0 → 1.4.1
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/avatar/index.esm.js +2 -1
- package/components/avatar/index.umd.cjs +1 -1
- package/components/checkbox/index.esm.js +2 -1
- package/components/checkbox/index.umd.cjs +1 -1
- package/components/combo-list/index.esm.js +2 -1
- package/components/combo-list/index.umd.cjs +1 -1
- package/components/condition/index.css +1 -1
- package/components/condition/index.esm.js +715 -704
- package/components/condition/index.umd.cjs +1 -1
- package/components/content-container/index.css +1 -1
- package/components/content-container/index.esm.js +1180 -1169
- package/components/content-container/index.umd.cjs +1 -1
- package/components/data-grid/index.css +1 -1
- package/components/data-grid/index.esm.js +2949 -2901
- package/components/data-grid/index.umd.cjs +1 -1
- package/components/data-view/index.css +1 -1
- package/components/data-view/index.esm.js +609 -598
- package/components/data-view/index.umd.cjs +1 -1
- package/components/date-picker/index.esm.js +3 -2
- package/components/date-picker/index.umd.cjs +1 -1
- package/components/designer-canvas/index.css +1 -1
- package/components/designer-canvas/index.esm.js +2081 -2062
- package/components/designer-canvas/index.umd.cjs +1 -1
- package/components/designer-outline/index.css +1 -1
- package/components/drawer/index.esm.js +23 -21
- package/components/drawer/index.umd.cjs +1 -1
- package/components/dynamic-form/index.css +1 -1
- package/components/dynamic-form/index.esm.js +2745 -2691
- package/components/dynamic-form/index.umd.cjs +1 -1
- package/components/external-container/index.css +1 -1
- package/components/external-container/index.esm.js +1322 -1311
- package/components/external-container/index.umd.cjs +1 -1
- package/components/field-selector/index.css +1 -1
- package/components/field-selector/index.esm.js +85 -74
- package/components/field-selector/index.umd.cjs +1 -1
- package/components/filter-bar/index.esm.js +4618 -4320
- package/components/filter-bar/index.umd.cjs +3 -3
- package/components/flow-canvas/index.css +1 -1
- package/components/flow-canvas/index.esm.js +1982 -1963
- package/components/flow-canvas/index.umd.cjs +1 -1
- package/components/input-group/index.esm.js +2 -1
- package/components/input-group/index.umd.cjs +1 -1
- package/components/list-view/index.css +1 -1
- package/components/list-view/index.esm.js +822 -811
- package/components/list-view/index.umd.cjs +1 -1
- package/components/lookup/index.css +1 -1
- package/components/lookup/index.esm.js +3268 -3219
- package/components/lookup/index.umd.cjs +1 -1
- package/components/mapping-editor/index.css +1 -1
- package/components/mapping-editor/index.esm.js +1985 -1937
- package/components/mapping-editor/index.umd.cjs +1 -1
- package/components/number-range/index.esm.js +136 -135
- package/components/number-range/index.umd.cjs +1 -1
- package/components/number-spinner/index.esm.js +2 -1
- package/components/number-spinner/index.umd.cjs +1 -1
- package/components/order/index.esm.js +2 -1
- package/components/order/index.umd.cjs +1 -1
- package/components/property-editor/index.esm.js +2 -1
- package/components/property-editor/index.umd.cjs +1 -1
- package/components/property-panel/index.esm.js +295 -283
- package/components/property-panel/index.umd.cjs +2 -2
- package/components/query-solution/index.css +1 -1
- package/components/query-solution/index.esm.js +5430 -5374
- package/components/query-solution/index.umd.cjs +7 -7
- package/components/radio-group/index.esm.js +2 -1
- package/components/radio-group/index.umd.cjs +1 -1
- package/components/schema-selector/index.css +1 -1
- package/components/schema-selector/index.esm.js +1259 -1248
- package/components/schema-selector/index.umd.cjs +2 -2
- package/components/section/index.css +1 -1
- package/components/section/index.esm.js +1272 -1261
- package/components/section/index.umd.cjs +1 -1
- package/components/switch/index.esm.js +2 -1
- package/components/switch/index.umd.cjs +1 -1
- package/components/textarea/index.esm.js +14 -13
- package/components/textarea/index.umd.cjs +1 -1
- package/components/time-picker/index.esm.js +2 -1
- package/components/time-picker/index.umd.cjs +1 -1
- package/components/tree-grid/index.css +1 -1
- package/components/tree-grid/index.esm.js +715 -704
- package/components/tree-grid/index.umd.cjs +1 -1
- package/components/tree-view/index.css +1 -1
- package/components/tree-view/index.esm.js +107 -96
- package/components/tree-view/index.umd.cjs +1 -1
- package/farris.all.esm.js +14687 -14334
- package/farris.all.umd.cjs +11 -11
- 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/dynamic-form/src/component/dynamic-form-label/dynamic-form-label.component.d.ts +6 -0
- package/types/dynamic-form/src/component/dynamic-form-label/dynamic-form-label.props.d.ts +8 -0
- package/types/dynamic-form/src/composition/form-binding-resolver-design.d.ts +6 -0
- package/types/filter-bar/src/components/drawer.component.d.ts +4 -0
- package/types/filter-bar/src/components/filter-item/filter-item.component.d.ts +10 -0
- package/types/filter-bar/src/components/filter-item/filter-item.props.d.ts +3 -0
- package/types/filter-bar/src/components/filter-item-condition/filter-item-condition.component.d.ts +11 -0
- package/types/filter-bar/src/components/filter-item-condition/filter-item-condition.props.d.ts +3 -0
- package/types/filter-bar/src/composition/types.d.ts +2 -0
- package/types/filter-bar/src/composition/use-condition.d.ts +19 -0
- package/types/filter-bar/src/filter-bar.component.d.ts +2 -1
- package/types/filter-bar/src/types.d.ts +4 -6
- package/types/filter-bar/src/components/filter-item.component.d.ts +0 -5
- /package/types/filter-bar/src/components/{toolbar-component.d.ts → toolbar.component.d.ts} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(z,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("../search-box/index.umd.js"),require("../tags/index.umd.js"),require("../dynamic-form/index.umd.js"),require("../designer-canvas/index.umd.js"),require("../data-view/index.umd.js"),require("../common/index.umd.js"),require("../accordion/index.umd.js"),require("../avatar/index.umd.js"),require("../button-edit/index.umd.js"),require("../button-group/index.umd.js"),require("../calendar/index.umd.js"),require("../capsule/index.umd.js"),require("../color-picker/index.umd.js"),require("../combo-list/index.umd.js"),require("../content-container/index.umd.js"),require("../data-grid/index.umd.js"),require("../date-picker/index.umd.js"),require("../dropdown/index.umd.js"),require("../external-container/index.umd.js"),require("../events-editor/index.umd.js"),require("../image-cropper/index.umd.js"),require("../input-group/index.umd.js"),require("../layout/index.umd.js"),require("../list-nav/index.umd.js"),require("../list-view/index.umd.js"),require("../lookup/index.umd.js"),require("../nav/index.umd.js"),require("../number-spinner/index.umd.js"),require("../number-range/index.umd.js"),require("../page-header/index.umd.js"),require("../page-footer/index.umd.js"),require("../progress/index.umd.js"),require("../query-solution/index.umd.js"),require("../radio-group/index.umd.js"),require("../rate/index.umd.js"),require("../response-toolbar/index.umd.js"),require("../response-layout/index.umd.js"),require("../response-layout-editor/index.umd.js"),require("../section/index.umd.js"),require("../smoke-detector/index.umd.js"),require("../splitter/index.umd.js"),require("../step/index.umd.js"),require("../switch/index.umd.js"),require("../text/index.umd.js"),require("../time-picker/index.umd.js"),require("../tree-view/index.umd.js"),require("../uploader/index.umd.js"),require("../verify-detail/index.umd.js"),require("../component/index.umd.js"),require("../video/index.umd.js"),require("../textarea/index.umd.js"),require("../tree-grid/index.umd.js"),require("../binding-selector/index.umd.js"),require("../notify/index.umd.js"),require("../combo-tree/index.umd.js"),require("../field-selector/index.umd.js"),require("../mapping-editor/index.umd.js"),require("../schema-selector/index.umd.js"),require("../event-parameter/index.umd.js"),require("../dynamic-resolver/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","../search-box/index.umd.js","../tags/index.umd.js","../dynamic-form/index.umd.js","../designer-canvas/index.umd.js","../data-view/index.umd.js","../common/index.umd.js","../accordion/index.umd.js","../avatar/index.umd.js","../button-edit/index.umd.js","../button-group/index.umd.js","../calendar/index.umd.js","../capsule/index.umd.js","../color-picker/index.umd.js","../combo-list/index.umd.js","../content-container/index.umd.js","../data-grid/index.umd.js","../date-picker/index.umd.js","../dropdown/index.umd.js","../external-container/index.umd.js","../events-editor/index.umd.js","../image-cropper/index.umd.js","../input-group/index.umd.js","../layout/index.umd.js","../list-nav/index.umd.js","../list-view/index.umd.js","../lookup/index.umd.js","../nav/index.umd.js","../number-spinner/index.umd.js","../number-range/index.umd.js","../page-header/index.umd.js","../page-footer/index.umd.js","../progress/index.umd.js","../query-solution/index.umd.js","../radio-group/index.umd.js","../rate/index.umd.js","../response-toolbar/index.umd.js","../response-layout/index.umd.js","../response-layout-editor/index.umd.js","../section/index.umd.js","../smoke-detector/index.umd.js","../splitter/index.umd.js","../step/index.umd.js","../switch/index.umd.js","../text/index.umd.js","../time-picker/index.umd.js","../tree-view/index.umd.js","../uploader/index.umd.js","../verify-detail/index.umd.js","../component/index.umd.js","../video/index.umd.js","../textarea/index.umd.js","../tree-grid/index.umd.js","../binding-selector/index.umd.js","../notify/index.umd.js","../combo-tree/index.umd.js","../field-selector/index.umd.js","../mapping-editor/index.umd.js","../schema-selector/index.umd.js","../event-parameter/index.umd.js","../dynamic-resolver/index.umd.js","../popover/index.umd.js"],n):(z=typeof globalThis<"u"?globalThis:z||self,n(z["data-grid"]={},z.Vue,z.LodashES,z.BigNumber,z.VueUseCore,null,z.FTransfer$1,z.FTabs,z.FOrder,null,z.FCheckbox,z.FFilterBar,z.FPagination,z.FSearchBox,z.FTags,z.FDynamicForm,z.designerCanvas,z.dataView,z.common,z.FAccordion,z.FAvatar,z.FButtonEdit$1,z.FButtonGroup,z.FCalendar,z.FCapsule,z.FColorPicker,z.FComboList,z.FContentContainer,z.FDataGrid$1,z.FDatePicker,z.FDropdown,null,z.FEventsEditor,z.FImageCropper,z.FInputGroup,z.FLayout,z.FListNav,z.FListView$1,z.FLookup,z.FNav,z.FNumberSpinner,z.FNumberRange,z.FPageHeader,z.FPageFooter,z.FProgress,z.FQuerySolution,z.FRadioGroup,z.FRate,z.FResponseToolbar,z.FResponseLayout,z.FResponseLayoutEditorSetting,z.FSection,z.FSmokeDetector,z.FSplitter,z.FStep,z.FSwitch,z.FText,z.FTimePicker,z.FTreeview,z.FUploader,z.FVerifyDetail,z.FComponent,z.FVideo,z.FTextArea,z.FTreeGrid$1,z.FBindingSelector,null,z.FComboTree,z.FFieldSelector,z.FMappingEditor,z.FSchemaSelector,z.FEventParameter,z.dynamicResolver,z.FPopover))})(this,function(z,n,Ee,hs,Vt,gs,To,ko,Vo,ys,St,Io,No,Bo,Zt,Rt,en,X,xe,Oo,Eo,$o,jo,Po,Ro,Do,Dt,Ho,Ao,Lo,Go,vs,Wo,qo,zo,Uo,Yo,Xo,Ko,Qo,Jo,Zo,ei,ti,ni,oi,ii,ri,ai,li,si,ci,di,ui,fi,pi,mi,hi,tn,gi,yi,vi,bi,Ci,wi,Si,bs,xi,Fi,_i,Mi,Ti,nn,ki){"use strict";var ps=Object.defineProperty;var ms=(z,n,Ee)=>n in z?ps(z,n,{enumerable:!0,configurable:!0,writable:!0,value:Ee}):z[n]=Ee;var q=(z,n,Ee)=>ms(z,typeof n!="symbol"?n+"":n,Ee);const on={},rn={};function Ht(t){const{properties:e,title:o,ignore:i}=t,r=i&&Array.isArray(i),a=Object.keys(e).reduce((l,c)=>((!r||!i.find(s=>s===c))&&(l[c]=e[c].type==="object"&&e[c].properties?Ht(e[c]):Ee.cloneDeep(e[c].default)),l),{});if(o&&(!r||!i.find(l=>l==="id"))){const l=o.toLowerCase().replace(/-/g,"_");a.id=`${l}_${Math.random().toString().slice(2,6)}`}return a}function Vi(t){const{properties:e,title:o,required:i}=t;if(i&&Array.isArray(i)){const r=i.reduce((a,l)=>(a[l]=e[l].type==="object"&&e[l].properties?Ht(e[l]):Ee.cloneDeep(e[l].default),a),{});if(o&&i.find(a=>a==="id")){const a=o.toLowerCase().replace(/-/g,"_");r.id=`${a}_${Math.random().toString().slice(2,6)}`}return r}return{type:o}}function an(t,e={},o){const i=on[t];if(i){let r=Vi(i);const a=rn[t];return r=a?a({getSchemaByType:an},r,e,o):r,r}return null}function Ii(t,e){const o=Ht(e);return Object.keys(o).reduce((i,r)=>(Object.prototype.hasOwnProperty.call(t,r)&&(i[r]&&Ee.isPlainObject(i[r])&&Ee.isPlainObject(t[r]||!t[r])?Object.assign(i[r],t[r]||{}):i[r]=t[r]),i),o),o}function Ni(t,e){return Object.keys(t).filter(i=>t[i]!=null).reduce((i,r)=>{if(e.has(r)){const a=e.get(r);if(typeof a=="string")i[a]=t[r];else{const l=a(r,t[r],t);Object.assign(i,l)}}else i[r]=t[r];return i},{})}function Bi(t,e,o=new Map){const i=Ii(t,e);return Ni(i,o)}function Oi(t={}){function e(u,f,d,p){if(typeof d=="number")return p[u].length===d;if(typeof d=="object"){const y=Object.keys(d)[0],C=d[y];if(y==="not")return Number(p[u].length)!==Number(C);if(y==="moreThan")return Number(p[u].length)>=Number(C);if(y==="lessThan")return Number(p[u].length)<=Number(C)}return!1}function o(u,f,d,p){return p[u]&&p[u].propertyValue&&String(p[u].propertyValue.value)===String(d)}const i=new Map([["length",e],["getProperty",o]]);Object.keys(t).reduce((u,f)=>(u.set(f,t[f]),u),i);function r(u,f){const d=u;return typeof f=="number"?[{target:d,operator:"length",param:null,value:Number(f)}]:typeof f=="boolean"?[{target:d,operator:"getProperty",param:u,value:!!f}]:typeof f=="object"?Object.keys(f).map(p=>{if(p==="length")return{target:d,operator:"length",param:null,value:f[p]};const y=p,C=f[p];return{target:d,operator:"getProperty",param:y,value:C}}):[]}function a(u){return Object.keys(u).reduce((d,p)=>{const y=r(p,u[p]);return d.push(...y),d},[])}function l(u,f){if(i.has(u.operator)){const d=i.get(u.operator);return d&&d(u.target,u.param,u.value,f)||!1}return!1}function c(u,f){return a(u).reduce((y,C)=>y&&l(C,f),!0)}function s(u,f){const d=Object.keys(u),p=d.includes("allOf"),y=d.includes("anyOf"),C=p||y,g=(C?u[C?p?"allOf":"anyOf":"allOf"]:[u]).map(S=>c(S,f));return p?!g.includes(!1):g.includes(!0)}return{parseValueSchema:s}}const oe={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"}},Ei={},$i={};Oi();function We(t,e,o=new Map,i=(l,c,s,u)=>c,r={},a=l=>l){return on[e.title]=e,rn[e.title]=i,Ei[e.title]=r,$i[e.title]=a,(l={})=>{const c=Bi(l,e,o),s=Object.keys(t).reduce((u,f)=>(u[f]=t[f].default,u),{});return Object.assign(s,c)}}function ht(t,e){return{customClass:e.class,customStyle:e.style}}function ji(){function t(e,o){const{id:i}=e||{},{dataSource:r}=e||{};return r===void 0?{}:{data:o.getValue(i),"onUpdate:data":(...a)=>{}}}return{resolve:t}}function Pi(){function t(e,o){const{dataSource:i}=e||{};return i===void 0?{}:{}}return{resolve:t}}function Ri(){function t(e,o){return e.selectItemById(o)}return{selectItemById:t}}function Di(){function t(e,o){return e.selectItemById(o)}return{selectItemById:t}}function ln(){function t(e,o){const{columns:i}=o;return e.updateColumns(i)}return{updateColumns:t}}const sn=new Map([["appearance",ht],["column","columnOption"]]),cn=new Map([]);var dn=(t=>(t.SimpleField="SimpleField",t.ComplexField="ComplexField",t))(dn||{}),xt=(t=>(t.String="String",t.DateTime="DateTime",t.Date="Date",t.Enum="Enum",t.Boolean="Boolean",t.Number="Number",t.Text="Text",t.BigNumber="BigNumber",t))(xt||{});function un(){function t(){const o=i=>{const r=Math.random()*16|0;return(i==="x"?r:r&3|8).toString(16)};return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,o)}function e(o,i){const r="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".split(""),a=[];let l;if(i=i||r.length,o)for(l=0;l<o;l++)a[l]=r[0|Math.random()*i];else{let c;for(a[8]=a[13]=a[18]=a[23]="-",a[14]="4",l=0;l<36;l++)a[l]||(c=0|Math.random()*16,a[l]=r[l===19?c&3|8:c])}return a.join("")}return{guid:t,uuid:e}}const Hi=["moz","ms","webkit"];function Ai(){let t=0;return e=>{const o=new Date().getTime(),i=Math.max(0,16-(o-t)),r=setTimeout(()=>{e(o+i)},i);return t=o+i,r}}function Li(){if(typeof window>"u")return()=>0;if(window.requestAnimationFrame)return window.requestAnimationFrame.bind(window);const t=Hi.filter(e=>`${e}RequestAnimationFrame`in window)[0];return t?window[`${t}RequestAnimationFrame`]:Ai()}Li();const Gi="root-viewmodel";class Wi{constructor(e,o){q(this,"formSchemaUtils");q(this,"controlCreatorUtils");q(this,"designViewModelUtils");q(this,"useFormCommand");q(this,"formStateMachineUtils");this.resolver=e,this.designerHostService=o,this.formSchemaUtils=this.designerHostService.formSchemaUtils,this.controlCreatorUtils=this.designerHostService.controlCreatorUtils,this.designViewModelUtils=this.designerHostService.designViewModelUtils,this.useFormCommand=this.designerHostService.useFormCommand,this.formStateMachineUtils=this.designerHostService.formStateMachineUtils}createComponent(e){const o=this.createComponentRefNode(e),i=this.createComponentNode(e),r=this.createViewModeNode(e),a=this.formSchemaUtils.getFormSchema();return a.module.viewmodels.push(r),a.module.components.push(i),this.designViewModelUtils.assembleDesignViewModel(),this.wrapContainerSectionForComponent(o,e,r)}wrapContainerSectionForComponent(e,o,i){var c,s,u,f,d,p,y,C;const r=(s=(c=o==null?void 0:o.parentComponentInstance)==null?void 0:c.schema)==null?void 0:s.type,a=(f=(u=this.formSchemaUtils.getFormSchema())==null?void 0:u.module)==null?void 0:f.templateId;if(r===oe["splitter-pane"].type&&["double-list-template","tree-list-template"].includes(a))return e;const l=[oe["content-container"].type,oe["response-layout-item"].type,oe["splitter-pane"].type];if(r&&l.includes(r)){const I=this.resolver.getSchemaByType("section",{parentComponentInstance:o.parentComponentInstance,mainTitle:o.componentName},this.designerHostService);if(I&&I.contents&&I.contents.length){const M=I.contents[0];return M.contents=[e],this.appendAddDeleteBtnToParentContainer(M,o,i),I}}return this.appendAddDeleteBtnToParentContainer((d=o==null?void 0:o.parentComponentInstance)==null?void 0:d.schema,o,i),r===oe["tab-page"].type&&(p=o.parentComponentInstance)!=null&&p.parent&&(y=o.parentComponentInstance)!=null&&y.parent.updateToolbarItems&&((C=o.parentComponentInstance)==null||C.parent.updateToolbarItems()),e}appendAddDeleteBtnToParentContainer(e,o,i){const r=e.type,a=i.id.replace(/-/g,"").replace(/_/g,"").replace("component","").replace("viewmodel","");if(o.bindTo==="/"||o.componentType!=="data-grid"&&o.componentType!=="form")return;const l=this.formStateMachineUtils&&this.formStateMachineUtils.getRenderStates(),c=oe["tab-page"].type===r?"tab-toolbar-item":"section-toolbar-item",s=[{id:`button-add-${o.componentId}`,type:c,text:"新增",disabled:l.find(u=>u.id==="canAddDetail")?"!viewModel.stateMachine['canAddDetail']":!1,appearance:{class:"btn btn-secondary f-btn-ml"},onClick:`root-viewModel.${i.id}.${a}AddItem1`},{id:`button-remove-${o.componentId}`,type:c,text:"删除",disabled:l.find(u=>u.id==="canRemoveDetail")?"!viewModel.stateMachine['canRemoveDetail']":!1,appearance:{class:"btn btn-secondary f-btn-ml"},onClick:`root-viewModel.${i.id}.${a}RemoveItem1`}];e.toolbar||(e.toolbar={buttons:[]}),e.toolbar.buttons||(e.toolbar.buttons=[]),e.toolbar.buttons=e.toolbar.buttons.concat(s),this.appendAddAndDeleteCommands(i)}appendAddAndDeleteCommands(e){const o=e.id.replace(/-/g,"").replace(/_/g,"").replace("component","").replace("viewmodel",""),i=un().guid(),r=un().guid(),a=this.resolveCommandController();e.commands.push({id:i,code:`${o}AddItem1`,name:"增加一条子表数据",params:[],handlerName:"AddItem",cmpId:a,shortcut:{},extensions:[]},{id:r,code:`${o}RemoveItem1`,name:"删除一条子表数据",params:[{name:"id",shownName:"待删除子表数据的标识",value:`{DATA~${e.bindTo}/id}`}],handlerName:"RemoveItem",cmpId:a,shortcut:{},extensions:[]}),this.formSchemaUtils.getFormSchema().module.webcmds.find(s=>s.id===a).refedHandlers.push({host:i,handler:"AddItem"},{host:r,handler:"RemoveItem"})}resolveCommandController(){const e=this.formSchemaUtils.getFormSchema().module.webcmds,o=["8172a979-2c80-4637-ace7-b13074d3f393","8fe977a1-2b32-4f0f-a6b3-2657c4d03574","45be24f9-c1f7-44f7-b447-fe2ada458a61"],i=e.find(a=>o.includes(a.id));if(i)return i.id;const r="45be24f9-c1f7-44f7-b447-fe2ada458a61";return e.push({id:r,path:"/projects/packages/Inspur.GS.Gsp.Web.WebCmp/webcmd",name:"AdvancedListCardController.webcmd",refedHandlers:[]}),this.useFormCommand&&this.useFormCommand.checkCommands(),r}createComponentRefNode(e){const o=this.resolver.getSchemaByType("component-ref");return Object.assign(o,{id:`${e.componentId}-component-ref`,component:`${e.componentId}-component`}),o}createComponentNode(e){const o=this.resolver.getSchemaByType("component"),i=this.createDateGridComponentContents(e);return Object.assign(o,{id:`${e.componentId}-component`,viewModel:`${e.componentId}-component-viewmodel`,componentType:e.componentType,appearance:{class:this.getDataGridComponentClass()},contents:i}),o}createViewModeNode(e){return{id:`${e.componentId}-component-viewmodel`,code:`${e.componentId}-component-viewmodel`,name:e.componentName,bindTo:e.bindTo,parent:Gi,fields:this.assembleViewModelFields(e),commands:[],states:[],enableValidation:!0}}getDataGridComponentClass(){const{templateId:e}=this.formSchemaUtils.getFormSchema().module;return["double-list-in-tab-template","double-list-template","tree-list-template"].includes(e)?"f-struct-wrapper f-utils-fill-flex-column":"f-struct-is-subgrid"}createDateGridComponentContents(e){const{templateId:o}=this.formSchemaUtils.getFormSchema().module;let i;if(o==="double-list-in-tab-template"){const u=this.resolver.getSchemaByType("section");Object.assign(u,{id:e.componentId+"-section",appearance:{class:"f-section-grid f-section-in-main px-0 pt-0"},fill:!0,showHeader:!1}),i=u}else if(o==="double-list-template"||o==="tree-list-template"){const u=this.resolver.getSchemaByType("section");Object.assign(u,{id:e.componentId+"-section",appearance:{class:"f-section-grid f-section-in-main"},fill:!0,showHeader:!1}),i=u}else{const u=this.resolver.getSchemaByType("content-container");Object.assign(u,{id:e.componentId+"-container",appearance:{class:"f-grid-is-sub f-utils-flex-column"}}),i=u}const r=this.resolver.getSchemaByType("data-grid"),a=[],l=this.formStateMachineUtils&&this.formStateMachineUtils.getRenderStates(),c=e.bindTo==="/";Object.assign(r,{id:e.componentId+"-dataGrid",appearance:{class:"f-component-grid"},columns:a,fieldEditable:e.editable,dataSource:e.dataSource||"",editable:!c&&l.find(u=>u.id==="editable")?"viewModel.stateMachine['editable']":!1,pagination:{enable:!e.editable}}),i.contents=[r];const{selectedFields:s}=e;return s==null||s.forEach(u=>{if(u.$type===dn.ComplexField)return;const f=Ee.cloneDeep(u),d=this.controlCreatorUtils.setGridFieldProperty("data-grid-column",f,"",e.editable);d&&a.push(d)}),[i]}assembleViewModelFields(e){const o=[],{selectedFields:i}=e;return i==null||i.forEach(r=>{let a="blur";const l=r.type.name;(l===xt.Enum||l===xt.Boolean)&&(a="change"),o.push({type:"Form",id:r.id,fieldName:r.bindingField,groupId:null,groupName:null,updateOn:a,fieldSchema:{}})}),o}}function fn(t,e,o,i){var a,l,c,s,u,f,d;const r=o.parentComponentInstance;if(r&&i){const p=Math.random().toString(36).slice(2,6),y={componentId:`data-grid-${p}`,componentName:((a=o.bindingSourceContext)==null?void 0:a.entityTitle)||((c=(l=o.bindingSourceContext)==null?void 0:l.bindingEntity)==null?void 0:c.name)||`表格-${p}`,componentType:"data-grid",parentContainerId:r.schema.id,parentComponentInstance:r,editable:!0,bindTo:((s=o.bindingSourceContext)==null?void 0:s.bindTo)||"",dataSource:(f=(u=o.bindingSourceContext)==null?void 0:u.bindingEntity)==null?void 0:f.label,selectedFields:(d=o.bindingSourceContext)==null?void 0:d.bindingEntityFields};return new Wi(t,i).createComponent(y)}else return e}function pn(t,e,o){return e}const qi={$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},disabled:{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},showSelectAll:{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","columns"]};function zi(){function t(e,o){const i={};return i.beforeEditCell=r=>o.call("beforeEditCell",[r]),i}return{resolve:t}}const Ui={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},disabled:{type:Boolean,default:!1}},Yi={enable:{type:Boolean,default:!1},fields:{type:Array,default:[]},mode:{type:String,default:"client"},multiSort:{type:Boolean,default:!1}},Xi={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}},Qi={wrapHeadings:{type:Boolean,default:!1}},Ji={enable:{type:Boolean,default:!1},heading:{type:String,default:"序号"},width:{type:Number,default:36},showEllipsis:{type:Boolean,default:!0}},Zi={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}},er={enable:{type:Boolean,default:!1},customSummaryStyle:{type:Function,default:()=>{}},groupFields:{type:Array,default:[]},mode:{type:String,default:"client"},position:{type:String,default:"bottom"}},tr={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}},nr={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}},or={selectOnEditing:{type:Boolean,default:!1},editMode:{type:String,default:"cell"}},ir={show:{type:Boolean,default:!1},message:{type:String,default:"加载中..."}},It={appendOnEnterAtLastCell:{type:Boolean,default:!1},beforeEditCell:{type:Function,default:t=>!0},beforeEndEditCell:{type:Function,default:()=>!0},changePolicy:{type:String,default:"push"},columns:{type:Array,default:[]},columnOption:{type:Object},commandOption:{type:Object,default:{enable:!1,commands:[]}},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"}},enableCommands:{type:Boolean,default:!1},filter:{type:Object},fit:{type:Boolean,default:!1},focusOnEditingCell:{type:Boolean,default:!0},group:{type:Object},header:{type:Object},height:{type:Number,default:-1},id:{type:String,default:""},idField:{type:String,default:"id",require:!0},loading:{type:Boolean,default:!1},mergeCell:{type:Boolean,default:!1},minHeight:{type:Number,default:300},minWidth:{type:Number,default:400},newDataItem:{type:Function,default:()=>{}},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:[]},selectOnEditingCell:{type:Boolean,default:!1},showBorder:{type:Boolean,default:!1},showFooter:{type:Boolean,default:!1},showHeader:{type:Boolean,default:!0},showHorizontalLines:{type:Boolean,default:!0},showScrollBar:{type:String,default:"auto"},showSetting:{type:Boolean,default:!1},showStripe:{type:Boolean,default:!0},showVerticallLines:{type:Boolean,default:!1},sort:{type:Object},summary:{type:Object,default:{enable:!1,groupFields:["numericField1","numericField2"]}},virtualized:{type:Boolean,default:!0},width:{type:Number,default:-1}},mn=Object.assign({},It,{disabled:{},editable:{},componentId:{type:String,default:""}}),At=We(It,qi,sn,fn),hn=ji(),gn=Ri(),yn=ln(),vn=zi();var De=(t=>(t[t.readonly=0]="readonly",t[t.editable=1]="editable",t[t.editing=2]="editing",t))(De||{}),at=(t=>(t[t.initial=0]="initial",t[t.editing=1]="editing",t))(at||{}),gt=(t=>(t[t.data=0]="data",t[t.group=1]="group",t[t.summary=2]="summary",t))(gt||{}),qe=(t=>(t[t.none=0]="none",t[t.filterable=1]="filterable",t[t.sortable=2]="sortable",t[t.filtered=4]="filtered",t[t.sorted=8]="sorted",t[t.ascending=16]="ascending",t[t.descending=32]="descending",t))(qe||{}),Lt=(t=>(t.NONE="none",t.NUMBER="number",t.DATE="date",t.TEXT="boolean",t.IMAGE="boolean2",t.ENUM="enum",t.CUSTOM="custom",t))(Lt||{});function rr(t,e){var y;const o=String(Date.now()),i=((y=t.rowOption)==null?void 0:y.height)||28,r=n.ref(e.value.primaryColumnsWidth);function a(C){const I={};return C.reduce((M,g,v)=>{const S=v<C.length-1?C[v+1]:null;return v===0&&(M[g.field]={left:0}),g.actualWidth!==void 0&&(M[g.field].width=g.actualWidth),S&&(M[S.field]={left:M[g.field].left+(g.actualWidth||0)}),M},I),I}function l(C,I,M){const g=i*(M+1),S=I[C.field].left-g+(I[C.field].width||0),h=C.parent.height?`${C.parent.height}px`:"";return{left:`${g}px`,width:`${S}px`,height:`${h}`}}function c(C,I,M){return{right:"0px",height:`${C.parent.height?`${C.parent.height}px`:""}`}}function s(C,I){const M=C.parent.height?`${C.parent.height}px`:"";return{left:`${I[C.field].left}px`,height:`${M}`,width:isNaN(Number(I[C.field].width))?"100%":`${I[C.field].width}px`}}function u(C,I,M){const v=(I.spanned||[]).reduce((h,F)=>h+(F.parent.height||0),0)+(C.height||0);return{top:`${C.top}px`,left:`${M[I.field].left}px`,width:`${M[I.field].width}px`,height:`${v}px`,padding:`calc(${v/2}px - 1rem) 0`}}function f(C,I){return`${o}_${C.type}_r_${C.index}_c_${I}_${C.refreshKey||""}`}function d(C){return`${o}_${C.type}_r_${C.index}_${C.refreshKey||""}`}function p(C){const I=C.height?`${C.height}px`:"";return{top:`${C.top}px`,width:isNaN(r.value)?"100%":`${r.value}px`,height:`${I}`}}return n.watch(e,()=>{r.value=e.value.primaryColumnsWidth}),{calculateCellPositionInRow:a,cellKey:f,cellPosition:s,groupCellPosition:l,rowKey:d,rowPosition:p,rowSpanCellPosition:u,summaryCellPosition:c}}function ar(t,e,o){const{hasChildrenField:i}=o,r=n.ref("#9399a0"),a=n.ref(28);function l(){return[].concat(...e.value.filter(p=>p.raw.__fv_descendant_index__.length!==0).map(p=>[...p.raw.__fv_descendant_index__.slice(-1)]).flat()).sort((p,y)=>Number(p)-Number(y))}function c(f){const d=new Array(e.value.length).fill(0);if(t.showLines){const p=l();e.value.forEach((y,C)=>{const I=p.includes(C),M=y.raw[i.value];d[C]=`repeating-linear-gradient(90deg, ${r.value} 0 1px, transparent 0px 2px) ${M?"-10px":"0px"} ${a.value/2}px/20px 1px no-repeat,repeating-linear-gradient(${r.value} 0 1px, transparent 0px 2px) 0px 0px/1px ${I?"50%":"100%"} no-repeat`}),d[0]=""}return d[f]}function s(f,d,p){return p[f].parents.set(f,!0).forEach(C=>{p[C].childsLength=p[C].childWithLines.filter(I=>d[I].visible).length}),d}function u(f){const y=f.raw.__fv_parent_index__===void 0||f.raw.__fv_parent_index__===-1?0:8,C=0,I=f.raw[i.value],M=f.visible?{left:`${f.layer*10+f.layer*y+C}px`,background:c(f.index),display:"flex",width:"100%",position:"relative",paddingLeft:"0.75rem"}:{display:"none"};return I||(M.paddingLeft="2rem"),M}return{hierarchyCellContentStyle:u,handleCollapsedPaddingBottom:s}}function lr(t,e,o){const i=n.ref(t.iconField);function r(a,l){if(i.value)return a.raw[t.iconField];let c="";return a.raw[o.value]!==!0?c=e.value.leafnodes:c=a.collapse?e.value.fold:e.value.unfold,c}return{treeNodeIconsClass:r}}function sr(t,e,o,i,r,a,l,c){const{dataView:s,fold:u,hasRealChildren:f,unFold:d,reOrderVisibleIndex:p}=i,{collapseField:y,hasChildrenField:C}=r,{reCalculateVisualDataRows:I,updateVirticalScroll:M}=a;function g(h,F){var b,k;const N=F[h],m=N.__fv_parents__?(b=N.__fv_parents__)==null?void 0:b.size:0;let _=h+1;for(;_<F.length;){const w=F[_];if((w.__fv_parents__?(k=w.__fv_parents__)==null?void 0:k.size:0)>m)_++;else break}return _-1}function v(h,F){const N=s.value[h];N[y.value]=!N[y.value],N[C.value]=f(N);const m=N[y.value];let _=!1,b=h;for(;b<s.value.length;){const k=s.value[b];if((typeof k.__fv_parent_index__=="number"?Number(k.__fv_parent_index__):-1)>F)k.__fv_visible__=!m,k[y.value]&&(b=g(b,s.value)),_=!0;else if(_){b++;break}b++}p()}function S(h){if(h.raw[C.value]){const N=typeof h.raw.__fv_parent_index__=="number"?Number(h.raw.__fv_parent_index__):-1,m=Number(h.raw.__fv_index__);v(m,N),I(),M()}e.emit("expandNode",{row:h})}return{toggleTreeNode:S}}function cr(t,e,o,i,r,a,l,c,s,u,f,d,p){const{onClickCell:y}=a,{gridRowClass:C,onClickRow:I,onMouseoverRow:M,onMouseoutRow:g}=c,{enableMultiSelect:v,select:S,unSelect:h,selectItem:F}=s;n.ref(t.cellHeight);const N=n.ref(t.treeNodeIconsData||{}),{hasChildrenField:m,shouldShowCheckBox:_,shouldShowIcon:b}=l,{toggleTreeNode:k}=sr(t,e,i,r,l,f),{toggleSelectHierarchyItem:w}=u,{cellKey:x,cellPosition:T,rowKey:V,rowPosition:B}=rr(t,o),{hierarchyCellContentStyle:O}=ar(t,i,l),{treeNodeIconsClass:E}=lr(t,N,m);function $(A,U){const ye=A.raw[m.value];return{"fv-tree-node-toggle":ye&&A.collapse,"fv-tree-node-toggle-minus":ye&&!A.collapse}}function L(A,U){A.stopPropagation(),k(U)}function H(A,U){return n.createVNode("div",{class:$(A),onClick:ye=>L(ye,A)},null)}function Y(A,U){return b.value&&n.createVNode("div",{id:"treeNodeIcons",class:E(A,U)},null)}function J(A){v.value?(A.checked?S(A):h(A),w(A)):F(A)}function ne(A,U){return _.value&&n.createVNode(St.FCheckbox,{id:"checkbox_for_"+x(A,U.index),indeterminate:A.indeterminate,disabled:A.disabled,checked:A.checked,"onUpdate:checked":ye=>A.checked=ye,onChange:()=>J(A)},null)}function le(A,U){return n.createVNode("span",{title:U.data},[U.mode===De.editing?U.getEditor(U):U.formatter?U.formatter(U,A):U.data!=null?U.data.toString():U.data])}function R(A,U,ye){return n.createVNode("div",{ref:U.setRef,key:x(A,U.index),class:"fv-grid-hierarchy-cell",style:T(U,ye)},[n.createVNode("div",{style:O(A)},[H(A),Y(A,U),ne(A,U),le(A,U)])])}function Z(A,U,ye){return n.createVNode("div",{ref:U.setRef,key:x(A,U.index),class:"fv-grid-cell",style:T(U,ye),onClick:fe=>y(fe,U,A,U.column)},[e.slots.cellTemplate?e.slots.cellTemplate({cell:U,row:A}):U.mode===De.editing?U.getEditor(U):U.formatter?U.formatter(U,A):U.data!=null?U.data.toString():U.data])}function ue(A,U){return U==="left"&&o.value.leftColumns.length>0&&o.value.leftColumns[0].field===A.field||U==="primary"&&o.value.primaryColumns.length>0&&o.value.primaryColumns[0].field===A.field}function ee(A,U,ye="primary"){return n.createVNode("div",{ref:A.setRef,key:V(A),class:C(A),style:B(A),onMouseover:fe=>M(fe,A),onMouseout:fe=>g(fe,A),onClick:fe=>I(fe,A)},[Object.values(A.data).filter(fe=>U[fe.field]&&fe.rowSpan===1).map(fe=>ue(fe,ye)?R(A,fe,U):Z(A,fe,U))])}return{renderDataRow:ee}}function bn(t,e,o){const{horizontalScrollThumbStyle:i,onMouseDownScrollThumb:r,shouldShowHorizontalScrollbar:a}=o;function l(){return a.value&&n.createVNode("div",{class:"fv-grid-horizontal-scroll"},[n.createVNode("div",{class:"fv-grid-horizontal-scroll-thumb",style:i.value,onMousedown:c=>r(c,e,"horizontal")},null)])}return{renderHorizontalScrollbar:l}}function dr(){function t(i,r){switch(i.command){case"edit":case"remove":return r.status===at.initial;case"accept":case"cancel":return r.status===at.editing;default:return!i.hidden}}function e(i,r,a){switch(i.onClick(r,a.dataIndex,a),i.command){case"edit":a.status,at.editing;break;case"accept":case"cancel":a.status,at.initial;break}}function o(i,r){return n.createVNode("div",null,[i.commands&&i.commands.map(a=>t(a,r)&&n.createVNode(n.resolveComponent("f-button"),{class:"ml-2",type:a.type,size:a.size||"small",onClick:l=>e(a,l,r)},{default:()=>[n.createTextVNode(" "),a.text,n.createTextVNode(" ")]}))])}return{renderCommandColumn:o}}function Cn(t){const e=n.ref(t.minHeight),o=n.ref(t.minWidth),i=n.ref(t.height),r=n.ref(t.width),a=n.computed(()=>i.value<=0?0:Math.max(i.value,e.value)),l=n.computed(()=>r.value<=0?0:Math.max(r.value,o.value));return n.watch([()=>t.height,()=>t.width,()=>t.minHeight,()=>t.minWidth],([s,u,f,d])=>{e.value=Number(f),o.value=Number(d),i.value=Number(s),r.value=Number(u)}),{containerStyleObject:n.computed(()=>({height:a.value>0?`${a.value}px`:t.fit?"100%":"",width:l.value>0?`${l.value}px`:t.fit?"100%":"",flex:"1 1 0"}))}}const ur="";function wn(t){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 r(){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 a=n.ref(t.summary),l=n.computed(()=>{const S=a.value;return(S==null?void 0:S.groupFields)||[]});function c(){i.value.rightColumns.forEach(F=>{F.showSetting=!1}),i.value.primaryColumns.forEach(F=>{F.showSetting=!1});const S=i.value.rightColumns.filter(F=>F.visible),h=i.value.primaryColumns.filter(F=>F.visible);S.length>0?S[S.length-1].showSetting=!0:h.length>0&&(h[h.length-1].showSetting=!0)}function s(S){r();const h=new Map;return l.value&&l.value.reduce((F,N)=>(F.set(N,!0),F),h),S.reduce((F,N)=>(N.visible=N.visible!==!1,N.filter=N.filter||ur,N.fixed==="left"?(i.value.leftColumns.push(N),i.value.leftColumnsMap.set(N.field,N),i.value.leftColumnsWidth+=N.actualWidth):N.fixed==="right"?(i.value.rightColumns.push(N),i.value.rightColumnsMap.set(N.field,N),i.value.rightColumnsWidth+=N.actualWidth):(i.value.primaryColumns.push(N),i.value.primaryColumnsMap.set(N.field,N),i.value.primaryColumnsWidth+=N.actualWidth),h.has(N.field)&&i.value.summaryColumns.push(N),F),i),c(),i}s(t.columns);const u=n.computed(()=>i.value.leftColumns.length>0),f=n.computed(()=>i.value.rightColumns.length>0);function d(S,h){return h.sortable&&h.sort&&h.sort!=="none"&&S.push(h),S}function p(S,h){return S.sortOrder=S.sortOrder||0,h.sortOrder=h.sortOrder||0,S.sortOrder===h.sortOrder?0:S.sortOrder<h.sortOrder?-1:1}function y(S,h){return S.sortOrder=S.sortOrder||0,h.sortOrder=h.sortOrder||0,S.sortOrder===h.sortOrder?0:S.sortOrder<h.sortOrder?1:-1}function C(S,h){return h.filterable&&S.push(h),S}function I(){const S=[];return i.value.leftColumns.reduce(C,S),i.value.primaryColumns.reduce(C,S),i.value.rightColumns.reduce(C,S),S}function M(){const S=[];i.value.leftColumns.reduce(d,S),i.value.primaryColumns.reduce(d,S),i.value.rightColumns.reduce(d,S);const h=Math.max(...S.map(F=>F.sortOrder||0));return S.sort(y).map(F=>{const N=F.sortOrder||h+1;return F.sortOrder=N,F}).sort(p).map((F,N)=>{const m=N+1;return F.sortOrder=m,F})}function g(S,h,F){const N=S.map(m=>{const _=F.getSorterByColumn(m),b=m.sort==="asc",k=m.sort==="desc",w=b?_.ascend:k?_.decend:void 0;return{field:m.field,compare:w}});h.setSorters(N)}function v(S,h){const F=M();g(F,S,h)}return{applyColumnSorter:v,collectionFilterableColumns:I,applySortableColumns:g,collectionSortableColumns:M,columnContext:i,hasLeftFixedColumn:u,hasRightFixedColumn:f,updateColumnRenderContext:s,updateColumnSettingIcon:c}}n.ref([{name:"七天",selectable:!0},{name:"一个月",selectable:!0},{name:"三个月",selectable:!0},{name:"半年",selectable:!0}]);function Sn(t){const o=n.ref(t.commandOption.enable||!1),i=n.ref(t.commandOption.commands||[]);function r(a){if(o.value&&!(a.value.findIndex(c=>c.dataType==="commands")>-1)){const c={field:"__commands__",title:"操作",width:120,fixed:"right",dataType:"commands",commands:i.value,visible:!0};a.value.push(c)}}return{applyCommands:r}}function xn(t,e){var u;const o=n.ref((u=t.columnOption)==null?void 0:u.groups);function i(f,d,p,y,C){const I={actualWidth:0,children:[],depth:1,field:f.field,layer:1,left:0,parent:p,resizable:!0,title:f.title||"",status:qe.none,popoverRef:n.ref(),showPopover:!1,column:null,sortType:"none"},M=y||I;if(f.group){let g=1;f.group.reduce((v,S)=>{if(typeof S=="string"){const h=d.get(S);h&&(C.fieldToRootMap.set(S,M),v.actualWidth+=h.actualWidth,v.children.push(h))}else{const h=i(S,d,v,M,C);g=Math.max(g,h.depth),v.actualWidth+=h.actualWidth,v.children.push(h)}return v},I),I.depth+=g}return e.value.headerDepth=Math.max(e.value.headerDepth,I.depth),I}function r(f){const d={groupedCells:new Map,fieldToRootMap:new Map};return o.value&&o.value.reduce((p,y)=>{const C=i(y,f,null,null,d);return p.groupedCells.set(y.field,C),p},d),d}function a(f){if(!f||f.length===0)return 0;const d=f[0];return d.children&&d.children.length>0&&(d.left=a(d.children)),d.left}function l(f,d){const p=e.value.headerDepth;f.forEach(y=>{y.layer=d?d.layer+1:1;const C=y.children&&y.children.length===0;y.depth=C?p-(y.layer-1):1,y.left=C?y.left:a(y.children),y.children&&l(y.children,y)})}function c(f,d){const p=new Map;return f.forEach(y=>{const C=d.fieldToRootMap.get(y.field),I=C!=null;I&&!p.has(C.field)&&p.set(C.field,C),I||p.set(y.field,y)}),l(Array.from(p.values())),p}function s(f){let d=new Map,p=0;if(f.reduce((y,C)=>{let I=qe.none;I=C.filterable?I|qe.filterable:I,I=C.sort&&C.sort!=="none"?I|qe.sorted|(C.sort==="asc"?qe.ascending:qe.descending):I;const M=C.field;return y.set(M,{actualWidth:C.actualWidth||0,children:[],depth:1,layer:1,left:p,field:M,parent:null,resizable:C.resizable===void 0?!0:C.resizable,title:C.title,status:I,popoverRef:n.ref(),showPopover:!1,column:C,filterValue:null,sortType:C.sort||"none",showSetting:C.showSetting}),p+=C.actualWidth||0,y},d),o.value){const y=r(d);d=c(d,y)}return d}return{getGridHeaderCells:s}}function fr(t,e){var g;const{idField:o}=e,i=n.ref(t.summary),r=n.ref(t.group),a=n.ref(((g=t.group)==null?void 0:g.groupFields)||[]),l=n.computed(()=>{var v;return(v=t.group)==null?void 0:v.enable}),c=n.computed(()=>{var v;return(v=t.group)==null?void 0:v.showGroupPanel}),s=n.computed(()=>{const v=i.value;return(v==null?void 0:v.groupFields)||[]}),u=n.computed(()=>{const v=r.value;return v&&v.showSummary}),f=new Map;let d=[];function p(v,S,h,F,N){const m=F[h];m&&(S.reduce((_,b,k)=>{var T;const w=b[m];let x=_.get(w);if(!x){const V=s.value.reduce((B,O)=>(B.set(O,0),B),new Map);x={field:m,title:((T=N.get(m))==null?void 0:T.title)||m,value:w,layer:h,details:[],groupSummaries:V},_.set(w,x)}return s.value&&s.value.forEach(V=>{if(x){const B=x.groupSummaries.get(V)||0;x.groupSummaries.set(V,B+b[V])}}),x.details.push(b),_},v),h<F.length-1&&v.forEach((_,b)=>{_.nestGroup=new Map,p(_.nestGroup,_.details,h+1,F,N),_.details=[]}))}function y(v,S){return t.group&&t.group.formatter?t.group.formatter(v.value,{...v,total:S}):`${v.title}:${v.value} (${S})`}function C(v){const S=[];return v.forEach(h=>{const F={__fv_data_grid_group_collapse__:!1,__fv_data_grid_group_field__:h.field,__fv_data_grid_group_layer__:h.layer,__fv_data_grid_group_row__:!0,__fv_data_grid_group_value__:h.value};let N=0;if(S.push(F),h.nestGroup){const m=C(h.nestGroup);S.push(...m),N+=m.length}if(h.details&&h.details.length&&(S.push(...h.details),N+=h.details.length),u.value){const m={__fv_data_grid_group_field__:h.field,__fv_data_grid_group_layer__:h.layer,__fv_data_grid_group_summary__:!0};m[o.value]=`summary_of_${h.field}_${h.value}`,m[h.field]=Array.from(h.groupSummaries.entries()).reduce((_,[b,k])=>`${_} ${b} total:${k} `,""),S.push(m)}h.groupSummaries&&h.groupSummaries.size&&h.groupSummaries.forEach((m,_)=>{F[_]=m}),F[o.value]=`group_of_${h.field}_${h.value}`,F[h.field]=y(h,N)}),S.forEach((h,F)=>{h.__fv_data_index__=F}),S}function I(v,S,h){return!v||v.length===0||!S.length?S:(v.join(","),f.clear(),d=[],S=S.filter(F=>!F.__fv_data_grid_group_row__),p(f,S,0,v,h),d=C(f),d)}function M(v){return{"f-icon":!0,"f-icon-arrow-chevron-down":!0,"fv-grid-group-row-icon-collapse":v.collapse}}return{collpaseGroupIconClass:M,generateGroupData:I,groupFields:a,shouldGroupingData:l,showGroupPanel:c}}function pr(t,e,o,i){const r=n.ref(!!t.hierarchy),{idField:a}=i,{collapseField:l,hasChildrenField:c,parentIdField:s}=o,u=new Map;function f(x,T){const V=new Map;return x.reduce((B,O)=>{const E=O[s.value]!==void 0?O[s.value]:"";if(E&&T.has(E)){const L=T.get(E);O.__fv_parent_index__=L.__fv_index__,L.__fv_hasChildren__=!0}const $=B.has(E)?B.get(E):[];return $.push(O),B.set(E,$),B},V),V}function d(x){const T=new Map;return x.reduce((V,B)=>{const O=B[a.value];return V.set(O,B),V},T),T}function p(x){x.forEach(T=>{const V=T[a.value];T.__fv_children_index__.map(O=>x[O]).forEach(O=>{O.__fv_parents__=new Map([...T.__fv_parents__.entries(),[V,!0]])})})}function y(x){x.forEach(T=>{const V=new Set(T.__fv_children_index__);T.__fv_children_index__=[...V].sort((B,O)=>B-O)})}function C(x,T){x.forEach(V=>{const B=V.__fv_parents__;Array.from(B.keys()).map(O=>T.get(O)).forEach(O=>{O.__fv_children_index__.push(V.__fv_index__)})}),y(x)}function I(x){x.forEach(T=>{T.__fv_child_with_lines__=[],T.__fv_child_length__=T.__fv_descendant_index__.length,T.__fv_descendant_index__.map(V=>x[V]).reduce((V,B)=>(V.__fv_child_length__+=B.__fv_children_index__.length,V.__fv_child_with_lines__.push(...B.__fv_children_index__,B.__fv_index__),V),T)})}function M(x,T){return{id:x,index:T,parentId:"",parentIndex:-1,parents:new Map,children:new Map,descendant:new Map}}function g(x,T){Array.from(T.keys()).forEach(V=>{T.get(V).reduce((O,E)=>{const $=E[a.value],L=x.get(E[a.value]),H=x.get(V);return H&&(H.children.set($,L),H.children.set($,L),L.parentId=V,L.parentIndex=H.index,L.parents.set(V,H)),O},x)})}function v(x){x.children.forEach(V=>{V.parents=new Map([...x.parents.entries(),[x.id,x]]),v(V)})}function S(x,T){x.filter(V=>V[s.value]===void 0||V[s.value]==="").forEach(V=>{const B=V[a.value],O=T.get(B);v(O)})}function h(x){Array.from(x.values()).forEach(T=>{Array.from(T.parents.values()).forEach(V=>{V.descendant.set(T.id,T)})})}function F(x){u.clear(),x.forEach((B,O)=>{const E=B[a.value];u.set(E,M(E,O))});const T=d(x),V=f(x,T);return g(u,V),S(x,u),h(u),u}function N(x){const T=x[a.value],V=u.get(T);return V&&V.children.size>0}function m(x){return x[c.value]&&!N(x)}function _(x){F(e.value);const T=d(x),V=f(x,T);return x.forEach((B,O)=>{var H;const E=B[a.value],$=V.has(E)?(H=V.get(E))==null?void 0:H.map(Y=>Y.__fv_index__):[],L=M(E,O);B.__fv_graph_node__=L,B.__fv_children_index__=$,B.__fv_descendant_index__=[...$],B.__fv_parents__=new Map,m(B)&&(B[l.value]=!0)}),p(x),C(x,T),t.showLines&&I(x),x}function b(x,T,V){const O=V.value[x][a.value],E=u.get(O);if(E){const $=u.get(E.parentId);let L=V.value.length-1;if($){const H=Array.from($.children.keys()).indexOf(E.id);if(H===$.children.size-1){const J=Array.from($.descendant.values())[$.descendant.size-1];L=V.value.findIndex(le=>le[a.value]===J.id)+1}else{const J=Array.from($.children.values())[H+1];L=V.value.findIndex(le=>le[a.value]===J.id)}T[c.value]=!1,T[s.value]=$.id,V.value.splice(L,0,T)}}}function k(x,T,V){const B=V.value[x],O=B[a.value];if(u.get(O)){const L=V.value.findIndex(H=>H[a.value]===O)+1;B[c.value]=!0,B[l.value]=!1,T[c.value]=!1,T[s.value]=O,V.value.splice(L,0,T)}}function w(x,T){const V=x[a.value],B=u.get(V),O=Array.from(B.descendant.keys());O.unshift(V);const E=u.get(B.parentId);if(E&&(E.children.delete(V),E.children.size===0)){const L=T.find(H=>H[a.value]===B.parentId);L[c.value]=!1,L[l.value]=!1}return T.filter(L=>O.indexOf(L.id)===-1)}return{generateHierarchyData:_,hasRealChildren:N,insertSibling:b,insertChild:k,shouldStratifyData:r,trimmedOriginalData:w}}const mr={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}},hr={showCloseButton:{type:Boolean,default:!0},animate:{type:String,default:"fadeIn"},options:{type:Object}},Gt=n.defineComponent({name:"Toast",props:hr,emits:["close","click"],setup:(t,e)=>{const o=n.ref(t.animate),i="fadeOut",r=n.computed(()=>t.options),a=n.ref(!1),l=n.computed(()=>{const g={animated:a.value,toast:!0};return g[t.animate]=!1,g[i]=a.value,g[r.value.type]=!0,r.value.theme&&(g[r.value.theme]=!0),g}),c=n.computed(()=>{const S=`f-icon-${r.value&&r.value.type?r.value.type.replace("toasty-type-",""):"default"}`,h={"f-icon":!0};return h[S]=!0,h}),s=n.computed(()=>r.value.title||r.value.message),u=n.computed(()=>r.value.title&&r.value.message),f=n.computed(()=>!r.value.title&&r.value.message),d=n.computed(()=>t.showCloseButton),p=n.computed(()=>!!r.value.buttons||!!e.slots.default);function y(g){g.stopPropagation(),g.preventDefault(),a.value=!1,setTimeout(()=>{e.emit("close",r.value)},200)}function C(g,v){}function I(g){return`f-preten-link ${g.customClass?g.customClass:""}`}n.watch(o,()=>{o.value});const M=()=>{var g;return n.createVNode(n.Fragment,null,[n.createVNode("div",{class:"after-toast-msg text-right"},[!e.slots.default&&((g=r.value.buttons)==null?void 0:g.map(v=>n.createVNode("span",{class:I(v),onClick:S=>void 0},[v.text]))),e.slots.default&&e.slots.default()])])};return()=>n.createVNode("div",{class:l.value},[d.value&&n.createVNode("button",{title:"close",class:"toast-close f-btn-icon f-bare",onClick:y},[n.createVNode("span",{class:"f-icon modal_close"},null)]),s.value&&n.createVNode("section",{class:"modal-tips"},[n.createVNode("div",{class:"float-left modal-tips-iconwrap"},[n.createVNode("span",{class:c.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:r.value.title},null),n.createVNode("p",{class:"toast-msg",innerHTML:r.value.message},null),p.value&&M()]),f.value&&(r.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:r.value.message},null),n.createVNode("div",{class:"after-toast-title text-right ml-auto"},[M()])]):n.createVNode("h5",{class:"toast-title modal-tips-title only-toast-msg",innerHTML:r.value.message},null))])])])}}),Nt=n.defineComponent({name:"Notify",props:mr,emits:["close","empty"],setup(t,e){const o=n.computed(()=>({"farris-notify":!0})),i={left:12,right:12,top:20,bottom:12},r=n.ref(),a=n.ref(t.options),l=n.ref(t.showCloseButton),c=n.computed(()=>t.position||"bottom-right"),s=n.computed(()=>t.timeout!=null?t.timeout:3e3),u=n.computed(()=>{const p=t.bottom?t.bottom:i.bottom,y=t.top?t.top:i.top,C={transition:"all 0.2s ease",left:c.value.indexOf("left")>-1?`${t.left?t.left:i.left}px`:"",right:c.value.indexOf("right")>-1?`${t.right?t.right:i.right}px`:"",top:c.value.indexOf("top")>-1?`${y}px`:"",bottom:c.value.indexOf("bottom")>-1?`${p}px`:""};return c.value.indexOf("center")>-1&&(C.left="50%",C.marginLeft="calc(-24rem / 2)",c.value==="center-center"&&(C.top="50%",C.transform="translate(-50%, -50%)")),C});function f(p){e.emit("close")}s.value&&setTimeout(()=>{f()},s.value),e.expose({closeToast:f,container:r,notifyPosition:c});function d(p,y){f()}return()=>n.createVNode("div",{class:o.value,style:u.value,ref:r},[n.createVNode(Gt,{options:a.value,showCloseButton:l.value,animate:t.animate,onClose:p=>d(p,a.value)},null)])}});class Fn{constructor(){q(this,"notifyRefs",[]);q(this,"globalConfig",n.reactive({}))}createNotifyInstance(e){const o=this,r=Object.assign({timeout:3e3,position:"bottom-right",showCloseButton:!0},this.globalConfig,{...e}),a=document.createElement("div");a.style.display="contents";const l=n.createApp({setup(){const c=n.ref();function s(){c.value.container.style.transform="scale(0)",setTimeout(()=>{o.updateNotifyPositionForClose(r,c),l.unmount()},220)}if(r.position.indexOf("top")>-1){const u=o.getNotifyInstances(r.position),f=u[u.length-1];if(f){const d=f.value.container.getBoundingClientRect();r.top=d.bottom}}return n.onUnmounted(()=>{document.body.removeChild(a)}),n.onMounted(()=>{o.updateNotifyPositionForCreate(r,c)}),()=>n.createVNode(n.Transition,{mode:"out-in",name:"fade",appear:!0},{default:()=>[n.createVNode(Nt,n.mergeProps({ref:c},r,{onClose:s}),null)]})}});return l.provide("NotifyService",this),document.body.appendChild(a),l.mount(a),l}getNotifyInstances(e){return this.notifyRefs.filter(o=>o.value.notifyPosition===e)}updateNotifyPositionForCreate(e,o){if(this.notifyRefs&&this.notifyRefs.length){const i=window.innerHeight;e.position.indexOf("bottom")>-1&&this.getNotifyInstances(e.position).forEach(r=>{const a=r.value.container.getBoundingClientRect();r.value.container.style.bottom=a.height+i-a.bottom+"px"})}this.notifyRefs=[...this.notifyRefs,o]}updateNotifyPositionForClose(e,o){const i=this.notifyRefs.indexOf(o);if(e.position.indexOf("top")>-1){const r=this.getNotifyInstances(e.position),a=r.indexOf(o);r.slice(a+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(e){return this.createNotifyInstance(e)}buildNotifyProps(e,o){let i="",r="",a,l,c;typeof o=="string"?i=o:o&&(i=o.message||"",r=o.title||"",l=o.position||null,c=o.showCloseButton!=null?o.showCloseButton:null,a=o.timeout!=null?o.timeout:null);const u={options:{type:e,message:i,title:r}};return l!=null&&(u.position=l),c!=null&&(u.showCloseButton=c),a!=null&&(u.timeout=a),u}info(e){const o=this.buildNotifyProps("info",e);return this.show(o)}success(e){const o=this.buildNotifyProps("success",e);return this.show(o)}warning(e){const o=this.buildNotifyProps("warning",e);return this.show(o)}error(e){const o=this.buildNotifyProps("error",e);return this.show(o)}close(e){e&&e.unmount()}closeAll(){this.notifyRefs.forEach(e=>{e==null||e.value.closeToast()}),this.notifyRefs.length=0}}const gr=Symbol("NOTIFY_SERVICE_TOKEN");Nt.install=t=>{t.component(Nt.name,Nt),t.component(Gt.name,Gt);const e=new Fn;t.provide(gr,e),t.provide("FNotifyService",e)};function _n(t,e,o,i,r){var it;const a=new Map,l=new Map,c=new Map,s=new Map,u=new Map,f=n.ref([]),d=n.ref([]),p=fr(t,r),{generateGroupData:y,groupFields:C,shouldGroupingData:I}=p,M=n.ref(t.data),g=pr(t,M,i,r),{generateHierarchyData:v,hasRealChildren:S,insertSibling:h,insertChild:F,shouldStratifyData:N,trimmedOriginalData:m}=g,{idField:_,reviseIdentifyField:b}=r,k=n.ref(t.newDataItem),w=n.ref(t.data||[]),x=n.ref(t.data),{flatTreeData:T}=Xa(t);function V(P){return T(P)}if(t.data&&((it=t.data[0])!=null&&it.children)){const P=V(t.data);M.value=P,w.value=P,x.value=P}const B=n.ref(t.summary),O=n.computed(()=>{const P=B.value;return(P==null?void 0:P.groupFields)||[]});let E=new Map;const $=n.ref(w.value.length),L=n.ref(t.pagination);function H(){return L.value&&L.value.enable&&L.value.size>0?L.value.size:w.value.length}const Y=n.ref(1),J=n.computed(()=>L.value&&L.value.enable&&L.value.mode==="client"),ne=new Fn;function le(){var Be;w.value=M.value,J.value&&($.value=w.value.length),I.value&&(w.value=y(C.value,M.value,e)),E=O.value.reduce((Fe,Te)=>(Fe.set(Te,0),Fe),E);const P=0,W=H(),K=(Y.value-1)*W,be=K>w.value.length-1?P:K,Oe=Math.min(be+W,w.value.length);let Ne=0;const Ce=[];if(w.value.length){b(w.value);const Fe=_.value!==t.idField;for(let Te=be;Te<Oe;Te++){const ke=w.value[Te];ke.__fv_data_grid_group_row__?(Ne=0,ke.__fv_data_index__=""):ke.__fv_data_grid_group_summary__?ke.__fv_data_index__="":(Ne++,ke.__fv_data_index__=Ne+(Y.value-1)*W),ke.__fv_index__=Te,ke.__fv_visible_index__=Te,t.rowOption&&t.rowOption.disabledField&&(ke.__fv_disabled__=ke[(Be=t.rowOption)==null?void 0:Be.disabledField]),Fe&&(ke[_.value]=Te),O.value.forEach(Le=>{const mt=E.get(Le)||0;E.set(Le,mt+ke[Le])}),Ce.push(ke)}}return N.value&&v(Ce),x.value=[...Ce],Ce}const R=n.ref(le()),Z=n.computed(()=>R.value.filter(P=>P.__fv_visible__!==!1));function ue(){Z.value.forEach((P,W)=>(P.__fv_visible_index__=W,P))}function ee(P,W,K=!1){const be=(K?le():[...x.value]).filter(Ce=>o.apply(Ce)),Oe=P&&P.length?be.filter(Ce=>P.reduce((Be,Fe)=>Be&&Fe.filter(Ce),!0)):be,Ne=W&&W.length?Oe.sort((Ce,Be)=>{const Fe=[...W],Te=Fe.shift();let ke=Te.compare(Ce[Te.field],Be[Te.field]);for(;ke===0&&Fe.length!==0;){const Le=Fe.shift();Le&&(ke=Le.compare(Ce[Le.field],Be[Le.field]))}return ke}):Oe;return R.value=Ne.map((Ce,Be)=>{if(Ce.__fv_data_grid_group_row__){const Fe=`group_of_${Ce.__fv_data_grid_group_field__}_${Ce.__fv_data_grid_group_value__}`;Ce.__fv_data_grid_group_collapse__=!!a.get(Fe)}return Ce.__fv_index__=Be,Ce.__fv_visible_index__=Be,Ce}),R.value}function A(P){return u.clear(),d.value=P,d.value.reduce((W,K)=>(W.set(K.field,K),W),u),ee([],d.value)}function U(P,W){return u.set(P,W),d.value=Array.from(u.values()),ee([],d.value)}function ye(P){return u.delete(P),d.value=Array.from(u.values()),ee([],d.value)}function fe(P,W){return l.set(P,W),f.value=Array.from(l.values()),ee([],Array.from(u.values()))}function je(P){return l.delete(P),f.value=Array.from(l.values()),ee([],Array.from(u.values()),!0)}function Pe(){return l.clear(),f.value=[],ee([],Array.from(u.values()),!0)}function _e(P,W){const K=`group_of_${P}_${W}`;a.set(K,!0);const me=be=>be[P]!==W;return c.set(`collapse_${P}_${W}`,{field:P,fieldName:P,fieldType:"string",filterValue:W,filter:me}),ee(Array.from(c.values()),Array.from(u.values()))}function Se(P,W){const K=`group_of_${P}_${W}`;return a.set(K,!1),c.delete(`collapse_${P}_${W}`),ee(Array.from(c.values()),Array.from(u.values()),!0)}function Ve(P){const W=P.raw[_.value],K=me=>!me.__fv_parents__.has(W);s.set(`fold_${W}`,{field:"id",fieldName:"id",fieldType:"string",filterValue:String(W),filter:K}),ee(Array.from(s.values()),Array.from(u.values())),v(R.value)}function Re(P){const W=P[_.value];s.delete(`fold_${W}`)}function Ie(P){Re(P.raw),ee(Array.from(s.values()),Array.from(u.values()),!0),v(R.value)}function pe(){const P=le();R.value=P,t.hierarchy&&(ee(Array.from(s.values()),Array.from(u.values())),v(R.value))}function j(P){const K=P&&P.length&&P[0].children?V(P):P;M.value=K,pe()}function ie(P,W,K){return(P&&P.length?R.value.filter((be,Oe)=>P.reduce((Ne,Ce)=>Ne&&Ce.filter(be),!0)):R.value).slice(W,K)}function te(P){const W=H(),K=P*W;0<K&&K<=$.value&&(Y.value=P,pe())}function ge(P){M.value.push(Ee.cloneDeep(P)),R.value=le()}function Me(P=0){if(!(P>-1))return!1;const K=k.value();t.hierarchy?h(P,K,M):M.value.splice(P,0,K),pe()}function Ae(P=0){if(!(P>-1&&t.hierarchy))return!1;const K=k.value(),me=M.value[P];Re(me),F(P,K,M),pe()}function ze(P){const W=P?P-1:0;M.value.splice(W,1),pe()}function Ue(P){const W=M.value.findIndex(K=>K[_.value]===P);W!==-1&&(M.value.splice(W,1),pe())}function Je(P){const W=P>-1?M.value[P]:null;if(!(W&&W.deletable!==!1))return!1;M.value=m(W,M.value),pe()}function Ze(){const P=c.size>0?Array.from(c.values()):[];return ee(P,Array.from(u.values()))}function Ke(P){L.value&&(L.value.size=P,pe())}function nt(P,W){const K=M.value[Number(P)-1];K.editable!==!1?(K.name=W,pe()):ne.show({showCloseButton:!1,timeout:3e3,animate:"fadeIn",toasts:[{type:"string",title:"提示",msg:"当前节点禁止编辑"}]})}function ot(P){return P.map(K=>{const me=x.value.findIndex(be=>be[_.value]===K);return me>-1?x.value[me]:null}).filter(K=>K!=null)}return{addFilter:fe,addNewDataItem:ge,addSorter:U,changePageSizeTo:Ke,collapse:_e,dataView:R,editDataItem:nt,expand:Se,filters:f,fold:Ve,getRange:ie,getSelectionItems:ot,hasRealChildren:S,insertNewChildDataItem:Ae,insertNewDataItem:Me,load:j,navigatePageTo:te,pageIndex:Y,rawView:x,refresh:Ze,removeAllFilter:Pe,removeDataItem:ze,removeDataItemById:Ue,removeFilter:je,removeHierarchyDataItem:Je,removeSorter:ye,reOrderVisibleIndex:ue,setSorters:A,sorters:d,summaries:E,totalItems:$,unFold:Ie,updateDataView:pe,visibleDataItems:Z}}const Mn={conditions:{type:Array,default:[]},fields:{type:Array,default:[]},key:{type:String,default:""},isControlInline:{type:Boolean,default:!0}};class Tn{constructor(e={value:[]}){q(this,"editorType","check-box");q(this,"value");q(this,"valueType","boolean");const i=(Array.isArray(e.value)?e.value:typeof e.value=="string"?e.value.split(","):[]).map(r=>JSON.parse(r));this.value=i}clear(){this.value=[]}setValue(e){this.value=e}getValue(){return this.value}getDisplayText(){return this.value.map(e=>e?"是":"否").join(",")}isEmpty(){return this.value.length===0}}class kn{constructor(e={textValue:"",value:"",valueField:""}){q(this,"editorType","combo-lookup");q(this,"textValue");q(this,"value");q(this,"valueField");q(this,"valueType","text");this.textValue=e.textValue,this.value=e.value,this.valueField=e.valueField}clear(){this.value="",this.valueField="",this.textValue=""}getPropValue(e,o){if(o.length>1){const i=o.shift();return e[i]?this.getPropValue(e[i],o):null}return e[o[0]]}getTextValue(e){const o=e.split("."),i=this.value.split(",").map(r=>this.getPropValue(r,Ee.cloneDeep(o)));return i&&i.length?i.join(","):""}getValue(){const e=this.valueField.split("."),o=this.value.split(",").map(i=>this.getPropValue(i,Ee.cloneDeep(e)));return o&&o.length?o.join(","):""}getDisplayText(){return this.getValue()}setValue(e){throw new Error("Method not implemented.")}isEmpty(){return!this.valueField}}class Vn{constructor(e={value:""}){q(this,"editorType","date-picker");q(this,"value");q(this,"valueType","datetime");this.value=e.value}setValue(e){this.value=e.formatted}getValue(){return this.value}getDisplayText(){return this.getValue()}isEmpty(){return!this.value}clear(){this.value=void 0}}class Bt{constructor(e={begin:"",end:""}){q(this,"editorType","date-range");q(this,"begin","");q(this,"end","");q(this,"valueType","datetime");this.begin=e.begin,this.end=e.end}clear(){this.begin="",this.end=""}getValue(){return!this.begin||!this.end?"":`${this.begin}~${this.end}`}getDisplayText(){return this.getValue()}setValue(e){e.dataRange?(this.begin=e.dataRange.split(e.delimiter)[0],this.end=e.dataRange.split(e.delimiter)[1]):this.clear()}isEmpty(){return!this.begin||!this.end}}class In{constructor(e={value:""}){q(this,"editorType","datetime-picker");q(this,"value");q(this,"valueType","datetime");this.value=e.value}clear(){this.value=void 0}getValue(){return this.value}getDisplayText(){return this.getValue()}setValue(e){this.value=e.formatted}isEmpty(){return!this.value}}class Nn{constructor(e={value:""}){q(this,"editorType","combo-list");q(this,"value");q(this,"valueType","enum");this.value=e.value}clear(){this.value=[]}getValue(){return this.value}getDisplayText(){return this.value.map(e=>e.name).join(",")}setValue(e){this.value=e.value}isEmpty(){return!this.value&&this.value!==!1}}class yr{constructor(e={value:[],displayText:"",displayField:"",isInputText:!1}){q(this,"editorType","input-group");q(this,"value");q(this,"valueType","text");q(this,"displayText");q(this,"valueField");q(this,"isInputText");this.value=e.value,this.displayText=e.displayText,this.valueField=e.displayField,this.isInputText=e.isInputText}clear(){this.value=[],this.displayText="",this.valueField=""}getPropValue(e,o){if(o.length>1){const i=o.shift();return e[i]?this.getPropValue(e[i],o):""}return e[o[0]]}getTextValue(e){const o=e.split("."),i=this.value.map(r=>this.getPropValue(r,Ee.cloneDeep(o)));return i&&i.length?i.join(","):""}getValue(){const e=this.valueField.split(".")||[],o=this.value.map(i=>this.getPropValue(i,Ee.cloneDeep(e)));return o&&o.length?o.join(","):""}getDisplayText(){return this.getValue()}setValue(e){throw new Error("Method not implemented.")}isEmpty(){return!this.displayText&&!this.value.length}}class Bn{constructor(e={mapFields:[],value:"",valueField:"",isInputText:!1}){q(this,"editorType","lookup");q(this,"idValue");q(this,"mapFields");q(this,"value");q(this,"valueField");q(this,"valueType","text");q(this,"isInputText");this.value=e.value,this.valueField=e.valueField,this.mapFields=e.mapFields,this.idValue=e.mapFields.map(o=>o.id).join(","),this.isInputText=e.isInputText}clear(){this.value="",this.idValue="",this.mapFields=[]}getValue(){return this.mapFields.map(e=>e[this.valueField||"id"]).join(",")}getDisplayText(){return this.getValue()}setValue(e){throw new Error("Method not implemented.")}isEmpty(){return!this.mapFields.length}}class On{constructor(e={value:""}){q(this,"editorType","month-picker");q(this,"value");q(this,"valueType","datetime");this.value=e.value}setValue(e){this.value=e.formatted}getValue(){return this.value}getDisplayText(){return this.getValue()}clear(){this.value=void 0}isEmpty(){return!this.value}}class En{constructor(e={begin:"",end:""}){q(this,"editorType","month-range");q(this,"begin");q(this,"end");q(this,"valueType","datetime");this.begin=e.begin,this.end=e.end}clear(){this.begin="",this.end=""}getValue(){return!this.begin||!this.end?"":`${this.begin}~${this.end}`}getDisplayText(){return this.getValue()}setValue(e){e.dataRange?(this.begin=e.dataRange.split(e.delimiter)[0],this.end=e.dataRange.split(e.delimiter)[1]):this.clear()}isEmpty(){return!this.begin||!this.end}}class $n{constructor(e={begin:null,end:null}){q(this,"editorType","number-range");q(this,"begin");q(this,"end");q(this,"valueType","number");this.begin=e.begin==null?null:parseFloat(e.begin),this.end=e.end==null?null:parseFloat(e.end)}clear(){this.begin=null,this.end=null}getValue(){return{begin:this.begin,end:this.end}}getDisplayText(){return this.getValue()}setValue(e){this.begin=e.begin==null?null:parseFloat(e.begin),this.end=e.end==null?null:parseFloat(e.end)}isEmpty(){return this.begin==null&&this.end==null}}class jn{constructor(e={value:""}){q(this,"editorType","number-spinner");q(this,"value");q(this,"valueType","number");this.value=e.value==null?null:parseFloat(e.value)}clear(){this.value=null}getValue(){return this.value}getDisplayText(){return this.getValue()}setValue(e){this.value=isNaN(parseFloat(e))?null:e}isEmpty(){return this.value==null||isNaN(this.value)}}class Pn{constructor(e={value:null}){q(this,"editorType","radio-group");q(this,"value");q(this,"valueType","enum");this.value=e.value}clear(){this.value=void 0}getValue(){return this.value}getDisplayText(){return this.getValue()}setValue(e){this.value=e}isEmpty(){return!this.value}}class Ot{constructor(e={value:""}){q(this,"editorType","text");q(this,"value");q(this,"valueType","text");this.value=e.value}clear(){this.value=void 0}getValue(){return this.value}getDisplayText(){return this.getValue()}setValue(e){this.value=e}isEmpty(){return!this.value}}function Rn(){function t(e,o){switch(e){case"check-box":return new Tn(o);case"combo-list":return new Nn(o);case"combo-lookup":return new kn(o);case"input-group":return new yr(o);case"date-picker":return new Vn(o);case"date-range":return new Bt(o);case"datetime-picker":return new In(o);case"datetime-range":return new Bt(o);case"lookup":return new Bn(o);case"month-picker":return new On(o);case"month-range":return new En(o);case"number-range":return new $n(o);case"number-spinner":return new jn(o);case"radio-group":return new Pn(o);default:return new Ot(o)}}return{createConditionValue:t}}function Dn(t,e){const o=n.ref(t.fields),i=n.ref([]),r=new Map,{createConditionValue:a}=Rn();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 c(f){return f.map(p=>Object.assign({},p)).map(p=>(p.editor=l(p),p))}function s(f=!0){o.value.reduce((d,p)=>(f||(p.editor=l(p)),d.set(p.labelCode,p),d),r)}function u(f){return f.forEach(d=>{if(d){const p=r.get(d.fieldCode);d.value=a(p.editor.type,d.value)}}),f}return{convertToSingleControl:c,fields:o,fieldMap:r,fieldConditions:i,loadFieldConfigs:s,initialConditionValue:u}}function vr(t,e,o){const i=n.ref(null),r=n.ref(o),a=n.ref(0);function l(f,d){let p=null;return function(){const y=arguments;p?(clearTimeout(p),p=setTimeout(()=>{p=null,f(...y)},200)):(f(...y),p=setTimeout(()=>{p=null},200))}}function c(){r.value&&(i.value=new ResizeObserver(l(f=>{const d=f[0];a.value=d.contentRect.width})),i.value.observe(r.value))}function s(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(()=>s(a.value));return n.watch([o],([f])=>{r.value=f,c()}),{conditionClass:u,resizeObserver:i}}const Hn=n.defineComponent({name:"FConditionFields",props:Mn,emits:["valueChange","blur","focus","click","input"],setup(t,e){const o=n.ref(),i=n.ref(t.key);n.ref(t.isControlInline);const r=n.ref(t.conditions),a=Dn(t),{initialConditionValue:l,fieldMap:c,loadFieldConfigs:s}=a,u=vr(t,e,o),{conditionClass:f,resizeObserver:d}=u;s(!0),l(r.value),n.onBeforeUnmount(()=>{var M;(M=d.value)==null||M.unobserve(o.value)}),n.watch(()=>t.conditions,()=>{r.value=t.conditions,l(r.value)});const p=n.computed(()=>({"f-utils-flex-row-wrap":!0,"farris-form":!0,"farris-form-controls-inline":t.isControlInline})),y=n.computed(()=>"col-12 col-md-6 col-xl-3 col-el-2 ");function C(M,g){e.emit("valueChange",M,g)}function I(){return r.value.map(M=>{var S,h,F,N;const g=(S=c.get(M.fieldCode))==null?void 0:S.editor;let v=!0;return((h=M.value)==null?void 0:h.editorType)==="lookup"&&g?(g.idValue=M.value.idValue,g.onClear=()=>{M.value.idValue="",M.value.mapFields=[],C("",M)},g["onUpdate:dataMapping"]=m=>{M.value.mapFields=m.items,C(M.value.getValue(),M)},v=!1):((F=M.value)==null?void 0:F.editorType)==="number-range"&&g&&(g.beginValue=M.value.begin,g.onBeginValueChange=m=>{M.value.begin=m,C(m,M)},g.endValue=M.value.end,g.onEndValueChange=m=>{M.value.end=m,C(m,M)},v=!1),n.createVNode(Rt.FDynamicFormGroup,{customClass:((N=g==null?void 0:g.appearance)==null?void 0:N.class)||y.value,label:M.fieldName,editor:g,required:g==null?void 0:g.required,modelValue:M.value.value,"onUpdate:modelValue":m=>M.value.value=m,onChange:m=>{v&&C(m,M)}},null)})}return()=>n.withDirectives(n.createVNode("div",{class:p.value,key:i.value,ref:o},[I()]),[[n.resolveDirective("area-response")]])}}),Wt=new Map([["appearance",ht]]),br=new Map([]),Cr="root-viewmodel";class wr{constructor(e,o){q(this,"formSchemaUtils");q(this,"controlCreatorUtils");q(this,"designViewModelUtils");this.resolver=e,this.designerHostService=o,this.formSchemaUtils=this.designerHostService.formSchemaUtils,this.controlCreatorUtils=this.designerHostService.controlCreatorUtils,this.designViewModelUtils=this.designerHostService.designViewModelUtils}createComponent(e){const o=this.createComponentRefNode(e),i=this.createComponentNode(e),r=this.createViewModeNode(e),a=this.formSchemaUtils.getFormSchema();return a.module.viewmodels.push(r),a.module.components.push(i),this.designViewModelUtils.assembleDesignViewModel(),o}createComponentRefNode(e){const o=this.resolver.getSchemaByType("component-ref");return Object.assign(o,{id:`${e.componentId}-component-ref`,component:`${e.componentId}-component`}),o}createComponentNode(e){const o=this.resolver.getSchemaByType("component"),i=this.createFormComponentContents(e);return Object.assign(o,{id:`${e.componentId}-component`,viewModel:`${e.componentId}-component-viewmodel`,componentType:e.componentType,appearance:{class:this.getFormComponentClass()},formColumns:e.formColumns,contents:i}),o}getFormComponentClass(){const{templateId:e}=this.formSchemaUtils.getFormSchema().module;return e==="double-list-in-tab-template"?"f-struct-wrapper f-utils-fill-flex-column":"f-struct-wrapper"}createFormComponentContents(e){const o=this.resolver.getSchemaByType("section");Object.assign(o,{id:e.componentId+"-form-section",appearance:{class:"f-section-form f-section-in-mainsubcard"},mainTitle:e.componentName});const i=this.resolver.getSchemaByType("response-form"),r=[];Object.assign(i,{id:e.componentId+"-form",appearance:{class:"f-form-layout farris-form farris-form-controls-inline"},contents:r}),o.contents=[i];const{selectedFields:a}=e;a==null||a.forEach(c=>{const s=Ee.cloneDeep(c),u=this.resolveControlClassByFormColumns(e),f=this.controlCreatorUtils.setFormFieldProperty(s,"",u);f&&r.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(e){let o="";switch(e.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(e){return{id:`${e.componentId}-component-viewmodel`,code:`${e.componentId}-component-viewmodel`,name:e.componentName,bindTo:e.bindTo,parent:Cr,fields:this.assembleViewModelFields(e),commands:[],states:[],enableValidation:!0}}assembleViewModelFields(e){const o=[],{selectedFields:i}=e;return i==null||i.forEach(r=>{let a="blur";const l=r.type.name;(l===xt.Enum||l===xt.Boolean)&&(a="change"),o.push({type:"Form",id:r.id,fieldName:r.bindingField,groupId:null,groupName:null,updateOn:a,fieldSchema:{}})}),o}}function Sr(t,e,o,i){var a,l,c,s,u,f;const r=o.parentComponentInstance;if(r&&i){const d=(a=r.schema)==null?void 0:a.type,y={componentId:`form-${Math.random().toString(36).slice(2,6)}`,componentName:((l=o.bindingSourceContext)==null?void 0:l.entityTitle)||((s=(c=o.bindingSourceContext)==null?void 0:c.bindingEntity)==null?void 0:s.name)||"标题",componentType:"form",formColumns:d==="splitter-pane"?1:4,parentContainerId:r.schema.id,bindTo:((u=o.bindingSourceContext)==null?void 0:u.bindTo)||"/",selectedFields:(f=o.bindingSourceContext)==null?void 0:f.bindingEntityFields};return new wr(t,i).createComponent(y)}else return e}function xr(t,e,o){return e}We({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","contents"]},Wt,Sr);const An={$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",default:null},label:{description:"",type:"string",default:""},lableWidth:{description:"",type:"number"},binding:{description:"",type:"object",default:{}}},required:["id","type","editor"]},Ln={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"}};We(Ln,An,Wt,void 0);function qt(t,e,o){var N;const i=o&&o.getStyles&&o.getStyles()||"",r=o&&o.getDesignerClass&&o.getDesignerClass()||"",a=n.ref();function l(){return(e==null?void 0:e.schema.componentType)==="frame"?!1:o&&o.checkCanMoveComponent?o.checkCanMoveComponent():!0}function c(){return!1}function s(){return(e==null?void 0:e.schema.componentType)==="frame"?!1:o&&o.checkCanDeleteComponent?o.checkCanDeleteComponent():!0}function u(){return(e==null?void 0:e.schema.componentType)==="frame"?!0:o&&o.hideNestedPaddingInDesginerView?o.hideNestedPaddingInDesginerView():!1}function f(m){if(!m||!m.value)return null;if(m.value.schema&&m.value.schema.type==="component")return m.value;const _=n.ref(m==null?void 0:m.value.parent),b=f(_);return b||null}function d(m=e){var w;const{componentInstance:_,designerItemElementRef:b}=m;if(!_||!_.value)return null;const{getCustomButtons:k}=_.value;return _.value.canMove||k&&((w=k())!=null&&w.length)?b:d(m.parent)}function p(m){return!!o&&o.canAccepts(m)}function y(){return(e==null?void 0:e.schema.label)||(e==null?void 0:e.schema.title)||(e==null?void 0:e.schema.name)}function C(){}function I(m,_){!m||!_||o!=null&&o.onAcceptMovedChildElement&&o.onAcceptMovedChildElement(m,_)}function M(m,_){const{componentType:b}=m;let k=an(b,m,_);o&&o.onResolveNewComponentSchema&&(k=o.onResolveNewComponentSchema(m,k));const w=b.toLowerCase().replace(/-/g,"_");return k&&!k.id&&k.type===b&&(k.id=`${w}_${Math.random().toString().slice(2,6)}`),k}function g(m){}function v(...m){if(o&&o.getPropsConfig)return o.getPropsConfig(...m)}function S(){o&&o.onRemoveComponent&&o.onRemoveComponent(),e!=null&&e.schema.contents&&e.schema.contents.map(m=>{let _=m.id;m.type==="component-ref"&&(_=m.component);const b=t.value.querySelectorAll(`#${_}-design-item`);b!=null&&b.length&&Array.from(b).map(k=>{var w;(w=k==null?void 0:k.componentInstance)!=null&&w.value.onRemoveComponent&&k.componentInstance.value.onRemoveComponent()})})}function h(){if(o&&o.getCustomButtons)return o.getCustomButtons()}function F(m){if(o&&o.onPropertyChanged)return o.onPropertyChanged(m)}return a.value={canMove:l(),canSelectParent:c(),canDelete:s(),canNested:!u(),contents:e==null?void 0:e.schema.contents,elementRef:t,parent:(N=e==null?void 0:e.parent)==null?void 0:N.componentInstance,schema:e==null?void 0:e.schema,styles:i,designerClass:r,canAccepts:p,getBelongedComponentInstance:f,getDraggableDesignItemElement:d,getDraggingDisplayText:y,getPropConfig:v,getDragScopeElement:C,onAcceptMovedChildElement:I,onChildElementMovedOut:g,addNewChildComponentSchema:M,triggerBelongedComponentToMoveWhenMoved:!!o&&o.triggerBelongedComponentToMoveWhenMoved||n.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:!!o&&o.triggerBelongedComponentToDeleteWhenDeleted||n.ref(!1),onRemoveComponent:S,getCustomButtons:h,onPropertyChanged:F},a}class Et{constructor(e,o){q(this,"componentId");q(this,"viewModelId");q(this,"eventsEditorUtils");q(this,"formSchemaUtils");q(this,"formMetadataConverter");q(this,"designViewModelUtils");q(this,"designViewModelField");q(this,"controlCreatorUtils");q(this,"designerHostService");q(this,"schemaService",null);q(this,"metadataService",null);q(this,"propertyConfig",{type:"object",categories:{}});var i;this.componentId=e,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(e))||"",this.designViewModelUtils=o.designViewModelUtils,this.controlCreatorUtils=o.controlCreatorUtils,this.metadataService=o.metadataService,this.schemaService=o.schemaService}getTableInfo(){var e;return(e=this.schemaService)==null?void 0:e.getTableInfoByViewModelId(this.viewModelId)}setDesignViewModelField(e){var i;const o=e.binding&&e.binding.type==="Form"&&e.binding.field;if(o){if(!this.designViewModelField){const r=this.designViewModelUtils.getDgViewModel(this.viewModelId);this.designViewModelField=r.fields.find(a=>a.id===o)}e.updateOn=(i=this.designViewModelField)==null?void 0:i.updateOn}}getBasicPropConfig(e){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",editable:!1,data:[{value:e.type,name:oe[e.type].name}]}}}}}getAppearanceConfig(e=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(e,o){const i=o&&o.parent&&o.parent.schema;if(!i)return;const r=i.contents.findIndex(l=>l.id===e),a=Ee.cloneDeep(i.contents[r]);i.contents.splice(r,1),i.contents.splice(r,0,a)}}class Fr{constructor(){q(this,"label","");q(this,"id","");q(this,"columnInSM",12);q(this,"columnInMD",6);q(this,"columnInLG",3);q(this,"columnInEL",2);q(this,"displayWidthInSM",1);q(this,"displayWidthInMD",1);q(this,"displayWidthInLG",1);q(this,"displayWidthInEL",1);q(this,"displayColumnCountAtBreakPoint","md");q(this,"tagRow",0);q(this,"showTopBorder",0);q(this,"group",1);q(this,"isSupportedClass",!0);q(this,"fieldSetId","")}}function _r(t){let e,o;const i=new Map;let r=[];function a(f,d){const y=f.split(" ").filter(v=>v.startsWith("col-"));if(y.length===0){d.isSupportedClass=!1;return}let C=y.find(v=>/^col-([1-9]|10|11|12)$/.test(v)),I=y.find(v=>/^col-md-([1-9]|10|11|12)$/.test(v)),M=y.find(v=>/^col-xl-([1-9]|10|11|12)$/.test(v)),g=y.find(v=>/^col-el-([1-9]|10|11|12)$/.test(v));C=C||"col-12",d.columnInSM=parseInt(C.replace("col-",""),10),d.displayWidthInSM=d.columnInSM/12,d.displayWidthInSM!==1&&(d.isSupportedClass=!1),I=I||"col-md-"+d.columnInSM,d.columnInMD=parseInt(I.replace("col-md-",""),10),d.displayWidthInMD=d.columnInMD/6,[1,2].includes(d.displayWidthInMD)||(d.isSupportedClass=!1),M=M||"col-xl-"+d.columnInMD,d.columnInLG=parseInt(M.replace("col-xl-",""),10),d.displayWidthInLG=d.columnInLG/3,[1,2,3,4].includes(d.displayWidthInLG)||(d.isSupportedClass=!1),g=g||"col-el-"+d.columnInLG,d.columnInEL=parseInt(g.replace("col-el-",""),10),d.displayWidthInEL=d.columnInEL/2,[1,2,3,4,5,6].includes(d.displayWidthInEL)||(d.isSupportedClass=!1)}function l(f,d,p,y=!1){let C=!1;f.contents.forEach(I=>{if(I.type==="fieldset"){p+=1,l(I,d,p,!0),C=!0;return}C&&(p+=1,C=!1);const M=I.appearance&&I.appearance.class,g=new Fr;M?a(M,g):g.isSupportedClass=!1,g.label=I.label||I.id,g.id=I.id,g.group=p,y&&(g.fieldSetId=f.id),o===I.id&&(e=p),i.set(I.id,I),d.push(g)})}function c(f){const d=t.getComponentById(f);if(!d||!d.componentType||!d.componentType.startsWith("form"))return{result:!1,message:"只可以在响应式表单组件中调整响应式布局配置"};const p=t.selectNode(d,y=>y.type===en.DgControl["response-form"].type);return!p||!p.contents||p.contents.length===0?{result:!1,message:"Form区域内没有控件,请先添加控件"}:{result:!0,message:"",formNode:p}}function s(f,d){d=d||f.id;const{result:p,message:y,formNode:C}=c(d);if(!p)return{result:p,message:y};o=f.id,r=[],i.clear();const I=C.contents[0].type===en.DgControl.fieldset.type?0:1;l(C,r,I);const M=r.find(v=>!v.isSupportedClass);return{defaultState:{defaultGroupNumber:e||1,model:M?"customize":"standard"},importData:r}}function u(f,d){d=d;const{result:p,formNode:y}=c(d);if(!p)return"";const C=[];return f.forEach(I=>{var v;const M=i.get(I.id),g=M.appearance&&M.appearance.class;if(g){const h=g.split(" ").filter(k=>!k.startsWith("col-")),F="col-"+I.columnInSM,N="col-md-"+I.columnInMD,m="col-xl-"+I.columnInLG,_="col-el-"+I.columnInEL,b=[F,N,m,_].concat(h);M.appearance.class=b.join(" ")}if(I.fieldSetId){const S=y.contents.find(F=>F.id===I.fieldSetId),h=C.find(F=>F.id===I.fieldSetId);h?(v=h.contents)==null||v.push(M):(C.push(S),S.contents=[M])}else C.push(M)}),y.contents=C,y.id}return{checkCanFindFormNode:c,checkCanOpenLayoutEditor:s,changeFormControlsByResponseLayoutConfig:u,getResonseFormLayoutConfig:l}}const Ft=n.ref(0);function Mr(t,e){const o=e.getBoundingClientRect(),i=t.getBoundingClientRect(),r=i.top>=o.top,a=i.top<=o.bottom;return r&&a}function Tr(t){const e=t.querySelector(".component-btn-group");if(!e)return;e.style.display="";const o=e.getBoundingClientRect(),i=e.querySelector("div");if(i){const r=i.getBoundingClientRect();i.style.top=o.top+"px";let a=o.left-r.width;const l=document.querySelector(".editorDiv");if(l){const c=l.getBoundingClientRect();a<c.left&&({left:a}=t.getBoundingClientRect())}i.style.left=a+"px"}}function kr(t){if(!window.scrollContainerList)return;const e=Array.from(window.scrollContainerList);if(e.length&&e.length===1){const o=e[0],i=document.querySelector(`[id=${o}]`);if(i&&i.contains(t))return i}}function Gn(t){if(!t)return;const e=t.getBoundingClientRect();if(e.width===0&&e.height===0)return;const o=t.querySelector(".component-btn-group");if(o){let i=!0;const r=kr(t);if(r&&(i=Mr(t,r)),!i){o.style.display="none";return}Tr(t)}}function Vr(t){if(!t)return;let e;t.className.includes("dgComponentSelected")?e=t:e=t.querySelector(".dgComponentSelected"),e&&Gn(e)}var ut=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function $t(t){throw new Error('Could not dynamically require "'+t+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var Ir={exports:{}};(function(t,e){(function(o){t.exports=o()})(function(){return function(){function o(i,r,a){function l(u,f){if(!r[u]){if(!i[u]){var d=typeof $t=="function"&&$t;if(!f&&d)return d(u,!0);if(c)return c(u,!0);var p=new Error("Cannot find module '"+u+"'");throw p.code="MODULE_NOT_FOUND",p}var y=r[u]={exports:{}};i[u][0].call(y.exports,function(C){var I=i[u][1][C];return l(I||C)},y,y.exports,o,i,r,a)}return r[u].exports}for(var c=typeof $t=="function"&&$t,s=0;s<a.length;s++)l(a[s]);return l}return o}()({1:[function(o,i,r){var a={},l="(?:^|\\s)",c="(?:\\s|$)";function s(d){var p=a[d];return p?p.lastIndex=0:a[d]=p=new RegExp(l+d+c,"g"),p}function u(d,p){var y=d.className;y.length?s(p).test(y)||(d.className+=" "+p):d.className=p}function f(d,p){d.className=d.className.replace(s(p)," ").trim()}i.exports={add:u,rm:f}},{}],2:[function(o,i,r){(function(a){var l=o("contra/emitter"),c=o("crossvent"),s=o("./classes"),u=document,f=u.documentElement;function d(w,x){var T=arguments.length;T===1&&Array.isArray(w)===!1&&(x=w,w=[]);var V,B,O,E,$,L,H,Y,J,ne=null,le,R,Z=!1,ue=0,ee,A=x||{};A.moves===void 0&&(A.moves=v),A.accepts===void 0&&(A.accepts=v),A.invalid===void 0&&(A.invalid=te),A.containers===void 0&&(A.containers=w||[]),A.isContainer===void 0&&(A.isContainer=g),A.copy===void 0&&(A.copy=!1),A.copySortSource===void 0&&(A.copySortSource=!1),A.revertOnSpill===void 0&&(A.revertOnSpill=!1),A.removeOnSpill===void 0&&(A.removeOnSpill=!1),A.direction===void 0&&(A.direction="vertical"),A.ignoreInputTextSelection===void 0&&(A.ignoreInputTextSelection=!0),A.mirrorContainer===void 0&&(A.mirrorContainer=u.body);var U=l({containers:A.containers,start:j,end:ge,cancel:Je,remove:Ue,destroy:_e,canMove:pe,dragging:!1});return A.removeOnSpill===!0&&U.on("over",P).on("out",W),fe(),U;function ye(D){return U.containers.indexOf(D)!==-1||A.isContainer(D)}function fe(D){var G=D?"remove":"add";C(f,G,"mousedown",Ve),C(f,G,"mouseup",Ae)}function je(D){var G=D?"remove":"add";C(f,G,"mousemove",Re)}function Pe(D){var G=D?"remove":"add";c[G](f,"selectstart",Se),c[G](f,"click",Se)}function _e(){fe(!0),Ae({})}function Se(D){le&&D.preventDefault()}function Ve(D){E=D.clientX,$=D.clientY;var G=I(D)!==1||D.metaKey||D.ctrlKey;if(!G){var Q=D.target,de=Ie(Q);de&&(le=de,je(),D.type==="mousedown"&&(N(Q)?Q.focus():D.preventDefault()))}}function Re(D){if(le){if(I(D)===0){Ae({});return}if(!(D.clientX!==void 0&&Math.abs(D.clientX-E)<=(A.slideFactorX||0)&&D.clientY!==void 0&&Math.abs(D.clientY-$)<=(A.slideFactorY||0))){if(A.ignoreInputTextSelection){var G=k("clientX",D)||0,Q=k("clientY",D)||0,de=u.elementFromPoint(G,Q);if(N(de))return}var ve=le;je(!0),Pe(),ge(),ie(ve),s.add(Y||O,"gu-transit"),me(),K(),ue=0,ot(D)}}}function Ie(D){if(!(U.dragging&&V)&&!ye(D)){for(var G=D;F(D)&&ye(F(D))===!1;)if(A.invalid(D,G)||(D=F(D),!D))return;var Q=F(D);if(Q&&!A.invalid(D,G)){var de=A.moves(D,Q,G,_(D));if(de)return{item:D,source:Q}}}}function pe(D){return!!Ie(D)}function j(D){var G=Ie(D);G&&ie(G)}function ie(D){mt(D.item,D.source)&&(Y=D.item.cloneNode(!0),U.emit("cloned",Y,D.item,"copy")),B=D.source,O=D.item,L=H=_(D.item),U.dragging=!0,U.emit("drag",O,B)}function te(){return!1}function ge(){if(U.dragging){var D=Y||O;ze(D,F(D))}}function Me(){le=!1,je(!0),Pe(!0)}function Ae(D){if(Me(),!!U.dragging){var G=Y||O,Q=k("clientX",D)||0,de=k("clientY",D)||0,ve=M(V,Q,de),we=nt(ve,Q,de);we&&(Y&&A.copySortSource||!Y||we!==B)?ze(G,we):A.removeOnSpill?Ue():Je()}}function ze(D,G){var Q=F(D);Y&&A.copySortSource&&G===B&&Q.removeChild(O),Ke(G)?U.emit("cancel",D,B):U.emit("drop",D,G,B,H),Ze()}function Ue(){if(U.dragging){var D=Y||O,G=F(D);G&&G.removeChild(D),U.emit(Y?"cancel":"remove",D,G,B),Ze()}}function Je(D){if(U.dragging){var G=arguments.length>0?D:A.revertOnSpill,Q=Y||O,de=F(Q),ve=Ke(de);ve===!1&&G&&(Y?de&&de.removeChild(Y):B.insertBefore(Q,L)),ve||G?U.emit("cancel",Q,B,B):U.emit("drop",Q,de,B,H),Ze()}}function Ze(){var D=Y||O;Me(),be(),Oe(),D&&s.rm(D,"gu-transit"),J&&clearTimeout(J),U.dragging=!1,ne&&U.emit("out",D,ne,B),U.emit("dragend",D,ue),B=O=Y=L=H=J=ne=null}function Ke(D,G){var Q;return G!==void 0?Q=G:V?Q=H:Q=_(Y||O),D===B&&Q===L}function nt(D,G,Q){for(var de=D;de&&!ve();)de=F(de);return de;function ve(){var we=ye(de);if(we===!1)return!1;var rt=Ne(de,D),Ye=Le(de,rt,G,Q),et=Ke(de,Ye);return et?!0:A.accepts(O,de,B,Ye)}}function ot(D){if(!V)return;D.preventDefault();var G=k("clientX",D)||0,Q=k("clientY",D)||0;V.style.left=G-2+"px",V.style.top=Q-2+"px";var de=Y||O,ve=M(V,G,Q),we=nt(ve,G,Q),rt=we!==null&&we!==ne;(rt||we===null)&&(Qe(),ne=we,st()),ke(ve,Q);var Ye=F(de);if(we===B&&Y&&!A.copySortSource){Ye&&Ye.removeChild(de);return}var et,lt=Ne(we,ve);if(Z=Ce(lt,we),lt!==null)et=Le(we,lt,G,Q);else if(A.revertOnSpill===!0&&!Y)et=L,we=B;else{Y&&Ye&&Ye.removeChild(de),Y&&R&&(R.style.display="none");return}R.style.display="block",it(et,de,rt),et?Fe(lt,et):Te(we);function He(Ge){U.emit(Ge,de,ne,B)}function st(){rt&&He("over")}function Qe(){ne&&He("out")}}function it(D,G,Q){(D===G||D===_(G))&&(H=_(G)),(D===null&&Q||D!==G&&D!==_(G))&&(H=D)}function P(D){s.rm(D,"gu-hide")}function W(D){U.dragging&&s.add(D,"gu-hide")}function K(){V||(V=document.createElement("div"),V.style="background: grey; color: white; height: 24px; text-align: center; padding: 3px 10px; min-width: 100px;border-radius: 4px; box-shadow: 0 0 6px grey;",V.innerHTML=A.getMirrorText&&A.getMirrorText(O)||"控件",s.add(V,"gu-mirror"),A.mirrorContainer.appendChild(V),C(f,"add","mousemove",ot),s.add(A.mirrorContainer,"gu-unselectable"),U.emit("cloned",V,O,"mirror"))}function me(){if(R=document.createElement("div"),s.add(R,"gu-insertion"),O){var D=O.getBoundingClientRect();R.style.left=D.left+"px",R.style.top=D.top+"px"}Z=!1,A.mirrorContainer.appendChild(R)}function be(){V&&(s.rm(A.mirrorContainer,"gu-unselectable"),C(f,"remove","mousemove",ot),F(V).removeChild(V),V=null)}function Oe(){R&&(F(R).removeChild(R),R=null)}function Ne(D,G){for(var Q=G;Q!==D&&F(Q)!==D;)Q=F(Q);return Q===f?null:Q}function Ce(D,G){if(!G)return Z;var Q=D||G&&G.lastElementChild;if(!Q)return!0;var de=getComputedStyle(D),ve=/^inline/.test(de.getPropertyValue("display"))||/^(left|right)$/.test(de.getPropertyValue("float"));if(ve)return!0;if(G){var we=getComputedStyle(G),rt=we.getPropertyValue("display");if(/flex$/.test(rt)){var Ye=we.getPropertyValue("flex-direction")||"row";if(Ye==="row"||Ye==="row-reverse")return!Be(G)}return!1}return!0}function Be(D){if(!D.children||!D.children.length)return!1;for(const G of Array.from(D.children)){const de=(G.className&&G.className.split(" ")||[]).filter(ve=>/^col(-md|-xl|-el){0,1}-([1-9]|10|11|12)$/.test(ve));if(!de.length)return!1;for(const ve of de){const we=ve.slice(ve.lastIndexOf("-")+1);if(parseInt(we,10)!==12)return!1}}return!0}function Fe(D,G){const Q=G.getBoundingClientRect();if(R.style.left=Q.left+"px",R.style.top=Q.top+"px",Z){if(R.style.height=Q.height+"px",R.style.width="4px",D){const de=D.getBoundingClientRect();de.top!==Q.top&&(R.style.left=de.right+"px",R.style.top=de.top+"px",R.style.height=de.height+"px")}}else if(R.style.height="4px",R.style.width=Q.width+"px",ee){const de=ee.getBoundingClientRect();Q.top<de.top&&(R.style.display="none")}G===O&&O&&(R.style.display="none")}function Te(D){H=null;var G=D.lastElementChild;if(G){var Q=G.getBoundingClientRect();Z?(R.style.left=Q.right+"px",R.style.top=Q.top+"px",R.style.height=Q.height+"px",R.style.width="4px"):(R.style.left=Q.left+"px",R.style.top=Q.bottom+"px",R.style.height="4px",R.style.width=Q.width+"px"),G===O&&O&&(R.style.display="none")}else R.style.display="none"}function ke(D,G){if(!A.mirrorContainer.contains(D)||!window.scrollContainerList||!Array.from(window.scrollContainerList).length||(ee=p(D),!ee||!ee.contains(D)))return;const Q=document.querySelector(".dgComponentSelected"),de=ee.getBoundingClientRect();if(G-30<de.top&&ee.scrollTop>0){let ve=ee.scrollTop<10?ee.scrollTop:10;ee.scrollBy(0,-1*ve),Q&&ee.contains(Q)&&(ue=ue+-1*ve)}if(G+30>de.bottom&&ee.scrollTop<ee.scrollHeight-ee.clientHeight){const ve=ee.scrollHeight-ee.clientHeight-ee.scrollTop;let we=ve<10?ve:10;ee.scrollBy(0,we),Q&&ee.contains(Q)&&(ue=ue+we)}}function Le(D,G,Q,de){var ve=A.direction==="horizontal",we=A.direction==="mixed",rt=G!==D?et():Ye();return rt;function Ye(){var He=D.children.length,st,Qe,Ge;for(st=0;st<He;st++)if(Qe=D.children[st],Ge=Qe.getBoundingClientRect(),ve&&Ge.left+Ge.width/2>Q||!we&&!ve&&Ge.top+Ge.height/2>de||we&&Ge.left+Ge.width>Q&&Ge.top+Ge.height>de)return Qe;return null}function et(){var He=G.getBoundingClientRect();if(we){var st=de-He.top,Qe=Q-He.left,Ge=He.bottom-de,kt=He.right-Q,bt=Math.min(Qe,kt,st,Ge),Ct;return Z?Ct=kt<Qe:Ct=Ge===bt||kt===bt||Qe===bt,lt(Ct)}return lt(ve?Q>He.left+S(He)/2:de>He.top+h(He)/2)}function lt(He){return He?_(G):G}}function mt(D,G){return typeof A.copy=="boolean"?A.copy:A.copy(D,G)}}function p(w){const x=Array.from(window.scrollContainerList);if(x.length===1){const V=Array.from(window.scrollContainerList)[0];return document.getElementById(V)}const T=y(x);for(const V of T)if(V.contains(w))return V;return null}function y(w){const x=[];return w.forEach(T=>{const V=document.getElementById(T);V&&x.push(V)}),x.sort((T,V)=>T.contains(V)?1:V.contains(T)?-1:0),x}function C(w,x,T,V){var B={mouseup:"touchend",mousedown:"touchstart",mousemove:"touchmove"},O={mouseup:"pointerup",mousedown:"pointerdown",mousemove:"pointermove"},E={mouseup:"MSPointerUp",mousedown:"MSPointerDown",mousemove:"MSPointerMove"};a.navigator.pointerEnabled?c[x](w,O[T],V):a.navigator.msPointerEnabled?c[x](w,E[T],V):(c[x](w,B[T],V),c[x](w,T,V))}function I(w){if(w.touches!==void 0)return w.touches.length;if(w.which!==void 0&&w.which!==0)return w.which;if(w.buttons!==void 0)return w.buttons;var x=w.button;if(x!==void 0)return x&1?1:x&2?3:x&4?2:0}function M(w,x,T){w=w||{};var V=w.className||"",B;return w.className+=" gu-hide",B=u.elementFromPoint(x,T),w.className=V,B}function g(){return!1}function v(){return!0}function S(w){return w.width||w.right-w.left}function h(w){return w.height||w.bottom-w.top}function F(w){return w.parentNode===u?null:w.parentNode}function N(w){return w.tagName==="INPUT"||w.tagName==="TEXTAREA"||w.tagName==="SELECT"||m(w)}function m(w){return!w||w.contentEditable==="false"?!1:w.contentEditable==="true"?!0:m(F(w))}function _(w){return w.nextElementSibling||x();function x(){var T=w;do T=T.nextSibling;while(T&&T.nodeType!==1);return T}}function b(w){return w.targetTouches&&w.targetTouches.length?w.targetTouches[0]:w.changedTouches&&w.changedTouches.length?w.changedTouches[0]:w}function k(w,x){var T=b(x),V={pageX:"clientX",pageY:"clientY"};return w in V&&!(w in T)&&V[w]in T&&(w=V[w]),T[w]}i.exports=d}).call(this,typeof ut<"u"?ut:typeof self<"u"?self:typeof window<"u"?window:{})},{"./classes":1,"contra/emitter":5,crossvent:6}],3:[function(o,i,r){i.exports=function(l,c){return Array.prototype.slice.call(l,c)}},{}],4:[function(o,i,r){var a=o("ticky");i.exports=function(c,s,u){c&&a(function(){c.apply(u||null,s||[])})}},{ticky:10}],5:[function(o,i,r){var a=o("atoa"),l=o("./debounce");i.exports=function(s,u){var f=u||{},d={};return s===void 0&&(s={}),s.on=function(p,y){return d[p]?d[p].push(y):d[p]=[y],s},s.once=function(p,y){return y._once=!0,s.on(p,y),s},s.off=function(p,y){var C=arguments.length;if(C===1)delete d[p];else if(C===0)d={};else{var I=d[p];if(!I)return s;I.splice(I.indexOf(y),1)}return s},s.emit=function(){var p=a(arguments);return s.emitterSnapshot(p.shift()).apply(this,p)},s.emitterSnapshot=function(p){var y=(d[p]||[]).slice(0);return function(){var C=a(arguments),I=this||s;if(p==="error"&&f.throws!==!1&&!y.length)throw C.length===1?C[0]:C;return y.forEach(function(g){f.async?l(g,C,I):g.apply(I,C),g._once&&s.off(p,g)}),s}},s}},{"./debounce":4,atoa:3}],6:[function(o,i,r){(function(a){var l=o("custom-event"),c=o("./eventmap"),s=a.document,u=p,f=C,d=[];a.addEventListener||(u=y,f=I),i.exports={add:u,remove:f,fabricate:M};function p(F,N,m,_){return F.addEventListener(N,m,_)}function y(F,N,m){return F.attachEvent("on"+N,v(F,N,m))}function C(F,N,m,_){return F.removeEventListener(N,m,_)}function I(F,N,m){var _=S(F,N,m);if(_)return F.detachEvent("on"+N,_)}function M(F,N,m){var _=c.indexOf(N)===-1?k():b();F.dispatchEvent?F.dispatchEvent(_):F.fireEvent("on"+N,_);function b(){var w;return s.createEvent?(w=s.createEvent("Event"),w.initEvent(N,!0,!0)):s.createEventObject&&(w=s.createEventObject()),w}function k(){return new l(N,{detail:m})}}function g(F,N,m){return function(b){var k=b||a.event;k.target=k.target||k.srcElement,k.preventDefault=k.preventDefault||function(){k.returnValue=!1},k.stopPropagation=k.stopPropagation||function(){k.cancelBubble=!0},k.which=k.which||k.keyCode,m.call(F,k)}}function v(F,N,m){var _=S(F,N,m)||g(F,N,m);return d.push({wrapper:_,element:F,type:N,fn:m}),_}function S(F,N,m){var _=h(F,N,m);if(_){var b=d[_].wrapper;return d.splice(_,1),b}}function h(F,N,m){var _,b;for(_=0;_<d.length;_++)if(b=d[_],b.element===F&&b.type===N&&b.fn===m)return _}}).call(this,typeof ut<"u"?ut:typeof self<"u"?self:typeof window<"u"?window:{})},{"./eventmap":7,"custom-event":8}],7:[function(o,i,r){(function(a){var l=[],c="",s=/^on/;for(c in a)s.test(c)&&l.push(c.slice(2));i.exports=l}).call(this,typeof ut<"u"?ut:typeof self<"u"?self:typeof window<"u"?window:{})},{}],8:[function(o,i,r){(function(a){var l=a.CustomEvent;function c(){try{var s=new l("cat",{detail:{foo:"bar"}});return s.type==="cat"&&s.detail.foo==="bar"}catch{}return!1}i.exports=c()?l:typeof document<"u"&&typeof document.createEvent=="function"?function(u,f){var d=document.createEvent("CustomEvent");return f?d.initCustomEvent(u,f.bubbles,f.cancelable,f.detail):d.initCustomEvent(u,!1,!1,void 0),d}:function(u,f){var d=document.createEventObject();return d.type=u,f?(d.bubbles=!!f.bubbles,d.cancelable=!!f.cancelable,d.detail=f.detail):(d.bubbles=!1,d.cancelable=!1,d.detail=void 0),d}}).call(this,typeof ut<"u"?ut:typeof self<"u"?self:typeof window<"u"?window:{})},{}],9:[function(o,i,r){var a=i.exports={},l,c;function s(){throw new Error("setTimeout has not been defined")}function u(){throw new Error("clearTimeout has not been defined")}(function(){try{typeof setTimeout=="function"?l=setTimeout:l=s}catch{l=s}try{typeof clearTimeout=="function"?c=clearTimeout:c=u}catch{c=u}})();function f(h){if(l===setTimeout)return setTimeout(h,0);if((l===s||!l)&&setTimeout)return l=setTimeout,setTimeout(h,0);try{return l(h,0)}catch{try{return l.call(null,h,0)}catch{return l.call(this,h,0)}}}function d(h){if(c===clearTimeout)return clearTimeout(h);if((c===u||!c)&&clearTimeout)return c=clearTimeout,clearTimeout(h);try{return c(h)}catch{try{return c.call(null,h)}catch{return c.call(this,h)}}}var p=[],y=!1,C,I=-1;function M(){!y||!C||(y=!1,C.length?p=C.concat(p):I=-1,p.length&&g())}function g(){if(!y){var h=f(M);y=!0;for(var F=p.length;F;){for(C=p,p=[];++I<F;)C&&C[I].run();I=-1,F=p.length}C=null,y=!1,d(h)}}a.nextTick=function(h){var F=new Array(arguments.length-1);if(arguments.length>1)for(var N=1;N<arguments.length;N++)F[N-1]=arguments[N];p.push(new v(h,F)),p.length===1&&!y&&f(g)};function v(h,F){this.fun=h,this.array=F}v.prototype.run=function(){this.fun.apply(null,this.array)},a.title="browser",a.browser=!0,a.env={},a.argv=[],a.version="",a.versions={};function S(){}a.on=S,a.addListener=S,a.once=S,a.off=S,a.removeListener=S,a.removeAllListeners=S,a.emit=S,a.prependListener=S,a.prependOnceListener=S,a.listeners=function(h){return[]},a.binding=function(h){throw new Error("process.binding is not supported")},a.cwd=function(){return"/"},a.chdir=function(h){throw new Error("process.chdir is not supported")},a.umask=function(){return 0}},{}],10:[function(o,i,r){(function(a){var l=typeof a=="function",c;l?c=function(s){a(s)}:c=function(s){setTimeout(s,0)},i.exports=c}).call(this,o("timers").setImmediate)},{timers:11}],11:[function(o,i,r){(function(a,l){var c=o("process/browser.js").nextTick,s=Function.prototype.apply,u=Array.prototype.slice,f={},d=0;r.setTimeout=function(){return new p(s.call(setTimeout,window,arguments),clearTimeout)},r.setInterval=function(){return new p(s.call(setInterval,window,arguments),clearInterval)},r.clearTimeout=r.clearInterval=function(y){y.close()};function p(y,C){this._id=y,this._clearFn=C}p.prototype.unref=p.prototype.ref=function(){},p.prototype.close=function(){this._clearFn.call(window,this._id)},r.enroll=function(y,C){clearTimeout(y._idleTimeoutId),y._idleTimeout=C},r.unenroll=function(y){clearTimeout(y._idleTimeoutId),y._idleTimeout=-1},r._unrefActive=r.active=function(y){clearTimeout(y._idleTimeoutId);var C=y._idleTimeout;C>=0&&(y._idleTimeoutId=setTimeout(function(){y._onTimeout&&y._onTimeout()},C))},r.setImmediate=typeof a=="function"?a:function(y){var C=d++,I=arguments.length<2?!1:u.call(arguments,1);return f[C]=!0,c(function(){f[C]&&(I?y.apply(null,I):y.call(null),r.clearImmediate(C))}),C},r.clearImmediate=typeof l=="function"?l:function(y){delete f[y]}}).call(this,o("timers").setImmediate,o("timers").clearImmediate)},{"process/browser.js":9,timers:11}]},{},[2])(2)})})(Ir);const Wn=new Map([["appearance",ht],["column","columnOption"]]);function Nr(t,e,o){var d;const i=o.parentComponentInstance,r=i.schema.type,a=String(((d=i.schema.appearance)==null?void 0:d.class)||"").split(" "),l=r==="section"||r==="tab-page",c=a.includes("f-page-content-nav"),s=a.includes("f-page-main"),u=t.getSchemaByType("component");u.id=`${e.id}-component`,u.componentType="data-grid";let f="";return f+=l?"f-struct-data-grid-in-card f-struct-is-subgrid":"",f+=c?"f-struct-data-grid-in-nav f-struct-wrapper f-utils-fill-flex-column":"",f+=s?"f-struct-data-grid f-struct-wrapper":"",u.appearance={class:f},u.contents=[e],u}function Br(t,e,o){const i=o.parentComponentInstance,r=String(i.schema.appearance.class||"").split(" "),a=r.includes("f-page-content-nav"),l=r.includes("f-page-main"),c=t.getSchemaByType("section");c.id=`${e.id}-section`;let s="";return s+=a?"f-section-in-nav ":"",s+=l?"f-section-in-managelist ":"",s+="f-section-grid",c.appearance={class:s},c.contents=[e],c}function Or(t,e,o){const i=t.getSchemaByType("content-container");return i.id=`${e.id}-layout`,i.appearance={class:"f-grid-is-sub f-utils-flex-column"},i.contents=[e],i}function qn(t,e,o){const r=o.parentComponentInstance.schema.type,a=r==="section"||r==="tab-page";e.appearance={class:"f-component-grid"};const c=(a?Or:Br)(t,e,o);return Nr(t,c,o)}const zn={$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},disabled:{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","columns"]},zt={autoCheckChildren:{type:Boolean,default:!1},columns:{type:Array,default:[]},columnOption:{type:Object},commandOption:{type:Object,default:{enable:!1,commands:[]}},data:{type:Array,default:[]},disabled:{type:Boolean,default:!1},disabledField:{type:String,default:"disabled"},displayField:{type:String,default:"name"},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},hierarchy:{type:Object,default:{cascadeOption:{autoCheckChildren:!1,autoCheckParent:!1,selectionRange:"All"},parentIdField:"parent"}},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},newDataItem:{type:Function,default:()=>{}},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},showHeader:{type:Boolean,default:!0},showHorizontalLines:{type:Boolean,default:!0},showLines:{type:Boolean,default:!1},showOptions:{type:Boolean,default:!1},showScrollBar:{type:String,default:"auto"},showSetting:{type:Boolean,default:!1},showStripe:{type:Boolean,default:!0},showTreeNodeIcons:{type:Boolean,default:!1},showVerticallLines:{type:Boolean,default:!1},treeNodeIconsData:{type:[Object,String],default:{}},width:{type:Number,default:-1},virtualized:{type:Boolean,default:!1}},Er=We(zt,zn,Wn,qn),$r=Di(),jr=Pi(),Un=Object.assign({},zt,{componentId:{type:String,default:""}}),Pr=We(Un,zn,Wn,qn),Rr=ln();function Dr(t,e,o,i,r,a,l,c,s,u,f,d,p,y,C,I,M){const{calculateCellPositionInRow:g}=a,{columnContext:v,hasLeftFixedColumn:S,hasRightFixedColumn:h}=l,{gridDataStyle:F,leftFixedGridDataStyle:N,rightFixedGridDataStyle:m}=y,{renderDataRow:_}=cr(t,e,v,M,c,s,u,f,d,p,y),b=[_];function k(B,O){const E=g(B);return M.value.filter($=>$.visible!==!1).map($=>b[$.type]($,E,O))}function w(){return n.createVNode("div",{ref:i,class:"fv-grid-content-left-fixed"},[n.createVNode("div",{class:"fv-grid-data",style:N.value},[k(v.value.leftColumns.filter(B=>B.visible),"left")])])}function x(){return n.createVNode("div",{ref:o,class:"fv-grid-content-primary"},[n.createVNode("div",{class:"fv-grid-data",style:F.value},[k(v.value.primaryColumns.filter(B=>B.visible),"primary")])])}function T(){return n.createVNode("div",{ref:r,class:"fv-grid-content-right-fixed"},[n.createVNode("div",{class:"fv-grid-data",style:m.value},[k(v.value.rightColumns.filter(B=>B.visible),"right")])])}function V(){const B=[];return S.value&&B.push(w()),B.push(x()),h.value&&B.push(T()),B}return{renderDataArea:V}}const jt=n.defineComponent({name:"FTreeGrid",props:zt,emits:["selectionChange","clickRow","expandNode"],setup(t,e){var mt,D;const i=((mt=t.rowOption)==null?void 0:mt.height)||28,r=n.ref(20),a=n.ref(t.columns),l=X.useIdentify(t),c=n.ref(),s=n.ref(),u=n.ref(),f=n.ref(),d=n.ref(),p=n.ref([]),y=n.ref(!1),C=n.ref(((D=t.rowOption)==null?void 0:D.wrapContent)||!1),I=X.useGroupData(t,l),M=X.useFilter(),g=X.useHierarchy(t),{showLoading:v,renderLoading:S}=X.useLoading(t,c),h=X.useDataView(t,new Map,M,g,l),F=X.useSelection(t,h,l,p,e),N=X.useSelectHierarchyItem(t,p,l,F,e),m=n.computed(()=>t.disabled),_=n.computed(()=>t.virtualized?Math.min(h.dataView.value.length,r.value):h.dataView.value.length),{containerStyleObject:b}=X.useDataViewContainerStyle(t),k=X.useCommandColumn(t),{applyCommands:w}=k;w(a);const x=X.useColumn(t),T=X.useSort(t),{applyColumnSorter:V,columnContext:B,updateColumnRenderContext:O}=x;V(h,T);const E=X.useGroupColumn(t,B),$=X.useRow(t,e,F,l),L=X.useEdit(t,e,l,$),H=X.useVisualDataBound(t),Y=X.useVisualDataCell(t,L,H),J=X.useVisualDataRow(t,L,g,l,H,Y),ne=X.useVisualData(t,a,h,_,0,J),{getVisualData:le}=ne,R=X.useCellPosition(t,B),Z=X.useSidebar(t,F),{sidebarWidth:ue}=Z,ee=X.useVirtualScroll(t,h,p,B,ne,_,0,ue),{onWheel:A,dataGridWidth:U,viewPortHeight:ye,viewPortWidth:fe,resetScroll:je,updateVisibleRowsOnLatestVisibleScope:Pe}=ee,_e=X.useFitColumn(t,B,s,fe,E),{calculateColumnsSize:Se}=_e,Ve=X.useFilterHistory(),Re=X.useColumnFilter(s,d,h,Ve,ee),Ie=X.useDragColumn(t,e,x,h,E,I,ee),pe=n.computed(()=>({"fv-grid":!0,"fv-grid-bordered":t.showBorder,"fv-grid-horizontal-bordered":t.showHorizontalLines,"fv-datagrid-strip":t.showStripe})),j=n.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":y.value,"fv-grid-wrap-content":C.value})),{renderDataArea:ie}=Dr(t,e,u,f,d,R,x,h,L,g,$,F,N,ee,ne,H,p),{renderGridHeader:te,renderGridColumnResizeOverlay:ge,shouldShowHeader:Me}=X.getColumnHeader(t,e,s,f,d,x,h,Ie,Re,M,Ve,_e,E,F,Z,T,ee,fe,p),{renderDataGridSidebar:Ae}=X.getSidebar(t,$,F,Z,ee),{renderDisableMask:ze}=X.getDisableMask(),{renderHorizontalScrollbar:Ue}=X.getHorizontalScrollbar(t,s,ee),{renderVerticalScrollbar:Je}=X.getVerticalScrollbar(t,s,ee);function Ze(){var G,Q,de;if(s.value&&s.value.clientHeight>0&&((G=s.value)==null?void 0:G.clientWidth)>0){const ve=Math.ceil(s.value.clientHeight/i);ve>r.value&&(r.value=ve,Pe()),ye.value=((Q=u.value)==null?void 0:Q.clientHeight)||0,U.value=((de=s.value)==null?void 0:de.clientWidth)||0,Se()}}n.onMounted(()=>{s.value&&(r.value=Math.max(Math.ceil(s.value.clientHeight/i),r.value),p.value=le(0,_.value+0-1),Vt.useResizeObserver(s.value,Ze),Se(),n.nextTick(()=>{s.value&&(U.value=s.value.clientWidth),u.value&&(fe.value=u.value.clientWidth,ye.value=u.value.clientHeight)})),v.value&&S()}),n.onUnmounted(()=>{}),n.watch(fe,()=>{s.value&&Se()});function Ke(){const G=F.getSelectionRow();return G?G.dataIndex-1:-1}function nt(){const G=Ke();h.insertNewDataItem(G),p.value=le(0,_.value+0-1)}function ot(){const G=Ke();h.insertNewChildDataItem(G),p.value=le(0,_.value+0-1)}function it(){const G=Ke(),Q=N.getNextSelectableHierarchyItemId(G);h.removeHierarchyDataItem(G),p.value=le(0,_.value+0-1),Q&&F.selectItemById(Q)}function P(G){L.onEditingRow(G)}function W(G){L.acceptEditingRow(G)}function K(G){L.cancelEditingRow(G)}function me(G){G&&(a.value=G,w(a),O(a.value),V(h,T),Se())}function be(G){G&&(h.load(G),je())}function Oe(G){F.selectItemById(G)}function Ne(G){const Q=p.value.find(de=>de.raw[l.idField.value]===G);Q&&$.clickRowItem(Q)}function Ce(G){F.selectItemByIds(G)}function Be(){return F.getSelectedItems()}function Fe(){F.clearSelection()}const Te=n.computed(()=>!p.value||!p.value.length),{renderEmpty:ke}=X.getEmpty(e);function Le(){return F.getSelectionRow()}return e.expose({addNewDataItem:nt,addNewChildDataItem:ot,removeDataItem:it,editDataItem:P,acceptDataItem:W,cancelDataItem:K,updateColumns:me,updateDataSource:be,selectItemById:Oe,selectItemByIds:Ce,getSelectedItems:Be,clearSelection:Fe,getSelectionRow:Le,clickRowItemById:Ne}),()=>n.createVNode("div",{ref:c,class:pe.value,style:b.value,onWheel:A},[s.value&&Me.value&&te(),n.createVNode("div",{ref:s,class:j.value,onMouseover:()=>y.value=!0,onMouseleave:()=>y.value=!1},[s.value&&Ae(p),s.value&&ie(),s.value&&Te.value&&ke(),s.value&&Ue(),s.value&&Je()]),ge(),m.value&&ze()])}}),Hr={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}},Ar={},Lr={},Gr={id:{type:String}},Wr=n.defineComponent({name:"FDesignerPlaceholder",props:Gr,emits:[],setup(t){const e=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:e.value,style:o.value,role:"alert","data-noattach":"true","data-position":"0"},[n.createTextVNode("拖拽组件到这里")])}});function qr(t){return typeof t=="function"||Object.prototype.toString.call(t)==="[object Object]"&&!n.isVNode(t)}const Ut=n.defineComponent({name:"FDesignerItem",props:Hr,emits:["selectionChange"],setup(t,e){const o=n.ref(`${t.modelValue.id}-component`),i=n.ref(t.canMove),r=n.ref(t.canDelete),a=n.ref(!1),l=n.ref(t.modelValue),c=n.ref(t.componentId||""),s=n.ref(""),u=n.ref(""),f=n.ref(t.customClass),d=n.ref(),p=n.inject("canvas-dragula"),y=n.ref(),C=n.inject("design-item-context"),I={designerItemElementRef:d,componentInstance:y,schema:l.value,parent:C,setupContext:e};n.provide("design-item-context",I);const M=n.inject("useFormSchema"),g=n.computed(()=>{var $;const B=t.modelValue.appearance&&t.modelValue.appearance.class||"",O=(($=y.value)==null?void 0:$.getCustomButtons)&&y.value.getCustomButtons();let E={"farris-component":!0,"flex-fill":l.value.id==="root-component","position-relative":i.value&&r.value||(O==null?void 0:O.length),"farris-nested":a.value,"can-move":i.value,"d-none":d.value&&d.value.classList.contains("d-none"),dgComponentSelected:d.value&&d.value.classList.contains("dgComponentSelected"),dgComponentFocused:d.value&&d.value.classList.contains("dgComponentFocused")};return E[`farris-component-${l.value.type}`]=!0,E=xe.getCustomClass(E,B),E=xe.getCustomClass(E,u.value),E=xe.getCustomClass(E,f.value),E}),v=n.computed(()=>{const B={},O=t.modelValue.appearance&&t.modelValue.appearance.style||"";return O&&O.split(";").reduce((E,$)=>{const[L,H]=$.split(":");return E[L]=H,E},B),s.value&&s.value.split(";").reduce((E,$)=>{const[L,H]=$.split(":");return L&&(E[L]=H),E},B),B});function S(B,O){var L,H;if(B&&(B.preventDefault(),B.stopPropagation()),y.value.triggerBelongedComponentToDeleteWhenDeleted){const Y=y.value.getBelongedComponentInstance(y);if(Y&&Y.parent){const J=n.ref(Y==null?void 0:Y.parent),ne=J.value.contents.findIndex(le=>le.id===Y.schema.id);(H=(L=J.value)==null?void 0:L.contents)==null||H.splice(ne,1),Ft.value++}return}y.value.onRemoveComponent();let E=C,$=Y=>Y.id===O.id;if(O.type==="component"&&(E=C==null?void 0:C.parent,$=Y=>Y.component===O.id),E&&E.schema.contents){const Y=E.schema.contents.findIndex($);E.schema.contents.splice(Y,1),Ft.value++,e.emit("selectionChange")}}function h(B){return r.value&&n.createVNode("div",{role:"button",class:"btn component-settings-button",title:"删除",ref:"removeComponent",onClick:O=>{S(O,B)}},[n.createVNode("i",{class:"f-icon f-icon-yxs_delete"},null)])}function F(){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 N(){var O;const B=((O=y.value)==null?void 0:O.getCustomButtons)&&y.value.getCustomButtons();return B&&!!B.length&&B.map(E=>n.createVNode("div",{role:"button",class:`btn component-settings-button ${E.class||""}`,title:E.title,ref:E.id,onClick:$=>E.onClick&&E.onClick($)},[n.createVNode("i",{class:E.icon},null)]))}function m(B){return n.createVNode("div",{class:"component-btn-group","data-noattach":"true"},[n.createVNode("div",null,[h(B),F(),N()])])}function _(B,O,E,$){e.emit("selectionChange",B,O,E,$)}function b(B){let O;const E=B.type,$=Ar[E],L=Lr[E],H=L?L(B):{};H.customClass=t.ignore?H.customClass:"",H.componentId=c.value,H.id=B.id;const Y=B.contents&&B.contents.length===0;return B.contents&&!!B.contents.length&&$?n.createVNode($,n.mergeProps({ref:y},H),qr(O=B.contents.map(ne=>n.createVNode(Ut,{key:ne.id,modelValue:ne,"onUpdate:modelValue":le=>ne=le,componentId:c.value,onSelectionChange:_},null)))?O:{default:()=>[O]}):$?Y?n.createVNode($,n.mergeProps({ref:y},H),{default:()=>[n.createVNode(Wr,null,null)]}):n.createVNode($,n.mergeProps({ref:y},H),null):n.createVNode("div",null,null)}function k(B){if(B.type==="component-ref"){let E=M==null?void 0:M.getFormSchema().module.components.find($=>$.id===B.component);if(E)return n.createVNode(Ut,{key:E.id,modelValue:E,"onUpdate:modelValue":$=>E=$,componentId:E.id,onSelectionChange:_},null)}}n.watch(()=>t.modelValue,B=>{l.value=B,o.value=`${B.id}-component`});function w(B){window.scrollContainerList||(window.scrollContainerList=new Set);const O=B.getAttribute("id");O&&window.scrollContainerList.add(O)}function x(B){const O=B==null?void 0:B.target;w(O),Vr(O)}function T(){var B,O;(O=(B=l.value)==null?void 0:B.contents)!=null&&O.length&&d.value&&d.value.addEventListener("scroll",x)}n.onMounted(()=>{if(d.value&&y.value&&y.value.schema){const B=d.value.querySelector(`[data-dragref='${y.value.schema.id}-container']`);p&&B&&p.attachComponents(B,l.value),a.value=y.value.canNested!==void 0?y.value.canNested:a.value,r.value=y.value.canDelete!==void 0?y.value.canDelete:r.value,i.value=y.value.canMove!==void 0?y.value.canMove:i.value,s.value=y.value.styles||"",u.value=y.value.designerClass||"",d.value&&(d.value.componentInstance=y,d.value.designItemContext=I),y.value.belongedComponentId=c.value}T(),Ft.value++}),n.onBeforeUnmount(()=>{d.value&&d.value.removeEventListener("scroll",x)});function V(B){B&&(B.preventDefault(),B.stopPropagation());let O=I.designerItemElementRef;const E=d.value;if(E){const $=document.getElementsByClassName("dgComponentFocused");$&&$.length===1&&$[0]===d.value||(Array.from($).forEach(H=>H.classList.remove("dgComponentFocused")),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(H=>H.classList.remove("dgComponentSelected")),E.classList.add("dgComponentFocused"),e.emit("selectionChange",l.value.type,l.value,c.value,y.value),y.value.getDraggableDesignItemElement&&(O=y.value.getDraggableDesignItemElement(I),O&&O.value&&O.value.classList.add("dgComponentSelected")))}Gn(O==null?void 0:O.value)}return()=>l.value.type==="component-ref"?k(l.value):n.createVNode("div",{id:`${l.value.id}-design-item`,ref:d,class:g.value,style:v.value,onClick:V},[m(l.value),b(l.value)])}});function Yn(t,e,o,i,r="data-grid-column"){const{columnContext:a,hasLeftFixedColumn:l,hasRightFixedColumn:c}=o,{gridHeaderColumnsStyle:s,leftFixedGridHeaderColumnsStyle:u,rightFixedGridHeaderColumnsStyle:f}=i,d=a.value.defaultColumnWidth,p=32,y=new Map([[0,0]]);function C(k,w){const x=y.get(w)||0,T={height:`${k.depth*p}px`,left:`${k.left}px`,top:`${(k.layer-1)*p}px`,width:`${k.actualWidth}px`,padding:0};return a.value.headerDepth>1&&(T["line-height"]=`${k.depth*p}px`),y.set(w+1,x+(k.actualWidth||d)),T}const I=n.computed(()=>({"fv-grid-header":!0,"fv-grid-header-group-columns":a.value.headerDepth>1})),M=n.computed(()=>({height:`${a.value.headerDepth*p}px`})),g=function(k){return e.showSetting&&!!k.showSetting};function v(){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 S(k,w,x,T){var V;(V=t==null?void 0:t.setupContext)==null||V.emit("selectionChange",k,w,x,T)}function h(k){var x,T;return"w-100 d-flex align-items-center justify-content-"+(((x=k.column)==null?void 0:x.halign)==="center"?"center":((T=k.column)==null?void 0:T.halign)==="right"?"end pr-2":"start pl-2")}function F(k,w,x){var V;const T=n.ref(k.column);return n.createVNode("div",{class:"fv-grid-header-cell",style:C(k,x)},[n.createVNode(Ut,{modelValue:T.value,"onUpdate:modelValue":B=>T.value=B,customClass:h(k),canAdd:!1,canDelete:!1,canMove:!1,key:(V=T.value)==null?void 0:V.id,type:r,componentId:e.componentId,onSelectionChange:S},null),g(k)&&v(),k.resizable&&n.createVNode("span",{class:"fv-column-resize-bar"},null)])}function N(k){return k.map((w,x)=>{const T=[];if(T.push(F(w,k,x)),w.children&&w.children.length){const V=N(w.children);T.push(...V)}return T})}function m(){return n.createVNode("div",{class:"fv-grid-header-left-fixed"},[n.createVNode("div",{class:"fv-grid-header-columns",style:u.value},[N(a.value.leftHeaderColumns)])])}function _(){return n.createVNode("div",{class:"fv-grid-header-right-fixed"},[n.createVNode("div",{class:"fv-grid-header-columns",style:f.value},[N(a.value.rightHeaderColumns)])])}function b(){return n.createVNode("div",{class:I.value,style:M.value},[l.value&&m(),n.createVNode("div",{class:"fv-grid-header-primary"},[n.createVNode("div",{class:"fv-grid-header-columns",style:s.value},[N(a.value.primaryHeaderColumns)])]),c.value&&_()])}return{renderGridHeader:b}}class zr extends Et{constructor(e,o){super(e,o)}getPropertyConfig(e){return this.getBasicPropConfig(e),this.getAppearanceProperties(e),this.getEventPropConfig(e),this.propertyConfig}getBasicPropConfig(e){var l,c,s;const o=(s=(c=(l=this.formSchemaUtils.getFormSchema())==null?void 0:l.module)==null?void 0:c.entity[0])==null?void 0:s.entities[0],i=this.assembleSchemaEntityToTree(o,0),r=this,a=super.getBasicPropConfig(e);this.propertyConfig.categories.basic={description:"Basic Information",title:"基本信息",properties:{...a.properties,dataSource:{description:"绑定数据源",title:"绑定数据源",editor:{type:"combo-tree",textField:"name",valueField:"label",data:i,editable:!1},readonly:!0}},setPropertyRelates(u,f){switch(u&&u.propertyID){case"dataSource":{const d=r.formSchemaUtils.getViewModelById(r.viewModelId);if(d){const p=i.find(y=>y.label===u.propertyValue);d.bindTo=p.bindTo}r.designViewModelUtils.assembleDesignViewModel();break}}}}}getAppearanceProperties(e){var o,i,r;this.propertyConfig.categories.appearance={title:"外观",properties:{columns:{title:"列设置",description:"列设置",$converter:"/converter/items-count.converter",editor:{type:"grid-field-editor",viewModelId:this.viewModelId,gridData:e,gridType:"tree-grid-column"},refreshPanelAfterChanged:!0},fit:{title:"适配父组件尺寸",type:"boolean",description:"是否适配父组件尺寸",visible:!1},showStripe:{title:"显示条纹",type:"boolean",description:"是否显示条纹"},showBorder:{title:"显示边框",type:"boolean",description:"是否显示边框"}},setPropertyRelates(a,l){switch(a&&a.propertyID){case"useBlankWhenDataIsEmpty":e.emptyDataHeight=e.useBlankWhenDataIsEmpty?36:240;break;case"fields":e.fields=a.propertyValue||[];break}}},this.propertyConfig.categories.pagination={title:"分页",$converter:"/converter/pagination.converter",properties:{enable:{title:"启用分页",type:"boolean",refreshPanelAfterChanged:!0,editor:{readonly:!0}},mode:{visible:((o=e.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=e.pagination)==null?void 0:i.enable)||!1,title:"显示页码",type:"boolean"},showLimits:{visible:((r=e.pagination)==null?void 0:r.enable)||!1,title:"显示每页记录数",type:"boolean"}}}}getEventPropConfig(e){const o=[{label:"onSelectionChange",name:"行切换事件"},{label:"onClickRow",name:"行点击事件"}],i=this,r=i.eventsEditorUtils.formProperties(e,i.viewModelId,o),a={};a[i.viewModelId]={type:"events-editor",editor:{initialData:r}},this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:a,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(l,c){const s=l.propertyValue;delete e[i.viewModelId],s&&(s.setPropertyRelates=this.setPropertyRelates,i.eventsEditorUtils.saveRelatedParameters(e,i.viewModelId,s.events,s)),e.remoteSort=!!e.columnSorted}}}assembleSchemaEntityToTree(e,o,i,r="",a=[]){const l=r?`${r}/${e.label}`:"/";return a.push({id:e.id,name:e.name,label:e.label,layer:o,parent:i&&i.id,bindTo:l.replace("//","/")}),e.type.entities&&e.type.entities.length&&e.type.entities.map(c=>this.assembleSchemaEntityToTree(c,o+1,e,l,a)),a}}function Ur(t,e){const o=t.schema,i=n.ref(!0),r=n.ref(!0);function a(f){return f&&f.sourceType==="control"?f.componentCategory==="input":!1}function l(){return!1}function c(){return!1}function s(){return!0}function u(f){return new zr(f,e).getPropertyConfig(o)}return{canAccepts:a,checkCanDeleteComponent:l,checkCanMoveComponent:c,hideNestedPaddingInDesginerView:s,triggerBelongedComponentToMoveWhenMoved:i,triggerBelongedComponentToDeleteWhenDeleted:r,getPropsConfig:u}}function Xn(t,e,o,i,r){const{getGridHeaderCells:a}=r,l=120,c=50,s=n.computed(()=>{var m;return((m=t.rowNumber)==null?void 0:m.enable)||!1}),u=n.computed(()=>{var m,_;return((m=t.selection)==null?void 0:m.multiSelect)||((_=t.selection)==null?void 0:_.showCheckbox)||!1}),f=n.computed(()=>{var m;return 0+(s.value?((m=t.rowNumber)==null?void 0:m.width)||32:0)+(u.value?c:0)}),d=n.computed(()=>{var m;return(m=t.columnOption)==null?void 0:m.fitColumns}),p=n.computed(()=>{var m;return d.value&&((m=t.columnOption)==null?void 0:m.fitMode)||"none"});function y(m,_,b){const k=parseInt(m.width,10)/100;return b*k}function C(m,_,b){return typeof m.width=="string"?y(m,_,b):m.width||l}function I(m,_){const b=[],k=[];let w=0;m.value.primaryColumns.filter(V=>V.visible).forEach(V=>{typeof V.width=="string"?k.push(V):(V.width=V.width||l,w+=V.width,b.push(V))});const x=_*(b.length/m.value.primaryColumns.filter(V=>V.visible).length);b.forEach(V=>{const B=x*(V.width/w);V.actualWidth=B,m.value.primaryColumnsWidth+=V.actualWidth});const T=_-x;k.forEach(V=>{const B=y(V,m.value,T);V.actualWidth=B,m.value.primaryColumnsWidth+=V.actualWidth})}function M(m,_){const b=[],k=[],w=new WeakMap;let x=0,T=0;if(m.value.primaryColumns.filter(B=>B.visible).forEach(B=>{if(typeof B.width=="string"){const O=y(B,m.value,_);w.set(B,O),x+=O,k.push(B)}else B.width=B.width||l,T+=B.width,b.push(B)}),_-x>T){const B=_-x;k.forEach(O=>{O.actualWidth=w.get(O)||l,m.value.primaryColumnsWidth+=O.actualWidth}),b.forEach(O=>{O.actualWidth=B*(O.width/T),m.value.primaryColumnsWidth+=O.actualWidth})}else I(m,_)}function g(m,_){m.value.primaryColumns.filter(b=>b.visible).forEach(b=>{b.actualWidth=C(b,m.value,_),m.value.primaryColumnsWidth+=b.actualWidth})}const v={expand:M,none:g,percentage:I};function S(m){m.value.leftHeaderColumns=Array.from(a(m.value.leftColumns.filter(_=>_.visible)).values()),m.value.primaryHeaderColumns=Array.from(a(m.value.primaryColumns.filter(_=>_.visible)).values()),m.value.rightHeaderColumns=Array.from(a(m.value.rightColumns.filter(_=>_.visible)).values())}function h(m){m.value.leftColumnsWidth=0,m.value.primaryColumnsWidth=0,m.value.rightColumnsWidth=0,m.value.leftColumns.filter(_=>_.visible).forEach(_=>{m.value.leftColumnsWidth+=_.actualWidth||0}),m.value.primaryColumns.filter(_=>_.visible).forEach(_=>{m.value.primaryColumnsWidth+=_.actualWidth||0}),m.value.rightColumns.filter(_=>_.visible).forEach(_=>{m.value.rightColumnsWidth+=_.actualWidth||0}),m.value=Object.assign({},m.value)}function F(m,_,b){var O;let k=0;const w=m.value.primaryColumns,x=m.value.rightColumns;m.value.rightColumns.filter(E=>E.visible).forEach(E=>{E.actualWidth=C(E,m.value,_),k+=E.actualWidth});const T=b-k,V=v[p.value];if(V&&V(m,T),m.value.primaryColumnsWidth+k<=b)return m.value.primaryColumns=[...w,...x],m.value.primaryColumnsWidth+=k,m.value.rightColumns=[],m.value.rightColumnsWidth=0,!0;const B=new Map;return B.set("primary",[]),B.set("right",[]),m.value.primaryColumns.reduce((E,$)=>{var L,H;return $.fixed==="right"?(L=E.get("right"))==null||L.push($):(H=E.get("primary"))==null||H.push($),E},B),(O=B.get("right"))!=null&&O.length&&(m.value.primaryColumns=[...B.get("primary")||[]],m.value.rightColumns=[...B.get("right")||[]]),m.value.primaryColumnsWidth=0,m.value.rightColumnsWidth=0,!1}function N(){if(o.value){e.value.leftColumnsWidth=0,e.value.primaryColumnsWidth=0,e.value.rightColumnsWidth=0;const m=o.value.clientWidth-f.value;e.value.leftColumns.filter(b=>b.visible).forEach(b=>{b.actualWidth=C(b,e.value,m),e.value.leftColumnsWidth+=b.actualWidth});const _=m-e.value.leftColumnsWidth;if(F(e,m,_))i.value=_;else{e.value.rightColumns.filter(w=>w.visible).forEach(w=>{w.actualWidth=C(w,e.value,m),e.value.rightColumnsWidth+=w.actualWidth});const b=m-e.value.leftColumnsWidth-e.value.rightColumnsWidth,k=v[p.value];k&&k(e,b),i.value=b}S(e),e.value=Object.assign({},e.value)}}return n.watch(()=>{var m;return(m=t.columnOption)==null?void 0:m.fitColumns},(m,_)=>{m!==_&&m&&N()}),n.watch(p,(m,_)=>{m!==_&&d.value&&N()}),{calculateColumnHeaders:S,calculateColumnsSize:N,calculateColumnsWidth:h}}const Yr=n.defineComponent({name:"FTreeGridDesign",props:Un,emits:[],setup(t,e){var Re,Ie;const o=n.ref(),i=0,r=((Re=t.rowOption)==null?void 0:Re.height)||28,a=n.ref(20),l=n.ref(t.columns),c=uo(t),s=n.ref(),u=n.ref(),f=n.ref([]),d=n.ref(!1),p=n.ref(((Ie=t.rowOption)==null?void 0:Ie.wrapContent)||!1),y=n.inject("designer-host-service"),C=n.inject("design-item-context"),I=Ur(C,y),M=qt(o,C,I);M.value.designerClass="f-utils-fill-flex-column";const g=no(),v=oo(t),S=_n(t,new Map,g,v,c),h=po(t,S,c,f,e),F=n.computed(()=>S.dataView.value.length),{containerStyleObject:N}=Cn(t),m=Sn(t),{applyCommands:_}=m;_(l);const b=wn(t),{applyColumnSorter:k,columnContext:w,updateColumnRenderContext:x}=b,T=ho(),V=xn(t,w),B=fo(t,e,h,c),O=co(t,e,c,B),E=ao(t),$=lo(t,O,E),L=so(t,O,v,c,E,$),H=ro(t,l,S,F,i,L),{getVisualData:Y}=H,J=mo(t,h),{sidebarWidth:ne}=J;f.value=Y(0,F.value+i-1);const le=io(t,S,f,w,H,F,i,ne),{onWheel:R,dataGridWidth:Z,viewPortHeight:ue,viewPortWidth:ee,updateVisibleRowsOnLatestVisibleScope:A}=le,U=Xn(t,w,s,ee,V),{calculateColumnsSize:ye}=U,fe=n.computed(()=>({"drag-container":!0,"fv-grid":!0,"fv-grid-bordered":t.showBorder,"fv-datagrid-strip":t.showStripe})),je=n.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":d.value,"fv-grid-wrap-content":p.value})),{renderGridHeader:Pe}=Yn(C,t,b,le,"tree-grid-column"),{renderHorizontalScrollbar:_e}=bn(t,s,le);function Se(){var j,ie;const pe=Math.ceil(s.value.clientHeight/r);pe>a.value&&(a.value=pe,A()),ue.value=((j=u.value)==null?void 0:j.clientHeight)||0,Z.value=((ie=s.value)==null?void 0:ie.clientWidth)||0,ye()}n.onMounted(()=>{o.value.componentInstance=M,s.value&&(a.value=Math.max(Math.ceil(s.value.clientHeight/r),a.value),f.value=Y(0,F.value+i-1),Vt.useResizeObserver(s.value,Se),ye(),n.nextTick(()=>{s.value&&(Z.value=s.value.clientWidth),u.value&&(ee.value=u.value.clientWidth,ue.value=u.value.clientHeight)}))});function Ve(pe){pe&&(l.value=pe,_(l),x(l.value),k(S,T),ye())}return n.watch(()=>t.columns,pe=>{Ve(pe)}),n.watch(ee,()=>{s.value&&ye()}),e.expose(M.value),()=>n.createVNode("div",{ref:o,class:fe.value,style:N.value,onWheel:R,dragref:`${C.schema.id}-container`},[s.value&&Pe(),n.createVNode("div",{ref:s,class:je.value,onMouseover:()=>{d.value=!0},onMouseleave:()=>{d.value=!1}},[_e()])])}});jt.register=(t,e,o,i)=>{t["tree-grid"]=jt,e["tree-grid"]=Er,i["tree-grid"]={bindingResolver:jr,selectionItemResolver:$r,updateColumnsResolver:Rr}},jt.registerDesigner=(t,e,o)=>{t["tree-grid"]=Yr,e["tree-grid"]=Pr},xe.withInstall(jt);const Xr=new Map([["appearance",ht]]);function Kr(t,e,o){return e}We({direction:{type:String,default:"horizontal"},fill:{type:Boolean,default:!1},height:{type:Number,default:0},clickable:{type:Boolean,default:!0},steps:{type:Array,default:[{id:"1",title:"审批中(示例)",description:"正在审批"},{id:"2",title:"复核中(示例)",description:"等待复核"}]},activeIndex:{type:Number,default:0},onClick:{type:Function,default:()=>{}}},{$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/step.schema.json",title:"step",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for step",type:"string"},type:{description:"The type string of step",type:"string",default:"step"},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"]},Xr,Kr,{title:"step",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:[]}}}}}});const Qr={class:{type:String,default:""},title:{type:String,default:""},width:{type:Number,default:500},height:{type:Number,default:320},buttons:{type:Array,default:[]},modelValue:{type:Boolean,default:!1},showHeader:{type:Boolean,default:!0},showButtons:{type:Boolean,default:!0},fitContent:{type:Boolean,default:!0},showCloseButton:{type:Boolean,default:!0},showMaxButton:{type:Boolean,default:!1},minHeight:{type:Number},maxHeight:{type:Number},minWidth:{type:Number},maxWidth:{type:Number},containment:{type:Object,default:null},resizeable:{type:Boolean,default:!1},draggable:{type:Boolean,default:!1},dragHandle:{type:Object,default:null},closedCallback:{type:Function,default:null},resizeHandle:{type:Function,default:null},render:{type:Function,default:null},acceptCallback:{type:Function,default:null},rejectCallback:{type:Function,default:null},enableEsc:{type:Boolean,default:!0},enableEnter:{type:Boolean,default:!1},dialogType:{type:String,default:""},src:{type:String,default:""}};class $e{constructor(e,o){this.x=e,this.y=o}static getTransformInfo(e){const i=window.getComputedStyle(e).getPropertyValue("transform").replace(/[^-\d,]/g,"").split(",");if(i.length>=6){const r=parseInt(i[4],10),a=parseInt(i[5],10);return{x:r,y:a}}return{x:0,y:0}}static fromEvent(e,o=null){if(this.isMouseEvent(e))return new $e(e.clientX,e.clientY);if(o===null||e.changedTouches.length===1)return new $e(e.changedTouches[0].clientX,e.changedTouches[0].clientY);for(let i=0;i<e.changedTouches.length;i++)if(e.changedTouches[i].target===o)return new $e(e.changedTouches[i].clientX,e.changedTouches[i].clientY)}static isMouseEvent(e){return Object.prototype.toString.apply(e).indexOf("MouseEvent")===8}static isIPosition(e){return!!e&&"x"in e&&"y"in e}static getCurrent(e){const o=new $e(0,0);if(window){const i=window.getComputedStyle(e);if(i){const r=parseInt(i.getPropertyValue("left"),10),a=parseInt(i.getPropertyValue("top"),10);o.x=isNaN(r)?0:r,o.y=isNaN(a)?0:a}return o}return null}static copy(e){return new $e(0,0).set(e)}get value(){return{x:this.x,y:this.y}}add(e){return this.x+=e.x,this.y+=e.y,this}subtract(e){return this.x-=e.x,this.y-=e.y,this}multiply(e){this.x*=e,this.y*=e}divide(e){this.x/=e,this.y/=e}reset(){return this.x=0,this.y=0,this}set(e){return this.x=e.x,this.y=e.y,this}}class yt{constructor(e,o){this.width=e,this.height=o}static getCurrent(e){const o=new yt(0,0);if(window){const i=window.getComputedStyle(e);return i&&(o.width=parseInt(i.getPropertyValue("width"),10),o.height=parseInt(i.getPropertyValue("height"),10)),o}return null}static copy(e){return new yt(0,0).set(e)}set(e){return this.width=e.width,this.height=e.height,this}}function Jr(t,e){const o=n.ref(),i=n.ref(),r=n.ref(),a=n.ref(),l=n.ref(),c=n.ref(),s=n.ref(),u=n.ref(),f=n.ref(),d=n.ref(),p=n.ref(),y=n.ref(),C=n.ref(t.draggable),I=n.ref(!1);function M(){const E=i.value||document.body,$=window.getComputedStyle(E);if(!$||!o.value)return;const L=$e.getTransformInfo(o.value),H={};s.value&&(H.deltaL=o.value.offsetLeft-s.value.x,H.deltaT=o.value.offsetTop-s.value.y);const Y=$.getPropertyValue("position");H.width=E.clientWidth,H.height=E.clientHeight,H.pr=parseInt($.getPropertyValue("padding-right"),10),H.pb=parseInt($.getPropertyValue("padding-bottom"),10),H.position=$.getPropertyValue("position"),Y==="static"&&(E.style.position="relative"),H.translateX=L.x,H.translateY=L.y,d.value=H}function g(E){if(o.value){a.value=yt.getCurrent(o.value),l.value=$e.getCurrent(o.value),c.value=a.value?yt.copy(a.value):null,s.value=l.value?$e.copy(l.value):null,M();const $=E.target.getAttribute("type")||"";u.value={n:!!$.match(/n/),s:!!$.match(/s/),w:!!$.match(/w/),e:!!$.match(/e/)}}}function v(){var E,$,L,H;if(o.value){const Y=o.value;u.value&&((u.value.n||u.value.s)&&((E=c.value)!=null&&E.height)&&(Y.style.height=c.value.height+"px"),(u.value.w||u.value.e)&&(($=c.value)!=null&&$.width)&&(Y.style.width=c.value.width+"px"),s.value&&((L=s.value)!=null&&L.x&&(Y.style.left=s.value.x+"px"),(H=s.value)!=null&&H.y&&(Y.style.top=s.value.y+"px")))}}function S(){const E=t.minHeight?t.minHeight:1,$=t.minWidth?t.minWidth:1;c.value&&s.value&&u.value&&a.value&&(c.value.height<E&&(c.value.height=E,u.value.n&&l.value&&(s.value.y=l.value.y+(a.value.height-E))),c.value.width<$&&(c.value.width=$,u.value.w&&l.value&&(s.value.x=l.value.x+(a.value.width-$))),t.maxHeight&&c.value.height>t.maxHeight&&(c.value.height=t.maxHeight,l.value&&u.value.n&&(s.value.y=l.value.y+(a.value.height-t.maxHeight))),t.maxWidth&&c.value.width>t.maxWidth&&(c.value.width=t.maxWidth,u.value.w&&l.value&&(s.value.x=l.value.x+(a.value.width-t.maxWidth))))}function h(){if(i.value){const E=d.value;if(s.value&&c.value&&u.value&&a.value){const $=E.width-E.pr-E.deltaL-E.translateX-s.value.x,L=E.height-E.pb-E.deltaT-E.translateY-s.value.y;u.value.n&&s.value.y+E.translateY<0&&l.value&&(s.value.y=-E.translateY,c.value.height=a.value.height+l.value.y+E.translateY),u.value.w&&s.value.x+E.translateX<0&&l.value&&(s.value.x=-E.translateX,c.value.width=a.value.width+l.value.x+E.translateX),c.value.width>$&&(c.value.width=$),c.value.height>L&&(c.value.height=L)}}}function F(E){if(!r.value||!a.value||!l.value||!u.value)return;E.subtract(r.value);const $=E.x,L=E.y;u.value.n?(s.value.y=l.value.y+L,c.value.height=a.value.height-L):u.value.s&&(c.value.height=a.value.height+L),u.value.e?c.value.width=a.value.width+$:u.value.w&&(c.value.width=a.value.width-$,s.value.x=l.value.x+$),h(),S(),v()}function N(E){if(!f.value)return;const $=$e.fromEvent(E);$&&F($)}function m(){if(o.value){const{width:E,height:$,x:L,y:H}=o.value.getBoundingClientRect(),Y=$e.getTransformInfo(o.value);return{size:{width:E,height:$},position:{x:L-Y.x,y:H-Y.y}}}return null}function _(E){if(o.value){const $=m();p.value=$}r.value=void 0,a.value=null,l.value=null,c.value=null,s.value=null,u.value=null,f.value=null,document.removeEventListener("mousemove",N),document.removeEventListener("mouseup",_)}function b(){document.addEventListener("mousemove",N),document.addEventListener("mouseup",_)}function k(E){E instanceof MouseEvent&&E.button===2||C.value&&(document.body.click(),E.stopPropagation(),E.preventDefault(),r.value=$e.fromEvent(E),f.value=E.target,g(E),b())}function w(E){return o.value=E,n.createVNode(n.Fragment,null,[n.createVNode("div",{class:"fv-resizable-handle fv-resizable-n",type:"n",onMousedown:$=>k($)},null),n.createVNode("div",{class:"fv-resizable-handle fv-resizable-e",type:"e",onMousedown:$=>k($)},null),n.createVNode("div",{class:"fv-resizable-handle fv-resizable-s",type:"s",onMousedown:$=>k($)},null),n.createVNode("div",{class:"fv-resizable-handle fv-resizable-w",type:"w",onMousedown:$=>k($)},null),n.createVNode("div",{class:"fv-resizable-handle fv-resizable-ne",type:"ne",onMousedown:$=>k($)},null),n.createVNode("div",{class:"fv-resizable-handle fv-resizable-se fv-resizable-diagonal",type:"se",onMousedown:$=>k($)},null),n.createVNode("div",{class:"fv-resizable-handle fv-resizable-sw",type:"sw",onMousedown:$=>k($)},null),n.createVNode("div",{class:"fv-resizable-handle fv-resizable-nw",type:"nw",onMousedown:$=>k($)},null)])}function x(E=!0){document.body.click();const $=i.value||document.body,L=yt.getCurrent($),H=o.value;E&&H&&(y.value=m(),y.value.transform=H.style.transform),L&&H&&(c.value=L,H.style.height=c.value.height-14+"px",H.style.width=c.value.width-14+"px",H.style.left="7px",H.style.top="7px",H.style.transform="",p.value={size:c.value,position:{x:0,y:0}},C.value=!1,I.value=!0)}function T(){var E,$;if(document.body.click(),y.value){const L={width:y.value.size.width||0,height:y.value.size.height||0},H={x:(window.innerWidth-L.width)/2,y:(window.innerHeight-L.height)/2};(E=c.value)==null||E.set(L),($=s.value)==null||$.set(H);const Y=o.value;Y.style.height=L.height+"px",Y.style.width=L.width+"px",Y.style.left=`${H.x}px`,Y.style.top=`${H.y}px`,Y.style.transform="",p.value={size:L,position:H},C.value=t.draggable,I.value=!1}}function V(){if(o.value){const E=yt.getCurrent(o.value);if(E){const{width:$,height:L}=E;o.value.style.left=`${(window.innerWidth-$)/2}px`,o.value.style.top=`${(window.innerHeight-L)/2}px`,o.value.style.transform=""}}}function B(){const E=()=>{I.value?x(!1):V(),document.body.click()};return window.addEventListener("resize",E),()=>{window.removeEventListener("resize",E)}}const O=B();return{renderResizeBar:w,boundingElement:i,resizedEventParam:p,maximize:x,restore:T,allowDrag:C,isMaximized:I,unWindowResizeHandle:O}}function Zr(t,e,o){const i=n.ref(),r=n.ref(t.draggable),a=n.ref(t.lockAxis),l=n.ref(),c=n.ref(),s=n.ref(!1),u=n.ref(new $e(0,0)),f=n.ref(new $e(0,0)),d=n.ref(new $e(0,0)),p=n.ref(new $e(0,0));n.watch(()=>o.value,m=>{l.value.style.cursor=m?"move":"default"});function y(m,_){if(_.tagName==="BUTTON")return!1;if(_===m)return!0;for(const b in _.children)if(Object.prototype.hasOwnProperty.call(_.children,b)&&y(m,_.children[b]))return!0;return!1}function C(){var k,w;let m=d.value.x+f.value.x,_=d.value.y+f.value.y;a.value==="x"?(m=((k=u.value)==null?void 0:k.x)||0,d.value.x=0):a.value==="y"&&(_=((w=u.value)==null?void 0:w.y)||0,d.value.y=0);const b=`translate3d(${Math.round(m)}px, ${Math.round(_)}px, 0px)`;i.value&&(i.value.style.transform=b),p.value.x=m,p.value.y=_}function I(){if(!c.value||!i.value)return null;const m=c.value.getBoundingClientRect(),_=i.value.getBoundingClientRect(),b={top:m.top<_.top,right:m.right>_.right,bottom:m.bottom>_.bottom,left:m.left<_.left};return b.top||(d.value.y-=_.top-m.top),b.bottom||(d.value.y-=_.bottom-m.bottom),b.right||(d.value.x-=_.right-m.right),b.left||(d.value.x-=_.left-m.left),C(),b}function M(m){m&&(u.value&&m.subtract(u.value),d.value.set(m),C(),I())}function g(m){s.value&&r.value&&(m.stopPropagation(),m.preventDefault(),M($e.fromEvent(m,l.value)))}function v(){var m;s.value&&(s.value=!1,f.value.add(d.value),d.value.reset(),(m=i.value)==null||m.classList.remove("ng-dragging"),document.removeEventListener("mousemove",g),document.removeEventListener("mouseup",v))}function S(){!s.value&&l.value&&(s.value=!0,l.value.classList.add("ng-dragging"),document.addEventListener("mousemove",g),document.addEventListener("mouseup",v))}function h(){if(i.value){const m=$e.getTransformInfo(i.value);f.value.set(m);return}f.value.reset()}function F(m){if(!o.value||m instanceof MouseEvent&&m.button===2)return;const _=m.target||m.srcElement;l.value!==void 0&&_&&!y(_,l.value)||r.value!==!1&&(document.body.click(),m.stopPropagation(),m.preventDefault(),u.value=$e.fromEvent(m,i.value),h(),S())}function N(m,_,b){if(r.value&&_){if(m)l.value=m;else if(t.dragHandle){if(t.dragHandle instanceof HTMLElement)l.value=t.dragHandle;else if(typeof t.dragHandle=="string"){const k=_.querySelector(t.dragHandle);k&&(l.value=k)}}i.value=_,c.value=b,l.value?(l.value.classList.add("ng-draggable"),l.value.addEventListener("mousedown",F)):r.value=!1}}return{registerDraggle:N,resetTranslate:h}}function Kn(t,e){if(t){const o=i=>{i.key.toLowerCase()===t.toLowerCase()&&e({event:i,key:t})};return document.addEventListener("keydown",o),()=>{document.removeEventListener("keydown",o)}}}function ea(t,e){const o=n.ref(t.enableEsc);let i=null;return o.value?(i=Kn("Escape",r=>{e.emit("esc",{event:r.event,type:"esc"})}),{remove:i}):null}function ta(t,e){const o=n.ref(t.enableEnter);let i=null;return o.value?(i=Kn("Enter",r=>{e.emit("enter",{event:r.event,type:"enter"})}),{remove:i}):null}const _t=n.defineComponent({name:"FModal",props:Qr,emits:["update:modelValue","accept","cancel","closed","resize","esc","enter"],setup(t,e){const o=n.ref(t.width||300),i=n.ref(t.height||200),r=n.ref(t.modelValue),a=n.ref(""),l=n.ref(t.class),c=n.ref(t.fitContent),s=n.ref(t.showHeader),u=n.ref(""),f=n.ref(t.showCloseButton),d=n.ref(t.showMaxButton),p=n.ref(!1),y=n.ref(t.dialogType),C=n.ref(t.src),I=n.ref(""),M=n.ref(t.showButtons),g=n.ref(t.title),v=n.ref(t.resizeable),S=n.ref(t.containment||null),h=n.ref();function F(j,ie){r.value=!1,e.emit("update:modelValue",!1),ie!=null&&e.emit(ie?"accept":"cancel"),e.emit("closed",j)}const N=[{name:"cancel",text:"取消",class:"btn btn-secondary",handle:j=>{F(j,!1)}},{name:"accept",text:"确定",class:"btn btn-primary",handle:j=>{F(j,!0)}}],m=n.ref(t.buttons&&t.buttons.length?t.buttons:N),_=n.computed(()=>!!u.value),b=n.computed(()=>!!M.value&&!!m.value),k=n.ref(),w=n.ref(),x=n.ref(!1),{renderResizeBar:T,maximize:V,restore:B,boundingElement:O,resizedEventParam:E,allowDrag:$,unWindowResizeHandle:L}=Jr(t),{registerDraggle:H}=Zr(t,e,$);function Y(){const j=document.querySelectorAll(".farris-modal").length;(!j||j-1<=0)&&document.body.classList.remove("modal-open"),h.value&&h.value.classList.remove("show")}n.watch(()=>t.title,(j,ie)=>{j!==ie&&(g.value=j)}),n.watch(()=>t.modelValue,(j,ie)=>{j!==ie&&(r.value=j,j||Y())}),n.watch(()=>t.showHeader,(j,ie)=>{j!==ie&&(s.value=j)}),n.watch(()=>t.showButtons,(j,ie)=>{j!==ie&&(M.value=j)}),n.watch(()=>E.value,(j,ie)=>{const te=j||{},ge=ie||{};JSON.stringify(te)!==JSON.stringify(ge)&&e.emit("resize",{newSize:j,oldSize:ie})});const J=n.computed(()=>(r.value&&document.body.classList.add("modal-open"),r.value)),ne=n.computed(()=>{const j={modal:!0,"farris-modal":!0,fade:!0};return j["f-modal-fitContent"]=!!c.value,j.show=!!J.value,j}),le=n.computed(()=>{var te;const j={"modal-dialog":!0},ie=(te=l.value)==null?void 0:te.split(" ");return ie==null||ie.reduce((ge,Me)=>(ge[Me]=!0,ge),j),j}),R=n.computed(()=>({position:"absolute",top:`${(window.innerHeight-i.value)/2}px`,left:`${(window.innerWidth-o.value)/2}px`,width:`${o.value}px`,height:c.value?"auto":`${i.value}px`})),Z=n.computed(()=>({"modal-content":!0,"modal-content-has-header":s.value})),ue=n.computed(()=>{const j={display:s.value?"":"none"};return j["pointer-events"]=$.value?"auto":"none",j}),ee=n.computed(()=>({"f-icon":!0,modal_maximize:!0,modalrevert:x.value})),A=n.computed(()=>({"modal-body":!0,"f-utils-flex-column":y.value==="iframe"}));function U(){return{}}const ye=n.computed(()=>{const j={textAlgin:I.value},ie=U();return Object.assign(j,ie)});function fe(j){if(j.stopPropagation(),x.value){x.value=!1,B();return}V(),x.value=!0}async function je(j,ie){j.handle&&await j.handle(ie,j)&&e.emit("closed",ie)}function Pe(j){j.width&&(o.value=j.width),j.height&&(i.value=j.height),j.buttons&&(m.value=j.buttons),j.title&&(g.value=j.title)}let _e=null,Se=null;n.onMounted(()=>{w.value&&!S.value&&(S.value=w.value.parentElement,O.value=S.value,H(k.value,w.value,O.value)),J.value&&document.body.classList.add("modal-open"),_e=ea(t,e),Se=ta(t,e)}),n.onUnmounted(()=>{L&&L(),_e&&_e.remove(),Se&&Se.remove()}),e.expose({modalElementRef:w,updateModalOptions:Pe,close:F,maxDialog:fe});function Ve(){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)]),d.value&&n.createVNode("li",{onClick:fe,class:"f-btn-icon f-bare",style:"pointer-events: auto;"},[n.createVNode("span",{class:ee.value},null)]),f.value&&n.createVNode("li",{class:"f-btn-icon f-bare",onClick:j=>F(j,!1),style:"pointer-events: auto;"},[n.createVNode("span",{class:"f-icon modal_close"},null)])])}function Re(){return n.createVNode("div",{class:"modal-footer",style:ye.value},[m.value&&m.value.map(j=>n.createVNode("button",{name:j.name,type:"button",class:j.class+(j.iconClass?" btn-icontext":""),onClick:ie=>{je(j,ie)}},[!!j.iconClass&&n.createVNode("i",{class:j.iconClass},null),j.text]))])}function Ie(){return n.createVNode("div",{ref:k,class:"modal-header",style:ue.value},[n.createVNode("div",{class:"modal-title"},[_.value&&n.createVNode("span",{class:u.value,style:"margin-right: 8px"},null),n.createVNode("span",{class:"modal-title-label"},[g.value])]),n.createVNode("div",{class:"actions"},[Ve()])])}function pe(j){j.stopPropagation()}return()=>n.createVNode(n.Teleport,{to:"body"},{default:()=>[J.value&&n.createVNode(n.Transition,{name:"fade",appear:!0},{default:()=>{var j,ie;return[n.createVNode("div",{class:ne.value,style:"display: block",ref:h,onClick:pe},[n.createVNode("div",{id:a.value,class:le.value,style:R.value,ref:w},[n.createVNode("div",{class:Z.value},[s.value&&Ie(),n.createVNode("div",{class:A.value},[(ie=(j=e.slots).default)==null?void 0:ie.call(j),y.value==="iframe"&&n.createVNode("iframe",{title:a.value,class:"f-utils-fill",width:"100%",frameborder:"0",src:C.value},null)]),b.value&&Re()]),!c.value&&v.value&&w.value&&!x.value&&T(w.value)])])]}})]})}});function Qn(t){if(t.content&&t.content.render)return t.content.render;if(t.render&&typeof t.render=="function")return t.render}function na(t){const e=document.createElement("div");e.style.display="contents";const o=n.createApp({setup(i,r){n.onUnmounted(()=>{document.body.removeChild(e)});const a=n.ref(),l=n.ref(t.class||""),c=n.ref(!!t.showButtons),s=n.ref(!!t.showHeader),u=n.ref(t.showCloseButton==null?!0:t.showCloseButton),f=n.ref(!0),d=n.ref(t.title||""),p=t.acceptCallback||(()=>{}),y=t.rejectCallback||(()=>{}),C=t.closedCallback||(v=>{}),I=t.resizeHandle||(v=>{}),M=Qn(t),g=v=>{f.value=!1,o.unmount(),C(v)};return n.onMounted(()=>{}),r.expose({modalRef:a}),()=>n.createVNode(_t,{ref:a,class:l.value,modelValue:f.value,"onUpdate:modelValue":v=>f.value=v,title:d.value,width:t.width,height:t.height,buttons:t.buttons,"show-header":s.value,"show-buttons":c.value,"show-close-button":u.value,"show-max-button":!1,onAccept:p,onCancel:y,fitContent:t.fitContent==null?!0:t.fitContent,onClosed:g,onResize:I},{default:()=>[M&&M(o)]})}});return document.body.appendChild(e),o.mount(e),o}class Jn{constructor(e){q(this,"appContext",null);q(this,"modalRef",n.ref());q(this,"activeModalIndex",n.ref(0));q(this,"modalRefs",{});q(this,"isUseEscCloseModal",n.ref(!1));q(this,"activeModalInstance",n.computed(()=>this.modalRefs[this.activeModalIndex.value]));this.app=e,this.appContext=e?e._context:null}getCurrentModal(){return this.activeModalInstance.value}adaptToWindow(e,o){const{width:i,height:r}={width:window.innerWidth,height:window.innerHeight};return i<e&&(e=i),r<o&&(o=r),{width:e,height:o}}static show(e){const o=Object.assign({title:"",showButtons:!0,showHeader:!0},e);return na(o)}open(e){const o=document.createDocumentFragment();e.showMaxButton&&e.fitContent&&(e.showMaxButton=!1);const i=n.shallowRef(Object.assign({title:"",showButtons:!0,showHeader:!0},e)),r=n.ref(!0),a=i.value.acceptCallback||(()=>{}),l=i.value.rejectCallback||(()=>{}),c=i.value.closedCallback||((h,F)=>{}),s=i.value.resizeHandle||(h=>{});let u;const f=Qn(i.value),d=h=>{var N;r.value=!1;const F=(N=h==null?void 0:h.target)==null?void 0:N.classList.contains("modal_close");c(h,this.isUseEscCloseModal.value?"esc":F?"icon":"button")},p=h=>{d(h),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 F=Object.keys(this.modalRefs).map(N=>Number(N));F.length>0?this.activeModalIndex.value=Math.max(...F):this.activeModalIndex.value=0}this.isUseEscCloseModal.value=!1})},y=h=>{var F;this.isUseEscCloseModal.value=!0,this.activeModalInstance&&((F=this.activeModalInstance.value)==null||F.close(h==null?void 0:h.event))},{width:C,height:I}=i.value,M=this.adaptToWindow(C||500,I||320);Object.assign(i.value,M);const g=()=>n.createVNode(_t,n.mergeProps({ref:this.modalRef,modelValue:r.value,"onUpdate:modelValue":h=>r.value=h},i.value,{onAccept:a,onCancel:l,onClosed:p,onResize:s,onEsc:y}),{default:()=>[f&&f(this.app)]});return u=(h=>{const F=n.h(g,h);return F.appContext=this.appContext,n.render(F,o),F})({...i.value}),this.activeModalIndex.value++,this.modalRefs[this.activeModalIndex.value]=this.modalRef.value,{update:h=>{i.value={...i.value,...h},u&&n.render(n.cloneVNode(u,{...i}),o)},destroy:p,modalRef:this.activeModalInstance}}}const Zn=Symbol("FModalService");_t.install=t=>{t.component(_t.name,_t);const e=new Jn(t);t.provide(Zn,e),t.provide("FModalService",e)};const oa={id:{type:String},required:{type:Boolean,default:!1},text:{type:String,default:""},title:{type:String}},ia=n.defineComponent({name:"FDynamicFormLabel",props:oa,emits:[],setup(t,e){const o=n.ref(t.title||t.text),i=n.ref(t.required),r=n.ref(t.text);return n.watch(()=>t.text,()=>{r.value=t.text}),n.watch(()=>t.required,(a,l)=>{a!==l&&(i.value=a)}),()=>r.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"},[r.value])])}}),re={},ae={},se={},ce={};let eo=!1;function ra(){eo||(eo=!0,Eo.register(re,ae,se,ce),Oo.register(re,ae,se,ce),$o.register(re,ae,se,ce),jo.register(re,ae,se,ce),Po.register(re,ae,se,ce),Ro.register(re,ae,se,ce),St.register(re,ae,se,ce),Dt.register(re,ae,se,ce),xi.register(re,ae,se,ce),vi.register(re,ae,se,ce),Ho.register(re,ae,se,ce),Do.register(re,ae,se,ce),Lo.register(re,ae,se,ce),Ao.register(re,ae,se,ce),Go.register(re,ae,se,ce),Rt.register(re,ae,se,ce),Wo.register(re,ae,se,ce),Io.register(re,ae,se,ce),Fi.register(re,ae,se,ce),qo.register(re,ae,se,ce),zo.register(re,ae,se,ce),Uo.register(re,ae,se,ce),Xo.register(re,ae,se,ce),Yo.register(re,ae,se,ce),Ko.register(re,ae,se,ce),_i.register(re,ae,se,ce),Qo.register(re,ae,se,ce),Zo.register(re,ae,se,ce),Jo.register(re,ae,se,ce),Vo.register(re,ae,se,ce),ei.register(re,ae,se,ce),ti.register(re,ae,se,ce),No.register(re,ae,se,ce),ni.register(re,ae,se,ce),oi.register(re,ae,se,ce),ii.register(re,ae,se,ce),ri.register(re,ae,se,ce),li.register(re,ae,se,ce),si.register(re,ae,se,ce),ai.register(re,ae,se,ce),Mi.register(re,ae,se),Bo.register(re,ae,se,ce),ci.register(re,ae,se,ce),di.register(re,ae,se,ce),ui.register(re,ae,se,ce),fi.register(re,ae,se,ce),pi.register(re,ae,se,ce),ko.register(re,ae,se,ce),Zt.register(re,ae,se,ce),mi.register(re,ae,se,ce),hi.register(re,ae,se,ce),To.register(re,ae,se,ce),tn.register(re,ae,se,ce),yi.register(re,ae,se,ce),gi.register(re,ae,se,ce),bi.register(re,ae,se,ce),Ci.register(re,ae,se,ce),wi.register(re,ae,se,ce),Si.register(re,ae,se,ce),Ti.register(re,ae,se,ce))}function aa(){ra();function t(r){const a=re[r];if(!a)throw new Error(`Could not find the editor of type '${r}'`);return a}function e(r,a){const l=ae[r];return l?l(a):{}}function o(r){switch(r){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":case"solution-preset":return"onFieldsChanged"}}function i(r){switch(r){case"combo-list":case"input-group":case"textarea":return"onClear"}}return{resolveEditorProps:e,resolveEditorType:t,getChangeFunctionName:o,getClearFunctionName:i}}const la=n.defineComponent({name:"FDynamicFormGroup",props:Ln,emits:["change","update:modelValue"],setup(t,e){var h;const o=n.ref(t.id),i=n.ref(t.customClass),r=n.ref(t.editor),a=n.ref(t.label),l=n.ref(t.modelValue),c=n.ref(t.readonly),s=n.ref(((h=t.editor)==null?void 0:h.required)||t.required),u=n.ref(t.showLabel),f=n.ref(t.visible);n.ref(t.type);const d=n.ref(),{resolveEditorProps:p,resolveEditorType:y,getChangeFunctionName:C,getClearFunctionName:I}=aa(),M=n.computed(()=>({"form-group":!0,"farris-form-group":!0,"common-group":!0,"q-state-readonly":c.value}));function g(F,N){l.value=N!==void 0?N:F,e.emit("update:modelValue",l.value),e.emit("change",l.value)}function v(){e.emit("update:modelValue","")}const S=n.computed(()=>{const F=r.value.type||"input-group",N=y(F),m=p(F,r.value),_=C(F),b=I(r.value.type);return b&&(m[b]=v),m[_]=g,(m.id==null||m.id==="")&&(m.id=o.value),F==="number-range"&&r.value.onBeginValueChange&&typeof r.value.onBeginValueChange=="function"?(r.value.onBeginValueChange&&typeof r.value.onBeginValueChange=="function"&&(m.onBeginValueChange=r.value.onBeginValueChange),r.value.onEndValueChange&&typeof r.value.onEndValueChange=="function"&&(m.onEndValueChange=r.value.onEndValueChange)):F==="lookup"&&r.value["onUpdate:idValue"]&&typeof r.value["onUpdate:idValue"]=="function"&&(m["onUpdate:idValue"]=r.value["onUpdate:idValue"]),()=>n.createVNode(N,n.mergeProps({ref:d},m,{modelValue:l.value,"onUpdate:modelValue":k=>l.value=k}),e.slots)});return n.watch([()=>t.id,()=>t.customClass,()=>t.editor,()=>t.label,()=>t.modelValue,()=>t.readonly,()=>t.required,()=>t.showLabel,()=>t.visible],([F,N,m,_,b,k,w,x,T])=>{var V;o.value=F,i.value=N,r.value=m,a.value=_,l.value=b,c.value=k,s.value=((V=r.value)==null?void 0:V.required)||w,u.value=x,f.value=T}),e.expose({editorRef:d}),()=>f.value&&n.createVNode("div",{id:`${o.value}-input-group`,class:i.value,style:t.customStyle},[n.createVNode("div",{class:"farris-group-wrap"},[n.createVNode("div",{class:M.value},[u.value&&n.createVNode(ia,{id:`${o.value}-lable`,required:s.value,text:a.value,title:a.value},null),n.createVNode("div",{class:"farris-input-wrap"},[S.value()])])])])}}),sa=new Map([["appearance",ht]]);function ca(t,e,o){return e}We({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:""},autoHeight:{type:Boolean,default:!1},autofocus:{type:Boolean,default:!1},rows:{type:Number,default:2},showCount:{type:Boolean,default:!1},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1},updateOn:{type:String,default:"blur"}},{$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},required:{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:["type"],ignore:["id","appearance","binding","visible"]},sa,ca);const vt=class vt{static getEditorTypesByMDataType(e){const o=vt.fieldControlTypeMapping[e];return o||[{key:"",value:""}]}static getAllInputTypes(){const e=[];for(const o in vt.fieldControlTypeMapping)vt.fieldControlTypeMapping[o].forEach(i=>{e.find(r=>r.key===i.key&&r.value===i.value)||e.push({key:i.key,value:i.value})});return e}static mappingDomPropAndSchemaProp(e){var r;const o=(r=e.editor)==null?void 0:r.type;if(!o)return[];const i=[];switch(i.push({domField:"editor.required",schemaField:"require"}),i.push({domField:"editor.readonly",schemaField:"readonly"}),o){case oe["data-grid-column"].type:case oe["tree-grid-column"].type:{i.push({domField:"title",schemaField:"name"});break}default:i.push({domField:"label",schemaField:"name"})}return(o===oe["input-group"].type||o===oe.textarea.type||o===oe["number-spinner"].type)&&i.push({domField:"editor.maxLength",schemaField:"type.length"}),o===oe["number-spinner"].type&&i.push({domField:"editor.precision",schemaField:"type.precision"}),(o===oe["combo-list"].type||o===oe["radio-group"].type)&&i.push({domField:"editor.data",schemaField:"type.enumValues"}),o===oe["date-picker"].type&&(i.push({domField:"editor.displayFormat",schemaField:"editor.format"}),i.push({domField:"editor.fieldType",schemaField:"type.name"})),o===oe["number-spinner"].type&&(i.push({domField:"editor.max",schemaField:"editor.maxValue"}),i.push({domField:"editor.min",schemaField:"editor.minValue"})),o===oe.lookup.type&&(i.push({domField:"editor.dataSource",schemaField:"editor.dataSource"}),i.push({domField:"editor.valueField",schemaField:"editor.valueField"}),i.push({domField:"editor.textField",schemaField:"editor.textField"}),i.push({domField:"editor.displayType",schemaField:"editor.displayType"}),i.push({domField:"editor.mapFields",schemaField:"editor.mapFields"}),i.push({domField:"editor.helpId",schemaField:"editor.helpId"})),i.push({domField:"path",schemaField:"bindingPath"}),i.push({domField:"binding.path",schemaField:"bindingField"}),i.push({domField:"binding.fullPath",schemaField:"path"}),(o===oe["data-grid-column"].type||o===oe["tree-grid-column"].type)&&i.push({domField:"field",schemaField:"bindingPath"}),i}};q(vt,"fieldControlTypeMapping",{String:[{key:oe["input-group"].type,value:oe["input-group"].name},{key:oe.lookup.type,value:oe.lookup.name},{key:oe["date-picker"].type,value:oe["date-picker"].name},{key:oe["check-group"].type,value:oe["check-group"].name},{key:oe["radio-group"].type,value:oe["radio-group"].name},{key:oe["combo-list"].type,value:oe["combo-list"].name},{key:oe.textarea.type,value:oe.textarea.name}],Text:[{key:oe.textarea.type,value:oe.textarea.name},{key:oe.lookup.type,value:oe.lookup.name}],Decimal:[{key:oe["number-spinner"].type,value:oe["number-spinner"].name}],Integer:[{key:oe["number-spinner"].type,value:oe["number-spinner"].name}],Number:[{key:oe["number-spinner"].type,value:oe["number-spinner"].name}],BigNumber:[{key:oe["number-spinner"].type,value:oe["number-spinner"].name}],Date:[{key:oe["date-picker"].type,value:oe["date-picker"].name}],DateTime:[{key:oe["date-picker"].type,value:oe["date-picker"].name}],Boolean:[{key:oe.switch.type,value:oe.switch.name},{key:oe["check-box"].type,value:oe["check-box"].name}],Enum:[{key:oe["combo-list"].type,value:oe["combo-list"].name},{key:oe["radio-group"].type,value:oe["radio-group"].name}],Object:[{key:oe.lookup.type,value:oe.lookup.name},{key:oe["combo-list"].type,value:oe["combo-list"].name},{key:oe["radio-group"].type,value:oe["radio-group"].name}]});let Mt=vt;class Xe extends Et{constructor(o,i){super(o,i);q(this,"responseLayoutEditorFunction");this.responseLayoutEditorFunction=_r(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 a;const r=this;return this.setDesignViewModelField(o),{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:r.designViewModelField?Mt.getEditorTypesByMDataType((a=r.designViewModelField.type)==null?void 0:a.name):Mt.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,c){if(l)switch(l&&l.propertyID){case"type":{r.changeControlType(o,l,i);break}case"label":{l.needRefreshControlTree=!0;break}}}}}getAppearanceProperties(o,i){const r=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:r.responseLayoutEditorFunction.checkCanOpenLayoutEditor(o,r.componentId)}}},setPropertyRelates(a,l){if(a)switch(a&&a.propertyID){case"responseLayout":r.responseLayoutEditorFunction.changeFormControlsByResponseLayoutConfig(a.propertyValue,r.componentId||o.id),r.updateUnifiedLayoutAfterResponseLayoutChanged(r.componentId),r.updateElementByParentContainer(o.id,i),delete o.responseLayout;break;case"class":r.updateUnifiedLayoutAfterControlChanged(a.propertyValue,o.id,this.componentId),r.updateElementByParentContainer(o.id,i);break}}}}getEditorProperties(o){return this.getComponentConfig(o)}changeControlType(o,i,r){var f,d,p,y;const a=i.propertyValue,l=r&&r.parent&&r.parent.schema;if(!l)return;const c=l.contents.findIndex(C=>C.id===o.id),s=l.contents[c];let u;this.designViewModelField&&(this.designViewModelUtils.getDgViewModel(this.viewModelId).changeField(this.designViewModelField.id,{editor:{$type:a},name:this.designViewModelField.name,require:this.designViewModelField.require,readonly:this.designViewModelField.readonly},!1),u=this.controlCreatorUtils.setFormFieldProperty(this.designViewModelField,a)),u||(u=this.controlCreatorUtils.createFormGroupWithoutField(a)),Object.assign(u,{id:s.id,appearance:s.appearance,size:s.size,label:s.label,binding:s.binding,visible:s.visible}),Object.assign(u.editor,{isTextArea:u.isTextArea&&s.isTextArea,placeholder:(f=s.editor)==null?void 0:f.placeholder,holdPlace:(d=s.editor)==null?void 0:d.holdPlace,readonly:(p=s.editor)==null?void 0:p.readonly,required:(y=s.editor)==null?void 0:y.required}),l.contents.splice(c,1),l.contents.splice(c,0,u),r.schema=Object.assign(s,u),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(C=>C.classList.remove("dgComponentSelected")),Array.from(document.getElementsByClassName("dgComponentFocused")).forEach(C=>C.classList.remove("dgComponentFocused")),Ft.value++}getComponentConfig(o,i={},r={},a){const l=Object.assign({description:"编辑器",title:"编辑器",type:"input-group",$converter:"/converter/property-editor.converter"},i),c=Object.assign({readonly:{description:"",title:"只读",type:"boolean",editor:{enableClear:!0,editable:!0}},disabled:{description:"",title:"禁用",type:"boolean",visible:!1},placeholder:{description:"当控件没有值时在输入框中显示的文本",title:"提示文本",type:"string"}},r);return{...l,properties:{...c},setPropertyRelates:a}}updateUnifiedLayoutAfterControlChanged(o,i,r){const a=o.split(" ");let l=a.find(d=>/^col-([1-9]|10|11|12)$/.test(d)),c=a.find(d=>/^col-md-([1-9]|10|11|12)$/.test(d)),s=a.find(d=>/^col-xl-([1-9]|10|11|12)$/.test(d)),u=a.find(d=>/^col-el-([1-9]|10|11|12)$/.test(d));l=l||"col-12",c=c||"col-md-"+l.replace("col-",""),s=s||"col-xl-"+c.replace("col-md-",""),u=u||"col-el-"+s.replace("col-xl-","");const f={id:i,columnInSM:parseInt(l.replace("col-",""),10),columnInMD:parseInt(c.replace("col-md-",""),10),columnInLG:parseInt(s.replace("col-xl-",""),10),columnInEL:parseInt(u.replace("col-el-",""),10)};this.updateUnifiedLayoutAfterResponseLayoutChanged(r,f)}updateUnifiedLayoutAfterResponseLayoutChanged(o,i){const{formNode:r}=this.responseLayoutEditorFunction.checkCanFindFormNode(o);if(!r||!r.unifiedLayout)return;const a=[];if(this.responseLayoutEditorFunction.getResonseFormLayoutConfig(r,a,1),i){const C=a.find(I=>I.id===i.id);Object.assign(C||{},i)}const l=a.map(C=>C.columnInSM),c=a.map(C=>C.columnInMD),s=a.map(C=>C.columnInLG),u=a.map(C=>C.columnInEL),f=this.checkIsUniqueColumn(l)?l[0]:null,d=this.checkIsUniqueColumn(c)?c[0]:null,p=this.checkIsUniqueColumn(s)?s[0]:null,y=this.checkIsUniqueColumn(u)?u[0]:null;Object.assign(r.unifiedLayout,{uniqueColClassInSM:f,uniqueColClassInMD:d,uniqueColClassInLG:p,uniqueColClassInEL:y})}checkIsUniqueColumn(o){const i=new Set(o);return Array.from(i).length===1}getItemCollectionEditor(o,i,r){return i=i||"value",r=r||"name",{editor:{columns:[{field:i,title:"值",dataType:"string"},{field:r,title:"名称",dataType:"string"},{field:"disabled",title:"禁用",visible:!1,dataType:"boolean",editor:{type:"switch"}}],type:"item-collection-editor",valueField:i,nameField:r,requiredFields:[i,r],uniqueFields:[i,r],readonly:this.checkEnumDataReadonly(o)}}}checkEnumDataReadonly(o){return!o.binding||o.binding.type!=="Form"?!1:!!(this.designViewModelField&&this.designViewModelField.type&&this.designViewModelField.type.$type===xe.FormSchemaEntityFieldType$Type.EnumType)}}class da extends Xe{constructor(e,o){super(e,o)}}We({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}},An,Wt,void 0);const ua={$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"},initialState:{description:"",type:"object"}},required:["id","type"]},fa={initialState:{type:Object,default:{uniqueColClassInSM:12,uniqueColClassInMD:6,uniqueColClassInLG:3,uniqueColClassInEL:2}}};nn.createPropsResolver(fa,ua,br,xr);const pa={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"},buttons:{type:Object,default:[]}};function Yt(){return new DOMException("The request is not allowed","NotAllowedError")}async function ma(t){if(!navigator.clipboard)throw Yt();return navigator.clipboard.writeText(t)}async function ha(t){const e=document.createElement("span");e.textContent=t,e.style.whiteSpace="pre",e.style.webkitUserSelect="auto",e.style.userSelect="all",document.body.appendChild(e);const o=window.getSelection(),i=window.document.createRange();o==null||o.removeAllRanges(),i.selectNode(e),o==null||o.addRange(i);let r=!1;try{r=window.document.execCommand("copy")}finally{o==null||o.removeAllRanges(),window.document.body.removeChild(e)}if(!r)throw Yt()}async function ga(t){try{await ma(t)}catch(e){try{await ha(t)}catch(o){throw o||e||Yt()}}}function ya(){async function t(e){await ga(e)}return{onCopy:t}}function va(t,e,o,i){const r=n.ref(14),a=n.ref(140),l=n.ref(""),c=n.ref(i.value.length),s=n.computed(()=>i.value),u=n.computed(()=>({"font-size":`${r.value}px`,height:"100%"}));function f(d){if(d.currentTarget){const p=d.currentTarget.value||"";c.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:a.value,onInput:d=>f(d)},[s.value]),n.createVNode("span",{class:"textarea-wordcount",title:l.value,style:"position: absolute; bottom: 76px; right: 32px; cursor: pointer; text-align: right;"},[c.value+" / "+a.value])])}function ba(t,e,o,i){const r=va(t,e,o,i),a=new Map([["text-area",r]]);function l(c){return a.get(c)||null}return{getEditorRender:l}}function Ca(){const t=n.ref(!1),e=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=t.value?"0.8":"0",i.display=t.value?"":"none",i}),feedbackMessage:e,toShowFeedback:t}}function wa(t,e){const o=e.getEditorRender(t.promptEditorType);return()=>o&&o()}function Sa(t){const e=n.computed(()=>!!t.value&&!!t.value.date),o=n.computed(()=>`发生时间 : ${t.value&&t.value.date||""}`),i=n.computed(()=>!!t.value&&!!t.value.detail),r=n.computed(()=>"详细信息 : "+(t.value&&t.value.detail||"")),a="exp_switch_"+new Date().getTime();return()=>n.createVNode("div",{class:"toast-msg-detail"},[e.value&&n.createVNode("div",null,[o.value]),i.value&&n.createVNode("div",{class:"exception_wrap"},[n.createVNode("input",{type:"checkbox",id:a,class:"d-none exp_switch"},null),n.createVNode("div",{class:"exception_error_msg"},[n.createVNode("label",{class:"swith",htmlFor:a},null),n.createVNode("div",{innerHTML:r.value},null)])])])}function xa(t){return()=>n.createVNode("p",{class:"toast-msg-detail",innerHTML:t.value},null)}function Fa(t,e,o,i){const r=n.ref(t.exceptionInfo),a=n.computed(()=>{const p={"f-icon":!0},y=`f-icon-${e.value}`;return p[y]=!0,p}),l=n.computed(()=>o.value||r.value&&r.value.message),c=n.computed(()=>i.value),s=n.computed(()=>!!i.value),u=n.computed(()=>!!r.value);function f(){return u.value?Sa(r):s.value?xa(c):()=>null}const d=f();return()=>n.createVNode(n.Fragment,null,[n.createVNode("div",{class:"float-left modal-tips-iconwrap"},[n.createVNode("span",{class:a.value},null)]),n.createVNode("div",{class:"modal-tips-content"},[n.createVNode("p",{class:"toast-msg-title",innerHTML:l.value},null),d()])])}function _a(t,e,o){const{onCopy:i}=e,{toShowFeedback:r}=o,a=n.ref("复制成功"),l=n.ref("复制详细信息"),c=n.ref(t.exceptionInfo||{date:"",message:"",detail:""}),s=n.computed(()=>c.value&&c.value.detail||"");function u(f){i(s.value).catch(d=>{a.value="复制失败"}).finally(()=>{r.value=!0,setTimeout(()=>{r.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 Ma(t,e,o,i){const r=n.ref(t.type),a=n.ref(t.buttons),l=n.ref(t.exceptionInfo),c=n.ref(t.okButtonText),s=n.ref(t.cancelButtonText),u=n.ref(!0),f=n.ref(!0),d=n.computed(()=>!!(a.value&&a.value.length)),p=n.computed(()=>l.value&&l.value.date&&l.value.message&&l.value.detail),y=n.computed(()=>!(a.value&&a.value.length)&&(c.value||s.value)),C=n.computed(()=>f.value&&c.value),I=n.computed(()=>u.value&&s.value),M=_a(t,o,i);function g(S){r.value==="question"&&e.emit("reject"),e.emit("close")}function v(S){r.value==="question"&&e.emit("accept"),e.emit("close")}return()=>n.createVNode("div",{class:"modal-footer"},[p.value&&M(),y.value&&I.value&&n.createVNode("button",{type:"button",class:"btn btn-secondary btn-lg",onClick:g},[s.value]),y.value&&C.value&&n.createVNode("button",{type:"button",class:"btn btn-primary btn-lg",onClick:v},[c.value]),d.value&&a.value.length&&a.value.map(S=>n.createVNode("button",{type:"button",onClick:S.handle,class:S.class},[S.iconClass&&n.createVNode("span",{class:S.iconClass},null),S.text]))])}const Pt=n.defineComponent({name:"FMessageBox",props:pa,emits:["accept","reject","close"],setup(t,e){const o=n.ref(t.type),i=n.ref(t.title),r=n.ref(t.detail),a=n.computed(()=>{const M={"modal-tips":!0,"d-flex":!0,"flex-row":!0},g=`messager-type-${o.value}`;return M[g]=!0,M}),l=n.computed(()=>{const M={};return o.value==="prompt"?M.padding="0.5rem 0.5rem 1rem 1.5rem":o.value==="error"&&(M.padding="0.5rem 1.5rem 1rem 1.5rem"),M}),c=ya(),s=ba(t,o,i,r),u=Ca(),{feedbackStyle:f,feedbackMessage:d}=u;function p(){return n.createVNode("div",{style:f.value},[d.value])}function y(){switch(o.value){case"prompt":return wa(t,s);default:return Fa(t,o,i,r)}}const C=y(),I=Ma(t,e,c,u);return()=>n.createVNode("div",{class:"farris-messager"},[n.createVNode("section",{class:a.value,style:l.value},[C()]),I(),p()])}});class ft{static show(e){const o=n.reactive({...e}),i=!1,r=o.type==="error"||o.type==="prompt",a=o.type==="error"?"错误提示":o.type==="prompt"&&o.title||"",l=o.acceptCallback||(()=>{}),c=o.rejectCallback||(()=>{});let s=null,u=new Jn(s);const f=()=>{s&&(s==null||s.destroy(),u=null)};return s=u==null?void 0:u.open({class:"modal-message modal-message-type-info",title:a,showButtons:i,showHeader:r,width:o.width||400,fitContent:!0,showMaxButton:!1,draggable:!0,render:()=>n.createVNode(Pt,n.mergeProps(o,{onAccept:l,onReject:c,onClose:f}),null)}),u==null?void 0:u.getCurrentModal()}static info(e,o){const i=n.reactive({type:"info",title:e,detail:o,okButtonText:"知道了",cancelButtonText:""});ft.show(i)}static warning(e,o){const i=n.reactive({type:"warning",title:e,detail:o,okButtonText:"知道了",cancelButtonText:""});ft.show(i)}static success(e,o){const i=n.reactive({type:"success",title:e,detail:o,okButtonText:"关闭",cancelButtonText:""});ft.show(i)}static error(e,o,i){const r=n.reactive({width:500,type:"error",okButtonText:"关闭",cancelButtonText:"",exceptionInfo:{date:i,message:e,detail:o}});ft.show(r)}static prompt(e,o){const i=n.reactive({type:"prompt",title:e,detail:o,okButtonText:"确定",cancelButtonText:"取消"});ft.show(i)}static question(e,o,i,r){const a=n.reactive({type:"question",title:e,detail:o,okButtonText:"确定",cancelButtonText:"取消",acceptCallback:i,rejectCallback:r});ft.show(a)}}Pt.install=t=>{t.component(Pt.name,Pt),t.provide("FMessageBoxService",ft)};var Tt=(t=>(t[t.Value=0]="Value",t[t.SmartHelp=1]="SmartHelp",t[t.Enum=2]="Enum",t[t.Express=3]="Express",t))(Tt||{}),tt=(t=>(t.Equal="0",t.NotEqual="1",t.Greater="2",t.GreaterOrEqual="3",t.Less="4",t.LessOrEqual="5",t.Like="6",t.LikeStartWith="7",t.LikeEndWith="8",t.In="9",t.NotIn="10",t))(tt||{});const Ta=[{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:"结束是"}],ka={"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 Va(t,e,o){const{fieldMap:i}=o;function r(a){const l=i.get(a.fieldCode);if(!l)return[];const c=l.editor.type,s=new Set(ka[c]);return Ta.filter(f=>s.has(f.value))}return{getCompareOperators:r}}function to(){const t=n.ref({relation:0,items:[],children:[],path:[],groupId:0,level:0}),e=new Map,o=new Map;let i=0;function r(){return{id:"",fieldCode:"",fieldName:"",compareType:tt.Equal,valueType:Tt.Value,value:new Ot,relation:0,conditionId:Date.now()}}function a(b,k){return{relation:b,items:[],children:[],path:[],groupId:++i,level:k}}function l(){const b=Object.assign({},t.value);o.forEach((k,w)=>{k.groupId===b.groupId&&o.set(w,b)}),e.forEach((k,w)=>{k.groupId===b.groupId&&e.set(w,b)}),t.value=b}function c(b){const k=new Map;let w=0;return b.forEach((x,T)=>{var V,B;if(w+=((V=x.lBracket)==null?void 0:V.length)||0,k.set(T,w),w-=((B=x.rBracket)==null?void 0:B.length)||0,w<0)throw new Error("The right bracket is out of range.")}),k}function s(b,k,w,x,T){for(let V=0;V<k;V++){const B=b+(V+1),O=a(T,B);w.children.push(O),o.set(O.groupId,w),w=w.children[w.children.length-1],x.push(w)}return w}function u(b,k,w,x,T){for(let E=k;E<=0;E++)x.pop();const V=x[x.length-1];if(!V)throw new Error("The group path is out of range");const B=b+k,O=a(T,B);return V.children.push(O),o.set(O.groupId,V),w=V.children[V.children.length-1],x.push(w),w}function f(b,k,w,x){w.pop();const T=w[w.length-1],V=a(x,b);return T.children.push(V),o.set(V.groupId,T),k=T.children[T.children.length-1],w.push(k),k}function d(b,k,w,x,T,V){let B=b[b.length-1];if(!B)throw new Error("The group path is out of range");const O=k.get(x)||0,E=k.get(w)||0;if(w<0||w===x)return b[b.length-1];const $=O-E,L=T&&T.relation!==void 0?T.relation:1;return B=$>0?s(E,$,B,b,L):B,B=$<0?u(E,$,B,b,L):B,B=$===0&&E>0&&O>0&&T&&V&&!!T.rBracket&&!!V.lBracket?f(E,B,b,L):B,B}function p(b){const w={relation:b.length&&b[0].relation!==void 0?b[0].relation:1,items:[],children:[],path:[],groupId:0,level:0},x=[w],T=c(b);return b.forEach((V,B)=>{const O=B-1,E=b[O],$=d(x,T,O,B,E,V);$.items.push(V),e.set(V.conditionId,$)}),t.value=w,w}function y(){const b=r();e.set(b.conditionId,t.value),t.value.items.push(b)}function C(b){if(!b)return;const k=e.get(b.conditionId);if(k){const w=k.items.findIndex(T=>T.conditionId===b.conditionId)+1,x=r();e.set(x.conditionId,k),k.items.splice(w,0,x),l()}}function I(b,k,w,x){b.reduce((T,V)=>{const B=V.conditionId!==void 0,O=V.groupId!==void 0;if(B){const E=V;w.push(E),T.items.set(E.conditionId,E)}if(O){const E=V;x.push(E),T.groups.set(E.groupId,E)}return T},k)}function M(b,k,w,x,T){b&&(b.items=k.length?b.items.filter(V=>!w.has(V.conditionId)):b.items,b.children=x.length?b.children.filter(V=>!T.has(V.groupId)):b.children)}function g(b,k,w){k.forEach(x=>{b.items.push(x),e.set(x.conditionId,b)}),w.forEach(x=>{b.children.push(x),o.set(x.groupId,b)})}function v(b){const k=b[0],w=k.conditionId!==void 0?e.get(k.conditionId):o.get(k.groupId),x={items:new Map,groups:new Map},T=[],V=[];if(w){I(b,x,T,V),M(w,T,x.items,V,x.groups);const B=a(w.relation,w.level+1);g(B,T,V),w.children.push(B),o.set(B.groupId,w),l()}}function S(b){const k=[...b.items],w=[...b.children],x=o.get(b.groupId);x&&(x.children=x.children.filter(T=>T.groupId!==b.groupId),o.delete(b.groupId),k.forEach(T=>{x.items.push(T),e.set(T.conditionId,x)}),w.forEach(T=>{x.children.push(T),o.set(T.groupId,x)}),l())}function h(b){b.relation=b.relation===1?2:1,l()}let F;function N(b){const{relation:k}=b;return(b.children&&b.children.length?b.children.map((x,T,V)=>{const B=F(x);return B[0].lBracket=(B[0].lBracket||"")+"(",B[B.length-1].rBracket=(B[B.length-1].rBracket||"")+")",B[B.length-1].relation=T<V.length-1?k:0,B}):[]).flat()}F=(b=t.value)=>{const{relation:k}=b,w=b.items.map((T,V,B)=>(T.lBracket=V===0?"(":"",T.rBracket=V===B.length-1?")":"",T.relation=V<B.length-1?k||1:0,T)),x=N(b);return[...w,...x]};function m(b){const k=b||t.value;if(k.children.length&&k.children.forEach(w=>{m(w)}),k.level===0&&!k.items.length&&k.children.length===1){const w=k.children[0];t.value.relation=w.relation,S(w)}else k.items.length===0&&k.children.length<=1&&S(k)}function _(b){const k=e.get(b.conditionId);k&&(k.items=k.items.filter(w=>w.conditionId!==b.conditionId),e.delete(b.conditionId),m(),l())}return{addCondition:y,changeGroupRelation:h,conditionGroupMap:e,getConditions:F,group:v,groupParentMap:o,insertConditionTo:C,loadConditionGroup:p,refresh:l,removeCondition:_,rootGroup:t,unGroup:S}}function Ia(t,e,o){const i=n.ref(new Set),r=n.ref(new Set),{conditionGroupMap:a,groupParentMap:l}=o;let c,s;function u(g){let v=c.level<=g.level?c:g,S=c.level>g.level?c:g;const h=[];for(;S&&v&&S!==v;)S.level>v.level?(h.push(S),S=l.get(S.groupId)):S.level===v.level&&(v=l.get(v.groupId),v&&h.unshift(v));return h}function f(g){r.value.add(g.groupId),g.items.forEach(v=>i.value.add(v.conditionId)),g.children.forEach(v=>f(v))}function d(g){const{conditionId:v}=g;i.value.add(v),c=i.value.size===0?a.get(v):c;const S=a.get(g.conditionId);u(S).forEach(F=>f(F))}const p=n.computed(()=>i.value.size===0&&r.value.size===1),y=function(g){r.value.delete(g.groupId),g.items.forEach(S=>s(S)),g.children.forEach(S=>!p.value&&y(S));const v=l.get(g.groupId);v&&r.value.has(v.groupId)&&y(v)};s=function(g){const{conditionId:v}=g;if(i.value.has(v)&&i.value.delete(v),r.value.size>0){const S=a.get(v);S&&r.value.has(S.groupId)&&y(S)}};function C(g){const{conditionId:v}=g;i.value.size===0&&(c=a.get(v)),i.value.has(v)?s(g):d(g)}function I(){const g=[];return c&&(c.items.filter(v=>i.value.has(v.conditionId)).forEach(v=>g.push(v)),c.children.filter(v=>r.value.has(v.groupId)).forEach(v=>g.push(v))),g}function M(){i.value.clear(),r.value.clear()}return{clear:M,getSelectedGroupItem:I,selectedItems:i,toggleSelect:C}}const Xt=n.defineComponent({name:"FConditionList",props:Mn,emits:["valueChange","labelCodeChange","compareTypeChange"],setup(t,e){const o=n.ref(t.key),i=n.ref(t.conditions),r=Dn(t),{convertToSingleControl:a,fields:l,fieldMap:c,loadFieldConfigs:s}=r,u=to(),{addCondition:f,changeGroupRelation:d,getConditions:p,group:y,insertConditionTo:C,loadConditionGroup:I,refresh:M,removeCondition:g,rootGroup:v,unGroup:S}=u,{createConditionValue:h}=Rn(),F=Ia(t,e,u),{selectedItems:N,toggleSelect:m}=F,{getCompareOperators:_}=Va(t,e,r);s(!1),l.value=a(l.value),I(i.value);function b(J){var le;const ne=((le=c.get(J.fieldCode))==null?void 0:le.editor)||{type:"text"};J.value=h(ne.type,void 0),e.emit("labelCodeChange",J)}function k(J,ne){e.emit("compareTypeChange",ne)}function w(){}e.expose({getConditions:p});function x(J,ne){e.emit("valueChange",J,ne)}function T(J){return n.createVNode("div",{class:"condition-list-item-type mr-3"},[n.createVNode(Dt,{"value-field":"labelCode","text-field":"name","id-field":"id",data:l.value,modelValue:J.fieldCode,"onUpdate:modelValue":ne=>J.fieldCode=ne,onChange:ne=>b(J)},null)])}function V(J){return n.createVNode("div",{class:"condition-list-item-compare mr-3"},[n.createVNode(Dt,{"value-field":"value","text-field":"name","id-field":"id",data:_(J),modelValue:J.compareType,"onUpdate:modelValue":ne=>J.compareType=ne,onChange:ne=>k(ne,J)},null)])}function B(J){var ne;return n.createVNode("div",{class:"condition-list-item-control mr-3"},[n.createVNode(la,{editor:(ne=c.get(J.fieldCode))==null?void 0:ne.editor,showLabel:!1,modelValue:J.value.value,"onUpdate:modelValue":le=>J.value.value=le,onChange:le=>{x(le,J)}},null)])}function O(J){return[n.createVNode("div",{class:"condition-list-item-extend"},[n.createVNode("span",{class:"f-icon f-icon-plus-sm mr-2",onClick:()=>C(J)},null),n.createVNode("span",{class:"f-icon f-icon-minus-sm",onClick:()=>g(J)},null)]),n.createVNode("div",{class:"custom-control custom-checkbox"},[n.createVNode("input",{title:"selection",class:"custom-control-input",type:"checkbox",checked:N.value.has(J.conditionId)},null),n.createVNode("label",{class:"custom-control-label",onClick:()=>m(J)},null)])]}function E(J){return J.items.map(ne=>n.createVNode("div",{class:"condition-list-item",key:ne.conditionId},[T(ne),V(ne),B(ne),O(ne)]))}function $(J){return n.createVNode("div",{class:"condition-list-relation"},[n.createVNode("span",{class:"condition-list-relation-close f-icon-filter-cancel btn-link",onClick:()=>S(J)},null),n.createVNode("span",{class:"condition-list-relation-text btn-link",onClick:()=>d(J)},[J.relation===1?"与":"或"])])}function L(J){return n.createVNode("div",{class:"condition-list-content"},[n.createVNode("div",{class:"condition-list-content-group"},[E(J),J.children&&J.children.map(ne=>L(ne))]),$(J)])}function H(){y(F.getSelectedGroupItem()),F.clear()}function Y(){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:H},[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"},[L(v.value)]),Y()])}});Xt.install=t=>{t.component(Hn.name,Hn).component(Xt.name,Xt)};const Na=["equal","notEqual","greaterThan","greaterThanOrEqual","lessThan","lessThanOrEqual","contain","startWidth","endWidth","in","notIn"],Ba={equal:(t,e,o)=>t&&t[e]===o,notEqual:(t,e,o)=>t&&t[e]!==o,contain:(t,e,o)=>t?(t[e]||"").indexOf(o)>-1:!1,startWidth:(t,e,o)=>t?(t[e]||"").startsWith(o):!1,endWidth:(t,e,o)=>t?(t[e]||"").endsWith(o):!1},Oa={equal:(t,e,o)=>t&&t[e]===o,in:(t,e,o)=>{if(t){const i=t[e];return o.indexOf(i)>-1}return!1},notEqual:(t,e,o)=>t&&t[e]!==o},Ea={equal:(t,e,o)=>{if(t){const i=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(t[e]).toLocaleDateString()).valueOf()===i}return!1},notEqual:(t,e,o)=>{if(t){const i=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(t[e]).toLocaleDateString()).valueOf()!==i}return!1},greaterThan:(t,e,o)=>{if(t){const i=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(t[e]).toLocaleDateString()).valueOf()>i}return!1},greaterThanOrEqual:(t,e,o)=>{if(t){const i=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(t[e]).toLocaleDateString()).valueOf()>=i}return!1},lessThan:(t,e,o)=>{if(t){const i=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(t[e]).toLocaleDateString()).valueOf()<i}return!1},lessThanOrEqual:(t,e,o)=>{if(t){const i=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(t[e]).toLocaleDateString()).valueOf()<=i}return!1}},$a={equal:(t,e,o)=>t?String(o).split(",").includes(String(t[e])):!1,in:(t,e,o)=>{if(t){const i=t[e];return o.indexOf(i)>-1}return!1},notEqual:(t,e,o)=>t?String(o).split(",").findIndex(r=>r===String(t[e]))===-1:!1},ja={equal:(t,e,o)=>{if(t){const i=Number.parseFloat(String(o)),r=Number.parseFloat(String(t[e]));return isNaN(i)?isNaN(r):i===r}return!1},notEqual:(t,e,o)=>{if(t){const i=Number.parseFloat(String(o)),r=Number.parseFloat(String(t[e]));return isNaN(i)?!0:i!==r}return!1},greaterThan:(t,e,o)=>{if(t){const i=Number.parseFloat(String(o)),r=Number.parseFloat(String(t[e]));return isNaN(i)?isNaN(r):r>i}return!1},greaterThanOrEqual:(t,e,o)=>{if(t){const i=Number.parseFloat(String(o)),r=Number.parseFloat(String(t[e]));return isNaN(i)?isNaN(r):r>=i}return!1},lessThan:(t,e,o)=>{if(t){const i=Number.parseFloat(String(o)),r=Number.parseFloat(String(t[e]));return isNaN(i)?isNaN(r):r<i}return!1},lessThanOrEqual:(t,e,o)=>{if(t){const i=Number.parseFloat(String(o)),r=Number.parseFloat(String(t[e]));return isNaN(i)?isNaN(r):r<=i}return!1}},Pa=new Map([["boolean",Oa],["datetime",Ea],["enum",$a],["number",ja],["text",Ba]]);function no(){const t=n.ref([]),e=new Map,{loadConditionGroup:o}=to();function i(M,g){switch(M){case"check-box":return new Tn({value:g});case"combo-list":return new Nn({value:g});case"combo-lookup":return new kn({value:g});case"input-group":return new Ot({value:g});case"date-picker":return new Vn({value:g});case"date-range":return new Bt({value:g});case"datetime-picker":return new In({value:g});case"datetime-range":return new Bt({value:g});case"lookup":return new Bn({value:g});case"month-picker":return new On({value:g});case"month-range":return new En({value:g});case"number-range":return new $n({value:g});case"number-spinner":return new jn({value:g});case"radio-group":return new Pn({value:g});default:return new Ot({value:g})}}const r=new Map([["boolean","check-box"],["date","date-picker"],["datetime","datetime-picker"],["number","number-spinner"],["string","text"],["text","text"],["enum","combo-list"],["reference","lookup"]]),a=new Map([["boolean",tt.In],["date",tt.Equal],["datetime",tt.Equal],["number",tt.Equal],["string",tt.Equal],["text",tt.Equal],["enum",tt.In],["reference",tt.Equal]]);function l(M){var v;const g=M.dataType||"string";return((v=M.editor)==null?void 0:v.type)||r.get(g)||"text"}function c(M){var k,w,x,T,V;const g=`field_filter_${M.field}`,v=Date.now(),S=M.field,h=((k=M.column)==null?void 0:k.title)||"",F=((w=M.column)==null?void 0:w.dataType)||"string",N=a.get(F)||tt.Equal,m=((T=(x=M.column)==null?void 0:x.editor)==null?void 0:T.type)||r.get(F)||"text",_=i(m,(V=M.column)==null?void 0:V.filter),b=m==="lookup"||m==="combo-lookup"?Tt.SmartHelp:m==="combo-list"?Tt.Enum:Tt.Value;e.set(g,{id:g,fieldCode:S,fieldName:h,compareType:N,valueType:b,value:_,conditionId:v}),t.value=Array.from(e.values())}function s(M){const g=`field_filter_${M.field}`;e.delete(g),t.value=Array.from(e.values())}function u(M){e.delete(M),t.value=Array.from(e.values())}function f(){e.clear(),t.value=[]}function d(M){const{valueType:g}=M.value,v=M.compareType||"0",S=Na[Number(v)];return Pa.get(g)[S]}function p(M){const g=M.relation===2?0:1,v=M.items.map(h=>{const F=d(h);return m=>F(m,h.fieldCode,h.value.getValue())}),S=M.children&&M.children.length?M.children.map(h=>p(h)):[];return{relation:g,filterFunctions:v,children:S}}function y(){const M=o(t.value);return p(M)}function C(M,g){const v=g.filterFunctions.map(h=>h(M)),S=g.children.map(h=>C(M,h));return g.relation===1?v.every(h=>h)&&S.every(h=>h):v.includes(!0)||S.includes(!0)}function I(M){const g=y();return C(M,g)}return{addColumnFilter:c,apply:I,clearCondition:f,conditions:t,getFilterEditorType:l,removeColumnFilter:s,removeCondition:u}}function oo(t){n.ref(t.selection.showCheckbox||!1);const e=n.computed(()=>{var l;return((l=t.hierarchy)==null?void 0:l.collapseField)||"__fv_collapse__"}),o=n.computed(()=>{var l;return((l=t.hierarchy)==null?void 0:l.hasChildrenField)||"__fv_hasChildren__"}),i=n.computed(()=>{var l;return((l=t.hierarchy)==null?void 0:l.parentIdField)||"parent"}),r=n.computed(()=>t.hierarchy&&t.selection.showCheckbox),a=n.computed(()=>(t.treeNodeIconsData.fold||t.iconField)&&t.showTreeNodeIcons);return{collapseField:e,hasChildrenField:o,parentIdField:i,shouldShowCheckBox:r,shouldShowIcon:a}}function io(t,e,o,i,r,a,l,c){var it;const{dataView:s,visibleDataItems:u}=e,{getVisualData:f,maxVisibleRowIndex:d,minVisibleRowIndex:p}=r,y=n.computed(()=>i.value.primaryColumnsWidth),C=n.computed(()=>i.value.leftColumnsWidth),I=n.computed(()=>i.value.rightColumnsWidth),M=((it=t.rowOption)==null?void 0:it.height)||28,g=n.ref(0),v=n.ref(0);let S=0,h=a.value-1;const F=n.ref(0),N=n.ref(0),m=n.ref(0),_=n.ref(t.virtualized),b=24,k=1.5;let w;function x(){const P=u.value;if(P.length<=0)return 0;const W=d.value<P.length?P[d.value]:P[P.length-1];return W.__fv_data_position__>P.length*M?P.length*M:(W.__fv_data_position__||0)+(W.__fv_data_height__||0)+Math.max(P.length-1-d.value,0)*M}const T=n.computed(()=>{const P=x(),W=u.value;let K=W.length>a.value+l?(a.value+l)/W.length:N.value/Math.max(P,N.value),me=Math.floor(K*N.value);for(;N.value>0&&me<b;)K*=k,me=Math.floor(K*N.value);return me}),V=n.computed(()=>Math.floor(m.value/Math.max(y.value,m.value)*F.value)),B=0,O=0,E=n.computed(()=>F.value-(C.value+y.value+I.value+c.value));function $(P){const K=Math.floor(P/M)+1,me=u.value;return me.length>K?me[K].__fv_visible_index__-1:0}function L(P,W,K){let me=P,be=W;const Oe=W-P+1;if(Oe<l+a.value+l){const Ne=l+a.value+l-Oe,Ce=W+Ne<=K,Be=0+Ne<=P;if(Ce)be+=Ne,h=be;else if(Be)me-=Ne,S=me;else{const Fe=K-W,Te=Ne-Fe;be=Math.min(W+Fe,K),me=Math.max(P-Te,0)}}return{actualStart:me,actualEnd:be}}function H(P){var Fe,Te;const W=u.value;if(!W.length){o.value=[];return}const K=(Fe=t.pagination)!=null&&Fe.enable?0:Math.max(S-l,0),me=W[W.length-1].__fv_visible_index__,be=(Te=t.pagination)!=null&&Te.enable?W.length-1:Math.min(h+l,me),{actualStart:Oe,actualEnd:Ne}=L(K,be,me),Ce=W[Oe-1],Be=f(Oe,Ne,Ce,P);Be.length&&(o.value=[...Be])}const Y=n.computed(()=>x()>N.value),J=n.computed(()=>Math.floor(y.value)>m.value);function ne(P,W){let K=P;const me=K>B,be=Y.value;be&&K<N.value-W&&(K=N.value-W),(!be||me)&&(K=B),g.value!==K&&(g.value=K)}function le(){_.value&&(S=$(Math.abs(g.value)),h=S+a.value-1,(S<p.value||h>d.value-l/2)&&H())}function R(P){let W=g.value+P;W>B&&(W=B);const K=x();ne(W,K),le()}function Z(P){if(!J.value){v.value=0;return}let W=v.value+P;W>O&&(W=O),W<E.value&&(W=E.value),v.value!==W&&(v.value=W)}function ue(){Math.abs(v.value)+m.value>y.value&&(v.value=Math.min(m.value-y.value,0))}function ee(){g.value=0,S=0,h=a.value-1,H()}function A(){const P=x();ne(g.value,P)}n.watch([m,y],()=>{Z(0)});function U(P){let{deltaX:W}=P.deltaX,K=-1*P.deltaY;return typeof W>"u"&&(W=-1*P.wheelDeltaX/6),typeof K>"u"&&(K=P.wheelDeltaY/6),P.deltaMode&&P.deltaMode===1&&(W*=10,K*=10),P.shiftKey?{deltaY:-K,deltaX:-W}:{deltaX:W,deltaY:K}}function ye(P){if(t.disabled||!Y.value)return;P.preventDefault(),P.stopPropagation();const{deltaX:W,deltaY:K}=U(P);R(K),Z(W)}const fe=n.computed(()=>({height:`${s.value.length*M}px`,width:`${C.value}px`,transform:`translateY(${g.value}px)`})),je=n.computed(()=>({transform:`translateY(${g.value}px)`})),Pe=n.computed(()=>({height:`${s.value.length*M}px`,width:`${y.value}px`,transform:`translate(${v.value}px, ${g.value}px)`})),_e=n.computed(()=>({transform:`translate(${v.value}px, ${g.value}px)`})),Se=n.computed(()=>({height:`${s.value.length*M}px`,width:`${I.value}px`,transform:`translateY(${g.value}px)`})),Ve=n.computed(()=>({transform:`translateY(${g.value}px)`})),Re=n.computed(()=>({height:`${s.value.length*M}px`,width:`${c.value}px`,transform:`translateY(${g.value}px)`})),Ie=n.computed(()=>({width:`${C.value}px`})),pe=n.computed(()=>({transform:`translateX(${v.value}px)`})),j=n.computed(()=>({width:`${I.value}px`})),ie=n.computed(()=>{const P=x();return ne(g.value,P),g.value/(N.value-P)*(N.value-T.value)}),te=n.computed(()=>({height:`${T.value}px`,top:`${ie.value}px`})),ge=n.computed(()=>v.value/E.value*(F.value-V.value)),Me=n.computed(()=>({width:`${V.value}px`,left:`${ge.value}px`})),Ae=n.ref(!1),ze=n.ref(-1),Ue=n.ref(-1),Je=n.ref();function Ze(P){if(Ae.value&&Ue.value!==-1){const W=Ue.value-P.pageX,K=F.value-V.value;if(Math.abs(W)<=K){const me=W/(m.value-V.value)*(y.value-m.value);Z(me),Ue.value=P.pageX}}}function Ke(P){if(Ae.value&&ze.value!==-1){const W=ze.value-P.pageY,K=x(),me=K-T.value;if(Math.abs(W)<=me){const be=W/(N.value-T.value)*(K-N.value);R(be),ze.value=P.pageY}}}function nt(P){Ae.value=!1,ze.value=-1,Ue.value=-1,document.removeEventListener("mouseup",nt),document.removeEventListener("mousemove",Ze),w&&document.removeEventListener("mousemove",w),document.body.style.userSelect="",Je.value&&(Je.value.style.opacity=null)}function ot(P,W,K){var Oe;Ae.value=!0;const me=(Oe=P.target)==null?void 0:Oe.parentElement;me&&(me.style.opacity="1",Je.value=me);const be=K==="horizontal"?Ze:Ke;K==="vertical"&&(ze.value=P.pageY),K==="horizontal"&&(Ue.value=P.pageX),W.value&&(w||(w=Ee.throttle(be,100)),W.value,document.addEventListener("mousemove",w),document.addEventListener("mouseup",nt),document.body.style.userSelect="none")}return{dataGridWidth:F,fitHorizontalScroll:ue,gridDataStyle:Pe,gridHeaderColumnsStyle:pe,gridMergedDataStyle:_e,gridSideStyle:Re,horizontalScrollThumbStyle:Me,leftFixedGridDataStyle:fe,leftFixedGridHeaderColumnsStyle:Ie,leftFixedGridMergedDataStyle:je,offsetX:v,offsetY:g,onMouseDownScrollThumb:ot,onWheel:ye,reCalculateVisualDataRows:H,resetScroll:ee,rightFixedGridDataStyle:Se,rightFixedGridHeaderColumnsStyle:j,rightFixedGridMergedDataStyle:Ve,shouldShowHorizontalScrollbar:J,shouldShowVirticalScrollbar:Y,updateVirticalScroll:A,updateVisibleRowsOnLatestVisibleScope:le,verticalScrollThumbStyle:te,viewPortWidth:m,viewPortHeight:N}}function ro(t,e,o,i,r,a,l,c){const s=n.ref(i.value-1+r),u=n.ref(0),{renderDataRow:f}=a,d=l?l.renderGroupRow:f,p=c?c.renderSummaryRow:f;function y(M){let g=f;return M.__fv_data_grid_group_row__&&(g=d),M.__fv_data_grid_group_summary__&&(g=p),g}function C(M,g,v,S){const{visibleDataItems:h}=o,F=[],N=h.value;if(N.length>0){const m=S?Date.now().toString():"";for(let _=M,b=0;_<=g;_++,b++){const k=N[_],w=N[_-1]||v,x=F[b-1],T=w?(w.__fv_data_position__||0)+(w.__fv_data_height__||0):0,B=y(k)(k,w,x,_,T,e.value,F);B.refreshKey=m,F.push(B)}}return u.value=F.length>0?F[0].index:0,s.value=F.length>0?F[F.length-1].index:0,F}function I(M,g,v){const S=g.groupField||"",{groupValue:h}=g;o[M](S,h);const{dataView:F}=o,N=v[0].index,m=Math.min(N+i.value+r+1,F.value.length-1);return C(N,m)}return{getVisualData:C,maxVisibleRowIndex:s,minVisibleRowIndex:u,toggleGroupRow:I}}function ao(t){var r;const e=((r=t.rowOption)==null?void 0:r.height)||28;function o(a,l){const c=a.pre;if(c){const s=c?c.__fv_data_position__!==void 0?c.__fv_data_position__:c.__fv_index__*e:0,u=c?c.__fv_data_height__!==void 0?c.__fv_data_height__:e:0,f=a.visible?s+u:c.__fv_data_position__;a.top=f,l.__fv_data_position__=f}else a.top=0,l.__fv_data_position__=0}function i(a,l,c){if(a&&!l.ref){l.ref=a;const s=l.parent;l.cellHeight!==a.offsetHeight&&(l.cellHeight=a.offsetHeight),l.cellHeight&&l.cellHeight>(s.height||0)&&(s.height=l.cellHeight,c.__fv_data_height__=s.height),o(s,c)}}return{updateRowPosition:o,updateVisualInfomation:i}}function Ra(){function t(e,o){const{formatter:i}=e,r=xe.resolveField(o.raw,e.field);if(r.includes(",")){const l=r.split(","),c=i.data.reduce((u,f)=>(u[f.value]=f,u),{});return l.map(u=>c[u].name).join(",")}const a=i.data.find(l=>l.value===r);return(a==null?void 0:a.name)||""}return{renderEnumColumn:t}}function Da(){function t(i,r){return i?n.createVNode("span",{innerHTML:r.formatter.trueText},null):n.createVNode("span",{innerHTML:r.formatter.falseText},null)}function e(i,r){var a,l;return i?(a=r.formatter)==null?void 0:a.trueText:(l=r.formatter)==null?void 0:l.falseText}function o(i,r){const{formatter:a}=i,l=xe.resolveField(r.raw,i.field);if(a.type===Lt.TEXT)return e(l,i);if(a.type===Lt.IMAGE)return t(l,i)}return{renderBooleanColumn:o}}function Ha(){const{formatTo:t}=xe.useDateFormat();function e(i,r){return t(i,r.formatter.dateFormat)}function o(i,r){const a=xe.resolveField(r.raw,i.field);return e(a,i)}return{renderDateColumn:o}}function Aa(){const{formatTo:t}=xe.useNumberFormat();function e(i,r){const{formatter:a}=r,l={precision:a.precision,prefix:a.prefix||"",suffix:a.suffix||"",decimalSeparator:a.decimal||".",groupSeparator:a.thousand||""};return t(i,l)}function o(i,r){const a=xe.resolveField(r.raw,i.field);return e(a,i)}return{renderNumberColumn:o}}function La(){const{renderBooleanColumn:t}=Da(),{renderEnumColumn:e}=Ra(),{renderNumberColumn:o}=Aa(),{renderDateColumn:i}=Ha();function r(c){return c}function a(c,s){const{formatter:u}=s;return u.customFormat?new Function(`return ${u.customFormat}`)():c}function l(c,s,u){const f=xe.resolveField(u.raw,[s.field]),{formatter:d}=s;return d.type==="none"?f:d.type==="custom"?a(f,s):d.type==="enum"?e(s,u):d.type==="number"?o(s,u):d.type==="boolean"?t(s,u):d.type==="date"?i(s,u):f}return{renderFormatColumn:l}}function lo(t,e,o){var M;const i=n.ref(t.mergeCell);(M=n.ref(t.rowOption).value)!=null&&M.wrapContent;const{updateVisualInfomation:a}=o,{renderCommandColumn:l}=dr(),{renderFormatColumn:c}=La();function s(g,v,S,h,F,N=1){const m={colSpan:N,rowSpan:1,index:S,field:g,data:xe.resolveField(h,g),editingData:xe.resolveField(h,g),parent:F,mode:v,align:"left",valign:"start",showEllipsis:!0,getEditor:_=>_.data,setRef:_=>a(_,m,h),update:()=>{},accept:()=>{},cancel:()=>{},updateData:()=>{}};return m}function u(g,v,S){return g.getEditor=h=>e.getEditor(h,v,h.parent),g.setRef=h=>a(h,g,S),g.update=h=>{h!==void 0&&(g.editingData=h)},g.accept=()=>{xe.setFieldValue(g.editingData,S,v.field),g.data=xe.resolveField(S,v.field)},g.cancel=()=>{g.editingData=g.data},g.updateData=h=>{xe.setFieldValue(xe.resolveField(h,v.field),S,v.field),g.data=xe.resolveField(S,v.field),g.editingData=xe.resolveField(S,v.field)},g}function f(g,v){v.dataType==="commands"?g.formatter=(S,h)=>l(v,h):v.formatter&&(g.formatter=(S,h)=>typeof v.formatter=="function"?v.formatter(S,h):c(v.dataType,v,h))}function d(g,v,S){const h=v&&v.data[S];if(h&&h.data===g.data){const N=h&&h.spannedBy||h;N.rowSpan++,N.spanned=N.spanned||[],N.spanned.push(g),g.colSpan=0,g.rowSpan=0,g.spannedBy=N}}function p(g,v,S){i.value&&d(g,v,S.field)}function y(g,v){v.showEllipsis!==void 0&&(g.showEllipsis=v.showEllipsis),g.column=v,g.align=v.align||"left",g.valign=v.valign||"middle"}function C(g,v,S,h){y(g,v),u(g,v,h),f(g,v),p(g,S,v)}function I(g,v,S,h,F){const N=g.readonly?De.readonly:De.editable,m=s(g.field,N,v,S,h);return C(m,g,F,S),m}return{createCellByColumn:I,createCellByField:s,updateCellByColumn:C}}function so(t,e,o,i,r,a){var v,S;const l=n.ref(t.rowOption),c=((v=l.value)==null?void 0:v.height)||28,s=((S=l.value)==null?void 0:S.wrapContent)||!1,{idField:u}=i,{collapseField:f}=o,{updateRowPosition:d}=r,{createCellByColumn:p}=a,y=(h,F,N,m)=>{xe.setFieldValue(xe.resolveField(h,m),F,m),N.data[m].data=xe.resolveField(F,m),N.data[m].editingData=xe.resolveField(F,m)};function C(h,F,N,m,_,b,k){var R,Z,ue;const{__fv_data_grid_group_field__:w,__fv_data_grid_group_value__:x,__fv_data_index__:T}=N,V=N.__fv_data_grid_group_layer__||(N.__fv_parents__?(R=N.__fv_parents__)==null?void 0:R.size:0)||0,B=typeof N.parent=="number"?Number(N.parent):-1,O=N.__fv_data_grid_group_collapse__||N[f.value],E=N.__fv_visible__===void 0?!0:N.__fv_visible__,$=N.__fv_checked__,L=N.__fv_indeterminate__,H=N.__fv_disabled__||N[((Z=t.rowOption)==null?void 0:Z.disabledField)||"disabled"],Y=k==null?void 0:k.find(ee=>ee.raw[u.value]===N.parent),J=Y&&Y.collapse;m&&(m.parent,N.parent);const ne=J||Y&&!Y.visible,le={collapse:O,data:{},dataIndex:T,groupField:w,groupValue:x,layer:V,index:F,parentIndex:B,pre:m,top:b,type:h,raw:N,checked:$,disabled:H,indeterminate:L,setRef:ee=>{le.ref=ee},visible:E&&!ne,status:at.initial,updateCell:(ee,A)=>{y(ee,N,le,A)},updateCells:(ee,A)=>{A.forEach(U=>{y(ee,N,le,U)})}};return m||(N.__fv_data_position__=0),s||(le.height=c,N.__fv_data_height__=le.height,d(le,N)),(ue=l.value)!=null&&ue.customRowStatus&&(l.value.customRowStatus(le),N.__fv_collapse__=le.collapse,N.__fv_disabled__=le.disabled,N.__fv_visible__=le.visible),le}function I(h,F,N,m,_,b,k){const w=C(gt.data,_,F,N,m,b,k);return h.forEach((x,T)=>{w.data[x.field]=p(x,_,F,w,m)}),w}function M(h,F,N,m,_){return Object.assign(h,{index:F,dataIndex:N,top:m,pre:_})}function g(h,F,N,m,_,b,k){const w=h.__fv_data_index__,x=h[u.value],T=e.getEditingSnapshot(x);return T===null?I(b,h,F,N,m,_,k):M(T,m,w,_,F)}return{createEmptyRow:C,createNewRowFromDataItem:I,renderDataRow:g}}function Ga(t,e,o,i){const r=n.ref(t.summary),{idField:a}=e,{createCellByField:l}=o,{createEmptyRow:c}=i,s=n.computed(()=>{const p=r.value;return(p==null?void 0:p.groupFields)||[]}),u=n.computed(()=>{const p=r.value;return p&&p.enable&&p.groupFields&&p.groupFields.length>0});function f(p,y,C,I){if(u.value){const M=p.data[y];let g=M.colSpan;const v=s.value.reduce((S,h)=>(S.set(h,!0),S),new Map);I.reduce((S,h,F)=>{if(v.has(h.field)){const N=l(h.field,De.readonly,F,C,p);p.data[h.field]=N,g-1>F&&(g=F)}return S},p),M.colSpan=g}}function d(p,y,C,I,M,g,v){const S=p.__fv_data_grid_group_field__,h=c(gt.group,I,p,y,C,M);return h.data[a.value]=l(a.value,De.readonly,-1,p,h,0),h.data[S]=l(S,De.readonly,1,p,h,g.length),f(h,S,p,g),h}return{renderGroupRow:d}}function Wa(t,e,o,i){const{idField:r}=e,{createCellByField:a}=o,{createEmptyRow:l}=i;function c(s,u,f,d,p,y,C){const I=s.__fv_data_grid_group_field__,M=l(gt.summary,d,s,u,f,p);return M.data[r.value]=a(r.value,De.readonly,-1,s,M),M.data[I]=a(I,De.readonly,1,s,M,y.length),M}return{renderSummaryRow:c}}function co(t,e,o,i){var w;const{idField:r}=o,a=n.ref(t.editable),l=n.ref(t.editOption),c=n.ref(((w=t.rowOption)==null?void 0:w.wrapContent)||!1),{onClickRow:s}=i;n.watch(()=>t.editable,()=>{a.value=t.editable}),n.watch(()=>{var x;return(x=t.editOption)==null?void 0:x.editMode},x=>{l.value.editMode=x});const u=new Map([["boolean","check-box"],["datetime","date-picker"],["enum","combo-list"],["number","number-spinner"],["string","input-group"],["text","text"],["commands","commands-editor"]]);let f,d,p,y;function C(x){return d&&d.raw[r.value]===x?d:null}const I=n.reactive({});function M(x,T,V={}){x.mode=De.editing,f=x,d=T,p=xe.resolveField(T==null?void 0:T.raw,x.field),y=V}function g(x){x.accept(),x.mode=De.editable,f=null,e.emit("endEditCell",{cell:x,row:d,newValue:xe.resolveField(d==null?void 0:d.raw,x.field),oldValue:p,column:y,editor:I})}function v(x){if(document.body.classList.contains("lookup-modal-open"))return;const V=x.target.closest(".fv-grid-cell");f&&f.ref&&f.ref===V||(f&&(g(f),d&&(d=void 0)),document.body.removeEventListener("click",v))}function S(x,T,V,B={}){x.stopPropagation(),s(x,V),a.value&&l.value.editMode==="cell"&&T.mode===De.editable&&(f&&g(f),Promise.resolve().then(()=>Ee.isUndefined(t.beforeEditCell)?!0:typeof t.beforeEditCell=="function"?t.beforeEditCell({row:V,cell:T,rawData:V.raw,column:B}):t.beforeEditCell).then(O=>{O&&(M(T,V,B),document.body.removeEventListener("click",v),document.body.addEventListener("click",v))}))}function h(x){Object.values(x.data).filter(T=>T.mode===De.editable&&T.field!=="__commands__").forEach(T=>{T.mode=De.editing}),x.status=at.editing,d=x}function F(x,T){Object.values(x.data).filter(V=>V.mode===De.editing).forEach(V=>{T?V.accept():V.cancel(),V.mode=De.editable}),x.status=at.initial,d===x&&(d=void 0)}function N(x){a.value&&l.value.editMode==="row"&&d!==x&&(d&&F(d,!1),h(x))}function m(x){F(x,!0),x.status=at.initial}function _(x){F(x,!1),x.status=at.initial}function b(x,T,V){const B=T.dataType,O=T.editor||{type:u.get(B)||"input-group"};return!c.value&&O.type==="text"&&(O.type="input-group"),O?(O.context={rowData:V.raw,column:T,cell:x,editor:I},n.createVNode(Rt.FDynamicFormInput,{focusOnCreated:t.focusOnEditingCell,selectOnCreated:t.selectOnEditingCell,editor:O,modelValue:x.editingData,"onUpdate:modelValue":E=>x.editingData=E,id:T.id},null)):x.data}function k(){f&&g(f)}return{onClickCell:S,onEditingRow:N,acceptEditingRow:m,cancelEditingRow:_,getEditingSnapshot:C,getEditor:b,endEditCell:k}}function uo(t){const e=n.ref(t.idField);function o(i){if(i&&i.length){const r=i[0];Object.keys(r).includes(e.value)||(e.value="__fv_indetify__")}}return{idField:e,reviseIdentifyField:o}}function fo(t,e,o,i){const{idField:r}=i,{currentSelectedDataId:a,multiSelectOnClickRow:l,multiSelectOnClickRowWithShift:c,selectItem:s,selectedValues:u,toggleSelectItem:f,enableSelectRow:d}=o,p=n.ref(0),y=n.ref(-1);function C(m){return d.value&&(c.value?u.value.includes(m.raw[r.value]):m.raw[r.value]===a.value)}function I(m){var b;const _={"fv-grid-row":m.type===gt.data,"fv-grid-group-row":m.type===gt.group,"fv-grid-summary-row":m.type===gt.summary,"fv-grid-row-hover":m.index===y.value,"fv-grid-row-selected":C(m),"fv-grid-row-odd":m.dataIndex%2>0,"fv-grid-row-even":m.dataIndex%2===0,"fv-grid-disabled":m.disabled};if((b=t.rowOption)!=null&&b.customRowStyle){const k=t.rowOption.customRowStyle(m.raw)||{};return Object.assign({},_,k)}return _}function M(m){var b;const _={"fv-grid-cell":!0};if((b=t.rowOption)!=null&&b.customCellStyle){const k=t.rowOption.customCellStyle(m)||{};return Object.assign({},_,k)}return _}function g(m){p.value+=1,setTimeout(()=>{p.value===1&&e.emit("clickRow",m.index,m.raw),p.value=0},250),p.value>1&&(e.emit("doubleClickRow",m.index,m.raw),p.value=0)}function v(m,_){if(_.disabled)return;c.value&&m.shiftKey||l.value?f(_):s(_),g(_)}function S(m){m.disabled||(a.value=m.raw[r.value],g(m))}function h(m,_){}function F(m,_){}function N(m){var b;const _={"fv-grid-sidebar-row":!0,"fv-grid-sidebar-row-hover":m.index===y.value,"fv-grid-sidebar-row-selected":C(m),"fv-grid-sidebar-row-odd":m.dataIndex%2>0,"fv-grid-sidebar-row-even":m.dataIndex%2===0,"d-flex":!0,"align-items-center":!0};if((b=t.rowOption)!=null&&b.customRowStyle){const k=t.rowOption.customRowStyle(m.raw)||{};return Object.assign({},_,k)}return _}return{clickRowItem:S,gridCellClass:M,gridRowClass:I,onClickRow:v,onMouseoverRow:h,sidebarRowClass:N,onMouseoutRow:F}}function po(t,e,o,i,r){const{idField:a}=o,l=n.ref(""),c=n.computed(()=>t.selection.enableSelectRow),s=n.ref(t.selection.multiSelect??!1),u=n.ref(t.selection.multiSelectMode),f=n.ref(t.selection.showCheckbox),d=n.ref(t.selection.showSelectAll),p=n.ref(t.selectionValues);n.watch(()=>t.selection.showSelectAll,(R,Z)=>{R!==Z&&(d.value=R)});function y(){return e.getSelectionItems(p.value)}function C(){const R=i.value.reduce((ue,ee)=>(ue.set(ee.raw[a.value],ee),ue),new Map);return p.value.map(ue=>R.get(ue)).filter(ue=>!!ue)}const I=n.computed(()=>c.value&&s.value),M=n.computed(()=>!!t.hierarchy),g=n.computed(()=>{const R=f.value&&u.value==="DependOnCheck";return I.value&&R}),v=n.computed(()=>I.value&&!f.value),S=n.computed(()=>I.value&&f.value&&u.value==="OnCheckAndClick");n.computed(()=>S.value);function h(){const R=e.getSelectionItems(p.value);r.emit("selectionChange",R)}function F(R){r.emit("unSelectItem",R)}function N(){i.value.forEach(Z=>{Z.checked=!1,Z.indeterminate=!1,Z.raw.__fv_checked__=!1,Z.raw.__fv_indeterminate__=!1}),C().forEach(Z=>{Z.checked=!0,Z.raw.__fv_checked__=!0})}n.watch(()=>i.value,()=>{N()}),n.watch(()=>t.selectionValues,R=>{p.value=R,N()},{immediate:!0}),n.watch(()=>t.selection,R=>{s.value=!!R.multiSelect,u.value=R.multiSelectMode||"DependOnCheck",f.value=!!R.showCheckbox});const m=n.computed(()=>!s.value);function _(R){return R.raw[a.value]}function b(R){return p.value.findIndex(ue=>ue===_(R))}function k(){C().forEach(ue=>{ue.checked=!1}),e.getSelectionItems(p.value).forEach(ue=>{ue.__fv_checked__=!1}),p.value=[],l.value=""}function w(R){const Z=R.raw;Z.__fv_checked__=!0,Z.__fv_indeterminate__=!1;const ue=new Set(p.value);ue.add(Z[a.value]),p.value=Array.from(ue.values()),R.checked=!0,R.indeterminate=!1}function x(R){const Z=R.raw;Z.__fv_checked__=!1,Z.__fv_indeterminate__=!1,p.value=p.value.filter(ue=>ue!==Z[a.value]),R.checked=!1,R.indeterminate=!1}function T(R){w(R),l.value=R.raw[a.value]}function V(R){x(R),l.value=""}function B(R){const Z=R.raw;Z.__fv_checked__=!1,Z.__fv_indeterminate__=!0,p.value=p.value.filter(ue=>ue!==Z[a.value]),R.checked=!1,R.indeterminate=!0}function O(R){m.value&&k(),R.checked?x(R):w(R),h()}function E(R){m.value&&k(),R.checked?V(R):T(R),h(),R.checked||F(R)}function $(R){R.raw[a.value]!==l.value&&(k(),T(R),h())}function L(R){const Z=i.value.find(ue=>ue.raw[a.value]===R);Z&&$(Z)}function H(R){const Z=i.value.filter(ue=>R.includes(ue.raw[a.value]));Z&&Z.length&&(k(),Z.forEach(ue=>{T(ue)}),h())}function Y(R){for(const Z of R)if(p.value.includes(Z)){const ue=i.value.find(ee=>ee.raw[a.value]===Z);ue&&V(ue)}}function J(){i.value.forEach(R=>T(R)),h()}function ne(){p.value.splice(0,p.value.length),i.value.forEach(R=>{const Z=R.raw;Z.__fv_checked__=!1,Z.__fv_indeterminate__=!1,R.checked=!1,R.indeterminate=!1}),h()}function le(){return i.value.find(R=>R.raw[a.value]===l.value)}return{clearSelection:k,currentSelectedDataId:l,enableMultiSelect:s,enableSelectRow:c,findIndexInSelectedItems:b,getSelectedItems:y,getSelectionRow:le,indeterminate:B,isSelectingHirarchyItem:M,multiSelectMode:u,multiSelectOnClickRow:S,multiSelectOnClickRowWithShift:v,multiSelectOnlyOnCheck:g,select:T,selectAll:J,selectedValues:p,selectItem:$,selectItemById:L,selectItemByIds:H,showCheckBox:f,showSelectAll:d,toggleSelectItem:E,toggleSelectItemWithoutRow:O,unSelect:V,unSelectAll:ne,unSelectItemByIds:Y}}function mo(t,e){var M,g;const o=String(Date.now()),i=50,{showCheckBox:r,showSelectAll:a}=e,l=n.ref(((M=t.rowNumber)==null?void 0:M.enable)??!1),c=n.computed(()=>t.hierarchy&&r.value&&t.selection.enableSelectRow&&t.selection.multiSelect?!1:r.value),s=n.ref(l.value?((g=t.rowNumber)==null?void 0:g.width)??32:0),u=n.ref(c.value?i:0),f=n.computed(()=>{var v;return l.value?((v=t.rowNumber)==null?void 0:v.heading)??"序号":""}),d=n.computed(()=>(c.value&&!t.hierarchy?Number(u.value):0)+(l.value?Number(s.value):0));n.watch(()=>t.rowNumber,v=>{v&&v.enable!==void 0&&(l.value=v.enable),v&&v.width!==void 0&&(s.value=v.width)});function p(v){return{top:`${v.top}px`,width:`${d.value}px`,height:`${v.height||""}px`}}const y=n.computed(()=>({width:`${d.value}px`}));function C(v){return`${o}_${v.type}_r_${v.index}_${v.refreshKey||""}`}function I(v){return`${o}_${v.type}_r_${v.index}_${v.refreshKey||""}`}return{showRowNumer:l,showSidebarCheckBox:c,sidebarCellPosition:p,sidebarCornerCellStyle:y,sidebarTitle:f,sidebarWidth:d,rowKey:I,cellKey:C}}const qa={ascend:(t,e)=>t===e?0:t===!1?-1:1,decend:(t,e)=>t===e?0:t===!0?-1:1},za={ascend:(t,e)=>{const o=new Date(new Date(t).toLocaleDateString()).valueOf(),i=new Date(new Date(e).toLocaleDateString()).valueOf();return o===i?0:o<i?-1:1},decend:(t,e)=>{const o=new Date(new Date(t).toLocaleDateString()).valueOf(),i=new Date(new Date(e).toLocaleDateString()).valueOf();return o===i?0:o<i?1:-1}},Ua={ascend:(t,e)=>t===e?0:t<e?-1:1,decend:(t,e)=>t===e?0:t<e?1:-1},Ya={ascend:(t,e)=>t===e?0:t<e?-1:1,decend:(t,e)=>t===e?0:t<e?1:-1};function ho(t){const e=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",qa],["datetime-sorter",za],["numeric-sorter",Ua],["text-sorter",Ya]]);function i(l){const c=(l==null?void 0:l.dataType)||"string",s=e.get(c)||"text-sorter";return o.get(s)||(l==null?void 0:l.sorter)}function r(l){return i(l.column)}function a(l,c){const s=r(l),u=(l.status&qe.sortable)===qe.sortable&&(l.status&qe.sorted)===qe.sorted,f=(l.status&qe.ascending)===qe.ascending,d=(l.status&qe.descending)===qe.descending;if(u&&s){const p=f?s.ascend:d?s.decend:void 0;p?c.addSorter(l.field,{field:l.field,compare:p}):c.removeSorter(l.field)}else c.removeSorter(l.field)}return{getSorterByColumn:i,updateSorter:a}}function Xa(t){const e="parent",o="layer",i="hasChildren",r=(a,l=1,c=[],s=null)=>(a=a||[],a.reduce((u,f)=>(f.id=f.id||f.data[t.idField],f[e]=s,f[o]=l,f[i]=!1,Object.keys(f.data).forEach(d=>{Object.keys(f).includes(d)||(f[d]=f.data[d])}),c.push(f),f.children&&f.children.length&&(f[i]=!0,r(f.children,l+1,c,f.id)),u),c),c);return{flatTreeData:r}}function Ka(t,e,o,i,r,a,l,c,s,u,f,d,p,y,C){const{calculateCellPositionInRow:I,cellKey:M,cellPosition:g,rowKey:v,rowPosition:S,rowSpanCellPosition:h,groupCellPosition:F,summaryCellPosition:N}=l,{cellContentClass:m,cellContentPosition:_,cellContentClassWithEllipsis:b}=a,{collpaseGroupIconClass:k}=u,{gridCellClass:w,gridRowClass:x,onClickRow:T,onMouseoverRow:V,onMouseoutRow:B}=d,{onClickCell:O}=s,{toggleGroupRow:E}=p,{columnContext:$,hasLeftFixedColumn:L,hasRightFixedColumn:H}=c,{navigateOnKeyUp:Y}=f,{gridDataStyle:J,gridMergedDataStyle:ne,leftFixedGridDataStyle:le,leftFixedGridMergedDataStyle:R,rightFixedGridDataStyle:Z,rightFixedGridMergedDataStyle:ue}=y;function ee(j,ie){ie.collapse=!ie.collapse,C.value=E(ie.collapse?"collapse":"expand",ie,C.value)}function A(j,ie){const te=[];if(j.groupField&&ie[j.groupField]){for(let Me=0;Me<=j.layer;Me++)te.push(n.createVNode("div",{class:"fv-grid-group-row-icon",onClick:Ae=>ee(Ae,j)},[n.createVNode("span",{class:k(j)},null)]));const ge=j.data[j.groupField];te.push(n.createVNode("div",{ref:ge.setRef,key:M(j,j.layer+1),class:"fv-grid-cell",style:F(ge,ie,j.layer)},[ge.data])),Object.values(j.data).filter(Me=>Me.field!==j.groupField&&Me.colSpan!==0).forEach(Me=>{te.push(n.createVNode("div",{ref:Me.setRef,key:M(j,Me.index),class:"fv-grid-cell",style:g(Me,ie)},[Me.data]))})}return te}function U(j,ie){return j.layer>-1&&n.createVNode("div",{ref:j.setRef,key:v(j),class:x(j),style:S(j),onClick:te=>T(te,j),onMouseover:te=>V(te,j)},[A(j,ie)])}function ye(j,ie){const te=[];if(j.groupField&&ie[j.groupField]){const ge=j.data[j.groupField];te.push(n.createVNode("div",{ref:ge.setRef,key:M(j,j.layer+1),class:"fv-grid-cell",style:N(ge,ie,j.layer)},[ge.data]))}return te}function fe(j,ie){return j.layer>-1&&n.createVNode("div",{ref:j.setRef,key:v(j),class:x(j),style:S(j),onClick:te=>T(te,j),onMouseover:te=>V(te,j)},[ye(j,ie)])}function je(j,ie){return n.createVNode("div",{ref:j.setRef,key:v(j),class:x(j),style:S(j),onClick:te=>T(te,j),onMouseover:te=>V(te,j),onMouseout:te=>B(te,j)},[Object.values(j.data).filter(te=>ie[te.field]&&te.rowSpan===1).map(te=>n.createVNode("div",{ref:te.setRef,key:M(j,te.index),class:w(te),style:g(te,ie),onClick:ge=>O(ge,te,j,te.column),onKeyup:ge=>Y(ge,te)},[n.createVNode("div",{class:m(te),style:_(te)},[n.createVNode("div",{class:b(te)},[te.data!=null&&e.slots.cellTemplate?e.slots.cellTemplate({cell:te,row:j}):te.mode===De.editing?te.getEditor(te):te.formatter?te.formatter(te,j):te.data!=null?te.data.toString():te.data])])]))])}const Pe=[je,U,fe];function _e(j,ie){const te=I(j);return C.value.map(ge=>Pe[ge.type](ge,te))}function Se(j){const ie=I(j);return C.value.map(te=>Object.values(te.data).filter(ge=>ie[ge.field]&&ge.rowSpan>1).map(ge=>n.createVNode("div",{key:M(te,ge.index),class:"fv-grid-cell fv-grid-merged-cell",style:h(te,ge,ie)},[ge.data])))}function Ve(){return n.createVNode("div",{ref:i,class:"fv-grid-content-left-fixed"},[n.createVNode("div",{class:"fv-grid-data",style:le.value},[_e($.value.leftColumns.filter(j=>j.visible))]),n.createVNode("div",{class:"fv-grid-merge-date",style:R.value},[Se($.value.leftColumns.filter(j=>j.visible))])])}function Re(){return n.createVNode("div",{ref:o,class:"fv-grid-content-primary"},[n.createVNode("div",{class:"fv-grid-data",style:J.value},[_e($.value.primaryColumns.filter(j=>j.visible))]),n.createVNode("div",{class:"fv-grid-merge-date",style:ne.value},[Se($.value.primaryColumns.filter(j=>j.visible))])])}function Ie(){return n.createVNode("div",{ref:r,class:"fv-grid-content-right-fixed"},[n.createVNode("div",{class:"fv-grid-data",style:Z.value},[_e($.value.rightColumns.filter(j=>j.visible))]),n.createVNode("div",{class:"fv-grid-merge-date",style:ue.value},[Se($.value.rightColumns.filter(j=>j.visible))])])}function pe(){const j=[];return L.value&&j.push(Ve()),j.push(Re()),H.value&&j.push(Ie()),j}return{renderDataArea:pe}}const pt=n.defineComponent({name:"FDataGrid",props:It,emits:["changed","clickRow","doubleClickRow","selectionChange","unSelectItem","enterUpInLastCell","pageIndexChanged","pageSizeChanged","beginEditCell","endEditCell"],setup(t,e){var bt,Ct;const i=((bt=t.rowOption)==null?void 0:bt.height)||28,r=n.ref(20),a=n.ref(t.columns),l=X.useIdentify(t),c=n.ref(),s=n.ref(),u=n.ref(),f=n.ref(),d=n.ref(),p=n.ref([]),y=n.ref(!1),C=n.ref(((Ct=t.rowOption)==null?void 0:Ct.wrapContent)||!1),I=X.useGroupData(t,l),M=X.useFilter(),g=X.useHierarchy(t),{showLoading:v,renderLoading:S}=X.useLoading(t,c),h=X.useDataView(t,new Map,M,g,l),F=X.usePagination(t,h),{shouldRenderPagination:N}=F,m=X.useSelection(t,h,l,p,e),_=n.computed(()=>t.disabled),b=n.computed(()=>Math.min(h.dataView.value.length,r.value));n.computed(()=>t.loadingConfig.message);const{containerStyleObject:k}=X.useDataViewContainerStyle(t),w=X.useCommandColumn(t),{applyCommands:x}=w;x(a);const T=X.useColumn(t),V=X.useSort(t),{applyColumnSorter:B,columnContext:O,updateColumnRenderContext:E}=T;B(h,V);const $=X.useGroupColumn(t,O),L=X.useRow(t,e,m,l),H=X.useEdit(t,e,l,L),Y=X.useVisualDataBound(t),J=X.useVisualDataCell(t,H,Y),ne=X.useVisualDataRow(t,H,g,l,Y,J),le=X.useVisualGroupRow(t,l,J,ne),R=X.useVisualSummaryRow(t,l,J,ne),Z=X.useVisualData(t,a,h,b,0,ne,le,R),{getVisualData:ue}=Z,ee=X.useCellContentStyle(O),A=X.useCellPosition(t,O),U=X.useSidebar(t,m),{sidebarWidth:ye}=U,fe=X.useVirtualScroll(t,h,p,O,Z,b,0,ye),{onWheel:je,dataGridWidth:Pe,viewPortHeight:_e,viewPortWidth:Se,resetScroll:Ve,updateVisibleRowsOnLatestVisibleScope:Re}=fe,Ie=X.useFitColumn(t,O,s,Se,$),{calculateColumnsSize:pe}=Ie,j=X.useFilterHistory(),ie=X.useColumnFilter(s,d,h,j,fe),te=X.useDragColumn(t,e,T,h,$,I,fe),ge=n.computed(()=>({"fv-grid":!0,"fv-grid-bordered":t.showBorder,"fv-grid-horizontal-bordered":t.showHorizontalLines,"fv-datagrid-strip":t.showStripe})),Me=n.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":y.value,"fv-grid-wrap-content":C.value})),{renderGridHeader:Ae,renderGridColumnResizeOverlay:ze,shouldShowHeader:Ue}=X.getColumnHeader(t,e,s,f,d,T,h,te,ie,M,j,Ie,$,m,U,V,fe,Se,p),{renderDataGridPagination:Je}=X.getPagination(t,e,h,fe,F),{renderDataGridSidebar:Ze}=X.getSidebar(t,L,m,U,fe),{renderDisableMask:Ke}=X.getDisableMask(),{renderDataGridSummery:nt}=X.getSummary(t,h,T),{renderHorizontalScrollbar:ot}=X.getHorizontalScrollbar(t,s,fe),{renderVerticalScrollbar:it}=X.getVerticalScrollbar(t,s,fe),{renderFilterPanel:P}=X.getFilterPanel(t,T,h,M,fe),{renderGroupPanel:W}=X.getGroupPanel(t,h,te,I,fe);function K(){var dt,wt;const he=Math.ceil(s.value.clientHeight/i);he>r.value&&(r.value=he,Re()),_e.value=((dt=u.value)==null?void 0:dt.clientHeight)||0,Pe.value=((wt=s.value)==null?void 0:wt.clientWidth)||0,pe()}n.onMounted(()=>{s.value&&(r.value=Math.max(Math.ceil(s.value.clientHeight/i),r.value),p.value=ue(0,b.value+0-1),Vt.useResizeObserver(s.value,K),pe(),n.nextTick(()=>{s.value&&(Pe.value=s.value.clientWidth),u.value&&(Se.value=u.value.clientWidth,_e.value=u.value.clientHeight)})),v.value&&S()}),n.onUnmounted(()=>{}),n.watch(Se,()=>{});function me(){h.insertNewDataItem(),Ve()}function be(){h.insertNewDataItem(p.value.length),Ve()}function Oe(he){H.onEditingRow(he)}function Ne(he){h.removeDataItem(he),Ve()}function Ce(he){h.removeDataItemById(he),Ve()}function Be(he){H.acceptEditingRow(he)}function Fe(he){H.cancelEditingRow(he)}function Te(){p.value.forEach((he,dt)=>{const wt=p.value[dt-1];Object.keys(he.data).forEach(_o=>{const Mo=O.value.primaryColumnsMap.get(_o);Mo&&J.updateCellByColumn(he.data[_o],Mo,wt,he.raw)})})}function ke(he){he&&(a.value=he,x(a),E(a.value),Te(),B(h,V),pe())}function Le(he){he&&(Ve(),h.load(he),p.value=ue(0,b.value+0-1))}function mt(he){F.updatePagination(he)}n.watch(()=>t.data,he=>{t.changePolicy==="default"&&Le(he)},{deep:!0}),n.watch(()=>t.columns,he=>{ke(he)});function D(he){m.selectItemById(he)}function G(he){const dt=p.value.find(wt=>wt.raw[l.idField.value]===he);dt&&L.clickRowItem(dt)}function Q(he){m.selectItemByIds(he)}function de(){return p.value}function ve(he){return p.value.filter(dt=>he.includes(dt.raw[t.idField]))}function we(){return m.getSelectedItems()}function rt(){return m.getSelectionRow()}function Ye(){H.endEditCell()}function et(he){m.unSelectItemByIds(he)}function lt(){m.clearSelection()}const He={addNewDataItem:me,addNewDataItemAtLast:be,removeDataItem:Ne,removeDataItemById:Ce,editDataItem:Oe,acceptDataItem:Be,cancelDataItem:Fe,selectItemById:D,selectItemByIds:Q,updateColumns:ke,updateDataSource:Le,updatePagination:mt,getVisibleData:de,getVisibleDataByIds:ve,getSelectedItems:we,getSelectionRow:rt,endEditCell:Ye,clickRowItemById:G,clearSelection:lt,unSelectItemByIds:et};e.expose(He);const st=X.useNavigation(t,e,He,T,H,p),{renderDataArea:Qe}=Ka(t,e,u,f,d,ee,A,T,H,I,st,L,Z,fe,p),Ge=n.computed(()=>!p.value||!p.value.length),{renderEmpty:kt}=X.getEmpty(e);return()=>n.createVNode("div",{ref:c,class:ge.value,style:k.value,onWheel:je},[s.value&&P(),s.value&&W(),s.value&&Ue.value&&Ae(),n.createVNode("div",{ref:s,class:Me.value,onMouseover:()=>y.value=!0,onMouseleave:()=>y.value=!1},[s.value&&Ze(p),s.value&&Qe(),s.value&&Ge.value&&kt(),s.value&&ot(),s.value&&it()]),s.value&&nt(),N.value&&Je(),ze(),_.value&&Ke()])}});class Qa extends Et{constructor(e,o){super(e,o)}getPropertyConfig(e){return this.getBasicPropConfig(e),this.getAppearanceProperties(e),this.getEventPropConfig(e),this.propertyConfig}getBasicPropConfig(e){var l,c,s;const o=(s=(c=(l=this.formSchemaUtils.getFormSchema())==null?void 0:l.module)==null?void 0:c.entity[0])==null?void 0:s.entities[0],i=this.assembleSchemaEntityToTree(o,0),r=this,a=super.getBasicPropConfig(e);this.propertyConfig.categories.basic={description:"Basic Information",title:"基本信息",properties:{...a.properties,dataSource:{description:"绑定数据源",title:"绑定数据源",editor:{type:"combo-tree",textField:"name",valueField:"label",data:i,editable:!1},readonly:e.columns&&e.columns.length>0}},setPropertyRelates(u,f){switch(u&&u.propertyID){case"dataSource":{const d=r.formSchemaUtils.getViewModelById(r.viewModelId);if(d){const p=i.find(y=>y.label===u.propertyValue);d.bindTo=p.bindTo}r.designViewModelUtils.assembleDesignViewModel();break}}}}}assembleSchemaEntityToTree(e,o,i,r="",a=[]){const l=r?`${r}/${e.label}`:"/";return a.push({id:e.id,name:e.name,label:e.label,layer:o,parent:i&&i.id,bindTo:l.replace("//","/")}),e.type.entities&&e.type.entities.length&&e.type.entities.map(c=>this.assembleSchemaEntityToTree(c,o+1,e,l,a)),a}getAppearanceProperties(e){var o,i,r;this.propertyConfig.categories.appearance={title:"外观",properties:{columns:{title:"列设置",description:"列设置",type:"array",editor:{type:"grid-field-editor",viewModelId:this.viewModelId,gridData:e,getLatestGridData:a=>e},refreshPanelAfterChanged:!0},showStripe:{title:"显示条纹",type:"boolean",description:"是否显示条纹"}},setPropertyRelates(a,l){switch(a&&a.propertyID){case"useBlankWhenDataIsEmpty":e.emptyDataHeight=e.useBlankWhenDataIsEmpty?36:240;break;case"columns":e.columns=a.propertyValue||[];break}}},this.propertyConfig.categories.selection={title:"多选配置",$converter:"/converter/grid-selection.converter",properties:{multiSelect:{title:"启用多选",type:"boolean",refreshPanelAfterChanged:!0},showCheckbox:{visible:e.selection==null?!1:e.selection.multiSelect,title:"显示复选框",type:"boolean",refreshPanelAfterChanged:!0},showSelectAll:{visible:e.selection==null?!1:e.selection.multiSelect&&e.selection.showCheckbox,title:"显示全选",type:"boolean"}},setPropertyRelates(a,l){switch(a&&a.propertyID){case"multiSelect":e.selection.showCheckbox=a.propertyValue;break}}},this.propertyConfig.categories.rowNumber={title:"行号配置",$converter:"/converter/row-number.converter",properties:{enable:{title:"显示行号",type:"boolean",refreshPanelAfterChanged:!0},width:{visible:e.rowNumber==null?!0:e.rowNumber.enable,title:"宽度",type:"number"},heading:{visible:e.rowNumber==null?!0:e.rowNumber.enable,title:"标题",type:"string"}}},this.propertyConfig.categories.pagination={title:"分页",$converter:"/converter/pagination.converter",properties:{enable:{title:"启用分页",type:"boolean",refreshPanelAfterChanged:!0,editor:{readonly:this.isSubGrid()}},mode:{visible:((o=e.pagination)==null?void 0:o.enable)||!1,title:"分页交互模式",type:"enum",editor:{type:"combo-list",textField:"value",valueField:"key",data:[{key:"client",value:"客户端"},{key:"server",value:"服务器端"}]}},showIndex:{visible:((i=e.pagination)==null?void 0:i.enable)||!1,title:"显示页码",type:"boolean"},showLimits:{visible:((r=e.pagination)==null?void 0:r.enable)||!1,title:"显示每页记录数",type:"boolean"}}}}getEventPropConfig(e){const o=[{label:"onClickRow",name:"行点击事件"},{label:"onSelectionChange",name:"行切换事件"},{label:"onPageIndexChanged",name:"切换页码事件"},{label:"onPageSizeChanged",name:"分页条数变化事件"}],i=this,r=i.eventsEditorUtils.formProperties(e,i.viewModelId,o),a={};a[i.viewModelId]={type:"events-editor",editor:{initialData:r}},this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:a,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(l,c){const s=l.propertyValue;delete e[i.viewModelId],s&&(s.setPropertyRelates=this.setPropertyRelates,i.eventsEditorUtils.saveRelatedParameters(e,i.viewModelId,s.events,s)),e.remoteSort=!!e.columnSorted}}}isSubGrid(){const e=this.formSchemaUtils.getViewModelById(this.viewModelId);return e&&e.bindTo?e.bindTo.trim()!=="/":!1}}function Ja(t,e){const o=t.schema,i=n.ref(!0),r=n.ref(!0);function a(f){return f&&f.sourceType==="control"?f.componentCategory==="input":!1}function l(){return!1}function c(){return!1}function s(){return!0}function u(f){return new Qa(f,e).getPropertyConfig(o)}return{canAccepts:a,checkCanDeleteComponent:l,checkCanMoveComponent:c,hideNestedPaddingInDesginerView:s,triggerBelongedComponentToMoveWhenMoved:i,triggerBelongedComponentToDeleteWhenDeleted:r,getPropsConfig:u}}const Kt=n.defineComponent({name:"FDataGridDesign",props:mn,emits:["ClickRow","DoubleClickRow","selectionChange","enterUpInLastCell","pageIndexChanged","pageSizeChanged"],setup(t,e){var Ie;const o=n.ref(),i=n.inject("designer-host-service"),r=n.inject("design-item-context"),a=Ja(r,i),l=qt(o,r,a);l.value.styles="display:flex;flex:1;",n.onMounted(()=>{o.value.componentInstance=l}),e.expose(l.value);const c=n.ref(t.columns),s=20,u=uo(t),f=0,d=n.ref(),p=n.ref(),y=n.ref(t.showStripe),C=n.ref([]),I=n.ref(!1),M=n.ref(((Ie=t.rowOption)==null?void 0:Ie.wrapContent)||!1),g=no(),v=oo(t),S=_n(t,new Map,g,v,u),h=po(t,S,u,C,e),F=n.computed(()=>S.totalItems.value<s?S.totalItems.value:s),{containerStyleObject:N}=Cn(t),m=Sn(t),{applyCommands:_}=m;_(c);const b=wn(t),k=ho(),{applyColumnSorter:w,columnContext:x,updateColumnRenderContext:T}=b;w(S,k);const V=xn(t,x),B=fo(t,e,h,u),O=co(t,e,u,B),E=ao(t),$=lo(t,O,E),L=so(t,O,v,u,E,$),H=Ga(t,u,$,L),Y=Wa(t,u,$,L),J=ro(t,c,S,F,f,L,H,Y),{getVisualData:ne}=J,le=mo(t,h),{sidebarWidth:R}=le;C.value=ne(0,F.value+f-1);const Z=io(t,S,C,x,J,F,f,R),{onWheel:ue,dataGridWidth:ee,viewPortHeight:A,viewPortWidth:U}=Z,ye=Xn(t,x,d,U,V),{calculateColumnsSize:fe}=ye,je=n.computed(()=>({"fv-grid":!0,"fv-datagrid-strip":y.value})),Pe=n.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":I.value,"fv-grid-wrap-content":M.value})),{renderGridHeader:_e}=Yn(r,t,b,Z),{renderHorizontalScrollbar:Se}=bn(t,d,Z);function Ve(){var pe,j;A.value=((pe=p.value)==null?void 0:pe.clientHeight)||0,ee.value=((j=d.value)==null?void 0:j.clientWidth)||0,fe()}n.onMounted(()=>{d.value&&(Vt.useResizeObserver(d.value,Ve),fe(),n.nextTick(()=>{d.value&&(ee.value=d.value.clientWidth),p.value&&(U.value=p.value.clientWidth,A.value=p.value.clientHeight)}))});function Re(pe){pe&&(c.value=pe,_(c),T(c.value),w(S,k),fe())}return n.watch(()=>t.columns,pe=>{Re(pe),Ft.value++}),n.watch(U,()=>{d.value&&fe()}),()=>n.createVNode("div",{ref:o,class:je.value,style:N.value,onWheel:ue},[_e(),n.createVNode("div",{ref:d,class:Pe.value,onMouseover:()=>{I.value=!0},onMouseleave:()=>{I.value=!1}},[Se()])])}}),Za=new Map([["appearance",nn.resolveAppearance]]);function el(t,e,o){return e}const tl={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/button-edit.schema.json",title:"button-edit",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a Input Group",type:"string"},type:{description:"The type string of Input Group component",type:"string",default:"button-edit"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disable:{type:"string",default:!1},editable:{description:"",type:"boolean",default:!0},enableLinkLabel:{description:"",type:"boolean",default:!1},label:{description:"",type:"string",default:""},lableWidth:{description:"",type:"number"},placeholder:{description:"",type:"string",default:""},forcePlaceholder:{description:"",type:"boolean",default:!1},readonly:{description:"",type:"boolean",default:!1},require:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},textAlign:{description:"",type:"string",enum:["left","middle","right"],default:"left"},visible:{description:"",type:"boolean",default:!0},onBlur:{description:"",type:"string",default:""},onClickLinkLabel:{description:"",type:"sting",default:""},autoComplete:{description:"",type:"boolean",default:!1},buttonContent:{description:"",type:"string",default:""},enableClear:{description:"",type:"boolean",default:!0},inputType:{description:"",type:"string",enum:["text","tag"],default:"text"},multiSelect:{description:"",type:"boolean",default:!1},popup:{description:"",type:"object",properties:{footerButtons:{type:"array",default:[]},height:{type:"number",default:600},dataMapping:{type:"object"},contents:{type:"array",default:[]},showMaxButton:{type:"boolean",default:!0},showCloseButton:{type:"boolean",default:!0},showFooter:{type:"boolean",default:!0},title:{type:"string",default:""},width:{type:"number",default:800}}},separator:{type:"string",default:","},showButtonWhenDisabled:{description:"",type:"boolean",default:!1},wrapText:{type:"boolean",default:!1},onClear:{description:"",type:"string",default:""}},required:["id","type"]},nl={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:"右对齐"}]}}}}}},go={id:String,buttonContent:{type:String,default:'<i class="f-icon f-icon-lookup"></i>'},buttonBehavior:{type:String,default:"Popup"},autoComplete:{type:Boolean,default:!1},customClass:{type:String,default:""},disable:{type:Boolean,default:!1},editable:{type:Boolean,default:!0},enableClear:{type:Boolean,default:!1},modelValue:{type:String,default:""},readonly:{type:Boolean,default:!1},showButtonWhenDisabled:{type:Boolean,default:!1},enableTitle:{type:Boolean,default:!1},inputType:{type:String,default:"text"},forcePlaceholder:{type:Boolean,default:!1},placeholder:{type:String,default:""},minLength:Number,maxLength:Number,tabIndex:Number,popupHost:{type:Object},popupRightBoundary:{type:Object},popupOffsetX:{type:Object},popupOnInput:{type:Boolean,default:!1},popupOnFocus:{type:Boolean,default:!1},popupOnClick:{type:Boolean,default:!1},popupMinWidth:{type:Number,default:160},modalOptions:{type:Object,default:{}},wrapText:{type:Boolean,default:!1},multiSelect:{type:Boolean,default:!1},separator:{type:String,default:","},textAlign:{type:String,default:"left"},beforeClickButton:{type:Function,default:null},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1},beforeOpen:{type:Function,default:null},updateOn:{type:String,default:"change"},keepWidthWithReference:{type:Boolean,default:!0},placement:{type:String,default:"bottom-left"}};We(go,tl,Za,el,nl);const ol={popupContentPosition:{type:Object,default:{left:0,top:0}},host:{type:Object},backgroundColor:{type:String,default:""}},il=n.defineComponent({name:"FOverlay",props:ol,emits:["click"],setup(t,e){const o=n.ref(t.popupContentPosition),i=n.ref(t.host),r=n.computed(()=>({backgroundColor:t.backgroundColor||"",pointerEvents:"auto"}));function a(c){e.emit("click"),c.preventDefault(),c.stopPropagation()}n.computed(()=>{const c=i.value;if(c){const s=c.getBoundingClientRect(),{left:u,top:f,height:d}=s;return{left:u,top:f+d}}return o.value});const l=n.computed(()=>({}));return()=>n.createVNode(n.Teleport,{to:"body"},{default:()=>{var c,s;return[n.createVNode("div",{class:"overlay-container",onClick:u=>a(u),style:r.value},[n.createVNode("div",{style:l.value},[(s=(c=e.slots).default)==null?void 0:s.call(c)])])]}})}});function rl(t){if(t.content&&t.content.render)return t.content.render;if(t.render&&typeof t.render=="function")return t.render}function al(t){const e=document.createElement("div");e.style.display="contents";let o;const i=t.onClickCallback||(()=>{}),r=()=>{i(),o&&o.unmount()};return o=n.createApp({setup(){n.onUnmounted(()=>{document.body.removeChild(e)});const a=rl(t);return()=>n.createVNode(il,{"popup-content-position":t.popupPosition,host:t.host,onClick:r,backgroundColor:t.backgroundColor},{default:()=>[a&&a()]})}}),document.body.appendChild(e),o.mount(e),o}class ll{static show(e){return al(e)}}function yo(t,e){function o(){const i=t.beforeOpen||t.beforeClickButton||null;let r=Promise.resolve(!0);if(i){const a=i(e.value);if(typeof a>"u")return r;typeof a=="boolean"?r=Promise.resolve(a):r=a}return r}return{judgeCanOpen:o}}function sl(t,e,o,i,r){const a=n.ref(t.buttonBehavior),l=n.ref(t.popupOnInput),c=n.computed(()=>({"input-group-append":!0,"append-force-show":t.showButtonWhenDisabled&&(t.readonly||t.disable)})),{judgeCanOpen:s}=yo(t,r),u=n.computed(()=>t.showButtonWhenDisabled||(!t.editable||!t.readonly)&&!t.disable),f=n.inject(Zn,null),d=n.ref();async function p(I){if(await s()&&u.value){const M=!!e.slots.default;if(a.value==="Modal"){const g=t.modalOptions,v=f==null?void 0:f.open({...g,render:()=>e.slots.default&&e.slots.default()});d.value=v==null?void 0:v.modalRef}a.value==="Overlay"&&ll.show({host:document.body,backgroundColor:"rgba(0,0,0,.15)",render:()=>e.slots.default&&e.slots.default()}),M&&a.value==="Popup"&&i.togglePopup(!0),M&&l.value&&i.hidePopup(),e.emit("clickButton",{origin:I,value:t.modelValue})}}function y(I){e.emit("mouseEnterIcon",I)}function C(I){e.emit("mouseLeaveIcon",I)}return{buttonGroupClass:c,onClickButton:p,onMouseEnterButton:y,onMouseLeaveButton:C,modalRef:d}}function cl(t,e,o,i,r,a){const l=n.ref(!1),c=n.computed(()=>t.enableClear&&!t.readonly&&!t.disable),{changeTextBoxValue:s}=a;function u(y){l.value=y}n.watch(r,()=>{u(!!r.value)});function f(y){const C=!t.readonly&&!t.disable&&t.editable,I=!t.editable;y.stopPropagation(),(C||I)&&(s(""),u(!l.value),e.emit("clear"))}function d(y){if(c.value){if(!o.value){u(!1);return}!t.disable&&!t.readonly&&u(!0)}}function p(y){c.value&&u(!1)}return{enableClearButton:c,showClearButton:l,onClearValue:f,onMouseEnterTextBox:d,onMouseLeaveTextBox:p}}function dl(t,e,o,i,r){const a=n.computed(()=>t.popupOnInput),l=n.computed(()=>t.popupOnFocus),{shouldPopupContent:c}=r,s=n.computed(()=>t.enableTitle?o.value:""),u=n.computed(()=>(t.disable||t.readonly)&&!t.forcePlaceholder?"":t.placeholder),f=n.computed(()=>t.readonly||!t.editable),d=n.ref(!1),p=n.computed(()=>!t.disable&&d.value),y=n.computed(()=>({"text-left":t.textAlign==="left","text-center":t.textAlign==="center","text-right":t.textAlign==="right","form-control":!0,"f-utils-fill":!0})),C=n.computed(()=>({"input-group":!0,"f-state-disabled":t.disable,"f-state-editable":t.editable&&!t.disable&&!t.readonly,"f-state-readonly":t.readonly&&!t.disable,"f-state-focus":p.value}));function I(b,k=!0){o.value=b,k&&(e.emit("change",b),e.emit("update:modelValue",b))}function M(b){c.value=!1,I(b,!0)}n.watch(()=>t.modelValue,b=>{o.value=b});function g(b){d.value=!1,e.emit("blur",b),b.stopPropagation()}function v(b){e.emit("click",b),!t.disable&&!t.readonly&&t.popupOnClick&&r.togglePopup()}function S(b){t.disable||(d.value=!0,f.value||(e.emit("focus",b),l.value&&!c.value&&r.popup()))}function h(b){e.emit("input",b.target.value);const k=b.target.value;i.value=k,o.value!==k&&I(k,t.updateOn==="change"),a.value&&!c.value&&r.popup()}function F(b){b.target.tagName!=="INPUT"&&b.preventDefault(),b.stopPropagation()}function N(b){e.emit("keydown",b)}function m(b){b.key==="Enter"&&(a.value||l.value)&&r.hidePopup(),e.emit("keyup",b)}function _(b){const k=b.target.value;b.stopPropagation(),I(k)}return{hasFocusedTextBox:p,isTextBoxReadonly:f,textBoxClass:y,textBoxPlaceholder:u,textBoxTitle:s,inputGroupClass:C,changeTextBoxValue:I,commitValue:M,onBlurTextBox:g,onClickTextBox:v,onFocusTextBox:S,onInput:h,onKeyDownTextBox:N,onKeyUpTextBox:m,onMouseDownTextBox:F,onTextBoxValueChange:_}}function ul(t,e,o,i){const r=n.ref(),a=n.ref(!1),{judgeCanOpen:l}=yo(t,i);function c(){const d=r.value;d&&d.show(o.value)}async function s(d=!1){if(!!e.slots.default){if(!d&&!a.value&&!await l())return;a.value=!a.value,await n.nextTick(),c()}}async function u(d=!1){if(!!e.slots.default){if(!d&&!await l())return;a.value=!0,await n.nextTick(),c()}}function f(){a.value=!1}return{hidePopup:f,popup:u,shouldPopupContent:a,togglePopup:s,popoverRef:r}}function fl(t,e,o){const i=n.ref(),{isTextBoxReadonly:r,textBoxClass:a,textBoxPlaceholder:l,textBoxTitle:c,onBlurTextBox:s,onClickTextBox:u,onFocusTextBox:f,onInput:d,onKeyDownTextBox:p,onKeyUpTextBox:y,onMouseDownTextBox:C,onTextBoxValueChange:I}=o;return n.onMounted(()=>{var M,g;t.selectOnCreated&&((M=i.value)==null||M.select()),t.focusOnCreated&&((g=i.value)==null||g.focus())}),()=>n.createVNode("input",{ref:i,name:"input-group-value",autocomplete:t.autoComplete?"on":"off",class:a.value,disabled:t.disable,maxlength:t.maxLength,minlength:t.minLength,placeholder:l.value,readonly:r.value,tabindex:t.tabIndex,title:c.value,type:t.inputType,value:e.value,onBlur:s,onChange:I,onClick:u,onFocus:f,onInput:d,onKeydown:p,onKeyup:y,onMousedown:C},null)}function pl(t,e,o){const i=n.ref(t.separator),{changeTextBoxValue:r}=o,a=n.computed(()=>e.value?e.value.split(i.value).map(c=>({name:c,selectable:!0})):[]);function l(c){r(c.map(s=>s.name).join(i.value),!0)}return()=>n.createVNode(Zt,{id:`${t.id}-tag-editor`,class:"form-control",data:a.value,showClose:!0,showInput:!0,onChange:l},null)}function ml(t,e,o,i){const{buttonGroupClass:r,onClickButton:a,onMouseEnterButton:l,onMouseLeaveButton:c}=o,{enableClearButton:s,showClearButton:u,onClearValue:f}=i,d=n.ref();return{renderButtonGroup:()=>n.createVNode("div",{id:`${t.id}-button-group`,class:r.value},[s.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]]),e.slots.buttonContent?n.createVNode("span",{class:"input-group-text input-group-append-button",onClick:a,onMouseenter:l,onMouseleave:c},[e.slots.buttonContent()]):t.buttonContent?n.createVNode("span",{class:"input-group-text input-group-append-button",innerHTML:t.buttonContent,ref:d,onClick:a,onMouseenter:l,onMouseleave:c},null):null]),buttonHandleElement:d}}function hl(t,e,o){const i=n.ref(t.popupMinWidth),{hidePopup:r,popoverRef:a}=o;return()=>n.createVNode(ki,{id:`${t.id}-popover`,ref:a,visible:!0,placement:t.placement,host:t.popupHost,"keep-width-with-reference":t.keepWidthWithReference,fitContent:!0,"right-boundary":t.popupRightBoundary,minWidth:i.value,offsetX:t.popupOffsetX,onHidden:r},{default:()=>{var l,c;return[(c=(l=e.slots).default)==null?void 0:c.call(l)]}})}const gl=n.defineComponent({name:"FButtonEdit",props:go,emits:["updateExtendInfo","clear","change","click","clickButton","blur","focus","mouseEnterIcon","mouseLeaveIcon","keyup","keydown","inputClick","input","update:modelValue"],setup(t,e){const o=n.ref(),i=n.ref(t.customClass),r=n.ref(t.modelValue),a=ul(t,e,o,r),{shouldPopupContent:l,hidePopup:c,togglePopup:s}=a,u=sl(t,e,o,a,r),f=n.ref(""),d=dl(t,e,r,f,a),{hasFocusedTextBox:p,commitValue:y,inputGroupClass:C}=d,I=cl(t,e,r,p,f,d),{onMouseEnterTextBox:M,onMouseLeaveTextBox:g}=I,v=n.computed(()=>{const b={"f-button-edit":!0,"f-cmp-inputgroup":!0,"f-button-edit-nowrap":!t.wrapText};return i.value&&i.value.split(" ").reduce((k,w)=>(k[w]=!0,k),b),b});function S(){return t.multiSelect&&t.inputType==="tag"?pl(t,r,d):fl(t,r,d)}let h=S();n.watch([()=>t.multiSelect,()=>t.inputType],()=>{h=S()});const{renderButtonGroup:F,buttonHandleElement:N}=ml(t,e,u,I),m=hl(t,e,a),_={commitValue:y,elementRef:o,hidePopup:c,shouldPopupContent:l,togglePopup:s,openDialog:()=>{N.value&&t.buttonBehavior==="Modal"&&N.value.click()},getModal:()=>{var b;return t.buttonBehavior==="Modal"?(b=u.modalRef.value)==null?void 0:b.value:null}};return n.onMounted(()=>{o.value.componentInstance=_,window.onresize=()=>{document.body.click()}}),e.expose(_),()=>n.createVNode(n.Fragment,null,[n.createVNode("div",n.mergeProps(e.attrs,{ref:o,class:v.value,id:t.id}),[n.createVNode("div",{id:`${t.id}-input-group`,class:C.value,onMouseenter:M,onMouseleave:g},[h(),F()])]),l.value&&m()])}}),yl={$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"]},vo={modelValue:{type:String,default:""},viewModelId:{Type:String,default:""},gridData:{Type:Object,default:null},gridType:{Type:String,default:"data-grid-column"},getLatestGridData:{Type:Function}},vl=We(vo,yl,sn,fn),bl=new Map([["appearance",ht]]);function Cl(t,e,o){return e}const wl={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:[]}}}}}},Sl={$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"]},bo={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:[]},rowOption:{type:Object}};We(bo,Sl,bl,Cl,wl);const xl=new Map([["appearance",ht]]);function Fl(t,e,o){return e}const _l={$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"]},Ml={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:[]}}}}}},Co={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},virtualized:{type:Boolean,default:!0}};We(Co,_l,xl,Fl,Ml);function Tl(t,e){function o(a){const l=[];let c=a.nextNode();for(;c;)l.push(c),c=a.nextNode();return l}function i(a,l){const c=document.createTreeWalker(a,NodeFilter.SHOW_TEXT);return o(c).map(d=>({textNode:d,text:(d.textContent||"").toLocaleLowerCase()})).map(({textNode:d,text:p})=>{const y=[];let C=0;for(;C<p.length;){const I=p.indexOf(l,C);if(I===-1)break;y.push(I),C=I+l.length}return y.map(I=>{const M=new Range;return M.setStart(d,I),M.setEnd(d,I+l.length),M})}).flat()}function r(a){if(!CSS.highlights||(CSS.highlights.clear(),!a||!e))return;const l=i(e.value,a.toLocaleLowerCase()),c=new Highlight(...l);CSS.highlights.set("search-result",c)}return{search:r}}function wo(t,e,o,i,r,a,l,c,s,u){const f=n.ref(t.size),d=n.ref(t.textField),p=n.ref(t.titleField),y=n.ref(t.disableField),C=n.computed(()=>{var _,b;return((_=t.selection)==null?void 0:_.multiSelect)&&((b=t.selection)==null?void 0:b.showCheckbox)}),{onMouseenterItem:I,onMouseoverItem:M,onMouseoutItem:g}=a,{getKey:v,listViewItemClass:S,onCheckItem:h,onClickItem:F}=l,N=n.computed(()=>t.itemClass?{}:{margin:f.value==="small"?"0.25rem 0":"8px 0"});function m(_,b,k){return _.checked=c.findIndexInSelectedItems(_)>-1,n.createVNode("li",{class:S(_,b),id:v(_,b),key:v(_,b),onClick:w=>F(w,_,b),onMouseenter:w=>I(w,_,b),onMouseover:w=>M(w,_,b),onMouseout:w=>g(w,_,b)},[C.value&&n.createVNode("div",{class:"f-list-select",onClick:w=>w.stopPropagation()},[n.createVNode(St.FCheckbox,{id:"list-"+v(_,b),customClass:"listview-checkbox",disabled:_[y.value],checked:_.checked,"onUpdate:checked":w=>_.checked=w,onChange:w=>{h(_,b,!w.checked)}},null)]),n.createVNode("div",{class:"f-list-content"},[n.createVNode("div",{style:N.value,title:_.raw[p.value]||_.raw[d.value]},[_.raw[d.value]])])])}return{renderItem:m}}function kl(t,e,o,i,r,a,l,c,s,u){const f=n.ref(t.multiSelect),d=n.ref(t.disableField),{onMouseenterItem:p,onMouseoverItem:y,onMouseoutItem:C}=a,{getKey:I,listViewItemClass:M,onCheckItem:g,onClickItem:v}=l;function S(F,N,m){return e.slots.content?n.createVNode(n.Fragment,null,[e.slots.content&&e.slots.content({item:F.raw,index:N,selectedItem:m})]):n.createVNode("div",{style:"margin: 10px 0;"},[F.raw.name])}function h(F,N,m){return n.createVNode("li",{class:M(F,N),id:I(F,N),key:I(F,N),onClick:_=>v(_,F,N),onMouseenter:_=>p(_,F,N),onMouseover:_=>y(_,F,N),onMouseout:_=>C(_,F,N)},[f.value&&n.createVNode("div",{class:"f-list-select",onClick:_=>_.stopPropagation()},[n.createVNode(St.FCheckbox,{id:"list-"+I(F,N),customClass:"listview-checkbox",disabled:F[d.value]||!F.checked,checked:F.checked,"onUpdate:checked":_=>F.checked=_,onChange:_=>g(F,N,!_.checked)},null)]),n.createVNode("div",{class:"f-list-content"},[S(F,N,m)])])}return{renderItem:h}}function Vl(t,e,o,i,r,a,l,c,s,u){const f=n.ref(t.multiSelect),d=n.ref(t.disableField),{onMouseenterItem:p,onMouseoverItem:y,onMouseoutItem:C}=a,{getKey:I,listViewItemClass:M,onCheckItem:g,onClickItem:v}=l,{dragstart:S,dragenter:h,dragover:F,dragend:N}=i,{removeItem:m}=s,_=n.computed(()=>({margin:f.value?"10px 0":"10px 0px 10px 14px"}));function b(T){return n.createVNode("div",{style:_.value},[T.raw.name])}function k(){return e.slots.itemContent?e.slots.itemContent:b}const w=k();function x(T,V,B){return n.createVNode("li",{class:M(T,V),id:I(T,V),key:I(T,V),onClick:O=>v(O,T,V),onMouseenter:O=>p(O,T,V),onMouseover:O=>y(O,T,V),onMouseout:O=>C(O,T,V),draggable:"true",onDragstart:O=>S(O,T,V),onDragenter:O=>h(O,V),onDragend:O=>N(O,T),onDragover:O=>F(O,V)},[f.value&&n.createVNode("div",{class:"f-list-select",onClick:O=>O.stopPropagation()},[n.createVNode(St.FCheckbox,{id:"list-"+I(T,V),customClass:"listview-checkbox",disabled:T[d.value]||!T.checked,checked:T.checked,"onUpdate:checked":O=>T.checked=O,onChange:O=>g(T,V,!O.checked)},null)]),n.createVNode("div",{class:"f-list-content"},[w(T)]),n.createVNode("div",{class:"f-list-remove",onClick:O=>m(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:x}}function Il(t,e,o,i,r,a,l,c,s,u){var I;const f=n.ref(((I=t.group)==null?void 0:I.groupFields)||[]),{collpaseGroupIconClass:d}=r,{toggleGroupRow:p}=u;function y(M,g){g.collapse=!g.collapse,o.value=p(g.collapse?"collapse":"expand",g,o.value)}function C(M,g,v){return M.layer>-1&&n.createVNode("div",{class:"f-navlookup-recentHeader",onClick:S=>y(S,M)},[n.createVNode("div",{class:"fv-grid-group-row-icon"},[n.createVNode("span",{class:d(M)},null)]),n.createVNode("div",{class:"f-navlookup-recommandLabel"},[M.raw[f.value[M.layer]]])])}return{renderItem:C}}function Nl(t,e,o,i){const r=n.ref(t.idField),{dataView:a}=o,l=n.ref(-1),c=n.ref(!1),{activeIndex:s,focusedItemId:u,hoverIndex:f,resumeHover:d,suspendHover:p}=i;function y(g,v,S){g.stopPropagation(),p(),v&&setTimeout(()=>{l.value=S,c.value=!0,v.moving=!0})}function C(g,v){if(g.preventDefault(),l.value!==v){const S=a.value[l.value],h=a.value;h.splice(l.value,1),h.splice(v,0,S),l.value=v}}function I(g,v){g.preventDefault(),g.dataTransfer&&(g.dataTransfer.dropEffect="move")}function M(g,v){v&&(v.moving=!1),a.value.forEach((S,h)=>{S.__fv_index__=h}),c.value=!1,d(),f.value=v.raw.__fv_index__,s.value=v.raw.__fv_index__,u.value=v.raw[r.value],e.emit("change",a.value),e.emit("activeChange",v)}return{dragstart:y,dragenter:C,dragover:I,dragend:M,isDragging:c}}function Bl(t,e,o){const{dataView:i}=o;function r(a){if(a>-1&&a<i.value.length){const l=i.value.splice(a,1);e.emit("removeItem",l[0])}}return{removeItem:r}}function Ol(t,e,o,i,r,a){const l=n.ref(t.idField),c=n.ref(t.disableField),s=n.ref(t.draggable),u=n.ref(t.itemClass),f=n.ref(t.selection.multiSelect??!1),d=n.ref(t.selection.multiSelectMode),{isDragging:p}=i,{activeIndex:y,focusedItemId:C,hoverIndex:I}=r,{clearSelection:M,getSelectedItems:g,toggleSelectItem:v}=a,S=n.ref(g());function h(w,x){const T={"f-list-view-group-item":!0,"f-list-view-draggable-item":s.value,"f-un-click":!w.checked,"f-un-select":!!w.raw[c.value],"f-listview-active":w.raw.__fv_index__===y.value,"f-listview-hover":!p.value&&x===I.value,moving:!!w.moving};return u.value.split(" ").reduce((B,O)=>(B[O]=!0,B),T),T}function F(w,x){return w.raw[l.value]||""}const N=n.computed(()=>!f.value);function m(w,x,T){w.checked=T,!w.raw[c.value]&&(N.value&&(C.value=w.raw[l.value]),v(w))}const _=n.computed(()=>f.value&&d.value==="OnCheckClearByClick"),b=n.computed(()=>!f.value||f.value&&(d.value==="OnCheckAndClick"||d.value==="OnClick"));function k(w,x,T){if(x.raw[c.value]){w.preventDefault(),w.stopPropagation();return}C.value=x.raw[l.value],y.value=T,_.value&&M(),b.value&&(v(x),S.value=g()),e.emit("clickItem",{data:S.value,index:T}),e.emit("activeChange",S.value)}return{getKey:F,listViewItemClass:h,onCheckItem:m,onClickItem:k}}function El(t,e,o,i,r,a,l,c){const s=n.ref(t.view),u=n.ref(t.view==="CardView"),f=n.ref({}),d=n.ref("暂无数据"),p=Nl(t,e,i,a),y=Bl(t,e,i),C=Ol(t,e,o,p,a,l),I=n.computed(()=>({"f-list-view-group":!0,"f-list-view-group-multiselect":t.multiSelect,"d-flex":u.value,"flex-wrap":u.value})),M=n.computed(()=>!!o.value&&o.value.length>0),g=n.computed(()=>o.value.length===0);n.computed(()=>g.value&&!e.slots.empty);function v(){return s.value==="SingleView"?wo:s.value==="DraggableView"?Vl:(s.value==="ContentView"||s.value==="CardView")&&e.slots.content?kl:wo}const S=v(),{renderItem:h}=S(t,e,o,p,r,a,C,l,y,c),{renderItem:F}=Il(t,e,o,p,r,a,C,l,y,c),N=[h,F];function m(){return o.value.filter(k=>k.visible!==!1).map((k,w)=>N[k.type](k,w,f))}function _(){return n.createVNode("div",{class:"f-list-view-emptydata"},[n.createVNode("p",{class:"f-empty-title"},[e.slots.empty?e.slots.empty():d.value])])}function b(){return n.createVNode("ul",{class:I.value,style:"list-style: none;"},[M.value&&m(),g.value&&_()])}return{renderListArea:b}}function $l(t,e,o){function i(){return e.slots.header&&n.createVNode("div",{class:"f-list-view-header"},[e.slots.header()])}return{renderHeader:i}}function So(t,e,o){const i=n.ref(t.headerClass),r=n.ref(t.placeholder),a=n.ref(""),l=n.computed(()=>!a.value),c=n.computed(()=>!!a.value);function s(p){a.value=""}n.watch(a,p=>{t.enableHighlightSearch&&o.search(p),e.emit("afterSearch",p)});const u=n.computed(()=>{const p={"form-group":!0,"farris-form-group":!0};return i.value&&i.value.split(" ").reduce((C,I)=>(C[I]=!0,C),p),p});function f(p){}function d(){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=>a.value=p,name:"input-group-value",type:"text",placeholder:r.value,autocomplete:"off"},null),[[n.vModelText,a.value]]),n.createVNode("div",{class:"input-group-append"},[c.value&&n.createVNode("span",{class:"input-group-text input-group-clear",onClick:p=>s()},[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:d}}function jl(){const t=n.ref(""),e=n.ref(-1),o=n.ref(""),i=n.ref(-1),r=n.ref(!1);function a(d,p,y){i.value=y}function l(d,p,y){r.value||(i.value=y)}function c(d,p,y){i.value=-1}function s(){r.value=!0}function u(){r.value=!1}function f(){e.value=-1,t.value=""}return{activeIndex:e,focusedItemId:o,hoverIndex:i,clearActiveItem:f,onMouseenterItem:a,onMouseoverItem:l,onMouseoutItem:c,resumeHover:u,suspendHover:s}}const xo=n.defineComponent({name:"FListView",props:Co,emits:["afterSearch","checkValuesChange","clickItem","selectionChange","removeItem","change","activeChange"],setup(t,e){const o=n.ref(),i=n.ref(!0),r=n.ref(!1),a=n.ref([]),l=0,c=n.ref(t.columns),s=X.useFilter(),u=X.useIdentify(t),f=X.useHierarchy(t),d=X.useGroupData(t,u),p=X.useDataView(t,new Map,s,f,u),y=X.useSelection(t,p,u,a,e),C=Tl(t,o),I=n.computed(()=>p.dataView.value.length),M=X.useRow(t,e,y,u),g=X.useEdit(t,e,u,M),v=X.useVisualDataBound(t),S=X.useVisualDataCell(t,{},v),h=X.useVisualDataRow(t,g,f,u,v,S),F=X.useVisualGroupRow(t,u,S,h),N=X.useVisualSummaryRow(t,u,S,h),m=X.useVisualData(t,c,p,I,l,h,F,N),{getVisualData:_}=m;a.value=_(0,I.value+l-1);const b=n.computed(()=>{const H={"f-list-view":!0,"f-list-view-multiple":t.multiSelect};return t.size!=="default"&&(H[`${t.size}-item`]=!0),H}),k=n.computed(()=>!!e.slots.footer||i.value);function w(){return t.header==="SearchBar"?So:t.header==="ContentHeader"?$l:So}const x=w(),{renderHeader:T}=x(t,e,C),V=jl(),{renderListArea:B}=El(t,e,a,p,d,V,y,m);function O(H){C.search(H)}function E(H){H&&(p.load(H),a.value=_(0,I.value+l-1))}function $(){y.clearSelection(),V.clearActiveItem()}e.expose({search:O,updateDataSource:E,clearSelection:$});function L(H){t.multiSelect&&(H.preventDefault(),H.stopPropagation())}return()=>n.createVNode("div",{class:b.value,onClick:L},[T(),n.createVNode("div",{ref:o,class:"f-list-view-content",onMouseover:()=>{r.value=!0},onMouseleave:()=>{r.value=!1}},[B()]),k.value&&n.createVNode("div",{class:"f-list-view-footer"},[e.slots.footer&&e.slots.footer()])])}}),Pl=n.defineComponent({name:"FTransfer",props:bo,emits:["change","activeChange"],setup(t,e){const o=n.ref(t.identifyField),i=n.ref("已选:"),r=n.ref("项数据"),a=n.ref(t.displayType),l=n.ref(!1),c=n.ref(t.dataSource),s=n.ref(t.selections||[]),u=n.computed(()=>s.value.map(b=>b[o.value])),f=new Map,d=n.ref();function p(){const b=new Map,k=t.selectionValues||[];k.length&&k.reduce((x,T)=>(x.set(T,!0),x),b);const w=t.selections||[];w.length&&(b.clear(),w.reduce((x,T)=>(x.set(T[o.value],!0),x),b)),s.value.length||(s.value=c.value.filter(x=>b.has(x[o.value])).map(x=>Object.assign({},x))),c.value.forEach(x=>{const T=x[o.value],V=b.has(T);x.checked=V,V&&f.set(T,x)})}p();const y=n.computed(()=>a.value==="List"),C=n.computed(()=>a.value==="Tree");function I(b){s.value=b.map(k=>Object.assign({},k)),e.emit("change",s.value)}function M(){return n.createVNode(xo,{class:"f-utils-fill",data:c.value,multiSelect:!0,itemClass:"f-transfer-list-item",selection:{enableSelectRow:!0,multiSelect:!0,multiSelectMode:"OnCheckAndClick",showCheckbox:!0,showSelectAll:!1,showSelection:!0},draggable:!1,header:"Search",headerClass:"transfer-search-box",selectionValues:u.value,onSelectionChange:I},{default:()=>[n.createTextVNode(" ")]})}function g(){return n.createVNode(tn,{data:c.value,rowOption:t.rowOption,selection:{enableSelectRow:!0,multiSelect:!0,multiSelectMode:"OnCheckAndClick",showCheckbox:!0,showSelectAll:!1,showSelection:!0},selectionValues:u.value,onSelectionChange:I},null)}function v(){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"},[y.value&&M(),C.value&&g()])])])}function S(b){const k=b[o.value];if(k!==null||k!==void 0){s.value=s.value.filter(x=>x[o.value]!==k);const w=f.get(k);w&&(w.checked=!1,f.delete(k)),e.emit("change",s.value)}}n.watch(s,b=>{d.value.updateDataSource(b)});function h(b){const k=new Map;s.value.reduce((w,x)=>(w.set(x[o.value],x),w),k),s.value=b.map(w=>k.get(w[o.value])),e.emit("change",s.value)}function F(b){e.emit("activeChange",b)}function N(){return n.createVNode(xo,{ref:d,style:"flex:1",data:s.value,draggable:!0,view:"DraggableView","keep-order":!0,onChange:h,onRemoveItem:S,onActiveChange:F},null)}function m(){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"},[s.value&&s.value.length]),n.createVNode("span",{class:"selection-item-title"},[r.value])]),n.createVNode("div",{class:"container columns-box f-utils-fill d-flex"},[N()])])])}const _=n.computed(()=>({"f-transfer":!0,row:!0,"f-utils-fill":l.value}));return()=>n.createVNode("div",{class:_.value,style:"height:480px"},[v(),m()])}}),Rl=n.defineComponent({name:"FGridFieldEditor",props:vo,emits:["change"],setup(t,e){const o=n.ref(t.viewModelId),i=n.inject("designViewModelUtils"),r=n.inject("useFormSchema"),a=n.inject("controlCreatorUtils");let l=t.gridData.columns;const c=n.ref(`共 ${(l||[]).length} 项`),s=n.ref([]),u=n.ref([]);let f=[];const d={customRowStatus:S=>{const h=S.raw;S.disabled=h.type&&h.type.fields&&h.type.fields.length>0?!0:S.disabled}};function p(){if(s.value=[],!l||l.length===0)return[];l.forEach(S=>{if(S.binding&&S.binding.field){const h=f.find(F=>F.data.id===S.binding.field);h?s.value.push(Object.assign({},h.data)):s.value.push({id:S.binding.field,name:S.caption,bindingField:null,isInValidBinding:!0,inValidTip:"绑定字段不存在,请手动移除列"})}}),c.value=`共 ${s.value.length} 项`}function y(S,h=[]){return S&&S.forEach(F=>{h.push(F),F.children&&y(F.children,h)}),h}function C(){u.value=i.getAllFields2TreeByVMId(o.value),f=y(u.value)}function I(){const S=i.getDgViewModel(o.value),h=[],F=[];s.value.forEach(m=>{delete m.inValidTip,delete m.isInValidBinding;const _=l==null?void 0:l.find(b=>{if(b.binding&&b.binding.field)return b.binding.field===m.id});if(_)h.push(_);else{const b=a.setGridFieldProperty(t.gridType,m.data,null,!0);S.addField(m),h.push(b)}F.push(m.id)});const N=S.fields.filter(m=>!F.includes(m.id));if(N&&N.length>0){const m=N.map(_=>_.id);if(S.removeField(m),r.getExpressions()&&r.getExpressions().length&&m.length){const _=r.getExpressions().filter(b=>!m.includes(b.fieldId));r.setExpressions(_)}}c.value=`共 ${h.length} 项`,e.emit("change",h)}const M={fitContent:!1,width:900,height:600,title:"列编辑器",acceptCallback:()=>{I()},rejectCallback:()=>{}};function g(S){s.value=S?[...S]:[]}function v(){return t.getLatestGridData&&(t.gridData=t.getLatestGridData(),C()),l=t.gridData.columns,p(),Promise.resolve(!0)}return n.onMounted(()=>{C()}),()=>n.createVNode(gl,{"button-behavior":"Modal","modal-options":M,modelValue:c.value,"onUpdate:modelValue":S=>c.value=S,editable:!1,beforeOpen:v},{default:()=>[n.createVNode("div",{class:"f-utils-absolute-all"},[n.createVNode(Pl,{selections:s.value,"data-source":u.value,rowOption:d,class:"mx-2",displayType:"Tree",onChange:S=>g(S)},null)])]})}}),Dl={$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:""},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"]},align:{description:"",type:"enum",default:"left",enum:["left","center","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}},required:["id","type"]},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"}},required:["id","type"]},Qt={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"},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:""}},Al=We(Qt,Dl,cn,pn),Ll=We(Qt,Hl,cn,pn);class Gl extends Xe{constructor(e,o){super(e,o)}getEditorProperties(e){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 Wl extends Xe{constructor(e,o){super(e,o)}getEditorProperties(e){const o=this,i=o.getComponentConfig(e,{type:"check-group"},{placeholder:{visible:!1},disabled:{visible:!1},direction:{description:"",title:"排列方向",type:"enum",editor:{type:"combo-list",textField:"value",valueField:"key",data:[{key:"horizontal",value:"横向"},{key:"vertical",value:"纵向"}]}},textField:{description:"",title:"文本字段",type:"string",visible:!1},valueField:{description:"",title:"值字段",type:"string",visible:!1},data:{description:"",title:"数据",type:"array",$converter:"/converter/enum-data.converter",...o.getItemCollectionEditor(e,e.editor.valueField,e.editor.textField),refreshPanelAfterChanged:!0}});return i.setPropertyRelates=function(r){if(r)switch(r.propertyID){case"data":{r.propertyValue.parameters&&(e.editor.valueField=r.propertyValue.parameters.valueField,e.editor.textField=r.propertyValue.parameters.nameField),e.formatter&&(e.formatter.data=[...r.propertyValue.value]);break}}},i}}class ql extends Xe{constructor(e,o){super(e,o)}getEditorProperties(e){return this.getComponentConfig(e,{type:"check-box"},{placeholder:{visible:!1},disabled:{visible:!1}})}}class zl extends Xe{constructor(e,o){super(e,o)}getEditorProperties(e){const o=this,i=o.getComponentConfig(e,{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",$converter:"/converter/enum-data.converter",...o.getItemCollectionEditor(e,e.editor.valueField,e.editor.textField),refreshPanelAfterChanged:!0}});return i.setPropertyRelates=function(r){if(r)switch(r.propertyID){case"data":{r.propertyValue.parameters&&(e.editor.valueField=r.propertyValue.parameters.valueField,e.editor.textField=r.propertyValue.parameters.nameField),!o.checkEnumDataReadonly(e)&&e.formatter&&(e.formatter.data=[...r.propertyValue.value]);break}}},i}}class Ul extends Xe{constructor(e,o){super(e,o)}getEditorProperties(e){return this.getComponentConfig(e,{type:"textarea"},{rows:{description:"",title:"文本区域可见的行数",type:"number",editor:{min:0,nullable:!0}},showCount:{description:"",title:"展示输入文本数量",type:"boolean"}})}}function Yl(){let t="zh-CHS";window&&window.top&&window.top.localStorage&&window.top.localStorage.languageCode&&({languageCode:t}=window.top.localStorage);const e=[{id:"yyyy-MM-dd HH:mm:ss",name:"yyyy-MM-dd HH:mm:ss"},{id:"yyyy/MM/dd HH:mm:ss",name:"yyyy/MM/dd HH:mm:ss"},{id:"yyyyMMddHHmmss",name:"yyyyMMddHHmmss"},{id:"yyyy-MM-dd HH:mm",name:"yyyy-MM-dd HH:mm"},{id:"yyyy/MM/dd HH:mm",name:"yyyy/MM/dd HH:mm"},{id:"yyyyMMddHHmm",name:"yyyyMMddHHmm"}],o=[{id:"yyyy-MM-dd",name:"yyyy-MM-dd"},{id:"yyyy/MM/dd",name:"yyyy/MM/dd"},{id:"yyyyMMdd",name:"yyyyMMdd"},{id:"MM/dd/yyyy",name:"MM/dd/yyyy"}],i=[{id:"yyyy-MM",name:"yyyy-MM"},{id:"yyyy/MM",name:"yyyy/MM"},{id:"yyyyMM",name:"yyyyMM"}],r=[{id:"MM/dd",name:"MM/dd"},{id:"MMdd",name:"MMdd"},{id:"MM-dd",name:"MM-dd"}],a=[{id:"yyyy",name:"yyyy"}];return t==="zh-CHS"&&(e.push({id:"yyyy年MM月dd日 HH时mm分ss秒",name:"yyyy年MM月dd日 HH时mm分ss秒"},{id:"yyyy年MM月dd日 HH时mm分",name:"yyyy年MM月dd日 HH时mm分"}),o.push({id:"yyyy年MM月dd日",name:"yyyy年MM月dd日"}),i.push({id:"yyyy年MM月",name:"yyyy年MM月"}),r.push({id:"MM月dd日",name:"MM月dd日"}),a.push({id:"yyyy年",name:"yyyy年"})),t==="zh-CHT"&&(e.push({id:"yyyy年MM月dd日 HH時mm分ss秒",name:"yyyy年MM月dd日 HH時mm分ss秒"},{id:"yyyy年MM月dd日 HH時mm分",name:"yyyy年MM月dd日 HH時mm分"}),o.push({id:"yyyy年MM月dd日",name:"yyyy年MM月dd日"}),i.push({id:"yyyy年MM月",name:"yyyy年MM月"}),r.push({id:"MM月dd日",name:"MM月dd日"}),a.push({id:"yyyy年",name:"yyyy年"})),{timeFormats:e,yMFormats:i,yMdFormats:o,mdFormats:r,yFormats:a}}class Xl extends Xe{constructor(e,o){super(e,o)}getEditorProperties(e){var r,a,l,c,s;const o=this.getDateFormatOptions(e==null?void 0:e.editor),i=this.getValueFormatOptions();return this.getComponentConfig(e,{type:"date-picker"},{showTime:{description:"",title:"启用时间选择",type:"boolean",readonly:((r=e==null?void 0:e.editor)==null?void 0:r.fieldType)==="Date",refreshPanelAfterChanged:!0},displayFormat:{description:"",title:"展示格式",type:"enum",editor:{data:o}},valueFormat:{description:"",title:"存储格式",type:"enum",editor:{data:i},visible:((a=e==null?void 0:e.editor)==null?void 0:a.fieldType)==="String"},maxYear:{description:"",title:"最大年限",type:"number",editor:{nullable:!0,min:(l=e==null?void 0:e.editor)!=null&&l.minYear?(c=e==null?void 0:e.editor)==null?void 0:c.minYear:0,useThousands:!1},refreshPanelAfterChanged:!0},minYear:{description:"",title:"最小年限",type:"number",editor:{nullable:!0,min:0,max:(s=e==null?void 0:e.editor)==null?void 0:s.maxYear,useThousands:!1},refreshPanelAfterChanged:!0}},this.setEditorPropertyRelates)}setEditorPropertyRelates(e,o){if(!(!e||!o.editor))switch(e.propertyID){case"showTime":{const i=o.editor;e.propertyValue?(i.displayFormat="yyyy-MM-dd HH:mm:ss",i.valueFormat="yyyy-MM-dd HH:mm:ss"):(i.displayFormat="yyyy-MM-dd",i.valueFormat="yyyy-MM-dd")}}}getDateFormatOptions(e){let o=[];const{timeFormats:i,yMdFormats:r,yMFormats:a,mdFormats:l,yFormats:c}=Yl();return e.showTime&&(o=o.concat(i)),o=o.concat(r),o=o.concat(a),o=o.concat(c),o=o.concat(l),o}getValueFormatOptions(){return[{id:"yyyy-MM-dd",name:"yyyy-MM-dd"},{id:"yyyy/MM/dd",name:"yyyy/MM/dd"},{id:"MM/dd/yyyy",name:"MM/dd/yyyy"},{id:"yyyy-MM-dd HH:mm:ss",name:"yyyy-MM-dd HH:mm:ss"},{id:"yyyy/MM/dd HH:mm:ss",name:"yyyy/MM/dd HH:mm:ss"},{id:"yyyyMM",name:"yyyyMM"},{id:"yyyy",name:"yyyy"}]}}const Kl={$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}}},Ql=[{field:"code",title:"绑定字段"},{field:"name",title:"名称"},{field:"fieldType",title:"字段类型"}],Jt=Symbol("Field_Selector Component Repository Service Token");We({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:Ql},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}},Kl);const ct={convertFrom:(t,e)=>e==="multiSelect"?!!t.editor[e]:e==="separator"?t.editor[e]||",":t.editor[e],convertTo:(t,e,o)=>{t.editor[e]=o}},Jl={convertFrom:(t,e)=>t[e]==null?!0:t[e],convertTo:(t,e,o)=>{t[e]=o}};function Zl(t){let e="form_group_"+Date.now();return t&&(e=t.replaceAll("-","_").replaceAll(".","_")),"lookup."+e}const es={convertFrom:(t,e)=>{var o;return(o=t.editor[e])==null?void 0:o.displayName},convertTo:(t,e,o)=>{if(o&&o.length>0){const i=o[0],{name:r,id:a,metadataContent:l}=i;t.editor.dataSource||(t.editor.dataSource={}),t.editor.dataSource.displayName=r,t.editor.helpId=a;const{displayType:c,idField:s,textField:u}=l;t.editor.displayType=c,t.editor.dataSource.idField=s,t.editor.textField=u,t.editor.dataSource.type="ViewObject",t.editor.dataSource.uri||(t.editor.dataSource.uri=Zl(t.id))}}},ts={convertFrom:(t,e)=>{var o;return(o=t.editor.dataSource)==null?void 0:o.idField},convertTo:(t,e,o)=>{if(o&&o.length>0){const i=o[0];t.editor.dataSource.idField=i==null?void 0:i.bindingPath}}},ns={convertFrom:(t,e)=>{var o;return(o=t.editor)==null?void 0:o.textField},convertTo:(t,e,o)=>{if(o&&o.length>0){const i=o[0];t.editor.textField=i==null?void 0:i.bindingPath}}},os={convertFrom:(t,e)=>t.editor.displayType?t.editor.displayType.toUpperCase():"LIST",convertTo:(t,e,o)=>{t.editor.displayType=o}},is=Symbol("schema_repository_token");class rs extends Xe{constructor(){super(...arguments);q(this,"comboListEditor",{type:"combo-list",enableClear:!1,editable:!1})}getPropertyConfig(o,i){const r=this.getBasicProperties(o,i),a=this.getAppearanceConfig();this.getBehaviorConfig(o);const l=this.getLookupConfig(o.editor);return{type:"object",categories:{basic:r,appearance:a,lookup:l}}}getBehaviorConfig(o){return{description:"Basic Infomation",title:"行为",properties:{editable:{description:"",title:"允许编辑",type:"boolean",$converter:ct},readonly:{description:"",title:"只读",type:"boolean",$converter:ct,editor:{enableClear:!0,editable:!0}},required:{visible:!1,description:"",title:"必填",type:"boolean",$converter:ct},visible:{description:"",title:"可见",type:"boolean",visible:!1,$converter:Jl},placeholder:{title:"提示文本",type:"string",$converter:ct},tabindex:{visible:!1,description:"",title:"tab索引",type:"number"}}}}isRelatedField(){var i,r;const o=((i=this.designViewModelField)==null?void 0:i.path)||"";if(o&&o.indexOf(".")>-1){const a=o.split(".")[0],l=this.designViewModelUtils.getAllFields2TreeByVMId(this.viewModelId);if(l&&l.length){const c=l.map(s=>s.data).find(s=>s.code===a);return((r=c==null?void 0:c.type)==null?void 0:r.$type)==="EntityType"}}return!1}getLookupConfig(o){return{description:"Basic Infomation",title:"编辑器",properties:{editable:{description:"",title:"允许编辑",type:"boolean",$converter:ct,editor:this.comboListEditor},readonly:{description:"",title:"只读",type:"boolean",$converter:ct,editor:{...this.comboListEditor,editable:!0}},dataSource:{description:"数据源",title:"数据源",type:"string",refreshPanelAfterChanged:!0,editor:{type:"schema-selector",title:"选择数据源",editorParams:{propertyData:o,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},viewOptions:[{id:"recommend",title:"推荐",type:"List",dataSource:"Recommand",enableGroup:!0,groupField:"category",groupFormatter:(i,r)=>`${i==="local"?"本地元数据":"最近使用"}`},{id:"total",title:"全部",type:"List",dataSource:"Total"}],repositoryToken:is,onSubmitModal:i=>{if(i){const r=this.formSchemaUtils.getFormMetadataBasicInfo();return this.metadataService.getPickMetadata(r.relativePath,i[0].data).then(a=>JSON.parse(a==null?void 0:a.metadata.content))}}},$converter:es},displayType:{description:"类型: 树列表、列表、双列表、左树右列表",title:"展示类型",type:"string",$converter:os,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:o,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},columns:[{field:"name",title:"名称"},{field:"code",title:"编号"},{field:"bindingPath",title:"绑定字段"}],repositoryToken:Jt},$converter:ts},textField:{description:"显示文本字段",title:"文本字段",type:"string",$converter:ns,editor:{type:"field-selector",textField:"bindingPath",idField:"bindingPath",editorParams:{propertyData:o,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},columns:[{field:"name",title:"名称"},{field:"code",title:"编号"},{field:"bindingPath",title:"绑定字段"}],repositoryToken:Jt}},mappingFields:{description:"字段映射",title:"字段映射",type:"string",$converter:ct,editor:{type:"mapping-editor",modalWidth:800,modalHeight:600,editable:!1,editorParams:{propertyData:o,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},fromData:{editable:!1,formatter:(i,r)=>`${r.raw.name} [${r.raw.bindingPath}]`,idField:"id",textField:"bindingPath",valueField:"bindingPath",repositoryToken:Jt},toData:{idField:"id",textField:"bindingPath",valueField:"bindingPath",dataSource:this.designViewModelUtils.getAllFields2TreeByVMId(this.viewModelId),formatter:(i,r)=>`${r.raw.name} [${r.raw.bindingPath}]`}}},multiSelect:{description:"启用多选",$converter:ct,title:"启用多选",type:"boolean",editor:this.comboListEditor,refreshPanelAfterChanged:!0,visible:!this.isRelatedField()},separator:{description:"多选分隔符",$converter:ct,title:"多选分隔符",type:"string",editor:{type:"combo-list",editable:!1,disabled:!1,data:[{text:",",value:","},{text:"|",value:"|"},{text:"#",value:"#"}],textField:"text",idField:"value",valueField:"value"},visible:!!o.multiSelect}}}}}class as extends Xe{constructor(e,o){super(e,o)}getEditorProperties(e){return this.getComponentConfig(e,{type:"number-range"},{editable:{description:"",title:"允许编辑",type:"boolean"}})}}class ls extends Xe{constructor(e,o){super(e,o)}getEditorProperties(e){let o;return this.designViewModelField&&(o=this.designViewModelField.type.precision),this.getComponentConfig(e,{type:"number-spinner"},{precision:{description:"",title:"精度",type:"number",editor:{readonly:o===0,min:0,max:o}},step:{description:"",title:"步长",type:"number",editor:{min:0}},max:{description:"",title:"最大值",type:"number",editor:{nullable:!0}},min:{description:"",title:"最小值",type:"number",editor:{nullable:!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 ss extends Xe{constructor(e,o){super(e,o)}getEditorProperties(e){const o=this,i=o.getComponentConfig(e,{type:"radio-group"},{disabled:{visible:!1},placeholder:{visible:!1},direction:{description:"",title:"排列方向",type:"enum",editor:{type:"combo-list",textField:"value",valueField:"key",data:[{key:"horizontal",value:"横向"},{key:"vertical",value:"纵向"}]}},textField:{visible:!1,description:"",title:"显示文本字段",type:"string"},valueField:{visible:!1,description:"",title:"值字段",type:"string"},data:{description:"",title:"数据",type:"array",$converter:"/converter/enum-data.converter",...o.getItemCollectionEditor(e,e.editor.valueField,e.editor.textField),refreshPanelAfterChanged:!0}});return i.setPropertyRelates=function(r){if(r)switch(r.propertyID){case"data":{r.propertyValue.parameters&&(e.editor.valueField=r.propertyValue.parameters.valueField,e.editor.textField=r.propertyValue.parameters.nameField),!o.checkEnumDataReadonly(e)&&e.formatter&&(e.formatter.data=[...r.propertyValue.value]);break}}},i}}class cs extends Xe{constructor(e,o){super(e,o)}getEditorProperties(e){return this.getComponentConfig(e,{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:"medium",name:"中号"},{id:"large",name:"大号"}]}}})}}class ds extends Xe{constructor(e,o){super(e,o)}getEditorProperties(e){return this.getComponentConfig(e,{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 us extends Et{constructor(e,o){super(e,o)}getPropertyConfig(e,o){return this.getBasicPropConfig(e),this.getAppearanceProperties(e),this.getFieldEditorProperties(e,o),this.propertyConfig}getBasicPropConfig(e){this.propertyConfig.categories.basic={description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},title:{description:"标题",title:"标题",type:"string"}}}}getAppearanceProperties(e){this.propertyConfig.categories.appearance={description:"",title:"外观",properties:{resizable:{description:"允许拖拽改变列宽",title:"拖拽改变列宽",type:"boolean"},halign:{description:"标题对齐方式",title:"标题对齐方式",type:"enum",editor:{data:[{id:"left",name:"左对齐"},{id:"center",name:"居中"},{id:"right",name:"右对齐"}]}},align:{description:"数据水平对齐方式选择",title:"数据水平对齐方式",type:"enum",editor:{data:[{id:"left",name:"左对齐"},{id:"center",name:"居中"},{id:"right",name:"右对齐"}]}},valign:{description:"数据垂直对齐方式选择",title:"数据垂直对齐方式",type:"enum",editor:{data:[{id:"top",name:"顶对齐"},{id:"middle",name:"居中"},{id:"bottom",name:"底对齐"}]}}}}}getFieldEditorProperties(e,o){o.fieldEditable&&e.editor&&this.getFieldEditorProp(e)}getFieldEditorProp(e,o="gridFieldEditor",i=!1){const r=this.formMetadataConverter.getRealEditorType(e.editor.type);let a;switch(r){case"avatar":a=new Gl(this.componentId,this.designerHostService);break;case"check-group":a=new Wl(this.componentId,this.designerHostService);break;case"check-box":a=new ql(this.componentId,this.designerHostService);break;case"combo-list":a=new zl(this.componentId,this.designerHostService);break;case"date-picker":a=new Xl(this.componentId,this.designerHostService);break;case"lookup":a=new rs(this.componentId,this.designerHostService);break;case"number-range":a=new as(this.componentId,this.designerHostService);break;case"number-spinner":a=new ls(this.componentId,this.designerHostService);break;case"radio-group":a=new ss(this.componentId,this.designerHostService);break;case"switch":a=new cs(this.componentId,this.designerHostService);break;case"textarea":a=new Ul(this.componentId,this.designerHostService);break;case"time-picker":a=new ds(this.componentId,this.designerHostService);break;default:a=new da(this.componentId,this.designerHostService)}this.setDesignViewModelField(e);const l=this;this.propertyConfig.categories[`${o}_editorType`]={description:"",title:"编辑器类型",propertyData:e.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:Mt.getEditorTypesByMDataType(l.designViewModelField.type.name)}}},setPropertyRelates(u,f){if(u)switch(u&&u.propertyID){case"type":{l.changeFieldEditorType(e,u.propertyValue);break}}}};const c=["id","type","class","style","binding","label","responseLayout"],{categories:s}=a.getPropertyConfig(e);Object.keys(s).map(u=>{const f=s[u],d={};if(Object.keys(f.properties).map(p=>{c.findIndex(y=>y===p)===-1&&f.properties[p]!==!1&&(d[p]=f.properties[p])}),Object.keys(d).length!==0){const p=f==null?void 0:f.title,y="gridFieldEditor",C="编辑器",I=f==null?void 0:f.description,M=(f==null?void 0:f.$converter)||"";l.propertyConfig.categories[o+"_"+u]={title:p,tabId:y,tabName:C,description:I,$converter:M,propertyData:e,properties:d,setPropertyRelates:f==null?void 0:f.setPropertyRelates}}})}changeFieldEditorType(e,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 r=this.formSchemaUtils.getComponentByViewModelId(this.viewModelId),a=this.formSchemaUtils.selectNode(r,f=>f.type===oe["data-grid"].type||f.type===oe["tree-grid"].type);if(!a)return;const l=i.fields.find(f=>f.id===this.designViewModelField.id),c=this.controlCreatorUtils.setGridFieldProperty(o,l,null,!0),s=Object.prototype.hasOwnProperty.call(a,"columns")?a.columns:a.fields,u=s.findIndex(f=>f.id===e.id);u>-1&&s[u].editor&&(s[u].editor=Object.assign(c.editor,{required:s[u].editor.required})),Object.assign(s[u],{dataType:c.dataType},c.formatter?{formatter:c.formatter}:{}),!c.formatter&&s[u].formatter&&delete s[u].formatter}}function fs(t,e){const o=t.schema,i=n.ref(!0),r=n.ref(!0);function a(f){return!1}function l(){return!1}function c(){return!1}function s(){return!0}function u(f){var p;return new us(f,e).getPropertyConfig(o,(p=t==null?void 0:t.parent)==null?void 0:p.schema)}return{canAccepts:a,checkCanDeleteComponent:l,checkCanMoveComponent:c,hideNestedPaddingInDesginerView:s,triggerBelongedComponentToMoveWhenMoved:i,triggerBelongedComponentToDeleteWhenDeleted:r,getPropsConfig:u}}const Fo=n.defineComponent({name:"FDataGridColumnDesign",props:Qt,emits:[],setup(t,e){const o=n.ref(),i=n.inject("designer-host-service"),r=n.inject("design-item-context"),a=fs(r,i),l=qt(o,r,a);n.onMounted(()=>{o.value.componentInstance=l}),e.expose(l.value);function c(s){var u;(u=r==null?void 0:r.setupContext)==null||u.emit("selectionChange",l.value.schema,r.schema,t.componentId,l.value)}return()=>n.createVNode("span",{class:"fv-column-title",ref:o,onClick:s=>c()},[t.title])}});pt.install=t=>{t.component(pt.name,pt),t.component(Kt.name,Kt)},pt.register=(t,e,o,i)=>{t["data-grid"]=pt,e["data-grid"]=At,t["grid-field-editor"]=Rl,e["grid-field-editor"]=vl,i["data-grid"]={bindingResolver:hn,selectionItemResolver:gn,updateColumnsResolver:yn,callbackResolver:vn}},pt.registerDesigner=(t,e,o)=>{t["data-grid"]=Kt,e["data-grid"]=At,e["data-grid-column"]=Al,t["data-grid-column"]=Fo,e["tree-grid-column"]=Ll,t["tree-grid-column"]=Fo},z.FDataGrid=pt,z.bindingResolver=hn,z.callbackResolver=vn,z.columnOptions=tr,z.dataGridDesignProps=mn,z.dataGridProps=It,z.default=pt,z.editOptions=or,z.filterOptions=Ki,z.groupOptions=Xi,z.headerOptions=Qi,z.loadingOptions=ir,z.paginationOptions=Ui,z.propsResolver=At,z.rowNumberOptions=Ji,z.rowOptions=Zi,z.selectionItemResolver=gn,z.selectionOptions=nr,z.sortOptions=Yi,z.summaryOptions=er,z.updateColumnsResolver=yn,Object.defineProperties(z,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
|
1
|
+
(function(z,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("../search-box/index.umd.js"),require("../tags/index.umd.js"),require("../dynamic-form/index.umd.js"),require("../designer-canvas/index.umd.js"),require("../data-view/index.umd.js"),require("../common/index.umd.js"),require("../accordion/index.umd.js"),require("../avatar/index.umd.js"),require("../button-edit/index.umd.js"),require("../button-group/index.umd.js"),require("../calendar/index.umd.js"),require("../capsule/index.umd.js"),require("../color-picker/index.umd.js"),require("../combo-list/index.umd.js"),require("../content-container/index.umd.js"),require("../data-grid/index.umd.js"),require("../date-picker/index.umd.js"),require("../dropdown/index.umd.js"),require("../external-container/index.umd.js"),require("../events-editor/index.umd.js"),require("../image-cropper/index.umd.js"),require("../input-group/index.umd.js"),require("../layout/index.umd.js"),require("../list-nav/index.umd.js"),require("../list-view/index.umd.js"),require("../lookup/index.umd.js"),require("../nav/index.umd.js"),require("../number-spinner/index.umd.js"),require("../number-range/index.umd.js"),require("../page-header/index.umd.js"),require("../page-footer/index.umd.js"),require("../progress/index.umd.js"),require("../query-solution/index.umd.js"),require("../radio-group/index.umd.js"),require("../rate/index.umd.js"),require("../response-toolbar/index.umd.js"),require("../response-layout/index.umd.js"),require("../response-layout-editor/index.umd.js"),require("../section/index.umd.js"),require("../smoke-detector/index.umd.js"),require("../splitter/index.umd.js"),require("../step/index.umd.js"),require("../switch/index.umd.js"),require("../text/index.umd.js"),require("../time-picker/index.umd.js"),require("../tree-view/index.umd.js"),require("../uploader/index.umd.js"),require("../verify-detail/index.umd.js"),require("../component/index.umd.js"),require("../video/index.umd.js"),require("../textarea/index.umd.js"),require("../tree-grid/index.umd.js"),require("../binding-selector/index.umd.js"),require("../notify/index.umd.js"),require("../combo-tree/index.umd.js"),require("../field-selector/index.umd.js"),require("../mapping-editor/index.umd.js"),require("../schema-selector/index.umd.js"),require("../event-parameter/index.umd.js"),require("../dynamic-resolver/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","../search-box/index.umd.js","../tags/index.umd.js","../dynamic-form/index.umd.js","../designer-canvas/index.umd.js","../data-view/index.umd.js","../common/index.umd.js","../accordion/index.umd.js","../avatar/index.umd.js","../button-edit/index.umd.js","../button-group/index.umd.js","../calendar/index.umd.js","../capsule/index.umd.js","../color-picker/index.umd.js","../combo-list/index.umd.js","../content-container/index.umd.js","../data-grid/index.umd.js","../date-picker/index.umd.js","../dropdown/index.umd.js","../external-container/index.umd.js","../events-editor/index.umd.js","../image-cropper/index.umd.js","../input-group/index.umd.js","../layout/index.umd.js","../list-nav/index.umd.js","../list-view/index.umd.js","../lookup/index.umd.js","../nav/index.umd.js","../number-spinner/index.umd.js","../number-range/index.umd.js","../page-header/index.umd.js","../page-footer/index.umd.js","../progress/index.umd.js","../query-solution/index.umd.js","../radio-group/index.umd.js","../rate/index.umd.js","../response-toolbar/index.umd.js","../response-layout/index.umd.js","../response-layout-editor/index.umd.js","../section/index.umd.js","../smoke-detector/index.umd.js","../splitter/index.umd.js","../step/index.umd.js","../switch/index.umd.js","../text/index.umd.js","../time-picker/index.umd.js","../tree-view/index.umd.js","../uploader/index.umd.js","../verify-detail/index.umd.js","../component/index.umd.js","../video/index.umd.js","../textarea/index.umd.js","../tree-grid/index.umd.js","../binding-selector/index.umd.js","../notify/index.umd.js","../combo-tree/index.umd.js","../field-selector/index.umd.js","../mapping-editor/index.umd.js","../schema-selector/index.umd.js","../event-parameter/index.umd.js","../dynamic-resolver/index.umd.js","../popover/index.umd.js"],n):(z=typeof globalThis<"u"?globalThis:z||self,n(z["data-grid"]={},z.Vue,z.LodashES,z.BigNumber,z.VueUseCore,null,z.FTransfer$1,z.FTabs,z.FOrder,null,z.FCheckbox,z.FFilterBar,z.FPagination,z.FSearchBox,z.FTags,z.FDynamicForm,z.designerCanvas,z.dataView,z.common,z.FAccordion,z.FAvatar,z.FButtonEdit$1,z.FButtonGroup,z.FCalendar,z.FCapsule,z.FColorPicker,z.FComboList,z.FContentContainer,z.FDataGrid$1,z.FDatePicker,z.FDropdown,null,z.FEventsEditor,z.FImageCropper,z.FInputGroup,z.FLayout,z.FListNav,z.FListView$1,z.FLookup,z.FNav,z.FNumberSpinner,z.FNumberRange,z.FPageHeader,z.FPageFooter,z.FProgress,z.FQuerySolution,z.FRadioGroup,z.FRate,z.FResponseToolbar,z.FResponseLayout,z.FResponseLayoutEditorSetting,z.FSection,z.FSmokeDetector,z.FSplitter,z.FStep,z.FSwitch,z.FText,z.FTimePicker,z.FTreeview,z.FUploader,z.FVerifyDetail,z.FComponent,z.FVideo,z.FTextArea,z.FTreeGrid$1,z.FBindingSelector,null,z.FComboTree,z.FFieldSelector,z.FMappingEditor,z.FSchemaSelector,z.FEventParameter,z.dynamicResolver,z.FPopover))})(this,function(z,n,Re,ms,Tt,hs,_o,Mo,To,gs,wt,ko,Vo,Io,en,Pt,tn,X,xe,No,Bo,Oo,Eo,$o,jo,Po,Rt,Ro,Do,Ho,Ao,ys,Lo,Go,Wo,qo,zo,Uo,Yo,Xo,Ko,Qo,Jo,Zo,ei,ti,ni,oi,ii,ri,ai,li,si,ci,di,ui,fi,pi,nn,mi,hi,gi,yi,vi,bi,Ci,vs,wi,Si,xi,Fi,_i,on,Mi){"use strict";var fs=Object.defineProperty;var ps=(z,n,Re)=>n in z?fs(z,n,{enumerable:!0,configurable:!0,writable:!0,value:Re}):z[n]=Re;var q=(z,n,Re)=>ps(z,typeof n!="symbol"?n+"":n,Re);const rn={},an={};function Dt(e){const{properties:t,title:o,ignore:i}=e,r=i&&Array.isArray(i),a=Object.keys(t).reduce((l,c)=>((!r||!i.find(s=>s===c))&&(l[c]=t[c].type==="object"&&t[c].properties?Dt(t[c]):Re.cloneDeep(t[c].default)),l),{});if(o&&(!r||!i.find(l=>l==="id"))){const l=o.toLowerCase().replace(/-/g,"_");a.id=`${l}_${Math.random().toString().slice(2,6)}`}return a}function Ti(e){const{properties:t,title:o,required:i}=e;if(i&&Array.isArray(i)){const r=i.reduce((a,l)=>(a[l]=t[l].type==="object"&&t[l].properties?Dt(t[l]):Re.cloneDeep(t[l].default),a),{});if(o&&i.find(a=>a==="id")){const a=o.toLowerCase().replace(/-/g,"_");r.id=`${a}_${Math.random().toString().slice(2,6)}`}return r}return{type:o}}function ln(e,t={},o){const i=rn[e];if(i){let r=Ti(i);const a=an[e];return r=a?a({getSchemaByType:ln},r,t,o):r,r}return null}function ki(e,t){const o=Dt(t);return Object.keys(o).reduce((i,r)=>(Object.prototype.hasOwnProperty.call(e,r)&&(i[r]&&Re.isPlainObject(i[r])&&Re.isPlainObject(e[r]||!e[r])?Object.assign(i[r],e[r]||{}):i[r]=e[r]),i),o),o}function Vi(e,t){return Object.keys(e).filter(i=>e[i]!=null).reduce((i,r)=>{if(t.has(r)){const a=t.get(r);if(typeof a=="string")i[a]=e[r];else{const l=a(r,e[r],e);Object.assign(i,l)}}else i[r]=e[r];return i},{})}function Ii(e,t,o=new Map){const i=ki(e,t);return Vi(i,o)}function Ni(e={}){function t(u,f,d,p){if(typeof d=="number")return p[u].length===d;if(typeof d=="object"){const y=Object.keys(d)[0],C=d[y];if(y==="not")return Number(p[u].length)!==Number(C);if(y==="moreThan")return Number(p[u].length)>=Number(C);if(y==="lessThan")return Number(p[u].length)<=Number(C)}return!1}function o(u,f,d,p){return p[u]&&p[u].propertyValue&&String(p[u].propertyValue.value)===String(d)}const i=new Map([["length",t],["getProperty",o]]);Object.keys(e).reduce((u,f)=>(u.set(f,e[f]),u),i);function r(u,f){const d=u;return typeof f=="number"?[{target:d,operator:"length",param:null,value:Number(f)}]:typeof f=="boolean"?[{target:d,operator:"getProperty",param:u,value:!!f}]:typeof f=="object"?Object.keys(f).map(p=>{if(p==="length")return{target:d,operator:"length",param:null,value:f[p]};const y=p,C=f[p];return{target:d,operator:"getProperty",param:y,value:C}}):[]}function a(u){return Object.keys(u).reduce((d,p)=>{const y=r(p,u[p]);return d.push(...y),d},[])}function l(u,f){if(i.has(u.operator)){const d=i.get(u.operator);return d&&d(u.target,u.param,u.value,f)||!1}return!1}function c(u,f){return a(u).reduce((y,C)=>y&&l(C,f),!0)}function s(u,f){const d=Object.keys(u),p=d.includes("allOf"),y=d.includes("anyOf"),C=p||y,g=(C?u[C?p?"allOf":"anyOf":"allOf"]:[u]).map(S=>c(S,f));return p?!g.includes(!1):g.includes(!0)}return{parseValueSchema:s}}const oe={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"}},Bi={},Oi={};Ni();function Ge(e,t,o=new Map,i=(l,c,s,u)=>c,r={},a=l=>l){return rn[t.title]=t,an[t.title]=i,Bi[t.title]=r,Oi[t.title]=a,(l={})=>{const c=Ii(l,t,o),s=Object.keys(e).reduce((u,f)=>(u[f]=e[f].default,u),{});return Object.assign(s,c)}}function mt(e,t){return{customClass:t.class,customStyle:t.style}}function Ei(){function e(t,o){const{id:i}=t||{},{dataSource:r}=t||{};return r===void 0?{}:{data:o.getValue(i),"onUpdate:data":(...a)=>{}}}return{resolve:e}}function $i(){function e(t,o){const{dataSource:i}=t||{};return i===void 0?{}:{}}return{resolve:e}}function ji(){function e(t,o){return t.selectItemById(o)}return{selectItemById:e}}function Pi(){function e(t,o){return t.selectItemById(o)}return{selectItemById:e}}function sn(){function e(t,o){const{columns:i}=o;return t.updateColumns(i)}return{updateColumns:e}}const cn=new Map([["appearance",mt],["column","columnOption"]]),dn=new Map([]);var Ht=(e=>(e.SimpleField="SimpleField",e.ComplexField="ComplexField",e))(Ht||{}),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 un(){function e(){const o=i=>{const r=Math.random()*16|0;return(i==="x"?r:r&3|8).toString(16)};return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,o)}function t(o,i){const r="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".split(""),a=[];let l;if(i=i||r.length,o)for(l=0;l<o;l++)a[l]=r[0|Math.random()*i];else{let c;for(a[8]=a[13]=a[18]=a[23]="-",a[14]="4",l=0;l<36;l++)a[l]||(c=0|Math.random()*16,a[l]=r[l===19?c&3|8:c])}return a.join("")}return{guid:e,uuid:t}}const Ri=["moz","ms","webkit"];function Di(){let e=0;return t=>{const o=new Date().getTime(),i=Math.max(0,16-(o-e)),r=setTimeout(()=>{t(o+i)},i);return e=o+i,r}}function Hi(){if(typeof window>"u")return()=>0;if(window.requestAnimationFrame)return window.requestAnimationFrame.bind(window);const e=Ri.filter(t=>`${t}RequestAnimationFrame`in window)[0];return e?window[`${e}RequestAnimationFrame`]:Di()}Hi();const Ai="root-viewmodel";class Li{constructor(t,o){q(this,"formSchemaUtils");q(this,"controlCreatorUtils");q(this,"designViewModelUtils");q(this,"useFormCommand");q(this,"formStateMachineUtils");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,this.formStateMachineUtils=this.designerHostService.formStateMachineUtils}createComponent(t){const o=this.createComponentRefNode(t),i=this.createComponentNode(t),r=this.createViewModeNode(t),a=this.formSchemaUtils.getFormSchema();return a.module.viewmodels.push(r),a.module.components.push(i),this.designViewModelUtils.assembleDesignViewModel(),this.wrapContainerSectionForComponent(o,t,r)}wrapContainerSectionForComponent(t,o,i){var c,s,u,f,d,p,y,C;const r=(s=(c=o==null?void 0:o.parentComponentInstance)==null?void 0:c.schema)==null?void 0:s.type,a=(f=(u=this.formSchemaUtils.getFormSchema())==null?void 0:u.module)==null?void 0:f.templateId;if(r===oe["splitter-pane"].type&&["double-list-template","tree-list-template"].includes(a))return t;const l=[oe["content-container"].type,oe["response-layout-item"].type,oe["splitter-pane"].type];if(r&&l.includes(r)){const I=this.resolver.getSchemaByType("section",{parentComponentInstance:o.parentComponentInstance,mainTitle:o.componentName},this.designerHostService);if(I&&I.contents&&I.contents.length){const M=I.contents[0];return M.contents=[t],this.appendAddDeleteBtnToParentContainer(M,o,i),I}}return this.appendAddDeleteBtnToParentContainer((d=o==null?void 0:o.parentComponentInstance)==null?void 0:d.schema,o,i),r===oe["tab-page"].type&&(p=o.parentComponentInstance)!=null&&p.parent&&(y=o.parentComponentInstance)!=null&&y.parent.updateToolbarItems&&((C=o.parentComponentInstance)==null||C.parent.updateToolbarItems()),t}appendAddDeleteBtnToParentContainer(t,o,i){const r=t.type,a=i.id.replace(/-/g,"").replace(/_/g,"").replace("component","").replace("viewmodel","");if(o.bindTo==="/"||o.componentType!=="data-grid"&&o.componentType!=="form")return;const l=this.formStateMachineUtils&&this.formStateMachineUtils.getRenderStates(),c=oe["tab-page"].type===r?"tab-toolbar-item":"section-toolbar-item",s=[{id:`button-add-${o.componentId}`,type:c,text:"新增",disabled:l.find(u=>u.id==="canAddDetail")?"!viewModel.stateMachine['canAddDetail']":!1,appearance:{class:"btn btn-secondary f-btn-ml"},onClick:`root-viewModel.${i.id}.${a}AddItem1`},{id:`button-remove-${o.componentId}`,type:c,text:"删除",disabled:l.find(u=>u.id==="canRemoveDetail")?"!viewModel.stateMachine['canRemoveDetail']":!1,appearance:{class:"btn btn-secondary f-btn-ml"},onClick:`root-viewModel.${i.id}.${a}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=un().guid(),r=un().guid(),a=this.resolveCommandController();t.commands.push({id:i,code:`${o}AddItem1`,name:"增加一条子表数据",params:[],handlerName:"AddItem",cmpId:a,shortcut:{},extensions:[]},{id:r,code:`${o}RemoveItem1`,name:"删除一条子表数据",params:[{name:"id",shownName:"待删除子表数据的标识",value:`{DATA~${t.bindTo}/id}`}],handlerName:"RemoveItem",cmpId:a,shortcut:{},extensions:[]}),this.formSchemaUtils.getFormSchema().module.webcmds.find(s=>s.id===a).refedHandlers.push({host:i,handler:"AddItem"},{host:r,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(a=>o.includes(a.id));if(i)return i.id;const r="45be24f9-c1f7-44f7-b447-fe2ada458a61";return t.push({id:r,path:"/projects/packages/Inspur.GS.Gsp.Web.WebCmp/webcmd",name:"AdvancedListCardController.webcmd",refedHandlers:[]}),this.useFormCommand&&this.useFormCommand.checkCommands(),r}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:Ai,fields:this.assembleViewModelFields(t),commands:[],states:[],enableValidation:!0}}getDataGridComponentClass(){const{templateId:t}=this.formSchemaUtils.getFormSchema().module;return["double-list-in-tab-template","double-list-template","tree-list-template"].includes(t)?"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 u=this.resolver.getSchemaByType("section");Object.assign(u,{id:t.componentId+"-section",appearance:{class:"f-section-grid f-section-in-main px-0 pt-0"},fill:!0,showHeader:!1}),i=u}else if(o==="double-list-template"||o==="tree-list-template"){const u=this.resolver.getSchemaByType("section");Object.assign(u,{id:t.componentId+"-section",appearance:{class:"f-section-grid f-section-in-main"},fill:!0,showHeader:!1}),i=u}else{const u=this.resolver.getSchemaByType("content-container");Object.assign(u,{id:t.componentId+"-container",appearance:{class:"f-grid-is-sub f-utils-flex-column"}}),i=u}const r=this.resolver.getSchemaByType("data-grid"),a=[],l=this.formStateMachineUtils&&this.formStateMachineUtils.getRenderStates(),c=t.bindTo==="/";Object.assign(r,{id:t.componentId+"-dataGrid",appearance:{class:"f-component-grid"},columns:a,fieldEditable:t.editable,dataSource:t.dataSource||"",editable:!c&&l.find(u=>u.id==="editable")?"viewModel.stateMachine['editable']":!1,pagination:{enable:!t.editable}}),i.contents=[r];const{selectedFields:s}=t;return s==null||s.forEach(u=>{if(u.$type===Ht.ComplexField)return;const f=Re.cloneDeep(u),d=this.controlCreatorUtils.setGridFieldProperty("data-grid-column",f,"",t.editable);d&&a.push(d)}),[i]}assembleViewModelFields(t){const o=[],{selectedFields:i}=t;return i==null||i.forEach(r=>{let a="blur";const l=r.type.name;(l===St.Enum||l===St.Boolean)&&(a="change"),o.push({type:"Form",id:r.id,fieldName:r.bindingField,groupId:null,groupName:null,updateOn:a,fieldSchema:{}})}),o}}function fn(e,t,o,i){var a,l,c,s,u,f,d;const r=o.parentComponentInstance;if(r&&i){const p=Math.random().toString(36).slice(2,6),y={componentId:`data-grid-${p}`,componentName:((a=o.bindingSourceContext)==null?void 0:a.entityTitle)||((c=(l=o.bindingSourceContext)==null?void 0:l.bindingEntity)==null?void 0:c.name)||`表格-${p}`,componentType:"data-grid",parentContainerId:r.schema.id,parentComponentInstance:r,editable:!0,bindTo:((s=o.bindingSourceContext)==null?void 0:s.bindTo)||"",dataSource:(f=(u=o.bindingSourceContext)==null?void 0:u.bindingEntity)==null?void 0:f.label,selectedFields:(d=o.bindingSourceContext)==null?void 0:d.bindingEntityFields};return new Li(e,i).createComponent(y)}else return t}function pn(e,t,o){return t}const Gi={$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},disabled:{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},showSelectAll:{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","columns"]};function Wi(){function e(t,o){const i={};return i.beforeEditCell=r=>o.call("beforeEditCell",[r]),i}return{resolve:e}}const qi={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},disabled:{type:Boolean,default:!1}},zi={enable:{type:Boolean,default:!1},fields:{type:Array,default:[]},mode:{type:String,default:"client"},multiSort:{type:Boolean,default:!1}},Ui={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"}},Yi={enable:{type:Boolean,default:!1},filterStyle:{type:String,default:"filter-column"},mode:{type:String,default:"server"},showSummary:{type:Boolean,default:!0}},Xi={wrapHeadings:{type:Boolean,default:!1}},Ki={enable:{type:Boolean,default:!1},heading:{type:String,default:"序号"},width:{type:Number,default:36},showEllipsis:{type:Boolean,default:!0}},Qi={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}},Ji={enable:{type:Boolean,default:!1},customSummaryStyle:{type:Function,default:()=>{}},groupFields:{type:Array,default:[]},mode:{type:String,default:"client"},position:{type:String,default:"bottom"}},Zi={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}},er={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}},tr={selectOnEditing:{type:Boolean,default:!1},editMode:{type:String,default:"cell"}},nr={show:{type:Boolean,default:!1},message:{type:String,default:"加载中..."}},kt={appendOnEnterAtLastCell:{type:Boolean,default:!1},beforeEditCell:{type:Function,default:e=>!0},beforeEndEditCell:{type:Function,default:()=>!0},changePolicy:{type:String,default:"push"},columns:{type:Array,default:[]},columnOption:{type:Object},commandOption:{type:Object,default:{enable:!1,commands:[]}},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"}},enableCommands:{type:Boolean,default:!1},filter:{type:Object},fit:{type:Boolean,default:!1},focusOnEditingCell:{type:Boolean,default:!0},group:{type:Object},header:{type:Object},height:{type:Number,default:-1},id:{type:String,default:""},idField:{type:String,default:"id",require:!0},loading:{type:Boolean,default:!1},mergeCell:{type:Boolean,default:!1},minHeight:{type:Number,default:300},minWidth:{type:Number,default:400},newDataItem:{type:Function,default:()=>{}},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:[]},selectOnEditingCell:{type:Boolean,default:!1},showBorder:{type:Boolean,default:!1},showFooter:{type:Boolean,default:!1},showHeader:{type:Boolean,default:!0},showHorizontalLines:{type:Boolean,default:!0},showScrollBar:{type:String,default:"auto"},showSetting:{type:Boolean,default:!1},showStripe:{type:Boolean,default:!0},showVerticallLines:{type:Boolean,default:!1},sort:{type:Object},summary:{type:Object,default:{enable:!1,groupFields:["numericField1","numericField2"]}},virtualized:{type:Boolean,default:!0},width:{type:Number,default:-1}},mn=Object.assign({},kt,{disabled:{},editable:{},componentId:{type:String,default:""}}),At=Ge(kt,Gi,cn,fn),hn=Ei(),gn=ji(),yn=sn(),vn=Wi();var De=(e=>(e[e.readonly=0]="readonly",e[e.editable=1]="editable",e[e.editing=2]="editing",e))(De||{}),lt=(e=>(e[e.initial=0]="initial",e[e.editing=1]="editing",e))(lt||{}),ht=(e=>(e[e.data=0]="data",e[e.group=1]="group",e[e.summary=2]="summary",e))(ht||{}),We=(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))(We||{}),Lt=(e=>(e.NONE="none",e.NUMBER="number",e.DATE="date",e.TEXT="boolean",e.IMAGE="boolean2",e.ENUM="enum",e.CUSTOM="custom",e))(Lt||{});function or(e,t){var y;const o=String(Date.now()),i=((y=e.rowOption)==null?void 0:y.height)||28,r=n.ref(t.value.primaryColumnsWidth);function a(C){const I={};return C.reduce((M,g,v)=>{const S=v<C.length-1?C[v+1]:null;return v===0&&(M[g.field]={left:0}),g.actualWidth!==void 0&&(M[g.field].width=g.actualWidth),S&&(M[S.field]={left:M[g.field].left+(g.actualWidth||0)}),M},I),I}function l(C,I,M){const g=i*(M+1),S=I[C.field].left-g+(I[C.field].width||0),h=C.parent.height?`${C.parent.height}px`:"";return{left:`${g}px`,width:`${S}px`,height:`${h}`}}function c(C,I,M){return{right:"0px",height:`${C.parent.height?`${C.parent.height}px`:""}`}}function s(C,I){const M=C.parent.height?`${C.parent.height}px`:"";return{left:`${I[C.field].left}px`,height:`${M}`,width:isNaN(Number(I[C.field].width))?"100%":`${I[C.field].width}px`}}function u(C,I,M){const v=(I.spanned||[]).reduce((h,F)=>h+(F.parent.height||0),0)+(C.height||0);return{top:`${C.top}px`,left:`${M[I.field].left}px`,width:`${M[I.field].width}px`,height:`${v}px`,padding:`calc(${v/2}px - 1rem) 0`}}function f(C,I){return`${o}_${C.type}_r_${C.index}_c_${I}_${C.refreshKey||""}`}function d(C){return`${o}_${C.type}_r_${C.index}_${C.refreshKey||""}`}function p(C){const I=C.height?`${C.height}px`:"";return{top:`${C.top}px`,width:isNaN(r.value)?"100%":`${r.value}px`,height:`${I}`}}return n.watch(t,()=>{r.value=t.value.primaryColumnsWidth}),{calculateCellPositionInRow:a,cellKey:f,cellPosition:s,groupCellPosition:l,rowKey:d,rowPosition:p,rowSpanCellPosition:u,summaryCellPosition:c}}function ir(e,t,o){const{hasChildrenField:i}=o,r=n.ref("#9399a0"),a=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,y)=>Number(p)-Number(y))}function c(f){const d=new Array(t.value.length).fill(0);if(e.showLines){const p=l();t.value.forEach((y,C)=>{const I=p.includes(C),M=y.raw[i.value];d[C]=`repeating-linear-gradient(90deg, ${r.value} 0 1px, transparent 0px 2px) ${M?"-10px":"0px"} ${a.value/2}px/20px 1px no-repeat,repeating-linear-gradient(${r.value} 0 1px, transparent 0px 2px) 0px 0px/1px ${I?"50%":"100%"} no-repeat`}),d[0]=""}return d[f]}function s(f,d,p){return p[f].parents.set(f,!0).forEach(C=>{p[C].childsLength=p[C].childWithLines.filter(I=>d[I].visible).length}),d}function u(f){const y=f.raw.__fv_parent_index__===void 0||f.raw.__fv_parent_index__===-1?0:8,C=0,I=f.raw[i.value],M=f.visible?{left:`${f.layer*10+f.layer*y+C}px`,background:c(f.index),display:"flex",width:"100%",position:"relative",paddingLeft:"0.75rem"}:{display:"none"};return I||(M.paddingLeft="2rem"),M}return{hierarchyCellContentStyle:u,handleCollapsedPaddingBottom:s}}function rr(e,t,o){const i=n.ref(e.iconField);function r(a,l){if(i.value)return a.raw[e.iconField];let c="";return a.raw[o.value]!==!0?c=t.value.leafnodes:c=a.collapse?t.value.fold:t.value.unfold,c}return{treeNodeIconsClass:r}}function ar(e,t,o,i,r,a,l,c){const{dataView:s,fold:u,hasRealChildren:f,unFold:d,reOrderVisibleIndex:p}=i,{collapseField:y,hasChildrenField:C}=r,{reCalculateVisualDataRows:I,updateVirticalScroll:M}=a;function g(h,F){var b,k;const N=F[h],m=N.__fv_parents__?(b=N.__fv_parents__)==null?void 0:b.size:0;let _=h+1;for(;_<F.length;){const w=F[_];if((w.__fv_parents__?(k=w.__fv_parents__)==null?void 0:k.size:0)>m)_++;else break}return _-1}function v(h,F){const N=s.value[h];N[y.value]=!N[y.value],N[C.value]=f(N);const m=N[y.value];let _=!1,b=h;for(;b<s.value.length;){const k=s.value[b];if((typeof k.__fv_parent_index__=="number"?Number(k.__fv_parent_index__):-1)>F)k.__fv_visible__=!m,k[y.value]&&(b=g(b,s.value)),_=!0;else if(_){b++;break}b++}p()}function S(h){if(h.raw[C.value]){const N=typeof h.raw.__fv_parent_index__=="number"?Number(h.raw.__fv_parent_index__):-1,m=Number(h.raw.__fv_index__);v(m,N),I(),M()}t.emit("expandNode",{row:h})}return{toggleTreeNode:S}}function lr(e,t,o,i,r,a,l,c,s,u,f,d,p){const{onClickCell:y}=a,{gridRowClass:C,onClickRow:I,onMouseoverRow:M,onMouseoutRow:g}=c,{enableMultiSelect:v,select:S,unSelect:h,selectItem:F}=s;n.ref(e.cellHeight);const N=n.ref(e.treeNodeIconsData||{}),{hasChildrenField:m,shouldShowCheckBox:_,shouldShowIcon:b}=l,{toggleTreeNode:k}=ar(e,t,i,r,l,f),{toggleSelectHierarchyItem:w}=u,{cellKey:x,cellPosition:T,rowKey:V,rowPosition:B}=or(e,o),{hierarchyCellContentStyle:E}=ir(e,i,l),{treeNodeIconsClass:O}=rr(e,N,m);function $(A,U){const ye=A.raw[m.value];return{"fv-tree-node-toggle":ye&&A.collapse,"fv-tree-node-toggle-minus":ye&&!A.collapse}}function L(A,U){A.stopPropagation(),k(U)}function H(A,U){return n.createVNode("div",{class:$(A),onClick:ye=>L(ye,A)},null)}function Y(A,U){return b.value&&n.createVNode("div",{id:"treeNodeIcons",class:O(A,U)},null)}function J(A){v.value?(A.checked?S(A):h(A),w(A)):F(A)}function ne(A,U){return _.value&&n.createVNode(wt.FCheckbox,{id:"checkbox_for_"+x(A,U.index),indeterminate:A.indeterminate,disabled:A.disabled,checked:A.checked,"onUpdate:checked":ye=>A.checked=ye,onChange:()=>J(A)},null)}function le(A,U){return n.createVNode("span",{title:U.data},[U.mode===De.editing?U.getEditor(U):U.formatter?U.formatter(U,A):U.data!=null?U.data.toString():U.data])}function R(A,U,ye){return n.createVNode("div",{ref:U.setRef,key:x(A,U.index),class:"fv-grid-hierarchy-cell",style:T(U,ye)},[n.createVNode("div",{style:E(A)},[H(A),Y(A,U),ne(A,U),le(A,U)])])}function Z(A,U,ye){return n.createVNode("div",{ref:U.setRef,key:x(A,U.index),class:"fv-grid-cell",style:T(U,ye),onClick:fe=>y(fe,U,A,U.column)},[t.slots.cellTemplate?t.slots.cellTemplate({cell:U,row:A}):U.mode===De.editing?U.getEditor(U):U.formatter?U.formatter(U,A):U.data!=null?U.data.toString():U.data])}function ue(A,U){return U==="left"&&o.value.leftColumns.length>0&&o.value.leftColumns[0].field===A.field||U==="primary"&&o.value.primaryColumns.length>0&&o.value.primaryColumns[0].field===A.field}function ee(A,U,ye="primary"){return n.createVNode("div",{ref:A.setRef,key:V(A),class:C(A),style:B(A),onMouseover:fe=>M(fe,A),onMouseout:fe=>g(fe,A),onClick:fe=>I(fe,A)},[Object.values(A.data).filter(fe=>U[fe.field]&&fe.rowSpan===1).map(fe=>ue(fe,ye)?R(A,fe,U):Z(A,fe,U))])}return{renderDataRow:ee}}function bn(e,t,o){const{horizontalScrollThumbStyle:i,onMouseDownScrollThumb:r,shouldShowHorizontalScrollbar:a}=o;function l(){return a.value&&n.createVNode("div",{class:"fv-grid-horizontal-scroll"},[n.createVNode("div",{class:"fv-grid-horizontal-scroll-thumb",style:i.value,onMousedown:c=>r(c,t,"horizontal")},null)])}return{renderHorizontalScrollbar:l}}function sr(){function e(i,r){switch(i.command){case"edit":case"remove":return r.status===lt.initial;case"accept":case"cancel":return r.status===lt.editing;default:return!i.hidden}}function t(i,r,a){switch(i.onClick(r,a.dataIndex,a),i.command){case"edit":a.status,lt.editing;break;case"accept":case"cancel":a.status,lt.initial;break}}function o(i,r){return n.createVNode("div",null,[i.commands&&i.commands.map(a=>e(a,r)&&n.createVNode(n.resolveComponent("f-button"),{class:"ml-2",type:a.type,size:a.size||"small",onClick:l=>t(a,l,r)},{default:()=>[n.createTextVNode(" "),a.text,n.createTextVNode(" ")]}))])}return{renderCommandColumn:o}}function Cn(e){const t=n.ref(e.minHeight),o=n.ref(e.minWidth),i=n.ref(e.height),r=n.ref(e.width),a=n.computed(()=>i.value<=0?0:Math.max(i.value,t.value)),l=n.computed(()=>r.value<=0?0:Math.max(r.value,o.value));return n.watch([()=>e.height,()=>e.width,()=>e.minHeight,()=>e.minWidth],([s,u,f,d])=>{t.value=Number(f),o.value=Number(d),i.value=Number(s),r.value=Number(u)}),{containerStyleObject:n.computed(()=>({height:a.value>0?`${a.value}px`:e.fit?"100%":"",width:l.value>0?`${l.value}px`:e.fit?"100%":"",flex:"1 1 0"}))}}const cr="";function wn(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 r(){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 a=n.ref(e.summary),l=n.computed(()=>{const S=a.value;return(S==null?void 0:S.groupFields)||[]});function c(){i.value.rightColumns.forEach(F=>{F.showSetting=!1}),i.value.primaryColumns.forEach(F=>{F.showSetting=!1});const S=i.value.rightColumns.filter(F=>F.visible),h=i.value.primaryColumns.filter(F=>F.visible);S.length>0?S[S.length-1].showSetting=!0:h.length>0&&(h[h.length-1].showSetting=!0)}function s(S){r();const h=new Map;return l.value&&l.value.reduce((F,N)=>(F.set(N,!0),F),h),S.reduce((F,N)=>(N.visible=N.visible!==!1,N.filter=N.filter||cr,N.fixed==="left"?(i.value.leftColumns.push(N),i.value.leftColumnsMap.set(N.field,N),i.value.leftColumnsWidth+=N.actualWidth):N.fixed==="right"?(i.value.rightColumns.push(N),i.value.rightColumnsMap.set(N.field,N),i.value.rightColumnsWidth+=N.actualWidth):(i.value.primaryColumns.push(N),i.value.primaryColumnsMap.set(N.field,N),i.value.primaryColumnsWidth+=N.actualWidth),h.has(N.field)&&i.value.summaryColumns.push(N),F),i),c(),i}s(e.columns);const u=n.computed(()=>i.value.leftColumns.length>0),f=n.computed(()=>i.value.rightColumns.length>0);function d(S,h){return h.sortable&&h.sort&&h.sort!=="none"&&S.push(h),S}function p(S,h){return S.sortOrder=S.sortOrder||0,h.sortOrder=h.sortOrder||0,S.sortOrder===h.sortOrder?0:S.sortOrder<h.sortOrder?-1:1}function y(S,h){return S.sortOrder=S.sortOrder||0,h.sortOrder=h.sortOrder||0,S.sortOrder===h.sortOrder?0:S.sortOrder<h.sortOrder?1:-1}function C(S,h){return h.filterable&&S.push(h),S}function I(){const S=[];return i.value.leftColumns.reduce(C,S),i.value.primaryColumns.reduce(C,S),i.value.rightColumns.reduce(C,S),S}function M(){const S=[];i.value.leftColumns.reduce(d,S),i.value.primaryColumns.reduce(d,S),i.value.rightColumns.reduce(d,S);const h=Math.max(...S.map(F=>F.sortOrder||0));return S.sort(y).map(F=>{const N=F.sortOrder||h+1;return F.sortOrder=N,F}).sort(p).map((F,N)=>{const m=N+1;return F.sortOrder=m,F})}function g(S,h,F){const N=S.map(m=>{const _=F.getSorterByColumn(m),b=m.sort==="asc",k=m.sort==="desc",w=b?_.ascend:k?_.decend:void 0;return{field:m.field,compare:w}});h.setSorters(N)}function v(S,h){const F=M();g(F,S,h)}return{applyColumnSorter:v,collectionFilterableColumns:I,applySortableColumns:g,collectionSortableColumns:M,columnContext:i,hasLeftFixedColumn:u,hasRightFixedColumn:f,updateColumnRenderContext:s,updateColumnSettingIcon:c}}n.ref([{name:"七天",selectable:!0},{name:"一个月",selectable:!0},{name:"三个月",selectable:!0},{name:"半年",selectable:!0}]);function Sn(e){const o=n.ref(e.commandOption.enable||!1),i=n.ref(e.commandOption.commands||[]);function r(a){if(o.value&&!(a.value.findIndex(c=>c.dataType==="commands")>-1)){const c={field:"__commands__",title:"操作",width:120,fixed:"right",dataType:"commands",commands:i.value,visible:!0};a.value.push(c)}}return{applyCommands:r}}function xn(e,t){var u;const o=n.ref((u=e.columnOption)==null?void 0:u.groups);function i(f,d,p,y,C){const I={actualWidth:0,children:[],depth:1,field:f.field,layer:1,left:0,parent:p,resizable:!0,title:f.title||"",status:We.none,popoverRef:n.ref(),showPopover:!1,column:null,sortType:"none"},M=y||I;if(f.group){let g=1;f.group.reduce((v,S)=>{if(typeof S=="string"){const h=d.get(S);h&&(C.fieldToRootMap.set(S,M),v.actualWidth+=h.actualWidth,v.children.push(h))}else{const h=i(S,d,v,M,C);g=Math.max(g,h.depth),v.actualWidth+=h.actualWidth,v.children.push(h)}return v},I),I.depth+=g}return t.value.headerDepth=Math.max(t.value.headerDepth,I.depth),I}function r(f){const d={groupedCells:new Map,fieldToRootMap:new Map};return o.value&&o.value.reduce((p,y)=>{const C=i(y,f,null,null,d);return p.groupedCells.set(y.field,C),p},d),d}function a(f){if(!f||f.length===0)return 0;const d=f[0];return d.children&&d.children.length>0&&(d.left=a(d.children)),d.left}function l(f,d){const p=t.value.headerDepth;f.forEach(y=>{y.layer=d?d.layer+1:1;const C=y.children&&y.children.length===0;y.depth=C?p-(y.layer-1):1,y.left=C?y.left:a(y.children),y.children&&l(y.children,y)})}function c(f,d){const p=new Map;return f.forEach(y=>{const C=d.fieldToRootMap.get(y.field),I=C!=null;I&&!p.has(C.field)&&p.set(C.field,C),I||p.set(y.field,y)}),l(Array.from(p.values())),p}function s(f){let d=new Map,p=0;if(f.reduce((y,C)=>{let I=We.none;I=C.filterable?I|We.filterable:I,I=C.sort&&C.sort!=="none"?I|We.sorted|(C.sort==="asc"?We.ascending:We.descending):I;const M=C.field;return y.set(M,{actualWidth:C.actualWidth||0,children:[],depth:1,layer:1,left:p,field:M,parent:null,resizable:C.resizable===void 0?!0:C.resizable,title:C.title,status:I,popoverRef:n.ref(),showPopover:!1,column:C,filterValue:null,sortType:C.sort||"none",showSetting:C.showSetting}),p+=C.actualWidth||0,y},d),o.value){const y=r(d);d=c(d,y)}return d}return{getGridHeaderCells:s}}function dr(e,t){var g;const{idField:o}=t,i=n.ref(e.summary),r=n.ref(e.group),a=n.ref(((g=e.group)==null?void 0:g.groupFields)||[]),l=n.computed(()=>{var v;return(v=e.group)==null?void 0:v.enable}),c=n.computed(()=>{var v;return(v=e.group)==null?void 0:v.showGroupPanel}),s=n.computed(()=>{const v=i.value;return(v==null?void 0:v.groupFields)||[]}),u=n.computed(()=>{const v=r.value;return v&&v.showSummary}),f=new Map;let d=[];function p(v,S,h,F,N){const m=F[h];m&&(S.reduce((_,b,k)=>{var T;const w=b[m];let x=_.get(w);if(!x){const V=s.value.reduce((B,E)=>(B.set(E,0),B),new Map);x={field:m,title:((T=N.get(m))==null?void 0:T.title)||m,value:w,layer:h,details:[],groupSummaries:V},_.set(w,x)}return s.value&&s.value.forEach(V=>{if(x){const B=x.groupSummaries.get(V)||0;x.groupSummaries.set(V,B+b[V])}}),x.details.push(b),_},v),h<F.length-1&&v.forEach((_,b)=>{_.nestGroup=new Map,p(_.nestGroup,_.details,h+1,F,N),_.details=[]}))}function y(v,S){return e.group&&e.group.formatter?e.group.formatter(v.value,{...v,total:S}):`${v.title}:${v.value} (${S})`}function C(v){const S=[];return v.forEach(h=>{const F={__fv_data_grid_group_collapse__:!1,__fv_data_grid_group_field__:h.field,__fv_data_grid_group_layer__:h.layer,__fv_data_grid_group_row__:!0,__fv_data_grid_group_value__:h.value};let N=0;if(S.push(F),h.nestGroup){const m=C(h.nestGroup);S.push(...m),N+=m.length}if(h.details&&h.details.length&&(S.push(...h.details),N+=h.details.length),u.value){const m={__fv_data_grid_group_field__:h.field,__fv_data_grid_group_layer__:h.layer,__fv_data_grid_group_summary__:!0};m[o.value]=`summary_of_${h.field}_${h.value}`,m[h.field]=Array.from(h.groupSummaries.entries()).reduce((_,[b,k])=>`${_} ${b} total:${k} `,""),S.push(m)}h.groupSummaries&&h.groupSummaries.size&&h.groupSummaries.forEach((m,_)=>{F[_]=m}),F[o.value]=`group_of_${h.field}_${h.value}`,F[h.field]=y(h,N)}),S.forEach((h,F)=>{h.__fv_data_index__=F}),S}function I(v,S,h){return!v||v.length===0||!S.length?S:(v.join(","),f.clear(),d=[],S=S.filter(F=>!F.__fv_data_grid_group_row__),p(f,S,0,v,h),d=C(f),d)}function M(v){return{"f-icon":!0,"f-icon-arrow-chevron-down":!0,"fv-grid-group-row-icon-collapse":v.collapse}}return{collpaseGroupIconClass:M,generateGroupData:I,groupFields:a,shouldGroupingData:l,showGroupPanel:c}}function ur(e,t,o,i){const r=n.ref(!!e.hierarchy),{idField:a}=i,{collapseField:l,hasChildrenField:c,parentIdField:s}=o,u=new Map;function f(x,T){const V=new Map;return x.reduce((B,E)=>{const O=E[s.value]!==void 0?E[s.value]:"";if(O&&T.has(O)){const L=T.get(O);E.__fv_parent_index__=L.__fv_index__,L.__fv_hasChildren__=!0}const $=B.has(O)?B.get(O):[];return $.push(E),B.set(O,$),B},V),V}function d(x){const T=new Map;return x.reduce((V,B)=>{const E=B[a.value];return V.set(E,B),V},T),T}function p(x){x.forEach(T=>{const V=T[a.value];T.__fv_children_index__.map(E=>x[E]).forEach(E=>{E.__fv_parents__=new Map([...T.__fv_parents__.entries(),[V,!0]])})})}function y(x){x.forEach(T=>{const V=new Set(T.__fv_children_index__);T.__fv_children_index__=[...V].sort((B,E)=>B-E)})}function C(x,T){x.forEach(V=>{const B=V.__fv_parents__;Array.from(B.keys()).map(E=>T.get(E)).forEach(E=>{E.__fv_children_index__.push(V.__fv_index__)})}),y(x)}function I(x){x.forEach(T=>{T.__fv_child_with_lines__=[],T.__fv_child_length__=T.__fv_descendant_index__.length,T.__fv_descendant_index__.map(V=>x[V]).reduce((V,B)=>(V.__fv_child_length__+=B.__fv_children_index__.length,V.__fv_child_with_lines__.push(...B.__fv_children_index__,B.__fv_index__),V),T)})}function M(x,T){return{id:x,index:T,parentId:"",parentIndex:-1,parents:new Map,children:new Map,descendant:new Map}}function g(x,T){Array.from(T.keys()).forEach(V=>{T.get(V).reduce((E,O)=>{const $=O[a.value],L=x.get(O[a.value]),H=x.get(V);return H&&(H.children.set($,L),H.children.set($,L),L.parentId=V,L.parentIndex=H.index,L.parents.set(V,H)),E},x)})}function v(x){x.children.forEach(V=>{V.parents=new Map([...x.parents.entries(),[x.id,x]]),v(V)})}function S(x,T){x.filter(V=>V[s.value]===void 0||V[s.value]==="").forEach(V=>{const B=V[a.value],E=T.get(B);v(E)})}function h(x){Array.from(x.values()).forEach(T=>{Array.from(T.parents.values()).forEach(V=>{V.descendant.set(T.id,T)})})}function F(x){u.clear(),x.forEach((B,E)=>{const O=B[a.value];u.set(O,M(O,E))});const T=d(x),V=f(x,T);return g(u,V),S(x,u),h(u),u}function N(x){const T=x[a.value],V=u.get(T);return V&&V.children.size>0}function m(x){return x[c.value]&&!N(x)}function _(x){F(t.value);const T=d(x),V=f(x,T);return x.forEach((B,E)=>{var H;const O=B[a.value],$=V.has(O)?(H=V.get(O))==null?void 0:H.map(Y=>Y.__fv_index__):[],L=M(O,E);B.__fv_graph_node__=L,B.__fv_children_index__=$,B.__fv_descendant_index__=[...$],B.__fv_parents__=new Map,m(B)&&(B[l.value]=!0)}),p(x),C(x,T),e.showLines&&I(x),x}function b(x,T,V){const E=V.value[x][a.value],O=u.get(E);if(O){const $=u.get(O.parentId);let L=V.value.length-1;if($){const H=Array.from($.children.keys()).indexOf(O.id);if(H===$.children.size-1){const J=Array.from($.descendant.values())[$.descendant.size-1];L=V.value.findIndex(le=>le[a.value]===J.id)+1}else{const J=Array.from($.children.values())[H+1];L=V.value.findIndex(le=>le[a.value]===J.id)}T[c.value]=!1,T[s.value]=$.id,V.value.splice(L,0,T)}}}function k(x,T,V){const B=V.value[x],E=B[a.value];if(u.get(E)){const L=V.value.findIndex(H=>H[a.value]===E)+1;B[c.value]=!0,B[l.value]=!1,T[c.value]=!1,T[s.value]=E,V.value.splice(L,0,T)}}function w(x,T){const V=x[a.value],B=u.get(V),E=Array.from(B.descendant.keys());E.unshift(V);const O=u.get(B.parentId);if(O&&(O.children.delete(V),O.children.size===0)){const L=T.find(H=>H[a.value]===B.parentId);L[c.value]=!1,L[l.value]=!1}return T.filter(L=>E.indexOf(L.id)===-1)}return{generateHierarchyData:_,hasRealChildren:N,insertSibling:b,insertChild:k,shouldStratifyData:r,trimmedOriginalData:w}}const fr={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}},pr={showCloseButton:{type:Boolean,default:!0},animate:{type:String,default:"fadeIn"},options:{type:Object}},Gt=n.defineComponent({name:"Toast",props:pr,emits:["close","click"],setup:(e,t)=>{const o=n.ref(e.animate),i="fadeOut",r=n.computed(()=>e.options),a=n.ref(!1),l=n.computed(()=>{const g={animated:a.value,toast:!0};return g[e.animate]=!1,g[i]=a.value,g[r.value.type]=!0,r.value.theme&&(g[r.value.theme]=!0),g}),c=n.computed(()=>{const S=`f-icon-${r.value&&r.value.type?r.value.type.replace("toasty-type-",""):"default"}`,h={"f-icon":!0};return h[S]=!0,h}),s=n.computed(()=>r.value.title||r.value.message),u=n.computed(()=>r.value.title&&r.value.message),f=n.computed(()=>!r.value.title&&r.value.message),d=n.computed(()=>e.showCloseButton),p=n.computed(()=>!!r.value.buttons||!!t.slots.default);function y(g){g.stopPropagation(),g.preventDefault(),a.value=!1,setTimeout(()=>{t.emit("close",r.value)},200)}function C(g,v){}function I(g){return`f-preten-link ${g.customClass?g.customClass:""}`}n.watch(o,()=>{o.value});const M=()=>{var g;return n.createVNode(n.Fragment,null,[n.createVNode("div",{class:"after-toast-msg text-right"},[!t.slots.default&&((g=r.value.buttons)==null?void 0:g.map(v=>n.createVNode("span",{class:I(v),onClick:S=>void 0},[v.text]))),t.slots.default&&t.slots.default()])])};return()=>n.createVNode("div",{class:l.value},[d.value&&n.createVNode("button",{title:"close",class:"toast-close f-btn-icon f-bare",onClick:y},[n.createVNode("span",{class:"f-icon modal_close"},null)]),s.value&&n.createVNode("section",{class:"modal-tips"},[n.createVNode("div",{class:"float-left modal-tips-iconwrap"},[n.createVNode("span",{class:c.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:r.value.title},null),n.createVNode("p",{class:"toast-msg",innerHTML:r.value.message},null),p.value&&M()]),f.value&&(r.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:r.value.message},null),n.createVNode("div",{class:"after-toast-title text-right ml-auto"},[M()])]):n.createVNode("h5",{class:"toast-title modal-tips-title only-toast-msg",innerHTML:r.value.message},null))])])])}}),Vt=n.defineComponent({name:"Notify",props:fr,emits:["close","empty"],setup(e,t){const o=n.computed(()=>({"farris-notify":!0})),i={left:12,right:12,top:20,bottom:12},r=n.ref(),a=n.ref(e.options),l=n.ref(e.showCloseButton),c=n.computed(()=>e.position||"bottom-right"),s=n.computed(()=>e.timeout!=null?e.timeout:3e3),u=n.computed(()=>{const p=e.bottom?e.bottom:i.bottom,y=e.top?e.top:i.top,C={transition:"all 0.2s ease",left:c.value.indexOf("left")>-1?`${e.left?e.left:i.left}px`:"",right:c.value.indexOf("right")>-1?`${e.right?e.right:i.right}px`:"",top:c.value.indexOf("top")>-1?`${y}px`:"",bottom:c.value.indexOf("bottom")>-1?`${p}px`:""};return c.value.indexOf("center")>-1&&(C.left="50%",C.marginLeft="calc(-24rem / 2)",c.value==="center-center"&&(C.top="50%",C.transform="translate(-50%, -50%)")),C});function f(p){t.emit("close")}s.value&&setTimeout(()=>{f()},s.value),t.expose({closeToast:f,container:r,notifyPosition:c});function d(p,y){f()}return()=>n.createVNode("div",{class:o.value,style:u.value,ref:r},[n.createVNode(Gt,{options:a.value,showCloseButton:l.value,animate:e.animate,onClose:p=>d(p,a.value)},null)])}});class Fn{constructor(){q(this,"notifyRefs",[]);q(this,"globalConfig",n.reactive({}))}createNotifyInstance(t){const o=this,r=Object.assign({timeout:3e3,position:"bottom-right",showCloseButton:!0},this.globalConfig,{...t}),a=document.createElement("div");a.style.display="contents";const l=n.createApp({setup(){const c=n.ref();function s(){c.value.container.style.transform="scale(0)",setTimeout(()=>{o.updateNotifyPositionForClose(r,c),l.unmount()},220)}if(r.position.indexOf("top")>-1){const u=o.getNotifyInstances(r.position),f=u[u.length-1];if(f){const d=f.value.container.getBoundingClientRect();r.top=d.bottom}}return n.onUnmounted(()=>{document.body.removeChild(a)}),n.onMounted(()=>{o.updateNotifyPositionForCreate(r,c)}),()=>n.createVNode(n.Transition,{mode:"out-in",name:"fade",appear:!0},{default:()=>[n.createVNode(Vt,n.mergeProps({ref:c},r,{onClose:s}),null)]})}});return l.provide("NotifyService",this),document.body.appendChild(a),l.mount(a),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(r=>{const a=r.value.container.getBoundingClientRect();r.value.container.style.bottom=a.height+i-a.bottom+"px"})}this.notifyRefs=[...this.notifyRefs,o]}updateNotifyPositionForClose(t,o){const i=this.notifyRefs.indexOf(o);if(t.position.indexOf("top")>-1){const r=this.getNotifyInstances(t.position),a=r.indexOf(o);r.slice(a+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="",r="",a,l,c;typeof o=="string"?i=o:o&&(i=o.message||"",r=o.title||"",l=o.position||null,c=o.showCloseButton!=null?o.showCloseButton:null,a=o.timeout!=null?o.timeout:null);const u={options:{type:t,message:i,title:r}};return l!=null&&(u.position=l),c!=null&&(u.showCloseButton=c),a!=null&&(u.timeout=a),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 mr=Symbol("NOTIFY_SERVICE_TOKEN");Vt.install=e=>{e.component(Vt.name,Vt),e.component(Gt.name,Gt);const t=new Fn;e.provide(mr,t),e.provide("FNotifyService",t)};function _n(e,t,o,i,r){var it;const a=new Map,l=new Map,c=new Map,s=new Map,u=new Map,f=n.ref([]),d=n.ref([]),p=dr(e,r),{generateGroupData:y,groupFields:C,shouldGroupingData:I}=p,M=n.ref(e.data),g=ur(e,M,i,r),{generateHierarchyData:v,hasRealChildren:S,insertSibling:h,insertChild:F,shouldStratifyData:N,trimmedOriginalData:m}=g,{idField:_,reviseIdentifyField:b}=r,k=n.ref(e.newDataItem),w=n.ref(e.data||[]),x=n.ref(e.data),{flatTreeData:T}=Ya(e);function V(P){return T(P)}if(e.data&&((it=e.data[0])!=null&&it.children)){const P=V(e.data);M.value=P,w.value=P,x.value=P}const B=n.ref(e.summary),E=n.computed(()=>{const P=B.value;return(P==null?void 0:P.groupFields)||[]});let O=new Map;const $=n.ref(w.value.length),L=n.ref(e.pagination);function H(){return L.value&&L.value.enable&&L.value.size>0?L.value.size:w.value.length}const Y=n.ref(1),J=n.computed(()=>L.value&&L.value.enable&&L.value.mode==="client"),ne=new Fn;function le(){var Be;w.value=M.value,J.value&&($.value=w.value.length),I.value&&(w.value=y(C.value,M.value,t)),O=E.value.reduce((Fe,_e)=>(Fe.set(_e,0),Fe),O);const P=0,W=H(),K=(Y.value-1)*W,be=K>w.value.length-1?P:K,Oe=Math.min(be+W,w.value.length);let Ne=0;const Ce=[];if(w.value.length){b(w.value);const Fe=_.value!==e.idField;for(let _e=be;_e<Oe;_e++){const ke=w.value[_e];ke.__fv_data_grid_group_row__?(Ne=0,ke.__fv_data_index__=""):ke.__fv_data_grid_group_summary__?ke.__fv_data_index__="":(Ne++,ke.__fv_data_index__=Ne+(Y.value-1)*W),ke.__fv_index__=_e,ke.__fv_visible_index__=_e,e.rowOption&&e.rowOption.disabledField&&(ke.__fv_disabled__=ke[(Be=e.rowOption)==null?void 0:Be.disabledField]),Fe&&(ke[_.value]=_e),E.value.forEach(qe=>{const pt=O.get(qe)||0;O.set(qe,pt+ke[qe])}),Ce.push(ke)}}return N.value&&v(Ce),x.value=[...Ce],Ce}const R=n.ref(le()),Z=n.computed(()=>R.value.filter(P=>P.__fv_visible__!==!1));function ue(){Z.value.forEach((P,W)=>(P.__fv_visible_index__=W,P))}function ee(P,W,K=!1){const be=(K?le():[...x.value]).filter(Ce=>o.apply(Ce)),Oe=P&&P.length?be.filter(Ce=>P.reduce((Be,Fe)=>Be&&Fe.filter(Ce),!0)):be,Ne=W&&W.length?Oe.sort((Ce,Be)=>{const Fe=[...W],_e=Fe.shift();let ke=_e.compare(Ce[_e.field],Be[_e.field]);for(;ke===0&&Fe.length!==0;){const qe=Fe.shift();qe&&(ke=qe.compare(Ce[qe.field],Be[qe.field]))}return ke}):Oe;return R.value=Ne.map((Ce,Be)=>{if(Ce.__fv_data_grid_group_row__){const Fe=`group_of_${Ce.__fv_data_grid_group_field__}_${Ce.__fv_data_grid_group_value__}`;Ce.__fv_data_grid_group_collapse__=!!a.get(Fe)}return Ce.__fv_index__=Be,Ce.__fv_visible_index__=Be,Ce}),R.value}function A(P){return u.clear(),d.value=P,d.value.reduce((W,K)=>(W.set(K.field,K),W),u),ee([],d.value)}function U(P,W){return u.set(P,W),d.value=Array.from(u.values()),ee([],d.value)}function ye(P){return u.delete(P),d.value=Array.from(u.values()),ee([],d.value)}function fe(P,W){return l.set(P,W),f.value=Array.from(l.values()),ee([],Array.from(u.values()))}function $e(P){return l.delete(P),f.value=Array.from(l.values()),ee([],Array.from(u.values()),!0)}function je(){return l.clear(),f.value=[],ee([],Array.from(u.values()),!0)}function Me(P,W){const K=`group_of_${P}_${W}`;a.set(K,!0);const me=be=>be[P]!==W;return c.set(`collapse_${P}_${W}`,{field:P,fieldName:P,fieldType:"string",filterValue:W,filter:me}),ee(Array.from(c.values()),Array.from(u.values()))}function Se(P,W){const K=`group_of_${P}_${W}`;return a.set(K,!1),c.delete(`collapse_${P}_${W}`),ee(Array.from(c.values()),Array.from(u.values()),!0)}function Ve(P){const W=P.raw[_.value],K=me=>!me.__fv_parents__.has(W);s.set(`fold_${W}`,{field:"id",fieldName:"id",fieldType:"string",filterValue:String(W),filter:K}),ee(Array.from(s.values()),Array.from(u.values())),v(R.value)}function Pe(P){const W=P[_.value];s.delete(`fold_${W}`)}function Ie(P){Pe(P.raw),ee(Array.from(s.values()),Array.from(u.values()),!0),v(R.value)}function pe(){const P=le();R.value=P,e.hierarchy&&(ee(Array.from(s.values()),Array.from(u.values())),v(R.value))}function j(P){const K=P&&P.length&&P[0].children?V(P):P;M.value=K,pe()}function ie(P,W,K){return(P&&P.length?R.value.filter((be,Oe)=>P.reduce((Ne,Ce)=>Ne&&Ce.filter(be),!0)):R.value).slice(W,K)}function te(P){const W=H(),K=P*W;0<K&&K<=$.value&&(Y.value=P,pe())}function ge(P){M.value.push(Re.cloneDeep(P)),R.value=le()}function Te(P=0){if(!(P>-1))return!1;const K=k.value();e.hierarchy?h(P,K,M):M.value.splice(P,0,K),pe()}function Ae(P=0){if(!(P>-1&&e.hierarchy))return!1;const K=k.value(),me=M.value[P];Pe(me),F(P,K,M),pe()}function ze(P){const W=P?P-1:0;M.value.splice(W,1),pe()}function Ue(P){const W=M.value.findIndex(K=>K[_.value]===P);W!==-1&&(M.value.splice(W,1),pe())}function Je(P){const W=P>-1?M.value[P]:null;if(!(W&&W.deletable!==!1))return!1;M.value=m(W,M.value),pe()}function Ze(){const P=c.size>0?Array.from(c.values()):[];return ee(P,Array.from(u.values()))}function Ke(P){L.value&&(L.value.size=P,pe())}function nt(P,W){const K=M.value[Number(P)-1];K.editable!==!1?(K.name=W,pe()):ne.show({showCloseButton:!1,timeout:3e3,animate:"fadeIn",toasts:[{type:"string",title:"提示",msg:"当前节点禁止编辑"}]})}function ot(P){return P.map(K=>{const me=x.value.findIndex(be=>be[_.value]===K);return me>-1?x.value[me]:null}).filter(K=>K!=null)}return{addFilter:fe,addNewDataItem:ge,addSorter:U,changePageSizeTo:Ke,collapse:Me,dataView:R,editDataItem:nt,expand:Se,filters:f,fold:Ve,getRange:ie,getSelectionItems:ot,hasRealChildren:S,insertNewChildDataItem:Ae,insertNewDataItem:Te,load:j,navigatePageTo:te,pageIndex:Y,rawView:x,refresh:Ze,removeAllFilter:je,removeDataItem:ze,removeDataItemById:Ue,removeFilter:$e,removeHierarchyDataItem:Je,removeSorter:ye,reOrderVisibleIndex:ue,setSorters:A,sorters:d,summaries:O,totalItems:$,unFold:Ie,updateDataView:pe,visibleDataItems:Z}}const Mn={conditions:{type:Array,default:[]},fields:{type:Array,default:[]},key:{type:String,default:""},isControlInline:{type:Boolean,default:!0}};class Tn{constructor(t={value:[]}){q(this,"editorType","check-box");q(this,"value");q(this,"valueType","boolean");const i=(Array.isArray(t.value)?t.value:typeof t.value=="string"?t.value.split(","):[]).map(r=>JSON.parse(r));this.value=i}clear(){this.value=[]}setValue(t){this.value=t}getValue(){return this.value}getDisplayText(){return this.value.map(t=>t?"是":"否").join(",")}isEmpty(){return this.value.length===0}}class kn{constructor(t={textValue:"",value:"",valueField:""}){q(this,"editorType","combo-lookup");q(this,"textValue");q(this,"value");q(this,"valueField");q(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(r=>this.getPropValue(r,Re.cloneDeep(o)));return i&&i.length?i.join(","):""}getValue(){const t=this.valueField.split("."),o=this.value.split(",").map(i=>this.getPropValue(i,Re.cloneDeep(t)));return o&&o.length?o.join(","):""}getDisplayText(){return this.getValue()}setValue(t){throw new Error("Method not implemented.")}isEmpty(){return!this.valueField}}class Vn{constructor(t={value:""}){q(this,"editorType","date-picker");q(this,"value");q(this,"valueType","datetime");this.value=t.value}setValue(t){this.value=t.formatted}getValue(){return this.value}getDisplayText(){return this.getValue()}isEmpty(){return!this.value}clear(){this.value=void 0}}class It{constructor(t={begin:"",end:""}){q(this,"editorType","date-range");q(this,"begin","");q(this,"end","");q(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}`}getDisplayText(){return this.getValue()}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 In{constructor(t={value:""}){q(this,"editorType","datetime-picker");q(this,"value");q(this,"valueType","datetime");this.value=t.value}clear(){this.value=void 0}getValue(){return this.value}getDisplayText(){return this.getValue()}setValue(t){this.value=t.formatted}isEmpty(){return!this.value}}class Nn{constructor(t={value:""}){q(this,"editorType","combo-list");q(this,"value");q(this,"valueType","enum");this.value=t.value}clear(){this.value=""}getValue(){return this.value}getDisplayText(){return this.value}setValue(t){this.value=t.value}isEmpty(){return!this.value&&this.value!==!1}}class hr{constructor(t={value:"",displayText:"",displayField:"",isInputText:!1}){q(this,"editorType","input-group");q(this,"value");q(this,"valueType","text");q(this,"displayText");q(this,"valueField");q(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(r=>this.getPropValue(r,Re.cloneDeep(o)));return i&&i.length?i.join(","):""}getValue(){return this.value}getDisplayText(){return this.getValue()}setValue(t){throw new Error("Method not implemented.")}isEmpty(){return!this.displayText&&!this.value.length}}class Bn{constructor(t={mapFields:[],value:"",valueField:"",isInputText:!1}){q(this,"editorType","lookup");q(this,"idValue");q(this,"mapFields");q(this,"value");q(this,"valueField");q(this,"valueType","text");q(this,"isInputText");this.value=t.value,this.valueField=t.valueField,this.mapFields=t.mapFields,this.idValue=t.mapFields.map(o=>o.id).join(","),this.isInputText=t.isInputText}clear(){this.value="",this.idValue="",this.mapFields=[]}getValue(){return this.mapFields.map(t=>t[this.valueField||"id"]).join(",")}getDisplayText(){return this.getValue()}setValue(t){throw new Error("Method not implemented.")}isEmpty(){return!this.mapFields.length}}class On{constructor(t={value:""}){q(this,"editorType","month-picker");q(this,"value");q(this,"valueType","datetime");this.value=t.value}setValue(t){this.value=t.formatted}getValue(){return this.value}getDisplayText(){return this.getValue()}clear(){this.value=void 0}isEmpty(){return!this.value}}class En{constructor(t={begin:"",end:""}){q(this,"editorType","month-range");q(this,"begin");q(this,"end");q(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}`}getDisplayText(){return this.getValue()}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 $n{constructor(t={begin:null,end:null}){q(this,"editorType","number-range");q(this,"begin");q(this,"end");q(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}}getDisplayText(){return this.getValue()}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 jn{constructor(t={value:""}){q(this,"editorType","number-spinner");q(this,"value");q(this,"valueType","number");this.value=t.value==null?null:parseFloat(t.value)}clear(){this.value=null}getValue(){return this.value}getDisplayText(){return this.getValue()}setValue(t){this.value=isNaN(parseFloat(t))?null:t}isEmpty(){return this.value==null||isNaN(this.value)}}class Pn{constructor(t={value:null}){q(this,"editorType","radio-group");q(this,"value");q(this,"valueType","enum");this.value=t.value}clear(){this.value=void 0}getValue(){return this.value}getDisplayText(){return this.getValue()}setValue(t){this.value=t}isEmpty(){return!this.value}}class Nt{constructor(t={value:""}){q(this,"editorType","text");q(this,"value");q(this,"valueType","text");this.value=t.value}clear(){this.value=void 0}getValue(){return this.value}getDisplayText(){return this.getValue()}setValue(t){this.value=t}isEmpty(){return!this.value}}function Rn(){function e(t,o){switch(t){case"check-box":return new Tn(o);case"combo-list":return new Nn(o);case"combo-lookup":return new kn(o);case"input-group":return new hr(o);case"date-picker":return new Vn(o);case"date-range":return new It(o);case"datetime-picker":return new In(o);case"datetime-range":return new It(o);case"lookup":return new Bn(o);case"month-picker":return new On(o);case"month-range":return new En(o);case"number-range":return new $n(o);case"number-spinner":return new jn(o);case"radio-group":return new Pn(o);default:return new Nt(o)}}return{createConditionValue:e}}function Dn(e,t){const o=n.ref(e.fields),i=n.ref([]),r=new Map,{createConditionValue:a}=Rn();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 c(f){return f.map(p=>Object.assign({},p)).map(p=>(p.editor=l(p),p))}function s(f=!0){o.value.reduce((d,p)=>(f||(p.editor=l(p)),d.set(p.labelCode,p),d),r)}function u(f){return f.forEach(d=>{if(d){const p=r.get(d.fieldCode);d.value=a(p.editor.type,d.value)}}),f}return{convertToSingleControl:c,fields:o,fieldMap:r,fieldConditions:i,loadFieldConfigs:s,initialConditionValue:u}}function gr(e,t,o){const i=n.ref(null),r=n.ref(o),a=n.ref(0);function l(f,d){let p=null;return function(){const y=arguments;p?(clearTimeout(p),p=setTimeout(()=>{p=null,f(...y)},200)):(f(...y),p=setTimeout(()=>{p=null},200))}}function c(){r.value&&(i.value=new ResizeObserver(l(f=>{const d=f[0];a.value=d.contentRect.width})),i.value.observe(r.value))}function s(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(()=>s(a.value));return n.watch([o],([f])=>{r.value=f,c()}),{conditionClass:u,resizeObserver:i}}const Hn=n.defineComponent({name:"FConditionFields",props:Mn,emits:["valueChange","blur","focus","click","input"],setup(e,t){const o=n.ref(),i=n.ref(e.key);n.ref(e.isControlInline);const r=n.ref(e.conditions),a=Dn(e),{initialConditionValue:l,fieldMap:c,loadFieldConfigs:s}=a,u=gr(e,t,o),{conditionClass:f,resizeObserver:d}=u;s(!0),l(r.value),n.onBeforeUnmount(()=>{var M;(M=d.value)==null||M.unobserve(o.value)}),n.watch(()=>e.conditions,()=>{r.value=e.conditions,l(r.value)});const p=n.computed(()=>({"f-utils-flex-row-wrap":!0,"farris-form":!0,"farris-form-controls-inline":e.isControlInline})),y=n.computed(()=>"col-12 col-md-6 col-xl-3 col-el-2 ");function C(M,g){t.emit("valueChange",M,g)}function I(){return r.value.map(M=>{var S,h,F,N;const g=(S=c.get(M.fieldCode))==null?void 0:S.editor;let v=!0;return((h=M.value)==null?void 0:h.editorType)==="lookup"&&g?(g.idValue=M.value.idValue,g.onClear=()=>{M.value.idValue="",M.value.mapFields=[],C("",M)},g["onUpdate:dataMapping"]=m=>{M.value.mapFields=m.items,C(M.value.getValue(),M)},v=!1):((F=M.value)==null?void 0:F.editorType)==="number-range"&&g&&(g.beginValue=M.value.begin,g.onBeginValueChange=m=>{M.value.begin=m,C(m,M)},g.endValue=M.value.end,g.onEndValueChange=m=>{M.value.end=m,C(m,M)},v=!1),n.createVNode(Pt.FDynamicFormGroup,{customClass:((N=g==null?void 0:g.appearance)==null?void 0:N.class)||y.value,label:M.fieldName,editor:g,required:g==null?void 0:g.required,modelValue:M.value.value,"onUpdate:modelValue":m=>M.value.value=m,onChange:m=>{v&&C(m,M)}},null)})}return()=>n.withDirectives(n.createVNode("div",{class:p.value,key:i.value,ref:o},[I()]),[[n.resolveDirective("area-response")]])}}),Wt=new Map([["appearance",mt]]),yr=new Map([]),vr="root-viewmodel";class br{constructor(t,o){q(this,"formSchemaUtils");q(this,"controlCreatorUtils");q(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),r=this.createViewModeNode(t),a=this.formSchemaUtils.getFormSchema();return a.module.viewmodels.push(r),a.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"),r=[];Object.assign(i,{id:t.componentId+"-form",appearance:{class:"f-form-layout farris-form farris-form-controls-inline"},contents:r}),o.contents=[i];const{selectedFields:a}=t;a==null||a.forEach(c=>{const s=Re.cloneDeep(c),u=this.resolveControlClassByFormColumns(t),f=this.controlCreatorUtils.setFormFieldProperty(s,"",u);f&&r.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:vr,fields:this.assembleViewModelFields(t),commands:[],states:[],enableValidation:!0}}assembleViewModelFields(t){const o=[],{selectedFields:i}=t;return i==null||i.forEach(r=>{let a="blur";const l=r.type.name;(l===St.Enum||l===St.Boolean)&&(a="change"),o.push({type:"Form",id:r.id,fieldName:r.bindingField,groupId:null,groupName:null,updateOn:a,fieldSchema:{}})}),o}}function Cr(e,t,o,i){var a,l,c,s,u,f;const r=o.parentComponentInstance;if(r&&i){const d=(a=r.schema)==null?void 0:a.type,y={componentId:`form-${Math.random().toString(36).slice(2,6)}`,componentName:((l=o.bindingSourceContext)==null?void 0:l.entityTitle)||((s=(c=o.bindingSourceContext)==null?void 0:c.bindingEntity)==null?void 0:s.name)||"标题",componentType:"form",formColumns:d==="splitter-pane"?1:4,parentContainerId:r.schema.id,bindTo:((u=o.bindingSourceContext)==null?void 0:u.bindTo)||"/",selectedFields:(f=o.bindingSourceContext)==null?void 0:f.bindingEntityFields};return new br(e,i).createComponent(y)}else return t}function wr(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","contents"]},Wt,Cr);const An={$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",default:null},label:{description:"",type:"string",default:""},lableWidth:{description:"",type:"number"},binding:{description:"",type:"object",default:{}}},required:["id","type","editor"]},Ln={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"},componentId:{type:String,default:""}};Ge(Ln,An,Wt,void 0);function qt(e,t,o){var N;const i=o&&o.getStyles&&o.getStyles()||"",r=o&&o.getDesignerClass&&o.getDesignerClass()||"",a=n.ref();function l(){return(t==null?void 0:t.schema.componentType)==="frame"?!1:o&&o.checkCanMoveComponent?o.checkCanMoveComponent():!0}function c(){return!1}function s(){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(m){if(!m||!m.value)return null;if(m.value.schema&&m.value.schema.type==="component")return m.value;const _=n.ref(m==null?void 0:m.value.parent),b=f(_);return b||null}function d(m=t){var w;const{componentInstance:_,designerItemElementRef:b}=m;if(!_||!_.value)return null;const{getCustomButtons:k}=_.value;return _.value.canMove||k&&((w=k())!=null&&w.length)?b:d(m.parent)}function p(m){return!!o&&o.canAccepts(m)}function y(){return(t==null?void 0:t.schema.label)||(t==null?void 0:t.schema.title)||(t==null?void 0:t.schema.name)}function C(){}function I(m,_){!m||!_||o!=null&&o.onAcceptMovedChildElement&&o.onAcceptMovedChildElement(m,_)}function M(m,_){const{componentType:b}=m;let k=ln(b,m,_);o&&o.onResolveNewComponentSchema&&(k=o.onResolveNewComponentSchema(m,k));const w=b.toLowerCase().replace(/-/g,"_");return k&&!k.id&&k.type===b&&(k.id=`${w}_${Math.random().toString().slice(2,6)}`),k}function g(m){}function v(...m){if(o&&o.getPropsConfig)return o.getPropsConfig(...m)}function S(){o&&o.onRemoveComponent&&o.onRemoveComponent(),t!=null&&t.schema.contents&&t.schema.contents.map(m=>{let _=m.id;m.type==="component-ref"&&(_=m.component);const b=e.value.querySelectorAll(`#${_}-design-item`);b!=null&&b.length&&Array.from(b).map(k=>{var w;(w=k==null?void 0:k.componentInstance)!=null&&w.value.onRemoveComponent&&k.componentInstance.value.onRemoveComponent()})})}function h(){if(o&&o.getCustomButtons)return o.getCustomButtons()}function F(m){if(o&&o.onPropertyChanged)return o.onPropertyChanged(m)}return a.value={canMove:l(),canSelectParent:c(),canDelete:s(),canNested:!u(),contents:t==null?void 0:t.schema.contents,elementRef:e,parent:(N=t==null?void 0:t.parent)==null?void 0:N.componentInstance,schema:t==null?void 0:t.schema,styles:i,designerClass:r,canAccepts:p,getBelongedComponentInstance:f,getDraggableDesignItemElement:d,getDraggingDisplayText:y,getPropConfig:v,getDragScopeElement:C,onAcceptMovedChildElement:I,onChildElementMovedOut:g,addNewChildComponentSchema:M,triggerBelongedComponentToMoveWhenMoved:!!o&&o.triggerBelongedComponentToMoveWhenMoved||n.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:!!o&&o.triggerBelongedComponentToDeleteWhenDeleted||n.ref(!1),onRemoveComponent:S,getCustomButtons:h,onPropertyChanged:F},a}class Bt{constructor(t,o){q(this,"componentId");q(this,"viewModelId");q(this,"eventsEditorUtils");q(this,"formSchemaUtils");q(this,"formMetadataConverter");q(this,"designViewModelUtils");q(this,"designViewModelField");q(this,"controlCreatorUtils");q(this,"designerHostService");q(this,"schemaService",null);q(this,"metadataService",null);q(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 r=this.designViewModelUtils.getDgViewModel(this.viewModelId);this.designViewModelField=r.fields.find(a=>a.id===o)}t.updateOn=(i=this.designViewModelField)==null?void 0:i.updateOn}}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",editable:!1,data:[{value:t.type,name:oe[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 r=i.contents.findIndex(l=>l.id===t),a=Re.cloneDeep(i.contents[r]);i.contents.splice(r,1),i.contents.splice(r,0,a)}}class Sr{constructor(){q(this,"label","");q(this,"id","");q(this,"columnInSM",12);q(this,"columnInMD",6);q(this,"columnInLG",3);q(this,"columnInEL",2);q(this,"displayWidthInSM",1);q(this,"displayWidthInMD",1);q(this,"displayWidthInLG",1);q(this,"displayWidthInEL",1);q(this,"displayColumnCountAtBreakPoint","md");q(this,"tagRow",0);q(this,"showTopBorder",0);q(this,"group",1);q(this,"isSupportedClass",!0);q(this,"fieldSetId","")}}function xr(e){let t,o;const i=new Map;let r=[];function a(f,d){const y=f.split(" ").filter(v=>v.startsWith("col-"));if(y.length===0){d.isSupportedClass=!1;return}let C=y.find(v=>/^col-([1-9]|10|11|12)$/.test(v)),I=y.find(v=>/^col-md-([1-9]|10|11|12)$/.test(v)),M=y.find(v=>/^col-xl-([1-9]|10|11|12)$/.test(v)),g=y.find(v=>/^col-el-([1-9]|10|11|12)$/.test(v));C=C||"col-12",d.columnInSM=parseInt(C.replace("col-",""),10),d.displayWidthInSM=d.columnInSM/12,d.displayWidthInSM!==1&&(d.isSupportedClass=!1),I=I||"col-md-"+d.columnInSM,d.columnInMD=parseInt(I.replace("col-md-",""),10),d.displayWidthInMD=d.columnInMD/6,[1,2].includes(d.displayWidthInMD)||(d.isSupportedClass=!1),M=M||"col-xl-"+d.columnInMD,d.columnInLG=parseInt(M.replace("col-xl-",""),10),d.displayWidthInLG=d.columnInLG/3,[1,2,3,4].includes(d.displayWidthInLG)||(d.isSupportedClass=!1),g=g||"col-el-"+d.columnInLG,d.columnInEL=parseInt(g.replace("col-el-",""),10),d.displayWidthInEL=d.columnInEL/2,[1,2,3,4,5,6].includes(d.displayWidthInEL)||(d.isSupportedClass=!1)}function l(f,d,p,y=!1){let C=!1;f.contents.forEach(I=>{if(I.type==="fieldset"){p+=1,l(I,d,p,!0),C=!0;return}C&&(p+=1,C=!1);const M=I.appearance&&I.appearance.class,g=new Sr;M?a(M,g):g.isSupportedClass=!1,g.label=I.label||I.id,g.id=I.id,g.group=p,y&&(g.fieldSetId=f.id),o===I.id&&(t=p),i.set(I.id,I),d.push(g)})}function c(f){const d=e.getComponentById(f);if(!d||!d.componentType||!d.componentType.startsWith("form"))return{result:!1,message:"只可以在响应式表单组件中调整响应式布局配置"};const p=e.selectNode(d,y=>y.type===tn.DgControl["response-form"].type);return!p||!p.contents||p.contents.length===0?{result:!1,message:"Form区域内没有控件,请先添加控件"}:{result:!0,message:"",formNode:p}}function s(f,d){d=d||f.id;const{result:p,message:y,formNode:C}=c(d);if(!p)return{result:p,message:y};o=f.id,r=[],i.clear();const I=C.contents[0].type===tn.DgControl.fieldset.type?0:1;l(C,r,I);const M=r.find(v=>!v.isSupportedClass);return{defaultState:{defaultGroupNumber:t||1,model:M?"customize":"standard"},importData:r}}function u(f,d){d=d;const{result:p,formNode:y}=c(d);if(!p)return"";const C=[];return f.forEach(I=>{var v;const M=i.get(I.id),g=M.appearance&&M.appearance.class;if(g){const h=g.split(" ").filter(k=>!k.startsWith("col-")),F="col-"+I.columnInSM,N="col-md-"+I.columnInMD,m="col-xl-"+I.columnInLG,_="col-el-"+I.columnInEL,b=[F,N,m,_].concat(h);M.appearance.class=b.join(" ")}if(I.fieldSetId){const S=y.contents.find(F=>F.id===I.fieldSetId),h=C.find(F=>F.id===I.fieldSetId);h?(v=h.contents)==null||v.push(M):(C.push(S),S.contents=[M])}else C.push(M)}),y.contents=C,y.id}return{checkCanFindFormNode:c,checkCanOpenLayoutEditor:s,changeFormControlsByResponseLayoutConfig:u,getResonseFormLayoutConfig:l}}const xt=n.ref(0);function Fr(e,t){const o=t.getBoundingClientRect(),i=e.getBoundingClientRect(),r=i.top>=o.top,a=i.top<=o.bottom;return r&&a}function _r(e){const t=e.querySelector(".component-btn-group");if(!t)return;t.style.display="";const o=t.getBoundingClientRect(),i=t.querySelector("div");if(i){const r=i.getBoundingClientRect();i.style.top=o.top+"px";let a=o.left-r.width;const l=document.querySelector(".editorDiv");if(l){const c=l.getBoundingClientRect();a<c.left&&({left:a}=e.getBoundingClientRect())}i.style.left=a+"px"}}function Mr(e){if(!window.scrollContainerList)return;const t=Array.from(window.scrollContainerList);if(t.length&&t.length===1){const o=t[0],i=document.querySelector(`[id=${o}]`);if(i&&i.contains(e))return i}}function Gn(e){if(!e)return;const t=e.getBoundingClientRect();if(t.width===0&&t.height===0)return;const o=e.querySelector(".component-btn-group");if(o){let i=!0;const r=Mr(e);if(r&&(i=Fr(e,r)),!i){o.style.display="none";return}_r(e)}}function Tr(e){if(!e)return;let t;e.className.includes("dgComponentSelected")?t=e:t=e.querySelector(".dgComponentSelected"),t&&Gn(t)}var dt=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Ot(e){throw new Error('Could not dynamically require "'+e+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var kr={exports:{}};(function(e,t){(function(o){e.exports=o()})(function(){return function(){function o(i,r,a){function l(u,f){if(!r[u]){if(!i[u]){var d=typeof Ot=="function"&&Ot;if(!f&&d)return d(u,!0);if(c)return c(u,!0);var p=new Error("Cannot find module '"+u+"'");throw p.code="MODULE_NOT_FOUND",p}var y=r[u]={exports:{}};i[u][0].call(y.exports,function(C){var I=i[u][1][C];return l(I||C)},y,y.exports,o,i,r,a)}return r[u].exports}for(var c=typeof Ot=="function"&&Ot,s=0;s<a.length;s++)l(a[s]);return l}return o}()({1:[function(o,i,r){var a={},l="(?:^|\\s)",c="(?:\\s|$)";function s(d){var p=a[d];return p?p.lastIndex=0:a[d]=p=new RegExp(l+d+c,"g"),p}function u(d,p){var y=d.className;y.length?s(p).test(y)||(d.className+=" "+p):d.className=p}function f(d,p){d.className=d.className.replace(s(p)," ").trim()}i.exports={add:u,rm:f}},{}],2:[function(o,i,r){(function(a){var l=o("contra/emitter"),c=o("crossvent"),s=o("./classes"),u=document,f=u.documentElement;function d(w,x){var T=arguments.length;T===1&&Array.isArray(w)===!1&&(x=w,w=[]);var V,B,E,O,$,L,H,Y,J,ne=null,le,R,Z=!1,ue=0,ee,A=x||{};A.moves===void 0&&(A.moves=v),A.accepts===void 0&&(A.accepts=v),A.invalid===void 0&&(A.invalid=te),A.containers===void 0&&(A.containers=w||[]),A.isContainer===void 0&&(A.isContainer=g),A.copy===void 0&&(A.copy=!1),A.copySortSource===void 0&&(A.copySortSource=!1),A.revertOnSpill===void 0&&(A.revertOnSpill=!1),A.removeOnSpill===void 0&&(A.removeOnSpill=!1),A.direction===void 0&&(A.direction="vertical"),A.ignoreInputTextSelection===void 0&&(A.ignoreInputTextSelection=!0),A.mirrorContainer===void 0&&(A.mirrorContainer=u.body);var U=l({containers:A.containers,start:j,end:ge,cancel:Je,remove:Ue,destroy:Me,canMove:pe,dragging:!1});return A.removeOnSpill===!0&&U.on("over",P).on("out",W),fe(),U;function ye(D){return U.containers.indexOf(D)!==-1||A.isContainer(D)}function fe(D){var G=D?"remove":"add";C(f,G,"mousedown",Ve),C(f,G,"mouseup",Ae)}function $e(D){var G=D?"remove":"add";C(f,G,"mousemove",Pe)}function je(D){var G=D?"remove":"add";c[G](f,"selectstart",Se),c[G](f,"click",Se)}function Me(){fe(!0),Ae({})}function Se(D){le&&D.preventDefault()}function Ve(D){O=D.clientX,$=D.clientY;var G=I(D)!==1||D.metaKey||D.ctrlKey;if(!G){var Q=D.target,de=Ie(Q);de&&(le=de,$e(),D.type==="mousedown"&&(N(Q)?Q.focus():D.preventDefault()))}}function Pe(D){if(le){if(I(D)===0){Ae({});return}if(!(D.clientX!==void 0&&Math.abs(D.clientX-O)<=(A.slideFactorX||0)&&D.clientY!==void 0&&Math.abs(D.clientY-$)<=(A.slideFactorY||0))){if(A.ignoreInputTextSelection){var G=k("clientX",D)||0,Q=k("clientY",D)||0,de=u.elementFromPoint(G,Q);if(N(de))return}var ve=le;$e(!0),je(),ge(),ie(ve),s.add(Y||E,"gu-transit"),me(),K(),ue=0,ot(D)}}}function Ie(D){if(!(U.dragging&&V)&&!ye(D)){for(var G=D;F(D)&&ye(F(D))===!1;)if(A.invalid(D,G)||(D=F(D),!D))return;var Q=F(D);if(Q&&!A.invalid(D,G)){var de=A.moves(D,Q,G,_(D));if(de)return{item:D,source:Q}}}}function pe(D){return!!Ie(D)}function j(D){var G=Ie(D);G&&ie(G)}function ie(D){pt(D.item,D.source)&&(Y=D.item.cloneNode(!0),U.emit("cloned",Y,D.item,"copy")),B=D.source,E=D.item,L=H=_(D.item),U.dragging=!0,U.emit("drag",E,B)}function te(){return!1}function ge(){if(U.dragging){var D=Y||E;ze(D,F(D))}}function Te(){le=!1,$e(!0),je(!0)}function Ae(D){if(Te(),!!U.dragging){var G=Y||E,Q=k("clientX",D)||0,de=k("clientY",D)||0,ve=M(V,Q,de),we=nt(ve,Q,de);we&&(Y&&A.copySortSource||!Y||we!==B)?ze(G,we):A.removeOnSpill?Ue():Je()}}function ze(D,G){var Q=F(D);Y&&A.copySortSource&&G===B&&Q.removeChild(E),Ke(G)?U.emit("cancel",D,B):U.emit("drop",D,G,B,H),Ze()}function Ue(){if(U.dragging){var D=Y||E,G=F(D);G&&G.removeChild(D),U.emit(Y?"cancel":"remove",D,G,B),Ze()}}function Je(D){if(U.dragging){var G=arguments.length>0?D:A.revertOnSpill,Q=Y||E,de=F(Q),ve=Ke(de);ve===!1&&G&&(Y?de&&de.removeChild(Y):B.insertBefore(Q,L)),ve||G?U.emit("cancel",Q,B,B):U.emit("drop",Q,de,B,H),Ze()}}function Ze(){var D=Y||E;Te(),be(),Oe(),D&&s.rm(D,"gu-transit"),J&&clearTimeout(J),U.dragging=!1,ne&&U.emit("out",D,ne,B),U.emit("dragend",D,ue),B=E=Y=L=H=J=ne=null}function Ke(D,G){var Q;return G!==void 0?Q=G:V?Q=H:Q=_(Y||E),D===B&&Q===L}function nt(D,G,Q){for(var de=D;de&&!ve();)de=F(de);return de;function ve(){var we=ye(de);if(we===!1)return!1;var rt=Ne(de,D),Ye=qe(de,rt,G,Q),et=Ke(de,Ye);return et?!0:A.accepts(E,de,B,Ye)}}function ot(D){if(!V)return;D.preventDefault();var G=k("clientX",D)||0,Q=k("clientY",D)||0;V.style.left=G-2+"px",V.style.top=Q-2+"px";var de=Y||E,ve=M(V,G,Q),we=nt(ve,G,Q),rt=we!==null&&we!==ne;(rt||we===null)&&(Qe(),ne=we,st()),ke(ve,Q);var Ye=F(de);if(we===B&&Y&&!A.copySortSource){Ye&&Ye.removeChild(de);return}var et,at=Ne(we,ve);if(Z=Ce(at,we),at!==null)et=qe(we,at,G,Q);else if(A.revertOnSpill===!0&&!Y)et=L,we=B;else{Y&&Ye&&Ye.removeChild(de),Y&&R&&(R.style.display="none");return}R.style.display="block",it(et,de,rt),et?Fe(at,et):_e(we);function He(Le){U.emit(Le,de,ne,B)}function st(){rt&&He("over")}function Qe(){ne&&He("out")}}function it(D,G,Q){(D===G||D===_(G))&&(H=_(G)),(D===null&&Q||D!==G&&D!==_(G))&&(H=D)}function P(D){s.rm(D,"gu-hide")}function W(D){U.dragging&&s.add(D,"gu-hide")}function K(){V||(V=document.createElement("div"),V.style="background: grey; color: white; height: 24px; text-align: center; padding: 3px 10px; min-width: 100px;border-radius: 4px; box-shadow: 0 0 6px grey;",V.innerHTML=A.getMirrorText&&A.getMirrorText(E)||"控件",s.add(V,"gu-mirror"),A.mirrorContainer.appendChild(V),C(f,"add","mousemove",ot),s.add(A.mirrorContainer,"gu-unselectable"),U.emit("cloned",V,E,"mirror"))}function me(){if(R=document.createElement("div"),s.add(R,"gu-insertion"),E){var D=E.getBoundingClientRect();R.style.left=D.left+"px",R.style.top=D.top+"px"}Z=!1,A.mirrorContainer.appendChild(R)}function be(){V&&(s.rm(A.mirrorContainer,"gu-unselectable"),C(f,"remove","mousemove",ot),F(V).removeChild(V),V=null)}function Oe(){R&&(F(R).removeChild(R),R=null)}function Ne(D,G){for(var Q=G;Q!==D&&F(Q)!==D;)Q=F(Q);return Q===f?null:Q}function Ce(D,G){if(!G)return Z;var Q=D||G&&G.lastElementChild;if(!Q)return!0;var de=getComputedStyle(D),ve=/^inline/.test(de.getPropertyValue("display"))||/^(left|right)$/.test(de.getPropertyValue("float"));if(ve)return!0;if(G){var we=getComputedStyle(G),rt=we.getPropertyValue("display");if(/flex$/.test(rt)){var Ye=we.getPropertyValue("flex-direction")||"row";if(Ye==="row"||Ye==="row-reverse")return!Be(G)}return!1}return!0}function Be(D){if(!D.children||!D.children.length)return!1;for(const G of Array.from(D.children)){const de=(G.className&&G.className.split(" ")||[]).filter(ve=>/^col(-md|-xl|-el){0,1}-([1-9]|10|11|12)$/.test(ve));if(!de.length)return!1;for(const ve of de){const we=ve.slice(ve.lastIndexOf("-")+1);if(parseInt(we,10)!==12)return!1}}return!0}function Fe(D,G){const Q=G.getBoundingClientRect();if(R.style.left=Q.left+"px",R.style.top=Q.top+"px",Z){if(R.style.height=Q.height+"px",R.style.width="4px",D){const de=D.getBoundingClientRect();de.top!==Q.top&&(R.style.left=de.right+"px",R.style.top=de.top+"px",R.style.height=de.height+"px")}}else if(R.style.height="4px",R.style.width=Q.width+"px",ee){const de=ee.getBoundingClientRect();Q.top<de.top&&(R.style.display="none")}G===E&&E&&(R.style.display="none")}function _e(D){H=null;var G=D.lastElementChild;if(G){var Q=G.getBoundingClientRect();Z?(R.style.left=Q.right+"px",R.style.top=Q.top+"px",R.style.height=Q.height+"px",R.style.width="4px"):(R.style.left=Q.left+"px",R.style.top=Q.bottom+"px",R.style.height="4px",R.style.width=Q.width+"px"),G===E&&E&&(R.style.display="none")}else R.style.display="none"}function ke(D,G){if(!A.mirrorContainer.contains(D)||!window.scrollContainerList||!Array.from(window.scrollContainerList).length||(ee=p(D),!ee||!ee.contains(D)))return;const Q=document.querySelector(".dgComponentSelected"),de=ee.getBoundingClientRect();if(G-30<de.top&&ee.scrollTop>0){let ve=ee.scrollTop<10?ee.scrollTop:10;ee.scrollBy(0,-1*ve),Q&&ee.contains(Q)&&(ue=ue+-1*ve)}if(G+30>de.bottom&&ee.scrollTop<ee.scrollHeight-ee.clientHeight){const ve=ee.scrollHeight-ee.clientHeight-ee.scrollTop;let we=ve<10?ve:10;ee.scrollBy(0,we),Q&&ee.contains(Q)&&(ue=ue+we)}}function qe(D,G,Q,de){var ve=A.direction==="horizontal",we=A.direction==="mixed",rt=G!==D?et():Ye();return rt;function Ye(){var He=D.children.length,st,Qe,Le;for(st=0;st<He;st++)if(Qe=D.children[st],Le=Qe.getBoundingClientRect(),ve&&Le.left+Le.width/2>Q||!we&&!ve&&Le.top+Le.height/2>de||we&&Le.left+Le.width>Q&&Le.top+Le.height>de)return Qe;return null}function et(){var He=G.getBoundingClientRect();if(we){var st=de-He.top,Qe=Q-He.left,Le=He.bottom-de,bt=He.right-Q,Ct=Math.min(Qe,bt,st,Le),he;return Z?he=bt<Qe:he=Le===Ct||bt===Ct||Qe===Ct,at(he)}return at(ve?Q>He.left+S(He)/2:de>He.top+h(He)/2)}function at(He){return He?_(G):G}}function pt(D,G){return typeof A.copy=="boolean"?A.copy:A.copy(D,G)}}function p(w){const x=Array.from(window.scrollContainerList);if(x.length===1){const V=Array.from(window.scrollContainerList)[0];return document.getElementById(V)}const T=y(x);for(const V of T)if(V.contains(w))return V;return null}function y(w){const x=[];return w.forEach(T=>{const V=document.getElementById(T);V&&x.push(V)}),x.sort((T,V)=>T.contains(V)?1:V.contains(T)?-1:0),x}function C(w,x,T,V){var B={mouseup:"touchend",mousedown:"touchstart",mousemove:"touchmove"},E={mouseup:"pointerup",mousedown:"pointerdown",mousemove:"pointermove"},O={mouseup:"MSPointerUp",mousedown:"MSPointerDown",mousemove:"MSPointerMove"};a.navigator.pointerEnabled?c[x](w,E[T],V):a.navigator.msPointerEnabled?c[x](w,O[T],V):(c[x](w,B[T],V),c[x](w,T,V))}function I(w){if(w.touches!==void 0)return w.touches.length;if(w.which!==void 0&&w.which!==0)return w.which;if(w.buttons!==void 0)return w.buttons;var x=w.button;if(x!==void 0)return x&1?1:x&2?3:x&4?2:0}function M(w,x,T){w=w||{};var V=w.className||"",B;return w.className+=" gu-hide",B=u.elementFromPoint(x,T),w.className=V,B}function g(){return!1}function v(){return!0}function S(w){return w.width||w.right-w.left}function h(w){return w.height||w.bottom-w.top}function F(w){return w.parentNode===u?null:w.parentNode}function N(w){return w.tagName==="INPUT"||w.tagName==="TEXTAREA"||w.tagName==="SELECT"||m(w)}function m(w){return!w||w.contentEditable==="false"?!1:w.contentEditable==="true"?!0:m(F(w))}function _(w){return w.nextElementSibling||x();function x(){var T=w;do T=T.nextSibling;while(T&&T.nodeType!==1);return T}}function b(w){return w.targetTouches&&w.targetTouches.length?w.targetTouches[0]:w.changedTouches&&w.changedTouches.length?w.changedTouches[0]:w}function k(w,x){var T=b(x),V={pageX:"clientX",pageY:"clientY"};return w in V&&!(w in T)&&V[w]in T&&(w=V[w]),T[w]}i.exports=d}).call(this,typeof dt<"u"?dt:typeof self<"u"?self:typeof window<"u"?window:{})},{"./classes":1,"contra/emitter":5,crossvent:6}],3:[function(o,i,r){i.exports=function(l,c){return Array.prototype.slice.call(l,c)}},{}],4:[function(o,i,r){var a=o("ticky");i.exports=function(c,s,u){c&&a(function(){c.apply(u||null,s||[])})}},{ticky:10}],5:[function(o,i,r){var a=o("atoa"),l=o("./debounce");i.exports=function(s,u){var f=u||{},d={};return s===void 0&&(s={}),s.on=function(p,y){return d[p]?d[p].push(y):d[p]=[y],s},s.once=function(p,y){return y._once=!0,s.on(p,y),s},s.off=function(p,y){var C=arguments.length;if(C===1)delete d[p];else if(C===0)d={};else{var I=d[p];if(!I)return s;I.splice(I.indexOf(y),1)}return s},s.emit=function(){var p=a(arguments);return s.emitterSnapshot(p.shift()).apply(this,p)},s.emitterSnapshot=function(p){var y=(d[p]||[]).slice(0);return function(){var C=a(arguments),I=this||s;if(p==="error"&&f.throws!==!1&&!y.length)throw C.length===1?C[0]:C;return y.forEach(function(g){f.async?l(g,C,I):g.apply(I,C),g._once&&s.off(p,g)}),s}},s}},{"./debounce":4,atoa:3}],6:[function(o,i,r){(function(a){var l=o("custom-event"),c=o("./eventmap"),s=a.document,u=p,f=C,d=[];a.addEventListener||(u=y,f=I),i.exports={add:u,remove:f,fabricate:M};function p(F,N,m,_){return F.addEventListener(N,m,_)}function y(F,N,m){return F.attachEvent("on"+N,v(F,N,m))}function C(F,N,m,_){return F.removeEventListener(N,m,_)}function I(F,N,m){var _=S(F,N,m);if(_)return F.detachEvent("on"+N,_)}function M(F,N,m){var _=c.indexOf(N)===-1?k():b();F.dispatchEvent?F.dispatchEvent(_):F.fireEvent("on"+N,_);function b(){var w;return s.createEvent?(w=s.createEvent("Event"),w.initEvent(N,!0,!0)):s.createEventObject&&(w=s.createEventObject()),w}function k(){return new l(N,{detail:m})}}function g(F,N,m){return function(b){var k=b||a.event;k.target=k.target||k.srcElement,k.preventDefault=k.preventDefault||function(){k.returnValue=!1},k.stopPropagation=k.stopPropagation||function(){k.cancelBubble=!0},k.which=k.which||k.keyCode,m.call(F,k)}}function v(F,N,m){var _=S(F,N,m)||g(F,N,m);return d.push({wrapper:_,element:F,type:N,fn:m}),_}function S(F,N,m){var _=h(F,N,m);if(_){var b=d[_].wrapper;return d.splice(_,1),b}}function h(F,N,m){var _,b;for(_=0;_<d.length;_++)if(b=d[_],b.element===F&&b.type===N&&b.fn===m)return _}}).call(this,typeof dt<"u"?dt:typeof self<"u"?self:typeof window<"u"?window:{})},{"./eventmap":7,"custom-event":8}],7:[function(o,i,r){(function(a){var l=[],c="",s=/^on/;for(c in a)s.test(c)&&l.push(c.slice(2));i.exports=l}).call(this,typeof dt<"u"?dt:typeof self<"u"?self:typeof window<"u"?window:{})},{}],8:[function(o,i,r){(function(a){var l=a.CustomEvent;function c(){try{var s=new l("cat",{detail:{foo:"bar"}});return s.type==="cat"&&s.detail.foo==="bar"}catch{}return!1}i.exports=c()?l:typeof document<"u"&&typeof document.createEvent=="function"?function(u,f){var d=document.createEvent("CustomEvent");return f?d.initCustomEvent(u,f.bubbles,f.cancelable,f.detail):d.initCustomEvent(u,!1,!1,void 0),d}:function(u,f){var d=document.createEventObject();return d.type=u,f?(d.bubbles=!!f.bubbles,d.cancelable=!!f.cancelable,d.detail=f.detail):(d.bubbles=!1,d.cancelable=!1,d.detail=void 0),d}}).call(this,typeof dt<"u"?dt:typeof self<"u"?self:typeof window<"u"?window:{})},{}],9:[function(o,i,r){var a=i.exports={},l,c;function s(){throw new Error("setTimeout has not been defined")}function u(){throw new Error("clearTimeout has not been defined")}(function(){try{typeof setTimeout=="function"?l=setTimeout:l=s}catch{l=s}try{typeof clearTimeout=="function"?c=clearTimeout:c=u}catch{c=u}})();function f(h){if(l===setTimeout)return setTimeout(h,0);if((l===s||!l)&&setTimeout)return l=setTimeout,setTimeout(h,0);try{return l(h,0)}catch{try{return l.call(null,h,0)}catch{return l.call(this,h,0)}}}function d(h){if(c===clearTimeout)return clearTimeout(h);if((c===u||!c)&&clearTimeout)return c=clearTimeout,clearTimeout(h);try{return c(h)}catch{try{return c.call(null,h)}catch{return c.call(this,h)}}}var p=[],y=!1,C,I=-1;function M(){!y||!C||(y=!1,C.length?p=C.concat(p):I=-1,p.length&&g())}function g(){if(!y){var h=f(M);y=!0;for(var F=p.length;F;){for(C=p,p=[];++I<F;)C&&C[I].run();I=-1,F=p.length}C=null,y=!1,d(h)}}a.nextTick=function(h){var F=new Array(arguments.length-1);if(arguments.length>1)for(var N=1;N<arguments.length;N++)F[N-1]=arguments[N];p.push(new v(h,F)),p.length===1&&!y&&f(g)};function v(h,F){this.fun=h,this.array=F}v.prototype.run=function(){this.fun.apply(null,this.array)},a.title="browser",a.browser=!0,a.env={},a.argv=[],a.version="",a.versions={};function S(){}a.on=S,a.addListener=S,a.once=S,a.off=S,a.removeListener=S,a.removeAllListeners=S,a.emit=S,a.prependListener=S,a.prependOnceListener=S,a.listeners=function(h){return[]},a.binding=function(h){throw new Error("process.binding is not supported")},a.cwd=function(){return"/"},a.chdir=function(h){throw new Error("process.chdir is not supported")},a.umask=function(){return 0}},{}],10:[function(o,i,r){(function(a){var l=typeof a=="function",c;l?c=function(s){a(s)}:c=function(s){setTimeout(s,0)},i.exports=c}).call(this,o("timers").setImmediate)},{timers:11}],11:[function(o,i,r){(function(a,l){var c=o("process/browser.js").nextTick,s=Function.prototype.apply,u=Array.prototype.slice,f={},d=0;r.setTimeout=function(){return new p(s.call(setTimeout,window,arguments),clearTimeout)},r.setInterval=function(){return new p(s.call(setInterval,window,arguments),clearInterval)},r.clearTimeout=r.clearInterval=function(y){y.close()};function p(y,C){this._id=y,this._clearFn=C}p.prototype.unref=p.prototype.ref=function(){},p.prototype.close=function(){this._clearFn.call(window,this._id)},r.enroll=function(y,C){clearTimeout(y._idleTimeoutId),y._idleTimeout=C},r.unenroll=function(y){clearTimeout(y._idleTimeoutId),y._idleTimeout=-1},r._unrefActive=r.active=function(y){clearTimeout(y._idleTimeoutId);var C=y._idleTimeout;C>=0&&(y._idleTimeoutId=setTimeout(function(){y._onTimeout&&y._onTimeout()},C))},r.setImmediate=typeof a=="function"?a:function(y){var C=d++,I=arguments.length<2?!1:u.call(arguments,1);return f[C]=!0,c(function(){f[C]&&(I?y.apply(null,I):y.call(null),r.clearImmediate(C))}),C},r.clearImmediate=typeof l=="function"?l:function(y){delete f[y]}}).call(this,o("timers").setImmediate,o("timers").clearImmediate)},{"process/browser.js":9,timers:11}]},{},[2])(2)})})(kr);const Wn=new Map([["appearance",mt],["column","columnOption"]]);function Vr(e,t,o){var d;const i=o.parentComponentInstance,r=i.schema.type,a=String(((d=i.schema.appearance)==null?void 0:d.class)||"").split(" "),l=r==="section"||r==="tab-page",c=a.includes("f-page-content-nav"),s=a.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+=c?"f-struct-data-grid-in-nav f-struct-wrapper f-utils-fill-flex-column":"",f+=s?"f-struct-data-grid f-struct-wrapper":"",u.appearance={class:f},u.contents=[t],u}function Ir(e,t,o){const i=o.parentComponentInstance,r=String(i.schema.appearance.class||"").split(" "),a=r.includes("f-page-content-nav"),l=r.includes("f-page-main"),c=e.getSchemaByType("section");c.id=`${t.id}-section`;let s="";return s+=a?"f-section-in-nav ":"",s+=l?"f-section-in-managelist ":"",s+="f-section-grid",c.appearance={class:s},c.contents=[t],c}function Nr(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 qn(e,t,o){const r=o.parentComponentInstance.schema.type,a=r==="section"||r==="tab-page";t.appearance={class:"f-component-grid"};const c=(a?Nr:Ir)(e,t,o);return Vr(e,c,o)}const zn={$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},disabled:{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","columns"]},zt={autoCheckChildren:{type:Boolean,default:!1},columns:{type:Array,default:[]},columnOption:{type:Object},commandOption:{type:Object,default:{enable:!1,commands:[]}},data:{type:Array,default:[]},disabled:{type:Boolean,default:!1},disabledField:{type:String,default:"disabled"},displayField:{type:String,default:"name"},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},hierarchy:{type:Object,default:{cascadeOption:{autoCheckChildren:!1,autoCheckParent:!1,selectionRange:"All"},parentIdField:"parent"}},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},newDataItem:{type:Function,default:()=>{}},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},showHeader:{type:Boolean,default:!0},showHorizontalLines:{type:Boolean,default:!0},showLines:{type:Boolean,default:!1},showOptions:{type:Boolean,default:!1},showScrollBar:{type:String,default:"auto"},showSetting:{type:Boolean,default:!1},showStripe:{type:Boolean,default:!0},showTreeNodeIcons:{type:Boolean,default:!1},showVerticallLines:{type:Boolean,default:!1},treeNodeIconsData:{type:[Object,String],default:{}},width:{type:Number,default:-1},virtualized:{type:Boolean,default:!1}},Br=Ge(zt,zn,Wn,qn),Or=Pi(),Er=$i(),Un=Object.assign({},zt,{componentId:{type:String,default:""}}),$r=Ge(Un,zn,Wn,qn),jr=sn();function Pr(e,t,o,i,r,a,l,c,s,u,f,d,p,y,C,I,M){const{calculateCellPositionInRow:g}=a,{columnContext:v,hasLeftFixedColumn:S,hasRightFixedColumn:h}=l,{gridDataStyle:F,leftFixedGridDataStyle:N,rightFixedGridDataStyle:m}=y,{renderDataRow:_}=lr(e,t,v,M,c,s,u,f,d,p,y),b=[_];function k(B,E){const O=g(B);return M.value.filter($=>$.visible!==!1).map($=>b[$.type]($,O,E))}function w(){return n.createVNode("div",{ref:i,class:"fv-grid-content-left-fixed"},[n.createVNode("div",{class:"fv-grid-data",style:N.value},[k(v.value.leftColumns.filter(B=>B.visible),"left")])])}function x(){return n.createVNode("div",{ref:o,class:"fv-grid-content-primary"},[n.createVNode("div",{class:"fv-grid-data",style:F.value},[k(v.value.primaryColumns.filter(B=>B.visible),"primary")])])}function T(){return n.createVNode("div",{ref:r,class:"fv-grid-content-right-fixed"},[n.createVNode("div",{class:"fv-grid-data",style:m.value},[k(v.value.rightColumns.filter(B=>B.visible),"right")])])}function V(){const B=[];return S.value&&B.push(w()),B.push(x()),h.value&&B.push(T()),B}return{renderDataArea:V}}const Et=n.defineComponent({name:"FTreeGrid",props:zt,emits:["selectionChange","clickRow","expandNode"],setup(e,t){var pt,D;const i=((pt=e.rowOption)==null?void 0:pt.height)||28,r=n.ref(20),a=n.ref(e.columns),l=X.useIdentify(e),c=n.ref(),s=n.ref(),u=n.ref(),f=n.ref(),d=n.ref(),p=n.ref([]),y=n.ref(!1),C=n.ref(((D=e.rowOption)==null?void 0:D.wrapContent)||!1),I=X.useGroupData(e,l),M=X.useFilter(),g=X.useHierarchy(e),{showLoading:v,renderLoading:S}=X.useLoading(e,c),h=X.useDataView(e,new Map,M,g,l),F=X.useSelection(e,h,l,p,t),N=X.useSelectHierarchyItem(e,p,l,F,t),m=n.computed(()=>e.disabled),_=n.computed(()=>e.virtualized?Math.min(h.dataView.value.length,r.value):h.dataView.value.length),{containerStyleObject:b}=X.useDataViewContainerStyle(e),k=X.useCommandColumn(e),{applyCommands:w}=k;w(a);const x=X.useColumn(e),T=X.useSort(e),{applyColumnSorter:V,columnContext:B,updateColumnRenderContext:E}=x;V(h,T);const O=X.useGroupColumn(e,B),$=X.useRow(e,t,F,l),L=X.useEdit(e,t,l,$),H=X.useVisualDataBound(e),Y=X.useVisualDataCell(e,L,H),J=X.useVisualDataRow(e,L,g,l,H,Y),ne=X.useVisualData(e,a,h,_,0,J),{getVisualData:le}=ne,R=X.useCellPosition(e,B),Z=X.useSidebar(e,F),{sidebarWidth:ue}=Z,ee=X.useVirtualScroll(e,h,p,B,ne,_,0,ue),{onWheel:A,dataGridWidth:U,viewPortHeight:ye,viewPortWidth:fe,resetScroll:$e,updateVisibleRowsOnLatestVisibleScope:je}=ee,Me=X.useFitColumn(e,B,s,fe,O),{calculateColumnsSize:Se}=Me,Ve=X.useFilterHistory(),Pe=X.useColumnFilter(s,d,h,Ve,ee),Ie=X.useDragColumn(e,t,x,h,O,I,ee),pe=n.computed(()=>({"fv-grid":!0,"fv-grid-bordered":e.showBorder,"fv-grid-horizontal-bordered":e.showHorizontalLines,"fv-datagrid-strip":e.showStripe})),j=n.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":y.value,"fv-grid-wrap-content":C.value})),{renderDataArea:ie}=Pr(e,t,u,f,d,R,x,h,L,g,$,F,N,ee,ne,H,p),{renderGridHeader:te,renderGridColumnResizeOverlay:ge,shouldShowHeader:Te}=X.getColumnHeader(e,t,s,f,d,x,h,Ie,Pe,M,Ve,Me,O,F,Z,T,ee,fe,p),{renderDataGridSidebar:Ae}=X.getSidebar(e,$,F,Z,ee),{renderDisableMask:ze}=X.getDisableMask(),{renderHorizontalScrollbar:Ue}=X.getHorizontalScrollbar(e,s,ee),{renderVerticalScrollbar:Je}=X.getVerticalScrollbar(e,s,ee);function Ze(){var G,Q,de;if(s.value&&s.value.clientHeight>0&&((G=s.value)==null?void 0:G.clientWidth)>0){const ve=Math.ceil(s.value.clientHeight/i);ve>r.value&&(r.value=ve,je()),ye.value=((Q=u.value)==null?void 0:Q.clientHeight)||0,U.value=((de=s.value)==null?void 0:de.clientWidth)||0,Se()}}n.onMounted(()=>{s.value&&(r.value=Math.max(Math.ceil(s.value.clientHeight/i),r.value),p.value=le(0,_.value+0-1),Tt.useResizeObserver(s.value,Ze),Se(),n.nextTick(()=>{s.value&&(U.value=s.value.clientWidth),u.value&&(fe.value=u.value.clientWidth,ye.value=u.value.clientHeight)})),v.value&&S()}),n.onUnmounted(()=>{}),n.watch(fe,()=>{s.value&&Se()});function Ke(){const G=F.getSelectionRow();return G?G.dataIndex-1:-1}function nt(){const G=Ke();h.insertNewDataItem(G),p.value=le(0,_.value+0-1)}function ot(){const G=Ke();h.insertNewChildDataItem(G),p.value=le(0,_.value+0-1)}function it(){const G=Ke(),Q=N.getNextSelectableHierarchyItemId(G);h.removeHierarchyDataItem(G),p.value=le(0,_.value+0-1),Q&&F.selectItemById(Q)}function P(G){L.onEditingRow(G)}function W(G){L.acceptEditingRow(G)}function K(G){L.cancelEditingRow(G)}function me(G){G&&(a.value=G,w(a),E(a.value),V(h,T),Se())}function be(G){G&&(h.load(G),$e())}function Oe(G){F.selectItemById(G)}function Ne(G){const Q=p.value.find(de=>de.raw[l.idField.value]===G);Q&&$.clickRowItem(Q)}function Ce(G){F.selectItemByIds(G)}function Be(){return F.getSelectedItems()}function Fe(){F.clearSelection()}const _e=n.computed(()=>!p.value||!p.value.length),{renderEmpty:ke}=X.getEmpty(t);function qe(){return F.getSelectionRow()}return t.expose({addNewDataItem:nt,addNewChildDataItem:ot,removeDataItem:it,editDataItem:P,acceptDataItem:W,cancelDataItem:K,updateColumns:me,updateDataSource:be,selectItemById:Oe,selectItemByIds:Ce,getSelectedItems:Be,clearSelection:Fe,getSelectionRow:qe,clickRowItemById:Ne}),()=>n.createVNode("div",{ref:c,class:pe.value,style:b.value,onWheel:A},[s.value&&Te.value&&te(),n.createVNode("div",{ref:s,class:j.value,onMouseover:()=>y.value=!0,onMouseleave:()=>y.value=!1},[s.value&&Ae(p),s.value&&ie(),s.value&&_e.value&&ke(),s.value&&Ue(),s.value&&Je()]),ge(),m.value&&ze()])}}),Rr={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}},Dr={},Hr={},Ar={id:{type:String}},Lr=n.defineComponent({name:"FDesignerPlaceholder",props:Ar,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 Gr(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!n.isVNode(e)}const Ut=n.defineComponent({name:"FDesignerItem",props:Rr,emits:["selectionChange"],setup(e,t){const o=n.ref(`${e.modelValue.id}-component`),i=n.ref(e.canMove),r=n.ref(e.canDelete),a=n.ref(!1),l=n.ref(e.modelValue),c=n.ref(e.componentId||""),s=n.ref(""),u=n.ref(""),f=n.ref(e.customClass),d=n.ref(),p=n.inject("canvas-dragula"),y=n.ref(),C=n.inject("design-item-context"),I={designerItemElementRef:d,componentInstance:y,schema:l.value,parent:C,setupContext:t};n.provide("design-item-context",I);const M=n.inject("useFormSchema"),g=n.computed(()=>{var $;const B=e.modelValue.appearance&&e.modelValue.appearance.class||"",E=(($=y.value)==null?void 0:$.getCustomButtons)&&y.value.getCustomButtons();let O={"farris-component":!0,"flex-fill":l.value.id==="root-component","position-relative":i.value&&r.value||(E==null?void 0:E.length),"farris-nested":a.value,"can-move":i.value,"d-none":d.value&&d.value.classList.contains("d-none"),dgComponentSelected:d.value&&d.value.classList.contains("dgComponentSelected"),dgComponentFocused:d.value&&d.value.classList.contains("dgComponentFocused")};return O[`farris-component-${l.value.type}`]=!0,O=xe.getCustomClass(O,B),O=xe.getCustomClass(O,u.value),O=xe.getCustomClass(O,f.value),O}),v=n.computed(()=>{const B={},E=e.modelValue.appearance&&e.modelValue.appearance.style||"";return E&&E.split(";").reduce((O,$)=>{const[L,H]=$.split(":");return O[L]=H,O},B),s.value&&s.value.split(";").reduce((O,$)=>{const[L,H]=$.split(":");return L&&(O[L]=H),O},B),B});function S(B,E){var L,H;if(B&&(B.preventDefault(),B.stopPropagation()),y.value.triggerBelongedComponentToDeleteWhenDeleted){const Y=y.value.getBelongedComponentInstance(y);if(Y&&Y.parent){const J=n.ref(Y==null?void 0:Y.parent),ne=J.value.contents.findIndex(le=>le.id===Y.schema.id);(H=(L=J.value)==null?void 0:L.contents)==null||H.splice(ne,1),xt.value++}return}y.value.onRemoveComponent();let O=C,$=Y=>Y.id===E.id;if(E.type==="component"&&(O=C==null?void 0:C.parent,$=Y=>Y.component===E.id),O&&O.schema.contents){const Y=O.schema.contents.findIndex($);O.schema.contents.splice(Y,1),xt.value++,t.emit("selectionChange")}}function h(B){return r.value&&n.createVNode("div",{role:"button",class:"btn component-settings-button",title:"删除",ref:"removeComponent",onClick:E=>{S(E,B)}},[n.createVNode("i",{class:"f-icon f-icon-yxs_delete"},null)])}function F(){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 N(){var E;const B=((E=y.value)==null?void 0:E.getCustomButtons)&&y.value.getCustomButtons();return B&&!!B.length&&B.map(O=>n.createVNode("div",{role:"button",class:`btn component-settings-button ${O.class||""}`,title:O.title,ref:O.id,onClick:$=>O.onClick&&O.onClick($)},[n.createVNode("i",{class:O.icon},null)]))}function m(B){return n.createVNode("div",{class:"component-btn-group","data-noattach":"true"},[n.createVNode("div",null,[h(B),F(),N()])])}function _(B,E,O,$){t.emit("selectionChange",B,E,O,$)}function b(B){let E;const O=B.type,$=Dr[O],L=Hr[O],H=L?L(B):{};H.customClass=e.ignore?H.customClass:"",H.componentId=c.value,H.id=B.id;const Y=B.contents&&B.contents.length===0;return B.contents&&!!B.contents.length&&$?n.createVNode($,n.mergeProps({ref:y},H),Gr(E=B.contents.map(ne=>n.createVNode(Ut,{key:ne.id,modelValue:ne,"onUpdate:modelValue":le=>ne=le,componentId:c.value,onSelectionChange:_},null)))?E:{default:()=>[E]}):$?Y?n.createVNode($,n.mergeProps({ref:y},H),{default:()=>[n.createVNode(Lr,null,null)]}):n.createVNode($,n.mergeProps({ref:y},H),null):n.createVNode("div",null,null)}function k(B){if(B.type==="component-ref"){let O=M==null?void 0:M.getFormSchema().module.components.find($=>$.id===B.component);if(O)return n.createVNode(Ut,{key:O.id,modelValue:O,"onUpdate:modelValue":$=>O=$,componentId:O.id,onSelectionChange:_},null)}}n.watch(()=>e.modelValue,B=>{l.value=B,o.value=`${B.id}-component`});function w(B){window.scrollContainerList||(window.scrollContainerList=new Set);const E=B.getAttribute("id");E&&window.scrollContainerList.add(E)}function x(B){const E=B==null?void 0:B.target;w(E),Tr(E)}function T(){var B,E;(E=(B=l.value)==null?void 0:B.contents)!=null&&E.length&&d.value&&d.value.addEventListener("scroll",x)}n.onMounted(()=>{if(d.value&&y.value&&y.value.schema){const B=d.value.querySelector(`[data-dragref='${y.value.schema.id}-container']`);p&&B&&p.attachComponents(B,l.value),a.value=y.value.canNested!==void 0?y.value.canNested:a.value,r.value=y.value.canDelete!==void 0?y.value.canDelete:r.value,i.value=y.value.canMove!==void 0?y.value.canMove:i.value,s.value=y.value.styles||"",u.value=y.value.designerClass||"",d.value&&(d.value.componentInstance=y,d.value.designItemContext=I),y.value.belongedComponentId=c.value}T(),xt.value++}),n.onBeforeUnmount(()=>{d.value&&d.value.removeEventListener("scroll",x)});function V(B){B&&(B.preventDefault(),B.stopPropagation());let E=I.designerItemElementRef;const O=d.value;if(O){const $=document.getElementsByClassName("dgComponentFocused");$&&$.length===1&&$[0]===d.value||(Array.from($).forEach(H=>H.classList.remove("dgComponentFocused")),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(H=>H.classList.remove("dgComponentSelected")),O.classList.add("dgComponentFocused"),t.emit("selectionChange",l.value.type,l.value,c.value,y.value),y.value.getDraggableDesignItemElement&&(E=y.value.getDraggableDesignItemElement(I),E&&E.value&&E.value.classList.add("dgComponentSelected")))}Gn(E==null?void 0:E.value)}return()=>l.value.type==="component-ref"?k(l.value):n.createVNode("div",{id:`${l.value.id}-design-item`,ref:d,class:g.value,style:v.value,onClick:V},[m(l.value),b(l.value)])}});function Yn(e,t,o,i,r="data-grid-column"){const{columnContext:a,hasLeftFixedColumn:l,hasRightFixedColumn:c}=o,{gridHeaderColumnsStyle:s,leftFixedGridHeaderColumnsStyle:u,rightFixedGridHeaderColumnsStyle:f}=i,d=a.value.defaultColumnWidth,p=32,y=new Map([[0,0]]);function C(k,w){const x=y.get(w)||0,T={height:`${k.depth*p}px`,left:`${k.left}px`,top:`${(k.layer-1)*p}px`,width:`${k.actualWidth}px`,padding:0};return a.value.headerDepth>1&&(T["line-height"]=`${k.depth*p}px`),y.set(w+1,x+(k.actualWidth||d)),T}const I=n.computed(()=>({"fv-grid-header":!0,"fv-grid-header-group-columns":a.value.headerDepth>1})),M=n.computed(()=>({height:`${a.value.headerDepth*p}px`})),g=function(k){return t.showSetting&&!!k.showSetting};function v(){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 S(k,w,x,T){var V;(V=e==null?void 0:e.setupContext)==null||V.emit("selectionChange",k,w,x,T)}function h(k){var x,T;return"w-100 d-flex align-items-center justify-content-"+(((x=k.column)==null?void 0:x.halign)==="center"?"center":((T=k.column)==null?void 0:T.halign)==="right"?"end pr-2":"start pl-2")}function F(k,w,x){var V;const T=n.ref(k.column);return n.createVNode("div",{class:"fv-grid-header-cell",style:C(k,x)},[n.createVNode(Ut,{modelValue:T.value,"onUpdate:modelValue":B=>T.value=B,customClass:h(k),canAdd:!1,canDelete:!1,canMove:!1,key:(V=T.value)==null?void 0:V.id,type:r,componentId:t.componentId,onSelectionChange:S},null),g(k)&&v(),k.resizable&&n.createVNode("span",{class:"fv-column-resize-bar"},null)])}function N(k){return k.map((w,x)=>{const T=[];if(T.push(F(w,k,x)),w.children&&w.children.length){const V=N(w.children);T.push(...V)}return T})}function m(){return n.createVNode("div",{class:"fv-grid-header-left-fixed"},[n.createVNode("div",{class:"fv-grid-header-columns",style:u.value},[N(a.value.leftHeaderColumns)])])}function _(){return n.createVNode("div",{class:"fv-grid-header-right-fixed"},[n.createVNode("div",{class:"fv-grid-header-columns",style:f.value},[N(a.value.rightHeaderColumns)])])}function b(){return n.createVNode("div",{class:I.value,style:M.value},[l.value&&m(),n.createVNode("div",{class:"fv-grid-header-primary"},[n.createVNode("div",{class:"fv-grid-header-columns",style:s.value},[N(a.value.primaryHeaderColumns)])]),c.value&&_()])}return{renderGridHeader:b}}class Wr extends Bt{constructor(t,o){super(t,o)}getPropertyConfig(t){return this.getBasicPropConfig(t),this.getAppearanceProperties(t),this.getEventPropConfig(t),this.propertyConfig}getBasicPropConfig(t){var l,c,s;const o=(s=(c=(l=this.formSchemaUtils.getFormSchema())==null?void 0:l.module)==null?void 0:c.entity[0])==null?void 0:s.entities[0],i=this.assembleSchemaEntityToTree(o,0),r=this,a=super.getBasicPropConfig(t);this.propertyConfig.categories.basic={description:"Basic Information",title:"基本信息",properties:{...a.properties,dataSource:{description:"绑定数据源",title:"绑定数据源",editor:{type:"combo-tree",textField:"name",valueField:"label",data:i,editable:!1},readonly:!0}},setPropertyRelates(u,f){switch(u&&u.propertyID){case"dataSource":{const d=r.formSchemaUtils.getViewModelById(r.viewModelId);if(d){const p=i.find(y=>y.label===u.propertyValue);d.bindTo=p.bindTo}r.designViewModelUtils.assembleDesignViewModel();break}}}}}getAppearanceProperties(t){var o,i,r;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:"是否适配父组件尺寸",visible:!1},showStripe:{title:"显示条纹",type:"boolean",description:"是否显示条纹"},showBorder:{title:"显示边框",type:"boolean",description:"是否显示边框"}},setPropertyRelates(a,l){switch(a&&a.propertyID){case"useBlankWhenDataIsEmpty":t.emptyDataHeight=t.useBlankWhenDataIsEmpty?36:240;break;case"fields":t.fields=a.propertyValue||[];break}}},this.propertyConfig.categories.pagination={title:"分页",$converter:"/converter/pagination.converter",properties:{enable:{title:"启用分页",type:"boolean",refreshPanelAfterChanged:!0,editor:{readonly:!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:((r=t.pagination)==null?void 0:r.enable)||!1,title:"显示每页记录数",type:"boolean"}}}}getEventPropConfig(t){const o=[{label:"onSelectionChange",name:"行切换事件"},{label:"onClickRow",name:"行点击事件"}],i=this,r=i.eventsEditorUtils.formProperties(t,i.viewModelId,o),a={};a[i.viewModelId]={type:"events-editor",editor:{initialData:r}},this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:a,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(l,c){const s=l.propertyValue;delete t[i.viewModelId],s&&(s.setPropertyRelates=this.setPropertyRelates,i.eventsEditorUtils.saveRelatedParameters(t,i.viewModelId,s.events,s)),t.remoteSort=!!t.columnSorted}}}assembleSchemaEntityToTree(t,o,i,r="",a=[]){const l=r?`${r}/${t.label}`:"/";return a.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(c=>this.assembleSchemaEntityToTree(c,o+1,t,l,a)),a}}function qr(e,t){const o=e.schema,i=n.ref(!0),r=n.ref(!0);function a(f){return f&&f.sourceType==="control"?f.componentCategory==="input":!1}function l(){return!1}function c(){return!1}function s(){return!0}function u(f){return new Wr(f,t).getPropertyConfig(o)}return{canAccepts:a,checkCanDeleteComponent:l,checkCanMoveComponent:c,hideNestedPaddingInDesginerView:s,triggerBelongedComponentToMoveWhenMoved:i,triggerBelongedComponentToDeleteWhenDeleted:r,getPropsConfig:u}}function Xn(e,t,o,i,r){const{getGridHeaderCells:a}=r,l=120,c=50,s=n.computed(()=>{var m;return((m=e.rowNumber)==null?void 0:m.enable)||!1}),u=n.computed(()=>{var m,_;return((m=e.selection)==null?void 0:m.multiSelect)||((_=e.selection)==null?void 0:_.showCheckbox)||!1}),f=n.computed(()=>{var m;return 0+(s.value?((m=e.rowNumber)==null?void 0:m.width)||32:0)+(u.value?c:0)}),d=n.computed(()=>{var m;return(m=e.columnOption)==null?void 0:m.fitColumns}),p=n.computed(()=>{var m;return d.value&&((m=e.columnOption)==null?void 0:m.fitMode)||"none"});function y(m,_,b){const k=parseInt(m.width,10)/100;return b*k}function C(m,_,b){return typeof m.width=="string"?y(m,_,b):m.width||l}function I(m,_){const b=[],k=[];let w=0;m.value.primaryColumns.filter(V=>V.visible).forEach(V=>{typeof V.width=="string"?k.push(V):(V.width=V.width||l,w+=V.width,b.push(V))});const x=_*(b.length/m.value.primaryColumns.filter(V=>V.visible).length);b.forEach(V=>{const B=x*(V.width/w);V.actualWidth=B,m.value.primaryColumnsWidth+=V.actualWidth});const T=_-x;k.forEach(V=>{const B=y(V,m.value,T);V.actualWidth=B,m.value.primaryColumnsWidth+=V.actualWidth})}function M(m,_){const b=[],k=[],w=new WeakMap;let x=0,T=0;if(m.value.primaryColumns.filter(B=>B.visible).forEach(B=>{if(typeof B.width=="string"){const E=y(B,m.value,_);w.set(B,E),x+=E,k.push(B)}else B.width=B.width||l,T+=B.width,b.push(B)}),_-x>T){const B=_-x;k.forEach(E=>{E.actualWidth=w.get(E)||l,m.value.primaryColumnsWidth+=E.actualWidth}),b.forEach(E=>{E.actualWidth=B*(E.width/T),m.value.primaryColumnsWidth+=E.actualWidth})}else I(m,_)}function g(m,_){m.value.primaryColumns.filter(b=>b.visible).forEach(b=>{b.actualWidth=C(b,m.value,_),m.value.primaryColumnsWidth+=b.actualWidth})}const v={expand:M,none:g,percentage:I};function S(m){m.value.leftHeaderColumns=Array.from(a(m.value.leftColumns.filter(_=>_.visible)).values()),m.value.primaryHeaderColumns=Array.from(a(m.value.primaryColumns.filter(_=>_.visible)).values()),m.value.rightHeaderColumns=Array.from(a(m.value.rightColumns.filter(_=>_.visible)).values())}function h(m){m.value.leftColumnsWidth=0,m.value.primaryColumnsWidth=0,m.value.rightColumnsWidth=0,m.value.leftColumns.filter(_=>_.visible).forEach(_=>{m.value.leftColumnsWidth+=_.actualWidth||0}),m.value.primaryColumns.filter(_=>_.visible).forEach(_=>{m.value.primaryColumnsWidth+=_.actualWidth||0}),m.value.rightColumns.filter(_=>_.visible).forEach(_=>{m.value.rightColumnsWidth+=_.actualWidth||0}),m.value=Object.assign({},m.value)}function F(m,_,b){var E;let k=0;const w=m.value.primaryColumns,x=m.value.rightColumns;m.value.rightColumns.filter(O=>O.visible).forEach(O=>{O.actualWidth=C(O,m.value,_),k+=O.actualWidth});const T=b-k,V=v[p.value];if(V&&V(m,T),m.value.primaryColumnsWidth+k<=b)return m.value.primaryColumns=[...w,...x],m.value.primaryColumnsWidth+=k,m.value.rightColumns=[],m.value.rightColumnsWidth=0,!0;const B=new Map;return B.set("primary",[]),B.set("right",[]),m.value.primaryColumns.reduce((O,$)=>{var L,H;return $.fixed==="right"?(L=O.get("right"))==null||L.push($):(H=O.get("primary"))==null||H.push($),O},B),(E=B.get("right"))!=null&&E.length&&(m.value.primaryColumns=[...B.get("primary")||[]],m.value.rightColumns=[...B.get("right")||[]]),m.value.primaryColumnsWidth=0,m.value.rightColumnsWidth=0,!1}function N(){if(o.value){t.value.leftColumnsWidth=0,t.value.primaryColumnsWidth=0,t.value.rightColumnsWidth=0;const m=o.value.clientWidth-f.value;t.value.leftColumns.filter(b=>b.visible).forEach(b=>{b.actualWidth=C(b,t.value,m),t.value.leftColumnsWidth+=b.actualWidth});const _=m-t.value.leftColumnsWidth;if(F(t,m,_))i.value=_;else{t.value.rightColumns.filter(w=>w.visible).forEach(w=>{w.actualWidth=C(w,t.value,m),t.value.rightColumnsWidth+=w.actualWidth});const b=m-t.value.leftColumnsWidth-t.value.rightColumnsWidth,k=v[p.value];k&&k(t,b),i.value=b}S(t),t.value=Object.assign({},t.value)}}return n.watch(()=>{var m;return(m=e.columnOption)==null?void 0:m.fitColumns},(m,_)=>{m!==_&&m&&N()}),n.watch(p,(m,_)=>{m!==_&&d.value&&N()}),{calculateColumnHeaders:S,calculateColumnsSize:N,calculateColumnsWidth:h}}const zr=n.defineComponent({name:"FTreeGridDesign",props:Un,emits:[],setup(e,t){var Pe,Ie;const o=n.ref(),i=0,r=((Pe=e.rowOption)==null?void 0:Pe.height)||28,a=n.ref(20),l=n.ref(e.columns),c=uo(e),s=n.ref(),u=n.ref(),f=n.ref([]),d=n.ref(!1),p=n.ref(((Ie=e.rowOption)==null?void 0:Ie.wrapContent)||!1),y=n.inject("designer-host-service"),C=n.inject("design-item-context"),I=qr(C,y),M=qt(o,C,I);M.value.designerClass="f-utils-fill-flex-column";const g=no(),v=oo(e),S=_n(e,new Map,g,v,c),h=po(e,S,c,f,t),F=n.computed(()=>S.dataView.value.length),{containerStyleObject:N}=Cn(e),m=Sn(e),{applyCommands:_}=m;_(l);const b=wn(e),{applyColumnSorter:k,columnContext:w,updateColumnRenderContext:x}=b,T=ho(),V=xn(e,w),B=fo(e,t,h,c),E=co(e,t,c,B),O=ao(e),$=lo(e,E,O),L=so(e,E,v,c,O,$),H=ro(e,l,S,F,i,L),{getVisualData:Y}=H,J=mo(e,h),{sidebarWidth:ne}=J;f.value=Y(0,F.value+i-1);const le=io(e,S,f,w,H,F,i,ne),{onWheel:R,dataGridWidth:Z,viewPortHeight:ue,viewPortWidth:ee,updateVisibleRowsOnLatestVisibleScope:A}=le,U=Xn(e,w,s,ee,V),{calculateColumnsSize:ye}=U,fe=n.computed(()=>({"drag-container":!0,"fv-grid":!0,"fv-grid-bordered":e.showBorder,"fv-datagrid-strip":e.showStripe})),$e=n.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":d.value,"fv-grid-wrap-content":p.value})),{renderGridHeader:je}=Yn(C,e,b,le,"tree-grid-column"),{renderHorizontalScrollbar:Me}=bn(e,s,le);function Se(){var j,ie;const pe=Math.ceil(s.value.clientHeight/r);pe>a.value&&(a.value=pe,A()),ue.value=((j=u.value)==null?void 0:j.clientHeight)||0,Z.value=((ie=s.value)==null?void 0:ie.clientWidth)||0,ye()}n.onMounted(()=>{o.value.componentInstance=M,s.value&&(a.value=Math.max(Math.ceil(s.value.clientHeight/r),a.value),f.value=Y(0,F.value+i-1),Tt.useResizeObserver(s.value,Se),ye(),n.nextTick(()=>{s.value&&(Z.value=s.value.clientWidth),u.value&&(ee.value=u.value.clientWidth,ue.value=u.value.clientHeight)}))});function Ve(pe){pe&&(l.value=pe,_(l),x(l.value),k(S,T),ye())}return n.watch(()=>e.columns,pe=>{Ve(pe)}),n.watch(ee,()=>{s.value&&ye()}),t.expose(M.value),()=>n.createVNode("div",{ref:o,class:fe.value,style:N.value,onWheel:R,dragref:`${C.schema.id}-container`},[s.value&&je(),n.createVNode("div",{ref:s,class:$e.value,onMouseover:()=>{d.value=!0},onMouseleave:()=>{d.value=!1}},[Me()])])}});Et.register=(e,t,o,i)=>{e["tree-grid"]=Et,t["tree-grid"]=Br,i["tree-grid"]={bindingResolver:Er,selectionItemResolver:Or,updateColumnsResolver:jr}},Et.registerDesigner=(e,t,o)=>{e["tree-grid"]=zr,t["tree-grid"]=$r},xe.withInstall(Et);const Ur=new Map([["appearance",mt]]);function Yr(e,t,o){return t}Ge({direction:{type:String,default:"horizontal"},fill:{type:Boolean,default:!1},height:{type:Number,default:0},clickable:{type:Boolean,default:!0},steps:{type:Array,default:[{id:"1",title:"审批中(示例)",description:"正在审批"},{id:"2",title:"复核中(示例)",description:"等待复核"}]},activeIndex:{type:Number,default:0},onClick:{type:Function,default:()=>{}}},{$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/step.schema.json",title:"step",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for step",type:"string"},type:{description:"The type string of step",type:"string",default:"step"},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"]},Ur,Yr,{title:"step",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:[]}}}}}});const Xr={class:{type:String,default:""},title:{type:String,default:""},width:{type:Number,default:500},height:{type:Number,default:320},buttons:{type:Array,default:[]},modelValue:{type:Boolean,default:!1},showHeader:{type:Boolean,default:!0},showButtons:{type:Boolean,default:!0},fitContent:{type:Boolean,default:!0},showCloseButton:{type:Boolean,default:!0},showMaxButton:{type:Boolean,default:!1},minHeight:{type:Number},maxHeight:{type:Number},minWidth:{type:Number},maxWidth:{type:Number},containment:{type:Object,default:null},resizeable:{type:Boolean,default:!1},draggable:{type:Boolean,default:!1},dragHandle:{type:Object,default:null},closedCallback:{type:Function,default:null},resizeHandle:{type:Function,default:null},render:{type:Function,default:null},acceptCallback:{type:Function,default:null},rejectCallback:{type:Function,default:null},enableEsc:{type:Boolean,default:!0},enableEnter:{type:Boolean,default:!1},dialogType:{type:String,default:""},src:{type:String,default:""}};class Ee{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 r=parseInt(i[4],10),a=parseInt(i[5],10);return{x:r,y:a}}return{x:0,y:0}}static fromEvent(t,o=null){if(this.isMouseEvent(t))return new Ee(t.clientX,t.clientY);if(o===null||t.changedTouches.length===1)return new Ee(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 Ee(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 Ee(0,0);if(window){const i=window.getComputedStyle(t);if(i){const r=parseInt(i.getPropertyValue("left"),10),a=parseInt(i.getPropertyValue("top"),10);o.x=isNaN(r)?0:r,o.y=isNaN(a)?0:a}return o}return null}static copy(t){return new Ee(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 gt{constructor(t,o){this.width=t,this.height=o}static getCurrent(t){const o=new gt(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 gt(0,0).set(t)}set(t){return this.width=t.width,this.height=t.height,this}}function Kr(e,t){const o=n.ref(),i=n.ref(),r=n.ref(),a=n.ref(),l=n.ref(),c=n.ref(),s=n.ref(),u=n.ref(),f=n.ref(),d=n.ref(),p=n.ref(),y=n.ref(),C=n.ref(e.draggable),I=n.ref(!1);function M(){const O=i.value||document.body,$=window.getComputedStyle(O);if(!$||!o.value)return;const L=Ee.getTransformInfo(o.value),H={};s.value&&(H.deltaL=o.value.offsetLeft-s.value.x,H.deltaT=o.value.offsetTop-s.value.y);const Y=$.getPropertyValue("position");H.width=O.clientWidth,H.height=O.clientHeight,H.pr=parseInt($.getPropertyValue("padding-right"),10),H.pb=parseInt($.getPropertyValue("padding-bottom"),10),H.position=$.getPropertyValue("position"),Y==="static"&&(O.style.position="relative"),H.translateX=L.x,H.translateY=L.y,d.value=H}function g(O){if(o.value){a.value=gt.getCurrent(o.value),l.value=Ee.getCurrent(o.value),c.value=a.value?gt.copy(a.value):null,s.value=l.value?Ee.copy(l.value):null,M();const $=O.target.getAttribute("type")||"";u.value={n:!!$.match(/n/),s:!!$.match(/s/),w:!!$.match(/w/),e:!!$.match(/e/)}}}function v(){var O,$,L,H;if(o.value){const Y=o.value;u.value&&((u.value.n||u.value.s)&&((O=c.value)!=null&&O.height)&&(Y.style.height=c.value.height+"px"),(u.value.w||u.value.e)&&(($=c.value)!=null&&$.width)&&(Y.style.width=c.value.width+"px"),s.value&&((L=s.value)!=null&&L.x&&(Y.style.left=s.value.x+"px"),(H=s.value)!=null&&H.y&&(Y.style.top=s.value.y+"px")))}}function S(){const O=e.minHeight?e.minHeight:1,$=e.minWidth?e.minWidth:1;c.value&&s.value&&u.value&&a.value&&(c.value.height<O&&(c.value.height=O,u.value.n&&l.value&&(s.value.y=l.value.y+(a.value.height-O))),c.value.width<$&&(c.value.width=$,u.value.w&&l.value&&(s.value.x=l.value.x+(a.value.width-$))),e.maxHeight&&c.value.height>e.maxHeight&&(c.value.height=e.maxHeight,l.value&&u.value.n&&(s.value.y=l.value.y+(a.value.height-e.maxHeight))),e.maxWidth&&c.value.width>e.maxWidth&&(c.value.width=e.maxWidth,u.value.w&&l.value&&(s.value.x=l.value.x+(a.value.width-e.maxWidth))))}function h(){if(i.value){const O=d.value;if(s.value&&c.value&&u.value&&a.value){const $=O.width-O.pr-O.deltaL-O.translateX-s.value.x,L=O.height-O.pb-O.deltaT-O.translateY-s.value.y;u.value.n&&s.value.y+O.translateY<0&&l.value&&(s.value.y=-O.translateY,c.value.height=a.value.height+l.value.y+O.translateY),u.value.w&&s.value.x+O.translateX<0&&l.value&&(s.value.x=-O.translateX,c.value.width=a.value.width+l.value.x+O.translateX),c.value.width>$&&(c.value.width=$),c.value.height>L&&(c.value.height=L)}}}function F(O){if(!r.value||!a.value||!l.value||!u.value)return;O.subtract(r.value);const $=O.x,L=O.y;u.value.n?(s.value.y=l.value.y+L,c.value.height=a.value.height-L):u.value.s&&(c.value.height=a.value.height+L),u.value.e?c.value.width=a.value.width+$:u.value.w&&(c.value.width=a.value.width-$,s.value.x=l.value.x+$),h(),S(),v()}function N(O){if(!f.value)return;const $=Ee.fromEvent(O);$&&F($)}function m(){if(o.value){const{width:O,height:$,x:L,y:H}=o.value.getBoundingClientRect(),Y=Ee.getTransformInfo(o.value);return{size:{width:O,height:$},position:{x:L-Y.x,y:H-Y.y}}}return null}function _(O){if(o.value){const $=m();p.value=$}r.value=void 0,a.value=null,l.value=null,c.value=null,s.value=null,u.value=null,f.value=null,document.removeEventListener("mousemove",N),document.removeEventListener("mouseup",_)}function b(){document.addEventListener("mousemove",N),document.addEventListener("mouseup",_)}function k(O){O instanceof MouseEvent&&O.button===2||C.value&&(document.body.click(),O.stopPropagation(),O.preventDefault(),r.value=Ee.fromEvent(O),f.value=O.target,g(O),b())}function w(O){return o.value=O,n.createVNode(n.Fragment,null,[n.createVNode("div",{class:"fv-resizable-handle fv-resizable-n",type:"n",onMousedown:$=>k($)},null),n.createVNode("div",{class:"fv-resizable-handle fv-resizable-e",type:"e",onMousedown:$=>k($)},null),n.createVNode("div",{class:"fv-resizable-handle fv-resizable-s",type:"s",onMousedown:$=>k($)},null),n.createVNode("div",{class:"fv-resizable-handle fv-resizable-w",type:"w",onMousedown:$=>k($)},null),n.createVNode("div",{class:"fv-resizable-handle fv-resizable-ne",type:"ne",onMousedown:$=>k($)},null),n.createVNode("div",{class:"fv-resizable-handle fv-resizable-se fv-resizable-diagonal",type:"se",onMousedown:$=>k($)},null),n.createVNode("div",{class:"fv-resizable-handle fv-resizable-sw",type:"sw",onMousedown:$=>k($)},null),n.createVNode("div",{class:"fv-resizable-handle fv-resizable-nw",type:"nw",onMousedown:$=>k($)},null)])}function x(O=!0){document.body.click();const $=i.value||document.body,L=gt.getCurrent($),H=o.value;O&&H&&(y.value=m(),y.value.transform=H.style.transform),L&&H&&(c.value=L,H.style.height=c.value.height-14+"px",H.style.width=c.value.width-14+"px",H.style.left="7px",H.style.top="7px",H.style.transform="",p.value={size:c.value,position:{x:0,y:0}},C.value=!1,I.value=!0)}function T(){var O,$;if(document.body.click(),y.value){const L={width:y.value.size.width||0,height:y.value.size.height||0},H={x:(window.innerWidth-L.width)/2,y:(window.innerHeight-L.height)/2};(O=c.value)==null||O.set(L),($=s.value)==null||$.set(H);const Y=o.value;Y.style.height=L.height+"px",Y.style.width=L.width+"px",Y.style.left=`${H.x}px`,Y.style.top=`${H.y}px`,Y.style.transform="",p.value={size:L,position:H},C.value=e.draggable,I.value=!1}}function V(){if(o.value){const O=gt.getCurrent(o.value);if(O){const{width:$,height:L}=O;o.value.style.left=`${(window.innerWidth-$)/2}px`,o.value.style.top=`${(window.innerHeight-L)/2}px`,o.value.style.transform=""}}}function B(){const O=()=>{I.value?x(!1):V(),document.body.click()};return window.addEventListener("resize",O),()=>{window.removeEventListener("resize",O)}}const E=B();return{renderResizeBar:w,boundingElement:i,resizedEventParam:p,maximize:x,restore:T,allowDrag:C,isMaximized:I,unWindowResizeHandle:E}}function Qr(e,t,o){const i=n.ref(),r=n.ref(e.draggable),a=n.ref(e.lockAxis),l=n.ref(),c=n.ref(),s=n.ref(!1),u=n.ref(new Ee(0,0)),f=n.ref(new Ee(0,0)),d=n.ref(new Ee(0,0)),p=n.ref(new Ee(0,0));n.watch(()=>o.value,m=>{l.value.style.cursor=m?"move":"default"});function y(m,_){if(_.tagName==="BUTTON")return!1;if(_===m)return!0;for(const b in _.children)if(Object.prototype.hasOwnProperty.call(_.children,b)&&y(m,_.children[b]))return!0;return!1}function C(){var k,w;let m=d.value.x+f.value.x,_=d.value.y+f.value.y;a.value==="x"?(m=((k=u.value)==null?void 0:k.x)||0,d.value.x=0):a.value==="y"&&(_=((w=u.value)==null?void 0:w.y)||0,d.value.y=0);const b=`translate3d(${Math.round(m)}px, ${Math.round(_)}px, 0px)`;i.value&&(i.value.style.transform=b),p.value.x=m,p.value.y=_}function I(){if(!c.value||!i.value)return null;const m=c.value.getBoundingClientRect(),_=i.value.getBoundingClientRect(),b={top:m.top<_.top,right:m.right>_.right,bottom:m.bottom>_.bottom,left:m.left<_.left};return b.top||(d.value.y-=_.top-m.top),b.bottom||(d.value.y-=_.bottom-m.bottom),b.right||(d.value.x-=_.right-m.right),b.left||(d.value.x-=_.left-m.left),C(),b}function M(m){m&&(u.value&&m.subtract(u.value),d.value.set(m),C(),I())}function g(m){s.value&&r.value&&(m.stopPropagation(),m.preventDefault(),M(Ee.fromEvent(m,l.value)))}function v(){var m;s.value&&(s.value=!1,f.value.add(d.value),d.value.reset(),(m=i.value)==null||m.classList.remove("ng-dragging"),document.removeEventListener("mousemove",g),document.removeEventListener("mouseup",v))}function S(){!s.value&&l.value&&(s.value=!0,l.value.classList.add("ng-dragging"),document.addEventListener("mousemove",g),document.addEventListener("mouseup",v))}function h(){if(i.value){const m=Ee.getTransformInfo(i.value);f.value.set(m);return}f.value.reset()}function F(m){if(!o.value||m instanceof MouseEvent&&m.button===2)return;const _=m.target||m.srcElement;l.value!==void 0&&_&&!y(_,l.value)||r.value!==!1&&(document.body.click(),m.stopPropagation(),m.preventDefault(),u.value=Ee.fromEvent(m,i.value),h(),S())}function N(m,_,b){if(r.value&&_){if(m)l.value=m;else if(e.dragHandle){if(e.dragHandle instanceof HTMLElement)l.value=e.dragHandle;else if(typeof e.dragHandle=="string"){const k=_.querySelector(e.dragHandle);k&&(l.value=k)}}i.value=_,c.value=b,l.value?(l.value.classList.add("ng-draggable"),l.value.addEventListener("mousedown",F)):r.value=!1}}return{registerDraggle:N,resetTranslate:h}}function Kn(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 Jr(e,t){const o=n.ref(e.enableEsc);let i=null;return o.value?(i=Kn("Escape",r=>{t.emit("esc",{event:r.event,type:"esc"})}),{remove:i}):null}function Zr(e,t){const o=n.ref(e.enableEnter);let i=null;return o.value?(i=Kn("Enter",r=>{t.emit("enter",{event:r.event,type:"enter"})}),{remove:i}):null}const Ft=n.defineComponent({name:"FModal",props:Xr,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),r=n.ref(e.modelValue),a=n.ref(""),l=n.ref(e.class),c=n.ref(e.fitContent),s=n.ref(e.showHeader),u=n.ref(""),f=n.ref(e.showCloseButton),d=n.ref(e.showMaxButton),p=n.ref(!1),y=n.ref(e.dialogType),C=n.ref(e.src),I=n.ref(""),M=n.ref(e.showButtons),g=n.ref(e.title),v=n.ref(e.resizeable),S=n.ref(e.containment||null),h=n.ref();function F(j,ie){r.value=!1,t.emit("update:modelValue",!1),ie!=null&&t.emit(ie?"accept":"cancel"),t.emit("closed",j)}const N=[{name:"cancel",text:"取消",class:"btn btn-secondary",handle:j=>{F(j,!1)}},{name:"accept",text:"确定",class:"btn btn-primary",handle:j=>{F(j,!0)}}],m=n.ref(e.buttons&&e.buttons.length?e.buttons:N),_=n.computed(()=>!!u.value),b=n.computed(()=>!!M.value&&!!m.value),k=n.ref(),w=n.ref(),x=n.ref(!1),{renderResizeBar:T,maximize:V,restore:B,boundingElement:E,resizedEventParam:O,allowDrag:$,unWindowResizeHandle:L}=Kr(e),{registerDraggle:H}=Qr(e,t,$);function Y(){const j=document.querySelectorAll(".farris-modal").length;(!j||j-1<=0)&&document.body.classList.remove("modal-open"),h.value&&h.value.classList.remove("show")}n.watch(()=>e.title,(j,ie)=>{j!==ie&&(g.value=j)}),n.watch(()=>e.modelValue,(j,ie)=>{j!==ie&&(r.value=j,j||Y())}),n.watch(()=>e.showHeader,(j,ie)=>{j!==ie&&(s.value=j)}),n.watch(()=>e.showButtons,(j,ie)=>{j!==ie&&(M.value=j)}),n.watch(()=>O.value,(j,ie)=>{const te=j||{},ge=ie||{};JSON.stringify(te)!==JSON.stringify(ge)&&t.emit("resize",{newSize:j,oldSize:ie})});const J=n.computed(()=>(r.value&&document.body.classList.add("modal-open"),r.value)),ne=n.computed(()=>{const j={modal:!0,"farris-modal":!0,fade:!0};return j["f-modal-fitContent"]=!!c.value,j.show=!!J.value,j}),le=n.computed(()=>{var te;const j={"modal-dialog":!0},ie=(te=l.value)==null?void 0:te.split(" ");return ie==null||ie.reduce((ge,Te)=>(ge[Te]=!0,ge),j),j}),R=n.computed(()=>({position:"absolute",top:`${(window.innerHeight-i.value)/2}px`,left:`${(window.innerWidth-o.value)/2}px`,width:`${o.value}px`,height:c.value?"auto":`${i.value}px`})),Z=n.computed(()=>({"modal-content":!0,"modal-content-has-header":s.value})),ue=n.computed(()=>{const j={display:s.value?"":"none"};return j["pointer-events"]=$.value?"auto":"none",j}),ee=n.computed(()=>({"f-icon":!0,modal_maximize:!0,modalrevert:x.value})),A=n.computed(()=>({"modal-body":!0,"f-utils-flex-column":y.value==="iframe"}));function U(){return{}}const ye=n.computed(()=>{const j={textAlgin:I.value},ie=U();return Object.assign(j,ie)});function fe(j){if(j.stopPropagation(),x.value){x.value=!1,B();return}V(),x.value=!0}async function $e(j,ie){j.handle&&await j.handle(ie,j)&&t.emit("closed",ie)}function je(j){j.width&&(o.value=j.width),j.height&&(i.value=j.height),j.buttons&&(m.value=j.buttons),j.title&&(g.value=j.title)}let Me=null,Se=null;n.onMounted(()=>{w.value&&!S.value&&(S.value=w.value.parentElement,E.value=S.value,H(k.value,w.value,E.value)),J.value&&document.body.classList.add("modal-open"),Me=Jr(e,t),Se=Zr(e,t)}),n.onUnmounted(()=>{L&&L(),Me&&Me.remove(),Se&&Se.remove()}),t.expose({modalElementRef:w,updateModalOptions:je,close:F,maxDialog:fe});function Ve(){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)]),d.value&&n.createVNode("li",{onClick:fe,class:"f-btn-icon f-bare",style:"pointer-events: auto;"},[n.createVNode("span",{class:ee.value},null)]),f.value&&n.createVNode("li",{class:"f-btn-icon f-bare",onClick:j=>F(j,!1),style:"pointer-events: auto;"},[n.createVNode("span",{class:"f-icon modal_close"},null)])])}function Pe(){return n.createVNode("div",{class:"modal-footer",style:ye.value},[m.value&&m.value.map(j=>n.createVNode("button",{name:j.name,type:"button",class:j.class+(j.iconClass?" btn-icontext":""),onClick:ie=>{$e(j,ie)}},[!!j.iconClass&&n.createVNode("i",{class:j.iconClass},null),j.text]))])}function Ie(){return n.createVNode("div",{ref:k,class:"modal-header",style:ue.value},[n.createVNode("div",{class:"modal-title"},[_.value&&n.createVNode("span",{class:u.value,style:"margin-right: 8px"},null),n.createVNode("span",{class:"modal-title-label"},[g.value])]),n.createVNode("div",{class:"actions"},[Ve()])])}function pe(j){j.stopPropagation()}return()=>n.createVNode(n.Teleport,{to:"body"},{default:()=>[J.value&&n.createVNode(n.Transition,{name:"fade",appear:!0},{default:()=>{var j,ie;return[n.createVNode("div",{class:ne.value,style:"display: block",ref:h,onClick:pe},[n.createVNode("div",{id:a.value,class:le.value,style:R.value,ref:w},[n.createVNode("div",{class:Z.value},[s.value&&Ie(),n.createVNode("div",{class:A.value},[(ie=(j=t.slots).default)==null?void 0:ie.call(j),y.value==="iframe"&&n.createVNode("iframe",{title:a.value,class:"f-utils-fill",width:"100%",frameborder:"0",src:C.value},null)]),b.value&&Pe()]),!c.value&&v.value&&w.value&&!x.value&&T(w.value)])])]}})]})}});function Qn(e){if(e.content&&e.content.render)return e.content.render;if(e.render&&typeof e.render=="function")return e.render}function ea(e){const t=document.createElement("div");t.style.display="contents";const o=n.createApp({setup(i,r){n.onUnmounted(()=>{document.body.removeChild(t)});const a=n.ref(),l=n.ref(e.class||""),c=n.ref(!!e.showButtons),s=n.ref(!!e.showHeader),u=n.ref(e.showCloseButton==null?!0:e.showCloseButton),f=n.ref(!0),d=n.ref(e.title||""),p=e.acceptCallback||(()=>{}),y=e.rejectCallback||(()=>{}),C=e.closedCallback||(v=>{}),I=e.resizeHandle||(v=>{}),M=Qn(e),g=v=>{f.value=!1,o.unmount(),C(v)};return n.onMounted(()=>{}),r.expose({modalRef:a}),()=>n.createVNode(Ft,{ref:a,class:l.value,modelValue:f.value,"onUpdate:modelValue":v=>f.value=v,title:d.value,width:e.width,height:e.height,buttons:e.buttons,"show-header":s.value,"show-buttons":c.value,"show-close-button":u.value,"show-max-button":!1,onAccept:p,onCancel:y,fitContent:e.fitContent==null?!0:e.fitContent,onClosed:g,onResize:I},{default:()=>[M&&M(o)]})}});return document.body.appendChild(t),o.mount(t),o}class Jn{constructor(t){q(this,"appContext",null);q(this,"modalRef",n.ref());q(this,"activeModalIndex",n.ref(0));q(this,"modalRefs",{});q(this,"isUseEscCloseModal",n.ref(!1));q(this,"activeModalInstance",n.computed(()=>this.modalRefs[this.activeModalIndex.value]));this.app=t,this.appContext=t?t._context:null}getCurrentModal(){return this.activeModalInstance.value}adaptToWindow(t,o){const{width:i,height:r}={width:window.innerWidth,height:window.innerHeight};return i<t&&(t=i),r<o&&(o=r),{width:t,height:o}}static show(t){const o=Object.assign({title:"",showButtons:!0,showHeader:!0},t);return ea(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)),r=n.ref(!0),a=i.value.acceptCallback||(()=>{}),l=i.value.rejectCallback||(()=>{}),c=i.value.closedCallback||((h,F)=>{}),s=i.value.resizeHandle||(h=>{});let u;const f=Qn(i.value),d=h=>{var N;r.value=!1;const F=(N=h==null?void 0:h.target)==null?void 0:N.classList.contains("modal_close");c(h,this.isUseEscCloseModal.value?"esc":F?"icon":"button")},p=h=>{d(h),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 F=Object.keys(this.modalRefs).map(N=>Number(N));F.length>0?this.activeModalIndex.value=Math.max(...F):this.activeModalIndex.value=0}this.isUseEscCloseModal.value=!1})},y=h=>{var F;this.isUseEscCloseModal.value=!0,this.activeModalInstance&&((F=this.activeModalInstance.value)==null||F.close(h==null?void 0:h.event))},{width:C,height:I}=i.value,M=this.adaptToWindow(C||500,I||320);Object.assign(i.value,M);const g=()=>n.createVNode(Ft,n.mergeProps({ref:this.modalRef,modelValue:r.value,"onUpdate:modelValue":h=>r.value=h},i.value,{onAccept:a,onCancel:l,onClosed:p,onResize:s,onEsc:y}),{default:()=>[f&&f(this.app)]});return u=(h=>{const F=n.h(g,h);return F.appContext=this.appContext,n.render(F,o),F})({...i.value}),this.activeModalIndex.value++,this.modalRefs[this.activeModalIndex.value]=this.modalRef.value,{update:h=>{i.value={...i.value,...h},u&&n.render(n.cloneVNode(u,{...i}),o)},destroy:p,modalRef:this.activeModalInstance}}}const Zn=Symbol("FModalService");Ft.install=e=>{e.component(Ft.name,Ft);const t=new Jn(e);e.provide(Zn,t),e.provide("FModalService",t)};var Yt=(e=>(e.Form="Form",e.Variable="Variable",e))(Yt||{});const ta={id:{type:String},required:{type:Boolean,default:!1},text:{type:String,default:""},title:{type:String},valid:{type:Boolean,default:!0},inValidTip:{type:String,default:""}},na=n.defineComponent({name:"FDynamicFormLabel",props:ta,emits:[],setup(e,t){const o=n.ref(e.title||e.text),i=n.ref(e.required),r=n.ref(e.text),a=n.ref(e.valid),l=n.ref(e.inValidTip);n.watch(()=>e.text,()=>{r.value=e.text}),n.watch(()=>e.required,(u,f)=>{u!==f&&(i.value=u)}),n.watch([()=>e.valid,()=>e.inValidTip],([u,f])=>{a.value=u,l.value=f});const c=n.computed(()=>a.value?o.value:l.value),s=n.computed(()=>a.value?"":"color:red");return()=>r.value&&n.createVNode("label",{class:"col-form-label",title:c.value,style:s.value},[!a.value&&n.createVNode("span",{class:"f-icon f-icon-warning mr-1",style:"color: red; min-width: 16px;",title:l.value},null),i.value&&n.createVNode("span",{class:"farris-label-info text-danger"},[n.createTextVNode("*")]),n.createVNode("span",{class:"farris-label-text"},[r.value])])}}),re={},ae={},se={},ce={};let eo=!1;function oa(){eo||(eo=!0,Bo.register(re,ae,se,ce),No.register(re,ae,se,ce),Oo.register(re,ae,se,ce),Eo.register(re,ae,se,ce),$o.register(re,ae,se,ce),jo.register(re,ae,se,ce),wt.register(re,ae,se,ce),Rt.register(re,ae,se,ce),wi.register(re,ae,se,ce),gi.register(re,ae,se,ce),Ro.register(re,ae,se,ce),Po.register(re,ae,se,ce),Ho.register(re,ae,se,ce),Do.register(re,ae,se,ce),Ao.register(re,ae,se,ce),Pt.register(re,ae,se,ce),Lo.register(re,ae,se,ce),ko.register(re,ae,se,ce),Si.register(re,ae,se,ce),Go.register(re,ae,se,ce),Wo.register(re,ae,se,ce),qo.register(re,ae,se,ce),Uo.register(re,ae,se,ce),zo.register(re,ae,se,ce),Yo.register(re,ae,se,ce),xi.register(re,ae,se,ce),Xo.register(re,ae,se,ce),Qo.register(re,ae,se,ce),Ko.register(re,ae,se,ce),To.register(re,ae,se,ce),Jo.register(re,ae,se,ce),Zo.register(re,ae,se,ce),Vo.register(re,ae,se,ce),ei.register(re,ae,se,ce),ti.register(re,ae,se,ce),ni.register(re,ae,se,ce),oi.register(re,ae,se,ce),ri.register(re,ae,se,ce),ai.register(re,ae,se,ce),ii.register(re,ae,se,ce),Fi.register(re,ae,se),Io.register(re,ae,se,ce),li.register(re,ae,se,ce),si.register(re,ae,se,ce),ci.register(re,ae,se,ce),di.register(re,ae,se,ce),ui.register(re,ae,se,ce),Mo.register(re,ae,se,ce),en.register(re,ae,se,ce),fi.register(re,ae,se,ce),pi.register(re,ae,se,ce),_o.register(re,ae,se,ce),nn.register(re,ae,se,ce),hi.register(re,ae,se,ce),mi.register(re,ae,se,ce),yi.register(re,ae,se,ce),vi.register(re,ae,se,ce),bi.register(re,ae,se,ce),Ci.register(re,ae,se,ce),_i.register(re,ae,se,ce))}function ia(){oa();function e(r){const a=re[r];if(!a)throw new Error(`Could not find the editor of type '${r}'`);return a}function t(r,a){const l=ae[r];return l?l(a):{}}function o(r){switch(r){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":case"solution-preset":return"onFieldsChanged"}}function i(r){switch(r){case"combo-list":case"input-group":case"textarea":return"onClear"}}return{resolveEditorProps:t,resolveEditorType:e,getChangeFunctionName:o,getClearFunctionName:i}}const ra=n.defineComponent({name:"FDynamicFormGroup",props:Ln,emits:["change","update:modelValue"],setup(e,t){var h;const o=n.ref(e.id),i=n.ref(e.customClass),r=n.ref(e.editor),a=n.ref(e.label),l=n.ref(e.modelValue),c=n.ref(e.readonly),s=n.ref(((h=e.editor)==null?void 0:h.required)||e.required),u=n.ref(e.showLabel),f=n.ref(e.visible);n.ref(e.type);const d=n.ref(),{resolveEditorProps:p,resolveEditorType:y,getChangeFunctionName:C,getClearFunctionName:I}=ia(),M=n.computed(()=>({"form-group":!0,"farris-form-group":!0,"common-group":!0,"q-state-readonly":c.value}));function g(F,N){l.value=N!==void 0?N:F,t.emit("update:modelValue",l.value),t.emit("change",l.value)}function v(){t.emit("update:modelValue","")}const S=n.computed(()=>{const F=r.value.type||"input-group",N=y(F),m=p(F,r.value),_=C(F),b=I(r.value.type);return b&&(m[b]=v),m[_]=g,(m.id==null||m.id==="")&&(m.id=o.value),F==="number-range"&&r.value.onBeginValueChange&&typeof r.value.onBeginValueChange=="function"?(r.value.onBeginValueChange&&typeof r.value.onBeginValueChange=="function"&&(m.onBeginValueChange=r.value.onBeginValueChange),r.value.onEndValueChange&&typeof r.value.onEndValueChange=="function"&&(m.onEndValueChange=r.value.onEndValueChange)):F==="lookup"&&r.value["onUpdate:idValue"]&&typeof r.value["onUpdate:idValue"]=="function"&&(m["onUpdate:idValue"]=r.value["onUpdate:idValue"]),()=>n.createVNode(N,n.mergeProps({ref:d},m,{modelValue:l.value,"onUpdate:modelValue":k=>l.value=k}),t.slots)});return n.watch([()=>e.id,()=>e.customClass,()=>e.editor,()=>e.label,()=>e.modelValue,()=>e.readonly,()=>e.required,()=>e.showLabel,()=>e.visible],([F,N,m,_,b,k,w,x,T])=>{var V;o.value=F,i.value=N,r.value=m,a.value=_,l.value=b,c.value=k,s.value=((V=r.value)==null?void 0:V.required)||w,u.value=x,f.value=T}),t.expose({editorRef:d}),()=>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:M.value},[u.value&&n.createVNode(na,{id:`${o.value}-lable`,required:s.value,text:a.value,title:a.value},null),n.createVNode("div",{class:"farris-input-wrap"},[S.value()])])])])}}),aa=new Map([["appearance",mt]]);function la(e,t,o){return t}Ge({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:""},autoHeight:{type:Boolean,default:!1},autofocus:{type:Boolean,default:!1},rows:{type:Number,default:2},showCount:{type:Boolean,default:!1},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1},updateOn:{type:String,default:"blur"}},{$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},required:{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:["type"],ignore:["id","appearance","binding","visible"]},aa,la);const vt=class vt{static getEditorTypesByMDataType(t){const o=vt.fieldControlTypeMapping[t];return o||[{key:"",value:""}]}static getAllInputTypes(){const t=[];for(const o in vt.fieldControlTypeMapping)vt.fieldControlTypeMapping[o].forEach(i=>{t.find(r=>r.key===i.key&&r.value===i.value)||t.push({key:i.key,value:i.value})});return t}static mappingDomPropAndSchemaProp(t){var r;const o=(r=t.editor)==null?void 0:r.type;if(!o)return[];const i=[];switch(i.push({domField:"editor.required",schemaField:"require"}),i.push({domField:"editor.readonly",schemaField:"readonly"}),o){case oe["data-grid-column"].type:case oe["tree-grid-column"].type:{i.push({domField:"title",schemaField:"name"});break}default:i.push({domField:"label",schemaField:"name"})}return(o===oe["input-group"].type||o===oe.textarea.type||o===oe["number-spinner"].type)&&i.push({domField:"editor.maxLength",schemaField:"type.length"}),o===oe["number-spinner"].type&&i.push({domField:"editor.precision",schemaField:"type.precision"}),(o===oe["combo-list"].type||o===oe["radio-group"].type)&&i.push({domField:"editor.data",schemaField:"type.enumValues"}),o===oe["date-picker"].type&&(i.push({domField:"editor.displayFormat",schemaField:"editor.format"}),i.push({domField:"editor.fieldType",schemaField:"type.name"})),o===oe["number-spinner"].type&&(i.push({domField:"editor.max",schemaField:"editor.maxValue"}),i.push({domField:"editor.min",schemaField:"editor.minValue"})),o===oe.lookup.type&&(i.push({domField:"editor.dataSource",schemaField:"editor.dataSource"}),i.push({domField:"editor.valueField",schemaField:"editor.valueField"}),i.push({domField:"editor.textField",schemaField:"editor.textField"}),i.push({domField:"editor.displayType",schemaField:"editor.displayType"}),i.push({domField:"editor.mapFields",schemaField:"editor.mapFields"}),i.push({domField:"editor.helpId",schemaField:"editor.helpId"})),i.push({domField:"path",schemaField:"bindingPath"}),i.push({domField:"binding.path",schemaField:"bindingField"}),i.push({domField:"binding.fullPath",schemaField:"path"}),(o===oe["data-grid-column"].type||o===oe["tree-grid-column"].type)&&i.push({domField:"field",schemaField:"bindingPath"}),i}};q(vt,"fieldControlTypeMapping",{String:[{key:oe["input-group"].type,value:oe["input-group"].name},{key:oe.lookup.type,value:oe.lookup.name},{key:oe["date-picker"].type,value:oe["date-picker"].name},{key:oe["check-group"].type,value:oe["check-group"].name},{key:oe["radio-group"].type,value:oe["radio-group"].name},{key:oe["combo-list"].type,value:oe["combo-list"].name},{key:oe.textarea.type,value:oe.textarea.name}],Text:[{key:oe.textarea.type,value:oe.textarea.name},{key:oe.lookup.type,value:oe.lookup.name}],Decimal:[{key:oe["number-spinner"].type,value:oe["number-spinner"].name}],Integer:[{key:oe["number-spinner"].type,value:oe["number-spinner"].name}],Number:[{key:oe["number-spinner"].type,value:oe["number-spinner"].name}],BigNumber:[{key:oe["number-spinner"].type,value:oe["number-spinner"].name}],Date:[{key:oe["date-picker"].type,value:oe["date-picker"].name}],DateTime:[{key:oe["date-picker"].type,value:oe["date-picker"].name}],Boolean:[{key:oe.switch.type,value:oe.switch.name},{key:oe["check-box"].type,value:oe["check-box"].name}],Enum:[{key:oe["combo-list"].type,value:oe["combo-list"].name},{key:oe["radio-group"].type,value:oe["radio-group"].name}],Object:[{key:oe.lookup.type,value:oe.lookup.name},{key:oe["combo-list"].type,value:oe["combo-list"].name},{key:oe["radio-group"].type,value:oe["radio-group"].name}]});let _t=vt;class Xe extends Bt{constructor(o,i){super(o,i);q(this,"responseLayoutEditorFunction");this.responseLayoutEditorFunction=xr(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 a;const r=this;return this.setDesignViewModelField(o),{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:r.designViewModelField?_t.getEditorTypesByMDataType((a=r.designViewModelField.type)==null?void 0:a.name):_t.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"},refreshPanelAfterChanged:!0}},setPropertyRelates(l,c){if(l)switch(l&&l.propertyID){case"type":{r.changeControlType(o,l,i);break}case"label":{l.needRefreshControlTree=!0;break}}}}}getAppearanceProperties(o,i){const r=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:r.responseLayoutEditorFunction.checkCanOpenLayoutEditor(o,r.componentId)}}},setPropertyRelates(a,l){if(a)switch(a&&a.propertyID){case"responseLayout":r.responseLayoutEditorFunction.changeFormControlsByResponseLayoutConfig(a.propertyValue,r.componentId||o.id),r.updateUnifiedLayoutAfterResponseLayoutChanged(r.componentId),r.updateElementByParentContainer(o.id,i),delete o.responseLayout;break;case"class":r.updateUnifiedLayoutAfterControlChanged(a.propertyValue,o.id,this.componentId),r.updateElementByParentContainer(o.id,i);break}}}}getEditorProperties(o){return this.getComponentConfig(o)}changeControlType(o,i,r){var f,d,p,y;const a=i.propertyValue,l=r&&r.parent&&r.parent.schema;if(!l)return;const c=l.contents.findIndex(C=>C.id===o.id),s=l.contents[c];let u;this.designViewModelField&&(this.designViewModelUtils.getDgViewModel(this.viewModelId).changeField(this.designViewModelField.id,{editor:{$type:a},name:this.designViewModelField.name,require:this.designViewModelField.require,readonly:this.designViewModelField.readonly},!1),u=this.controlCreatorUtils.setFormFieldProperty(this.designViewModelField,a)),u||(u=this.controlCreatorUtils.createFormGroupWithoutField(a)),Object.assign(u,{id:s.id,appearance:s.appearance,size:s.size,label:s.label,binding:s.binding,visible:s.visible}),Object.assign(u.editor,{isTextArea:u.isTextArea&&s.isTextArea,placeholder:(f=s.editor)==null?void 0:f.placeholder,holdPlace:(d=s.editor)==null?void 0:d.holdPlace,readonly:(p=s.editor)==null?void 0:p.readonly,required:(y=s.editor)==null?void 0:y.required}),l.contents.splice(c,1),l.contents.splice(c,0,u),r.schema=Object.assign(s,u),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(C=>C.classList.remove("dgComponentSelected")),Array.from(document.getElementsByClassName("dgComponentFocused")).forEach(C=>C.classList.remove("dgComponentFocused")),xt.value++}getComponentConfig(o,i={},r={},a){const l=Object.assign({description:"编辑器",title:"编辑器",type:"input-group",$converter:"/converter/property-editor.converter"},i),c=Object.assign({readonly:{description:"",title:"只读",type:"boolean",editor:{enableClear:!0,editable:!0}},disabled:{description:"",title:"禁用",type:"boolean",visible:!1},placeholder:{description:"当控件没有值时在输入框中显示的文本",title:"提示文本",type:"string"}},r);return{...l,properties:{...c},setPropertyRelates:a}}updateUnifiedLayoutAfterControlChanged(o,i,r){const a=o.split(" ");let l=a.find(d=>/^col-([1-9]|10|11|12)$/.test(d)),c=a.find(d=>/^col-md-([1-9]|10|11|12)$/.test(d)),s=a.find(d=>/^col-xl-([1-9]|10|11|12)$/.test(d)),u=a.find(d=>/^col-el-([1-9]|10|11|12)$/.test(d));l=l||"col-12",c=c||"col-md-"+l.replace("col-",""),s=s||"col-xl-"+c.replace("col-md-",""),u=u||"col-el-"+s.replace("col-xl-","");const f={id:i,columnInSM:parseInt(l.replace("col-",""),10),columnInMD:parseInt(c.replace("col-md-",""),10),columnInLG:parseInt(s.replace("col-xl-",""),10),columnInEL:parseInt(u.replace("col-el-",""),10)};this.updateUnifiedLayoutAfterResponseLayoutChanged(r,f)}updateUnifiedLayoutAfterResponseLayoutChanged(o,i){const{formNode:r}=this.responseLayoutEditorFunction.checkCanFindFormNode(o);if(!r||!r.unifiedLayout)return;const a=[];if(this.responseLayoutEditorFunction.getResonseFormLayoutConfig(r,a,1),i){const C=a.find(I=>I.id===i.id);Object.assign(C||{},i)}const l=a.map(C=>C.columnInSM),c=a.map(C=>C.columnInMD),s=a.map(C=>C.columnInLG),u=a.map(C=>C.columnInEL),f=this.checkIsUniqueColumn(l)?l[0]:null,d=this.checkIsUniqueColumn(c)?c[0]:null,p=this.checkIsUniqueColumn(s)?s[0]:null,y=this.checkIsUniqueColumn(u)?u[0]:null;Object.assign(r.unifiedLayout,{uniqueColClassInSM:f,uniqueColClassInMD:d,uniqueColClassInLG:p,uniqueColClassInEL:y})}checkIsUniqueColumn(o){const i=new Set(o);return Array.from(i).length===1}getItemCollectionEditor(o,i,r){return i=i||"value",r=r||"name",{editor:{columns:[{field:i,title:"值",dataType:"string"},{field:r,title:"名称",dataType:"string"},{field:"disabled",title:"禁用",visible:!1,dataType:"boolean",editor:{type:"switch"}}],type:"item-collection-editor",valueField:i,nameField:r,requiredFields:[i,r],uniqueFields:[i,r],readonly:this.checkEnumDataReadonly(o)}}}checkEnumDataReadonly(o){return!o.binding||o.binding.type!=="Form"?!1:!!(this.designViewModelField&&this.designViewModelField.type&&this.designViewModelField.type.$type===xe.FormSchemaEntityFieldType$Type.EnumType)}}class sa extends Xe{constructor(t,o){super(t,o)}}function ca(e,t,o){function i(){const l=o.componentId;if(!l)return!1;const c=e.formSchemaUtils.getViewModelIdByComponentId(l);if(!c)return!1;const{schema:s}=t,{designViewModelUtils:u}=e,d=u.getDgViewModel(c).fields.find(p=>p.id===s.binding.field);return!(!d||d.$type!==Ht.SimpleField)}function r(){const{schema:l}=t;return!!e.formSchemaUtils.getVariableById(l.binding.field)}function a(){var s;const{schema:l}=t;let c=!0;if(!e||!((s=l.binding)!=null&&s.field))return c;switch(l.binding.type){case Yt.Form:{c=i();break}case Yt.Variable:c=r()}return c}return{checkBindingFieldValidation:a}}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}},An,Wt,void 0);const da={$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"},initialState:{description:"",type:"object"}},required:["id","type"]},ua={initialState:{type:Object,default:{uniqueColClassInSM:12,uniqueColClassInMD:6,uniqueColClassInLG:3,uniqueColClassInEL:2}}};on.createPropsResolver(ua,da,yr,wr);const fa={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"},buttons:{type:Object,default:[]}};function Xt(){return new DOMException("The request is not allowed","NotAllowedError")}async function pa(e){if(!navigator.clipboard)throw Xt();return navigator.clipboard.writeText(e)}async function ma(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 r=!1;try{r=window.document.execCommand("copy")}finally{o==null||o.removeAllRanges(),window.document.body.removeChild(t)}if(!r)throw Xt()}async function ha(e){try{await pa(e)}catch(t){try{await ma(e)}catch(o){throw o||t||Xt()}}}function ga(){async function e(t){await ha(t)}return{onCopy:e}}function ya(e,t,o,i){const r=n.ref(14),a=n.ref(140),l=n.ref(""),c=n.ref(i.value.length),s=n.computed(()=>i.value),u=n.computed(()=>({"font-size":`${r.value}px`,height:"100%"}));function f(d){if(d.currentTarget){const p=d.currentTarget.value||"";c.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:a.value,onInput:d=>f(d)},[s.value]),n.createVNode("span",{class:"textarea-wordcount",title:l.value,style:"position: absolute; bottom: 76px; right: 32px; cursor: pointer; text-align: right;"},[c.value+" / "+a.value])])}function va(e,t,o,i){const r=ya(e,t,o,i),a=new Map([["text-area",r]]);function l(c){return a.get(c)||null}return{getEditorRender:l}}function ba(){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 Ca(e,t){const o=t.getEditorRender(e.promptEditorType);return()=>o&&o()}function wa(e){const t=n.computed(()=>!!e.value&&!!e.value.date),o=n.computed(()=>`发生时间 : ${e.value&&e.value.date||""}`),i=n.computed(()=>!!e.value&&!!e.value.detail),r=n.computed(()=>"详细信息 : "+(e.value&&e.value.detail||"")),a="exp_switch_"+new Date().getTime();return()=>n.createVNode("div",{class:"toast-msg-detail"},[t.value&&n.createVNode("div",null,[o.value]),i.value&&n.createVNode("div",{class:"exception_wrap"},[n.createVNode("input",{type:"checkbox",id:a,class:"d-none exp_switch"},null),n.createVNode("div",{class:"exception_error_msg"},[n.createVNode("label",{class:"swith",htmlFor:a},null),n.createVNode("div",{innerHTML:r.value},null)])])])}function Sa(e){return()=>n.createVNode("p",{class:"toast-msg-detail",innerHTML:e.value},null)}function xa(e,t,o,i){const r=n.ref(e.exceptionInfo),a=n.computed(()=>{const p={"f-icon":!0},y=`f-icon-${t.value}`;return p[y]=!0,p}),l=n.computed(()=>o.value||r.value&&r.value.message),c=n.computed(()=>i.value),s=n.computed(()=>!!i.value),u=n.computed(()=>!!r.value);function f(){return u.value?wa(r):s.value?Sa(c):()=>null}const d=f();return()=>n.createVNode(n.Fragment,null,[n.createVNode("div",{class:"float-left modal-tips-iconwrap"},[n.createVNode("span",{class:a.value},null)]),n.createVNode("div",{class:"modal-tips-content"},[n.createVNode("p",{class:"toast-msg-title",innerHTML:l.value},null),d()])])}function Fa(e,t,o){const{onCopy:i}=t,{toShowFeedback:r}=o,a=n.ref("复制成功"),l=n.ref("复制详细信息"),c=n.ref(e.exceptionInfo||{date:"",message:"",detail:""}),s=n.computed(()=>c.value&&c.value.detail||"");function u(f){i(s.value).catch(d=>{a.value="复制失败"}).finally(()=>{r.value=!0,setTimeout(()=>{r.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 _a(e,t,o,i){const r=n.ref(e.type),a=n.ref(e.buttons),l=n.ref(e.exceptionInfo),c=n.ref(e.okButtonText),s=n.ref(e.cancelButtonText),u=n.ref(!0),f=n.ref(!0),d=n.computed(()=>!!(a.value&&a.value.length)),p=n.computed(()=>l.value&&l.value.date&&l.value.message&&l.value.detail),y=n.computed(()=>!(a.value&&a.value.length)&&(c.value||s.value)),C=n.computed(()=>f.value&&c.value),I=n.computed(()=>u.value&&s.value),M=Fa(e,o,i);function g(S){r.value==="question"&&t.emit("reject"),t.emit("close")}function v(S){r.value==="question"&&t.emit("accept"),t.emit("close")}return()=>n.createVNode("div",{class:"modal-footer"},[p.value&&M(),y.value&&I.value&&n.createVNode("button",{type:"button",class:"btn btn-secondary btn-lg",onClick:g},[s.value]),y.value&&C.value&&n.createVNode("button",{type:"button",class:"btn btn-primary btn-lg",onClick:v},[c.value]),d.value&&a.value.length&&a.value.map(S=>n.createVNode("button",{type:"button",onClick:S.handle,class:S.class},[S.iconClass&&n.createVNode("span",{class:S.iconClass},null),S.text]))])}const $t=n.defineComponent({name:"FMessageBox",props:fa,emits:["accept","reject","close"],setup(e,t){const o=n.ref(e.type),i=n.ref(e.title),r=n.ref(e.detail),a=n.computed(()=>{const M={"modal-tips":!0,"d-flex":!0,"flex-row":!0},g=`messager-type-${o.value}`;return M[g]=!0,M}),l=n.computed(()=>{const M={};return o.value==="prompt"?M.padding="0.5rem 0.5rem 1rem 1.5rem":o.value==="error"&&(M.padding="0.5rem 1.5rem 1rem 1.5rem"),M}),c=ga(),s=va(e,o,i,r),u=ba(),{feedbackStyle:f,feedbackMessage:d}=u;function p(){return n.createVNode("div",{style:f.value},[d.value])}function y(){switch(o.value){case"prompt":return Ca(e,s);default:return xa(e,o,i,r)}}const C=y(),I=_a(e,t,c,u);return()=>n.createVNode("div",{class:"farris-messager"},[n.createVNode("section",{class:a.value,style:l.value},[C()]),I(),p()])}});class ut{static show(t){const o=n.reactive({...t}),i=!1,r=o.type==="error"||o.type==="prompt",a=o.type==="error"?"错误提示":o.type==="prompt"&&o.title||"",l=o.acceptCallback||(()=>{}),c=o.rejectCallback||(()=>{});let s=null,u=new Jn(s);const f=()=>{s&&(s==null||s.destroy(),u=null)};return s=u==null?void 0:u.open({class:"modal-message modal-message-type-info",title:a,showButtons:i,showHeader:r,width:o.width||400,fitContent:!0,showMaxButton:!1,draggable:!0,render:()=>n.createVNode($t,n.mergeProps(o,{onAccept:l,onReject:c,onClose:f}),null)}),u==null?void 0:u.getCurrentModal()}static info(t,o){const i=n.reactive({type:"info",title:t,detail:o,okButtonText:"知道了",cancelButtonText:""});ut.show(i)}static warning(t,o){const i=n.reactive({type:"warning",title:t,detail:o,okButtonText:"知道了",cancelButtonText:""});ut.show(i)}static success(t,o){const i=n.reactive({type:"success",title:t,detail:o,okButtonText:"关闭",cancelButtonText:""});ut.show(i)}static error(t,o,i){const r=n.reactive({width:500,type:"error",okButtonText:"关闭",cancelButtonText:"",exceptionInfo:{date:i,message:t,detail:o}});ut.show(r)}static prompt(t,o){const i=n.reactive({type:"prompt",title:t,detail:o,okButtonText:"确定",cancelButtonText:"取消"});ut.show(i)}static question(t,o,i,r){const a=n.reactive({type:"question",title:t,detail:o,okButtonText:"确定",cancelButtonText:"取消",acceptCallback:i,rejectCallback:r});ut.show(a)}}$t.install=e=>{e.component($t.name,$t),e.provide("FMessageBoxService",ut)};var Mt=(e=>(e[e.Value=0]="Value",e[e.SmartHelp=1]="SmartHelp",e[e.Enum=2]="Enum",e[e.Express=3]="Express",e))(Mt||{}),tt=(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.In="9",e.NotIn="10",e))(tt||{});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:"结束是"}],Ta={"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 ka(e,t,o){const{fieldMap:i}=o;function r(a){const l=i.get(a.fieldCode);if(!l)return[];const c=l.editor.type,s=new Set(Ta[c]);return Ma.filter(f=>s.has(f.value))}return{getCompareOperators:r}}function to(){const e=n.ref({relation:0,items:[],children:[],path:[],groupId:0,level:0}),t=new Map,o=new Map;let i=0;function r(){return{id:"",fieldCode:"",fieldName:"",compareType:tt.Equal,valueType:Mt.Value,value:new Nt,relation:0,conditionId:Date.now()}}function a(b,k){return{relation:b,items:[],children:[],path:[],groupId:++i,level:k}}function l(){const b=Object.assign({},e.value);o.forEach((k,w)=>{k.groupId===b.groupId&&o.set(w,b)}),t.forEach((k,w)=>{k.groupId===b.groupId&&t.set(w,b)}),e.value=b}function c(b){const k=new Map;let w=0;return b.forEach((x,T)=>{var V,B;if(w+=((V=x.lBracket)==null?void 0:V.length)||0,k.set(T,w),w-=((B=x.rBracket)==null?void 0:B.length)||0,w<0)throw new Error("The right bracket is out of range.")}),k}function s(b,k,w,x,T){for(let V=0;V<k;V++){const B=b+(V+1),E=a(T,B);w.children.push(E),o.set(E.groupId,w),w=w.children[w.children.length-1],x.push(w)}return w}function u(b,k,w,x,T){for(let O=k;O<=0;O++)x.pop();const V=x[x.length-1];if(!V)throw new Error("The group path is out of range");const B=b+k,E=a(T,B);return V.children.push(E),o.set(E.groupId,V),w=V.children[V.children.length-1],x.push(w),w}function f(b,k,w,x){w.pop();const T=w[w.length-1],V=a(x,b);return T.children.push(V),o.set(V.groupId,T),k=T.children[T.children.length-1],w.push(k),k}function d(b,k,w,x,T,V){let B=b[b.length-1];if(!B)throw new Error("The group path is out of range");const E=k.get(x)||0,O=k.get(w)||0;if(w<0||w===x)return b[b.length-1];const $=E-O,L=T&&T.relation!==void 0?T.relation:1;return B=$>0?s(O,$,B,b,L):B,B=$<0?u(O,$,B,b,L):B,B=$===0&&O>0&&E>0&&T&&V&&!!T.rBracket&&!!V.lBracket?f(O,B,b,L):B,B}function p(b){const w={relation:b.length&&b[0].relation!==void 0?b[0].relation:1,items:[],children:[],path:[],groupId:0,level:0},x=[w],T=c(b);return b.forEach((V,B)=>{const E=B-1,O=b[E],$=d(x,T,E,B,O,V);$.items.push(V),t.set(V.conditionId,$)}),e.value=w,w}function y(){const b=r();t.set(b.conditionId,e.value),e.value.items.push(b)}function C(b){if(!b)return;const k=t.get(b.conditionId);if(k){const w=k.items.findIndex(T=>T.conditionId===b.conditionId)+1,x=r();t.set(x.conditionId,k),k.items.splice(w,0,x),l()}}function I(b,k,w,x){b.reduce((T,V)=>{const B=V.conditionId!==void 0,E=V.groupId!==void 0;if(B){const O=V;w.push(O),T.items.set(O.conditionId,O)}if(E){const O=V;x.push(O),T.groups.set(O.groupId,O)}return T},k)}function M(b,k,w,x,T){b&&(b.items=k.length?b.items.filter(V=>!w.has(V.conditionId)):b.items,b.children=x.length?b.children.filter(V=>!T.has(V.groupId)):b.children)}function g(b,k,w){k.forEach(x=>{b.items.push(x),t.set(x.conditionId,b)}),w.forEach(x=>{b.children.push(x),o.set(x.groupId,b)})}function v(b){const k=b[0],w=k.conditionId!==void 0?t.get(k.conditionId):o.get(k.groupId),x={items:new Map,groups:new Map},T=[],V=[];if(w){I(b,x,T,V),M(w,T,x.items,V,x.groups);const B=a(w.relation,w.level+1);g(B,T,V),w.children.push(B),o.set(B.groupId,w),l()}}function S(b){const k=[...b.items],w=[...b.children],x=o.get(b.groupId);x&&(x.children=x.children.filter(T=>T.groupId!==b.groupId),o.delete(b.groupId),k.forEach(T=>{x.items.push(T),t.set(T.conditionId,x)}),w.forEach(T=>{x.children.push(T),o.set(T.groupId,x)}),l())}function h(b){b.relation=b.relation===1?2:1,l()}let F;function N(b){const{relation:k}=b;return(b.children&&b.children.length?b.children.map((x,T,V)=>{const B=F(x);return B[0].lBracket=(B[0].lBracket||"")+"(",B[B.length-1].rBracket=(B[B.length-1].rBracket||"")+")",B[B.length-1].relation=T<V.length-1?k:0,B}):[]).flat()}F=(b=e.value)=>{const{relation:k}=b,w=b.items.map((T,V,B)=>(T.lBracket=V===0?"(":"",T.rBracket=V===B.length-1?")":"",T.relation=V<B.length-1?k||1:0,T)),x=N(b);return[...w,...x]};function m(b){const k=b||e.value;if(k.children.length&&k.children.forEach(w=>{m(w)}),k.level===0&&!k.items.length&&k.children.length===1){const w=k.children[0];e.value.relation=w.relation,S(w)}else k.items.length===0&&k.children.length<=1&&S(k)}function _(b){const k=t.get(b.conditionId);k&&(k.items=k.items.filter(w=>w.conditionId!==b.conditionId),t.delete(b.conditionId),m(),l())}return{addCondition:y,changeGroupRelation:h,conditionGroupMap:t,getConditions:F,group:v,groupParentMap:o,insertConditionTo:C,loadConditionGroup:p,refresh:l,removeCondition:_,rootGroup:e,unGroup:S}}function Va(e,t,o){const i=n.ref(new Set),r=n.ref(new Set),{conditionGroupMap:a,groupParentMap:l}=o;let c,s;function u(g){let v=c.level<=g.level?c:g,S=c.level>g.level?c:g;const h=[];for(;S&&v&&S!==v;)S.level>v.level?(h.push(S),S=l.get(S.groupId)):S.level===v.level&&(v=l.get(v.groupId),v&&h.unshift(v));return h}function f(g){r.value.add(g.groupId),g.items.forEach(v=>i.value.add(v.conditionId)),g.children.forEach(v=>f(v))}function d(g){const{conditionId:v}=g;i.value.add(v),c=i.value.size===0?a.get(v):c;const S=a.get(g.conditionId);u(S).forEach(F=>f(F))}const p=n.computed(()=>i.value.size===0&&r.value.size===1),y=function(g){r.value.delete(g.groupId),g.items.forEach(S=>s(S)),g.children.forEach(S=>!p.value&&y(S));const v=l.get(g.groupId);v&&r.value.has(v.groupId)&&y(v)};s=function(g){const{conditionId:v}=g;if(i.value.has(v)&&i.value.delete(v),r.value.size>0){const S=a.get(v);S&&r.value.has(S.groupId)&&y(S)}};function C(g){const{conditionId:v}=g;i.value.size===0&&(c=a.get(v)),i.value.has(v)?s(g):d(g)}function I(){const g=[];return c&&(c.items.filter(v=>i.value.has(v.conditionId)).forEach(v=>g.push(v)),c.children.filter(v=>r.value.has(v.groupId)).forEach(v=>g.push(v))),g}function M(){i.value.clear(),r.value.clear()}return{clear:M,getSelectedGroupItem:I,selectedItems:i,toggleSelect:C}}const Kt=n.defineComponent({name:"FConditionList",props:Mn,emits:["valueChange","labelCodeChange","compareTypeChange"],setup(e,t){const o=n.ref(e.key),i=n.ref(e.conditions),r=Dn(e),{convertToSingleControl:a,fields:l,fieldMap:c,loadFieldConfigs:s}=r,u=to(),{addCondition:f,changeGroupRelation:d,getConditions:p,group:y,insertConditionTo:C,loadConditionGroup:I,refresh:M,removeCondition:g,rootGroup:v,unGroup:S}=u,{createConditionValue:h}=Rn(),F=Va(e,t,u),{selectedItems:N,toggleSelect:m}=F,{getCompareOperators:_}=ka(e,t,r);s(!1),l.value=a(l.value),I(i.value);function b(J){var le;const ne=((le=c.get(J.fieldCode))==null?void 0:le.editor)||{type:"text"};J.value=h(ne.type,void 0),t.emit("labelCodeChange",J)}function k(J,ne){t.emit("compareTypeChange",ne)}function w(){}t.expose({getConditions:p});function x(J,ne){t.emit("valueChange",J,ne)}function T(J){return n.createVNode("div",{class:"condition-list-item-type mr-3"},[n.createVNode(Rt,{"value-field":"labelCode","text-field":"name","id-field":"id",data:l.value,modelValue:J.fieldCode,"onUpdate:modelValue":ne=>J.fieldCode=ne,onChange:ne=>b(J)},null)])}function V(J){return n.createVNode("div",{class:"condition-list-item-compare mr-3"},[n.createVNode(Rt,{"value-field":"value","text-field":"name","id-field":"id",data:_(J),modelValue:J.compareType,"onUpdate:modelValue":ne=>J.compareType=ne,onChange:ne=>k(ne,J)},null)])}function B(J){var ne;return n.createVNode("div",{class:"condition-list-item-control mr-3"},[n.createVNode(ra,{editor:(ne=c.get(J.fieldCode))==null?void 0:ne.editor,showLabel:!1,modelValue:J.value.value,"onUpdate:modelValue":le=>J.value.value=le,onChange:le=>{x(le,J)}},null)])}function E(J){return[n.createVNode("div",{class:"condition-list-item-extend"},[n.createVNode("span",{class:"f-icon f-icon-plus-sm mr-2",onClick:()=>C(J)},null),n.createVNode("span",{class:"f-icon f-icon-minus-sm",onClick:()=>g(J)},null)]),n.createVNode("div",{class:"custom-control custom-checkbox"},[n.createVNode("input",{title:"selection",class:"custom-control-input",type:"checkbox",checked:N.value.has(J.conditionId)},null),n.createVNode("label",{class:"custom-control-label",onClick:()=>m(J)},null)])]}function O(J){return J.items.map(ne=>n.createVNode("div",{class:"condition-list-item",key:ne.conditionId},[T(ne),V(ne),B(ne),E(ne)]))}function $(J){return n.createVNode("div",{class:"condition-list-relation"},[n.createVNode("span",{class:"condition-list-relation-close f-icon-filter-cancel btn-link",onClick:()=>S(J)},null),n.createVNode("span",{class:"condition-list-relation-text btn-link",onClick:()=>d(J)},[J.relation===1?"与":"或"])])}function L(J){return n.createVNode("div",{class:"condition-list-content"},[n.createVNode("div",{class:"condition-list-content-group"},[O(J),J.children&&J.children.map(ne=>L(ne))]),$(J)])}function H(){y(F.getSelectedGroupItem()),F.clear()}function Y(){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:H},[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"},[L(v.value)]),Y()])}});Kt.install=e=>{e.component(Hn.name,Hn).component(Kt.name,Kt)};const Ia=["equal","notEqual","greaterThan","greaterThanOrEqual","lessThan","lessThanOrEqual","contain","startWidth","endWidth","in","notIn"],Na={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},Ba={equal:(e,t,o)=>e&&e[t]===o,in:(e,t,o)=>{if(e){const i=e[t];return o.indexOf(i)>-1}return!1},notEqual:(e,t,o)=>e&&e[t]!==o},Oa={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}},Ea={equal:(e,t,o)=>e?String(o).split(",").includes(String(e[t])):!1,in:(e,t,o)=>{if(e){const i=e[t];return o.indexOf(i)>-1}return!1},notEqual:(e,t,o)=>e?String(o).split(",").findIndex(r=>r===String(e[t]))===-1:!1},$a={equal:(e,t,o)=>{if(e){const i=Number.parseFloat(String(o)),r=Number.parseFloat(String(e[t]));return isNaN(i)?isNaN(r):i===r}return!1},notEqual:(e,t,o)=>{if(e){const i=Number.parseFloat(String(o)),r=Number.parseFloat(String(e[t]));return isNaN(i)?!0:i!==r}return!1},greaterThan:(e,t,o)=>{if(e){const i=Number.parseFloat(String(o)),r=Number.parseFloat(String(e[t]));return isNaN(i)?isNaN(r):r>i}return!1},greaterThanOrEqual:(e,t,o)=>{if(e){const i=Number.parseFloat(String(o)),r=Number.parseFloat(String(e[t]));return isNaN(i)?isNaN(r):r>=i}return!1},lessThan:(e,t,o)=>{if(e){const i=Number.parseFloat(String(o)),r=Number.parseFloat(String(e[t]));return isNaN(i)?isNaN(r):r<i}return!1},lessThanOrEqual:(e,t,o)=>{if(e){const i=Number.parseFloat(String(o)),r=Number.parseFloat(String(e[t]));return isNaN(i)?isNaN(r):r<=i}return!1}},ja=new Map([["boolean",Ba],["datetime",Oa],["enum",Ea],["number",$a],["text",Na]]);function no(){const e=n.ref([]),t=new Map,{loadConditionGroup:o}=to();function i(M,g){switch(M){case"check-box":return new Tn({value:g});case"combo-list":return new Nn({value:g});case"combo-lookup":return new kn({value:g});case"input-group":return new Nt({value:g});case"date-picker":return new Vn({value:g});case"date-range":return new It({value:g});case"datetime-picker":return new In({value:g});case"datetime-range":return new It({value:g});case"lookup":return new Bn({value:g});case"month-picker":return new On({value:g});case"month-range":return new En({value:g});case"number-range":return new $n({value:g});case"number-spinner":return new jn({value:g});case"radio-group":return new Pn({value:g});default:return new Nt({value:g})}}const r=new Map([["boolean","check-box"],["date","date-picker"],["datetime","datetime-picker"],["number","number-spinner"],["string","text"],["text","text"],["enum","combo-list"],["reference","lookup"]]),a=new Map([["boolean",tt.In],["date",tt.Equal],["datetime",tt.Equal],["number",tt.Equal],["string",tt.Equal],["text",tt.Equal],["enum",tt.In],["reference",tt.Equal]]);function l(M){var v;const g=M.dataType||"string";return((v=M.editor)==null?void 0:v.type)||r.get(g)||"text"}function c(M){var k,w,x,T,V;const g=`field_filter_${M.field}`,v=Date.now(),S=M.field,h=((k=M.column)==null?void 0:k.title)||"",F=((w=M.column)==null?void 0:w.dataType)||"string",N=a.get(F)||tt.Equal,m=((T=(x=M.column)==null?void 0:x.editor)==null?void 0:T.type)||r.get(F)||"text",_=i(m,(V=M.column)==null?void 0:V.filter),b=m==="lookup"||m==="combo-lookup"?Mt.SmartHelp:m==="combo-list"?Mt.Enum:Mt.Value;t.set(g,{id:g,fieldCode:S,fieldName:h,compareType:N,valueType:b,value:_,conditionId:v}),e.value=Array.from(t.values())}function s(M){const g=`field_filter_${M.field}`;t.delete(g),e.value=Array.from(t.values())}function u(M){t.delete(M),e.value=Array.from(t.values())}function f(){t.clear(),e.value=[]}function d(M){const{valueType:g}=M.value,v=M.compareType||"0",S=Ia[Number(v)];return ja.get(g)[S]}function p(M){const g=M.relation===2?0:1,v=M.items.map(h=>{const F=d(h);return m=>F(m,h.fieldCode,h.value.getValue())}),S=M.children&&M.children.length?M.children.map(h=>p(h)):[];return{relation:g,filterFunctions:v,children:S}}function y(){const M=o(e.value);return p(M)}function C(M,g){const v=g.filterFunctions.map(h=>h(M)),S=g.children.map(h=>C(M,h));return g.relation===1?v.every(h=>h)&&S.every(h=>h):v.includes(!0)||S.includes(!0)}function I(M){const g=y();return C(M,g)}return{addColumnFilter:c,apply:I,clearCondition:f,conditions:e,getFilterEditorType:l,removeColumnFilter:s,removeCondition:u}}function oo(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"}),r=n.computed(()=>e.hierarchy&&e.selection.showCheckbox),a=n.computed(()=>(e.treeNodeIconsData.fold||e.iconField)&&e.showTreeNodeIcons);return{collapseField:t,hasChildrenField:o,parentIdField:i,shouldShowCheckBox:r,shouldShowIcon:a}}function io(e,t,o,i,r,a,l,c){var it;const{dataView:s,visibleDataItems:u}=t,{getVisualData:f,maxVisibleRowIndex:d,minVisibleRowIndex:p}=r,y=n.computed(()=>i.value.primaryColumnsWidth),C=n.computed(()=>i.value.leftColumnsWidth),I=n.computed(()=>i.value.rightColumnsWidth),M=((it=e.rowOption)==null?void 0:it.height)||28,g=n.ref(0),v=n.ref(0);let S=0,h=a.value-1;const F=n.ref(0),N=n.ref(0),m=n.ref(0),_=n.ref(e.virtualized),b=24,k=1.5;let w;function x(){const P=u.value;if(P.length<=0)return 0;const W=d.value<P.length?P[d.value]:P[P.length-1];return W.__fv_data_position__>P.length*M?P.length*M:(W.__fv_data_position__||0)+(W.__fv_data_height__||0)+Math.max(P.length-1-d.value,0)*M}const T=n.computed(()=>{const P=x(),W=u.value;let K=W.length>a.value+l?(a.value+l)/W.length:N.value/Math.max(P,N.value),me=Math.floor(K*N.value);for(;N.value>0&&me<b;)K*=k,me=Math.floor(K*N.value);return me}),V=n.computed(()=>Math.floor(m.value/Math.max(y.value,m.value)*F.value)),B=0,E=0,O=n.computed(()=>F.value-(C.value+y.value+I.value+c.value));function $(P){const K=Math.floor(P/M)+1,me=u.value;return me.length>K?me[K].__fv_visible_index__-1:0}function L(P,W,K){let me=P,be=W;const Oe=W-P+1;if(Oe<l+a.value+l){const Ne=l+a.value+l-Oe,Ce=W+Ne<=K,Be=0+Ne<=P;if(Ce)be+=Ne,h=be;else if(Be)me-=Ne,S=me;else{const Fe=K-W,_e=Ne-Fe;be=Math.min(W+Fe,K),me=Math.max(P-_e,0)}}return{actualStart:me,actualEnd:be}}function H(P){var Fe,_e;const W=u.value;if(!W.length){o.value=[];return}const K=(Fe=e.pagination)!=null&&Fe.enable?0:Math.max(S-l,0),me=W[W.length-1].__fv_visible_index__,be=(_e=e.pagination)!=null&&_e.enable?W.length-1:Math.min(h+l,me),{actualStart:Oe,actualEnd:Ne}=L(K,be,me),Ce=W[Oe-1],Be=f(Oe,Ne,Ce,P);Be.length&&(o.value=[...Be])}const Y=n.computed(()=>x()>N.value),J=n.computed(()=>Math.floor(y.value)>m.value);function ne(P,W){let K=P;const me=K>B,be=Y.value;be&&K<N.value-W&&(K=N.value-W),(!be||me)&&(K=B),g.value!==K&&(g.value=K)}function le(){_.value&&(S=$(Math.abs(g.value)),h=S+a.value-1,(S<p.value||h>d.value-l/2)&&H())}function R(P){let W=g.value+P;W>B&&(W=B);const K=x();ne(W,K),le()}function Z(P){if(!J.value){v.value=0;return}let W=v.value+P;W>E&&(W=E),W<O.value&&(W=O.value),v.value!==W&&(v.value=W)}function ue(){Math.abs(v.value)+m.value>y.value&&(v.value=Math.min(m.value-y.value,0))}function ee(){g.value=0,S=0,h=a.value-1,H()}function A(){const P=x();ne(g.value,P)}n.watch([m,y],()=>{Z(0)});function U(P){let{deltaX:W}=P.deltaX,K=-1*P.deltaY;return typeof W>"u"&&(W=-1*P.wheelDeltaX/6),typeof K>"u"&&(K=P.wheelDeltaY/6),P.deltaMode&&P.deltaMode===1&&(W*=10,K*=10),P.shiftKey?{deltaY:-K,deltaX:-W}:{deltaX:W,deltaY:K}}function ye(P){if(e.disabled||!Y.value)return;P.preventDefault(),P.stopPropagation();const{deltaX:W,deltaY:K}=U(P);R(K),Z(W)}const fe=n.computed(()=>({height:`${s.value.length*M}px`,width:`${C.value}px`,transform:`translateY(${g.value}px)`})),$e=n.computed(()=>({transform:`translateY(${g.value}px)`})),je=n.computed(()=>({height:`${s.value.length*M}px`,width:`${y.value}px`,transform:`translate(${v.value}px, ${g.value}px)`})),Me=n.computed(()=>({transform:`translate(${v.value}px, ${g.value}px)`})),Se=n.computed(()=>({height:`${s.value.length*M}px`,width:`${I.value}px`,transform:`translateY(${g.value}px)`})),Ve=n.computed(()=>({transform:`translateY(${g.value}px)`})),Pe=n.computed(()=>({height:`${s.value.length*M}px`,width:`${c.value}px`,transform:`translateY(${g.value}px)`})),Ie=n.computed(()=>({width:`${C.value}px`})),pe=n.computed(()=>({transform:`translateX(${v.value}px)`})),j=n.computed(()=>({width:`${I.value}px`})),ie=n.computed(()=>{const P=x();return ne(g.value,P),g.value/(N.value-P)*(N.value-T.value)}),te=n.computed(()=>({height:`${T.value}px`,top:`${ie.value}px`})),ge=n.computed(()=>v.value/O.value*(F.value-V.value)),Te=n.computed(()=>({width:`${V.value}px`,left:`${ge.value}px`})),Ae=n.ref(!1),ze=n.ref(-1),Ue=n.ref(-1),Je=n.ref();function Ze(P){if(Ae.value&&Ue.value!==-1){const W=Ue.value-P.pageX,K=F.value-V.value;if(Math.abs(W)<=K){const me=W/(m.value-V.value)*(y.value-m.value);Z(me),Ue.value=P.pageX}}}function Ke(P){if(Ae.value&&ze.value!==-1){const W=ze.value-P.pageY,K=x(),me=K-T.value;if(Math.abs(W)<=me){const be=W/(N.value-T.value)*(K-N.value);R(be),ze.value=P.pageY}}}function nt(P){Ae.value=!1,ze.value=-1,Ue.value=-1,document.removeEventListener("mouseup",nt),document.removeEventListener("mousemove",Ze),w&&document.removeEventListener("mousemove",w),document.body.style.userSelect="",Je.value&&(Je.value.style.opacity=null)}function ot(P,W,K){var Oe;Ae.value=!0;const me=(Oe=P.target)==null?void 0:Oe.parentElement;me&&(me.style.opacity="1",Je.value=me);const be=K==="horizontal"?Ze:Ke;K==="vertical"&&(ze.value=P.pageY),K==="horizontal"&&(Ue.value=P.pageX),W.value&&(w||(w=Re.throttle(be,100)),W.value,document.addEventListener("mousemove",w),document.addEventListener("mouseup",nt),document.body.style.userSelect="none")}return{dataGridWidth:F,fitHorizontalScroll:ue,gridDataStyle:je,gridHeaderColumnsStyle:pe,gridMergedDataStyle:Me,gridSideStyle:Pe,horizontalScrollThumbStyle:Te,leftFixedGridDataStyle:fe,leftFixedGridHeaderColumnsStyle:Ie,leftFixedGridMergedDataStyle:$e,offsetX:v,offsetY:g,onMouseDownScrollThumb:ot,onWheel:ye,reCalculateVisualDataRows:H,resetScroll:ee,rightFixedGridDataStyle:Se,rightFixedGridHeaderColumnsStyle:j,rightFixedGridMergedDataStyle:Ve,shouldShowHorizontalScrollbar:J,shouldShowVirticalScrollbar:Y,updateVirticalScroll:A,updateVisibleRowsOnLatestVisibleScope:le,verticalScrollThumbStyle:te,viewPortWidth:m,viewPortHeight:N}}function ro(e,t,o,i,r,a,l,c){const s=n.ref(i.value-1+r),u=n.ref(0),{renderDataRow:f}=a,d=l?l.renderGroupRow:f,p=c?c.renderSummaryRow:f;function y(M){let g=f;return M.__fv_data_grid_group_row__&&(g=d),M.__fv_data_grid_group_summary__&&(g=p),g}function C(M,g,v,S){const{visibleDataItems:h}=o,F=[],N=h.value;if(N.length>0){const m=S?Date.now().toString():"";for(let _=M,b=0;_<=g;_++,b++){const k=N[_],w=N[_-1]||v,x=F[b-1],T=w?(w.__fv_data_position__||0)+(w.__fv_data_height__||0):0,B=y(k)(k,w,x,_,T,t.value,F);B.refreshKey=m,F.push(B)}}return u.value=F.length>0?F[0].index:0,s.value=F.length>0?F[F.length-1].index:0,F}function I(M,g,v){const S=g.groupField||"",{groupValue:h}=g;o[M](S,h);const{dataView:F}=o,N=v[0].index,m=Math.min(N+i.value+r+1,F.value.length-1);return C(N,m)}return{getVisualData:C,maxVisibleRowIndex:s,minVisibleRowIndex:u,toggleGroupRow:I}}function ao(e){var r;const t=((r=e.rowOption)==null?void 0:r.height)||28;function o(a,l){const c=a.pre;if(c){const s=c?c.__fv_data_position__!==void 0?c.__fv_data_position__:c.__fv_index__*t:0,u=c?c.__fv_data_height__!==void 0?c.__fv_data_height__:t:0,f=a.visible?s+u:c.__fv_data_position__;a.top=f,l.__fv_data_position__=f}else a.top=0,l.__fv_data_position__=0}function i(a,l,c){if(a&&!l.ref){l.ref=a;const s=l.parent;l.cellHeight!==a.offsetHeight&&(l.cellHeight=a.offsetHeight),l.cellHeight&&l.cellHeight>(s.height||0)&&(s.height=l.cellHeight,c.__fv_data_height__=s.height),o(s,c)}}return{updateRowPosition:o,updateVisualInfomation:i}}function Pa(){function e(t,o){const{formatter:i}=t,r=xe.resolveField(o.raw,t.field);if(r.includes(",")){const l=r.split(","),c=i.data.reduce((u,f)=>(u[f.value]=f,u),{});return l.map(u=>c[u].name).join(",")}const a=i.data.find(l=>l.value===r);return(a==null?void 0:a.name)||""}return{renderEnumColumn:e}}function Ra(){function e(i,r){return i?n.createVNode("span",{innerHTML:r.formatter.trueText},null):n.createVNode("span",{innerHTML:r.formatter.falseText},null)}function t(i,r){var a,l;return i?(a=r.formatter)==null?void 0:a.trueText:(l=r.formatter)==null?void 0:l.falseText}function o(i,r){const{formatter:a}=i,l=xe.resolveField(r.raw,i.field);if(a.type===Lt.TEXT)return t(l,i);if(a.type===Lt.IMAGE)return e(l,i)}return{renderBooleanColumn:o}}function Da(){const{formatTo:e}=xe.useDateFormat();function t(i,r){return e(i,r.formatter.dateFormat)}function o(i,r){const a=xe.resolveField(r.raw,i.field);return t(a,i)}return{renderDateColumn:o}}function Ha(){const{formatTo:e}=xe.useNumberFormat();function t(i,r){const{formatter:a}=r,l={precision:a.precision,prefix:a.prefix||"",suffix:a.suffix||"",decimalSeparator:a.decimal||".",groupSeparator:a.thousand||""};return e(i,l)}function o(i,r){const a=xe.resolveField(r.raw,i.field);return t(a,i)}return{renderNumberColumn:o}}function Aa(){const{renderBooleanColumn:e}=Ra(),{renderEnumColumn:t}=Pa(),{renderNumberColumn:o}=Ha(),{renderDateColumn:i}=Da();function r(c){return c}function a(c,s){const{formatter:u}=s;return u.customFormat?new Function(`return ${u.customFormat}`)():c}function l(c,s,u){const f=xe.resolveField(u.raw,[s.field]),{formatter:d}=s;return d.type==="none"?f:d.type==="custom"?a(f,s):d.type==="enum"?t(s,u):d.type==="number"?o(s,u):d.type==="boolean"?e(s,u):d.type==="date"?i(s,u):f}return{renderFormatColumn:l}}function lo(e,t,o){var M;const i=n.ref(e.mergeCell);(M=n.ref(e.rowOption).value)!=null&&M.wrapContent;const{updateVisualInfomation:a}=o,{renderCommandColumn:l}=sr(),{renderFormatColumn:c}=Aa();function s(g,v,S,h,F,N=1){const m={colSpan:N,rowSpan:1,index:S,field:g,data:xe.resolveField(h,g),editingData:xe.resolveField(h,g),parent:F,mode:v,align:"left",valign:"start",showEllipsis:!0,getEditor:_=>_.data,setRef:_=>a(_,m,h),update:()=>{},accept:()=>{},cancel:()=>{},updateData:()=>{}};return m}function u(g,v,S){return g.getEditor=h=>t.getEditor(h,v,h.parent),g.setRef=h=>a(h,g,S),g.update=h=>{h!==void 0&&(g.editingData=h)},g.accept=()=>{xe.setFieldValue(g.editingData,S,v.field),g.data=xe.resolveField(S,v.field)},g.cancel=()=>{g.editingData=g.data},g.updateData=h=>{xe.setFieldValue(xe.resolveField(h,v.field),S,v.field),g.data=xe.resolveField(S,v.field),g.editingData=xe.resolveField(S,v.field)},g}function f(g,v){v.dataType==="commands"?g.formatter=(S,h)=>l(v,h):v.formatter&&(g.formatter=(S,h)=>typeof v.formatter=="function"?v.formatter(S,h):c(v.dataType,v,h))}function d(g,v,S){const h=v&&v.data[S];if(h&&h.data===g.data){const N=h&&h.spannedBy||h;N.rowSpan++,N.spanned=N.spanned||[],N.spanned.push(g),g.colSpan=0,g.rowSpan=0,g.spannedBy=N}}function p(g,v,S){i.value&&d(g,v,S.field)}function y(g,v){v.showEllipsis!==void 0&&(g.showEllipsis=v.showEllipsis),g.column=v,g.align=v.align||"left",g.valign=v.valign||"middle"}function C(g,v,S,h){y(g,v),u(g,v,h),f(g,v),p(g,S,v)}function I(g,v,S,h,F){const N=g.readonly?De.readonly:De.editable,m=s(g.field,N,v,S,h);return C(m,g,F,S),m}return{createCellByColumn:I,createCellByField:s,updateCellByColumn:C}}function so(e,t,o,i,r,a){var v,S;const l=n.ref(e.rowOption),c=((v=l.value)==null?void 0:v.height)||28,s=((S=l.value)==null?void 0:S.wrapContent)||!1,{idField:u}=i,{collapseField:f}=o,{updateRowPosition:d}=r,{createCellByColumn:p}=a,y=(h,F,N,m)=>{xe.setFieldValue(xe.resolveField(h,m),F,m),N.data[m].data=xe.resolveField(F,m),N.data[m].editingData=xe.resolveField(F,m)};function C(h,F,N,m,_,b,k){var R,Z,ue;const{__fv_data_grid_group_field__:w,__fv_data_grid_group_value__:x,__fv_data_index__:T}=N,V=N.__fv_data_grid_group_layer__||(N.__fv_parents__?(R=N.__fv_parents__)==null?void 0:R.size:0)||0,B=typeof N.parent=="number"?Number(N.parent):-1,E=N.__fv_data_grid_group_collapse__||N[f.value],O=N.__fv_visible__===void 0?!0:N.__fv_visible__,$=N.__fv_checked__,L=N.__fv_indeterminate__,H=N.__fv_disabled__||N[((Z=e.rowOption)==null?void 0:Z.disabledField)||"disabled"],Y=k==null?void 0:k.find(ee=>ee.raw[u.value]===N.parent),J=Y&&Y.collapse;m&&(m.parent,N.parent);const ne=J||Y&&!Y.visible,le={collapse:E,data:{},dataIndex:T,groupField:w,groupValue:x,layer:V,index:F,parentIndex:B,pre:m,top:b,type:h,raw:N,checked:$,disabled:H,indeterminate:L,setRef:ee=>{le.ref=ee},visible:O&&!ne,status:lt.initial,updateCell:(ee,A)=>{y(ee,N,le,A)},updateCells:(ee,A)=>{A.forEach(U=>{y(ee,N,le,U)})}};return m||(N.__fv_data_position__=0),s||(le.height=c,N.__fv_data_height__=le.height,d(le,N)),(ue=l.value)!=null&&ue.customRowStatus&&(l.value.customRowStatus(le),N.__fv_collapse__=le.collapse,N.__fv_disabled__=le.disabled,N.__fv_visible__=le.visible),le}function I(h,F,N,m,_,b,k){const w=C(ht.data,_,F,N,m,b,k);return h.forEach((x,T)=>{w.data[x.field]=p(x,_,F,w,m)}),w}function M(h,F,N,m,_){return Object.assign(h,{index:F,dataIndex:N,top:m,pre:_})}function g(h,F,N,m,_,b,k){const w=h.__fv_data_index__,x=h[u.value],T=t.getEditingSnapshot(x);return T===null?I(b,h,F,N,m,_,k):M(T,m,w,_,F)}return{createEmptyRow:C,createNewRowFromDataItem:I,renderDataRow:g}}function La(e,t,o,i){const r=n.ref(e.summary),{idField:a}=t,{createCellByField:l}=o,{createEmptyRow:c}=i,s=n.computed(()=>{const p=r.value;return(p==null?void 0:p.groupFields)||[]}),u=n.computed(()=>{const p=r.value;return p&&p.enable&&p.groupFields&&p.groupFields.length>0});function f(p,y,C,I){if(u.value){const M=p.data[y];let g=M.colSpan;const v=s.value.reduce((S,h)=>(S.set(h,!0),S),new Map);I.reduce((S,h,F)=>{if(v.has(h.field)){const N=l(h.field,De.readonly,F,C,p);p.data[h.field]=N,g-1>F&&(g=F)}return S},p),M.colSpan=g}}function d(p,y,C,I,M,g,v){const S=p.__fv_data_grid_group_field__,h=c(ht.group,I,p,y,C,M);return h.data[a.value]=l(a.value,De.readonly,-1,p,h,0),h.data[S]=l(S,De.readonly,1,p,h,g.length),f(h,S,p,g),h}return{renderGroupRow:d}}function Ga(e,t,o,i){const{idField:r}=t,{createCellByField:a}=o,{createEmptyRow:l}=i;function c(s,u,f,d,p,y,C){const I=s.__fv_data_grid_group_field__,M=l(ht.summary,d,s,u,f,p);return M.data[r.value]=a(r.value,De.readonly,-1,s,M),M.data[I]=a(I,De.readonly,1,s,M,y.length),M}return{renderSummaryRow:c}}function co(e,t,o,i){var w;const{idField:r}=o,a=n.ref(e.editable),l=n.ref(e.editOption),c=n.ref(((w=e.rowOption)==null?void 0:w.wrapContent)||!1),{onClickRow:s}=i;n.watch(()=>e.editable,()=>{a.value=e.editable}),n.watch(()=>{var x;return(x=e.editOption)==null?void 0:x.editMode},x=>{l.value.editMode=x});const u=new Map([["boolean","check-box"],["datetime","date-picker"],["enum","combo-list"],["number","number-spinner"],["string","input-group"],["text","text"],["commands","commands-editor"]]);let f,d,p,y;function C(x){return d&&d.raw[r.value]===x?d:null}const I=n.reactive({});function M(x,T,V={}){x.mode=De.editing,f=x,d=T,p=xe.resolveField(T==null?void 0:T.raw,x.field),y=V}function g(x){x.accept(),x.mode=De.editable,f=null,t.emit("endEditCell",{cell:x,row:d,newValue:xe.resolveField(d==null?void 0:d.raw,x.field),oldValue:p,column:y,editor:I})}function v(x){if(document.body.classList.contains("lookup-modal-open"))return;const V=x.target.closest(".fv-grid-cell");f&&f.ref&&f.ref===V||(f&&(g(f),d&&(d=void 0)),document.body.removeEventListener("click",v))}function S(x,T,V,B={}){x.stopPropagation(),s(x,V),a.value&&l.value.editMode==="cell"&&T.mode===De.editable&&(f&&g(f),Promise.resolve().then(()=>Re.isUndefined(e.beforeEditCell)?!0:typeof e.beforeEditCell=="function"?e.beforeEditCell({row:V,cell:T,rawData:V.raw,column:B}):e.beforeEditCell).then(E=>{E&&(M(T,V,B),document.body.removeEventListener("click",v),document.body.addEventListener("click",v))}))}function h(x){Object.values(x.data).filter(T=>T.mode===De.editable&&T.field!=="__commands__").forEach(T=>{T.mode=De.editing}),x.status=lt.editing,d=x}function F(x,T){Object.values(x.data).filter(V=>V.mode===De.editing).forEach(V=>{T?V.accept():V.cancel(),V.mode=De.editable}),x.status=lt.initial,d===x&&(d=void 0)}function N(x){a.value&&l.value.editMode==="row"&&d!==x&&(d&&F(d,!1),h(x))}function m(x){F(x,!0),x.status=lt.initial}function _(x){F(x,!1),x.status=lt.initial}function b(x,T,V){const B=T.dataType,E=T.editor||{type:u.get(B)||"input-group"};return!c.value&&E.type==="text"&&(E.type="input-group"),E?(E.context={rowData:V.raw,column:T,cell:x,editor:I},n.createVNode(Pt.FDynamicFormInput,{focusOnCreated:e.focusOnEditingCell,selectOnCreated:e.selectOnEditingCell,editor:E,modelValue:x.editingData,"onUpdate:modelValue":O=>x.editingData=O,id:T.id},null)):x.data}function k(){f&&g(f)}return{onClickCell:S,onEditingRow:N,acceptEditingRow:m,cancelEditingRow:_,getEditingSnapshot:C,getEditor:b,endEditCell:k}}function uo(e){const t=n.ref(e.idField);function o(i){if(i&&i.length){const r=i[0];Object.keys(r).includes(t.value)||(t.value="__fv_indetify__")}}return{idField:t,reviseIdentifyField:o}}function fo(e,t,o,i){const{idField:r}=i,{currentSelectedDataId:a,multiSelectOnClickRow:l,multiSelectOnClickRowWithShift:c,selectItem:s,selectedValues:u,toggleSelectItem:f,enableSelectRow:d}=o,p=n.ref(0),y=n.ref(-1);function C(m){return d.value&&(c.value?u.value.includes(m.raw[r.value]):m.raw[r.value]===a.value)}function I(m){var b;const _={"fv-grid-row":m.type===ht.data,"fv-grid-group-row":m.type===ht.group,"fv-grid-summary-row":m.type===ht.summary,"fv-grid-row-hover":m.index===y.value,"fv-grid-row-selected":C(m),"fv-grid-row-odd":m.dataIndex%2>0,"fv-grid-row-even":m.dataIndex%2===0,"fv-grid-disabled":m.disabled};if((b=e.rowOption)!=null&&b.customRowStyle){const k=e.rowOption.customRowStyle(m.raw)||{};return Object.assign({},_,k)}return _}function M(m){var b;const _={"fv-grid-cell":!0};if((b=e.rowOption)!=null&&b.customCellStyle){const k=e.rowOption.customCellStyle(m)||{};return Object.assign({},_,k)}return _}function g(m){p.value+=1,setTimeout(()=>{p.value===1&&t.emit("clickRow",m.index,m.raw),p.value=0},250),p.value>1&&(t.emit("doubleClickRow",m.index,m.raw),p.value=0)}function v(m,_){if(_.disabled)return;c.value&&m.shiftKey||l.value?f(_):s(_),g(_)}function S(m){m.disabled||(a.value=m.raw[r.value],g(m))}function h(m,_){}function F(m,_){}function N(m){var b;const _={"fv-grid-sidebar-row":!0,"fv-grid-sidebar-row-hover":m.index===y.value,"fv-grid-sidebar-row-selected":C(m),"fv-grid-sidebar-row-odd":m.dataIndex%2>0,"fv-grid-sidebar-row-even":m.dataIndex%2===0,"d-flex":!0,"align-items-center":!0};if((b=e.rowOption)!=null&&b.customRowStyle){const k=e.rowOption.customRowStyle(m.raw)||{};return Object.assign({},_,k)}return _}return{clickRowItem:S,gridCellClass:M,gridRowClass:I,onClickRow:v,onMouseoverRow:h,sidebarRowClass:N,onMouseoutRow:F}}function po(e,t,o,i,r){const{idField:a}=o,l=n.ref(""),c=n.computed(()=>e.selection.enableSelectRow),s=n.ref(e.selection.multiSelect??!1),u=n.ref(e.selection.multiSelectMode),f=n.ref(e.selection.showCheckbox),d=n.ref(e.selection.showSelectAll),p=n.ref(e.selectionValues);n.watch(()=>e.selection.showSelectAll,(R,Z)=>{R!==Z&&(d.value=R)});function y(){return t.getSelectionItems(p.value)}function C(){const R=i.value.reduce((ue,ee)=>(ue.set(ee.raw[a.value],ee),ue),new Map);return p.value.map(ue=>R.get(ue)).filter(ue=>!!ue)}const I=n.computed(()=>c.value&&s.value),M=n.computed(()=>!!e.hierarchy),g=n.computed(()=>{const R=f.value&&u.value==="DependOnCheck";return I.value&&R}),v=n.computed(()=>I.value&&!f.value),S=n.computed(()=>I.value&&f.value&&u.value==="OnCheckAndClick");n.computed(()=>S.value);function h(){const R=t.getSelectionItems(p.value);r.emit("selectionChange",R)}function F(R){r.emit("unSelectItem",R)}function N(){i.value.forEach(Z=>{Z.checked=!1,Z.indeterminate=!1,Z.raw.__fv_checked__=!1,Z.raw.__fv_indeterminate__=!1}),C().forEach(Z=>{Z.checked=!0,Z.raw.__fv_checked__=!0})}n.watch(()=>i.value,()=>{N()}),n.watch(()=>e.selectionValues,R=>{p.value=R,N()},{immediate:!0}),n.watch(()=>e.selection,R=>{s.value=!!R.multiSelect,u.value=R.multiSelectMode||"DependOnCheck",f.value=!!R.showCheckbox});const m=n.computed(()=>!s.value);function _(R){return R.raw[a.value]}function b(R){return p.value.findIndex(ue=>ue===_(R))}function k(){C().forEach(ue=>{ue.checked=!1}),t.getSelectionItems(p.value).forEach(ue=>{ue.__fv_checked__=!1}),p.value=[],l.value=""}function w(R){const Z=R.raw;Z.__fv_checked__=!0,Z.__fv_indeterminate__=!1;const ue=new Set(p.value);ue.add(Z[a.value]),p.value=Array.from(ue.values()),R.checked=!0,R.indeterminate=!1}function x(R){const Z=R.raw;Z.__fv_checked__=!1,Z.__fv_indeterminate__=!1,p.value=p.value.filter(ue=>ue!==Z[a.value]),R.checked=!1,R.indeterminate=!1}function T(R){w(R),l.value=R.raw[a.value]}function V(R){x(R),l.value=""}function B(R){const Z=R.raw;Z.__fv_checked__=!1,Z.__fv_indeterminate__=!0,p.value=p.value.filter(ue=>ue!==Z[a.value]),R.checked=!1,R.indeterminate=!0}function E(R){m.value&&k(),R.checked?x(R):w(R),h()}function O(R){m.value&&k(),R.checked?V(R):T(R),h(),R.checked||F(R)}function $(R){R.raw[a.value]!==l.value&&(k(),T(R),h())}function L(R){const Z=i.value.find(ue=>ue.raw[a.value]===R);Z&&$(Z)}function H(R){const Z=i.value.filter(ue=>R.includes(ue.raw[a.value]));Z&&Z.length&&(k(),Z.forEach(ue=>{T(ue)}),h())}function Y(R){for(const Z of R)if(p.value.includes(Z)){const ue=i.value.find(ee=>ee.raw[a.value]===Z);ue&&V(ue)}}function J(){i.value.forEach(R=>T(R)),h()}function ne(){p.value.splice(0,p.value.length),i.value.forEach(R=>{const Z=R.raw;Z.__fv_checked__=!1,Z.__fv_indeterminate__=!1,R.checked=!1,R.indeterminate=!1}),h()}function le(){return i.value.find(R=>R.raw[a.value]===l.value)}return{clearSelection:k,currentSelectedDataId:l,enableMultiSelect:s,enableSelectRow:c,findIndexInSelectedItems:b,getSelectedItems:y,getSelectionRow:le,indeterminate:B,isSelectingHirarchyItem:M,multiSelectMode:u,multiSelectOnClickRow:S,multiSelectOnClickRowWithShift:v,multiSelectOnlyOnCheck:g,select:T,selectAll:J,selectedValues:p,selectItem:$,selectItemById:L,selectItemByIds:H,showCheckBox:f,showSelectAll:d,toggleSelectItem:O,toggleSelectItemWithoutRow:E,unSelect:V,unSelectAll:ne,unSelectItemByIds:Y}}function mo(e,t){var M,g;const o=String(Date.now()),i=50,{showCheckBox:r,showSelectAll:a}=t,l=n.ref(((M=e.rowNumber)==null?void 0:M.enable)??!1),c=n.computed(()=>e.hierarchy&&r.value&&e.selection.enableSelectRow&&e.selection.multiSelect?!1:r.value),s=n.ref(l.value?((g=e.rowNumber)==null?void 0:g.width)??32:0),u=n.ref(c.value?i:0),f=n.computed(()=>{var v;return l.value?((v=e.rowNumber)==null?void 0:v.heading)??"序号":""}),d=n.computed(()=>(c.value&&!e.hierarchy?Number(u.value):0)+(l.value?Number(s.value):0));n.watch(()=>e.rowNumber,v=>{v&&v.enable!==void 0&&(l.value=v.enable),v&&v.width!==void 0&&(s.value=v.width)});function p(v){return{top:`${v.top}px`,width:`${d.value}px`,height:`${v.height||""}px`}}const y=n.computed(()=>({width:`${d.value}px`}));function C(v){return`${o}_${v.type}_r_${v.index}_${v.refreshKey||""}`}function I(v){return`${o}_${v.type}_r_${v.index}_${v.refreshKey||""}`}return{showRowNumer:l,showSidebarCheckBox:c,sidebarCellPosition:p,sidebarCornerCellStyle:y,sidebarTitle:f,sidebarWidth:d,rowKey:I,cellKey:C}}const Wa={ascend:(e,t)=>e===t?0:e===!1?-1:1,decend:(e,t)=>e===t?0:e===!0?-1:1},qa={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}},za={ascend:(e,t)=>e===t?0:e<t?-1:1,decend:(e,t)=>e===t?0:e<t?1:-1},Ua={ascend:(e,t)=>e===t?0:e<t?-1:1,decend:(e,t)=>e===t?0:e<t?1:-1};function ho(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",Wa],["datetime-sorter",qa],["numeric-sorter",za],["text-sorter",Ua]]);function i(l){const c=(l==null?void 0:l.dataType)||"string",s=t.get(c)||"text-sorter";return o.get(s)||(l==null?void 0:l.sorter)}function r(l){return i(l.column)}function a(l,c){const s=r(l),u=(l.status&We.sortable)===We.sortable&&(l.status&We.sorted)===We.sorted,f=(l.status&We.ascending)===We.ascending,d=(l.status&We.descending)===We.descending;if(u&&s){const p=f?s.ascend:d?s.decend:void 0;p?c.addSorter(l.field,{field:l.field,compare:p}):c.removeSorter(l.field)}else c.removeSorter(l.field)}return{getSorterByColumn:i,updateSorter:a}}function Ya(e){const t="parent",o="layer",i="hasChildren",r=(a,l=1,c=[],s=null)=>(a=a||[],a.reduce((u,f)=>(f.id=f.id||f.data[e.idField],f[t]=s,f[o]=l,f[i]=!1,Object.keys(f.data).forEach(d=>{Object.keys(f).includes(d)||(f[d]=f.data[d])}),c.push(f),f.children&&f.children.length&&(f[i]=!0,r(f.children,l+1,c,f.id)),u),c),c);return{flatTreeData:r}}function Xa(e,t,o,i,r,a,l,c,s,u,f,d,p,y,C){const{calculateCellPositionInRow:I,cellKey:M,cellPosition:g,rowKey:v,rowPosition:S,rowSpanCellPosition:h,groupCellPosition:F,summaryCellPosition:N}=l,{cellContentClass:m,cellContentPosition:_,cellContentClassWithEllipsis:b}=a,{collpaseGroupIconClass:k}=u,{gridCellClass:w,gridRowClass:x,onClickRow:T,onMouseoverRow:V,onMouseoutRow:B}=d,{onClickCell:E}=s,{toggleGroupRow:O}=p,{columnContext:$,hasLeftFixedColumn:L,hasRightFixedColumn:H}=c,{navigateOnKeyUp:Y}=f,{gridDataStyle:J,gridMergedDataStyle:ne,leftFixedGridDataStyle:le,leftFixedGridMergedDataStyle:R,rightFixedGridDataStyle:Z,rightFixedGridMergedDataStyle:ue}=y;function ee(j,ie){ie.collapse=!ie.collapse,C.value=O(ie.collapse?"collapse":"expand",ie,C.value)}function A(j,ie){const te=[];if(j.groupField&&ie[j.groupField]){for(let Te=0;Te<=j.layer;Te++)te.push(n.createVNode("div",{class:"fv-grid-group-row-icon",onClick:Ae=>ee(Ae,j)},[n.createVNode("span",{class:k(j)},null)]));const ge=j.data[j.groupField];te.push(n.createVNode("div",{ref:ge.setRef,key:M(j,j.layer+1),class:"fv-grid-cell",style:F(ge,ie,j.layer)},[ge.data])),Object.values(j.data).filter(Te=>Te.field!==j.groupField&&Te.colSpan!==0).forEach(Te=>{te.push(n.createVNode("div",{ref:Te.setRef,key:M(j,Te.index),class:"fv-grid-cell",style:g(Te,ie)},[Te.data]))})}return te}function U(j,ie){return j.layer>-1&&n.createVNode("div",{ref:j.setRef,key:v(j),class:x(j),style:S(j),onClick:te=>T(te,j),onMouseover:te=>V(te,j)},[A(j,ie)])}function ye(j,ie){const te=[];if(j.groupField&&ie[j.groupField]){const ge=j.data[j.groupField];te.push(n.createVNode("div",{ref:ge.setRef,key:M(j,j.layer+1),class:"fv-grid-cell",style:N(ge,ie,j.layer)},[ge.data]))}return te}function fe(j,ie){return j.layer>-1&&n.createVNode("div",{ref:j.setRef,key:v(j),class:x(j),style:S(j),onClick:te=>T(te,j),onMouseover:te=>V(te,j)},[ye(j,ie)])}function $e(j,ie){return n.createVNode("div",{ref:j.setRef,key:v(j),class:x(j),style:S(j),onClick:te=>T(te,j),onMouseover:te=>V(te,j),onMouseout:te=>B(te,j)},[Object.values(j.data).filter(te=>ie[te.field]&&te.rowSpan===1).map(te=>n.createVNode("div",{ref:te.setRef,key:M(j,te.index),class:w(te),style:g(te,ie),onClick:ge=>E(ge,te,j,te.column),onKeyup:ge=>Y(ge,te)},[n.createVNode("div",{class:m(te),style:_(te)},[n.createVNode("div",{class:b(te)},[te.data!=null&&t.slots.cellTemplate?t.slots.cellTemplate({cell:te,row:j}):te.mode===De.editing?te.getEditor(te):te.formatter?te.formatter(te,j):te.data!=null?te.data.toString():te.data])])]))])}const je=[$e,U,fe];function Me(j,ie){const te=I(j);return C.value.map(ge=>je[ge.type](ge,te))}function Se(j){const ie=I(j);return C.value.map(te=>Object.values(te.data).filter(ge=>ie[ge.field]&&ge.rowSpan>1).map(ge=>n.createVNode("div",{key:M(te,ge.index),class:"fv-grid-cell fv-grid-merged-cell",style:h(te,ge,ie)},[ge.data])))}function Ve(){return n.createVNode("div",{ref:i,class:"fv-grid-content-left-fixed"},[n.createVNode("div",{class:"fv-grid-data",style:le.value},[Me($.value.leftColumns.filter(j=>j.visible))]),n.createVNode("div",{class:"fv-grid-merge-date",style:R.value},[Se($.value.leftColumns.filter(j=>j.visible))])])}function Pe(){return n.createVNode("div",{ref:o,class:"fv-grid-content-primary"},[n.createVNode("div",{class:"fv-grid-data",style:J.value},[Me($.value.primaryColumns.filter(j=>j.visible))]),n.createVNode("div",{class:"fv-grid-merge-date",style:ne.value},[Se($.value.primaryColumns.filter(j=>j.visible))])])}function Ie(){return n.createVNode("div",{ref:r,class:"fv-grid-content-right-fixed"},[n.createVNode("div",{class:"fv-grid-data",style:Z.value},[Me($.value.rightColumns.filter(j=>j.visible))]),n.createVNode("div",{class:"fv-grid-merge-date",style:ue.value},[Se($.value.rightColumns.filter(j=>j.visible))])])}function pe(){const j=[];return L.value&&j.push(Ve()),j.push(Pe()),H.value&&j.push(Ie()),j}return{renderDataArea:pe}}const ft=n.defineComponent({name:"FDataGrid",props:kt,emits:["changed","clickRow","doubleClickRow","selectionChange","unSelectItem","enterUpInLastCell","pageIndexChanged","pageSizeChanged","beginEditCell","endEditCell"],setup(e,t){var bt,Ct;const i=((bt=e.rowOption)==null?void 0:bt.height)||28,r=n.ref(20),a=n.ref(e.columns),l=X.useIdentify(e),c=n.ref(),s=n.ref(),u=n.ref(),f=n.ref(),d=n.ref(),p=n.ref([]),y=n.ref(!1),C=n.ref(((Ct=e.rowOption)==null?void 0:Ct.wrapContent)||!1),I=X.useGroupData(e,l),M=X.useFilter(),g=X.useHierarchy(e),{showLoading:v,renderLoading:S}=X.useLoading(e,c),h=X.useDataView(e,new Map,M,g,l),F=X.usePagination(e,h),{shouldRenderPagination:N}=F,m=X.useSelection(e,h,l,p,t),_=n.computed(()=>e.disabled),b=n.computed(()=>Math.min(h.dataView.value.length,r.value));n.computed(()=>e.loadingConfig.message);const{containerStyleObject:k}=X.useDataViewContainerStyle(e),w=X.useCommandColumn(e),{applyCommands:x}=w;x(a);const T=X.useColumn(e),V=X.useSort(e),{applyColumnSorter:B,columnContext:E,updateColumnRenderContext:O}=T;B(h,V);const $=X.useGroupColumn(e,E),L=X.useRow(e,t,m,l),H=X.useEdit(e,t,l,L),Y=X.useVisualDataBound(e),J=X.useVisualDataCell(e,H,Y),ne=X.useVisualDataRow(e,H,g,l,Y,J),le=X.useVisualGroupRow(e,l,J,ne),R=X.useVisualSummaryRow(e,l,J,ne),Z=X.useVisualData(e,a,h,b,0,ne,le,R),{getVisualData:ue}=Z,ee=X.useCellContentStyle(E),A=X.useCellPosition(e,E),U=X.useSidebar(e,m),{sidebarWidth:ye}=U,fe=X.useVirtualScroll(e,h,p,E,Z,b,0,ye),{onWheel:$e,dataGridWidth:je,viewPortHeight:Me,viewPortWidth:Se,resetScroll:Ve,updateVisibleRowsOnLatestVisibleScope:Pe}=fe,Ie=X.useFitColumn(e,E,s,Se,$),{calculateColumnsSize:pe}=Ie,j=X.useFilterHistory(),ie=X.useColumnFilter(s,d,h,j,fe),te=X.useDragColumn(e,t,T,h,$,I,fe),ge=n.computed(()=>({"fv-grid":!0,"fv-grid-bordered":e.showBorder,"fv-grid-horizontal-bordered":e.showHorizontalLines,"fv-datagrid-strip":e.showStripe})),Te=n.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":y.value,"fv-grid-wrap-content":C.value})),{renderGridHeader:Ae,renderGridColumnResizeOverlay:ze,shouldShowHeader:Ue}=X.getColumnHeader(e,t,s,f,d,T,h,te,ie,M,j,Ie,$,m,U,V,fe,Se,p),{renderDataGridPagination:Je}=X.getPagination(e,t,h,fe,F),{renderDataGridSidebar:Ze}=X.getSidebar(e,L,m,U,fe),{renderDisableMask:Ke}=X.getDisableMask(),{renderDataGridSummery:nt}=X.getSummary(e,h,T),{renderHorizontalScrollbar:ot}=X.getHorizontalScrollbar(e,s,fe),{renderVerticalScrollbar:it}=X.getVerticalScrollbar(e,s,fe),{renderFilterPanel:P}=X.getFilterPanel(e,T,h,M,fe),{renderGroupPanel:W}=X.getGroupPanel(e,h,te,I,fe);function K(){var yt,jt;const he=Math.ceil(s.value.clientHeight/i);he>r.value&&(r.value=he,Pe()),Me.value=((yt=u.value)==null?void 0:yt.clientHeight)||0,je.value=((jt=s.value)==null?void 0:jt.clientWidth)||0,pe()}n.onMounted(()=>{s.value&&(r.value=Math.max(Math.ceil(s.value.clientHeight/i),r.value),p.value=ue(0,b.value+0-1),Tt.useResizeObserver(s.value,K),pe(),n.nextTick(()=>{s.value&&(je.value=s.value.clientWidth),u.value&&(Se.value=u.value.clientWidth,Me.value=u.value.clientHeight)})),v.value&&S()}),n.onUnmounted(()=>{}),n.watch(Se,()=>{});function me(){h.insertNewDataItem(),Ve()}function be(){h.insertNewDataItem(p.value.length),Ve()}function Oe(he){H.onEditingRow(he)}function Ne(he){h.removeDataItem(he),Ve()}function Ce(he){h.removeDataItemById(he),Ve()}function Be(he){H.acceptEditingRow(he)}function Fe(he){H.cancelEditingRow(he)}function _e(he){he&&(a.value=he,x(a),O(a.value),B(h,V),pe())}function ke(he){he&&(Ve(),h.load(he),p.value=ue(0,b.value+0-1))}function qe(he){F.updatePagination(he)}n.watch(()=>e.data,he=>{e.changePolicy==="default"&&ke(he)},{deep:!0}),n.watch(()=>e.columns,he=>{_e(he)});function pt(he){m.selectItemById(he)}function D(he){const yt=p.value.find(jt=>jt.raw[l.idField.value]===he);yt&&L.clickRowItem(yt)}function G(he){m.selectItemByIds(he)}function Q(){return p.value}function de(he){return p.value.filter(yt=>he.includes(yt.raw[e.idField]))}function ve(){return m.getSelectedItems()}function we(){return m.getSelectionRow()}function rt(){H.endEditCell()}function Ye(he){m.unSelectItemByIds(he)}function et(){m.clearSelection()}const at={addNewDataItem:me,addNewDataItemAtLast:be,removeDataItem:Ne,removeDataItemById:Ce,editDataItem:Oe,acceptDataItem:Be,cancelDataItem:Fe,selectItemById:pt,selectItemByIds:G,updateColumns:_e,updateDataSource:ke,updatePagination:qe,getVisibleData:Q,getVisibleDataByIds:de,getSelectedItems:ve,getSelectionRow:we,endEditCell:rt,clickRowItemById:D,clearSelection:et,unSelectItemByIds:Ye};t.expose(at);const He=X.useNavigation(e,t,at,T,H,p),{renderDataArea:st}=Xa(e,t,u,f,d,ee,A,T,H,I,He,L,Z,fe,p),Qe=n.computed(()=>!p.value||!p.value.length),{renderEmpty:Le}=X.getEmpty(t);return()=>n.createVNode("div",{ref:c,class:ge.value,style:k.value,onWheel:$e},[s.value&&P(),s.value&&W(),s.value&&Ue.value&&Ae(),n.createVNode("div",{ref:s,class:Te.value,onMouseover:()=>y.value=!0,onMouseleave:()=>y.value=!1},[s.value&&Ze(p),s.value&&st(),s.value&&Qe.value&&Le(),s.value&&ot(),s.value&&it()]),s.value&&nt(),N.value&&Je(),ze(),_.value&&Ke()])}});class Ka extends Bt{constructor(t,o){super(t,o)}getPropertyConfig(t){return this.getBasicPropConfig(t),this.getAppearanceProperties(t),this.getEventPropConfig(t),this.propertyConfig}getBasicPropConfig(t){var l,c,s;const o=(s=(c=(l=this.formSchemaUtils.getFormSchema())==null?void 0:l.module)==null?void 0:c.entity[0])==null?void 0:s.entities[0],i=this.assembleSchemaEntityToTree(o,0),r=this,a=super.getBasicPropConfig(t);this.propertyConfig.categories.basic={description:"Basic Information",title:"基本信息",properties:{...a.properties,dataSource:{description:"绑定数据源",title:"绑定数据源",editor:{type:"combo-tree",textField:"name",valueField:"label",data:i,editable:!1},readonly:t.columns&&t.columns.length>0}},setPropertyRelates(u,f){switch(u&&u.propertyID){case"dataSource":{const d=r.formSchemaUtils.getViewModelById(r.viewModelId);if(d){const p=i.find(y=>y.label===u.propertyValue);d.bindTo=p.bindTo}r.designViewModelUtils.assembleDesignViewModel();break}}}}}assembleSchemaEntityToTree(t,o,i,r="",a=[]){const l=r?`${r}/${t.label}`:"/";return a.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(c=>this.assembleSchemaEntityToTree(c,o+1,t,l,a)),a}getAppearanceProperties(t){var o,i,r;this.propertyConfig.categories.appearance={title:"外观",properties:{columns:{title:"列设置",description:"列设置",type:"array",editor:{type:"grid-field-editor",viewModelId:this.viewModelId,gridData:t,getLatestGridData:a=>t},refreshPanelAfterChanged:!0},showStripe:{title:"显示条纹",type:"boolean",description:"是否显示条纹"}},setPropertyRelates(a,l){switch(a&&a.propertyID){case"useBlankWhenDataIsEmpty":t.emptyDataHeight=t.useBlankWhenDataIsEmpty?36:240;break;case"columns":t.columns=a.propertyValue||[];break}}},this.propertyConfig.categories.selection={title:"多选配置",$converter:"/converter/grid-selection.converter",properties:{multiSelect:{title:"启用多选",type:"boolean",refreshPanelAfterChanged:!0},showCheckbox:{visible:t.selection==null?!1:t.selection.multiSelect,title:"显示复选框",type:"boolean",refreshPanelAfterChanged:!0},showSelectAll:{visible:t.selection==null?!1:t.selection.multiSelect&&t.selection.showCheckbox,title:"显示全选",type:"boolean"}},setPropertyRelates(a,l){switch(a&&a.propertyID){case"multiSelect":t.selection.showCheckbox=a.propertyValue;break}}},this.propertyConfig.categories.rowNumber={title:"行号配置",$converter:"/converter/row-number.converter",properties:{enable:{title:"显示行号",type:"boolean",refreshPanelAfterChanged:!0},width:{visible:t.rowNumber==null?!0:t.rowNumber.enable,title:"宽度",type:"number"},heading:{visible:t.rowNumber==null?!0:t.rowNumber.enable,title:"标题",type:"string"}}},this.propertyConfig.categories.pagination={title:"分页",$converter:"/converter/pagination.converter",properties:{enable:{title:"启用分页",type:"boolean",refreshPanelAfterChanged:!0,editor:{readonly:this.isSubGrid()}},mode:{visible:((o=t.pagination)==null?void 0:o.enable)||!1,title:"分页交互模式",type:"enum",editor:{type:"combo-list",textField:"value",valueField:"key",data:[{key:"client",value:"客户端"},{key:"server",value:"服务器端"}]}},showIndex:{visible:((i=t.pagination)==null?void 0:i.enable)||!1,title:"显示页码",type:"boolean"},showLimits:{visible:((r=t.pagination)==null?void 0:r.enable)||!1,title:"显示每页记录数",type:"boolean"}}}}getEventPropConfig(t){const o=[{label:"onClickRow",name:"行点击事件"},{label:"onSelectionChange",name:"行切换事件"},{label:"onPageIndexChanged",name:"切换页码事件"},{label:"onPageSizeChanged",name:"分页条数变化事件"}],i=this,r=i.eventsEditorUtils.formProperties(t,i.viewModelId,o),a={};a[i.viewModelId]={type:"events-editor",editor:{initialData:r}},this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:a,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(l,c){const s=l.propertyValue;delete t[i.viewModelId],s&&(s.setPropertyRelates=this.setPropertyRelates,i.eventsEditorUtils.saveRelatedParameters(t,i.viewModelId,s.events,s)),t.remoteSort=!!t.columnSorted}}}isSubGrid(){const t=this.formSchemaUtils.getViewModelById(this.viewModelId);return t&&t.bindTo?t.bindTo.trim()!=="/":!1}}function Qa(e,t){const o=e.schema,i=n.ref(!0),r=n.ref(!0);function a(f){return f&&f.sourceType==="control"?f.componentCategory==="input":!1}function l(){return!1}function c(){return!1}function s(){return!0}function u(f){return new Ka(f,t).getPropertyConfig(o)}return{canAccepts:a,checkCanDeleteComponent:l,checkCanMoveComponent:c,hideNestedPaddingInDesginerView:s,triggerBelongedComponentToMoveWhenMoved:i,triggerBelongedComponentToDeleteWhenDeleted:r,getPropsConfig:u}}const Qt=n.defineComponent({name:"FDataGridDesign",props:mn,emits:["ClickRow","DoubleClickRow","selectionChange","enterUpInLastCell","pageIndexChanged","pageSizeChanged"],setup(e,t){var Ie;const o=n.ref(),i=n.inject("designer-host-service"),r=n.inject("design-item-context"),a=Qa(r,i),l=qt(o,r,a);l.value.styles="display:flex;flex:1;",n.onMounted(()=>{o.value.componentInstance=l}),t.expose(l.value);const c=n.ref(e.columns),s=20,u=uo(e),f=0,d=n.ref(),p=n.ref(),y=n.ref(e.showStripe),C=n.ref([]),I=n.ref(!1),M=n.ref(((Ie=e.rowOption)==null?void 0:Ie.wrapContent)||!1),g=no(),v=oo(e),S=_n(e,new Map,g,v,u),h=po(e,S,u,C,t),F=n.computed(()=>S.totalItems.value<s?S.totalItems.value:s),{containerStyleObject:N}=Cn(e),m=Sn(e),{applyCommands:_}=m;_(c);const b=wn(e),k=ho(),{applyColumnSorter:w,columnContext:x,updateColumnRenderContext:T}=b;w(S,k);const V=xn(e,x),B=fo(e,t,h,u),E=co(e,t,u,B),O=ao(e),$=lo(e,E,O),L=so(e,E,v,u,O,$),H=La(e,u,$,L),Y=Ga(e,u,$,L),J=ro(e,c,S,F,f,L,H,Y),{getVisualData:ne}=J,le=mo(e,h),{sidebarWidth:R}=le;C.value=ne(0,F.value+f-1);const Z=io(e,S,C,x,J,F,f,R),{onWheel:ue,dataGridWidth:ee,viewPortHeight:A,viewPortWidth:U}=Z,ye=Xn(e,x,d,U,V),{calculateColumnsSize:fe}=ye,$e=n.computed(()=>({"fv-grid":!0,"fv-datagrid-strip":y.value})),je=n.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":I.value,"fv-grid-wrap-content":M.value})),{renderGridHeader:Me}=Yn(r,e,b,Z),{renderHorizontalScrollbar:Se}=bn(e,d,Z);function Ve(){var pe,j;A.value=((pe=p.value)==null?void 0:pe.clientHeight)||0,ee.value=((j=d.value)==null?void 0:j.clientWidth)||0,fe()}n.onMounted(()=>{d.value&&(Tt.useResizeObserver(d.value,Ve),fe(),n.nextTick(()=>{d.value&&(ee.value=d.value.clientWidth),p.value&&(U.value=p.value.clientWidth,A.value=p.value.clientHeight)}))});function Pe(pe){pe&&(c.value=pe,_(c),T(c.value),w(S,k),fe())}return n.watch(()=>e.columns,pe=>{Pe(pe),xt.value++}),n.watch(U,()=>{d.value&&fe()}),()=>n.createVNode("div",{ref:o,class:$e.value,style:N.value,onWheel:ue},[Me(),n.createVNode("div",{ref:d,class:je.value,onMouseover:()=>{I.value=!0},onMouseleave:()=>{I.value=!1}},[Se()])])}}),Ja=new Map([["appearance",on.resolveAppearance]]);function Za(e,t,o){return t}const el={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/button-edit.schema.json",title:"button-edit",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a Input Group",type:"string"},type:{description:"The type string of Input Group component",type:"string",default:"button-edit"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disable:{type:"string",default:!1},editable:{description:"",type:"boolean",default:!0},enableLinkLabel:{description:"",type:"boolean",default:!1},label:{description:"",type:"string",default:""},lableWidth:{description:"",type:"number"},placeholder:{description:"",type:"string",default:""},forcePlaceholder:{description:"",type:"boolean",default:!1},readonly:{description:"",type:"boolean",default:!1},require:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},textAlign:{description:"",type:"string",enum:["left","middle","right"],default:"left"},visible:{description:"",type:"boolean",default:!0},onBlur:{description:"",type:"string",default:""},onClickLinkLabel:{description:"",type:"sting",default:""},autoComplete:{description:"",type:"boolean",default:!1},buttonContent:{description:"",type:"string",default:""},enableClear:{description:"",type:"boolean",default:!0},inputType:{description:"",type:"string",enum:["text","tag"],default:"text"},multiSelect:{description:"",type:"boolean",default:!1},popup:{description:"",type:"object",properties:{footerButtons:{type:"array",default:[]},height:{type:"number",default:600},dataMapping:{type:"object"},contents:{type:"array",default:[]},showMaxButton:{type:"boolean",default:!0},showCloseButton:{type:"boolean",default:!0},showFooter:{type:"boolean",default:!0},title:{type:"string",default:""},width:{type:"number",default:800}}},separator:{type:"string",default:","},showButtonWhenDisabled:{description:"",type:"boolean",default:!1},wrapText:{type:"boolean",default:!1},onClear:{description:"",type:"string",default:""}},required:["id","type"]},tl={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:"右对齐"}]}}}}}},go={id:String,buttonContent:{type:String,default:'<i class="f-icon f-icon-lookup"></i>'},buttonBehavior:{type:String,default:"Popup"},autoComplete:{type:Boolean,default:!1},customClass:{type:String,default:""},disable:{type:Boolean,default:!1},editable:{type:Boolean,default:!0},enableClear:{type:Boolean,default:!1},modelValue:{type:String,default:""},readonly:{type:Boolean,default:!1},showButtonWhenDisabled:{type:Boolean,default:!1},enableTitle:{type:Boolean,default:!1},inputType:{type:String,default:"text"},forcePlaceholder:{type:Boolean,default:!1},placeholder:{type:String,default:""},minLength:Number,maxLength:Number,tabIndex:Number,popupHost:{type:Object},popupRightBoundary:{type:Object},popupOffsetX:{type:Object},popupOnInput:{type:Boolean,default:!1},popupOnFocus:{type:Boolean,default:!1},popupOnClick:{type:Boolean,default:!1},popupMinWidth:{type:Number,default:160},modalOptions:{type:Object,default:{}},wrapText:{type:Boolean,default:!1},multiSelect:{type:Boolean,default:!1},separator:{type:String,default:","},textAlign:{type:String,default:"left"},beforeClickButton:{type:Function,default:null},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1},beforeOpen:{type:Function,default:null},updateOn:{type:String,default:"change"},keepWidthWithReference:{type:Boolean,default:!0},placement:{type:String,default:"bottom-left"}};Ge(go,el,Ja,Za,tl);const nl={popupContentPosition:{type:Object,default:{left:0,top:0}},host:{type:Object},backgroundColor:{type:String,default:""}},ol=n.defineComponent({name:"FOverlay",props:nl,emits:["click"],setup(e,t){const o=n.ref(e.popupContentPosition),i=n.ref(e.host),r=n.computed(()=>({backgroundColor:e.backgroundColor||"",pointerEvents:"auto"}));function a(c){t.emit("click"),c.preventDefault(),c.stopPropagation()}n.computed(()=>{const c=i.value;if(c){const s=c.getBoundingClientRect(),{left:u,top:f,height:d}=s;return{left:u,top:f+d}}return o.value});const l=n.computed(()=>({}));return()=>n.createVNode(n.Teleport,{to:"body"},{default:()=>{var c,s;return[n.createVNode("div",{class:"overlay-container",onClick:u=>a(u),style:r.value},[n.createVNode("div",{style:l.value},[(s=(c=t.slots).default)==null?void 0:s.call(c)])])]}})}});function il(e){if(e.content&&e.content.render)return e.content.render;if(e.render&&typeof e.render=="function")return e.render}function rl(e){const t=document.createElement("div");t.style.display="contents";let o;const i=e.onClickCallback||(()=>{}),r=()=>{i(),o&&o.unmount()};return o=n.createApp({setup(){n.onUnmounted(()=>{document.body.removeChild(t)});const a=il(e);return()=>n.createVNode(ol,{"popup-content-position":e.popupPosition,host:e.host,onClick:r,backgroundColor:e.backgroundColor},{default:()=>[a&&a()]})}}),document.body.appendChild(t),o.mount(t),o}class al{static show(t){return rl(t)}}function yo(e,t){function o(){const i=e.beforeOpen||e.beforeClickButton||null;let r=Promise.resolve(!0);if(i){const a=i(t.value);if(typeof a>"u")return r;typeof a=="boolean"?r=Promise.resolve(a):r=a}return r}return{judgeCanOpen:o}}function ll(e,t,o,i,r){const a=n.ref(e.buttonBehavior),l=n.ref(e.popupOnInput),c=n.computed(()=>({"input-group-append":!0,"append-force-show":e.showButtonWhenDisabled&&(e.readonly||e.disable)})),{judgeCanOpen:s}=yo(e,r),u=n.computed(()=>e.showButtonWhenDisabled||(!e.editable||!e.readonly)&&!e.disable),f=n.inject(Zn,null),d=n.ref();async function p(I){if(await s()&&u.value){const M=!!t.slots.default;if(a.value==="Modal"){const g=e.modalOptions,v=f==null?void 0:f.open({...g,render:()=>t.slots.default&&t.slots.default()});d.value=v==null?void 0:v.modalRef}a.value==="Overlay"&&al.show({host:document.body,backgroundColor:"rgba(0,0,0,.15)",render:()=>t.slots.default&&t.slots.default()}),M&&a.value==="Popup"&&i.togglePopup(!0),M&&l.value&&i.hidePopup(),t.emit("clickButton",{origin:I,value:e.modelValue})}}function y(I){t.emit("mouseEnterIcon",I)}function C(I){t.emit("mouseLeaveIcon",I)}return{buttonGroupClass:c,onClickButton:p,onMouseEnterButton:y,onMouseLeaveButton:C,modalRef:d}}function sl(e,t,o,i,r,a){const l=n.ref(!1),c=n.computed(()=>e.enableClear&&!e.readonly&&!e.disable),{changeTextBoxValue:s}=a;function u(y){l.value=y}n.watch(r,()=>{u(!!r.value)});function f(y){const C=!e.readonly&&!e.disable&&e.editable,I=!e.editable;y.stopPropagation(),(C||I)&&(s(""),u(!l.value),t.emit("clear"))}function d(y){if(c.value){if(!o.value){u(!1);return}!e.disable&&!e.readonly&&u(!0)}}function p(y){c.value&&u(!1)}return{enableClearButton:c,showClearButton:l,onClearValue:f,onMouseEnterTextBox:d,onMouseLeaveTextBox:p}}function cl(e,t,o,i,r){const a=n.computed(()=>e.popupOnInput),l=n.computed(()=>e.popupOnFocus),{shouldPopupContent:c}=r,s=n.computed(()=>e.enableTitle?o.value:""),u=n.computed(()=>(e.disable||e.readonly)&&!e.forcePlaceholder?"":e.placeholder),f=n.computed(()=>e.readonly||!e.editable),d=n.ref(!1),p=n.computed(()=>!e.disable&&d.value),y=n.computed(()=>({"text-left":e.textAlign==="left","text-center":e.textAlign==="center","text-right":e.textAlign==="right","form-control":!0,"f-utils-fill":!0})),C=n.computed(()=>({"input-group":!0,"f-state-disabled":e.disable,"f-state-editable":e.editable&&!e.disable&&!e.readonly,"f-state-readonly":e.readonly&&!e.disable,"f-state-focus":p.value}));function I(b,k=!0){o.value=b,k&&(t.emit("change",b),t.emit("update:modelValue",b))}function M(b){c.value=!1,I(b,!0)}n.watch(()=>e.modelValue,b=>{o.value=b});function g(b){d.value=!1,t.emit("blur",b),b.stopPropagation()}function v(b){t.emit("click",b),!e.disable&&!e.readonly&&e.popupOnClick&&r.togglePopup()}function S(b){e.disable||(d.value=!0,f.value||(t.emit("focus",b),l.value&&!c.value&&r.popup()))}function h(b){t.emit("input",b.target.value);const k=b.target.value;i.value=k,o.value!==k&&I(k,e.updateOn==="change"),a.value&&!c.value&&r.popup()}function F(b){b.target.tagName!=="INPUT"&&b.preventDefault(),b.stopPropagation()}function N(b){t.emit("keydown",b)}function m(b){b.key==="Enter"&&(a.value||l.value)&&r.hidePopup(),t.emit("keyup",b)}function _(b){const k=b.target.value;b.stopPropagation(),I(k)}return{hasFocusedTextBox:p,isTextBoxReadonly:f,textBoxClass:y,textBoxPlaceholder:u,textBoxTitle:s,inputGroupClass:C,changeTextBoxValue:I,commitValue:M,onBlurTextBox:g,onClickTextBox:v,onFocusTextBox:S,onInput:h,onKeyDownTextBox:N,onKeyUpTextBox:m,onMouseDownTextBox:F,onTextBoxValueChange:_}}function dl(e,t,o,i){const r=n.ref(),a=n.ref(!1),{judgeCanOpen:l}=yo(e,i);function c(){const d=r.value;d&&d.show(o.value)}async function s(d=!1){if(!!t.slots.default){if(!d&&!a.value&&!await l())return;a.value=!a.value,await n.nextTick(),c()}}async function u(d=!1){if(!!t.slots.default){if(!d&&!await l())return;a.value=!0,await n.nextTick(),c()}}function f(){a.value=!1}return{hidePopup:f,popup:u,shouldPopupContent:a,togglePopup:s,popoverRef:r}}function ul(e,t,o){const i=n.ref(),{isTextBoxReadonly:r,textBoxClass:a,textBoxPlaceholder:l,textBoxTitle:c,onBlurTextBox:s,onClickTextBox:u,onFocusTextBox:f,onInput:d,onKeyDownTextBox:p,onKeyUpTextBox:y,onMouseDownTextBox:C,onTextBoxValueChange:I}=o;return n.onMounted(()=>{var M,g;e.selectOnCreated&&((M=i.value)==null||M.select()),e.focusOnCreated&&((g=i.value)==null||g.focus())}),()=>n.createVNode("input",{ref:i,name:"input-group-value",autocomplete:e.autoComplete?"on":"off",class:a.value,disabled:e.disable,maxlength:e.maxLength,minlength:e.minLength,placeholder:l.value,readonly:r.value,tabindex:e.tabIndex,title:c.value,type:e.inputType,value:t.value,onBlur:s,onChange:I,onClick:u,onFocus:f,onInput:d,onKeydown:p,onKeyup:y,onMousedown:C},null)}function fl(e,t,o){const i=n.ref(e.separator),{changeTextBoxValue:r}=o,a=n.computed(()=>t.value?t.value.split(i.value).map(c=>({name:c,selectable:!0})):[]);function l(c){r(c.map(s=>s.name).join(i.value),!0)}return()=>n.createVNode(en,{id:`${e.id}-tag-editor`,class:"form-control",data:a.value,showClose:!0,showInput:!0,onChange:l},null)}function pl(e,t,o,i){const{buttonGroupClass:r,onClickButton:a,onMouseEnterButton:l,onMouseLeaveButton:c}=o,{enableClearButton:s,showClearButton:u,onClearValue:f}=i,d=n.ref();return{renderButtonGroup:()=>n.createVNode("div",{id:`${e.id}-button-group`,class:r.value},[s.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:a,onMouseenter:l,onMouseleave:c},[t.slots.buttonContent()]):e.buttonContent?n.createVNode("span",{class:"input-group-text input-group-append-button",innerHTML:e.buttonContent,ref:d,onClick:a,onMouseenter:l,onMouseleave:c},null):null]),buttonHandleElement:d}}function ml(e,t,o){const i=n.ref(e.popupMinWidth),{hidePopup:r,popoverRef:a}=o;return()=>n.createVNode(Mi,{id:`${e.id}-popover`,ref:a,visible:!0,placement:e.placement,host:e.popupHost,"keep-width-with-reference":e.keepWidthWithReference,fitContent:!0,"right-boundary":e.popupRightBoundary,minWidth:i.value,offsetX:e.popupOffsetX,onHidden:r},{default:()=>{var l,c;return[(c=(l=t.slots).default)==null?void 0:c.call(l)]}})}const hl=n.defineComponent({name:"FButtonEdit",props:go,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),r=n.ref(e.modelValue),a=dl(e,t,o,r),{shouldPopupContent:l,hidePopup:c,togglePopup:s}=a,u=ll(e,t,o,a,r),f=n.ref(""),d=cl(e,t,r,f,a),{hasFocusedTextBox:p,commitValue:y,inputGroupClass:C}=d,I=sl(e,t,r,p,f,d),{onMouseEnterTextBox:M,onMouseLeaveTextBox:g}=I,v=n.computed(()=>{const b={"f-button-edit":!0,"f-cmp-inputgroup":!0,"f-button-edit-nowrap":!e.wrapText};return i.value&&i.value.split(" ").reduce((k,w)=>(k[w]=!0,k),b),b});function S(){return e.multiSelect&&e.inputType==="tag"?fl(e,r,d):ul(e,r,d)}let h=S();n.watch([()=>e.multiSelect,()=>e.inputType],()=>{h=S()});const{renderButtonGroup:F,buttonHandleElement:N}=pl(e,t,u,I),m=ml(e,t,a),_={commitValue:y,elementRef:o,hidePopup:c,shouldPopupContent:l,togglePopup:s,openDialog:()=>{N.value&&e.buttonBehavior==="Modal"&&N.value.click()},getModal:()=>{var b;return e.buttonBehavior==="Modal"?(b=u.modalRef.value)==null?void 0:b.value:null}};return n.onMounted(()=>{o.value.componentInstance=_,window.onresize=()=>{document.body.click()}}),t.expose(_),()=>n.createVNode(n.Fragment,null,[n.createVNode("div",n.mergeProps(t.attrs,{ref:o,class:v.value,id:e.id}),[n.createVNode("div",{id:`${e.id}-input-group`,class:C.value,onMouseenter:M,onMouseleave:g},[h(),F()])]),l.value&&m()])}}),gl={$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"]},vo={modelValue:{type:String,default:""},viewModelId:{Type:String,default:""},gridData:{Type:Object,default:null},gridType:{Type:String,default:"data-grid-column"},getLatestGridData:{Type:Function}},yl=Ge(vo,gl,cn,fn),vl=new Map([["appearance",mt]]);function bl(e,t,o){return t}const Cl={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:[]}}}}}},wl={$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"]},bo={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:[]},rowOption:{type:Object}};Ge(bo,wl,vl,bl,Cl);const Sl=new Map([["appearance",mt]]);function xl(e,t,o){return t}const Fl={$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"]},_l={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:[]}}}}}},Co={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},virtualized:{type:Boolean,default:!0}};Ge(Co,Fl,Sl,xl,_l);function Ml(e,t){function o(a){const l=[];let c=a.nextNode();for(;c;)l.push(c),c=a.nextNode();return l}function i(a,l){const c=document.createTreeWalker(a,NodeFilter.SHOW_TEXT);return o(c).map(d=>({textNode:d,text:(d.textContent||"").toLocaleLowerCase()})).map(({textNode:d,text:p})=>{const y=[];let C=0;for(;C<p.length;){const I=p.indexOf(l,C);if(I===-1)break;y.push(I),C=I+l.length}return y.map(I=>{const M=new Range;return M.setStart(d,I),M.setEnd(d,I+l.length),M})}).flat()}function r(a){if(!CSS.highlights||(CSS.highlights.clear(),!a||!t))return;const l=i(t.value,a.toLocaleLowerCase()),c=new Highlight(...l);CSS.highlights.set("search-result",c)}return{search:r}}function wo(e,t,o,i,r,a,l,c,s,u){const f=n.ref(e.size),d=n.ref(e.textField),p=n.ref(e.titleField),y=n.ref(e.disableField),C=n.computed(()=>{var _,b;return((_=e.selection)==null?void 0:_.multiSelect)&&((b=e.selection)==null?void 0:b.showCheckbox)}),{onMouseenterItem:I,onMouseoverItem:M,onMouseoutItem:g}=a,{getKey:v,listViewItemClass:S,onCheckItem:h,onClickItem:F}=l,N=n.computed(()=>e.itemClass?{}:{margin:f.value==="small"?"0.25rem 0":"8px 0"});function m(_,b,k){return _.checked=c.findIndexInSelectedItems(_)>-1,n.createVNode("li",{class:S(_,b),id:v(_,b),key:v(_,b),onClick:w=>F(w,_,b),onMouseenter:w=>I(w,_,b),onMouseover:w=>M(w,_,b),onMouseout:w=>g(w,_,b)},[C.value&&n.createVNode("div",{class:"f-list-select",onClick:w=>w.stopPropagation()},[n.createVNode(wt.FCheckbox,{id:"list-"+v(_,b),customClass:"listview-checkbox",disabled:_[y.value],checked:_.checked,"onUpdate:checked":w=>_.checked=w,onChange:w=>{h(_,b,!w.checked)}},null)]),n.createVNode("div",{class:"f-list-content"},[n.createVNode("div",{style:N.value,title:_.raw[p.value]||_.raw[d.value]},[_.raw[d.value]])])])}return{renderItem:m}}function Tl(e,t,o,i,r,a,l,c,s,u){const f=n.ref(e.multiSelect),d=n.ref(e.disableField),{onMouseenterItem:p,onMouseoverItem:y,onMouseoutItem:C}=a,{getKey:I,listViewItemClass:M,onCheckItem:g,onClickItem:v}=l;function S(F,N,m){return t.slots.content?n.createVNode(n.Fragment,null,[t.slots.content&&t.slots.content({item:F.raw,index:N,selectedItem:m})]):n.createVNode("div",{style:"margin: 10px 0;"},[F.raw.name])}function h(F,N,m){return n.createVNode("li",{class:M(F,N),id:I(F,N),key:I(F,N),onClick:_=>v(_,F,N),onMouseenter:_=>p(_,F,N),onMouseover:_=>y(_,F,N),onMouseout:_=>C(_,F,N)},[f.value&&n.createVNode("div",{class:"f-list-select",onClick:_=>_.stopPropagation()},[n.createVNode(wt.FCheckbox,{id:"list-"+I(F,N),customClass:"listview-checkbox",disabled:F[d.value]||!F.checked,checked:F.checked,"onUpdate:checked":_=>F.checked=_,onChange:_=>g(F,N,!_.checked)},null)]),n.createVNode("div",{class:"f-list-content"},[S(F,N,m)])])}return{renderItem:h}}function kl(e,t,o,i,r,a,l,c,s,u){const f=n.ref(e.multiSelect),d=n.ref(e.disableField),{onMouseenterItem:p,onMouseoverItem:y,onMouseoutItem:C}=a,{getKey:I,listViewItemClass:M,onCheckItem:g,onClickItem:v}=l,{dragstart:S,dragenter:h,dragover:F,dragend:N}=i,{removeItem:m}=s,_=n.computed(()=>({margin:f.value?"10px 0":"10px 0px 10px 14px"}));function b(T){return n.createVNode("div",{style:_.value},[T.raw.name])}function k(){return t.slots.itemContent?t.slots.itemContent:b}const w=k();function x(T,V,B){return n.createVNode("li",{class:M(T,V),id:I(T,V),key:I(T,V),onClick:E=>v(E,T,V),onMouseenter:E=>p(E,T,V),onMouseover:E=>y(E,T,V),onMouseout:E=>C(E,T,V),draggable:"true",onDragstart:E=>S(E,T,V),onDragenter:E=>h(E,V),onDragend:E=>N(E,T),onDragover:E=>F(E,V)},[f.value&&n.createVNode("div",{class:"f-list-select",onClick:E=>E.stopPropagation()},[n.createVNode(wt.FCheckbox,{id:"list-"+I(T,V),customClass:"listview-checkbox",disabled:T[d.value]||!T.checked,checked:T.checked,"onUpdate:checked":E=>T.checked=E,onChange:E=>g(T,V,!E.checked)},null)]),n.createVNode("div",{class:"f-list-content"},[w(T)]),n.createVNode("div",{class:"f-list-remove",onClick:E=>m(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:x}}function Vl(e,t,o,i,r,a,l,c,s,u){var I;const f=n.ref(((I=e.group)==null?void 0:I.groupFields)||[]),{collpaseGroupIconClass:d}=r,{toggleGroupRow:p}=u;function y(M,g){g.collapse=!g.collapse,o.value=p(g.collapse?"collapse":"expand",g,o.value)}function C(M,g,v){return M.layer>-1&&n.createVNode("div",{class:"f-navlookup-recentHeader",onClick:S=>y(S,M)},[n.createVNode("div",{class:"fv-grid-group-row-icon"},[n.createVNode("span",{class:d(M)},null)]),n.createVNode("div",{class:"f-navlookup-recommandLabel"},[M.raw[f.value[M.layer]]])])}return{renderItem:C}}function Il(e,t,o,i){const r=n.ref(e.idField),{dataView:a}=o,l=n.ref(-1),c=n.ref(!1),{activeIndex:s,focusedItemId:u,hoverIndex:f,resumeHover:d,suspendHover:p}=i;function y(g,v,S){g.stopPropagation(),p(),v&&setTimeout(()=>{l.value=S,c.value=!0,v.moving=!0})}function C(g,v){if(g.preventDefault(),l.value!==v){const S=a.value[l.value],h=a.value;h.splice(l.value,1),h.splice(v,0,S),l.value=v}}function I(g,v){g.preventDefault(),g.dataTransfer&&(g.dataTransfer.dropEffect="move")}function M(g,v){v&&(v.moving=!1),a.value.forEach((S,h)=>{S.__fv_index__=h}),c.value=!1,d(),f.value=v.raw.__fv_index__,s.value=v.raw.__fv_index__,u.value=v.raw[r.value],t.emit("change",a.value),t.emit("activeChange",v)}return{dragstart:y,dragenter:C,dragover:I,dragend:M,isDragging:c}}function Nl(e,t,o){const{dataView:i}=o;function r(a){if(a>-1&&a<i.value.length){const l=i.value.splice(a,1);t.emit("removeItem",l[0])}}return{removeItem:r}}function Bl(e,t,o,i,r,a){const l=n.ref(e.idField),c=n.ref(e.disableField),s=n.ref(e.draggable),u=n.ref(e.itemClass),f=n.ref(e.selection.multiSelect??!1),d=n.ref(e.selection.multiSelectMode),{isDragging:p}=i,{activeIndex:y,focusedItemId:C,hoverIndex:I}=r,{clearSelection:M,getSelectedItems:g,toggleSelectItem:v}=a,S=n.ref(g());function h(w,x){const T={"f-list-view-group-item":!0,"f-list-view-draggable-item":s.value,"f-un-click":!w.checked,"f-un-select":!!w.raw[c.value],"f-listview-active":w.raw.__fv_index__===y.value,"f-listview-hover":!p.value&&x===I.value,moving:!!w.moving};return u.value.split(" ").reduce((B,E)=>(B[E]=!0,B),T),T}function F(w,x){return w.raw[l.value]||""}const N=n.computed(()=>!f.value);function m(w,x,T){w.checked=T,!w.raw[c.value]&&(N.value&&(C.value=w.raw[l.value]),v(w))}const _=n.computed(()=>f.value&&d.value==="OnCheckClearByClick"),b=n.computed(()=>!f.value||f.value&&(d.value==="OnCheckAndClick"||d.value==="OnClick"));function k(w,x,T){if(x.raw[c.value]){w.preventDefault(),w.stopPropagation();return}C.value=x.raw[l.value],y.value=T,_.value&&M(),b.value&&(v(x),S.value=g()),t.emit("clickItem",{data:S.value,index:T}),t.emit("activeChange",S.value)}return{getKey:F,listViewItemClass:h,onCheckItem:m,onClickItem:k}}function Ol(e,t,o,i,r,a,l,c){const s=n.ref(e.view),u=n.ref(e.view==="CardView"),f=n.ref({}),d=n.ref("暂无数据"),p=Il(e,t,i,a),y=Nl(e,t,i),C=Bl(e,t,o,p,a,l),I=n.computed(()=>({"f-list-view-group":!0,"f-list-view-group-multiselect":e.multiSelect,"d-flex":u.value,"flex-wrap":u.value})),M=n.computed(()=>!!o.value&&o.value.length>0),g=n.computed(()=>o.value.length===0);n.computed(()=>g.value&&!t.slots.empty);function v(){return s.value==="SingleView"?wo:s.value==="DraggableView"?kl:(s.value==="ContentView"||s.value==="CardView")&&t.slots.content?Tl:wo}const S=v(),{renderItem:h}=S(e,t,o,p,r,a,C,l,y,c),{renderItem:F}=Vl(e,t,o,p,r,a,C,l,y,c),N=[h,F];function m(){return o.value.filter(k=>k.visible!==!1).map((k,w)=>N[k.type](k,w,f))}function _(){return n.createVNode("div",{class:"f-list-view-emptydata"},[n.createVNode("p",{class:"f-empty-title"},[t.slots.empty?t.slots.empty():d.value])])}function b(){return n.createVNode("ul",{class:I.value,style:"list-style: none;"},[M.value&&m(),g.value&&_()])}return{renderListArea:b}}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 So(e,t,o){const i=n.ref(e.headerClass),r=n.ref(e.placeholder),a=n.ref(""),l=n.computed(()=>!a.value),c=n.computed(()=>!!a.value);function s(p){a.value=""}n.watch(a,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((C,I)=>(C[I]=!0,C),p),p});function f(p){}function d(){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=>a.value=p,name:"input-group-value",type:"text",placeholder:r.value,autocomplete:"off"},null),[[n.vModelText,a.value]]),n.createVNode("div",{class:"input-group-append"},[c.value&&n.createVNode("span",{class:"input-group-text input-group-clear",onClick:p=>s()},[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:d}}function $l(){const e=n.ref(""),t=n.ref(-1),o=n.ref(""),i=n.ref(-1),r=n.ref(!1);function a(d,p,y){i.value=y}function l(d,p,y){r.value||(i.value=y)}function c(d,p,y){i.value=-1}function s(){r.value=!0}function u(){r.value=!1}function f(){t.value=-1,e.value=""}return{activeIndex:t,focusedItemId:o,hoverIndex:i,clearActiveItem:f,onMouseenterItem:a,onMouseoverItem:l,onMouseoutItem:c,resumeHover:u,suspendHover:s}}const xo=n.defineComponent({name:"FListView",props:Co,emits:["afterSearch","checkValuesChange","clickItem","selectionChange","removeItem","change","activeChange"],setup(e,t){const o=n.ref(),i=n.ref(!0),r=n.ref(!1),a=n.ref([]),l=0,c=n.ref(e.columns),s=X.useFilter(),u=X.useIdentify(e),f=X.useHierarchy(e),d=X.useGroupData(e,u),p=X.useDataView(e,new Map,s,f,u),y=X.useSelection(e,p,u,a,t),C=Ml(e,o),I=n.computed(()=>p.dataView.value.length),M=X.useRow(e,t,y,u),g=X.useEdit(e,t,u,M),v=X.useVisualDataBound(e),S=X.useVisualDataCell(e,{},v),h=X.useVisualDataRow(e,g,f,u,v,S),F=X.useVisualGroupRow(e,u,S,h),N=X.useVisualSummaryRow(e,u,S,h),m=X.useVisualData(e,c,p,I,l,h,F,N),{getVisualData:_}=m;a.value=_(0,I.value+l-1);const b=n.computed(()=>{const H={"f-list-view":!0,"f-list-view-multiple":e.multiSelect};return e.size!=="default"&&(H[`${e.size}-item`]=!0),H}),k=n.computed(()=>!!t.slots.footer||i.value);function w(){return e.header==="SearchBar"?So:e.header==="ContentHeader"?El:So}const x=w(),{renderHeader:T}=x(e,t,C),V=$l(),{renderListArea:B}=Ol(e,t,a,p,d,V,y,m);function E(H){C.search(H)}function O(H){H&&(p.load(H),a.value=_(0,I.value+l-1))}function $(){y.clearSelection(),V.clearActiveItem()}t.expose({search:E,updateDataSource:O,clearSelection:$});function L(H){e.multiSelect&&(H.preventDefault(),H.stopPropagation())}return()=>n.createVNode("div",{class:b.value,onClick:L},[T(),n.createVNode("div",{ref:o,class:"f-list-view-content",onMouseover:()=>{r.value=!0},onMouseleave:()=>{r.value=!1}},[B()]),k.value&&n.createVNode("div",{class:"f-list-view-footer"},[t.slots.footer&&t.slots.footer()])])}}),jl=n.defineComponent({name:"FTransfer",props:bo,emits:["change","activeChange"],setup(e,t){const o=n.ref(e.identifyField),i=n.ref("已选:"),r=n.ref("项数据"),a=n.ref(e.displayType),l=n.ref(!1),c=n.ref(e.dataSource),s=n.ref(e.selections||[]),u=n.computed(()=>s.value.map(b=>b[o.value])),f=new Map,d=n.ref();function p(){const b=new Map,k=e.selectionValues||[];k.length&&k.reduce((x,T)=>(x.set(T,!0),x),b);const w=e.selections||[];w.length&&(b.clear(),w.reduce((x,T)=>(x.set(T[o.value],!0),x),b)),s.value.length||(s.value=c.value.filter(x=>b.has(x[o.value])).map(x=>Object.assign({},x))),c.value.forEach(x=>{const T=x[o.value],V=b.has(T);x.checked=V,V&&f.set(T,x)})}p();const y=n.computed(()=>a.value==="List"),C=n.computed(()=>a.value==="Tree");function I(b){s.value=b.map(k=>Object.assign({},k)),t.emit("change",s.value)}function M(){return n.createVNode(xo,{class:"f-utils-fill",data:c.value,multiSelect:!0,itemClass:"f-transfer-list-item",selection:{enableSelectRow:!0,multiSelect:!0,multiSelectMode:"OnCheckAndClick",showCheckbox:!0,showSelectAll:!1,showSelection:!0},draggable:!1,header:"Search",headerClass:"transfer-search-box",selectionValues:u.value,onSelectionChange:I},{default:()=>[n.createTextVNode(" ")]})}function g(){return n.createVNode(nn,{data:c.value,rowOption:e.rowOption,selection:{enableSelectRow:!0,multiSelect:!0,multiSelectMode:"OnCheckAndClick",showCheckbox:!0,showSelectAll:!1,showSelection:!0},selectionValues:u.value,onSelectionChange:I},null)}function v(){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"},[y.value&&M(),C.value&&g()])])])}function S(b){const k=b[o.value];if(k!==null||k!==void 0){s.value=s.value.filter(x=>x[o.value]!==k);const w=f.get(k);w&&(w.checked=!1,f.delete(k)),t.emit("change",s.value)}}n.watch(s,b=>{d.value.updateDataSource(b)});function h(b){const k=new Map;s.value.reduce((w,x)=>(w.set(x[o.value],x),w),k),s.value=b.map(w=>k.get(w[o.value])),t.emit("change",s.value)}function F(b){t.emit("activeChange",b)}function N(){return n.createVNode(xo,{ref:d,style:"flex:1",data:s.value,draggable:!0,view:"DraggableView","keep-order":!0,onChange:h,onRemoveItem:S,onActiveChange:F},null)}function m(){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"},[s.value&&s.value.length]),n.createVNode("span",{class:"selection-item-title"},[r.value])]),n.createVNode("div",{class:"container columns-box f-utils-fill d-flex"},[N()])])])}const _=n.computed(()=>({"f-transfer":!0,row:!0,"f-utils-fill":l.value}));return()=>n.createVNode("div",{class:_.value,style:"height:480px"},[v(),m()])}}),Pl=n.defineComponent({name:"FGridFieldEditor",props:vo,emits:["change"],setup(e,t){const o=n.ref(e.viewModelId),i=n.inject("designViewModelUtils"),r=n.inject("useFormSchema"),a=n.inject("controlCreatorUtils");let l=e.gridData.columns;const c=n.ref(`共 ${(l||[]).length} 项`),s=n.ref([]),u=n.ref([]);let f=[];const d={customRowStatus:S=>{const h=S.raw;S.disabled=h.type&&h.type.fields&&h.type.fields.length>0?!0:S.disabled}};function p(){if(s.value=[],!l||l.length===0)return[];l.forEach(S=>{if(S.binding&&S.binding.field){const h=f.find(F=>F.data.id===S.binding.field);h?s.value.push(Object.assign({},h.data)):s.value.push({id:S.binding.field,name:S.caption,bindingField:null,isInValidBinding:!0,inValidTip:"绑定字段不存在,请手动移除列"})}}),c.value=`共 ${s.value.length} 项`}function y(S,h=[]){return S&&S.forEach(F=>{h.push(F),F.children&&y(F.children,h)}),h}function C(){u.value=i.getAllFields2TreeByVMId(o.value),f=y(u.value)}function I(){const S=i.getDgViewModel(o.value),h=[],F=[];s.value.forEach(m=>{delete m.inValidTip,delete m.isInValidBinding;const _=l==null?void 0:l.find(b=>{if(b.binding&&b.binding.field)return b.binding.field===m.id});if(_)h.push(_);else{const b=a.setGridFieldProperty(e.gridType,m.data,null,!0);S.addField(m),h.push(b)}F.push(m.id)});const N=S.fields.filter(m=>!F.includes(m.id));if(N&&N.length>0){const m=N.map(_=>_.id);if(S.removeField(m),r.getExpressions()&&r.getExpressions().length&&m.length){const _=r.getExpressions().filter(b=>!m.includes(b.fieldId));r.setExpressions(_)}}c.value=`共 ${h.length} 项`,t.emit("change",h)}const M={fitContent:!1,width:900,height:600,title:"列编辑器",acceptCallback:()=>{I()},rejectCallback:()=>{}};function g(S){s.value=S?[...S]:[]}function v(){return e.getLatestGridData&&(e.gridData=e.getLatestGridData(),C()),l=e.gridData.columns,p(),Promise.resolve(!0)}return n.onMounted(()=>{C()}),()=>n.createVNode(hl,{"button-behavior":"Modal","modal-options":M,modelValue:c.value,"onUpdate:modelValue":S=>c.value=S,editable:!1,beforeOpen:v},{default:()=>[n.createVNode("div",{class:"f-utils-absolute-all"},[n.createVNode(jl,{selections:s.value,"data-source":u.value,rowOption:d,class:"mx-2",displayType:"Tree",onChange:S=>g(S)},null)])]})}}),Rl={$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:""},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"]},align:{description:"",type:"enum",default:"left",enum:["left","center","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}},required:["id","type"]},Dl={$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"}},required:["id","type"]},Jt={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"},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:""}},Hl=Ge(Jt,Rl,dn,pn),Al=Ge(Jt,Dl,dn,pn);class Ll extends Xe{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 Gl extends Xe{constructor(t,o){super(t,o)}getEditorProperties(t){const o=this,i=o.getComponentConfig(t,{type:"check-group"},{placeholder:{visible:!1},disabled:{visible:!1},direction:{description:"",title:"排列方向",type:"enum",editor:{type:"combo-list",textField:"value",valueField:"key",data:[{key:"horizontal",value:"横向"},{key:"vertical",value:"纵向"}]}},textField:{description:"",title:"文本字段",type:"string",visible:!1},valueField:{description:"",title:"值字段",type:"string",visible:!1},data:{description:"",title:"数据",type:"array",$converter:"/converter/enum-data.converter",...o.getItemCollectionEditor(t,t.editor.valueField,t.editor.textField),refreshPanelAfterChanged:!0}});return i.setPropertyRelates=function(r){if(r)switch(r.propertyID){case"data":{r.propertyValue.parameters&&(t.editor.valueField=r.propertyValue.parameters.valueField,t.editor.textField=r.propertyValue.parameters.nameField),t.formatter&&(t.formatter.data=[...r.propertyValue.value]);break}}},i}}class Wl extends Xe{constructor(t,o){super(t,o)}getEditorProperties(t){return this.getComponentConfig(t,{type:"check-box"},{placeholder:{visible:!1},disabled:{visible:!1}})}}class ql extends Xe{constructor(t,o){super(t,o)}getEditorProperties(t){const o=this,i=o.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",$converter:"/converter/enum-data.converter",...o.getItemCollectionEditor(t,t.editor.valueField,t.editor.textField),refreshPanelAfterChanged:!0}});return i.setPropertyRelates=function(r){if(r)switch(r.propertyID){case"data":{r.propertyValue.parameters&&(t.editor.valueField=r.propertyValue.parameters.valueField,t.editor.textField=r.propertyValue.parameters.nameField),!o.checkEnumDataReadonly(t)&&t.formatter&&(t.formatter.data=[...r.propertyValue.value]);break}}},i}}class zl extends Xe{constructor(t,o){super(t,o)}getEditorProperties(t){return this.getComponentConfig(t,{type:"textarea"},{rows:{description:"",title:"文本区域可见的行数",type:"number",editor:{min:0,nullable:!0}},showCount:{description:"",title:"展示输入文本数量",type:"boolean"}})}}function Ul(){let e="zh-CHS";window&&window.top&&window.top.localStorage&&window.top.localStorage.languageCode&&({languageCode:e}=window.top.localStorage);const t=[{id:"yyyy-MM-dd HH:mm:ss",name:"yyyy-MM-dd HH:mm:ss"},{id:"yyyy/MM/dd HH:mm:ss",name:"yyyy/MM/dd HH:mm:ss"},{id:"yyyyMMddHHmmss",name:"yyyyMMddHHmmss"},{id:"yyyy-MM-dd HH:mm",name:"yyyy-MM-dd HH:mm"},{id:"yyyy/MM/dd HH:mm",name:"yyyy/MM/dd HH:mm"},{id:"yyyyMMddHHmm",name:"yyyyMMddHHmm"}],o=[{id:"yyyy-MM-dd",name:"yyyy-MM-dd"},{id:"yyyy/MM/dd",name:"yyyy/MM/dd"},{id:"yyyyMMdd",name:"yyyyMMdd"},{id:"MM/dd/yyyy",name:"MM/dd/yyyy"}],i=[{id:"yyyy-MM",name:"yyyy-MM"},{id:"yyyy/MM",name:"yyyy/MM"},{id:"yyyyMM",name:"yyyyMM"}],r=[{id:"MM/dd",name:"MM/dd"},{id:"MMdd",name:"MMdd"},{id:"MM-dd",name:"MM-dd"}],a=[{id:"yyyy",name:"yyyy"}];return e==="zh-CHS"&&(t.push({id:"yyyy年MM月dd日 HH时mm分ss秒",name:"yyyy年MM月dd日 HH时mm分ss秒"},{id:"yyyy年MM月dd日 HH时mm分",name:"yyyy年MM月dd日 HH时mm分"}),o.push({id:"yyyy年MM月dd日",name:"yyyy年MM月dd日"}),i.push({id:"yyyy年MM月",name:"yyyy年MM月"}),r.push({id:"MM月dd日",name:"MM月dd日"}),a.push({id:"yyyy年",name:"yyyy年"})),e==="zh-CHT"&&(t.push({id:"yyyy年MM月dd日 HH時mm分ss秒",name:"yyyy年MM月dd日 HH時mm分ss秒"},{id:"yyyy年MM月dd日 HH時mm分",name:"yyyy年MM月dd日 HH時mm分"}),o.push({id:"yyyy年MM月dd日",name:"yyyy年MM月dd日"}),i.push({id:"yyyy年MM月",name:"yyyy年MM月"}),r.push({id:"MM月dd日",name:"MM月dd日"}),a.push({id:"yyyy年",name:"yyyy年"})),{timeFormats:t,yMFormats:i,yMdFormats:o,mdFormats:r,yFormats:a}}class Yl extends Xe{constructor(t,o){super(t,o)}getEditorProperties(t){var r,a,l,c,s;const o=this.getDateFormatOptions(t==null?void 0:t.editor),i=this.getValueFormatOptions();return this.getComponentConfig(t,{type:"date-picker"},{showTime:{description:"",title:"启用时间选择",type:"boolean",readonly:((r=t==null?void 0:t.editor)==null?void 0:r.fieldType)==="Date",refreshPanelAfterChanged:!0},displayFormat:{description:"",title:"展示格式",type:"enum",editor:{data:o}},valueFormat:{description:"",title:"存储格式",type:"enum",editor:{data:i},visible:((a=t==null?void 0:t.editor)==null?void 0:a.fieldType)==="String"},maxYear:{description:"",title:"最大年限",type:"number",editor:{nullable:!0,min:(l=t==null?void 0:t.editor)!=null&&l.minYear?(c=t==null?void 0:t.editor)==null?void 0:c.minYear:0,useThousands:!1},refreshPanelAfterChanged:!0},minYear:{description:"",title:"最小年限",type:"number",editor:{nullable:!0,min:0,max:(s=t==null?void 0:t.editor)==null?void 0:s.maxYear,useThousands:!1},refreshPanelAfterChanged:!0}},this.setEditorPropertyRelates)}setEditorPropertyRelates(t,o){if(!(!t||!o.editor))switch(t.propertyID){case"showTime":{const i=o.editor;t.propertyValue?(i.displayFormat="yyyy-MM-dd HH:mm:ss",i.valueFormat="yyyy-MM-dd HH:mm:ss"):(i.displayFormat="yyyy-MM-dd",i.valueFormat="yyyy-MM-dd")}}}getDateFormatOptions(t){let o=[];const{timeFormats:i,yMdFormats:r,yMFormats:a,mdFormats:l,yFormats:c}=Ul();return t.showTime&&(o=o.concat(i)),o=o.concat(r),o=o.concat(a),o=o.concat(c),o=o.concat(l),o}getValueFormatOptions(){return[{id:"yyyy-MM-dd",name:"yyyy-MM-dd"},{id:"yyyy/MM/dd",name:"yyyy/MM/dd"},{id:"MM/dd/yyyy",name:"MM/dd/yyyy"},{id:"yyyy-MM-dd HH:mm:ss",name:"yyyy-MM-dd HH:mm:ss"},{id:"yyyy/MM/dd HH:mm:ss",name:"yyyy/MM/dd HH:mm:ss"},{id:"yyyyMM",name:"yyyyMM"},{id:"yyyy",name:"yyyy"}]}}const Xl={$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}}},Kl=[{field:"code",title:"绑定字段"},{field:"name",title:"名称"},{field:"fieldType",title:"字段类型"}],Zt=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:Kl},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}},Xl);const ct={convertFrom:(e,t)=>t==="multiSelect"?!!e.editor[t]:t==="separator"?e.editor[t]||",":e.editor[t],convertTo:(e,t,o)=>{e.editor[t]=o}},Ql={convertFrom:(e,t)=>e[t]==null?!0:e[t],convertTo:(e,t,o)=>{e[t]=o}};function Jl(e){let t="form_group_"+Date.now();return e&&(t=e.replaceAll("-","_").replaceAll(".","_")),"lookup."+t}const Zl={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:r,id:a,metadataContent:l}=i;e.editor.dataSource||(e.editor.dataSource={}),e.editor.dataSource.displayName=r,e.editor.helpId=a;const{displayType:c,idField:s,textField:u}=l;e.editor.displayType=c,e.editor.dataSource.idField=s,e.editor.textField=u,e.editor.dataSource.type="ViewObject",e.editor.dataSource.uri||(e.editor.dataSource.uri=Jl(e.id))}}},es={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}}},ts={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}}},ns={convertFrom:(e,t)=>e.editor.displayType?e.editor.displayType.toUpperCase():"LIST",convertTo:(e,t,o)=>{e.editor.displayType=o}},os=Symbol("schema_repository_token");class is extends Xe{constructor(){super(...arguments);q(this,"comboListEditor",{type:"combo-list",enableClear:!1,editable:!1})}getPropertyConfig(o,i){const r=this.getBasicProperties(o,i),a=this.getAppearanceConfig();this.getBehaviorConfig(o);const l=this.getLookupConfig(o.editor);return{type:"object",categories:{basic:r,appearance:a,lookup:l}}}getBehaviorConfig(o){return{description:"Basic Infomation",title:"行为",properties:{editable:{description:"",title:"允许编辑",type:"boolean",$converter:ct},readonly:{description:"",title:"只读",type:"boolean",$converter:ct,editor:{enableClear:!0,editable:!0}},required:{visible:!1,description:"",title:"必填",type:"boolean",$converter:ct},visible:{description:"",title:"可见",type:"boolean",visible:!1,$converter:Ql},placeholder:{title:"提示文本",type:"string",$converter:ct},tabindex:{visible:!1,description:"",title:"tab索引",type:"number"}}}}isRelatedField(){var i,r;const o=((i=this.designViewModelField)==null?void 0:i.path)||"";if(o&&o.indexOf(".")>-1){const a=o.split(".")[0],l=this.designViewModelUtils.getAllFields2TreeByVMId(this.viewModelId);if(l&&l.length){const c=l.map(s=>s.data).find(s=>s.code===a);return((r=c==null?void 0:c.type)==null?void 0:r.$type)==="EntityType"}}return!1}getLookupConfig(o){return{description:"Basic Infomation",title:"编辑器",properties:{editable:{description:"",title:"允许编辑",type:"boolean",$converter:ct,editor:this.comboListEditor},readonly:{description:"",title:"只读",type:"boolean",$converter:ct,editor:{...this.comboListEditor,editable:!0}},dataSource:{description:"数据源",title:"数据源",type:"string",refreshPanelAfterChanged:!0,editor:{type:"schema-selector",title:"选择数据源",editorParams:{propertyData:o,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},viewOptions:[{id:"recommend",title:"推荐",type:"List",dataSource:"Recommand",enableGroup:!0,groupField:"category",groupFormatter:(i,r)=>`${i==="local"?"本地元数据":"最近使用"}`},{id:"total",title:"全部",type:"List",dataSource:"Total"}],repositoryToken:os,onSubmitModal:i=>{if(i){const r=this.formSchemaUtils.getFormMetadataBasicInfo();return this.metadataService.getPickMetadata(r.relativePath,i[0].data).then(a=>JSON.parse(a==null?void 0:a.metadata.content))}}},$converter:Zl},displayType:{description:"类型: 树列表、列表、双列表、左树右列表",title:"展示类型",type:"string",$converter:ns,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:o,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},columns:[{field:"name",title:"名称"},{field:"code",title:"编号"},{field:"bindingPath",title:"绑定字段"}],repositoryToken:Zt},$converter:es},textField:{description:"显示文本字段",title:"文本字段",type:"string",$converter:ts,editor:{type:"field-selector",textField:"bindingPath",idField:"bindingPath",editorParams:{propertyData:o,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},columns:[{field:"name",title:"名称"},{field:"code",title:"编号"},{field:"bindingPath",title:"绑定字段"}],repositoryToken:Zt}},mappingFields:{description:"字段映射",title:"字段映射",type:"string",$converter:ct,editor:{type:"mapping-editor",modalWidth:800,modalHeight:600,editable:!1,editorParams:{propertyData:o,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},fromData:{editable:!1,formatter:(i,r)=>`${r.raw.name} [${r.raw.bindingPath}]`,idField:"id",textField:"bindingPath",valueField:"bindingPath",repositoryToken:Zt},toData:{idField:"id",textField:"bindingPath",valueField:"bindingPath",dataSource:this.designViewModelUtils.getAllFields2TreeByVMId(this.viewModelId),formatter:(i,r)=>`${r.raw.name} [${r.raw.bindingPath}]`}}},multiSelect:{description:"启用多选",$converter:ct,title:"启用多选",type:"boolean",editor:this.comboListEditor,refreshPanelAfterChanged:!0,visible:!this.isRelatedField()},separator:{description:"多选分隔符",$converter:ct,title:"多选分隔符",type:"string",editor:{type:"combo-list",editable:!1,disabled:!1,data:[{text:",",value:","},{text:"|",value:"|"},{text:"#",value:"#"}],textField:"text",idField:"value",valueField:"value"},visible:!!o.multiSelect}}}}}class rs extends Xe{constructor(t,o){super(t,o)}getEditorProperties(t){return this.getComponentConfig(t,{type:"number-range"},{editable:{description:"",title:"允许编辑",type:"boolean"}})}}class as extends Xe{constructor(t,o){super(t,o)}getEditorProperties(t){let o;return this.designViewModelField&&(o=this.designViewModelField.type.precision),this.getComponentConfig(t,{type:"number-spinner"},{precision:{description:"",title:"精度",type:"number",editor:{readonly:o===0,min:0,max:o}},step:{description:"",title:"步长",type:"number",editor:{min:0}},max:{description:"",title:"最大值",type:"number",editor:{nullable:!0}},min:{description:"",title:"最小值",type:"number",editor:{nullable:!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 ls extends Xe{constructor(t,o){super(t,o)}getEditorProperties(t){const o=this,i=o.getComponentConfig(t,{type:"radio-group"},{disabled:{visible:!1},placeholder:{visible:!1},direction:{description:"",title:"排列方向",type:"enum",editor:{type:"combo-list",textField:"value",valueField:"key",data:[{key:"horizontal",value:"横向"},{key:"vertical",value:"纵向"}]}},textField:{visible:!1,description:"",title:"显示文本字段",type:"string"},valueField:{visible:!1,description:"",title:"值字段",type:"string"},data:{description:"",title:"数据",type:"array",$converter:"/converter/enum-data.converter",...o.getItemCollectionEditor(t,t.editor.valueField,t.editor.textField),refreshPanelAfterChanged:!0}});return i.setPropertyRelates=function(r){if(r)switch(r.propertyID){case"data":{r.propertyValue.parameters&&(t.editor.valueField=r.propertyValue.parameters.valueField,t.editor.textField=r.propertyValue.parameters.nameField),!o.checkEnumDataReadonly(t)&&t.formatter&&(t.formatter.data=[...r.propertyValue.value]);break}}},i}}class ss extends Xe{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:"medium",name:"中号"},{id:"large",name:"大号"}]}}})}}class cs extends Xe{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 ds extends Bt{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:{resizable:{description:"允许拖拽改变列宽",title:"拖拽改变列宽",type:"boolean"},halign:{description:"标题对齐方式",title:"标题对齐方式",type:"enum",editor:{data:[{id:"left",name:"左对齐"},{id:"center",name:"居中"},{id:"right",name:"右对齐"}]}},align:{description:"数据水平对齐方式选择",title:"数据水平对齐方式",type:"enum",editor:{data:[{id:"left",name:"左对齐"},{id:"center",name:"居中"},{id:"right",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 r=this.formMetadataConverter.getRealEditorType(t.editor.type);let a;switch(r){case"avatar":a=new Ll(this.componentId,this.designerHostService);break;case"check-group":a=new Gl(this.componentId,this.designerHostService);break;case"check-box":a=new Wl(this.componentId,this.designerHostService);break;case"combo-list":a=new ql(this.componentId,this.designerHostService);break;case"date-picker":a=new Yl(this.componentId,this.designerHostService);break;case"lookup":a=new is(this.componentId,this.designerHostService);break;case"number-range":a=new rs(this.componentId,this.designerHostService);break;case"number-spinner":a=new as(this.componentId,this.designerHostService);break;case"radio-group":a=new ls(this.componentId,this.designerHostService);break;case"switch":a=new ss(this.componentId,this.designerHostService);break;case"textarea":a=new zl(this.componentId,this.designerHostService);break;case"time-picker":a=new cs(this.componentId,this.designerHostService);break;default:a=new sa(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:_t.getEditorTypesByMDataType(l.designViewModelField.type.name)}}},setPropertyRelates(u,f){if(u)switch(u&&u.propertyID){case"type":{l.changeFieldEditorType(t,u.propertyValue);break}}}};const c=["id","type","class","style","binding","label","responseLayout"],{categories:s}=a.getPropertyConfig(t);Object.keys(s).map(u=>{const f=s[u],d={};if(Object.keys(f.properties).map(p=>{c.findIndex(y=>y===p)===-1&&f.properties[p]!==!1&&(d[p]=f.properties[p])}),Object.keys(d).length!==0){const p=f==null?void 0:f.title,y="gridFieldEditor",C="编辑器",I=f==null?void 0:f.description,M=(f==null?void 0:f.$converter)||"";l.propertyConfig.categories[o+"_"+u]={title:p,tabId:y,tabName:C,description:I,$converter:M,propertyData:t,properties:d,setPropertyRelates:f==null?void 0:f.setPropertyRelates}}})}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 r=this.formSchemaUtils.getComponentByViewModelId(this.viewModelId),a=this.formSchemaUtils.selectNode(r,f=>f.type===oe["data-grid"].type||f.type===oe["tree-grid"].type);if(!a)return;const l=i.fields.find(f=>f.id===this.designViewModelField.id),c=this.controlCreatorUtils.setGridFieldProperty(o,l,null,!0),s=Object.prototype.hasOwnProperty.call(a,"columns")?a.columns:a.fields,u=s.findIndex(f=>f.id===t.id);u>-1&&s[u].editor&&(s[u].editor=Object.assign(c.editor,{required:s[u].editor.required})),Object.assign(s[u],{dataType:c.dataType},c.formatter?{formatter:c.formatter}:{}),!c.formatter&&s[u].formatter&&delete s[u].formatter}}function us(e,t){const o=e.schema,i=n.ref(!0),r=n.ref(!0);function a(f){return!1}function l(){return!1}function c(){return!1}function s(){return!0}function u(f){var p;return new ds(f,t).getPropertyConfig(o,(p=e==null?void 0:e.parent)==null?void 0:p.schema)}return{canAccepts:a,checkCanDeleteComponent:l,checkCanMoveComponent:c,hideNestedPaddingInDesginerView:s,triggerBelongedComponentToMoveWhenMoved:i,triggerBelongedComponentToDeleteWhenDeleted:r,getPropsConfig:u}}const Fo=n.defineComponent({name:"FDataGridColumnDesign",props:Jt,emits:[],setup(e,t){const o=n.ref(),i=n.inject("designer-host-service"),r=n.inject("design-item-context"),a=us(r,i),l=qt(o,r,a);n.onMounted(()=>{o.value.componentInstance=l}),t.expose(l.value);function c(u){var f;(f=r==null?void 0:r.setupContext)==null||f.emit("selectionChange",l.value.schema,r.schema,e.componentId,l.value)}const{checkBindingFieldValidation:s}=ca(i,r,e);return()=>{const u=s(),f="绑定信息已失效,请手动移除列",d=u?"":"color:red";return n.createVNode(n.Fragment,null,[u?"":n.createVNode("span",{class:"f-icon f-icon-warning mr-1",style:"color: red; min-width: 16px;",title:f},null),n.createVNode("span",{class:"fv-column-title",style:d,ref:o,onClick:p=>c()},[e.title])])}}});ft.install=e=>{e.component(ft.name,ft),e.component(Qt.name,Qt)},ft.register=(e,t,o,i)=>{e["data-grid"]=ft,t["data-grid"]=At,e["grid-field-editor"]=Pl,t["grid-field-editor"]=yl,i["data-grid"]={bindingResolver:hn,selectionItemResolver:gn,updateColumnsResolver:yn,callbackResolver:vn}},ft.registerDesigner=(e,t,o)=>{e["data-grid"]=Qt,t["data-grid"]=At,t["data-grid-column"]=Hl,e["data-grid-column"]=Fo,t["tree-grid-column"]=Al,e["tree-grid-column"]=Fo},z.FDataGrid=ft,z.bindingResolver=hn,z.callbackResolver=vn,z.columnOptions=Zi,z.dataGridDesignProps=mn,z.dataGridProps=kt,z.default=ft,z.editOptions=tr,z.filterOptions=Yi,z.groupOptions=Ui,z.headerOptions=Xi,z.loadingOptions=nr,z.paginationOptions=qi,z.propsResolver=At,z.rowNumberOptions=Ki,z.rowOptions=Qi,z.selectionItemResolver=gn,z.selectionOptions=er,z.sortOptions=zi,z.summaryOptions=Ji,z.updateColumnsResolver=yn,Object.defineProperties(z,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|