@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(X,n){typeof exports=="object"&&typeof module<"u"?n(exports,require("vue"),require("lodash-es"),require("../dynamic-resolver/index.umd.js"),require("../tags/index.umd.js"),require("../popover/index.umd.js"),require("../designer-canvas/index.umd.js"),require("../common/index.umd.js"),require("bignumber.js"),require("@vueuse/core"),require("../modal/index.umd.js"),require("../transfer/index.umd.js"),require("../tabs/index.umd.js"),require("../order/index.umd.js"),require("../condition/index.umd.js"),require("../checkbox/index.umd.js"),require("../filter-bar/index.umd.js"),require("../pagination/index.umd.js"),require("../search-box/index.umd.js"),require("../dynamic-form/index.umd.js"),require("../data-view/index.umd.js"),require("../accordion/index.umd.js"),require("../avatar/index.umd.js"),require("../button-edit/index.umd.js"),require("../button-group/index.umd.js"),require("../calendar/index.umd.js"),require("../capsule/index.umd.js"),require("../color-picker/index.umd.js"),require("../combo-list/index.umd.js"),require("../content-container/index.umd.js"),require("../data-grid/index.umd.js"),require("../date-picker/index.umd.js"),require("../dropdown/index.umd.js"),require("../external-container/index.umd.js"),require("../events-editor/index.umd.js"),require("../image-cropper/index.umd.js"),require("../input-group/index.umd.js"),require("../layout/index.umd.js"),require("../list-nav/index.umd.js"),require("../list-view/index.umd.js"),require("../lookup/index.umd.js"),require("../nav/index.umd.js"),require("../number-spinner/index.umd.js"),require("../number-range/index.umd.js"),require("../page-header/index.umd.js"),require("../page-footer/index.umd.js"),require("../progress/index.umd.js"),require("../query-solution/index.umd.js"),require("../radio-group/index.umd.js"),require("../rate/index.umd.js"),require("../response-toolbar/index.umd.js"),require("../response-layout/index.umd.js"),require("../response-layout-editor/index.umd.js"),require("../section/index.umd.js"),require("../smoke-detector/index.umd.js"),require("../splitter/index.umd.js"),require("../step/index.umd.js"),require("../switch/index.umd.js"),require("../text/index.umd.js"),require("../time-picker/index.umd.js"),require("../tree-view/index.umd.js"),require("../uploader/index.umd.js"),require("../verify-detail/index.umd.js"),require("../component/index.umd.js"),require("../video/index.umd.js"),require("../textarea/index.umd.js"),require("../tree-grid/index.umd.js"),require("../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")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es","../dynamic-resolver/index.umd.js","../tags/index.umd.js","../popover/index.umd.js","../designer-canvas/index.umd.js","../common/index.umd.js","bignumber.js","@vueuse/core","../modal/index.umd.js","../transfer/index.umd.js","../tabs/index.umd.js","../order/index.umd.js","../condition/index.umd.js","../checkbox/index.umd.js","../filter-bar/index.umd.js","../pagination/index.umd.js","../search-box/index.umd.js","../dynamic-form/index.umd.js","../data-view/index.umd.js","../accordion/index.umd.js","../avatar/index.umd.js","../button-edit/index.umd.js","../button-group/index.umd.js","../calendar/index.umd.js","../capsule/index.umd.js","../color-picker/index.umd.js","../combo-list/index.umd.js","../content-container/index.umd.js","../data-grid/index.umd.js","../date-picker/index.umd.js","../dropdown/index.umd.js","../external-container/index.umd.js","../events-editor/index.umd.js","../image-cropper/index.umd.js","../input-group/index.umd.js","../layout/index.umd.js","../list-nav/index.umd.js","../list-view/index.umd.js","../lookup/index.umd.js","../nav/index.umd.js","../number-spinner/index.umd.js","../number-range/index.umd.js","../page-header/index.umd.js","../page-footer/index.umd.js","../progress/index.umd.js","../query-solution/index.umd.js","../radio-group/index.umd.js","../rate/index.umd.js","../response-toolbar/index.umd.js","../response-layout/index.umd.js","../response-layout-editor/index.umd.js","../section/index.umd.js","../smoke-detector/index.umd.js","../splitter/index.umd.js","../step/index.umd.js","../switch/index.umd.js","../text/index.umd.js","../time-picker/index.umd.js","../tree-view/index.umd.js","../uploader/index.umd.js","../verify-detail/index.umd.js","../component/index.umd.js","../video/index.umd.js","../textarea/index.umd.js","../tree-grid/index.umd.js","../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"],n):(X=typeof globalThis<"u"?globalThis:X||self,n(X["mapping-editor"]={},X.Vue,X.LodashES,X.dynamicResolver,X.FTags,X.FPopover,X.designerCanvas,X.common,X.BigNumber,X.VueUseCore,null,X.FTransfer$1,X.FTabs,X.FOrder,null,X.FCheckbox,X.FFilterBar,X.FPagination,X.FSearchBox,X.FDynamicForm,X.dataView,X.FAccordion,X.FAvatar,X.FButtonEdit$1,X.FButtonGroup,X.FCalendar,X.FCapsule,X.FColorPicker,X.FComboList,X.FContentContainer,X.FDataGrid$1,X.FDatePicker,X.FDropdown,null,X.FEventsEditor,X.FImageCropper,X.FInputGroup,X.FLayout,X.FListNav,X.FListView$1,X.FLookup,X.FNav,X.FNumberSpinner,X.FNumberRange,X.FPageHeader,X.FPageFooter,X.FProgress,X.FQuerySolution,X.FRadioGroup,X.FRate,X.FResponseToolbar,X.FResponseLayout,X.FResponseLayoutEditorSetting,X.FSection,X.FSmokeDetector,X.FSplitter,X.FStep,X.FSwitch,X.FText,X.FTimePicker,X.FTreeview,X.FUploader,X.FVerifyDetail,X.FComponent,X.FVideo,X.FTextArea,X.FTreeGrid$1,X.FBindingSelector,null,X.FComboTree,X.FFieldSelector,X.FMappingEditor,X.FSchemaSelector,X.FEventParameter))})(this,function(X,n,$e,on,rn,Io,Rt,xe,us,It,fs,No,Eo,Bo,ps,xt,$o,Oo,jo,Ht,Y,Po,Do,Ro,Ho,Ao,Lo,Go,At,Wo,qo,zo,Uo,ms,Yo,Xo,Ko,Jo,Qo,Zo,ei,ti,ni,oi,ii,ri,ai,li,si,ci,di,ui,fi,pi,mi,hi,gi,yi,vi,bi,an,Ci,wi,Si,xi,Fi,_i,Mi,hs,Ti,Vi,ki,Ii,Ni){"use strict";var cs=Object.defineProperty;var ds=(X,n,$e)=>n in X?cs(X,n,{enumerable:!0,configurable:!0,writable:!0,value:$e}):X[n]=$e;var q=(X,n,$e)=>ds(X,typeof n!="symbol"?n+"":n,$e);const ln={},sn={};function Lt(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?Lt(t[c]):$e.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 Ei(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?Lt(t[l]):$e.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 cn(e,t={},o){const i=ln[e];if(i){let r=Ei(i);const a=sn[e];return r=a?a({getSchemaByType:cn},r,t,o):r,r}return null}function Bi(e,t){const o=Lt(t);return Object.keys(o).reduce((i,r)=>(Object.prototype.hasOwnProperty.call(e,r)&&(i[r]&&$e.isPlainObject(i[r])&&$e.isPlainObject(e[r]||!e[r])?Object.assign(i[r],e[r]||{}):i[r]=e[r]),i),o),o}function $i(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 Oi(e,t,o=new Map){const i=Bi(e,t);return $i(i,o)}function ji(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],b=d[y];if(y==="not")return Number(p[u].length)!==Number(b);if(y==="moreThan")return Number(p[u].length)>=Number(b);if(y==="lessThan")return Number(p[u].length)<=Number(b)}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,b=f[p];return{target:d,operator:"getProperty",param:y,value:b}}):[]}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,b)=>y&&l(b,f),!0)}function s(u,f){const d=Object.keys(u),p=d.includes("allOf"),y=d.includes("anyOf"),b=p||y,g=(b?u[b?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"}},Pi={},Di={};ji();function Ae(e,t,o=new Map,i=(l,c,s,u)=>c,r={},a=l=>l){return ln[t.title]=t,sn[t.title]=i,Pi[t.title]=r,Di[t.title]=a,(l={})=>{const c=Oi(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 Ri(){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 Hi(){function e(t,o){const{dataSource:i}=t||{};return i===void 0?{}:{}}return{resolve:e}}function Ai(){function e(t,o){return t.selectItemById(o)}return{selectItemById:e}}function Li(){function e(t,o){return t.selectItemById(o)}return{selectItemById:e}}function dn(){function e(t,o){const{columns:i}=o;return t.updateColumns(i)}return{updateColumns:e}}const Gi=new Map([["appearance",on.resolveAppearance]]);function Wi(e,t,o){return t}const qi={$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"]},zi={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:"右对齐"}]}}}}}},Gt={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"}},un=Ae(Gt,qi,Gi,Wi,zi),Ui={popupContentPosition:{type:Object,default:{left:0,top:0}},host:{type:Object},backgroundColor:{type:String,default:""}},Yi=n.defineComponent({name:"FOverlay",props:Ui,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 Xi(e){if(e.content&&e.content.render)return e.content.render;if(e.render&&typeof e.render=="function")return e.render}function Ki(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=Xi(e);return()=>n.createVNode(Yi,{"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 Ji{static show(t){return Ki(t)}}const Qi={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 Oe{constructor(t,o){this.x=t,this.y=o}static getTransformInfo(t){const i=window.getComputedStyle(t).getPropertyValue("transform").replace(/[^-\d,]/g,"").split(",");if(i.length>=6){const 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 Oe(t.clientX,t.clientY);if(o===null||t.changedTouches.length===1)return new Oe(t.changedTouches[0].clientX,t.changedTouches[0].clientY);for(let i=0;i<t.changedTouches.length;i++)if(t.changedTouches[i].target===o)return new Oe(t.changedTouches[i].clientX,t.changedTouches[i].clientY)}static isMouseEvent(t){return Object.prototype.toString.apply(t).indexOf("MouseEvent")===8}static isIPosition(t){return!!t&&"x"in t&&"y"in t}static getCurrent(t){const o=new Oe(0,0);if(window){const i=window.getComputedStyle(t);if(i){const 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 Oe(0,0).set(t)}get value(){return{x:this.x,y:this.y}}add(t){return this.x+=t.x,this.y+=t.y,this}subtract(t){return this.x-=t.x,this.y-=t.y,this}multiply(t){this.x*=t,this.y*=t}divide(t){this.x/=t,this.y/=t}reset(){return this.x=0,this.y=0,this}set(t){return this.x=t.x,this.y=t.y,this}}class ht{constructor(t,o){this.width=t,this.height=o}static getCurrent(t){const o=new ht(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 ht(0,0).set(t)}set(t){return this.width=t.width,this.height=t.height,this}}function Zi(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(),b=n.ref(e.draggable),k=n.ref(!1);function T(){const $=i.value||document.body,O=window.getComputedStyle($);if(!O||!o.value)return;const L=Oe.getTransformInfo(o.value),H={};s.value&&(H.deltaL=o.value.offsetLeft-s.value.x,H.deltaT=o.value.offsetTop-s.value.y);const U=O.getPropertyValue("position");H.width=$.clientWidth,H.height=$.clientHeight,H.pr=parseInt(O.getPropertyValue("padding-right"),10),H.pb=parseInt(O.getPropertyValue("padding-bottom"),10),H.position=O.getPropertyValue("position"),U==="static"&&($.style.position="relative"),H.translateX=L.x,H.translateY=L.y,d.value=H}function g($){if(o.value){a.value=ht.getCurrent(o.value),l.value=Oe.getCurrent(o.value),c.value=a.value?ht.copy(a.value):null,s.value=l.value?Oe.copy(l.value):null,T();const O=$.target.getAttribute("type")||"";u.value={n:!!O.match(/n/),s:!!O.match(/s/),w:!!O.match(/w/),e:!!O.match(/e/)}}}function C(){var $,O,L,H;if(o.value){const U=o.value;u.value&&((u.value.n||u.value.s)&&(($=c.value)!=null&&$.height)&&(U.style.height=c.value.height+"px"),(u.value.w||u.value.e)&&((O=c.value)!=null&&O.width)&&(U.style.width=c.value.width+"px"),s.value&&((L=s.value)!=null&&L.x&&(U.style.left=s.value.x+"px"),(H=s.value)!=null&&H.y&&(U.style.top=s.value.y+"px")))}}function S(){const $=e.minHeight?e.minHeight:1,O=e.minWidth?e.minWidth:1;c.value&&s.value&&u.value&&a.value&&(c.value.height<$&&(c.value.height=$,u.value.n&&l.value&&(s.value.y=l.value.y+(a.value.height-$))),c.value.width<O&&(c.value.width=O,u.value.w&&l.value&&(s.value.x=l.value.x+(a.value.width-O))),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 $=d.value;if(s.value&&c.value&&u.value&&a.value){const O=$.width-$.pr-$.deltaL-$.translateX-s.value.x,L=$.height-$.pb-$.deltaT-$.translateY-s.value.y;u.value.n&&s.value.y+$.translateY<0&&l.value&&(s.value.y=-$.translateY,c.value.height=a.value.height+l.value.y+$.translateY),u.value.w&&s.value.x+$.translateX<0&&l.value&&(s.value.x=-$.translateX,c.value.width=a.value.width+l.value.x+$.translateX),c.value.width>O&&(c.value.width=O),c.value.height>L&&(c.value.height=L)}}}function _($){if(!r.value||!a.value||!l.value||!u.value)return;$.subtract(r.value);const O=$.x,L=$.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+O:u.value.w&&(c.value.width=a.value.width-O,s.value.x=l.value.x+O),h(),S(),C()}function N($){if(!f.value)return;const O=Oe.fromEvent($);O&&_(O)}function m(){if(o.value){const{width:$,height:O,x:L,y:H}=o.value.getBoundingClientRect(),U=Oe.getTransformInfo(o.value);return{size:{width:$,height:O},position:{x:L-U.x,y:H-U.y}}}return null}function M($){if(o.value){const O=m();p.value=O}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",M)}function w(){document.addEventListener("mousemove",N),document.addEventListener("mouseup",M)}function x($){$ instanceof MouseEvent&&$.button===2||b.value&&(document.body.click(),$.stopPropagation(),$.preventDefault(),r.value=Oe.fromEvent($),f.value=$.target,g($),w())}function v($){return o.value=$,n.createVNode(n.Fragment,null,[n.createVNode("div",{class:"fv-resizable-handle fv-resizable-n",type:"n",onMousedown:O=>x(O)},null),n.createVNode("div",{class:"fv-resizable-handle fv-resizable-e",type:"e",onMousedown:O=>x(O)},null),n.createVNode("div",{class:"fv-resizable-handle fv-resizable-s",type:"s",onMousedown:O=>x(O)},null),n.createVNode("div",{class:"fv-resizable-handle fv-resizable-w",type:"w",onMousedown:O=>x(O)},null),n.createVNode("div",{class:"fv-resizable-handle fv-resizable-ne",type:"ne",onMousedown:O=>x(O)},null),n.createVNode("div",{class:"fv-resizable-handle fv-resizable-se fv-resizable-diagonal",type:"se",onMousedown:O=>x(O)},null),n.createVNode("div",{class:"fv-resizable-handle fv-resizable-sw",type:"sw",onMousedown:O=>x(O)},null),n.createVNode("div",{class:"fv-resizable-handle fv-resizable-nw",type:"nw",onMousedown:O=>x(O)},null)])}function F($=!0){document.body.click();const O=i.value||document.body,L=ht.getCurrent(O),H=o.value;$&&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}},b.value=!1,k.value=!0)}function V(){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};($=c.value)==null||$.set(L),(O=s.value)==null||O.set(H);const U=o.value;U.style.height=L.height+"px",U.style.width=L.width+"px",U.style.left=`${H.x}px`,U.style.top=`${H.y}px`,U.style.transform="",p.value={size:L,position:H},b.value=e.draggable,k.value=!1}}function I(){if(o.value){const $=ht.getCurrent(o.value);if($){const{width:O,height:L}=$;o.value.style.left=`${(window.innerWidth-O)/2}px`,o.value.style.top=`${(window.innerHeight-L)/2}px`,o.value.style.transform=""}}}function E(){const $=()=>{k.value?F(!1):I(),document.body.click()};return window.addEventListener("resize",$),()=>{window.removeEventListener("resize",$)}}const B=E();return{renderResizeBar:v,boundingElement:i,resizedEventParam:p,maximize:F,restore:V,allowDrag:b,isMaximized:k,unWindowResizeHandle:B}}function er(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 Oe(0,0)),f=n.ref(new Oe(0,0)),d=n.ref(new Oe(0,0)),p=n.ref(new Oe(0,0));n.watch(()=>o.value,m=>{l.value.style.cursor=m?"move":"default"});function y(m,M){if(M.tagName==="BUTTON")return!1;if(M===m)return!0;for(const w in M.children)if(Object.prototype.hasOwnProperty.call(M.children,w)&&y(m,M.children[w]))return!0;return!1}function b(){var x,v;let m=d.value.x+f.value.x,M=d.value.y+f.value.y;a.value==="x"?(m=((x=u.value)==null?void 0:x.x)||0,d.value.x=0):a.value==="y"&&(M=((v=u.value)==null?void 0:v.y)||0,d.value.y=0);const w=`translate3d(${Math.round(m)}px, ${Math.round(M)}px, 0px)`;i.value&&(i.value.style.transform=w),p.value.x=m,p.value.y=M}function k(){if(!c.value||!i.value)return null;const m=c.value.getBoundingClientRect(),M=i.value.getBoundingClientRect(),w={top:m.top<M.top,right:m.right>M.right,bottom:m.bottom>M.bottom,left:m.left<M.left};return w.top||(d.value.y-=M.top-m.top),w.bottom||(d.value.y-=M.bottom-m.bottom),w.right||(d.value.x-=M.right-m.right),w.left||(d.value.x-=M.left-m.left),b(),w}function T(m){m&&(u.value&&m.subtract(u.value),d.value.set(m),b(),k())}function g(m){s.value&&r.value&&(m.stopPropagation(),m.preventDefault(),T(Oe.fromEvent(m,l.value)))}function C(){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",C))}function S(){!s.value&&l.value&&(s.value=!0,l.value.classList.add("ng-dragging"),document.addEventListener("mousemove",g),document.addEventListener("mouseup",C))}function h(){if(i.value){const m=Oe.getTransformInfo(i.value);f.value.set(m);return}f.value.reset()}function _(m){if(!o.value||m instanceof MouseEvent&&m.button===2)return;const M=m.target||m.srcElement;l.value!==void 0&&M&&!y(M,l.value)||r.value!==!1&&(document.body.click(),m.stopPropagation(),m.preventDefault(),u.value=Oe.fromEvent(m,i.value),h(),S())}function N(m,M,w){if(r.value&&M){if(m)l.value=m;else if(e.dragHandle){if(e.dragHandle instanceof HTMLElement)l.value=e.dragHandle;else if(typeof e.dragHandle=="string"){const x=M.querySelector(e.dragHandle);x&&(l.value=x)}}i.value=M,c.value=w,l.value?(l.value.classList.add("ng-draggable"),l.value.addEventListener("mousedown",_)):r.value=!1}}return{registerDraggle:N,resetTranslate:h}}function fn(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 tr(e,t){const o=n.ref(e.enableEsc);let i=null;return o.value?(i=fn("Escape",r=>{t.emit("esc",{event:r.event,type:"esc"})}),{remove:i}):null}function nr(e,t){const o=n.ref(e.enableEnter);let i=null;return o.value?(i=fn("Enter",r=>{t.emit("enter",{event:r.event,type:"enter"})}),{remove:i}):null}const Ft=n.defineComponent({name:"FModal",props:Qi,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),b=n.ref(e.src),k=n.ref(""),T=n.ref(e.showButtons),g=n.ref(e.title),C=n.ref(e.resizeable),S=n.ref(e.containment||null),h=n.ref();function _(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=>{_(j,!1)}},{name:"accept",text:"确定",class:"btn btn-primary",handle:j=>{_(j,!0)}}],m=n.ref(e.buttons&&e.buttons.length?e.buttons:N),M=n.computed(()=>!!u.value),w=n.computed(()=>!!T.value&&!!m.value),x=n.ref(),v=n.ref(),F=n.ref(!1),{renderResizeBar:V,maximize:I,restore:E,boundingElement:B,resizedEventParam:$,allowDrag:O,unWindowResizeHandle:L}=Zi(e),{registerDraggle:H}=er(e,t,O);function U(){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||U())}),n.watch(()=>e.showHeader,(j,ie)=>{j!==ie&&(s.value=j)}),n.watch(()=>e.showButtons,(j,ie)=>{j!==ie&&(T.value=j)}),n.watch(()=>$.value,(j,ie)=>{const te=j||{},ge=ie||{};JSON.stringify(te)!==JSON.stringify(ge)&&t.emit("resize",{newSize:j,oldSize:ie})});const Q=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=!!Q.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}),D=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"]=O.value?"auto":"none",j}),ee=n.computed(()=>({"f-icon":!0,modal_maximize:!0,modalrevert:F.value})),A=n.computed(()=>({"modal-body":!0,"f-utils-flex-column":y.value==="iframe"}));function z(){return{}}const ye=n.computed(()=>{const j={textAlgin:k.value},ie=z();return Object.assign(j,ie)});function fe(j){if(j.stopPropagation(),F.value){F.value=!1,E();return}I(),F.value=!0}async function je(j,ie){j.handle&&await j.handle(ie,j)&&t.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(()=>{v.value&&!S.value&&(S.value=v.value.parentElement,B.value=S.value,H(x.value,v.value,B.value)),Q.value&&document.body.classList.add("modal-open"),_e=tr(e,t),Se=nr(e,t)}),n.onUnmounted(()=>{L&&L(),_e&&_e.remove(),Se&&Se.remove()}),t.expose({modalElementRef:v,updateModalOptions:Pe,close:_,maxDialog:fe});function ke(){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=>_(j,!1),style:"pointer-events: auto;"},[n.createVNode("span",{class:"f-icon modal_close"},null)])])}function De(){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:x,class:"modal-header",style:ue.value},[n.createVNode("div",{class:"modal-title"},[M.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"},[ke()])])}function pe(j){j.stopPropagation()}return()=>n.createVNode(n.Teleport,{to:"body"},{default:()=>[Q.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:D.value,ref:v},[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:b.value},null)]),w.value&&De()]),!c.value&&C.value&&v.value&&!F.value&&V(v.value)])])]}})]})}});function pn(e){if(e.content&&e.content.render)return e.content.render;if(e.render&&typeof e.render=="function")return e.render}function or(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||(()=>{}),b=e.closedCallback||(C=>{}),k=e.resizeHandle||(C=>{}),T=pn(e),g=C=>{f.value=!1,o.unmount(),b(C)};return n.onMounted(()=>{}),r.expose({modalRef:a}),()=>n.createVNode(Ft,{ref:a,class:l.value,modelValue:f.value,"onUpdate:modelValue":C=>f.value=C,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:k},{default:()=>[T&&T(o)]})}});return document.body.appendChild(t),o.mount(t),o}class mn{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 or(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,_)=>{}),s=i.value.resizeHandle||(h=>{});let u;const f=pn(i.value),d=h=>{var N;r.value=!1;const _=(N=h==null?void 0:h.target)==null?void 0:N.classList.contains("modal_close");c(h,this.isUseEscCloseModal.value?"esc":_?"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 _=Object.keys(this.modalRefs).map(N=>Number(N));_.length>0?this.activeModalIndex.value=Math.max(..._):this.activeModalIndex.value=0}this.isUseEscCloseModal.value=!1})},y=h=>{var _;this.isUseEscCloseModal.value=!0,this.activeModalInstance&&((_=this.activeModalInstance.value)==null||_.close(h==null?void 0:h.event))},{width:b,height:k}=i.value,T=this.adaptToWindow(b||500,k||320);Object.assign(i.value,T);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 _=n.h(g,h);return _.appContext=this.appContext,n.render(_,o),_})({...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 hn=Symbol("FModalService");Ft.install=e=>{e.component(Ft.name,Ft);const t=new mn(e);e.provide(hn,t),e.provide("FModalService",t)};function gn(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 yn(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}=gn(e,r),u=n.computed(()=>e.showButtonWhenDisabled||(!e.editable||!e.readonly)&&!e.disable),f=n.inject(hn,null),d=n.ref();async function p(k){if(await s()&&u.value){const T=!!t.slots.default;if(a.value==="Modal"){const g=e.modalOptions,C=f==null?void 0:f.open({...g,render:()=>t.slots.default&&t.slots.default()});d.value=C==null?void 0:C.modalRef}a.value==="Overlay"&&Ji.show({host:document.body,backgroundColor:"rgba(0,0,0,.15)",render:()=>t.slots.default&&t.slots.default()}),T&&a.value==="Popup"&&i.togglePopup(!0),T&&l.value&&i.hidePopup(),t.emit("clickButton",{origin:k,value:e.modelValue})}}function y(k){t.emit("mouseEnterIcon",k)}function b(k){t.emit("mouseLeaveIcon",k)}return{buttonGroupClass:c,onClickButton:p,onMouseEnterButton:y,onMouseLeaveButton:b,modalRef:d}}function ir(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 b=!e.readonly&&!e.disable&&e.editable,k=!e.editable;y.stopPropagation(),(b||k)&&(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 rr(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})),b=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 k(w,x=!0){o.value=w,x&&(t.emit("change",w),t.emit("update:modelValue",w))}function T(w){c.value=!1,k(w,!0)}n.watch(()=>e.modelValue,w=>{o.value=w});function g(w){d.value=!1,t.emit("blur",w),w.stopPropagation()}function C(w){t.emit("click",w),!e.disable&&!e.readonly&&e.popupOnClick&&r.togglePopup()}function S(w){e.disable||(d.value=!0,f.value||(t.emit("focus",w),l.value&&!c.value&&r.popup()))}function h(w){t.emit("input",w.target.value);const x=w.target.value;i.value=x,o.value!==x&&k(x,e.updateOn==="change"),a.value&&!c.value&&r.popup()}function _(w){w.target.tagName!=="INPUT"&&w.preventDefault(),w.stopPropagation()}function N(w){t.emit("keydown",w)}function m(w){w.key==="Enter"&&(a.value||l.value)&&r.hidePopup(),t.emit("keyup",w)}function M(w){const x=w.target.value;w.stopPropagation(),k(x)}return{hasFocusedTextBox:p,isTextBoxReadonly:f,textBoxClass:y,textBoxPlaceholder:u,textBoxTitle:s,inputGroupClass:b,changeTextBoxValue:k,commitValue:T,onBlurTextBox:g,onClickTextBox:C,onFocusTextBox:S,onInput:h,onKeyDownTextBox:N,onKeyUpTextBox:m,onMouseDownTextBox:_,onTextBoxValueChange:M}}function vn(e,t,o,i){const r=n.ref(),a=n.ref(!1),{judgeCanOpen:l}=gn(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 ar(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:b,onTextBoxValueChange:k}=o;return n.onMounted(()=>{var T,g;e.selectOnCreated&&((T=i.value)==null||T.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:k,onClick:u,onFocus:f,onInput:d,onKeydown:p,onKeyup:y,onMousedown:b},null)}function lr(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(rn,{id:`${e.id}-tag-editor`,class:"form-control",data:a.value,showClose:!0,showInput:!0,onChange:l},null)}function sr(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 cr(e,t,o){const i=n.ref(e.popupMinWidth),{hidePopup:r,popoverRef:a}=o;return()=>n.createVNode(Io,{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 vt=n.defineComponent({name:"FButtonEdit",props:Gt,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=vn(e,t,o,r),{shouldPopupContent:l,hidePopup:c,togglePopup:s}=a,u=yn(e,t,o,a,r),f=n.ref(""),d=rr(e,t,r,f,a),{hasFocusedTextBox:p,commitValue:y,inputGroupClass:b}=d,k=ir(e,t,r,p,f,d),{onMouseEnterTextBox:T,onMouseLeaveTextBox:g}=k,C=n.computed(()=>{const w={"f-button-edit":!0,"f-cmp-inputgroup":!0,"f-button-edit-nowrap":!e.wrapText};return i.value&&i.value.split(" ").reduce((x,v)=>(x[v]=!0,x),w),w});function S(){return e.multiSelect&&e.inputType==="tag"?lr(e,r,d):ar(e,r,d)}let h=S();n.watch([()=>e.multiSelect,()=>e.inputType],()=>{h=S()});const{renderButtonGroup:_,buttonHandleElement:N}=sr(e,t,u,k),m=cr(e,t,a),M={commitValue:y,elementRef:o,hidePopup:c,shouldPopupContent:l,togglePopup:s,openDialog:()=>{N.value&&e.buttonBehavior==="Modal"&&N.value.click()},getModal:()=>{var w;return e.buttonBehavior==="Modal"?(w=u.modalRef.value)==null?void 0:w.value:null}};return n.onMounted(()=>{o.value.componentInstance=M,window.onresize=()=>{document.body.click()}}),t.expose(M),()=>n.createVNode(n.Fragment,null,[n.createVNode("div",n.mergeProps(t.attrs,{ref:o,class:C.value,id:e.id}),[n.createVNode("div",{id:`${e.id}-input-group`,class:b.value,onMouseenter:T,onMouseleave:g},[h(),_()])]),l.value&&m()])}});function dr(e,t,o){const{buttonGroupClass:i}=o,r=n.ref();return{renderButtonGroup:()=>n.createVNode("div",{id:`${e.id}-button-group`,class:i.value},[t.slots.buttonContent?n.createVNode("span",{class:"input-group-text input-group-append-button"},[t.slots.buttonContent()]):e.buttonContent?n.createVNode("span",{class:"input-group-text input-group-append-button",innerHTML:e.buttonContent,ref:r},null):null]),buttonHandleElement:r}}const ur=n.defineComponent({name:"FButtonEdit",props:Gt,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.inject("design-item-context"),r=Rt.useDesignerComponent(o,i),a=n.ref(e.customClass),l=n.ref(e.modelValue),c=vn(e,t,o,l),s=yn(e,t,o,c,l),u=n.ref(),f=n.computed(()=>({"f-cmp-inputgroup":!0,"input-group":!0,"f-state-disabled":!0,"f-state-editable":!1,"f-state-readonly":!0}));n.onMounted(()=>{o.value.componentInstance=r}),t.expose(r.value);const d=n.computed(()=>{const y={"f-button-edit":!0,"f-cmp-inputgroup":!0,"f-button-edit-nowrap":!e.wrapText};return a.value&&a.value.split(" ").reduce((b,k)=>(b[k]=!0,b),y),y}),{renderButtonGroup:p}=dr(e,t,s);return()=>n.createVNode("div",n.mergeProps(t.attrs,{ref:o,class:d.value,id:e.id}),[n.createVNode("div",{class:f.value},[n.createVNode("input",{ref:u,class:"form-control",readonly:!0,placeholder:e.placeholder},null),p()])])}});vt.register=(e,t,o,i)=>{e["button-edit"]=vt,t["button-edit"]=un},vt.registerDesigner=(e,t,o)=>{e["button-edit"]=ur,t["button-edit"]=un},xe.withInstall(vt);const bn=new Map([["appearance",mt],["column","columnOption"]]),Cn=new Map([]);var wn=(e=>(e.SimpleField="SimpleField",e.ComplexField="ComplexField",e))(wn||{}),_t=(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))(_t||{});function Sn(){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 fr=["moz","ms","webkit"];function pr(){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 mr(){if(typeof window>"u")return()=>0;if(window.requestAnimationFrame)return window.requestAnimationFrame.bind(window);const e=fr.filter(t=>`${t}RequestAnimationFrame`in window)[0];return e?window[`${e}RequestAnimationFrame`]:pr()}mr();const hr="root-viewmodel";class gr{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,b;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 k=this.resolver.getSchemaByType("section",{parentComponentInstance:o.parentComponentInstance,mainTitle:o.componentName},this.designerHostService);if(k&&k.contents&&k.contents.length){const T=k.contents[0];return T.contents=[t],this.appendAddDeleteBtnToParentContainer(T,o,i),k}}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&&((b=o.parentComponentInstance)==null||b.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=Sn().guid(),r=Sn().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:hr,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===wn.ComplexField)return;const f=$e.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===_t.Enum||l===_t.Boolean)&&(a="change"),o.push({type:"Form",id:r.id,fieldName:r.bindingField,groupId:null,groupName:null,updateOn:a,fieldSchema:{}})}),o}}function xn(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 gr(e,i).createComponent(y)}else return t}function Fn(e,t,o){return t}const yr={$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 vr(){function e(t,o){const i={};return i.beforeEditCell=r=>o.call("beforeEditCell",[r]),i}return{resolve:e}}const Wt={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}},br=Object.assign({},Wt,{disabled:{},editable:{},componentId:{type:String,default:""}}),_n=Ae(Wt,yr,bn,xn),Cr=Ri(),wr=Ai(),Sr=dn(),xr=vr();var Re=(e=>(e[e.readonly=0]="readonly",e[e.editable=1]="editable",e[e.editing=2]="editing",e))(Re||{}),at=(e=>(e[e.initial=0]="initial",e[e.editing=1]="editing",e))(at||{}),gt=(e=>(e[e.data=0]="data",e[e.group=1]="group",e[e.summary=2]="summary",e))(gt||{}),qe=(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))(qe||{}),qt=(e=>(e.NONE="none",e.NUMBER="number",e.DATE="date",e.TEXT="boolean",e.IMAGE="boolean2",e.ENUM="enum",e.CUSTOM="custom",e))(qt||{});function Fr(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(b){const k={};return b.reduce((T,g,C)=>{const S=C<b.length-1?b[C+1]:null;return C===0&&(T[g.field]={left:0}),g.actualWidth!==void 0&&(T[g.field].width=g.actualWidth),S&&(T[S.field]={left:T[g.field].left+(g.actualWidth||0)}),T},k),k}function l(b,k,T){const g=i*(T+1),S=k[b.field].left-g+(k[b.field].width||0),h=b.parent.height?`${b.parent.height}px`:"";return{left:`${g}px`,width:`${S}px`,height:`${h}`}}function c(b,k,T){return{right:"0px",height:`${b.parent.height?`${b.parent.height}px`:""}`}}function s(b,k){const T=b.parent.height?`${b.parent.height}px`:"";return{left:`${k[b.field].left}px`,height:`${T}`,width:isNaN(Number(k[b.field].width))?"100%":`${k[b.field].width}px`}}function u(b,k,T){const C=(k.spanned||[]).reduce((h,_)=>h+(_.parent.height||0),0)+(b.height||0);return{top:`${b.top}px`,left:`${T[k.field].left}px`,width:`${T[k.field].width}px`,height:`${C}px`,padding:`calc(${C/2}px - 1rem) 0`}}function f(b,k){return`${o}_${b.type}_r_${b.index}_c_${k}_${b.refreshKey||""}`}function d(b){return`${o}_${b.type}_r_${b.index}_${b.refreshKey||""}`}function p(b){const k=b.height?`${b.height}px`:"";return{top:`${b.top}px`,width:isNaN(r.value)?"100%":`${r.value}px`,height:`${k}`}}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 _r(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,b)=>{const k=p.includes(b),T=y.raw[i.value];d[b]=`repeating-linear-gradient(90deg, ${r.value} 0 1px, transparent 0px 2px) ${T?"-10px":"0px"} ${a.value/2}px/20px 1px no-repeat,repeating-linear-gradient(${r.value} 0 1px, transparent 0px 2px) 0px 0px/1px ${k?"50%":"100%"} no-repeat`}),d[0]=""}return d[f]}function s(f,d,p){return p[f].parents.set(f,!0).forEach(b=>{p[b].childsLength=p[b].childWithLines.filter(k=>d[k].visible).length}),d}function u(f){const y=f.raw.__fv_parent_index__===void 0||f.raw.__fv_parent_index__===-1?0:8,b=0,k=f.raw[i.value],T=f.visible?{left:`${f.layer*10+f.layer*y+b}px`,background:c(f.index),display:"flex",width:"100%",position:"relative",paddingLeft:"0.75rem"}:{display:"none"};return k||(T.paddingLeft="2rem"),T}return{hierarchyCellContentStyle:u,handleCollapsedPaddingBottom:s}}function Mr(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 Tr(e,t,o,i,r,a,l,c){const{dataView:s,fold:u,hasRealChildren:f,unFold:d,reOrderVisibleIndex:p}=i,{collapseField:y,hasChildrenField:b}=r,{reCalculateVisualDataRows:k,updateVirticalScroll:T}=a;function g(h,_){var w,x;const N=_[h],m=N.__fv_parents__?(w=N.__fv_parents__)==null?void 0:w.size:0;let M=h+1;for(;M<_.length;){const v=_[M];if((v.__fv_parents__?(x=v.__fv_parents__)==null?void 0:x.size:0)>m)M++;else break}return M-1}function C(h,_){const N=s.value[h];N[y.value]=!N[y.value],N[b.value]=f(N);const m=N[y.value];let M=!1,w=h;for(;w<s.value.length;){const x=s.value[w];if((typeof x.__fv_parent_index__=="number"?Number(x.__fv_parent_index__):-1)>_)x.__fv_visible__=!m,x[y.value]&&(w=g(w,s.value)),M=!0;else if(M){w++;break}w++}p()}function S(h){if(h.raw[b.value]){const N=typeof h.raw.__fv_parent_index__=="number"?Number(h.raw.__fv_parent_index__):-1,m=Number(h.raw.__fv_index__);C(m,N),k(),T()}t.emit("expandNode",{row:h})}return{toggleTreeNode:S}}function Vr(e,t,o,i,r,a,l,c,s,u,f,d,p){const{onClickCell:y}=a,{gridRowClass:b,onClickRow:k,onMouseoverRow:T,onMouseoutRow:g}=c,{enableMultiSelect:C,select:S,unSelect:h,selectItem:_}=s;n.ref(e.cellHeight);const N=n.ref(e.treeNodeIconsData||{}),{hasChildrenField:m,shouldShowCheckBox:M,shouldShowIcon:w}=l,{toggleTreeNode:x}=Tr(e,t,i,r,l,f),{toggleSelectHierarchyItem:v}=u,{cellKey:F,cellPosition:V,rowKey:I,rowPosition:E}=Fr(e,o),{hierarchyCellContentStyle:B}=_r(e,i,l),{treeNodeIconsClass:$}=Mr(e,N,m);function O(A,z){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,z){A.stopPropagation(),x(z)}function H(A,z){return n.createVNode("div",{class:O(A),onClick:ye=>L(ye,A)},null)}function U(A,z){return w.value&&n.createVNode("div",{id:"treeNodeIcons",class:$(A,z)},null)}function Q(A){C.value?(A.checked?S(A):h(A),v(A)):_(A)}function ne(A,z){return M.value&&n.createVNode(xt.FCheckbox,{id:"checkbox_for_"+F(A,z.index),indeterminate:A.indeterminate,disabled:A.disabled,checked:A.checked,"onUpdate:checked":ye=>A.checked=ye,onChange:()=>Q(A)},null)}function le(A,z){return n.createVNode("span",{title:z.data},[z.mode===Re.editing?z.getEditor(z):z.formatter?z.formatter(z,A):z.data!=null?z.data.toString():z.data])}function D(A,z,ye){return n.createVNode("div",{ref:z.setRef,key:F(A,z.index),class:"fv-grid-hierarchy-cell",style:V(z,ye)},[n.createVNode("div",{style:B(A)},[H(A),U(A,z),ne(A,z),le(A,z)])])}function Z(A,z,ye){return n.createVNode("div",{ref:z.setRef,key:F(A,z.index),class:"fv-grid-cell",style:V(z,ye),onClick:fe=>y(fe,z,A,z.column)},[t.slots.cellTemplate?t.slots.cellTemplate({cell:z,row:A}):z.mode===Re.editing?z.getEditor(z):z.formatter?z.formatter(z,A):z.data!=null?z.data.toString():z.data])}function ue(A,z){return z==="left"&&o.value.leftColumns.length>0&&o.value.leftColumns[0].field===A.field||z==="primary"&&o.value.primaryColumns.length>0&&o.value.primaryColumns[0].field===A.field}function ee(A,z,ye="primary"){return n.createVNode("div",{ref:A.setRef,key:I(A),class:b(A),style:E(A),onMouseover:fe=>T(fe,A),onMouseout:fe=>g(fe,A),onClick:fe=>k(fe,A)},[Object.values(A.data).filter(fe=>z[fe.field]&&fe.rowSpan===1).map(fe=>ue(fe,ye)?D(A,fe,z):Z(A,fe,z))])}return{renderDataRow:ee}}function Mn(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 kr(){function e(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 t(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=>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 Tn(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 Ir="";function Vn(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(_=>{_.showSetting=!1}),i.value.primaryColumns.forEach(_=>{_.showSetting=!1});const S=i.value.rightColumns.filter(_=>_.visible),h=i.value.primaryColumns.filter(_=>_.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((_,N)=>(_.set(N,!0),_),h),S.reduce((_,N)=>(N.visible=N.visible!==!1,N.filter=N.filter||Ir,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),_),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 b(S,h){return h.filterable&&S.push(h),S}function k(){const S=[];return i.value.leftColumns.reduce(b,S),i.value.primaryColumns.reduce(b,S),i.value.rightColumns.reduce(b,S),S}function T(){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(_=>_.sortOrder||0));return S.sort(y).map(_=>{const N=_.sortOrder||h+1;return _.sortOrder=N,_}).sort(p).map((_,N)=>{const m=N+1;return _.sortOrder=m,_})}function g(S,h,_){const N=S.map(m=>{const M=_.getSorterByColumn(m),w=m.sort==="asc",x=m.sort==="desc",v=w?M.ascend:x?M.decend:void 0;return{field:m.field,compare:v}});h.setSorters(N)}function C(S,h){const _=T();g(_,S,h)}return{applyColumnSorter:C,collectionFilterableColumns:k,applySortableColumns:g,collectionSortableColumns:T,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 kn(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 In(e,t){var u;const o=n.ref((u=e.columnOption)==null?void 0:u.groups);function i(f,d,p,y,b){const k={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"},T=y||k;if(f.group){let g=1;f.group.reduce((C,S)=>{if(typeof S=="string"){const h=d.get(S);h&&(b.fieldToRootMap.set(S,T),C.actualWidth+=h.actualWidth,C.children.push(h))}else{const h=i(S,d,C,T,b);g=Math.max(g,h.depth),C.actualWidth+=h.actualWidth,C.children.push(h)}return C},k),k.depth+=g}return t.value.headerDepth=Math.max(t.value.headerDepth,k.depth),k}function r(f){const d={groupedCells:new Map,fieldToRootMap:new Map};return o.value&&o.value.reduce((p,y)=>{const b=i(y,f,null,null,d);return p.groupedCells.set(y.field,b),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 b=y.children&&y.children.length===0;y.depth=b?p-(y.layer-1):1,y.left=b?y.left:a(y.children),y.children&&l(y.children,y)})}function c(f,d){const p=new Map;return f.forEach(y=>{const b=d.fieldToRootMap.get(y.field),k=b!=null;k&&!p.has(b.field)&&p.set(b.field,b),k||p.set(y.field,y)}),l(Array.from(p.values())),p}function s(f){let d=new Map,p=0;if(f.reduce((y,b)=>{let k=qe.none;k=b.filterable?k|qe.filterable:k,k=b.sort&&b.sort!=="none"?k|qe.sorted|(b.sort==="asc"?qe.ascending:qe.descending):k;const T=b.field;return y.set(T,{actualWidth:b.actualWidth||0,children:[],depth:1,layer:1,left:p,field:T,parent:null,resizable:b.resizable===void 0?!0:b.resizable,title:b.title,status:k,popoverRef:n.ref(),showPopover:!1,column:b,filterValue:null,sortType:b.sort||"none",showSetting:b.showSetting}),p+=b.actualWidth||0,y},d),o.value){const y=r(d);d=c(d,y)}return d}return{getGridHeaderCells:s}}function Nr(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 C;return(C=e.group)==null?void 0:C.enable}),c=n.computed(()=>{var C;return(C=e.group)==null?void 0:C.showGroupPanel}),s=n.computed(()=>{const C=i.value;return(C==null?void 0:C.groupFields)||[]}),u=n.computed(()=>{const C=r.value;return C&&C.showSummary}),f=new Map;let d=[];function p(C,S,h,_,N){const m=_[h];m&&(S.reduce((M,w,x)=>{var V;const v=w[m];let F=M.get(v);if(!F){const I=s.value.reduce((E,B)=>(E.set(B,0),E),new Map);F={field:m,title:((V=N.get(m))==null?void 0:V.title)||m,value:v,layer:h,details:[],groupSummaries:I},M.set(v,F)}return s.value&&s.value.forEach(I=>{if(F){const E=F.groupSummaries.get(I)||0;F.groupSummaries.set(I,E+w[I])}}),F.details.push(w),M},C),h<_.length-1&&C.forEach((M,w)=>{M.nestGroup=new Map,p(M.nestGroup,M.details,h+1,_,N),M.details=[]}))}function y(C,S){return e.group&&e.group.formatter?e.group.formatter(C.value,{...C,total:S}):`${C.title}:${C.value} (${S})`}function b(C){const S=[];return C.forEach(h=>{const _={__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(_),h.nestGroup){const m=b(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((M,[w,x])=>`${M} ${w} total:${x} `,""),S.push(m)}h.groupSummaries&&h.groupSummaries.size&&h.groupSummaries.forEach((m,M)=>{_[M]=m}),_[o.value]=`group_of_${h.field}_${h.value}`,_[h.field]=y(h,N)}),S.forEach((h,_)=>{h.__fv_data_index__=_}),S}function k(C,S,h){return!C||C.length===0||!S.length?S:(C.join(","),f.clear(),d=[],S=S.filter(_=>!_.__fv_data_grid_group_row__),p(f,S,0,C,h),d=b(f),d)}function T(C){return{"f-icon":!0,"f-icon-arrow-chevron-down":!0,"fv-grid-group-row-icon-collapse":C.collapse}}return{collpaseGroupIconClass:T,generateGroupData:k,groupFields:a,shouldGroupingData:l,showGroupPanel:c}}function Er(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(F,V){const I=new Map;return F.reduce((E,B)=>{const $=B[s.value]!==void 0?B[s.value]:"";if($&&V.has($)){const L=V.get($);B.__fv_parent_index__=L.__fv_index__,L.__fv_hasChildren__=!0}const O=E.has($)?E.get($):[];return O.push(B),E.set($,O),E},I),I}function d(F){const V=new Map;return F.reduce((I,E)=>{const B=E[a.value];return I.set(B,E),I},V),V}function p(F){F.forEach(V=>{const I=V[a.value];V.__fv_children_index__.map(B=>F[B]).forEach(B=>{B.__fv_parents__=new Map([...V.__fv_parents__.entries(),[I,!0]])})})}function y(F){F.forEach(V=>{const I=new Set(V.__fv_children_index__);V.__fv_children_index__=[...I].sort((E,B)=>E-B)})}function b(F,V){F.forEach(I=>{const E=I.__fv_parents__;Array.from(E.keys()).map(B=>V.get(B)).forEach(B=>{B.__fv_children_index__.push(I.__fv_index__)})}),y(F)}function k(F){F.forEach(V=>{V.__fv_child_with_lines__=[],V.__fv_child_length__=V.__fv_descendant_index__.length,V.__fv_descendant_index__.map(I=>F[I]).reduce((I,E)=>(I.__fv_child_length__+=E.__fv_children_index__.length,I.__fv_child_with_lines__.push(...E.__fv_children_index__,E.__fv_index__),I),V)})}function T(F,V){return{id:F,index:V,parentId:"",parentIndex:-1,parents:new Map,children:new Map,descendant:new Map}}function g(F,V){Array.from(V.keys()).forEach(I=>{V.get(I).reduce((B,$)=>{const O=$[a.value],L=F.get($[a.value]),H=F.get(I);return H&&(H.children.set(O,L),H.children.set(O,L),L.parentId=I,L.parentIndex=H.index,L.parents.set(I,H)),B},F)})}function C(F){F.children.forEach(I=>{I.parents=new Map([...F.parents.entries(),[F.id,F]]),C(I)})}function S(F,V){F.filter(I=>I[s.value]===void 0||I[s.value]==="").forEach(I=>{const E=I[a.value],B=V.get(E);C(B)})}function h(F){Array.from(F.values()).forEach(V=>{Array.from(V.parents.values()).forEach(I=>{I.descendant.set(V.id,V)})})}function _(F){u.clear(),F.forEach((E,B)=>{const $=E[a.value];u.set($,T($,B))});const V=d(F),I=f(F,V);return g(u,I),S(F,u),h(u),u}function N(F){const V=F[a.value],I=u.get(V);return I&&I.children.size>0}function m(F){return F[c.value]&&!N(F)}function M(F){_(t.value);const V=d(F),I=f(F,V);return F.forEach((E,B)=>{var H;const $=E[a.value],O=I.has($)?(H=I.get($))==null?void 0:H.map(U=>U.__fv_index__):[],L=T($,B);E.__fv_graph_node__=L,E.__fv_children_index__=O,E.__fv_descendant_index__=[...O],E.__fv_parents__=new Map,m(E)&&(E[l.value]=!0)}),p(F),b(F,V),e.showLines&&k(F),F}function w(F,V,I){const B=I.value[F][a.value],$=u.get(B);if($){const O=u.get($.parentId);let L=I.value.length-1;if(O){const H=Array.from(O.children.keys()).indexOf($.id);if(H===O.children.size-1){const Q=Array.from(O.descendant.values())[O.descendant.size-1];L=I.value.findIndex(le=>le[a.value]===Q.id)+1}else{const Q=Array.from(O.children.values())[H+1];L=I.value.findIndex(le=>le[a.value]===Q.id)}V[c.value]=!1,V[s.value]=O.id,I.value.splice(L,0,V)}}}function x(F,V,I){const E=I.value[F],B=E[a.value];if(u.get(B)){const L=I.value.findIndex(H=>H[a.value]===B)+1;E[c.value]=!0,E[l.value]=!1,V[c.value]=!1,V[s.value]=B,I.value.splice(L,0,V)}}function v(F,V){const I=F[a.value],E=u.get(I),B=Array.from(E.descendant.keys());B.unshift(I);const $=u.get(E.parentId);if($&&($.children.delete(I),$.children.size===0)){const L=V.find(H=>H[a.value]===E.parentId);L[c.value]=!1,L[l.value]=!1}return V.filter(L=>B.indexOf(L.id)===-1)}return{generateHierarchyData:M,hasRealChildren:N,insertSibling:w,insertChild:x,shouldStratifyData:r,trimmedOriginalData:v}}const Br={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}},$r={showCloseButton:{type:Boolean,default:!0},animate:{type:String,default:"fadeIn"},options:{type:Object}},zt=n.defineComponent({name:"Toast",props:$r,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 b(g,C){}function k(g){return`f-preten-link ${g.customClass?g.customClass:""}`}n.watch(o,()=>{o.value});const T=()=>{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(C=>n.createVNode("span",{class:k(C),onClick:S=>void 0},[C.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&&T()]),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"},[T()])]):n.createVNode("h5",{class:"toast-title modal-tips-title only-toast-msg",innerHTML:r.value.message},null))])])])}}),Nt=n.defineComponent({name:"Notify",props:Br,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,b={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&&(b.left="50%",b.marginLeft="calc(-24rem / 2)",c.value==="center-center"&&(b.top="50%",b.transform="translate(-50%, -50%)")),b});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(zt,{options:a.value,showCloseButton:l.value,animate:e.animate,onClose:p=>d(p,a.value)},null)])}});class Nn{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(Nt,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 En=Symbol("NOTIFY_SERVICE_TOKEN");Nt.install=e=>{e.component(Nt.name,Nt),e.component(zt.name,zt);const t=new Nn;e.provide(En,t),e.provide("FNotifyService",t)};function Bn(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=Nr(e,r),{generateGroupData:y,groupFields:b,shouldGroupingData:k}=p,T=n.ref(e.data),g=Er(e,T,i,r),{generateHierarchyData:C,hasRealChildren:S,insertSibling:h,insertChild:_,shouldStratifyData:N,trimmedOriginalData:m}=g,{idField:M,reviseIdentifyField:w}=r,x=n.ref(e.newDataItem),v=n.ref(e.data||[]),F=n.ref(e.data),{flatTreeData:V}=ll(e);function I(P){return V(P)}if(e.data&&((it=e.data[0])!=null&&it.children)){const P=I(e.data);T.value=P,v.value=P,F.value=P}const E=n.ref(e.summary),B=n.computed(()=>{const P=E.value;return(P==null?void 0:P.groupFields)||[]});let $=new Map;const O=n.ref(v.value.length),L=n.ref(e.pagination);function H(){return L.value&&L.value.enable&&L.value.size>0?L.value.size:v.value.length}const U=n.ref(1),Q=n.computed(()=>L.value&&L.value.enable&&L.value.mode==="client"),ne=new Nn;function le(){var Ee;v.value=T.value,Q.value&&(O.value=v.value.length),k.value&&(v.value=y(b.value,T.value,t)),$=B.value.reduce((Fe,Te)=>(Fe.set(Te,0),Fe),$);const P=0,W=H(),K=(U.value-1)*W,be=K>v.value.length-1?P:K,Be=Math.min(be+W,v.value.length);let Ne=0;const Ce=[];if(v.value.length){w(v.value);const Fe=M.value!==e.idField;for(let Te=be;Te<Be;Te++){const Ve=v.value[Te];Ve.__fv_data_grid_group_row__?(Ne=0,Ve.__fv_data_index__=""):Ve.__fv_data_grid_group_summary__?Ve.__fv_data_index__="":(Ne++,Ve.__fv_data_index__=Ne+(U.value-1)*W),Ve.__fv_index__=Te,Ve.__fv_visible_index__=Te,e.rowOption&&e.rowOption.disabledField&&(Ve.__fv_disabled__=Ve[(Ee=e.rowOption)==null?void 0:Ee.disabledField]),Fe&&(Ve[M.value]=Te),B.value.forEach(Ge=>{const pt=$.get(Ge)||0;$.set(Ge,pt+Ve[Ge])}),Ce.push(Ve)}}return N.value&&C(Ce),F.value=[...Ce],Ce}const D=n.ref(le()),Z=n.computed(()=>D.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():[...F.value]).filter(Ce=>o.apply(Ce)),Be=P&&P.length?be.filter(Ce=>P.reduce((Ee,Fe)=>Ee&&Fe.filter(Ce),!0)):be,Ne=W&&W.length?Be.sort((Ce,Ee)=>{const Fe=[...W],Te=Fe.shift();let Ve=Te.compare(Ce[Te.field],Ee[Te.field]);for(;Ve===0&&Fe.length!==0;){const Ge=Fe.shift();Ge&&(Ve=Ge.compare(Ce[Ge.field],Ee[Ge.field]))}return Ve}):Be;return D.value=Ne.map((Ce,Ee)=>{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__=Ee,Ce.__fv_visible_index__=Ee,Ce}),D.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 z(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 ke(P){const W=P.raw[M.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())),C(D.value)}function De(P){const W=P[M.value];s.delete(`fold_${W}`)}function Ie(P){De(P.raw),ee(Array.from(s.values()),Array.from(u.values()),!0),C(D.value)}function pe(){const P=le();D.value=P,e.hierarchy&&(ee(Array.from(s.values()),Array.from(u.values())),C(D.value))}function j(P){const K=P&&P.length&&P[0].children?I(P):P;T.value=K,pe()}function ie(P,W,K){return(P&&P.length?D.value.filter((be,Be)=>P.reduce((Ne,Ce)=>Ne&&Ce.filter(be),!0)):D.value).slice(W,K)}function te(P){const W=H(),K=P*W;0<K&&K<=O.value&&(U.value=P,pe())}function ge(P){T.value.push($e.cloneDeep(P)),D.value=le()}function Me(P=0){if(!(P>-1))return!1;const K=x.value();e.hierarchy?h(P,K,T):T.value.splice(P,0,K),pe()}function Le(P=0){if(!(P>-1&&e.hierarchy))return!1;const K=x.value(),me=T.value[P];De(me),_(P,K,T),pe()}function ze(P){const W=P?P-1:0;T.value.splice(W,1),pe()}function Ue(P){const W=T.value.findIndex(K=>K[M.value]===P);W!==-1&&(T.value.splice(W,1),pe())}function Qe(P){const W=P>-1?T.value[P]:null;if(!(W&&W.deletable!==!1))return!1;T.value=m(W,T.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=T.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=F.value.findIndex(be=>be[M.value]===K);return me>-1?F.value[me]:null}).filter(K=>K!=null)}return{addFilter:fe,addNewDataItem:ge,addSorter:z,changePageSizeTo:Ke,collapse:_e,dataView:D,editDataItem:nt,expand:Se,filters:f,fold:ke,getRange:ie,getSelectionItems:ot,hasRealChildren:S,insertNewChildDataItem:Le,insertNewDataItem:Me,load:j,navigatePageTo:te,pageIndex:U,rawView:F,refresh:Ze,removeAllFilter:Pe,removeDataItem:ze,removeDataItemById:Ue,removeFilter:je,removeHierarchyDataItem:Qe,removeSorter:ye,reOrderVisibleIndex:ue,setSorters:A,sorters:d,summaries:$,totalItems:O,unFold:Ie,updateDataView:pe,visibleDataItems:Z}}const $n={conditions:{type:Array,default:[]},fields:{type:Array,default:[]},key:{type:String,default:""},isControlInline:{type:Boolean,default:!0}};class On{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 jn{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,$e.cloneDeep(o)));return i&&i.length?i.join(","):""}getValue(){const t=this.valueField.split("."),o=this.value.split(",").map(i=>this.getPropValue(i,$e.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 Pn{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 Et{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 Dn{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 Rn{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.map(t=>t.name).join(",")}setValue(t){this.value=t.value}isEmpty(){return!this.value&&this.value!==!1}}class Or{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,$e.cloneDeep(o)));return i&&i.length?i.join(","):""}getValue(){const t=this.valueField.split(".")||[],o=this.value.map(i=>this.getPropValue(i,$e.cloneDeep(t)));return o&&o.length?o.join(","):""}getDisplayText(){return this.getValue()}setValue(t){throw new Error("Method not implemented.")}isEmpty(){return!this.displayText&&!this.value.length}}class Hn{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 An{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 Ln{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 Gn{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 Wn{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 qn{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 Bt{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 zn(){function e(t,o){switch(t){case"check-box":return new On(o);case"combo-list":return new Rn(o);case"combo-lookup":return new jn(o);case"input-group":return new Or(o);case"date-picker":return new Pn(o);case"date-range":return new Et(o);case"datetime-picker":return new Dn(o);case"datetime-range":return new Et(o);case"lookup":return new Hn(o);case"month-picker":return new An(o);case"month-range":return new Ln(o);case"number-range":return new Gn(o);case"number-spinner":return new Wn(o);case"radio-group":return new qn(o);default:return new Bt(o)}}return{createConditionValue:e}}function Un(e,t){const o=n.ref(e.fields),i=n.ref([]),r=new Map,{createConditionValue:a}=zn();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 jr(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 Yn=n.defineComponent({name:"FConditionFields",props:$n,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=Un(e),{initialConditionValue:l,fieldMap:c,loadFieldConfigs:s}=a,u=jr(e,t,o),{conditionClass:f,resizeObserver:d}=u;s(!0),l(r.value),n.onBeforeUnmount(()=>{var T;(T=d.value)==null||T.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 b(T,g){t.emit("valueChange",T,g)}function k(){return r.value.map(T=>{var S,h,_,N;const g=(S=c.get(T.fieldCode))==null?void 0:S.editor;let C=!0;return((h=T.value)==null?void 0:h.editorType)==="lookup"&&g?(g.idValue=T.value.idValue,g.onClear=()=>{T.value.idValue="",T.value.mapFields=[],b("",T)},g["onUpdate:dataMapping"]=m=>{T.value.mapFields=m.items,b(T.value.getValue(),T)},C=!1):((_=T.value)==null?void 0:_.editorType)==="number-range"&&g&&(g.beginValue=T.value.begin,g.onBeginValueChange=m=>{T.value.begin=m,b(m,T)},g.endValue=T.value.end,g.onEndValueChange=m=>{T.value.end=m,b(m,T)},C=!1),n.createVNode(Ht.FDynamicFormGroup,{customClass:((N=g==null?void 0:g.appearance)==null?void 0:N.class)||y.value,label:T.fieldName,editor:g,required:g==null?void 0:g.required,modelValue:T.value.value,"onUpdate:modelValue":m=>T.value.value=m,onChange:m=>{C&&b(m,T)}},null)})}return()=>n.withDirectives(n.createVNode("div",{class:p.value,key:i.value,ref:o},[k()]),[[n.resolveDirective("area-response")]])}}),Ut=new Map([["appearance",mt]]),Pr=new Map([]),Dr="root-viewmodel";class Rr{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=$e.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:Dr,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===_t.Enum||l===_t.Boolean)&&(a="change"),o.push({type:"Form",id:r.id,fieldName:r.bindingField,groupId:null,groupName:null,updateOn:a,fieldSchema:{}})}),o}}function Hr(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 Rr(e,i).createComponent(y)}else return t}function Ar(e,t,o){return t}Ae({customClass:{type:String,default:""},customStyle:{type:String,defaut:""}},{$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/response-form.schema.json",title:"response-form",description:"A Farris Data Collection Component",type:"object",properties:{id:{description:"The unique identifier for a form group",type:"string"},type:{description:"The type string of form group component",type:"string",default:"response-form"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},contents:{description:"",type:"array",default:[]}},required:["id","type","contents"]},Ut,Hr);const Xn={$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"]},Kn={id:{type:String,default:""},customClass:{type:String,default:""},customStyle:{type:String,default:""},editor:{type:Object,default:{}},label:{type:String,default:""},modelValue:{type:[String,Boolean,Array,Number],default:""},visible:{type:Boolean,default:!0},required:{type:Boolean,default:!1},showLabel:{type:Boolean,default:!0},type:{type:String,default:"input-group"}};Ae(Kn,Xn,Ut,void 0);function Yt(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 M=n.ref(m==null?void 0:m.value.parent),w=f(M);return w||null}function d(m=t){var v;const{componentInstance:M,designerItemElementRef:w}=m;if(!M||!M.value)return null;const{getCustomButtons:x}=M.value;return M.value.canMove||x&&((v=x())!=null&&v.length)?w: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 b(){}function k(m,M){!m||!M||o!=null&&o.onAcceptMovedChildElement&&o.onAcceptMovedChildElement(m,M)}function T(m,M){const{componentType:w}=m;let x=cn(w,m,M);o&&o.onResolveNewComponentSchema&&(x=o.onResolveNewComponentSchema(m,x));const v=w.toLowerCase().replace(/-/g,"_");return x&&!x.id&&x.type===w&&(x.id=`${v}_${Math.random().toString().slice(2,6)}`),x}function g(m){}function C(...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=m.id;m.type==="component-ref"&&(M=m.component);const w=e.value.querySelectorAll(`#${M}-design-item`);w!=null&&w.length&&Array.from(w).map(x=>{var v;(v=x==null?void 0:x.componentInstance)!=null&&v.value.onRemoveComponent&&x.componentInstance.value.onRemoveComponent()})})}function h(){if(o&&o.getCustomButtons)return o.getCustomButtons()}function _(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:C,getDragScopeElement:b,onAcceptMovedChildElement:k,onChildElementMovedOut:g,addNewChildComponentSchema:T,triggerBelongedComponentToMoveWhenMoved:!!o&&o.triggerBelongedComponentToMoveWhenMoved||n.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:!!o&&o.triggerBelongedComponentToDeleteWhenDeleted||n.ref(!1),onRemoveComponent:S,getCustomButtons:h,onPropertyChanged:_},a}class $t{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=$e.cloneDeep(i.contents[r]);i.contents.splice(r,1),i.contents.splice(r,0,a)}}class Lr{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 Gr(e){let t,o;const i=new Map;let r=[];function a(f,d){const y=f.split(" ").filter(C=>C.startsWith("col-"));if(y.length===0){d.isSupportedClass=!1;return}let b=y.find(C=>/^col-([1-9]|10|11|12)$/.test(C)),k=y.find(C=>/^col-md-([1-9]|10|11|12)$/.test(C)),T=y.find(C=>/^col-xl-([1-9]|10|11|12)$/.test(C)),g=y.find(C=>/^col-el-([1-9]|10|11|12)$/.test(C));b=b||"col-12",d.columnInSM=parseInt(b.replace("col-",""),10),d.displayWidthInSM=d.columnInSM/12,d.displayWidthInSM!==1&&(d.isSupportedClass=!1),k=k||"col-md-"+d.columnInSM,d.columnInMD=parseInt(k.replace("col-md-",""),10),d.displayWidthInMD=d.columnInMD/6,[1,2].includes(d.displayWidthInMD)||(d.isSupportedClass=!1),T=T||"col-xl-"+d.columnInMD,d.columnInLG=parseInt(T.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 b=!1;f.contents.forEach(k=>{if(k.type==="fieldset"){p+=1,l(k,d,p,!0),b=!0;return}b&&(p+=1,b=!1);const T=k.appearance&&k.appearance.class,g=new Lr;T?a(T,g):g.isSupportedClass=!1,g.label=k.label||k.id,g.id=k.id,g.group=p,y&&(g.fieldSetId=f.id),o===k.id&&(t=p),i.set(k.id,k),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===Rt.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:b}=c(d);if(!p)return{result:p,message:y};o=f.id,r=[],i.clear();const k=b.contents[0].type===Rt.DgControl.fieldset.type?0:1;l(b,r,k);const T=r.find(C=>!C.isSupportedClass);return{defaultState:{defaultGroupNumber:t||1,model:T?"customize":"standard"},importData:r}}function u(f,d){d=d;const{result:p,formNode:y}=c(d);if(!p)return"";const b=[];return f.forEach(k=>{var C;const T=i.get(k.id),g=T.appearance&&T.appearance.class;if(g){const h=g.split(" ").filter(x=>!x.startsWith("col-")),_="col-"+k.columnInSM,N="col-md-"+k.columnInMD,m="col-xl-"+k.columnInLG,M="col-el-"+k.columnInEL,w=[_,N,m,M].concat(h);T.appearance.class=w.join(" ")}if(k.fieldSetId){const S=y.contents.find(_=>_.id===k.fieldSetId),h=b.find(_=>_.id===k.fieldSetId);h?(C=h.contents)==null||C.push(T):(b.push(S),S.contents=[T])}else b.push(T)}),y.contents=b,y.id}return{checkCanFindFormNode:c,checkCanOpenLayoutEditor:s,changeFormControlsByResponseLayoutConfig:u,getResonseFormLayoutConfig:l}}const Mt=n.ref(0);function Wr(e,t){const o=t.getBoundingClientRect(),i=e.getBoundingClientRect(),r=i.top>=o.top,a=i.top<=o.bottom;return r&&a}function qr(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 zr(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 Jn(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=zr(e);if(r&&(i=Wr(e,r)),!i){o.style.display="none";return}qr(e)}}function Ur(e){if(!e)return;let t;e.className.includes("dgComponentSelected")?t=e:t=e.querySelector(".dgComponentSelected"),t&&Jn(t)}var ft=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 Yr={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(b){var k=i[u][1][b];return l(k||b)},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(v,F){var V=arguments.length;V===1&&Array.isArray(v)===!1&&(F=v,v=[]);var I,E,B,$,O,L,H,U,Q,ne=null,le,D,Z=!1,ue=0,ee,A=F||{};A.moves===void 0&&(A.moves=C),A.accepts===void 0&&(A.accepts=C),A.invalid===void 0&&(A.invalid=te),A.containers===void 0&&(A.containers=v||[]),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 z=l({containers:A.containers,start:j,end:ge,cancel:Qe,remove:Ue,destroy:_e,canMove:pe,dragging:!1});return A.removeOnSpill===!0&&z.on("over",P).on("out",W),fe(),z;function ye(R){return z.containers.indexOf(R)!==-1||A.isContainer(R)}function fe(R){var G=R?"remove":"add";b(f,G,"mousedown",ke),b(f,G,"mouseup",Le)}function je(R){var G=R?"remove":"add";b(f,G,"mousemove",De)}function Pe(R){var G=R?"remove":"add";c[G](f,"selectstart",Se),c[G](f,"click",Se)}function _e(){fe(!0),Le({})}function Se(R){le&&R.preventDefault()}function ke(R){$=R.clientX,O=R.clientY;var G=k(R)!==1||R.metaKey||R.ctrlKey;if(!G){var J=R.target,de=Ie(J);de&&(le=de,je(),R.type==="mousedown"&&(N(J)?J.focus():R.preventDefault()))}}function De(R){if(le){if(k(R)===0){Le({});return}if(!(R.clientX!==void 0&&Math.abs(R.clientX-$)<=(A.slideFactorX||0)&&R.clientY!==void 0&&Math.abs(R.clientY-O)<=(A.slideFactorY||0))){if(A.ignoreInputTextSelection){var G=x("clientX",R)||0,J=x("clientY",R)||0,de=u.elementFromPoint(G,J);if(N(de))return}var ve=le;je(!0),Pe(),ge(),ie(ve),s.add(U||B,"gu-transit"),me(),K(),ue=0,ot(R)}}}function Ie(R){if(!(z.dragging&&I)&&!ye(R)){for(var G=R;_(R)&&ye(_(R))===!1;)if(A.invalid(R,G)||(R=_(R),!R))return;var J=_(R);if(J&&!A.invalid(R,G)){var de=A.moves(R,J,G,M(R));if(de)return{item:R,source:J}}}}function pe(R){return!!Ie(R)}function j(R){var G=Ie(R);G&&ie(G)}function ie(R){pt(R.item,R.source)&&(U=R.item.cloneNode(!0),z.emit("cloned",U,R.item,"copy")),E=R.source,B=R.item,L=H=M(R.item),z.dragging=!0,z.emit("drag",B,E)}function te(){return!1}function ge(){if(z.dragging){var R=U||B;ze(R,_(R))}}function Me(){le=!1,je(!0),Pe(!0)}function Le(R){if(Me(),!!z.dragging){var G=U||B,J=x("clientX",R)||0,de=x("clientY",R)||0,ve=T(I,J,de),we=nt(ve,J,de);we&&(U&&A.copySortSource||!U||we!==E)?ze(G,we):A.removeOnSpill?Ue():Qe()}}function ze(R,G){var J=_(R);U&&A.copySortSource&&G===E&&J.removeChild(B),Ke(G)?z.emit("cancel",R,E):z.emit("drop",R,G,E,H),Ze()}function Ue(){if(z.dragging){var R=U||B,G=_(R);G&&G.removeChild(R),z.emit(U?"cancel":"remove",R,G,E),Ze()}}function Qe(R){if(z.dragging){var G=arguments.length>0?R:A.revertOnSpill,J=U||B,de=_(J),ve=Ke(de);ve===!1&&G&&(U?de&&de.removeChild(U):E.insertBefore(J,L)),ve||G?z.emit("cancel",J,E,E):z.emit("drop",J,de,E,H),Ze()}}function Ze(){var R=U||B;Me(),be(),Be(),R&&s.rm(R,"gu-transit"),Q&&clearTimeout(Q),z.dragging=!1,ne&&z.emit("out",R,ne,E),z.emit("dragend",R,ue),E=B=U=L=H=Q=ne=null}function Ke(R,G){var J;return G!==void 0?J=G:I?J=H:J=M(U||B),R===E&&J===L}function nt(R,G,J){for(var de=R;de&&!ve();)de=_(de);return de;function ve(){var we=ye(de);if(we===!1)return!1;var rt=Ne(de,R),Ye=Ge(de,rt,G,J),et=Ke(de,Ye);return et?!0:A.accepts(B,de,E,Ye)}}function ot(R){if(!I)return;R.preventDefault();var G=x("clientX",R)||0,J=x("clientY",R)||0;I.style.left=G-2+"px",I.style.top=J-2+"px";var de=U||B,ve=T(I,G,J),we=nt(ve,G,J),rt=we!==null&&we!==ne;(rt||we===null)&&(Je(),ne=we,st()),Ve(ve,J);var Ye=_(de);if(we===E&&U&&!A.copySortSource){Ye&&Ye.removeChild(de);return}var et,lt=Ne(we,ve);if(Z=Ce(lt,we),lt!==null)et=Ge(we,lt,G,J);else if(A.revertOnSpill===!0&&!U)et=L,we=E;else{U&&Ye&&Ye.removeChild(de),U&&D&&(D.style.display="none");return}D.style.display="block",it(et,de,rt),et?Fe(lt,et):Te(we);function He(We){z.emit(We,de,ne,E)}function st(){rt&&He("over")}function Je(){ne&&He("out")}}function it(R,G,J){(R===G||R===M(G))&&(H=M(G)),(R===null&&J||R!==G&&R!==M(G))&&(H=R)}function P(R){s.rm(R,"gu-hide")}function W(R){z.dragging&&s.add(R,"gu-hide")}function K(){I||(I=document.createElement("div"),I.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;",I.innerHTML=A.getMirrorText&&A.getMirrorText(B)||"控件",s.add(I,"gu-mirror"),A.mirrorContainer.appendChild(I),b(f,"add","mousemove",ot),s.add(A.mirrorContainer,"gu-unselectable"),z.emit("cloned",I,B,"mirror"))}function me(){if(D=document.createElement("div"),s.add(D,"gu-insertion"),B){var R=B.getBoundingClientRect();D.style.left=R.left+"px",D.style.top=R.top+"px"}Z=!1,A.mirrorContainer.appendChild(D)}function be(){I&&(s.rm(A.mirrorContainer,"gu-unselectable"),b(f,"remove","mousemove",ot),_(I).removeChild(I),I=null)}function Be(){D&&(_(D).removeChild(D),D=null)}function Ne(R,G){for(var J=G;J!==R&&_(J)!==R;)J=_(J);return J===f?null:J}function Ce(R,G){if(!G)return Z;var J=R||G&&G.lastElementChild;if(!J)return!0;var de=getComputedStyle(R),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!Ee(G)}return!1}return!0}function Ee(R){if(!R.children||!R.children.length)return!1;for(const G of Array.from(R.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(R,G){const J=G.getBoundingClientRect();if(D.style.left=J.left+"px",D.style.top=J.top+"px",Z){if(D.style.height=J.height+"px",D.style.width="4px",R){const de=R.getBoundingClientRect();de.top!==J.top&&(D.style.left=de.right+"px",D.style.top=de.top+"px",D.style.height=de.height+"px")}}else if(D.style.height="4px",D.style.width=J.width+"px",ee){const de=ee.getBoundingClientRect();J.top<de.top&&(D.style.display="none")}G===B&&B&&(D.style.display="none")}function Te(R){H=null;var G=R.lastElementChild;if(G){var J=G.getBoundingClientRect();Z?(D.style.left=J.right+"px",D.style.top=J.top+"px",D.style.height=J.height+"px",D.style.width="4px"):(D.style.left=J.left+"px",D.style.top=J.bottom+"px",D.style.height="4px",D.style.width=J.width+"px"),G===B&&B&&(D.style.display="none")}else D.style.display="none"}function Ve(R,G){if(!A.mirrorContainer.contains(R)||!window.scrollContainerList||!Array.from(window.scrollContainerList).length||(ee=p(R),!ee||!ee.contains(R)))return;const J=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),J&&ee.contains(J)&&(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),J&&ee.contains(J)&&(ue=ue+we)}}function Ge(R,G,J,de){var ve=A.direction==="horizontal",we=A.direction==="mixed",rt=G!==R?et():Ye();return rt;function Ye(){var He=R.children.length,st,Je,We;for(st=0;st<He;st++)if(Je=R.children[st],We=Je.getBoundingClientRect(),ve&&We.left+We.width/2>J||!we&&!ve&&We.top+We.height/2>de||we&&We.left+We.width>J&&We.top+We.height>de)return Je;return null}function et(){var He=G.getBoundingClientRect();if(we){var st=de-He.top,Je=J-He.left,We=He.bottom-de,kt=He.right-J,Ct=Math.min(Je,kt,st,We),wt;return Z?wt=kt<Je:wt=We===Ct||kt===Ct||Je===Ct,lt(wt)}return lt(ve?J>He.left+S(He)/2:de>He.top+h(He)/2)}function lt(He){return He?M(G):G}}function pt(R,G){return typeof A.copy=="boolean"?A.copy:A.copy(R,G)}}function p(v){const F=Array.from(window.scrollContainerList);if(F.length===1){const I=Array.from(window.scrollContainerList)[0];return document.getElementById(I)}const V=y(F);for(const I of V)if(I.contains(v))return I;return null}function y(v){const F=[];return v.forEach(V=>{const I=document.getElementById(V);I&&F.push(I)}),F.sort((V,I)=>V.contains(I)?1:I.contains(V)?-1:0),F}function b(v,F,V,I){var E={mouseup:"touchend",mousedown:"touchstart",mousemove:"touchmove"},B={mouseup:"pointerup",mousedown:"pointerdown",mousemove:"pointermove"},$={mouseup:"MSPointerUp",mousedown:"MSPointerDown",mousemove:"MSPointerMove"};a.navigator.pointerEnabled?c[F](v,B[V],I):a.navigator.msPointerEnabled?c[F](v,$[V],I):(c[F](v,E[V],I),c[F](v,V,I))}function k(v){if(v.touches!==void 0)return v.touches.length;if(v.which!==void 0&&v.which!==0)return v.which;if(v.buttons!==void 0)return v.buttons;var F=v.button;if(F!==void 0)return F&1?1:F&2?3:F&4?2:0}function T(v,F,V){v=v||{};var I=v.className||"",E;return v.className+=" gu-hide",E=u.elementFromPoint(F,V),v.className=I,E}function g(){return!1}function C(){return!0}function S(v){return v.width||v.right-v.left}function h(v){return v.height||v.bottom-v.top}function _(v){return v.parentNode===u?null:v.parentNode}function N(v){return v.tagName==="INPUT"||v.tagName==="TEXTAREA"||v.tagName==="SELECT"||m(v)}function m(v){return!v||v.contentEditable==="false"?!1:v.contentEditable==="true"?!0:m(_(v))}function M(v){return v.nextElementSibling||F();function F(){var V=v;do V=V.nextSibling;while(V&&V.nodeType!==1);return V}}function w(v){return v.targetTouches&&v.targetTouches.length?v.targetTouches[0]:v.changedTouches&&v.changedTouches.length?v.changedTouches[0]:v}function x(v,F){var V=w(F),I={pageX:"clientX",pageY:"clientY"};return v in I&&!(v in V)&&I[v]in V&&(v=I[v]),V[v]}i.exports=d}).call(this,typeof ft<"u"?ft: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 b=arguments.length;if(b===1)delete d[p];else if(b===0)d={};else{var k=d[p];if(!k)return s;k.splice(k.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 b=a(arguments),k=this||s;if(p==="error"&&f.throws!==!1&&!y.length)throw b.length===1?b[0]:b;return y.forEach(function(g){f.async?l(g,b,k):g.apply(k,b),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=b,d=[];a.addEventListener||(u=y,f=k),i.exports={add:u,remove:f,fabricate:T};function p(_,N,m,M){return _.addEventListener(N,m,M)}function y(_,N,m){return _.attachEvent("on"+N,C(_,N,m))}function b(_,N,m,M){return _.removeEventListener(N,m,M)}function k(_,N,m){var M=S(_,N,m);if(M)return _.detachEvent("on"+N,M)}function T(_,N,m){var M=c.indexOf(N)===-1?x():w();_.dispatchEvent?_.dispatchEvent(M):_.fireEvent("on"+N,M);function w(){var v;return s.createEvent?(v=s.createEvent("Event"),v.initEvent(N,!0,!0)):s.createEventObject&&(v=s.createEventObject()),v}function x(){return new l(N,{detail:m})}}function g(_,N,m){return function(w){var x=w||a.event;x.target=x.target||x.srcElement,x.preventDefault=x.preventDefault||function(){x.returnValue=!1},x.stopPropagation=x.stopPropagation||function(){x.cancelBubble=!0},x.which=x.which||x.keyCode,m.call(_,x)}}function C(_,N,m){var M=S(_,N,m)||g(_,N,m);return d.push({wrapper:M,element:_,type:N,fn:m}),M}function S(_,N,m){var M=h(_,N,m);if(M){var w=d[M].wrapper;return d.splice(M,1),w}}function h(_,N,m){var M,w;for(M=0;M<d.length;M++)if(w=d[M],w.element===_&&w.type===N&&w.fn===m)return M}}).call(this,typeof ft<"u"?ft: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 ft<"u"?ft: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 ft<"u"?ft: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,b,k=-1;function T(){!y||!b||(y=!1,b.length?p=b.concat(p):k=-1,p.length&&g())}function g(){if(!y){var h=f(T);y=!0;for(var _=p.length;_;){for(b=p,p=[];++k<_;)b&&b[k].run();k=-1,_=p.length}b=null,y=!1,d(h)}}a.nextTick=function(h){var _=new Array(arguments.length-1);if(arguments.length>1)for(var N=1;N<arguments.length;N++)_[N-1]=arguments[N];p.push(new C(h,_)),p.length===1&&!y&&f(g)};function C(h,_){this.fun=h,this.array=_}C.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,b){this._id=y,this._clearFn=b}p.prototype.unref=p.prototype.ref=function(){},p.prototype.close=function(){this._clearFn.call(window,this._id)},r.enroll=function(y,b){clearTimeout(y._idleTimeoutId),y._idleTimeout=b},r.unenroll=function(y){clearTimeout(y._idleTimeoutId),y._idleTimeout=-1},r._unrefActive=r.active=function(y){clearTimeout(y._idleTimeoutId);var b=y._idleTimeout;b>=0&&(y._idleTimeoutId=setTimeout(function(){y._onTimeout&&y._onTimeout()},b))},r.setImmediate=typeof a=="function"?a:function(y){var b=d++,k=arguments.length<2?!1:u.call(arguments,1);return f[b]=!0,c(function(){f[b]&&(k?y.apply(null,k):y.call(null),r.clearImmediate(b))}),b},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)})})(Yr);const Qn=new Map([["appearance",mt],["column","columnOption"]]);function Xr(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 Kr(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 Jr(e,t,o){const i=e.getSchemaByType("content-container");return i.id=`${t.id}-layout`,i.appearance={class:"f-grid-is-sub f-utils-flex-column"},i.contents=[t],i}function Zn(e,t,o){const r=o.parentComponentInstance.schema.type,a=r==="section"||r==="tab-page";t.appearance={class:"f-component-grid"};const c=(a?Jr:Kr)(e,t,o);return Xr(e,c,o)}const eo={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/tree-grid.schema.json",title:"tree-grid",description:"A Farris Data Grid Component",type:"object",properties:{id:{description:"The unique identifier for a Input Group",type:"string"},type:{description:"The type string of Input Group component",type:"string",default:"tree-grid"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},fit:{type:"boolean",default:!1},showStripe:{type:"boolean",default:!0},showBorder:{type:"boolean",default:!1},showTreeNodeIcons:{type:"boolean",default:!1},showSetting:{type:"boolean",default:!1},size:{description:"",type:"object",properties:{width:{type:"number"},height:{type:"number"}},default:null},dataSource:{description:"",type:"string",default:""},columns:{description:"",type:"array",default:[]},identifyField:{description:"",type:"string"},editable:{description:"",type:"boolean",default:!1},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"]},Xt={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}},Qr=Ae(Xt,eo,Qn,Zn),Zr=Li(),ea=Hi(),to=Object.assign({},Xt,{componentId:{type:String,default:""}}),ta=Ae(to,eo,Qn,Zn),na=dn();function oa(e,t,o,i,r,a,l,c,s,u,f,d,p,y,b,k,T){const{calculateCellPositionInRow:g}=a,{columnContext:C,hasLeftFixedColumn:S,hasRightFixedColumn:h}=l,{gridDataStyle:_,leftFixedGridDataStyle:N,rightFixedGridDataStyle:m}=y,{renderDataRow:M}=Vr(e,t,C,T,c,s,u,f,d,p,y),w=[M];function x(E,B){const $=g(E);return T.value.filter(O=>O.visible!==!1).map(O=>w[O.type](O,$,B))}function v(){return n.createVNode("div",{ref:i,class:"fv-grid-content-left-fixed"},[n.createVNode("div",{class:"fv-grid-data",style:N.value},[x(C.value.leftColumns.filter(E=>E.visible),"left")])])}function F(){return n.createVNode("div",{ref:o,class:"fv-grid-content-primary"},[n.createVNode("div",{class:"fv-grid-data",style:_.value},[x(C.value.primaryColumns.filter(E=>E.visible),"primary")])])}function V(){return n.createVNode("div",{ref:r,class:"fv-grid-content-right-fixed"},[n.createVNode("div",{class:"fv-grid-data",style:m.value},[x(C.value.rightColumns.filter(E=>E.visible),"right")])])}function I(){const E=[];return S.value&&E.push(v()),E.push(F()),h.value&&E.push(V()),E}return{renderDataArea:I}}const jt=n.defineComponent({name:"FTreeGrid",props:Xt,emits:["selectionChange","clickRow","expandNode"],setup(e,t){var pt,R;const i=((pt=e.rowOption)==null?void 0:pt.height)||28,r=n.ref(20),a=n.ref(e.columns),l=Y.useIdentify(e),c=n.ref(),s=n.ref(),u=n.ref(),f=n.ref(),d=n.ref(),p=n.ref([]),y=n.ref(!1),b=n.ref(((R=e.rowOption)==null?void 0:R.wrapContent)||!1),k=Y.useGroupData(e,l),T=Y.useFilter(),g=Y.useHierarchy(e),{showLoading:C,renderLoading:S}=Y.useLoading(e,c),h=Y.useDataView(e,new Map,T,g,l),_=Y.useSelection(e,h,l,p,t),N=Y.useSelectHierarchyItem(e,p,l,_,t),m=n.computed(()=>e.disabled),M=n.computed(()=>e.virtualized?Math.min(h.dataView.value.length,r.value):h.dataView.value.length),{containerStyleObject:w}=Y.useDataViewContainerStyle(e),x=Y.useCommandColumn(e),{applyCommands:v}=x;v(a);const F=Y.useColumn(e),V=Y.useSort(e),{applyColumnSorter:I,columnContext:E,updateColumnRenderContext:B}=F;I(h,V);const $=Y.useGroupColumn(e,E),O=Y.useRow(e,t,_,l),L=Y.useEdit(e,t,l,O),H=Y.useVisualDataBound(e),U=Y.useVisualDataCell(e,L,H),Q=Y.useVisualDataRow(e,L,g,l,H,U),ne=Y.useVisualData(e,a,h,M,0,Q),{getVisualData:le}=ne,D=Y.useCellPosition(e,E),Z=Y.useSidebar(e,_),{sidebarWidth:ue}=Z,ee=Y.useVirtualScroll(e,h,p,E,ne,M,0,ue),{onWheel:A,dataGridWidth:z,viewPortHeight:ye,viewPortWidth:fe,resetScroll:je,updateVisibleRowsOnLatestVisibleScope:Pe}=ee,_e=Y.useFitColumn(e,E,s,fe,$),{calculateColumnsSize:Se}=_e,ke=Y.useFilterHistory(),De=Y.useColumnFilter(s,d,h,ke,ee),Ie=Y.useDragColumn(e,t,F,h,$,k,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":b.value})),{renderDataArea:ie}=oa(e,t,u,f,d,D,F,h,L,g,O,_,N,ee,ne,H,p),{renderGridHeader:te,renderGridColumnResizeOverlay:ge,shouldShowHeader:Me}=Y.getColumnHeader(e,t,s,f,d,F,h,Ie,De,T,ke,_e,$,_,Z,V,ee,fe,p),{renderDataGridSidebar:Le}=Y.getSidebar(e,O,_,Z,ee),{renderDisableMask:ze}=Y.getDisableMask(),{renderHorizontalScrollbar:Ue}=Y.getHorizontalScrollbar(e,s,ee),{renderVerticalScrollbar:Qe}=Y.getVerticalScrollbar(e,s,ee);function Ze(){var G,J,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=((J=u.value)==null?void 0:J.clientHeight)||0,z.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,M.value+0-1),It.useResizeObserver(s.value,Ze),Se(),n.nextTick(()=>{s.value&&(z.value=s.value.clientWidth),u.value&&(fe.value=u.value.clientWidth,ye.value=u.value.clientHeight)})),C.value&&S()}),n.onUnmounted(()=>{}),n.watch(fe,()=>{s.value&&Se()});function Ke(){const G=_.getSelectionRow();return G?G.dataIndex-1:-1}function nt(){const G=Ke();h.insertNewDataItem(G),p.value=le(0,M.value+0-1)}function ot(){const G=Ke();h.insertNewChildDataItem(G),p.value=le(0,M.value+0-1)}function it(){const G=Ke(),J=N.getNextSelectableHierarchyItemId(G);h.removeHierarchyDataItem(G),p.value=le(0,M.value+0-1),J&&_.selectItemById(J)}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,v(a),B(a.value),I(h,V),Se())}function be(G){G&&(h.load(G),je())}function Be(G){_.selectItemById(G)}function Ne(G){const J=p.value.find(de=>de.raw[l.idField.value]===G);J&&O.clickRowItem(J)}function Ce(G){_.selectItemByIds(G)}function Ee(){return _.getSelectedItems()}function Fe(){_.clearSelection()}const Te=n.computed(()=>!p.value||!p.value.length),{renderEmpty:Ve}=Y.getEmpty(t);function Ge(){return _.getSelectionRow()}return t.expose({addNewDataItem:nt,addNewChildDataItem:ot,removeDataItem:it,editDataItem:P,acceptDataItem:W,cancelDataItem:K,updateColumns:me,updateDataSource:be,selectItemById:Be,selectItemByIds:Ce,getSelectedItems:Ee,clearSelection:Fe,getSelectionRow:Ge,clickRowItemById:Ne}),()=>n.createVNode("div",{ref:c,class:pe.value,style:w.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&&Le(p),s.value&&ie(),s.value&&Te.value&&Ve(),s.value&&Ue(),s.value&&Qe()]),ge(),m.value&&ze()])}}),ia={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}},ra={},aa={},la={id:{type:String}},sa=n.defineComponent({name:"FDesignerPlaceholder",props:la,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 ca(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!n.isVNode(e)}const Kt=n.defineComponent({name:"FDesignerItem",props:ia,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(),b=n.inject("design-item-context"),k={designerItemElementRef:d,componentInstance:y,schema:l.value,parent:b,setupContext:t};n.provide("design-item-context",k);const T=n.inject("useFormSchema"),g=n.computed(()=>{var O;const E=e.modelValue.appearance&&e.modelValue.appearance.class||"",B=((O=y.value)==null?void 0:O.getCustomButtons)&&y.value.getCustomButtons();let $={"farris-component":!0,"flex-fill":l.value.id==="root-component","position-relative":i.value&&r.value||(B==null?void 0:B.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 $[`farris-component-${l.value.type}`]=!0,$=xe.getCustomClass($,E),$=xe.getCustomClass($,u.value),$=xe.getCustomClass($,f.value),$}),C=n.computed(()=>{const E={},B=e.modelValue.appearance&&e.modelValue.appearance.style||"";return B&&B.split(";").reduce(($,O)=>{const[L,H]=O.split(":");return $[L]=H,$},E),s.value&&s.value.split(";").reduce(($,O)=>{const[L,H]=O.split(":");return L&&($[L]=H),$},E),E});function S(E,B){var L,H;if(E&&(E.preventDefault(),E.stopPropagation()),y.value.triggerBelongedComponentToDeleteWhenDeleted){const U=y.value.getBelongedComponentInstance(y);if(U&&U.parent){const Q=n.ref(U==null?void 0:U.parent),ne=Q.value.contents.findIndex(le=>le.id===U.schema.id);(H=(L=Q.value)==null?void 0:L.contents)==null||H.splice(ne,1),Mt.value++}return}y.value.onRemoveComponent();let $=b,O=U=>U.id===B.id;if(B.type==="component"&&($=b==null?void 0:b.parent,O=U=>U.component===B.id),$&&$.schema.contents){const U=$.schema.contents.findIndex(O);$.schema.contents.splice(U,1),Mt.value++,t.emit("selectionChange")}}function h(E){return r.value&&n.createVNode("div",{role:"button",class:"btn component-settings-button",title:"删除",ref:"removeComponent",onClick:B=>{S(B,E)}},[n.createVNode("i",{class:"f-icon f-icon-yxs_delete"},null)])}function _(){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 B;const E=((B=y.value)==null?void 0:B.getCustomButtons)&&y.value.getCustomButtons();return E&&!!E.length&&E.map($=>n.createVNode("div",{role:"button",class:`btn component-settings-button ${$.class||""}`,title:$.title,ref:$.id,onClick:O=>$.onClick&&$.onClick(O)},[n.createVNode("i",{class:$.icon},null)]))}function m(E){return n.createVNode("div",{class:"component-btn-group","data-noattach":"true"},[n.createVNode("div",null,[h(E),_(),N()])])}function M(E,B,$,O){t.emit("selectionChange",E,B,$,O)}function w(E){let B;const $=E.type,O=ra[$],L=aa[$],H=L?L(E):{};H.customClass=e.ignore?H.customClass:"",H.componentId=c.value,H.id=E.id;const U=E.contents&&E.contents.length===0;return E.contents&&!!E.contents.length&&O?n.createVNode(O,n.mergeProps({ref:y},H),ca(B=E.contents.map(ne=>n.createVNode(Kt,{key:ne.id,modelValue:ne,"onUpdate:modelValue":le=>ne=le,componentId:c.value,onSelectionChange:M},null)))?B:{default:()=>[B]}):O?U?n.createVNode(O,n.mergeProps({ref:y},H),{default:()=>[n.createVNode(sa,null,null)]}):n.createVNode(O,n.mergeProps({ref:y},H),null):n.createVNode("div",null,null)}function x(E){if(E.type==="component-ref"){let $=T==null?void 0:T.getFormSchema().module.components.find(O=>O.id===E.component);if($)return n.createVNode(Kt,{key:$.id,modelValue:$,"onUpdate:modelValue":O=>$=O,componentId:$.id,onSelectionChange:M},null)}}n.watch(()=>e.modelValue,E=>{l.value=E,o.value=`${E.id}-component`});function v(E){window.scrollContainerList||(window.scrollContainerList=new Set);const B=E.getAttribute("id");B&&window.scrollContainerList.add(B)}function F(E){const B=E==null?void 0:E.target;v(B),Ur(B)}function V(){var E,B;(B=(E=l.value)==null?void 0:E.contents)!=null&&B.length&&d.value&&d.value.addEventListener("scroll",F)}n.onMounted(()=>{if(d.value&&y.value&&y.value.schema){const E=d.value.querySelector(`[data-dragref='${y.value.schema.id}-container']`);p&&E&&p.attachComponents(E,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=k),y.value.belongedComponentId=c.value}V(),Mt.value++}),n.onBeforeUnmount(()=>{d.value&&d.value.removeEventListener("scroll",F)});function I(E){E&&(E.preventDefault(),E.stopPropagation());let B=k.designerItemElementRef;const $=d.value;if($){const O=document.getElementsByClassName("dgComponentFocused");O&&O.length===1&&O[0]===d.value||(Array.from(O).forEach(H=>H.classList.remove("dgComponentFocused")),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(H=>H.classList.remove("dgComponentSelected")),$.classList.add("dgComponentFocused"),t.emit("selectionChange",l.value.type,l.value,c.value,y.value),y.value.getDraggableDesignItemElement&&(B=y.value.getDraggableDesignItemElement(k),B&&B.value&&B.value.classList.add("dgComponentSelected")))}Jn(B==null?void 0:B.value)}return()=>l.value.type==="component-ref"?x(l.value):n.createVNode("div",{id:`${l.value.id}-design-item`,ref:d,class:g.value,style:C.value,onClick:I},[m(l.value),w(l.value)])}});function no(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 b(x,v){const F=y.get(v)||0,V={height:`${x.depth*p}px`,left:`${x.left}px`,top:`${(x.layer-1)*p}px`,width:`${x.actualWidth}px`,padding:0};return a.value.headerDepth>1&&(V["line-height"]=`${x.depth*p}px`),y.set(v+1,F+(x.actualWidth||d)),V}const k=n.computed(()=>({"fv-grid-header":!0,"fv-grid-header-group-columns":a.value.headerDepth>1})),T=n.computed(()=>({height:`${a.value.headerDepth*p}px`})),g=function(x){return t.showSetting&&!!x.showSetting};function C(){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(x,v,F,V){var I;(I=e==null?void 0:e.setupContext)==null||I.emit("selectionChange",x,v,F,V)}function h(x){var F,V;return"w-100 d-flex align-items-center justify-content-"+(((F=x.column)==null?void 0:F.halign)==="center"?"center":((V=x.column)==null?void 0:V.halign)==="right"?"end pr-2":"start pl-2")}function _(x,v,F){var I;const V=n.ref(x.column);return n.createVNode("div",{class:"fv-grid-header-cell",style:b(x,F)},[n.createVNode(Kt,{modelValue:V.value,"onUpdate:modelValue":E=>V.value=E,customClass:h(x),canAdd:!1,canDelete:!1,canMove:!1,key:(I=V.value)==null?void 0:I.id,type:r,componentId:t.componentId,onSelectionChange:S},null),g(x)&&C(),x.resizable&&n.createVNode("span",{class:"fv-column-resize-bar"},null)])}function N(x){return x.map((v,F)=>{const V=[];if(V.push(_(v,x,F)),v.children&&v.children.length){const I=N(v.children);V.push(...I)}return V})}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 M(){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 w(){return n.createVNode("div",{class:k.value,style:T.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&&M()])}return{renderGridHeader:w}}class da extends $t{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 ua(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 da(f,t).getPropertyConfig(o)}return{canAccepts:a,checkCanDeleteComponent:l,checkCanMoveComponent:c,hideNestedPaddingInDesginerView:s,triggerBelongedComponentToMoveWhenMoved:i,triggerBelongedComponentToDeleteWhenDeleted:r,getPropsConfig:u}}function oo(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,M;return((m=e.selection)==null?void 0:m.multiSelect)||((M=e.selection)==null?void 0:M.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,M,w){const x=parseInt(m.width,10)/100;return w*x}function b(m,M,w){return typeof m.width=="string"?y(m,M,w):m.width||l}function k(m,M){const w=[],x=[];let v=0;m.value.primaryColumns.filter(I=>I.visible).forEach(I=>{typeof I.width=="string"?x.push(I):(I.width=I.width||l,v+=I.width,w.push(I))});const F=M*(w.length/m.value.primaryColumns.filter(I=>I.visible).length);w.forEach(I=>{const E=F*(I.width/v);I.actualWidth=E,m.value.primaryColumnsWidth+=I.actualWidth});const V=M-F;x.forEach(I=>{const E=y(I,m.value,V);I.actualWidth=E,m.value.primaryColumnsWidth+=I.actualWidth})}function T(m,M){const w=[],x=[],v=new WeakMap;let F=0,V=0;if(m.value.primaryColumns.filter(E=>E.visible).forEach(E=>{if(typeof E.width=="string"){const B=y(E,m.value,M);v.set(E,B),F+=B,x.push(E)}else E.width=E.width||l,V+=E.width,w.push(E)}),M-F>V){const E=M-F;x.forEach(B=>{B.actualWidth=v.get(B)||l,m.value.primaryColumnsWidth+=B.actualWidth}),w.forEach(B=>{B.actualWidth=E*(B.width/V),m.value.primaryColumnsWidth+=B.actualWidth})}else k(m,M)}function g(m,M){m.value.primaryColumns.filter(w=>w.visible).forEach(w=>{w.actualWidth=b(w,m.value,M),m.value.primaryColumnsWidth+=w.actualWidth})}const C={expand:T,none:g,percentage:k};function S(m){m.value.leftHeaderColumns=Array.from(a(m.value.leftColumns.filter(M=>M.visible)).values()),m.value.primaryHeaderColumns=Array.from(a(m.value.primaryColumns.filter(M=>M.visible)).values()),m.value.rightHeaderColumns=Array.from(a(m.value.rightColumns.filter(M=>M.visible)).values())}function h(m){m.value.leftColumnsWidth=0,m.value.primaryColumnsWidth=0,m.value.rightColumnsWidth=0,m.value.leftColumns.filter(M=>M.visible).forEach(M=>{m.value.leftColumnsWidth+=M.actualWidth||0}),m.value.primaryColumns.filter(M=>M.visible).forEach(M=>{m.value.primaryColumnsWidth+=M.actualWidth||0}),m.value.rightColumns.filter(M=>M.visible).forEach(M=>{m.value.rightColumnsWidth+=M.actualWidth||0}),m.value=Object.assign({},m.value)}function _(m,M,w){var B;let x=0;const v=m.value.primaryColumns,F=m.value.rightColumns;m.value.rightColumns.filter($=>$.visible).forEach($=>{$.actualWidth=b($,m.value,M),x+=$.actualWidth});const V=w-x,I=C[p.value];if(I&&I(m,V),m.value.primaryColumnsWidth+x<=w)return m.value.primaryColumns=[...v,...F],m.value.primaryColumnsWidth+=x,m.value.rightColumns=[],m.value.rightColumnsWidth=0,!0;const E=new Map;return E.set("primary",[]),E.set("right",[]),m.value.primaryColumns.reduce(($,O)=>{var L,H;return O.fixed==="right"?(L=$.get("right"))==null||L.push(O):(H=$.get("primary"))==null||H.push(O),$},E),(B=E.get("right"))!=null&&B.length&&(m.value.primaryColumns=[...E.get("primary")||[]],m.value.rightColumns=[...E.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(w=>w.visible).forEach(w=>{w.actualWidth=b(w,t.value,m),t.value.leftColumnsWidth+=w.actualWidth});const M=m-t.value.leftColumnsWidth;if(_(t,m,M))i.value=M;else{t.value.rightColumns.filter(v=>v.visible).forEach(v=>{v.actualWidth=b(v,t.value,m),t.value.rightColumnsWidth+=v.actualWidth});const w=m-t.value.leftColumnsWidth-t.value.rightColumnsWidth,x=C[p.value];x&&x(t,w),i.value=w}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!==M&&m&&N()}),n.watch(p,(m,M)=>{m!==M&&d.value&&N()}),{calculateColumnHeaders:S,calculateColumnsSize:N,calculateColumnsWidth:h}}const fa=n.defineComponent({name:"FTreeGridDesign",props:to,emits:[],setup(e,t){var De,Ie;const o=n.ref(),i=0,r=((De=e.rowOption)==null?void 0:De.height)||28,a=n.ref(20),l=n.ref(e.columns),c=ho(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"),b=n.inject("design-item-context"),k=ua(b,y),T=Yt(o,b,k);T.value.designerClass="f-utils-fill-flex-column";const g=ao(),C=lo(e),S=Bn(e,new Map,g,C,c),h=yo(e,S,c,f,t),_=n.computed(()=>S.dataView.value.length),{containerStyleObject:N}=Tn(e),m=kn(e),{applyCommands:M}=m;M(l);const w=Vn(e),{applyColumnSorter:x,columnContext:v,updateColumnRenderContext:F}=w,V=bo(),I=In(e,v),E=go(e,t,h,c),B=mo(e,t,c,E),$=uo(e),O=fo(e,B,$),L=po(e,B,C,c,$,O),H=co(e,l,S,_,i,L),{getVisualData:U}=H,Q=vo(e,h),{sidebarWidth:ne}=Q;f.value=U(0,_.value+i-1);const le=so(e,S,f,v,H,_,i,ne),{onWheel:D,dataGridWidth:Z,viewPortHeight:ue,viewPortWidth:ee,updateVisibleRowsOnLatestVisibleScope:A}=le,z=oo(e,v,s,ee,I),{calculateColumnsSize:ye}=z,fe=n.computed(()=>({"drag-container":!0,"fv-grid":!0,"fv-grid-bordered":e.showBorder,"fv-datagrid-strip":e.showStripe})),je=n.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":d.value,"fv-grid-wrap-content":p.value})),{renderGridHeader:Pe}=no(b,e,w,le,"tree-grid-column"),{renderHorizontalScrollbar:_e}=Mn(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=T,s.value&&(a.value=Math.max(Math.ceil(s.value.clientHeight/r),a.value),f.value=U(0,_.value+i-1),It.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 ke(pe){pe&&(l.value=pe,M(l),F(l.value),x(S,V),ye())}return n.watch(()=>e.columns,pe=>{ke(pe)}),n.watch(ee,()=>{s.value&&ye()}),t.expose(T.value),()=>n.createVNode("div",{ref:o,class:fe.value,style:N.value,onWheel:D,dragref:`${b.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=(e,t,o,i)=>{e["tree-grid"]=jt,t["tree-grid"]=Qr,i["tree-grid"]={bindingResolver:ea,selectionItemResolver:Zr,updateColumnsResolver:na}},jt.registerDesigner=(e,t,o)=>{e["tree-grid"]=fa,t["tree-grid"]=ta},xe.withInstall(jt);const pa=new Map([["appearance",mt]]);function ma(e,t,o){return t}Ae({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"]},pa,ma,{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 ha={id:{type:String},required:{type:Boolean,default:!1},text:{type:String,default:""},title:{type:String}},ga=n.defineComponent({name:"FDynamicFormLabel",props:ha,emits:[],setup(e,t){const o=n.ref(e.title||e.text),i=n.ref(e.required),r=n.ref(e.text);return n.watch(()=>e.text,()=>{r.value=e.text}),n.watch(()=>e.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 io=!1;function ya(){io||(io=!0,Do.register(re,ae,se,ce),Po.register(re,ae,se,ce),Ro.register(re,ae,se,ce),Ho.register(re,ae,se,ce),Ao.register(re,ae,se,ce),Lo.register(re,ae,se,ce),xt.register(re,ae,se,ce),At.register(re,ae,se,ce),Ti.register(re,ae,se,ce),Si.register(re,ae,se,ce),Wo.register(re,ae,se,ce),Go.register(re,ae,se,ce),zo.register(re,ae,se,ce),qo.register(re,ae,se,ce),Uo.register(re,ae,se,ce),Ht.register(re,ae,se,ce),Yo.register(re,ae,se,ce),$o.register(re,ae,se,ce),Vi.register(re,ae,se,ce),Xo.register(re,ae,se,ce),Ko.register(re,ae,se,ce),Jo.register(re,ae,se,ce),Zo.register(re,ae,se,ce),Qo.register(re,ae,se,ce),ei.register(re,ae,se,ce),ki.register(re,ae,se,ce),ti.register(re,ae,se,ce),oi.register(re,ae,se,ce),ni.register(re,ae,se,ce),Bo.register(re,ae,se,ce),ii.register(re,ae,se,ce),ri.register(re,ae,se,ce),Oo.register(re,ae,se,ce),ai.register(re,ae,se,ce),li.register(re,ae,se,ce),si.register(re,ae,se,ce),ci.register(re,ae,se,ce),ui.register(re,ae,se,ce),fi.register(re,ae,se,ce),di.register(re,ae,se,ce),Ii.register(re,ae,se),jo.register(re,ae,se,ce),pi.register(re,ae,se,ce),mi.register(re,ae,se,ce),hi.register(re,ae,se,ce),gi.register(re,ae,se,ce),yi.register(re,ae,se,ce),Eo.register(re,ae,se,ce),rn.register(re,ae,se,ce),vi.register(re,ae,se,ce),bi.register(re,ae,se,ce),No.register(re,ae,se,ce),an.register(re,ae,se,ce),wi.register(re,ae,se,ce),Ci.register(re,ae,se,ce),xi.register(re,ae,se,ce),Fi.register(re,ae,se,ce),_i.register(re,ae,se,ce),Mi.register(re,ae,se,ce),Ni.register(re,ae,se,ce))}function va(){ya();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 ba=n.defineComponent({name:"FDynamicFormGroup",props:Kn,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:b,getClearFunctionName:k}=va(),T=n.computed(()=>({"form-group":!0,"farris-form-group":!0,"common-group":!0,"q-state-readonly":c.value}));function g(_,N){l.value=N!==void 0?N:_,t.emit("update:modelValue",l.value),t.emit("change",l.value)}function C(){t.emit("update:modelValue","")}const S=n.computed(()=>{const _=r.value.type||"input-group",N=y(_),m=p(_,r.value),M=b(_),w=k(r.value.type);return w&&(m[w]=C),m[M]=g,(m.id==null||m.id==="")&&(m.id=o.value),_==="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)):_==="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":x=>l.value=x}),t.slots)});return n.watch([()=>e.id,()=>e.customClass,()=>e.editor,()=>e.label,()=>e.modelValue,()=>e.readonly,()=>e.required,()=>e.showLabel,()=>e.visible],([_,N,m,M,w,x,v,F,V])=>{var I;o.value=_,i.value=N,r.value=m,a.value=M,l.value=w,c.value=x,s.value=((I=r.value)==null?void 0:I.required)||v,u.value=F,f.value=V}),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:T.value},[u.value&&n.createVNode(ga,{id:`${o.value}-lable`,required:s.value,text:a.value,title:a.value},null),n.createVNode("div",{class:"farris-input-wrap"},[S.value()])])])])}}),Ca=new Map([["appearance",mt]]);function wa(e,t,o){return t}Ae({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"]},Ca,wa);const bt=class bt{static getEditorTypesByMDataType(t){const o=bt.fieldControlTypeMapping[t];return o||[{key:"",value:""}]}static getAllInputTypes(){const t=[];for(const o in bt.fieldControlTypeMapping)bt.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(bt,"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 Tt=bt;class Xe extends $t{constructor(o,i){super(o,i);q(this,"responseLayoutEditorFunction");this.responseLayoutEditorFunction=Gr(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?Tt.getEditorTypesByMDataType((a=r.designViewModelField.type)==null?void 0:a.name):Tt.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(b=>b.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(b=>b.classList.remove("dgComponentSelected")),Array.from(document.getElementsByClassName("dgComponentFocused")).forEach(b=>b.classList.remove("dgComponentFocused")),Mt.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 b=a.find(k=>k.id===i.id);Object.assign(b||{},i)}const l=a.map(b=>b.columnInSM),c=a.map(b=>b.columnInMD),s=a.map(b=>b.columnInLG),u=a.map(b=>b.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)}}Ae({id:{type:String,default:""},editor:{type:Object,default:{}},modelValue:{type:[String,Boolean,Array,Number],default:""},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1}},Xn,Ut,void 0);const xa={$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}}};on.createPropsResolver(Fa,xa,Pr,Ar);const _a={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 Jt(){return new DOMException("The request is not allowed","NotAllowedError")}async function Ma(e){if(!navigator.clipboard)throw Jt();return navigator.clipboard.writeText(e)}async function Ta(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 Jt()}async function Va(e){try{await Ma(e)}catch(t){try{await Ta(e)}catch(o){throw o||t||Jt()}}}function ka(){async function e(t){await Va(t)}return{onCopy:e}}function Ia(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 Na(e,t,o,i){const r=Ia(e,t,o,i),a=new Map([["text-area",r]]);function l(c){return a.get(c)||null}return{getEditorRender:l}}function Ea(){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 Ba(e,t){const o=t.getEditorRender(e.promptEditorType);return()=>o&&o()}function $a(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 Oa(e){return()=>n.createVNode("p",{class:"toast-msg-detail",innerHTML:e.value},null)}function ja(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?$a(r):s.value?Oa(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 Pa(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 Da(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)),b=n.computed(()=>f.value&&c.value),k=n.computed(()=>u.value&&s.value),T=Pa(e,o,i);function g(S){r.value==="question"&&t.emit("reject"),t.emit("close")}function C(S){r.value==="question"&&t.emit("accept"),t.emit("close")}return()=>n.createVNode("div",{class:"modal-footer"},[p.value&&T(),y.value&&k.value&&n.createVNode("button",{type:"button",class:"btn btn-secondary btn-lg",onClick:g},[s.value]),y.value&&b.value&&n.createVNode("button",{type:"button",class:"btn btn-primary btn-lg",onClick:C},[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:_a,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 T={"modal-tips":!0,"d-flex":!0,"flex-row":!0},g=`messager-type-${o.value}`;return T[g]=!0,T}),l=n.computed(()=>{const T={};return o.value==="prompt"?T.padding="0.5rem 0.5rem 1rem 1.5rem":o.value==="error"&&(T.padding="0.5rem 1.5rem 1rem 1.5rem"),T}),c=ka(),s=Na(e,o,i,r),u=Ea(),{feedbackStyle:f,feedbackMessage:d}=u;function p(){return n.createVNode("div",{style:f.value},[d.value])}function y(){switch(o.value){case"prompt":return Ba(e,s);default:return ja(e,o,i,r)}}const b=y(),k=Da(e,t,c,u);return()=>n.createVNode("div",{class:"farris-messager"},[n.createVNode("section",{class:a.value,style:l.value},[b()]),k(),p()])}});class ct{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 mn(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(t,o){const i=n.reactive({type:"info",title:t,detail:o,okButtonText:"知道了",cancelButtonText:""});ct.show(i)}static warning(t,o){const i=n.reactive({type:"warning",title:t,detail:o,okButtonText:"知道了",cancelButtonText:""});ct.show(i)}static success(t,o){const i=n.reactive({type:"success",title:t,detail:o,okButtonText:"关闭",cancelButtonText:""});ct.show(i)}static error(t,o,i){const r=n.reactive({width:500,type:"error",okButtonText:"关闭",cancelButtonText:"",exceptionInfo:{date:i,message:t,detail:o}});ct.show(r)}static prompt(t,o){const i=n.reactive({type:"prompt",title:t,detail:o,okButtonText:"确定",cancelButtonText:"取消"});ct.show(i)}static question(t,o,i,r){const a=n.reactive({type:"question",title:t,detail:o,okButtonText:"确定",cancelButtonText:"取消",acceptCallback:i,rejectCallback:r});ct.show(a)}}Pt.install=e=>{e.component(Pt.name,Pt),e.provide("FMessageBoxService",ct)};var Vt=(e=>(e[e.Value=0]="Value",e[e.SmartHelp=1]="SmartHelp",e[e.Enum=2]="Enum",e[e.Express=3]="Express",e))(Vt||{}),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 Ra=[{value:"0",name:"等于"},{value:"1",name:"不等于"},{value:"2",name:"大于"},{value:"3",name:"大于等于"},{value:"4",name:"小于"},{value:"5",name:"小于等于"},{value:"6",name:"包含"},{value:"7",name:"开始是"},{value:"8",name:"结束是"}],Ha={"button-edit":["0","1"," 6","7","8"],"check-box":["0"],"combo-list":["0","1"],"combo-lookup":["0","1"," 6","7","8"],"date-picker":["0","1","2","3","4","5"],"date-range":[],"datetime-picker":["0","1","2","3","4","5"],"datetime-range":[],"month-picker":["0","1","2","3","4","5"],"month-range":[],"year-picker":["0","1","2","3","4","5"],"year-range":[],"input-group":["0","1","6","7","8"],lookup:["0","1"],"number-range":[],"number-spinner":["0"," 1","2","3","4","5"],"radio-group":["0"],text:["0","1"," 6","7","8"]};function Aa(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(Ha[c]);return Ra.filter(f=>s.has(f.value))}return{getCompareOperators:r}}function ro(){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:Vt.Value,value:new Bt,relation:0,conditionId:Date.now()}}function a(w,x){return{relation:w,items:[],children:[],path:[],groupId:++i,level:x}}function l(){const w=Object.assign({},e.value);o.forEach((x,v)=>{x.groupId===w.groupId&&o.set(v,w)}),t.forEach((x,v)=>{x.groupId===w.groupId&&t.set(v,w)}),e.value=w}function c(w){const x=new Map;let v=0;return w.forEach((F,V)=>{var I,E;if(v+=((I=F.lBracket)==null?void 0:I.length)||0,x.set(V,v),v-=((E=F.rBracket)==null?void 0:E.length)||0,v<0)throw new Error("The right bracket is out of range.")}),x}function s(w,x,v,F,V){for(let I=0;I<x;I++){const E=w+(I+1),B=a(V,E);v.children.push(B),o.set(B.groupId,v),v=v.children[v.children.length-1],F.push(v)}return v}function u(w,x,v,F,V){for(let $=x;$<=0;$++)F.pop();const I=F[F.length-1];if(!I)throw new Error("The group path is out of range");const E=w+x,B=a(V,E);return I.children.push(B),o.set(B.groupId,I),v=I.children[I.children.length-1],F.push(v),v}function f(w,x,v,F){v.pop();const V=v[v.length-1],I=a(F,w);return V.children.push(I),o.set(I.groupId,V),x=V.children[V.children.length-1],v.push(x),x}function d(w,x,v,F,V,I){let E=w[w.length-1];if(!E)throw new Error("The group path is out of range");const B=x.get(F)||0,$=x.get(v)||0;if(v<0||v===F)return w[w.length-1];const O=B-$,L=V&&V.relation!==void 0?V.relation:1;return E=O>0?s($,O,E,w,L):E,E=O<0?u($,O,E,w,L):E,E=O===0&&$>0&&B>0&&V&&I&&!!V.rBracket&&!!I.lBracket?f($,E,w,L):E,E}function p(w){const v={relation:w.length&&w[0].relation!==void 0?w[0].relation:1,items:[],children:[],path:[],groupId:0,level:0},F=[v],V=c(w);return w.forEach((I,E)=>{const B=E-1,$=w[B],O=d(F,V,B,E,$,I);O.items.push(I),t.set(I.conditionId,O)}),e.value=v,v}function y(){const w=r();t.set(w.conditionId,e.value),e.value.items.push(w)}function b(w){if(!w)return;const x=t.get(w.conditionId);if(x){const v=x.items.findIndex(V=>V.conditionId===w.conditionId)+1,F=r();t.set(F.conditionId,x),x.items.splice(v,0,F),l()}}function k(w,x,v,F){w.reduce((V,I)=>{const E=I.conditionId!==void 0,B=I.groupId!==void 0;if(E){const $=I;v.push($),V.items.set($.conditionId,$)}if(B){const $=I;F.push($),V.groups.set($.groupId,$)}return V},x)}function T(w,x,v,F,V){w&&(w.items=x.length?w.items.filter(I=>!v.has(I.conditionId)):w.items,w.children=F.length?w.children.filter(I=>!V.has(I.groupId)):w.children)}function g(w,x,v){x.forEach(F=>{w.items.push(F),t.set(F.conditionId,w)}),v.forEach(F=>{w.children.push(F),o.set(F.groupId,w)})}function C(w){const x=w[0],v=x.conditionId!==void 0?t.get(x.conditionId):o.get(x.groupId),F={items:new Map,groups:new Map},V=[],I=[];if(v){k(w,F,V,I),T(v,V,F.items,I,F.groups);const E=a(v.relation,v.level+1);g(E,V,I),v.children.push(E),o.set(E.groupId,v),l()}}function S(w){const x=[...w.items],v=[...w.children],F=o.get(w.groupId);F&&(F.children=F.children.filter(V=>V.groupId!==w.groupId),o.delete(w.groupId),x.forEach(V=>{F.items.push(V),t.set(V.conditionId,F)}),v.forEach(V=>{F.children.push(V),o.set(V.groupId,F)}),l())}function h(w){w.relation=w.relation===1?2:1,l()}let _;function N(w){const{relation:x}=w;return(w.children&&w.children.length?w.children.map((F,V,I)=>{const E=_(F);return E[0].lBracket=(E[0].lBracket||"")+"(",E[E.length-1].rBracket=(E[E.length-1].rBracket||"")+")",E[E.length-1].relation=V<I.length-1?x:0,E}):[]).flat()}_=(w=e.value)=>{const{relation:x}=w,v=w.items.map((V,I,E)=>(V.lBracket=I===0?"(":"",V.rBracket=I===E.length-1?")":"",V.relation=I<E.length-1?x||1:0,V)),F=N(w);return[...v,...F]};function m(w){const x=w||e.value;if(x.children.length&&x.children.forEach(v=>{m(v)}),x.level===0&&!x.items.length&&x.children.length===1){const v=x.children[0];e.value.relation=v.relation,S(v)}else x.items.length===0&&x.children.length<=1&&S(x)}function M(w){const x=t.get(w.conditionId);x&&(x.items=x.items.filter(v=>v.conditionId!==w.conditionId),t.delete(w.conditionId),m(),l())}return{addCondition:y,changeGroupRelation:h,conditionGroupMap:t,getConditions:_,group:C,groupParentMap:o,insertConditionTo:b,loadConditionGroup:p,refresh:l,removeCondition:M,rootGroup:e,unGroup:S}}function La(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 C=c.level<=g.level?c:g,S=c.level>g.level?c:g;const h=[];for(;S&&C&&S!==C;)S.level>C.level?(h.push(S),S=l.get(S.groupId)):S.level===C.level&&(C=l.get(C.groupId),C&&h.unshift(C));return h}function f(g){r.value.add(g.groupId),g.items.forEach(C=>i.value.add(C.conditionId)),g.children.forEach(C=>f(C))}function d(g){const{conditionId:C}=g;i.value.add(C),c=i.value.size===0?a.get(C):c;const S=a.get(g.conditionId);u(S).forEach(_=>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 C=l.get(g.groupId);C&&r.value.has(C.groupId)&&y(C)};s=function(g){const{conditionId:C}=g;if(i.value.has(C)&&i.value.delete(C),r.value.size>0){const S=a.get(C);S&&r.value.has(S.groupId)&&y(S)}};function b(g){const{conditionId:C}=g;i.value.size===0&&(c=a.get(C)),i.value.has(C)?s(g):d(g)}function k(){const g=[];return c&&(c.items.filter(C=>i.value.has(C.conditionId)).forEach(C=>g.push(C)),c.children.filter(C=>r.value.has(C.groupId)).forEach(C=>g.push(C))),g}function T(){i.value.clear(),r.value.clear()}return{clear:T,getSelectedGroupItem:k,selectedItems:i,toggleSelect:b}}const Qt=n.defineComponent({name:"FConditionList",props:$n,emits:["valueChange","labelCodeChange","compareTypeChange"],setup(e,t){const o=n.ref(e.key),i=n.ref(e.conditions),r=Un(e),{convertToSingleControl:a,fields:l,fieldMap:c,loadFieldConfigs:s}=r,u=ro(),{addCondition:f,changeGroupRelation:d,getConditions:p,group:y,insertConditionTo:b,loadConditionGroup:k,refresh:T,removeCondition:g,rootGroup:C,unGroup:S}=u,{createConditionValue:h}=zn(),_=La(e,t,u),{selectedItems:N,toggleSelect:m}=_,{getCompareOperators:M}=Aa(e,t,r);s(!1),l.value=a(l.value),k(i.value);function w(Q){var le;const ne=((le=c.get(Q.fieldCode))==null?void 0:le.editor)||{type:"text"};Q.value=h(ne.type,void 0),t.emit("labelCodeChange",Q)}function x(Q,ne){t.emit("compareTypeChange",ne)}function v(){}t.expose({getConditions:p});function F(Q,ne){t.emit("valueChange",Q,ne)}function V(Q){return n.createVNode("div",{class:"condition-list-item-type mr-3"},[n.createVNode(At,{"value-field":"labelCode","text-field":"name","id-field":"id",data:l.value,modelValue:Q.fieldCode,"onUpdate:modelValue":ne=>Q.fieldCode=ne,onChange:ne=>w(Q)},null)])}function I(Q){return n.createVNode("div",{class:"condition-list-item-compare mr-3"},[n.createVNode(At,{"value-field":"value","text-field":"name","id-field":"id",data:M(Q),modelValue:Q.compareType,"onUpdate:modelValue":ne=>Q.compareType=ne,onChange:ne=>x(ne,Q)},null)])}function E(Q){var ne;return n.createVNode("div",{class:"condition-list-item-control mr-3"},[n.createVNode(ba,{editor:(ne=c.get(Q.fieldCode))==null?void 0:ne.editor,showLabel:!1,modelValue:Q.value.value,"onUpdate:modelValue":le=>Q.value.value=le,onChange:le=>{F(le,Q)}},null)])}function B(Q){return[n.createVNode("div",{class:"condition-list-item-extend"},[n.createVNode("span",{class:"f-icon f-icon-plus-sm mr-2",onClick:()=>b(Q)},null),n.createVNode("span",{class:"f-icon f-icon-minus-sm",onClick:()=>g(Q)},null)]),n.createVNode("div",{class:"custom-control custom-checkbox"},[n.createVNode("input",{title:"selection",class:"custom-control-input",type:"checkbox",checked:N.value.has(Q.conditionId)},null),n.createVNode("label",{class:"custom-control-label",onClick:()=>m(Q)},null)])]}function $(Q){return Q.items.map(ne=>n.createVNode("div",{class:"condition-list-item",key:ne.conditionId},[V(ne),I(ne),E(ne),B(ne)]))}function O(Q){return n.createVNode("div",{class:"condition-list-relation"},[n.createVNode("span",{class:"condition-list-relation-close f-icon-filter-cancel btn-link",onClick:()=>S(Q)},null),n.createVNode("span",{class:"condition-list-relation-text btn-link",onClick:()=>d(Q)},[Q.relation===1?"与":"或"])])}function L(Q){return n.createVNode("div",{class:"condition-list-content"},[n.createVNode("div",{class:"condition-list-content-group"},[$(Q),Q.children&&Q.children.map(ne=>L(ne))]),O(Q)])}function H(){y(_.getSelectedGroupItem()),_.clear()}function U(){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:v},[n.createTextVNode("重置")])])}return()=>n.createVNode("div",{class:"condition-list",key:o.value},[n.createVNode("div",{class:"condition-list-body"},[L(C.value)]),U()])}});Qt.install=e=>{e.component(Yn.name,Yn).component(Qt.name,Qt)};const Ga=["equal","notEqual","greaterThan","greaterThanOrEqual","lessThan","lessThanOrEqual","contain","startWidth","endWidth","in","notIn"],Wa={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},qa={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},za={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}},Ua={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},Ya={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}},Xa=new Map([["boolean",qa],["datetime",za],["enum",Ua],["number",Ya],["text",Wa]]);function ao(){const e=n.ref([]),t=new Map,{loadConditionGroup:o}=ro();function i(T,g){switch(T){case"check-box":return new On({value:g});case"combo-list":return new Rn({value:g});case"combo-lookup":return new jn({value:g});case"input-group":return new Bt({value:g});case"date-picker":return new Pn({value:g});case"date-range":return new Et({value:g});case"datetime-picker":return new Dn({value:g});case"datetime-range":return new Et({value:g});case"lookup":return new Hn({value:g});case"month-picker":return new An({value:g});case"month-range":return new Ln({value:g});case"number-range":return new Gn({value:g});case"number-spinner":return new Wn({value:g});case"radio-group":return new qn({value:g});default:return new Bt({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(T){var C;const g=T.dataType||"string";return((C=T.editor)==null?void 0:C.type)||r.get(g)||"text"}function c(T){var x,v,F,V,I;const g=`field_filter_${T.field}`,C=Date.now(),S=T.field,h=((x=T.column)==null?void 0:x.title)||"",_=((v=T.column)==null?void 0:v.dataType)||"string",N=a.get(_)||tt.Equal,m=((V=(F=T.column)==null?void 0:F.editor)==null?void 0:V.type)||r.get(_)||"text",M=i(m,(I=T.column)==null?void 0:I.filter),w=m==="lookup"||m==="combo-lookup"?Vt.SmartHelp:m==="combo-list"?Vt.Enum:Vt.Value;t.set(g,{id:g,fieldCode:S,fieldName:h,compareType:N,valueType:w,value:M,conditionId:C}),e.value=Array.from(t.values())}function s(T){const g=`field_filter_${T.field}`;t.delete(g),e.value=Array.from(t.values())}function u(T){t.delete(T),e.value=Array.from(t.values())}function f(){t.clear(),e.value=[]}function d(T){const{valueType:g}=T.value,C=T.compareType||"0",S=Ga[Number(C)];return Xa.get(g)[S]}function p(T){const g=T.relation===2?0:1,C=T.items.map(h=>{const _=d(h);return m=>_(m,h.fieldCode,h.value.getValue())}),S=T.children&&T.children.length?T.children.map(h=>p(h)):[];return{relation:g,filterFunctions:C,children:S}}function y(){const T=o(e.value);return p(T)}function b(T,g){const C=g.filterFunctions.map(h=>h(T)),S=g.children.map(h=>b(T,h));return g.relation===1?C.every(h=>h)&&S.every(h=>h):C.includes(!0)||S.includes(!0)}function k(T){const g=y();return b(T,g)}return{addColumnFilter:c,apply:k,clearCondition:f,conditions:e,getFilterEditorType:l,removeColumnFilter:s,removeCondition:u}}function lo(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 so(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),b=n.computed(()=>i.value.leftColumnsWidth),k=n.computed(()=>i.value.rightColumnsWidth),T=((it=e.rowOption)==null?void 0:it.height)||28,g=n.ref(0),C=n.ref(0);let S=0,h=a.value-1;const _=n.ref(0),N=n.ref(0),m=n.ref(0),M=n.ref(e.virtualized),w=24,x=1.5;let v;function F(){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*T?P.length*T:(W.__fv_data_position__||0)+(W.__fv_data_height__||0)+Math.max(P.length-1-d.value,0)*T}const V=n.computed(()=>{const P=F(),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<w;)K*=x,me=Math.floor(K*N.value);return me}),I=n.computed(()=>Math.floor(m.value/Math.max(y.value,m.value)*_.value)),E=0,B=0,$=n.computed(()=>_.value-(b.value+y.value+k.value+c.value));function O(P){const K=Math.floor(P/T)+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 Be=W-P+1;if(Be<l+a.value+l){const Ne=l+a.value+l-Be,Ce=W+Ne<=K,Ee=0+Ne<=P;if(Ce)be+=Ne,h=be;else if(Ee)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=e.pagination)!=null&&Fe.enable?0:Math.max(S-l,0),me=W[W.length-1].__fv_visible_index__,be=(Te=e.pagination)!=null&&Te.enable?W.length-1:Math.min(h+l,me),{actualStart:Be,actualEnd:Ne}=L(K,be,me),Ce=W[Be-1],Ee=f(Be,Ne,Ce,P);Ee.length&&(o.value=[...Ee])}const U=n.computed(()=>F()>N.value),Q=n.computed(()=>Math.floor(y.value)>m.value);function ne(P,W){let K=P;const me=K>E,be=U.value;be&&K<N.value-W&&(K=N.value-W),(!be||me)&&(K=E),g.value!==K&&(g.value=K)}function le(){M.value&&(S=O(Math.abs(g.value)),h=S+a.value-1,(S<p.value||h>d.value-l/2)&&H())}function D(P){let W=g.value+P;W>E&&(W=E);const K=F();ne(W,K),le()}function Z(P){if(!Q.value){C.value=0;return}let W=C.value+P;W>B&&(W=B),W<$.value&&(W=$.value),C.value!==W&&(C.value=W)}function ue(){Math.abs(C.value)+m.value>y.value&&(C.value=Math.min(m.value-y.value,0))}function ee(){g.value=0,S=0,h=a.value-1,H()}function A(){const P=F();ne(g.value,P)}n.watch([m,y],()=>{Z(0)});function z(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||!U.value)return;P.preventDefault(),P.stopPropagation();const{deltaX:W,deltaY:K}=z(P);D(K),Z(W)}const fe=n.computed(()=>({height:`${s.value.length*T}px`,width:`${b.value}px`,transform:`translateY(${g.value}px)`})),je=n.computed(()=>({transform:`translateY(${g.value}px)`})),Pe=n.computed(()=>({height:`${s.value.length*T}px`,width:`${y.value}px`,transform:`translate(${C.value}px, ${g.value}px)`})),_e=n.computed(()=>({transform:`translate(${C.value}px, ${g.value}px)`})),Se=n.computed(()=>({height:`${s.value.length*T}px`,width:`${k.value}px`,transform:`translateY(${g.value}px)`})),ke=n.computed(()=>({transform:`translateY(${g.value}px)`})),De=n.computed(()=>({height:`${s.value.length*T}px`,width:`${c.value}px`,transform:`translateY(${g.value}px)`})),Ie=n.computed(()=>({width:`${b.value}px`})),pe=n.computed(()=>({transform:`translateX(${C.value}px)`})),j=n.computed(()=>({width:`${k.value}px`})),ie=n.computed(()=>{const P=F();return ne(g.value,P),g.value/(N.value-P)*(N.value-V.value)}),te=n.computed(()=>({height:`${V.value}px`,top:`${ie.value}px`})),ge=n.computed(()=>C.value/$.value*(_.value-I.value)),Me=n.computed(()=>({width:`${I.value}px`,left:`${ge.value}px`})),Le=n.ref(!1),ze=n.ref(-1),Ue=n.ref(-1),Qe=n.ref();function Ze(P){if(Le.value&&Ue.value!==-1){const W=Ue.value-P.pageX,K=_.value-I.value;if(Math.abs(W)<=K){const me=W/(m.value-I.value)*(y.value-m.value);Z(me),Ue.value=P.pageX}}}function Ke(P){if(Le.value&&ze.value!==-1){const W=ze.value-P.pageY,K=F(),me=K-V.value;if(Math.abs(W)<=me){const be=W/(N.value-V.value)*(K-N.value);D(be),ze.value=P.pageY}}}function nt(P){Le.value=!1,ze.value=-1,Ue.value=-1,document.removeEventListener("mouseup",nt),document.removeEventListener("mousemove",Ze),v&&document.removeEventListener("mousemove",v),document.body.style.userSelect="",Qe.value&&(Qe.value.style.opacity=null)}function ot(P,W,K){var Be;Le.value=!0;const me=(Be=P.target)==null?void 0:Be.parentElement;me&&(me.style.opacity="1",Qe.value=me);const be=K==="horizontal"?Ze:Ke;K==="vertical"&&(ze.value=P.pageY),K==="horizontal"&&(Ue.value=P.pageX),W.value&&(v||(v=$e.throttle(be,100)),W.value,document.addEventListener("mousemove",v),document.addEventListener("mouseup",nt),document.body.style.userSelect="none")}return{dataGridWidth:_,fitHorizontalScroll:ue,gridDataStyle:Pe,gridHeaderColumnsStyle:pe,gridMergedDataStyle:_e,gridSideStyle:De,horizontalScrollThumbStyle:Me,leftFixedGridDataStyle:fe,leftFixedGridHeaderColumnsStyle:Ie,leftFixedGridMergedDataStyle:je,offsetX:C,offsetY:g,onMouseDownScrollThumb:ot,onWheel:ye,reCalculateVisualDataRows:H,resetScroll:ee,rightFixedGridDataStyle:Se,rightFixedGridHeaderColumnsStyle:j,rightFixedGridMergedDataStyle:ke,shouldShowHorizontalScrollbar:Q,shouldShowVirticalScrollbar:U,updateVirticalScroll:A,updateVisibleRowsOnLatestVisibleScope:le,verticalScrollThumbStyle:te,viewPortWidth:m,viewPortHeight:N}}function co(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(T){let g=f;return T.__fv_data_grid_group_row__&&(g=d),T.__fv_data_grid_group_summary__&&(g=p),g}function b(T,g,C,S){const{visibleDataItems:h}=o,_=[],N=h.value;if(N.length>0){const m=S?Date.now().toString():"";for(let M=T,w=0;M<=g;M++,w++){const x=N[M],v=N[M-1]||C,F=_[w-1],V=v?(v.__fv_data_position__||0)+(v.__fv_data_height__||0):0,E=y(x)(x,v,F,M,V,t.value,_);E.refreshKey=m,_.push(E)}}return u.value=_.length>0?_[0].index:0,s.value=_.length>0?_[_.length-1].index:0,_}function k(T,g,C){const S=g.groupField||"",{groupValue:h}=g;o[T](S,h);const{dataView:_}=o,N=C[0].index,m=Math.min(N+i.value+r+1,_.value.length-1);return b(N,m)}return{getVisualData:b,maxVisibleRowIndex:s,minVisibleRowIndex:u,toggleGroupRow:k}}function uo(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 Ka(){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 Ja(){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===qt.TEXT)return t(l,i);if(a.type===qt.IMAGE)return e(l,i)}return{renderBooleanColumn:o}}function Qa(){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 Za(){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 el(){const{renderBooleanColumn:e}=Ja(),{renderEnumColumn:t}=Ka(),{renderNumberColumn:o}=Za(),{renderDateColumn:i}=Qa();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 fo(e,t,o){var T;const i=n.ref(e.mergeCell);(T=n.ref(e.rowOption).value)!=null&&T.wrapContent;const{updateVisualInfomation:a}=o,{renderCommandColumn:l}=kr(),{renderFormatColumn:c}=el();function s(g,C,S,h,_,N=1){const m={colSpan:N,rowSpan:1,index:S,field:g,data:xe.resolveField(h,g),editingData:xe.resolveField(h,g),parent:_,mode:C,align:"left",valign:"start",showEllipsis:!0,getEditor:M=>M.data,setRef:M=>a(M,m,h),update:()=>{},accept:()=>{},cancel:()=>{},updateData:()=>{}};return m}function u(g,C,S){return g.getEditor=h=>t.getEditor(h,C,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,C.field),g.data=xe.resolveField(S,C.field)},g.cancel=()=>{g.editingData=g.data},g.updateData=h=>{xe.setFieldValue(xe.resolveField(h,C.field),S,C.field),g.data=xe.resolveField(S,C.field),g.editingData=xe.resolveField(S,C.field)},g}function f(g,C){C.dataType==="commands"?g.formatter=(S,h)=>l(C,h):C.formatter&&(g.formatter=(S,h)=>typeof C.formatter=="function"?C.formatter(S,h):c(C.dataType,C,h))}function d(g,C,S){const h=C&&C.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,C,S){i.value&&d(g,C,S.field)}function y(g,C){C.showEllipsis!==void 0&&(g.showEllipsis=C.showEllipsis),g.column=C,g.align=C.align||"left",g.valign=C.valign||"middle"}function b(g,C,S,h){y(g,C),u(g,C,h),f(g,C),p(g,S,C)}function k(g,C,S,h,_){const N=g.readonly?Re.readonly:Re.editable,m=s(g.field,N,C,S,h);return b(m,g,_,S),m}return{createCellByColumn:k,createCellByField:s,updateCellByColumn:b}}function po(e,t,o,i,r,a){var C,S;const l=n.ref(e.rowOption),c=((C=l.value)==null?void 0:C.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,_,N,m)=>{xe.setFieldValue(xe.resolveField(h,m),_,m),N.data[m].data=xe.resolveField(_,m),N.data[m].editingData=xe.resolveField(_,m)};function b(h,_,N,m,M,w,x){var D,Z,ue;const{__fv_data_grid_group_field__:v,__fv_data_grid_group_value__:F,__fv_data_index__:V}=N,I=N.__fv_data_grid_group_layer__||(N.__fv_parents__?(D=N.__fv_parents__)==null?void 0:D.size:0)||0,E=typeof N.parent=="number"?Number(N.parent):-1,B=N.__fv_data_grid_group_collapse__||N[f.value],$=N.__fv_visible__===void 0?!0:N.__fv_visible__,O=N.__fv_checked__,L=N.__fv_indeterminate__,H=N.__fv_disabled__||N[((Z=e.rowOption)==null?void 0:Z.disabledField)||"disabled"],U=x==null?void 0:x.find(ee=>ee.raw[u.value]===N.parent),Q=U&&U.collapse;m&&(m.parent,N.parent);const ne=Q||U&&!U.visible,le={collapse:B,data:{},dataIndex:V,groupField:v,groupValue:F,layer:I,index:_,parentIndex:E,pre:m,top:w,type:h,raw:N,checked:O,disabled:H,indeterminate:L,setRef:ee=>{le.ref=ee},visible:$&&!ne,status:at.initial,updateCell:(ee,A)=>{y(ee,N,le,A)},updateCells:(ee,A)=>{A.forEach(z=>{y(ee,N,le,z)})}};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 k(h,_,N,m,M,w,x){const v=b(gt.data,M,_,N,m,w,x);return h.forEach((F,V)=>{v.data[F.field]=p(F,M,_,v,m)}),v}function T(h,_,N,m,M){return Object.assign(h,{index:_,dataIndex:N,top:m,pre:M})}function g(h,_,N,m,M,w,x){const v=h.__fv_data_index__,F=h[u.value],V=t.getEditingSnapshot(F);return V===null?k(w,h,_,N,m,M,x):T(V,m,v,M,_)}return{createEmptyRow:b,createNewRowFromDataItem:k,renderDataRow:g}}function tl(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,b,k){if(u.value){const T=p.data[y];let g=T.colSpan;const C=s.value.reduce((S,h)=>(S.set(h,!0),S),new Map);k.reduce((S,h,_)=>{if(C.has(h.field)){const N=l(h.field,Re.readonly,_,b,p);p.data[h.field]=N,g-1>_&&(g=_)}return S},p),T.colSpan=g}}function d(p,y,b,k,T,g,C){const S=p.__fv_data_grid_group_field__,h=c(gt.group,k,p,y,b,T);return h.data[a.value]=l(a.value,Re.readonly,-1,p,h,0),h.data[S]=l(S,Re.readonly,1,p,h,g.length),f(h,S,p,g),h}return{renderGroupRow:d}}function nl(e,t,o,i){const{idField:r}=t,{createCellByField:a}=o,{createEmptyRow:l}=i;function c(s,u,f,d,p,y,b){const k=s.__fv_data_grid_group_field__,T=l(gt.summary,d,s,u,f,p);return T.data[r.value]=a(r.value,Re.readonly,-1,s,T),T.data[k]=a(k,Re.readonly,1,s,T,y.length),T}return{renderSummaryRow:c}}function mo(e,t,o,i){var v;const{idField:r}=o,a=n.ref(e.editable),l=n.ref(e.editOption),c=n.ref(((v=e.rowOption)==null?void 0:v.wrapContent)||!1),{onClickRow:s}=i;n.watch(()=>e.editable,()=>{a.value=e.editable}),n.watch(()=>{var F;return(F=e.editOption)==null?void 0:F.editMode},F=>{l.value.editMode=F});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 b(F){return d&&d.raw[r.value]===F?d:null}const k=n.reactive({});function T(F,V,I={}){F.mode=Re.editing,f=F,d=V,p=xe.resolveField(V==null?void 0:V.raw,F.field),y=I}function g(F){F.accept(),F.mode=Re.editable,f=null,t.emit("endEditCell",{cell:F,row:d,newValue:xe.resolveField(d==null?void 0:d.raw,F.field),oldValue:p,column:y,editor:k})}function C(F){if(document.body.classList.contains("lookup-modal-open"))return;const I=F.target.closest(".fv-grid-cell");f&&f.ref&&f.ref===I||(f&&(g(f),d&&(d=void 0)),document.body.removeEventListener("click",C))}function S(F,V,I,E={}){F.stopPropagation(),s(F,I),a.value&&l.value.editMode==="cell"&&V.mode===Re.editable&&(f&&g(f),Promise.resolve().then(()=>$e.isUndefined(e.beforeEditCell)?!0:typeof e.beforeEditCell=="function"?e.beforeEditCell({row:I,cell:V,rawData:I.raw,column:E}):e.beforeEditCell).then(B=>{B&&(T(V,I,E),document.body.removeEventListener("click",C),document.body.addEventListener("click",C))}))}function h(F){Object.values(F.data).filter(V=>V.mode===Re.editable&&V.field!=="__commands__").forEach(V=>{V.mode=Re.editing}),F.status=at.editing,d=F}function _(F,V){Object.values(F.data).filter(I=>I.mode===Re.editing).forEach(I=>{V?I.accept():I.cancel(),I.mode=Re.editable}),F.status=at.initial,d===F&&(d=void 0)}function N(F){a.value&&l.value.editMode==="row"&&d!==F&&(d&&_(d,!1),h(F))}function m(F){_(F,!0),F.status=at.initial}function M(F){_(F,!1),F.status=at.initial}function w(F,V,I){const E=V.dataType,B=V.editor||{type:u.get(E)||"input-group"};return!c.value&&B.type==="text"&&(B.type="input-group"),B?(B.context={rowData:I.raw,column:V,cell:F,editor:k},n.createVNode(Ht.FDynamicFormInput,{focusOnCreated:e.focusOnEditingCell,selectOnCreated:e.selectOnEditingCell,editor:B,modelValue:F.editingData,"onUpdate:modelValue":$=>F.editingData=$,id:V.id},null)):F.data}function x(){f&&g(f)}return{onClickCell:S,onEditingRow:N,acceptEditingRow:m,cancelEditingRow:M,getEditingSnapshot:b,getEditor:w,endEditCell:x}}function ho(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 go(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 b(m){return d.value&&(c.value?u.value.includes(m.raw[r.value]):m.raw[r.value]===a.value)}function k(m){var w;const M={"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":b(m),"fv-grid-row-odd":m.dataIndex%2>0,"fv-grid-row-even":m.dataIndex%2===0,"fv-grid-disabled":m.disabled};if((w=e.rowOption)!=null&&w.customRowStyle){const x=e.rowOption.customRowStyle(m.raw)||{};return Object.assign({},M,x)}return M}function T(m){var w;const M={"fv-grid-cell":!0};if((w=e.rowOption)!=null&&w.customCellStyle){const x=e.rowOption.customCellStyle(m)||{};return Object.assign({},M,x)}return M}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 C(m,M){if(M.disabled)return;c.value&&m.shiftKey||l.value?f(M):s(M),g(M)}function S(m){m.disabled||(a.value=m.raw[r.value],g(m))}function h(m,M){}function _(m,M){}function N(m){var w;const M={"fv-grid-sidebar-row":!0,"fv-grid-sidebar-row-hover":m.index===y.value,"fv-grid-sidebar-row-selected":b(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((w=e.rowOption)!=null&&w.customRowStyle){const x=e.rowOption.customRowStyle(m.raw)||{};return Object.assign({},M,x)}return M}return{clickRowItem:S,gridCellClass:T,gridRowClass:k,onClickRow:C,onMouseoverRow:h,sidebarRowClass:N,onMouseoutRow:_}}function yo(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,(D,Z)=>{D!==Z&&(d.value=D)});function y(){return t.getSelectionItems(p.value)}function b(){const D=i.value.reduce((ue,ee)=>(ue.set(ee.raw[a.value],ee),ue),new Map);return p.value.map(ue=>D.get(ue)).filter(ue=>!!ue)}const k=n.computed(()=>c.value&&s.value),T=n.computed(()=>!!e.hierarchy),g=n.computed(()=>{const D=f.value&&u.value==="DependOnCheck";return k.value&&D}),C=n.computed(()=>k.value&&!f.value),S=n.computed(()=>k.value&&f.value&&u.value==="OnCheckAndClick");n.computed(()=>S.value);function h(){const D=t.getSelectionItems(p.value);r.emit("selectionChange",D)}function _(D){r.emit("unSelectItem",D)}function N(){i.value.forEach(Z=>{Z.checked=!1,Z.indeterminate=!1,Z.raw.__fv_checked__=!1,Z.raw.__fv_indeterminate__=!1}),b().forEach(Z=>{Z.checked=!0,Z.raw.__fv_checked__=!0})}n.watch(()=>i.value,()=>{N()}),n.watch(()=>e.selectionValues,D=>{p.value=D,N()},{immediate:!0}),n.watch(()=>e.selection,D=>{s.value=!!D.multiSelect,u.value=D.multiSelectMode||"DependOnCheck",f.value=!!D.showCheckbox});const m=n.computed(()=>!s.value);function M(D){return D.raw[a.value]}function w(D){return p.value.findIndex(ue=>ue===M(D))}function x(){b().forEach(ue=>{ue.checked=!1}),t.getSelectionItems(p.value).forEach(ue=>{ue.__fv_checked__=!1}),p.value=[],l.value=""}function v(D){const Z=D.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()),D.checked=!0,D.indeterminate=!1}function F(D){const Z=D.raw;Z.__fv_checked__=!1,Z.__fv_indeterminate__=!1,p.value=p.value.filter(ue=>ue!==Z[a.value]),D.checked=!1,D.indeterminate=!1}function V(D){v(D),l.value=D.raw[a.value]}function I(D){F(D),l.value=""}function E(D){const Z=D.raw;Z.__fv_checked__=!1,Z.__fv_indeterminate__=!0,p.value=p.value.filter(ue=>ue!==Z[a.value]),D.checked=!1,D.indeterminate=!0}function B(D){m.value&&x(),D.checked?F(D):v(D),h()}function $(D){m.value&&x(),D.checked?I(D):V(D),h(),D.checked||_(D)}function O(D){D.raw[a.value]!==l.value&&(x(),V(D),h())}function L(D){const Z=i.value.find(ue=>ue.raw[a.value]===D);Z&&O(Z)}function H(D){const Z=i.value.filter(ue=>D.includes(ue.raw[a.value]));Z&&Z.length&&(x(),Z.forEach(ue=>{V(ue)}),h())}function U(D){for(const Z of D)if(p.value.includes(Z)){const ue=i.value.find(ee=>ee.raw[a.value]===Z);ue&&I(ue)}}function Q(){i.value.forEach(D=>V(D)),h()}function ne(){p.value.splice(0,p.value.length),i.value.forEach(D=>{const Z=D.raw;Z.__fv_checked__=!1,Z.__fv_indeterminate__=!1,D.checked=!1,D.indeterminate=!1}),h()}function le(){return i.value.find(D=>D.raw[a.value]===l.value)}return{clearSelection:x,currentSelectedDataId:l,enableMultiSelect:s,enableSelectRow:c,findIndexInSelectedItems:w,getSelectedItems:y,getSelectionRow:le,indeterminate:E,isSelectingHirarchyItem:T,multiSelectMode:u,multiSelectOnClickRow:S,multiSelectOnClickRowWithShift:C,multiSelectOnlyOnCheck:g,select:V,selectAll:Q,selectedValues:p,selectItem:O,selectItemById:L,selectItemByIds:H,showCheckBox:f,showSelectAll:d,toggleSelectItem:$,toggleSelectItemWithoutRow:B,unSelect:I,unSelectAll:ne,unSelectItemByIds:U}}function vo(e,t){var T,g;const o=String(Date.now()),i=50,{showCheckBox:r,showSelectAll:a}=t,l=n.ref(((T=e.rowNumber)==null?void 0:T.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 C;return l.value?((C=e.rowNumber)==null?void 0:C.heading)??"序号":""}),d=n.computed(()=>(c.value&&!e.hierarchy?Number(u.value):0)+(l.value?Number(s.value):0));n.watch(()=>e.rowNumber,C=>{C&&C.enable!==void 0&&(l.value=C.enable),C&&C.width!==void 0&&(s.value=C.width)});function p(C){return{top:`${C.top}px`,width:`${d.value}px`,height:`${C.height||""}px`}}const y=n.computed(()=>({width:`${d.value}px`}));function b(C){return`${o}_${C.type}_r_${C.index}_${C.refreshKey||""}`}function k(C){return`${o}_${C.type}_r_${C.index}_${C.refreshKey||""}`}return{showRowNumer:l,showSidebarCheckBox:c,sidebarCellPosition:p,sidebarCornerCellStyle:y,sidebarTitle:f,sidebarWidth:d,rowKey:k,cellKey:b}}const ol={ascend:(e,t)=>e===t?0:e===!1?-1:1,decend:(e,t)=>e===t?0:e===!0?-1:1},il={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}},rl={ascend:(e,t)=>e===t?0:e<t?-1:1,decend:(e,t)=>e===t?0:e<t?1:-1},al={ascend:(e,t)=>e===t?0:e<t?-1:1,decend:(e,t)=>e===t?0:e<t?1:-1};function bo(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",ol],["datetime-sorter",il],["numeric-sorter",rl],["text-sorter",al]]);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&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 ll(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 sl(e,t,o,i,r,a,l,c,s,u,f,d,p,y,b){const{calculateCellPositionInRow:k,cellKey:T,cellPosition:g,rowKey:C,rowPosition:S,rowSpanCellPosition:h,groupCellPosition:_,summaryCellPosition:N}=l,{cellContentClass:m,cellContentPosition:M,cellContentClassWithEllipsis:w}=a,{collpaseGroupIconClass:x}=u,{gridCellClass:v,gridRowClass:F,onClickRow:V,onMouseoverRow:I,onMouseoutRow:E}=d,{onClickCell:B}=s,{toggleGroupRow:$}=p,{columnContext:O,hasLeftFixedColumn:L,hasRightFixedColumn:H}=c,{navigateOnKeyUp:U}=f,{gridDataStyle:Q,gridMergedDataStyle:ne,leftFixedGridDataStyle:le,leftFixedGridMergedDataStyle:D,rightFixedGridDataStyle:Z,rightFixedGridMergedDataStyle:ue}=y;function ee(j,ie){ie.collapse=!ie.collapse,b.value=$(ie.collapse?"collapse":"expand",ie,b.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:Le=>ee(Le,j)},[n.createVNode("span",{class:x(j)},null)]));const ge=j.data[j.groupField];te.push(n.createVNode("div",{ref:ge.setRef,key:T(j,j.layer+1),class:"fv-grid-cell",style:_(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:T(j,Me.index),class:"fv-grid-cell",style:g(Me,ie)},[Me.data]))})}return te}function z(j,ie){return j.layer>-1&&n.createVNode("div",{ref:j.setRef,key:C(j),class:F(j),style:S(j),onClick:te=>V(te,j),onMouseover:te=>I(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:T(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:C(j),class:F(j),style:S(j),onClick:te=>V(te,j),onMouseover:te=>I(te,j)},[ye(j,ie)])}function je(j,ie){return n.createVNode("div",{ref:j.setRef,key:C(j),class:F(j),style:S(j),onClick:te=>V(te,j),onMouseover:te=>I(te,j),onMouseout:te=>E(te,j)},[Object.values(j.data).filter(te=>ie[te.field]&&te.rowSpan===1).map(te=>n.createVNode("div",{ref:te.setRef,key:T(j,te.index),class:v(te),style:g(te,ie),onClick:ge=>B(ge,te,j,te.column),onKeyup:ge=>U(ge,te)},[n.createVNode("div",{class:m(te),style:M(te)},[n.createVNode("div",{class:w(te)},[te.data!=null&&t.slots.cellTemplate?t.slots.cellTemplate({cell:te,row:j}):te.mode===Re.editing?te.getEditor(te):te.formatter?te.formatter(te,j):te.data!=null?te.data.toString():te.data])])]))])}const Pe=[je,z,fe];function _e(j,ie){const te=k(j);return b.value.map(ge=>Pe[ge.type](ge,te))}function Se(j){const ie=k(j);return b.value.map(te=>Object.values(te.data).filter(ge=>ie[ge.field]&&ge.rowSpan>1).map(ge=>n.createVNode("div",{key:T(te,ge.index),class:"fv-grid-cell fv-grid-merged-cell",style:h(te,ge,ie)},[ge.data])))}function ke(){return n.createVNode("div",{ref:i,class:"fv-grid-content-left-fixed"},[n.createVNode("div",{class:"fv-grid-data",style:le.value},[_e(O.value.leftColumns.filter(j=>j.visible))]),n.createVNode("div",{class:"fv-grid-merge-date",style:D.value},[Se(O.value.leftColumns.filter(j=>j.visible))])])}function De(){return n.createVNode("div",{ref:o,class:"fv-grid-content-primary"},[n.createVNode("div",{class:"fv-grid-data",style:Q.value},[_e(O.value.primaryColumns.filter(j=>j.visible))]),n.createVNode("div",{class:"fv-grid-merge-date",style:ne.value},[Se(O.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(O.value.rightColumns.filter(j=>j.visible))]),n.createVNode("div",{class:"fv-grid-merge-date",style:ue.value},[Se(O.value.rightColumns.filter(j=>j.visible))])])}function pe(){const j=[];return L.value&&j.push(ke()),j.push(De()),H.value&&j.push(Ie()),j}return{renderDataArea:pe}}const yt=n.defineComponent({name:"FDataGrid",props:Wt,emits:["changed","clickRow","doubleClickRow","selectionChange","unSelectItem","enterUpInLastCell","pageIndexChanged","pageSizeChanged","beginEditCell","endEditCell"],setup(e,t){var Ct,wt;const i=((Ct=e.rowOption)==null?void 0:Ct.height)||28,r=n.ref(20),a=n.ref(e.columns),l=Y.useIdentify(e),c=n.ref(),s=n.ref(),u=n.ref(),f=n.ref(),d=n.ref(),p=n.ref([]),y=n.ref(!1),b=n.ref(((wt=e.rowOption)==null?void 0:wt.wrapContent)||!1),k=Y.useGroupData(e,l),T=Y.useFilter(),g=Y.useHierarchy(e),{showLoading:C,renderLoading:S}=Y.useLoading(e,c),h=Y.useDataView(e,new Map,T,g,l),_=Y.usePagination(e,h),{shouldRenderPagination:N}=_,m=Y.useSelection(e,h,l,p,t),M=n.computed(()=>e.disabled),w=n.computed(()=>Math.min(h.dataView.value.length,r.value));n.computed(()=>e.loadingConfig.message);const{containerStyleObject:x}=Y.useDataViewContainerStyle(e),v=Y.useCommandColumn(e),{applyCommands:F}=v;F(a);const V=Y.useColumn(e),I=Y.useSort(e),{applyColumnSorter:E,columnContext:B,updateColumnRenderContext:$}=V;E(h,I);const O=Y.useGroupColumn(e,B),L=Y.useRow(e,t,m,l),H=Y.useEdit(e,t,l,L),U=Y.useVisualDataBound(e),Q=Y.useVisualDataCell(e,H,U),ne=Y.useVisualDataRow(e,H,g,l,U,Q),le=Y.useVisualGroupRow(e,l,Q,ne),D=Y.useVisualSummaryRow(e,l,Q,ne),Z=Y.useVisualData(e,a,h,w,0,ne,le,D),{getVisualData:ue}=Z,ee=Y.useCellContentStyle(B),A=Y.useCellPosition(e,B),z=Y.useSidebar(e,m),{sidebarWidth:ye}=z,fe=Y.useVirtualScroll(e,h,p,B,Z,w,0,ye),{onWheel:je,dataGridWidth:Pe,viewPortHeight:_e,viewPortWidth:Se,resetScroll:ke,updateVisibleRowsOnLatestVisibleScope:De}=fe,Ie=Y.useFitColumn(e,B,s,Se,O),{calculateColumnsSize:pe}=Ie,j=Y.useFilterHistory(),ie=Y.useColumnFilter(s,d,h,j,fe),te=Y.useDragColumn(e,t,V,h,O,k,fe),ge=n.computed(()=>({"fv-grid":!0,"fv-grid-bordered":e.showBorder,"fv-grid-horizontal-bordered":e.showHorizontalLines,"fv-datagrid-strip":e.showStripe})),Me=n.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":y.value,"fv-grid-wrap-content":b.value})),{renderGridHeader:Le,renderGridColumnResizeOverlay:ze,shouldShowHeader:Ue}=Y.getColumnHeader(e,t,s,f,d,V,h,te,ie,T,j,Ie,O,m,z,I,fe,Se,p),{renderDataGridPagination:Qe}=Y.getPagination(e,t,h,fe,_),{renderDataGridSidebar:Ze}=Y.getSidebar(e,L,m,z,fe),{renderDisableMask:Ke}=Y.getDisableMask(),{renderDataGridSummery:nt}=Y.getSummary(e,h,V),{renderHorizontalScrollbar:ot}=Y.getHorizontalScrollbar(e,s,fe),{renderVerticalScrollbar:it}=Y.getVerticalScrollbar(e,s,fe),{renderFilterPanel:P}=Y.getFilterPanel(e,V,h,T,fe),{renderGroupPanel:W}=Y.getGroupPanel(e,h,te,k,fe);function K(){var ut,St;const he=Math.ceil(s.value.clientHeight/i);he>r.value&&(r.value=he,De()),_e.value=((ut=u.value)==null?void 0:ut.clientHeight)||0,Pe.value=((St=s.value)==null?void 0:St.clientWidth)||0,pe()}n.onMounted(()=>{s.value&&(r.value=Math.max(Math.ceil(s.value.clientHeight/i),r.value),p.value=ue(0,w.value+0-1),It.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)})),C.value&&S()}),n.onUnmounted(()=>{}),n.watch(Se,()=>{});function me(){h.insertNewDataItem(),ke()}function be(){h.insertNewDataItem(p.value.length),ke()}function Be(he){H.onEditingRow(he)}function Ne(he){h.removeDataItem(he),ke()}function Ce(he){h.removeDataItemById(he),ke()}function Ee(he){H.acceptEditingRow(he)}function Fe(he){H.cancelEditingRow(he)}function Te(){p.value.forEach((he,ut)=>{const St=p.value[ut-1];Object.keys(he.data).forEach(Vo=>{const ko=B.value.primaryColumnsMap.get(Vo);ko&&Q.updateCellByColumn(he.data[Vo],ko,St,he.raw)})})}function Ve(he){he&&(a.value=he,F(a),$(a.value),Te(),E(h,I),pe())}function Ge(he){he&&(ke(),h.load(he),p.value=ue(0,w.value+0-1))}function pt(he){_.updatePagination(he)}n.watch(()=>e.data,he=>{e.changePolicy==="default"&&Ge(he)},{deep:!0}),n.watch(()=>e.columns,he=>{Ve(he)});function R(he){m.selectItemById(he)}function G(he){const ut=p.value.find(St=>St.raw[l.idField.value]===he);ut&&L.clickRowItem(ut)}function J(he){m.selectItemByIds(he)}function de(){return p.value}function ve(he){return p.value.filter(ut=>he.includes(ut.raw[e.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:Be,acceptDataItem:Ee,cancelDataItem:Fe,selectItemById:R,selectItemByIds:J,updateColumns:Ve,updateDataSource:Ge,updatePagination:pt,getVisibleData:de,getVisibleDataByIds:ve,getSelectedItems:we,getSelectionRow:rt,endEditCell:Ye,clickRowItemById:G,clearSelection:lt,unSelectItemByIds:et};t.expose(He);const st=Y.useNavigation(e,t,He,V,H,p),{renderDataArea:Je}=sl(e,t,u,f,d,ee,A,V,H,k,st,L,Z,fe,p),We=n.computed(()=>!p.value||!p.value.length),{renderEmpty:kt}=Y.getEmpty(t);return()=>n.createVNode("div",{ref:c,class:ge.value,style:x.value,onWheel:je},[s.value&&P(),s.value&&W(),s.value&&Ue.value&&Le(),n.createVNode("div",{ref:s,class:Me.value,onMouseover:()=>y.value=!0,onMouseleave:()=>y.value=!1},[s.value&&Ze(p),s.value&&Je(),s.value&&We.value&&kt(),s.value&&ot(),s.value&&it()]),s.value&&nt(),N.value&&Qe(),ze(),M.value&&Ke()])}});class cl extends $t{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 dl(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 cl(f,t).getPropertyConfig(o)}return{canAccepts:a,checkCanDeleteComponent:l,checkCanMoveComponent:c,hideNestedPaddingInDesginerView:s,triggerBelongedComponentToMoveWhenMoved:i,triggerBelongedComponentToDeleteWhenDeleted:r,getPropsConfig:u}}const Zt=n.defineComponent({name:"FDataGridDesign",props:br,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=dl(r,i),l=Yt(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=ho(e),f=0,d=n.ref(),p=n.ref(),y=n.ref(e.showStripe),b=n.ref([]),k=n.ref(!1),T=n.ref(((Ie=e.rowOption)==null?void 0:Ie.wrapContent)||!1),g=ao(),C=lo(e),S=Bn(e,new Map,g,C,u),h=yo(e,S,u,b,t),_=n.computed(()=>S.totalItems.value<s?S.totalItems.value:s),{containerStyleObject:N}=Tn(e),m=kn(e),{applyCommands:M}=m;M(c);const w=Vn(e),x=bo(),{applyColumnSorter:v,columnContext:F,updateColumnRenderContext:V}=w;v(S,x);const I=In(e,F),E=go(e,t,h,u),B=mo(e,t,u,E),$=uo(e),O=fo(e,B,$),L=po(e,B,C,u,$,O),H=tl(e,u,O,L),U=nl(e,u,O,L),Q=co(e,c,S,_,f,L,H,U),{getVisualData:ne}=Q,le=vo(e,h),{sidebarWidth:D}=le;b.value=ne(0,_.value+f-1);const Z=so(e,S,b,F,Q,_,f,D),{onWheel:ue,dataGridWidth:ee,viewPortHeight:A,viewPortWidth:z}=Z,ye=oo(e,F,d,z,I),{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":k.value,"fv-grid-wrap-content":T.value})),{renderGridHeader:_e}=no(r,e,w,Z),{renderHorizontalScrollbar:Se}=Mn(e,d,Z);function ke(){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&&(It.useResizeObserver(d.value,ke),fe(),n.nextTick(()=>{d.value&&(ee.value=d.value.clientWidth),p.value&&(z.value=p.value.clientWidth,A.value=p.value.clientHeight)}))});function De(pe){pe&&(c.value=pe,M(c),V(c.value),v(S,x),fe())}return n.watch(()=>e.columns,pe=>{De(pe),Mt.value++}),n.watch(z,()=>{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:()=>{k.value=!0},onMouseleave:()=>{k.value=!1}},[Se()])])}}),ul={$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"]},Co={modelValue:{type:String,default:""},viewModelId:{Type:String,default:""},gridData:{Type:Object,default:null},gridType:{Type:String,default:"data-grid-column"},getLatestGridData:{Type:Function}},fl=Ae(Co,ul,bn,xn),pl=new Map([["appearance",mt]]);function ml(e,t,o){return t}const hl={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:[]}}}}}},gl={$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"]},wo={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}};Ae(wo,gl,pl,ml,hl);const yl=new Map([["appearance",mt]]);function vl(e,t,o){return t}const bl={$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"]},Cl={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:[]}}}}}},So={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}};Ae(So,bl,yl,vl,Cl);function wl(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 b=0;for(;b<p.length;){const k=p.indexOf(l,b);if(k===-1)break;y.push(k),b=k+l.length}return y.map(k=>{const T=new Range;return T.setStart(d,k),T.setEnd(d,k+l.length),T})}).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 xo(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),b=n.computed(()=>{var M,w;return((M=e.selection)==null?void 0:M.multiSelect)&&((w=e.selection)==null?void 0:w.showCheckbox)}),{onMouseenterItem:k,onMouseoverItem:T,onMouseoutItem:g}=a,{getKey:C,listViewItemClass:S,onCheckItem:h,onClickItem:_}=l,N=n.computed(()=>e.itemClass?{}:{margin:f.value==="small"?"0.25rem 0":"8px 0"});function m(M,w,x){return M.checked=c.findIndexInSelectedItems(M)>-1,n.createVNode("li",{class:S(M,w),id:C(M,w),key:C(M,w),onClick:v=>_(v,M,w),onMouseenter:v=>k(v,M,w),onMouseover:v=>T(v,M,w),onMouseout:v=>g(v,M,w)},[b.value&&n.createVNode("div",{class:"f-list-select",onClick:v=>v.stopPropagation()},[n.createVNode(xt.FCheckbox,{id:"list-"+C(M,w),customClass:"listview-checkbox",disabled:M[y.value],checked:M.checked,"onUpdate:checked":v=>M.checked=v,onChange:v=>{h(M,w,!v.checked)}},null)]),n.createVNode("div",{class:"f-list-content"},[n.createVNode("div",{style:N.value,title:M.raw[p.value]||M.raw[d.value]},[M.raw[d.value]])])])}return{renderItem:m}}function Sl(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:b}=a,{getKey:k,listViewItemClass:T,onCheckItem:g,onClickItem:C}=l;function S(_,N,m){return t.slots.content?n.createVNode(n.Fragment,null,[t.slots.content&&t.slots.content({item:_.raw,index:N,selectedItem:m})]):n.createVNode("div",{style:"margin: 10px 0;"},[_.raw.name])}function h(_,N,m){return n.createVNode("li",{class:T(_,N),id:k(_,N),key:k(_,N),onClick:M=>C(M,_,N),onMouseenter:M=>p(M,_,N),onMouseover:M=>y(M,_,N),onMouseout:M=>b(M,_,N)},[f.value&&n.createVNode("div",{class:"f-list-select",onClick:M=>M.stopPropagation()},[n.createVNode(xt.FCheckbox,{id:"list-"+k(_,N),customClass:"listview-checkbox",disabled:_[d.value]||!_.checked,checked:_.checked,"onUpdate:checked":M=>_.checked=M,onChange:M=>g(_,N,!M.checked)},null)]),n.createVNode("div",{class:"f-list-content"},[S(_,N,m)])])}return{renderItem:h}}function xl(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:b}=a,{getKey:k,listViewItemClass:T,onCheckItem:g,onClickItem:C}=l,{dragstart:S,dragenter:h,dragover:_,dragend:N}=i,{removeItem:m}=s,M=n.computed(()=>({margin:f.value?"10px 0":"10px 0px 10px 14px"}));function w(V){return n.createVNode("div",{style:M.value},[V.raw.name])}function x(){return t.slots.itemContent?t.slots.itemContent:w}const v=x();function F(V,I,E){return n.createVNode("li",{class:T(V,I),id:k(V,I),key:k(V,I),onClick:B=>C(B,V,I),onMouseenter:B=>p(B,V,I),onMouseover:B=>y(B,V,I),onMouseout:B=>b(B,V,I),draggable:"true",onDragstart:B=>S(B,V,I),onDragenter:B=>h(B,I),onDragend:B=>N(B,V),onDragover:B=>_(B,I)},[f.value&&n.createVNode("div",{class:"f-list-select",onClick:B=>B.stopPropagation()},[n.createVNode(xt.FCheckbox,{id:"list-"+k(V,I),customClass:"listview-checkbox",disabled:V[d.value]||!V.checked,checked:V.checked,"onUpdate:checked":B=>V.checked=B,onChange:B=>g(V,I,!B.checked)},null)]),n.createVNode("div",{class:"f-list-content"},[v(V)]),n.createVNode("div",{class:"f-list-remove",onClick:B=>m(I)},[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:F}}function Fl(e,t,o,i,r,a,l,c,s,u){var k;const f=n.ref(((k=e.group)==null?void 0:k.groupFields)||[]),{collpaseGroupIconClass:d}=r,{toggleGroupRow:p}=u;function y(T,g){g.collapse=!g.collapse,o.value=p(g.collapse?"collapse":"expand",g,o.value)}function b(T,g,C){return T.layer>-1&&n.createVNode("div",{class:"f-navlookup-recentHeader",onClick:S=>y(S,T)},[n.createVNode("div",{class:"fv-grid-group-row-icon"},[n.createVNode("span",{class:d(T)},null)]),n.createVNode("div",{class:"f-navlookup-recommandLabel"},[T.raw[f.value[T.layer]]])])}return{renderItem:b}}function _l(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,C,S){g.stopPropagation(),p(),C&&setTimeout(()=>{l.value=S,c.value=!0,C.moving=!0})}function b(g,C){if(g.preventDefault(),l.value!==C){const S=a.value[l.value],h=a.value;h.splice(l.value,1),h.splice(C,0,S),l.value=C}}function k(g,C){g.preventDefault(),g.dataTransfer&&(g.dataTransfer.dropEffect="move")}function T(g,C){C&&(C.moving=!1),a.value.forEach((S,h)=>{S.__fv_index__=h}),c.value=!1,d(),f.value=C.raw.__fv_index__,s.value=C.raw.__fv_index__,u.value=C.raw[r.value],t.emit("change",a.value),t.emit("activeChange",C)}return{dragstart:y,dragenter:b,dragover:k,dragend:T,isDragging:c}}function Ml(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 Tl(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:b,hoverIndex:k}=r,{clearSelection:T,getSelectedItems:g,toggleSelectItem:C}=a,S=n.ref(g());function h(v,F){const V={"f-list-view-group-item":!0,"f-list-view-draggable-item":s.value,"f-un-click":!v.checked,"f-un-select":!!v.raw[c.value],"f-listview-active":v.raw.__fv_index__===y.value,"f-listview-hover":!p.value&&F===k.value,moving:!!v.moving};return u.value.split(" ").reduce((E,B)=>(E[B]=!0,E),V),V}function _(v,F){return v.raw[l.value]||""}const N=n.computed(()=>!f.value);function m(v,F,V){v.checked=V,!v.raw[c.value]&&(N.value&&(b.value=v.raw[l.value]),C(v))}const M=n.computed(()=>f.value&&d.value==="OnCheckClearByClick"),w=n.computed(()=>!f.value||f.value&&(d.value==="OnCheckAndClick"||d.value==="OnClick"));function x(v,F,V){if(F.raw[c.value]){v.preventDefault(),v.stopPropagation();return}b.value=F.raw[l.value],y.value=V,M.value&&T(),w.value&&(C(F),S.value=g()),t.emit("clickItem",{data:S.value,index:V}),t.emit("activeChange",S.value)}return{getKey:_,listViewItemClass:h,onCheckItem:m,onClickItem:x}}function Vl(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=_l(e,t,i,a),y=Ml(e,t,i),b=Tl(e,t,o,p,a,l),k=n.computed(()=>({"f-list-view-group":!0,"f-list-view-group-multiselect":e.multiSelect,"d-flex":u.value,"flex-wrap":u.value})),T=n.computed(()=>!!o.value&&o.value.length>0),g=n.computed(()=>o.value.length===0);n.computed(()=>g.value&&!t.slots.empty);function C(){return s.value==="SingleView"?xo:s.value==="DraggableView"?xl:(s.value==="ContentView"||s.value==="CardView")&&t.slots.content?Sl:xo}const S=C(),{renderItem:h}=S(e,t,o,p,r,a,b,l,y,c),{renderItem:_}=Fl(e,t,o,p,r,a,b,l,y,c),N=[h,_];function m(){return o.value.filter(x=>x.visible!==!1).map((x,v)=>N[x.type](x,v,f))}function M(){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 w(){return n.createVNode("ul",{class:k.value,style:"list-style: none;"},[T.value&&m(),g.value&&M()])}return{renderListArea:w}}function kl(e,t,o){function i(){return t.slots.header&&n.createVNode("div",{class:"f-list-view-header"},[t.slots.header()])}return{renderHeader:i}}function Fo(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((b,k)=>(b[k]=!0,b),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 Il(){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 _o=n.defineComponent({name:"FListView",props:So,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=Y.useFilter(),u=Y.useIdentify(e),f=Y.useHierarchy(e),d=Y.useGroupData(e,u),p=Y.useDataView(e,new Map,s,f,u),y=Y.useSelection(e,p,u,a,t),b=wl(e,o),k=n.computed(()=>p.dataView.value.length),T=Y.useRow(e,t,y,u),g=Y.useEdit(e,t,u,T),C=Y.useVisualDataBound(e),S=Y.useVisualDataCell(e,{},C),h=Y.useVisualDataRow(e,g,f,u,C,S),_=Y.useVisualGroupRow(e,u,S,h),N=Y.useVisualSummaryRow(e,u,S,h),m=Y.useVisualData(e,c,p,k,l,h,_,N),{getVisualData:M}=m;a.value=M(0,k.value+l-1);const w=n.computed(()=>{const H={"f-list-view":!0,"f-list-view-multiple":e.multiSelect};return e.size!=="default"&&(H[`${e.size}-item`]=!0),H}),x=n.computed(()=>!!t.slots.footer||i.value);function v(){return e.header==="SearchBar"?Fo:e.header==="ContentHeader"?kl:Fo}const F=v(),{renderHeader:V}=F(e,t,b),I=Il(),{renderListArea:E}=Vl(e,t,a,p,d,I,y,m);function B(H){b.search(H)}function $(H){H&&(p.load(H),a.value=M(0,k.value+l-1))}function O(){y.clearSelection(),I.clearActiveItem()}t.expose({search:B,updateDataSource:$,clearSelection:O});function L(H){e.multiSelect&&(H.preventDefault(),H.stopPropagation())}return()=>n.createVNode("div",{class:w.value,onClick:L},[V(),n.createVNode("div",{ref:o,class:"f-list-view-content",onMouseover:()=>{r.value=!0},onMouseleave:()=>{r.value=!1}},[E()]),x.value&&n.createVNode("div",{class:"f-list-view-footer"},[t.slots.footer&&t.slots.footer()])])}}),Nl=n.defineComponent({name:"FTransfer",props:wo,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(w=>w[o.value])),f=new Map,d=n.ref();function p(){const w=new Map,x=e.selectionValues||[];x.length&&x.reduce((F,V)=>(F.set(V,!0),F),w);const v=e.selections||[];v.length&&(w.clear(),v.reduce((F,V)=>(F.set(V[o.value],!0),F),w)),s.value.length||(s.value=c.value.filter(F=>w.has(F[o.value])).map(F=>Object.assign({},F))),c.value.forEach(F=>{const V=F[o.value],I=w.has(V);F.checked=I,I&&f.set(V,F)})}p();const y=n.computed(()=>a.value==="List"),b=n.computed(()=>a.value==="Tree");function k(w){s.value=w.map(x=>Object.assign({},x)),t.emit("change",s.value)}function T(){return n.createVNode(_o,{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:k},{default:()=>[n.createTextVNode(" ")]})}function g(){return n.createVNode(an,{data:c.value,rowOption:e.rowOption,selection:{enableSelectRow:!0,multiSelect:!0,multiSelectMode:"OnCheckAndClick",showCheckbox:!0,showSelectAll:!1,showSelection:!0},selectionValues:u.value,onSelectionChange:k},null)}function C(){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&&T(),b.value&&g()])])])}function S(w){const x=w[o.value];if(x!==null||x!==void 0){s.value=s.value.filter(F=>F[o.value]!==x);const v=f.get(x);v&&(v.checked=!1,f.delete(x)),t.emit("change",s.value)}}n.watch(s,w=>{d.value.updateDataSource(w)});function h(w){const x=new Map;s.value.reduce((v,F)=>(v.set(F[o.value],F),v),x),s.value=w.map(v=>x.get(v[o.value])),t.emit("change",s.value)}function _(w){t.emit("activeChange",w)}function N(){return n.createVNode(_o,{ref:d,style:"flex:1",data:s.value,draggable:!0,view:"DraggableView","keep-order":!0,onChange:h,onRemoveItem:S,onActiveChange:_},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 M=n.computed(()=>({"f-transfer":!0,row:!0,"f-utils-fill":l.value}));return()=>n.createVNode("div",{class:M.value,style:"height:480px"},[C(),m()])}}),El=n.defineComponent({name:"FGridFieldEditor",props:Co,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(_=>_.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(_=>{h.push(_),_.children&&y(_.children,h)}),h}function b(){u.value=i.getAllFields2TreeByVMId(o.value),f=y(u.value)}function k(){const S=i.getDgViewModel(o.value),h=[],_=[];s.value.forEach(m=>{delete m.inValidTip,delete m.isInValidBinding;const M=l==null?void 0:l.find(w=>{if(w.binding&&w.binding.field)return w.binding.field===m.id});if(M)h.push(M);else{const w=a.setGridFieldProperty(e.gridType,m.data,null,!0);S.addField(m),h.push(w)}_.push(m.id)});const N=S.fields.filter(m=>!_.includes(m.id));if(N&&N.length>0){const m=N.map(M=>M.id);if(S.removeField(m),r.getExpressions()&&r.getExpressions().length&&m.length){const M=r.getExpressions().filter(w=>!m.includes(w.fieldId));r.setExpressions(M)}}c.value=`共 ${h.length} 项`,t.emit("change",h)}const T={fitContent:!1,width:900,height:600,title:"列编辑器",acceptCallback:()=>{k()},rejectCallback:()=>{}};function g(S){s.value=S?[...S]:[]}function C(){return e.getLatestGridData&&(e.gridData=e.getLatestGridData(),b()),l=e.gridData.columns,p(),Promise.resolve(!0)}return n.onMounted(()=>{b()}),()=>n.createVNode(vt,{"button-behavior":"Modal","modal-options":T,modelValue:c.value,"onUpdate:modelValue":S=>c.value=S,editable:!1,beforeOpen:C},{default:()=>[n.createVNode("div",{class:"f-utils-absolute-all"},[n.createVNode(Nl,{selections:s.value,"data-source":u.value,rowOption:d,class:"mx-2",displayType:"Tree",onChange:S=>g(S)},null)])]})}}),Bl={$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"]},$l={$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"]},en={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:""}},Ol=Ae(en,Bl,Cn,Fn),jl=Ae(en,$l,Cn,Fn);class Pl 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 Dl 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 Rl extends Xe{constructor(t,o){super(t,o)}getEditorProperties(t){return this.getComponentConfig(t,{type:"check-box"},{placeholder:{visible:!1},disabled:{visible:!1}})}}class Hl 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 Al 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 Ll(){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 Gl 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}=Ll();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 Wl={$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:"字段类型"}],tn=Symbol("Field_Selector Component Repository Service Token");Ae({disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},modelValue:{type:[String,Array],default:null},data:{type:Array,default:[]},idField:{type:String,default:"id"},columns:{type:Array,default: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}},Wl);const dt={convertFrom:(e,t)=>t==="multiSelect"?!!e.editor[t]:t==="separator"?e.editor[t]||",":e.editor[t],convertTo:(e,t,o)=>{e.editor[t]=o}},zl={convertFrom:(e,t)=>e[t]==null?!0:e[t],convertTo:(e,t,o)=>{e[t]=o}};function Ul(e){let t="form_group_"+Date.now();return e&&(t=e.replaceAll("-","_").replaceAll(".","_")),"lookup."+t}const Yl={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=Ul(e.id))}}},Xl={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}}},Kl={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}}},Jl={convertFrom:(e,t)=>e.editor.displayType?e.editor.displayType.toUpperCase():"LIST",convertTo:(e,t,o)=>{e.editor.displayType=o}},Ql=Symbol("schema_repository_token");class Zl 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:dt},readonly:{description:"",title:"只读",type:"boolean",$converter:dt,editor:{enableClear:!0,editable:!0}},required:{visible:!1,description:"",title:"必填",type:"boolean",$converter:dt},visible:{description:"",title:"可见",type:"boolean",visible:!1,$converter:zl},placeholder:{title:"提示文本",type:"string",$converter:dt},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:dt,editor:this.comboListEditor},readonly:{description:"",title:"只读",type:"boolean",$converter:dt,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:Ql,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:Yl},displayType:{description:"类型: 树列表、列表、双列表、左树右列表",title:"展示类型",type:"string",$converter:Jl,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:tn},$converter:Xl},textField:{description:"显示文本字段",title:"文本字段",type:"string",$converter:Kl,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:tn}},mappingFields:{description:"字段映射",title:"字段映射",type:"string",$converter:dt,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:tn},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:dt,title:"启用多选",type:"boolean",editor:this.comboListEditor,refreshPanelAfterChanged:!0,visible:!this.isRelatedField()},separator:{description:"多选分隔符",$converter:dt,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 es extends Xe{constructor(t,o){super(t,o)}getEditorProperties(t){return this.getComponentConfig(t,{type:"number-range"},{editable:{description:"",title:"允许编辑",type:"boolean"}})}}class ts 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 ns 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 os 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 is 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 rs extends $t{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 Pl(this.componentId,this.designerHostService);break;case"check-group":a=new Dl(this.componentId,this.designerHostService);break;case"check-box":a=new Rl(this.componentId,this.designerHostService);break;case"combo-list":a=new Hl(this.componentId,this.designerHostService);break;case"date-picker":a=new Gl(this.componentId,this.designerHostService);break;case"lookup":a=new Zl(this.componentId,this.designerHostService);break;case"number-range":a=new es(this.componentId,this.designerHostService);break;case"number-spinner":a=new ts(this.componentId,this.designerHostService);break;case"radio-group":a=new ns(this.componentId,this.designerHostService);break;case"switch":a=new os(this.componentId,this.designerHostService);break;case"textarea":a=new Al(this.componentId,this.designerHostService);break;case"time-picker":a=new is(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:Tt.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",b="编辑器",k=f==null?void 0:f.description,T=(f==null?void 0:f.$converter)||"";l.propertyConfig.categories[o+"_"+u]={title:p,tabId:y,tabName:b,description:k,$converter:T,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 as(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 rs(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 Mo=n.defineComponent({name:"FDataGridColumnDesign",props:en,emits:[],setup(e,t){const o=n.ref(),i=n.inject("designer-host-service"),r=n.inject("design-item-context"),a=as(r,i),l=Yt(o,r,a);n.onMounted(()=>{o.value.componentInstance=l}),t.expose(l.value);function c(s){var u;(u=r==null?void 0:r.setupContext)==null||u.emit("selectionChange",l.value.schema,r.schema,e.componentId,l.value)}return()=>n.createVNode("span",{class:"fv-column-title",ref:o,onClick:s=>c()},[e.title])}});yt.install=e=>{e.component(yt.name,yt),e.component(Zt.name,Zt)},yt.register=(e,t,o,i)=>{e["data-grid"]=yt,t["data-grid"]=_n,e["grid-field-editor"]=El,t["grid-field-editor"]=fl,i["data-grid"]={bindingResolver:Cr,selectionItemResolver:wr,updateColumnsResolver:Sr,callbackResolver:xr}},yt.registerDesigner=(e,t,o)=>{e["data-grid"]=Zt,t["data-grid"]=_n,t["data-grid-column"]=Ol,e["data-grid-column"]=Mo,t["tree-grid-column"]=jl,e["tree-grid-column"]=Mo};const ls={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/mapping-editor.schema.json",title:"mapping-editor",description:"A Farris Input Component",type:"object",properties:{fromData:{type:"object",default:null},toData:{type:"object",default:null},disabled:{type:"boolean",default:!1},readonly:{type:"boolean",default:!1},title:{type:"string",default:"字段映射编辑器"},modalWidth:{type:"number",default:800},modalHeight:{type:"number",default:600},modelValue:{type:"object",default:null},editorParams:{type:"object",default:null},onMappingFieldsChanged:{type:"object",default:null}}},nn={fromData:{type:Object,default:{}},toData:{type:Object,default:{}},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},title:{type:String,default:"字段映射编辑器"},modalWidth:{type:Number,default:600},modalHeight:{type:Number,default:500},modelValue:{type:Object,default:{}},editorParams:{type:Object,default:null},onMappingFieldsChanged:{type:Function,default:null}},To=Ae(nn,ls),Dt=n.defineComponent({name:"FMappingEditor",props:nn,emits:["submitModal","update:modelValue"],setup(e,t){const o='<i class="f-icon f-icon-lookup"></i>',i=n.ref(),r=n.ref(e.modelValue||{}),a=n.ref([]),l=n.ref(e.fromData.dataSource||[]),c=n.ref(e.toData.dataSource||[]),s=n.inject(e.fromData.repositoryToken),u=n.inject(e.toData.repositoryToken),f=n.inject(En),d=x=>(x.raw.$type!=="SimpleField"&&(x.disabled=!0),x),p=[{field:"sourceField",title:"数据源字段",dataType:"string",editor:{type:"combo-tree",data:l.value,idField:e.fromData.idField||"id",textField:e.fromData.textField||"name",valueField:e.fromData.valueField||"id",formatter:e.fromData.formatter,editorParams:e.fromData.editorParams,editable:!1,customRowStatus:d}},{field:"targetField",title:"目标字段",dataType:"string",editor:{type:"combo-tree",data:c.value,idField:e.toData.idField||"id",textField:e.toData.textField||"name",valueField:e.toData.valueField||"id",formatter:e.toData.formatter,editorParams:e.toData.editorParams,editable:!1,customRowStatus:d}}];function y(){return Math.random().toString(36).substring(2,15)+Math.random().toString(36).substring(2,15)}function b(){let x=r.value||{};return typeof x=="string"&&(x=JSON.parse(x)),Object.keys(x).map(v=>({id:y(),sourceField:v,targetField:x[v]}))}const k=n.ref(b()),T=n.computed(()=>{var x;return`共 ${((x=k.value)==null?void 0:x.length)||0} 项`});function g(){i.value.endEditCell(),i.value.addNewDataItemAtLast()}function C(){return{sourceField:"",targetField:"",id:y()}}function S(){if(a.value.length){i.value.endEditCell();const x=k.value.findIndex(v=>v.id===a.value[0].id);x>-1&&(a.value=[],i.value.removeDataItem(x+1))}else f.warning("请选择要删除的映射字段!")}function h(){ct.question("确定要清空所有映射字段吗?","",()=>{r.value={},k.value=[],i.value.updateDataSource([])},()=>{})}function _(){const x={};return k.value.forEach(v=>{v.sourceField&&v.targetField&&(x[v.sourceField]=v.targetField)}),x}n.watch(()=>e.modelValue,x=>{r.value=x,k.value=b()});function N(){return k.value.filter(v=>!v.sourceField||!v.targetField).length}const m={title:e.title,fitContent:!1,height:e.modalHeight,width:e.modalWidth,minWidth:300,minHeight:200,showMaxButton:!0,buttons:[{name:"cancel",text:"取消",class:"btn btn-secondary",handle:x=>!0},{name:"accept",text:"确定",class:"btn btn-primary",handle:x=>{if(i.value.endEditCell(),N())return f.warning("请将映射字段填写完整!"),!1;const v=_();return r.value=v,t.emit("submitModal",v),t.emit("update:modelValue",v),e.onMappingFieldsChanged&&typeof e.onMappingFieldsChanged=="function"&&e.onMappingFieldsChanged(JSON.stringify(v)),!0}}],resizeable:!0,draggable:!0,closedCallback:(x,v)=>{(x.target.name==="cancel"||v==="icon"||v==="esc")&&(r.value=e.modelValue,k.value=b(),a.value=[])}};function M(x){a.value=x}function w(){var I,E;if(!((E=(I=e.editorParams)==null?void 0:I.propertyData)==null?void 0:E.helpId))return f==null||f.warning({message:"请先配置数据源!",position:"top-center"}),!1;const v=[],F=s?s.getData(e.editorParams):Promise.resolve(l.value);v.push(F);const V=u?u.getData(e.editorParams):Promise.resolve(c.value);return v.push(V),Promise.all(v).then(([B,$])=>(p[0].editor.data=B,p[1].editor.data=$,!0))}return()=>n.createVNode(vt,{modelValue:T.value,"onUpdate:modelValue":x=>T.value=x,editable:!1,disabled:e.disabled,readonly:e.readonly,inputType:"text",enableClear:!1,buttonContent:o,buttonBehavior:"Modal",modalOptions:m,beforeOpen:w},{default:()=>[n.createVNode("div",{class:"h-100 d-flex flex-column"},[n.createVNode("div",{class:"px-2"},[n.createVNode("button",{class:"btn btn-primary",onClick:g},[n.createTextVNode("新增")]),n.createVNode("button",{class:"btn btn-secondary ml-2",onClick:S},[n.createTextVNode("删除")]),n.createVNode("button",{class:"btn btn-secondary ml-3",onClick:h},[n.createTextVNode("清空")])]),n.createVNode("div",{class:" f-utils-fill p-2"},[n.createVNode(yt,{ref:i,pagination:{enable:!1},summary:{enable:!1},columnOption:{fitColumns:!0},editOption:{editMode:"cell"},rowNumber:!1,showBorder:!0,editable:"true",fit:!0,columns:p,data:k.value,newDataItem:C,onSelectionChange:M},null)])])]})}}),ss={install(e){e.component(Dt.name,Dt)},register(e,t,o,i){e["mapping-editor"]=Dt,t["mapping-editor"]=To}};X.MappingEditor=Dt,X.default=ss,X.mappingEditorProps=nn,X.propsResolver=To,Object.defineProperties(X,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
|
1
|
+
(function(X,n){typeof exports=="object"&&typeof module<"u"?n(exports,require("vue"),require("lodash-es"),require("../dynamic-resolver/index.umd.js"),require("../tags/index.umd.js"),require("../popover/index.umd.js"),require("../designer-canvas/index.umd.js"),require("../common/index.umd.js"),require("bignumber.js"),require("@vueuse/core"),require("../modal/index.umd.js"),require("../transfer/index.umd.js"),require("../tabs/index.umd.js"),require("../order/index.umd.js"),require("../condition/index.umd.js"),require("../checkbox/index.umd.js"),require("../filter-bar/index.umd.js"),require("../pagination/index.umd.js"),require("../search-box/index.umd.js"),require("../dynamic-form/index.umd.js"),require("../data-view/index.umd.js"),require("../accordion/index.umd.js"),require("../avatar/index.umd.js"),require("../button-edit/index.umd.js"),require("../button-group/index.umd.js"),require("../calendar/index.umd.js"),require("../capsule/index.umd.js"),require("../color-picker/index.umd.js"),require("../combo-list/index.umd.js"),require("../content-container/index.umd.js"),require("../data-grid/index.umd.js"),require("../date-picker/index.umd.js"),require("../dropdown/index.umd.js"),require("../external-container/index.umd.js"),require("../events-editor/index.umd.js"),require("../image-cropper/index.umd.js"),require("../input-group/index.umd.js"),require("../layout/index.umd.js"),require("../list-nav/index.umd.js"),require("../list-view/index.umd.js"),require("../lookup/index.umd.js"),require("../nav/index.umd.js"),require("../number-spinner/index.umd.js"),require("../number-range/index.umd.js"),require("../page-header/index.umd.js"),require("../page-footer/index.umd.js"),require("../progress/index.umd.js"),require("../query-solution/index.umd.js"),require("../radio-group/index.umd.js"),require("../rate/index.umd.js"),require("../response-toolbar/index.umd.js"),require("../response-layout/index.umd.js"),require("../response-layout-editor/index.umd.js"),require("../section/index.umd.js"),require("../smoke-detector/index.umd.js"),require("../splitter/index.umd.js"),require("../step/index.umd.js"),require("../switch/index.umd.js"),require("../text/index.umd.js"),require("../time-picker/index.umd.js"),require("../tree-view/index.umd.js"),require("../uploader/index.umd.js"),require("../verify-detail/index.umd.js"),require("../component/index.umd.js"),require("../video/index.umd.js"),require("../textarea/index.umd.js"),require("../tree-grid/index.umd.js"),require("../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")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es","../dynamic-resolver/index.umd.js","../tags/index.umd.js","../popover/index.umd.js","../designer-canvas/index.umd.js","../common/index.umd.js","bignumber.js","@vueuse/core","../modal/index.umd.js","../transfer/index.umd.js","../tabs/index.umd.js","../order/index.umd.js","../condition/index.umd.js","../checkbox/index.umd.js","../filter-bar/index.umd.js","../pagination/index.umd.js","../search-box/index.umd.js","../dynamic-form/index.umd.js","../data-view/index.umd.js","../accordion/index.umd.js","../avatar/index.umd.js","../button-edit/index.umd.js","../button-group/index.umd.js","../calendar/index.umd.js","../capsule/index.umd.js","../color-picker/index.umd.js","../combo-list/index.umd.js","../content-container/index.umd.js","../data-grid/index.umd.js","../date-picker/index.umd.js","../dropdown/index.umd.js","../external-container/index.umd.js","../events-editor/index.umd.js","../image-cropper/index.umd.js","../input-group/index.umd.js","../layout/index.umd.js","../list-nav/index.umd.js","../list-view/index.umd.js","../lookup/index.umd.js","../nav/index.umd.js","../number-spinner/index.umd.js","../number-range/index.umd.js","../page-header/index.umd.js","../page-footer/index.umd.js","../progress/index.umd.js","../query-solution/index.umd.js","../radio-group/index.umd.js","../rate/index.umd.js","../response-toolbar/index.umd.js","../response-layout/index.umd.js","../response-layout-editor/index.umd.js","../section/index.umd.js","../smoke-detector/index.umd.js","../splitter/index.umd.js","../step/index.umd.js","../switch/index.umd.js","../text/index.umd.js","../time-picker/index.umd.js","../tree-view/index.umd.js","../uploader/index.umd.js","../verify-detail/index.umd.js","../component/index.umd.js","../video/index.umd.js","../textarea/index.umd.js","../tree-grid/index.umd.js","../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"],n):(X=typeof globalThis<"u"?globalThis:X||self,n(X["mapping-editor"]={},X.Vue,X.LodashES,X.dynamicResolver,X.FTags,X.FPopover,X.designerCanvas,X.common,X.BigNumber,X.VueUseCore,null,X.FTransfer$1,X.FTabs,X.FOrder,null,X.FCheckbox,X.FFilterBar,X.FPagination,X.FSearchBox,X.FDynamicForm,X.dataView,X.FAccordion,X.FAvatar,X.FButtonEdit$1,X.FButtonGroup,X.FCalendar,X.FCapsule,X.FColorPicker,X.FComboList,X.FContentContainer,X.FDataGrid$1,X.FDatePicker,X.FDropdown,null,X.FEventsEditor,X.FImageCropper,X.FInputGroup,X.FLayout,X.FListNav,X.FListView$1,X.FLookup,X.FNav,X.FNumberSpinner,X.FNumberRange,X.FPageHeader,X.FPageFooter,X.FProgress,X.FQuerySolution,X.FRadioGroup,X.FRate,X.FResponseToolbar,X.FResponseLayout,X.FResponseLayoutEditorSetting,X.FSection,X.FSmokeDetector,X.FSplitter,X.FStep,X.FSwitch,X.FText,X.FTimePicker,X.FTreeview,X.FUploader,X.FVerifyDetail,X.FComponent,X.FVideo,X.FTextArea,X.FTreeGrid$1,X.FBindingSelector,null,X.FComboTree,X.FFieldSelector,X.FMappingEditor,X.FSchemaSelector,X.FEventParameter))})(this,function(X,n,De,rn,an,Vo,Dt,xe,ds,Vt,us,ko,Io,No,fs,St,Bo,Eo,$o,Rt,Y,Oo,jo,Po,Do,Ro,Ho,Ao,Ht,Lo,Go,Wo,qo,ps,zo,Uo,Yo,Xo,Ko,Jo,Qo,Zo,ei,ti,ni,oi,ii,ri,ai,li,si,ci,di,ui,fi,pi,mi,hi,gi,yi,ln,vi,bi,Ci,wi,Si,xi,Fi,ms,_i,Mi,Ti,Vi,ki){"use strict";var ss=Object.defineProperty;var cs=(X,n,De)=>n in X?ss(X,n,{enumerable:!0,configurable:!0,writable:!0,value:De}):X[n]=De;var q=(X,n,De)=>cs(X,typeof n!="symbol"?n+"":n,De);const sn={},cn={};function At(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?At(t[c]):De.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 Ii(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?At(t[l]):De.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 dn(e,t={},o){const i=sn[e];if(i){let r=Ii(i);const a=cn[e];return r=a?a({getSchemaByType:dn},r,t,o):r,r}return null}function Ni(e,t){const o=At(t);return Object.keys(o).reduce((i,r)=>(Object.prototype.hasOwnProperty.call(e,r)&&(i[r]&&De.isPlainObject(i[r])&&De.isPlainObject(e[r]||!e[r])?Object.assign(i[r],e[r]||{}):i[r]=e[r]),i),o),o}function Bi(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 Ei(e,t,o=new Map){const i=Ni(e,t);return Bi(i,o)}function $i(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],b=d[y];if(y==="not")return Number(p[u].length)!==Number(b);if(y==="moreThan")return Number(p[u].length)>=Number(b);if(y==="lessThan")return Number(p[u].length)<=Number(b)}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,b=f[p];return{target:d,operator:"getProperty",param:y,value:b}}):[]}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,b)=>y&&l(b,f),!0)}function s(u,f){const d=Object.keys(u),p=d.includes("allOf"),y=d.includes("anyOf"),b=p||y,g=(b?u[b?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"}},Oi={},ji={};$i();function Ae(e,t,o=new Map,i=(l,c,s,u)=>c,r={},a=l=>l){return sn[t.title]=t,cn[t.title]=i,Oi[t.title]=r,ji[t.title]=a,(l={})=>{const c=Ei(l,t,o),s=Object.keys(e).reduce((u,f)=>(u[f]=e[f].default,u),{});return Object.assign(s,c)}}function pt(e,t){return{customClass:t.class,customStyle:t.style}}function Pi(){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 Di(){function e(t,o){const{dataSource:i}=t||{};return i===void 0?{}:{}}return{resolve:e}}function Ri(){function e(t,o){return t.selectItemById(o)}return{selectItemById:e}}function Hi(){function e(t,o){return t.selectItemById(o)}return{selectItemById:e}}function un(){function e(t,o){const{columns:i}=o;return t.updateColumns(i)}return{updateColumns:e}}const Ai=new Map([["appearance",rn.resolveAppearance]]);function Li(e,t,o){return t}const Gi={$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"]},Wi={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:"右对齐"}]}}}}}},Lt={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"}},fn=Ae(Lt,Gi,Ai,Li,Wi),qi={popupContentPosition:{type:Object,default:{left:0,top:0}},host:{type:Object},backgroundColor:{type:String,default:""}},zi=n.defineComponent({name:"FOverlay",props:qi,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 Ui(e){if(e.content&&e.content.render)return e.content.render;if(e.render&&typeof e.render=="function")return e.render}function Yi(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=Ui(e);return()=>n.createVNode(zi,{"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 Xi{static show(t){return Yi(t)}}const Ki={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(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 $e(t.clientX,t.clientY);if(o===null||t.changedTouches.length===1)return new $e(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 $e(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 $e(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 $e(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 mt{constructor(t,o){this.width=t,this.height=o}static getCurrent(t){const o=new mt(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 mt(0,0).set(t)}set(t){return this.width=t.width,this.height=t.height,this}}function Ji(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(),b=n.ref(e.draggable),k=n.ref(!1);function T(){const E=i.value||document.body,O=window.getComputedStyle(E);if(!O||!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 U=O.getPropertyValue("position");H.width=E.clientWidth,H.height=E.clientHeight,H.pr=parseInt(O.getPropertyValue("padding-right"),10),H.pb=parseInt(O.getPropertyValue("padding-bottom"),10),H.position=O.getPropertyValue("position"),U==="static"&&(E.style.position="relative"),H.translateX=L.x,H.translateY=L.y,d.value=H}function g(E){if(o.value){a.value=mt.getCurrent(o.value),l.value=$e.getCurrent(o.value),c.value=a.value?mt.copy(a.value):null,s.value=l.value?$e.copy(l.value):null,T();const O=E.target.getAttribute("type")||"";u.value={n:!!O.match(/n/),s:!!O.match(/s/),w:!!O.match(/w/),e:!!O.match(/e/)}}}function C(){var E,O,L,H;if(o.value){const U=o.value;u.value&&((u.value.n||u.value.s)&&((E=c.value)!=null&&E.height)&&(U.style.height=c.value.height+"px"),(u.value.w||u.value.e)&&((O=c.value)!=null&&O.width)&&(U.style.width=c.value.width+"px"),s.value&&((L=s.value)!=null&&L.x&&(U.style.left=s.value.x+"px"),(H=s.value)!=null&&H.y&&(U.style.top=s.value.y+"px")))}}function S(){const E=e.minHeight?e.minHeight:1,O=e.minWidth?e.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<O&&(c.value.width=O,u.value.w&&l.value&&(s.value.x=l.value.x+(a.value.width-O))),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 E=d.value;if(s.value&&c.value&&u.value&&a.value){const O=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>O&&(c.value.width=O),c.value.height>L&&(c.value.height=L)}}}function _(E){if(!r.value||!a.value||!l.value||!u.value)return;E.subtract(r.value);const O=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+O:u.value.w&&(c.value.width=a.value.width-O,s.value.x=l.value.x+O),h(),S(),C()}function N(E){if(!f.value)return;const O=$e.fromEvent(E);O&&_(O)}function m(){if(o.value){const{width:E,height:O,x:L,y:H}=o.value.getBoundingClientRect(),U=$e.getTransformInfo(o.value);return{size:{width:E,height:O},position:{x:L-U.x,y:H-U.y}}}return null}function M(E){if(o.value){const O=m();p.value=O}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",M)}function w(){document.addEventListener("mousemove",N),document.addEventListener("mouseup",M)}function x(E){E instanceof MouseEvent&&E.button===2||b.value&&(document.body.click(),E.stopPropagation(),E.preventDefault(),r.value=$e.fromEvent(E),f.value=E.target,g(E),w())}function v(E){return o.value=E,n.createVNode(n.Fragment,null,[n.createVNode("div",{class:"fv-resizable-handle fv-resizable-n",type:"n",onMousedown:O=>x(O)},null),n.createVNode("div",{class:"fv-resizable-handle fv-resizable-e",type:"e",onMousedown:O=>x(O)},null),n.createVNode("div",{class:"fv-resizable-handle fv-resizable-s",type:"s",onMousedown:O=>x(O)},null),n.createVNode("div",{class:"fv-resizable-handle fv-resizable-w",type:"w",onMousedown:O=>x(O)},null),n.createVNode("div",{class:"fv-resizable-handle fv-resizable-ne",type:"ne",onMousedown:O=>x(O)},null),n.createVNode("div",{class:"fv-resizable-handle fv-resizable-se fv-resizable-diagonal",type:"se",onMousedown:O=>x(O)},null),n.createVNode("div",{class:"fv-resizable-handle fv-resizable-sw",type:"sw",onMousedown:O=>x(O)},null),n.createVNode("div",{class:"fv-resizable-handle fv-resizable-nw",type:"nw",onMousedown:O=>x(O)},null)])}function F(E=!0){document.body.click();const O=i.value||document.body,L=mt.getCurrent(O),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}},b.value=!1,k.value=!0)}function V(){var E,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};(E=c.value)==null||E.set(L),(O=s.value)==null||O.set(H);const U=o.value;U.style.height=L.height+"px",U.style.width=L.width+"px",U.style.left=`${H.x}px`,U.style.top=`${H.y}px`,U.style.transform="",p.value={size:L,position:H},b.value=e.draggable,k.value=!1}}function I(){if(o.value){const E=mt.getCurrent(o.value);if(E){const{width:O,height:L}=E;o.value.style.left=`${(window.innerWidth-O)/2}px`,o.value.style.top=`${(window.innerHeight-L)/2}px`,o.value.style.transform=""}}}function B(){const E=()=>{k.value?F(!1):I(),document.body.click()};return window.addEventListener("resize",E),()=>{window.removeEventListener("resize",E)}}const $=B();return{renderResizeBar:v,boundingElement:i,resizedEventParam:p,maximize:F,restore:V,allowDrag:b,isMaximized:k,unWindowResizeHandle:$}}function Qi(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 $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,M){if(M.tagName==="BUTTON")return!1;if(M===m)return!0;for(const w in M.children)if(Object.prototype.hasOwnProperty.call(M.children,w)&&y(m,M.children[w]))return!0;return!1}function b(){var x,v;let m=d.value.x+f.value.x,M=d.value.y+f.value.y;a.value==="x"?(m=((x=u.value)==null?void 0:x.x)||0,d.value.x=0):a.value==="y"&&(M=((v=u.value)==null?void 0:v.y)||0,d.value.y=0);const w=`translate3d(${Math.round(m)}px, ${Math.round(M)}px, 0px)`;i.value&&(i.value.style.transform=w),p.value.x=m,p.value.y=M}function k(){if(!c.value||!i.value)return null;const m=c.value.getBoundingClientRect(),M=i.value.getBoundingClientRect(),w={top:m.top<M.top,right:m.right>M.right,bottom:m.bottom>M.bottom,left:m.left<M.left};return w.top||(d.value.y-=M.top-m.top),w.bottom||(d.value.y-=M.bottom-m.bottom),w.right||(d.value.x-=M.right-m.right),w.left||(d.value.x-=M.left-m.left),b(),w}function T(m){m&&(u.value&&m.subtract(u.value),d.value.set(m),b(),k())}function g(m){s.value&&r.value&&(m.stopPropagation(),m.preventDefault(),T($e.fromEvent(m,l.value)))}function C(){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",C))}function S(){!s.value&&l.value&&(s.value=!0,l.value.classList.add("ng-dragging"),document.addEventListener("mousemove",g),document.addEventListener("mouseup",C))}function h(){if(i.value){const m=$e.getTransformInfo(i.value);f.value.set(m);return}f.value.reset()}function _(m){if(!o.value||m instanceof MouseEvent&&m.button===2)return;const M=m.target||m.srcElement;l.value!==void 0&&M&&!y(M,l.value)||r.value!==!1&&(document.body.click(),m.stopPropagation(),m.preventDefault(),u.value=$e.fromEvent(m,i.value),h(),S())}function N(m,M,w){if(r.value&&M){if(m)l.value=m;else if(e.dragHandle){if(e.dragHandle instanceof HTMLElement)l.value=e.dragHandle;else if(typeof e.dragHandle=="string"){const x=M.querySelector(e.dragHandle);x&&(l.value=x)}}i.value=M,c.value=w,l.value?(l.value.classList.add("ng-draggable"),l.value.addEventListener("mousedown",_)):r.value=!1}}return{registerDraggle:N,resetTranslate:h}}function pn(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 Zi(e,t){const o=n.ref(e.enableEsc);let i=null;return o.value?(i=pn("Escape",r=>{t.emit("esc",{event:r.event,type:"esc"})}),{remove:i}):null}function er(e,t){const o=n.ref(e.enableEnter);let i=null;return o.value?(i=pn("Enter",r=>{t.emit("enter",{event:r.event,type:"enter"})}),{remove:i}):null}const xt=n.defineComponent({name:"FModal",props:Ki,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),b=n.ref(e.src),k=n.ref(""),T=n.ref(e.showButtons),g=n.ref(e.title),C=n.ref(e.resizeable),S=n.ref(e.containment||null),h=n.ref();function _(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=>{_(j,!1)}},{name:"accept",text:"确定",class:"btn btn-primary",handle:j=>{_(j,!0)}}],m=n.ref(e.buttons&&e.buttons.length?e.buttons:N),M=n.computed(()=>!!u.value),w=n.computed(()=>!!T.value&&!!m.value),x=n.ref(),v=n.ref(),F=n.ref(!1),{renderResizeBar:V,maximize:I,restore:B,boundingElement:$,resizedEventParam:E,allowDrag:O,unWindowResizeHandle:L}=Ji(e),{registerDraggle:H}=Qi(e,t,O);function U(){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||U())}),n.watch(()=>e.showHeader,(j,ie)=>{j!==ie&&(s.value=j)}),n.watch(()=>e.showButtons,(j,ie)=>{j!==ie&&(T.value=j)}),n.watch(()=>E.value,(j,ie)=>{const te=j||{},ge=ie||{};JSON.stringify(te)!==JSON.stringify(ge)&&t.emit("resize",{newSize:j,oldSize:ie})});const Q=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=!!Q.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}),D=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"]=O.value?"auto":"none",j}),ee=n.computed(()=>({"f-icon":!0,modal_maximize:!0,modalrevert:F.value})),A=n.computed(()=>({"modal-body":!0,"f-utils-flex-column":y.value==="iframe"}));function z(){return{}}const ye=n.computed(()=>{const j={textAlgin:k.value},ie=z();return Object.assign(j,ie)});function fe(j){if(j.stopPropagation(),F.value){F.value=!1,B();return}I(),F.value=!0}async function Oe(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(()=>{v.value&&!S.value&&(S.value=v.value.parentElement,$.value=S.value,H(x.value,v.value,$.value)),Q.value&&document.body.classList.add("modal-open"),Me=Zi(e,t),Se=er(e,t)}),n.onUnmounted(()=>{L&&L(),Me&&Me.remove(),Se&&Se.remove()}),t.expose({modalElementRef:v,updateModalOptions:je,close:_,maxDialog:fe});function ke(){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=>_(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=>{Oe(j,ie)}},[!!j.iconClass&&n.createVNode("i",{class:j.iconClass},null),j.text]))])}function Ie(){return n.createVNode("div",{ref:x,class:"modal-header",style:ue.value},[n.createVNode("div",{class:"modal-title"},[M.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"},[ke()])])}function pe(j){j.stopPropagation()}return()=>n.createVNode(n.Teleport,{to:"body"},{default:()=>[Q.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:D.value,ref:v},[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:b.value},null)]),w.value&&Pe()]),!c.value&&C.value&&v.value&&!F.value&&V(v.value)])])]}})]})}});function mn(e){if(e.content&&e.content.render)return e.content.render;if(e.render&&typeof e.render=="function")return e.render}function tr(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||(()=>{}),b=e.closedCallback||(C=>{}),k=e.resizeHandle||(C=>{}),T=mn(e),g=C=>{f.value=!1,o.unmount(),b(C)};return n.onMounted(()=>{}),r.expose({modalRef:a}),()=>n.createVNode(xt,{ref:a,class:l.value,modelValue:f.value,"onUpdate:modelValue":C=>f.value=C,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:k},{default:()=>[T&&T(o)]})}});return document.body.appendChild(t),o.mount(t),o}class hn{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 tr(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,_)=>{}),s=i.value.resizeHandle||(h=>{});let u;const f=mn(i.value),d=h=>{var N;r.value=!1;const _=(N=h==null?void 0:h.target)==null?void 0:N.classList.contains("modal_close");c(h,this.isUseEscCloseModal.value?"esc":_?"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 _=Object.keys(this.modalRefs).map(N=>Number(N));_.length>0?this.activeModalIndex.value=Math.max(..._):this.activeModalIndex.value=0}this.isUseEscCloseModal.value=!1})},y=h=>{var _;this.isUseEscCloseModal.value=!0,this.activeModalInstance&&((_=this.activeModalInstance.value)==null||_.close(h==null?void 0:h.event))},{width:b,height:k}=i.value,T=this.adaptToWindow(b||500,k||320);Object.assign(i.value,T);const g=()=>n.createVNode(xt,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 _=n.h(g,h);return _.appContext=this.appContext,n.render(_,o),_})({...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 gn=Symbol("FModalService");xt.install=e=>{e.component(xt.name,xt);const t=new hn(e);e.provide(gn,t),e.provide("FModalService",t)};function yn(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 vn(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}=yn(e,r),u=n.computed(()=>e.showButtonWhenDisabled||(!e.editable||!e.readonly)&&!e.disable),f=n.inject(gn,null),d=n.ref();async function p(k){if(await s()&&u.value){const T=!!t.slots.default;if(a.value==="Modal"){const g=e.modalOptions,C=f==null?void 0:f.open({...g,render:()=>t.slots.default&&t.slots.default()});d.value=C==null?void 0:C.modalRef}a.value==="Overlay"&&Xi.show({host:document.body,backgroundColor:"rgba(0,0,0,.15)",render:()=>t.slots.default&&t.slots.default()}),T&&a.value==="Popup"&&i.togglePopup(!0),T&&l.value&&i.hidePopup(),t.emit("clickButton",{origin:k,value:e.modelValue})}}function y(k){t.emit("mouseEnterIcon",k)}function b(k){t.emit("mouseLeaveIcon",k)}return{buttonGroupClass:c,onClickButton:p,onMouseEnterButton:y,onMouseLeaveButton:b,modalRef:d}}function nr(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 b=!e.readonly&&!e.disable&&e.editable,k=!e.editable;y.stopPropagation(),(b||k)&&(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 or(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})),b=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 k(w,x=!0){o.value=w,x&&(t.emit("change",w),t.emit("update:modelValue",w))}function T(w){c.value=!1,k(w,!0)}n.watch(()=>e.modelValue,w=>{o.value=w});function g(w){d.value=!1,t.emit("blur",w),w.stopPropagation()}function C(w){t.emit("click",w),!e.disable&&!e.readonly&&e.popupOnClick&&r.togglePopup()}function S(w){e.disable||(d.value=!0,f.value||(t.emit("focus",w),l.value&&!c.value&&r.popup()))}function h(w){t.emit("input",w.target.value);const x=w.target.value;i.value=x,o.value!==x&&k(x,e.updateOn==="change"),a.value&&!c.value&&r.popup()}function _(w){w.target.tagName!=="INPUT"&&w.preventDefault(),w.stopPropagation()}function N(w){t.emit("keydown",w)}function m(w){w.key==="Enter"&&(a.value||l.value)&&r.hidePopup(),t.emit("keyup",w)}function M(w){const x=w.target.value;w.stopPropagation(),k(x)}return{hasFocusedTextBox:p,isTextBoxReadonly:f,textBoxClass:y,textBoxPlaceholder:u,textBoxTitle:s,inputGroupClass:b,changeTextBoxValue:k,commitValue:T,onBlurTextBox:g,onClickTextBox:C,onFocusTextBox:S,onInput:h,onKeyDownTextBox:N,onKeyUpTextBox:m,onMouseDownTextBox:_,onTextBoxValueChange:M}}function bn(e,t,o,i){const r=n.ref(),a=n.ref(!1),{judgeCanOpen:l}=yn(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 ir(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:b,onTextBoxValueChange:k}=o;return n.onMounted(()=>{var T,g;e.selectOnCreated&&((T=i.value)==null||T.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:k,onClick:u,onFocus:f,onInput:d,onKeydown:p,onKeyup:y,onMousedown:b},null)}function rr(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(an,{id:`${e.id}-tag-editor`,class:"form-control",data:a.value,showClose:!0,showInput:!0,onChange:l},null)}function ar(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 lr(e,t,o){const i=n.ref(e.popupMinWidth),{hidePopup:r,popoverRef:a}=o;return()=>n.createVNode(Vo,{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 vt=n.defineComponent({name:"FButtonEdit",props:Lt,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=bn(e,t,o,r),{shouldPopupContent:l,hidePopup:c,togglePopup:s}=a,u=vn(e,t,o,a,r),f=n.ref(""),d=or(e,t,r,f,a),{hasFocusedTextBox:p,commitValue:y,inputGroupClass:b}=d,k=nr(e,t,r,p,f,d),{onMouseEnterTextBox:T,onMouseLeaveTextBox:g}=k,C=n.computed(()=>{const w={"f-button-edit":!0,"f-cmp-inputgroup":!0,"f-button-edit-nowrap":!e.wrapText};return i.value&&i.value.split(" ").reduce((x,v)=>(x[v]=!0,x),w),w});function S(){return e.multiSelect&&e.inputType==="tag"?rr(e,r,d):ir(e,r,d)}let h=S();n.watch([()=>e.multiSelect,()=>e.inputType],()=>{h=S()});const{renderButtonGroup:_,buttonHandleElement:N}=ar(e,t,u,k),m=lr(e,t,a),M={commitValue:y,elementRef:o,hidePopup:c,shouldPopupContent:l,togglePopup:s,openDialog:()=>{N.value&&e.buttonBehavior==="Modal"&&N.value.click()},getModal:()=>{var w;return e.buttonBehavior==="Modal"?(w=u.modalRef.value)==null?void 0:w.value:null}};return n.onMounted(()=>{o.value.componentInstance=M,window.onresize=()=>{document.body.click()}}),t.expose(M),()=>n.createVNode(n.Fragment,null,[n.createVNode("div",n.mergeProps(t.attrs,{ref:o,class:C.value,id:e.id}),[n.createVNode("div",{id:`${e.id}-input-group`,class:b.value,onMouseenter:T,onMouseleave:g},[h(),_()])]),l.value&&m()])}});function sr(e,t,o){const{buttonGroupClass:i}=o,r=n.ref();return{renderButtonGroup:()=>n.createVNode("div",{id:`${e.id}-button-group`,class:i.value},[t.slots.buttonContent?n.createVNode("span",{class:"input-group-text input-group-append-button"},[t.slots.buttonContent()]):e.buttonContent?n.createVNode("span",{class:"input-group-text input-group-append-button",innerHTML:e.buttonContent,ref:r},null):null]),buttonHandleElement:r}}const cr=n.defineComponent({name:"FButtonEdit",props:Lt,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.inject("design-item-context"),r=Dt.useDesignerComponent(o,i),a=n.ref(e.customClass),l=n.ref(e.modelValue),c=bn(e,t,o,l),s=vn(e,t,o,c,l),u=n.ref(),f=n.computed(()=>({"f-cmp-inputgroup":!0,"input-group":!0,"f-state-disabled":!0,"f-state-editable":!1,"f-state-readonly":!0}));n.onMounted(()=>{o.value.componentInstance=r}),t.expose(r.value);const d=n.computed(()=>{const y={"f-button-edit":!0,"f-cmp-inputgroup":!0,"f-button-edit-nowrap":!e.wrapText};return a.value&&a.value.split(" ").reduce((b,k)=>(b[k]=!0,b),y),y}),{renderButtonGroup:p}=sr(e,t,s);return()=>n.createVNode("div",n.mergeProps(t.attrs,{ref:o,class:d.value,id:e.id}),[n.createVNode("div",{class:f.value},[n.createVNode("input",{ref:u,class:"form-control",readonly:!0,placeholder:e.placeholder},null),p()])])}});vt.register=(e,t,o,i)=>{e["button-edit"]=vt,t["button-edit"]=fn},vt.registerDesigner=(e,t,o)=>{e["button-edit"]=cr,t["button-edit"]=fn},xe.withInstall(vt);const Cn=new Map([["appearance",pt],["column","columnOption"]]),wn=new Map([]);var Gt=(e=>(e.SimpleField="SimpleField",e.ComplexField="ComplexField",e))(Gt||{}),Ft=(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))(Ft||{});function Sn(){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 dr=["moz","ms","webkit"];function ur(){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 fr(){if(typeof window>"u")return()=>0;if(window.requestAnimationFrame)return window.requestAnimationFrame.bind(window);const e=dr.filter(t=>`${t}RequestAnimationFrame`in window)[0];return e?window[`${e}RequestAnimationFrame`]:ur()}fr();const pr="root-viewmodel";class mr{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,b;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 k=this.resolver.getSchemaByType("section",{parentComponentInstance:o.parentComponentInstance,mainTitle:o.componentName},this.designerHostService);if(k&&k.contents&&k.contents.length){const T=k.contents[0];return T.contents=[t],this.appendAddDeleteBtnToParentContainer(T,o,i),k}}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&&((b=o.parentComponentInstance)==null||b.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=Sn().guid(),r=Sn().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:pr,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===Gt.ComplexField)return;const f=De.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===Ft.Enum||l===Ft.Boolean)&&(a="change"),o.push({type:"Form",id:r.id,fieldName:r.bindingField,groupId:null,groupName:null,updateOn:a,fieldSchema:{}})}),o}}function xn(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 mr(e,i).createComponent(y)}else return t}function Fn(e,t,o){return t}const hr={$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 gr(){function e(t,o){const i={};return i.beforeEditCell=r=>o.call("beforeEditCell",[r]),i}return{resolve:e}}const Wt={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}},yr=Object.assign({},Wt,{disabled:{},editable:{},componentId:{type:String,default:""}}),_n=Ae(Wt,hr,Cn,xn),vr=Pi(),br=Ri(),Cr=un(),wr=gr();var Re=(e=>(e[e.readonly=0]="readonly",e[e.editable=1]="editable",e[e.editing=2]="editing",e))(Re||{}),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||{}),qt=(e=>(e.NONE="none",e.NUMBER="number",e.DATE="date",e.TEXT="boolean",e.IMAGE="boolean2",e.ENUM="enum",e.CUSTOM="custom",e))(qt||{});function Sr(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(b){const k={};return b.reduce((T,g,C)=>{const S=C<b.length-1?b[C+1]:null;return C===0&&(T[g.field]={left:0}),g.actualWidth!==void 0&&(T[g.field].width=g.actualWidth),S&&(T[S.field]={left:T[g.field].left+(g.actualWidth||0)}),T},k),k}function l(b,k,T){const g=i*(T+1),S=k[b.field].left-g+(k[b.field].width||0),h=b.parent.height?`${b.parent.height}px`:"";return{left:`${g}px`,width:`${S}px`,height:`${h}`}}function c(b,k,T){return{right:"0px",height:`${b.parent.height?`${b.parent.height}px`:""}`}}function s(b,k){const T=b.parent.height?`${b.parent.height}px`:"";return{left:`${k[b.field].left}px`,height:`${T}`,width:isNaN(Number(k[b.field].width))?"100%":`${k[b.field].width}px`}}function u(b,k,T){const C=(k.spanned||[]).reduce((h,_)=>h+(_.parent.height||0),0)+(b.height||0);return{top:`${b.top}px`,left:`${T[k.field].left}px`,width:`${T[k.field].width}px`,height:`${C}px`,padding:`calc(${C/2}px - 1rem) 0`}}function f(b,k){return`${o}_${b.type}_r_${b.index}_c_${k}_${b.refreshKey||""}`}function d(b){return`${o}_${b.type}_r_${b.index}_${b.refreshKey||""}`}function p(b){const k=b.height?`${b.height}px`:"";return{top:`${b.top}px`,width:isNaN(r.value)?"100%":`${r.value}px`,height:`${k}`}}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 xr(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,b)=>{const k=p.includes(b),T=y.raw[i.value];d[b]=`repeating-linear-gradient(90deg, ${r.value} 0 1px, transparent 0px 2px) ${T?"-10px":"0px"} ${a.value/2}px/20px 1px no-repeat,repeating-linear-gradient(${r.value} 0 1px, transparent 0px 2px) 0px 0px/1px ${k?"50%":"100%"} no-repeat`}),d[0]=""}return d[f]}function s(f,d,p){return p[f].parents.set(f,!0).forEach(b=>{p[b].childsLength=p[b].childWithLines.filter(k=>d[k].visible).length}),d}function u(f){const y=f.raw.__fv_parent_index__===void 0||f.raw.__fv_parent_index__===-1?0:8,b=0,k=f.raw[i.value],T=f.visible?{left:`${f.layer*10+f.layer*y+b}px`,background:c(f.index),display:"flex",width:"100%",position:"relative",paddingLeft:"0.75rem"}:{display:"none"};return k||(T.paddingLeft="2rem"),T}return{hierarchyCellContentStyle:u,handleCollapsedPaddingBottom:s}}function Fr(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 _r(e,t,o,i,r,a,l,c){const{dataView:s,fold:u,hasRealChildren:f,unFold:d,reOrderVisibleIndex:p}=i,{collapseField:y,hasChildrenField:b}=r,{reCalculateVisualDataRows:k,updateVirticalScroll:T}=a;function g(h,_){var w,x;const N=_[h],m=N.__fv_parents__?(w=N.__fv_parents__)==null?void 0:w.size:0;let M=h+1;for(;M<_.length;){const v=_[M];if((v.__fv_parents__?(x=v.__fv_parents__)==null?void 0:x.size:0)>m)M++;else break}return M-1}function C(h,_){const N=s.value[h];N[y.value]=!N[y.value],N[b.value]=f(N);const m=N[y.value];let M=!1,w=h;for(;w<s.value.length;){const x=s.value[w];if((typeof x.__fv_parent_index__=="number"?Number(x.__fv_parent_index__):-1)>_)x.__fv_visible__=!m,x[y.value]&&(w=g(w,s.value)),M=!0;else if(M){w++;break}w++}p()}function S(h){if(h.raw[b.value]){const N=typeof h.raw.__fv_parent_index__=="number"?Number(h.raw.__fv_parent_index__):-1,m=Number(h.raw.__fv_index__);C(m,N),k(),T()}t.emit("expandNode",{row:h})}return{toggleTreeNode:S}}function Mr(e,t,o,i,r,a,l,c,s,u,f,d,p){const{onClickCell:y}=a,{gridRowClass:b,onClickRow:k,onMouseoverRow:T,onMouseoutRow:g}=c,{enableMultiSelect:C,select:S,unSelect:h,selectItem:_}=s;n.ref(e.cellHeight);const N=n.ref(e.treeNodeIconsData||{}),{hasChildrenField:m,shouldShowCheckBox:M,shouldShowIcon:w}=l,{toggleTreeNode:x}=_r(e,t,i,r,l,f),{toggleSelectHierarchyItem:v}=u,{cellKey:F,cellPosition:V,rowKey:I,rowPosition:B}=Sr(e,o),{hierarchyCellContentStyle:$}=xr(e,i,l),{treeNodeIconsClass:E}=Fr(e,N,m);function O(A,z){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,z){A.stopPropagation(),x(z)}function H(A,z){return n.createVNode("div",{class:O(A),onClick:ye=>L(ye,A)},null)}function U(A,z){return w.value&&n.createVNode("div",{id:"treeNodeIcons",class:E(A,z)},null)}function Q(A){C.value?(A.checked?S(A):h(A),v(A)):_(A)}function ne(A,z){return M.value&&n.createVNode(St.FCheckbox,{id:"checkbox_for_"+F(A,z.index),indeterminate:A.indeterminate,disabled:A.disabled,checked:A.checked,"onUpdate:checked":ye=>A.checked=ye,onChange:()=>Q(A)},null)}function le(A,z){return n.createVNode("span",{title:z.data},[z.mode===Re.editing?z.getEditor(z):z.formatter?z.formatter(z,A):z.data!=null?z.data.toString():z.data])}function D(A,z,ye){return n.createVNode("div",{ref:z.setRef,key:F(A,z.index),class:"fv-grid-hierarchy-cell",style:V(z,ye)},[n.createVNode("div",{style:$(A)},[H(A),U(A,z),ne(A,z),le(A,z)])])}function Z(A,z,ye){return n.createVNode("div",{ref:z.setRef,key:F(A,z.index),class:"fv-grid-cell",style:V(z,ye),onClick:fe=>y(fe,z,A,z.column)},[t.slots.cellTemplate?t.slots.cellTemplate({cell:z,row:A}):z.mode===Re.editing?z.getEditor(z):z.formatter?z.formatter(z,A):z.data!=null?z.data.toString():z.data])}function ue(A,z){return z==="left"&&o.value.leftColumns.length>0&&o.value.leftColumns[0].field===A.field||z==="primary"&&o.value.primaryColumns.length>0&&o.value.primaryColumns[0].field===A.field}function ee(A,z,ye="primary"){return n.createVNode("div",{ref:A.setRef,key:I(A),class:b(A),style:B(A),onMouseover:fe=>T(fe,A),onMouseout:fe=>g(fe,A),onClick:fe=>k(fe,A)},[Object.values(A.data).filter(fe=>z[fe.field]&&fe.rowSpan===1).map(fe=>ue(fe,ye)?D(A,fe,z):Z(A,fe,z))])}return{renderDataRow:ee}}function Mn(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 Tr(){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 Tn(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 Vr="";function Vn(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(_=>{_.showSetting=!1}),i.value.primaryColumns.forEach(_=>{_.showSetting=!1});const S=i.value.rightColumns.filter(_=>_.visible),h=i.value.primaryColumns.filter(_=>_.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((_,N)=>(_.set(N,!0),_),h),S.reduce((_,N)=>(N.visible=N.visible!==!1,N.filter=N.filter||Vr,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),_),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 b(S,h){return h.filterable&&S.push(h),S}function k(){const S=[];return i.value.leftColumns.reduce(b,S),i.value.primaryColumns.reduce(b,S),i.value.rightColumns.reduce(b,S),S}function T(){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(_=>_.sortOrder||0));return S.sort(y).map(_=>{const N=_.sortOrder||h+1;return _.sortOrder=N,_}).sort(p).map((_,N)=>{const m=N+1;return _.sortOrder=m,_})}function g(S,h,_){const N=S.map(m=>{const M=_.getSorterByColumn(m),w=m.sort==="asc",x=m.sort==="desc",v=w?M.ascend:x?M.decend:void 0;return{field:m.field,compare:v}});h.setSorters(N)}function C(S,h){const _=T();g(_,S,h)}return{applyColumnSorter:C,collectionFilterableColumns:k,applySortableColumns:g,collectionSortableColumns:T,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 kn(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 In(e,t){var u;const o=n.ref((u=e.columnOption)==null?void 0:u.groups);function i(f,d,p,y,b){const k={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"},T=y||k;if(f.group){let g=1;f.group.reduce((C,S)=>{if(typeof S=="string"){const h=d.get(S);h&&(b.fieldToRootMap.set(S,T),C.actualWidth+=h.actualWidth,C.children.push(h))}else{const h=i(S,d,C,T,b);g=Math.max(g,h.depth),C.actualWidth+=h.actualWidth,C.children.push(h)}return C},k),k.depth+=g}return t.value.headerDepth=Math.max(t.value.headerDepth,k.depth),k}function r(f){const d={groupedCells:new Map,fieldToRootMap:new Map};return o.value&&o.value.reduce((p,y)=>{const b=i(y,f,null,null,d);return p.groupedCells.set(y.field,b),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 b=y.children&&y.children.length===0;y.depth=b?p-(y.layer-1):1,y.left=b?y.left:a(y.children),y.children&&l(y.children,y)})}function c(f,d){const p=new Map;return f.forEach(y=>{const b=d.fieldToRootMap.get(y.field),k=b!=null;k&&!p.has(b.field)&&p.set(b.field,b),k||p.set(y.field,y)}),l(Array.from(p.values())),p}function s(f){let d=new Map,p=0;if(f.reduce((y,b)=>{let k=We.none;k=b.filterable?k|We.filterable:k,k=b.sort&&b.sort!=="none"?k|We.sorted|(b.sort==="asc"?We.ascending:We.descending):k;const T=b.field;return y.set(T,{actualWidth:b.actualWidth||0,children:[],depth:1,layer:1,left:p,field:T,parent:null,resizable:b.resizable===void 0?!0:b.resizable,title:b.title,status:k,popoverRef:n.ref(),showPopover:!1,column:b,filterValue:null,sortType:b.sort||"none",showSetting:b.showSetting}),p+=b.actualWidth||0,y},d),o.value){const y=r(d);d=c(d,y)}return d}return{getGridHeaderCells:s}}function kr(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 C;return(C=e.group)==null?void 0:C.enable}),c=n.computed(()=>{var C;return(C=e.group)==null?void 0:C.showGroupPanel}),s=n.computed(()=>{const C=i.value;return(C==null?void 0:C.groupFields)||[]}),u=n.computed(()=>{const C=r.value;return C&&C.showSummary}),f=new Map;let d=[];function p(C,S,h,_,N){const m=_[h];m&&(S.reduce((M,w,x)=>{var V;const v=w[m];let F=M.get(v);if(!F){const I=s.value.reduce((B,$)=>(B.set($,0),B),new Map);F={field:m,title:((V=N.get(m))==null?void 0:V.title)||m,value:v,layer:h,details:[],groupSummaries:I},M.set(v,F)}return s.value&&s.value.forEach(I=>{if(F){const B=F.groupSummaries.get(I)||0;F.groupSummaries.set(I,B+w[I])}}),F.details.push(w),M},C),h<_.length-1&&C.forEach((M,w)=>{M.nestGroup=new Map,p(M.nestGroup,M.details,h+1,_,N),M.details=[]}))}function y(C,S){return e.group&&e.group.formatter?e.group.formatter(C.value,{...C,total:S}):`${C.title}:${C.value} (${S})`}function b(C){const S=[];return C.forEach(h=>{const _={__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(_),h.nestGroup){const m=b(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((M,[w,x])=>`${M} ${w} total:${x} `,""),S.push(m)}h.groupSummaries&&h.groupSummaries.size&&h.groupSummaries.forEach((m,M)=>{_[M]=m}),_[o.value]=`group_of_${h.field}_${h.value}`,_[h.field]=y(h,N)}),S.forEach((h,_)=>{h.__fv_data_index__=_}),S}function k(C,S,h){return!C||C.length===0||!S.length?S:(C.join(","),f.clear(),d=[],S=S.filter(_=>!_.__fv_data_grid_group_row__),p(f,S,0,C,h),d=b(f),d)}function T(C){return{"f-icon":!0,"f-icon-arrow-chevron-down":!0,"fv-grid-group-row-icon-collapse":C.collapse}}return{collpaseGroupIconClass:T,generateGroupData:k,groupFields:a,shouldGroupingData:l,showGroupPanel:c}}function Ir(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(F,V){const I=new Map;return F.reduce((B,$)=>{const E=$[s.value]!==void 0?$[s.value]:"";if(E&&V.has(E)){const L=V.get(E);$.__fv_parent_index__=L.__fv_index__,L.__fv_hasChildren__=!0}const O=B.has(E)?B.get(E):[];return O.push($),B.set(E,O),B},I),I}function d(F){const V=new Map;return F.reduce((I,B)=>{const $=B[a.value];return I.set($,B),I},V),V}function p(F){F.forEach(V=>{const I=V[a.value];V.__fv_children_index__.map($=>F[$]).forEach($=>{$.__fv_parents__=new Map([...V.__fv_parents__.entries(),[I,!0]])})})}function y(F){F.forEach(V=>{const I=new Set(V.__fv_children_index__);V.__fv_children_index__=[...I].sort((B,$)=>B-$)})}function b(F,V){F.forEach(I=>{const B=I.__fv_parents__;Array.from(B.keys()).map($=>V.get($)).forEach($=>{$.__fv_children_index__.push(I.__fv_index__)})}),y(F)}function k(F){F.forEach(V=>{V.__fv_child_with_lines__=[],V.__fv_child_length__=V.__fv_descendant_index__.length,V.__fv_descendant_index__.map(I=>F[I]).reduce((I,B)=>(I.__fv_child_length__+=B.__fv_children_index__.length,I.__fv_child_with_lines__.push(...B.__fv_children_index__,B.__fv_index__),I),V)})}function T(F,V){return{id:F,index:V,parentId:"",parentIndex:-1,parents:new Map,children:new Map,descendant:new Map}}function g(F,V){Array.from(V.keys()).forEach(I=>{V.get(I).reduce(($,E)=>{const O=E[a.value],L=F.get(E[a.value]),H=F.get(I);return H&&(H.children.set(O,L),H.children.set(O,L),L.parentId=I,L.parentIndex=H.index,L.parents.set(I,H)),$},F)})}function C(F){F.children.forEach(I=>{I.parents=new Map([...F.parents.entries(),[F.id,F]]),C(I)})}function S(F,V){F.filter(I=>I[s.value]===void 0||I[s.value]==="").forEach(I=>{const B=I[a.value],$=V.get(B);C($)})}function h(F){Array.from(F.values()).forEach(V=>{Array.from(V.parents.values()).forEach(I=>{I.descendant.set(V.id,V)})})}function _(F){u.clear(),F.forEach((B,$)=>{const E=B[a.value];u.set(E,T(E,$))});const V=d(F),I=f(F,V);return g(u,I),S(F,u),h(u),u}function N(F){const V=F[a.value],I=u.get(V);return I&&I.children.size>0}function m(F){return F[c.value]&&!N(F)}function M(F){_(t.value);const V=d(F),I=f(F,V);return F.forEach((B,$)=>{var H;const E=B[a.value],O=I.has(E)?(H=I.get(E))==null?void 0:H.map(U=>U.__fv_index__):[],L=T(E,$);B.__fv_graph_node__=L,B.__fv_children_index__=O,B.__fv_descendant_index__=[...O],B.__fv_parents__=new Map,m(B)&&(B[l.value]=!0)}),p(F),b(F,V),e.showLines&&k(F),F}function w(F,V,I){const $=I.value[F][a.value],E=u.get($);if(E){const O=u.get(E.parentId);let L=I.value.length-1;if(O){const H=Array.from(O.children.keys()).indexOf(E.id);if(H===O.children.size-1){const Q=Array.from(O.descendant.values())[O.descendant.size-1];L=I.value.findIndex(le=>le[a.value]===Q.id)+1}else{const Q=Array.from(O.children.values())[H+1];L=I.value.findIndex(le=>le[a.value]===Q.id)}V[c.value]=!1,V[s.value]=O.id,I.value.splice(L,0,V)}}}function x(F,V,I){const B=I.value[F],$=B[a.value];if(u.get($)){const L=I.value.findIndex(H=>H[a.value]===$)+1;B[c.value]=!0,B[l.value]=!1,V[c.value]=!1,V[s.value]=$,I.value.splice(L,0,V)}}function v(F,V){const I=F[a.value],B=u.get(I),$=Array.from(B.descendant.keys());$.unshift(I);const E=u.get(B.parentId);if(E&&(E.children.delete(I),E.children.size===0)){const L=V.find(H=>H[a.value]===B.parentId);L[c.value]=!1,L[l.value]=!1}return V.filter(L=>$.indexOf(L.id)===-1)}return{generateHierarchyData:M,hasRealChildren:N,insertSibling:w,insertChild:x,shouldStratifyData:r,trimmedOriginalData:v}}const Nr={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}},Br={showCloseButton:{type:Boolean,default:!0},animate:{type:String,default:"fadeIn"},options:{type:Object}},zt=n.defineComponent({name:"Toast",props:Br,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 b(g,C){}function k(g){return`f-preten-link ${g.customClass?g.customClass:""}`}n.watch(o,()=>{o.value});const T=()=>{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(C=>n.createVNode("span",{class:k(C),onClick:S=>void 0},[C.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&&T()]),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"},[T()])]):n.createVNode("h5",{class:"toast-title modal-tips-title only-toast-msg",innerHTML:r.value.message},null))])])])}}),kt=n.defineComponent({name:"Notify",props:Nr,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,b={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&&(b.left="50%",b.marginLeft="calc(-24rem / 2)",c.value==="center-center"&&(b.top="50%",b.transform="translate(-50%, -50%)")),b});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(zt,{options:a.value,showCloseButton:l.value,animate:e.animate,onClose:p=>d(p,a.value)},null)])}});class Nn{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(kt,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 Bn=Symbol("NOTIFY_SERVICE_TOKEN");kt.install=e=>{e.component(kt.name,kt),e.component(zt.name,zt);const t=new Nn;e.provide(Bn,t),e.provide("FNotifyService",t)};function En(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=kr(e,r),{generateGroupData:y,groupFields:b,shouldGroupingData:k}=p,T=n.ref(e.data),g=Ir(e,T,i,r),{generateHierarchyData:C,hasRealChildren:S,insertSibling:h,insertChild:_,shouldStratifyData:N,trimmedOriginalData:m}=g,{idField:M,reviseIdentifyField:w}=r,x=n.ref(e.newDataItem),v=n.ref(e.data||[]),F=n.ref(e.data),{flatTreeData:V}=al(e);function I(P){return V(P)}if(e.data&&((it=e.data[0])!=null&&it.children)){const P=I(e.data);T.value=P,v.value=P,F.value=P}const B=n.ref(e.summary),$=n.computed(()=>{const P=B.value;return(P==null?void 0:P.groupFields)||[]});let E=new Map;const O=n.ref(v.value.length),L=n.ref(e.pagination);function H(){return L.value&&L.value.enable&&L.value.size>0?L.value.size:v.value.length}const U=n.ref(1),Q=n.computed(()=>L.value&&L.value.enable&&L.value.mode==="client"),ne=new Nn;function le(){var Be;v.value=T.value,Q.value&&(O.value=v.value.length),k.value&&(v.value=y(b.value,T.value,t)),E=$.value.reduce((Fe,_e)=>(Fe.set(_e,0),Fe),E);const P=0,W=H(),K=(U.value-1)*W,be=K>v.value.length-1?P:K,Ee=Math.min(be+W,v.value.length);let Ne=0;const Ce=[];if(v.value.length){w(v.value);const Fe=M.value!==e.idField;for(let _e=be;_e<Ee;_e++){const Ve=v.value[_e];Ve.__fv_data_grid_group_row__?(Ne=0,Ve.__fv_data_index__=""):Ve.__fv_data_grid_group_summary__?Ve.__fv_data_index__="":(Ne++,Ve.__fv_data_index__=Ne+(U.value-1)*W),Ve.__fv_index__=_e,Ve.__fv_visible_index__=_e,e.rowOption&&e.rowOption.disabledField&&(Ve.__fv_disabled__=Ve[(Be=e.rowOption)==null?void 0:Be.disabledField]),Fe&&(Ve[M.value]=_e),$.value.forEach(qe=>{const ft=E.get(qe)||0;E.set(qe,ft+Ve[qe])}),Ce.push(Ve)}}return N.value&&C(Ce),F.value=[...Ce],Ce}const D=n.ref(le()),Z=n.computed(()=>D.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():[...F.value]).filter(Ce=>o.apply(Ce)),Ee=P&&P.length?be.filter(Ce=>P.reduce((Be,Fe)=>Be&&Fe.filter(Ce),!0)):be,Ne=W&&W.length?Ee.sort((Ce,Be)=>{const Fe=[...W],_e=Fe.shift();let Ve=_e.compare(Ce[_e.field],Be[_e.field]);for(;Ve===0&&Fe.length!==0;){const qe=Fe.shift();qe&&(Ve=qe.compare(Ce[qe.field],Be[qe.field]))}return Ve}):Ee;return D.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}),D.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 z(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 Oe(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 ke(P){const W=P.raw[M.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())),C(D.value)}function Pe(P){const W=P[M.value];s.delete(`fold_${W}`)}function Ie(P){Pe(P.raw),ee(Array.from(s.values()),Array.from(u.values()),!0),C(D.value)}function pe(){const P=le();D.value=P,e.hierarchy&&(ee(Array.from(s.values()),Array.from(u.values())),C(D.value))}function j(P){const K=P&&P.length&&P[0].children?I(P):P;T.value=K,pe()}function ie(P,W,K){return(P&&P.length?D.value.filter((be,Ee)=>P.reduce((Ne,Ce)=>Ne&&Ce.filter(be),!0)):D.value).slice(W,K)}function te(P){const W=H(),K=P*W;0<K&&K<=O.value&&(U.value=P,pe())}function ge(P){T.value.push(De.cloneDeep(P)),D.value=le()}function Te(P=0){if(!(P>-1))return!1;const K=x.value();e.hierarchy?h(P,K,T):T.value.splice(P,0,K),pe()}function Le(P=0){if(!(P>-1&&e.hierarchy))return!1;const K=x.value(),me=T.value[P];Pe(me),_(P,K,T),pe()}function ze(P){const W=P?P-1:0;T.value.splice(W,1),pe()}function Ue(P){const W=T.value.findIndex(K=>K[M.value]===P);W!==-1&&(T.value.splice(W,1),pe())}function Qe(P){const W=P>-1?T.value[P]:null;if(!(W&&W.deletable!==!1))return!1;T.value=m(W,T.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=T.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=F.value.findIndex(be=>be[M.value]===K);return me>-1?F.value[me]:null}).filter(K=>K!=null)}return{addFilter:fe,addNewDataItem:ge,addSorter:z,changePageSizeTo:Ke,collapse:Me,dataView:D,editDataItem:nt,expand:Se,filters:f,fold:ke,getRange:ie,getSelectionItems:ot,hasRealChildren:S,insertNewChildDataItem:Le,insertNewDataItem:Te,load:j,navigatePageTo:te,pageIndex:U,rawView:F,refresh:Ze,removeAllFilter:je,removeDataItem:ze,removeDataItemById:Ue,removeFilter:Oe,removeHierarchyDataItem:Qe,removeSorter:ye,reOrderVisibleIndex:ue,setSorters:A,sorters:d,summaries:E,totalItems:O,unFold:Ie,updateDataView:pe,visibleDataItems:Z}}const $n={conditions:{type:Array,default:[]},fields:{type:Array,default:[]},key:{type:String,default:""},isControlInline:{type:Boolean,default:!0}};class On{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 jn{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,De.cloneDeep(o)));return i&&i.length?i.join(","):""}getValue(){const t=this.valueField.split("."),o=this.value.split(",").map(i=>this.getPropValue(i,De.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 Pn{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 Dn{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 Rn{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 Er{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,De.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 Hn{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 An{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 Ln{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 Gn{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 Wn{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 qn{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 zn(){function e(t,o){switch(t){case"check-box":return new On(o);case"combo-list":return new Rn(o);case"combo-lookup":return new jn(o);case"input-group":return new Er(o);case"date-picker":return new Pn(o);case"date-range":return new It(o);case"datetime-picker":return new Dn(o);case"datetime-range":return new It(o);case"lookup":return new Hn(o);case"month-picker":return new An(o);case"month-range":return new Ln(o);case"number-range":return new Gn(o);case"number-spinner":return new Wn(o);case"radio-group":return new qn(o);default:return new Nt(o)}}return{createConditionValue:e}}function Un(e,t){const o=n.ref(e.fields),i=n.ref([]),r=new Map,{createConditionValue:a}=zn();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 $r(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 Yn=n.defineComponent({name:"FConditionFields",props:$n,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=Un(e),{initialConditionValue:l,fieldMap:c,loadFieldConfigs:s}=a,u=$r(e,t,o),{conditionClass:f,resizeObserver:d}=u;s(!0),l(r.value),n.onBeforeUnmount(()=>{var T;(T=d.value)==null||T.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 b(T,g){t.emit("valueChange",T,g)}function k(){return r.value.map(T=>{var S,h,_,N;const g=(S=c.get(T.fieldCode))==null?void 0:S.editor;let C=!0;return((h=T.value)==null?void 0:h.editorType)==="lookup"&&g?(g.idValue=T.value.idValue,g.onClear=()=>{T.value.idValue="",T.value.mapFields=[],b("",T)},g["onUpdate:dataMapping"]=m=>{T.value.mapFields=m.items,b(T.value.getValue(),T)},C=!1):((_=T.value)==null?void 0:_.editorType)==="number-range"&&g&&(g.beginValue=T.value.begin,g.onBeginValueChange=m=>{T.value.begin=m,b(m,T)},g.endValue=T.value.end,g.onEndValueChange=m=>{T.value.end=m,b(m,T)},C=!1),n.createVNode(Rt.FDynamicFormGroup,{customClass:((N=g==null?void 0:g.appearance)==null?void 0:N.class)||y.value,label:T.fieldName,editor:g,required:g==null?void 0:g.required,modelValue:T.value.value,"onUpdate:modelValue":m=>T.value.value=m,onChange:m=>{C&&b(m,T)}},null)})}return()=>n.withDirectives(n.createVNode("div",{class:p.value,key:i.value,ref:o},[k()]),[[n.resolveDirective("area-response")]])}}),Ut=new Map([["appearance",pt]]),Or=new Map([]),jr="root-viewmodel";class Pr{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=De.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:jr,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===Ft.Enum||l===Ft.Boolean)&&(a="change"),o.push({type:"Form",id:r.id,fieldName:r.bindingField,groupId:null,groupName:null,updateOn:a,fieldSchema:{}})}),o}}function Dr(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 Pr(e,i).createComponent(y)}else return t}function Rr(e,t,o){return t}Ae({customClass:{type:String,default:""},customStyle:{type:String,defaut:""}},{$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/response-form.schema.json",title:"response-form",description:"A Farris Data Collection Component",type:"object",properties:{id:{description:"The unique identifier for a form group",type:"string"},type:{description:"The type string of form group component",type:"string",default:"response-form"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},contents:{description:"",type:"array",default:[]}},required:["id","type","contents"]},Ut,Dr);const Xn={$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"]},Kn={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:""}};Ae(Kn,Xn,Ut,void 0);function Yt(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 M=n.ref(m==null?void 0:m.value.parent),w=f(M);return w||null}function d(m=t){var v;const{componentInstance:M,designerItemElementRef:w}=m;if(!M||!M.value)return null;const{getCustomButtons:x}=M.value;return M.value.canMove||x&&((v=x())!=null&&v.length)?w: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 b(){}function k(m,M){!m||!M||o!=null&&o.onAcceptMovedChildElement&&o.onAcceptMovedChildElement(m,M)}function T(m,M){const{componentType:w}=m;let x=dn(w,m,M);o&&o.onResolveNewComponentSchema&&(x=o.onResolveNewComponentSchema(m,x));const v=w.toLowerCase().replace(/-/g,"_");return x&&!x.id&&x.type===w&&(x.id=`${v}_${Math.random().toString().slice(2,6)}`),x}function g(m){}function C(...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=m.id;m.type==="component-ref"&&(M=m.component);const w=e.value.querySelectorAll(`#${M}-design-item`);w!=null&&w.length&&Array.from(w).map(x=>{var v;(v=x==null?void 0:x.componentInstance)!=null&&v.value.onRemoveComponent&&x.componentInstance.value.onRemoveComponent()})})}function h(){if(o&&o.getCustomButtons)return o.getCustomButtons()}function _(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:C,getDragScopeElement:b,onAcceptMovedChildElement:k,onChildElementMovedOut:g,addNewChildComponentSchema:T,triggerBelongedComponentToMoveWhenMoved:!!o&&o.triggerBelongedComponentToMoveWhenMoved||n.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:!!o&&o.triggerBelongedComponentToDeleteWhenDeleted||n.ref(!1),onRemoveComponent:S,getCustomButtons:h,onPropertyChanged:_},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=De.cloneDeep(i.contents[r]);i.contents.splice(r,1),i.contents.splice(r,0,a)}}class Hr{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 Ar(e){let t,o;const i=new Map;let r=[];function a(f,d){const y=f.split(" ").filter(C=>C.startsWith("col-"));if(y.length===0){d.isSupportedClass=!1;return}let b=y.find(C=>/^col-([1-9]|10|11|12)$/.test(C)),k=y.find(C=>/^col-md-([1-9]|10|11|12)$/.test(C)),T=y.find(C=>/^col-xl-([1-9]|10|11|12)$/.test(C)),g=y.find(C=>/^col-el-([1-9]|10|11|12)$/.test(C));b=b||"col-12",d.columnInSM=parseInt(b.replace("col-",""),10),d.displayWidthInSM=d.columnInSM/12,d.displayWidthInSM!==1&&(d.isSupportedClass=!1),k=k||"col-md-"+d.columnInSM,d.columnInMD=parseInt(k.replace("col-md-",""),10),d.displayWidthInMD=d.columnInMD/6,[1,2].includes(d.displayWidthInMD)||(d.isSupportedClass=!1),T=T||"col-xl-"+d.columnInMD,d.columnInLG=parseInt(T.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 b=!1;f.contents.forEach(k=>{if(k.type==="fieldset"){p+=1,l(k,d,p,!0),b=!0;return}b&&(p+=1,b=!1);const T=k.appearance&&k.appearance.class,g=new Hr;T?a(T,g):g.isSupportedClass=!1,g.label=k.label||k.id,g.id=k.id,g.group=p,y&&(g.fieldSetId=f.id),o===k.id&&(t=p),i.set(k.id,k),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===Dt.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:b}=c(d);if(!p)return{result:p,message:y};o=f.id,r=[],i.clear();const k=b.contents[0].type===Dt.DgControl.fieldset.type?0:1;l(b,r,k);const T=r.find(C=>!C.isSupportedClass);return{defaultState:{defaultGroupNumber:t||1,model:T?"customize":"standard"},importData:r}}function u(f,d){d=d;const{result:p,formNode:y}=c(d);if(!p)return"";const b=[];return f.forEach(k=>{var C;const T=i.get(k.id),g=T.appearance&&T.appearance.class;if(g){const h=g.split(" ").filter(x=>!x.startsWith("col-")),_="col-"+k.columnInSM,N="col-md-"+k.columnInMD,m="col-xl-"+k.columnInLG,M="col-el-"+k.columnInEL,w=[_,N,m,M].concat(h);T.appearance.class=w.join(" ")}if(k.fieldSetId){const S=y.contents.find(_=>_.id===k.fieldSetId),h=b.find(_=>_.id===k.fieldSetId);h?(C=h.contents)==null||C.push(T):(b.push(S),S.contents=[T])}else b.push(T)}),y.contents=b,y.id}return{checkCanFindFormNode:c,checkCanOpenLayoutEditor:s,changeFormControlsByResponseLayoutConfig:u,getResonseFormLayoutConfig:l}}const _t=n.ref(0);function Lr(e,t){const o=t.getBoundingClientRect(),i=e.getBoundingClientRect(),r=i.top>=o.top,a=i.top<=o.bottom;return r&&a}function Gr(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 Wr(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 Jn(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=Wr(e);if(r&&(i=Lr(e,r)),!i){o.style.display="none";return}Gr(e)}}function qr(e){if(!e)return;let t;e.className.includes("dgComponentSelected")?t=e:t=e.querySelector(".dgComponentSelected"),t&&Jn(t)}var ut=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Et(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 zr={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 Et=="function"&&Et;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(b){var k=i[u][1][b];return l(k||b)},y,y.exports,o,i,r,a)}return r[u].exports}for(var c=typeof Et=="function"&&Et,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(v,F){var V=arguments.length;V===1&&Array.isArray(v)===!1&&(F=v,v=[]);var I,B,$,E,O,L,H,U,Q,ne=null,le,D,Z=!1,ue=0,ee,A=F||{};A.moves===void 0&&(A.moves=C),A.accepts===void 0&&(A.accepts=C),A.invalid===void 0&&(A.invalid=te),A.containers===void 0&&(A.containers=v||[]),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 z=l({containers:A.containers,start:j,end:ge,cancel:Qe,remove:Ue,destroy:Me,canMove:pe,dragging:!1});return A.removeOnSpill===!0&&z.on("over",P).on("out",W),fe(),z;function ye(R){return z.containers.indexOf(R)!==-1||A.isContainer(R)}function fe(R){var G=R?"remove":"add";b(f,G,"mousedown",ke),b(f,G,"mouseup",Le)}function Oe(R){var G=R?"remove":"add";b(f,G,"mousemove",Pe)}function je(R){var G=R?"remove":"add";c[G](f,"selectstart",Se),c[G](f,"click",Se)}function Me(){fe(!0),Le({})}function Se(R){le&&R.preventDefault()}function ke(R){E=R.clientX,O=R.clientY;var G=k(R)!==1||R.metaKey||R.ctrlKey;if(!G){var J=R.target,de=Ie(J);de&&(le=de,Oe(),R.type==="mousedown"&&(N(J)?J.focus():R.preventDefault()))}}function Pe(R){if(le){if(k(R)===0){Le({});return}if(!(R.clientX!==void 0&&Math.abs(R.clientX-E)<=(A.slideFactorX||0)&&R.clientY!==void 0&&Math.abs(R.clientY-O)<=(A.slideFactorY||0))){if(A.ignoreInputTextSelection){var G=x("clientX",R)||0,J=x("clientY",R)||0,de=u.elementFromPoint(G,J);if(N(de))return}var ve=le;Oe(!0),je(),ge(),ie(ve),s.add(U||$,"gu-transit"),me(),K(),ue=0,ot(R)}}}function Ie(R){if(!(z.dragging&&I)&&!ye(R)){for(var G=R;_(R)&&ye(_(R))===!1;)if(A.invalid(R,G)||(R=_(R),!R))return;var J=_(R);if(J&&!A.invalid(R,G)){var de=A.moves(R,J,G,M(R));if(de)return{item:R,source:J}}}}function pe(R){return!!Ie(R)}function j(R){var G=Ie(R);G&&ie(G)}function ie(R){ft(R.item,R.source)&&(U=R.item.cloneNode(!0),z.emit("cloned",U,R.item,"copy")),B=R.source,$=R.item,L=H=M(R.item),z.dragging=!0,z.emit("drag",$,B)}function te(){return!1}function ge(){if(z.dragging){var R=U||$;ze(R,_(R))}}function Te(){le=!1,Oe(!0),je(!0)}function Le(R){if(Te(),!!z.dragging){var G=U||$,J=x("clientX",R)||0,de=x("clientY",R)||0,ve=T(I,J,de),we=nt(ve,J,de);we&&(U&&A.copySortSource||!U||we!==B)?ze(G,we):A.removeOnSpill?Ue():Qe()}}function ze(R,G){var J=_(R);U&&A.copySortSource&&G===B&&J.removeChild($),Ke(G)?z.emit("cancel",R,B):z.emit("drop",R,G,B,H),Ze()}function Ue(){if(z.dragging){var R=U||$,G=_(R);G&&G.removeChild(R),z.emit(U?"cancel":"remove",R,G,B),Ze()}}function Qe(R){if(z.dragging){var G=arguments.length>0?R:A.revertOnSpill,J=U||$,de=_(J),ve=Ke(de);ve===!1&&G&&(U?de&&de.removeChild(U):B.insertBefore(J,L)),ve||G?z.emit("cancel",J,B,B):z.emit("drop",J,de,B,H),Ze()}}function Ze(){var R=U||$;Te(),be(),Ee(),R&&s.rm(R,"gu-transit"),Q&&clearTimeout(Q),z.dragging=!1,ne&&z.emit("out",R,ne,B),z.emit("dragend",R,ue),B=$=U=L=H=Q=ne=null}function Ke(R,G){var J;return G!==void 0?J=G:I?J=H:J=M(U||$),R===B&&J===L}function nt(R,G,J){for(var de=R;de&&!ve();)de=_(de);return de;function ve(){var we=ye(de);if(we===!1)return!1;var rt=Ne(de,R),Ye=qe(de,rt,G,J),et=Ke(de,Ye);return et?!0:A.accepts($,de,B,Ye)}}function ot(R){if(!I)return;R.preventDefault();var G=x("clientX",R)||0,J=x("clientY",R)||0;I.style.left=G-2+"px",I.style.top=J-2+"px";var de=U||$,ve=T(I,G,J),we=nt(ve,G,J),rt=we!==null&&we!==ne;(rt||we===null)&&(Je(),ne=we,st()),Ve(ve,J);var Ye=_(de);if(we===B&&U&&!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,J);else if(A.revertOnSpill===!0&&!U)et=L,we=B;else{U&&Ye&&Ye.removeChild(de),U&&D&&(D.style.display="none");return}D.style.display="block",it(et,de,rt),et?Fe(at,et):_e(we);function He(Ge){z.emit(Ge,de,ne,B)}function st(){rt&&He("over")}function Je(){ne&&He("out")}}function it(R,G,J){(R===G||R===M(G))&&(H=M(G)),(R===null&&J||R!==G&&R!==M(G))&&(H=R)}function P(R){s.rm(R,"gu-hide")}function W(R){z.dragging&&s.add(R,"gu-hide")}function K(){I||(I=document.createElement("div"),I.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;",I.innerHTML=A.getMirrorText&&A.getMirrorText($)||"控件",s.add(I,"gu-mirror"),A.mirrorContainer.appendChild(I),b(f,"add","mousemove",ot),s.add(A.mirrorContainer,"gu-unselectable"),z.emit("cloned",I,$,"mirror"))}function me(){if(D=document.createElement("div"),s.add(D,"gu-insertion"),$){var R=$.getBoundingClientRect();D.style.left=R.left+"px",D.style.top=R.top+"px"}Z=!1,A.mirrorContainer.appendChild(D)}function be(){I&&(s.rm(A.mirrorContainer,"gu-unselectable"),b(f,"remove","mousemove",ot),_(I).removeChild(I),I=null)}function Ee(){D&&(_(D).removeChild(D),D=null)}function Ne(R,G){for(var J=G;J!==R&&_(J)!==R;)J=_(J);return J===f?null:J}function Ce(R,G){if(!G)return Z;var J=R||G&&G.lastElementChild;if(!J)return!0;var de=getComputedStyle(R),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(R){if(!R.children||!R.children.length)return!1;for(const G of Array.from(R.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(R,G){const J=G.getBoundingClientRect();if(D.style.left=J.left+"px",D.style.top=J.top+"px",Z){if(D.style.height=J.height+"px",D.style.width="4px",R){const de=R.getBoundingClientRect();de.top!==J.top&&(D.style.left=de.right+"px",D.style.top=de.top+"px",D.style.height=de.height+"px")}}else if(D.style.height="4px",D.style.width=J.width+"px",ee){const de=ee.getBoundingClientRect();J.top<de.top&&(D.style.display="none")}G===$&&$&&(D.style.display="none")}function _e(R){H=null;var G=R.lastElementChild;if(G){var J=G.getBoundingClientRect();Z?(D.style.left=J.right+"px",D.style.top=J.top+"px",D.style.height=J.height+"px",D.style.width="4px"):(D.style.left=J.left+"px",D.style.top=J.bottom+"px",D.style.height="4px",D.style.width=J.width+"px"),G===$&&$&&(D.style.display="none")}else D.style.display="none"}function Ve(R,G){if(!A.mirrorContainer.contains(R)||!window.scrollContainerList||!Array.from(window.scrollContainerList).length||(ee=p(R),!ee||!ee.contains(R)))return;const J=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),J&&ee.contains(J)&&(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),J&&ee.contains(J)&&(ue=ue+we)}}function qe(R,G,J,de){var ve=A.direction==="horizontal",we=A.direction==="mixed",rt=G!==R?et():Ye();return rt;function Ye(){var He=R.children.length,st,Je,Ge;for(st=0;st<He;st++)if(Je=R.children[st],Ge=Je.getBoundingClientRect(),ve&&Ge.left+Ge.width/2>J||!we&&!ve&&Ge.top+Ge.height/2>de||we&&Ge.left+Ge.width>J&&Ge.top+Ge.height>de)return Je;return null}function et(){var He=G.getBoundingClientRect();if(we){var st=de-He.top,Je=J-He.left,Ge=He.bottom-de,Ct=He.right-J,wt=Math.min(Je,Ct,st,Ge),he;return Z?he=Ct<Je:he=Ge===wt||Ct===wt||Je===wt,at(he)}return at(ve?J>He.left+S(He)/2:de>He.top+h(He)/2)}function at(He){return He?M(G):G}}function ft(R,G){return typeof A.copy=="boolean"?A.copy:A.copy(R,G)}}function p(v){const F=Array.from(window.scrollContainerList);if(F.length===1){const I=Array.from(window.scrollContainerList)[0];return document.getElementById(I)}const V=y(F);for(const I of V)if(I.contains(v))return I;return null}function y(v){const F=[];return v.forEach(V=>{const I=document.getElementById(V);I&&F.push(I)}),F.sort((V,I)=>V.contains(I)?1:I.contains(V)?-1:0),F}function b(v,F,V,I){var B={mouseup:"touchend",mousedown:"touchstart",mousemove:"touchmove"},$={mouseup:"pointerup",mousedown:"pointerdown",mousemove:"pointermove"},E={mouseup:"MSPointerUp",mousedown:"MSPointerDown",mousemove:"MSPointerMove"};a.navigator.pointerEnabled?c[F](v,$[V],I):a.navigator.msPointerEnabled?c[F](v,E[V],I):(c[F](v,B[V],I),c[F](v,V,I))}function k(v){if(v.touches!==void 0)return v.touches.length;if(v.which!==void 0&&v.which!==0)return v.which;if(v.buttons!==void 0)return v.buttons;var F=v.button;if(F!==void 0)return F&1?1:F&2?3:F&4?2:0}function T(v,F,V){v=v||{};var I=v.className||"",B;return v.className+=" gu-hide",B=u.elementFromPoint(F,V),v.className=I,B}function g(){return!1}function C(){return!0}function S(v){return v.width||v.right-v.left}function h(v){return v.height||v.bottom-v.top}function _(v){return v.parentNode===u?null:v.parentNode}function N(v){return v.tagName==="INPUT"||v.tagName==="TEXTAREA"||v.tagName==="SELECT"||m(v)}function m(v){return!v||v.contentEditable==="false"?!1:v.contentEditable==="true"?!0:m(_(v))}function M(v){return v.nextElementSibling||F();function F(){var V=v;do V=V.nextSibling;while(V&&V.nodeType!==1);return V}}function w(v){return v.targetTouches&&v.targetTouches.length?v.targetTouches[0]:v.changedTouches&&v.changedTouches.length?v.changedTouches[0]:v}function x(v,F){var V=w(F),I={pageX:"clientX",pageY:"clientY"};return v in I&&!(v in V)&&I[v]in V&&(v=I[v]),V[v]}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 b=arguments.length;if(b===1)delete d[p];else if(b===0)d={};else{var k=d[p];if(!k)return s;k.splice(k.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 b=a(arguments),k=this||s;if(p==="error"&&f.throws!==!1&&!y.length)throw b.length===1?b[0]:b;return y.forEach(function(g){f.async?l(g,b,k):g.apply(k,b),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=b,d=[];a.addEventListener||(u=y,f=k),i.exports={add:u,remove:f,fabricate:T};function p(_,N,m,M){return _.addEventListener(N,m,M)}function y(_,N,m){return _.attachEvent("on"+N,C(_,N,m))}function b(_,N,m,M){return _.removeEventListener(N,m,M)}function k(_,N,m){var M=S(_,N,m);if(M)return _.detachEvent("on"+N,M)}function T(_,N,m){var M=c.indexOf(N)===-1?x():w();_.dispatchEvent?_.dispatchEvent(M):_.fireEvent("on"+N,M);function w(){var v;return s.createEvent?(v=s.createEvent("Event"),v.initEvent(N,!0,!0)):s.createEventObject&&(v=s.createEventObject()),v}function x(){return new l(N,{detail:m})}}function g(_,N,m){return function(w){var x=w||a.event;x.target=x.target||x.srcElement,x.preventDefault=x.preventDefault||function(){x.returnValue=!1},x.stopPropagation=x.stopPropagation||function(){x.cancelBubble=!0},x.which=x.which||x.keyCode,m.call(_,x)}}function C(_,N,m){var M=S(_,N,m)||g(_,N,m);return d.push({wrapper:M,element:_,type:N,fn:m}),M}function S(_,N,m){var M=h(_,N,m);if(M){var w=d[M].wrapper;return d.splice(M,1),w}}function h(_,N,m){var M,w;for(M=0;M<d.length;M++)if(w=d[M],w.element===_&&w.type===N&&w.fn===m)return M}}).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,b,k=-1;function T(){!y||!b||(y=!1,b.length?p=b.concat(p):k=-1,p.length&&g())}function g(){if(!y){var h=f(T);y=!0;for(var _=p.length;_;){for(b=p,p=[];++k<_;)b&&b[k].run();k=-1,_=p.length}b=null,y=!1,d(h)}}a.nextTick=function(h){var _=new Array(arguments.length-1);if(arguments.length>1)for(var N=1;N<arguments.length;N++)_[N-1]=arguments[N];p.push(new C(h,_)),p.length===1&&!y&&f(g)};function C(h,_){this.fun=h,this.array=_}C.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,b){this._id=y,this._clearFn=b}p.prototype.unref=p.prototype.ref=function(){},p.prototype.close=function(){this._clearFn.call(window,this._id)},r.enroll=function(y,b){clearTimeout(y._idleTimeoutId),y._idleTimeout=b},r.unenroll=function(y){clearTimeout(y._idleTimeoutId),y._idleTimeout=-1},r._unrefActive=r.active=function(y){clearTimeout(y._idleTimeoutId);var b=y._idleTimeout;b>=0&&(y._idleTimeoutId=setTimeout(function(){y._onTimeout&&y._onTimeout()},b))},r.setImmediate=typeof a=="function"?a:function(y){var b=d++,k=arguments.length<2?!1:u.call(arguments,1);return f[b]=!0,c(function(){f[b]&&(k?y.apply(null,k):y.call(null),r.clearImmediate(b))}),b},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)})})(zr);const Qn=new Map([["appearance",pt],["column","columnOption"]]);function Ur(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 Yr(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 Xr(e,t,o){const i=e.getSchemaByType("content-container");return i.id=`${t.id}-layout`,i.appearance={class:"f-grid-is-sub f-utils-flex-column"},i.contents=[t],i}function Zn(e,t,o){const r=o.parentComponentInstance.schema.type,a=r==="section"||r==="tab-page";t.appearance={class:"f-component-grid"};const c=(a?Xr:Yr)(e,t,o);return Ur(e,c,o)}const eo={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/tree-grid.schema.json",title:"tree-grid",description:"A Farris Data Grid Component",type:"object",properties:{id:{description:"The unique identifier for a Input Group",type:"string"},type:{description:"The type string of Input Group component",type:"string",default:"tree-grid"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},fit:{type:"boolean",default:!1},showStripe:{type:"boolean",default:!0},showBorder:{type:"boolean",default:!1},showTreeNodeIcons:{type:"boolean",default:!1},showSetting:{type:"boolean",default:!1},size:{description:"",type:"object",properties:{width:{type:"number"},height:{type:"number"}},default:null},dataSource:{description:"",type:"string",default:""},columns:{description:"",type:"array",default:[]},identifyField:{description:"",type:"string"},editable:{description:"",type:"boolean",default:!1},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"]},Xt={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}},Kr=Ae(Xt,eo,Qn,Zn),Jr=Hi(),Qr=Di(),to=Object.assign({},Xt,{componentId:{type:String,default:""}}),Zr=Ae(to,eo,Qn,Zn),ea=un();function ta(e,t,o,i,r,a,l,c,s,u,f,d,p,y,b,k,T){const{calculateCellPositionInRow:g}=a,{columnContext:C,hasLeftFixedColumn:S,hasRightFixedColumn:h}=l,{gridDataStyle:_,leftFixedGridDataStyle:N,rightFixedGridDataStyle:m}=y,{renderDataRow:M}=Mr(e,t,C,T,c,s,u,f,d,p,y),w=[M];function x(B,$){const E=g(B);return T.value.filter(O=>O.visible!==!1).map(O=>w[O.type](O,E,$))}function v(){return n.createVNode("div",{ref:i,class:"fv-grid-content-left-fixed"},[n.createVNode("div",{class:"fv-grid-data",style:N.value},[x(C.value.leftColumns.filter(B=>B.visible),"left")])])}function F(){return n.createVNode("div",{ref:o,class:"fv-grid-content-primary"},[n.createVNode("div",{class:"fv-grid-data",style:_.value},[x(C.value.primaryColumns.filter(B=>B.visible),"primary")])])}function V(){return n.createVNode("div",{ref:r,class:"fv-grid-content-right-fixed"},[n.createVNode("div",{class:"fv-grid-data",style:m.value},[x(C.value.rightColumns.filter(B=>B.visible),"right")])])}function I(){const B=[];return S.value&&B.push(v()),B.push(F()),h.value&&B.push(V()),B}return{renderDataArea:I}}const $t=n.defineComponent({name:"FTreeGrid",props:Xt,emits:["selectionChange","clickRow","expandNode"],setup(e,t){var ft,R;const i=((ft=e.rowOption)==null?void 0:ft.height)||28,r=n.ref(20),a=n.ref(e.columns),l=Y.useIdentify(e),c=n.ref(),s=n.ref(),u=n.ref(),f=n.ref(),d=n.ref(),p=n.ref([]),y=n.ref(!1),b=n.ref(((R=e.rowOption)==null?void 0:R.wrapContent)||!1),k=Y.useGroupData(e,l),T=Y.useFilter(),g=Y.useHierarchy(e),{showLoading:C,renderLoading:S}=Y.useLoading(e,c),h=Y.useDataView(e,new Map,T,g,l),_=Y.useSelection(e,h,l,p,t),N=Y.useSelectHierarchyItem(e,p,l,_,t),m=n.computed(()=>e.disabled),M=n.computed(()=>e.virtualized?Math.min(h.dataView.value.length,r.value):h.dataView.value.length),{containerStyleObject:w}=Y.useDataViewContainerStyle(e),x=Y.useCommandColumn(e),{applyCommands:v}=x;v(a);const F=Y.useColumn(e),V=Y.useSort(e),{applyColumnSorter:I,columnContext:B,updateColumnRenderContext:$}=F;I(h,V);const E=Y.useGroupColumn(e,B),O=Y.useRow(e,t,_,l),L=Y.useEdit(e,t,l,O),H=Y.useVisualDataBound(e),U=Y.useVisualDataCell(e,L,H),Q=Y.useVisualDataRow(e,L,g,l,H,U),ne=Y.useVisualData(e,a,h,M,0,Q),{getVisualData:le}=ne,D=Y.useCellPosition(e,B),Z=Y.useSidebar(e,_),{sidebarWidth:ue}=Z,ee=Y.useVirtualScroll(e,h,p,B,ne,M,0,ue),{onWheel:A,dataGridWidth:z,viewPortHeight:ye,viewPortWidth:fe,resetScroll:Oe,updateVisibleRowsOnLatestVisibleScope:je}=ee,Me=Y.useFitColumn(e,B,s,fe,E),{calculateColumnsSize:Se}=Me,ke=Y.useFilterHistory(),Pe=Y.useColumnFilter(s,d,h,ke,ee),Ie=Y.useDragColumn(e,t,F,h,E,k,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":b.value})),{renderDataArea:ie}=ta(e,t,u,f,d,D,F,h,L,g,O,_,N,ee,ne,H,p),{renderGridHeader:te,renderGridColumnResizeOverlay:ge,shouldShowHeader:Te}=Y.getColumnHeader(e,t,s,f,d,F,h,Ie,Pe,T,ke,Me,E,_,Z,V,ee,fe,p),{renderDataGridSidebar:Le}=Y.getSidebar(e,O,_,Z,ee),{renderDisableMask:ze}=Y.getDisableMask(),{renderHorizontalScrollbar:Ue}=Y.getHorizontalScrollbar(e,s,ee),{renderVerticalScrollbar:Qe}=Y.getVerticalScrollbar(e,s,ee);function Ze(){var G,J,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=((J=u.value)==null?void 0:J.clientHeight)||0,z.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,M.value+0-1),Vt.useResizeObserver(s.value,Ze),Se(),n.nextTick(()=>{s.value&&(z.value=s.value.clientWidth),u.value&&(fe.value=u.value.clientWidth,ye.value=u.value.clientHeight)})),C.value&&S()}),n.onUnmounted(()=>{}),n.watch(fe,()=>{s.value&&Se()});function Ke(){const G=_.getSelectionRow();return G?G.dataIndex-1:-1}function nt(){const G=Ke();h.insertNewDataItem(G),p.value=le(0,M.value+0-1)}function ot(){const G=Ke();h.insertNewChildDataItem(G),p.value=le(0,M.value+0-1)}function it(){const G=Ke(),J=N.getNextSelectableHierarchyItemId(G);h.removeHierarchyDataItem(G),p.value=le(0,M.value+0-1),J&&_.selectItemById(J)}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,v(a),$(a.value),I(h,V),Se())}function be(G){G&&(h.load(G),Oe())}function Ee(G){_.selectItemById(G)}function Ne(G){const J=p.value.find(de=>de.raw[l.idField.value]===G);J&&O.clickRowItem(J)}function Ce(G){_.selectItemByIds(G)}function Be(){return _.getSelectedItems()}function Fe(){_.clearSelection()}const _e=n.computed(()=>!p.value||!p.value.length),{renderEmpty:Ve}=Y.getEmpty(t);function qe(){return _.getSelectionRow()}return t.expose({addNewDataItem:nt,addNewChildDataItem:ot,removeDataItem:it,editDataItem:P,acceptDataItem:W,cancelDataItem:K,updateColumns:me,updateDataSource:be,selectItemById:Ee,selectItemByIds:Ce,getSelectedItems:Be,clearSelection:Fe,getSelectionRow:qe,clickRowItemById:Ne}),()=>n.createVNode("div",{ref:c,class:pe.value,style:w.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&&Le(p),s.value&&ie(),s.value&&_e.value&&Ve(),s.value&&Ue(),s.value&&Qe()]),ge(),m.value&&ze()])}}),na={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}},oa={},ia={},ra={id:{type:String}},aa=n.defineComponent({name:"FDesignerPlaceholder",props:ra,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 la(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!n.isVNode(e)}const Kt=n.defineComponent({name:"FDesignerItem",props:na,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(),b=n.inject("design-item-context"),k={designerItemElementRef:d,componentInstance:y,schema:l.value,parent:b,setupContext:t};n.provide("design-item-context",k);const T=n.inject("useFormSchema"),g=n.computed(()=>{var O;const B=e.modelValue.appearance&&e.modelValue.appearance.class||"",$=((O=y.value)==null?void 0:O.getCustomButtons)&&y.value.getCustomButtons();let E={"farris-component":!0,"flex-fill":l.value.id==="root-component","position-relative":i.value&&r.value||($==null?void 0:$.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}),C=n.computed(()=>{const B={},$=e.modelValue.appearance&&e.modelValue.appearance.style||"";return $&&$.split(";").reduce((E,O)=>{const[L,H]=O.split(":");return E[L]=H,E},B),s.value&&s.value.split(";").reduce((E,O)=>{const[L,H]=O.split(":");return L&&(E[L]=H),E},B),B});function S(B,$){var L,H;if(B&&(B.preventDefault(),B.stopPropagation()),y.value.triggerBelongedComponentToDeleteWhenDeleted){const U=y.value.getBelongedComponentInstance(y);if(U&&U.parent){const Q=n.ref(U==null?void 0:U.parent),ne=Q.value.contents.findIndex(le=>le.id===U.schema.id);(H=(L=Q.value)==null?void 0:L.contents)==null||H.splice(ne,1),_t.value++}return}y.value.onRemoveComponent();let E=b,O=U=>U.id===$.id;if($.type==="component"&&(E=b==null?void 0:b.parent,O=U=>U.component===$.id),E&&E.schema.contents){const U=E.schema.contents.findIndex(O);E.schema.contents.splice(U,1),_t.value++,t.emit("selectionChange")}}function h(B){return r.value&&n.createVNode("div",{role:"button",class:"btn component-settings-button",title:"删除",ref:"removeComponent",onClick:$=>{S($,B)}},[n.createVNode("i",{class:"f-icon f-icon-yxs_delete"},null)])}function _(){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 $;const B=(($=y.value)==null?void 0:$.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:O=>E.onClick&&E.onClick(O)},[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),_(),N()])])}function M(B,$,E,O){t.emit("selectionChange",B,$,E,O)}function w(B){let $;const E=B.type,O=oa[E],L=ia[E],H=L?L(B):{};H.customClass=e.ignore?H.customClass:"",H.componentId=c.value,H.id=B.id;const U=B.contents&&B.contents.length===0;return B.contents&&!!B.contents.length&&O?n.createVNode(O,n.mergeProps({ref:y},H),la($=B.contents.map(ne=>n.createVNode(Kt,{key:ne.id,modelValue:ne,"onUpdate:modelValue":le=>ne=le,componentId:c.value,onSelectionChange:M},null)))?$:{default:()=>[$]}):O?U?n.createVNode(O,n.mergeProps({ref:y},H),{default:()=>[n.createVNode(aa,null,null)]}):n.createVNode(O,n.mergeProps({ref:y},H),null):n.createVNode("div",null,null)}function x(B){if(B.type==="component-ref"){let E=T==null?void 0:T.getFormSchema().module.components.find(O=>O.id===B.component);if(E)return n.createVNode(Kt,{key:E.id,modelValue:E,"onUpdate:modelValue":O=>E=O,componentId:E.id,onSelectionChange:M},null)}}n.watch(()=>e.modelValue,B=>{l.value=B,o.value=`${B.id}-component`});function v(B){window.scrollContainerList||(window.scrollContainerList=new Set);const $=B.getAttribute("id");$&&window.scrollContainerList.add($)}function F(B){const $=B==null?void 0:B.target;v($),qr($)}function V(){var B,$;($=(B=l.value)==null?void 0:B.contents)!=null&&$.length&&d.value&&d.value.addEventListener("scroll",F)}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=k),y.value.belongedComponentId=c.value}V(),_t.value++}),n.onBeforeUnmount(()=>{d.value&&d.value.removeEventListener("scroll",F)});function I(B){B&&(B.preventDefault(),B.stopPropagation());let $=k.designerItemElementRef;const E=d.value;if(E){const O=document.getElementsByClassName("dgComponentFocused");O&&O.length===1&&O[0]===d.value||(Array.from(O).forEach(H=>H.classList.remove("dgComponentFocused")),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(H=>H.classList.remove("dgComponentSelected")),E.classList.add("dgComponentFocused"),t.emit("selectionChange",l.value.type,l.value,c.value,y.value),y.value.getDraggableDesignItemElement&&($=y.value.getDraggableDesignItemElement(k),$&&$.value&&$.value.classList.add("dgComponentSelected")))}Jn($==null?void 0:$.value)}return()=>l.value.type==="component-ref"?x(l.value):n.createVNode("div",{id:`${l.value.id}-design-item`,ref:d,class:g.value,style:C.value,onClick:I},[m(l.value),w(l.value)])}});function no(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 b(x,v){const F=y.get(v)||0,V={height:`${x.depth*p}px`,left:`${x.left}px`,top:`${(x.layer-1)*p}px`,width:`${x.actualWidth}px`,padding:0};return a.value.headerDepth>1&&(V["line-height"]=`${x.depth*p}px`),y.set(v+1,F+(x.actualWidth||d)),V}const k=n.computed(()=>({"fv-grid-header":!0,"fv-grid-header-group-columns":a.value.headerDepth>1})),T=n.computed(()=>({height:`${a.value.headerDepth*p}px`})),g=function(x){return t.showSetting&&!!x.showSetting};function C(){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(x,v,F,V){var I;(I=e==null?void 0:e.setupContext)==null||I.emit("selectionChange",x,v,F,V)}function h(x){var F,V;return"w-100 d-flex align-items-center justify-content-"+(((F=x.column)==null?void 0:F.halign)==="center"?"center":((V=x.column)==null?void 0:V.halign)==="right"?"end pr-2":"start pl-2")}function _(x,v,F){var I;const V=n.ref(x.column);return n.createVNode("div",{class:"fv-grid-header-cell",style:b(x,F)},[n.createVNode(Kt,{modelValue:V.value,"onUpdate:modelValue":B=>V.value=B,customClass:h(x),canAdd:!1,canDelete:!1,canMove:!1,key:(I=V.value)==null?void 0:I.id,type:r,componentId:t.componentId,onSelectionChange:S},null),g(x)&&C(),x.resizable&&n.createVNode("span",{class:"fv-column-resize-bar"},null)])}function N(x){return x.map((v,F)=>{const V=[];if(V.push(_(v,x,F)),v.children&&v.children.length){const I=N(v.children);V.push(...I)}return V})}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 M(){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 w(){return n.createVNode("div",{class:k.value,style:T.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&&M()])}return{renderGridHeader:w}}class sa 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 ca(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 sa(f,t).getPropertyConfig(o)}return{canAccepts:a,checkCanDeleteComponent:l,checkCanMoveComponent:c,hideNestedPaddingInDesginerView:s,triggerBelongedComponentToMoveWhenMoved:i,triggerBelongedComponentToDeleteWhenDeleted:r,getPropsConfig:u}}function oo(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,M;return((m=e.selection)==null?void 0:m.multiSelect)||((M=e.selection)==null?void 0:M.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,M,w){const x=parseInt(m.width,10)/100;return w*x}function b(m,M,w){return typeof m.width=="string"?y(m,M,w):m.width||l}function k(m,M){const w=[],x=[];let v=0;m.value.primaryColumns.filter(I=>I.visible).forEach(I=>{typeof I.width=="string"?x.push(I):(I.width=I.width||l,v+=I.width,w.push(I))});const F=M*(w.length/m.value.primaryColumns.filter(I=>I.visible).length);w.forEach(I=>{const B=F*(I.width/v);I.actualWidth=B,m.value.primaryColumnsWidth+=I.actualWidth});const V=M-F;x.forEach(I=>{const B=y(I,m.value,V);I.actualWidth=B,m.value.primaryColumnsWidth+=I.actualWidth})}function T(m,M){const w=[],x=[],v=new WeakMap;let F=0,V=0;if(m.value.primaryColumns.filter(B=>B.visible).forEach(B=>{if(typeof B.width=="string"){const $=y(B,m.value,M);v.set(B,$),F+=$,x.push(B)}else B.width=B.width||l,V+=B.width,w.push(B)}),M-F>V){const B=M-F;x.forEach($=>{$.actualWidth=v.get($)||l,m.value.primaryColumnsWidth+=$.actualWidth}),w.forEach($=>{$.actualWidth=B*($.width/V),m.value.primaryColumnsWidth+=$.actualWidth})}else k(m,M)}function g(m,M){m.value.primaryColumns.filter(w=>w.visible).forEach(w=>{w.actualWidth=b(w,m.value,M),m.value.primaryColumnsWidth+=w.actualWidth})}const C={expand:T,none:g,percentage:k};function S(m){m.value.leftHeaderColumns=Array.from(a(m.value.leftColumns.filter(M=>M.visible)).values()),m.value.primaryHeaderColumns=Array.from(a(m.value.primaryColumns.filter(M=>M.visible)).values()),m.value.rightHeaderColumns=Array.from(a(m.value.rightColumns.filter(M=>M.visible)).values())}function h(m){m.value.leftColumnsWidth=0,m.value.primaryColumnsWidth=0,m.value.rightColumnsWidth=0,m.value.leftColumns.filter(M=>M.visible).forEach(M=>{m.value.leftColumnsWidth+=M.actualWidth||0}),m.value.primaryColumns.filter(M=>M.visible).forEach(M=>{m.value.primaryColumnsWidth+=M.actualWidth||0}),m.value.rightColumns.filter(M=>M.visible).forEach(M=>{m.value.rightColumnsWidth+=M.actualWidth||0}),m.value=Object.assign({},m.value)}function _(m,M,w){var $;let x=0;const v=m.value.primaryColumns,F=m.value.rightColumns;m.value.rightColumns.filter(E=>E.visible).forEach(E=>{E.actualWidth=b(E,m.value,M),x+=E.actualWidth});const V=w-x,I=C[p.value];if(I&&I(m,V),m.value.primaryColumnsWidth+x<=w)return m.value.primaryColumns=[...v,...F],m.value.primaryColumnsWidth+=x,m.value.rightColumns=[],m.value.rightColumnsWidth=0,!0;const B=new Map;return B.set("primary",[]),B.set("right",[]),m.value.primaryColumns.reduce((E,O)=>{var L,H;return O.fixed==="right"?(L=E.get("right"))==null||L.push(O):(H=E.get("primary"))==null||H.push(O),E},B),($=B.get("right"))!=null&&$.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(w=>w.visible).forEach(w=>{w.actualWidth=b(w,t.value,m),t.value.leftColumnsWidth+=w.actualWidth});const M=m-t.value.leftColumnsWidth;if(_(t,m,M))i.value=M;else{t.value.rightColumns.filter(v=>v.visible).forEach(v=>{v.actualWidth=b(v,t.value,m),t.value.rightColumnsWidth+=v.actualWidth});const w=m-t.value.leftColumnsWidth-t.value.rightColumnsWidth,x=C[p.value];x&&x(t,w),i.value=w}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!==M&&m&&N()}),n.watch(p,(m,M)=>{m!==M&&d.value&&N()}),{calculateColumnHeaders:S,calculateColumnsSize:N,calculateColumnsWidth:h}}const da=n.defineComponent({name:"FTreeGridDesign",props:to,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=ho(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"),b=n.inject("design-item-context"),k=ca(b,y),T=Yt(o,b,k);T.value.designerClass="f-utils-fill-flex-column";const g=ao(),C=lo(e),S=En(e,new Map,g,C,c),h=yo(e,S,c,f,t),_=n.computed(()=>S.dataView.value.length),{containerStyleObject:N}=Tn(e),m=kn(e),{applyCommands:M}=m;M(l);const w=Vn(e),{applyColumnSorter:x,columnContext:v,updateColumnRenderContext:F}=w,V=bo(),I=In(e,v),B=go(e,t,h,c),$=mo(e,t,c,B),E=uo(e),O=fo(e,$,E),L=po(e,$,C,c,E,O),H=co(e,l,S,_,i,L),{getVisualData:U}=H,Q=vo(e,h),{sidebarWidth:ne}=Q;f.value=U(0,_.value+i-1);const le=so(e,S,f,v,H,_,i,ne),{onWheel:D,dataGridWidth:Z,viewPortHeight:ue,viewPortWidth:ee,updateVisibleRowsOnLatestVisibleScope:A}=le,z=oo(e,v,s,ee,I),{calculateColumnsSize:ye}=z,fe=n.computed(()=>({"drag-container":!0,"fv-grid":!0,"fv-grid-bordered":e.showBorder,"fv-datagrid-strip":e.showStripe})),Oe=n.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":d.value,"fv-grid-wrap-content":p.value})),{renderGridHeader:je}=no(b,e,w,le,"tree-grid-column"),{renderHorizontalScrollbar:Me}=Mn(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=T,s.value&&(a.value=Math.max(Math.ceil(s.value.clientHeight/r),a.value),f.value=U(0,_.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 ke(pe){pe&&(l.value=pe,M(l),F(l.value),x(S,V),ye())}return n.watch(()=>e.columns,pe=>{ke(pe)}),n.watch(ee,()=>{s.value&&ye()}),t.expose(T.value),()=>n.createVNode("div",{ref:o,class:fe.value,style:N.value,onWheel:D,dragref:`${b.schema.id}-container`},[s.value&&je(),n.createVNode("div",{ref:s,class:Oe.value,onMouseover:()=>{d.value=!0},onMouseleave:()=>{d.value=!1}},[Me()])])}});$t.register=(e,t,o,i)=>{e["tree-grid"]=$t,t["tree-grid"]=Kr,i["tree-grid"]={bindingResolver:Qr,selectionItemResolver:Jr,updateColumnsResolver:ea}},$t.registerDesigner=(e,t,o)=>{e["tree-grid"]=da,t["tree-grid"]=Zr},xe.withInstall($t);const ua=new Map([["appearance",pt]]);function fa(e,t,o){return t}Ae({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"]},ua,fa,{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:[]}}}}}});var Jt=(e=>(e.Form="Form",e.Variable="Variable",e))(Jt||{});const pa={id:{type:String},required:{type:Boolean,default:!1},text:{type:String,default:""},title:{type:String},valid:{type:Boolean,default:!0},inValidTip:{type:String,default:""}},ma=n.defineComponent({name:"FDynamicFormLabel",props:pa,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 io=!1;function ha(){io||(io=!0,jo.register(re,ae,se,ce),Oo.register(re,ae,se,ce),Po.register(re,ae,se,ce),Do.register(re,ae,se,ce),Ro.register(re,ae,se,ce),Ho.register(re,ae,se,ce),St.register(re,ae,se,ce),Ht.register(re,ae,se,ce),_i.register(re,ae,se,ce),Ci.register(re,ae,se,ce),Lo.register(re,ae,se,ce),Ao.register(re,ae,se,ce),Wo.register(re,ae,se,ce),Go.register(re,ae,se,ce),qo.register(re,ae,se,ce),Rt.register(re,ae,se,ce),zo.register(re,ae,se,ce),Bo.register(re,ae,se,ce),Mi.register(re,ae,se,ce),Uo.register(re,ae,se,ce),Yo.register(re,ae,se,ce),Xo.register(re,ae,se,ce),Jo.register(re,ae,se,ce),Ko.register(re,ae,se,ce),Qo.register(re,ae,se,ce),Ti.register(re,ae,se,ce),Zo.register(re,ae,se,ce),ti.register(re,ae,se,ce),ei.register(re,ae,se,ce),No.register(re,ae,se,ce),ni.register(re,ae,se,ce),oi.register(re,ae,se,ce),Eo.register(re,ae,se,ce),ii.register(re,ae,se,ce),ri.register(re,ae,se,ce),ai.register(re,ae,se,ce),li.register(re,ae,se,ce),ci.register(re,ae,se,ce),di.register(re,ae,se,ce),si.register(re,ae,se,ce),Vi.register(re,ae,se),$o.register(re,ae,se,ce),ui.register(re,ae,se,ce),fi.register(re,ae,se,ce),pi.register(re,ae,se,ce),mi.register(re,ae,se,ce),hi.register(re,ae,se,ce),Io.register(re,ae,se,ce),an.register(re,ae,se,ce),gi.register(re,ae,se,ce),yi.register(re,ae,se,ce),ko.register(re,ae,se,ce),ln.register(re,ae,se,ce),bi.register(re,ae,se,ce),vi.register(re,ae,se,ce),wi.register(re,ae,se,ce),Si.register(re,ae,se,ce),xi.register(re,ae,se,ce),Fi.register(re,ae,se,ce),ki.register(re,ae,se,ce))}function ga(){ha();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 ya=n.defineComponent({name:"FDynamicFormGroup",props:Kn,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:b,getClearFunctionName:k}=ga(),T=n.computed(()=>({"form-group":!0,"farris-form-group":!0,"common-group":!0,"q-state-readonly":c.value}));function g(_,N){l.value=N!==void 0?N:_,t.emit("update:modelValue",l.value),t.emit("change",l.value)}function C(){t.emit("update:modelValue","")}const S=n.computed(()=>{const _=r.value.type||"input-group",N=y(_),m=p(_,r.value),M=b(_),w=k(r.value.type);return w&&(m[w]=C),m[M]=g,(m.id==null||m.id==="")&&(m.id=o.value),_==="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)):_==="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":x=>l.value=x}),t.slots)});return n.watch([()=>e.id,()=>e.customClass,()=>e.editor,()=>e.label,()=>e.modelValue,()=>e.readonly,()=>e.required,()=>e.showLabel,()=>e.visible],([_,N,m,M,w,x,v,F,V])=>{var I;o.value=_,i.value=N,r.value=m,a.value=M,l.value=w,c.value=x,s.value=((I=r.value)==null?void 0:I.required)||v,u.value=F,f.value=V}),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:T.value},[u.value&&n.createVNode(ma,{id:`${o.value}-lable`,required:s.value,text:a.value,title:a.value},null),n.createVNode("div",{class:"farris-input-wrap"},[S.value()])])])])}}),va=new Map([["appearance",pt]]);function ba(e,t,o){return t}Ae({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"]},va,ba);const bt=class bt{static getEditorTypesByMDataType(t){const o=bt.fieldControlTypeMapping[t];return o||[{key:"",value:""}]}static getAllInputTypes(){const t=[];for(const o in bt.fieldControlTypeMapping)bt.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(bt,"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=bt;class Xe extends Bt{constructor(o,i){super(o,i);q(this,"responseLayoutEditorFunction");this.responseLayoutEditorFunction=Ar(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"},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(b=>b.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(b=>b.classList.remove("dgComponentSelected")),Array.from(document.getElementsByClassName("dgComponentFocused")).forEach(b=>b.classList.remove("dgComponentFocused")),_t.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 b=a.find(k=>k.id===i.id);Object.assign(b||{},i)}const l=a.map(b=>b.columnInSM),c=a.map(b=>b.columnInMD),s=a.map(b=>b.columnInLG),u=a.map(b=>b.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 Ca extends Xe{constructor(t,o){super(t,o)}}function wa(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!==Gt.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 Jt.Form:{c=i();break}case Jt.Variable:c=r()}return c}return{checkBindingFieldValidation:a}}Ae({id:{type:String,default:""},editor:{type:Object,default:{}},modelValue:{type:[String,Boolean,Array,Number],default:""},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1}},Xn,Ut,void 0);const Sa={$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"]},xa={initialState:{type:Object,default:{uniqueColClassInSM:12,uniqueColClassInMD:6,uniqueColClassInLG:3,uniqueColClassInEL:2}}};rn.createPropsResolver(xa,Sa,Or,Rr);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 Qt(){return new DOMException("The request is not allowed","NotAllowedError")}async function _a(e){if(!navigator.clipboard)throw Qt();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 Qt()}async function Ta(e){try{await _a(e)}catch(t){try{await Ma(e)}catch(o){throw o||t||Qt()}}}function Va(){async function e(t){await Ta(t)}return{onCopy:e}}function ka(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 Ia(e,t,o,i){const r=ka(e,t,o,i),a=new Map([["text-area",r]]);function l(c){return a.get(c)||null}return{getEditorRender:l}}function Na(){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 Ba(e,t){const o=t.getEditorRender(e.promptEditorType);return()=>o&&o()}function Ea(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 $a(e){return()=>n.createVNode("p",{class:"toast-msg-detail",innerHTML:e.value},null)}function Oa(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?Ea(r):s.value?$a(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 ja(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 Pa(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)),b=n.computed(()=>f.value&&c.value),k=n.computed(()=>u.value&&s.value),T=ja(e,o,i);function g(S){r.value==="question"&&t.emit("reject"),t.emit("close")}function C(S){r.value==="question"&&t.emit("accept"),t.emit("close")}return()=>n.createVNode("div",{class:"modal-footer"},[p.value&&T(),y.value&&k.value&&n.createVNode("button",{type:"button",class:"btn btn-secondary btn-lg",onClick:g},[s.value]),y.value&&b.value&&n.createVNode("button",{type:"button",class:"btn btn-primary btn-lg",onClick:C},[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 Ot=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 T={"modal-tips":!0,"d-flex":!0,"flex-row":!0},g=`messager-type-${o.value}`;return T[g]=!0,T}),l=n.computed(()=>{const T={};return o.value==="prompt"?T.padding="0.5rem 0.5rem 1rem 1.5rem":o.value==="error"&&(T.padding="0.5rem 1.5rem 1rem 1.5rem"),T}),c=Va(),s=Ia(e,o,i,r),u=Na(),{feedbackStyle:f,feedbackMessage:d}=u;function p(){return n.createVNode("div",{style:f.value},[d.value])}function y(){switch(o.value){case"prompt":return Ba(e,s);default:return Oa(e,o,i,r)}}const b=y(),k=Pa(e,t,c,u);return()=>n.createVNode("div",{class:"farris-messager"},[n.createVNode("section",{class:a.value,style:l.value},[b()]),k(),p()])}});class ct{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 hn(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(Ot,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:""});ct.show(i)}static warning(t,o){const i=n.reactive({type:"warning",title:t,detail:o,okButtonText:"知道了",cancelButtonText:""});ct.show(i)}static success(t,o){const i=n.reactive({type:"success",title:t,detail:o,okButtonText:"关闭",cancelButtonText:""});ct.show(i)}static error(t,o,i){const r=n.reactive({width:500,type:"error",okButtonText:"关闭",cancelButtonText:"",exceptionInfo:{date:i,message:t,detail:o}});ct.show(r)}static prompt(t,o){const i=n.reactive({type:"prompt",title:t,detail:o,okButtonText:"确定",cancelButtonText:"取消"});ct.show(i)}static question(t,o,i,r){const a=n.reactive({type:"question",title:t,detail:o,okButtonText:"确定",cancelButtonText:"取消",acceptCallback:i,rejectCallback:r});ct.show(a)}}Ot.install=e=>{e.component(Ot.name,Ot),e.provide("FMessageBoxService",ct)};var Tt=(e=>(e[e.Value=0]="Value",e[e.SmartHelp=1]="SmartHelp",e[e.Enum=2]="Enum",e[e.Express=3]="Express",e))(Tt||{}),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 Da=[{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:"结束是"}],Ra={"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 Ha(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(Ra[c]);return Da.filter(f=>s.has(f.value))}return{getCompareOperators:r}}function ro(){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:Tt.Value,value:new Nt,relation:0,conditionId:Date.now()}}function a(w,x){return{relation:w,items:[],children:[],path:[],groupId:++i,level:x}}function l(){const w=Object.assign({},e.value);o.forEach((x,v)=>{x.groupId===w.groupId&&o.set(v,w)}),t.forEach((x,v)=>{x.groupId===w.groupId&&t.set(v,w)}),e.value=w}function c(w){const x=new Map;let v=0;return w.forEach((F,V)=>{var I,B;if(v+=((I=F.lBracket)==null?void 0:I.length)||0,x.set(V,v),v-=((B=F.rBracket)==null?void 0:B.length)||0,v<0)throw new Error("The right bracket is out of range.")}),x}function s(w,x,v,F,V){for(let I=0;I<x;I++){const B=w+(I+1),$=a(V,B);v.children.push($),o.set($.groupId,v),v=v.children[v.children.length-1],F.push(v)}return v}function u(w,x,v,F,V){for(let E=x;E<=0;E++)F.pop();const I=F[F.length-1];if(!I)throw new Error("The group path is out of range");const B=w+x,$=a(V,B);return I.children.push($),o.set($.groupId,I),v=I.children[I.children.length-1],F.push(v),v}function f(w,x,v,F){v.pop();const V=v[v.length-1],I=a(F,w);return V.children.push(I),o.set(I.groupId,V),x=V.children[V.children.length-1],v.push(x),x}function d(w,x,v,F,V,I){let B=w[w.length-1];if(!B)throw new Error("The group path is out of range");const $=x.get(F)||0,E=x.get(v)||0;if(v<0||v===F)return w[w.length-1];const O=$-E,L=V&&V.relation!==void 0?V.relation:1;return B=O>0?s(E,O,B,w,L):B,B=O<0?u(E,O,B,w,L):B,B=O===0&&E>0&&$>0&&V&&I&&!!V.rBracket&&!!I.lBracket?f(E,B,w,L):B,B}function p(w){const v={relation:w.length&&w[0].relation!==void 0?w[0].relation:1,items:[],children:[],path:[],groupId:0,level:0},F=[v],V=c(w);return w.forEach((I,B)=>{const $=B-1,E=w[$],O=d(F,V,$,B,E,I);O.items.push(I),t.set(I.conditionId,O)}),e.value=v,v}function y(){const w=r();t.set(w.conditionId,e.value),e.value.items.push(w)}function b(w){if(!w)return;const x=t.get(w.conditionId);if(x){const v=x.items.findIndex(V=>V.conditionId===w.conditionId)+1,F=r();t.set(F.conditionId,x),x.items.splice(v,0,F),l()}}function k(w,x,v,F){w.reduce((V,I)=>{const B=I.conditionId!==void 0,$=I.groupId!==void 0;if(B){const E=I;v.push(E),V.items.set(E.conditionId,E)}if($){const E=I;F.push(E),V.groups.set(E.groupId,E)}return V},x)}function T(w,x,v,F,V){w&&(w.items=x.length?w.items.filter(I=>!v.has(I.conditionId)):w.items,w.children=F.length?w.children.filter(I=>!V.has(I.groupId)):w.children)}function g(w,x,v){x.forEach(F=>{w.items.push(F),t.set(F.conditionId,w)}),v.forEach(F=>{w.children.push(F),o.set(F.groupId,w)})}function C(w){const x=w[0],v=x.conditionId!==void 0?t.get(x.conditionId):o.get(x.groupId),F={items:new Map,groups:new Map},V=[],I=[];if(v){k(w,F,V,I),T(v,V,F.items,I,F.groups);const B=a(v.relation,v.level+1);g(B,V,I),v.children.push(B),o.set(B.groupId,v),l()}}function S(w){const x=[...w.items],v=[...w.children],F=o.get(w.groupId);F&&(F.children=F.children.filter(V=>V.groupId!==w.groupId),o.delete(w.groupId),x.forEach(V=>{F.items.push(V),t.set(V.conditionId,F)}),v.forEach(V=>{F.children.push(V),o.set(V.groupId,F)}),l())}function h(w){w.relation=w.relation===1?2:1,l()}let _;function N(w){const{relation:x}=w;return(w.children&&w.children.length?w.children.map((F,V,I)=>{const B=_(F);return B[0].lBracket=(B[0].lBracket||"")+"(",B[B.length-1].rBracket=(B[B.length-1].rBracket||"")+")",B[B.length-1].relation=V<I.length-1?x:0,B}):[]).flat()}_=(w=e.value)=>{const{relation:x}=w,v=w.items.map((V,I,B)=>(V.lBracket=I===0?"(":"",V.rBracket=I===B.length-1?")":"",V.relation=I<B.length-1?x||1:0,V)),F=N(w);return[...v,...F]};function m(w){const x=w||e.value;if(x.children.length&&x.children.forEach(v=>{m(v)}),x.level===0&&!x.items.length&&x.children.length===1){const v=x.children[0];e.value.relation=v.relation,S(v)}else x.items.length===0&&x.children.length<=1&&S(x)}function M(w){const x=t.get(w.conditionId);x&&(x.items=x.items.filter(v=>v.conditionId!==w.conditionId),t.delete(w.conditionId),m(),l())}return{addCondition:y,changeGroupRelation:h,conditionGroupMap:t,getConditions:_,group:C,groupParentMap:o,insertConditionTo:b,loadConditionGroup:p,refresh:l,removeCondition:M,rootGroup:e,unGroup:S}}function Aa(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 C=c.level<=g.level?c:g,S=c.level>g.level?c:g;const h=[];for(;S&&C&&S!==C;)S.level>C.level?(h.push(S),S=l.get(S.groupId)):S.level===C.level&&(C=l.get(C.groupId),C&&h.unshift(C));return h}function f(g){r.value.add(g.groupId),g.items.forEach(C=>i.value.add(C.conditionId)),g.children.forEach(C=>f(C))}function d(g){const{conditionId:C}=g;i.value.add(C),c=i.value.size===0?a.get(C):c;const S=a.get(g.conditionId);u(S).forEach(_=>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 C=l.get(g.groupId);C&&r.value.has(C.groupId)&&y(C)};s=function(g){const{conditionId:C}=g;if(i.value.has(C)&&i.value.delete(C),r.value.size>0){const S=a.get(C);S&&r.value.has(S.groupId)&&y(S)}};function b(g){const{conditionId:C}=g;i.value.size===0&&(c=a.get(C)),i.value.has(C)?s(g):d(g)}function k(){const g=[];return c&&(c.items.filter(C=>i.value.has(C.conditionId)).forEach(C=>g.push(C)),c.children.filter(C=>r.value.has(C.groupId)).forEach(C=>g.push(C))),g}function T(){i.value.clear(),r.value.clear()}return{clear:T,getSelectedGroupItem:k,selectedItems:i,toggleSelect:b}}const Zt=n.defineComponent({name:"FConditionList",props:$n,emits:["valueChange","labelCodeChange","compareTypeChange"],setup(e,t){const o=n.ref(e.key),i=n.ref(e.conditions),r=Un(e),{convertToSingleControl:a,fields:l,fieldMap:c,loadFieldConfigs:s}=r,u=ro(),{addCondition:f,changeGroupRelation:d,getConditions:p,group:y,insertConditionTo:b,loadConditionGroup:k,refresh:T,removeCondition:g,rootGroup:C,unGroup:S}=u,{createConditionValue:h}=zn(),_=Aa(e,t,u),{selectedItems:N,toggleSelect:m}=_,{getCompareOperators:M}=Ha(e,t,r);s(!1),l.value=a(l.value),k(i.value);function w(Q){var le;const ne=((le=c.get(Q.fieldCode))==null?void 0:le.editor)||{type:"text"};Q.value=h(ne.type,void 0),t.emit("labelCodeChange",Q)}function x(Q,ne){t.emit("compareTypeChange",ne)}function v(){}t.expose({getConditions:p});function F(Q,ne){t.emit("valueChange",Q,ne)}function V(Q){return n.createVNode("div",{class:"condition-list-item-type mr-3"},[n.createVNode(Ht,{"value-field":"labelCode","text-field":"name","id-field":"id",data:l.value,modelValue:Q.fieldCode,"onUpdate:modelValue":ne=>Q.fieldCode=ne,onChange:ne=>w(Q)},null)])}function I(Q){return n.createVNode("div",{class:"condition-list-item-compare mr-3"},[n.createVNode(Ht,{"value-field":"value","text-field":"name","id-field":"id",data:M(Q),modelValue:Q.compareType,"onUpdate:modelValue":ne=>Q.compareType=ne,onChange:ne=>x(ne,Q)},null)])}function B(Q){var ne;return n.createVNode("div",{class:"condition-list-item-control mr-3"},[n.createVNode(ya,{editor:(ne=c.get(Q.fieldCode))==null?void 0:ne.editor,showLabel:!1,modelValue:Q.value.value,"onUpdate:modelValue":le=>Q.value.value=le,onChange:le=>{F(le,Q)}},null)])}function $(Q){return[n.createVNode("div",{class:"condition-list-item-extend"},[n.createVNode("span",{class:"f-icon f-icon-plus-sm mr-2",onClick:()=>b(Q)},null),n.createVNode("span",{class:"f-icon f-icon-minus-sm",onClick:()=>g(Q)},null)]),n.createVNode("div",{class:"custom-control custom-checkbox"},[n.createVNode("input",{title:"selection",class:"custom-control-input",type:"checkbox",checked:N.value.has(Q.conditionId)},null),n.createVNode("label",{class:"custom-control-label",onClick:()=>m(Q)},null)])]}function E(Q){return Q.items.map(ne=>n.createVNode("div",{class:"condition-list-item",key:ne.conditionId},[V(ne),I(ne),B(ne),$(ne)]))}function O(Q){return n.createVNode("div",{class:"condition-list-relation"},[n.createVNode("span",{class:"condition-list-relation-close f-icon-filter-cancel btn-link",onClick:()=>S(Q)},null),n.createVNode("span",{class:"condition-list-relation-text btn-link",onClick:()=>d(Q)},[Q.relation===1?"与":"或"])])}function L(Q){return n.createVNode("div",{class:"condition-list-content"},[n.createVNode("div",{class:"condition-list-content-group"},[E(Q),Q.children&&Q.children.map(ne=>L(ne))]),O(Q)])}function H(){y(_.getSelectedGroupItem()),_.clear()}function U(){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:v},[n.createTextVNode("重置")])])}return()=>n.createVNode("div",{class:"condition-list",key:o.value},[n.createVNode("div",{class:"condition-list-body"},[L(C.value)]),U()])}});Zt.install=e=>{e.component(Yn.name,Yn).component(Zt.name,Zt)};const La=["equal","notEqual","greaterThan","greaterThanOrEqual","lessThan","lessThanOrEqual","contain","startWidth","endWidth","in","notIn"],Ga={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},Wa={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},qa={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}},za={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},Ua={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}},Ya=new Map([["boolean",Wa],["datetime",qa],["enum",za],["number",Ua],["text",Ga]]);function ao(){const e=n.ref([]),t=new Map,{loadConditionGroup:o}=ro();function i(T,g){switch(T){case"check-box":return new On({value:g});case"combo-list":return new Rn({value:g});case"combo-lookup":return new jn({value:g});case"input-group":return new Nt({value:g});case"date-picker":return new Pn({value:g});case"date-range":return new It({value:g});case"datetime-picker":return new Dn({value:g});case"datetime-range":return new It({value:g});case"lookup":return new Hn({value:g});case"month-picker":return new An({value:g});case"month-range":return new Ln({value:g});case"number-range":return new Gn({value:g});case"number-spinner":return new Wn({value:g});case"radio-group":return new qn({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(T){var C;const g=T.dataType||"string";return((C=T.editor)==null?void 0:C.type)||r.get(g)||"text"}function c(T){var x,v,F,V,I;const g=`field_filter_${T.field}`,C=Date.now(),S=T.field,h=((x=T.column)==null?void 0:x.title)||"",_=((v=T.column)==null?void 0:v.dataType)||"string",N=a.get(_)||tt.Equal,m=((V=(F=T.column)==null?void 0:F.editor)==null?void 0:V.type)||r.get(_)||"text",M=i(m,(I=T.column)==null?void 0:I.filter),w=m==="lookup"||m==="combo-lookup"?Tt.SmartHelp:m==="combo-list"?Tt.Enum:Tt.Value;t.set(g,{id:g,fieldCode:S,fieldName:h,compareType:N,valueType:w,value:M,conditionId:C}),e.value=Array.from(t.values())}function s(T){const g=`field_filter_${T.field}`;t.delete(g),e.value=Array.from(t.values())}function u(T){t.delete(T),e.value=Array.from(t.values())}function f(){t.clear(),e.value=[]}function d(T){const{valueType:g}=T.value,C=T.compareType||"0",S=La[Number(C)];return Ya.get(g)[S]}function p(T){const g=T.relation===2?0:1,C=T.items.map(h=>{const _=d(h);return m=>_(m,h.fieldCode,h.value.getValue())}),S=T.children&&T.children.length?T.children.map(h=>p(h)):[];return{relation:g,filterFunctions:C,children:S}}function y(){const T=o(e.value);return p(T)}function b(T,g){const C=g.filterFunctions.map(h=>h(T)),S=g.children.map(h=>b(T,h));return g.relation===1?C.every(h=>h)&&S.every(h=>h):C.includes(!0)||S.includes(!0)}function k(T){const g=y();return b(T,g)}return{addColumnFilter:c,apply:k,clearCondition:f,conditions:e,getFilterEditorType:l,removeColumnFilter:s,removeCondition:u}}function lo(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 so(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),b=n.computed(()=>i.value.leftColumnsWidth),k=n.computed(()=>i.value.rightColumnsWidth),T=((it=e.rowOption)==null?void 0:it.height)||28,g=n.ref(0),C=n.ref(0);let S=0,h=a.value-1;const _=n.ref(0),N=n.ref(0),m=n.ref(0),M=n.ref(e.virtualized),w=24,x=1.5;let v;function F(){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*T?P.length*T:(W.__fv_data_position__||0)+(W.__fv_data_height__||0)+Math.max(P.length-1-d.value,0)*T}const V=n.computed(()=>{const P=F(),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<w;)K*=x,me=Math.floor(K*N.value);return me}),I=n.computed(()=>Math.floor(m.value/Math.max(y.value,m.value)*_.value)),B=0,$=0,E=n.computed(()=>_.value-(b.value+y.value+k.value+c.value));function O(P){const K=Math.floor(P/T)+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 Ee=W-P+1;if(Ee<l+a.value+l){const Ne=l+a.value+l-Ee,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:Ee,actualEnd:Ne}=L(K,be,me),Ce=W[Ee-1],Be=f(Ee,Ne,Ce,P);Be.length&&(o.value=[...Be])}const U=n.computed(()=>F()>N.value),Q=n.computed(()=>Math.floor(y.value)>m.value);function ne(P,W){let K=P;const me=K>B,be=U.value;be&&K<N.value-W&&(K=N.value-W),(!be||me)&&(K=B),g.value!==K&&(g.value=K)}function le(){M.value&&(S=O(Math.abs(g.value)),h=S+a.value-1,(S<p.value||h>d.value-l/2)&&H())}function D(P){let W=g.value+P;W>B&&(W=B);const K=F();ne(W,K),le()}function Z(P){if(!Q.value){C.value=0;return}let W=C.value+P;W>$&&(W=$),W<E.value&&(W=E.value),C.value!==W&&(C.value=W)}function ue(){Math.abs(C.value)+m.value>y.value&&(C.value=Math.min(m.value-y.value,0))}function ee(){g.value=0,S=0,h=a.value-1,H()}function A(){const P=F();ne(g.value,P)}n.watch([m,y],()=>{Z(0)});function z(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||!U.value)return;P.preventDefault(),P.stopPropagation();const{deltaX:W,deltaY:K}=z(P);D(K),Z(W)}const fe=n.computed(()=>({height:`${s.value.length*T}px`,width:`${b.value}px`,transform:`translateY(${g.value}px)`})),Oe=n.computed(()=>({transform:`translateY(${g.value}px)`})),je=n.computed(()=>({height:`${s.value.length*T}px`,width:`${y.value}px`,transform:`translate(${C.value}px, ${g.value}px)`})),Me=n.computed(()=>({transform:`translate(${C.value}px, ${g.value}px)`})),Se=n.computed(()=>({height:`${s.value.length*T}px`,width:`${k.value}px`,transform:`translateY(${g.value}px)`})),ke=n.computed(()=>({transform:`translateY(${g.value}px)`})),Pe=n.computed(()=>({height:`${s.value.length*T}px`,width:`${c.value}px`,transform:`translateY(${g.value}px)`})),Ie=n.computed(()=>({width:`${b.value}px`})),pe=n.computed(()=>({transform:`translateX(${C.value}px)`})),j=n.computed(()=>({width:`${k.value}px`})),ie=n.computed(()=>{const P=F();return ne(g.value,P),g.value/(N.value-P)*(N.value-V.value)}),te=n.computed(()=>({height:`${V.value}px`,top:`${ie.value}px`})),ge=n.computed(()=>C.value/E.value*(_.value-I.value)),Te=n.computed(()=>({width:`${I.value}px`,left:`${ge.value}px`})),Le=n.ref(!1),ze=n.ref(-1),Ue=n.ref(-1),Qe=n.ref();function Ze(P){if(Le.value&&Ue.value!==-1){const W=Ue.value-P.pageX,K=_.value-I.value;if(Math.abs(W)<=K){const me=W/(m.value-I.value)*(y.value-m.value);Z(me),Ue.value=P.pageX}}}function Ke(P){if(Le.value&&ze.value!==-1){const W=ze.value-P.pageY,K=F(),me=K-V.value;if(Math.abs(W)<=me){const be=W/(N.value-V.value)*(K-N.value);D(be),ze.value=P.pageY}}}function nt(P){Le.value=!1,ze.value=-1,Ue.value=-1,document.removeEventListener("mouseup",nt),document.removeEventListener("mousemove",Ze),v&&document.removeEventListener("mousemove",v),document.body.style.userSelect="",Qe.value&&(Qe.value.style.opacity=null)}function ot(P,W,K){var Ee;Le.value=!0;const me=(Ee=P.target)==null?void 0:Ee.parentElement;me&&(me.style.opacity="1",Qe.value=me);const be=K==="horizontal"?Ze:Ke;K==="vertical"&&(ze.value=P.pageY),K==="horizontal"&&(Ue.value=P.pageX),W.value&&(v||(v=De.throttle(be,100)),W.value,document.addEventListener("mousemove",v),document.addEventListener("mouseup",nt),document.body.style.userSelect="none")}return{dataGridWidth:_,fitHorizontalScroll:ue,gridDataStyle:je,gridHeaderColumnsStyle:pe,gridMergedDataStyle:Me,gridSideStyle:Pe,horizontalScrollThumbStyle:Te,leftFixedGridDataStyle:fe,leftFixedGridHeaderColumnsStyle:Ie,leftFixedGridMergedDataStyle:Oe,offsetX:C,offsetY:g,onMouseDownScrollThumb:ot,onWheel:ye,reCalculateVisualDataRows:H,resetScroll:ee,rightFixedGridDataStyle:Se,rightFixedGridHeaderColumnsStyle:j,rightFixedGridMergedDataStyle:ke,shouldShowHorizontalScrollbar:Q,shouldShowVirticalScrollbar:U,updateVirticalScroll:A,updateVisibleRowsOnLatestVisibleScope:le,verticalScrollThumbStyle:te,viewPortWidth:m,viewPortHeight:N}}function co(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(T){let g=f;return T.__fv_data_grid_group_row__&&(g=d),T.__fv_data_grid_group_summary__&&(g=p),g}function b(T,g,C,S){const{visibleDataItems:h}=o,_=[],N=h.value;if(N.length>0){const m=S?Date.now().toString():"";for(let M=T,w=0;M<=g;M++,w++){const x=N[M],v=N[M-1]||C,F=_[w-1],V=v?(v.__fv_data_position__||0)+(v.__fv_data_height__||0):0,B=y(x)(x,v,F,M,V,t.value,_);B.refreshKey=m,_.push(B)}}return u.value=_.length>0?_[0].index:0,s.value=_.length>0?_[_.length-1].index:0,_}function k(T,g,C){const S=g.groupField||"",{groupValue:h}=g;o[T](S,h);const{dataView:_}=o,N=C[0].index,m=Math.min(N+i.value+r+1,_.value.length-1);return b(N,m)}return{getVisualData:b,maxVisibleRowIndex:s,minVisibleRowIndex:u,toggleGroupRow:k}}function uo(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 Xa(){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 Ka(){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===qt.TEXT)return t(l,i);if(a.type===qt.IMAGE)return e(l,i)}return{renderBooleanColumn:o}}function Ja(){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 Qa(){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 Za(){const{renderBooleanColumn:e}=Ka(),{renderEnumColumn:t}=Xa(),{renderNumberColumn:o}=Qa(),{renderDateColumn:i}=Ja();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 fo(e,t,o){var T;const i=n.ref(e.mergeCell);(T=n.ref(e.rowOption).value)!=null&&T.wrapContent;const{updateVisualInfomation:a}=o,{renderCommandColumn:l}=Tr(),{renderFormatColumn:c}=Za();function s(g,C,S,h,_,N=1){const m={colSpan:N,rowSpan:1,index:S,field:g,data:xe.resolveField(h,g),editingData:xe.resolveField(h,g),parent:_,mode:C,align:"left",valign:"start",showEllipsis:!0,getEditor:M=>M.data,setRef:M=>a(M,m,h),update:()=>{},accept:()=>{},cancel:()=>{},updateData:()=>{}};return m}function u(g,C,S){return g.getEditor=h=>t.getEditor(h,C,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,C.field),g.data=xe.resolveField(S,C.field)},g.cancel=()=>{g.editingData=g.data},g.updateData=h=>{xe.setFieldValue(xe.resolveField(h,C.field),S,C.field),g.data=xe.resolveField(S,C.field),g.editingData=xe.resolveField(S,C.field)},g}function f(g,C){C.dataType==="commands"?g.formatter=(S,h)=>l(C,h):C.formatter&&(g.formatter=(S,h)=>typeof C.formatter=="function"?C.formatter(S,h):c(C.dataType,C,h))}function d(g,C,S){const h=C&&C.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,C,S){i.value&&d(g,C,S.field)}function y(g,C){C.showEllipsis!==void 0&&(g.showEllipsis=C.showEllipsis),g.column=C,g.align=C.align||"left",g.valign=C.valign||"middle"}function b(g,C,S,h){y(g,C),u(g,C,h),f(g,C),p(g,S,C)}function k(g,C,S,h,_){const N=g.readonly?Re.readonly:Re.editable,m=s(g.field,N,C,S,h);return b(m,g,_,S),m}return{createCellByColumn:k,createCellByField:s,updateCellByColumn:b}}function po(e,t,o,i,r,a){var C,S;const l=n.ref(e.rowOption),c=((C=l.value)==null?void 0:C.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,_,N,m)=>{xe.setFieldValue(xe.resolveField(h,m),_,m),N.data[m].data=xe.resolveField(_,m),N.data[m].editingData=xe.resolveField(_,m)};function b(h,_,N,m,M,w,x){var D,Z,ue;const{__fv_data_grid_group_field__:v,__fv_data_grid_group_value__:F,__fv_data_index__:V}=N,I=N.__fv_data_grid_group_layer__||(N.__fv_parents__?(D=N.__fv_parents__)==null?void 0:D.size:0)||0,B=typeof N.parent=="number"?Number(N.parent):-1,$=N.__fv_data_grid_group_collapse__||N[f.value],E=N.__fv_visible__===void 0?!0:N.__fv_visible__,O=N.__fv_checked__,L=N.__fv_indeterminate__,H=N.__fv_disabled__||N[((Z=e.rowOption)==null?void 0:Z.disabledField)||"disabled"],U=x==null?void 0:x.find(ee=>ee.raw[u.value]===N.parent),Q=U&&U.collapse;m&&(m.parent,N.parent);const ne=Q||U&&!U.visible,le={collapse:$,data:{},dataIndex:V,groupField:v,groupValue:F,layer:I,index:_,parentIndex:B,pre:m,top:w,type:h,raw:N,checked:O,disabled:H,indeterminate:L,setRef:ee=>{le.ref=ee},visible:E&&!ne,status:lt.initial,updateCell:(ee,A)=>{y(ee,N,le,A)},updateCells:(ee,A)=>{A.forEach(z=>{y(ee,N,le,z)})}};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 k(h,_,N,m,M,w,x){const v=b(ht.data,M,_,N,m,w,x);return h.forEach((F,V)=>{v.data[F.field]=p(F,M,_,v,m)}),v}function T(h,_,N,m,M){return Object.assign(h,{index:_,dataIndex:N,top:m,pre:M})}function g(h,_,N,m,M,w,x){const v=h.__fv_data_index__,F=h[u.value],V=t.getEditingSnapshot(F);return V===null?k(w,h,_,N,m,M,x):T(V,m,v,M,_)}return{createEmptyRow:b,createNewRowFromDataItem:k,renderDataRow:g}}function el(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,b,k){if(u.value){const T=p.data[y];let g=T.colSpan;const C=s.value.reduce((S,h)=>(S.set(h,!0),S),new Map);k.reduce((S,h,_)=>{if(C.has(h.field)){const N=l(h.field,Re.readonly,_,b,p);p.data[h.field]=N,g-1>_&&(g=_)}return S},p),T.colSpan=g}}function d(p,y,b,k,T,g,C){const S=p.__fv_data_grid_group_field__,h=c(ht.group,k,p,y,b,T);return h.data[a.value]=l(a.value,Re.readonly,-1,p,h,0),h.data[S]=l(S,Re.readonly,1,p,h,g.length),f(h,S,p,g),h}return{renderGroupRow:d}}function tl(e,t,o,i){const{idField:r}=t,{createCellByField:a}=o,{createEmptyRow:l}=i;function c(s,u,f,d,p,y,b){const k=s.__fv_data_grid_group_field__,T=l(ht.summary,d,s,u,f,p);return T.data[r.value]=a(r.value,Re.readonly,-1,s,T),T.data[k]=a(k,Re.readonly,1,s,T,y.length),T}return{renderSummaryRow:c}}function mo(e,t,o,i){var v;const{idField:r}=o,a=n.ref(e.editable),l=n.ref(e.editOption),c=n.ref(((v=e.rowOption)==null?void 0:v.wrapContent)||!1),{onClickRow:s}=i;n.watch(()=>e.editable,()=>{a.value=e.editable}),n.watch(()=>{var F;return(F=e.editOption)==null?void 0:F.editMode},F=>{l.value.editMode=F});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 b(F){return d&&d.raw[r.value]===F?d:null}const k=n.reactive({});function T(F,V,I={}){F.mode=Re.editing,f=F,d=V,p=xe.resolveField(V==null?void 0:V.raw,F.field),y=I}function g(F){F.accept(),F.mode=Re.editable,f=null,t.emit("endEditCell",{cell:F,row:d,newValue:xe.resolveField(d==null?void 0:d.raw,F.field),oldValue:p,column:y,editor:k})}function C(F){if(document.body.classList.contains("lookup-modal-open"))return;const I=F.target.closest(".fv-grid-cell");f&&f.ref&&f.ref===I||(f&&(g(f),d&&(d=void 0)),document.body.removeEventListener("click",C))}function S(F,V,I,B={}){F.stopPropagation(),s(F,I),a.value&&l.value.editMode==="cell"&&V.mode===Re.editable&&(f&&g(f),Promise.resolve().then(()=>De.isUndefined(e.beforeEditCell)?!0:typeof e.beforeEditCell=="function"?e.beforeEditCell({row:I,cell:V,rawData:I.raw,column:B}):e.beforeEditCell).then($=>{$&&(T(V,I,B),document.body.removeEventListener("click",C),document.body.addEventListener("click",C))}))}function h(F){Object.values(F.data).filter(V=>V.mode===Re.editable&&V.field!=="__commands__").forEach(V=>{V.mode=Re.editing}),F.status=lt.editing,d=F}function _(F,V){Object.values(F.data).filter(I=>I.mode===Re.editing).forEach(I=>{V?I.accept():I.cancel(),I.mode=Re.editable}),F.status=lt.initial,d===F&&(d=void 0)}function N(F){a.value&&l.value.editMode==="row"&&d!==F&&(d&&_(d,!1),h(F))}function m(F){_(F,!0),F.status=lt.initial}function M(F){_(F,!1),F.status=lt.initial}function w(F,V,I){const B=V.dataType,$=V.editor||{type:u.get(B)||"input-group"};return!c.value&&$.type==="text"&&($.type="input-group"),$?($.context={rowData:I.raw,column:V,cell:F,editor:k},n.createVNode(Rt.FDynamicFormInput,{focusOnCreated:e.focusOnEditingCell,selectOnCreated:e.selectOnEditingCell,editor:$,modelValue:F.editingData,"onUpdate:modelValue":E=>F.editingData=E,id:V.id},null)):F.data}function x(){f&&g(f)}return{onClickCell:S,onEditingRow:N,acceptEditingRow:m,cancelEditingRow:M,getEditingSnapshot:b,getEditor:w,endEditCell:x}}function ho(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 go(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 b(m){return d.value&&(c.value?u.value.includes(m.raw[r.value]):m.raw[r.value]===a.value)}function k(m){var w;const M={"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":b(m),"fv-grid-row-odd":m.dataIndex%2>0,"fv-grid-row-even":m.dataIndex%2===0,"fv-grid-disabled":m.disabled};if((w=e.rowOption)!=null&&w.customRowStyle){const x=e.rowOption.customRowStyle(m.raw)||{};return Object.assign({},M,x)}return M}function T(m){var w;const M={"fv-grid-cell":!0};if((w=e.rowOption)!=null&&w.customCellStyle){const x=e.rowOption.customCellStyle(m)||{};return Object.assign({},M,x)}return M}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 C(m,M){if(M.disabled)return;c.value&&m.shiftKey||l.value?f(M):s(M),g(M)}function S(m){m.disabled||(a.value=m.raw[r.value],g(m))}function h(m,M){}function _(m,M){}function N(m){var w;const M={"fv-grid-sidebar-row":!0,"fv-grid-sidebar-row-hover":m.index===y.value,"fv-grid-sidebar-row-selected":b(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((w=e.rowOption)!=null&&w.customRowStyle){const x=e.rowOption.customRowStyle(m.raw)||{};return Object.assign({},M,x)}return M}return{clickRowItem:S,gridCellClass:T,gridRowClass:k,onClickRow:C,onMouseoverRow:h,sidebarRowClass:N,onMouseoutRow:_}}function yo(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,(D,Z)=>{D!==Z&&(d.value=D)});function y(){return t.getSelectionItems(p.value)}function b(){const D=i.value.reduce((ue,ee)=>(ue.set(ee.raw[a.value],ee),ue),new Map);return p.value.map(ue=>D.get(ue)).filter(ue=>!!ue)}const k=n.computed(()=>c.value&&s.value),T=n.computed(()=>!!e.hierarchy),g=n.computed(()=>{const D=f.value&&u.value==="DependOnCheck";return k.value&&D}),C=n.computed(()=>k.value&&!f.value),S=n.computed(()=>k.value&&f.value&&u.value==="OnCheckAndClick");n.computed(()=>S.value);function h(){const D=t.getSelectionItems(p.value);r.emit("selectionChange",D)}function _(D){r.emit("unSelectItem",D)}function N(){i.value.forEach(Z=>{Z.checked=!1,Z.indeterminate=!1,Z.raw.__fv_checked__=!1,Z.raw.__fv_indeterminate__=!1}),b().forEach(Z=>{Z.checked=!0,Z.raw.__fv_checked__=!0})}n.watch(()=>i.value,()=>{N()}),n.watch(()=>e.selectionValues,D=>{p.value=D,N()},{immediate:!0}),n.watch(()=>e.selection,D=>{s.value=!!D.multiSelect,u.value=D.multiSelectMode||"DependOnCheck",f.value=!!D.showCheckbox});const m=n.computed(()=>!s.value);function M(D){return D.raw[a.value]}function w(D){return p.value.findIndex(ue=>ue===M(D))}function x(){b().forEach(ue=>{ue.checked=!1}),t.getSelectionItems(p.value).forEach(ue=>{ue.__fv_checked__=!1}),p.value=[],l.value=""}function v(D){const Z=D.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()),D.checked=!0,D.indeterminate=!1}function F(D){const Z=D.raw;Z.__fv_checked__=!1,Z.__fv_indeterminate__=!1,p.value=p.value.filter(ue=>ue!==Z[a.value]),D.checked=!1,D.indeterminate=!1}function V(D){v(D),l.value=D.raw[a.value]}function I(D){F(D),l.value=""}function B(D){const Z=D.raw;Z.__fv_checked__=!1,Z.__fv_indeterminate__=!0,p.value=p.value.filter(ue=>ue!==Z[a.value]),D.checked=!1,D.indeterminate=!0}function $(D){m.value&&x(),D.checked?F(D):v(D),h()}function E(D){m.value&&x(),D.checked?I(D):V(D),h(),D.checked||_(D)}function O(D){D.raw[a.value]!==l.value&&(x(),V(D),h())}function L(D){const Z=i.value.find(ue=>ue.raw[a.value]===D);Z&&O(Z)}function H(D){const Z=i.value.filter(ue=>D.includes(ue.raw[a.value]));Z&&Z.length&&(x(),Z.forEach(ue=>{V(ue)}),h())}function U(D){for(const Z of D)if(p.value.includes(Z)){const ue=i.value.find(ee=>ee.raw[a.value]===Z);ue&&I(ue)}}function Q(){i.value.forEach(D=>V(D)),h()}function ne(){p.value.splice(0,p.value.length),i.value.forEach(D=>{const Z=D.raw;Z.__fv_checked__=!1,Z.__fv_indeterminate__=!1,D.checked=!1,D.indeterminate=!1}),h()}function le(){return i.value.find(D=>D.raw[a.value]===l.value)}return{clearSelection:x,currentSelectedDataId:l,enableMultiSelect:s,enableSelectRow:c,findIndexInSelectedItems:w,getSelectedItems:y,getSelectionRow:le,indeterminate:B,isSelectingHirarchyItem:T,multiSelectMode:u,multiSelectOnClickRow:S,multiSelectOnClickRowWithShift:C,multiSelectOnlyOnCheck:g,select:V,selectAll:Q,selectedValues:p,selectItem:O,selectItemById:L,selectItemByIds:H,showCheckBox:f,showSelectAll:d,toggleSelectItem:E,toggleSelectItemWithoutRow:$,unSelect:I,unSelectAll:ne,unSelectItemByIds:U}}function vo(e,t){var T,g;const o=String(Date.now()),i=50,{showCheckBox:r,showSelectAll:a}=t,l=n.ref(((T=e.rowNumber)==null?void 0:T.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 C;return l.value?((C=e.rowNumber)==null?void 0:C.heading)??"序号":""}),d=n.computed(()=>(c.value&&!e.hierarchy?Number(u.value):0)+(l.value?Number(s.value):0));n.watch(()=>e.rowNumber,C=>{C&&C.enable!==void 0&&(l.value=C.enable),C&&C.width!==void 0&&(s.value=C.width)});function p(C){return{top:`${C.top}px`,width:`${d.value}px`,height:`${C.height||""}px`}}const y=n.computed(()=>({width:`${d.value}px`}));function b(C){return`${o}_${C.type}_r_${C.index}_${C.refreshKey||""}`}function k(C){return`${o}_${C.type}_r_${C.index}_${C.refreshKey||""}`}return{showRowNumer:l,showSidebarCheckBox:c,sidebarCellPosition:p,sidebarCornerCellStyle:y,sidebarTitle:f,sidebarWidth:d,rowKey:k,cellKey:b}}const nl={ascend:(e,t)=>e===t?0:e===!1?-1:1,decend:(e,t)=>e===t?0:e===!0?-1:1},ol={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}},il={ascend:(e,t)=>e===t?0:e<t?-1:1,decend:(e,t)=>e===t?0:e<t?1:-1},rl={ascend:(e,t)=>e===t?0:e<t?-1:1,decend:(e,t)=>e===t?0:e<t?1:-1};function bo(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",nl],["datetime-sorter",ol],["numeric-sorter",il],["text-sorter",rl]]);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 al(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 ll(e,t,o,i,r,a,l,c,s,u,f,d,p,y,b){const{calculateCellPositionInRow:k,cellKey:T,cellPosition:g,rowKey:C,rowPosition:S,rowSpanCellPosition:h,groupCellPosition:_,summaryCellPosition:N}=l,{cellContentClass:m,cellContentPosition:M,cellContentClassWithEllipsis:w}=a,{collpaseGroupIconClass:x}=u,{gridCellClass:v,gridRowClass:F,onClickRow:V,onMouseoverRow:I,onMouseoutRow:B}=d,{onClickCell:$}=s,{toggleGroupRow:E}=p,{columnContext:O,hasLeftFixedColumn:L,hasRightFixedColumn:H}=c,{navigateOnKeyUp:U}=f,{gridDataStyle:Q,gridMergedDataStyle:ne,leftFixedGridDataStyle:le,leftFixedGridMergedDataStyle:D,rightFixedGridDataStyle:Z,rightFixedGridMergedDataStyle:ue}=y;function ee(j,ie){ie.collapse=!ie.collapse,b.value=E(ie.collapse?"collapse":"expand",ie,b.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:Le=>ee(Le,j)},[n.createVNode("span",{class:x(j)},null)]));const ge=j.data[j.groupField];te.push(n.createVNode("div",{ref:ge.setRef,key:T(j,j.layer+1),class:"fv-grid-cell",style:_(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:T(j,Te.index),class:"fv-grid-cell",style:g(Te,ie)},[Te.data]))})}return te}function z(j,ie){return j.layer>-1&&n.createVNode("div",{ref:j.setRef,key:C(j),class:F(j),style:S(j),onClick:te=>V(te,j),onMouseover:te=>I(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:T(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:C(j),class:F(j),style:S(j),onClick:te=>V(te,j),onMouseover:te=>I(te,j)},[ye(j,ie)])}function Oe(j,ie){return n.createVNode("div",{ref:j.setRef,key:C(j),class:F(j),style:S(j),onClick:te=>V(te,j),onMouseover:te=>I(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:T(j,te.index),class:v(te),style:g(te,ie),onClick:ge=>$(ge,te,j,te.column),onKeyup:ge=>U(ge,te)},[n.createVNode("div",{class:m(te),style:M(te)},[n.createVNode("div",{class:w(te)},[te.data!=null&&t.slots.cellTemplate?t.slots.cellTemplate({cell:te,row:j}):te.mode===Re.editing?te.getEditor(te):te.formatter?te.formatter(te,j):te.data!=null?te.data.toString():te.data])])]))])}const je=[Oe,z,fe];function Me(j,ie){const te=k(j);return b.value.map(ge=>je[ge.type](ge,te))}function Se(j){const ie=k(j);return b.value.map(te=>Object.values(te.data).filter(ge=>ie[ge.field]&&ge.rowSpan>1).map(ge=>n.createVNode("div",{key:T(te,ge.index),class:"fv-grid-cell fv-grid-merged-cell",style:h(te,ge,ie)},[ge.data])))}function ke(){return n.createVNode("div",{ref:i,class:"fv-grid-content-left-fixed"},[n.createVNode("div",{class:"fv-grid-data",style:le.value},[Me(O.value.leftColumns.filter(j=>j.visible))]),n.createVNode("div",{class:"fv-grid-merge-date",style:D.value},[Se(O.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:Q.value},[Me(O.value.primaryColumns.filter(j=>j.visible))]),n.createVNode("div",{class:"fv-grid-merge-date",style:ne.value},[Se(O.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(O.value.rightColumns.filter(j=>j.visible))]),n.createVNode("div",{class:"fv-grid-merge-date",style:ue.value},[Se(O.value.rightColumns.filter(j=>j.visible))])])}function pe(){const j=[];return L.value&&j.push(ke()),j.push(Pe()),H.value&&j.push(Ie()),j}return{renderDataArea:pe}}const gt=n.defineComponent({name:"FDataGrid",props:Wt,emits:["changed","clickRow","doubleClickRow","selectionChange","unSelectItem","enterUpInLastCell","pageIndexChanged","pageSizeChanged","beginEditCell","endEditCell"],setup(e,t){var Ct,wt;const i=((Ct=e.rowOption)==null?void 0:Ct.height)||28,r=n.ref(20),a=n.ref(e.columns),l=Y.useIdentify(e),c=n.ref(),s=n.ref(),u=n.ref(),f=n.ref(),d=n.ref(),p=n.ref([]),y=n.ref(!1),b=n.ref(((wt=e.rowOption)==null?void 0:wt.wrapContent)||!1),k=Y.useGroupData(e,l),T=Y.useFilter(),g=Y.useHierarchy(e),{showLoading:C,renderLoading:S}=Y.useLoading(e,c),h=Y.useDataView(e,new Map,T,g,l),_=Y.usePagination(e,h),{shouldRenderPagination:N}=_,m=Y.useSelection(e,h,l,p,t),M=n.computed(()=>e.disabled),w=n.computed(()=>Math.min(h.dataView.value.length,r.value));n.computed(()=>e.loadingConfig.message);const{containerStyleObject:x}=Y.useDataViewContainerStyle(e),v=Y.useCommandColumn(e),{applyCommands:F}=v;F(a);const V=Y.useColumn(e),I=Y.useSort(e),{applyColumnSorter:B,columnContext:$,updateColumnRenderContext:E}=V;B(h,I);const O=Y.useGroupColumn(e,$),L=Y.useRow(e,t,m,l),H=Y.useEdit(e,t,l,L),U=Y.useVisualDataBound(e),Q=Y.useVisualDataCell(e,H,U),ne=Y.useVisualDataRow(e,H,g,l,U,Q),le=Y.useVisualGroupRow(e,l,Q,ne),D=Y.useVisualSummaryRow(e,l,Q,ne),Z=Y.useVisualData(e,a,h,w,0,ne,le,D),{getVisualData:ue}=Z,ee=Y.useCellContentStyle($),A=Y.useCellPosition(e,$),z=Y.useSidebar(e,m),{sidebarWidth:ye}=z,fe=Y.useVirtualScroll(e,h,p,$,Z,w,0,ye),{onWheel:Oe,dataGridWidth:je,viewPortHeight:Me,viewPortWidth:Se,resetScroll:ke,updateVisibleRowsOnLatestVisibleScope:Pe}=fe,Ie=Y.useFitColumn(e,$,s,Se,O),{calculateColumnsSize:pe}=Ie,j=Y.useFilterHistory(),ie=Y.useColumnFilter(s,d,h,j,fe),te=Y.useDragColumn(e,t,V,h,O,k,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":b.value})),{renderGridHeader:Le,renderGridColumnResizeOverlay:ze,shouldShowHeader:Ue}=Y.getColumnHeader(e,t,s,f,d,V,h,te,ie,T,j,Ie,O,m,z,I,fe,Se,p),{renderDataGridPagination:Qe}=Y.getPagination(e,t,h,fe,_),{renderDataGridSidebar:Ze}=Y.getSidebar(e,L,m,z,fe),{renderDisableMask:Ke}=Y.getDisableMask(),{renderDataGridSummery:nt}=Y.getSummary(e,h,V),{renderHorizontalScrollbar:ot}=Y.getHorizontalScrollbar(e,s,fe),{renderVerticalScrollbar:it}=Y.getVerticalScrollbar(e,s,fe),{renderFilterPanel:P}=Y.getFilterPanel(e,V,h,T,fe),{renderGroupPanel:W}=Y.getGroupPanel(e,h,te,k,fe);function K(){var yt,Pt;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=((Pt=s.value)==null?void 0:Pt.clientWidth)||0,pe()}n.onMounted(()=>{s.value&&(r.value=Math.max(Math.ceil(s.value.clientHeight/i),r.value),p.value=ue(0,w.value+0-1),Vt.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)})),C.value&&S()}),n.onUnmounted(()=>{}),n.watch(Se,()=>{});function me(){h.insertNewDataItem(),ke()}function be(){h.insertNewDataItem(p.value.length),ke()}function Ee(he){H.onEditingRow(he)}function Ne(he){h.removeDataItem(he),ke()}function Ce(he){h.removeDataItemById(he),ke()}function Be(he){H.acceptEditingRow(he)}function Fe(he){H.cancelEditingRow(he)}function _e(he){he&&(a.value=he,F(a),E(a.value),B(h,I),pe())}function Ve(he){he&&(ke(),h.load(he),p.value=ue(0,w.value+0-1))}function qe(he){_.updatePagination(he)}n.watch(()=>e.data,he=>{e.changePolicy==="default"&&Ve(he)},{deep:!0}),n.watch(()=>e.columns,he=>{_e(he)});function ft(he){m.selectItemById(he)}function R(he){const yt=p.value.find(Pt=>Pt.raw[l.idField.value]===he);yt&&L.clickRowItem(yt)}function G(he){m.selectItemByIds(he)}function J(){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:Ee,acceptDataItem:Be,cancelDataItem:Fe,selectItemById:ft,selectItemByIds:G,updateColumns:_e,updateDataSource:Ve,updatePagination:qe,getVisibleData:J,getVisibleDataByIds:de,getSelectedItems:ve,getSelectionRow:we,endEditCell:rt,clickRowItemById:R,clearSelection:et,unSelectItemByIds:Ye};t.expose(at);const He=Y.useNavigation(e,t,at,V,H,p),{renderDataArea:st}=ll(e,t,u,f,d,ee,A,V,H,k,He,L,Z,fe,p),Je=n.computed(()=>!p.value||!p.value.length),{renderEmpty:Ge}=Y.getEmpty(t);return()=>n.createVNode("div",{ref:c,class:ge.value,style:x.value,onWheel:Oe},[s.value&&P(),s.value&&W(),s.value&&Ue.value&&Le(),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&&Je.value&&Ge(),s.value&&ot(),s.value&&it()]),s.value&&nt(),N.value&&Qe(),ze(),M.value&&Ke()])}});class sl 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 cl(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 sl(f,t).getPropertyConfig(o)}return{canAccepts:a,checkCanDeleteComponent:l,checkCanMoveComponent:c,hideNestedPaddingInDesginerView:s,triggerBelongedComponentToMoveWhenMoved:i,triggerBelongedComponentToDeleteWhenDeleted:r,getPropsConfig:u}}const en=n.defineComponent({name:"FDataGridDesign",props:yr,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=cl(r,i),l=Yt(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=ho(e),f=0,d=n.ref(),p=n.ref(),y=n.ref(e.showStripe),b=n.ref([]),k=n.ref(!1),T=n.ref(((Ie=e.rowOption)==null?void 0:Ie.wrapContent)||!1),g=ao(),C=lo(e),S=En(e,new Map,g,C,u),h=yo(e,S,u,b,t),_=n.computed(()=>S.totalItems.value<s?S.totalItems.value:s),{containerStyleObject:N}=Tn(e),m=kn(e),{applyCommands:M}=m;M(c);const w=Vn(e),x=bo(),{applyColumnSorter:v,columnContext:F,updateColumnRenderContext:V}=w;v(S,x);const I=In(e,F),B=go(e,t,h,u),$=mo(e,t,u,B),E=uo(e),O=fo(e,$,E),L=po(e,$,C,u,E,O),H=el(e,u,O,L),U=tl(e,u,O,L),Q=co(e,c,S,_,f,L,H,U),{getVisualData:ne}=Q,le=vo(e,h),{sidebarWidth:D}=le;b.value=ne(0,_.value+f-1);const Z=so(e,S,b,F,Q,_,f,D),{onWheel:ue,dataGridWidth:ee,viewPortHeight:A,viewPortWidth:z}=Z,ye=oo(e,F,d,z,I),{calculateColumnsSize:fe}=ye,Oe=n.computed(()=>({"fv-grid":!0,"fv-datagrid-strip":y.value})),je=n.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":k.value,"fv-grid-wrap-content":T.value})),{renderGridHeader:Me}=no(r,e,w,Z),{renderHorizontalScrollbar:Se}=Mn(e,d,Z);function ke(){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,ke),fe(),n.nextTick(()=>{d.value&&(ee.value=d.value.clientWidth),p.value&&(z.value=p.value.clientWidth,A.value=p.value.clientHeight)}))});function Pe(pe){pe&&(c.value=pe,M(c),V(c.value),v(S,x),fe())}return n.watch(()=>e.columns,pe=>{Pe(pe),_t.value++}),n.watch(z,()=>{d.value&&fe()}),()=>n.createVNode("div",{ref:o,class:Oe.value,style:N.value,onWheel:ue},[Me(),n.createVNode("div",{ref:d,class:je.value,onMouseover:()=>{k.value=!0},onMouseleave:()=>{k.value=!1}},[Se()])])}}),dl={$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"]},Co={modelValue:{type:String,default:""},viewModelId:{Type:String,default:""},gridData:{Type:Object,default:null},gridType:{Type:String,default:"data-grid-column"},getLatestGridData:{Type:Function}},ul=Ae(Co,dl,Cn,xn),fl=new Map([["appearance",pt]]);function pl(e,t,o){return t}const ml={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:[]}}}}}},hl={$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"]},wo={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}};Ae(wo,hl,fl,pl,ml);const gl=new Map([["appearance",pt]]);function yl(e,t,o){return t}const vl={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/list-view.schema.json",title:"list-view",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for list-view",type:"string"},type:{description:"The type string of list-view",type:"string",default:"list-view"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disable:{type:"string",default:!1},editable:{description:"",type:"boolean",default:!0},placeholder:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},require:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},visible:{description:"",type:"boolean",default:!0}},required:["id","type"]},bl={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:[]}}}}}},So={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}};Ae(So,vl,gl,yl,bl);function Cl(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 b=0;for(;b<p.length;){const k=p.indexOf(l,b);if(k===-1)break;y.push(k),b=k+l.length}return y.map(k=>{const T=new Range;return T.setStart(d,k),T.setEnd(d,k+l.length),T})}).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 xo(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),b=n.computed(()=>{var M,w;return((M=e.selection)==null?void 0:M.multiSelect)&&((w=e.selection)==null?void 0:w.showCheckbox)}),{onMouseenterItem:k,onMouseoverItem:T,onMouseoutItem:g}=a,{getKey:C,listViewItemClass:S,onCheckItem:h,onClickItem:_}=l,N=n.computed(()=>e.itemClass?{}:{margin:f.value==="small"?"0.25rem 0":"8px 0"});function m(M,w,x){return M.checked=c.findIndexInSelectedItems(M)>-1,n.createVNode("li",{class:S(M,w),id:C(M,w),key:C(M,w),onClick:v=>_(v,M,w),onMouseenter:v=>k(v,M,w),onMouseover:v=>T(v,M,w),onMouseout:v=>g(v,M,w)},[b.value&&n.createVNode("div",{class:"f-list-select",onClick:v=>v.stopPropagation()},[n.createVNode(St.FCheckbox,{id:"list-"+C(M,w),customClass:"listview-checkbox",disabled:M[y.value],checked:M.checked,"onUpdate:checked":v=>M.checked=v,onChange:v=>{h(M,w,!v.checked)}},null)]),n.createVNode("div",{class:"f-list-content"},[n.createVNode("div",{style:N.value,title:M.raw[p.value]||M.raw[d.value]},[M.raw[d.value]])])])}return{renderItem:m}}function wl(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:b}=a,{getKey:k,listViewItemClass:T,onCheckItem:g,onClickItem:C}=l;function S(_,N,m){return t.slots.content?n.createVNode(n.Fragment,null,[t.slots.content&&t.slots.content({item:_.raw,index:N,selectedItem:m})]):n.createVNode("div",{style:"margin: 10px 0;"},[_.raw.name])}function h(_,N,m){return n.createVNode("li",{class:T(_,N),id:k(_,N),key:k(_,N),onClick:M=>C(M,_,N),onMouseenter:M=>p(M,_,N),onMouseover:M=>y(M,_,N),onMouseout:M=>b(M,_,N)},[f.value&&n.createVNode("div",{class:"f-list-select",onClick:M=>M.stopPropagation()},[n.createVNode(St.FCheckbox,{id:"list-"+k(_,N),customClass:"listview-checkbox",disabled:_[d.value]||!_.checked,checked:_.checked,"onUpdate:checked":M=>_.checked=M,onChange:M=>g(_,N,!M.checked)},null)]),n.createVNode("div",{class:"f-list-content"},[S(_,N,m)])])}return{renderItem:h}}function Sl(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:b}=a,{getKey:k,listViewItemClass:T,onCheckItem:g,onClickItem:C}=l,{dragstart:S,dragenter:h,dragover:_,dragend:N}=i,{removeItem:m}=s,M=n.computed(()=>({margin:f.value?"10px 0":"10px 0px 10px 14px"}));function w(V){return n.createVNode("div",{style:M.value},[V.raw.name])}function x(){return t.slots.itemContent?t.slots.itemContent:w}const v=x();function F(V,I,B){return n.createVNode("li",{class:T(V,I),id:k(V,I),key:k(V,I),onClick:$=>C($,V,I),onMouseenter:$=>p($,V,I),onMouseover:$=>y($,V,I),onMouseout:$=>b($,V,I),draggable:"true",onDragstart:$=>S($,V,I),onDragenter:$=>h($,I),onDragend:$=>N($,V),onDragover:$=>_($,I)},[f.value&&n.createVNode("div",{class:"f-list-select",onClick:$=>$.stopPropagation()},[n.createVNode(St.FCheckbox,{id:"list-"+k(V,I),customClass:"listview-checkbox",disabled:V[d.value]||!V.checked,checked:V.checked,"onUpdate:checked":$=>V.checked=$,onChange:$=>g(V,I,!$.checked)},null)]),n.createVNode("div",{class:"f-list-content"},[v(V)]),n.createVNode("div",{class:"f-list-remove",onClick:$=>m(I)},[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:F}}function xl(e,t,o,i,r,a,l,c,s,u){var k;const f=n.ref(((k=e.group)==null?void 0:k.groupFields)||[]),{collpaseGroupIconClass:d}=r,{toggleGroupRow:p}=u;function y(T,g){g.collapse=!g.collapse,o.value=p(g.collapse?"collapse":"expand",g,o.value)}function b(T,g,C){return T.layer>-1&&n.createVNode("div",{class:"f-navlookup-recentHeader",onClick:S=>y(S,T)},[n.createVNode("div",{class:"fv-grid-group-row-icon"},[n.createVNode("span",{class:d(T)},null)]),n.createVNode("div",{class:"f-navlookup-recommandLabel"},[T.raw[f.value[T.layer]]])])}return{renderItem:b}}function Fl(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,C,S){g.stopPropagation(),p(),C&&setTimeout(()=>{l.value=S,c.value=!0,C.moving=!0})}function b(g,C){if(g.preventDefault(),l.value!==C){const S=a.value[l.value],h=a.value;h.splice(l.value,1),h.splice(C,0,S),l.value=C}}function k(g,C){g.preventDefault(),g.dataTransfer&&(g.dataTransfer.dropEffect="move")}function T(g,C){C&&(C.moving=!1),a.value.forEach((S,h)=>{S.__fv_index__=h}),c.value=!1,d(),f.value=C.raw.__fv_index__,s.value=C.raw.__fv_index__,u.value=C.raw[r.value],t.emit("change",a.value),t.emit("activeChange",C)}return{dragstart:y,dragenter:b,dragover:k,dragend:T,isDragging:c}}function _l(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 Ml(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:b,hoverIndex:k}=r,{clearSelection:T,getSelectedItems:g,toggleSelectItem:C}=a,S=n.ref(g());function h(v,F){const V={"f-list-view-group-item":!0,"f-list-view-draggable-item":s.value,"f-un-click":!v.checked,"f-un-select":!!v.raw[c.value],"f-listview-active":v.raw.__fv_index__===y.value,"f-listview-hover":!p.value&&F===k.value,moving:!!v.moving};return u.value.split(" ").reduce((B,$)=>(B[$]=!0,B),V),V}function _(v,F){return v.raw[l.value]||""}const N=n.computed(()=>!f.value);function m(v,F,V){v.checked=V,!v.raw[c.value]&&(N.value&&(b.value=v.raw[l.value]),C(v))}const M=n.computed(()=>f.value&&d.value==="OnCheckClearByClick"),w=n.computed(()=>!f.value||f.value&&(d.value==="OnCheckAndClick"||d.value==="OnClick"));function x(v,F,V){if(F.raw[c.value]){v.preventDefault(),v.stopPropagation();return}b.value=F.raw[l.value],y.value=V,M.value&&T(),w.value&&(C(F),S.value=g()),t.emit("clickItem",{data:S.value,index:V}),t.emit("activeChange",S.value)}return{getKey:_,listViewItemClass:h,onCheckItem:m,onClickItem:x}}function Tl(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=Fl(e,t,i,a),y=_l(e,t,i),b=Ml(e,t,o,p,a,l),k=n.computed(()=>({"f-list-view-group":!0,"f-list-view-group-multiselect":e.multiSelect,"d-flex":u.value,"flex-wrap":u.value})),T=n.computed(()=>!!o.value&&o.value.length>0),g=n.computed(()=>o.value.length===0);n.computed(()=>g.value&&!t.slots.empty);function C(){return s.value==="SingleView"?xo:s.value==="DraggableView"?Sl:(s.value==="ContentView"||s.value==="CardView")&&t.slots.content?wl:xo}const S=C(),{renderItem:h}=S(e,t,o,p,r,a,b,l,y,c),{renderItem:_}=xl(e,t,o,p,r,a,b,l,y,c),N=[h,_];function m(){return o.value.filter(x=>x.visible!==!1).map((x,v)=>N[x.type](x,v,f))}function M(){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 w(){return n.createVNode("ul",{class:k.value,style:"list-style: none;"},[T.value&&m(),g.value&&M()])}return{renderListArea:w}}function Vl(e,t,o){function i(){return t.slots.header&&n.createVNode("div",{class:"f-list-view-header"},[t.slots.header()])}return{renderHeader:i}}function Fo(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((b,k)=>(b[k]=!0,b),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 kl(){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 _o=n.defineComponent({name:"FListView",props:So,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=Y.useFilter(),u=Y.useIdentify(e),f=Y.useHierarchy(e),d=Y.useGroupData(e,u),p=Y.useDataView(e,new Map,s,f,u),y=Y.useSelection(e,p,u,a,t),b=Cl(e,o),k=n.computed(()=>p.dataView.value.length),T=Y.useRow(e,t,y,u),g=Y.useEdit(e,t,u,T),C=Y.useVisualDataBound(e),S=Y.useVisualDataCell(e,{},C),h=Y.useVisualDataRow(e,g,f,u,C,S),_=Y.useVisualGroupRow(e,u,S,h),N=Y.useVisualSummaryRow(e,u,S,h),m=Y.useVisualData(e,c,p,k,l,h,_,N),{getVisualData:M}=m;a.value=M(0,k.value+l-1);const w=n.computed(()=>{const H={"f-list-view":!0,"f-list-view-multiple":e.multiSelect};return e.size!=="default"&&(H[`${e.size}-item`]=!0),H}),x=n.computed(()=>!!t.slots.footer||i.value);function v(){return e.header==="SearchBar"?Fo:e.header==="ContentHeader"?Vl:Fo}const F=v(),{renderHeader:V}=F(e,t,b),I=kl(),{renderListArea:B}=Tl(e,t,a,p,d,I,y,m);function $(H){b.search(H)}function E(H){H&&(p.load(H),a.value=M(0,k.value+l-1))}function O(){y.clearSelection(),I.clearActiveItem()}t.expose({search:$,updateDataSource:E,clearSelection:O});function L(H){e.multiSelect&&(H.preventDefault(),H.stopPropagation())}return()=>n.createVNode("div",{class:w.value,onClick:L},[V(),n.createVNode("div",{ref:o,class:"f-list-view-content",onMouseover:()=>{r.value=!0},onMouseleave:()=>{r.value=!1}},[B()]),x.value&&n.createVNode("div",{class:"f-list-view-footer"},[t.slots.footer&&t.slots.footer()])])}}),Il=n.defineComponent({name:"FTransfer",props:wo,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(w=>w[o.value])),f=new Map,d=n.ref();function p(){const w=new Map,x=e.selectionValues||[];x.length&&x.reduce((F,V)=>(F.set(V,!0),F),w);const v=e.selections||[];v.length&&(w.clear(),v.reduce((F,V)=>(F.set(V[o.value],!0),F),w)),s.value.length||(s.value=c.value.filter(F=>w.has(F[o.value])).map(F=>Object.assign({},F))),c.value.forEach(F=>{const V=F[o.value],I=w.has(V);F.checked=I,I&&f.set(V,F)})}p();const y=n.computed(()=>a.value==="List"),b=n.computed(()=>a.value==="Tree");function k(w){s.value=w.map(x=>Object.assign({},x)),t.emit("change",s.value)}function T(){return n.createVNode(_o,{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:k},{default:()=>[n.createTextVNode(" ")]})}function g(){return n.createVNode(ln,{data:c.value,rowOption:e.rowOption,selection:{enableSelectRow:!0,multiSelect:!0,multiSelectMode:"OnCheckAndClick",showCheckbox:!0,showSelectAll:!1,showSelection:!0},selectionValues:u.value,onSelectionChange:k},null)}function C(){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&&T(),b.value&&g()])])])}function S(w){const x=w[o.value];if(x!==null||x!==void 0){s.value=s.value.filter(F=>F[o.value]!==x);const v=f.get(x);v&&(v.checked=!1,f.delete(x)),t.emit("change",s.value)}}n.watch(s,w=>{d.value.updateDataSource(w)});function h(w){const x=new Map;s.value.reduce((v,F)=>(v.set(F[o.value],F),v),x),s.value=w.map(v=>x.get(v[o.value])),t.emit("change",s.value)}function _(w){t.emit("activeChange",w)}function N(){return n.createVNode(_o,{ref:d,style:"flex:1",data:s.value,draggable:!0,view:"DraggableView","keep-order":!0,onChange:h,onRemoveItem:S,onActiveChange:_},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 M=n.computed(()=>({"f-transfer":!0,row:!0,"f-utils-fill":l.value}));return()=>n.createVNode("div",{class:M.value,style:"height:480px"},[C(),m()])}}),Nl=n.defineComponent({name:"FGridFieldEditor",props:Co,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(_=>_.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(_=>{h.push(_),_.children&&y(_.children,h)}),h}function b(){u.value=i.getAllFields2TreeByVMId(o.value),f=y(u.value)}function k(){const S=i.getDgViewModel(o.value),h=[],_=[];s.value.forEach(m=>{delete m.inValidTip,delete m.isInValidBinding;const M=l==null?void 0:l.find(w=>{if(w.binding&&w.binding.field)return w.binding.field===m.id});if(M)h.push(M);else{const w=a.setGridFieldProperty(e.gridType,m.data,null,!0);S.addField(m),h.push(w)}_.push(m.id)});const N=S.fields.filter(m=>!_.includes(m.id));if(N&&N.length>0){const m=N.map(M=>M.id);if(S.removeField(m),r.getExpressions()&&r.getExpressions().length&&m.length){const M=r.getExpressions().filter(w=>!m.includes(w.fieldId));r.setExpressions(M)}}c.value=`共 ${h.length} 项`,t.emit("change",h)}const T={fitContent:!1,width:900,height:600,title:"列编辑器",acceptCallback:()=>{k()},rejectCallback:()=>{}};function g(S){s.value=S?[...S]:[]}function C(){return e.getLatestGridData&&(e.gridData=e.getLatestGridData(),b()),l=e.gridData.columns,p(),Promise.resolve(!0)}return n.onMounted(()=>{b()}),()=>n.createVNode(vt,{"button-behavior":"Modal","modal-options":T,modelValue:c.value,"onUpdate:modelValue":S=>c.value=S,editable:!1,beforeOpen:C},{default:()=>[n.createVNode("div",{class:"f-utils-absolute-all"},[n.createVNode(Il,{selections:s.value,"data-source":u.value,rowOption:d,class:"mx-2",displayType:"Tree",onChange:S=>g(S)},null)])]})}}),Bl={$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"]},El={$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"]},tn={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:""}},$l=Ae(tn,Bl,wn,Fn),Ol=Ae(tn,El,wn,Fn);class jl 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 Pl 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 Dl extends Xe{constructor(t,o){super(t,o)}getEditorProperties(t){return this.getComponentConfig(t,{type:"check-box"},{placeholder:{visible:!1},disabled:{visible:!1}})}}class Rl 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 Hl 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 Al(){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 Ll 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}=Al();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 Gl={$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}}},Wl=[{field:"code",title:"绑定字段"},{field:"name",title:"名称"},{field:"fieldType",title:"字段类型"}],nn=Symbol("Field_Selector Component Repository Service Token");Ae({disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},modelValue:{type:[String,Array],default:null},data:{type:Array,default:[]},idField:{type:String,default:"id"},columns:{type:Array,default:Wl},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}},Gl);const dt={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 zl(e){let t="form_group_"+Date.now();return e&&(t=e.replaceAll("-","_").replaceAll(".","_")),"lookup."+t}const Ul={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=zl(e.id))}}},Yl={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}}},Xl={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}}},Kl={convertFrom:(e,t)=>e.editor.displayType?e.editor.displayType.toUpperCase():"LIST",convertTo:(e,t,o)=>{e.editor.displayType=o}},Jl=Symbol("schema_repository_token");class Ql 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:dt},readonly:{description:"",title:"只读",type:"boolean",$converter:dt,editor:{enableClear:!0,editable:!0}},required:{visible:!1,description:"",title:"必填",type:"boolean",$converter:dt},visible:{description:"",title:"可见",type:"boolean",visible:!1,$converter:ql},placeholder:{title:"提示文本",type:"string",$converter:dt},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:dt,editor:this.comboListEditor},readonly:{description:"",title:"只读",type:"boolean",$converter:dt,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:Jl,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:Ul},displayType:{description:"类型: 树列表、列表、双列表、左树右列表",title:"展示类型",type:"string",$converter:Kl,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:nn},$converter:Yl},textField:{description:"显示文本字段",title:"文本字段",type:"string",$converter:Xl,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:nn}},mappingFields:{description:"字段映射",title:"字段映射",type:"string",$converter:dt,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:nn},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:dt,title:"启用多选",type:"boolean",editor:this.comboListEditor,refreshPanelAfterChanged:!0,visible:!this.isRelatedField()},separator:{description:"多选分隔符",$converter:dt,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 Zl extends Xe{constructor(t,o){super(t,o)}getEditorProperties(t){return this.getComponentConfig(t,{type:"number-range"},{editable:{description:"",title:"允许编辑",type:"boolean"}})}}class es 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 ts 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 ns 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 os 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 is 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 jl(this.componentId,this.designerHostService);break;case"check-group":a=new Pl(this.componentId,this.designerHostService);break;case"check-box":a=new Dl(this.componentId,this.designerHostService);break;case"combo-list":a=new Rl(this.componentId,this.designerHostService);break;case"date-picker":a=new Ll(this.componentId,this.designerHostService);break;case"lookup":a=new Ql(this.componentId,this.designerHostService);break;case"number-range":a=new Zl(this.componentId,this.designerHostService);break;case"number-spinner":a=new es(this.componentId,this.designerHostService);break;case"radio-group":a=new ts(this.componentId,this.designerHostService);break;case"switch":a=new ns(this.componentId,this.designerHostService);break;case"textarea":a=new Hl(this.componentId,this.designerHostService);break;case"time-picker":a=new os(this.componentId,this.designerHostService);break;default:a=new Ca(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:Mt.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",b="编辑器",k=f==null?void 0:f.description,T=(f==null?void 0:f.$converter)||"";l.propertyConfig.categories[o+"_"+u]={title:p,tabId:y,tabName:b,description:k,$converter:T,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 rs(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 is(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 Mo=n.defineComponent({name:"FDataGridColumnDesign",props:tn,emits:[],setup(e,t){const o=n.ref(),i=n.inject("designer-host-service"),r=n.inject("design-item-context"),a=rs(r,i),l=Yt(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}=wa(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])])}}});gt.install=e=>{e.component(gt.name,gt),e.component(en.name,en)},gt.register=(e,t,o,i)=>{e["data-grid"]=gt,t["data-grid"]=_n,e["grid-field-editor"]=Nl,t["grid-field-editor"]=ul,i["data-grid"]={bindingResolver:vr,selectionItemResolver:br,updateColumnsResolver:Cr,callbackResolver:wr}},gt.registerDesigner=(e,t,o)=>{e["data-grid"]=en,t["data-grid"]=_n,t["data-grid-column"]=$l,e["data-grid-column"]=Mo,t["tree-grid-column"]=Ol,e["tree-grid-column"]=Mo};const as={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/mapping-editor.schema.json",title:"mapping-editor",description:"A Farris Input Component",type:"object",properties:{fromData:{type:"object",default:null},toData:{type:"object",default:null},disabled:{type:"boolean",default:!1},readonly:{type:"boolean",default:!1},title:{type:"string",default:"字段映射编辑器"},modalWidth:{type:"number",default:800},modalHeight:{type:"number",default:600},modelValue:{type:"object",default:null},editorParams:{type:"object",default:null},onMappingFieldsChanged:{type:"object",default:null}}},on={fromData:{type:Object,default:{}},toData:{type:Object,default:{}},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},title:{type:String,default:"字段映射编辑器"},modalWidth:{type:Number,default:600},modalHeight:{type:Number,default:500},modelValue:{type:Object,default:{}},editorParams:{type:Object,default:null},onMappingFieldsChanged:{type:Function,default:null}},To=Ae(on,as),jt=n.defineComponent({name:"FMappingEditor",props:on,emits:["submitModal","update:modelValue"],setup(e,t){const o='<i class="f-icon f-icon-lookup"></i>',i=n.ref(),r=n.ref(e.modelValue||{}),a=n.ref([]),l=n.ref(e.fromData.dataSource||[]),c=n.ref(e.toData.dataSource||[]),s=n.inject(e.fromData.repositoryToken),u=n.inject(e.toData.repositoryToken),f=n.inject(Bn),d=x=>(x.raw.$type!=="SimpleField"&&(x.disabled=!0),x),p=[{field:"sourceField",title:"数据源字段",dataType:"string",editor:{type:"combo-tree",data:l.value,idField:e.fromData.idField||"id",textField:e.fromData.textField||"name",valueField:e.fromData.valueField||"id",formatter:e.fromData.formatter,editorParams:e.fromData.editorParams,editable:!1,customRowStatus:d}},{field:"targetField",title:"目标字段",dataType:"string",editor:{type:"combo-tree",data:c.value,idField:e.toData.idField||"id",textField:e.toData.textField||"name",valueField:e.toData.valueField||"id",formatter:e.toData.formatter,editorParams:e.toData.editorParams,editable:!1,customRowStatus:d}}];function y(){return Math.random().toString(36).substring(2,15)+Math.random().toString(36).substring(2,15)}function b(){let x=r.value||{};return typeof x=="string"&&(x=JSON.parse(x)),Object.keys(x).map(v=>({id:y(),sourceField:v,targetField:x[v]}))}const k=n.ref(b()),T=n.computed(()=>{var x;return`共 ${((x=k.value)==null?void 0:x.length)||0} 项`});function g(){i.value.endEditCell(),i.value.addNewDataItemAtLast()}function C(){return{sourceField:"",targetField:"",id:y()}}function S(){if(a.value.length){i.value.endEditCell();const x=k.value.findIndex(v=>v.id===a.value[0].id);x>-1&&(a.value=[],i.value.removeDataItem(x+1))}else f.warning("请选择要删除的映射字段!")}function h(){ct.question("确定要清空所有映射字段吗?","",()=>{r.value={},k.value=[],i.value.updateDataSource([])},()=>{})}function _(){const x={};return k.value.forEach(v=>{v.sourceField&&v.targetField&&(x[v.sourceField]=v.targetField)}),x}n.watch(()=>e.modelValue,x=>{r.value=x,k.value=b()});function N(){return k.value.filter(v=>!v.sourceField||!v.targetField).length}const m={title:e.title,fitContent:!1,height:e.modalHeight,width:e.modalWidth,minWidth:300,minHeight:200,showMaxButton:!0,buttons:[{name:"cancel",text:"取消",class:"btn btn-secondary",handle:x=>!0},{name:"accept",text:"确定",class:"btn btn-primary",handle:x=>{if(i.value.endEditCell(),N())return f.warning("请将映射字段填写完整!"),!1;const v=_();return r.value=v,t.emit("submitModal",v),t.emit("update:modelValue",v),e.onMappingFieldsChanged&&typeof e.onMappingFieldsChanged=="function"&&e.onMappingFieldsChanged(JSON.stringify(v)),!0}}],resizeable:!0,draggable:!0,closedCallback:(x,v)=>{(x.target.name==="cancel"||v==="icon"||v==="esc")&&(r.value=e.modelValue,k.value=b(),a.value=[])}};function M(x){a.value=x}function w(){var I,B;if(!((B=(I=e.editorParams)==null?void 0:I.propertyData)==null?void 0:B.helpId))return f==null||f.warning({message:"请先配置数据源!",position:"top-center"}),!1;const v=[],F=s?s.getData(e.editorParams):Promise.resolve(l.value);v.push(F);const V=u?u.getData(e.editorParams):Promise.resolve(c.value);return v.push(V),Promise.all(v).then(([$,E])=>(p[0].editor.data=$,p[1].editor.data=E,!0))}return()=>n.createVNode(vt,{modelValue:T.value,"onUpdate:modelValue":x=>T.value=x,editable:!1,disabled:e.disabled,readonly:e.readonly,inputType:"text",enableClear:!1,buttonContent:o,buttonBehavior:"Modal",modalOptions:m,beforeOpen:w},{default:()=>[n.createVNode("div",{class:"h-100 d-flex flex-column"},[n.createVNode("div",{class:"px-2"},[n.createVNode("button",{class:"btn btn-primary",onClick:g},[n.createTextVNode("新增")]),n.createVNode("button",{class:"btn btn-secondary ml-2",onClick:S},[n.createTextVNode("删除")]),n.createVNode("button",{class:"btn btn-secondary ml-3",onClick:h},[n.createTextVNode("清空")])]),n.createVNode("div",{class:" f-utils-fill p-2"},[n.createVNode(gt,{ref:i,pagination:{enable:!1},summary:{enable:!1},columnOption:{fitColumns:!0},editOption:{editMode:"cell"},rowNumber:!1,showBorder:!0,editable:"true",fit:!0,columns:p,data:k.value,newDataItem:C,onSelectionChange:M},null)])])]})}}),ls={install(e){e.component(jt.name,jt)},register(e,t,o,i){e["mapping-editor"]=jt,t["mapping-editor"]=To}};X.MappingEditor=jt,X.default=ls,X.mappingEditorProps=on,X.propsResolver=To,Object.defineProperties(X,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|