@farris/ui-vue
Version:
Farris Vue, a Farris Design based Vue3 component library.
1 lines • 303 kB
JavaScript
(function(X,i){typeof exports=="object"&&typeof module<"u"?i(exports,require("vue"),require("lodash-es"),require("@vueuse/core"),require("../data-view/index.umd.js"),require("../modal/index.umd.js"),require("../transfer/index.umd.js"),require("../tabs/index.umd.js"),require("../order/index.umd.js"),require("../condition/index.umd.js"),require("../checkbox/index.umd.js"),require("../common/index.umd.js"),require("../filter-bar/index.umd.js"),require("../tooltip/index.umd.js"),require("../pagination/index.umd.js"),require("../button/index.umd.js"),require("../search-box/index.umd.js"),require("../tags/index.umd.js"),require("../dynamic-form/index.umd.js"),require("../dynamic-resolver/index.umd.js"),require("../designer-canvas/index.umd.js"),require("../property-panel/index.umd.js"),require("../accordion/index.umd.js"),require("../avatar/index.umd.js"),require("../../designer/button-edit/index.umd.js"),require("../button-group/index.umd.js"),require("../calendar/index.umd.js"),require("../capsule/index.umd.js"),require("../../designer/checkbox/index.umd.js"),require("../../designer/checkbox-group/index.umd.js"),require("../combo-list/index.umd.js"),require("../combo-tree/index.umd.js"),require("../component/index.umd.js"),require("../color-picker/index.umd.js"),require("../content-container/index.umd.js"),require("../date-picker/index.umd.js"),require("../../designer/data-grid/index.umd.js"),require("../dropdown/index.umd.js"),require("../events-editor/index.umd.js"),require("../field-selector/index.umd.js"),require("../binding-selector/index.umd.js"),require("../image-cropper/index.umd.js"),require("../../designer/input-group/index.umd.js"),require("../layout/index.umd.js"),require("../list-nav/index.umd.js"),require("../list-view/index.umd.js"),require("../lookup/index.umd.js"),require("../mapping-editor/index.umd.js"),require("../nav/index.umd.js"),require("../number-range/index.umd.js"),require("../number-spinner/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("../../designer/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("../video/index.umd.js"),require("../textarea/index.umd.js"),require("../schema-selector/index.umd.js"),require("../tree-grid/index.umd.js"),require("../event-parameter/index.umd.js"),require("../filter-condition-editor/index.umd.js"),require("../fieldset/index.umd.js"),require("../sort-condition-editor/index.umd.js"),require("../menu-lookup/index.umd.js"),require("../drawer/index.umd.js"),require("../json-editor/index.umd.js"),require("../property-editor/index.umd.js"),require("../expression-editor/index.umd.js"),require("../code-editor/index.umd.js"),require("../html-template/index.umd.js"),require("../external-container/index.umd.js"),require("../notify/index.umd.js"),require("bignumber.js")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es","@vueuse/core","../data-view/index.umd.js","../modal/index.umd.js","../transfer/index.umd.js","../tabs/index.umd.js","../order/index.umd.js","../condition/index.umd.js","../checkbox/index.umd.js","../common/index.umd.js","../filter-bar/index.umd.js","../tooltip/index.umd.js","../pagination/index.umd.js","../button/index.umd.js","../search-box/index.umd.js","../tags/index.umd.js","../dynamic-form/index.umd.js","../dynamic-resolver/index.umd.js","../designer-canvas/index.umd.js","../property-panel/index.umd.js","../accordion/index.umd.js","../avatar/index.umd.js","../../designer/button-edit/index.umd.js","../button-group/index.umd.js","../calendar/index.umd.js","../capsule/index.umd.js","../../designer/checkbox/index.umd.js","../../designer/checkbox-group/index.umd.js","../combo-list/index.umd.js","../combo-tree/index.umd.js","../component/index.umd.js","../color-picker/index.umd.js","../content-container/index.umd.js","../date-picker/index.umd.js","../../designer/data-grid/index.umd.js","../dropdown/index.umd.js","../events-editor/index.umd.js","../field-selector/index.umd.js","../binding-selector/index.umd.js","../image-cropper/index.umd.js","../../designer/input-group/index.umd.js","../layout/index.umd.js","../list-nav/index.umd.js","../list-view/index.umd.js","../lookup/index.umd.js","../mapping-editor/index.umd.js","../nav/index.umd.js","../number-range/index.umd.js","../number-spinner/index.umd.js","../page-header/index.umd.js","../page-footer/index.umd.js","../progress/index.umd.js","../query-solution/index.umd.js","../../designer/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","../video/index.umd.js","../textarea/index.umd.js","../schema-selector/index.umd.js","../tree-grid/index.umd.js","../event-parameter/index.umd.js","../filter-condition-editor/index.umd.js","../fieldset/index.umd.js","../sort-condition-editor/index.umd.js","../menu-lookup/index.umd.js","../drawer/index.umd.js","../json-editor/index.umd.js","../property-editor/index.umd.js","../expression-editor/index.umd.js","../code-editor/index.umd.js","../html-template/index.umd.js","../external-container/index.umd.js","../notify/index.umd.js","bignumber.js"],i):(X=typeof globalThis<"u"?globalThis:X||self,i(X.video={},X.Vue,X.LodashES,X.VueUseCore,X.dataView,null,X.FTransfer,X.FTabs,X.FOrder,null,X.checkbox,X.common,X.FFilterBar,X.FTooltip,X.FPagination,X.FButton,X.FSearchBox,X.FTags,X.FDynamicForm,X.dynamicResolver,X.designerCanvas,X.propertyPanel,X.FAccordion,X.FAvatar,X.FButtonEdit,X.FButtonGroup,X.FCalendar,X.FCapsule,X.FCheckbox,X.FCheckboxGroup,X.FComboList,X.FComboTree,X.FComponent,X.FColorPicker,X.FContentContainer,X.FDatePicker,X.FDataGrid,X.FDropdown,X.FEventsEditor,X.FFieldSelector,X.FBindingSelector,X.FImageCropper,X.FInputGroup,X.FLayout,X.FListNav,X.FListView,X.FLookup,X.FMappingEditor,X.FNav,X.FNumberRange,X.FNumberSpinner,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.FVideo$1,X.FTextArea,X.FSchemaSelector,X.FTreeGrid$1,X.FEventParameter,X.FFilterConditionEditor,X.FFieldset,X.FSortConditionEditor,X.FMenuLookup,X.FDrawer,X.FJsonEditor,X.FPropertyEditor,X.FExpressionEditor,X.FCodeEditor,X.FHtmlTemplate,null,X.notify))})(this,function(X,i,Se,Cn,Ve,Bc,Mo,Eo,Io,jc,Oo,Oe,Do,xn,Po,Bo,jo,Ro,tn,$o,Et,Lo,Wo,qo,Ao,Ho,Go,zo,_n,Tn,nn,Yo,Uo,Xo,Qo,Ko,Jo,Zo,er,tr,nr,or,rr,ir,ar,sr,lr,cr,ur,dr,fr,pr,mr,hr,gr,yr,vr,br,wr,Cr,xr,_r,Tr,Sr,Vr,Fr,Nr,kr,Mr,Er,Ir,Or,Dr,Sn,Pr,Br,jr,Rr,$r,Lr,Wr,qr,Ar,Hr,Gr,Rc,zr){"use strict";var Dc=Object.defineProperty;var Pc=(X,i,Se)=>i in X?Dc(X,i,{enumerable:!0,configurable:!0,writable:!0,value:Se}):X[i]=Se;var j=(X,i,Se)=>Pc(X,typeof i!="symbol"?i+"":i,Se);const on={},Vn={};function rn(n){const{properties:t,title:e,ignore:o}=n,r=o&&Array.isArray(o),a=Object.keys(t).reduce((s,l)=>((!r||!o.find(c=>c===l))&&(s[l]=t[l].type==="object"&&t[l].properties?rn(t[l]):Se.cloneDeep(t[l].default)),s),{});if(e&&(!r||!o.find(s=>s==="id"))){const s=e.toLowerCase().replace(/-/g,"_");a.id=`${s}_${Math.random().toString().slice(2,6)}`}return a}function Yr(n){const{properties:t,title:e,required:o}=n;if(o&&Array.isArray(o)){const r=o.reduce((a,s)=>(a[s]=t[s].type==="object"&&t[s].properties?rn(t[s]):Se.cloneDeep(t[s].default),a),{});if(e&&o.find(a=>a==="id")){const a=e.toLowerCase().replace(/-/g,"_");r.id=`${a}_${Math.random().toString().slice(2,6)}`}return r}return{type:e}}function jt(n,t={},e){const o=on[n];if(o){let r=Yr(o);const a=Vn[n];return r=a?a({getSchemaByType:jt},r,t,e):r,r}return null}function Ur(n,t){const e=rn(t);return Object.keys(e).reduce((o,r)=>(Object.prototype.hasOwnProperty.call(n,r)&&(o[r]&&Se.isPlainObject(o[r])&&Se.isPlainObject(n[r]||!n[r])?Object.assign(o[r],n[r]||{}):o[r]=n[r]),o),e),e}function Fn(n,t){return Object.keys(n).filter(o=>n[o]!=null).reduce((o,r)=>{if(t.has(r)){const a=t.get(r);if(typeof a=="string")o[a]=n[r];else{const s=a(r,n[r],n);Object.assign(o,s)}}else o[r]=n[r];return o},{})}function Xr(n,t,e=new Map){const o=Ur(n,t);return Fn(o,e)}function Qr(n={}){function t(u,d,f,g){if(typeof f=="number")return g[u].length===f;if(typeof f=="object"){const w=Object.keys(f)[0],m=f[w];if(w==="not")return Number(g[u].length)!==Number(m);if(w==="moreThan")return Number(g[u].length)>=Number(m);if(w==="lessThan")return Number(g[u].length)<=Number(m)}return!1}function e(u,d,f,g){return g[u]&&g[u].propertyValue&&String(g[u].propertyValue.value)===String(f)}const o=new Map([["length",t],["getProperty",e]]);Object.keys(n).reduce((u,d)=>(u.set(d,n[d]),u),o);function r(u,d){const f=u;return typeof d=="number"?[{target:f,operator:"length",param:null,value:Number(d)}]:typeof d=="boolean"?[{target:f,operator:"getProperty",param:u,value:!!d}]:typeof d=="object"?Object.keys(d).map(g=>{if(g==="length")return{target:f,operator:"length",param:null,value:d[g]};const w=g,m=d[g];return{target:f,operator:"getProperty",param:w,value:m}}):[]}function a(u){return Object.keys(u).reduce((f,g)=>{const w=r(g,u[g]);return f.push(...w),f},[])}function s(u,d){if(o.has(u.operator)){const f=o.get(u.operator);return f&&f(u.target,u.param,u.value,d)||!1}return!1}function l(u,d){return a(u).reduce((w,m)=>w&&s(m,d),!0)}function c(u,d){const f=Object.keys(u),g=f.includes("allOf"),w=f.includes("anyOf"),m=g||w,h=(m?u[m?g?"allOf":"anyOf":"allOf"]:[u]).map(C=>l(C,d));return g?!h.includes(!1):h.includes(!0)}return{parseValueSchema:c}}const ce={button:{type:"button",name:"按钮"},"response-toolbar":{type:"response-toolbar",name:"工具栏"},"response-toolbar-item":{type:"response-toolbar-item",name:"按钮"},"content-container":{type:"content-container",name:"容器"},"input-group":{type:"input-group",name:"文本"},textarea:{type:"textarea",name:"多行文本"},lookup:{type:"lookup",name:"帮助"},"number-spinner":{type:"number-spinner",name:"数值"},"date-picker":{type:"date-picker",name:"日期"},switch:{type:"switch",name:"开关"},"radio-group":{type:"radio-group",name:"单选组"},"check-box":{type:"check-box",name:"复选框"},"check-group":{type:"check-group",name:"复选框组"},"combo-list":{type:"combo-list",name:"下拉列表"},"response-form":{type:"response-form",name:"卡片面板"},"response-layout":{type:"response-layout",name:"布局容器",icon:"response-layout-3"},"response-layout-item":{type:"response-layout-item",name:"布局",icon:"response-layout-1"},"tree-grid":{type:"tree-grid",name:"树表格"},"tree-grid-column":{type:"tree-grid-column",name:"树表格列"},"data-grid":{type:"data-grid",name:"表格"},"data-grid-column":{type:"data-grid-column",name:"表格列"},module:{type:"Module",name:"模块"},component:{type:"component",name:"组件"},tabs:{type:"tabs",name:"标签页"},"tab-page":{type:"tab-page",name:"标签页项",dependentParentControl:"Tab"},"tab-toolbar-item":{type:"tab-toolbar-item",name:"标签页工具栏按钮"},"html-template":{type:"html-template",name:"模板容器"},"time-picker":{type:"time-picker",name:"时间选择"},section:{type:"section",name:"分组面板"},"section-toolbar":{type:"section-toolbar",name:"分组面板工具栏"},"section-toolbar-item":{type:"section-toolbar-item",name:"分组面板按钮"},splitter:{type:"splitter",name:"分栏面板"},"splitter-pane":{type:"splitter-pane",name:"分栏面板项",dependentParentControl:"Splitter"},"component-ref":{type:"component-ref",name:"组件引用节点"},uploader:{type:"uploader",name:"附件上传"},"page-header":{type:"page-header",name:"页头"},"page-footer":{type:"page-footer",name:"页脚"},"tab-toolbar":{type:"tab-toolbar",name:"标签页工具栏"},fieldset:{type:"fieldset",name:"分组"},"query-solution":{type:"query-solution",name:"筛选方案"},drawer:{type:"drawer",name:"抽屉"},"external-container":{type:"external-container",name:"外部容器",icon:"content-container"},"list-nav":{type:"list-nav",name:"列表导航"},"filter-bar":{type:"filter-bar",name:"筛选条"}},Kr={},Jr={};Qr();function _t(n,t,e=new Map,o=(s,l,c,u)=>l,r={},a=s=>s){return on[t.title]=t,Vn[t.title]=o,Kr[t.title]=r,Jr[t.title]=a,(s={},l=!0)=>{if(!l)return Fn(s,e);const c=Xr(s,t,e),u=Object.keys(n).reduce((d,f)=>(d[f]=n[f].default,d),{});return Object.assign(u,c)}}function Gt(n,t){return{customClass:t.class,customStyle:t.style}}function Zr(){function n(t,e){const{dataSource:o}=t||{};return o===void 0?{}:{}}return{resolve:n}}function ei(){function n(t,e){return t.selectItemById(e)}return{selectItemById:n}}function ti(){function n(t,e){const{columns:o}=e;return t.updateColumns(o)}return{updateColumns:n}}const ni={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/video.schema.json",title:"video",description:"A Farris Video Component",type:"object",properties:{id:{description:"The unique identifier for a Video",type:"string"},type:{description:"The type string of Video component",type:"string",default:"video"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},visible:{description:"",type:"boolean",default:!0}},required:["id","type"]},oi=new Map([["appearance",Gt]]);function ri(n,t,e){return t}const ii={title:"verify-detail",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:[]}}}}}},zt={src:{type:String,required:!0,default:""},autoplay:{type:Boolean,default:!0},controls:{type:Boolean,default:!0},loop:{type:Boolean,default:!1},muted:{type:Boolean,default:!1},preload:{type:String,default:"none"},poster:{type:String},width:{type:[String,Number],default:300},height:{type:[String,Number],default:168}},an=_t(zt,ni,oi,ri,ii);function ai(n,t){function e(v){v.stopPropagation(),t.emit("abort")}function o(v){v.stopPropagation(),t.emit("play")}function r(v){v.stopPropagation(),t.emit("pause")}function a(v){v.stopPropagation(),t.emit("ended")}function s(v){v.stopPropagation(),t.emit("durationchange")}function l(v){v.stopPropagation(),t.emit("error")}function c(v){v.stopPropagation(),t.emit("loadeddata")}function u(v){v.stopPropagation(),t.emit("loadedmetadata")}function d(v){v.stopPropagation(),t.emit("loadstart")}function f(v){v.stopPropagation(),t.emit("playing")}function g(v){v.stopPropagation(),t.emit("progress")}function w(v){v.stopPropagation(),t.emit("timeupdate")}function m(v){v.stopPropagation(),t.emit("volumechange")}function k(v){v.stopPropagation(),t.emit("canplay")}return{onAbort:e,onPlay:o,onPause:r,onEnded:a,onDurationchange:s,onError:l,onLoadeddata:c,onLoadedmetadata:u,onLoadstart:d,onPlaying:f,onProgress:g,onTimeupdate:w,onVolumechange:m,onCanplay:k}}const Yt=i.defineComponent({name:"FVideo",props:zt,emits:["abort","play","pause","ended","durationchange","canplay","error","loadeddata","loadedmetadata","loadstart","playing","progress","timeupdate","volumechange"],setup(n,t){const e=i.ref(),{onAbort:o,onPlay:r,onPause:a,onEnded:s,onDurationchange:l,onError:c,onLoadeddata:u,onLoadedmetadata:d,onLoadstart:f,onPlaying:g,onProgress:w,onTimeupdate:m,onVolumechange:k,onCanplay:v}=ai(n,t);return i.onUnmounted(()=>{}),()=>i.createVNode("video",{ref:e,src:n.src,autoplay:n.autoplay,controls:n.controls,loop:n.loop,muted:n.muted,width:n.width,height:n.height,poster:n.poster,onAbort:h=>o(h),onPlay:h=>r(h),onPause:h=>a(h),onEnded:h=>s(h),onDurationchange:h=>l(h),onError:h=>c(h),onLoadeddata:h=>u(h),onLoadedmetadata:h=>d(h),onLoadstart:h=>f(h),onPlaying:h=>g(h),onProgress:h=>w(h),onTimeupdate:h=>m(h),onVolumechange:h=>k(h),onCanplay:h=>v(h)},[i.createTextVNode("Your browser does not support the video tag.")])}});function Nn(n,t,e){var p;const o=e&&e.getStyles&&e.getStyles()||"",r=e&&e.getDesignerClass&&e.getDesignerClass()||"",a=i.ref();function s(){return(t==null?void 0:t.schema.componentType)==="frame"?!1:e&&e.checkCanMoveComponent?e.checkCanMoveComponent():!0}function l(){return!1}function c(){return(t==null?void 0:t.schema.componentType)==="frame"?!1:e&&e.checkCanDeleteComponent?e.checkCanDeleteComponent():!0}function u(){return(t==null?void 0:t.schema.componentType)==="frame"?!0:e&&e.hideNestedPaddingInDesginerView?e.hideNestedPaddingInDesginerView():!1}function d(b){if(!b||!b.value)return null;if(b.value.schema&&b.value.schema.type==="component")return b.value;const x=i.ref(b==null?void 0:b.value.parent),S=d(x);return S||null}function f(b=t){var M;if(e!=null&&e.getDraggableDesignItemElement)return e.getDraggableDesignItemElement(b);const{componentInstance:x,designerItemElementRef:S}=b;if(!x||!x.value)return null;const{getCustomButtons:y}=x.value;return x.value.canMove||y&&((M=y())!=null&&M.length)?S:f(b.parent)}function g(b){return!!e&&e.canAccepts(b)}function w(){return(t==null?void 0:t.schema.label)||(t==null?void 0:t.schema.title)||(t==null?void 0:t.schema.name)}function m(){}function k(b,x){var S;!b||!x||(e!=null&&e.onAcceptMovedChildElement&&e.onAcceptMovedChildElement(b,x),(S=t==null?void 0:t.setupContext)==null||S.emit("dragEnd"))}function v(b,x){const{componentType:S}=b;let y=jt(S,b,x);e&&e.onResolveNewComponentSchema&&(y=e.onResolveNewComponentSchema(b,y));const M=S.toLowerCase().replace(/-/g,"_");return y&&!y.id&&y.type===S&&(y.id=`${M}_${Math.random().toString().slice(2,6)}`),y}function h(b){b&&e!=null&&e.onChildElementMovedOut&&e.onChildElementMovedOut(b)}function _(...b){if(e&&e.getPropsConfig)return e.getPropsConfig(...b)}function C(b){if(!b)return;const x=t==null?void 0:t.schema,{formSchemaUtils:S}=b;if(x&&S.getExpressions().length){const y=S.getExpressions().findIndex(M=>M.target===x.id);y>-1&&S.getExpressions().splice(y,1)}}function V(b){e&&e.onRemoveComponent&&e.onRemoveComponent(),C(b),t!=null&&t.schema.contents&&t.schema.contents.map(x=>{let S=x.id;x.type==="component-ref"&&(S=x.component);const y=n.value.querySelectorAll(`#${S}-design-item`);y!=null&&y.length&&Array.from(y).map(M=>{var I;(I=M==null?void 0:M.componentInstance)!=null&&I.value.onRemoveComponent&&M.componentInstance.value.onRemoveComponent(b)})})}function F(){if(e&&e.getCustomButtons)return e.getCustomButtons()}function T(b){if(e&&e.onPropertyChanged)return e.onPropertyChanged(b)}return a.value={canMove:s(),canSelectParent:l(),canDelete:c(),canNested:!u(),contents:t==null?void 0:t.schema.contents,elementRef:n,parent:(p=t==null?void 0:t.parent)==null?void 0:p.componentInstance,schema:t==null?void 0:t.schema,styles:o,designerClass:r,canAccepts:g,getBelongedComponentInstance:d,getDraggableDesignItemElement:f,getDraggingDisplayText:w,getPropConfig:_,getDragScopeElement:m,onAcceptMovedChildElement:k,onChildElementMovedOut:h,addNewChildComponentSchema:v,triggerBelongedComponentToMoveWhenMoved:!!e&&e.triggerBelongedComponentToMoveWhenMoved||i.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:!!e&&e.triggerBelongedComponentToDeleteWhenDeleted||i.ref(!1),onRemoveComponent:V,getCustomButtons:F,onPropertyChanged:T},a}class si{getTemplateRule(t,e){const o=e==null?void 0:e.formSchemaUtils,r=o==null?void 0:o.getFormTemplateRule(),a={canAccept:!0,canDelete:!0,canMove:!0};if(!r)return a;const s=this.getComponentContext(t),{componentClassList:l}=s;return l.forEach(c=>{if(!c||!r[c])return;const{canMove:u,canDelete:d,canAccept:f}=r[c];a.canMove=a.canMove&&this.resolveRuleValue(u,s),a.canDelete=a.canDelete&&this.resolveRuleValue(d,s),a.canAccept=a.canAccept&&this.resolveRuleValue(f,s)}),a}resolveRuleValue(t,e){return typeof t=="boolean"?t:this.parseRuleValueSchema(t,e)}parseRuleValueSchema(t,e){const o=t.invalidContext||[];let r=!0;for(const a of o){if(a.firstLevelChild){if(a.firstLevelChild.class){const{firstLevelChildClassList:s}=e;if(s&&!s.includes(a.firstLevelChild.class)){r=!1;continue}}if(a.firstLevelChild.type){const{firstLevelChildSchema:s}=e;if(!s||s.type!==a.firstLevelChild.type){r=!1;continue}}}if(a.secondLevelChild){if(a.secondLevelChild.class){const{secondLevelChildClassList:s}=e;if(s&&!s.includes(a.secondLevelChild.class)){r=!1;continue}}if(a.secondLevelChild.type){const{secondLevelChildSchema:s}=e;if(!s||s.type!==a.secondLevelChild.type){r=!1;continue}}}if(a.parent){if(a.parent.class){const{parentClassList:s}=e;if(s&&!s.includes(a.parent.class)){r=!1;continue}}if(a.parent.type){const{parentSchema:s}=e;if(s&&s.type!==a.parent.type){r=!1;continue}}}r=!0;break}return!r}getComponentContext(t){var k,v,h,_;const e=t.schema,o=e.appearance&&e.appearance.class||"",r=o.split(" ")||[],a=e.contents||[],s=a.length?a[0]:null,l=s&&s.appearance?s.appearance.class:"",c=l?l.split(" "):[],u=(k=s==null?void 0:s.contents)!=null&&k.length?s==null?void 0:s.contents[0]:null,d=u&&u.appearance?u.appearance.class:"",f=d?d.split(" "):[],g=e.type==="component"?(h=(v=t.parent)==null?void 0:v.parent)==null?void 0:h.schema:(_=t.parent)==null?void 0:_.schema,w=g&&g.appearance&&g.appearance.class||"",m=w?w.split(" "):[];return{componentClass:o,componentClassList:r,childContents:a,firstLevelChildSchema:s,firstLevelChildClass:l,firstLevelChildClassList:c,secondLevelChildSchema:u,secondLevelChildClass:d,secondLevelChildClassList:f,parentSchema:g,parentClass:w,parentClassList:m}}}const li=i.ref(0);function kn(){li.value++}const Rt=i.ref(0);function ci(n,t){const e=t.getBoundingClientRect(),o=n.getBoundingClientRect(),r=o.top>=e.top,a=o.top<=e.bottom;return r&&a}function ui(n){const t=n.querySelector(".component-btn-group");if(!t)return;t.style.display="";const e=t.getBoundingClientRect();if(!(e.top===0&&e.left===0)){const o=t.querySelector("div");if(o){const r=o.getBoundingClientRect();o.style.top=e.top+"px";let a=e.left-r.width;const s=document.querySelector(".editorDiv");if(s){const l=s.getBoundingClientRect();a<l.left&&({left:a}=n.getBoundingClientRect())}o.style.left=a+"px"}}}function di(n){if(!window.scrollContainerList)return;const t=Array.from(window.scrollContainerList);if(t.length&&t.length===1){const e=t[0],o=document.querySelector(`[id=${e}]`);if(o&&o.contains(n))return o}}function Mn(n){if(!n)return;const t=n.getBoundingClientRect();if(t.width===0&&t.height===0)return;const e=n.querySelector(".component-btn-group");if(e){let o=!0;const r=di(n);if(r&&(o=ci(n,r)),!o){e.style.display="none";return}ui(n)}}function fi(n){if(!n)return;let t;n.className.includes("dgComponentSelected")?t=n:t=n.querySelector(".dgComponentSelected"),t&&Mn(t)}function pi(n){const{formSchemaUtils:t,formStateMachineUtils:e}=n;function o(c,u=""){return{path:u+c.code,field:c.id,fullPath:c.code}}function r(c,u=""){return t.getViewModelById(c).states.map(f=>o(f,u))}function a(c){const u=t.getRootViewModelId(),d=r(c);if(c===u)return d;const f=r(u,"root-component.");return[...d,...f]}function s(c){return c.binding&&c.binding.path||c.id||""}function l(){return e&&e.getRenderStates()||[]}return{getVariables:a,getControlName:s,getStateMachines:l}}class mi{constructor(t){j(this,"sessionVariables",[{key:"CurrentSysOrgName",name:"当前组织Name",description:"当前组织Name"},{key:"CurrentSysOrgId",name:"当前组织Id",description:"当前组织Id"},{key:"CurrentUserName",name:"当前用户Name",description:"当前用户Name"},{key:"CurrentUserCode",name:"当前用户Code",description:"当前用户Code"},{key:"CurrentUserId",name:"当前用户Id",description:"当前用户Id"},{key:"CurrentLanguage",name:"当前语言编号",description:"当前登录的语言编号,例如简体中文返回'zh-CHS',英文返回'en',繁体中文'zh-CHT'"}]);j(this,"expressionNames",{compute:"计算表达式",dependency:"依赖表达式",validate:"验证表达式",dataPicking:"帮助前表达式",visible:"可见表达式",readonly:"只读表达式",required:"必填表达式"});j(this,"getExpressionConverter",(t,e)=>({convertFrom:(o,r,a,s)=>{const l=a.getExpressionRuleValue(t,e||r);return l&&l.value||""},convertTo:(o,r,a,s,l)=>{var c;if(r==="dataPicking"&&(a!=null&&a.target)){const u=`${a.target}_dataPicking`;((c=a.rules)==null?void 0:c.some(f=>f.id===u&&f.value))?o.dictPickingExpressionId=u:delete o.dictPickingExpressionId}s.updateExpression(a)}}));this.formSchemaService=t}getExpressionRule(t,e){const o=this.formSchemaService.getExpressions();if(!o)return"";const r=o.find(s=>s.target===t);if(!r)return"";const a=r.rules.find(s=>s.type===e);return a||""}getContextFormVariables(){const{module:t}=this.formSchemaService.getFormSchema();if(!t.viewmodels||t.viewmodels.length===0)return[];const e=this.formSchemaService.getRootViewModelId(),o=this.formSchemaService.getViewModelById(e);if(!o||!o.states||o.states.length===0)return[];const r=[];return o.states.forEach(a=>{r.push({key:a.code,name:a.name,description:a.name,category:a.category})}),r}createTreeNode(t,e,o="label"){return{id:t.id,name:t.name,bindingPath:t[o],parents:e}}buildEntityFieldsTreeData(t=null,e){const o=[];return t==null||t.forEach(r=>{var l;const a=this.createTreeNode(r,e);let s=[];(l=r.type)!=null&&l.fields&&(s=this.buildEntityFieldsTreeData(r.type.fields,[...e,r.label])),o.push({data:a,children:s,expanded:!0})}),o}buildChildEntityTreeData(t=null,e){const o=[];return t==null||t.forEach(r=>{var c,u;const a=this.createTreeNode(r,e),s=this.buildEntityFieldsTreeData((c=r.type)==null?void 0:c.fields,[...e,r.label]),l=this.buildChildEntityTreeData((u=r.type)==null?void 0:u.entities,[...e,r.label]);l!=null&&l.length&&(s==null||s.push(...l)),o.push({data:a,children:s||[],expanded:!0})}),o}getEntitiesTreeData(){const t=this.formSchemaService.getSchemaEntities();if(!(t!=null&&t.length))return[];const e=t[0];if(!(e!=null&&e.type))return[];const o=this.buildEntityFieldsTreeData(e.type.fields,[e.code]),r=this.buildChildEntityTreeData(e.type.entities,[e.code]);return r!=null&&r.length&&(o==null||o.push(...r)),{entityCode:e.code,fields:[{data:this.createTreeNode(e,[],"code"),children:o||[]}]}}getEntitiesAndVariables(){return{entities:this.getEntitiesTreeData(),variables:{session:{name:"系统变量",items:this.sessionVariables,visible:!1},forms:{name:"表单变量",items:this.getContextFormVariables(),visible:!0}}}}onBeforeOpenExpression(t,e,o){const r=o==="Field"?t.binding.field:t.id,a=this.getExpressionRule(r,e),s=this.getEntitiesAndVariables(),l={message:["validate","required","dataPicking"].includes(e)&&a?a.message:"",...s};return a.messageType!=null&&(l.messageType=a.messageType),l}buildRule(t,e,o,r){const{expression:a,message:s,messageType:l}=e,c={id:`${t}_${o}`,type:o,value:a};return(o==="validate"||o==="dataPicking"||o==="required")&&(c.message=s),o==="dataPicking"&&(c.messageType=l),o==="validate"&&r&&(c.elementId=r),c}getExpressionData(){const{expressions:t}=this.formSchemaService.getFormSchema().module;return t||[]}updateExpression(t,e,o,r){const a=e==="Field"?t.binding.field:t.id,s=this.buildRule(a,o,r,t.type==="form-group"?t.id:"");let c=this.getExpressionData().find(d=>d.targetType===e&&d.target===a);const u=d=>d.value.trim()==="";if(c){const d=c.rules.find(f=>f.id===s.id);if(d)u(s)?c.rules=c.rules.filter(f=>f.id!==s.id):(Object.assign(d,s),r==="validate"&&t.type==="form-group"&&(d.elementId=t.id));else{if(u(s))return null;c.rules=c.rules||[],c.rules.push(s)}}else{if(u(s))return null;c={target:`${a}`,rules:[s],targetType:e}}return c}getExpressionEditorOptions(t,e,o,r){return o.reduce((a,s)=>{var c,u;const l=e==="Field"?(c=t==null?void 0:t.binding)==null?void 0:c.field:t.id;return a[s]={hide:e==="Field"?!!((u=t==null?void 0:t.binding)!=null&&u.field):!1,description:"",title:this.expressionNames[s],type:"string",$converter:this.getExpressionConverter(l),editor:{type:"expression-editor",singleExpand:!1,dialogTitle:`${this.expressionNames[s]}编辑器`,showMessage:s==="validate"||s==="dataPicking"||s==="required",showMessageType:s==="dataPicking",beforeOpen:()=>this.onBeforeOpenExpression(t,s,e),onSubmitModal:d=>{const f=this.updateExpression(t,e,d,s);if(r){const g=this.buildRule(l,d,s);r(g)}return f}}},a},{})}getExpressionInfo(t,e,o){const r=e==="Field"?t.binding.field:t.id,a=this.getExpressionRule(r,o),s={value:a&&a.value,targetId:r,targetType:e,expressionType:o};return a&&a.message&&(s.message=a.message),s}getExpressionConfig(t,e,o=["compute","dependency","validate"],r){return{description:"表达式",title:"表达式",properties:{...this.getExpressionEditorOptions(t,e,o,r)}}}getExpressionOptions(t,e,o){const r=this.getExpressionInfo(t,e,o);return{dialogTitle:`${this.expressionNames[o]}编辑器`,singleExpand:!1,showMessage:o==="required",beforeOpen:()=>this.onBeforeOpenExpression(t,o,e),expressionInfo:r}}}class En{constructor(t,e){j(this,"componentId");j(this,"viewModelId");j(this,"eventsEditorUtils");j(this,"formSchemaUtils");j(this,"formMetadataConverter");j(this,"designViewModelUtils");j(this,"designViewModelField");j(this,"controlCreatorUtils");j(this,"designerHostService");j(this,"schemaService",null);j(this,"metadataService",null);j(this,"propertyConfig",{type:"object",categories:{}});var o;this.componentId=t,this.designerHostService=e,this.eventsEditorUtils=e.eventsEditorUtils,this.formSchemaUtils=e.formSchemaUtils,this.formMetadataConverter=e.formMetadataConverter,this.viewModelId=((o=this.formSchemaUtils)==null?void 0:o.getViewModelIdByComponentId(t))||"",this.designViewModelUtils=e.designViewModelUtils,this.controlCreatorUtils=e.controlCreatorUtils,this.metadataService=e.metadataService,this.schemaService=e.schemaService}getTableInfo(){var t;return(t=this.schemaService)==null?void 0:t.getTableInfoByViewModelId(this.viewModelId)}setDesignViewModelField(t){var o;const e=t.binding&&t.binding.type==="Form"&&t.binding.field;if(e){if(!this.designViewModelField){const r=this.designViewModelUtils.getDgViewModel(this.viewModelId);this.designViewModelField=r.fields.find(a=>a.id===e)}t.updateOn=(o=this.designViewModelField)==null?void 0:o.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",idField:"value",editable:!1,data:[{value:t.type,name:ce[t.type].name}]}}}}}getAppearanceConfig(t=null,e={},o){const r={title:"外观",description:"Appearance"},a={class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter"},style:{title:"style样式",type:"string",description:"组件的样式",$converter:"/converter/appearance.converter"}};for(const s in e)a[s]=Object.assign(a[s]||{},e[s]);return{...r,properties:{...a},setPropertyRelates(s,l){if(s){switch(s&&s.propertyID){case"class":case"style":{Rt.value++;break}}o&&o(s,t,l)}}}}getPropertyEditorParams(t,e=[],o="visible",r={},a={}){const{getVariables:s,getControlName:l,getStateMachines:c}=pi(this.designerHostService),u=this.getRealTargetType(t),d=e&&e.length>0?e:["Const","Variable","StateMachine","Expression"],f={type:"property-editor",propertyTypes:d};return d.map(g=>{switch(g){case"Const":Object.assign(f,{constType:"enum",constEnums:[{id:!0,name:"是"},{id:!1,name:"否"}]},r);break;case"Expression":f.expressionConfig=this.getExpressionOptions(t,u,o);break;case"StateMachine":f.stateMachines=c();break;case"Variable":Object.assign(f,{controlName:l(t),newVariablePrefix:"is",newVariableType:"Boolean",variables:s(this.viewModelId),onBeforeOpenVariables:w=>{w.value=s(this.viewModelId)}},a);break}}),f}getVisibleProperty(t,e=""){return{visible:{title:"是否可见",type:"boolean",description:"运行时组件是否可见",editor:this.getPropertyEditorParams(t,e==="gridFieldEditor"?["Const","Expression"]:["Const","Variable","StateMachine","Expression"],"visible")}}}getBehaviorConfig(t,e="",o={},r){const a={title:"行为",description:""},s=this.getVisibleProperty(t,e);for(const c in o)s[c]=Object.assign(s[c]||{},o[c]);const l=this;return{...a,properties:{...s},setPropertyRelates(c,u){if(c){switch(c.propertyID){case"disabled":case"readonly":case"visible":l.afterMutilEditorChanged(t,c);break}r&&r(c,u)}}}}afterMutilEditorChanged(t,e){this.addNewVariableToViewModel(e,this.viewModelId),this.updateExpressionValue(e),this.clearExpression(e,t)}updateElementByParentContainer(t,e){const o=e&&e.parent&&e.parent.schema;if(!o)return;const r=o.contents.findIndex(s=>s.id===t),a=Se.cloneDeep(o.contents[r]);o.contents.splice(r,1),o.contents.splice(r,0,a),kn()}addNewVariableToViewModel(t,e){const o=t.propertyValue;if(!(o&&typeof o=="object")||!(o.type==="Variable"&&o.isNewVariable))return;const s={id:o.field,category:"locale",code:o.fullPath,name:o.fullPath,type:o.newVariableType||"String"};delete o.newVariableType,delete o.isNewVariable,this.formSchemaUtils.getVariableByCode(s.code)||this.formSchemaUtils.getViewModelById(e).states.push(s)}updateExpressionValue(t){const e=t.propertyValue;if(!((e&&e.type)==="Expression"&&e.expressionInfo))return;const{expressionId:a,expressionInfo:s}=e,{targetId:l,targetType:c,expressionType:u,value:d,message:f}=s,g=this.formSchemaUtils.getModule();g.expressions??(g.expressions=[]);const{expressions:w}=g;let m=w.find(v=>v.target===l);m||(m={target:l,rules:[],targetType:c},w.push(m));const k=m.rules.find(v=>v.type===u);if(k)k.value=d,k.message=f;else{const v={id:a,type:u,value:d,message:f};m.rules.push(v)}delete e.expressionInfo}clearExpression(t,e){const o=t.propertyValue;if(o&&o.type==="Expression")return;const a=t.propertyID,s=this.formSchemaUtils.getExpressions(),l=e.binding?e.binding.field:e.id,c=s.find(u=>u.target===l);!c||!c.rules||(c.rules=c.rules.filter(u=>u.type!==a))}getExpressionOptions(t,e,o){return new mi(this.formSchemaUtils).getExpressionOptions(t,e,o)}getRealTargetType(t){return["response-toolbar-item","tab-toolbar-item","section-toolbar-item"].indexOf(t.type)>-1?"Button":t.binding&&t.binding.field?"Field":"Container"}}class hi extends En{constructor(t,e){super(t,e)}getPropertyConfig(t){return this.propertyConfig.categories.basic=this.getBasicPropConfig(t),this.propertyConfig.categories.appearance=this.getAppearancePropConfig(t),this.getBehaviorConfig(t),this.getEventPropConfig(t),this.propertyConfig}getAppearancePropConfig(t){const e=this.formSchemaUtils.getViewModelById(this.viewModelId);t.name=e?e.name:null;const o=this;return this.getAppearanceConfig(t,{name:{title:"组件名称",type:"string",description:"组件名称",defaultValue:t.name}},(a,s,l)=>{switch(a.propertyID){case"name":o.syncChangesToViewModel({name:a.propertyValue}),delete s.name;break}})}getEventPropConfig(t){const e=[{label:"onInit",name:"初始化事件"},{label:"onAfterViewInit",name:"视图初始化后事件"}],o=this,r=o.eventsEditorUtils.formProperties(t,o.viewModelId,e),a={};a[o.viewModelId]={type:"events-editor",editor:{initialData:r}},this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:a,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(s,l){const c=s.propertyValue;delete t[o.viewModelId],c&&(c.setPropertyRelates=this.setPropertyRelates,o.eventsEditorUtils.saveRelatedParameters(t,o.viewModelId,c.events,c))}}}getBehaviorConfig(t){const e=this.formSchemaUtils.getViewModelById(this.viewModelId),o=e?e.enableValidation:null,r=this;this.propertyConfig.categories.behavior={title:"行为",description:"",properties:{enableValidation:{title:"启用校验",type:"boolean",description:"运行时组件是否启用校验",defaultValue:o}},setPropertyRelates:a=>{if(a)switch(a.propertyID){case"enableValidation":{r.syncChangesToViewModel({enableValidation:a.propertyValue}),delete t.enableValidation;break}}}}}syncChangesToViewModel(t){const e=this.formSchemaUtils.getViewModelById(this.viewModelId);e&&Object.assign(e,t)}}const gi={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},safeHtml:{type:Boolean,default:!0}},yi={showCloseButton:{type:Boolean,default:!0},animate:{type:String,default:"fadeIn"},options:{type:Object}},sn=i.defineComponent({name:"Toast",props:yi,emits:["close","click"],setup:(n,t)=>{const e=i.ref(n.animate),o="fadeOut",r=i.computed(()=>n.options),a=i.ref(!1),s=i.computed(()=>{const h={animated:a.value,toast:!0};return h[n.animate]=!1,h[o]=a.value,h[r.value.type]=!0,r.value.theme&&(h[r.value.theme]=!0),h}),l=i.computed(()=>{const C=`f-icon-${r.value&&r.value.type?r.value.type.replace("toasty-type-",""):"default"}`,V={"f-icon":!0};return V[C]=!0,V}),c=i.computed(()=>r.value.title||r.value.message),u=i.computed(()=>r.value.title&&r.value.message),d=i.computed(()=>!r.value.title&&r.value.message),f=i.computed(()=>n.showCloseButton),g=i.computed(()=>!!r.value.buttons||!!t.slots.default);function w(h){h.stopPropagation(),h.preventDefault(),a.value=!1,setTimeout(()=>{t.emit("close",r.value)},200)}function m(h,_){}function k(h){return`f-preten-link ${h.customClass?h.customClass:""}`}i.watch(e,()=>{e.value});const v=()=>{var h;return i.createVNode(i.Fragment,null,[i.createVNode("div",{class:"after-toast-msg text-right"},[!t.slots.default&&((h=r.value.buttons)==null?void 0:h.map(_=>i.createVNode("span",{class:k(_),onClick:C=>void 0},[_.text]))),t.slots.default&&t.slots.default()])])};return()=>i.createVNode("div",{class:s.value,style:"min-height:44px"},[f.value&&i.createVNode("button",{title:"关闭",class:"toast-close f-btn-icon f-bare",onClick:w},[i.createVNode("span",{class:"f-icon modal_close"},null)]),c.value&&i.createVNode("section",{class:"modal-tips"},[i.createVNode("div",{class:"float-left modal-tips-iconwrap"},[i.createVNode("span",{class:l.value},null)]),i.createVNode("div",{class:"modal-tips-content"},[u.value&&i.createVNode(i.Fragment,null,[i.createVNode("h5",{class:"toast-title modal-tips-title",innerHTML:r.value.title},null),i.createVNode("p",{class:"toast-msg",innerHTML:r.value.message},null),g.value&&v()]),d.value&&(r.value.buttons?i.createVNode("div",{class:"toast-title-btns-wrapper d-flex"},[i.createVNode("h5",{class:"toast-title modal-tips-title only-toast-msg",innerHTML:r.value.message},null),i.createVNode("div",{class:"after-toast-title text-right ml-auto"},[v()])]):i.createVNode("h5",{class:"toast-title modal-tips-title only-toast-msg",innerHTML:r.value.message},null))])])])}}),Ut=i.defineComponent({name:"Notify",props:gi,emits:["close","empty"],setup(n,t){const e=i.computed(()=>({"farris-notify":!0})),o={left:12,right:12,top:20,bottom:12},r=i.ref(),a=i.ref(n.options),s=i.ref(n.showCloseButton),l=i.computed(()=>n.position||"bottom-right"),c=i.computed(()=>n.timeout!=null?n.timeout:3e3),u=i.computed(()=>{const g=n.bottom?n.bottom:o.bottom,w=n.top?n.top:o.top,m={transition:"all 0.2s ease",left:l.value.indexOf("left")>-1?`${n.left?n.left:o.left}px`:"",right:l.value.indexOf("right")>-1?`${n.right?n.right:o.right}px`:"",top:l.value.indexOf("top")>-1?`${w}px`:"",bottom:l.value.indexOf("bottom")>-1?`${g}px`:""};return l.value.indexOf("center")>-1&&(m.left="50%",m.marginLeft="calc(-24rem / 2)",l.value==="center-center"&&(m.top="50%",m.transform="translate(-50%, -50%)")),m});function d(g){t.emit("close")}c.value&&setTimeout(()=>{d()},c.value),t.expose({closeToast:d,container:r,notifyPosition:l});function f(g,w){d()}return()=>i.createVNode("div",{class:e.value,style:u.value,ref:r},[i.createVNode(sn,{options:a.value,showCloseButton:s.value,animate:n.animate,onClose:g=>f(g,a.value)},null)])}});class $t{constructor(){j(this,"notifyRefs",[]);j(this,"globalConfig",i.reactive({}))}escapeAllHtml(t){if(typeof t!="string"||!t)return"";const e=document.createElement("div");return e.textContent=t||"",e.innerHTML.replace(/ /g," ").replace(/\\n/g,"<br>").replace(/\\t/g," ").replace(/\\r/g,"")}createNotifyInstance(t){const e=this,r=Object.assign({timeout:3e3,position:"bottom-right",showCloseButton:!0,safeHtml:!0},this.globalConfig,{...t}),a=document.createElement("div");a.style.display="contents";const s=i.createApp({setup(){var u;const l=i.ref();function c(){l.value.container.style.transform="scale(0)",setTimeout(()=>{e.updateNotifyPositionForClose(r,l),s.unmount()},220)}if(r.position.indexOf("top")>-1){const d=e.getNotifyInstances(r.position),f=d[d.length-1];if(f){const g=f.value.container.getBoundingClientRect();r.top=g.bottom}}return r.safeHtml&&((u=r.options)!=null&&u.message)&&(r.options.message=e.escapeAllHtml(r.options.message)),i.onUnmounted(()=>{document.body.removeChild(a)}),i.onMounted(()=>{e.updateNotifyPositionForCreate(r,l)}),()=>i.createVNode(i.Transition,{mode:"out-in",name:"fade",appear:!0},{default:()=>[i.createVNode(Ut,i.mergeProps({ref:l},r,{onClose:c}),null)]})}});return s.provide("NotifyService",this),document.body.appendChild(a),s.mount(a),s}getNotifyInstances(t){return this.notifyRefs.filter(e=>e.value.notifyPosition===t)}updateNotifyPositionForCreate(t,e){if(this.notifyRefs&&this.notifyRefs.length){const o=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+o-a.bottom+"px"})}this.notifyRefs=[...this.notifyRefs,e]}updateNotifyPositionForClose(t,e){const o=this.notifyRefs.indexOf(e);if(t.position.indexOf("top")>-1){const r=this.getNotifyInstances(t.position),a=r.indexOf(e);r.slice(a+1).forEach(s=>{s.value.container.style.top=s.value.container.offsetTop-s.value.container.offsetHeight+"px"})}o>-1&&this.notifyRefs.splice(o,1)}show(t){return this.createNotifyInstance(t)}buildNotifyProps(t,e){let o="",r="",a,s,l;typeof e=="string"?o=e:e&&(o=e.message||"",r=e.title||"",s=e.position||null,l=e.showCloseButton!=null?e.showCloseButton:null,a=e.timeout!=null?e.timeout:null);const u={options:{type:t,message:o,title:r}};return s!=null&&(u.position=s),l!=null&&(u.showCloseButton=l),a!=null&&(u.timeout=a),u}info(t){const e=this.buildNotifyProps("info",t);return this.show(e)}success(t){const e=this.buildNotifyProps("success",t);return this.show(e)}warning(t){const e=this.buildNotifyProps("warning",t);return this.show(e)}error(t){const e=this.buildNotifyProps("error",t);return this.show(e)}close(t){t&&t.unmount()}closeAll(){this.notifyRefs.forEach(t=>{t==null||t.value.closeToast()}),this.notifyRefs.length=0}}const vi=Symbol("NOTIFY_SERVICE_TOKEN");Ut.install=n=>{n.component(Ut.name,Ut),n.component(sn.name,sn);const t=new $t;n.provide(vi,t),n.provide("FNotifyService",t)};const bi={designerHostService:{type:Object,default:{}},componentType:{type:String,default:""},bindingEntityId:{type:String,default:""},steps:{type:Array,default:["selectEntity","selectFields"]}},In=new Map([["appearance",Gt],["column","columnOption"]]);function wi(n,t,e){var f;const o=e.parentComponentInstance,r=o.schema.type,a=String(((f=o.schema.appearance)==null?void 0:f.class)||"").split(" "),s=r==="section"||r==="tab-page",l=a.includes("f-page-content-nav"),c=a.includes("f-page-main"),u=n.getSchemaByType("component");u.id=`${t.id}-component`,u.componentType="data-grid";let d="";return d+=s?"f-struct-data-grid-in-card f-struct-is-subgrid":"",d+=l?"f-struct-data-grid-in-nav f-struct-wrapper f-utils-fill-flex-column":"",d+=c?"f-struct-data-grid f-struct-wrapper":"",u.appearance={class:d},u.contents=[t],u}function Ci(n,t,e){const o=e.parentComponentInstance,r=String(o.schema.appearance.class||"").split(" "),a=r.includes("f-page-content-nav"),s=r.includes("f-page-main"),l=n.getSchemaByType("section");l.id=`${t.id}-section`;let c="";return c+=a?"f-section-in-nav ":"",c+=s?"f-section-in-managelist ":"",c+="f-section-grid",l.appearance={class:c},l.contents=[t],l}function xi(n,t,e){const o=n.getSchemaByType("content-container");return o.id=`${t.id}-layout`,o.appearance={class:"f-grid-is-sub f-utils-flex-column"},o.contents=[t],o}function On(n,t,e){const r=e.parentComponentInstance.schema.type,a=r==="section"||r==="tab-page";t.appearance={class:"f-component-grid"};const l=(a?xi:Ci)(n,t,e);return wi(n,l,e)}const Dn={$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:{descrip