@farris/ui-vue 1.6.5 → 1.6.6
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 +1 -1
- package/components/avatar/index.umd.cjs +1 -1
- package/components/button-edit/index.esm.js +2 -2
- package/components/button-edit/index.umd.cjs +1 -1
- package/components/combo-list/index.esm.js +7 -5
- package/components/combo-list/index.umd.cjs +1 -1
- package/components/common/index.esm.js +1 -1
- package/components/common/index.umd.cjs +1 -1
- package/components/component/index.esm.js +1 -1
- package/components/component/index.umd.cjs +1 -1
- package/components/condition/index.esm.js +3 -2
- package/components/condition/index.umd.cjs +1 -1
- package/components/content-container/index.esm.js +1 -1
- package/components/content-container/index.umd.cjs +1 -1
- package/components/data-view/index.esm.js +498 -495
- package/components/data-view/index.umd.cjs +1 -1
- package/components/date-picker/index.esm.js +833 -832
- package/components/date-picker/index.umd.cjs +1 -1
- package/components/designer-canvas/index.esm.js +1 -1
- package/components/designer-canvas/index.umd.cjs +1 -1
- package/components/dynamic-form/index.esm.js +3 -2
- package/components/dynamic-form/index.umd.cjs +1 -1
- package/components/events-editor/index.esm.js +1 -1
- package/components/events-editor/index.umd.cjs +1 -1
- package/components/expression-editor/index.esm.js +256 -254
- package/components/expression-editor/index.umd.cjs +2 -2
- package/components/filter-bar/index.esm.js +416 -394
- package/components/filter-bar/index.umd.cjs +1 -1
- package/components/filter-condition-editor/index.esm.js +388 -386
- package/components/filter-condition-editor/index.umd.cjs +1 -1
- package/components/flow-canvas/index.esm.js +1 -1
- package/components/flow-canvas/index.umd.cjs +1 -1
- package/components/language-textbox/index.esm.js +77 -76
- package/components/language-textbox/index.umd.cjs +1 -1
- package/components/list-nav/index.esm.js +4 -2
- package/components/list-nav/index.umd.cjs +1 -1
- package/components/lookup/index.esm.js +118 -118
- package/components/lookup/index.umd.cjs +1 -1
- package/components/mapping-editor/index.esm.js +80 -81
- package/components/mapping-editor/index.umd.cjs +1 -1
- package/components/message-box/index.esm.js +237 -237
- package/components/message-box/index.umd.cjs +1 -1
- package/components/modal/index.esm.js +1 -1
- package/components/modal/index.umd.cjs +1 -1
- package/components/number-range/index.esm.js +1 -1
- package/components/number-range/index.umd.cjs +1 -1
- package/components/number-spinner/index.esm.js +9 -3
- package/components/number-spinner/index.umd.cjs +1 -1
- package/components/order/index.esm.js +114 -112
- package/components/order/index.umd.cjs +1 -1
- package/components/page-header/index.esm.js +1 -1
- package/components/page-header/index.umd.cjs +1 -1
- package/components/property-panel/index.esm.js +1 -1
- package/components/property-panel/index.umd.cjs +1 -1
- package/components/query-solution/index.esm.js +485 -463
- package/components/query-solution/index.umd.cjs +3 -3
- package/components/radio-group/index.esm.js +30 -30
- package/components/radio-group/index.umd.cjs +1 -1
- package/components/response-layout/index.esm.js +1 -1
- package/components/response-layout/index.umd.cjs +1 -1
- package/components/response-layout-editor/index.esm.js +544 -545
- package/components/response-layout-editor/index.umd.cjs +1 -1
- package/components/response-toolbar/index.esm.js +1 -1
- package/components/response-toolbar/index.umd.cjs +1 -1
- package/components/schema-selector/index.esm.js +6 -4
- package/components/schema-selector/index.umd.cjs +2 -2
- package/components/section/index.esm.js +1 -1
- package/components/section/index.umd.cjs +1 -1
- package/components/sort-condition-editor/index.esm.js +9 -7
- package/components/sort-condition-editor/index.umd.cjs +1 -1
- package/components/switch/index.esm.js +77 -78
- package/components/switch/index.umd.cjs +1 -1
- package/components/tabs/index.esm.js +5 -3
- package/components/tabs/index.umd.cjs +1 -1
- package/components/textarea/index.esm.js +1 -1
- package/components/textarea/index.umd.cjs +1 -1
- package/components/time-picker/index.esm.js +2 -2
- package/components/time-picker/index.umd.cjs +1 -1
- package/components/video/index.esm.js +1 -1
- package/components/video/index.umd.cjs +1 -1
- package/designer/button-edit/index.esm.js +211 -211
- package/designer/button-edit/index.umd.cjs +1 -1
- package/designer/checkbox/index.esm.js +1 -1
- package/designer/checkbox/index.umd.cjs +1 -1
- package/designer/checkbox-group/index.esm.js +25 -26
- package/designer/checkbox-group/index.umd.cjs +1 -1
- package/designer/data-grid/index.esm.js +15 -9
- package/designer/data-grid/index.umd.cjs +2 -2
- package/designer/farris-designer.all.esm.js +917 -916
- package/designer/farris-designer.all.umd.cjs +5 -5
- package/designer/input-group/index.esm.js +2 -1
- package/designer/input-group/index.umd.cjs +1 -1
- package/designer/list-view/index.esm.js +685 -689
- package/designer/list-view/index.umd.cjs +3 -3
- package/designer/radio-group/index.esm.js +7 -3
- package/designer/radio-group/index.umd.cjs +1 -1
- package/farris.all.esm.js +5641 -5603
- package/farris.all.umd.cjs +21 -21
- package/locales/data-grid/ui/en.json +2 -1
- package/locales/data-grid/ui/zh-CHS.json +2 -1
- package/locales/data-grid/ui/zh-CHT.json +2 -1
- package/locales/designer/en.json +2 -1
- package/locales/designer/zh-CHS.json +2 -1
- package/locales/designer/zh-CHT.json +2 -1
- package/locales/ui/en.json +2 -1
- package/locales/ui/zh-CHS.json +2 -1
- package/locales/ui/zh-CHT.json +2 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(I,o){typeof exports=="object"&&typeof module<"u"?o(exports,require("vue"),require("lodash-es"),require("../dynamic-resolver/index.umd.js"),require("vue-i18n"),require("../locale/index.umd.js"),require("../common/index.umd.js"),require("@vueuse/core"),require("../data-view/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("../dynamic-form/index.umd.js"),require("../events-editor/index.umd.js"),require("../filter-bar/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("../../designer/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("../order/index.umd.js"),require("../page-header/index.umd.js"),require("../page-footer/index.umd.js"),require("../pagination/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("../search-box/index.umd.js"),require("../section/index.umd.js"),require("../smoke-detector/index.umd.js"),require("../splitter/index.umd.js"),require("../step/index.umd.js"),require("../switch/index.umd.js"),require("../tabs/index.umd.js"),require("../tags/index.umd.js"),require("../text/index.umd.js"),require("../time-picker/index.umd.js"),require("../transfer/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("../../designer/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("../../designer/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("../collection-property-editor/index.umd.js"),require("../modal/index.umd.js"),require("../external-container/index.umd.js"),require("../language-textbox/index.umd.js"),require("../notify/index.umd.js"),require("../tree-grid/index.umd.js"),require("bignumber.js")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es","../dynamic-resolver/index.umd.js","vue-i18n","../locale/index.umd.js","../common/index.umd.js","@vueuse/core","../data-view/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","../dynamic-form/index.umd.js","../events-editor/index.umd.js","../filter-bar/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","../../designer/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","../order/index.umd.js","../page-header/index.umd.js","../page-footer/index.umd.js","../pagination/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","../search-box/index.umd.js","../section/index.umd.js","../smoke-detector/index.umd.js","../splitter/index.umd.js","../step/index.umd.js","../switch/index.umd.js","../tabs/index.umd.js","../tags/index.umd.js","../text/index.umd.js","../time-picker/index.umd.js","../transfer/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","../../designer/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","../../designer/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","../collection-property-editor/index.umd.js","../modal/index.umd.js","../external-container/index.umd.js","../language-textbox/index.umd.js","../notify/index.umd.js","../tree-grid/index.umd.js","bignumber.js"],o):(I=typeof globalThis<"u"?globalThis:I||self,o(I.component={},I.Vue,I.LodashES,I.dynamicResolver,I.vueI18n,I.locale,I.common,I.VueUseCore,I.dataView,I.designerCanvas,I.propertyPanel,I.FAccordion,I.FAvatar,I.FButtonEdit,I.FButtonGroup,I.FCalendar,I.FCapsule,I.FCheckbox,I.FCheckboxGroup,I.FComboList,I.FComboTree,I.FComponent,I.FColorPicker,I.FContentContainer,I.FDatePicker,I.FDataGrid,I.FDropdown,I.FDynamicForm,I.FEventsEditor,I.FFilterBar,I.FFieldSelector,I.FBindingSelector,I.FImageCropper,I.FInputGroup,I.FLayout,I.FListNav,I.FListView,I.FLookup,I.FMappingEditor,I.FNav,I.FNumberRange,I.FNumberSpinner,I.FOrder,I.FPageHeader,I.FPageFooter,I.FPagination,I.FProgress,I.FQuerySolution,I.FRadioGroup,I.FRate,I.FResponseToolbar,I.FResponseLayout,I.FResponseLayoutEditorSetting,I.FSearchBox,I.FSection,I.FSmokeDetector,I.FSplitter,I.FStep,I.FSwitch,I.FTabs,I.FTags,I.FText,I.FTimePicker,I.FTransfer,I.FTreeview,I.FUploader,I.FVerifyDetail,I.FVideo,I.FTextArea,I.FSchemaSelector,I.FTreeGrid$1,I.FEventParameter,I.FFilterConditionEditor,I.FFieldset,I.FSortConditionEditor,I.FMenuLookup,I.FDrawer,I.FJsonEditor,I.FPropertyEditor,I.FExpressionEditor,I.FCodeEditor,I.FHtmlTemplate,I.FCollectionPropertyEditor,I.FModal$1,I.FExternalContainer,I.FLanguageTextbox,I.notify,I.FTreeGrid$2))})(this,function(I,o,ce,ut,bt,dt,Ne,Cn,ne,Xe,wn,xn,Sn,Tn,Fn,Vn,Nn,Ut,zt,Mn,En,Bn,kn,jn,In,On,Pn,Dn,$n,Rn,qn,Ln,An,Un,zn,Gn,_n,Hn,Wn,Yn,Xn,Jn,Qn,Zn,Kn,eo,to,no,oo,ro,io,ao,so,lo,co,uo,fo,po,mo,ho,go,yo,vo,bo,Co,wo,xo,So,To,Fo,Vo,No,Mo,Eo,Bo,ko,jo,Io,Oo,Po,Do,$o,Ro,qo,Lo,Ao,Uo,zo){"use strict";var _i=Object.defineProperty;var Hi=(I,o,ce)=>o in I?_i(I,o,{enumerable:!0,configurable:!0,writable:!0,value:ce}):I[o]=ce;var oe=(I,o,ce)=>Hi(I,typeof o!="symbol"?o+"":o,ce);function Gt(n,e){let t;function r(f){const{properties:h,title:g,ignore:p}=f,m=p&&Array.isArray(p),S=Object.keys(h).reduce((N,B)=>((!m||!p.find(O=>O===B))&&(N[B]=h[B].type==="object"&&h[B].properties?r(h[B]):ce.cloneDeep(h[B].default)),N),{});if(g&&(!m||!p.find(N=>N==="id"))){const N=g.toLowerCase().replace(/-/g,"_");S.id=`${N}_${Math.random().toString().slice(2,6)}`}return S}function i(f){const{properties:h,title:g,required:p}=f;if(p&&Array.isArray(p)){const m=p.reduce((S,N)=>(S[N]=h[N].type==="object"&&h[N].properties?r(h[N]):ce.cloneDeep(h[N].default),S),{});if(g&&p.find(S=>S==="id")){const S=g.toLowerCase().replace(/-/g,"_");m.id=`${S}_${Math.random().toString().slice(2,6)}`}return m}return{type:g}}function s(f,h={},g){const p=n[f];if(p){let m=i(p);const S=e[f];return m=S?S({getSchemaByType:s},m,h,g):m,t!=null&&t.appendIdentifyForNewControl&&t.appendIdentifyForNewControl(m),m}return null}function a(f,h){const g=r(h);return Object.keys(g).reduce((p,m)=>(Object.prototype.hasOwnProperty.call(f,m)&&(p[m]&&ce.isPlainObject(p[m])&&ce.isPlainObject(f[m]||!f[m])?Object.assign(p[m],f[m]||{}):p[m]=f[m]),p),g),g}function u(f,h){return Object.keys(f).filter(p=>f[p]!=null).reduce((p,m)=>{if(h.has(m)){const S=h.get(m);if(typeof S=="string")p[S]=f[m];else{const N=S(m,f[m],f);Object.assign(p,N)}}else p[m]=f[m];return p},{})}function l(f,h,g=new Map){const p=a(f,h);return u(p,g)}function c(f){var g;const h=f.type;if(h){const p=n[h];if(!p)return f;const m=a(f,p),S=((g=f.editor)==null?void 0:g.type)||"";if(S){const N=n[S],B=a(f.editor,N);m.editor=B}return m}return f}function d(f){t=f}return{getSchemaByType:s,resolveSchemaWithDefaultValue:c,resolveSchemaToProps:l,mappingSchemaToProps:u,setDesignerContext:d}}const Ct={},_t={},{getSchemaByType:wt,resolveSchemaWithDefaultValue:Go,resolveSchemaToProps:_o,mappingSchemaToProps:Ho,setDesignerContext:Wi}=Gt(Ct,_t);function Wo(n={}){function e(c,d,f,h){if(typeof f=="number")return h[c].length===f;if(typeof f=="object"){const g=Object.keys(f)[0],p=f[g];if(g==="not")return Number(h[c].length)!==Number(p);if(g==="moreThan")return Number(h[c].length)>=Number(p);if(g==="lessThan")return Number(h[c].length)<=Number(p)}return!1}function t(c,d,f,h){return h[c]&&h[c].propertyValue&&String(h[c].propertyValue.value)===String(f)}const r=new Map([["length",e],["getProperty",t]]);Object.keys(n).reduce((c,d)=>(c.set(d,n[d]),c),r);function i(c,d){const f=c;return typeof d=="number"?[{target:f,operator:"length",param:null,value:Number(d)}]:typeof d=="boolean"?[{target:f,operator:"getProperty",param:c,value:!!d}]:typeof d=="object"?Object.keys(d).map(h=>{if(h==="length")return{target:f,operator:"length",param:null,value:d[h]};const g=h,p=d[h];return{target:f,operator:"getProperty",param:g,value:p}}):[]}function s(c){return Object.keys(c).reduce((f,h)=>{const g=i(h,c[h]);return f.push(...g),f},[])}function a(c,d){if(r.has(c.operator)){const f=r.get(c.operator);return f&&f(c.target,c.param,c.value,d)||!1}return!1}function u(c,d){return s(c).reduce((g,p)=>g&&a(p,d),!0)}function l(c,d){const f=Object.keys(c),h=f.includes("allOf"),g=f.includes("anyOf"),p=h||g,N=(p?c[p?h?"allOf":"anyOf":"allOf"]:[c]).map(O=>u(O,d));return h?!N.includes(!1):N.includes(!0)}return{parseValueSchema:l}}const Yo={convertTo:(n,e,t,r)=>{n.appearance||(n.appearance={}),n.appearance[e]=t},convertFrom:(n,e,t)=>n.appearance?n.appearance[e]:n[e]},Xo={convertFrom:(n,e,t)=>n.buttons&&n.buttons.length?`共 ${n.buttons.length} 项`:"无"},Jo={convertTo:(n,e,t,r)=>{n.editor&&(n.editor[e]=t)},convertFrom:(n,e,t)=>n.editor&&Object.prototype.hasOwnProperty.call(n.editor,e)?n.editor[e]:n[e]},R={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:"列表导航"},"list-view":{type:"list-view",name:"列表"},"filter-bar":{type:"filter-bar",name:"筛选条"},"language-textbox":{type:"language-textbox",name:"多语输入框"}},Qo={convertFrom:(n,e,t)=>{var i;const r=n.editor&&n.editor[e]?n.editor[e]:n[e];return((i=R[r])==null?void 0:i.name)||r}},Zo={convertTo:(n,e,t,r)=>{n[e]=n[e]},convertFrom:(n,e,t)=>n.editor?t.getRealEditorType(n.editor.type):""},Ko={convertTo:(n,e,t,r)=>{(n.type==="data-grid-column"||n.type==="tree-grid-column")&&(n.formatter?n.formatter[e]=t:n.formatter={[e]:t})},convertFrom:(n,e,t)=>{if(n.formatter){if(e==="trueText")return n.formatter.trueText;if(e==="falseText")return n.formatter.falseText;if(e==="prefix")return n.formatter.prefix;if(e==="suffix")return n.formatter.suffix;if(e==="precision")return n.formatter.precision;if(e==="decimal")return n.formatter.decimal;if(e==="thousand")return n.formatter.thousand;if(e==="dateFormat")return n.formatter.dateFormat||"yyyy-MM-dd";if(e==="customFormat")return n.formatter.customFormat;if(e==="type")return n.formatter.type||"none"}return"none"}},er={convertTo:(n,e,t,r)=>{n.command?n.command[e]=t:n.command={[e]:t},e==="enable"&&t&&(n.command.commands||(n.command.commands=[{text:"编辑",type:"primary",command:"edit"},{text:"删除",type:"danger",command:"remove"}]))},convertFrom:(n,e,t)=>n.command&&e==="enable"?n.command.enable:""},tr={convertTo:(n,e,t,r)=>{n.column?n.column[e]=t:n.column={[e]:t},e==="fitColumns"&&t&&(n.column.fitMode||(n.column.fitMode="average"))},convertFrom:(n,e,t)=>{if(n.column){if(e==="fitColumns")return n.column.fitColumns;if(e==="fitMode")return n.column.fitMode}return""}},nr={convertTo:(n,e,t,r)=>{n.summary?n.summary[e]=t:n.summary={[e]:t},e==="enable"&&t&&(n.summary?n.summary.groupFields||(n.summary.groupFields=[]):n.summary={enable:t,groupFields:[]})},convertFrom:(n,e,t)=>n.summary&&e==="enable"?n.summary.enable:n.type==="data-grid-column"?n.enableSummary===void 0?!1:n.enableSummary:""},or={convertTo:(n,e,t,r)=>{n.group?n.group[e]=t:n.group={[e]:t},e==="enable"&&t&&(n.group?n.group.groupFields||(n.group.groupFields=[]):n.group={enable:t,groupFields:[],showSummary:!1})},convertFrom:(n,e,t)=>{if(n.group){if(e==="enable")return n.group.enable;if(e==="showSummary")return n.group.showSummary}}},rr={convertFrom:(n,e)=>n.binding?n.binding.path:"",convertTo:(n,e,t)=>{if(t&&t.length>0){const r=t[0];n.binding||(n.binding={}),n.binding.type="Form",n.binding.path=r.bindingField,n.binding.field=r.id,n.binding.fullPath=r.path,n.path=r.bindingPath}}},ir={convertTo:(n,e,t,r)=>{n.pagination||(n.pagination={}),n.pagination[e]=t},convertFrom:(n,e,t)=>n.pagination?n.pagination[e]:n[e]},ar={convertTo:(n,e,t,r)=>{n.rowNumber||(n.rowNumber={}),n.rowNumber[e]=t},convertFrom:(n,e,t)=>n.rowNumber?n.rowNumber[e]:n[e]},sr={convertTo:(n,e,t,r)=>{n.selection||(n.selection={}),n.selection[e]=t},convertFrom:(n,e,t)=>{var r,i;return e==="showCheckbox"?(r=n.selection)!=null&&r.multiSelect?!0:(i=n.selection)==null?void 0:i.showCheckbox:n.selection?n.selection[e]:n[e]}},lr={convertFrom:(n,e,t)=>n[e]&&n[e].length?`共 ${n[e].length} 项`:""},cr={convertFrom:(n,e)=>n[e]||"",convertTo:(n,e,t)=>{n[e]=t}},ur={convertTo:(n,e,t,r)=>{n.size||(n.size={}),n.size[e]=t},convertFrom:(n,e,t)=>n.size?n.size[e]:n[e]},dr={convertFrom:(n,e,t)=>{var r,i;return(r=n.formatter)!=null&&r.data&&e==="formatterEnumData"&&!n.formatterEnumData?(i=n.formatter)==null?void 0:i.data:n.formatterEnumData}},fr={convertTo:(n,e,t,r)=>{n.sort||(n.sort={}),n.sort[e]=t},convertFrom:(n,e,t)=>{var r,i;if(e==="mode")return((r=n.sort)==null?void 0:r.mode)||"client";if(e==="multiSort")return!!((i=n.sort)!=null&&i.multiSort)}},pr={convertTo:(n,e,t,r)=>{n.filter||(n.filter={}),n.filter[e]=t},convertFrom:(n,e,t)=>{var r;if(e==="mode")return((r=n.filter)==null?void 0:r.mode)||"client"}},mr={convertTo:(n,e,t,r)=>{n.rowOption?n.rowOption[e]=t:n.rowOption={[e]:t}},convertFrom:(n,e,t)=>{if(n.rowOption){if(e==="customRowStyle")return n.rowOption.customRowStyle;if(e==="customCellStyle")return n.rowOption.customCellStyle}return""}};function Ht(n,e,t){const r=new Map([["/converter/appearance.converter",Yo],["/converter/buttons.converter",Xo],["/converter/property-editor.converter",Jo],["/converter/items-count.converter",lr],["/converter/type.converter",Qo],["/converter/change-editor.converter",Zo],["/converter/change-formatter.converter",Ko],["/converter/column-command.converter",er],["/converter/column-option.converter",tr],["/converter/summary.converter",nr],["/converter/group.converter",or],["/converter/form-group-label.converter",cr],["/converter/field-selector.converter",rr],["/converter/pagination.converter",ir],["/converter/row-number.converter",ar],["/converter/grid-selection.converter",sr],["/converter/size.converter",ur],["/converter/change-formatter-enum.converter",dr],["/converter/grid-sort.converter",fr],["/converter/grid-filter.converter",pr],["/converter/row-option.converter",mr]]),i=new Map([["string",{type:"input-group",enableClear:!1}],["boolean",{type:"combo-list",textField:"name",valueField:"value",idField:"value",enableClear:!1,editable:!1,data:[{value:!0,name:"是"},{value:!1,name:"否"}]}],["enum",{type:"combo-list",maxHeight:128,enableClear:!1,editable:!1}],["array",{type:"button-edit"}],["number",{type:"number-spinner",placeholder:""}],["events-editor",{type:"events-editor",hide:!0}]]),s=Wo();function a(p,m){return()=>s.parseValueSchema(p,m)}function u(p,m,S){return p.includes("visible")&&m.visible!==void 0?typeof m.visible=="boolean"?()=>!!m.visible:m.visible===void 0?!0:a(m.visible,S):()=>!0}function l(p,m,S){return p.includes("readonly")&&m.readonly!==void 0?typeof m.readonly=="boolean"?()=>!!m.readonly:a(m.readonly,S):()=>!1}function c(p,m){const S=p.$converter||m;return typeof S=="string"&&S&&r.has(S)?r.get(S)||null:S||null}function d(p,m,S,N,B,O="",F=""){return Object.keys(p).map(b=>{const k=o.ref(1),y=b,x=p[b],T=Object.keys(x),C=x.title,w=x.type,E=i.get(w)||{type:"input-group",enableClear:!1},V=x.editor?Object.assign({},E,x.editor):Object.assign({},E),j=u(T,x,m),_=l(T,x,m);V.readonly=V.readonly===void 0?_():V.readonly;const J=x.type==="cascade"?d(x.properties,m,S,N,B,O,F):[],$=!0;let P=c(x,F);const Y=o.computed({get(){if(k.value){if(["class","style"].find(he=>he===y)&&!P&&(P=r.get("/converter/appearance.converter")||null),P&&P.convertFrom)return P.convertFrom(S,b,B,O);const ue=S[b];return Object.prototype.hasOwnProperty.call(x,"defaultValue")&&(ue===void 0||typeof ue=="string"&&ue==="")?x.type==="boolean"?x.defaultValue:x.defaultValue||"":ue}return null},set(ue){k.value+=1,P&&P.convertTo?(P.convertTo(N,b,ue,B,O),P.convertTo(S,b,ue,B,O)):(N[b]=ue,S[b]=ue)}}),{refreshPanelAfterChanged:G,description:Z,isExpand:le,parentPropertyID:de}=x,K={propertyID:y,propertyName:C,propertyType:w,propertyValue:Y,editor:V,visible:j,readonly:_,cascadeConfig:J,hideCascadeTitle:$,refreshPanelAfterChanged:G,description:Z,isExpand:le,parentPropertyID:de};return m[y]=K,K})}function f(p,m,S={}){const N={},B=n[p];return B&&B.categories?Object.keys(B.categories).map(F=>{const v=B.categories[F],b=v==null?void 0:v.title,k=d(v.properties||{},N,{},S,m);return{categoryId:F,categoryName:b,properties:k}}):[]}function h(p,m,S,N,B=""){const O=m.$ref.schema,F=m.$ref.converter,v=S[O],b=v.type,k=t(v),y={},x=n[b];if(x&&x.categories){const T=x.categories[p],C=T==null?void 0:T.title;F&&Object.keys(T.properties).forEach(V=>{T.properties[V].$converter=F});const w=(T==null?void 0:T.properties)||{},E=d(w,y,k,v,N,B);return{categoryId:p,categoryName:C,properties:E}}return{categoryId:p,categoryName:"",properties:[]}}function g(p,m,S,N,B){const O=p.type,F=t(p),v={};let b=B||n[O];if(b&&Object.keys(b).length===0&&S&&S.getPropConfig&&(b=S.getPropConfig(N)),b&&b.categories){const k=[];return Object.keys(b.categories).map(y=>{const x=b.categories[y];if(x.$ref){k.push(h(y,x,p,m,N));return}const T=x==null?void 0:x.title,C=x==null?void 0:x.tabId,w=x==null?void 0:x.tabName,E=x==null?void 0:x.hide,V=x==null?void 0:x.hideTitle,j=d(x.properties||{},v,F,p,m,N,x.$converter),{setPropertyRelates:_}=x,J=x==null?void 0:x.parentPropertyID;k.push({categoryId:y,categoryName:T,tabId:C,tabName:w,hide:E,properties:j,hideTitle:V,setPropertyRelates:_,parentPropertyID:J})}),k}return[]}return{getPropertyConfigBySchema:g,getPropertyConfigByType:f,propertyConverterMap:r}}const Wt={},Yt={};Ht(Wt,Yt,Go);const Xt={},Jt={},{getSchemaByType:Yi,resolveSchemaWithDefaultValue:hr,resolveSchemaToProps:Xi,mappingSchemaToProps:Ji,setDesignerContext:Qi}=Gt(Xt,Jt),Qt={},Zt={};Ht(Qt,Zt,hr);function Je(n,e,t=new Map,r=(a,u,l,c)=>u,i={},s=a=>a){return Ct[e.title]=e,_t[e.title]=r,Wt[e.title]=i,Yt[e.title]=s,Xt[e.title]=e,Jt[e.title]=r,Qt[e.title]=i,Zt[e.title]=s,(a={},u=!0)=>{if(!u)return Ho(a,t);const l=_o(a,e,t),c=Object.keys(n).reduce((d,f)=>(d[f]=n[f].default,d),{});return Object.assign(c,l)}}function xt(n,e){return{customClass:e.class,customStyle:e.style}}const Kt=new Map([["appearance",xt]]),gr={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/component.schema.json",title:"component",description:"A Farris Visual Component",type:"object",properties:{id:{description:"The unique identifier for a component",type:"string"},type:{description:"The type string of component",type:"string",default:"component"},componentType:{description:"The type string of component",type:"string"},viewModel:{description:"The viewModel string of component",type:"string"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},contents:{description:"",type:"array",default:[]},visible:{description:"",type:"boolean",default:!0},onInit:{description:"初始化事件",type:"string",default:""},onAfterViewInit:{description:"视图初始化后事件",type:"string",default:""}},required:["id","type","contents"],events:{onInit:"初始化事件",onAfterViewInit:"视图初始化后事件"}};function en(n,e,t){return e}const nt={id:{type:String},customClass:{type:String,default:""},customStyle:{type:String,default:""},componentType:{type:String,default:""},formColumns:{type:Number,default:4},code:{type:String,default:""}},St=Je(nt,gr,Kt,en),yr=Object.assign({},nt,{componentId:{type:String,default:""}}),ft=o.defineComponent({name:"FComponent",props:nt,emits:["init","afterViewInit"],setup(n,e){const t=o.ref();return o.onBeforeMount(()=>{e.emit("init",n.id)}),o.onMounted(()=>{t.value&&n.code&&t.value.setAttribute("scope-"+n.code.toLowerCase(),""),e.emit("afterViewInit",n.id)}),()=>o.createVNode("div",{ref:t,class:n.id+" "+n.customClass,style:n.customStyle},[e.slots.default&&e.slots.default()])}});function vr(n,e,t){var C;const r=t&&t.getStyles&&t.getStyles()||"",i=t&&t.getDesignerClass&&t.getDesignerClass()||"",s=o.ref();let a;function u(){return(e==null?void 0:e.schema.componentType)==="frame"?!1:t&&t.checkCanMoveComponent?t.checkCanMoveComponent():!0}function l(){return!1}function c(){return(e==null?void 0:e.schema.componentType)==="frame"?!1:t&&t.checkCanDeleteComponent?t.checkCanDeleteComponent():!0}function d(){return(e==null?void 0:e.schema.componentType)==="frame"?!0:t&&t.hideNestedPaddingInDesginerView?t.hideNestedPaddingInDesginerView():!1}function f(w){if(!w||!w.value)return null;if(w.value.schema&&w.value.schema.type==="component")return w.value;const E=o.ref(w==null?void 0:w.value.parent),V=f(E);return V||null}function h(w=e){var _;if(t!=null&&t.getDraggableDesignItemElement)return t.getDraggableDesignItemElement(w);const{componentInstance:E,designerItemElementRef:V}=w;if(!E||!E.value)return null;const{getCustomButtons:j}=E.value;return E.value.canMove||j&&((_=j())!=null&&_.length)?V:h(w.parent)}function g(w){return!!t&&t.canAccepts(w)}function p(){return(e==null?void 0:e.schema.label)||(e==null?void 0:e.schema.title)||(e==null?void 0:e.schema.name)}function m(){}function S(w,E){var V;!w||!E||(t!=null&&t.onAcceptMovedChildElement&&t.onAcceptMovedChildElement(w,E),(V=e==null?void 0:e.setupContext)==null||V.emit("dragEnd"))}function N(w,E){const{componentType:V}=w;let j=ut.getSchemaByTypeForDesigner(V,w,E);t&&t.onResolveNewComponentSchema&&(j=t.onResolveNewComponentSchema(w,j));const _=V.toLowerCase().replace(/-/g,"_");return j&&!j.id&&j.type===V&&(j.id=`${_}_${Math.random().toString().slice(2,6)}`),j}function B(w){w&&t!=null&&t.onChildElementMovedOut&&t.onChildElementMovedOut(w)}function O(...w){if(t&&t.getPropsConfig)return t.getPropsConfig(...w)}function F(w){if(!w)return;const E=e==null?void 0:e.schema,{formSchemaUtils:V}=w;if(E&&V.getExpressions().length){const j=V.getExpressions().findIndex(_=>_.target===E.id);j>-1&&V.getExpressions().splice(j,1)}}function v(w){if(!w||!(e!=null&&e.schema))return;const E=e.schema,{formSchemaUtils:V}=w;V.removeCommunicationInComponent(E)}function b(w){t&&t.onRemoveComponent&&t.onRemoveComponent(),F(w),v(w),e!=null&&e.schema.contents&&e.schema.contents.map(E=>{let V=E.id;E.type==="component-ref"&&(V=E.component);const j=n.value.querySelectorAll(`#${V}-design-item`);j!=null&&j.length&&Array.from(j).map(_=>{var J;(J=_==null?void 0:_.componentInstance)!=null&&J.value.onRemoveComponent&&_.componentInstance.value.onRemoveComponent(w)})})}function k(){if(t&&t.getCustomButtons)return t.getCustomButtons()}function y(w){var V,j;if(!((V=e==null?void 0:e.schema)!=null&&V.id))return;if(!a&&w&&(a=w.formSchemaUtils),t!=null&&t.setComponentBasicInfoMap){t.setComponentBasicInfoMap();return}let E="";if(t!=null&&t.getComponentTitle)E=t.getComponentTitle();else{const{text:_,title:J,label:$,mainTitle:P,name:Y,type:G}=e.schema;E=_||J||$||P||Y||((j=R[G])==null?void 0:j.name)}E&&a.getControlBasicInfoMap().set(e.schema.id,{componentTitle:E,parentPathName:E})}function x(w){var _;const{changeObject:E}=w,{propertyID:V,propertyValue:j}=E;if(["text","title","label","name","mainTitle"].includes((_=w==null?void 0:w.changeObject)==null?void 0:_.propertyID)&&V&&j&&(y(),a)){const J=a.getControlBasicInfoMap(),$=J.keys().toArray().filter(P=>{var Y,G;return((Y=J.get(P))==null?void 0:Y.reliedComponentId)===((G=e==null?void 0:e.schema)==null?void 0:G.id)});$!=null&&$.length&&$.forEach(P=>{const Y=J.get(P).parentPathName.split(" > ");Y[0]=j,J.get(P).parentPathName=Y.join(" > ")})}}function T(w){if(x(w),t&&t.onPropertyChanged)return t.onPropertyChanged(w)}return s.value={canMove:u(),canSelectParent:l(),canDelete:c(),canNested:!d(),contents:e==null?void 0:e.schema.contents,elementRef:n,parent:(C=e==null?void 0:e.parent)==null?void 0:C.componentInstance,schema:e==null?void 0:e.schema,styles:r,designerClass:i,canAccepts:g,getBelongedComponentInstance:f,getDraggableDesignItemElement:h,getDraggingDisplayText:p,getPropConfig:O,getDragScopeElement:m,onAcceptMovedChildElement:S,onChildElementMovedOut:B,addNewChildComponentSchema:N,triggerBelongedComponentToMoveWhenMoved:!!t&&t.triggerBelongedComponentToMoveWhenMoved||o.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:!!t&&t.triggerBelongedComponentToDeleteWhenDeleted||o.ref(!1),onRemoveComponent:b,getCustomButtons:k,onPropertyChanged:T,setComponentBasicInfoMap:y,updateContextSchema:e==null?void 0:e.updateContextSchema},s}class br{getTemplateRule(e,t){const r=t==null?void 0:t.formSchemaUtils,i=r==null?void 0:r.getFormTemplateRule(),s={canAccept:!0,canDelete:!0,canMove:!0};if(!i)return s;const a=this.getComponentContext(e),{componentClassList:u}=a;return u.forEach(l=>{if(!l||!i[l])return;const{canMove:c,canDelete:d,canAccept:f}=i[l];s.canMove=s.canMove&&this.resolveRuleValue(c,a),s.canDelete=s.canDelete&&this.resolveRuleValue(d,a),s.canAccept=s.canAccept&&this.resolveRuleValue(f,a)}),s}resolveRuleValue(e,t){return typeof e=="boolean"?e:this.parseRuleValueSchema(e,t)}parseRuleValueSchema(e,t){const r=e.invalidContext||[];let i=!0;for(const s of r){const{firstLevelChild:a,secondLevelChild:u,parent:l,...c}=s;if(c&&t.component){let d=!0;for(const f of Object.keys(c))if(c[f]!==t.component[f]){d=!1;break}if(!d){i=!1;continue}}if(s.firstLevelChild){if(s.firstLevelChild.class){const{firstLevelChildClassList:d}=t;if(d&&!d.includes(s.firstLevelChild.class)){i=!1;continue}}if(s.firstLevelChild.type){const{firstLevelChildSchema:d}=t;if(!d||d.type!==s.firstLevelChild.type){i=!1;continue}}}if(s.secondLevelChild){if(s.secondLevelChild.class){const{secondLevelChildClassList:d}=t;if(d&&!d.includes(s.secondLevelChild.class)){i=!1;continue}}if(s.secondLevelChild.type){const{secondLevelChildSchema:d}=t;if(!d||d.type!==s.secondLevelChild.type){i=!1;continue}}}if(s.parent){if(s.parent.class){const{parentClassList:d}=t;if(d&&!d.includes(s.parent.class)){i=!1;continue}}if(s.parent.type){const{parentSchema:d}=t;if(d&&d.type!==s.parent.type){i=!1;continue}}}i=!0;break}return!i}getComponentContext(e){var m,S,N,B;const t=e.schema,r=t.appearance&&t.appearance.class||"",i=r.split(" ")||[],s=t.contents||[],a=s.length?s[0]:null,u=a&&a.appearance?a.appearance.class:"",l=u?u.split(" "):[],c=(m=a==null?void 0:a.contents)!=null&&m.length?a==null?void 0:a.contents[0]:null,d=c&&c.appearance?c.appearance.class:"",f=d?d.split(" "):[],h=t.type==="component"?(N=(S=e.parent)==null?void 0:S.parent)==null?void 0:N.schema:(B=e.parent)==null?void 0:B.schema,g=h&&h.appearance&&h.appearance.class||"",p=g?g.split(" "):[];return{componentClass:r,componentClassList:i,childContents:s,firstLevelChildSchema:a,firstLevelChildClass:u,firstLevelChildClassList:l,secondLevelChildSchema:c,secondLevelChildClass:d,secondLevelChildClassList:f,parentSchema:h,parentClass:g,parentClassList:p,component:t}}}const Cr=o.ref(0);function tn(){Cr.value++}const nn=o.ref(0);function wr(n){const{formSchemaUtils:e,formStateMachineUtils:t}=n;function r(l,c=""){return{path:c+l.code,field:l.id,fullPath:l.code}}function i(l,c=""){return e.getViewModelById(l).states.map(f=>r(f,c))}function s(l){const c=e.getRootViewModelId(),d=i(l);if(l===c)return d;const f=i(c,"root-component.");return[...d,...f]}function a(l){return l.binding&&l.binding.path||l.id||""}function u(){return t&&t.getRenderStates()||[]}return{getVariables:s,getControlName:a,getStateMachines:u}}class xr{constructor(e){oe(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'"}]);oe(this,"expressionNames",{compute:"计算表达式",dependency:"依赖表达式",validate:"验证表达式",dataPicking:"帮助前表达式",visible:"可见表达式",readonly:"只读表达式",required:"必填表达式"});oe(this,"getExpressionConverter",(e,t)=>({convertFrom:(r,i,s,a)=>{const u=s.getExpressionRuleValue(e,t||i);return u&&u.value||""},convertTo:(r,i,s,a,u)=>{var l;if(i==="dataPicking"&&(s!=null&&s.target)){const c=`${s.target}_dataPicking`;((l=s.rules)==null?void 0:l.some(f=>f.id===c&&f.value))?r.dictPickingExpressionId=c:delete r.dictPickingExpressionId}a.updateExpression(s)}}));this.formSchemaService=e}getExpressionRule(e,t){const r=this.formSchemaService.getExpressions();if(!r)return"";const i=r.find(a=>a.target===e);if(!i)return"";const s=i.rules.find(a=>a.type===t);return s||""}getContextFormVariables(){const{module:e}=this.formSchemaService.getFormSchema();if(!e.viewmodels||e.viewmodels.length===0)return[];const t=this.formSchemaService.getRootViewModelId(),r=this.formSchemaService.getViewModelById(t);if(!r||!r.states||r.states.length===0)return[];const i=[];return r.states.forEach(s=>{i.push({key:s.code,name:s.name,description:s.name,category:s.category})}),i}createTreeNode(e,t,r="label"){return{id:e.id,name:e.name,bindingPath:e[r],parents:t,type:"field"}}buildEntityFieldsTreeData(e=null,t){const r=[];return e==null||e.forEach(i=>{var u;const s=this.createTreeNode(i,t);let a=[];(u=i.type)!=null&&u.fields&&(a=this.buildEntityFieldsTreeData(i.type.fields,[...t,i.label])),r.push({data:s,children:a,expanded:!0})}),r}buildChildEntityTreeData(e=null,t){const r=[];return e==null||e.forEach(i=>{var l,c;const s=this.createTreeNode(i,t);s.type="entity";const a=this.buildEntityFieldsTreeData((l=i.type)==null?void 0:l.fields,[...t,i.label]),u=this.buildChildEntityTreeData((c=i.type)==null?void 0:c.entities,[...t,i.label]);u!=null&&u.length&&(a==null||a.push(...u)),r.push({data:s,children:a||[],expanded:!0})}),r}getEntitiesTreeData(){const e=this.formSchemaService.getSchemaEntities();if(!(e!=null&&e.length))return[];const t=e[0];if(!(t!=null&&t.type))return[];const r=this.buildEntityFieldsTreeData(t.type.fields,[t.code]),i=this.buildChildEntityTreeData(t.type.entities,[t.code]);return i!=null&&i.length&&(r==null||r.push(...i)),{entityCode:t.code,fields:[{data:this.createTreeNode(t,[],"code"),children:r||[]}]}}getEntitiesAndVariables(){return{entities:this.getEntitiesTreeData(),variables:{session:{name:"系统变量",items:this.sessionVariables,visible:!1},forms:{name:"表单变量",items:this.getContextFormVariables(),visible:!0}}}}onBeforeOpenExpression(e,t,r){const i=r==="Field"?e.binding.field:e.id,s=this.getExpressionRule(i,t),a=this.getEntitiesAndVariables(),u={message:["validate","required","dataPicking"].includes(t)&&s?s.message:"",...a};return s.messageType!=null&&(u.messageType=s.messageType),u}buildRule(e,t,r,i){const{expression:s,message:a,messageType:u}=t,l={id:`${e}_${r}`,type:r,value:s};return(r==="validate"||r==="dataPicking"||r==="required")&&(l.message=a),r==="dataPicking"&&(l.messageType=u),r==="validate"&&i&&(l.elementId=i),l}getExpressionData(){const{expressions:e}=this.formSchemaService.getFormSchema().module;return e||[]}updateExpression(e,t,r,i){const s=t==="Field"?e.binding.field:e.id,a=this.buildRule(s,r,i,e.type==="form-group"?e.id:"");let l=this.getExpressionData().find(d=>d.targetType===t&&d.target===s);const c=d=>d.value.trim()==="";if(l){const d=l.rules.find(f=>f.id===a.id);if(d)c(a)?l.rules=l.rules.filter(f=>f.id!==a.id):(Object.assign(d,a),i==="validate"&&e.type==="form-group"&&(d.elementId=e.id));else{if(c(a))return null;l.rules=l.rules||[],l.rules.push(a)}}else{if(c(a))return null;l={target:`${s}`,rules:[a],targetType:t}}return l}getExpressionEditorOptions(e,t,r,i){return r.reduce((s,a)=>{var l,c;const u=t==="Field"?(l=e==null?void 0:e.binding)==null?void 0:l.field:e.id;return s[a]={hide:t==="Field"?!!((c=e==null?void 0:e.binding)!=null&&c.field):!1,description:"",title:this.expressionNames[a],type:"string",$converter:this.getExpressionConverter(u),refreshPanelAfterChanged:!0,editor:{type:"expression-editor",singleExpand:!1,dialogTitle:`${this.expressionNames[a]}编辑器`,showMessage:a==="validate"||a==="dataPicking"||a==="required",showMessageType:a==="dataPicking",beforeOpen:()=>this.onBeforeOpenExpression(e,a,t),onSubmitModal:d=>{const f=this.updateExpression(e,t,d,a);if(i){const h=this.buildRule(u,d,a);i(h)}return f}}},s},{})}getExpressionInfo(e,t,r){const i=t==="Field"?e.binding.field:e.id,s=this.getExpressionRule(i,r),a={value:s&&s.value,targetId:i,targetType:t,expressionType:r};return s&&s.message&&(a.message=s.message),a}getExpressionConfig(e,t,r=["compute","dependency","validate"],i){return{description:"表达式",title:"表达式",hide:!e.binding,properties:{...this.getExpressionEditorOptions(e,t,r,i)}}}getExpressionOptions(e,t,r){const i=this.getExpressionInfo(e,t,r);return{dialogTitle:`${this.expressionNames[r]}编辑器`,singleExpand:!1,showMessage:r==="required",beforeOpen:()=>this.onBeforeOpenExpression(e,r,t),expressionInfo:i}}}class Sr{constructor(e,t){oe(this,"componentId");oe(this,"viewModelId");oe(this,"eventsEditorUtils");oe(this,"formSchemaUtils");oe(this,"formMetadataConverter");oe(this,"designViewModelUtils");oe(this,"designViewModelField");oe(this,"controlCreatorUtils");oe(this,"designerHostService");oe(this,"designerContext");oe(this,"schemaService",null);oe(this,"metadataService",null);oe(this,"propertyConfig",{type:"object",categories:{}});var r;this.componentId=e,this.designerHostService=t,this.eventsEditorUtils=t.eventsEditorUtils,this.formSchemaUtils=t.formSchemaUtils,this.formMetadataConverter=t.formMetadataConverter,this.viewModelId=((r=this.formSchemaUtils)==null?void 0:r.getViewModelIdByComponentId(e))||"",this.designViewModelUtils=t.designViewModelUtils,this.controlCreatorUtils=t.controlCreatorUtils,this.metadataService=t.metadataService,this.schemaService=t.schemaService,this.designerContext=t.designerContext}getFormDesignerInstance(){var e,t;return(t=(e=this.designerContext)==null?void 0:e.instances)==null?void 0:t.formDesigner.value}getTableInfo(){var e;return(e=this.schemaService)==null?void 0:e.getTableInfoByViewModelId(this.viewModelId)}setDesignViewModelField(e){var r;const t=e.binding&&e.binding.type==="Form"&&e.binding.field;if(t){if(!this.designViewModelField){const i=this.designViewModelUtils.getDgViewModel(this.viewModelId);this.designViewModelField=i.fields.find(s=>s.id===t)}e.updateOn=(r=this.designViewModelField)==null?void 0:r.updateOn}}getBasicPropConfig(e){return{description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"combo-list",textField:"name",valueField:"value",idField:"value",editable:!1,data:[{value:e.type,name:R[e.type]&&R[e.type].name}]}}}}}getAppearanceConfig(e=null,t={},r){const i={title:"外观",description:"Appearance"},s={class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter",parentPropertyID:"appearance"},style:{title:"style样式",type:"string",description:"组件的样式",$converter:"/converter/appearance.converter",parentPropertyID:"appearance"}};for(const a in t)s[a]=Object.assign(s[a]||{},t[a]);return{...i,properties:{...s},setPropertyRelates(a,u){if(a){switch(a&&a.propertyID){case"class":case"style":{nn.value++;break}}r&&r(a,e,u)}}}}getPropertyEditorParams(e,t=[],r="visible",i={},s={},a=""){const{getVariables:u,getControlName:l,getStateMachines:c}=wr(this.designerHostService),d=this.getRealTargetType(e),f=t&&t.length>0?t:["Const","Variable","StateMachine","Expression"],h={type:"property-editor",propertyTypes:f};return f.map(g=>{switch(g){case"Const":Object.assign(h,{constType:"enum",constEnums:[{id:!0,name:"是"},{id:!1,name:"否"}]},i);break;case"Expression":h.expressionConfig=this.getExpressionOptions(e,d,a||r);break;case"StateMachine":h.stateMachines=c();break;case"Variable":Object.assign(h,{controlName:l(e),newVariablePrefix:"is",newVariableType:"Boolean",variables:u(this.viewModelId),onBeforeOpenVariables:p=>{p.value=u(this.viewModelId)}},s);break}}),h}getVisibleProperty(e,t=""){var s;let r=["Const","Variable","StateMachine","Expression"];return t==="gridFieldEditor"?r=["Const","Expression"]:t==="form-group"&&!((s=e.binding)!=null&&s.field)&&(r=["Const","Variable","StateMachine"]),{visible:{title:"是否可见",type:"boolean",description:"运行时组件是否可见",editor:this.getPropertyEditorParams(e,r,"visible")}}}getBehaviorConfig(e,t="",r={},i){const s={title:"行为",description:""},a=this.getVisibleProperty(e,t);for(const l in r)a[l]=Object.assign(a[l]||{},r[l]);const u=this;return{...s,properties:{...a},setPropertyRelates(l,c){if(l){switch(l.propertyID){case"disabled":case"readonly":case"visible":u.afterMutilEditorChanged(e,l);break}i&&i(l,c)}}}}afterMutilEditorChanged(e,t){this.addNewVariableToViewModel(t,this.viewModelId),this.updateExpressionValue(t),this.clearExpression(t,e)}updateElementByParentContainer(e,t){const r=t&&t.parent&&t.parent.schema;if(!r)return;const i=r.contents.findIndex(a=>a.id===e),s=ce.cloneDeep(r.contents[i]);r.contents.splice(i,1),r.contents.splice(i,0,s),tn()}addNewVariableToViewModel(e,t){const r=e.propertyValue;if(!(r&&typeof r=="object")||!(r.type==="Variable"&&r.isNewVariable))return;const a={id:r.field,category:"locale",code:r.fullPath,name:r.fullPath,type:r.newVariableType||"String"};delete r.newVariableType,delete r.isNewVariable,this.formSchemaUtils.getVariableByCode(a.code)||this.formSchemaUtils.getViewModelById(t).states.push(a)}updateExpressionValue(e){const t=e.propertyValue;if(!((t&&t.type)==="Expression"&&t.expressionInfo))return;const{expressionId:s,expressionInfo:a}=t,{targetId:u,targetType:l,expressionType:c,value:d,message:f}=a,h=this.formSchemaUtils.getModule();h.expressions=h.expressions||[];const{expressions:g}=h;let p=g.find(S=>S.target===u);p||(p={target:u,rules:[],targetType:l},g.push(p));const m=p.rules.find(S=>S.type===c);if(m)m.value=d,m.message=f;else{const S={id:s,type:c,value:d,message:f};p.rules.push(S)}delete t.expressionInfo}clearExpression(e,t){const r=e.propertyValue;if(r&&r.type==="Expression")return;const s=e.propertyID,a=this.formSchemaUtils.getExpressions(),u=t.binding?t.binding.field:t.id,l=a.find(c=>c.target===u);!l||!l.rules||(l.rules=l.rules.filter(c=>c.type!==s))}getExpressionOptions(e,t,r){return new xr(this.formSchemaUtils).getExpressionOptions(e,t,r)}getRealTargetType(e){return["response-toolbar-item","tab-toolbar-item","section-toolbar-item"].indexOf(e.type)>-1?"Button":e.binding&&e.binding.field?"Field":"Container"}createBaseEventProperty(e){const t={};return t[this.viewModelId]={type:"events-editor",editor:{initialData:e,viewSourceHandle:r=>{var i;((i=r.controller)==null?void 0:i.label.indexOf(this.formSchemaUtils.getModule().code))>-1&&this.eventsEditorUtils.jumpToMethod(r)}}},t}}class Tr extends Sr{constructor(e,t){super(e,t)}getPropertyConfig(e){return this.propertyConfig.categories.basic=this.getBasicPropConfig(e),this.propertyConfig.categories.appearance=this.getAppearancePropConfig(e),this.getBehaviorConfig(e),this.getEventPropConfig(e),this.propertyConfig}getAppearancePropConfig(e){const t=this.formSchemaUtils.getViewModelById(this.viewModelId);e.name=t?t.name:null;const r=this;return this.getAppearanceConfig(e,{name:{title:"组件名称",type:"string",description:"组件名称",defaultValue:e.name}},(s,a,u)=>{switch(s.propertyID){case"name":r.syncChangesToViewModel({name:s.propertyValue}),delete a.name;break}})}getEventPropConfig(e){const t=[{label:"onInit",name:"初始化事件"},{label:"onAfterViewInit",name:"视图初始化后事件"}],r=this,i=r.eventsEditorUtils.formProperties(e,r.viewModelId,t),s=r.createBaseEventProperty(i);this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:s,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(a,u){const l=a.propertyValue;delete e[r.viewModelId],l&&(l.setPropertyRelates=this.setPropertyRelates,r.eventsEditorUtils.saveRelatedParameters(e,r.viewModelId,l.events,l))}}}getBehaviorConfig(e){const t=this.formSchemaUtils.getViewModelById(this.viewModelId),r=t?t.enableValidation:null,i=this;this.propertyConfig.categories.behavior={title:"行为",description:"",properties:{enableValidation:{title:"启用校验",type:"boolean",description:"运行时组件是否启用校验",defaultValue:r}},setPropertyRelates:s=>{if(s)switch(s.propertyID){case"enableValidation":{i.syncChangesToViewModel({enableValidation:s.propertyValue}),delete e.enableValidation;break}}}}}syncChangesToViewModel(e){const t=this.formSchemaUtils.getViewModelById(this.viewModelId);t&&Object.assign(t,e)}}const Fr={showCloseButton:{type:Boolean,default:!0},position:{type:String,default:"top-center"},timeout:{type:Number,default:3e3},theme:{type:String,default:"bootstrap"},left:{type:Number},right:{type:Number},top:{type:Number},bottom:{type:Number},id:{type:String},animate:{type:String,default:"fadeIn"},options:{type:Object},safeHtml:{type:Boolean,default:!0}},Vr={showCloseButton:{type:Boolean,default:!0},animate:{type:String,default:"fadeIn"},options:{type:Object}},Tt=o.defineComponent({name:"Toast",props:Vr,emits:["close","click"],setup:(n,e)=>{const{locale:t,t:r}=bt.useI18n(),i=o.ref(n.animate),s="fadeOut",a=o.computed(()=>n.options),u=o.ref(!1),l=o.computed(()=>a.value.title&&a.value.message),c=o.computed(()=>!a.value.title&&a.value.message),d=o.computed(()=>{const F={animated:u.value,toast:!0,"toast--only-content":!l.value};return F[n.animate]=!1,F[s]=u.value,F["toasty-type-"+a.value.type]=!0,a.value.theme&&(F[a.value.theme]=!0),F}),f=o.computed(()=>{const b=`f-icon-${a.value&&a.value.type?a.value.type.replace("toasty-type-",""):"default"}`,k={"f-icon":!0};return k[b]=!0,k}),h=o.computed(()=>a.value.title||a.value.message),g=o.computed(()=>n.showCloseButton),p=o.computed(()=>!!a.value.buttons||!!e.slots.default),m=o.computed(()=>t.value==="en"?{wordBreak:"keep-all",overflowWrap:"break-word"}:{});function S(F){F.stopPropagation(),F.preventDefault(),u.value=!1,setTimeout(()=>{e.emit("close",a.value)},200)}function N(F,v){}function B(F){return`f-preten-link ${F.customClass?F.customClass:""}`}o.watch(i,()=>{i.value});const O=()=>{var F;return o.createVNode(o.Fragment,null,[o.createVNode("div",{class:"after-toast-msg text-right"},[!e.slots.default&&((F=a.value.buttons)==null?void 0:F.map(v=>o.createVNode("span",{class:B(v),onClick:b=>void 0},[v.text]))),e.slots.default&&e.slots.default()])])};return()=>o.createVNode("div",{class:d.value,style:"min-height:44px"},[g.value&&o.createVNode("button",{title:r("messageBox.close"),class:"toast-close f-btn-icon f-bare",onClick:S},[o.createVNode("span",{class:"f-icon modal_close"},null)]),h.value&&o.createVNode("section",{class:"modal-tips"},[!l.value&&o.createVNode("div",{class:"float-left modal-tips-iconwrap"},[o.createVNode("span",{class:f.value},null)]),o.createVNode("div",{class:"modal-tips-content"},[l.value&&o.createVNode(o.Fragment,null,[o.createVNode("h5",{class:"toast-title modal-tips-title",innerHTML:a.value.title},null),o.createVNode("p",{class:"toast-msg",innerHTML:a.value.message,style:m.value},null),p.value&&O()]),c.value&&(a.value.buttons?o.createVNode("div",{class:"toast-title-btns-wrapper d-flex"},[o.createVNode("h5",{class:"toast-title modal-tips-title only-toast-msg",style:m.value,innerHTML:a.value.message},null),o.createVNode("div",{class:"after-toast-title text-right ml-auto"},[O()])]):o.createVNode("h5",{class:"toast-title modal-tips-title only-toast-msg",style:m.value,innerHTML:a.value.message},null))])])])}}),pt=o.defineComponent({name:"Notify",props:Fr,emits:["close","empty"],setup(n,e){const t=o.computed(()=>({"farris-notify":!0})),r={left:12,right:12,top:20,bottom:12},i=o.ref(),s=o.ref(n.options),a=o.ref(n.showCloseButton),u=o.computed(()=>n.position||"bottom-right"),l=o.computed(()=>n.timeout!=null?n.timeout:3e3),c=o.computed(()=>{const h=n.bottom?n.bottom:r.bottom,g=n.top?n.top:r.top,p={transition:"all 0.2s ease",left:u.value.indexOf("left")>-1?`${n.left?n.left:r.left}px`:"",right:u.value.indexOf("right")>-1?`${n.right?n.right:r.right}px`:"",top:u.value.indexOf("top")>-1?`${g}px`:"",bottom:u.value.indexOf("bottom")>-1?`${h}px`:""};return u.value.indexOf("center")>-1&&(p.left="50%",p.marginLeft="calc(-24rem / 2)",u.value==="center-center"&&(p.top="50%",p.transform="translate(-50%, -50%)")),p});function d(h){e.emit("close")}l.value&&setTimeout(()=>{d()},l.value),e.expose({closeToast:d,container:i,notifyPosition:u});function f(h,g){d()}return()=>o.createVNode("div",{class:t.value,style:c.value,ref:i},[o.createVNode(Tt,{options:s.value,showCloseButton:a.value,animate:n.animate,onClose:h=>f(h,s.value)},null)])}});class Ft{constructor(){oe(this,"notifyRefs",[]);oe(this,"globalConfig",o.reactive({}))}escapeAllHtml(e){if(typeof e!="string"||!e)return"";const t=document.createElement("div");return t.textContent=e||"",t.innerHTML.replace(/\\n/g,"<br>").replace(/\\t/g," ").replace(/\\r/g,"")}createNotifyInstance(e){const t=this,i=Object.assign({timeout:3e3,position:"bottom-right",showCloseButton:!0,safeHtml:!0},this.globalConfig,{...e}),s=document.createElement("div");s.style.display="contents";const a=o.createApp({setup(){var c;const u=o.ref();function l(){u.value.container.style.transform="scale(0)",setTimeout(()=>{t.updateNotifyPositionForClose(i,u),a.unmount()},220)}if(i.position.indexOf("top")>-1){const d=t.getNotifyInstances(i.position),f=d[d.length-1];if(f){const h=f.value.container.getBoundingClientRect();i.top=h.bottom}}return i.safeHtml&&((c=i.options)!=null&&c.message)&&(i.options.message=t.escapeAllHtml(i.options.message)),o.onUnmounted(()=>{document.body.removeChild(s)}),o.onMounted(()=>{t.updateNotifyPositionForCreate(i,u)}),()=>o.createVNode(o.Transition,{mode:"out-in",name:"fade",appear:!0},{default:()=>[o.createVNode(pt,o.mergeProps({ref:u},i,{onClose:l}),null)]})}});return a.provide("NotifyService",this),document.body.appendChild(s),a.use(dt.LocaleService.i18n),a.mount(s),a}getNotifyInstances(e){return this.notifyRefs.filter(t=>t.value.notifyPosition===e)}updateNotifyPositionForCreate(e,t){if(this.notifyRefs&&this.notifyRefs.length){const r=window.innerHeight;e.position.indexOf("bottom")>-1&&this.getNotifyInstances(e.position).forEach(i=>{const s=i.value.container.getBoundingClientRect();i.value.container.style.bottom=s.height+r-s.bottom+"px"})}this.notifyRefs=[...this.notifyRefs,t]}updateNotifyPositionForClose(e,t){const r=this.notifyRefs.indexOf(t);if(e.position.indexOf("top")>-1){const i=this.getNotifyInstances(e.position),s=i.indexOf(t);i.slice(s+1).forEach(a=>{a.value.container.style.top=a.value.container.offsetTop-a.value.container.offsetHeight+"px"})}r>-1&&this.notifyRefs.splice(r,1)}show(e){return this.createNotifyInstance(e)}buildNotifyProps(e,t){let r="",i="",s,a,u;typeof t=="string"?r=t:t&&(r=t.message||"",i=t.title||"",a=t.position||null,u=t.showCloseButton!=null?t.showCloseButton:null,s=t.timeout!=null?t.timeout:null);const c={options:{type:e,message:r,title:i}};return a!=null&&(c.position=a),u!=null&&(c.showCloseButton=u),s!=null&&(c.timeout=s),c}info(e){const t=this.buildNotifyProps("info",e);return this.show(t)}success(e){const t=this.buildNotifyProps("success",e);return this.show(t)}warning(e){const t=this.buildNotifyProps("warning",e);return this.show(t)}error(e){const t=this.buildNotifyProps("error",e);return this.show(t)}close(e){e&&e.unmount()}closeAll(){this.notifyRefs.forEach(e=>{e==null||e.value.closeToast()}),this.notifyRefs.length=0}}const Nr=Symbol("NOTIFY_SERVICE_TOKEN");pt.install=n=>{n.component(pt.name,pt),n.component(Tt.name,Tt);const e=new Ft;n.provide(Nr,e),n.provide("FNotifyService",e)};const Mr={designerHostService:{type:Object,default:{}},componentType:{type:String,default:""},bindingEntityId:{type:String,default:""},steps:{type:Array,default:["selectEntity","selectFields"]}};`${dt.LocaleService.getLocaleValue("datagrid.loadingMessage")}`;const Er={customClass:{type:String,default:""},sort:{type:Object},filter:{type:Object},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:{autoCancelParent:!0,autoCheckChildren:!1,autoCheckParent:!1,selectionRange:"All"},parentIdField:"parent"}},id:{type:String,default:""},idField:{type:String,default:"id",require:!0},loadData:{type:Function},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:dt.LocaleService.getLocaleValue("datagrid.lineNumberTitle")}},rowOption:{type:Object,default:{wrapContent:!1}},selection:{type:Object,default:{enableSelectRow:!0,multiSelect:!1,multiSelectMode:"DependOnCheck",showCheckbox:!1,showSelectAll:!1,showSelection:!1}},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},emptyTemplate:{type:Object},summary:{type:Object,default:{enable:!1,groupFields:["numericField1","numericField2"]}}};function Br(n,e,t,r,i,s,a,u,l,c,d,f,h,g,p,m,S){const{calculateCellPositionInRow:N}=s,{columnContext:B,hasLeftFixedColumn:O,hasRightFixedColumn:F}=a,{gridDataStyle:v,leftFixedGridDataStyle:b,rightFixedGridDataStyle:k}=g,{renderDataRow:y}=ne.getHierarchyRow(n,e,B,S,u,l,c,d,f,h,g,p,m),x=[y];function T(j,_){const J=N(j);return S.value.filter($=>$.visible!==!1).map(($,P)=>x[$.type]($,J,_,P))}function C(){return o.createVNode("div",{ref:r,class:"fv-grid-content-left-fixed"},[o.createVNode("div",{class:"fv-grid-data",style:b.value},[T(B.value.leftColumns.filter(j=>j.visible),"left")])])}function w(){return o.createVNode("div",{ref:t,class:"fv-grid-content-primary"},[o.createVNode("div",{class:"fv-grid-data",style:v.value},[T(B.value.primaryColumns.filter(j=>j.visible),"primary")])])}function E(){return o.createVNode("div",{ref:i,class:"fv-grid-content-right-fixed"},[o.createVNode("div",{class:"fv-grid-data",style:k.value},[T(B.value.rightColumns.filter(j=>j.visible),"right")])])}function V(){const j=[];return O.value&&j.push(C()),j.push(w()),F.value&&j.push(E()),j}return{renderDataArea:V}}const Vt=o.defineComponent({name:"FTreeGrid",props:Er,emits:["selectionChange","clickRow","expandNode","unSelectItem","dblclickNode","doubleClickRow","unSelectItem","selectItem","filterChanged","sortChanged","selectionUpdate"],setup(n,e){var yn,vn;const r=((yn=n.rowOption)==null?void 0:yn.height)||28,i=o.ref(20),s=o.ref(n.columns),a=ne.useIdentify(n),{idField:u}=a,l=o.ref(),c=o.ref(),d=o.ref(),f=o.ref(),h=o.ref(),g=o.ref([]),p=o.ref(!1),m=o.ref(((vn=n.rowOption)==null?void 0:vn.wrapContent)||!1),S=ne.useGroupData(n,a),N=ne.useFilter(n,e),B=ne.useHierarchy(n),{collapseField:O}=B,{showLoading:F,renderLoading:v}=ne.useLoading(n,l),b=ne.useDataView(n,new Map,N,B,a),{dataView:k}=b,y=ne.useSelection(n,b,a,g,e),{showSelection:x,selectedValues:T}=y,C=ne.useSelectHierarchyItem(n,g,b,a,y,e),w=o.computed(()=>n.disabled),E=o.computed(()=>n.virtualized?Math.min(b.dataView.value.length,i.value):b.dataView.value.length),V=ne.usePagination(n,b),{shouldRenderPagination:j}=V,{containerStyleObject:_}=ne.useDataViewContainerStyle(n),J=ne.useCommandColumn(n),{applyCommands:$}=J;$(s);const{applyColumnSetting:P,removeColumnSetting:Y}=ne.useSettingColumn(n);n.showSetting&&P(s);const G=ne.useColumn(n,e),Z=ne.useSort(n),{applyColumnSorter:le,columnContext:de,updateColumnRenderContext:K}=G;le(b,Z);const ue=ne.useGroupColumn(n,de),he=ne.useRow(n,e,y,a),ae=ne.useEdit(n,e,a,he,g),X=ne.useVisualDataBound(n),se=ne.useVisualDataCell(n,ae,X),ze=ne.useVisualDataRow(n,b,ae,B,a,X,se),De=ne.useVisualData(n,s,b,E,0,ze),{getVisualData:Ee}=De,Ze=ne.useCellPosition(n,de),Ge=ne.useSidebar(n,y),{sidebarWidth:Ke}=Ge,pe=ne.useVirtualScroll(n,b,g,de,De,E,0,Ke),{onWheel:rt,dataGridWidth:$e,viewPortHeight:Re,viewPortWidth:Be,resetScroll:qe,updateVisibleRowsOnLatestVisibleScope:it}=pe,_e=ne.useFitColumn(n,de,c,Be,ue),{calculateColumnsSize:Ie}=_e,Le=ne.useFilterHistory(),et=ne.useColumnFilter(c,h,b,Le,pe),tt=ne.useDragColumn(n,e,G,b,ue,S,pe),D=o.computed(()=>{const W={"fv-grid":!0,"fv-grid-bordered":n.showBorder,"fv-grid-horizontal-bordered":n.showHorizontalLines,"fv-datagrid-strip":n.showStripe};return Ne.getCustomClass(W,n.customClass)}),te=o.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":p.value,"fv-grid-wrap-content":m.value})),{renderDataArea:me}=Br(n,e,d,f,h,Ze,G,b,ae,B,he,y,C,pe,De,X,g),{renderGridHeader:ge,renderGridColumnResizeOverlay:Oe,shouldShowHeader:Bt}=ne.getColumnHeader(n,e,c,f,h,G,b,tt,et,N,Le,_e,ue,y,Ge,Z,pe,Be,g),{renderDataGridSidebar:kt}=ne.getSidebar(n,he,y,Ge,pe),{renderDisableMask:jt}=ne.getDisableMask(),{renderHorizontalScrollbar:It}=ne.getHorizontalScrollbar(n,c,pe),{renderVerticalScrollbar:Ot}=ne.getVerticalScrollbar(n,c,pe);function Pt(){var W,ee,ve;if(c.value&&c.value.clientHeight>0&&((W=c.value)==null?void 0:W.clientWidth)>0){const we=Math.ceil(c.value.clientHeight/r);we>i.value&&(i.value=we,it()),Re.value=((ee=d.value)==null?void 0:ee.clientHeight)||0,$e.value=((ve=c.value)==null?void 0:ve.clientWidth)||0,Ie()}}o.onMounted(()=>{c.value&&(i.value=Math.max(Math.ceil(c.value.clientHeight/r),i.value),g.value=Ee(0,E.value+0-1),Cn.useResizeObserver(c.value,Pt),Ie(),o.nextTick(()=>{c.value&&($e.value=c.value.clientWidth),d.value&&(Be.value=d.value.clientWidth,Re.value=d.value.clientHeight)})),F.value&&v()}),o.onUnmounted(()=>{}),o.watch(Be,()=>{c.value&&Ie()});function Dt(W){b.collapseTo(W),b.reOrderVisibleIndex(),qe()}function yt(W){b.expandTo(W),b.reOrderVisibleIndex(),qe()}function at(){const W=y.getSelectionRow();return W?W.dataIndex-1:-1}function $t(){const W=at();b.insertNewDataItem(W),g.value=Ee(0,E.value+0-1)}function Rt(){const W=at();b.insertNewChildDataItem(W),g.value=Ee(0,E.value+0-1)}function qt(W,ee){const ve=g.value.find(Fe=>Fe.raw[u.value]===ee),we=ve?ve.dataIndex-1:-1;b.insertNewChildDataItems(W,we)}function Lt(){const W=at(),ee=C.getNextSelectableHierarchyItemId(W);b.removeHierarchyDataItem(W),g.value=Ee(0,E.value+0-1),ee&&C.selectItemById(ee)}function vt(W){ae.onEditingRow(W)}function At(W){ae.acceptEditingRow(W)}function M(W){ae.cancelEditingRow(W)}function q(W){W&&(s.value=W,$(s),K(s.value),le(b,Z),Ie())}o.watch(()=>n.columns,W=>{q(W)});function H(W,ee){W&&(b.load(W),b.reOrderVisibleIndex(),ee!=null&&ee.keepScrollPosition?pe.scrollTo(pe.offsetY.value):qe())}function Q(W){C.selectItemById(W)}function re(W){const ee=g.value.find(ve=>ve.raw[a.idField.value]===W);ee&&he.clickRowItem(ee)}function ie(W){he.activeRowById(W)}function Ve(W){C.selectItemByIds(W)}function xe(){return y.getSelectedItems()}function Se(){y.clearSelection()}const ke=o.computed(()=>!g.value||!g.value.length),{renderEmpty:ye}=ne.getEmpty(n,e);function je(){return y.getSelectionRow()}function Te(W){C.unSelectItemByIds(W)}function Ce(){return y.currentSelectedDataId.value}function st(W,ee,ve){const we=k.value.find(Fe=>Fe[u.value]===W);if(we){if(Object.keys(we).forEach(be=>{Object.prototype.hasOwnProperty.call(ee,be)&&(we[be]=ee[be])}),ve){const{collapseField:be,disabledField:He,checkedField:We,visibleField:Ye}=ve;be&&!ce.isUndefined(ee[be])&&(we.__fv_collapse__=ee[be]),We&&!ce.isUndefined(ee[We])&&(we.__fv_checked__=ee[We]),He&&!ce.isUndefined(ee[He])&&(we.__fv_disabled__=ee[He]),Ye&&!ce.isUndefined(ee[Ye])&&(we.__fv_visible__=ee[Ye])}const Fe=g.value.find(be=>be.raw[u.value]===W),bn=g.value.findIndex(be=>be.raw[u.value]===W);if(Fe){if(Fe.raw=we,Object.keys(Fe.data).forEach(be=>{Fe.data[be].updateData(we)}),ve){const{collapseField:be,disabledField:He,checkedField:We,visibleField:Ye}=ve;be&&!ce.isUndefined(ee[be])&&(Fe.collapse=ee[be]),We&&!ce.isUndefined(ee[We])&&(Fe.checked=ee[We]),He&&!ce.isUndefined(ee[He])&&(Fe.disabled=ee[He]),Ye&&!ce.isUndefined(ee[Ye])&&(Fe.visible=ee[Ye])}g.value=[...g.value.slice(0,bn),Fe,...g.value.slice(bn+1)],b.updateSummary()}}}function lt(W){return Object.prototype.hasOwnProperty.call(W,"raw")?b.hasRealChildren(W.raw):b.hasRealChildren(W)}function ct(W){const ee=b.dataView.value.find(ve=>ve[u.value]===W);return ee?ee[O.value]:""}function Di(){return O.value}o.watch(()=>n.showSetting,(W,ee)=>{W!==ee&&(W?P(s):Y(s),q(s.value))});function $i(W){return g.value.filter(ee=>W.includes(ee.raw[n.idField]))}function Ri(W){const ee=a.idField.value,ve=g.value.find(we=>we.raw[ee]===W);ve&&he.changeRow(ve)}function qi(){y.keepSelectingOnPaging.value||Se(),b.updateVisibleDataSummary(g.value)}e.expose({activeRowById:ie,addNewDataItem:$t,addNewChildDataItem:Rt,addChildrenToNode:qt,collapseTo:Dt,expandTo:yt,removeDataItem:Lt,editDataItem:vt,acceptDataItem:At,cancelDataItem:M,updateColumns:q,updateDataSource:H,selectItemById:Q,selectItemByIds:Ve,getSelectedItems:xe,clearSelection:Se,getSelectionRow:je,clickRowItemById:re,unSelectItemByIds:Te,getCurrentRowId:Ce,reassignRowData:st,hasChildren:lt,getCollapseField:Di,getCollapseStatusById:ct,getVisibleDataByIds:$i,selectRowById:Ri,updateDerivedData:qi});const Li=o.computed(()=>{const W={};return pe.shouldShowHorizontalScrollbar.value&&(W.paddingBottom="10px"),pe.shouldShowVirticalScrollbar.value&&(W.paddingRight="10px"),W}),Ai=o.computed(()=>({..._.value,borderRadius:"5px"}));ne.getPagination(n,e,b,pe,V,y);const Ui=o.computed(()=>({"d-flex":!0,"justify-content-between":j.value&&x.value,"justify-content-end":j.value&&!x.value,"position-relative":!0})),zi=o.computed(()=>({"d-flex":!0,"align-items-center":!0})),{renderDataGridSummary:Gi}=ne.getSummary(n,b,G);return()=>o.createVNode("div",{ref:l,class:D.value,style:Ai.value,onWheel:rt},[c.value&&Bt.value&&ge(),o.createVNode("div",{ref:c,class:te.value,onMouseover:()=>p.value=!0,onMouseleave:()=>p.value=!1,style:Li.value},[c.value&&kt(g),c.value&&me(),c.value&&ke.value&&ye(),c.value&&It(),c.value&&Ot()]),c.value&&Gi(),x.value&&o.createVNode("div",{class:Ui.value},[x.value&&o.createVNode("div",{class:zi.value},[o.createVNode("div",null,["已选:"+T.value.length,o.createTextVNode(" 条")])])]),Oe(),w.value&&jt()])}});Ne.withInstall(Vt);function on(n){const{designerHostService:e}=n,t=new Map,r=o.ref(),i=o.ref(),s=o.ref([{field:"name",title:"字段名称"},{field:"bindingField",title:"绑定字段"},{field:"displayedTypeName",title:"字段类型"}]),a={enableSelectRow:!0,multiSelect:!0,multiSelectMode:"OnCheckAndClick",showCheckbox:!0,showSelectAll:!0},u=o.ref(!1),l=o.ref(n.componentType);function c(m){const S=[];return m.forEach(N=>{let B=[];N.type&&N.type.fields&&N.type.fields.length>0&&(B=c(N.type.fields));const O=ce.cloneDeep(N),F=N.multiLanguage?"多语言":N.type.displayName,v=B.length?!1:!t.has(N.id);v&&(u.value=!0),S.push({data:Object.assign({displayedTypeName:F,selectable:v},O),children:B})}),S}function d(m){switch(m){case"data-grid":case"tree-grid":return"data-grid";case"response-form":return"form";default:return m}}function f(m){if(t.clear(),!m)return;let S=d(l.value);["frame","table","form"].includes(S)&&(S="form");const{formSchemaUtils:N,schemaService:B}=e;N.getFormSchema().module.viewmodels.forEach(O=>{if(!O.fields||O.fields.length===0)return;let v=N.getComponentByViewModelId(O.id).componentType;["frame","table","form"].includes(v)&&(v="form");const b=B.getTableInfoByViewModelId(O.id);v!==S||!b||b.id!==m.id||O.fields.forEach(k=>{t.set(k.id,!0)})})}function h(m){f(m);const{fields:S}=m.type;u.value=!1,r.value=c(S),i.value&&i.value.updateDataSource(r.value)}const g={customRowStatus:m=>(m.disabled=!m.raw.selectable,m)};function p(){return i.value.getSelectedItems().map(S=>S.data)}return{fieldTreeGridRef:i,resolveFieldDataSource:h,occupiedFieldMap:t,fieldDataSource:r,fieldTreeRowOption:g,fieldColumns:s,fieldSelectionOption:a,checkAndGetSelectedFields:p,hasSelectableField:u,currentComponentType:l}}function kr(n){const{designerHostService:e}=n,t=new Map,r=o.ref(),i=o.ref(),s=o.ref([{field:"name",title:"实体名称"}]),a=o.ref(),u=o.ref(!1);function l(p){const m=on(n);return m.resolveFieldDataSource(p),m.hasSelectableField.value?(a.value=a.value||p,!0):!1}function c(p){return!(n.bindingEntityId&&n.bindingEntityId!==p.id||!l(p))}function d(p,m=""){var F;if(!p)return;const S=ce.cloneDeep(p),N=m?`${m}/${S.label}`:"/";t.set(S.label,N.replace("//","/"));const B=c(S),O={data:Object.assign({selectable:B},S),children:[]};if(S.type.entities&&S.type.entities.length){const v=S.type.entities.map(b=>d(b,N));O.children=O.children.concat(v)}return n.bindingEntityId===p.id&&(a.value=p),((F=a.value)==null?void 0:F.id)===p.id&&!m&&(u.value=!0),O}function f(){var N;const{formSchemaUtils:p}=e,m=(N=p.getFormSchema().module.entity[0])==null?void 0:N.entities[0];t.clear();const S=d(m);i.value=[S]}function h(){const p=r.value.getSelectedItems();if(!p.length){const m=new Ft;m.globalConfig={position:"top-center"},m.warning({message:"请先选择实体"});return}return p[0].data}return{entityTreeGridRef:r,entityDataSource:i,resolveEntityDataSource:f,entityBindToMap:t,checkAndGetSelectedEntity:h,entityColumns:s,entityTreeRowOption:{customRowStatus:p=>(p.disabled=!p.raw.selectable,p)},initialSelectedEntity:a,isMainEntityInitialSelected:u}}const jr=new Map([["appearance",xt]]);function Ir(n,e,t){return e}const Or={$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"]},Pr={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:[]}}}}}},rn={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:()=>{}}};Je(rn,Or,jr,Ir,Pr);const Dr=o.defineComponent({name:"FStep",props:rn,emits:["click"],setup(n,e){const t=o.ref(n.direction),r=o.ref(n.fill),i=o.ref(n.height),s=o.ref(n.steps),a=o.ref(n.activeIndex),u=o.computed(()=>({"f-progress-step-list":t.value==="horizontal","f-progress-step-list-block":t.value==="vertical","f-progress-step-horizontal-fill":t.value==="horizontal"&&r.value,"f-progress-step-vertical-fill":t.value==="vertical"&&r.value})),l=o.computed(()=>({height:t.value==="vertical"?`${i.value}px`:""}));function c(F,v){const b={step:!0,active:v===a.value,clickable:n.clickable,current:v===a.value,finish:v<a.value};return F.status&&(b[F.status]=!0),Ne.getCustomClass(b,F.class||"")}function d(F,v){if(!n.clickable)return;const b={step:F,stepIndex:v};e.emit("click",b)}function f(F,v){const b={"f-progressstep-row":!0,"step-active":v===a.value,"step-current":v===a.value,"step-finish":v<a.value};return F.status&&(b["step-"+F.status]=!0),b}function h(F,v){const b={"step-icon":!0,"step-success":v,"f-icon":v,"f-icon-check":v};return Ne.getCustomClass(b,F.icon||"")}function g(F,v){const b=[];return F.icon?b.push(o.createVNode("span",{class:h(F,!1)},null)):v>=a.value?b.push(o.createVNode("span",{class:"step-icon"},[v+1])):b.push(o.createVNode("span",{class:h(F,!0)},null)),b}function p(F,v){return{"step-name":!0,"step-name-success":v<a.value}}function m(F,v){return o.createVNode("div",{class:"f-progress-step-title"},[o.createVNode("p",{class:p(F,v)},[F.title])])}function S(F,v){return{"f-progress-step-line":!0,"f-progress-step-line-success":v===a.value}}function N(F,v){return v!==s.value.length-1}const B=o.computed(()=>({triangle:!0,"":t.value==="vertical"}));function O(){return s.value.map((F,v)=>o.createVNode("li",{class:c(F,v),onClick:b=>d(F,v)},[o.createVNode("div",{class:f(F,v)},[o.createVNode("div",{class:"f-progress-step-content"},[g(F,v),m(F,v)]),N(F,v)&&o.createVNode("div",{class:S(F,v)},[o.createVNode("span",{class:B.value},null)])])]))}return o.watch(()=>n.activeIndex,()=>{n.activeIndex>-1&&n.activeIndex<=s.value.length&&(a.value=n.activeIndex,O())}),()=>o.createVNode("div",{class:"f-progress-step"},[o.createVNode("ul",{class:u.value,style:l.value},[O()])])}}),Nt=new Map([["appearance",xt]]),$r=new Map([]),Rr="root-viewmodel";class qr{constructor(e,t){oe(this,"formSchemaUtils");oe(this,"controlCreatorUtils");oe(this,"designViewModelUtils");this.resolver=e,this.designerHostService=t,this.formSchemaUtils=this.designerHostService.formSchemaUtils,this.controlCreatorUtils=this.designerHostService.controlCreatorUtils,this.designViewModelUtils=this.designerHostService.designViewModelUtils}createComponent(e){const t=this.createComponentRefNode(e),r=this.createComponentNode(e),i=this.createViewModeNode(e),s=this.formSchemaUtils.getFormSchema();return s.module.viewmodels.push(i),s.module.components.push(r),this.designViewModelUtils.assembleDesignViewModel(),t}createComponentRefNode(e){const t=this.resolver.getSchemaByType("component-ref");return Object.assign(t,{id:`${e.componentId}-component-ref`,component:`${e.componentId}-component`}),t}createComponentNode(e){const t=this.resolver.getSchemaByType("component"),r=this.createFormComponentContents(e);return Object.assign(t,{id:`${e.componentId}-component`,viewModel:`${e.componentId}-component-viewmodel`,componentType:e.componentType,appearance:{class:this.getFormComponentClass()},formColumns:e.formColumns,contents:r}),t}getFormComponentClass(){const{templateId:e}=this.formSchemaUtils.getFormSchema().module;return e==="double-list-in-tab-template"?"f-struct-wrapper f-utils-fill-flex-column":"f-struct-wrapper"}createFormComponentContents(e){const t=this.resolver.getSchemaByType("section");Object.assign(t,{id:e.componentId+"-form-section",appearance:{class:"f-section-form f-section-in-mainsubcard"},mainTitle:e.componentName});const r=this.resolver.getSchemaByType("response-form"),i=[];Object.assign(r,{id:e.componentId+"-form",appearance:{class:"f-form-layout farris-form farris-form-controls-inline"},contents:i}),t.contents=[r];const{selectedFields:s}=e;s==null||s.forEach(u=>{if(u.$type===Ne.FormSchemaEntityField$Type.SimpleField){const l=ce.cloneDeep(u),c=this.resolveControlClassByFormColumns(e),d=this.controlCreatorUtils.setFormFieldProperty(l,"",c);d&&i.push(d)}});const{templateId:a}=this.formSchemaUtils.getFormSchema().module;return a==="double-list-in-tab-template"&&(t.appearance.class="f-section-grid f-section-in-main px-0 pt-0",t.fill=!0),[t]}resolveControlClassByFormColumns(e){let t="";switch(e.formColumns){case 1:{t="col-12";break}case 2:{t="col-12 col-md-6 col-xl-6 col-el-6";break}case 3:{t="col-12 col-md-6 col-xl-4 col-el-4";break}case 4:{t="col-12 col-md-6 col-xl-3 col-el-2";break}}return t}createViewModeNode(e){return{id:`${e.componentId}-component-viewmodel`,code:`${e.componentId}-component-viewmodel`,name:e.componentName,bindTo:e.bindTo,parent:Rr,fields:this.assembleViewModelFields(e),commands:[],states:[],enableValidation:!0}}assembleViewModelFields(e){const t=[],{selectedFields:r}=e;return r==null||r.forEach(i=>{if(i.$type===Ne.FormSchemaEntityField$Type.SimpleField){let s="blur";const a=i.type.name;(a===Ne.FormSchemaEntityFieldTypeName.Enum||a===Ne.FormSchemaEntityFieldTypeName.Boolean)&&(s="change"),t.push({type:"Form",id:i.id,fieldName:i.bindingField,groupId:null,groupName:null,updateOn:s,fieldSchema:{}})}}),t}}function Lr(n,e,t,r){var s,a,u,l,c,d;const i=t.parentComponentInstance;if(i&&r){const f=(s=i.schema)==null?void 0:s.type,g={componentId:`form-${Math.random().toString(36).slice(2,6)}`,componentName:((a=t.bindingSourceContext)==null?void 0:a.entityTitle)||((l=(u=t.bindingSourceContext)==null?void 0:u.bindingEntity)==null?void 0:l.name)||"标题",componentType:"form",formColumns:f==="splitter-pane"?1:4,parentContainerId:i.schema.id,bindTo:((c=t.bindingSourceContext)==null?void 0:c.bindTo)||"/",selectedFields:(d=t.bindingSourceContext)==null?void 0:d.bindingEntityFields};return new qr(n,r).createComponent(g)}else return e}function Ar(n,e,t){return e}Je({customClass:{type:String,default:""},customStyle:{type:String,defaut:""},visible:{type:Boolean,default:!0},adaptForLanguage:{type:Boolean,default:!0}},{$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:[]},visible:{description:"",type:"boolean",default:!0},labelAutoOverflow:{description:"",type:"boolean",default:!1},adaptForLanguage:{description:"",type:"boolean",default:!0}},required:["id","type","contents"]},Nt,Lr);const an={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/form-group.schema.json",title:"form-group",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a form group",type:"string"},type:{description:"The type string of form group component",type:"string",default:"form-group"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},enableLinkLabel:{description:"",type:"boolean",default:!1},editor:{description:"",type:"obejct",default:null},label:{description:"",type:"string",default:""},lableWidth:{description:"",type:"number"},binding:{description:"",type:"object",default:{}},visible:{description:"",type:"boolean",default:!0},required:{description:"",type:"boolean",default:!1},errors:{description:"",type:"object",default:null},name:{description:"The name string of form group component",type:"string",default:"form group"},showLabelType:{description:"",type:"string",default:"visible"}},required:["id","type","editor"]},sn={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]},visible:{type:Boolean,default:!0},required:{type:Boolean,default:!1},showLabel:{type:Boolean,default:!0},showLabelType:{type:String,default:"visible"},type:{type:String,default:"input-group"},componentId:{type:String,default:""},errors:{type:Object,default:null}};Je(sn,an,Nt,void 0);const Ur={id:{type:String},required:{type:Boolean,default:!1},text:{type:String,default:""},title:{type:String},valid:{type:Boolean,default:!0},inValidTip:{type:String,default:""},showType:{type:String,default:"visible"}},zr=o.defineComponent({name:"FDynamicFormLabel",props:Ur,emits:[],setup(n,e){o.ref(n.title||n.text);const t=o.ref(n.required),r=o.ref(n.text),i=o.ref(n.valid),s=o.ref(n.inValidTip);o.watch(()=>n.text,()=>{r.value=n.text}),o.watch(()=>n.required,(d,f)=>{d!==f&&(t.value=d)}),o.watch([()=>n.valid,()=>n.inValidTip],([d,f])=>{i.value=d,s.value=f});const a=o.computed(()=>i.value?r.value:s.value),u=o.computed(()=>i.value?"":"color:red"),l=o.computed(()=>({"col-form-label":!0,"f-width-auto":t.value&&(n.showType==="none"||!r.value)})),c=o.computed(()=>n.showType==="reserve-space"||t.value||r.value&&n.showType!=="none");return()=>c.value&&o.createVNode("label",{class:l.value,title:a.value,style:u.value},[!i.value&&o.createVNode("span",{class:"f-icon f-icon-warning mr-1",style:"color: red; min-width: 16px;",title:s.value},null),o.createVNode("span",{class:"farris-label-text"},[t.value&&o.createVNode("span",{class:"farris-label-info text-danger"},[o.createTextVNode("*")]),n.showType==="visible"&&r.value])])}}),L={},A={},U={},z={};let ln=!1;function Gr(){ln||(ln=!0,Sn.register(L,A,U,z),xn.register(L,A,U,z),Tn.register(L,A,U,z),Fn.register(L,A,U,z),Vn.register(L,A,U,z),Nn.register(L,A,U,z),Ut.register(L,A,U,z),zt.register(L,A,U,z),Ut.register(L,A,U,z),zt.register(L,A,U,z),Mn.register(L,A,U,z),En.register(L,A,U,z),Bn.register(L,A,U,z),jn.register(L,A,U,z),kn.register(L,A,U,z),In.register(L,A,U,z),On.register(L,A,U,z),Pn.register(L,A,U,z),Dn.register(L,A,U,z),$n.register(L,A,U,z),Po.register(L,A,U,z),Rn.register(L,A,U,z),qn.register(L,A,U,z),Mo.register(L,A,U,z),An.register(L,A,U,z),Un.register(L,A,U,z),zn.register(L,A,U,z),_n.register(L,A,U,z),Gn.register(L,A,U,z),Hn.register(L,A,U,z),Wn.register(L,A,U,z),Yn.register(L,A,U,z),Xn.register(L,A,U,z),Jn.register(L,A,U,z),Qn.register(L,A,U,z),Zn.register(L,A,U,z),Kn.register(L,A,U,z),eo.register(L,A,U,z),to.register(L,A,U,z),no.register(L,A,U,z),oo.register(L,A,U,z),ro.register(L,A,U,z),ao.register(L,A,U,z),so.register(L,A,U,z),io.register(L,A,U,z),Fo.register(L,A,U),lo.register(L,A,U,z),co.register(L,A,U,z),uo.register(L,A,U,z),fo.register(L,A,U,z),po.register(L,A,U,z),mo.register(L,A,U,z),Bo.register(L,A,U,z),ho.register(L,A,U,z),go.register(L,A,U,z),yo.register(L,A,U,z),vo.register(L,A,U,z),bo.register(L,A,U,z),Co.register(L,A,U,z),xo.register(L,A,U,z),wo.register(L,A,U,z),So.register(L,A,U,z),To.register(L,A,U,z),Vo.register(L,A,U,z),Ln.register(L,A,U,z),No.register(L,A,U,z),Eo.register(L,A,U,z),ko.register(L,A,U,z),jo.register(L,A,U,z),Io.register(L,A,U,z),Oo.register(L,A,U,z),Do.register(L,A,U,z),$o.register(L,A,U,z),Ro.register(L,A,U,z),qo.register(L,A,U,z),Lo.register(L,A,U,z),Ao.register(L,A,U,z))}function _r(){Gr();function n(a){const u=L[a];if(!u)throw new Error(`Could not find the editor of type '${a}'`);return u}function e(a,u){const l=A[a];return l?l(u):{}}function t(a){switch(a){case"check-box":return"onChangeValue";case"switch":return"onModelValueChanged";case"check-group":return"onChangeValue";case"combo-list":case"combo-tree":return"onChange";case"combo-lookup":return"";case"year-range":case"year-picker":case"month-range":case"month-picker":case"date-range":case"datetime-range":case"datetime-picker":case"date-picker":return"onUpdate:modelValue";case"time-picker":return"onValueChange";case"input-group":return"onChange";case"lookup":case"sort-condition-editor":case"filter-condition-editor":case"code-editor":case"language-textbox":return"onUpdate:modelValue";case"number-range":return"onValueChange";case"number-spinner":return"onValueChange";case"radio-group":return"onChangeValue";case"text":return"";case"events-editor":return"onSavedCommandListChanged";case"grid-field-editor":case"item-collection-editor":case"response-form-layout-setting":case"response-layout-editor-setting":case"response-layout-splitter":case"menu-lookup":case"json-editor":return"onChange";case"field-selector":case"binding-selector":return"onFieldSelected";case"schema-selector":return"onSchemaSelected";case"mapping-editor":return"onMappingFieldsChanged";case"textarea":return"onChange";case"query-solution-config":case"solution-preset":return"onFieldsChanged";case"property-editor":return"onValueChange";case"expression-editor":return"onExpressionChanged";case"collection-property-editor":return"onValueChange";default:return"onUpdate:modelValue"}}function r(a){switch(a){case"combo-list":case"input-group":case"textarea":return"onClear"}}function i(a){switch(a){case"input-group":case"textarea":return"onMousedownEvent"}}function s(a){switch(a){case"input-group":case"textarea":return"onMouseupEvent"}}return{resolveEditorProps:e,resolveEditorType:n,getChangeFunctionName:t,getClearFunctionName:r,getMousedownFunctionName:i,getMouseupFunctionName:s}}const Hr={errors:{type:Object,default:null}},Wr=o.defineComponent({name:"FValidationMessage",props:Hr,emits:[],setup(n,e){const t=o.ref(n.errors);o.watch(()=>n.errors,s=>{t.value=s});const r=o.ref(!0),i=o.computed(()=>{if(t.value){const s=Object.keys(t.value).map(a=>{var u;return(u=t.value[a])==null?void 0:u.name});return s.length?s.join(" "):""}return""});return()=>i.value&&o.createVNode("div",{class:"farris-feedback f-state-invalid",onClick:()=>r.value=!r.value},[!r.value&&o.createVNode("span",{class:"f-icon f-icon-message_warning f-feedback-icon"},null),r.value&&o.createVNode("span",{class:"f-feedback-message"},[i.value])])}}),cn=o.defineComponent({name:"FDynamicFormGroup",props:sn,emits:["change","update:modelValue"],setup(n,e){var k;const t=o.ref(n.id),r=o.ref(n.customClass),i=o.ref(n.editor),s=o.ref(n.label),a=o.ref(n.modelValue),u=o.ref(n.readonly),l=o.ref(((k=n.editor)==null?void 0:k.required)||n.required),c=o.ref(n.showLabel),d=o.ref(n.visible);o.ref(n.type);const f=o.ref(),h=o.ref(n.errors),g=o.computed(()=>c.value?n.showLabelType:"none"),{resolveEditorProps:p,resolveEditorType:m,getChangeFunctionName:S,getClearFunctionName:N}=_r(),B=o.computed(()=>({"form-group":!0,"farris-form-group":!0,"common-group":!0,"q-state-readonly":u.value}));function O(y,x,T){a.value=x!==void 0?x:y,e.emit("update:modelValue",a.value),e.emit("change",a.value,{newValue:y,newModelValue:x,parameters:T})}function F(){e.emit("update:modelValue","")}const v=o.computed(()=>{const y=i.value.type||"input-group",x=m(y),T=p(y,i.value),C=S(y),w=N(i.value.type);return w&&(T[w]=F),T[C]=O,(T.id==null||T.id==="")&&(T.id=t.value),y==="number-range"&&i.value.onBeginValueChange&&typeof i.value.onBeginValueChange=="function"?(i.value.onBeginValueChange&&typeof i.value.onBeginValueChange=="function"&&(T.onBeginValueChange=i.value.onBeginValueChange),i.value.onEndValueChange&&typeof i.value.onEndValueChange=="function"&&(T.onEndValueChange=i.value.onEndValueChange)):y==="lookup"&&i.value["onUpdate:idValue"]&&typeof i.value["onUpdate:idValue"]=="function"?(T["onUpdate:idValue"]=i.value["onUpdate:idValue"],T.id=t.value):y==="collection-property-editor"&&i.value.onSelectionChange&&typeof i.value.onSelectionChange=="function"?T.onSelectionChange=i.value.onSelectionChange:y==="property-editor"&&(T.onBeforeOpenVariables=i.value.onBeforeOpenVariables),()=>o.createVNode(x,o.mergeProps({ref:f},T,{modelValue:a.value,"onUpdate:modelValue":E=>a.value=E}),e.slots)});function b(){return o.createVNode(Wr,{id:`${t.value}-validation-message`,errors:h.value},null)}return o.watch([()=>n.id,()=>n.customClass,()=>n.editor,()=>n.label,()=>n.modelValue,()=>n.readonly,()=>n.required,()=>n.showLabel,()=>n.visible,()=>n.errors],([y,x,T,C,w,E,V,j,_,J])=>{var $;t.value=y,r.value=x,i.value=T,s.value=C,a.value=w,u.value=E,l.value=(($=i.value)==null?void 0:$.required)||V,c.value=j,d.value=_,h.value=J}),e.expose({editorRef:f}),()=>d.value&&o.createVNode("div",{id:`${t.value}-form-group`,class:r.value,style:n.customStyle},[o.createVNode("div",{class:"farris-group-wrap"},[o.createVNode("div",{class:B.value},[o.createVNode(zr,{id:`${t.value}-lable`,showType:g.value,required:l.value,text:s.value,title:s.value},null),o.createVNode("div",{class:"farris-input-wrap"},[v.value(),b()])])])])}}),Qe=class Qe{static getEditorTypesByMDataType(e,t=!1,r=""){if(t)return[{key:R["language-textbox"].type,value:R["language-textbox"].name}];let i=Qe.fieldControlTypeMapping[e];if(r==="data-grid-column"&&(i!=null&&i.length)){const s=[R["check-group"].type,R["radio-group"].type];i=i.filter(a=>!s.includes(a.key))}return i}static getAllInputTypes(){const e=[];for(const t in Qe.fieldControlTypeMapping)Qe.fieldControlTypeMapping[t].forEach(r=>{e.find(i=>i.key===r.key&&i.value===r.value)||e.push({key:r.key,value:r.value})});return e}static mappingDomPropAndSchemaProp(e,t){var s;const r=(s=e.editor)==null?void 0:s.type,i=[];return(e.type===R["data-grid-column"].type||e.type===R["tree-grid-column"].type)&&t&&t.categoryId&&t.categoryId.indexOf("gridFieldEditor")<0&&i.push({domField:"title",schemaField:"name"}),i.push({domField:"label",schemaField:"name"}),i.push({domField:"editor.required",schemaField:"require"}),i.push({domField:"editor.readonly",schemaField:"readonly"}),(r===R["input-group"].type||r===R.textarea.type||r===R["number-spinner"].type)&&i.push({domField:"editor.maxLength",schemaField:"type.length"}),r===R["number-spinner"].type&&i.push({domField:"editor.precision",schemaField:"type.precision"}),(e.type===R["data-grid-column"].type||e.type===R["tree-grid-column"].type)&&i.push({domField:"formatter.precision",schemaField:"type.precision"}),(r===R["combo-list"].type||r===R["radio-group"].type)&&i.push({domField:"editor.data",schemaField:"type.enumValues"}),(e.type===R["data-grid-column"].type||e.type===R["tree-grid-column"].type)&&i.push({domField:"formatter.data",schemaField:"type.enumValues"}),r===R["date-picker"].type&&(i.push({domField:"editor.displayFormat",schemaField:"editor.format"}),i.push({domField:"editor.fieldType",schemaField:"type.name"})),r===R["number-spinner"].type&&(i.push({domField:"editor.max",schemaField:"editor.maxValue"}),i.push({domField:"editor.min",schemaField:"editor.minValue"})),r===R.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"}),(e.type===R["data-grid-column"].type||e.type===R["tree-grid-column"].type)&&i.push({domField:"field",schemaField:"bindingPath"}),i}};oe(Qe,"fieldControlTypeMapping",{String:[{key:R["input-group"].type,value:R["input-group"].name},{key:R.lookup.type,value:R.lookup.name},{key:R["date-picker"].type,value:R["date-picker"].name},{key:R.switch.type,value:R.switch.name},{key:R["check-box"].type,value:R["check-box"].name},{key:R["check-group"].type,value:R["check-group"].name},{key:R["radio-group"].type,value:R["radio-group"].name},{key:R["combo-list"].type,value:R["combo-list"].name},{key:R.textarea.type,value:R.textarea.name},{key:R["time-picker"].type,value:R["time-picker"].name}],Text:[{key:R.textarea.type,value:R.textarea.name},{key:R.lookup.type,value:R.lookup.name}],Decimal:[{key:R["number-spinner"].type,value:R["number-spinner"].name}],Integer:[{key:R["number-spinner"].type,value:R["number-spinner"].name}],Number:[{key:R["number-spinner"].type,value:R["number-spinner"].name},{key:R.switch.type,value:R.switch.name},{key:R["check-box"].type,value:R["check-box"].name}],BigNumber:[{key:R["number-spinner"].type,value:R["number-spinner"].name}],Date:[{key:R["date-picker"].type,value:R["date-picker"].name}],DateTime:[{key:R["date-picker"].type,value:R["date-picker"].name}],Boolean:[{key:R.switch.type,value:R.switch.name},{key:R["check-box"].type,value:R["check-box"].name}],Enum:[{key:R["combo-list"].type,value:R["combo-list"].name},{key:R["radio-group"].type,value:R["radio-group"].name}],Object:[{key:R.lookup.type,value:R.lookup.name},{key:R["combo-list"].type,value:R["combo-list"].name},{key:R["radio-group"].type,value:R["radio-group"].name}]});let un=Qe;var Mt=(n=>(n.Form="Form",n.Variable="Variable",n))(Mt||{}),Pe=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function mt(n){throw new Error('Could not dynamically require "'+n+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var Yr={exports:{}};(function(n,e){(function(t){n.exports=t()})(function(){return function(){function t(r,i,s){function a(c,d){if(!i[c]){if(!r[c]){var f=typeof mt=="function"&&mt;if(!d&&f)return f(c,!0);if(u)return u(c,!0);var h=new Error("Cannot find module '"+c+"'");throw h.code="MODULE_NOT_FOUND",h}var g=i[c]={exports:{}};r[c][0].call(g.exports,function(p){var m=r[c][1][p];return a(m||p)},g,g.exports,t,r,i,s)}return i[c].exports}for(var u=typeof mt=="function"&&mt,l=0;l<s.length;l++)a(s[l]);return a}return t}()({1:[function(t,r,i){var s={},a="(?:^|\\s)",u="(?:\\s|$)";function l(f){var h=s[f];return h?h.lastIndex=0:s[f]=h=new RegExp(a+f+u,"g"),h}function c(f,h){var g=f.className;g.length?l(h).test(g)||(f.className+=" "+h):f.className=h}function d(f,h){f.className=f.className.replace(l(h)," ").trim()}r.exports={add:c,rm:d}},{}],2:[function(t,r,i){(function(s){var a=t("contra/emitter"),u=t("crossvent"),l=t("./classes"),c=document,d=c.documentElement;function f(C,w){var E=arguments.length;E===1&&Array.isArray(C)===!1&&(w=C,C=[]);var V,j,_,J,$,P,Y,G,Z,le=null,de,K,ue=!1,he=0,ae,X=w||{};X.moves===void 0&&(X.moves=B),X.accepts===void 0&&(X.accepts=B),X.invalid===void 0&&(X.invalid=it),X.containers===void 0&&(X.containers=C||[]),X.isContainer===void 0&&(X.isContainer=N),X.copy===void 0&&(X.copy=!1),X.copySortSource===void 0&&(X.copySortSource=!1),X.revertOnSpill===void 0&&(X.revertOnSpill=!1),X.removeOnSpill===void 0&&(X.removeOnSpill=!1),X.direction===void 0&&(X.direction="vertical"),X.ignoreInputTextSelection===void 0&&(X.ignoreInputTextSelection=!0),X.mirrorContainer===void 0&&(X.mirrorContainer=c.body);var se=a({containers:X.containers,start:Be,end:_e,cancel:D,remove:tt,destroy:Ge,canMove:Re,dragging:!1});return X.removeOnSpill===!0&&se.on("over",kt).on("out",jt),De(),se;function ze(M){return se.containers.indexOf(M)!==-1||X.isContainer(M)}function De(M){var q=M?"remove":"add";p(d,q,"mousedown",pe),p(d,q,"mouseup",Le)}function Ee(M){var q=M?"remove":"add";p(d,q,"mousemove",rt)}function Ze(M){var q=M?"remove":"add";u[q](d,"selectstart",Ke),u[q](d,"click",Ke)}function Ge(){De(!0),Le({})}function Ke(M){de&&M.preventDefault()}function pe(M){J=M.clientX,$=M.clientY;var q=m(M)!==1||M.metaKey||M.ctrlKey;if(!q){var H=M.target,Q=$e(H);Q&&(de=Q,Ee(),M.type==="mousedown"&&(b(H)?H.focus():M.preventDefault()))}}function rt(M){if(de){if(m(M)===0){Le({});return}if(!(M.clientX!==void 0&&Math.abs(M.clientX-J)<=(X.slideFactorX||0)&&M.clientY!==void 0&&Math.abs(M.clientY-$)<=(X.slideFactorY||0))){if(X.ignoreInputTextSelection){var q=T("clientX",M)||0,H=T("clientY",M)||0,Q=c.elementFromPoint(q,H);if(b(Q))return}var re=de;Ee(!0),Ze(),_e(),qe(re),l.add(G||_,"gu-transit"),Ot(),It(),he=0,Oe(M)}}}function $e(M){if(!(se.dragging&&V)&&!ze(M)){for(var q=M;v(M)&&ze(v(M))===!1;)if(X.invalid(M,q)||(M=v(M),!M))return;var H=v(M);if(H&&!X.invalid(M,q)){var Q=X.moves(M,H,q,y(M));if(Q)return{item:M,source:H}}}}function Re(M){return!!$e(M)}function Be(M){var q=$e(M);q&&qe(q)}function qe(M){At(M.item,M.source)&&(G=M.item.cloneNode(!0),se.emit("cloned",G,M.item,"copy")),j=M.source,_=M.item,P=Y=y(M.item),se.dragging=!0,se.emit("drag",_,j)}function it(){return!1}function _e(){if(se.dragging){var M=G||_;et(M,v(M))}}function Ie(){de=!1,Ee(!0),Ze(!0)}function Le(M){if(Ie(),!!se.dragging){var q=G||_,H=T("clientX",M)||0,Q=T("clientY",M)||0,re=S(V,H,Q),ie=ge(re,H,Q);ie&&(G&&X.copySortSource||!G||ie!==j)?et(q,ie):X.removeOnSpill?tt():D()}}function et(M,q){var H=v(M);G&&X.copySortSource&&q===j&&H.removeChild(_),me(q)?se.emit("cancel",M,j):se.emit("drop",M,q,j,Y),te()}function tt(){if(se.dragging){var M=G||_,q=v(M);q&&q.removeChild(M),se.emit(G?"cancel":"remove",M,q,j),te()}}function D(M){if(se.dragging){var q=arguments.length>0?M:X.revertOnSpill,H=G||_,Q=v(H),re=me(Q);re===!1&&q&&(G?Q&&Q.removeChild(G):j.insertBefore(H,P)),re||q?se.emit("cancel",H,j,j):se.emit("drop",H,Q,j,Y),te()}}function te(){var M=G||_;Ie(),Pt(),Dt(),M&&l.rm(M,"gu-transit"),Z&&clearTimeout(Z),se.dragging=!1,le&&se.emit("out",M,le,j),se.emit("dragend",M,he),j=_=G=P=Y=Z=le=null}function me(M,q){var H;return q!==void 0?H=q:V?H=Y:H=y(G||_),M===j&&H===P}function ge(M,q,H){for(var Q=M;Q&&!re();)Q=v(Q);return Q;function re(){var ie=ze(Q);if(ie===!1)return!1;var Ve=yt(Q,M),xe=vt(Q,Ve,q,H),Se=me(Q,xe);return Se?!0:X.accepts(_,Q,j,xe)}}function Oe(M){if(!V)return;M.preventDefault();var q=T("clientX",M)||0,H=T("clientY",M)||0;V.style.left=q-2+"px",V.style.top=H-2+"px";var Q=G||_,re=S(V,q,H),ie=ge(re,q,H),Ve=ie!==null&&ie!==le;(Ve||ie===null)&&(Te(),le=ie,je()),Lt(re,H);var xe=v(Q);if(ie===j&&G&&!X.copySortSource){xe&&xe.removeChild(Q);return}var Se,ke=yt(ie,re);if(ue=at(ke,ie),ke!==null)Se=vt(ie,ke,q,H);else if(X.revertOnSpill===!0&&!G)Se=P,ie=j;else{G&&xe&&xe.removeChild(Q),G&&K&&(K.style.display="none");return}K.style.display="block",Bt(Se,Q,Ve),Se?Rt(ke,Se):qt(ie);function ye(Ce){se.emit(Ce,Q,le,j)}function je(){Ve&&ye("over")}function Te(){le&&ye("out")}}function Bt(M,q,H){(M===q||M===y(q))&&(Y=y(q)),(M===null&&H||M!==q&&M!==y(q))&&(Y=M)}function kt(M){l.rm(M,"gu-hide")}function jt(M){se.dragging&&l.add(M,"gu-hide")}function It(){V||(V=document.createElement("div"),V.style="background: grey; color: white; height: 24px; text-align: center; padding: 3px 10px; min-width: 100px;border-radius: 4px; box-shadow: 0 0 6px grey;",V.innerHTML=X.getMirrorText&&X.getMirrorText(_)||"控件",l.add(V,"gu-mirror"),X.mirrorContainer.appendChild(V),p(d,"add","mousemove",Oe),l.add(X.mirrorContainer,"gu-unselectable"),se.emit("cloned",V,_,"mirror"))}function Ot(){if(K=document.createElement("div"),l.add(K,"gu-insertion"),_){var M=_.getBoundingClientRect();K.style.left=M.left+"px",K.style.top=M.top+"px"}ue=!1,X.mirrorContainer.appendChild(K)}function Pt(){V&&(l.rm(X.mirrorContainer,"gu-unselectable"),p(d,"remove","mousemove",Oe),v(V).removeChild(V),V=null)}function Dt(){K&&(v(K).removeChild(K),K=null)}function yt(M,q){for(var H=q;H!==M&&v(H)!==M;)H=v(H);return H===d?null:H}function at(M,q){if(!q)return ue;var H=M||q&&q.lastElementChild;if(!H)return!0;var Q=getComputedStyle(M),re=/^inline/.test(Q.getPropertyValue("display"))||/^(left|right)$/.test(Q.getPropertyValue("float"));if(re)return!0;if(q){var ie=getComputedStyle(q),Ve=ie.getPropertyValue("display");if(/flex$/.test(Ve)){var xe=ie.getPropertyValue("flex-direction")||"row";if(xe==="row"||xe==="row-reverse")return!$t(q)}return!1}return!0}function $t(M){if(!M.children||!M.children.length)return!1;for(const q of Array.from(M.children)){const Q=(q.className&&q.className.split(" ")||[]).filter(re=>/^col(-md|-xl|-el){0,1}-([1-9]|10|11|12)$/.test(re));if(!Q.length)return!1;for(const re of Q){const ie=re.slice(re.lastIndexOf("-")+1);if(parseInt(ie,10)!==12)return!1}}return!0}function Rt(M,q){const H=q.getBoundingClientRect();if(K.style.left=H.left+"px",K.style.top=H.top+"px",ue){if(K.style.height=H.height+"px",K.style.width="4px",M){const Q=M.getBoundingClientRect();Q.top!==H.top&&(K.style.left=Q.right+"px",K.style.top=Q.top+"px",K.style.height=Q.height+"px")}}else if(K.style.height="4px",K.style.width=H.width+"px",ae){const Q=ae.getBoundingClientRect();H.top<Q.top&&(K.style.display="none")}q===_&&_&&(K.style.display="none")}function qt(M){Y=null;var q=M.lastElementChild;if(q){var H=q.getBoundingClientRect();ue?(K.style.left=H.right+"px",K.style.top=H.top+"px",K.style.height=H.height+"px",K.style.width="4px"):(K.style.left=H.left+"px",K.style.top=H.bottom+"px",K.style.height="4px",K.style.width=H.width+"px"),q===_&&_&&(K.style.display="none")}else K.style.display="none"}function Lt(M,q){if(!X.mirrorContainer.contains(M)||!window.scrollContainerList||!Array.from(window.scrollContainerList).length||(ae=h(M),!ae||!ae.contains(M)))return;const H=document.querySelector(".dgComponentSelected"),Q=ae.getBoundingClientRect();if(q-30<Q.top&&ae.scrollTop>0){let re=ae.scrollTop<10?ae.scrollTop:10;ae.scrollBy(0,-1*re),H&&ae.contains(H)&&(he=he+-1*re)}if(q+30>Q.bottom&&ae.scrollTop<ae.scrollHeight-ae.clientHeight){const re=ae.scrollHeight-ae.clientHeight-ae.scrollTop;let ie=re<10?re:10;ae.scrollBy(0,ie),H&&ae.contains(H)&&(he=he+ie)}}function vt(M,q,H,Q){var re=X.direction==="horizontal",ie=X.direction==="mixed",Ve=q!==M?Se():xe();return Ve;function xe(){var ye=M.children.length,je,Te,Ce;for(je=0;je<ye;je++)if(Te=M.children[je],Ce=Te.getBoundingClientRect(),re&&Ce.left+Ce.width/2>H||!ie&&!re&&Ce.top+Ce.height/2>Q||ie&&Ce.left+Ce.width>H&&Ce.top+Ce.height>Q)return Te;return null}function Se(){var ye=q.getBoundingClientRect();if(ie){var je=Q-ye.top,Te=H-ye.left,Ce=ye.bottom-Q,st=ye.right-H,lt=Math.min(Te,st,je,Ce),ct;return ue?ct=st<Te:ct=Ce===lt||st===lt||Te===lt,ke(ct)}return ke(re?H>ye.left+O(ye)/2:Q>ye.top+F(ye)/2)}function ke(ye){return ye?y(q):q}}function At(M,q){return typeof X.copy=="boolean"?X.copy:X.copy(M,q)}}function h(C){const w=Array.from(window.scrollContainerList);if(w.length===1){const V=Array.from(window.scrollContainerList)[0];return document.getElementById(V)}const E=g(w);for(const V of E)if(V.contains(C))return V;return null}function g(C){const w=[];return C.forEach(E=>{const V=document.getElementById(E);V&&w.push(V)}),w.sort((E,V)=>E.contains(V)?1:V.contains(E)?-1:0),w}function p(C,w,E,V){var j={mouseup:"touchend",mousedown:"touchstart",mousemove:"touchmove"},_={mouseup:"pointerup",mousedown:"pointerdown",mousemove:"pointermove"},J={mouseup:"MSPointerUp",mousedown:"MSPointerDown",mousemove:"MSPointerMove"};s.navigator.pointerEnabled?u[w](C,_[E],V):s.navigator.msPointerEnabled?u[w](C,J[E],V):(u[w](C,j[E],V),u[w](C,E,V))}function m(C){if(C.touches!==void 0)return C.touches.length;if(C.which!==void 0&&C.which!==0)return C.which;if(C.buttons!==void 0)return C.buttons;var w=C.button;if(w!==void 0)return w&1?1:w&2?3:w&4?2:0}function S(C,w,E){C=C||{};var V=C.className||"",j;return C.className+=" gu-hide",j=c.elementFromPoint(w,E),C.className=V,j}function N(){return!1}function B(){return!0}function O(C){return C.width||C.right-C.left}function F(C){return C.height||C.bottom-C.top}function v(C){return C.parentNode===c?null:C.parentNode}function b(C){return C.tagName==="INPUT"||C.tagName==="TEXTAREA"||C.tagName==="SELECT"||k(C)}function k(C){return!C||C.contentEditable==="false"?!1:C.contentEditable==="true"?!0:k(v(C))}function y(C){return C.nextElementSibling||w();function w(){var E=C;do E=E.nextSibling;while(E&&E.nodeType!==1);return E}}function x(C){return C.targetTouches&&C.targetTouches.length?C.targetTouches[0]:C.changedTouches&&C.changedTouches.length?C.changedTouches[0]:C}function T(C,w){var E=x(w),V={pageX:"clientX",pageY:"clientY"};return C in V&&!(C in E)&&V[C]in E&&(C=V[C]),E[C]}r.exports=f}).call(this,typeof Pe<"u"?Pe:typeof self<"u"?self:typeof window<"u"?window:{})},{"./classes":1,"contra/emitter":5,crossvent:6}],3:[function(t,r,i){r.exports=function(a,u){return Array.prototype.slice.call(a,u)}},{}],4:[function(t,r,i){var s=t("ticky");r.exports=function(u,l,c){u&&s(function(){u.apply(c||null,l||[])})}},{ticky:10}],5:[function(t,r,i){var s=t("atoa"),a=t("./debounce");r.exports=function(l,c){var d=c||{},f={};return l===void 0&&(l={}),l.on=function(h,g){return f[h]?f[h].push(g):f[h]=[g],l},l.once=function(h,g){return g._once=!0,l.on(h,g),l},l.off=function(h,g){var p=arguments.length;if(p===1)delete f[h];else if(p===0)f={};else{var m=f[h];if(!m)return l;m.splice(m.indexOf(g),1)}return l},l.emit=function(){var h=s(arguments);return l.emitterSnapshot(h.shift()).apply(this,h)},l.emitterSnapshot=function(h){var g=(f[h]||[]).slice(0);return function(){var p=s(arguments),m=this||l;if(h==="error"&&d.throws!==!1&&!g.length)throw p.length===1?p[0]:p;return g.forEach(function(N){d.async?a(N,p,m):N.apply(m,p),N._once&&l.off(h,N)}),l}},l}},{"./debounce":4,atoa:3}],6:[function(t,r,i){(function(s){var a=t("custom-event"),u=t("./eventmap"),l=s.document,c=h,d=p,f=[];s.addEventListener||(c=g,d=m),r.exports={add:c,remove:d,fabricate:S};function h(v,b,k,y){return v.addEventListener(b,k,y)}function g(v,b,k){return v.attachEvent("on"+b,B(v,b,k))}function p(v,b,k,y){return v.removeEventListener(b,k,y)}function m(v,b,k){var y=O(v,b,k);if(y)return v.detachEvent("on"+b,y)}function S(v,b,k){var y=u.indexOf(b)===-1?T():x();v.dispatchEvent?v.dispatchEvent(y):v.fireEvent("on"+b,y);function x(){var C;return l.createEvent?(C=l.createEvent("Event"),C.initEvent(b,!0,!0)):l.createEventObject&&(C=l.createEventObject()),C}function T(){return new a(b,{detail:k})}}function N(v,b,k){return function(x){var T=x||s.event;T.target=T.target||T.srcElement,T.preventDefault=T.preventDefault||function(){T.returnValue=!1},T.stopPropagation=T.stopPropagation||function(){T.cancelBubble=!0},T.which=T.which||T.keyCode,k.call(v,T)}}function B(v,b,k){var y=O(v,b,k)||N(v,b,k);return f.push({wrapper:y,element:v,type:b,fn:k}),y}function O(v,b,k){var y=F(v,b,k);if(y){var x=f[y].wrapper;return f.splice(y,1),x}}function F(v,b,k){var y,x;for(y=0;y<f.length;y++)if(x=f[y],x.element===v&&x.type===b&&x.fn===k)return y}}).call(this,typeof Pe<"u"?Pe:typeof self<"u"?self:typeof window<"u"?window:{})},{"./eventmap":7,"custom-event":8}],7:[function(t,r,i){(function(s){var a=[],u="",l=/^on/;for(u in s)l.test(u)&&a.push(u.slice(2));r.exports=a}).call(this,typeof Pe<"u"?Pe:typeof self<"u"?self:typeof window<"u"?window:{})},{}],8:[function(t,r,i){(function(s){var a=s.CustomEvent;function u(){try{var l=new a("cat",{detail:{foo:"bar"}});return l.type==="cat"&&l.detail.foo==="bar"}catch{}return!1}r.exports=u()?a:typeof document<"u"&&typeof document.createEvent=="function"?function(c,d){var f=document.createEvent("CustomEvent");return d?f.initCustomEvent(c,d.bubbles,d.cancelable,d.detail):f.initCustomEvent(c,!1,!1,void 0),f}:function(c,d){var f=document.createEventObject();return f.type=c,d?(f.bubbles=!!d.bubbles,f.cancelable=!!d.cancelable,f.detail=d.detail):(f.bubbles=!1,f.cancelable=!1,f.detail=void 0),f}}).call(this,typeof Pe<"u"?Pe:typeof self<"u"?self:typeof window<"u"?window:{})},{}],9:[function(t,r,i){var s=r.exports={},a,u;function l(){throw new Error("setTimeout has not been defined")}function c(){throw new Error("clearTimeout has not been defined")}(function(){try{typeof setTimeout=="function"?a=setTimeout:a=l}catch{a=l}try{typeof clearTimeout=="function"?u=clearTimeout:u=c}catch{u=c}})();function d(F){if(a===setTimeout)return setTimeout(F,0);if((a===l||!a)&&setTimeout)return a=setTimeout,setTimeout(F,0);try{return a(F,0)}catch{try{return a.call(null,F,0)}catch{return a.call(this,F,0)}}}function f(F){if(u===clearTimeout)return clearTimeout(F);if((u===c||!u)&&clearTimeout)return u=clearTimeout,clearTimeout(F);try{return u(F)}catch{try{return u.call(null,F)}catch{return u.call(this,F)}}}var h=[],g=!1,p,m=-1;function S(){!g||!p||(g=!1,p.length?h=p.concat(h):m=-1,h.length&&N())}function N(){if(!g){var F=d(S);g=!0;for(var v=h.length;v;){for(p=h,h=[];++m<v;)p&&p[m].run();m=-1,v=h.length}p=null,g=!1,f(F)}}s.nextTick=function(F){var v=new Array(arguments.length-1);if(arguments.length>1)for(var b=1;b<arguments.length;b++)v[b-1]=arguments[b];h.push(new B(F,v)),h.length===1&&!g&&d(N)};function B(F,v){this.fun=F,this.array=v}B.prototype.run=function(){this.fun.apply(null,this.array)},s.title="browser",s.browser=!0,s.env={},s.argv=[],s.version="",s.versions={};function O(){}s.on=O,s.addListener=O,s.once=O,s.off=O,s.removeListener=O,s.removeAllListeners=O,s.emit=O,s.prependListener=O,s.prependOnceListener=O,s.listeners=function(F){return[]},s.binding=function(F){throw new Error("process.binding is not supported")},s.cwd=function(){return"/"},s.chdir=function(F){throw new Error("process.chdir is not supported")},s.umask=function(){return 0}},{}],10:[function(t,r,i){(function(s){var a=typeof s=="function",u;a?u=function(l){s(l)}:u=function(l){setTimeout(l,0)},r.exports=u}).call(this,t("timers").setImmediate)},{timers:11}],11:[function(t,r,i){(function(s,a){var u=t("process/browser.js").nextTick,l=Function.prototype.apply,c=Array.prototype.slice,d={},f=0;i.setTimeout=function(){return new h(l.call(setTimeout,window,arguments),clearTimeout)},i.setInterval=function(){return new h(l.call(setInterval,window,arguments),clearInterval)},i.clearTimeout=i.clearInterval=function(g){g.close()};function h(g,p){this._id=g,this._clearFn=p}h.prototype.unref=h.prototype.ref=function(){},h.prototype.close=function(){this._clearFn.call(window,this._id)},i.enroll=function(g,p){clearTimeout(g._idleTimeoutId),g._idleTimeout=p},i.unenroll=function(g){clearTimeout(g._idleTimeoutId),g._idleTimeout=-1},i._unrefActive=i.active=function(g){clearTimeout(g._idleTimeoutId);var p=g._idleTimeout;p>=0&&(g._idleTimeoutId=setTimeout(function(){g._onTimeout&&g._onTimeout()},p))},i.setImmediate=typeof s=="function"?s:function(g){var p=f++,m=arguments.length<2?!1:c.call(arguments,1);return d[p]=!0,u(function(){d[p]&&(m?g.apply(null,m):g.call(null),i.clearImmediate(p))}),p},i.clearImmediate=typeof a=="function"?a:function(g){delete d[g]}}).call(this,t("timers").setImmediate,t("timers").clearImmediate)},{"process/browser.js":9,timers:11}]},{},[2])(2)})})(Yr);const Xr={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/modal.schema.json",title:"modal",description:"弹窗组件",type:"object",properties:{id:{description:"组件唯一标识",type:"string"},type:{description:"组件类型",type:"string",default:"modal"},appearance:{description:"组件外观",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},name:{description:"名称",type:"string",default:null},title:{description:"标题",type:"string"},width:{description:"窗口宽度",type:"number",default:900},height:{description:"窗口高度",type:"number",default:600},contents:{description:"弹窗子组件集合",type:"array",default:[]},modelValue:{description:"是否显示",type:"boolean",default:!1},showCloseButton:{description:"显示关闭按钮",type:"boolean",default:!0},showMaxButton:{description:"显示最大化按钮",type:"boolean",default:!0},enableEsc:{description:"允许ESC关闭",type:"boolean",default:!0},resizeable:{description:"允许调整窗口尺寸",type:"boolean",default:!0},fitContent:{description:"是否自适应",type:"boolean",default:!1},showButtons:{description:"是否显示底部按钮",type:"boolean",default:!0},mask:{description:"是否模态",type:"boolean",default:!0},draggable:{description:"是否允许拖拽调整位置",type:"boolean",default:!0},onAccept:{description:"确定事件",type:"object",default:null},onCancel:{description:"取消事件",type:"object",default:null},beforeClose:{description:"关闭前事件",type:"object",default:null}},required:["id","type"],events:{onAccept:"确定事件",onCancel:"取消事件",beforeClose:"关闭前回调"}},Jr=new Map([["appearance",ut.resolveAppearance]]);function Qr(n,e,t){return e}function Zr(){function n(e,t){const r={};return r.beforeClose=i=>t.call("beforeClose",[i,e]),r}return{resolve:n}}const dn={allowClickMaskToClose:{type:Boolean,default:!1},beforeClose:{type:Function,default:()=>!0},class:{type:String,default:""},maskClass:{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},mask:{type:Boolean,default:!0},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:""},footerHeight:{type:Number,default:60},host:{type:Object,default:"body"}},Kr=ut.createPropsResolver(dn,Xr,Jr,Qr),ei=Zr();class fe{constructor(e,t){this.x=e,this.y=t}static getTransformInfo(e){const r=window.getComputedStyle(e).getPropertyValue("transform").replace(/[^-\d,]/g,"").split(",");if(r.length>=6){const i=parseInt(r[4],10),s=parseInt(r[5],10);return{x:i,y:s}}return{x:0,y:0}}static fromEvent(e,t=null){if(this.isMouseEvent(e))return new fe(e.clientX,e.clientY);if(t===null||e.changedTouches.length===1)return new fe(e.changedTouches[0].clientX,e.changedTouches[0].clientY);for(let r=0;r<e.changedTouches.length;r++)if(e.changedTouches[r].target===t)return new fe(e.changedTouches[r].clientX,e.changedTouches[r].clientY)}static isMouseEvent(e){return Object.prototype.toString.apply(e).indexOf("MouseEvent")===8}static isIPosition(e){return!!e&&"x"in e&&"y"in e}static getCurrent(e){const t=new fe(0,0);if(window){const r=window.getComputedStyle(e);if(r){const i=parseInt(r.getPropertyValue("left"),10),s=parseInt(r.getPropertyValue("top"),10);t.x=isNaN(i)?0:i,t.y=isNaN(s)?0:s}return t}return null}static copy(e){return new fe(0,0).set(e)}get value(){return{x:this.x,y:this.y}}add(e){return this.x+=e.x,this.y+=e.y,this}subtract(e){return this.x-=e.x,this.y-=e.y,this}multiply(e){this.x*=e,this.y*=e}divide(e){this.x/=e,this.y/=e}reset(){return this.x=0,this.y=0,this}set(e){return this.x=e.x,this.y=e.y,this}}class Ae{constructor(e,t){this.width=e,this.height=t}static getCurrent(e){const t=new Ae(0,0);if(window){const r=window.getComputedStyle(e);return r&&(t.width=parseInt(r.getPropertyValue("width"),10),t.height=parseInt(r.getPropertyValue("height"),10)),t}return null}static copy(e){return new Ae(0,0).set(e)}set(e){return this.width=e.width,this.height=e.height,this}}function ti(n,e){const t=o.ref(),r=o.ref(),i=o.ref(),s=o.ref(),a=o.ref(),u=o.ref(),l=o.ref(),c=o.ref(),d=o.ref(),f=o.ref(),h=o.ref(),g=o.ref(n.resizeable),p=o.ref(),m=o.ref(n.draggable),S=o.ref(!1);function N(){const $=r.value||document.body,P=window.getComputedStyle($);if(!P||!t.value)return;const Y=fe.getTransformInfo(t.value),G={};l.value&&(G.deltaL=t.value.offsetLeft-l.value.x,G.deltaT=t.value.offsetTop-l.value.y);const Z=P.getPropertyValue("position");G.width=$.clientWidth,G.height=$.clientHeight,G.pr=parseInt(P.getPropertyValue("padding-right"),10),G.pb=parseInt(P.getPropertyValue("padding-bottom"),10),G.position=P.getPropertyValue("position"),Z==="static"&&($.style.position="relative"),G.translateX=Y.x,G.translateY=Y.y,f.value=G}function B($){if(t.value){s.value=Ae.getCurrent(t.value),a.value=fe.getCurrent(t.value),u.value=s.value?Ae.copy(s.value):null,l.value=a.value?fe.copy(a.value):null,N();const P=$.target.getAttribute("type")||"";c.value={n:!!P.match(/n/),s:!!P.match(/s/),w:!!P.match(/w/),e:!!P.match(/e/)}}}function O(){var $,P,Y,G;if(t.value){const Z=t.value;c.value&&((c.value.n||c.value.s)&&(($=u.value)!=null&&$.height)&&(Z.style.height=u.value.height+"px"),(c.value.w||c.value.e)&&((P=u.value)!=null&&P.width)&&(Z.style.width=u.value.width+"px"),l.value&&((Y=l.value)!=null&&Y.x&&(Z.style.left=l.value.x+"px"),(G=l.value)!=null&&G.y&&(Z.style.top=l.value.y+"px")))}}function F(){const $=n.minHeight?n.minHeight:1,P=n.minWidth?n.minWidth:1;u.value&&l.value&&c.value&&s.value&&(u.value.height<$&&(u.value.height=$,c.value.n&&a.value&&(l.value.y=a.value.y+(s.value.height-$))),u.value.width<P&&(u.value.width=P,c.value.w&&a.value&&(l.value.x=a.value.x+(s.value.width-P))),n.maxHeight&&u.value.height>n.maxHeight&&(u.value.height=n.maxHeight,a.value&&c.value.n&&(l.value.y=a.value.y+(s.value.height-n.maxHeight))),n.maxWidth&&u.value.width>n.maxWidth&&(u.value.width=n.maxWidth,c.value.w&&a.value&&(l.value.x=a.value.x+(s.value.width-n.maxWidth))))}function v(){if(r.value){const $=f.value;if(l.value&&u.value&&c.value&&s.value){const P=$.width-$.pr-$.deltaL-$.translateX-l.value.x,Y=$.height-$.pb-$.deltaT-$.translateY-l.value.y;c.value.n&&l.value.y+$.translateY<0&&a.value&&(l.value.y=-$.translateY,u.value.height=s.value.height+a.value.y+$.translateY),c.value.w&&l.value.x+$.translateX<0&&a.value&&(l.value.x=-$.translateX,u.value.width=s.value.width+a.value.x+$.translateX),u.value.width>P&&(u.value.width=P),u.value.height>Y&&(u.value.height=Y)}}}function b($){if(!i.value||!s.value||!a.value||!c.value)return;$.subtract(i.value);const P=$.x,Y=$.y;c.value.n?(l.value.y=a.value.y+Y,u.value.height=s.value.height-Y):c.value.s&&(u.value.height=s.value.height+Y),c.value.e?u.value.width=s.value.width+P:c.value.w&&(u.value.width=s.value.width-P,l.value.x=a.value.x+P),v(),F(),O()}function k($){if(!d.value)return;const P=fe.fromEvent($);P&&b(P)}function y(){if(t.value){const{width:$,height:P,x:Y,y:G}=t.value.getBoundingClientRect(),Z=fe.getTransformInfo(t.value);return{size:{width:$,height:P},position:{x:Y-Z.x,y:G-Z.y}}}return null}function x($){if(t.value){const P=y();h.value=P}i.value=void 0,s.value=null,a.value=null,u.value=null,l.value=null,c.value=null,d.value=null,document.removeEventListener("mousemove",k),document.removeEventListener("mouseup",x)}function T(){document.addEventListener("mousemove",k),document.addEventListener("mouseup",x)}function C($){$ instanceof MouseEvent&&$.button===2||m.value&&(document.body.click(),$.stopPropagation(),$.preventDefault(),i.value=fe.fromEvent($),d.value=$.target,B($),T())}function w($){return t.value=$,g.value&&o.createVNode(o.Fragment,null,[o.createVNode("div",{class:"fv-resizable-handle fv-resizable-n",type:"n",onMousedown:P=>C(P)},null),o.createVNode("div",{class:"fv-resizable-handle fv-resizable-e",type:"e",onMousedown:P=>C(P)},null),o.createVNode("div",{class:"fv-resizable-handle fv-resizable-s",type:"s",onMousedown:P=>C(P)},null),o.createVNode("div",{class:"fv-resizable-handle fv-resizable-w",type:"w",onMousedown:P=>C(P)},null),o.createVNode("div",{class:"fv-resizable-handle fv-resizable-ne",type:"ne",onMousedown:P=>C(P)},null),o.createVNode("div",{class:"fv-resizable-handle fv-resizable-se fv-resizable-diagonal",type:"se",onMousedown:P=>C(P)},null),o.createVNode("div",{class:"fv-resizable-handle fv-resizable-sw",type:"sw",onMousedown:P=>C(P)},null),o.createVNode("div",{class:"fv-resizable-handle fv-resizable-nw",type:"nw",onMousedown:P=>C(P)},null)])}function E($=!0){document.body.click();const P=r.value||document.body,Y=Ae.getCurrent(P),G=t.value;$&&G&&(p.value=y(),p.value.transform=G.style.transform),Y&&G&&(u.value=Y,u.value.height-=14,u.value.width-=14,G.style.height=u.value.height+"px",G.style.width=u.value.width+"px",G.style.left="7px",G.style.top="7px",G.style.transform="",h.value={size:u.value,position:{x:0,y:0}},m.value=!1,S.value=!0)}function V(){var $,P;if(document.body.click(),p.value){const Y={width:p.value.size.width||0,height:p.value.size.height||0},G={x:(window.innerWidth-Y.width)/2,y:(window.innerHeight-Y.height)/2};($=u.value)==null||$.set(Y),(P=l.value)==null||P.set(G);const Z=t.value;Z.style.height=Y.height+"px",Z.style.width=Y.width+"px",Z.style.left=`${G.x}px`,Z.style.top=`${G.y}px`,Z.style.transform="",h.value={size:Y,position:G},m.value=n.draggable,S.value=!1}}function j(){if(t.value){const $=Ae.getCurrent(t.value);if($){const{width:P,height:Y}=$;t.value.style.left=`${(window.innerWidth-P)/2}px`,t.value.style.top=`${(window.innerHeight-Y)/2}px`,t.value.style.transform=""}}}function _(){const $=()=>{S.value?E(!1):j(),document.body.click()};return window.addEventListener("resize",$),()=>{window.removeEventListener("resize",$)}}const J=_();return{renderResizeBar:w,boundingElement:r,resizedEventParam:h,maximize:E,restore:V,allowDrag:m,isMaximized:S,unWindowResizeHandle:J,moveToCenter:j}}function ni(n,e,t){const r=o.ref(),i=o.ref(n.draggable),s=o.ref(n.lockAxis),a=o.ref(),u=o.ref(),l=o.ref(!1),c=o.ref(new fe(0,0)),d=o.ref(new fe(0,0)),f=o.ref(new fe(0,0)),h=o.ref(new fe(0,0));o.watch(()=>t.value,k=>{a.value.style.cursor=k?"move":"default"});function g(k,y){if(y.tagName==="BUTTON")return!1;if(y===k)return!0;for(const x in y.children)if(Object.prototype.hasOwnProperty.call(y.children,x)&&g(k,y.children[x]))return!0;return!1}function p(){var T,C;let k=f.value.x+d.value.x,y=f.value.y+d.value.y;s.value==="x"?(k=((T=c.value)==null?void 0:T.x)||0,f.value.x=0):s.value==="y"&&(y=((C=c.value)==null?void 0:C.y)||0,f.value.y=0);const x=`translate3d(${Math.round(k)}px, ${Math.round(y)}px, 0px)`;r.value&&(r.value.style.transform=x),h.value.x=k,h.value.y=y}function m(){if(!u.value||!r.value)return null;const k=u.value.getBoundingClientRect(),y=r.value.getBoundingClientRect(),x={top:k.top<y.top,right:k.right>y.right,bottom:k.bottom>y.bottom,left:k.left<y.left};return x.top||(f.value.y-=y.top-k.top),x.bottom||(f.value.y-=y.bottom-k.bottom),x.right||(f.value.x-=y.right-k.right),x.left||(f.value.x-=y.left-k.left),p(),x}function S(k){k&&(c.value&&k.subtract(c.value),f.value.set(k),p(),m())}function N(k){l.value&&i.value&&(k.stopPropagation(),k.preventDefault(),S(fe.fromEvent(k,a.value)))}function B(){var k;l.value&&(l.value=!1,d.value.add(f.value),f.value.reset(),(k=r.value)==null||k.classList.remove("ng-dragging"),e.emit("stopMove"),document.removeEventListener("mousemove",N),document.removeEventListener("mouseup",B))}function O(){!l.value&&a.value&&(l.value=!0,a.value.classList.add("ng-dragging"),document.addEventListener("mousemove",N),document.addEventListener("mouseup",B))}function F(){if(r.value){const k=fe.getTransformInfo(r.value);d.value.set(k);return}d.value.reset()}function v(k){if(!t.value||k instanceof MouseEvent&&k.button===2)return;const y=k.target||k.srcElement;a.value!==void 0&&y&&!g(y,a.value)||i.value!==!1&&(document.body.click(),k.stopPropagation(),k.preventDefault(),c.value=fe.fromEvent(k,r.value),F(),O())}function b(k,y,x){if(i.value&&y){if(k)a.value=k;else if(n.dragHandle){if(n.dragHandle instanceof HTMLElement)a.value=n.dragHandle;else if(typeof n.dragHandle=="string"){const T=y.querySelector(n.dragHandle);T&&(a.value=T)}}r.value=y,u.value=x,a.value?(a.value.classList.add("ng-draggable"),a.value.addEventListener("mousedown",v)):i.value=!1}}return{registerDraggle:b,resetTranslate:F}}function fn(n,e){if(n){const t=r=>{r.key.toLowerCase()===n.toLowerCase()&&e({event:r,key:n})};return document.addEventListener("keydown",t),()=>{document.removeEventListener("keydown",t)}}}function oi(n,e){const t=o.ref(n.enableEsc);let r=null;return t.value?(r=fn("Escape",i=>{e.emit("esc",{event:i.event,type:"esc"})}),{remove:r}):null}function ri(n,e){const t=o.ref(n.enableEnter);let r=null;return t.value?(r=fn("Enter",i=>{e.emit("enter",{event:i.event,type:"enter"})}),{remove:r}):null}const Ue=o.defineComponent({name:"FModal",props:dn,emits:["update:modelValue","accept","cancel","closed","resize","esc","enter","stopMove"],setup(n,e){const t=o.ref(n.width||300),r=o.ref(n.height||200),i=o.ref(n.modelValue),s=o.ref(""),a=o.ref(n.class),u=o.ref(n.fitContent),l=o.ref(n.showHeader),c=o.ref(""),d=o.ref(n.showCloseButton),f=o.ref(n.showMaxButton),h=o.ref(!1),g=o.ref(n.dialogType),p=o.ref(n.src),m=o.ref(""),S=o.ref(n.showButtons),N=o.ref(n.title),B=o.ref(n.containment||null),O=o.ref(),{t:F}=bt.useI18n();N.value==="错误提示"&&(N.value=F("messageBox.errorTitle"));const v=o.ref(!1);function b(D,te){const me=te?"accept":"cancel";Promise.resolve().then(()=>{var ge;return(ge=n.beforeClose)==null?void 0:ge.call(n,{closeType:me})}).then(ge=>{ge&&(i.value=!1,e.emit("update:modelValue",!1),te!=null&&e.emit(te?"accept":"cancel"),e.emit("closed",D))})}const k=[{name:"cancel",text:F("messageBox.cancel")||"取消",class:"btn btn-secondary",handle:D=>{b(D,!1)}},{name:"accept",text:F("messageBox.ok")||"确定",class:"btn btn-primary",handle:D=>{b(D,!0)}}],y=o.ref(n.buttons&&n.buttons.length?n.buttons:k),x=o.computed(()=>!!c.value),T=o.computed(()=>!!S.value&&!!y.value),C=o.ref(),w=o.ref(),E=o.ref(!1),{renderResizeBar:V,maximize:j,restore:_,boundingElement:J,resizedEventParam:$,allowDrag:P,unWindowResizeHandle:Y,moveToCenter:G}=ti(n),{registerDraggle:Z}=ni(n,e,P);function le(){return!!document.querySelectorAll(".farris-modal").length&&document.body.classList.contains("modal-open")}function de(){const D=document.querySelectorAll(".farris-modal").length;(!D||D-1<=0)&&document.body.classList.remove("modal-open"),O.value&&O.value.classList.remove("show")}o.watch(()=>n.title,(D,te)=>{D!==te&&(N.value=D)}),o.watch(()=>n.modelValue,(D,te)=>{D!==te&&(i.value=D,i.value&&n.draggable&&o.nextTick(()=>{w.value&&!B.value&&(B.value=w.value.parentElement,J.value=B.value,Z(C.value,w.value,J.value),G())}),D||(B.value&&(B.value=null),de())),i.value?v.value=le():(E.value=!1,P.value=n.draggable)}),o.watch(()=>n.showHeader,(D,te)=>{D!==te&&(l.value=D)}),o.watch(()=>n.showButtons,(D,te)=>{D!==te&&(S.value=D)}),o.watch(()=>$.value,(D,te)=>{const me=D||{},ge=te||{};JSON.stringify(me)!==JSON.stringify(ge)&&e.emit("resize",{newSize:D,oldSize:te,isMaximized:E.value})});const K=o.computed(()=>(i.value&&document.body.classList.add("modal-open"),i.value)),ue=o.computed(()=>{var me;const D={modal:!0,"farris-modal":!0,fade:!0};D["f-modal-fitContent"]=!!u.value,D.show=!!K.value;const te=(me=n.maskClass)==null?void 0:me.split(" ");return te==null||te.reduce((ge,Oe)=>(ge[Oe]=!0,ge),D),D}),he=o.computed(()=>{var me;const D={"modal-dialog":!0},te=(me=a.value)==null?void 0:me.split(" ");return te==null||te.reduce((ge,Oe)=>(ge[Oe]=!0,ge),D),D}),ae=o.computed(()=>{const D={position:"absolute",top:`${(window.innerHeight-r.value)/2}px`,left:`${(window.innerWidth-t.value)/2}px`,width:`${t.value}px`,height:u.value?"auto":`${r.value}px`};return n.mask||(D.pointerEvents="auto"),D}),X=()=>Ne.getMaxZIndex()||1040,se=o.computed(()=>{const D={display:"block",zIndex:X()};return n.mask||(D.pointerEvents="none",D.backgroundColor="transparent"),v.value&&(D.backgroundColor="transparent"),D}),ze=o.computed(()=>({"modal-content":!0,"modal-content-has-header":l.value})),De=o.computed(()=>{const D={display:l.value?"":"none"};return D["pointer-events"]=P.value?"auto":"none",D}),Ee=o.computed(()=>({"f-icon":!0,modal_maximize:!0,modalrevert:E.value})),Ze=o.computed(()=>({"modal-body":!0,"f-utils-flex-column":g.value==="iframe","f-utils-fill":!0}));function Ge(){return{height:`${n.footerHeight||60}px`}}const Ke=o.computed(()=>{const D={textAlgin:m.value},te=Ge();return Object.assign(D,te)});function pe(D){if(D==null||D.stopPropagation(),E.value){E.value=!1,_();return}j(),E.value=!0}async function rt(D,te){D.handle&&await D.handle(te,D)&&e.emit("closed",te)}function $e(D){D.width&&(t.value=D.width),D.height&&(r.value=D.height),D.buttons&&(y.value=D.buttons),D.title&&(N.value=D.title)}let Re=null,Be=null;o.onBeforeMount(()=>{v.value=le()}),o.onMounted(()=>{w.value&&!B.value&&(B.value=w.value.parentElement,J.value=B.value,Z(C.value,w.value,J.value)),K.value&&document.body.classList.add("modal-open"),Re=oi(n,e),Be=ri(n,e)}),o.onUnmounted(()=>{Y&&Y(),Re&&Re.remove(),Be&&Be.remove()}),e.expose({modalElementRef:w,updateModalOptions:$e,close:b,maxDialog:pe,isMaximized:E});function qe(){return o.createVNode("ul",null,[h.value&&o.createVNode("li",{class:"f-btn-icon f-bare"},[o.createVNode("span",{class:"f-icon modal_minimize"},null)]),f.value&&o.createVNode("li",{onClick:pe,class:"f-btn-icon f-bare",style:"pointer-events: auto;"},[o.createVNode("span",{class:Ee.value},null)]),d.value&&o.createVNode("li",{class:"f-btn-icon f-bare",onClick:D=>b(D,!1),style:"pointer-events: auto;"},[o.createVNode("span",{class:"f-icon modal_close"},null)])])}function it(){return o.createVNode("div",{class:"modal-footer",style:Ke.value},[y.value&&y.value.map(D=>{const te=o.ref(D.disabled);return o.createVNode("button",{name:D.name,type:"button",disabled:te.value,class:D.class+(D.iconClass?" btn-icontext":""),onClick:me=>{rt(D,me)}},[!!D.iconClass&&o.createVNode("i",{class:D.iconClass},null),D.text])})])}function _e(){return o.createVNode("div",{ref:C,class:"modal-header",style:De.value},[e.slots.headerTemplate?e.slots.headerTemplate():o.createVNode("div",{class:"modal-title"},[x.value&&o.createVNode("span",{class:c.value,style:"margin-right: 8px"},null),o.createVNode("span",{class:"modal-title-label"},[N.value])]),o.createVNode("div",{class:"actions"},[qe()])])}function Ie(){return e.slots.footerTemplate?e.slots.footerTemplate():T.value&&it()}function Le(D){if(D.stopPropagation(),n.allowClickMaskToClose){if(D.target!==O.value)return;b(D,!1)}}function et(){var D,te;return o.createVNode("div",{id:s.value,class:he.value,style:ae.value,ref:w},[o.createVNode("div",{class:ze.value},[l.value&&_e(),o.createVNode("div",{class:Ze.value},[(te=(D=e.slots).default)==null?void 0:te.call(D),g.value==="iframe"&&o.createVNode("iframe",{title:s.value,class:"f-utils-fill",width:"100%",frameborder:"0",src:p.value},null)]),Ie()]),!u.value&&w.value&&!E.value&&V(w.value)])}function tt(D){return D||"body"}return()=>o.createVNode(o.Teleport,{to:tt(n.host)},{default:()=>[K.value&&o.createVNode(o.Transition,{name:"fade",appear:!0},{default:()=>[o.createVNode("div",{ref:O,class:ue.value,style:se.value,onClick:Le},[et()])]})]})}});function pn(n){if(n.content&&n.content.render)return n.content.render;if(n.render&&typeof n.render=="function")return n.render}function ii(n){const e=document.createElement("div");e.style.display="contents";const t=o.createApp({setup(r,i){o.onUnmounted(()=>{document.body.removeChild(e)});const s=o.ref(),a=o.ref(n.class||""),u=o.ref(!!n.showButtons),l=o.ref(!!n.showHeader),c=o.ref(n.showCloseButton==null?!0:n.showCloseButton),d=o.ref(!0),f=o.ref(n.title||""),h=n.acceptCallback||(()=>{}),g=n.rejectCallback||(()=>{}),p=n.closedCallback||(O=>{}),m=n.resizeHandle||(O=>{}),S=n.stopMoveHandle||(O=>{}),N=pn(n),B=O=>{d.value=!1,t.unmount(),p(O)};return o.onMounted(()=>{}),i.expose({modalRef:s}),()=>o.createVNode(Ue,{ref:s,class:a.value,modelValue:d.value,"onUpdate:modelValue":O=>d.value=O,title:f.value,width:n.width,height:n.height,buttons:n.buttons,"show-header":l.value,"show-buttons":u.value,"show-close-button":c.value,"show-max-button":!1,onAccept:h,onCancel:g,fitContent:n.fitContent==null?!0:n.fitContent,onClosed:B,onResize:m,onStopMove:S},{default:()=>[N&&N(t)]})}});return document.body.appendChild(e),t.use(dt.LocaleService.i18n),t.mount(e),t}class mn{constructor(e){oe(this,"appContext",null);oe(this,"modalRef",o.ref());oe(this,"activeModalIndex",o.ref(0));oe(this,"modalRefs",{});oe(this,"isUseEscCloseModal",o.ref(!1));oe(this,"activeModalInstance",o.computed(()=>this.modalRefs[this.activeModalIndex.value]));this.app=e,this.appContext=e?e._context:null}getCurrentModal(){return this.activeModalInstance.value}adaptToWindow(e,t){const{width:r,height:i}={width:window.innerWidth,height:window.innerHeight};return r<e&&(e=r-14),i<t&&(t=i-14),{width:e,height:t}}static show(e){const t=Object.assign({title:"",showButtons:!0,showHeader:!0},e);return ii(t)}close(e){var t,r;e?(r=e.value)==null||r.close():(t=this.getCurrentModal())==null||t.close()}open(e){const t=document.createDocumentFragment();e.showMaxButton&&e.fitContent&&(e.showMaxButton=!1);const r=o.shallowRef(Object.assign({title:"",showButtons:!0,showHeader:!0},e)),i=o.ref(!0),s=r.value.acceptCallback||(()=>{}),a=r.value.rejectCallback||(()=>{}),u=r.value.closedCallback||((v,b)=>{}),l=r.value.resizeHandle||(v=>{}),c=e.stopMoveHandle||(v=>{});let d;const f=pn(r.value),h=v=>{var k;i.value=!1;const b=(k=v==null?void 0:v.target)==null?void 0:k.classList.contains("modal_close");u(v,this.isUseEscCloseModal.value?"esc":b?"icon":"button")},g=v=>{h(v),d&&o.nextTick(()=>{if(this.modalRefs[this.activeModalIndex.value]&&delete this.modalRefs[this.activeModalIndex.value],o.render(null,t),d=null,this.modalRef.value=null,this.modalRefs){const b=Object.keys(this.modalRefs).map(k=>Number(k));b.length>0?this.activeModalIndex.value=Math.max(...b):this.activeModalIndex.value=0}this.isUseEscCloseModal.value=!1})},p=v=>{var b;this.isUseEscCloseModal.value=!0,this.activeModalInstance&&((b=this.activeModalInstance.value)==null||b.close(v==null?void 0:v.event))},{width:m,height:S}=r.value,N=this.adaptToWindow(m||500,S||320);Object.assign(r.value,N);const B=()=>o.createVNode(Ue,o.mergeProps({ref:this.modalRef,modelValue:i.value,"onUpdate:modelValue":v=>i.value=v},r.value,{onAccept:s,onCancel:a,onClosed:g,onResize:l,onEsc:p,onStopMove:c}),{default:()=>[f&&f(this.app)]});return d=(v=>{const b=o.h(B,v);return b.appContext=this.appContext,o.render(b,t),b})({...r.value}),this.activeModalIndex.value++,this.modalRefs[this.activeModalIndex.value]=this.modalRef.value,{update:v=>{r.value={...r.value,...v},d&&o.render(o.cloneVNode(d,{...r}),t)},destroy:g,modalRef:this.activeModalInstance,close:()=>this.close()}}}const ai=Symbol("FModalService");Ue.install=n=>{n.component(Ue.name,Ue);const e=new mn(n);n.provide(ai,e),n.provide("FModalService",e)},Ue.register=(n,e,t,r)=>{n.modal=Ue,e.modal=Kr,r.modal={callbackResolver:ei}},Je({id:{type:String,default:""},editor:{type:Object,default:{}},modelValue:{type:[String,Boolean,Array,Number]},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1}},an,Nt,void 0);const si={$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"]},li={initialState:{type:Object,default:{uniqueColClassInSM:12,uniqueColClassInMD:6,uniqueColClassInLG:3,uniqueColClassInEL:2}}};ut.createPropsResolver(li,si,$r,Ar);const ci={width:{Type:Number,default:400},type:{Type:String,default:"info"},title:{Type:String,default:""},detail:{Type:String,default:""},okButtonText:{Type:String,default:"确定"},showOkButton:{Type:Boolean,default:!0},showCancelButton:{Type:Boolean,default:!0},cancelButtonText:{Type:String,default:"取消"},exceptionInfo:{Type:Object,default:null},promptEditorType:{Type:String,default:"text-area"},buttons:{type:Object,default:[]}};function Et(){return new DOMException("The request is not allowed","NotAllowedError")}async function ui(n){if(!navigator.clipboard)throw Et();return navigator.clipboard.writeText(n)}async function di(n){const e=document.createElement("span");e.textContent=n,e.style.whiteSpace="pre",e.style.webkitUserSelect="auto",e.style.userSelect="all",document.body.appendChild(e);const t=window.getSelection(),r=window.document.createRange();t==null||t.removeAllRanges(),r.selectNode(e),t==null||t.addRange(r);let i=!1;try{i=window.document.execCommand("copy")}finally{t==null||t.removeAllRanges(),window.document.body.removeChild(e)}if(!i)throw Et()}async function fi(n){try{await ui(n)}catch(e){try{await di(n)}catch(t){throw t||e||Et()}}}function pi(){async function n(e){await fi(e)}return{onCopy:n}}function mi(n,e,t,r){const i=o.ref(14),s=o.ref(140),a=o.ref(""),u=o.ref(r.value.length),l=o.computed(()=>r.value),c=o.computed(()=>({"font-size":`${i.value}px`,height:"100%"}));function d(f){if(f.currentTarget){const h=f.currentTarget.value||"";u.value=h.length}}return()=>o.createVNode(o.Fragment,null,[o.createVNode("textarea",{title:"promptMessage",name:"promptMessage",class:"form-control",style:c.value,rows:"4",maxlength:s.value,onInput:f=>d(f)},[l.value]),o.createVNode("span",{class:"textarea-wordcount",title:a.value,style:"position: absolute; bottom: 76px; right: 32px; cursor: pointer; text-align: right;"},[u.value+" / "+s.value])])}function hi(n,e,t,r){const i=mi(n,e,t,r),s=new Map([["text-area",i]]);function a(u){return s.get(u)||null}return{getEditorRender:a}}function gi(){const n=o.ref(!1),e=o.ref("复制成功");return{feedbackStyle:o.computed(()=>{const r={position:"absolute",left:"50%",top:"50%","min-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",padding:"0 10px"};return r.opacity=n.value?"0.8":"0",r.display=n.value?"":"none",r}),feedbackMessage:e,toShowFeedback:n}}function yi(n,e){const t=e.getEditorRender(n.promptEditorType);return()=>t&&t()}function vi(n,e){function t(g){if(g==null)return 0;let p=0;for(let m=0;m<g.length;m++){const S=g.charCodeAt(m);S>=0&&S<=128?p++:p=p+2}return p}function r(g,p){if(g!==""&&g!==void 0&&g!==null){g=""+g;const m=g.length;let S="",N=0;for(let B=0;B<m;B++){const O=g.charAt(B);if(N++,encodeURI(O).length>4&&N++,S=S.concat(O),N>=p)return S=S.concat("..."),S}if(N<p)return g}return""}const i=o.computed(()=>!!n.value&&!!n.value.date),s=o.computed(()=>{const g=n.value&&n.value.date||"";return`${e.exception.happend} : ${g}`}),a=o.computed(()=>!!n.value&&!!n.value.detail),u=o.computed(()=>n.value?t(n.value.detail)>160:!1),l=o.ref(!1),c=o.computed(()=>l.value?e.exception.collapse:e.exception.expand),d=o.computed(()=>{const g=e.exception.detail+" : "+(n.value&&n.value.detail)||"";return l.value?g:r(g,160)}),f=o.computed(()=>({position:"absolute",right:0,bottom:l.value?0:"2px",color:"#2A87FF",cursor:"pointer"}));function h(){l.value=!l.value}return()=>o.createVNode("div",{class:"toast-msg-detail"},[i.value&&o.createVNode("div",null,[s.value]),a.value&&o.createVNode("div",{class:"exception_wrap"},[o.createVNode("div",{class:"exception_error_msg"},[o.createVNode("div",{innerHTML:d.value},null),u.value&&o.createVNode("span",{style:f.value,onClick:h},[c.value])])])])}function bi(n){return()=>o.createVNode("p",{class:"toast-msg-detail",innerHTML:n.value},null)}function Ci(n,e,t,r,i){const s=o.ref(n.exceptionInfo),a=o.computed(()=>{const p=e.value==="question"?"warning":e.value,m={"f-icon":!0},S=`f-icon-${p}`;return m[S]=!0,m}),u=o.computed(()=>t.value||s.value&&s.value.message),l=o.computed(()=>r.value),c=o.computed(()=>!!r.value),d=o.computed(()=>!!s.value);function f(){return d.value?vi(s,i):c.value?bi(l):()=>null}const h=f(),g=o.computed(()=>i.locale==="en"?{wordBreak:"keep-all",overflowWrap:"break-word"}:{});return()=>o.createVNode(o.Fragment,null,[o.createVNode("div",{class:"float-left modal-tips-iconwrap"},[o.createVNode("span",{class:a.value},null)]),o.createVNode("div",{class:"modal-tips-content"},[o.createVNode("p",{class:"toast-msg-title",innerHTML:u.value,style:g.value},null),h()])])}function wi(n,e,t,r){const{onCopy:i}=e,{toShowFeedback:s}=t,a=o.ref(r.exception.copySuccess||"复制成功"),u=o.ref(r.exception.copy||"复制详细信息"),l=o.ref(n.exceptionInfo||{date:"",message:"",detail:""}),c=o.computed(()=>l.value&&l.value.detail||"");function d(f){i(c.value).catch(h=>{a.value=r.exception.copyFailed||"复制失败"}).finally(()=>{s.value=!0,setTimeout(()=>{s.value=!1},700)})}return()=>o.createVNode("span",{style:"width: 100%;color: #2A87FF;padding-left: 37px;"},[o.createVNode("span",{onClick:d,style:"cursor: pointer;"},[u.value])])}function xi(n,e,t,r,i){const s=o.ref(n.type),a=o.ref(n.buttons),u=o.ref(n.exceptionInfo),l=o.ref(i.ok||n.okButtonText),c=o.ref(i.cancel||n.cancelButtonText),d=o.ref(n.showCancelButton),f=o.ref(n.showOkButton),h=o.computed(()=>!!(a.value&&a.value.length)),g=o.computed(()=>u.value&&u.value.message&&u.value.detail),p=o.computed(()=>!(a.value&&a.value.length)&&(f.value||d.value)),m=wi(n,t,r,i);l.value==="关闭"?l.value=i.close:l.value==="知道了"&&(l.value=i.exception.roger);function S(B){s.value==="question"&&e.emit("reject"),e.emit("close")}function N(B){s.value==="question"&&e.emit("accept"),e.emit("close")}return()=>o.createVNode("div",{class:"modal-footer"},[g.value&&m(),p.value&&d.value&&o.createVNode("button",{type:"button",class:"btn btn-secondary btn-lg",onClick:S},[c.value]),p.value&&f.value&&o.createVNode("button",{type:"button",class:"btn btn-primary btn-lg",onClick:N},[l.value]),h.value&&a.value.length&&a.value.map(B=>o.createVNode("button",{type:"button",onClick:B.handle,class:B.class},[B.iconClass&&o.createVNode("span",{class:B.iconClass},null),B.text]))])}function Si(n){const{t:e,locale:t}=bt.useI18n();function r(i,s,a){return s===a?e(i):s}return{yes:r("messageBox.yes")||"是",no:r("messageBox.no")||"否",close:r("messageBox.close")||"关闭",ok:r("messageBox.ok",n.okButtonText,"确定")||"确定",cancel:r("messageBox.cancel",n.cancelButtonText,"取消")||"取消",title:r("messageBox.title")||"系统提示",errorTitle:r("messageBox.errorTitle")||"错误提示",exception:{expand:r("messageBox.exception.expand")||"展开",collapse:r("messageBox.exception.collapse")||"收起",happend:r("messageBox.exception.happend")||"发生时间",detail:r("messageBox.exception.detail")||"详细信息",copy:r("messageBox.exception.copy")||"复制详细信息",copySuccess:r("messageBox.exception.copySuccess")||"复制成功",copyFailed:r("messageBox.exception.copyFailed")||"复制失败",roger:r("messageBox.exception.roger")||"知道了"},locale:t.value}}const ht=o.defineComponent({name:"FMessageBox",props:ci,emits:["accept","reject","close"],setup(n,e){const t=Si(n),r=o.ref(n.type),i=o.ref(n.title),s=o.ref(n.detail),a=o.computed(()=>{const N={"modal-tips":!0,"d-flex":!0,"flex-row":!0},B=`messager-type-${r.value}`;return N[B]=!0,N}),u=o.computed(()=>{const N={cursor:"default"};return r.value==="prompt"?N.padding="0.5rem 0.5rem 1rem 1.5rem":r.value==="error"&&(N.padding="0.5rem 1.5rem 1rem 1.5rem"),N}),l=pi(),c=hi(n,r,i,s),d=gi(),{feedbackStyle:f,feedbackMessage:h}=d;h.value=t.exception.copySuccess;function g(){return o.createVNode("div",{style:f.value},[h.value])}function p(){switch(r.value){case"prompt":return yi(n,c);default:return Ci(n,r,i,s,t)}}const m=p(),S=xi(n,e,l,d,t);return()=>o.createVNode("div",{class:"farris-messager"},[!n.exceptionInfo&&o.createVNode("div",{style:"height: 30px;width: 100%;position: absolute;",class:"messager-draggable"},null),o.createVNode("section",{class:a.value,style:u.value},[m()]),S(),g()])}}),Me=class Me{static show(e){const t=o.reactive({...e}),r=!1,i=t.type==="error"||t.type==="prompt",s=t.type==="error"?"错误提示":t.type==="prompt"&&t.title||"",a=t.acceptCallback||(()=>{}),u=t.rejectCallback||(()=>{});let l=null,c=new mn(Me.app);const d=()=>{l&&(l==null||l.destroy(),c=null)};return l=c==null?void 0:c.open({class:"modal-message modal-message-type-info",title:s,showButtons:r,showHeader:i,width:t.width||400,fitContent:!0,showMaxButton:!1,draggable:!0,dragHandle:".messager-draggable",render:()=>o.createVNode(ht,o.mergeProps(t,{onAccept:a,onReject:u,onClose:d}),null)}),c==null?void 0:c.getCurrentModal()}static info(e,t){const r=o.reactive({type:"info",title:e,detail:t,okButtonText:"知道了",showCancelButton:!1});Me.show(r)}static warning(e,t){const r=o.reactive({type:"warning",title:e,detail:t,okButtonText:"知道了",showCancelButton:!1});Me.show(r)}static success(e,t){const r=o.reactive({type:"success",title:e,detail:t,okButtonText:"关闭",showCancelButton:!1});Me.show(r)}static error(e,t,r){const i=o.reactive({width:500,type:"error",okButtonText:"关闭",showCancelButton:!1,exceptionInfo:{date:r,message:e,detail:t}});Me.show(i)}static prompt(e,t){const r=o.reactive({type:"prompt",title:e,detail:t,okButtonText:"确定",cancelButtonText:"取消"});Me.show(r)}static question(e,t,r,i){const s=o.reactive({type:"question",title:e,detail:t,okButtonText:"确定",cancelButtonText:"取消",acceptCallback:r,rejectCallback:i});Me.show(s)}};oe(Me,"app",null);let gt=Me;ht.install=n=>{n.component(ht.name,ht),gt.app=n,n.provide("FMessageBoxService",gt)};const Ti=o.defineComponent({name:"FEntityBindingSelector",props:Mr,emits:["submit","cancel"],setup(n,e){const t=kr(n),{entityColumns:r,entityTreeGridRef:i,entityDataSource:s,checkAndGetSelectedEntity:a,resolveEntityDataSource:u,entityTreeRowOption:l,initialSelectedEntity:c,isMainEntityInitialSelected:d}=t,f=on(n),{fieldColumns:h,resolveFieldDataSource:g,fieldDataSource:p,fieldTreeGridRef:m,fieldTreeRowOption:S,fieldSelectionOption:N,checkAndGetSelectedFields:B,currentComponentType:O}=f,F=new Ft;F.globalConfig={position:"top-center"};const v=[{name:"卡片面板",value:"response-form"},{name:"表格",value:"data-grid"}],b=o.ref(),k=o.ref(""),y=o.ref([{id:"selectComponentType",title:"选择组件类型"},{id:"selectEntity",title:"选择实体"},{id:"selectFields",title:"选择显示字段"}]),x=o.ref(0),T=o.ref(""),C=o.computed(()=>Z=>({"f-utils-fill":!0,border:Z!=="selectComponentType","mx-3":!0,"my-2":!0,"position-relative":!0,"d-none":y.value[x.value].id!==Z}));function w(){n.bindingEntityId&&(c!=null&&c.value)&&(k.value=c.value.name),n.componentType||(b.value=d.value?"response-form":"data-grid")}function E(){const Z=a();Z&&(g(Z),m.value.updateDataSource(p.value))}o.onBeforeMount(()=>{n.steps&&(y.value=y.value.filter(Z=>n.steps.includes(Z.id))),T.value=y.value[0].id,u(),w()}),o.onMounted(()=>{var Z,le;i&&((Z=c.value)!=null&&Z.id)&&i.value.selectItemById((le=c.value)==null?void 0:le.id),y.value.length===1&&y.value[0].id==="selectFields"&&E()});function V(Z){var le;(le=m==null?void 0:m.value)!=null&&le.clearSelection&&m.value.clearSelection()}function j(){return o.createVNode(Vt,{key:1,ref:i,fit:!0,data:s.value,idField:"id",columns:r.value,rowNumber:{enable:!1},"row-option":l,columnOption:{fitColumns:!0}},null)}function _(){return o.createVNode(Vt,{key:2,ref:m,hierarchy:{cascadeOption:{autoCheckChildren:!0,autoCheckParent:!0}},fit:!0,data:p.value,idField:"id",columns:h.value,rowNumber:{enable:!1},columnOption:{fitColumns:!0},"row-option":S,selection:N},null)}function J(){const Z={editable:!1,type:"combo-list",data:v,idField:"value",valueField:"value",textField:"name"},le={type:"input-group",enableClear:!1};return o.createVNode("div",null,[o.createVNode("div",{class:"f-utils-fill"},[o.createVNode("div",{class:"f-section py-0"},[o.createVNode("div",{class:"f-section-header"},[o.createVNode("div",{class:"f-title"},[o.createVNode("h4",{class:"f-title-text"},[o.createTextVNode("组件信息")])])]),o.createVNode("div",{class:"f-section-content"},[o.createVNode("div",{class:"f-form-layout farris-form farris-form-controls-inline"},[o.createVNode(cn,{label:"组件类型",customClass:"col-12",modelValue:b.value,"onUpdate:modelValue":de=>b.value=de,required:"true",editor:Z,onChange:V},null),o.createVNode(cn,{label:"组件标题",customClass:"col-12",modelValue:k.value,"onUpdate:modelValue":de=>k.value=de,required:"true",editor:le},null)])])])])])}function $(){x.value--,T.value=y.value[x.value].id}function P(){var Z;switch(T.value){case"selectEntity":{E();break}case"selectComponentType":{if(!b.value){F.warning("请先选择组件类型");return}if(!((Z=k.value)!=null&&Z.trim())){F.warning("请先填写组件标题");return}O.value=b.value,g(c.value),m.value.updateDataSource(p.value);break}}x.value++,T.value=y.value[x.value].id}function Y(){e.emit("cancel")}function G(){var de;const Z=a(),le=B();if(Z){const K={bindingType:"entity"};K.bindingEntity=Z,K.bindTo=t.entityBindToMap.get(((de=K.bindingEntity)==null?void 0:de.label)||""),K.bindingEntityFields=le,K.entityTitle=k.value,e.emit("submit",{bindingContext:K,componentType:b.value})}}return()=>{var Z;return o.createVNode("div",{class:"h-100 d-flex flex-column"},[((Z=y.value)==null?void 0:Z.length)>1?o.createVNode(Dr,{steps:y,activeIndex:x,style:"align-self:center"},null):"",o.createVNode("div",{class:C.value("selectEntity"),style:"border-radius:10px;"},[j()]),o.createVNode("div",{class:C.value("selectComponentType"),style:"border-radius:10px;"},[J()]),o.createVNode("div",{class:C.value("selectFields"),style:"border-radius:10px;"},[_()]),o.createVNode("div",{class:"modal-footer"},[o.createVNode("button",{class:"btn btn-secondary",onClick:Y},[o.createTextVNode("取消")]),x.value!==0?o.createVNode("button",{class:"btn btn-secondary",onClick:$},[o.createTextVNode("上一步")]):"",x.value!==y.value.length-1?o.createVNode("button",{class:"btn btn-primary",onClick:P},[o.createTextVNode("下一步")]):"",x.value===y.value.length-1?o.createVNode("button",{class:"btn btn-primary",onClick:G},[o.createTextVNode("确定")]):""])])}}});function Fi(n,e){let t;function r(l){var p,m,S,N,B,O;const c=(m=(p=n.parent)==null?void 0:p.parent)==null?void 0:m.componentInstance;if(!((B=(N=(S=c==null?void 0:c.value)==null?void 0:S.schema)==null?void 0:N.contents)!=null&&B.length))return;const d={componentType:"response-form",bindingSourceContext:l,parentComponentInstance:c.value},f=c.value.addNewChildComponentSchema(d,e),h=(O=n.parent)==null?void 0:O.schema,g=c.value.schema.contents.findIndex(F=>F.id===(h==null?void 0:h.id));g>-1&&c.value.schema.contents.splice(g+1,0,f)}function i(l){var c,d;r(l.bindingContext),(c=t==null?void 0:t.modalRef)!=null&&c.value.close&&((d=t==null?void 0:t.modalRef)==null||d.value.close())}function s(){var l,c;(l=t==null?void 0:t.modalRef)!=null&&l.value.close&&((c=t==null?void 0:t.modalRef)==null||c.value.close())}function a(){if(!e)return;const{schemaService:l,formSchemaUtils:c}=e,{componentType:d}=n.schema,f=c.getViewModelIdByComponentId(n.componentInstance.value.belongedComponentId),h=l.getTableInfoByViewModelId(f),g=h==null?void 0:h.id,p=["selectFields"];return()=>o.createVNode(o.Fragment,null,[o.createVNode(Ti,{componentType:d,bindingEntityId:g,steps:p,designerHostService:e,onSubmit:i,onCancel:s},{default:()=>[o.createTextVNode(" ")]}),o.createTextVNode(" ")])}function u(l){l.stopPropagation(),l.preventDefault(),e&&(t=e.modalService.open({title:"添加卡片",width:800,height:600,fitContent:!1,showButtons:!1,render:a(),enableEsc:!1,draggable:!0}))}return{addSiblingComponent:u}}const Vi={componentId:{type:String,default:""},designerHostService:{type:Object,default:{}}};class Ni{constructor(e,t){oe(this,"controlsInfo",{});oe(this,"formSchemaUtils");oe(this,"designViewModelUtils");oe(this,"viewModelId","");this.designerHostService=e,this.componentId=t,this.formSchemaUtils=this.designerHostService.formSchemaUtils,this.designViewModelUtils=this.designerHostService.designViewModelUtils,this.viewModelId=this.formSchemaUtils.getViewModelIdByComponentId(this.componentId)}buildFieldTreeData(){const e=this.designViewModelUtils.getDgViewModel(this.viewModelId);if(!e)return[];const t=this.formSchemaUtils.getComponentById(this.componentId);if(!t)return[];const{componentType:r}=t,i=e.fields;if(r==="data-grid"||r==="form"){const s=this.getAllControlsInComponents(t);return this.controlsInfo.controls=s,this.buildFieldTreeDataByControls(i,s,r)}return[]}getAllControlsInComponents(e){const t=[],r=this.getFormLayoutInCmp(e.contents);if(this.controlsInfo.formLayout=r,r){const i=r.columns||r.contents;this.getAllControlsInLayout(i,t)}return t}buildFieldTreeDataByControls(e,t,r){const i=[],s=new Map,a=[];return t.forEach(u=>{if(u.type===R.fieldset.type){a.push(u);return}const l=this.buildFieldTreeNodeFromControl(u,e,this.componentId,r);if(l)if(l.isInGroupNode){if(!s.has(l.groupId)){const d=this.buildFieldTreeGroupNodeWithBindingEntityField(u,e,a);d&&(s.set(l.groupId,d),i.push(d))}const c=s.get(l.groupId);c!=null&&c.children&&c.children.push(l)}else i.push(l)}),i}buildFieldTreeNodeFromControl(e,t,r,i){let s;return e.binding?e.binding.type===Mt.Variable?s=this.buildFieldTreeNodeWithBindingVariable(e):s=this.buildFieldTreeNodeWithBindingEntityField(e,t,r,i):s=this.buildFieldTreeNodeWithoutControlBinding(e),s}buildFieldTreeNodeWithoutControlBinding(e){return{canChangeControlType:!1,children:[],componentId:"",componentType:"",control:e,data:{id:e.id,name:e.title||e.text||e.label},groupId:"",expanded:!1,isBindVariable:!1,isComplexField:!1,isGroupNode:!1,isInGroupNode:!1,isNoBinding:!0,isRemoved:!1,nodeType:""}}buildFieldTreeNodeWithBindingVariable(e){const t=e.binding.field,r=this.formSchemaUtils.getVariableById(t),i=this.formSchemaUtils.getViewModelById(this.viewModelId),s=i==null?void 0:i.fields.find(u=>u.id===t),a=s&&s.groupId;return{canChangeControlType:!1,children:[],componentId:"",componentType:"",control:e,data:{id:t,name:e.title||e.text||e.label,code:e.binding.fullPath||e.binding.path,controlType:e.type,type:r&&r.type,category:r&&r.category},groupId:a,expanded:!1,isBindVariable:!0,isComplexField:!1,isInGroupNode:!!a,isGroupNode:!1,isNoBinding:!1,isRemoved:!1,nodeType:""}}buildFieldTreeNodeWithBindingEntityField(e,t,r,i){const s=e.binding.field,a=t.find(h=>h.id===s);if(!a)return;const{groupId:u}=a,l=a.isSchemaRemoved?{id:s,name:e.title||e.text||e.label}:a,c=a.isSchemaRemoved,d=!a.isSchemaRemoved,f=a.$type==="ComplexField";return{canChangeControlType:d,children:[],componentId:r,componentType:i,control:e,data:l,expanded:!1,groupId:u,isBindVariable:!1,isComplexField:f,isGroupNode:!1,isInGroupNode:!!u,isNoBinding:!1,isRemoved:!!c,nodeType:"field"}}buildFieldTreeGroupNodeWithBindingEntityField(e,t,r){const i=e.binding.field;if(e.binding.type===Mt.Form){const s=t.find(c=>c.id===i);if(!s)return;const{groupId:a,groupName:u}=s,l=r.find(c=>c.id===a);return{canChangeControlType:!1,children:[],componentId:"",componentType:"",control:l,data:{id:a,name:u},groupId:a,expanded:!0,isBindVariable:!1,isComplexField:!1,isGroupNode:!0,isInGroupNode:!1,isNoBinding:!1,isRemoved:!1,nodeType:"group"}}else{const s=this.formSchemaUtils.getViewModelById(this.viewModelId),a=s==null?void 0:s.fields.find(d=>d.id===i);if(!a)return;const{groupId:u,groupName:l}=a,c=r.find(d=>d.id===u);return{canChangeControlType:!1,children:[],componentId:"",componentType:"",control:c,data:{id:u,name:l},groupId:u,expanded:!0,isBindVariable:!1,isComplexField:!1,isGroupNode:!0,isInGroupNode:!1,isNoBinding:!1,isRemoved:!1,nodeType:"group"}}}getFormLayoutInCmp(e){if(!e)return{};for(const t of e){if([R["data-grid"].type,R["tree-grid"].type,R["response-form"].type].includes(t.type))return t;if(t.contents){const i=this.getFormLayoutInCmp(t.contents);if(i)return i}}return null}getAllControlsInLayout(e,t){if(e)for(const r of e)r.type===R.fieldset.type&&t.push(r),r.contents?this.getAllControlsInLayout(r.contents,t):t.push(r)}}const Mi=o.defineComponent({name:"FSplitterFormComponent",props:Vi,emits:["cancel","submit"],setup(n,e){const t=o.ref(""),r=o.ref(),i=o.ref(n.data),s=o.ref([{field:"name",title:"名称"},{field:"bindingPath",title:"绑定字段"}]),{schemaService:a,formSchemaUtils:u}=n.designerHostService,l=new Uo.FNotifyService;l.globalConfig={position:"top-center"};const c={enableSelectRow:!0,multiSelect:!0,multiSelectMode:"OnCheckAndClick",showCheckbox:!0,showSelectAll:!0},d={cascadeOption:{autoCheckChildren:!0,autoCheckParent:!0}};o.onBeforeMount(()=>{const m=u.getViewModelIdByComponentId(n.componentId),{name:S}=a.getTableInfoByViewModelId(m);t.value=S;const N=new Ni(n.designerHostService,n.componentId);i.value=N.buildFieldTreeData()});function f(){e.emit("cancel")}function h(){if(!t.value){l.warning({message:"请填写组件标题"});return}const m=r.value.getSelectedItems();if(!m.length){l.warning("请选择字段");return}e.emit("submit",{selections:m,componentTitle:t.value})}function g(m,S){const N=S.raw;return o.createVNode(o.Fragment,null,[N.isRemoved?o.createVNode("span",{title:"绑定字段不存在,请在视图模型中手动移除。"},[o.createTextVNode("绑定字段不存在。 ")]):"",N.isBindVariable?o.createVNode("span",null,[o.createTextVNode("变量:"),N.code,o.createTextVNode(" ")]):"",N.isNoBinding?o.createVNode("span",null,[o.createTextVNode("控件没有绑定信息 ")]):"",!N.isRemoved&&!N.isBindVariable&&!N.isComplexField?o.createVNode("span",null,[N.bindingField,o.createTextVNode(" ")]):""])}function p(m){var N;const S=(N=m.raw)==null?void 0:N.control;return o.createVNode(o.Fragment,null,[S.label?o.createVNode("span",null,[S.label,o.createTextVNode(" ")]):o.createVNode("span",null,[S.id,o.createTextVNode(" ")])])}return()=>o.createVNode("div",{class:"h-100 d-flex flex-column flex-fill"},[o.createVNode("div",{class:"f-section pt-3 pl-4"},[o.createVNode("div",{class:"f-section-header"},[o.createVNode("div",{class:"f-title"},[o.createVNode("h4",{class:"f-title-text"},[o.createTextVNode(" 组件信息 ")])])]),o.createVNode("div",{class:"f-section-content"},[o.createVNode("div",{class:"f-form-layout farris-form farris-form-controls-inline"},[o.createVNode("div",{class:"col-12 farris-group-wrap"},[o.createVNode("div",{class:"form-group farris-form-group"},[o.createVNode("label",{class:"col-form-label",style:"justify-content: start !important; width: 80px !important;"},[o.createVNode("span",{class:"farris-label-info text-danger"},[o.createTextVNode("*")]),o.createVNode("span",{class:"farris-label-text"},[o.createTextVNode(" 组件标题")])]),o.createVNode("div",{class:"farris-input-wrap"},[o.withDirectives(o.createVNode("input",{class:"form-control",type:"input","onUpdate:modelValue":m=>t.value=m},null),[[o.vModelText,t.value]])])])])])])]),o.createVNode("div",{class:"f-section pl-4 f-utils-fill"},[o.createVNode("div",{class:"f-section-header"},[o.createVNode("div",{class:"f-title"},[o.createVNode("h4",{class:"f-title-text"},[o.createTextVNode(" 组件字段 ")])])]),o.createVNode("div",{class:"f-section-content border f-utils-fill"},[o.createVNode(zo,{key:1,ref:r,fit:!0,data:i.value,idField:"id",columns:s.value,rowNumber:{enable:!1},columnOption:{fitColumns:!0},selection:c,hierarchy:d},{cellTemplate:({cell:m,row:S})=>m.field==="bindingPath"?g(m,S):p(S)})])]),o.createVNode("div",{class:"modal-footer"},[o.createVNode("button",{type:"button",class:"btn btn-secondary",onClick:f},[o.createTextVNode("取消")]),o.createVNode("button",{type:"button",class:"btn btn-primary",onClick:h},[o.createTextVNode("确定")])])])}});function hn(){function n(){const t=r=>{const i=Math.random()*16|0;return(r==="x"?i:i&3|8).toString(16)};return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,t)}function e(t,r){const i="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".split(""),s=[];let a;if(r=r||i.length,t)for(a=0;a<t;a++)s[a]=i[0|Math.random()*r];else{let u;for(s[8]=s[13]=s[18]=s[23]="-",s[14]="4",a=0;a<36;a++)s[a]||(u=0|Math.random()*16,s[a]=i[a===19?u&3|8:u])}return s.join("")}return{guid:n,uuid:e}}const Ei=["moz","ms","webkit"];function Bi(){let n=0;return e=>{const t=new Date().getTime(),r=Math.max(0,16-(t-n)),i=setTimeout(()=>{e(t+r)},r);return n=t+r,i}}function ki(){if(typeof window>"u")return()=>0;if(window.requestAnimationFrame)return window.requestAnimationFrame.bind(window);const n=Ei.filter(e=>`${e}RequestAnimationFrame`in window)[0];return n?window[`${n}RequestAnimationFrame`]:Bi()}ki();function ji(n,e){let t;const r=o.ref(""),i=o.ref([]),s=o.ref([]),a=o.ref([]),u=n.componentInstance.value.belongedComponentId;function l(y){y.forEach(x=>{x.isGroupNode||(x.isNoBinding||s.value.push(x.data.id),i.value.push(x.control))})}function c(y){var V;const x=n.componentInstance.value.schema;let T={};x.contents&&x.contents.length>0&&(T=x.contents.find(j=>j.type===Xe.DgControl.section.type)||{});const C=Object.assign({},T,{id:y+"-section",mainTitle:r.value,appearance:T.appearance?ce.cloneDeep(T.appearance):{class:"f-section-form f-section-in-mainsubcard"},contents:[]}),w=((V=T.contents)==null?void 0:V.find(j=>j.type===Xe.DgControl["response-form"].type))||{},E=wt(Xe.DgControl["response-form"].type);return Object.assign(E,w,{id:y+"-form",appearance:w.appearance?ce.cloneDeep(w.appearance):{class:"f-form-layout farris-form farris-form-controls-inline"},contents:i.value}),C.contents=[E],[C]}function d(y){var T;if(!((T=y.states)!=null&&T.length))return[];const x=[];return y.states.forEach(C=>{i.value.forEach(w=>{function E(V){Object.keys(V).forEach(j=>{const _=V[j];if(_&&_.type==="Variable"&&_.field===C.id){let J=x.find($=>$.id===C.id);J||(J=Object.assign({},C,{newId:hn().guid()}),x.push(J),a.value.push(C.id)),V[j].field=J.newId}})}E(w),w.editor&&E(w.editor)})}),x.map(C=>{C.id=C.newId,delete C.newId}),x}function f(y,x){const T=[];s.value.forEach(w=>{const E=x.fields.find(V=>V.id===w);T.push(Object.assign({},E,{groupId:null,groupName:null}))});const C=d(x);return{id:y+"-viewmodel",code:y+"-viewmodel",name:r.value,bindTo:x.bindTo,parent:x.parent,fields:T,commands:[],states:C,enableValidation:x.enableValidation}}function h(y,x,T){var V;if(!((V=n==null?void 0:n.parent)!=null&&V.parent)||!e)return;const w=n.parent.parent.componentInstance.value.schema;if(!(w!=null&&w.contents))return;const E=w.contents.findIndex(j=>j.component===u);if(E>-1){const{formSchemaUtils:j}=e;j.getComponents().push(y),j.getViewModels().push(T),w.contents.splice(E+1,0,x)}}function g(){if(!e)return;const y=n.componentInstance.value.schema,{schemaService:x,formSchemaUtils:T}=e,C=T.getViewModelIdByComponentId(u),w=T.getViewModelById(C),{code:E}=x.getTableInfoByViewModelId(C),V=E+"-"+Math.random().toString(36).slice(2,6),j=wt("component-ref");Object.assign(j,{id:V+"-component-ref",component:V+"-component"});const _=f(V,w),J=wt("component"),$=c(V);return Object.assign(J,{id:V+"-component",viewModel:V+"-viewmodel",componentType:y.componentType,appearance:y.appearance?ce.cloneDeep(y.appearance):null,formColumns:y.formColumns,contents:$}),h(J,j,_),_}function p(){if(!e)return;const{formSchemaUtils:y}=e,x=n.componentInstance.value.schema,T=i.value.map(w=>w.id),C=y.selectNode(x,w=>w.type===Xe.DgControl["response-form"].type);C.contents.forEach(w=>{w.type===Xe.DgControl.fieldset.type&&(w.contents=w.contents.filter(E=>!T.includes(E.id)))}),C.contents=C.contents.filter(w=>!(T.includes(w.id)||w.type===Xe.DgControl.fieldset.type&&w.contents&&w.contents.length===0))}function m(){if(!e)return;const{formSchemaUtils:y}=e,x=y.getViewModelIdByComponentId(u),T=y.getViewModelById(x);T&&T.fields&&(T.fields=T.fields.filter(C=>!s.value.includes(C.id)))}function S(y){if(!e)return;const{formSchemaUtils:x}=e,T=hn().guid(),C=Object.assign({},y,{id:T,code:y.code+T.slice(0,4),name:y.name+T.slice(0,4)}),E=x.getCommands().find(V=>V.id===y.cmpId);return E&&E.refedHandlers.push({host:T,handler:y.handlerName}),C}function N(y){if(!e)return;const{formSchemaUtils:x}=e,T=x.getViewModelIdByComponentId(u),C=x.getViewModelById(T),w={};i.value.forEach(V=>{var J;const j=V.type==="form-group"&&V.editor?V.editor.type:V.type,_=(J=Ct[j])==null?void 0:J.events;_&&Object.keys(V).forEach($=>{const P=Object.keys(_).find(Y=>Y===$);if(P&&V[P]){const Y=C.commands.find(G=>G.code===V[P]);if(Y){let G=w[Y.code];G||(G=S(Y),w[Y.code]=G,y.commands.push(G)),V[P]=G.code}}})});const E=["valueChanging","valueChanged"];y.fields.forEach(V=>{E.forEach(j=>{if(V[j]){const _=C.commands.find(J=>J.code===V[j]);if(w[_.code])V[j]=w[_.code].code;else{const J=S(_);w[_.code]=J,y.commands.push(J),V[j]=J.code}}})})}function B(y,x,T){if(y&&(x(y,T),y.contents))for(const C of y.contents)B(C,x,T)}function O(){if(!a.value.length)return;const y=e==null?void 0:e.formSchemaUtils,x=y.getComponentById(u),T=[],C=(V,j)=>{V&&(Object.keys(V).forEach(_=>{const J=V[_];J&&typeof J=="object"&&J.type===wn.FormBindingType.Variable&&a.value.includes(J.field)&&!j.includes(J.field)&&j.push(J.field)}),V.editor&&C(V.editor,j))};B(x,C,T);const w=y.getViewModelIdByComponentId(u),E=y.getViewModelById(w);a.value.forEach(V=>{T.includes(V)||(E.states=E.states.filter(j=>j.id!==V))})}function F(y){var C,w;const{selections:x}=y;r.value=y.componentTitle,l(x);const T=g();p(),m(),N(T),O(),(C=t==null?void 0:t.modalRef)!=null&&C.value.close&&((w=t==null?void 0:t.modalRef)==null||w.value.close()),nn.value++,o.nextTick(()=>{tn()})}function v(){var y,x;(y=t==null?void 0:t.modalRef)!=null&&y.value.close&&((x=t==null?void 0:t.modalRef)==null||x.value.close())}function b(){if(e)return()=>o.createVNode(o.Fragment,null,[o.createVNode(Mi,{componentId:n.componentInstance.value.belongedComponentId,designerHostService:e,onSubmit:F,onCancel:v},{default:()=>[o.createTextVNode(" ")]}),o.createTextVNode(" ")])}function k(y){y.stopPropagation(),y.preventDefault(),e&&(t=e.modalService.open({title:"拆分卡片",width:900,height:600,fitContent:!1,showButtons:!1,render:b(),enableEsc:!1,draggable:!0}))}return{openSplitComponentModal:k}}var ot=(n=>(n.Frame="frame",n.dataGrid="data-grid",n.listView="list-view",n.form="form",n.attachmentPanel="attachment-panel",n))(ot||{});function Ii(n,e){const t=new br,{canMove:r,canDelete:i}=t.getTemplateRule(n,e);function s(){return!1}function a(){return i}function u(){return r}function l(){return!1}function c(){return" display: inherit;flex-direction: inherit;margin-bottom:10px"}function d(B){const O=new Tr(B,e),{schema:F}=n;return O.getPropertyConfig(F)}function f(){var b,k,y,x;const B=n==null?void 0:n.schema,F=(e==null?void 0:e.formSchemaUtils).getViewModelIdByComponentId(B.id);if(B.componentType!=="data-grid"&&B.componentType!=="form"||!((b=n.componentInstance)!=null&&b.value.parent))return;const v=(k=n.componentInstance)==null?void 0:k.value.parent.schema;if((y=v==null?void 0:v.toolbar)!=null&&y.buttons&&v.toolbar.buttons.length){v.toolbar.buttons.forEach(C=>{const w=C.onClick,E=w&&w.split(".");if(!E||E.length<3)return;E[E.length-2]===F&&(C.needRemove=!0)}),v.toolbar.buttons=v.toolbar.buttons.filter(C=>!C.needRemove);const T=(x=n.componentInstance)==null?void 0:x.value.parent;T.parent&&T.parent.updateToolbarItems&&T.parent.updateToolbarItems()}}function h(){const B=e==null?void 0:e.designViewModelUtils,O=e==null?void 0:e.formSchemaUtils,F=n==null?void 0:n.schema;if(B&&O){const v=O.getViewModelIdByComponentId(F.id);B.deleteViewModelById(v),O.deleteComponent(F.id)}}function g(){const B=e==null?void 0:e.designViewModelUtils,O=e==null?void 0:e.formSchemaUtils,F=n==null?void 0:n.schema,v=O.getViewModelIdByComponentId(F.id),b=B.getDgViewModel(v);b!=null&&b.fields&&b.fields.forEach(k=>{const y=O.getExpressions();if(y!=null&&y.length){const x=y.findIndex(T=>T.target===k.id);x>-1&&O.getExpressions().splice(x,1)}})}function p(){f(),g(),h()}function m(){const{schema:B}=n,O=[];return B.componentType==="form"&&O.push({id:"splitFormComponent",title:"拆分卡片",icon:"f-icon fd-i-Family fd_pc-split-card",onClick:F=>{ji(n,e).openSplitComponentModal(F)}},{id:"addSiblingComponent",title:"添加同级卡片",icon:"f-icon f-icon-plus",onClick:F=>{Fi(n,e).addSiblingComponent(F)}}),O}function S(){if(!e||!(n!=null&&n.schema))return"组件";switch(n.schema.componentType){case ot.Frame:return"根组件";case ot.dataGrid:{const{formSchemaUtils:B}=e;return`${B.selectNode(n.schema,v=>v.type===R["tree-grid"].type)?"树表格":"表格"}组件`}case ot.attachmentPanel:return"附件组件";case ot.listView:return"列表视图组件";default:return"组件"}}function N(){var B,O,F;if(n&&e){const{formSchemaUtils:v}=e;let b="",k="";const y=v.getRootViewModelId(),x=v.getComponentByViewModelId(y),T=v.selectNode(x,w=>w.contents&&w.contents.find(E=>E.component===n.schema.id));(T==null?void 0:T.type)===((B=R["tab-page"])==null?void 0:B.type)&&((O=T==null?void 0:T.contents)!=null&&O.length)&&(b=T.title||""),(T==null?void 0:T.type)===((F=R.section)==null?void 0:F.type)&&(T==null?void 0:T.showHeader)!==!1&&(b=T.mainTitle||""),b=b?`${b} > `:"",k=b?T.id:"";const C=S();v.getControlBasicInfoMap().set(n.schema.id,{componentTitle:C,parentPathName:`${b}${C}`,reliedComponentId:k})}}return{canAccepts:s,checkCanDeleteComponent:a,checkCanMoveComponent:u,hideNestedPaddingInDesginerView:l,getStyles:c,getPropsConfig:d,onRemoveComponent:p,getCustomButtons:m,setComponentBasicInfoMap:N}}const gn=o.defineComponent({name:"FComponetDesign",props:nt,emits:["init","afterViewInit"],setup(n,e){const t=o.ref(),r=o.inject("designer-host-service"),i=o.inject("design-item-context"),s=Ii(i,r),a=vr(t,i,s),u=o.computed(()=>{const l={"drag-container":!0};return Ne.getCustomClass(l,n==null?void 0:n.customClass)});return o.onMounted(()=>{var l,c,d,f;t.value.componentInstance=a,((c=(l=i.parent)==null?void 0:l.schema)==null?void 0:c.type)==="component-ref"&&(a.value.parent=(f=(d=i.parent)==null?void 0:d.parent)==null?void 0:f.componentInstance)}),e.expose(a.value),()=>o.createVNode("div",{ref:t,class:u.value,style:n.customStyle,"data-dragref":`${i.schema.id}-container`},[e.slots.default&&e.slots.default()])}}),Oi=Je({id:{type:String},component:{type:String,default:""}},{$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/component.schema.json",title:"component-ref",description:"A Farris Visual Component",type:"object",properties:{id:{description:"The unique identifier for a Section",type:"string"},type:{description:"The type string of Section component",type:"string",default:"component-ref"},component:{description:"",type:"string",default:""}},required:["id","type","component"]},Kt,en),Pi={install(n){n.component(ft.name,ft)},register(n,e,t,r){n.component=ft,e.component=St},registerDesigner(n,e){n.component=gn,e.component=St,e["component-ref"]=Oi}};I.Component=ft,I.ComponentDesign=gn,I.componentDesignProps=yr,I.componentProps=nt,I.default=Pi,I.propsResolver=St,Object.defineProperties(I,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
|
1
|
+
(function(I,o){typeof exports=="object"&&typeof module<"u"?o(exports,require("vue"),require("lodash-es"),require("../dynamic-resolver/index.umd.js"),require("vue-i18n"),require("../locale/index.umd.js"),require("../common/index.umd.js"),require("@vueuse/core"),require("../data-view/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("../dynamic-form/index.umd.js"),require("../events-editor/index.umd.js"),require("../filter-bar/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("../../designer/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("../order/index.umd.js"),require("../page-header/index.umd.js"),require("../page-footer/index.umd.js"),require("../pagination/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("../search-box/index.umd.js"),require("../section/index.umd.js"),require("../smoke-detector/index.umd.js"),require("../splitter/index.umd.js"),require("../step/index.umd.js"),require("../switch/index.umd.js"),require("../tabs/index.umd.js"),require("../tags/index.umd.js"),require("../text/index.umd.js"),require("../time-picker/index.umd.js"),require("../transfer/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("../../designer/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("../../designer/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("../collection-property-editor/index.umd.js"),require("../modal/index.umd.js"),require("../external-container/index.umd.js"),require("../language-textbox/index.umd.js"),require("../notify/index.umd.js"),require("../tree-grid/index.umd.js"),require("bignumber.js")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es","../dynamic-resolver/index.umd.js","vue-i18n","../locale/index.umd.js","../common/index.umd.js","@vueuse/core","../data-view/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","../dynamic-form/index.umd.js","../events-editor/index.umd.js","../filter-bar/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","../../designer/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","../order/index.umd.js","../page-header/index.umd.js","../page-footer/index.umd.js","../pagination/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","../search-box/index.umd.js","../section/index.umd.js","../smoke-detector/index.umd.js","../splitter/index.umd.js","../step/index.umd.js","../switch/index.umd.js","../tabs/index.umd.js","../tags/index.umd.js","../text/index.umd.js","../time-picker/index.umd.js","../transfer/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","../../designer/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","../../designer/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","../collection-property-editor/index.umd.js","../modal/index.umd.js","../external-container/index.umd.js","../language-textbox/index.umd.js","../notify/index.umd.js","../tree-grid/index.umd.js","bignumber.js"],o):(I=typeof globalThis<"u"?globalThis:I||self,o(I.component={},I.Vue,I.LodashES,I.dynamicResolver,I.vueI18n,I.locale,I.common,I.VueUseCore,I.dataView,I.designerCanvas,I.propertyPanel,I.FAccordion,I.FAvatar,I.FButtonEdit,I.FButtonGroup,I.FCalendar,I.FCapsule,I.FCheckbox,I.FCheckboxGroup,I.FComboList,I.FComboTree,I.FComponent,I.FColorPicker,I.FContentContainer,I.FDatePicker,I.FDataGrid,I.FDropdown,I.FDynamicForm,I.FEventsEditor,I.FFilterBar,I.FFieldSelector,I.FBindingSelector,I.FImageCropper,I.FInputGroup,I.FLayout,I.FListNav,I.FListView,I.FLookup,I.FMappingEditor,I.FNav,I.FNumberRange,I.FNumberSpinner,I.FOrder,I.FPageHeader,I.FPageFooter,I.FPagination,I.FProgress,I.FQuerySolution,I.FRadioGroup,I.FRate,I.FResponseToolbar,I.FResponseLayout,I.FResponseLayoutEditorSetting,I.FSearchBox,I.FSection,I.FSmokeDetector,I.FSplitter,I.FStep,I.FSwitch,I.FTabs,I.FTags,I.FText,I.FTimePicker,I.FTransfer,I.FTreeview,I.FUploader,I.FVerifyDetail,I.FVideo,I.FTextArea,I.FSchemaSelector,I.FTreeGrid$1,I.FEventParameter,I.FFilterConditionEditor,I.FFieldset,I.FSortConditionEditor,I.FMenuLookup,I.FDrawer,I.FJsonEditor,I.FPropertyEditor,I.FExpressionEditor,I.FCodeEditor,I.FHtmlTemplate,I.FCollectionPropertyEditor,I.FModal$1,I.FExternalContainer,I.FLanguageTextbox,I.notify,I.FTreeGrid$2))})(this,function(I,o,ce,ut,bt,dt,Ne,Cn,ne,Xe,wn,xn,Sn,Tn,Fn,Vn,Nn,Ut,zt,Mn,En,Bn,kn,jn,In,On,Pn,Dn,$n,Rn,qn,Ln,An,Un,zn,Gn,_n,Hn,Wn,Yn,Xn,Jn,Qn,Zn,Kn,eo,to,no,oo,ro,io,ao,so,lo,co,uo,fo,po,mo,ho,go,yo,vo,bo,Co,wo,xo,So,To,Fo,Vo,No,Mo,Eo,Bo,ko,jo,Io,Oo,Po,Do,$o,Ro,qo,Lo,Ao,Uo,zo){"use strict";var _i=Object.defineProperty;var Hi=(I,o,ce)=>o in I?_i(I,o,{enumerable:!0,configurable:!0,writable:!0,value:ce}):I[o]=ce;var oe=(I,o,ce)=>Hi(I,typeof o!="symbol"?o+"":o,ce);function Gt(n,e){let t;function r(f){const{properties:h,title:g,ignore:p}=f,m=p&&Array.isArray(p),S=Object.keys(h).reduce((N,B)=>((!m||!p.find(O=>O===B))&&(N[B]=h[B].type==="object"&&h[B].properties?r(h[B]):ce.cloneDeep(h[B].default)),N),{});if(g&&(!m||!p.find(N=>N==="id"))){const N=g.toLowerCase().replace(/-/g,"_");S.id=`${N}_${Math.random().toString().slice(2,6)}`}return S}function i(f){const{properties:h,title:g,required:p}=f;if(p&&Array.isArray(p)){const m=p.reduce((S,N)=>(S[N]=h[N].type==="object"&&h[N].properties?r(h[N]):ce.cloneDeep(h[N].default),S),{});if(g&&p.find(S=>S==="id")){const S=g.toLowerCase().replace(/-/g,"_");m.id=`${S}_${Math.random().toString().slice(2,6)}`}return m}return{type:g}}function s(f,h={},g){const p=n[f];if(p){let m=i(p);const S=e[f];return m=S?S({getSchemaByType:s},m,h,g):m,t!=null&&t.appendIdentifyForNewControl&&t.appendIdentifyForNewControl(m),m}return null}function a(f,h){const g=r(h);return Object.keys(g).reduce((p,m)=>(Object.prototype.hasOwnProperty.call(f,m)&&(p[m]&&ce.isPlainObject(p[m])&&ce.isPlainObject(f[m]||!f[m])?Object.assign(p[m],f[m]||{}):p[m]=f[m]),p),g),g}function u(f,h){return Object.keys(f).filter(p=>f[p]!=null).reduce((p,m)=>{if(h.has(m)){const S=h.get(m);if(typeof S=="string")p[S]=f[m];else{const N=S(m,f[m],f);Object.assign(p,N)}}else p[m]=f[m];return p},{})}function l(f,h,g=new Map){const p=a(f,h);return u(p,g)}function c(f){var g;const h=f.type;if(h){const p=n[h];if(!p)return f;const m=a(f,p),S=((g=f.editor)==null?void 0:g.type)||"";if(S){const N=n[S],B=a(f.editor,N);m.editor=B}return m}return f}function d(f){t=f}return{getSchemaByType:s,resolveSchemaWithDefaultValue:c,resolveSchemaToProps:l,mappingSchemaToProps:u,setDesignerContext:d}}const Ct={},_t={},{getSchemaByType:wt,resolveSchemaWithDefaultValue:Go,resolveSchemaToProps:_o,mappingSchemaToProps:Ho,setDesignerContext:Wi}=Gt(Ct,_t);function Wo(n={}){function e(c,d,f,h){if(typeof f=="number")return h[c].length===f;if(typeof f=="object"){const g=Object.keys(f)[0],p=f[g];if(g==="not")return Number(h[c].length)!==Number(p);if(g==="moreThan")return Number(h[c].length)>=Number(p);if(g==="lessThan")return Number(h[c].length)<=Number(p)}return!1}function t(c,d,f,h){return h[c]&&h[c].propertyValue&&String(h[c].propertyValue.value)===String(f)}const r=new Map([["length",e],["getProperty",t]]);Object.keys(n).reduce((c,d)=>(c.set(d,n[d]),c),r);function i(c,d){const f=c;return typeof d=="number"?[{target:f,operator:"length",param:null,value:Number(d)}]:typeof d=="boolean"?[{target:f,operator:"getProperty",param:c,value:!!d}]:typeof d=="object"?Object.keys(d).map(h=>{if(h==="length")return{target:f,operator:"length",param:null,value:d[h]};const g=h,p=d[h];return{target:f,operator:"getProperty",param:g,value:p}}):[]}function s(c){return Object.keys(c).reduce((f,h)=>{const g=i(h,c[h]);return f.push(...g),f},[])}function a(c,d){if(r.has(c.operator)){const f=r.get(c.operator);return f&&f(c.target,c.param,c.value,d)||!1}return!1}function u(c,d){return s(c).reduce((g,p)=>g&&a(p,d),!0)}function l(c,d){const f=Object.keys(c),h=f.includes("allOf"),g=f.includes("anyOf"),p=h||g,N=(p?c[p?h?"allOf":"anyOf":"allOf"]:[c]).map(O=>u(O,d));return h?!N.includes(!1):N.includes(!0)}return{parseValueSchema:l}}const Yo={convertTo:(n,e,t,r)=>{n.appearance||(n.appearance={}),n.appearance[e]=t},convertFrom:(n,e,t)=>n.appearance?n.appearance[e]:n[e]},Xo={convertFrom:(n,e,t)=>n.buttons&&n.buttons.length?`共 ${n.buttons.length} 项`:"无"},Jo={convertTo:(n,e,t,r)=>{n.editor&&(n.editor[e]=t)},convertFrom:(n,e,t)=>n.editor&&Object.prototype.hasOwnProperty.call(n.editor,e)?n.editor[e]:n[e]},R={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:"列表导航"},"list-view":{type:"list-view",name:"列表"},"filter-bar":{type:"filter-bar",name:"筛选条"},"language-textbox":{type:"language-textbox",name:"多语输入框"}},Qo={convertFrom:(n,e,t)=>{var i;const r=n.editor&&n.editor[e]?n.editor[e]:n[e];return((i=R[r])==null?void 0:i.name)||r}},Zo={convertTo:(n,e,t,r)=>{n[e]=n[e]},convertFrom:(n,e,t)=>n.editor?t.getRealEditorType(n.editor.type):""},Ko={convertTo:(n,e,t,r)=>{(n.type==="data-grid-column"||n.type==="tree-grid-column")&&(n.formatter?n.formatter[e]=t:n.formatter={[e]:t})},convertFrom:(n,e,t)=>{if(n.formatter){if(e==="trueText")return n.formatter.trueText;if(e==="falseText")return n.formatter.falseText;if(e==="prefix")return n.formatter.prefix;if(e==="suffix")return n.formatter.suffix;if(e==="precision")return n.formatter.precision;if(e==="decimal")return n.formatter.decimal;if(e==="thousand")return n.formatter.thousand;if(e==="dateFormat")return n.formatter.dateFormat||"yyyy-MM-dd";if(e==="customFormat")return n.formatter.customFormat;if(e==="type")return n.formatter.type||"none"}return"none"}},er={convertTo:(n,e,t,r)=>{n.command?n.command[e]=t:n.command={[e]:t},e==="enable"&&t&&(n.command.commands||(n.command.commands=[{text:"编辑",type:"primary",command:"edit"},{text:"删除",type:"danger",command:"remove"}]))},convertFrom:(n,e,t)=>n.command&&e==="enable"?n.command.enable:""},tr={convertTo:(n,e,t,r)=>{n.column?n.column[e]=t:n.column={[e]:t},e==="fitColumns"&&t&&(n.column.fitMode||(n.column.fitMode="average"))},convertFrom:(n,e,t)=>{if(n.column){if(e==="fitColumns")return n.column.fitColumns;if(e==="fitMode")return n.column.fitMode}return""}},nr={convertTo:(n,e,t,r)=>{n.summary?n.summary[e]=t:n.summary={[e]:t},e==="enable"&&t&&(n.summary?n.summary.groupFields||(n.summary.groupFields=[]):n.summary={enable:t,groupFields:[]})},convertFrom:(n,e,t)=>n.summary&&e==="enable"?n.summary.enable:n.type==="data-grid-column"?n.enableSummary===void 0?!1:n.enableSummary:""},or={convertTo:(n,e,t,r)=>{n.group?n.group[e]=t:n.group={[e]:t},e==="enable"&&t&&(n.group?n.group.groupFields||(n.group.groupFields=[]):n.group={enable:t,groupFields:[],showSummary:!1})},convertFrom:(n,e,t)=>{if(n.group){if(e==="enable")return n.group.enable;if(e==="showSummary")return n.group.showSummary}}},rr={convertFrom:(n,e)=>n.binding?n.binding.path:"",convertTo:(n,e,t)=>{if(t&&t.length>0){const r=t[0];n.binding||(n.binding={}),n.binding.type="Form",n.binding.path=r.bindingField,n.binding.field=r.id,n.binding.fullPath=r.path,n.path=r.bindingPath}}},ir={convertTo:(n,e,t,r)=>{n.pagination||(n.pagination={}),n.pagination[e]=t},convertFrom:(n,e,t)=>n.pagination?n.pagination[e]:n[e]},ar={convertTo:(n,e,t,r)=>{n.rowNumber||(n.rowNumber={}),n.rowNumber[e]=t},convertFrom:(n,e,t)=>n.rowNumber?n.rowNumber[e]:n[e]},sr={convertTo:(n,e,t,r)=>{n.selection||(n.selection={}),n.selection[e]=t},convertFrom:(n,e,t)=>{var r,i;return e==="showCheckbox"?(r=n.selection)!=null&&r.multiSelect?!0:(i=n.selection)==null?void 0:i.showCheckbox:n.selection?n.selection[e]:n[e]}},lr={convertFrom:(n,e,t)=>n[e]&&n[e].length?`共 ${n[e].length} 项`:""},cr={convertFrom:(n,e)=>n[e]||"",convertTo:(n,e,t)=>{n[e]=t}},ur={convertTo:(n,e,t,r)=>{n.size||(n.size={}),n.size[e]=t},convertFrom:(n,e,t)=>n.size?n.size[e]:n[e]},dr={convertFrom:(n,e,t)=>{var r,i;return(r=n.formatter)!=null&&r.data&&e==="formatterEnumData"&&!n.formatterEnumData?(i=n.formatter)==null?void 0:i.data:n.formatterEnumData}},fr={convertTo:(n,e,t,r)=>{n.sort||(n.sort={}),n.sort[e]=t},convertFrom:(n,e,t)=>{var r,i;if(e==="mode")return((r=n.sort)==null?void 0:r.mode)||"client";if(e==="multiSort")return!!((i=n.sort)!=null&&i.multiSort)}},pr={convertTo:(n,e,t,r)=>{n.filter||(n.filter={}),n.filter[e]=t},convertFrom:(n,e,t)=>{var r;if(e==="mode")return((r=n.filter)==null?void 0:r.mode)||"client"}},mr={convertTo:(n,e,t,r)=>{n.rowOption?n.rowOption[e]=t:n.rowOption={[e]:t}},convertFrom:(n,e,t)=>{if(n.rowOption){if(e==="customRowStyle")return n.rowOption.customRowStyle;if(e==="customCellStyle")return n.rowOption.customCellStyle}return""}};function Ht(n,e,t){const r=new Map([["/converter/appearance.converter",Yo],["/converter/buttons.converter",Xo],["/converter/property-editor.converter",Jo],["/converter/items-count.converter",lr],["/converter/type.converter",Qo],["/converter/change-editor.converter",Zo],["/converter/change-formatter.converter",Ko],["/converter/column-command.converter",er],["/converter/column-option.converter",tr],["/converter/summary.converter",nr],["/converter/group.converter",or],["/converter/form-group-label.converter",cr],["/converter/field-selector.converter",rr],["/converter/pagination.converter",ir],["/converter/row-number.converter",ar],["/converter/grid-selection.converter",sr],["/converter/size.converter",ur],["/converter/change-formatter-enum.converter",dr],["/converter/grid-sort.converter",fr],["/converter/grid-filter.converter",pr],["/converter/row-option.converter",mr]]),i=new Map([["string",{type:"input-group",enableClear:!1}],["boolean",{type:"combo-list",textField:"name",valueField:"value",idField:"value",enableClear:!1,editable:!1,data:[{value:!0,name:"是"},{value:!1,name:"否"}]}],["enum",{type:"combo-list",maxHeight:128,enableClear:!1,editable:!1}],["array",{type:"button-edit"}],["number",{type:"number-spinner",placeholder:""}],["events-editor",{type:"events-editor",hide:!0}]]),s=Wo();function a(p,m){return()=>s.parseValueSchema(p,m)}function u(p,m,S){return p.includes("visible")&&m.visible!==void 0?typeof m.visible=="boolean"?()=>!!m.visible:m.visible===void 0?!0:a(m.visible,S):()=>!0}function l(p,m,S){return p.includes("readonly")&&m.readonly!==void 0?typeof m.readonly=="boolean"?()=>!!m.readonly:a(m.readonly,S):()=>!1}function c(p,m){const S=p.$converter||m;return typeof S=="string"&&S&&r.has(S)?r.get(S)||null:S||null}function d(p,m,S,N,B,O="",F=""){return Object.keys(p).map(b=>{const k=o.ref(1),y=b,x=p[b],T=Object.keys(x),C=x.title,w=x.type,E=i.get(w)||{type:"input-group",enableClear:!1},V=x.editor?Object.assign({},E,x.editor):Object.assign({},E),j=u(T,x,m),_=l(T,x,m);V.readonly=V.readonly===void 0?_():V.readonly;const J=x.type==="cascade"?d(x.properties,m,S,N,B,O,F):[],$=!0;let P=c(x,F);const Y=o.computed({get(){if(k.value){if(["class","style"].find(he=>he===y)&&!P&&(P=r.get("/converter/appearance.converter")||null),P&&P.convertFrom)return P.convertFrom(S,b,B,O);const ue=S[b];return Object.prototype.hasOwnProperty.call(x,"defaultValue")&&(ue===void 0||typeof ue=="string"&&ue==="")?x.type==="boolean"?x.defaultValue:x.defaultValue||"":ue}return null},set(ue){k.value+=1,P&&P.convertTo?(P.convertTo(N,b,ue,B,O),P.convertTo(S,b,ue,B,O)):(N[b]=ue,S[b]=ue)}}),{refreshPanelAfterChanged:G,description:Z,isExpand:le,parentPropertyID:de}=x,K={propertyID:y,propertyName:C,propertyType:w,propertyValue:Y,editor:V,visible:j,readonly:_,cascadeConfig:J,hideCascadeTitle:$,refreshPanelAfterChanged:G,description:Z,isExpand:le,parentPropertyID:de};return m[y]=K,K})}function f(p,m,S={}){const N={},B=n[p];return B&&B.categories?Object.keys(B.categories).map(F=>{const v=B.categories[F],b=v==null?void 0:v.title,k=d(v.properties||{},N,{},S,m);return{categoryId:F,categoryName:b,properties:k}}):[]}function h(p,m,S,N,B=""){const O=m.$ref.schema,F=m.$ref.converter,v=S[O],b=v.type,k=t(v),y={},x=n[b];if(x&&x.categories){const T=x.categories[p],C=T==null?void 0:T.title;F&&Object.keys(T.properties).forEach(V=>{T.properties[V].$converter=F});const w=(T==null?void 0:T.properties)||{},E=d(w,y,k,v,N,B);return{categoryId:p,categoryName:C,properties:E}}return{categoryId:p,categoryName:"",properties:[]}}function g(p,m,S,N,B){const O=p.type,F=t(p),v={};let b=B||n[O];if(b&&Object.keys(b).length===0&&S&&S.getPropConfig&&(b=S.getPropConfig(N)),b&&b.categories){const k=[];return Object.keys(b.categories).map(y=>{const x=b.categories[y];if(x.$ref){k.push(h(y,x,p,m,N));return}const T=x==null?void 0:x.title,C=x==null?void 0:x.tabId,w=x==null?void 0:x.tabName,E=x==null?void 0:x.hide,V=x==null?void 0:x.hideTitle,j=d(x.properties||{},v,F,p,m,N,x.$converter),{setPropertyRelates:_}=x,J=x==null?void 0:x.parentPropertyID;k.push({categoryId:y,categoryName:T,tabId:C,tabName:w,hide:E,properties:j,hideTitle:V,setPropertyRelates:_,parentPropertyID:J})}),k}return[]}return{getPropertyConfigBySchema:g,getPropertyConfigByType:f,propertyConverterMap:r}}const Wt={},Yt={};Ht(Wt,Yt,Go);const Xt={},Jt={},{getSchemaByType:Yi,resolveSchemaWithDefaultValue:hr,resolveSchemaToProps:Xi,mappingSchemaToProps:Ji,setDesignerContext:Qi}=Gt(Xt,Jt),Qt={},Zt={};Ht(Qt,Zt,hr);function Je(n,e,t=new Map,r=(a,u,l,c)=>u,i={},s=a=>a){return Ct[e.title]=e,_t[e.title]=r,Wt[e.title]=i,Yt[e.title]=s,Xt[e.title]=e,Jt[e.title]=r,Qt[e.title]=i,Zt[e.title]=s,(a={},u=!0)=>{if(!u)return Ho(a,t);const l=_o(a,e,t),c=Object.keys(n).reduce((d,f)=>(d[f]=n[f].default,d),{});return Object.assign(c,l)}}function xt(n,e){return{customClass:e.class,customStyle:e.style}}const Kt=new Map([["appearance",xt]]),gr={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/component.schema.json",title:"component",description:"A Farris Visual Component",type:"object",properties:{id:{description:"The unique identifier for a component",type:"string"},type:{description:"The type string of component",type:"string",default:"component"},componentType:{description:"The type string of component",type:"string"},viewModel:{description:"The viewModel string of component",type:"string"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},contents:{description:"",type:"array",default:[]},visible:{description:"",type:"boolean",default:!0},onInit:{description:"初始化事件",type:"string",default:""},onAfterViewInit:{description:"视图初始化后事件",type:"string",default:""}},required:["id","type","contents"],events:{onInit:"初始化事件",onAfterViewInit:"视图初始化后事件"}};function en(n,e,t){return e}const nt={id:{type:String},customClass:{type:String,default:""},customStyle:{type:String,default:""},componentType:{type:String,default:""},formColumns:{type:Number,default:4},code:{type:String,default:""}},St=Je(nt,gr,Kt,en),yr=Object.assign({},nt,{componentId:{type:String,default:""}}),ft=o.defineComponent({name:"FComponent",props:nt,emits:["init","afterViewInit"],setup(n,e){const t=o.ref();return o.onBeforeMount(()=>{e.emit("init",n.id)}),o.onMounted(()=>{t.value&&n.code&&t.value.setAttribute("scope-"+n.code.toLowerCase(),""),e.emit("afterViewInit",n.id)}),()=>o.createVNode("div",{ref:t,class:n.id+" "+n.customClass,style:n.customStyle},[e.slots.default&&e.slots.default()])}});function vr(n,e,t){var C;const r=t&&t.getStyles&&t.getStyles()||"",i=t&&t.getDesignerClass&&t.getDesignerClass()||"",s=o.ref();let a;function u(){return(e==null?void 0:e.schema.componentType)==="frame"?!1:t&&t.checkCanMoveComponent?t.checkCanMoveComponent():!0}function l(){return!1}function c(){return(e==null?void 0:e.schema.componentType)==="frame"?!1:t&&t.checkCanDeleteComponent?t.checkCanDeleteComponent():!0}function d(){return(e==null?void 0:e.schema.componentType)==="frame"?!0:t&&t.hideNestedPaddingInDesginerView?t.hideNestedPaddingInDesginerView():!1}function f(w){if(!w||!w.value)return null;if(w.value.schema&&w.value.schema.type==="component")return w.value;const E=o.ref(w==null?void 0:w.value.parent),V=f(E);return V||null}function h(w=e){var _;if(t!=null&&t.getDraggableDesignItemElement)return t.getDraggableDesignItemElement(w);const{componentInstance:E,designerItemElementRef:V}=w;if(!E||!E.value)return null;const{getCustomButtons:j}=E.value;return E.value.canMove||j&&((_=j())!=null&&_.length)?V:h(w.parent)}function g(w){return!!t&&t.canAccepts(w)}function p(){return(e==null?void 0:e.schema.label)||(e==null?void 0:e.schema.title)||(e==null?void 0:e.schema.name)}function m(){}function S(w,E){var V;!w||!E||(t!=null&&t.onAcceptMovedChildElement&&t.onAcceptMovedChildElement(w,E),(V=e==null?void 0:e.setupContext)==null||V.emit("dragEnd"))}function N(w,E){const{componentType:V}=w;let j=ut.getSchemaByTypeForDesigner(V,w,E);t&&t.onResolveNewComponentSchema&&(j=t.onResolveNewComponentSchema(w,j));const _=V.toLowerCase().replace(/-/g,"_");return j&&!j.id&&j.type===V&&(j.id=`${_}_${Math.random().toString().slice(2,6)}`),j}function B(w){w&&t!=null&&t.onChildElementMovedOut&&t.onChildElementMovedOut(w)}function O(...w){if(t&&t.getPropsConfig)return t.getPropsConfig(...w)}function F(w){if(!w)return;const E=e==null?void 0:e.schema,{formSchemaUtils:V}=w;if(E&&V.getExpressions().length){const j=V.getExpressions().findIndex(_=>_.target===E.id);j>-1&&V.getExpressions().splice(j,1)}}function v(w){if(!w||!(e!=null&&e.schema))return;const E=e.schema,{formSchemaUtils:V}=w;V.removeCommunicationInComponent(E)}function b(w){t&&t.onRemoveComponent&&t.onRemoveComponent(),F(w),v(w),e!=null&&e.schema.contents&&e.schema.contents.map(E=>{let V=E.id;E.type==="component-ref"&&(V=E.component);const j=n.value.querySelectorAll(`#${V}-design-item`);j!=null&&j.length&&Array.from(j).map(_=>{var J;(J=_==null?void 0:_.componentInstance)!=null&&J.value.onRemoveComponent&&_.componentInstance.value.onRemoveComponent(w)})})}function k(){if(t&&t.getCustomButtons)return t.getCustomButtons()}function y(w){var V,j;if(!((V=e==null?void 0:e.schema)!=null&&V.id))return;if(!a&&w&&(a=w.formSchemaUtils),t!=null&&t.setComponentBasicInfoMap){t.setComponentBasicInfoMap();return}let E="";if(t!=null&&t.getComponentTitle)E=t.getComponentTitle();else{const{text:_,title:J,label:$,mainTitle:P,name:Y,type:G}=e.schema;E=_||J||$||P||Y||((j=R[G])==null?void 0:j.name)}E&&a.getControlBasicInfoMap().set(e.schema.id,{componentTitle:E,parentPathName:E})}function x(w){var _;const{changeObject:E}=w,{propertyID:V,propertyValue:j}=E;if(["text","title","label","name","mainTitle"].includes((_=w==null?void 0:w.changeObject)==null?void 0:_.propertyID)&&V&&j&&(y(),a)){const J=a.getControlBasicInfoMap(),$=J.keys().toArray().filter(P=>{var Y,G;return((Y=J.get(P))==null?void 0:Y.reliedComponentId)===((G=e==null?void 0:e.schema)==null?void 0:G.id)});$!=null&&$.length&&$.forEach(P=>{const Y=J.get(P).parentPathName.split(" > ");Y[0]=j,J.get(P).parentPathName=Y.join(" > ")})}}function T(w){if(x(w),t&&t.onPropertyChanged)return t.onPropertyChanged(w)}return s.value={canMove:u(),canSelectParent:l(),canDelete:c(),canNested:!d(),contents:e==null?void 0:e.schema.contents,elementRef:n,parent:(C=e==null?void 0:e.parent)==null?void 0:C.componentInstance,schema:e==null?void 0:e.schema,styles:r,designerClass:i,canAccepts:g,getBelongedComponentInstance:f,getDraggableDesignItemElement:h,getDraggingDisplayText:p,getPropConfig:O,getDragScopeElement:m,onAcceptMovedChildElement:S,onChildElementMovedOut:B,addNewChildComponentSchema:N,triggerBelongedComponentToMoveWhenMoved:!!t&&t.triggerBelongedComponentToMoveWhenMoved||o.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:!!t&&t.triggerBelongedComponentToDeleteWhenDeleted||o.ref(!1),onRemoveComponent:b,getCustomButtons:k,onPropertyChanged:T,setComponentBasicInfoMap:y,updateContextSchema:e==null?void 0:e.updateContextSchema},s}class br{getTemplateRule(e,t){const r=t==null?void 0:t.formSchemaUtils,i=r==null?void 0:r.getFormTemplateRule(),s={canAccept:!0,canDelete:!0,canMove:!0};if(!i)return s;const a=this.getComponentContext(e),{componentClassList:u}=a;return u.forEach(l=>{if(!l||!i[l])return;const{canMove:c,canDelete:d,canAccept:f}=i[l];s.canMove=s.canMove&&this.resolveRuleValue(c,a),s.canDelete=s.canDelete&&this.resolveRuleValue(d,a),s.canAccept=s.canAccept&&this.resolveRuleValue(f,a)}),s}resolveRuleValue(e,t){return typeof e=="boolean"?e:this.parseRuleValueSchema(e,t)}parseRuleValueSchema(e,t){const r=e.invalidContext||[];let i=!0;for(const s of r){const{firstLevelChild:a,secondLevelChild:u,parent:l,...c}=s;if(c&&t.component){let d=!0;for(const f of Object.keys(c))if(c[f]!==t.component[f]){d=!1;break}if(!d){i=!1;continue}}if(s.firstLevelChild){if(s.firstLevelChild.class){const{firstLevelChildClassList:d}=t;if(d&&!d.includes(s.firstLevelChild.class)){i=!1;continue}}if(s.firstLevelChild.type){const{firstLevelChildSchema:d}=t;if(!d||d.type!==s.firstLevelChild.type){i=!1;continue}}}if(s.secondLevelChild){if(s.secondLevelChild.class){const{secondLevelChildClassList:d}=t;if(d&&!d.includes(s.secondLevelChild.class)){i=!1;continue}}if(s.secondLevelChild.type){const{secondLevelChildSchema:d}=t;if(!d||d.type!==s.secondLevelChild.type){i=!1;continue}}}if(s.parent){if(s.parent.class){const{parentClassList:d}=t;if(d&&!d.includes(s.parent.class)){i=!1;continue}}if(s.parent.type){const{parentSchema:d}=t;if(d&&d.type!==s.parent.type){i=!1;continue}}}i=!0;break}return!i}getComponentContext(e){var m,S,N,B;const t=e.schema,r=t.appearance&&t.appearance.class||"",i=r.split(" ")||[],s=t.contents||[],a=s.length?s[0]:null,u=a&&a.appearance?a.appearance.class:"",l=u?u.split(" "):[],c=(m=a==null?void 0:a.contents)!=null&&m.length?a==null?void 0:a.contents[0]:null,d=c&&c.appearance?c.appearance.class:"",f=d?d.split(" "):[],h=t.type==="component"?(N=(S=e.parent)==null?void 0:S.parent)==null?void 0:N.schema:(B=e.parent)==null?void 0:B.schema,g=h&&h.appearance&&h.appearance.class||"",p=g?g.split(" "):[];return{componentClass:r,componentClassList:i,childContents:s,firstLevelChildSchema:a,firstLevelChildClass:u,firstLevelChildClassList:l,secondLevelChildSchema:c,secondLevelChildClass:d,secondLevelChildClassList:f,parentSchema:h,parentClass:g,parentClassList:p,component:t}}}const Cr=o.ref(0);function tn(){Cr.value++}const nn=o.ref(0);function wr(n){const{formSchemaUtils:e,formStateMachineUtils:t}=n;function r(l,c=""){return{path:c+l.code,field:l.id,fullPath:l.code}}function i(l,c=""){return e.getViewModelById(l).states.map(f=>r(f,c))}function s(l){const c=e.getRootViewModelId(),d=i(l);if(l===c)return d;const f=i(c,"root-component.");return[...d,...f]}function a(l){return l.binding&&l.binding.path||l.id||""}function u(){return t&&t.getRenderStates()||[]}return{getVariables:s,getControlName:a,getStateMachines:u}}class xr{constructor(e){oe(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'"}]);oe(this,"expressionNames",{compute:"计算表达式",dependency:"依赖表达式",validate:"验证表达式",dataPicking:"帮助前表达式",visible:"可见表达式",readonly:"只读表达式",required:"必填表达式"});oe(this,"getExpressionConverter",(e,t)=>({convertFrom:(r,i,s,a)=>{const u=s.getExpressionRuleValue(e,t||i);return u&&u.value||""},convertTo:(r,i,s,a,u)=>{var l;if(i==="dataPicking"&&(s!=null&&s.target)){const c=`${s.target}_dataPicking`;((l=s.rules)==null?void 0:l.some(f=>f.id===c&&f.value))?r.dictPickingExpressionId=c:delete r.dictPickingExpressionId}a.updateExpression(s)}}));this.formSchemaService=e}getExpressionRule(e,t){const r=this.formSchemaService.getExpressions();if(!r)return"";const i=r.find(a=>a.target===e);if(!i)return"";const s=i.rules.find(a=>a.type===t);return s||""}getContextFormVariables(){const{module:e}=this.formSchemaService.getFormSchema();if(!e.viewmodels||e.viewmodels.length===0)return[];const t=this.formSchemaService.getRootViewModelId(),r=this.formSchemaService.getViewModelById(t);if(!r||!r.states||r.states.length===0)return[];const i=[];return r.states.forEach(s=>{i.push({key:s.code,name:s.name,description:s.name,category:s.category})}),i}createTreeNode(e,t,r="label"){return{id:e.id,name:e.name,bindingPath:e[r],parents:t,type:"field"}}buildEntityFieldsTreeData(e=null,t){const r=[];return e==null||e.forEach(i=>{var u;const s=this.createTreeNode(i,t);let a=[];(u=i.type)!=null&&u.fields&&(a=this.buildEntityFieldsTreeData(i.type.fields,[...t,i.label])),r.push({data:s,children:a,expanded:!0})}),r}buildChildEntityTreeData(e=null,t){const r=[];return e==null||e.forEach(i=>{var l,c;const s=this.createTreeNode(i,t);s.type="entity";const a=this.buildEntityFieldsTreeData((l=i.type)==null?void 0:l.fields,[...t,i.label]),u=this.buildChildEntityTreeData((c=i.type)==null?void 0:c.entities,[...t,i.label]);u!=null&&u.length&&(a==null||a.push(...u)),r.push({data:s,children:a||[],expanded:!0})}),r}getEntitiesTreeData(){const e=this.formSchemaService.getSchemaEntities();if(!(e!=null&&e.length))return[];const t=e[0];if(!(t!=null&&t.type))return[];const r=this.buildEntityFieldsTreeData(t.type.fields,[t.code]),i=this.buildChildEntityTreeData(t.type.entities,[t.code]);return i!=null&&i.length&&(r==null||r.push(...i)),{entityCode:t.code,fields:[{data:this.createTreeNode(t,[],"code"),children:r||[]}]}}getEntitiesAndVariables(){return{entities:this.getEntitiesTreeData(),variables:{session:{name:"系统变量",items:this.sessionVariables,visible:!1},forms:{name:"表单变量",items:this.getContextFormVariables(),visible:!0}}}}onBeforeOpenExpression(e,t,r){const i=r==="Field"?e.binding.field:e.id,s=this.getExpressionRule(i,t),a=this.getEntitiesAndVariables(),u={message:["validate","required","dataPicking"].includes(t)&&s?s.message:"",...a};return s.messageType!=null&&(u.messageType=s.messageType),u}buildRule(e,t,r,i){const{expression:s,message:a,messageType:u}=t,l={id:`${e}_${r}`,type:r,value:s};return(r==="validate"||r==="dataPicking"||r==="required")&&(l.message=a),r==="dataPicking"&&(l.messageType=u),r==="validate"&&i&&(l.elementId=i),l}getExpressionData(){const{expressions:e}=this.formSchemaService.getFormSchema().module;return e||[]}updateExpression(e,t,r,i){const s=t==="Field"?e.binding.field:e.id,a=this.buildRule(s,r,i,e.type==="form-group"?e.id:"");let l=this.getExpressionData().find(d=>d.targetType===t&&d.target===s);const c=d=>d.value.trim()==="";if(l){const d=l.rules.find(f=>f.id===a.id);if(d)c(a)?l.rules=l.rules.filter(f=>f.id!==a.id):(Object.assign(d,a),i==="validate"&&e.type==="form-group"&&(d.elementId=e.id));else{if(c(a))return null;l.rules=l.rules||[],l.rules.push(a)}}else{if(c(a))return null;l={target:`${s}`,rules:[a],targetType:t}}return l}getExpressionEditorOptions(e,t,r,i){return r.reduce((s,a)=>{var l,c;const u=t==="Field"?(l=e==null?void 0:e.binding)==null?void 0:l.field:e.id;return s[a]={hide:t==="Field"?!!((c=e==null?void 0:e.binding)!=null&&c.field):!1,description:"",title:this.expressionNames[a],type:"string",$converter:this.getExpressionConverter(u),refreshPanelAfterChanged:!0,editor:{type:"expression-editor",singleExpand:!1,dialogTitle:`${this.expressionNames[a]}编辑器`,showMessage:a==="validate"||a==="dataPicking"||a==="required",showMessageType:a==="dataPicking",beforeOpen:()=>this.onBeforeOpenExpression(e,a,t),onSubmitModal:d=>{const f=this.updateExpression(e,t,d,a);if(i){const h=this.buildRule(u,d,a);i(h)}return f}}},s},{})}getExpressionInfo(e,t,r){const i=t==="Field"?e.binding.field:e.id,s=this.getExpressionRule(i,r),a={value:s&&s.value,targetId:i,targetType:t,expressionType:r};return s&&s.message&&(a.message=s.message),a}getExpressionConfig(e,t,r=["compute","dependency","validate"],i){return{description:"表达式",title:"表达式",hide:!e.binding,properties:{...this.getExpressionEditorOptions(e,t,r,i)}}}getExpressionOptions(e,t,r){const i=this.getExpressionInfo(e,t,r);return{dialogTitle:`${this.expressionNames[r]}编辑器`,singleExpand:!1,showMessage:r==="required",beforeOpen:()=>this.onBeforeOpenExpression(e,r,t),expressionInfo:i}}}class Sr{constructor(e,t){oe(this,"componentId");oe(this,"viewModelId");oe(this,"eventsEditorUtils");oe(this,"formSchemaUtils");oe(this,"formMetadataConverter");oe(this,"designViewModelUtils");oe(this,"designViewModelField");oe(this,"controlCreatorUtils");oe(this,"designerHostService");oe(this,"designerContext");oe(this,"schemaService",null);oe(this,"metadataService",null);oe(this,"propertyConfig",{type:"object",categories:{}});var r;this.componentId=e,this.designerHostService=t,this.eventsEditorUtils=t.eventsEditorUtils,this.formSchemaUtils=t.formSchemaUtils,this.formMetadataConverter=t.formMetadataConverter,this.viewModelId=((r=this.formSchemaUtils)==null?void 0:r.getViewModelIdByComponentId(e))||"",this.designViewModelUtils=t.designViewModelUtils,this.controlCreatorUtils=t.controlCreatorUtils,this.metadataService=t.metadataService,this.schemaService=t.schemaService,this.designerContext=t.designerContext}getFormDesignerInstance(){var e,t;return(t=(e=this.designerContext)==null?void 0:e.instances)==null?void 0:t.formDesigner.value}getTableInfo(){var e;return(e=this.schemaService)==null?void 0:e.getTableInfoByViewModelId(this.viewModelId)}setDesignViewModelField(e){var r;const t=e.binding&&e.binding.type==="Form"&&e.binding.field;if(t){if(!this.designViewModelField){const i=this.designViewModelUtils.getDgViewModel(this.viewModelId);this.designViewModelField=i.fields.find(s=>s.id===t)}e.updateOn=(r=this.designViewModelField)==null?void 0:r.updateOn}}getBasicPropConfig(e){return{description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"combo-list",textField:"name",valueField:"value",idField:"value",editable:!1,data:[{value:e.type,name:R[e.type]&&R[e.type].name}]}}}}}getAppearanceConfig(e=null,t={},r){const i={title:"外观",description:"Appearance"},s={class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter",parentPropertyID:"appearance"},style:{title:"style样式",type:"string",description:"组件的样式",$converter:"/converter/appearance.converter",parentPropertyID:"appearance"}};for(const a in t)s[a]=Object.assign(s[a]||{},t[a]);return{...i,properties:{...s},setPropertyRelates(a,u){if(a){switch(a&&a.propertyID){case"class":case"style":{nn.value++;break}}r&&r(a,e,u)}}}}getPropertyEditorParams(e,t=[],r="visible",i={},s={},a=""){const{getVariables:u,getControlName:l,getStateMachines:c}=wr(this.designerHostService),d=this.getRealTargetType(e),f=t&&t.length>0?t:["Const","Variable","StateMachine","Expression"],h={type:"property-editor",propertyTypes:f};return f.map(g=>{switch(g){case"Const":Object.assign(h,{constType:"enum",constEnums:[{id:!0,name:"是"},{id:!1,name:"否"}]},i);break;case"Expression":h.expressionConfig=this.getExpressionOptions(e,d,a||r);break;case"StateMachine":h.stateMachines=c();break;case"Variable":Object.assign(h,{controlName:l(e),newVariablePrefix:"is",newVariableType:"Boolean",variables:u(this.viewModelId),onBeforeOpenVariables:p=>{p.value=u(this.viewModelId)}},s);break}}),h}getVisibleProperty(e,t=""){var s;let r=["Const","Variable","StateMachine","Expression"];return t==="gridFieldEditor"?r=["Const","Expression"]:t==="form-group"&&!((s=e.binding)!=null&&s.field)&&(r=["Const","Variable","StateMachine"]),{visible:{title:"是否可见",type:"boolean",description:"运行时组件是否可见",editor:this.getPropertyEditorParams(e,r,"visible")}}}getBehaviorConfig(e,t="",r={},i){const s={title:"行为",description:""},a=this.getVisibleProperty(e,t);for(const l in r)a[l]=Object.assign(a[l]||{},r[l]);const u=this;return{...s,properties:{...a},setPropertyRelates(l,c){if(l){switch(l.propertyID){case"disabled":case"readonly":case"visible":u.afterMutilEditorChanged(e,l);break}i&&i(l,c)}}}}afterMutilEditorChanged(e,t){this.addNewVariableToViewModel(t,this.viewModelId),this.updateExpressionValue(t),this.clearExpression(t,e)}updateElementByParentContainer(e,t){const r=t&&t.parent&&t.parent.schema;if(!r)return;const i=r.contents.findIndex(a=>a.id===e),s=ce.cloneDeep(r.contents[i]);r.contents.splice(i,1),r.contents.splice(i,0,s),tn()}addNewVariableToViewModel(e,t){const r=e.propertyValue;if(!(r&&typeof r=="object")||!(r.type==="Variable"&&r.isNewVariable))return;const a={id:r.field,category:"locale",code:r.fullPath,name:r.fullPath,type:r.newVariableType||"String"};delete r.newVariableType,delete r.isNewVariable,this.formSchemaUtils.getVariableByCode(a.code)||this.formSchemaUtils.getViewModelById(t).states.push(a)}updateExpressionValue(e){const t=e.propertyValue;if(!((t&&t.type)==="Expression"&&t.expressionInfo))return;const{expressionId:s,expressionInfo:a}=t,{targetId:u,targetType:l,expressionType:c,value:d,message:f}=a,h=this.formSchemaUtils.getModule();h.expressions=h.expressions||[];const{expressions:g}=h;let p=g.find(S=>S.target===u);p||(p={target:u,rules:[],targetType:l},g.push(p));const m=p.rules.find(S=>S.type===c);if(m)m.value=d,m.message=f;else{const S={id:s,type:c,value:d,message:f};p.rules.push(S)}delete t.expressionInfo}clearExpression(e,t){const r=e.propertyValue;if(r&&r.type==="Expression")return;const s=e.propertyID,a=this.formSchemaUtils.getExpressions(),u=t.binding?t.binding.field:t.id,l=a.find(c=>c.target===u);!l||!l.rules||(l.rules=l.rules.filter(c=>c.type!==s))}getExpressionOptions(e,t,r){return new xr(this.formSchemaUtils).getExpressionOptions(e,t,r)}getRealTargetType(e){return["response-toolbar-item","tab-toolbar-item","section-toolbar-item"].indexOf(e.type)>-1?"Button":e.binding&&e.binding.field?"Field":"Container"}createBaseEventProperty(e){const t={};return t[this.viewModelId]={type:"events-editor",editor:{initialData:e,viewSourceHandle:r=>{var i;((i=r.controller)==null?void 0:i.label.indexOf(this.formSchemaUtils.getModule().code))>-1&&this.eventsEditorUtils.jumpToMethod(r)}}},t}}class Tr extends Sr{constructor(e,t){super(e,t)}getPropertyConfig(e){return this.propertyConfig.categories.basic=this.getBasicPropConfig(e),this.propertyConfig.categories.appearance=this.getAppearancePropConfig(e),this.getBehaviorConfig(e),this.getEventPropConfig(e),this.propertyConfig}getAppearancePropConfig(e){const t=this.formSchemaUtils.getViewModelById(this.viewModelId);e.name=t?t.name:null;const r=this;return this.getAppearanceConfig(e,{name:{title:"组件名称",type:"string",description:"组件名称",defaultValue:e.name}},(s,a,u)=>{switch(s.propertyID){case"name":r.syncChangesToViewModel({name:s.propertyValue}),delete a.name;break}})}getEventPropConfig(e){const t=[{label:"onInit",name:"初始化事件"},{label:"onAfterViewInit",name:"视图初始化后事件"}],r=this,i=r.eventsEditorUtils.formProperties(e,r.viewModelId,t),s=r.createBaseEventProperty(i);this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:s,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(a,u){const l=a.propertyValue;delete e[r.viewModelId],l&&(l.setPropertyRelates=this.setPropertyRelates,r.eventsEditorUtils.saveRelatedParameters(e,r.viewModelId,l.events,l))}}}getBehaviorConfig(e){const t=this.formSchemaUtils.getViewModelById(this.viewModelId),r=t?t.enableValidation:null,i=this;this.propertyConfig.categories.behavior={title:"行为",description:"",properties:{enableValidation:{title:"启用校验",type:"boolean",description:"运行时组件是否启用校验",defaultValue:r}},setPropertyRelates:s=>{if(s)switch(s.propertyID){case"enableValidation":{i.syncChangesToViewModel({enableValidation:s.propertyValue}),delete e.enableValidation;break}}}}}syncChangesToViewModel(e){const t=this.formSchemaUtils.getViewModelById(this.viewModelId);t&&Object.assign(t,e)}}const Fr={showCloseButton:{type:Boolean,default:!0},position:{type:String,default:"top-center"},timeout:{type:Number,default:3e3},theme:{type:String,default:"bootstrap"},left:{type:Number},right:{type:Number},top:{type:Number},bottom:{type:Number},id:{type:String},animate:{type:String,default:"fadeIn"},options:{type:Object},safeHtml:{type:Boolean,default:!0}},Vr={showCloseButton:{type:Boolean,default:!0},animate:{type:String,default:"fadeIn"},options:{type:Object}},Tt=o.defineComponent({name:"Toast",props:Vr,emits:["close","click"],setup:(n,e)=>{const{locale:t,t:r}=bt.useI18n(),i=o.ref(n.animate),s="fadeOut",a=o.computed(()=>n.options),u=o.ref(!1),l=o.computed(()=>a.value.title&&a.value.message),c=o.computed(()=>!a.value.title&&a.value.message),d=o.computed(()=>{const F={animated:u.value,toast:!0,"toast--only-content":!l.value};return F[n.animate]=!1,F[s]=u.value,F["toasty-type-"+a.value.type]=!0,a.value.theme&&(F[a.value.theme]=!0),F}),f=o.computed(()=>{const b=`f-icon-${a.value&&a.value.type?a.value.type.replace("toasty-type-",""):"default"}`,k={"f-icon":!0};return k[b]=!0,k}),h=o.computed(()=>a.value.title||a.value.message),g=o.computed(()=>n.showCloseButton),p=o.computed(()=>!!a.value.buttons||!!e.slots.default),m=o.computed(()=>t.value==="en"?{wordBreak:"keep-all",overflowWrap:"break-word"}:{});function S(F){F.stopPropagation(),F.preventDefault(),u.value=!1,setTimeout(()=>{e.emit("close",a.value)},200)}function N(F,v){}function B(F){return`f-preten-link ${F.customClass?F.customClass:""}`}o.watch(i,()=>{i.value});const O=()=>{var F;return o.createVNode(o.Fragment,null,[o.createVNode("div",{class:"after-toast-msg text-right"},[!e.slots.default&&((F=a.value.buttons)==null?void 0:F.map(v=>o.createVNode("span",{class:B(v),onClick:b=>void 0},[v.text]))),e.slots.default&&e.slots.default()])])};return()=>o.createVNode("div",{class:d.value,style:"min-height:44px"},[g.value&&o.createVNode("button",{title:r("messageBox.close"),class:"toast-close f-btn-icon f-bare",onClick:S},[o.createVNode("span",{class:"f-icon modal_close"},null)]),h.value&&o.createVNode("section",{class:"modal-tips"},[!l.value&&o.createVNode("div",{class:"float-left modal-tips-iconwrap"},[o.createVNode("span",{class:f.value},null)]),o.createVNode("div",{class:"modal-tips-content"},[l.value&&o.createVNode(o.Fragment,null,[o.createVNode("h5",{class:"toast-title modal-tips-title",innerHTML:a.value.title},null),o.createVNode("p",{class:"toast-msg",innerHTML:a.value.message,style:m.value},null),p.value&&O()]),c.value&&(a.value.buttons?o.createVNode("div",{class:"toast-title-btns-wrapper d-flex"},[o.createVNode("h5",{class:"toast-title modal-tips-title only-toast-msg",style:m.value,innerHTML:a.value.message},null),o.createVNode("div",{class:"after-toast-title text-right ml-auto"},[O()])]):o.createVNode("h5",{class:"toast-title modal-tips-title only-toast-msg",style:m.value,innerHTML:a.value.message},null))])])])}}),pt=o.defineComponent({name:"Notify",props:Fr,emits:["close","empty"],setup(n,e){const t=o.computed(()=>({"farris-notify":!0})),r={left:12,right:12,top:20,bottom:12},i=o.ref(),s=o.ref(n.options),a=o.ref(n.showCloseButton),u=o.computed(()=>n.position||"bottom-right"),l=o.computed(()=>n.timeout!=null?n.timeout:3e3),c=o.computed(()=>{const h=n.bottom?n.bottom:r.bottom,g=n.top?n.top:r.top,p={transition:"all 0.2s ease",left:u.value.indexOf("left")>-1?`${n.left?n.left:r.left}px`:"",right:u.value.indexOf("right")>-1?`${n.right?n.right:r.right}px`:"",top:u.value.indexOf("top")>-1?`${g}px`:"",bottom:u.value.indexOf("bottom")>-1?`${h}px`:""};return u.value.indexOf("center")>-1&&(p.left="50%",p.marginLeft="calc(-24rem / 2)",u.value==="center-center"&&(p.top="50%",p.transform="translate(-50%, -50%)")),p});function d(h){e.emit("close")}l.value&&setTimeout(()=>{d()},l.value),e.expose({closeToast:d,container:i,notifyPosition:u});function f(h,g){d()}return()=>o.createVNode("div",{class:t.value,style:c.value,ref:i},[o.createVNode(Tt,{options:s.value,showCloseButton:a.value,animate:n.animate,onClose:h=>f(h,s.value)},null)])}});class Ft{constructor(){oe(this,"notifyRefs",[]);oe(this,"globalConfig",o.reactive({}))}escapeAllHtml(e){if(typeof e!="string"||!e)return"";const t=document.createElement("div");return t.textContent=e||"",t.innerHTML.replace(/\\n/g,"<br>").replace(/\\t/g," ").replace(/\\r/g,"")}createNotifyInstance(e){const t=this,i=Object.assign({timeout:3e3,position:"bottom-right",showCloseButton:!0,safeHtml:!0},this.globalConfig,{...e}),s=document.createElement("div");s.style.display="contents";const a=o.createApp({setup(){var c;const u=o.ref();function l(){u.value.container.style.transform="scale(0)",setTimeout(()=>{t.updateNotifyPositionForClose(i,u),a.unmount()},220)}if(i.position.indexOf("top")>-1){const d=t.getNotifyInstances(i.position),f=d[d.length-1];if(f){const h=f.value.container.getBoundingClientRect();i.top=h.bottom}}return i.safeHtml&&((c=i.options)!=null&&c.message)&&(i.options.message=t.escapeAllHtml(i.options.message)),o.onUnmounted(()=>{document.body.removeChild(s)}),o.onMounted(()=>{t.updateNotifyPositionForCreate(i,u)}),()=>o.createVNode(o.Transition,{mode:"out-in",name:"fade",appear:!0},{default:()=>[o.createVNode(pt,o.mergeProps({ref:u},i,{onClose:l}),null)]})}});return a.provide("NotifyService",this),document.body.appendChild(s),a.use(dt.LocaleService.i18n),a.mount(s),a}getNotifyInstances(e){return this.notifyRefs.filter(t=>t.value.notifyPosition===e)}updateNotifyPositionForCreate(e,t){if(this.notifyRefs&&this.notifyRefs.length){const r=window.innerHeight;e.position.indexOf("bottom")>-1&&this.getNotifyInstances(e.position).forEach(i=>{const s=i.value.container.getBoundingClientRect();i.value.container.style.bottom=s.height+r-s.bottom+"px"})}this.notifyRefs=[...this.notifyRefs,t]}updateNotifyPositionForClose(e,t){const r=this.notifyRefs.indexOf(t);if(e.position.indexOf("top")>-1){const i=this.getNotifyInstances(e.position),s=i.indexOf(t);i.slice(s+1).forEach(a=>{a.value.container.style.top=a.value.container.offsetTop-a.value.container.offsetHeight+"px"})}r>-1&&this.notifyRefs.splice(r,1)}show(e){return this.createNotifyInstance(e)}buildNotifyProps(e,t){let r="",i="",s,a,u;typeof t=="string"?r=t:t&&(r=t.message||"",i=t.title||"",a=t.position||null,u=t.showCloseButton!=null?t.showCloseButton:null,s=t.timeout!=null?t.timeout:null);const c={options:{type:e,message:r,title:i}};return a!=null&&(c.position=a),u!=null&&(c.showCloseButton=u),s!=null&&(c.timeout=s),c}info(e){const t=this.buildNotifyProps("info",e);return this.show(t)}success(e){const t=this.buildNotifyProps("success",e);return this.show(t)}warning(e){const t=this.buildNotifyProps("warning",e);return this.show(t)}error(e){const t=this.buildNotifyProps("error",e);return this.show(t)}close(e){e&&e.unmount()}closeAll(){this.notifyRefs.forEach(e=>{e==null||e.value.closeToast()}),this.notifyRefs.length=0}}const Nr=Symbol("NOTIFY_SERVICE_TOKEN");pt.install=n=>{n.component(pt.name,pt),n.component(Tt.name,Tt);const e=new Ft;n.provide(Nr,e),n.provide("FNotifyService",e)};const Mr={designerHostService:{type:Object,default:{}},componentType:{type:String,default:""},bindingEntityId:{type:String,default:""},steps:{type:Array,default:["selectEntity","selectFields"]}};`${dt.LocaleService.getLocaleValue("datagrid.loadingMessage")}`;const Er={customClass:{type:String,default:""},sort:{type:Object},filter:{type:Object},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:{autoCancelParent:!0,autoCheckChildren:!1,autoCheckParent:!1,selectionRange:"All"},parentIdField:"parent"}},id:{type:String,default:""},idField:{type:String,default:"id",require:!0},loadData:{type:Function},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:dt.LocaleService.getLocaleValue("datagrid.lineNumberTitle")}},rowOption:{type:Object,default:{wrapContent:!1}},selection:{type:Object,default:{enableSelectRow:!0,multiSelect:!1,multiSelectMode:"DependOnCheck",showCheckbox:!1,showSelectAll:!1,showSelection:!1}},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},emptyTemplate:{type:Object},summary:{type:Object,default:{enable:!1,groupFields:["numericField1","numericField2"]}}};function Br(n,e,t,r,i,s,a,u,l,c,d,f,h,g,p,m,S){const{calculateCellPositionInRow:N}=s,{columnContext:B,hasLeftFixedColumn:O,hasRightFixedColumn:F}=a,{gridDataStyle:v,leftFixedGridDataStyle:b,rightFixedGridDataStyle:k}=g,{renderDataRow:y}=ne.getHierarchyRow(n,e,B,S,u,l,c,d,f,h,g,p,m),x=[y];function T(j,_){const J=N(j);return S.value.filter($=>$.visible!==!1).map(($,P)=>x[$.type]($,J,_,P))}function C(){return o.createVNode("div",{ref:r,class:"fv-grid-content-left-fixed"},[o.createVNode("div",{class:"fv-grid-data",style:b.value},[T(B.value.leftColumns.filter(j=>j.visible),"left")])])}function w(){return o.createVNode("div",{ref:t,class:"fv-grid-content-primary"},[o.createVNode("div",{class:"fv-grid-data",style:v.value},[T(B.value.primaryColumns.filter(j=>j.visible),"primary")])])}function E(){return o.createVNode("div",{ref:i,class:"fv-grid-content-right-fixed"},[o.createVNode("div",{class:"fv-grid-data",style:k.value},[T(B.value.rightColumns.filter(j=>j.visible),"right")])])}function V(){const j=[];return O.value&&j.push(C()),j.push(w()),F.value&&j.push(E()),j}return{renderDataArea:V}}const Vt=o.defineComponent({name:"FTreeGrid",props:Er,emits:["selectionChange","clickRow","expandNode","unSelectItem","dblclickNode","doubleClickRow","unSelectItem","selectItem","filterChanged","sortChanged","selectionUpdate"],setup(n,e){var yn,vn;const r=((yn=n.rowOption)==null?void 0:yn.height)||28,i=o.ref(20),s=o.ref(n.columns),a=ne.useIdentify(n),{idField:u}=a,l=o.ref(),c=o.ref(),d=o.ref(),f=o.ref(),h=o.ref(),g=o.ref([]),p=o.ref(!1),m=o.ref(((vn=n.rowOption)==null?void 0:vn.wrapContent)||!1),S=ne.useGroupData(n,a),N=ne.useFilter(n,e),B=ne.useHierarchy(n),{collapseField:O}=B,{showLoading:F,renderLoading:v}=ne.useLoading(n,l),b=ne.useDataView(n,new Map,N,B,a),{dataView:k}=b,y=ne.useSelection(n,b,a,g,e),{showSelection:x,selectedValues:T}=y,C=ne.useSelectHierarchyItem(n,g,b,a,y,e),w=o.computed(()=>n.disabled),E=o.computed(()=>n.virtualized?Math.min(b.dataView.value.length,i.value):b.dataView.value.length),V=ne.usePagination(n,b),{shouldRenderPagination:j}=V,{containerStyleObject:_}=ne.useDataViewContainerStyle(n),J=ne.useCommandColumn(n),{applyCommands:$}=J;$(s);const{applyColumnSetting:P,removeColumnSetting:Y}=ne.useSettingColumn(n);n.showSetting&&P(s);const G=ne.useColumn(n,e),Z=ne.useSort(n),{applyColumnSorter:le,columnContext:de,updateColumnRenderContext:K}=G;le(b,Z);const ue=ne.useGroupColumn(n,de),he=ne.useRow(n,e,y,a),ae=ne.useEdit(n,e,a,he,g),X=ne.useVisualDataBound(n),se=ne.useVisualDataCell(n,ae,X),ze=ne.useVisualDataRow(n,b,ae,B,a,X,se),De=ne.useVisualData(n,s,b,E,0,ze),{getVisualData:Ee}=De,Ze=ne.useCellPosition(n,de),Ge=ne.useSidebar(n,y),{sidebarWidth:Ke}=Ge,pe=ne.useVirtualScroll(n,b,g,de,De,E,0,Ke),{onWheel:rt,dataGridWidth:$e,viewPortHeight:Re,viewPortWidth:Be,resetScroll:qe,updateVisibleRowsOnLatestVisibleScope:it}=pe,_e=ne.useFitColumn(n,de,c,Be,ue),{calculateColumnsSize:Ie}=_e,Le=ne.useFilterHistory(),et=ne.useColumnFilter(c,h,b,Le,pe),tt=ne.useDragColumn(n,e,G,b,ue,S,pe),D=o.computed(()=>{const W={"fv-grid":!0,"fv-grid-bordered":n.showBorder,"fv-grid-horizontal-bordered":n.showHorizontalLines,"fv-datagrid-strip":n.showStripe};return Ne.getCustomClass(W,n.customClass)}),te=o.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":p.value,"fv-grid-wrap-content":m.value})),{renderDataArea:me}=Br(n,e,d,f,h,Ze,G,b,ae,B,he,y,C,pe,De,X,g),{renderGridHeader:ge,renderGridColumnResizeOverlay:Oe,shouldShowHeader:Bt}=ne.getColumnHeader(n,e,c,f,h,G,b,tt,et,N,Le,_e,ue,y,Ge,Z,pe,Be,g),{renderDataGridSidebar:kt}=ne.getSidebar(n,he,y,Ge,pe),{renderDisableMask:jt}=ne.getDisableMask(),{renderHorizontalScrollbar:It}=ne.getHorizontalScrollbar(n,c,pe),{renderVerticalScrollbar:Ot}=ne.getVerticalScrollbar(n,c,pe);function Pt(){var W,ee,ve;if(c.value&&c.value.clientHeight>0&&((W=c.value)==null?void 0:W.clientWidth)>0){const we=Math.ceil(c.value.clientHeight/r);we>i.value&&(i.value=we,it()),Re.value=((ee=d.value)==null?void 0:ee.clientHeight)||0,$e.value=((ve=c.value)==null?void 0:ve.clientWidth)||0,Ie()}}o.onMounted(()=>{c.value&&(i.value=Math.max(Math.ceil(c.value.clientHeight/r),i.value),g.value=Ee(0,E.value+0-1),Cn.useResizeObserver(c.value,Pt),Ie(),o.nextTick(()=>{c.value&&($e.value=c.value.clientWidth),d.value&&(Be.value=d.value.clientWidth,Re.value=d.value.clientHeight)})),F.value&&v()}),o.onUnmounted(()=>{}),o.watch(Be,()=>{c.value&&Ie()});function Dt(W){b.collapseTo(W),b.reOrderVisibleIndex(),qe()}function yt(W){b.expandTo(W),b.reOrderVisibleIndex(),qe()}function at(){const W=y.getSelectionRow();return W?W.dataIndex-1:-1}function $t(){const W=at();b.insertNewDataItem(W),g.value=Ee(0,E.value+0-1)}function Rt(){const W=at();b.insertNewChildDataItem(W),g.value=Ee(0,E.value+0-1)}function qt(W,ee){const ve=g.value.find(Fe=>Fe.raw[u.value]===ee),we=ve?ve.dataIndex-1:-1;b.insertNewChildDataItems(W,we)}function Lt(){const W=at(),ee=C.getNextSelectableHierarchyItemId(W);b.removeHierarchyDataItem(W),g.value=Ee(0,E.value+0-1),ee&&C.selectItemById(ee)}function vt(W){ae.onEditingRow(W)}function At(W){ae.acceptEditingRow(W)}function M(W){ae.cancelEditingRow(W)}function q(W){W&&(s.value=W,$(s),K(s.value),le(b,Z),Ie())}o.watch(()=>n.columns,W=>{q(W)});function H(W,ee){W&&(b.load(W),b.reOrderVisibleIndex(),ee!=null&&ee.keepScrollPosition?pe.scrollTo(pe.offsetY.value):qe())}function Q(W){C.selectItemById(W)}function re(W){const ee=g.value.find(ve=>ve.raw[a.idField.value]===W);ee&&he.clickRowItem(ee)}function ie(W){he.activeRowById(W)}function Ve(W){C.selectItemByIds(W)}function xe(){return y.getSelectedItems()}function Se(){y.clearSelection()}const ke=o.computed(()=>!g.value||!g.value.length),{renderEmpty:ye}=ne.getEmpty(n,e);function je(){return y.getSelectionRow()}function Te(W){C.unSelectItemByIds(W)}function Ce(){return y.currentSelectedDataId.value}function st(W,ee,ve){const we=k.value.find(Fe=>Fe[u.value]===W);if(we){if(Object.keys(we).forEach(be=>{Object.prototype.hasOwnProperty.call(ee,be)&&(we[be]=ee[be])}),ve){const{collapseField:be,disabledField:He,checkedField:We,visibleField:Ye}=ve;be&&!ce.isUndefined(ee[be])&&(we.__fv_collapse__=ee[be]),We&&!ce.isUndefined(ee[We])&&(we.__fv_checked__=ee[We]),He&&!ce.isUndefined(ee[He])&&(we.__fv_disabled__=ee[He]),Ye&&!ce.isUndefined(ee[Ye])&&(we.__fv_visible__=ee[Ye])}const Fe=g.value.find(be=>be.raw[u.value]===W),bn=g.value.findIndex(be=>be.raw[u.value]===W);if(Fe){if(Fe.raw=we,Object.keys(Fe.data).forEach(be=>{Fe.data[be].updateData(we)}),ve){const{collapseField:be,disabledField:He,checkedField:We,visibleField:Ye}=ve;be&&!ce.isUndefined(ee[be])&&(Fe.collapse=ee[be]),We&&!ce.isUndefined(ee[We])&&(Fe.checked=ee[We]),He&&!ce.isUndefined(ee[He])&&(Fe.disabled=ee[He]),Ye&&!ce.isUndefined(ee[Ye])&&(Fe.visible=ee[Ye])}g.value=[...g.value.slice(0,bn),Fe,...g.value.slice(bn+1)],b.updateSummary()}}}function lt(W){return Object.prototype.hasOwnProperty.call(W,"raw")?b.hasRealChildren(W.raw):b.hasRealChildren(W)}function ct(W){const ee=b.dataView.value.find(ve=>ve[u.value]===W);return ee?ee[O.value]:""}function Di(){return O.value}o.watch(()=>n.showSetting,(W,ee)=>{W!==ee&&(W?P(s):Y(s),q(s.value))});function $i(W){return g.value.filter(ee=>W.includes(ee.raw[n.idField]))}function Ri(W){const ee=a.idField.value,ve=g.value.find(we=>we.raw[ee]===W);ve&&he.changeRow(ve)}function qi(){y.keepSelectingOnPaging.value||Se(),b.updateVisibleDataSummary(g.value)}e.expose({activeRowById:ie,addNewDataItem:$t,addNewChildDataItem:Rt,addChildrenToNode:qt,collapseTo:Dt,expandTo:yt,removeDataItem:Lt,editDataItem:vt,acceptDataItem:At,cancelDataItem:M,updateColumns:q,updateDataSource:H,selectItemById:Q,selectItemByIds:Ve,getSelectedItems:xe,clearSelection:Se,getSelectionRow:je,clickRowItemById:re,unSelectItemByIds:Te,getCurrentRowId:Ce,reassignRowData:st,hasChildren:lt,getCollapseField:Di,getCollapseStatusById:ct,getVisibleDataByIds:$i,selectRowById:Ri,updateDerivedData:qi});const Li=o.computed(()=>{const W={};return pe.shouldShowHorizontalScrollbar.value&&(W.paddingBottom="10px"),pe.shouldShowVirticalScrollbar.value&&(W.paddingRight="10px"),W}),Ai=o.computed(()=>({..._.value,borderRadius:"5px"}));ne.getPagination(n,e,b,pe,V,y);const Ui=o.computed(()=>({"d-flex":!0,"justify-content-between":j.value&&x.value,"justify-content-end":j.value&&!x.value,"position-relative":!0})),zi=o.computed(()=>({"d-flex":!0,"align-items-center":!0})),{renderDataGridSummary:Gi}=ne.getSummary(n,b,G);return()=>o.createVNode("div",{ref:l,class:D.value,style:Ai.value,onWheel:rt},[c.value&&Bt.value&&ge(),o.createVNode("div",{ref:c,class:te.value,onMouseover:()=>p.value=!0,onMouseleave:()=>p.value=!1,style:Li.value},[c.value&&kt(g),c.value&&me(),c.value&&ke.value&&ye(),c.value&&It(),c.value&&Ot()]),c.value&&Gi(),x.value&&o.createVNode("div",{class:Ui.value},[x.value&&o.createVNode("div",{class:zi.value},[o.createVNode("div",null,["已选:"+T.value.length,o.createTextVNode(" 条")])])]),Oe(),w.value&&jt()])}});Ne.withInstall(Vt);function on(n){const{designerHostService:e}=n,t=new Map,r=o.ref(),i=o.ref(),s=o.ref([{field:"name",title:"字段名称"},{field:"bindingField",title:"绑定字段"},{field:"displayedTypeName",title:"字段类型"}]),a={enableSelectRow:!0,multiSelect:!0,multiSelectMode:"OnCheckAndClick",showCheckbox:!0,showSelectAll:!0},u=o.ref(!1),l=o.ref(n.componentType);function c(m){const S=[];return m.forEach(N=>{let B=[];N.type&&N.type.fields&&N.type.fields.length>0&&(B=c(N.type.fields));const O=ce.cloneDeep(N),F=N.multiLanguage?"多语言":N.type.displayName,v=B.length?!1:!t.has(N.id);v&&(u.value=!0),S.push({data:Object.assign({displayedTypeName:F,selectable:v},O),children:B})}),S}function d(m){switch(m){case"data-grid":case"tree-grid":return"data-grid";case"response-form":return"form";default:return m}}function f(m){if(t.clear(),!m)return;let S=d(l.value);["frame","table","form"].includes(S)&&(S="form");const{formSchemaUtils:N,schemaService:B}=e;N.getFormSchema().module.viewmodels.forEach(O=>{if(!O.fields||O.fields.length===0)return;let v=N.getComponentByViewModelId(O.id).componentType;["frame","table","form"].includes(v)&&(v="form");const b=B.getTableInfoByViewModelId(O.id);v!==S||!b||b.id!==m.id||O.fields.forEach(k=>{t.set(k.id,!0)})})}function h(m){f(m);const{fields:S}=m.type;u.value=!1,r.value=c(S),i.value&&i.value.updateDataSource(r.value)}const g={customRowStatus:m=>(m.disabled=!m.raw.selectable,m)};function p(){return i.value.getSelectedItems().map(S=>S.data)}return{fieldTreeGridRef:i,resolveFieldDataSource:h,occupiedFieldMap:t,fieldDataSource:r,fieldTreeRowOption:g,fieldColumns:s,fieldSelectionOption:a,checkAndGetSelectedFields:p,hasSelectableField:u,currentComponentType:l}}function kr(n){const{designerHostService:e}=n,t=new Map,r=o.ref(),i=o.ref(),s=o.ref([{field:"name",title:"实体名称"}]),a=o.ref(),u=o.ref(!1);function l(p){const m=on(n);return m.resolveFieldDataSource(p),m.hasSelectableField.value?(a.value=a.value||p,!0):!1}function c(p){return!(n.bindingEntityId&&n.bindingEntityId!==p.id||!l(p))}function d(p,m=""){var F;if(!p)return;const S=ce.cloneDeep(p),N=m?`${m}/${S.label}`:"/";t.set(S.label,N.replace("//","/"));const B=c(S),O={data:Object.assign({selectable:B},S),children:[]};if(S.type.entities&&S.type.entities.length){const v=S.type.entities.map(b=>d(b,N));O.children=O.children.concat(v)}return n.bindingEntityId===p.id&&(a.value=p),((F=a.value)==null?void 0:F.id)===p.id&&!m&&(u.value=!0),O}function f(){var N;const{formSchemaUtils:p}=e,m=(N=p.getFormSchema().module.entity[0])==null?void 0:N.entities[0];t.clear();const S=d(m);i.value=[S]}function h(){const p=r.value.getSelectedItems();if(!p.length){const m=new Ft;m.globalConfig={position:"top-center"},m.warning({message:"请先选择实体"});return}return p[0].data}return{entityTreeGridRef:r,entityDataSource:i,resolveEntityDataSource:f,entityBindToMap:t,checkAndGetSelectedEntity:h,entityColumns:s,entityTreeRowOption:{customRowStatus:p=>(p.disabled=!p.raw.selectable,p)},initialSelectedEntity:a,isMainEntityInitialSelected:u}}const jr=new Map([["appearance",xt]]);function Ir(n,e,t){return e}const Or={$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"]},Pr={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:[]}}}}}},rn={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:()=>{}}};Je(rn,Or,jr,Ir,Pr);const Dr=o.defineComponent({name:"FStep",props:rn,emits:["click"],setup(n,e){const t=o.ref(n.direction),r=o.ref(n.fill),i=o.ref(n.height),s=o.ref(n.steps),a=o.ref(n.activeIndex),u=o.computed(()=>({"f-progress-step-list":t.value==="horizontal","f-progress-step-list-block":t.value==="vertical","f-progress-step-horizontal-fill":t.value==="horizontal"&&r.value,"f-progress-step-vertical-fill":t.value==="vertical"&&r.value})),l=o.computed(()=>({height:t.value==="vertical"?`${i.value}px`:""}));function c(F,v){const b={step:!0,active:v===a.value,clickable:n.clickable,current:v===a.value,finish:v<a.value};return F.status&&(b[F.status]=!0),Ne.getCustomClass(b,F.class||"")}function d(F,v){if(!n.clickable)return;const b={step:F,stepIndex:v};e.emit("click",b)}function f(F,v){const b={"f-progressstep-row":!0,"step-active":v===a.value,"step-current":v===a.value,"step-finish":v<a.value};return F.status&&(b["step-"+F.status]=!0),b}function h(F,v){const b={"step-icon":!0,"step-success":v,"f-icon":v,"f-icon-check":v};return Ne.getCustomClass(b,F.icon||"")}function g(F,v){const b=[];return F.icon?b.push(o.createVNode("span",{class:h(F,!1)},null)):v>=a.value?b.push(o.createVNode("span",{class:"step-icon"},[v+1])):b.push(o.createVNode("span",{class:h(F,!0)},null)),b}function p(F,v){return{"step-name":!0,"step-name-success":v<a.value}}function m(F,v){return o.createVNode("div",{class:"f-progress-step-title"},[o.createVNode("p",{class:p(F,v)},[F.title])])}function S(F,v){return{"f-progress-step-line":!0,"f-progress-step-line-success":v===a.value}}function N(F,v){return v!==s.value.length-1}const B=o.computed(()=>({triangle:!0,"":t.value==="vertical"}));function O(){return s.value.map((F,v)=>o.createVNode("li",{class:c(F,v),onClick:b=>d(F,v)},[o.createVNode("div",{class:f(F,v)},[o.createVNode("div",{class:"f-progress-step-content"},[g(F,v),m(F,v)]),N(F,v)&&o.createVNode("div",{class:S(F,v)},[o.createVNode("span",{class:B.value},null)])])]))}return o.watch(()=>n.activeIndex,()=>{n.activeIndex>-1&&n.activeIndex<=s.value.length&&(a.value=n.activeIndex,O())}),()=>o.createVNode("div",{class:"f-progress-step"},[o.createVNode("ul",{class:u.value,style:l.value},[O()])])}}),Nt=new Map([["appearance",xt]]),$r=new Map([]),Rr="root-viewmodel";class qr{constructor(e,t){oe(this,"formSchemaUtils");oe(this,"controlCreatorUtils");oe(this,"designViewModelUtils");this.resolver=e,this.designerHostService=t,this.formSchemaUtils=this.designerHostService.formSchemaUtils,this.controlCreatorUtils=this.designerHostService.controlCreatorUtils,this.designViewModelUtils=this.designerHostService.designViewModelUtils}createComponent(e){const t=this.createComponentRefNode(e),r=this.createComponentNode(e),i=this.createViewModeNode(e),s=this.formSchemaUtils.getFormSchema();return s.module.viewmodels.push(i),s.module.components.push(r),this.designViewModelUtils.assembleDesignViewModel(),t}createComponentRefNode(e){const t=this.resolver.getSchemaByType("component-ref");return Object.assign(t,{id:`${e.componentId}-component-ref`,component:`${e.componentId}-component`}),t}createComponentNode(e){const t=this.resolver.getSchemaByType("component"),r=this.createFormComponentContents(e);return Object.assign(t,{id:`${e.componentId}-component`,viewModel:`${e.componentId}-component-viewmodel`,componentType:e.componentType,appearance:{class:this.getFormComponentClass()},formColumns:e.formColumns,contents:r}),t}getFormComponentClass(){const{templateId:e}=this.formSchemaUtils.getFormSchema().module;return e==="double-list-in-tab-template"?"f-struct-wrapper f-utils-fill-flex-column":"f-struct-wrapper"}createFormComponentContents(e){const t=this.resolver.getSchemaByType("section");Object.assign(t,{id:e.componentId+"-form-section",appearance:{class:"f-section-form f-section-in-mainsubcard"},mainTitle:e.componentName});const r=this.resolver.getSchemaByType("response-form"),i=[];Object.assign(r,{id:e.componentId+"-form",appearance:{class:"f-form-layout farris-form farris-form-controls-inline"},contents:i}),t.contents=[r];const{selectedFields:s}=e;s==null||s.forEach(u=>{if(u.$type===Ne.FormSchemaEntityField$Type.SimpleField){const l=ce.cloneDeep(u),c=this.resolveControlClassByFormColumns(e),d=this.controlCreatorUtils.setFormFieldProperty(l,"",c);d&&i.push(d)}});const{templateId:a}=this.formSchemaUtils.getFormSchema().module;return a==="double-list-in-tab-template"&&(t.appearance.class="f-section-grid f-section-in-main px-0 pt-0",t.fill=!0),[t]}resolveControlClassByFormColumns(e){let t="";switch(e.formColumns){case 1:{t="col-12";break}case 2:{t="col-12 col-md-6 col-xl-6 col-el-6";break}case 3:{t="col-12 col-md-6 col-xl-4 col-el-4";break}case 4:{t="col-12 col-md-6 col-xl-3 col-el-2";break}}return t}createViewModeNode(e){return{id:`${e.componentId}-component-viewmodel`,code:`${e.componentId}-component-viewmodel`,name:e.componentName,bindTo:e.bindTo,parent:Rr,fields:this.assembleViewModelFields(e),commands:[],states:[],enableValidation:!0}}assembleViewModelFields(e){const t=[],{selectedFields:r}=e;return r==null||r.forEach(i=>{if(i.$type===Ne.FormSchemaEntityField$Type.SimpleField){let s="blur";const a=i.type.name;(a===Ne.FormSchemaEntityFieldTypeName.Enum||a===Ne.FormSchemaEntityFieldTypeName.Boolean)&&(s="change"),t.push({type:"Form",id:i.id,fieldName:i.bindingField,groupId:null,groupName:null,updateOn:s,fieldSchema:{}})}}),t}}function Lr(n,e,t,r){var s,a,u,l,c,d;const i=t.parentComponentInstance;if(i&&r){const f=(s=i.schema)==null?void 0:s.type,g={componentId:`form-${Math.random().toString(36).slice(2,6)}`,componentName:((a=t.bindingSourceContext)==null?void 0:a.entityTitle)||((l=(u=t.bindingSourceContext)==null?void 0:u.bindingEntity)==null?void 0:l.name)||"标题",componentType:"form",formColumns:f==="splitter-pane"?1:4,parentContainerId:i.schema.id,bindTo:((c=t.bindingSourceContext)==null?void 0:c.bindTo)||"/",selectedFields:(d=t.bindingSourceContext)==null?void 0:d.bindingEntityFields};return new qr(n,r).createComponent(g)}else return e}function Ar(n,e,t){return e}Je({customClass:{type:String,default:""},customStyle:{type:String,defaut:""},visible:{type:Boolean,default:!0},adaptForLanguage:{type:Boolean,default:!0}},{$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:[]},visible:{description:"",type:"boolean",default:!0},labelAutoOverflow:{description:"",type:"boolean",default:!1},adaptForLanguage:{description:"",type:"boolean",default:!0}},required:["id","type","contents"]},Nt,Lr);const an={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/form-group.schema.json",title:"form-group",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a form group",type:"string"},type:{description:"The type string of form group component",type:"string",default:"form-group"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},enableLinkLabel:{description:"",type:"boolean",default:!1},editor:{description:"",type:"obejct",default:null},label:{description:"",type:"string",default:""},lableWidth:{description:"",type:"number"},binding:{description:"",type:"object",default:{}},visible:{description:"",type:"boolean",default:!0},required:{description:"",type:"boolean",default:!1},errors:{description:"",type:"object",default:null},name:{description:"The name string of form group component",type:"string",default:"form group"},showLabelType:{description:"",type:"string",default:"visible"}},required:["id","type","editor"]},sn={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]},visible:{type:Boolean,default:!0},required:{type:Boolean,default:!1},showLabel:{type:Boolean,default:!0},showLabelType:{type:String,default:"visible"},type:{type:String,default:"input-group"},componentId:{type:String,default:""},errors:{type:Object,default:null}};Je(sn,an,Nt,void 0);const Ur={id:{type:String},required:{type:Boolean,default:!1},text:{type:String,default:""},title:{type:String},valid:{type:Boolean,default:!0},inValidTip:{type:String,default:""},showType:{type:String,default:"visible"}},zr=o.defineComponent({name:"FDynamicFormLabel",props:Ur,emits:[],setup(n,e){o.ref(n.title||n.text);const t=o.ref(n.required),r=o.ref(n.text),i=o.ref(n.valid),s=o.ref(n.inValidTip);o.watch(()=>n.text,()=>{r.value=n.text}),o.watch(()=>n.required,(d,f)=>{d!==f&&(t.value=d)}),o.watch([()=>n.valid,()=>n.inValidTip],([d,f])=>{i.value=d,s.value=f});const a=o.computed(()=>i.value?r.value:s.value),u=o.computed(()=>i.value?"":"color:red"),l=o.computed(()=>({"col-form-label":!0,"f-width-auto":t.value&&(n.showType==="none"||!r.value)})),c=o.computed(()=>n.showType==="reserve-space"||t.value||r.value&&n.showType!=="none");return()=>c.value&&o.createVNode("label",{class:l.value,title:a.value,style:u.value},[!i.value&&o.createVNode("span",{class:"f-icon f-icon-warning mr-1",style:"color: red; min-width: 16px;",title:s.value},null),o.createVNode("span",{class:"farris-label-text"},[t.value&&o.createVNode("span",{class:"farris-label-info text-danger"},[o.createTextVNode("*")]),n.showType==="visible"&&r.value])])}}),L={},A={},U={},z={};let ln=!1;function Gr(){ln||(ln=!0,Sn.register(L,A,U,z),xn.register(L,A,U,z),Tn.register(L,A,U,z),Fn.register(L,A,U,z),Vn.register(L,A,U,z),Nn.register(L,A,U,z),Ut.register(L,A,U,z),zt.register(L,A,U,z),Ut.register(L,A,U,z),zt.register(L,A,U,z),Mn.register(L,A,U,z),En.register(L,A,U,z),Bn.register(L,A,U,z),jn.register(L,A,U,z),kn.register(L,A,U,z),In.register(L,A,U,z),On.register(L,A,U,z),Pn.register(L,A,U,z),Dn.register(L,A,U,z),$n.register(L,A,U,z),Po.register(L,A,U,z),Rn.register(L,A,U,z),qn.register(L,A,U,z),Mo.register(L,A,U,z),An.register(L,A,U,z),Un.register(L,A,U,z),zn.register(L,A,U,z),_n.register(L,A,U,z),Gn.register(L,A,U,z),Hn.register(L,A,U,z),Wn.register(L,A,U,z),Yn.register(L,A,U,z),Xn.register(L,A,U,z),Jn.register(L,A,U,z),Qn.register(L,A,U,z),Zn.register(L,A,U,z),Kn.register(L,A,U,z),eo.register(L,A,U,z),to.register(L,A,U,z),no.register(L,A,U,z),oo.register(L,A,U,z),ro.register(L,A,U,z),ao.register(L,A,U,z),so.register(L,A,U,z),io.register(L,A,U,z),Fo.register(L,A,U),lo.register(L,A,U,z),co.register(L,A,U,z),uo.register(L,A,U,z),fo.register(L,A,U,z),po.register(L,A,U,z),mo.register(L,A,U,z),Bo.register(L,A,U,z),ho.register(L,A,U,z),go.register(L,A,U,z),yo.register(L,A,U,z),vo.register(L,A,U,z),bo.register(L,A,U,z),Co.register(L,A,U,z),xo.register(L,A,U,z),wo.register(L,A,U,z),So.register(L,A,U,z),To.register(L,A,U,z),Vo.register(L,A,U,z),Ln.register(L,A,U,z),No.register(L,A,U,z),Eo.register(L,A,U,z),ko.register(L,A,U,z),jo.register(L,A,U,z),Io.register(L,A,U,z),Oo.register(L,A,U,z),Do.register(L,A,U,z),$o.register(L,A,U,z),Ro.register(L,A,U,z),qo.register(L,A,U,z),Lo.register(L,A,U,z),Ao.register(L,A,U,z))}function _r(){Gr();function n(a){const u=L[a];if(!u)throw new Error(`Could not find the editor of type '${a}'`);return u}function e(a,u){const l=A[a];return l?l(u):{}}function t(a){switch(a){case"check-box":return"onChangeValue";case"switch":return"onModelValueChanged";case"check-group":return"onChangeValue";case"combo-list":case"combo-tree":return"onChange";case"combo-lookup":return"";case"year-range":case"year-picker":case"month-range":case"month-picker":case"date-range":case"datetime-range":case"datetime-picker":case"date-picker":return"onUpdate:modelValue";case"time-picker":return"onValueChange";case"input-group":return"onChange";case"lookup":case"sort-condition-editor":case"filter-condition-editor":case"code-editor":case"language-textbox":return"onUpdate:modelValue";case"number-range":return"onValueChange";case"number-spinner":return"onValueChange";case"radio-group":return"onChangeValue";case"text":return"";case"events-editor":return"onSavedCommandListChanged";case"grid-field-editor":case"item-collection-editor":case"response-form-layout-setting":case"response-layout-editor-setting":case"response-layout-splitter":case"menu-lookup":case"json-editor":return"onChange";case"field-selector":case"binding-selector":return"onFieldSelected";case"schema-selector":return"onSchemaSelected";case"mapping-editor":return"onMappingFieldsChanged";case"textarea":return"onChange";case"query-solution-config":case"solution-preset":return"onFieldsChanged";case"property-editor":return"onValueChange";case"expression-editor":return"onExpressionChanged";case"collection-property-editor":return"onValueChange";default:return"onUpdate:modelValue"}}function r(a){switch(a){case"combo-list":case"input-group":case"textarea":return"onClear"}}function i(a){switch(a){case"input-group":case"textarea":return"onMousedownEvent"}}function s(a){switch(a){case"input-group":case"textarea":return"onMouseupEvent"}}return{resolveEditorProps:e,resolveEditorType:n,getChangeFunctionName:t,getClearFunctionName:r,getMousedownFunctionName:i,getMouseupFunctionName:s}}const Hr={errors:{type:Object,default:null}},Wr=o.defineComponent({name:"FValidationMessage",props:Hr,emits:[],setup(n,e){const t=o.ref(n.errors);o.watch(()=>n.errors,s=>{t.value=s});const r=o.ref(!0),i=o.computed(()=>{if(t.value){const s=Object.keys(t.value).map(a=>{var u;return(u=t.value[a])==null?void 0:u.name});return s.length?s.join(" "):""}return""});return()=>i.value&&o.createVNode("div",{class:"farris-feedback f-state-invalid",onClick:()=>r.value=!r.value},[!r.value&&o.createVNode("span",{class:"f-icon f-icon-message_warning f-feedback-icon"},null),r.value&&o.createVNode("span",{class:"f-feedback-message"},[i.value])])}}),cn=o.defineComponent({name:"FDynamicFormGroup",props:sn,emits:["change","update:modelValue"],setup(n,e){var k;const t=o.ref(n.id),r=o.ref(n.customClass),i=o.ref(n.editor),s=o.ref(n.label),a=o.ref(n.modelValue),u=o.ref(n.readonly),l=o.ref(((k=n.editor)==null?void 0:k.required)||n.required),c=o.ref(n.showLabel),d=o.ref(n.visible);o.ref(n.type);const f=o.ref(),h=o.ref(n.errors),g=o.computed(()=>c.value?n.showLabelType:"none"),{resolveEditorProps:p,resolveEditorType:m,getChangeFunctionName:S,getClearFunctionName:N}=_r(),B=o.computed(()=>({"form-group":!0,"farris-form-group":!0,"common-group":!0,"q-state-readonly":u.value}));function O(y,x,T){a.value=x!==void 0?x:y,e.emit("update:modelValue",a.value),e.emit("change",a.value,{newValue:y,newModelValue:x,parameters:T})}function F(){e.emit("update:modelValue","")}const v=o.computed(()=>{const y=i.value.type||"input-group",x=m(y),T=p(y,i.value),C=S(y),w=N(i.value.type);return w&&(T[w]=F),T[C]=O,(T.id==null||T.id==="")&&(T.id=t.value),y==="number-range"&&i.value.onBeginValueChange&&typeof i.value.onBeginValueChange=="function"?(i.value.onBeginValueChange&&typeof i.value.onBeginValueChange=="function"&&(T.onBeginValueChange=i.value.onBeginValueChange),i.value.onEndValueChange&&typeof i.value.onEndValueChange=="function"&&(T.onEndValueChange=i.value.onEndValueChange)):y==="lookup"&&i.value["onUpdate:idValue"]&&typeof i.value["onUpdate:idValue"]=="function"?(T["onUpdate:idValue"]=i.value["onUpdate:idValue"],T.id=t.value):y==="collection-property-editor"&&i.value.onSelectionChange&&typeof i.value.onSelectionChange=="function"?T.onSelectionChange=i.value.onSelectionChange:y==="property-editor"&&(T.onBeforeOpenVariables=i.value.onBeforeOpenVariables),()=>o.createVNode(x,o.mergeProps({ref:f},T,{modelValue:a.value,"onUpdate:modelValue":E=>a.value=E}),e.slots)});function b(){return o.createVNode(Wr,{id:`${t.value}-validation-message`,errors:h.value},null)}return o.watch([()=>n.id,()=>n.customClass,()=>n.editor,()=>n.label,()=>n.modelValue,()=>n.readonly,()=>n.required,()=>n.showLabel,()=>n.visible,()=>n.errors],([y,x,T,C,w,E,V,j,_,J])=>{var $;t.value=y,r.value=x,i.value=T,s.value=C,a.value=w,u.value=E,l.value=(($=i.value)==null?void 0:$.required)||V,c.value=j,d.value=_,h.value=J}),e.expose({editorRef:f}),()=>d.value&&o.createVNode("div",{id:`${t.value}-form-group`,class:r.value,style:n.customStyle},[o.createVNode("div",{class:"farris-group-wrap"},[o.createVNode("div",{class:B.value},[o.createVNode(zr,{id:`${t.value}-lable`,showType:g.value,required:l.value,text:s.value,title:s.value},null),o.createVNode("div",{class:"farris-input-wrap"},[v.value(),b()])])])])}}),Qe=class Qe{static getEditorTypesByMDataType(e,t=!1,r=""){if(t)return[{key:R["language-textbox"].type,value:R["language-textbox"].name}];let i=Qe.fieldControlTypeMapping[e];if(r==="data-grid-column"&&(i!=null&&i.length)){const s=[R["check-group"].type,R["radio-group"].type];i=i.filter(a=>!s.includes(a.key))}return i}static getAllInputTypes(){const e=[];for(const t in Qe.fieldControlTypeMapping)Qe.fieldControlTypeMapping[t].forEach(r=>{e.find(i=>i.key===r.key&&i.value===r.value)||e.push({key:r.key,value:r.value})});return e}static mappingDomPropAndSchemaProp(e,t){var s;const r=(s=e.editor)==null?void 0:s.type,i=[];return(e.type===R["data-grid-column"].type||e.type===R["tree-grid-column"].type)&&t&&t.categoryId&&t.categoryId.indexOf("gridFieldEditor")<0&&i.push({domField:"title",schemaField:"name"}),i.push({domField:"label",schemaField:"name"}),i.push({domField:"editor.required",schemaField:"require"}),i.push({domField:"editor.readonly",schemaField:"readonly"}),(r===R["input-group"].type||r===R.textarea.type||r===R["number-spinner"].type)&&i.push({domField:"editor.maxLength",schemaField:"type.length"}),r===R["number-spinner"].type&&i.push({domField:"editor.precision",schemaField:"type.precision"}),(e.type===R["data-grid-column"].type||e.type===R["tree-grid-column"].type)&&i.push({domField:"formatter.precision",schemaField:"type.precision"}),(r===R["combo-list"].type||r===R["radio-group"].type)&&i.push({domField:"editor.data",schemaField:"type.enumValues"}),(e.type===R["data-grid-column"].type||e.type===R["tree-grid-column"].type)&&i.push({domField:"formatter.data",schemaField:"type.enumValues"}),r===R["date-picker"].type&&(i.push({domField:"editor.displayFormat",schemaField:"editor.format"}),i.push({domField:"editor.fieldType",schemaField:"type.name"})),r===R["number-spinner"].type&&(i.push({domField:"editor.max",schemaField:"editor.maxValue"}),i.push({domField:"editor.min",schemaField:"editor.minValue"})),r===R.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"}),(e.type===R["data-grid-column"].type||e.type===R["tree-grid-column"].type)&&i.push({domField:"field",schemaField:"bindingPath"}),i}};oe(Qe,"fieldControlTypeMapping",{String:[{key:R["input-group"].type,value:R["input-group"].name},{key:R.lookup.type,value:R.lookup.name},{key:R["date-picker"].type,value:R["date-picker"].name},{key:R.switch.type,value:R.switch.name},{key:R["check-box"].type,value:R["check-box"].name},{key:R["check-group"].type,value:R["check-group"].name},{key:R["radio-group"].type,value:R["radio-group"].name},{key:R["combo-list"].type,value:R["combo-list"].name},{key:R.textarea.type,value:R.textarea.name},{key:R["time-picker"].type,value:R["time-picker"].name}],Text:[{key:R.textarea.type,value:R.textarea.name},{key:R.lookup.type,value:R.lookup.name}],Decimal:[{key:R["number-spinner"].type,value:R["number-spinner"].name}],Integer:[{key:R["number-spinner"].type,value:R["number-spinner"].name}],Number:[{key:R["number-spinner"].type,value:R["number-spinner"].name},{key:R.switch.type,value:R.switch.name},{key:R["check-box"].type,value:R["check-box"].name}],BigNumber:[{key:R["number-spinner"].type,value:R["number-spinner"].name}],Date:[{key:R["date-picker"].type,value:R["date-picker"].name}],DateTime:[{key:R["date-picker"].type,value:R["date-picker"].name}],Boolean:[{key:R.switch.type,value:R.switch.name},{key:R["check-box"].type,value:R["check-box"].name}],Enum:[{key:R["combo-list"].type,value:R["combo-list"].name},{key:R["radio-group"].type,value:R["radio-group"].name}],Object:[{key:R.lookup.type,value:R.lookup.name},{key:R["combo-list"].type,value:R["combo-list"].name},{key:R["radio-group"].type,value:R["radio-group"].name}]});let un=Qe;var Mt=(n=>(n.Form="Form",n.Variable="Variable",n))(Mt||{}),Pe=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function mt(n){throw new Error('Could not dynamically require "'+n+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var Yr={exports:{}};(function(n,e){(function(t){n.exports=t()})(function(){return function(){function t(r,i,s){function a(c,d){if(!i[c]){if(!r[c]){var f=typeof mt=="function"&&mt;if(!d&&f)return f(c,!0);if(u)return u(c,!0);var h=new Error("Cannot find module '"+c+"'");throw h.code="MODULE_NOT_FOUND",h}var g=i[c]={exports:{}};r[c][0].call(g.exports,function(p){var m=r[c][1][p];return a(m||p)},g,g.exports,t,r,i,s)}return i[c].exports}for(var u=typeof mt=="function"&&mt,l=0;l<s.length;l++)a(s[l]);return a}return t}()({1:[function(t,r,i){var s={},a="(?:^|\\s)",u="(?:\\s|$)";function l(f){var h=s[f];return h?h.lastIndex=0:s[f]=h=new RegExp(a+f+u,"g"),h}function c(f,h){var g=f.className;g.length?l(h).test(g)||(f.className+=" "+h):f.className=h}function d(f,h){f.className=f.className.replace(l(h)," ").trim()}r.exports={add:c,rm:d}},{}],2:[function(t,r,i){(function(s){var a=t("contra/emitter"),u=t("crossvent"),l=t("./classes"),c=document,d=c.documentElement;function f(C,w){var E=arguments.length;E===1&&Array.isArray(C)===!1&&(w=C,C=[]);var V,j,_,J,$,P,Y,G,Z,le=null,de,K,ue=!1,he=0,ae,X=w||{};X.moves===void 0&&(X.moves=B),X.accepts===void 0&&(X.accepts=B),X.invalid===void 0&&(X.invalid=it),X.containers===void 0&&(X.containers=C||[]),X.isContainer===void 0&&(X.isContainer=N),X.copy===void 0&&(X.copy=!1),X.copySortSource===void 0&&(X.copySortSource=!1),X.revertOnSpill===void 0&&(X.revertOnSpill=!1),X.removeOnSpill===void 0&&(X.removeOnSpill=!1),X.direction===void 0&&(X.direction="vertical"),X.ignoreInputTextSelection===void 0&&(X.ignoreInputTextSelection=!0),X.mirrorContainer===void 0&&(X.mirrorContainer=c.body);var se=a({containers:X.containers,start:Be,end:_e,cancel:D,remove:tt,destroy:Ge,canMove:Re,dragging:!1});return X.removeOnSpill===!0&&se.on("over",kt).on("out",jt),De(),se;function ze(M){return se.containers.indexOf(M)!==-1||X.isContainer(M)}function De(M){var q=M?"remove":"add";p(d,q,"mousedown",pe),p(d,q,"mouseup",Le)}function Ee(M){var q=M?"remove":"add";p(d,q,"mousemove",rt)}function Ze(M){var q=M?"remove":"add";u[q](d,"selectstart",Ke),u[q](d,"click",Ke)}function Ge(){De(!0),Le({})}function Ke(M){de&&M.preventDefault()}function pe(M){J=M.clientX,$=M.clientY;var q=m(M)!==1||M.metaKey||M.ctrlKey;if(!q){var H=M.target,Q=$e(H);Q&&(de=Q,Ee(),M.type==="mousedown"&&(b(H)?H.focus():M.preventDefault()))}}function rt(M){if(de){if(m(M)===0){Le({});return}if(!(M.clientX!==void 0&&Math.abs(M.clientX-J)<=(X.slideFactorX||0)&&M.clientY!==void 0&&Math.abs(M.clientY-$)<=(X.slideFactorY||0))){if(X.ignoreInputTextSelection){var q=T("clientX",M)||0,H=T("clientY",M)||0,Q=c.elementFromPoint(q,H);if(b(Q))return}var re=de;Ee(!0),Ze(),_e(),qe(re),l.add(G||_,"gu-transit"),Ot(),It(),he=0,Oe(M)}}}function $e(M){if(!(se.dragging&&V)&&!ze(M)){for(var q=M;v(M)&&ze(v(M))===!1;)if(X.invalid(M,q)||(M=v(M),!M))return;var H=v(M);if(H&&!X.invalid(M,q)){var Q=X.moves(M,H,q,y(M));if(Q)return{item:M,source:H}}}}function Re(M){return!!$e(M)}function Be(M){var q=$e(M);q&&qe(q)}function qe(M){At(M.item,M.source)&&(G=M.item.cloneNode(!0),se.emit("cloned",G,M.item,"copy")),j=M.source,_=M.item,P=Y=y(M.item),se.dragging=!0,se.emit("drag",_,j)}function it(){return!1}function _e(){if(se.dragging){var M=G||_;et(M,v(M))}}function Ie(){de=!1,Ee(!0),Ze(!0)}function Le(M){if(Ie(),!!se.dragging){var q=G||_,H=T("clientX",M)||0,Q=T("clientY",M)||0,re=S(V,H,Q),ie=ge(re,H,Q);ie&&(G&&X.copySortSource||!G||ie!==j)?et(q,ie):X.removeOnSpill?tt():D()}}function et(M,q){var H=v(M);G&&X.copySortSource&&q===j&&H.removeChild(_),me(q)?se.emit("cancel",M,j):se.emit("drop",M,q,j,Y),te()}function tt(){if(se.dragging){var M=G||_,q=v(M);q&&q.removeChild(M),se.emit(G?"cancel":"remove",M,q,j),te()}}function D(M){if(se.dragging){var q=arguments.length>0?M:X.revertOnSpill,H=G||_,Q=v(H),re=me(Q);re===!1&&q&&(G?Q&&Q.removeChild(G):j.insertBefore(H,P)),re||q?se.emit("cancel",H,j,j):se.emit("drop",H,Q,j,Y),te()}}function te(){var M=G||_;Ie(),Pt(),Dt(),M&&l.rm(M,"gu-transit"),Z&&clearTimeout(Z),se.dragging=!1,le&&se.emit("out",M,le,j),se.emit("dragend",M,he),j=_=G=P=Y=Z=le=null}function me(M,q){var H;return q!==void 0?H=q:V?H=Y:H=y(G||_),M===j&&H===P}function ge(M,q,H){for(var Q=M;Q&&!re();)Q=v(Q);return Q;function re(){var ie=ze(Q);if(ie===!1)return!1;var Ve=yt(Q,M),xe=vt(Q,Ve,q,H),Se=me(Q,xe);return Se?!0:X.accepts(_,Q,j,xe)}}function Oe(M){if(!V)return;M.preventDefault();var q=T("clientX",M)||0,H=T("clientY",M)||0;V.style.left=q-2+"px",V.style.top=H-2+"px";var Q=G||_,re=S(V,q,H),ie=ge(re,q,H),Ve=ie!==null&&ie!==le;(Ve||ie===null)&&(Te(),le=ie,je()),Lt(re,H);var xe=v(Q);if(ie===j&&G&&!X.copySortSource){xe&&xe.removeChild(Q);return}var Se,ke=yt(ie,re);if(ue=at(ke,ie),ke!==null)Se=vt(ie,ke,q,H);else if(X.revertOnSpill===!0&&!G)Se=P,ie=j;else{G&&xe&&xe.removeChild(Q),G&&K&&(K.style.display="none");return}K.style.display="block",Bt(Se,Q,Ve),Se?Rt(ke,Se):qt(ie);function ye(Ce){se.emit(Ce,Q,le,j)}function je(){Ve&&ye("over")}function Te(){le&&ye("out")}}function Bt(M,q,H){(M===q||M===y(q))&&(Y=y(q)),(M===null&&H||M!==q&&M!==y(q))&&(Y=M)}function kt(M){l.rm(M,"gu-hide")}function jt(M){se.dragging&&l.add(M,"gu-hide")}function It(){V||(V=document.createElement("div"),V.style="background: grey; color: white; height: 24px; text-align: center; padding: 3px 10px; min-width: 100px;border-radius: 4px; box-shadow: 0 0 6px grey;",V.innerHTML=X.getMirrorText&&X.getMirrorText(_)||"控件",l.add(V,"gu-mirror"),X.mirrorContainer.appendChild(V),p(d,"add","mousemove",Oe),l.add(X.mirrorContainer,"gu-unselectable"),se.emit("cloned",V,_,"mirror"))}function Ot(){if(K=document.createElement("div"),l.add(K,"gu-insertion"),_){var M=_.getBoundingClientRect();K.style.left=M.left+"px",K.style.top=M.top+"px"}ue=!1,X.mirrorContainer.appendChild(K)}function Pt(){V&&(l.rm(X.mirrorContainer,"gu-unselectable"),p(d,"remove","mousemove",Oe),v(V).removeChild(V),V=null)}function Dt(){K&&(v(K).removeChild(K),K=null)}function yt(M,q){for(var H=q;H!==M&&v(H)!==M;)H=v(H);return H===d?null:H}function at(M,q){if(!q)return ue;var H=M||q&&q.lastElementChild;if(!H)return!0;var Q=getComputedStyle(M),re=/^inline/.test(Q.getPropertyValue("display"))||/^(left|right)$/.test(Q.getPropertyValue("float"));if(re)return!0;if(q){var ie=getComputedStyle(q),Ve=ie.getPropertyValue("display");if(/flex$/.test(Ve)){var xe=ie.getPropertyValue("flex-direction")||"row";if(xe==="row"||xe==="row-reverse")return!$t(q)}return!1}return!0}function $t(M){if(!M.children||!M.children.length)return!1;for(const q of Array.from(M.children)){const Q=(q.className&&q.className.split(" ")||[]).filter(re=>/^col(-md|-xl|-el){0,1}-([1-9]|10|11|12)$/.test(re));if(!Q.length)return!1;for(const re of Q){const ie=re.slice(re.lastIndexOf("-")+1);if(parseInt(ie,10)!==12)return!1}}return!0}function Rt(M,q){const H=q.getBoundingClientRect();if(K.style.left=H.left+"px",K.style.top=H.top+"px",ue){if(K.style.height=H.height+"px",K.style.width="4px",M){const Q=M.getBoundingClientRect();Q.top!==H.top&&(K.style.left=Q.right+"px",K.style.top=Q.top+"px",K.style.height=Q.height+"px")}}else if(K.style.height="4px",K.style.width=H.width+"px",ae){const Q=ae.getBoundingClientRect();H.top<Q.top&&(K.style.display="none")}q===_&&_&&(K.style.display="none")}function qt(M){Y=null;var q=M.lastElementChild;if(q){var H=q.getBoundingClientRect();ue?(K.style.left=H.right+"px",K.style.top=H.top+"px",K.style.height=H.height+"px",K.style.width="4px"):(K.style.left=H.left+"px",K.style.top=H.bottom+"px",K.style.height="4px",K.style.width=H.width+"px"),q===_&&_&&(K.style.display="none")}else K.style.display="none"}function Lt(M,q){if(!X.mirrorContainer.contains(M)||!window.scrollContainerList||!Array.from(window.scrollContainerList).length||(ae=h(M),!ae||!ae.contains(M)))return;const H=document.querySelector(".dgComponentSelected"),Q=ae.getBoundingClientRect();if(q-30<Q.top&&ae.scrollTop>0){let re=ae.scrollTop<10?ae.scrollTop:10;ae.scrollBy(0,-1*re),H&&ae.contains(H)&&(he=he+-1*re)}if(q+30>Q.bottom&&ae.scrollTop<ae.scrollHeight-ae.clientHeight){const re=ae.scrollHeight-ae.clientHeight-ae.scrollTop;let ie=re<10?re:10;ae.scrollBy(0,ie),H&&ae.contains(H)&&(he=he+ie)}}function vt(M,q,H,Q){var re=X.direction==="horizontal",ie=X.direction==="mixed",Ve=q!==M?Se():xe();return Ve;function xe(){var ye=M.children.length,je,Te,Ce;for(je=0;je<ye;je++)if(Te=M.children[je],Ce=Te.getBoundingClientRect(),re&&Ce.left+Ce.width/2>H||!ie&&!re&&Ce.top+Ce.height/2>Q||ie&&Ce.left+Ce.width>H&&Ce.top+Ce.height>Q)return Te;return null}function Se(){var ye=q.getBoundingClientRect();if(ie){var je=Q-ye.top,Te=H-ye.left,Ce=ye.bottom-Q,st=ye.right-H,lt=Math.min(Te,st,je,Ce),ct;return ue?ct=st<Te:ct=Ce===lt||st===lt||Te===lt,ke(ct)}return ke(re?H>ye.left+O(ye)/2:Q>ye.top+F(ye)/2)}function ke(ye){return ye?y(q):q}}function At(M,q){return typeof X.copy=="boolean"?X.copy:X.copy(M,q)}}function h(C){const w=Array.from(window.scrollContainerList);if(w.length===1){const V=Array.from(window.scrollContainerList)[0];return document.getElementById(V)}const E=g(w);for(const V of E)if(V.contains(C))return V;return null}function g(C){const w=[];return C.forEach(E=>{const V=document.getElementById(E);V&&w.push(V)}),w.sort((E,V)=>E.contains(V)?1:V.contains(E)?-1:0),w}function p(C,w,E,V){var j={mouseup:"touchend",mousedown:"touchstart",mousemove:"touchmove"},_={mouseup:"pointerup",mousedown:"pointerdown",mousemove:"pointermove"},J={mouseup:"MSPointerUp",mousedown:"MSPointerDown",mousemove:"MSPointerMove"};s.navigator.pointerEnabled?u[w](C,_[E],V):s.navigator.msPointerEnabled?u[w](C,J[E],V):(u[w](C,j[E],V),u[w](C,E,V))}function m(C){if(C.touches!==void 0)return C.touches.length;if(C.which!==void 0&&C.which!==0)return C.which;if(C.buttons!==void 0)return C.buttons;var w=C.button;if(w!==void 0)return w&1?1:w&2?3:w&4?2:0}function S(C,w,E){C=C||{};var V=C.className||"",j;return C.className+=" gu-hide",j=c.elementFromPoint(w,E),C.className=V,j}function N(){return!1}function B(){return!0}function O(C){return C.width||C.right-C.left}function F(C){return C.height||C.bottom-C.top}function v(C){return C.parentNode===c?null:C.parentNode}function b(C){return C.tagName==="INPUT"||C.tagName==="TEXTAREA"||C.tagName==="SELECT"||k(C)}function k(C){return!C||C.contentEditable==="false"?!1:C.contentEditable==="true"?!0:k(v(C))}function y(C){return C.nextElementSibling||w();function w(){var E=C;do E=E.nextSibling;while(E&&E.nodeType!==1);return E}}function x(C){return C.targetTouches&&C.targetTouches.length?C.targetTouches[0]:C.changedTouches&&C.changedTouches.length?C.changedTouches[0]:C}function T(C,w){var E=x(w),V={pageX:"clientX",pageY:"clientY"};return C in V&&!(C in E)&&V[C]in E&&(C=V[C]),E[C]}r.exports=f}).call(this,typeof Pe<"u"?Pe:typeof self<"u"?self:typeof window<"u"?window:{})},{"./classes":1,"contra/emitter":5,crossvent:6}],3:[function(t,r,i){r.exports=function(a,u){return Array.prototype.slice.call(a,u)}},{}],4:[function(t,r,i){var s=t("ticky");r.exports=function(u,l,c){u&&s(function(){u.apply(c||null,l||[])})}},{ticky:10}],5:[function(t,r,i){var s=t("atoa"),a=t("./debounce");r.exports=function(l,c){var d=c||{},f={};return l===void 0&&(l={}),l.on=function(h,g){return f[h]?f[h].push(g):f[h]=[g],l},l.once=function(h,g){return g._once=!0,l.on(h,g),l},l.off=function(h,g){var p=arguments.length;if(p===1)delete f[h];else if(p===0)f={};else{var m=f[h];if(!m)return l;m.splice(m.indexOf(g),1)}return l},l.emit=function(){var h=s(arguments);return l.emitterSnapshot(h.shift()).apply(this,h)},l.emitterSnapshot=function(h){var g=(f[h]||[]).slice(0);return function(){var p=s(arguments),m=this||l;if(h==="error"&&d.throws!==!1&&!g.length)throw p.length===1?p[0]:p;return g.forEach(function(N){d.async?a(N,p,m):N.apply(m,p),N._once&&l.off(h,N)}),l}},l}},{"./debounce":4,atoa:3}],6:[function(t,r,i){(function(s){var a=t("custom-event"),u=t("./eventmap"),l=s.document,c=h,d=p,f=[];s.addEventListener||(c=g,d=m),r.exports={add:c,remove:d,fabricate:S};function h(v,b,k,y){return v.addEventListener(b,k,y)}function g(v,b,k){return v.attachEvent("on"+b,B(v,b,k))}function p(v,b,k,y){return v.removeEventListener(b,k,y)}function m(v,b,k){var y=O(v,b,k);if(y)return v.detachEvent("on"+b,y)}function S(v,b,k){var y=u.indexOf(b)===-1?T():x();v.dispatchEvent?v.dispatchEvent(y):v.fireEvent("on"+b,y);function x(){var C;return l.createEvent?(C=l.createEvent("Event"),C.initEvent(b,!0,!0)):l.createEventObject&&(C=l.createEventObject()),C}function T(){return new a(b,{detail:k})}}function N(v,b,k){return function(x){var T=x||s.event;T.target=T.target||T.srcElement,T.preventDefault=T.preventDefault||function(){T.returnValue=!1},T.stopPropagation=T.stopPropagation||function(){T.cancelBubble=!0},T.which=T.which||T.keyCode,k.call(v,T)}}function B(v,b,k){var y=O(v,b,k)||N(v,b,k);return f.push({wrapper:y,element:v,type:b,fn:k}),y}function O(v,b,k){var y=F(v,b,k);if(y){var x=f[y].wrapper;return f.splice(y,1),x}}function F(v,b,k){var y,x;for(y=0;y<f.length;y++)if(x=f[y],x.element===v&&x.type===b&&x.fn===k)return y}}).call(this,typeof Pe<"u"?Pe:typeof self<"u"?self:typeof window<"u"?window:{})},{"./eventmap":7,"custom-event":8}],7:[function(t,r,i){(function(s){var a=[],u="",l=/^on/;for(u in s)l.test(u)&&a.push(u.slice(2));r.exports=a}).call(this,typeof Pe<"u"?Pe:typeof self<"u"?self:typeof window<"u"?window:{})},{}],8:[function(t,r,i){(function(s){var a=s.CustomEvent;function u(){try{var l=new a("cat",{detail:{foo:"bar"}});return l.type==="cat"&&l.detail.foo==="bar"}catch{}return!1}r.exports=u()?a:typeof document<"u"&&typeof document.createEvent=="function"?function(c,d){var f=document.createEvent("CustomEvent");return d?f.initCustomEvent(c,d.bubbles,d.cancelable,d.detail):f.initCustomEvent(c,!1,!1,void 0),f}:function(c,d){var f=document.createEventObject();return f.type=c,d?(f.bubbles=!!d.bubbles,f.cancelable=!!d.cancelable,f.detail=d.detail):(f.bubbles=!1,f.cancelable=!1,f.detail=void 0),f}}).call(this,typeof Pe<"u"?Pe:typeof self<"u"?self:typeof window<"u"?window:{})},{}],9:[function(t,r,i){var s=r.exports={},a,u;function l(){throw new Error("setTimeout has not been defined")}function c(){throw new Error("clearTimeout has not been defined")}(function(){try{typeof setTimeout=="function"?a=setTimeout:a=l}catch{a=l}try{typeof clearTimeout=="function"?u=clearTimeout:u=c}catch{u=c}})();function d(F){if(a===setTimeout)return setTimeout(F,0);if((a===l||!a)&&setTimeout)return a=setTimeout,setTimeout(F,0);try{return a(F,0)}catch{try{return a.call(null,F,0)}catch{return a.call(this,F,0)}}}function f(F){if(u===clearTimeout)return clearTimeout(F);if((u===c||!u)&&clearTimeout)return u=clearTimeout,clearTimeout(F);try{return u(F)}catch{try{return u.call(null,F)}catch{return u.call(this,F)}}}var h=[],g=!1,p,m=-1;function S(){!g||!p||(g=!1,p.length?h=p.concat(h):m=-1,h.length&&N())}function N(){if(!g){var F=d(S);g=!0;for(var v=h.length;v;){for(p=h,h=[];++m<v;)p&&p[m].run();m=-1,v=h.length}p=null,g=!1,f(F)}}s.nextTick=function(F){var v=new Array(arguments.length-1);if(arguments.length>1)for(var b=1;b<arguments.length;b++)v[b-1]=arguments[b];h.push(new B(F,v)),h.length===1&&!g&&d(N)};function B(F,v){this.fun=F,this.array=v}B.prototype.run=function(){this.fun.apply(null,this.array)},s.title="browser",s.browser=!0,s.env={},s.argv=[],s.version="",s.versions={};function O(){}s.on=O,s.addListener=O,s.once=O,s.off=O,s.removeListener=O,s.removeAllListeners=O,s.emit=O,s.prependListener=O,s.prependOnceListener=O,s.listeners=function(F){return[]},s.binding=function(F){throw new Error("process.binding is not supported")},s.cwd=function(){return"/"},s.chdir=function(F){throw new Error("process.chdir is not supported")},s.umask=function(){return 0}},{}],10:[function(t,r,i){(function(s){var a=typeof s=="function",u;a?u=function(l){s(l)}:u=function(l){setTimeout(l,0)},r.exports=u}).call(this,t("timers").setImmediate)},{timers:11}],11:[function(t,r,i){(function(s,a){var u=t("process/browser.js").nextTick,l=Function.prototype.apply,c=Array.prototype.slice,d={},f=0;i.setTimeout=function(){return new h(l.call(setTimeout,window,arguments),clearTimeout)},i.setInterval=function(){return new h(l.call(setInterval,window,arguments),clearInterval)},i.clearTimeout=i.clearInterval=function(g){g.close()};function h(g,p){this._id=g,this._clearFn=p}h.prototype.unref=h.prototype.ref=function(){},h.prototype.close=function(){this._clearFn.call(window,this._id)},i.enroll=function(g,p){clearTimeout(g._idleTimeoutId),g._idleTimeout=p},i.unenroll=function(g){clearTimeout(g._idleTimeoutId),g._idleTimeout=-1},i._unrefActive=i.active=function(g){clearTimeout(g._idleTimeoutId);var p=g._idleTimeout;p>=0&&(g._idleTimeoutId=setTimeout(function(){g._onTimeout&&g._onTimeout()},p))},i.setImmediate=typeof s=="function"?s:function(g){var p=f++,m=arguments.length<2?!1:c.call(arguments,1);return d[p]=!0,u(function(){d[p]&&(m?g.apply(null,m):g.call(null),i.clearImmediate(p))}),p},i.clearImmediate=typeof a=="function"?a:function(g){delete d[g]}}).call(this,t("timers").setImmediate,t("timers").clearImmediate)},{"process/browser.js":9,timers:11}]},{},[2])(2)})})(Yr);const Xr={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/modal.schema.json",title:"modal",description:"弹窗组件",type:"object",properties:{id:{description:"组件唯一标识",type:"string"},type:{description:"组件类型",type:"string",default:"modal"},appearance:{description:"组件外观",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},name:{description:"名称",type:"string",default:null},title:{description:"标题",type:"string"},width:{description:"窗口宽度",type:"number",default:900},height:{description:"窗口高度",type:"number",default:600},contents:{description:"弹窗子组件集合",type:"array",default:[]},modelValue:{description:"是否显示",type:"boolean",default:!1},showCloseButton:{description:"显示关闭按钮",type:"boolean",default:!0},showMaxButton:{description:"显示最大化按钮",type:"boolean",default:!0},enableEsc:{description:"允许ESC关闭",type:"boolean",default:!0},resizeable:{description:"允许调整窗口尺寸",type:"boolean",default:!0},fitContent:{description:"是否自适应",type:"boolean",default:!1},showButtons:{description:"是否显示底部按钮",type:"boolean",default:!0},mask:{description:"是否模态",type:"boolean",default:!0},draggable:{description:"是否允许拖拽调整位置",type:"boolean",default:!0},onAccept:{description:"确定事件",type:"object",default:null},onCancel:{description:"取消事件",type:"object",default:null},beforeClose:{description:"关闭前事件",type:"object",default:null}},required:["id","type"],events:{onAccept:"确定事件",onCancel:"取消事件",beforeClose:"关闭前回调"}},Jr=new Map([["appearance",ut.resolveAppearance]]);function Qr(n,e,t){return e}function Zr(){function n(e,t){const r={};return r.beforeClose=i=>t.call("beforeClose",[i,e]),r}return{resolve:n}}const dn={allowClickMaskToClose:{type:Boolean,default:!1},beforeClose:{type:Function,default:()=>!0},class:{type:String,default:""},maskClass:{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},mask:{type:Boolean,default:!0},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:""},footerHeight:{type:Number,default:60},host:{type:Object,default:"body"}},Kr=ut.createPropsResolver(dn,Xr,Jr,Qr),ei=Zr();class fe{constructor(e,t){this.x=e,this.y=t}static getTransformInfo(e){const r=window.getComputedStyle(e).getPropertyValue("transform").replace(/[^-\d,]/g,"").split(",");if(r.length>=6){const i=parseInt(r[4],10),s=parseInt(r[5],10);return{x:i,y:s}}return{x:0,y:0}}static fromEvent(e,t=null){if(this.isMouseEvent(e))return new fe(e.clientX,e.clientY);if(t===null||e.changedTouches.length===1)return new fe(e.changedTouches[0].clientX,e.changedTouches[0].clientY);for(let r=0;r<e.changedTouches.length;r++)if(e.changedTouches[r].target===t)return new fe(e.changedTouches[r].clientX,e.changedTouches[r].clientY)}static isMouseEvent(e){return Object.prototype.toString.apply(e).indexOf("MouseEvent")===8}static isIPosition(e){return!!e&&"x"in e&&"y"in e}static getCurrent(e){const t=new fe(0,0);if(window){const r=window.getComputedStyle(e);if(r){const i=parseInt(r.getPropertyValue("left"),10),s=parseInt(r.getPropertyValue("top"),10);t.x=isNaN(i)?0:i,t.y=isNaN(s)?0:s}return t}return null}static copy(e){return new fe(0,0).set(e)}get value(){return{x:this.x,y:this.y}}add(e){return this.x+=e.x,this.y+=e.y,this}subtract(e){return this.x-=e.x,this.y-=e.y,this}multiply(e){this.x*=e,this.y*=e}divide(e){this.x/=e,this.y/=e}reset(){return this.x=0,this.y=0,this}set(e){return this.x=e.x,this.y=e.y,this}}class Ae{constructor(e,t){this.width=e,this.height=t}static getCurrent(e){const t=new Ae(0,0);if(window){const r=window.getComputedStyle(e);return r&&(t.width=parseInt(r.getPropertyValue("width"),10),t.height=parseInt(r.getPropertyValue("height"),10)),t}return null}static copy(e){return new Ae(0,0).set(e)}set(e){return this.width=e.width,this.height=e.height,this}}function ti(n,e){const t=o.ref(),r=o.ref(),i=o.ref(),s=o.ref(),a=o.ref(),u=o.ref(),l=o.ref(),c=o.ref(),d=o.ref(),f=o.ref(),h=o.ref(),g=o.ref(n.resizeable),p=o.ref(),m=o.ref(n.draggable),S=o.ref(!1);function N(){const $=r.value||document.body,P=window.getComputedStyle($);if(!P||!t.value)return;const Y=fe.getTransformInfo(t.value),G={};l.value&&(G.deltaL=t.value.offsetLeft-l.value.x,G.deltaT=t.value.offsetTop-l.value.y);const Z=P.getPropertyValue("position");G.width=$.clientWidth,G.height=$.clientHeight,G.pr=parseInt(P.getPropertyValue("padding-right"),10),G.pb=parseInt(P.getPropertyValue("padding-bottom"),10),G.position=P.getPropertyValue("position"),Z==="static"&&($.style.position="relative"),G.translateX=Y.x,G.translateY=Y.y,f.value=G}function B($){if(t.value){s.value=Ae.getCurrent(t.value),a.value=fe.getCurrent(t.value),u.value=s.value?Ae.copy(s.value):null,l.value=a.value?fe.copy(a.value):null,N();const P=$.target.getAttribute("type")||"";c.value={n:!!P.match(/n/),s:!!P.match(/s/),w:!!P.match(/w/),e:!!P.match(/e/)}}}function O(){var $,P,Y,G;if(t.value){const Z=t.value;c.value&&((c.value.n||c.value.s)&&(($=u.value)!=null&&$.height)&&(Z.style.height=u.value.height+"px"),(c.value.w||c.value.e)&&((P=u.value)!=null&&P.width)&&(Z.style.width=u.value.width+"px"),l.value&&((Y=l.value)!=null&&Y.x&&(Z.style.left=l.value.x+"px"),(G=l.value)!=null&&G.y&&(Z.style.top=l.value.y+"px")))}}function F(){const $=n.minHeight?n.minHeight:1,P=n.minWidth?n.minWidth:1;u.value&&l.value&&c.value&&s.value&&(u.value.height<$&&(u.value.height=$,c.value.n&&a.value&&(l.value.y=a.value.y+(s.value.height-$))),u.value.width<P&&(u.value.width=P,c.value.w&&a.value&&(l.value.x=a.value.x+(s.value.width-P))),n.maxHeight&&u.value.height>n.maxHeight&&(u.value.height=n.maxHeight,a.value&&c.value.n&&(l.value.y=a.value.y+(s.value.height-n.maxHeight))),n.maxWidth&&u.value.width>n.maxWidth&&(u.value.width=n.maxWidth,c.value.w&&a.value&&(l.value.x=a.value.x+(s.value.width-n.maxWidth))))}function v(){if(r.value){const $=f.value;if(l.value&&u.value&&c.value&&s.value){const P=$.width-$.pr-$.deltaL-$.translateX-l.value.x,Y=$.height-$.pb-$.deltaT-$.translateY-l.value.y;c.value.n&&l.value.y+$.translateY<0&&a.value&&(l.value.y=-$.translateY,u.value.height=s.value.height+a.value.y+$.translateY),c.value.w&&l.value.x+$.translateX<0&&a.value&&(l.value.x=-$.translateX,u.value.width=s.value.width+a.value.x+$.translateX),u.value.width>P&&(u.value.width=P),u.value.height>Y&&(u.value.height=Y)}}}function b($){if(!i.value||!s.value||!a.value||!c.value)return;$.subtract(i.value);const P=$.x,Y=$.y;c.value.n?(l.value.y=a.value.y+Y,u.value.height=s.value.height-Y):c.value.s&&(u.value.height=s.value.height+Y),c.value.e?u.value.width=s.value.width+P:c.value.w&&(u.value.width=s.value.width-P,l.value.x=a.value.x+P),v(),F(),O()}function k($){if(!d.value)return;const P=fe.fromEvent($);P&&b(P)}function y(){if(t.value){const{width:$,height:P,x:Y,y:G}=t.value.getBoundingClientRect(),Z=fe.getTransformInfo(t.value);return{size:{width:$,height:P},position:{x:Y-Z.x,y:G-Z.y}}}return null}function x($){if(t.value){const P=y();h.value=P}i.value=void 0,s.value=null,a.value=null,u.value=null,l.value=null,c.value=null,d.value=null,document.removeEventListener("mousemove",k),document.removeEventListener("mouseup",x)}function T(){document.addEventListener("mousemove",k),document.addEventListener("mouseup",x)}function C($){$ instanceof MouseEvent&&$.button===2||m.value&&(document.body.click(),$.stopPropagation(),$.preventDefault(),i.value=fe.fromEvent($),d.value=$.target,B($),T())}function w($){return t.value=$,g.value&&o.createVNode(o.Fragment,null,[o.createVNode("div",{class:"fv-resizable-handle fv-resizable-n",type:"n",onMousedown:P=>C(P)},null),o.createVNode("div",{class:"fv-resizable-handle fv-resizable-e",type:"e",onMousedown:P=>C(P)},null),o.createVNode("div",{class:"fv-resizable-handle fv-resizable-s",type:"s",onMousedown:P=>C(P)},null),o.createVNode("div",{class:"fv-resizable-handle fv-resizable-w",type:"w",onMousedown:P=>C(P)},null),o.createVNode("div",{class:"fv-resizable-handle fv-resizable-ne",type:"ne",onMousedown:P=>C(P)},null),o.createVNode("div",{class:"fv-resizable-handle fv-resizable-se fv-resizable-diagonal",type:"se",onMousedown:P=>C(P)},null),o.createVNode("div",{class:"fv-resizable-handle fv-resizable-sw",type:"sw",onMousedown:P=>C(P)},null),o.createVNode("div",{class:"fv-resizable-handle fv-resizable-nw",type:"nw",onMousedown:P=>C(P)},null)])}function E($=!0){document.body.click();const P=r.value||document.body,Y=Ae.getCurrent(P),G=t.value;$&&G&&(p.value=y(),p.value.transform=G.style.transform),Y&&G&&(u.value=Y,u.value.height-=14,u.value.width-=14,G.style.height=u.value.height+"px",G.style.width=u.value.width+"px",G.style.left="7px",G.style.top="7px",G.style.transform="",h.value={size:u.value,position:{x:0,y:0}},m.value=!1,S.value=!0)}function V(){var $,P;if(document.body.click(),p.value){const Y={width:p.value.size.width||0,height:p.value.size.height||0},G={x:(window.innerWidth-Y.width)/2,y:(window.innerHeight-Y.height)/2};($=u.value)==null||$.set(Y),(P=l.value)==null||P.set(G);const Z=t.value;Z.style.height=Y.height+"px",Z.style.width=Y.width+"px",Z.style.left=`${G.x}px`,Z.style.top=`${G.y}px`,Z.style.transform="",h.value={size:Y,position:G},m.value=n.draggable,S.value=!1}}function j(){if(t.value){const $=Ae.getCurrent(t.value);if($){const{width:P,height:Y}=$;t.value.style.left=`${(window.innerWidth-P)/2}px`,t.value.style.top=`${(window.innerHeight-Y)/2}px`,t.value.style.transform=""}}}function _(){const $=()=>{S.value?E(!1):j(),document.body.click()};return window.addEventListener("resize",$),()=>{window.removeEventListener("resize",$)}}const J=_();return{renderResizeBar:w,boundingElement:r,resizedEventParam:h,maximize:E,restore:V,allowDrag:m,isMaximized:S,unWindowResizeHandle:J,moveToCenter:j}}function ni(n,e,t){const r=o.ref(),i=o.ref(n.draggable),s=o.ref(n.lockAxis),a=o.ref(),u=o.ref(),l=o.ref(!1),c=o.ref(new fe(0,0)),d=o.ref(new fe(0,0)),f=o.ref(new fe(0,0)),h=o.ref(new fe(0,0));o.watch(()=>t.value,k=>{a.value.style.cursor=k?"move":"default"});function g(k,y){if(y.tagName==="BUTTON")return!1;if(y===k)return!0;for(const x in y.children)if(Object.prototype.hasOwnProperty.call(y.children,x)&&g(k,y.children[x]))return!0;return!1}function p(){var T,C;let k=f.value.x+d.value.x,y=f.value.y+d.value.y;s.value==="x"?(k=((T=c.value)==null?void 0:T.x)||0,f.value.x=0):s.value==="y"&&(y=((C=c.value)==null?void 0:C.y)||0,f.value.y=0);const x=`translate3d(${Math.round(k)}px, ${Math.round(y)}px, 0px)`;r.value&&(r.value.style.transform=x),h.value.x=k,h.value.y=y}function m(){if(!u.value||!r.value)return null;const k=u.value.getBoundingClientRect(),y=r.value.getBoundingClientRect(),x={top:k.top<y.top,right:k.right>y.right,bottom:k.bottom>y.bottom,left:k.left<y.left};return x.top||(f.value.y-=y.top-k.top),x.bottom||(f.value.y-=y.bottom-k.bottom),x.right||(f.value.x-=y.right-k.right),x.left||(f.value.x-=y.left-k.left),p(),x}function S(k){k&&(c.value&&k.subtract(c.value),f.value.set(k),p(),m())}function N(k){l.value&&i.value&&(k.stopPropagation(),k.preventDefault(),S(fe.fromEvent(k,a.value)))}function B(){var k;l.value&&(l.value=!1,d.value.add(f.value),f.value.reset(),(k=r.value)==null||k.classList.remove("ng-dragging"),e.emit("stopMove"),document.removeEventListener("mousemove",N),document.removeEventListener("mouseup",B))}function O(){!l.value&&a.value&&(l.value=!0,a.value.classList.add("ng-dragging"),document.addEventListener("mousemove",N),document.addEventListener("mouseup",B))}function F(){if(r.value){const k=fe.getTransformInfo(r.value);d.value.set(k);return}d.value.reset()}function v(k){if(!t.value||k instanceof MouseEvent&&k.button===2)return;const y=k.target||k.srcElement;a.value!==void 0&&y&&!g(y,a.value)||i.value!==!1&&(document.body.click(),k.stopPropagation(),k.preventDefault(),c.value=fe.fromEvent(k,r.value),F(),O())}function b(k,y,x){if(i.value&&y){if(k)a.value=k;else if(n.dragHandle){if(n.dragHandle instanceof HTMLElement)a.value=n.dragHandle;else if(typeof n.dragHandle=="string"){const T=y.querySelector(n.dragHandle);T&&(a.value=T)}}r.value=y,u.value=x,a.value?(a.value.classList.add("ng-draggable"),a.value.addEventListener("mousedown",v)):i.value=!1}}return{registerDraggle:b,resetTranslate:F}}function fn(n,e){if(n){const t=r=>{r.key.toLowerCase()===n.toLowerCase()&&e({event:r,key:n})};return document.addEventListener("keydown",t),()=>{document.removeEventListener("keydown",t)}}}function oi(n,e){const t=o.ref(n.enableEsc);let r=null;return t.value?(r=fn("Escape",i=>{e.emit("esc",{event:i.event,type:"esc"})}),{remove:r}):null}function ri(n,e){const t=o.ref(n.enableEnter);let r=null;return t.value?(r=fn("Enter",i=>{e.emit("enter",{event:i.event,type:"enter"})}),{remove:r}):null}const Ue=o.defineComponent({name:"FModal",props:dn,emits:["update:modelValue","accept","cancel","closed","resize","esc","enter","stopMove"],setup(n,e){const t=o.ref(n.width||300),r=o.ref(n.height||200),i=o.ref(n.modelValue),s=o.ref(""),a=o.ref(n.class),u=o.ref(n.fitContent),l=o.ref(n.showHeader),c=o.ref(""),d=o.ref(n.showCloseButton),f=o.ref(n.showMaxButton),h=o.ref(!1),g=o.ref(n.dialogType),p=o.ref(n.src),m=o.ref(""),S=o.ref(n.showButtons),N=o.ref(n.title),B=o.ref(n.containment||null),O=o.ref(),{t:F}=bt.useI18n();N.value==="错误提示"&&(N.value=F("messageBox.errorTitle"));const v=o.ref(!1);function b(D,te){const me=te?"accept":"cancel";Promise.resolve().then(()=>{var ge;return(ge=n.beforeClose)==null?void 0:ge.call(n,{closeType:me})}).then(ge=>{ge&&(i.value=!1,e.emit("update:modelValue",!1),te!=null&&e.emit(te?"accept":"cancel"),e.emit("closed",D))})}const k=[{name:"cancel",text:F("messageBox.cancel")||"取消",class:"btn btn-secondary",handle:D=>{b(D,!1)}},{name:"accept",text:F("messageBox.ok")||"确定",class:"btn btn-primary",handle:D=>{b(D,!0)}}],y=o.ref(n.buttons&&n.buttons.length?n.buttons:k),x=o.computed(()=>!!c.value),T=o.computed(()=>!!S.value&&!!y.value),C=o.ref(),w=o.ref(),E=o.ref(!1),{renderResizeBar:V,maximize:j,restore:_,boundingElement:J,resizedEventParam:$,allowDrag:P,unWindowResizeHandle:Y,moveToCenter:G}=ti(n),{registerDraggle:Z}=ni(n,e,P);function le(){return!!document.querySelectorAll(".farris-modal").length&&document.body.classList.contains("modal-open")}function de(){const D=document.querySelectorAll(".farris-modal").length;(!D||D-1<=0)&&document.body.classList.remove("modal-open"),O.value&&O.value.classList.remove("show")}o.watch(()=>n.title,(D,te)=>{D!==te&&(N.value=D)}),o.watch(()=>n.modelValue,(D,te)=>{D!==te&&(i.value=D,i.value&&n.draggable&&o.nextTick(()=>{w.value&&!B.value&&(B.value=w.value.parentElement,J.value=B.value,Z(C.value,w.value,J.value),G())}),D||(B.value&&(B.value=null),de())),i.value?v.value=le():(E.value=!1,P.value=n.draggable)}),o.watch(()=>n.showHeader,(D,te)=>{D!==te&&(l.value=D)}),o.watch(()=>n.showButtons,(D,te)=>{D!==te&&(S.value=D)}),o.watch(()=>$.value,(D,te)=>{const me=D||{},ge=te||{};JSON.stringify(me)!==JSON.stringify(ge)&&e.emit("resize",{newSize:D,oldSize:te,isMaximized:E.value})});const K=o.computed(()=>(i.value&&document.body.classList.add("modal-open"),i.value)),ue=o.computed(()=>{var me;const D={modal:!0,"farris-modal":!0,fade:!0};D["f-modal-fitContent"]=!!u.value,D.show=!!K.value;const te=(me=n.maskClass)==null?void 0:me.split(" ");return te==null||te.reduce((ge,Oe)=>(ge[Oe]=!0,ge),D),D}),he=o.computed(()=>{var me;const D={"modal-dialog":!0},te=(me=a.value)==null?void 0:me.split(" ");return te==null||te.reduce((ge,Oe)=>(ge[Oe]=!0,ge),D),D}),ae=o.computed(()=>{const D={position:"absolute",top:`${(window.innerHeight-r.value)/2}px`,left:`${(window.innerWidth-t.value)/2}px`,width:`${t.value}px`,height:u.value?"auto":`${r.value}px`};return n.mask||(D.pointerEvents="auto"),D}),X=()=>Ne.getMaxZIndex()||1040,se=o.computed(()=>{const D={display:"block",zIndex:X()};return n.mask||(D.pointerEvents="none",D.backgroundColor="transparent"),v.value&&(D.backgroundColor="transparent"),D}),ze=o.computed(()=>({"modal-content":!0,"modal-content-has-header":l.value})),De=o.computed(()=>{const D={display:l.value?"":"none"};return D["pointer-events"]=P.value?"auto":"none",D}),Ee=o.computed(()=>({"f-icon":!0,modal_maximize:!0,modalrevert:E.value})),Ze=o.computed(()=>({"modal-body":!0,"f-utils-flex-column":g.value==="iframe","f-utils-fill":!0}));function Ge(){return{height:`${n.footerHeight||60}px`}}const Ke=o.computed(()=>{const D={textAlgin:m.value},te=Ge();return Object.assign(D,te)});function pe(D){if(D==null||D.stopPropagation(),E.value){E.value=!1,_();return}j(),E.value=!0}async function rt(D,te){D.handle&&await D.handle(te,D)&&e.emit("closed",te)}function $e(D){D.width&&(t.value=D.width),D.height&&(r.value=D.height),D.buttons&&(y.value=D.buttons),D.title&&(N.value=D.title)}let Re=null,Be=null;o.onBeforeMount(()=>{v.value=le()}),o.onMounted(()=>{w.value&&!B.value&&(B.value=w.value.parentElement,J.value=B.value,Z(C.value,w.value,J.value)),K.value&&document.body.classList.add("modal-open"),Re=oi(n,e),Be=ri(n,e)}),o.onUnmounted(()=>{Y&&Y(),Re&&Re.remove(),Be&&Be.remove()}),e.expose({modalElementRef:w,updateModalOptions:$e,close:b,maxDialog:pe,isMaximized:E});function qe(){return o.createVNode("ul",null,[h.value&&o.createVNode("li",{class:"f-btn-icon f-bare"},[o.createVNode("span",{class:"f-icon modal_minimize"},null)]),f.value&&o.createVNode("li",{onClick:pe,class:"f-btn-icon f-bare",style:"pointer-events: auto;"},[o.createVNode("span",{class:Ee.value},null)]),d.value&&o.createVNode("li",{class:"f-btn-icon f-bare",onClick:D=>b(D,!1),style:"pointer-events: auto;"},[o.createVNode("span",{class:"f-icon modal_close"},null)])])}function it(){return o.createVNode("div",{class:"modal-footer",style:Ke.value},[y.value&&y.value.map(D=>{const te=o.ref(D.disabled);return o.createVNode("button",{name:D.name,type:"button",disabled:te.value,class:D.class+(D.iconClass?" btn-icontext":""),onClick:me=>{rt(D,me)}},[!!D.iconClass&&o.createVNode("i",{class:D.iconClass},null),D.text])})])}function _e(){return o.createVNode("div",{ref:C,class:"modal-header",style:De.value},[e.slots.headerTemplate?e.slots.headerTemplate():o.createVNode("div",{class:"modal-title"},[x.value&&o.createVNode("span",{class:c.value,style:"margin-right: 8px"},null),o.createVNode("span",{class:"modal-title-label"},[N.value])]),o.createVNode("div",{class:"actions"},[qe()])])}function Ie(){return e.slots.footerTemplate?e.slots.footerTemplate():T.value&&it()}function Le(D){if(D.stopPropagation(),n.allowClickMaskToClose){if(D.target!==O.value)return;b(D,!1)}}function et(){var D,te;return o.createVNode("div",{id:s.value,class:he.value,style:ae.value,ref:w},[o.createVNode("div",{class:ze.value},[l.value&&_e(),o.createVNode("div",{class:Ze.value},[(te=(D=e.slots).default)==null?void 0:te.call(D),g.value==="iframe"&&o.createVNode("iframe",{title:s.value,class:"f-utils-fill",width:"100%",frameborder:"0",src:p.value},null)]),Ie()]),!u.value&&w.value&&!E.value&&V(w.value)])}function tt(D){return D||"body"}return()=>o.createVNode(o.Teleport,{to:tt(n.host)},{default:()=>[K.value&&o.createVNode(o.Transition,{name:"fade",appear:!0},{default:()=>[o.createVNode("div",{ref:O,class:ue.value,style:se.value,onClick:Le},[et()])]})]})}});function pn(n){if(n.content&&n.content.render)return n.content.render;if(n.render&&typeof n.render=="function")return n.render}function ii(n){const e=document.createElement("div");e.style.display="contents";const t=o.createApp({setup(r,i){o.onUnmounted(()=>{document.body.removeChild(e)});const s=o.ref(),a=o.ref(n.class||""),u=o.ref(!!n.showButtons),l=o.ref(!!n.showHeader),c=o.ref(n.showCloseButton==null?!0:n.showCloseButton),d=o.ref(!0),f=o.ref(n.title||""),h=n.acceptCallback||(()=>{}),g=n.rejectCallback||(()=>{}),p=n.closedCallback||(O=>{}),m=n.resizeHandle||(O=>{}),S=n.stopMoveHandle||(O=>{}),N=pn(n),B=O=>{d.value=!1,t.unmount(),p(O)};return o.onMounted(()=>{}),i.expose({modalRef:s}),()=>o.createVNode(Ue,{ref:s,class:a.value,modelValue:d.value,"onUpdate:modelValue":O=>d.value=O,title:f.value,width:n.width,height:n.height,buttons:n.buttons,"show-header":l.value,"show-buttons":u.value,"show-close-button":c.value,"show-max-button":!1,onAccept:h,onCancel:g,fitContent:n.fitContent==null?!0:n.fitContent,onClosed:B,onResize:m,onStopMove:S},{default:()=>[N&&N(t)]})}});return document.body.appendChild(e),t.use(dt.LocaleService.i18n),t.mount(e),t}class mn{constructor(e){oe(this,"appContext",null);oe(this,"modalRef",o.ref());oe(this,"activeModalIndex",o.ref(0));oe(this,"modalRefs",{});oe(this,"isUseEscCloseModal",o.ref(!1));oe(this,"activeModalInstance",o.computed(()=>this.modalRefs[this.activeModalIndex.value]));this.app=e,this.appContext=e?e._context:null}getCurrentModal(){return this.activeModalInstance.value}adaptToWindow(e,t){const{width:r,height:i}={width:window.innerWidth,height:window.innerHeight};return r<e&&(e=r-14),i<t&&(t=i-14),{width:e,height:t}}static show(e){const t=Object.assign({title:"",showButtons:!0,showHeader:!0},e);return ii(t)}close(e){var t,r;e?(r=e.value)==null||r.close():(t=this.getCurrentModal())==null||t.close()}open(e){const t=document.createDocumentFragment();e.showMaxButton&&e.fitContent&&(e.showMaxButton=!1);const r=o.shallowRef(Object.assign({title:"",showButtons:!0,showHeader:!0},e)),i=o.ref(!0),s=r.value.acceptCallback||(()=>{}),a=r.value.rejectCallback||(()=>{}),u=r.value.closedCallback||((v,b)=>{}),l=r.value.resizeHandle||(v=>{}),c=e.stopMoveHandle||(v=>{});let d;const f=pn(r.value),h=v=>{var k;i.value=!1;const b=(k=v==null?void 0:v.target)==null?void 0:k.classList.contains("modal_close");u(v,this.isUseEscCloseModal.value?"esc":b?"icon":"button")},g=v=>{h(v),d&&o.nextTick(()=>{if(this.modalRefs[this.activeModalIndex.value]&&delete this.modalRefs[this.activeModalIndex.value],o.render(null,t),d=null,this.modalRef.value=null,this.modalRefs){const b=Object.keys(this.modalRefs).map(k=>Number(k));b.length>0?this.activeModalIndex.value=Math.max(...b):this.activeModalIndex.value=0}this.isUseEscCloseModal.value=!1})},p=v=>{var b;this.isUseEscCloseModal.value=!0,this.activeModalInstance&&((b=this.activeModalInstance.value)==null||b.close(v==null?void 0:v.event))},{width:m,height:S}=r.value,N=this.adaptToWindow(m||500,S||320);Object.assign(r.value,N);const B=()=>o.createVNode(Ue,o.mergeProps({ref:this.modalRef,modelValue:i.value,"onUpdate:modelValue":v=>i.value=v},r.value,{onAccept:s,onCancel:a,onClosed:g,onResize:l,onEsc:p,onStopMove:c}),{default:()=>[f&&f(this.app)]});return d=(v=>{const b=o.h(B,v);return b.appContext=this.appContext,o.render(b,t),b})({...r.value}),this.activeModalIndex.value++,this.modalRefs[this.activeModalIndex.value]=this.modalRef.value,{update:v=>{r.value={...r.value,...v},d&&o.render(o.cloneVNode(d,{...r}),t)},destroy:g,modalRef:this.activeModalInstance,close:()=>this.close()}}}const ai=Symbol("FModalService");Ue.install=n=>{n.component(Ue.name,Ue);const e=new mn(n);n.provide(ai,e),n.provide("FModalService",e)},Ue.register=(n,e,t,r)=>{n.modal=Ue,e.modal=Kr,r.modal={callbackResolver:ei}},Je({id:{type:String,default:""},editor:{type:Object,default:{}},modelValue:{type:[String,Boolean,Array,Number]},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1}},an,Nt,void 0);const si={$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"]},li={initialState:{type:Object,default:{uniqueColClassInSM:12,uniqueColClassInMD:6,uniqueColClassInLG:3,uniqueColClassInEL:2}}};ut.createPropsResolver(li,si,$r,Ar);const ci={width:{Type:Number,default:400},type:{Type:String,default:"info"},title:{Type:String,default:""},detail:{Type:String,default:""},okButtonText:{Type:String,default:"确定"},showOkButton:{Type:Boolean,default:!0},showCancelButton:{Type:Boolean,default:!0},cancelButtonText:{Type:String,default:"取消"},exceptionInfo:{Type:Object,default:null},promptEditorType:{Type:String,default:"text-area"},buttons:{type:Object,default:[]}};function Et(){return new DOMException("The request is not allowed","NotAllowedError")}async function ui(n){if(!navigator.clipboard)throw Et();return navigator.clipboard.writeText(n)}async function di(n){const e=document.createElement("span");e.textContent=n,e.style.whiteSpace="pre",e.style.webkitUserSelect="auto",e.style.userSelect="all",document.body.appendChild(e);const t=window.getSelection(),r=window.document.createRange();t==null||t.removeAllRanges(),r.selectNode(e),t==null||t.addRange(r);let i=!1;try{i=window.document.execCommand("copy")}finally{t==null||t.removeAllRanges(),window.document.body.removeChild(e)}if(!i)throw Et()}async function fi(n){try{await ui(n)}catch(e){try{await di(n)}catch(t){throw t||e||Et()}}}function pi(){async function n(e){await fi(e)}return{onCopy:n}}function mi(n,e,t,r){const i=o.ref(14),s=o.ref(140),a=o.ref(""),u=o.ref(r.value.length),l=o.computed(()=>r.value),c=o.computed(()=>({"font-size":`${i.value}px`,height:"100%"}));function d(f){if(f.currentTarget){const h=f.currentTarget.value||"";u.value=h.length}}return()=>o.createVNode(o.Fragment,null,[o.createVNode("textarea",{title:"promptMessage",name:"promptMessage",class:"form-control",style:c.value,rows:"4",maxlength:s.value,onInput:f=>d(f)},[l.value]),o.createVNode("span",{class:"textarea-wordcount",title:a.value,style:"position: absolute; bottom: 76px; right: 32px; cursor: pointer; text-align: right;"},[u.value+" / "+s.value])])}function hi(n,e,t,r){const i=mi(n,e,t,r),s=new Map([["text-area",i]]);function a(u){return s.get(u)||null}return{getEditorRender:a}}function gi(){const n=o.ref(!1),e=o.ref("复制成功");return{feedbackStyle:o.computed(()=>{const r={position:"absolute",left:"50%",top:"50%","min-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",padding:"0 10px"};return r.opacity=n.value?"0.8":"0",r.display=n.value?"":"none",r}),feedbackMessage:e,toShowFeedback:n}}function yi(n,e){const t=e.getEditorRender(n.promptEditorType);return()=>t&&t()}function vi(n,e){function t(g){if(g==null)return 0;let p=0;for(let m=0;m<g.length;m++){const S=g.charCodeAt(m);S>=0&&S<=128?p++:p=p+2}return p}function r(g,p){if(g!==""&&g!==void 0&&g!==null){g=""+g;const m=g.length;let S="",N=0;for(let B=0;B<m;B++){const O=g.charAt(B);if(N++,encodeURI(O).length>4&&N++,S=S.concat(O),N>=p)return S=S.concat("..."),S}if(N<p)return g}return""}const i=o.computed(()=>!!n.value&&!!n.value.date),s=o.computed(()=>{const g=n.value&&n.value.date||"";return`${e.exception.happend} : ${g}`}),a=o.computed(()=>!!n.value&&!!n.value.detail),u=o.computed(()=>n.value?t(n.value.detail)>160:!1),l=o.ref(!1),c=o.computed(()=>l.value?e.exception.collapse:e.exception.expand),d=o.computed(()=>{const g=e.exception.detail+" : "+(n.value&&n.value.detail)||"";return l.value?g:r(g,160)}),f=o.computed(()=>({position:"absolute",right:0,bottom:l.value?0:"2px",color:"#2A87FF",cursor:"pointer"}));function h(){l.value=!l.value}return()=>o.createVNode("div",{class:"toast-msg-detail"},[i.value&&o.createVNode("div",null,[s.value]),a.value&&o.createVNode("div",{class:"exception_wrap"},[o.createVNode("div",{class:"exception_error_msg"},[o.createVNode("div",{innerHTML:d.value},null),u.value&&o.createVNode("span",{style:f.value,onClick:h},[c.value])])])])}function bi(n){return()=>o.createVNode("p",{class:"toast-msg-detail",innerHTML:n.value},null)}function Ci(n,e,t,r,i){const s=o.ref(n.exceptionInfo),a=o.computed(()=>{const p=e.value==="question"?"warning":e.value,m={"f-icon":!0},S=`f-icon-${p}`;return m[S]=!0,m}),u=o.computed(()=>t.value||s.value&&s.value.message),l=o.computed(()=>r.value),c=o.computed(()=>!!r.value),d=o.computed(()=>!!s.value);function f(){return d.value?vi(s,i):c.value?bi(l):()=>null}const h=f(),g=o.computed(()=>i.locale==="en"?{wordBreak:"keep-all",overflowWrap:"break-word"}:{});return()=>o.createVNode(o.Fragment,null,[o.createVNode("div",{class:"float-left modal-tips-iconwrap"},[o.createVNode("span",{class:a.value},null)]),o.createVNode("div",{class:"modal-tips-content"},[o.createVNode("p",{class:"toast-msg-title",innerHTML:u.value,style:g.value},null),h()])])}function wi(n,e,t,r){const{onCopy:i}=e,{toShowFeedback:s}=t,a=o.ref(r.exception.copySuccess||"复制成功"),u=o.ref(r.exception.copy||"复制详细信息"),l=o.ref(n.exceptionInfo||{date:"",message:"",detail:""}),c=o.computed(()=>l.value&&l.value.detail||"");function d(f){i(c.value).catch(h=>{a.value=r.exception.copyFailed||"复制失败"}).finally(()=>{s.value=!0,setTimeout(()=>{s.value=!1},700)})}return()=>o.createVNode("span",{style:"width: 100%;color: #2A87FF;padding-left: 37px;"},[o.createVNode("span",{onClick:d,style:"cursor: pointer;"},[u.value])])}function xi(n,e,t,r,i){const s=o.ref(n.type),a=o.ref(n.buttons),u=o.ref(n.exceptionInfo),l=o.ref(i.ok||n.okButtonText),c=o.ref(i.cancel||n.cancelButtonText),d=o.ref(n.showCancelButton),f=o.ref(n.showOkButton),h=o.computed(()=>!!(a.value&&a.value.length)),g=o.computed(()=>!!(u.value&&u.value.detail)),p=o.computed(()=>!(a.value&&a.value.length)&&(f.value||d.value)),m=wi(n,t,r,i);l.value==="关闭"?l.value=i.close:l.value==="知道了"&&(l.value=i.exception.roger);function S(B){s.value==="question"&&e.emit("reject"),e.emit("close")}function N(B){s.value==="question"&&e.emit("accept"),e.emit("close")}return()=>o.createVNode("div",{class:"modal-footer"},[g.value&&m(),p.value&&d.value&&o.createVNode("button",{type:"button",class:"btn btn-secondary btn-lg",onClick:S},[c.value]),p.value&&f.value&&o.createVNode("button",{type:"button",class:"btn btn-primary btn-lg",onClick:N},[l.value]),h.value&&a.value.length&&a.value.map(B=>o.createVNode("button",{type:"button",onClick:B.handle,class:B.class},[B.iconClass&&o.createVNode("span",{class:B.iconClass},null),B.text]))])}function Si(n){const{t:e,locale:t}=bt.useI18n();function r(i,s,a){return s===a?e(i):s}return{yes:r("messageBox.yes")||"是",no:r("messageBox.no")||"否",close:r("messageBox.close")||"关闭",ok:r("messageBox.ok",n.okButtonText,"确定")||"确定",cancel:r("messageBox.cancel",n.cancelButtonText,"取消")||"取消",title:r("messageBox.title")||"系统提示",errorTitle:r("messageBox.errorTitle")||"错误提示",exception:{expand:r("messageBox.exception.expand")||"展开",collapse:r("messageBox.exception.collapse")||"收起",happend:r("messageBox.exception.happend")||"发生时间",detail:r("messageBox.exception.detail")||"详细信息",copy:r("messageBox.exception.copy")||"复制详细信息",copySuccess:r("messageBox.exception.copySuccess")||"复制成功",copyFailed:r("messageBox.exception.copyFailed")||"复制失败",roger:r("messageBox.exception.roger")||"知道了"},locale:t.value}}const ht=o.defineComponent({name:"FMessageBox",props:ci,emits:["accept","reject","close"],setup(n,e){const t=Si(n),r=o.ref(n.type),i=o.ref(n.title),s=o.ref(n.detail),a=o.computed(()=>{const N={"modal-tips":!0,"d-flex":!0,"flex-row":!0},B=`messager-type-${r.value}`;return N[B]=!0,N}),u=o.computed(()=>{const N={cursor:"default"};return r.value==="prompt"?N.padding="0.5rem 0.5rem 1rem 1.5rem":r.value==="error"&&(N.padding="0.5rem 1.5rem 1rem 1.5rem"),N}),l=pi(),c=hi(n,r,i,s),d=gi(),{feedbackStyle:f,feedbackMessage:h}=d;h.value=t.exception.copySuccess;function g(){return o.createVNode("div",{style:f.value},[h.value])}function p(){switch(r.value){case"prompt":return yi(n,c);default:return Ci(n,r,i,s,t)}}const m=p(),S=xi(n,e,l,d,t);return()=>o.createVNode("div",{class:"farris-messager"},[!n.exceptionInfo&&o.createVNode("div",{style:"height: 30px;width: 100%;position: absolute;",class:"messager-draggable"},null),o.createVNode("section",{class:a.value,style:u.value},[m()]),S(),g()])}}),Me=class Me{static show(e){const t=o.reactive({...e}),r=!1,i=t.type==="error"||t.type==="prompt",s=t.type==="error"?"错误提示":t.type==="prompt"&&t.title||"",a=t.acceptCallback||(()=>{}),u=t.rejectCallback||(()=>{});let l=null,c=new mn(Me.app);const d=()=>{l&&(l==null||l.destroy(),c=null)};return l=c==null?void 0:c.open({class:"modal-message modal-message-type-info",title:s,showButtons:r,showHeader:i,width:t.width||400,fitContent:!0,showMaxButton:!1,draggable:!0,dragHandle:".messager-draggable",render:()=>o.createVNode(ht,o.mergeProps(t,{onAccept:a,onReject:u,onClose:d}),null)}),c==null?void 0:c.getCurrentModal()}static info(e,t){const r=o.reactive({type:"info",title:e,detail:t,okButtonText:"知道了",showCancelButton:!1});Me.show(r)}static warning(e,t){const r=o.reactive({type:"warning",title:e,detail:t,okButtonText:"知道了",showCancelButton:!1});Me.show(r)}static success(e,t){const r=o.reactive({type:"success",title:e,detail:t,okButtonText:"关闭",showCancelButton:!1});Me.show(r)}static error(e,t,r){const i=o.reactive({width:500,type:"error",okButtonText:"关闭",showCancelButton:!1,exceptionInfo:{date:r,message:e,detail:t}});Me.show(i)}static prompt(e,t){const r=o.reactive({type:"prompt",title:e,detail:t,okButtonText:"确定",cancelButtonText:"取消"});Me.show(r)}static question(e,t,r,i){const s=o.reactive({type:"question",title:e,detail:t,okButtonText:"确定",cancelButtonText:"取消",acceptCallback:r,rejectCallback:i});Me.show(s)}};oe(Me,"app",null);let gt=Me;ht.install=n=>{n.component(ht.name,ht),gt.app=n,n.provide("FMessageBoxService",gt)};const Ti=o.defineComponent({name:"FEntityBindingSelector",props:Mr,emits:["submit","cancel"],setup(n,e){const t=kr(n),{entityColumns:r,entityTreeGridRef:i,entityDataSource:s,checkAndGetSelectedEntity:a,resolveEntityDataSource:u,entityTreeRowOption:l,initialSelectedEntity:c,isMainEntityInitialSelected:d}=t,f=on(n),{fieldColumns:h,resolveFieldDataSource:g,fieldDataSource:p,fieldTreeGridRef:m,fieldTreeRowOption:S,fieldSelectionOption:N,checkAndGetSelectedFields:B,currentComponentType:O}=f,F=new Ft;F.globalConfig={position:"top-center"};const v=[{name:"卡片面板",value:"response-form"},{name:"表格",value:"data-grid"}],b=o.ref(),k=o.ref(""),y=o.ref([{id:"selectComponentType",title:"选择组件类型"},{id:"selectEntity",title:"选择实体"},{id:"selectFields",title:"选择显示字段"}]),x=o.ref(0),T=o.ref(""),C=o.computed(()=>Z=>({"f-utils-fill":!0,border:Z!=="selectComponentType","mx-3":!0,"my-2":!0,"position-relative":!0,"d-none":y.value[x.value].id!==Z}));function w(){n.bindingEntityId&&(c!=null&&c.value)&&(k.value=c.value.name),n.componentType||(b.value=d.value?"response-form":"data-grid")}function E(){const Z=a();Z&&(g(Z),m.value.updateDataSource(p.value))}o.onBeforeMount(()=>{n.steps&&(y.value=y.value.filter(Z=>n.steps.includes(Z.id))),T.value=y.value[0].id,u(),w()}),o.onMounted(()=>{var Z,le;i&&((Z=c.value)!=null&&Z.id)&&i.value.selectItemById((le=c.value)==null?void 0:le.id),y.value.length===1&&y.value[0].id==="selectFields"&&E()});function V(Z){var le;(le=m==null?void 0:m.value)!=null&&le.clearSelection&&m.value.clearSelection()}function j(){return o.createVNode(Vt,{key:1,ref:i,fit:!0,data:s.value,idField:"id",columns:r.value,rowNumber:{enable:!1},"row-option":l,columnOption:{fitColumns:!0}},null)}function _(){return o.createVNode(Vt,{key:2,ref:m,hierarchy:{cascadeOption:{autoCheckChildren:!0,autoCheckParent:!0}},fit:!0,data:p.value,idField:"id",columns:h.value,rowNumber:{enable:!1},columnOption:{fitColumns:!0},"row-option":S,selection:N},null)}function J(){const Z={editable:!1,type:"combo-list",data:v,idField:"value",valueField:"value",textField:"name"},le={type:"input-group",enableClear:!1};return o.createVNode("div",null,[o.createVNode("div",{class:"f-utils-fill"},[o.createVNode("div",{class:"f-section py-0"},[o.createVNode("div",{class:"f-section-header"},[o.createVNode("div",{class:"f-title"},[o.createVNode("h4",{class:"f-title-text"},[o.createTextVNode("组件信息")])])]),o.createVNode("div",{class:"f-section-content"},[o.createVNode("div",{class:"f-form-layout farris-form farris-form-controls-inline"},[o.createVNode(cn,{label:"组件类型",customClass:"col-12",modelValue:b.value,"onUpdate:modelValue":de=>b.value=de,required:"true",editor:Z,onChange:V},null),o.createVNode(cn,{label:"组件标题",customClass:"col-12",modelValue:k.value,"onUpdate:modelValue":de=>k.value=de,required:"true",editor:le},null)])])])])])}function $(){x.value--,T.value=y.value[x.value].id}function P(){var Z;switch(T.value){case"selectEntity":{E();break}case"selectComponentType":{if(!b.value){F.warning("请先选择组件类型");return}if(!((Z=k.value)!=null&&Z.trim())){F.warning("请先填写组件标题");return}O.value=b.value,g(c.value),m.value.updateDataSource(p.value);break}}x.value++,T.value=y.value[x.value].id}function Y(){e.emit("cancel")}function G(){var de;const Z=a(),le=B();if(Z){const K={bindingType:"entity"};K.bindingEntity=Z,K.bindTo=t.entityBindToMap.get(((de=K.bindingEntity)==null?void 0:de.label)||""),K.bindingEntityFields=le,K.entityTitle=k.value,e.emit("submit",{bindingContext:K,componentType:b.value})}}return()=>{var Z;return o.createVNode("div",{class:"h-100 d-flex flex-column"},[((Z=y.value)==null?void 0:Z.length)>1?o.createVNode(Dr,{steps:y,activeIndex:x,style:"align-self:center"},null):"",o.createVNode("div",{class:C.value("selectEntity"),style:"border-radius:10px;"},[j()]),o.createVNode("div",{class:C.value("selectComponentType"),style:"border-radius:10px;"},[J()]),o.createVNode("div",{class:C.value("selectFields"),style:"border-radius:10px;"},[_()]),o.createVNode("div",{class:"modal-footer"},[o.createVNode("button",{class:"btn btn-secondary",onClick:Y},[o.createTextVNode("取消")]),x.value!==0?o.createVNode("button",{class:"btn btn-secondary",onClick:$},[o.createTextVNode("上一步")]):"",x.value!==y.value.length-1?o.createVNode("button",{class:"btn btn-primary",onClick:P},[o.createTextVNode("下一步")]):"",x.value===y.value.length-1?o.createVNode("button",{class:"btn btn-primary",onClick:G},[o.createTextVNode("确定")]):""])])}}});function Fi(n,e){let t;function r(l){var p,m,S,N,B,O;const c=(m=(p=n.parent)==null?void 0:p.parent)==null?void 0:m.componentInstance;if(!((B=(N=(S=c==null?void 0:c.value)==null?void 0:S.schema)==null?void 0:N.contents)!=null&&B.length))return;const d={componentType:"response-form",bindingSourceContext:l,parentComponentInstance:c.value},f=c.value.addNewChildComponentSchema(d,e),h=(O=n.parent)==null?void 0:O.schema,g=c.value.schema.contents.findIndex(F=>F.id===(h==null?void 0:h.id));g>-1&&c.value.schema.contents.splice(g+1,0,f)}function i(l){var c,d;r(l.bindingContext),(c=t==null?void 0:t.modalRef)!=null&&c.value.close&&((d=t==null?void 0:t.modalRef)==null||d.value.close())}function s(){var l,c;(l=t==null?void 0:t.modalRef)!=null&&l.value.close&&((c=t==null?void 0:t.modalRef)==null||c.value.close())}function a(){if(!e)return;const{schemaService:l,formSchemaUtils:c}=e,{componentType:d}=n.schema,f=c.getViewModelIdByComponentId(n.componentInstance.value.belongedComponentId),h=l.getTableInfoByViewModelId(f),g=h==null?void 0:h.id,p=["selectFields"];return()=>o.createVNode(o.Fragment,null,[o.createVNode(Ti,{componentType:d,bindingEntityId:g,steps:p,designerHostService:e,onSubmit:i,onCancel:s},{default:()=>[o.createTextVNode(" ")]}),o.createTextVNode(" ")])}function u(l){l.stopPropagation(),l.preventDefault(),e&&(t=e.modalService.open({title:"添加卡片",width:800,height:600,fitContent:!1,showButtons:!1,render:a(),enableEsc:!1,draggable:!0}))}return{addSiblingComponent:u}}const Vi={componentId:{type:String,default:""},designerHostService:{type:Object,default:{}}};class Ni{constructor(e,t){oe(this,"controlsInfo",{});oe(this,"formSchemaUtils");oe(this,"designViewModelUtils");oe(this,"viewModelId","");this.designerHostService=e,this.componentId=t,this.formSchemaUtils=this.designerHostService.formSchemaUtils,this.designViewModelUtils=this.designerHostService.designViewModelUtils,this.viewModelId=this.formSchemaUtils.getViewModelIdByComponentId(this.componentId)}buildFieldTreeData(){const e=this.designViewModelUtils.getDgViewModel(this.viewModelId);if(!e)return[];const t=this.formSchemaUtils.getComponentById(this.componentId);if(!t)return[];const{componentType:r}=t,i=e.fields;if(r==="data-grid"||r==="form"){const s=this.getAllControlsInComponents(t);return this.controlsInfo.controls=s,this.buildFieldTreeDataByControls(i,s,r)}return[]}getAllControlsInComponents(e){const t=[],r=this.getFormLayoutInCmp(e.contents);if(this.controlsInfo.formLayout=r,r){const i=r.columns||r.contents;this.getAllControlsInLayout(i,t)}return t}buildFieldTreeDataByControls(e,t,r){const i=[],s=new Map,a=[];return t.forEach(u=>{if(u.type===R.fieldset.type){a.push(u);return}const l=this.buildFieldTreeNodeFromControl(u,e,this.componentId,r);if(l)if(l.isInGroupNode){if(!s.has(l.groupId)){const d=this.buildFieldTreeGroupNodeWithBindingEntityField(u,e,a);d&&(s.set(l.groupId,d),i.push(d))}const c=s.get(l.groupId);c!=null&&c.children&&c.children.push(l)}else i.push(l)}),i}buildFieldTreeNodeFromControl(e,t,r,i){let s;return e.binding?e.binding.type===Mt.Variable?s=this.buildFieldTreeNodeWithBindingVariable(e):s=this.buildFieldTreeNodeWithBindingEntityField(e,t,r,i):s=this.buildFieldTreeNodeWithoutControlBinding(e),s}buildFieldTreeNodeWithoutControlBinding(e){return{canChangeControlType:!1,children:[],componentId:"",componentType:"",control:e,data:{id:e.id,name:e.title||e.text||e.label},groupId:"",expanded:!1,isBindVariable:!1,isComplexField:!1,isGroupNode:!1,isInGroupNode:!1,isNoBinding:!0,isRemoved:!1,nodeType:""}}buildFieldTreeNodeWithBindingVariable(e){const t=e.binding.field,r=this.formSchemaUtils.getVariableById(t),i=this.formSchemaUtils.getViewModelById(this.viewModelId),s=i==null?void 0:i.fields.find(u=>u.id===t),a=s&&s.groupId;return{canChangeControlType:!1,children:[],componentId:"",componentType:"",control:e,data:{id:t,name:e.title||e.text||e.label,code:e.binding.fullPath||e.binding.path,controlType:e.type,type:r&&r.type,category:r&&r.category},groupId:a,expanded:!1,isBindVariable:!0,isComplexField:!1,isInGroupNode:!!a,isGroupNode:!1,isNoBinding:!1,isRemoved:!1,nodeType:""}}buildFieldTreeNodeWithBindingEntityField(e,t,r,i){const s=e.binding.field,a=t.find(h=>h.id===s);if(!a)return;const{groupId:u}=a,l=a.isSchemaRemoved?{id:s,name:e.title||e.text||e.label}:a,c=a.isSchemaRemoved,d=!a.isSchemaRemoved,f=a.$type==="ComplexField";return{canChangeControlType:d,children:[],componentId:r,componentType:i,control:e,data:l,expanded:!1,groupId:u,isBindVariable:!1,isComplexField:f,isGroupNode:!1,isInGroupNode:!!u,isNoBinding:!1,isRemoved:!!c,nodeType:"field"}}buildFieldTreeGroupNodeWithBindingEntityField(e,t,r){const i=e.binding.field;if(e.binding.type===Mt.Form){const s=t.find(c=>c.id===i);if(!s)return;const{groupId:a,groupName:u}=s,l=r.find(c=>c.id===a);return{canChangeControlType:!1,children:[],componentId:"",componentType:"",control:l,data:{id:a,name:u},groupId:a,expanded:!0,isBindVariable:!1,isComplexField:!1,isGroupNode:!0,isInGroupNode:!1,isNoBinding:!1,isRemoved:!1,nodeType:"group"}}else{const s=this.formSchemaUtils.getViewModelById(this.viewModelId),a=s==null?void 0:s.fields.find(d=>d.id===i);if(!a)return;const{groupId:u,groupName:l}=a,c=r.find(d=>d.id===u);return{canChangeControlType:!1,children:[],componentId:"",componentType:"",control:c,data:{id:u,name:l},groupId:u,expanded:!0,isBindVariable:!1,isComplexField:!1,isGroupNode:!0,isInGroupNode:!1,isNoBinding:!1,isRemoved:!1,nodeType:"group"}}}getFormLayoutInCmp(e){if(!e)return{};for(const t of e){if([R["data-grid"].type,R["tree-grid"].type,R["response-form"].type].includes(t.type))return t;if(t.contents){const i=this.getFormLayoutInCmp(t.contents);if(i)return i}}return null}getAllControlsInLayout(e,t){if(e)for(const r of e)r.type===R.fieldset.type&&t.push(r),r.contents?this.getAllControlsInLayout(r.contents,t):t.push(r)}}const Mi=o.defineComponent({name:"FSplitterFormComponent",props:Vi,emits:["cancel","submit"],setup(n,e){const t=o.ref(""),r=o.ref(),i=o.ref(n.data),s=o.ref([{field:"name",title:"名称"},{field:"bindingPath",title:"绑定字段"}]),{schemaService:a,formSchemaUtils:u}=n.designerHostService,l=new Uo.FNotifyService;l.globalConfig={position:"top-center"};const c={enableSelectRow:!0,multiSelect:!0,multiSelectMode:"OnCheckAndClick",showCheckbox:!0,showSelectAll:!0},d={cascadeOption:{autoCheckChildren:!0,autoCheckParent:!0}};o.onBeforeMount(()=>{const m=u.getViewModelIdByComponentId(n.componentId),{name:S}=a.getTableInfoByViewModelId(m);t.value=S;const N=new Ni(n.designerHostService,n.componentId);i.value=N.buildFieldTreeData()});function f(){e.emit("cancel")}function h(){if(!t.value){l.warning({message:"请填写组件标题"});return}const m=r.value.getSelectedItems();if(!m.length){l.warning("请选择字段");return}e.emit("submit",{selections:m,componentTitle:t.value})}function g(m,S){const N=S.raw;return o.createVNode(o.Fragment,null,[N.isRemoved?o.createVNode("span",{title:"绑定字段不存在,请在视图模型中手动移除。"},[o.createTextVNode("绑定字段不存在。 ")]):"",N.isBindVariable?o.createVNode("span",null,[o.createTextVNode("变量:"),N.code,o.createTextVNode(" ")]):"",N.isNoBinding?o.createVNode("span",null,[o.createTextVNode("控件没有绑定信息 ")]):"",!N.isRemoved&&!N.isBindVariable&&!N.isComplexField?o.createVNode("span",null,[N.bindingField,o.createTextVNode(" ")]):""])}function p(m){var N;const S=(N=m.raw)==null?void 0:N.control;return o.createVNode(o.Fragment,null,[S.label?o.createVNode("span",null,[S.label,o.createTextVNode(" ")]):o.createVNode("span",null,[S.id,o.createTextVNode(" ")])])}return()=>o.createVNode("div",{class:"h-100 d-flex flex-column flex-fill"},[o.createVNode("div",{class:"f-section pt-3 pl-4"},[o.createVNode("div",{class:"f-section-header"},[o.createVNode("div",{class:"f-title"},[o.createVNode("h4",{class:"f-title-text"},[o.createTextVNode(" 组件信息 ")])])]),o.createVNode("div",{class:"f-section-content"},[o.createVNode("div",{class:"f-form-layout farris-form farris-form-controls-inline"},[o.createVNode("div",{class:"col-12 farris-group-wrap"},[o.createVNode("div",{class:"form-group farris-form-group"},[o.createVNode("label",{class:"col-form-label",style:"justify-content: start !important; width: 80px !important;"},[o.createVNode("span",{class:"farris-label-info text-danger"},[o.createTextVNode("*")]),o.createVNode("span",{class:"farris-label-text"},[o.createTextVNode(" 组件标题")])]),o.createVNode("div",{class:"farris-input-wrap"},[o.withDirectives(o.createVNode("input",{class:"form-control",type:"input","onUpdate:modelValue":m=>t.value=m},null),[[o.vModelText,t.value]])])])])])])]),o.createVNode("div",{class:"f-section pl-4 f-utils-fill"},[o.createVNode("div",{class:"f-section-header"},[o.createVNode("div",{class:"f-title"},[o.createVNode("h4",{class:"f-title-text"},[o.createTextVNode(" 组件字段 ")])])]),o.createVNode("div",{class:"f-section-content border f-utils-fill"},[o.createVNode(zo,{key:1,ref:r,fit:!0,data:i.value,idField:"id",columns:s.value,rowNumber:{enable:!1},columnOption:{fitColumns:!0},selection:c,hierarchy:d},{cellTemplate:({cell:m,row:S})=>m.field==="bindingPath"?g(m,S):p(S)})])]),o.createVNode("div",{class:"modal-footer"},[o.createVNode("button",{type:"button",class:"btn btn-secondary",onClick:f},[o.createTextVNode("取消")]),o.createVNode("button",{type:"button",class:"btn btn-primary",onClick:h},[o.createTextVNode("确定")])])])}});function hn(){function n(){const t=r=>{const i=Math.random()*16|0;return(r==="x"?i:i&3|8).toString(16)};return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,t)}function e(t,r){const i="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".split(""),s=[];let a;if(r=r||i.length,t)for(a=0;a<t;a++)s[a]=i[0|Math.random()*r];else{let u;for(s[8]=s[13]=s[18]=s[23]="-",s[14]="4",a=0;a<36;a++)s[a]||(u=0|Math.random()*16,s[a]=i[a===19?u&3|8:u])}return s.join("")}return{guid:n,uuid:e}}const Ei=["moz","ms","webkit"];function Bi(){let n=0;return e=>{const t=new Date().getTime(),r=Math.max(0,16-(t-n)),i=setTimeout(()=>{e(t+r)},r);return n=t+r,i}}function ki(){if(typeof window>"u")return()=>0;if(window.requestAnimationFrame)return window.requestAnimationFrame.bind(window);const n=Ei.filter(e=>`${e}RequestAnimationFrame`in window)[0];return n?window[`${n}RequestAnimationFrame`]:Bi()}ki();function ji(n,e){let t;const r=o.ref(""),i=o.ref([]),s=o.ref([]),a=o.ref([]),u=n.componentInstance.value.belongedComponentId;function l(y){y.forEach(x=>{x.isGroupNode||(x.isNoBinding||s.value.push(x.data.id),i.value.push(x.control))})}function c(y){var V;const x=n.componentInstance.value.schema;let T={};x.contents&&x.contents.length>0&&(T=x.contents.find(j=>j.type===Xe.DgControl.section.type)||{});const C=Object.assign({},T,{id:y+"-section",mainTitle:r.value,appearance:T.appearance?ce.cloneDeep(T.appearance):{class:"f-section-form f-section-in-mainsubcard"},contents:[]}),w=((V=T.contents)==null?void 0:V.find(j=>j.type===Xe.DgControl["response-form"].type))||{},E=wt(Xe.DgControl["response-form"].type);return Object.assign(E,w,{id:y+"-form",appearance:w.appearance?ce.cloneDeep(w.appearance):{class:"f-form-layout farris-form farris-form-controls-inline"},contents:i.value}),C.contents=[E],[C]}function d(y){var T;if(!((T=y.states)!=null&&T.length))return[];const x=[];return y.states.forEach(C=>{i.value.forEach(w=>{function E(V){Object.keys(V).forEach(j=>{const _=V[j];if(_&&_.type==="Variable"&&_.field===C.id){let J=x.find($=>$.id===C.id);J||(J=Object.assign({},C,{newId:hn().guid()}),x.push(J),a.value.push(C.id)),V[j].field=J.newId}})}E(w),w.editor&&E(w.editor)})}),x.map(C=>{C.id=C.newId,delete C.newId}),x}function f(y,x){const T=[];s.value.forEach(w=>{const E=x.fields.find(V=>V.id===w);T.push(Object.assign({},E,{groupId:null,groupName:null}))});const C=d(x);return{id:y+"-viewmodel",code:y+"-viewmodel",name:r.value,bindTo:x.bindTo,parent:x.parent,fields:T,commands:[],states:C,enableValidation:x.enableValidation}}function h(y,x,T){var V;if(!((V=n==null?void 0:n.parent)!=null&&V.parent)||!e)return;const w=n.parent.parent.componentInstance.value.schema;if(!(w!=null&&w.contents))return;const E=w.contents.findIndex(j=>j.component===u);if(E>-1){const{formSchemaUtils:j}=e;j.getComponents().push(y),j.getViewModels().push(T),w.contents.splice(E+1,0,x)}}function g(){if(!e)return;const y=n.componentInstance.value.schema,{schemaService:x,formSchemaUtils:T}=e,C=T.getViewModelIdByComponentId(u),w=T.getViewModelById(C),{code:E}=x.getTableInfoByViewModelId(C),V=E+"-"+Math.random().toString(36).slice(2,6),j=wt("component-ref");Object.assign(j,{id:V+"-component-ref",component:V+"-component"});const _=f(V,w),J=wt("component"),$=c(V);return Object.assign(J,{id:V+"-component",viewModel:V+"-viewmodel",componentType:y.componentType,appearance:y.appearance?ce.cloneDeep(y.appearance):null,formColumns:y.formColumns,contents:$}),h(J,j,_),_}function p(){if(!e)return;const{formSchemaUtils:y}=e,x=n.componentInstance.value.schema,T=i.value.map(w=>w.id),C=y.selectNode(x,w=>w.type===Xe.DgControl["response-form"].type);C.contents.forEach(w=>{w.type===Xe.DgControl.fieldset.type&&(w.contents=w.contents.filter(E=>!T.includes(E.id)))}),C.contents=C.contents.filter(w=>!(T.includes(w.id)||w.type===Xe.DgControl.fieldset.type&&w.contents&&w.contents.length===0))}function m(){if(!e)return;const{formSchemaUtils:y}=e,x=y.getViewModelIdByComponentId(u),T=y.getViewModelById(x);T&&T.fields&&(T.fields=T.fields.filter(C=>!s.value.includes(C.id)))}function S(y){if(!e)return;const{formSchemaUtils:x}=e,T=hn().guid(),C=Object.assign({},y,{id:T,code:y.code+T.slice(0,4),name:y.name+T.slice(0,4)}),E=x.getCommands().find(V=>V.id===y.cmpId);return E&&E.refedHandlers.push({host:T,handler:y.handlerName}),C}function N(y){if(!e)return;const{formSchemaUtils:x}=e,T=x.getViewModelIdByComponentId(u),C=x.getViewModelById(T),w={};i.value.forEach(V=>{var J;const j=V.type==="form-group"&&V.editor?V.editor.type:V.type,_=(J=Ct[j])==null?void 0:J.events;_&&Object.keys(V).forEach($=>{const P=Object.keys(_).find(Y=>Y===$);if(P&&V[P]){const Y=C.commands.find(G=>G.code===V[P]);if(Y){let G=w[Y.code];G||(G=S(Y),w[Y.code]=G,y.commands.push(G)),V[P]=G.code}}})});const E=["valueChanging","valueChanged"];y.fields.forEach(V=>{E.forEach(j=>{if(V[j]){const _=C.commands.find(J=>J.code===V[j]);if(w[_.code])V[j]=w[_.code].code;else{const J=S(_);w[_.code]=J,y.commands.push(J),V[j]=J.code}}})})}function B(y,x,T){if(y&&(x(y,T),y.contents))for(const C of y.contents)B(C,x,T)}function O(){if(!a.value.length)return;const y=e==null?void 0:e.formSchemaUtils,x=y.getComponentById(u),T=[],C=(V,j)=>{V&&(Object.keys(V).forEach(_=>{const J=V[_];J&&typeof J=="object"&&J.type===wn.FormBindingType.Variable&&a.value.includes(J.field)&&!j.includes(J.field)&&j.push(J.field)}),V.editor&&C(V.editor,j))};B(x,C,T);const w=y.getViewModelIdByComponentId(u),E=y.getViewModelById(w);a.value.forEach(V=>{T.includes(V)||(E.states=E.states.filter(j=>j.id!==V))})}function F(y){var C,w;const{selections:x}=y;r.value=y.componentTitle,l(x);const T=g();p(),m(),N(T),O(),(C=t==null?void 0:t.modalRef)!=null&&C.value.close&&((w=t==null?void 0:t.modalRef)==null||w.value.close()),nn.value++,o.nextTick(()=>{tn()})}function v(){var y,x;(y=t==null?void 0:t.modalRef)!=null&&y.value.close&&((x=t==null?void 0:t.modalRef)==null||x.value.close())}function b(){if(e)return()=>o.createVNode(o.Fragment,null,[o.createVNode(Mi,{componentId:n.componentInstance.value.belongedComponentId,designerHostService:e,onSubmit:F,onCancel:v},{default:()=>[o.createTextVNode(" ")]}),o.createTextVNode(" ")])}function k(y){y.stopPropagation(),y.preventDefault(),e&&(t=e.modalService.open({title:"拆分卡片",width:900,height:600,fitContent:!1,showButtons:!1,render:b(),enableEsc:!1,draggable:!0}))}return{openSplitComponentModal:k}}var ot=(n=>(n.Frame="frame",n.dataGrid="data-grid",n.listView="list-view",n.form="form",n.attachmentPanel="attachment-panel",n))(ot||{});function Ii(n,e){const t=new br,{canMove:r,canDelete:i}=t.getTemplateRule(n,e);function s(){return!1}function a(){return i}function u(){return r}function l(){return!1}function c(){return" display: inherit;flex-direction: inherit;margin-bottom:10px"}function d(B){const O=new Tr(B,e),{schema:F}=n;return O.getPropertyConfig(F)}function f(){var b,k,y,x;const B=n==null?void 0:n.schema,F=(e==null?void 0:e.formSchemaUtils).getViewModelIdByComponentId(B.id);if(B.componentType!=="data-grid"&&B.componentType!=="form"||!((b=n.componentInstance)!=null&&b.value.parent))return;const v=(k=n.componentInstance)==null?void 0:k.value.parent.schema;if((y=v==null?void 0:v.toolbar)!=null&&y.buttons&&v.toolbar.buttons.length){v.toolbar.buttons.forEach(C=>{const w=C.onClick,E=w&&w.split(".");if(!E||E.length<3)return;E[E.length-2]===F&&(C.needRemove=!0)}),v.toolbar.buttons=v.toolbar.buttons.filter(C=>!C.needRemove);const T=(x=n.componentInstance)==null?void 0:x.value.parent;T.parent&&T.parent.updateToolbarItems&&T.parent.updateToolbarItems()}}function h(){const B=e==null?void 0:e.designViewModelUtils,O=e==null?void 0:e.formSchemaUtils,F=n==null?void 0:n.schema;if(B&&O){const v=O.getViewModelIdByComponentId(F.id);B.deleteViewModelById(v),O.deleteComponent(F.id)}}function g(){const B=e==null?void 0:e.designViewModelUtils,O=e==null?void 0:e.formSchemaUtils,F=n==null?void 0:n.schema,v=O.getViewModelIdByComponentId(F.id),b=B.getDgViewModel(v);b!=null&&b.fields&&b.fields.forEach(k=>{const y=O.getExpressions();if(y!=null&&y.length){const x=y.findIndex(T=>T.target===k.id);x>-1&&O.getExpressions().splice(x,1)}})}function p(){f(),g(),h()}function m(){const{schema:B}=n,O=[];return B.componentType==="form"&&O.push({id:"splitFormComponent",title:"拆分卡片",icon:"f-icon fd-i-Family fd_pc-split-card",onClick:F=>{ji(n,e).openSplitComponentModal(F)}},{id:"addSiblingComponent",title:"添加同级卡片",icon:"f-icon f-icon-plus",onClick:F=>{Fi(n,e).addSiblingComponent(F)}}),O}function S(){if(!e||!(n!=null&&n.schema))return"组件";switch(n.schema.componentType){case ot.Frame:return"根组件";case ot.dataGrid:{const{formSchemaUtils:B}=e;return`${B.selectNode(n.schema,v=>v.type===R["tree-grid"].type)?"树表格":"表格"}组件`}case ot.attachmentPanel:return"附件组件";case ot.listView:return"列表视图组件";default:return"组件"}}function N(){var B,O,F;if(n&&e){const{formSchemaUtils:v}=e;let b="",k="";const y=v.getRootViewModelId(),x=v.getComponentByViewModelId(y),T=v.selectNode(x,w=>w.contents&&w.contents.find(E=>E.component===n.schema.id));(T==null?void 0:T.type)===((B=R["tab-page"])==null?void 0:B.type)&&((O=T==null?void 0:T.contents)!=null&&O.length)&&(b=T.title||""),(T==null?void 0:T.type)===((F=R.section)==null?void 0:F.type)&&(T==null?void 0:T.showHeader)!==!1&&(b=T.mainTitle||""),b=b?`${b} > `:"",k=b?T.id:"";const C=S();v.getControlBasicInfoMap().set(n.schema.id,{componentTitle:C,parentPathName:`${b}${C}`,reliedComponentId:k})}}return{canAccepts:s,checkCanDeleteComponent:a,checkCanMoveComponent:u,hideNestedPaddingInDesginerView:l,getStyles:c,getPropsConfig:d,onRemoveComponent:p,getCustomButtons:m,setComponentBasicInfoMap:N}}const gn=o.defineComponent({name:"FComponetDesign",props:nt,emits:["init","afterViewInit"],setup(n,e){const t=o.ref(),r=o.inject("designer-host-service"),i=o.inject("design-item-context"),s=Ii(i,r),a=vr(t,i,s),u=o.computed(()=>{const l={"drag-container":!0};return Ne.getCustomClass(l,n==null?void 0:n.customClass)});return o.onMounted(()=>{var l,c,d,f;t.value.componentInstance=a,((c=(l=i.parent)==null?void 0:l.schema)==null?void 0:c.type)==="component-ref"&&(a.value.parent=(f=(d=i.parent)==null?void 0:d.parent)==null?void 0:f.componentInstance)}),e.expose(a.value),()=>o.createVNode("div",{ref:t,class:u.value,style:n.customStyle,"data-dragref":`${i.schema.id}-container`},[e.slots.default&&e.slots.default()])}}),Oi=Je({id:{type:String},component:{type:String,default:""}},{$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/component.schema.json",title:"component-ref",description:"A Farris Visual Component",type:"object",properties:{id:{description:"The unique identifier for a Section",type:"string"},type:{description:"The type string of Section component",type:"string",default:"component-ref"},component:{description:"",type:"string",default:""}},required:["id","type","component"]},Kt,en),Pi={install(n){n.component(ft.name,ft)},register(n,e,t,r){n.component=ft,e.component=St},registerDesigner(n,e){n.component=gn,e.component=St,e["component-ref"]=Oi}};I.Component=ft,I.ComponentDesign=gn,I.componentDesignProps=yr,I.componentProps=nt,I.default=Pi,I.propsResolver=St,Object.defineProperties(I,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|