UNPKG

@farris/ui-vue

Version:

Farris Vue, a Farris Design based Vue3 component library.

1 lines 340 kB
(function(G,o){typeof exports=="object"&&typeof module<"u"?o(exports,require("vue"),require("lodash-es"),require("bignumber.js"),require("../common/index.umd.js"),require("@vueuse/core"),require("../modal/index.umd.js"),require("../transfer/index.umd.js"),require("../tabs/index.umd.js"),require("../order/index.umd.js"),require("../condition/index.umd.js"),require("../checkbox/index.umd.js"),require("../filter-bar/index.umd.js"),require("../tooltip/index.umd.js"),require("../pagination/index.umd.js"),require("../button/index.umd.js"),require("../search-box/index.umd.js"),require("../tags/index.umd.js"),require("../dynamic-form/index.umd.js"),require("../designer-canvas/index.umd.js"),require("../data-view/index.umd.js"),require("../accordion/index.umd.js"),require("../avatar/index.umd.js"),require("../button-edit/index.umd.js"),require("../button-group/index.umd.js"),require("../calendar/index.umd.js"),require("../capsule/index.umd.js"),require("../color-picker/index.umd.js"),require("../combo-list/index.umd.js"),require("../content-container/index.umd.js"),require("../data-grid/index.umd.js"),require("../date-picker/index.umd.js"),require("../dropdown/index.umd.js"),require("../external-container/index.umd.js"),require("../events-editor/index.umd.js"),require("../image-cropper/index.umd.js"),require("../input-group/index.umd.js"),require("../layout/index.umd.js"),require("../list-nav/index.umd.js"),require("../list-view/index.umd.js"),require("../lookup/index.umd.js"),require("../nav/index.umd.js"),require("../number-spinner/index.umd.js"),require("../number-range/index.umd.js"),require("../page-header/index.umd.js"),require("../page-footer/index.umd.js"),require("../progress/index.umd.js"),require("../query-solution/index.umd.js"),require("../radio-group/index.umd.js"),require("../rate/index.umd.js"),require("../response-toolbar/index.umd.js"),require("../response-layout/index.umd.js"),require("../response-layout-editor/index.umd.js"),require("../section/index.umd.js"),require("../smoke-detector/index.umd.js"),require("../splitter/index.umd.js"),require("../step/index.umd.js"),require("../switch/index.umd.js"),require("../text/index.umd.js"),require("../time-picker/index.umd.js"),require("../tree-view/index.umd.js"),require("../uploader/index.umd.js"),require("../verify-detail/index.umd.js"),require("../component/index.umd.js"),require("../video/index.umd.js"),require("../textarea/index.umd.js"),require("../tree-grid/index.umd.js"),require("../fieldset/index.umd.js"),require("../drawer/index.umd.js"),require("../binding-selector/index.umd.js"),require("../notify/index.umd.js"),require("../combo-tree/index.umd.js"),require("../field-selector/index.umd.js"),require("../mapping-editor/index.umd.js"),require("../schema-selector/index.umd.js"),require("../event-parameter/index.umd.js"),require("../filter-condition-editor/index.umd.js"),require("../sort-condition-editor/index.umd.js"),require("../menu-lookup/index.umd.js"),require("../dynamic-resolver/index.umd.js"),require("../popover/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es","bignumber.js","../common/index.umd.js","@vueuse/core","../modal/index.umd.js","../transfer/index.umd.js","../tabs/index.umd.js","../order/index.umd.js","../condition/index.umd.js","../checkbox/index.umd.js","../filter-bar/index.umd.js","../tooltip/index.umd.js","../pagination/index.umd.js","../button/index.umd.js","../search-box/index.umd.js","../tags/index.umd.js","../dynamic-form/index.umd.js","../designer-canvas/index.umd.js","../data-view/index.umd.js","../accordion/index.umd.js","../avatar/index.umd.js","../button-edit/index.umd.js","../button-group/index.umd.js","../calendar/index.umd.js","../capsule/index.umd.js","../color-picker/index.umd.js","../combo-list/index.umd.js","../content-container/index.umd.js","../data-grid/index.umd.js","../date-picker/index.umd.js","../dropdown/index.umd.js","../external-container/index.umd.js","../events-editor/index.umd.js","../image-cropper/index.umd.js","../input-group/index.umd.js","../layout/index.umd.js","../list-nav/index.umd.js","../list-view/index.umd.js","../lookup/index.umd.js","../nav/index.umd.js","../number-spinner/index.umd.js","../number-range/index.umd.js","../page-header/index.umd.js","../page-footer/index.umd.js","../progress/index.umd.js","../query-solution/index.umd.js","../radio-group/index.umd.js","../rate/index.umd.js","../response-toolbar/index.umd.js","../response-layout/index.umd.js","../response-layout-editor/index.umd.js","../section/index.umd.js","../smoke-detector/index.umd.js","../splitter/index.umd.js","../step/index.umd.js","../switch/index.umd.js","../text/index.umd.js","../time-picker/index.umd.js","../tree-view/index.umd.js","../uploader/index.umd.js","../verify-detail/index.umd.js","../component/index.umd.js","../video/index.umd.js","../textarea/index.umd.js","../tree-grid/index.umd.js","../fieldset/index.umd.js","../drawer/index.umd.js","../binding-selector/index.umd.js","../notify/index.umd.js","../combo-tree/index.umd.js","../field-selector/index.umd.js","../mapping-editor/index.umd.js","../schema-selector/index.umd.js","../event-parameter/index.umd.js","../filter-condition-editor/index.umd.js","../sort-condition-editor/index.umd.js","../menu-lookup/index.umd.js","../dynamic-resolver/index.umd.js","../popover/index.umd.js"],o):(G=typeof globalThis<"u"?globalThis:G||self,o(G["data-grid"]={},G.Vue,G.LodashES,G.BigNumber,G.common,G.VueUseCore,null,G.FTransfer$1,G.FTabs,G.FOrder,null,G.FCheckbox,G.FFilterBar,G.FTooltip,G.FPagination,G.FButton,G.FSearchBox,G.FTags,G.FDynamicForm,G.designerCanvas,G.dataView,G.FAccordion,G.FAvatar,G.FButtonEdit$1,G.FButtonGroup,G.FCalendar,G.FCapsule,G.FColorPicker,G.FComboList,G.FContentContainer,G.FDataGrid$1,G.FDatePicker,G.FDropdown,null,G.FEventsEditor,G.FImageCropper,G.FInputGroup,G.FLayout,G.FListNav,G.FListView$1,G.FLookup,G.FNav,G.FNumberSpinner,G.FNumberRange,G.FPageHeader,G.FPageFooter,G.FProgress,G.FQuerySolution,G.FRadioGroup,G.FRate,G.FResponseToolbar,G.FResponseLayout,G.FResponseLayoutEditorSetting,G.FSection,G.FSmokeDetector,G.FSplitter,G.FStep,G.FSwitch,G.FText,G.FTimePicker,G.FTreeview,G.FUploader,G.FVerifyDetail,G.FComponent,G.FVideo,G.FTextArea,G.FTreeGrid$1,G.FFieldset,G.FDrawer,G.FBindingSelector,null,G.FComboTree,G.FFieldSelector,G.FMappingEditor,G.FSchemaSelector,G.FEventParameter,G.FFilterConditionEditor,G.FSortConditionEditor,G.FMenuLookup,G.dynamicResolver,G.FPopover))})(this,function(G,o,Ae,Rs,Be,Bt,Ds,Po,jo,Ro,Ls,xt,Do,an,Lo,Ho,Ao,ln,At,sn,ae,Wo,Go,qo,zo,Uo,Yo,Xo,Wt,Jo,Ko,Qo,Zo,Hs,ei,ti,ni,oi,ii,ri,ai,li,si,ci,di,ui,fi,pi,mi,hi,gi,yi,vi,bi,Ci,wi,Si,xi,Fi,Ti,cn,_i,Mi,Ii,Vi,ki,Ni,Bi,Ei,$i,As,Oi,Pi,ji,Ri,Di,Li,Hi,Ai,dn,Wi){"use strict";var Ps=Object.defineProperty;var js=(G,o,Ae)=>o in G?Ps(G,o,{enumerable:!0,configurable:!0,writable:!0,value:Ae}):G[o]=Ae;var q=(G,o,Ae)=>js(G,typeof o!="symbol"?o+"":o,Ae);const un={},fn={};function Gt(t){const{properties:e,title:n,ignore:i}=t,r=i&&Array.isArray(i),a=Object.keys(e).reduce((l,s)=>((!r||!i.find(c=>c===s))&&(l[s]=e[s].type==="object"&&e[s].properties?Gt(e[s]):Ae.cloneDeep(e[s].default)),l),{});if(n&&(!r||!i.find(l=>l==="id"))){const l=n.toLowerCase().replace(/-/g,"_");a.id=`${l}_${Math.random().toString().slice(2,6)}`}return a}function Gi(t){const{properties:e,title:n,required:i}=t;if(i&&Array.isArray(i)){const r=i.reduce((a,l)=>(a[l]=e[l].type==="object"&&e[l].properties?Gt(e[l]):Ae.cloneDeep(e[l].default),a),{});if(n&&i.find(a=>a==="id")){const a=n.toLowerCase().replace(/-/g,"_");r.id=`${a}_${Math.random().toString().slice(2,6)}`}return r}return{type:n}}function pn(t,e={},n){const i=un[t];if(i){let r=Gi(i);const a=fn[t];return r=a?a({getSchemaByType:pn},r,e,n):r,r}return null}function qi(t,e){const n=Gt(e);return Object.keys(n).reduce((i,r)=>(Object.prototype.hasOwnProperty.call(t,r)&&(i[r]&&Ae.isPlainObject(i[r])&&Ae.isPlainObject(t[r]||!t[r])?Object.assign(i[r],t[r]||{}):i[r]=t[r]),i),n),n}function mn(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 zi(t,e,n=new Map){const i=qi(t,e);return mn(i,n)}function Ui(t={}){function e(f,p,d,u){if(typeof d=="number")return u[f].length===d;if(typeof d=="object"){const g=Object.keys(d)[0],y=d[g];if(g==="not")return Number(u[f].length)!==Number(y);if(g==="moreThan")return Number(u[f].length)>=Number(y);if(g==="lessThan")return Number(u[f].length)<=Number(y)}return!1}function n(f,p,d,u){return u[f]&&u[f].propertyValue&&String(u[f].propertyValue.value)===String(d)}const i=new Map([["length",e],["getProperty",n]]);Object.keys(t).reduce((f,p)=>(f.set(p,t[p]),f),i);function r(f,p){const d=f;return typeof p=="number"?[{target:d,operator:"length",param:null,value:Number(p)}]:typeof p=="boolean"?[{target:d,operator:"getProperty",param:f,value:!!p}]:typeof p=="object"?Object.keys(p).map(u=>{if(u==="length")return{target:d,operator:"length",param:null,value:p[u]};const g=u,y=p[u];return{target:d,operator:"getProperty",param:g,value:y}}):[]}function a(f){return Object.keys(f).reduce((d,u)=>{const g=r(u,f[u]);return d.push(...g),d},[])}function l(f,p){if(i.has(f.operator)){const d=i.get(f.operator);return d&&d(f.target,f.param,f.value,p)||!1}return!1}function s(f,p){return a(f).reduce((g,y)=>g&&l(y,p),!0)}function c(f,p){const d=Object.keys(f),u=d.includes("allOf"),g=d.includes("anyOf"),y=u||g,v=(y?f[y?u?"allOf":"anyOf":"allOf"]:[f]).map(_=>s(_,p));return u?!v.includes(!1):v.includes(!0)}return{parseValueSchema:c}}const se={button:{type:"button",name:"按钮"},"response-toolbar":{type:"response-toolbar",name:"工具栏"},"response-toolbar-item":{type:"response-toolbar-item",name:"按钮"},"content-container":{type:"content-container",name:"容器"},"input-group":{type:"input-group",name:"文本"},textarea:{type:"textarea",name:"多行文本"},lookup:{type:"lookup",name:"帮助"},"number-spinner":{type:"number-spinner",name:"数值"},"date-picker":{type:"date-picker",name:"日期"},switch:{type:"switch",name:"开关"},"radio-group":{type:"radio-group",name:"单选组"},"check-box":{type:"check-box",name:"复选框"},"check-group":{type:"check-group",name:"复选框组"},"combo-list":{type:"combo-list",name:"下拉列表"},"response-form":{type:"response-form",name:"卡片面板"},"response-layout":{type:"response-layout",name:"布局容器",icon:"response-layout-3"},"response-layout-item":{type:"response-layout-item",name:"布局",icon:"response-layout-1"},"tree-grid":{type:"tree-grid",name:"树表格"},"tree-grid-column":{type:"tree-grid-column",name:"树表格列"},"data-grid":{type:"data-grid",name:"表格"},"data-grid-column":{type:"data-grid-column",name:"表格列"},module:{type:"Module",name:"模块"},component:{type:"component",name:"组件"},tabs:{type:"tabs",name:"标签页"},"tab-page":{type:"tab-page",name:"标签页项",dependentParentControl:"Tab"},"tab-toolbar-item":{type:"tab-toolbar-item",name:"标签页工具栏按钮"},"time-picker":{type:"time-picker",name:"时间选择"},section:{type:"section",name:"分组面板"},"section-toolbar":{type:"section-toolbar",name:"分组面板工具栏"},"section-toolbar-item":{type:"section-toolbar-item",name:"分组面板按钮"},splitter:{type:"splitter",name:"分栏面板"},"splitter-pane":{type:"splitter-pane",name:"分栏面板项",dependentParentControl:"Splitter"},"component-ref":{type:"component-ref",name:"组件引用节点"},uploader:{type:"uploader",name:"附件上传"},"page-header":{type:"page-header",name:"页头"},"page-footer":{type:"page-footer",name:"页脚"},"tab-toolbar":{type:"tab-toolbar",name:"标签页工具栏"},fieldset:{type:"fieldset",name:"分组"},"query-solution":{type:"query-solution",name:"筛选方案"},drawer:{type:"drawer",name:"抽屉"}},Yi={},Xi={};Ui();function Ye(t,e,n=new Map,i=(l,s,c,f)=>s,r={},a=l=>l){return un[e.title]=e,fn[e.title]=i,Yi[e.title]=r,Xi[e.title]=a,(l={},s=!0)=>{if(!s)return mn(l,n);const c=zi(l,e,n),f=Object.keys(t).reduce((p,d)=>(p[d]=t[d].default,p),{});return Object.assign(f,c)}}function gt(t,e){return{customClass:e.class,customStyle:e.style}}function Ji(){function t(e,n){const{id:i}=e||{},{dataSource:r}=e||{};return r===void 0?{}:{data:n.getValue(i),"onUpdate:data":(...a)=>{}}}return{resolve:t}}function Ki(){function t(e,n){const{dataSource:i}=e||{};return i===void 0?{}:{}}return{resolve:t}}function Qi(){function t(e,n){return e.selectItemById(n)}return{selectItemById:t}}function Zi(){function t(e,n){return e.selectItemById(n)}return{selectItemById:t}}function hn(){function t(e,n){const{columns:i}=n;return e.updateColumns(i)}return{updateColumns:t}}const gn=new Map([["appearance",gt],["column","columnOption"]]),yn=new Map([]);var Ft=(t=>(t.SimpleField="SimpleField",t.ComplexField="ComplexField",t))(Ft||{}),vn=(t=>(t.StringType="StringType",t.TextType="TextType",t.NumericType="NumericType",t.BooleanType="BooleanType",t.DateType="DateType",t.DateTimeType="DateTimeType",t.EnumType="EnumType",t.EntityType="EntityType",t.HierarchyType="HierarchyType",t.ObjectType="ObjectType",t.BigNumericType="BigNumericType",t))(vn||{}),wt=(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))(wt||{});function bn(){function t(){const n=i=>{const r=Math.random()*16|0;return(i==="x"?r:r&3|8).toString(16)};return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,n)}function e(n,i){const r="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".split(""),a=[];let l;if(i=i||r.length,n)for(l=0;l<n;l++)a[l]=r[0|Math.random()*i];else{let s;for(a[8]=a[13]=a[18]=a[23]="-",a[14]="4",l=0;l<36;l++)a[l]||(s=0|Math.random()*16,a[l]=r[l===19?s&3|8:s])}return a.join("")}return{guid:t,uuid:e}}const er=["moz","ms","webkit"];function tr(){let t=0;return e=>{const n=new Date().getTime(),i=Math.max(0,16-(n-t)),r=setTimeout(()=>{e(n+i)},i);return t=n+i,r}}function nr(){if(typeof window>"u")return()=>0;if(window.requestAnimationFrame)return window.requestAnimationFrame.bind(window);const t=er.filter(e=>`${e}RequestAnimationFrame`in window)[0];return t?window[`${t}RequestAnimationFrame`]:tr()}nr();const or="root-viewmodel";class ir{constructor(e,n){q(this,"formSchemaUtils");q(this,"controlCreatorUtils");q(this,"designViewModelUtils");q(this,"useFormCommand");q(this,"formStateMachineUtils");this.resolver=e,this.designerHostService=n,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 n=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(n,e,r)}wrapContainerSectionForComponent(e,n,i){var s,c,f,p,d,u,g,y;const r=(c=(s=n==null?void 0:n.parentComponentInstance)==null?void 0:s.schema)==null?void 0:c.type,a=(p=(f=this.formSchemaUtils.getFormSchema())==null?void 0:f.module)==null?void 0:p.templateId;if(r===se["splitter-pane"].type&&["double-list-template","tree-list-template"].includes(a))return e;const l=[se["content-container"].type,se["response-layout-item"].type,se["splitter-pane"].type];if(r&&l.includes(r)){const I=this.resolver.getSchemaByType("section",{parentComponentInstance:n.parentComponentInstance,mainTitle:n.componentName},this.designerHostService);if(I&&I.contents&&I.contents.length){const S=I.contents[0];return S.contents=[e],this.appendAddDeleteBtnToParentContainer(S,n,i),I}}return this.appendAddDeleteBtnToParentContainer((d=n==null?void 0:n.parentComponentInstance)==null?void 0:d.schema,n,i),r===se["tab-page"].type&&(u=n.parentComponentInstance)!=null&&u.parent&&(g=n.parentComponentInstance)!=null&&g.parent.updateToolbarItems&&((y=n.parentComponentInstance)==null||y.parent.updateToolbarItems()),e}appendAddDeleteBtnToParentContainer(e,n,i){const r=e.type,a=i.id.replace(/-/g,"").replace(/_/g,"").replace("component","").replace("viewmodel","");if(n.bindTo==="/"||n.componentType!=="data-grid"&&n.componentType!=="form")return;const l=this.formStateMachineUtils&&this.formStateMachineUtils.getRenderStates(),s=se["tab-page"].type===r?"tab-toolbar-item":"section-toolbar-item",c=[{id:`button-add-${n.componentId}`,type:s,text:"新增",disabled:l.find(f=>f.id==="canAddDetail")?"!viewModel.stateMachine['canAddDetail']":!1,appearance:{class:""},onClick:`root-viewModel.${i.id}.${a}AddItem1`},{id:`button-remove-${n.componentId}`,type:s,text:"删除",disabled:l.find(f=>f.id==="canRemoveDetail")?"!viewModel.stateMachine['canRemoveDetail']":!1,appearance:{class:""},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(c),this.appendAddAndDeleteCommands(i)}appendAddAndDeleteCommands(e){const n=e.id.replace(/-/g,"").replace(/_/g,"").replace("component","").replace("viewmodel",""),i=bn().guid(),r=bn().guid(),a=this.resolveCommandController();e.commands.push({id:i,code:`${n}AddItem1`,name:"增加一条子表数据",params:[],handlerName:"AddItem",cmpId:a,shortcut:{},extensions:[]},{id:r,code:`${n}RemoveItem1`,name:"删除一条子表数据",params:[{name:"id",shownName:"待删除子表数据的标识",value:`{DATA~${e.bindTo}/id}`}],handlerName:"RemoveItem",cmpId:a,shortcut:{},extensions:[]}),this.formSchemaUtils.getFormSchema().module.webcmds.find(c=>c.id===a).refedHandlers.push({host:i,handler:"AddItem"},{host:r,handler:"RemoveItem"})}resolveCommandController(){const e=this.formSchemaUtils.getFormSchema().module.webcmds,n=["8172a979-2c80-4637-ace7-b13074d3f393","8fe977a1-2b32-4f0f-a6b3-2657c4d03574","45be24f9-c1f7-44f7-b447-fe2ada458a61"],i=e.find(a=>n.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 n=this.resolver.getSchemaByType("component-ref");return Object.assign(n,{id:`${e.componentId}-component-ref`,component:`${e.componentId}-component`}),n}createComponentNode(e){const n=this.resolver.getSchemaByType("component"),i=this.createDateGridComponentContents(e);return Object.assign(n,{id:`${e.componentId}-component`,viewModel:`${e.componentId}-component-viewmodel`,componentType:e.componentType,appearance:{class:this.getDataGridComponentClass()},contents:i}),n}createViewModeNode(e){return{id:`${e.componentId}-component-viewmodel`,code:`${e.componentId}-component-viewmodel`,name:e.componentName,bindTo:e.bindTo,parent:or,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:n}=this.formSchemaUtils.getFormSchema().module;let i;if(n==="double-list-in-tab-template"){const f=this.resolver.getSchemaByType("section");Object.assign(f,{id:e.componentId+"-section",appearance:{class:"f-section-grid f-section-in-main px-0 pt-0"},fill:!0,showHeader:!1}),i=f}else if(n==="double-list-template"||n==="tree-list-template"){const f=this.resolver.getSchemaByType("section");Object.assign(f,{id:e.componentId+"-section",appearance:{class:"f-section-grid f-section-in-main"},fill:!0,showHeader:!1}),i=f}else{const f=this.resolver.getSchemaByType("content-container");Object.assign(f,{id:e.componentId+"-container",appearance:{class:"f-grid-is-sub f-utils-flex-column"}}),i=f}const r=this.resolver.getSchemaByType("data-grid"),a=[],l=this.formStateMachineUtils&&this.formStateMachineUtils.getRenderStates(),s=e.bindTo==="/";Object.assign(r,{id:e.componentId+"-dataGrid",appearance:{class:"f-component-grid"},columns:a,fieldEditable:e.editable,dataSource:e.dataSource||"",editable:!s&&l.find(f=>f.id==="editable")?"viewModel.stateMachine['editable']":!1,pagination:{enable:!e.editable}}),i.contents=[r];const{selectedFields:c}=e;return c==null||c.forEach(f=>{if(f.$type===Ft.ComplexField)return;const p=Ae.cloneDeep(f),d=this.controlCreatorUtils.setGridFieldProperty("data-grid-column",p,"",e.editable);d&&a.push(d)}),[i]}assembleViewModelFields(e){const n=[],{selectedFields:i}=e;return i==null||i.forEach(r=>{let a="blur";const l=r.type.name;(l===wt.Enum||l===wt.Boolean)&&(a="change"),n.push({type:"Form",id:r.id,fieldName:r.bindingField,groupId:null,groupName:null,updateOn:a,fieldSchema:{}})}),n}}function Cn(t,e,n,i){var a,l,s,c,f,p,d;const r=n.parentComponentInstance;if(r&&i){const u=Math.random().toString(36).slice(2,6),g={componentId:`data-grid-${u}`,componentName:((a=n.bindingSourceContext)==null?void 0:a.entityTitle)||((s=(l=n.bindingSourceContext)==null?void 0:l.bindingEntity)==null?void 0:s.name)||`表格-${u}`,componentType:"data-grid",parentContainerId:r.schema.id,parentComponentInstance:r,editable:!0,bindTo:((c=n.bindingSourceContext)==null?void 0:c.bindTo)||"",dataSource:(p=(f=n.bindingSourceContext)==null?void 0:f.bindingEntity)==null?void 0:p.label,selectedFields:(d=n.bindingSourceContext)==null?void 0:d.bindingEntityFields};return new ir(t,i).createComponent(g)}else return e}function wn(t,e,n){return e}const rr={$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:"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:!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 ar(){function t(e,n){const i={};return i.beforeEditCell=r=>n.call("beforeEditCell",[r]),i}return{resolve:t}}const lr={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}},sr={enable:{type:Boolean,default:!1},fields:{type:Array,default:[]},mode:{type:String,default:"client"},multiSort:{type:Boolean,default:!1}},cr={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"}},dr={enable:{type:Boolean,default:!1},filterStyle:{type:String,default:"filter-column"},mode:{type:String,default:"server"},showSummary:{type:Boolean,default:!0}},ur={wrapHeadings:{type:Boolean,default:!1}},fr={enable:{type:Boolean,default:!1},heading:{type:String,default:"序号"},width:{type:Number,default:36},showEllipsis:{type:Boolean,default:!0}},pr={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}},mr={enable:{type:Boolean,default:!1},customSummaryStyle:{type:Function,default:()=>{}},groupFields:{type:Array,default:[]},mode:{type:String,default:"client"},position:{type:String,default:"bottom"}},hr={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}},gr={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}},yr={selectOnEditing:{type:Boolean,default:!1},editMode:{type:String,default:"cell"}},vr={show:{type:Boolean,default:!1},message:{type:String,default:"加载中..."}},Et={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},enableFilter:{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}},Sn=Object.assign({},Et,{disabled:{},editable:{},componentId:{type:String,default:""}}),qt=Ye(Et,rr,gn,Cn),xn=Ji(),Fn=Qi(),Tn=hn(),_n=ar();var We=(t=>(t[t.readonly=0]="readonly",t[t.editable=1]="editable",t[t.editing=2]="editing",t))(We||{}),ct=(t=>(t[t.initial=0]="initial",t[t.editing=1]="editing",t))(ct||{}),yt=(t=>(t[t.data=0]="data",t[t.group=1]="group",t[t.summary=2]="summary",t))(yt||{}),Xe=(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))(Xe||{});function br(t,e){var g;const n=String(Date.now()),i=((g=t.rowOption)==null?void 0:g.height)||28,r=o.ref(e.value.primaryColumnsWidth);function a(y){const I={};return y.reduce((S,v,C)=>{const _=C<y.length-1?y[C+1]:null;return C===0&&(S[v.field]={left:0}),v.actualWidth!==void 0&&(S[v.field].width=v.actualWidth),_&&(S[_.field]={left:S[v.field].left+(v.actualWidth||0)}),S},I),I}function l(y,I,S){const v=i*(S+1),_=I[y.field].left-v+(I[y.field].width||0),h=y.parent.height?`${y.parent.height}px`:"";return{left:`${v}px`,width:`${_}px`,height:`${h}`}}function s(y,I,S){return{right:"0px",height:`${y.parent.height?`${y.parent.height}px`:""}`}}function c(y,I){const S=y.parent.height?`${y.parent.height}px`:"";return{left:`${I[y.field].left}px`,height:`${S}`,width:isNaN(Number(I[y.field].width))?"100%":`${I[y.field].width}px`}}function f(y,I,S){const C=(I.spanned||[]).reduce((h,F)=>h+(F.parent.height||0),0)+(y.height||0);return{top:`${y.top}px`,left:`${S[I.field].left}px`,width:`${S[I.field].width}px`,height:`${C}px`,padding:`calc(${C/2}px - 1rem) 0`}}function p(y,I){return`${n}_${y.type}_r_${y.index}_c_${I}_${y.refreshKey||""}`}function d(y){return`${n}_${y.type}_r_${y.index}_${y.refreshKey||""}`}function u(y){const I=y.height?`${y.height}px`:"";return{top:`${y.top}px`,width:isNaN(r.value)?"100%":`${r.value}px`,height:`${I}`}}return o.watch(e,()=>{r.value=e.value.primaryColumnsWidth}),{calculateCellPositionInRow:a,cellKey:p,cellPosition:c,groupCellPosition:l,rowKey:d,rowPosition:u,rowSpanCellPosition:f,summaryCellPosition:s}}function Cr(t,e,n){const{hasChildrenField:i}=n,r=o.ref("#9399a0"),a=o.ref(28);function l(){return[].concat(...e.value.filter(u=>u.raw.__fv_descendant_index__.length!==0).map(u=>[...u.raw.__fv_descendant_index__.slice(-1)]).flat()).sort((u,g)=>Number(u)-Number(g))}function s(p){const d=new Array(e.value.length).fill(0);if(t.showLines){const u=l();e.value.forEach((g,y)=>{const I=u.includes(y),S=g.raw[i.value];d[y]=`repeating-linear-gradient(90deg, ${r.value} 0 1px, transparent 0px 2px) ${S?"-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[p]}function c(p,d,u){return u[p].parents.set(p,!0).forEach(y=>{u[y].childsLength=u[y].childWithLines.filter(I=>d[I].visible).length}),d}function f(p){const g=p.raw.__fv_parent_index__===void 0||p.raw.__fv_parent_index__===-1?0:8,y=0,I=p.raw[i.value],S=p.visible?{left:`${p.layer*10+p.layer*g+y}px`,background:s(p.index),display:"flex",width:"100%",position:"relative",paddingLeft:"0.75rem"}:{display:"none"};return I||(S.paddingLeft="2rem"),S}return{hierarchyCellContentStyle:f,handleCollapsedPaddingBottom:c}}function wr(t,e,n){const i=o.ref(t.iconField);function r(a,l){if(i.value)return a.raw[t.iconField];let s="";return a.raw[n.value]!==!0?s=e.value.leafnodes:s=a.collapse?e.value.fold:e.value.unfold,s}return{treeNodeIconsClass:r}}function Sr(t,e,n,i,r,a,l,s){const{dataView:c,fold:f,hasRealChildren:p,unFold:d,reOrderVisibleIndex:u}=i,{collapseField:g,hasChildrenField:y}=r,{reCalculateVisualDataRows:I,updateVirticalScroll:S}=a;function v(C){if(C.raw[y.value]){const h=c.value[C.raw.__fv_index__];h[g.value]=!h[g.value],i.toggleChildrenVisibiltyByCollapseStatus(h),h[y.value]=p(h),u(),I(),S()}e.emit("expandNode",{row:C})}return{toggleTreeNode:v}}function xr(t){function e(r){return{}}function n(r){const{valign:a,align:l}=r;return{"d-flex":!0,"h-100":!0,"w-100":!0,"justify-content-start":l!=="center"&&l!=="right","justify-content-center":l==="center","justify-content-right":l==="right","align-items-start":a!=="middle"&&a!=="bottom","align-items-center":a==="middle","align-items-end":a==="bottom"}}function i(r){const{align:a,showEllipsis:l}=r;return{"w-100":!0,"text-left":a!=="center"&&a!=="right","text-center":a==="center","text-right":a==="right","text-truncate":l}}return{cellContentPosition:e,cellContentClass:n,cellContentClassWithEllipsis:i}}function Fr(t,e,n,i,r,a,l,s,c,f,p,d,u){const{onClickCell:g}=a,{gridRowClass:y,onClickRow:I,onMouseoverRow:S,onMouseoutRow:v}=s,{enableMultiSelect:C,select:_,unSelect:h,selectItem:F}=c;o.ref(t.cellHeight);const M=o.ref(t.treeNodeIconsData||{}),{hasChildrenField:m,shouldShowCheckBox:x,shouldShowIcon:b}=l,{toggleTreeNode:T}=Sr(t,e,i,r,l,p),{toggleSelectHierarchyItem:w}=f,{cellKey:O,cellPosition:E,rowKey:N,rowPosition:V}=br(t,n),{cellContentClass:k,cellContentPosition:B,cellContentClassWithEllipsis:$}=xr(),{hierarchyCellContentStyle:L}=Cr(t,i,l),{treeNodeIconsClass:Y}=wr(t,M,m);function oe(ne,te){const Ie=ne.raw[m.value];return{"fv-tree-node-toggle":Ie&&ne.collapse,"fv-tree-node-toggle-minus":Ie&&!ne.collapse}}function X(ne,te){ne.stopPropagation(),T(te)}function ce(ne,te){return o.createVNode("div",{class:oe(ne),onClick:Ie=>X(Ie,ne)},null)}function R(ne,te){return b.value&&o.createVNode("div",{id:"treeNodeIcons",class:Y(ne,te)},null)}function j(ne){C.value?(ne.checked?_(ne):h(ne),w(ne)):F(ne)}function H(ne,te){return x.value&&o.createVNode(xt.FCheckbox,{id:"checkbox_for_"+O(ne,te.index),indeterminate:ne.indeterminate,disabled:ne.disabled,checked:ne.checked,"onUpdate:checked":Ie=>ne.checked=Ie,onChange:()=>j(ne)},null)}function A(ne,te){return o.createVNode("span",{title:te.data,style:"user-select:none"},[e.slots.cellTemplate?e.slots.cellTemplate({cell:te,row:ne}):te.mode===We.editing?te.getEditor(te):te.formatter?te.formatter(te,ne):te.data!=null?te.data.toString():te.data])}function ee(ne,te){return o.createVNode("div",{class:k(te),style:B(te)},[o.createVNode("div",{class:$(te)},[te.showTips?o.createVNode(an,null,{default:()=>A(ne,te),contentTemplate:()=>A(ne,te)}):A(ne,te)])])}function J(ne,te,Ie){return o.createVNode("div",{ref:te.setRef,key:O(ne,te.index),class:"fv-grid-hierarchy-cell",style:E(te,Ie)},[o.createVNode("div",{style:L(ne)},[ce(ne),R(ne,te),H(ne,te),ee(ne,te)])])}function P(ne,te,Ie){return o.createVNode("div",{ref:te.setRef,key:O(ne,te.index),class:"fv-grid-cell",style:E(te,Ie),onClick:_e=>g(_e,te,ne,te.column)},[o.createVNode("div",{class:k(te),style:B(te)},[o.createVNode("div",{class:$(te)},[te.showTips?o.createVNode(an,null,{default:()=>A(ne,te),contentTemplate:()=>A(ne,te)}):A(ne,te)])])])}function W(ne,te){return te==="left"&&n.value.leftColumns.length>0&&n.value.leftColumns[0].field===ne.field||te==="primary"&&n.value.primaryColumns.length>0&&n.value.primaryColumns[0].field===ne.field}function re(ne,te,Ie="primary",_e){return o.createVNode("div",{ref:ne.setRef,key:N(ne),class:y(ne,_e),style:V(ne),onMouseover:Fe=>S(Fe,ne),onMouseout:Fe=>v(Fe,ne),onClick:Fe=>I(Fe,ne)},[Object.values(ne.data).filter(Fe=>te[Fe.field]&&Fe.rowSpan===1).map(Fe=>W(Fe,Ie)?J(ne,Fe,te):P(ne,Fe,te))])}return{renderDataRow:re}}function Mn(t,e,n){const{horizontalScrollThumbStyle:i,onMouseDownScrollThumb:r,shouldShowHorizontalScrollbar:a}=n;function l(){return a.value&&o.createVNode("div",{class:"fv-grid-horizontal-scroll"},[o.createVNode("div",{class:"fv-grid-horizontal-scroll-thumb",style:i.value,onMousedown:s=>r(s,e,"horizontal")},null)])}return{renderHorizontalScrollbar:l}}function Tr(){function t(i,r){switch(i.command){case"edit":case"remove":return r.status===ct.initial;case"accept":case"cancel":return r.status===ct.editing;default:return!i.hidden}}function e(i,r,a){switch(i.onClick(r,a.dataIndex,a),i.command){case"edit":a.status,ct.editing;break;case"accept":case"cancel":a.status,ct.initial;break}}function n(i,r){return i.commands&&i.commands.map(a=>t(a,r)&&o.createVNode(Ho,{class:"ml-2",type:a.type,size:a.size||"small",onClick:l=>e(a,l,r),style:{"margin-bottom":"3px"}},{default:()=>[o.createTextVNode(" "),a.text,o.createTextVNode(" ")]}))}return{renderCommandColumn:n}}function In(t){const e=o.ref(t.minHeight),n=o.ref(t.minWidth),i=o.ref(t.height),r=o.ref(t.width),a=o.computed(()=>i.value<=0?0:Math.max(i.value,e.value)),l=o.computed(()=>r.value<=0?0:Math.max(r.value,n.value));return o.watch([()=>t.height,()=>t.width,()=>t.minHeight,()=>t.minWidth],([c,f,p,d])=>{e.value=Number(p),n.value=Number(d),i.value=Number(c),r.value=Number(f)}),{containerStyleObject:o.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 _r="";function Vn(t){const n={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=o.ref(n);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=o.ref(t.summary),l=o.computed(()=>{const _=a.value;return(_==null?void 0:_.groupFields)||[]});function s(){i.value.rightColumns.forEach(F=>{F.showSetting=!1}),i.value.primaryColumns.forEach(F=>{F.showSetting=!1});const _=i.value.rightColumns.filter(F=>F.visible),h=i.value.primaryColumns.filter(F=>F.visible);_.length>0?_[_.length-1].showSetting=!0:h.length>0&&(h[h.length-1].showSetting=!0)}function c(_){r();const h=new Map;return l.value&&l.value.reduce((F,M)=>(F.set(M,!0),F),h),_.reduce((F,M)=>(M.visible=M.visible!==!1,M.filter=M.filter||_r,M.fixed==="left"?(i.value.leftColumns.push(M),i.value.leftColumnsMap.set(M.field,M),i.value.leftColumnsWidth+=M.actualWidth):M.fixed==="right"?(i.value.rightColumns.push(M),i.value.rightColumnsMap.set(M.field,M),i.value.rightColumnsWidth+=M.actualWidth):(i.value.primaryColumns.push(M),i.value.primaryColumnsMap.set(M.field,M),i.value.primaryColumnsWidth+=M.actualWidth),h.has(M.field)&&i.value.summaryColumns.push(M),F),i),s(),i}c(t.columns);const f=o.computed(()=>i.value.leftColumns.length>0),p=o.computed(()=>i.value.rightColumns.length>0);function d(_,h){return h.sortable&&h.sort&&h.sort!=="none"&&_.push(h),_}function u(_,h){return _.sortOrder=_.sortOrder||0,h.sortOrder=h.sortOrder||0,_.sortOrder===h.sortOrder?0:_.sortOrder<h.sortOrder?-1:1}function g(_,h){return _.sortOrder=_.sortOrder||0,h.sortOrder=h.sortOrder||0,_.sortOrder===h.sortOrder?0:_.sortOrder<h.sortOrder?1:-1}function y(_,h){return h.filterable&&_.push(h),_}function I(){const _=[];return i.value.leftColumns.reduce(y,_),i.value.primaryColumns.reduce(y,_),i.value.rightColumns.reduce(y,_),_}function S(){const _=[];i.value.leftColumns.reduce(d,_),i.value.primaryColumns.reduce(d,_),i.value.rightColumns.reduce(d,_);const h=Math.max(..._.map(F=>F.sortOrder||0));return _.sort(g).map(F=>{const M=F.sortOrder||h+1;return F.sortOrder=M,F}).sort(u).map((F,M)=>{const m=M+1;return F.sortOrder=m,F})}function v(_,h,F){const M=_.map(m=>{const x=F.getSorterByColumn(m),b=m.sort==="asc",T=m.sort==="desc",w=b?x.ascend:T?x.decend:void 0;return{field:m.field,compare:w}});h.setSorters(M)}function C(_,h){const F=S();v(F,_,h)}return{applyColumnSorter:C,collectionFilterableColumns:I,applySortableColumns:v,collectionSortableColumns:S,columnContext:i,hasLeftFixedColumn:f,hasRightFixedColumn:p,updateColumnRenderContext:c,updateColumnSettingIcon:s}}o.ref([{name:"七天",selectable:!0},{name:"一个月",selectable:!0},{name:"三个月",selectable:!0},{name:"半年",selectable:!0}]);function kn(t){const n=o.ref(t.commandOption.enable||!1),i=o.ref(t.commandOption.commands||[]);function r(a){if(n.value&&!(a.value.findIndex(s=>s.dataType==="commands")>-1)){const s={field:"__commands__",title:"操作",width:120,fixed:"right",dataType:"commands",commands:i.value,visible:!0};a.value.push(s)}}return{applyCommands:r}}function Nn(t,e){var f;const n=o.ref((f=t.columnOption)==null?void 0:f.groups);function i(p,d,u,g,y){const I={actualWidth:0,children:[],depth:1,field:p.field,layer:1,left:0,parent:u,resizable:!0,title:p.title||"",status:Xe.none,popoverRef:o.ref(),showPopover:!1,column:null,sortType:"none"},S=g||I;if(p.group){let v=1;p.group.reduce((C,_)=>{if(typeof _=="string"){const h=d.get(_);h&&(y.fieldToRootMap.set(_,S),C.actualWidth+=h.actualWidth,C.children.push(h))}else{const h=i(_,d,C,S,y);v=Math.max(v,h.depth),C.actualWidth+=h.actualWidth,C.children.push(h)}return C},I),I.depth+=v}return e.value.headerDepth=Math.max(e.value.headerDepth,I.depth),I}function r(p){const d={groupedCells:new Map,fieldToRootMap:new Map};return n.value&&n.value.reduce((u,g)=>{const y=i(g,p,null,null,d);return u.groupedCells.set(g.field,y),u},d),d}function a(p){if(!p||p.length===0)return 0;const d=p[0];return d.children&&d.children.length>0&&(d.left=a(d.children)),d.left}function l(p,d){const u=e.value.headerDepth;p.forEach(g=>{g.layer=d?d.layer+1:1;const y=g.children&&g.children.length===0;g.depth=y?u-(g.layer-1):1,g.left=y?g.left:a(g.children),g.children&&l(g.children,g)})}function s(p,d){const u=new Map;return p.forEach(g=>{const y=d.fieldToRootMap.get(g.field),I=y!=null;I&&!u.has(y.field)&&u.set(y.field,y),I||u.set(g.field,g)}),l(Array.from(u.values())),u}function c(p){let d=new Map,u=0;if(p.reduce((g,y)=>{let I=Xe.none;I=y.filterable?I|Xe.filterable:I,I=y.sort&&y.sort!=="none"?I|Xe.sorted|(y.sort==="asc"?Xe.ascending:Xe.descending):I;const S=y.field;return g.set(S,{actualWidth:y.actualWidth||0,children:[],depth:1,layer:1,left:u,field:S,parent:null,resizable:y.resizable===void 0?!0:y.resizable,title:y.title,status:I,popoverRef:o.ref(),showPopover:!1,column:y,filterValue:null,sortType:y.sort||"none",showSetting:y.showSetting,draggable:y.draggable}),u+=y.actualWidth||0,g},d),n.value){const g=r(d);d=s(d,g)}return d}return{getGridHeaderCells:c}}function Mr(t,e){var v;const{idField:n}=e,i=o.ref(t.summary),r=o.ref(t.group),a=o.ref(((v=t.group)==null?void 0:v.groupFields)||[]),l=o.computed(()=>{var C;return(C=t.group)==null?void 0:C.enable}),s=o.computed(()=>{var C;return(C=t.group)==null?void 0:C.showGroupPanel}),c=o.computed(()=>{const C=i.value;return(C==null?void 0:C.groupFields)||[]}),f=o.computed(()=>{const C=r.value;return C&&C.showSummary}),p=new Map;let d=[];function u(C,_,h,F,M){const m=F[h];m&&(_.reduce((x,b,T)=>{var E;const w=b[m];let O=x.get(w);if(!O){const N=c.value.reduce((V,k)=>(V.set(k,0),V),new Map);O={field:m,title:((E=M.get(m))==null?void 0:E.title)||m,value:w,layer:h,details:[],groupSummaries:N},x.set(w,O)}return c.value&&c.value.forEach(N=>{if(O){const V=O.groupSummaries.get(N)||0;O.groupSummaries.set(N,V+b[N])}}),O.details.push(b),x},C),h<F.length-1&&C.forEach((x,b)=>{x.nestGroup=new Map,u(x.nestGroup,x.details,h+1,F,M),x.details=[]}))}function g(C,_){return t.group&&t.group.formatter?t.group.formatter(C.value,{