@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,6 +1,6 @@
|
|
|
1
1
|
(function(ue,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("vue"),require("lodash-es"),require("../common/index.umd.js"),require("../capsule/index.umd.js"),require("vue-i18n"),require("../response-toolbar/index.umd.js"),require("../dynamic-resolver/index.umd.js"),require("../section/index.umd.js"),require("../locale/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("../../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-layout/index.umd.js"),require("../response-layout-editor/index.umd.js"),require("../search-box/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("../button-edit/index.umd.js"),require("../list-view/index.umd.js"),require("../loading/index.umd.js"),require("../checkbox/index.umd.js"),require("../popover/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es","../common/index.umd.js","../capsule/index.umd.js","vue-i18n","../response-toolbar/index.umd.js","../dynamic-resolver/index.umd.js","../section/index.umd.js","../locale/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","../../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-layout/index.umd.js","../response-layout-editor/index.umd.js","../search-box/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","../button-edit/index.umd.js","../list-view/index.umd.js","../loading/index.umd.js","../checkbox/index.umd.js","../popover/index.umd.js"],t):(ue=typeof globalThis<"u"?globalThis:ue||self,t(ue["schema-selector"]={},ue.Vue,ue.LodashES,ue.common,ue.FCapsule,ue.vueI18n,ue.FResponseToolbar,ue.dynamicResolver,ue.FSection$1,ue.locale,ue.VueUseCore,ue.dataView,ue.designerCanvas,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,ue.FTags,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,ue.FButtonEdit$1,ue.FListView$1,ue.FLoading$1,ue.checkbox,ue.FPopover))})(this,function(ue,t,he,ye,yo,Oe,an,Je,bo,Qe,vo,Z,rn,nl,ol,al,il,rl,ll,sl,cl,ul,dl,fl,pl,ml,gl,hl,yl,bl,vl,Cl,wl,xl,Sl,Tl,Nl,Il,Vl,kl,Fl,Bl,Ml,Pl,jl,$l,El,Dl,Ol,Rl,Ll,Al,ql,Hl,zl,_l,Ul,Wl,Gl,Xl,Co,Yl,Jl,Ql,Zl,Kl,es,ts,ns,os,as,is,rs,ls,ss,cs,us,ds,fs,ps,ms,gs,hs,ys,bs,vs,Cs,wo,xo,So,Mt,To){"use strict";var el=Object.defineProperty;var tl=(ue,t,he)=>t in ue?el(ue,t,{enumerable:!0,configurable:!0,writable:!0,value:he}):ue[t]=he;var fe=(ue,t,he)=>tl(ue,typeof t!="symbol"?t+"":t,he);const ln={injectSymbolToken:{type:Symbol},viewOptions:{type:Array,default:[]},viewType:{type:String,default:"Tabs"},editorParams:{type:Object,default:null},showFooter:{type:Boolean,default:!1},validateFunction:{type:Function,default:null}};function sn(e,n){let o;function a(f){const{properties:g,title:p,ignore:m}=f,h=m&&Array.isArray(m),b=Object.keys(g).reduce((I,v)=>((!h||!m.find(P=>P===v))&&(I[v]=g[v].type==="object"&&g[v].properties?a(g[v]):he.cloneDeep(g[v].default)),I),{});if(p&&(!h||!m.find(I=>I==="id"))){const I=p.toLowerCase().replace(/-/g,"_");b.id=`${I}_${Math.random().toString().slice(2,6)}`}return b}function i(f){const{properties:g,title:p,required:m}=f;if(m&&Array.isArray(m)){const h=m.reduce((b,I)=>(b[I]=g[I].type==="object"&&g[I].properties?a(g[I]):he.cloneDeep(g[I].default),b),{});if(p&&m.find(b=>b==="id")){const b=p.toLowerCase().replace(/-/g,"_");h.id=`${b}_${Math.random().toString().slice(2,6)}`}return h}return{type:p}}function r(f,g={},p){const m=e[f];if(m){let h=i(m);const b=n[f];return h=b?b({getSchemaByType:r},h,g,p):h,o!=null&&o.appendIdentifyForNewControl&&o.appendIdentifyForNewControl(h),h}return null}function l(f,g){const p=a(g);return Object.keys(p).reduce((m,h)=>(Object.prototype.hasOwnProperty.call(f,h)&&(m[h]&&he.isPlainObject(m[h])&&he.isPlainObject(f[h]||!f[h])?Object.assign(m[h],f[h]||{}):m[h]=f[h]),m),p),p}function s(f,g){return Object.keys(f).filter(m=>f[m]!=null).reduce((m,h)=>{if(g.has(h)){const b=g.get(h);if(typeof b=="string")m[b]=f[h];else{const I=b(h,f[h],f);Object.assign(m,I)}}else m[h]=f[h];return m},{})}function u(f,g,p=new Map){const m=l(f,g);return s(m,p)}function c(f){var p;const g=f.type;if(g){const m=e[g];if(!m)return f;const h=l(f,m),b=((p=f.editor)==null?void 0:p.type)||"";if(b){const I=e[b],v=l(f.editor,I);h.editor=v}return h}return f}function d(f){o=f}return{getSchemaByType:r,resolveSchemaWithDefaultValue:c,resolveSchemaToProps:u,mappingSchemaToProps:s,setDesignerContext:d}}const cn={},un={},{getSchemaByType:dn,resolveSchemaWithDefaultValue:No,resolveSchemaToProps:Io,mappingSchemaToProps:Vo,setDesignerContext:ws}=sn(cn,un);function ko(e={}){function n(c,d,f,g){if(typeof f=="number")return g[c].length===f;if(typeof f=="object"){const p=Object.keys(f)[0],m=f[p];if(p==="not")return Number(g[c].length)!==Number(m);if(p==="moreThan")return Number(g[c].length)>=Number(m);if(p==="lessThan")return Number(g[c].length)<=Number(m)}return!1}function o(c,d,f,g){return g[c]&&g[c].propertyValue&&String(g[c].propertyValue.value)===String(f)}const a=new Map([["length",n],["getProperty",o]]);Object.keys(e).reduce((c,d)=>(c.set(d,e[d]),c),a);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(g=>{if(g==="length")return{target:f,operator:"length",param:null,value:d[g]};const p=g,m=d[g];return{target:f,operator:"getProperty",param:p,value:m}}):[]}function r(c){return Object.keys(c).reduce((f,g)=>{const p=i(g,c[g]);return f.push(...p),f},[])}function l(c,d){if(a.has(c.operator)){const f=a.get(c.operator);return f&&f(c.target,c.param,c.value,d)||!1}return!1}function s(c,d){return r(c).reduce((p,m)=>p&&l(m,d),!0)}function u(c,d){const f=Object.keys(c),g=f.includes("allOf"),p=f.includes("anyOf"),m=g||p,I=(m?c[m?g?"allOf":"anyOf":"allOf"]:[c]).map(P=>s(P,d));return g?!I.includes(!1):I.includes(!0)}return{parseValueSchema:u}}const Fo={convertTo:(e,n,o,a)=>{e.appearance||(e.appearance={}),e.appearance[n]=o},convertFrom:(e,n,o)=>e.appearance?e.appearance[n]:e[n]},Bo={convertFrom:(e,n,o)=>e.buttons&&e.buttons.length?`共 ${e.buttons.length} 项`:"无"},Mo={convertTo:(e,n,o,a)=>{e.editor&&(e.editor[n]=o)},convertFrom:(e,n,o)=>e.editor&&Object.prototype.hasOwnProperty.call(e.editor,n)?e.editor[n]:e[n]},z={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:"多语输入框"}},Po={convertFrom:(e,n,o)=>{var i;const a=e.editor&&e.editor[n]?e.editor[n]:e[n];return((i=z[a])==null?void 0:i.name)||a}},jo={convertTo:(e,n,o,a)=>{e[n]=e[n]},convertFrom:(e,n,o)=>e.editor?o.getRealEditorType(e.editor.type):""},$o={convertTo:(e,n,o,a)=>{(e.type==="data-grid-column"||e.type==="tree-grid-column")&&(e.formatter?e.formatter[n]=o:e.formatter={[n]:o})},convertFrom:(e,n,o)=>{if(e.formatter){if(n==="trueText")return e.formatter.trueText;if(n==="falseText")return e.formatter.falseText;if(n==="prefix")return e.formatter.prefix;if(n==="suffix")return e.formatter.suffix;if(n==="precision")return e.formatter.precision;if(n==="decimal")return e.formatter.decimal;if(n==="thousand")return e.formatter.thousand;if(n==="dateFormat")return e.formatter.dateFormat||"yyyy-MM-dd";if(n==="customFormat")return e.formatter.customFormat;if(n==="type")return e.formatter.type||"none"}return"none"}},Eo={convertTo:(e,n,o,a)=>{e.command?e.command[n]=o:e.command={[n]:o},n==="enable"&&o&&(e.command.commands||(e.command.commands=[{text:"编辑",type:"primary",command:"edit"},{text:"删除",type:"danger",command:"remove"}]))},convertFrom:(e,n,o)=>e.command&&n==="enable"?e.command.enable:""},Do={convertTo:(e,n,o,a)=>{e.column?e.column[n]=o:e.column={[n]:o},n==="fitColumns"&&o&&(e.column.fitMode||(e.column.fitMode="average"))},convertFrom:(e,n,o)=>{if(e.column){if(n==="fitColumns")return e.column.fitColumns;if(n==="fitMode")return e.column.fitMode}return""}},Oo={convertTo:(e,n,o,a)=>{e.summary?e.summary[n]=o:e.summary={[n]:o},n==="enable"&&o&&(e.summary?e.summary.groupFields||(e.summary.groupFields=[]):e.summary={enable:o,groupFields:[]})},convertFrom:(e,n,o)=>e.summary&&n==="enable"?e.summary.enable:e.type==="data-grid-column"?e.enableSummary===void 0?!1:e.enableSummary:""},Ro={convertTo:(e,n,o,a)=>{e.group?e.group[n]=o:e.group={[n]:o},n==="enable"&&o&&(e.group?e.group.groupFields||(e.group.groupFields=[]):e.group={enable:o,groupFields:[],showSummary:!1})},convertFrom:(e,n,o)=>{if(e.group){if(n==="enable")return e.group.enable;if(n==="showSummary")return e.group.showSummary}}},Lo={convertFrom:(e,n)=>e.binding?e.binding.path:"",convertTo:(e,n,o)=>{if(o&&o.length>0){const a=o[0];e.binding||(e.binding={}),e.binding.type="Form",e.binding.path=a.bindingField,e.binding.field=a.id,e.binding.fullPath=a.path,e.path=a.bindingPath}}},Ao={convertTo:(e,n,o,a)=>{e.pagination||(e.pagination={}),e.pagination[n]=o},convertFrom:(e,n,o)=>e.pagination?e.pagination[n]:e[n]},qo={convertTo:(e,n,o,a)=>{e.rowNumber||(e.rowNumber={}),e.rowNumber[n]=o},convertFrom:(e,n,o)=>e.rowNumber?e.rowNumber[n]:e[n]},Ho={convertTo:(e,n,o,a)=>{e.selection||(e.selection={}),e.selection[n]=o},convertFrom:(e,n,o)=>{var a,i;return n==="showCheckbox"?(a=e.selection)!=null&&a.multiSelect?!0:(i=e.selection)==null?void 0:i.showCheckbox:e.selection?e.selection[n]:e[n]}},zo={convertFrom:(e,n,o)=>e[n]&&e[n].length?`共 ${e[n].length} 项`:""},_o={convertFrom:(e,n)=>e[n]||"",convertTo:(e,n,o)=>{e[n]=o}},Uo={convertTo:(e,n,o,a)=>{e.size||(e.size={}),e.size[n]=o},convertFrom:(e,n,o)=>e.size?e.size[n]:e[n]},Wo={convertFrom:(e,n,o)=>{var a,i;return(a=e.formatter)!=null&&a.data&&n==="formatterEnumData"&&!e.formatterEnumData?(i=e.formatter)==null?void 0:i.data:e.formatterEnumData}},Go={convertTo:(e,n,o,a)=>{e.sort||(e.sort={}),e.sort[n]=o},convertFrom:(e,n,o)=>{var a,i;if(n==="mode")return((a=e.sort)==null?void 0:a.mode)||"client";if(n==="multiSort")return!!((i=e.sort)!=null&&i.multiSort)}},Xo={convertTo:(e,n,o,a)=>{e.filter||(e.filter={}),e.filter[n]=o},convertFrom:(e,n,o)=>{var a;if(n==="mode")return((a=e.filter)==null?void 0:a.mode)||"client"}},Yo={convertTo:(e,n,o,a)=>{e.rowOption?e.rowOption[n]=o:e.rowOption={[n]:o}},convertFrom:(e,n,o)=>{if(e.rowOption){if(n==="customRowStyle")return e.rowOption.customRowStyle;if(n==="customCellStyle")return e.rowOption.customCellStyle}return""}};function fn(e,n,o){const a=new Map([["/converter/appearance.converter",Fo],["/converter/buttons.converter",Bo],["/converter/property-editor.converter",Mo],["/converter/items-count.converter",zo],["/converter/type.converter",Po],["/converter/change-editor.converter",jo],["/converter/change-formatter.converter",$o],["/converter/column-command.converter",Eo],["/converter/column-option.converter",Do],["/converter/summary.converter",Oo],["/converter/group.converter",Ro],["/converter/form-group-label.converter",_o],["/converter/field-selector.converter",Lo],["/converter/pagination.converter",Ao],["/converter/row-number.converter",qo],["/converter/grid-selection.converter",Ho],["/converter/size.converter",Uo],["/converter/change-formatter-enum.converter",Wo],["/converter/grid-sort.converter",Go],["/converter/grid-filter.converter",Xo],["/converter/row-option.converter",Yo]]),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}]]),r=ko();function l(m,h){return()=>r.parseValueSchema(m,h)}function s(m,h,b){return m.includes("visible")&&h.visible!==void 0?typeof h.visible=="boolean"?()=>!!h.visible:h.visible===void 0?!0:l(h.visible,b):()=>!0}function u(m,h,b){return m.includes("readonly")&&h.readonly!==void 0?typeof h.readonly=="boolean"?()=>!!h.readonly:l(h.readonly,b):()=>!1}function c(m,h){const b=m.$converter||h;return typeof b=="string"&&b&&a.has(b)?a.get(b)||null:b||null}function d(m,h,b,I,v,P="",T=""){return Object.keys(m).map(S=>{const V=t.ref(1),y=S,N=m[S],x=Object.keys(N),w=N.title,C=N.type,F=i.get(C)||{type:"input-group",enableClear:!1},B=N.editor?Object.assign({},F,N.editor):Object.assign({},F),j=s(x,N,h),M=u(x,N,h);B.readonly=B.readonly===void 0?M():B.readonly;const D=N.type==="cascade"?d(N.properties,h,b,I,v,P,T):[],$=!0;let O=c(N,T);const A=t.computed({get(){if(V.value){if(["class","style"].find(ge=>ge===y)&&!O&&(O=a.get("/converter/appearance.converter")||null),O&&O.convertFrom)return O.convertFrom(b,S,v,P);const de=b[S];return Object.prototype.hasOwnProperty.call(N,"defaultValue")&&(de===void 0||typeof de=="string"&&de==="")?N.type==="boolean"?N.defaultValue:N.defaultValue||"":de}return null},set(de){V.value+=1,O&&O.convertTo?(O.convertTo(I,S,de,v,P),O.convertTo(b,S,de,v,P)):(I[S]=de,b[S]=de)}}),{refreshPanelAfterChanged:L,description:Q,isExpand:te,parentPropertyID:oe}=N,J={propertyID:y,propertyName:w,propertyType:C,propertyValue:A,editor:B,visible:j,readonly:M,cascadeConfig:D,hideCascadeTitle:$,refreshPanelAfterChanged:L,description:Q,isExpand:te,parentPropertyID:oe};return h[y]=J,J})}function f(m,h,b={}){const I={},v=e[m];return v&&v.categories?Object.keys(v.categories).map(T=>{const k=v.categories[T],S=k==null?void 0:k.title,V=d(k.properties||{},I,{},b,h);return{categoryId:T,categoryName:S,properties:V}}):[]}function g(m,h,b,I,v=""){const P=h.$ref.schema,T=h.$ref.converter,k=b[P],S=k.type,V=o(k),y={},N=e[S];if(N&&N.categories){const x=N.categories[m],w=x==null?void 0:x.title;T&&Object.keys(x.properties).forEach(B=>{x.properties[B].$converter=T});const C=(x==null?void 0:x.properties)||{},F=d(C,y,V,k,I,v);return{categoryId:m,categoryName:w,properties:F}}return{categoryId:m,categoryName:"",properties:[]}}function p(m,h,b,I,v){const P=m.type,T=o(m),k={};let S=v||e[P];if(S&&Object.keys(S).length===0&&b&&b.getPropConfig&&(S=b.getPropConfig(I)),S&&S.categories){const V=[];return Object.keys(S.categories).map(y=>{const N=S.categories[y];if(N.$ref){V.push(g(y,N,m,h,I));return}const x=N==null?void 0:N.title,w=N==null?void 0:N.tabId,C=N==null?void 0:N.tabName,F=N==null?void 0:N.hide,B=N==null?void 0:N.hideTitle,j=d(N.properties||{},k,T,m,h,I,N.$converter),{setPropertyRelates:M}=N,D=N==null?void 0:N.parentPropertyID;V.push({categoryId:y,categoryName:x,tabId:w,tabName:C,hide:F,properties:j,hideTitle:B,setPropertyRelates:M,parentPropertyID:D})}),V}return[]}return{getPropertyConfigBySchema:p,getPropertyConfigByType:f,propertyConverterMap:a}}const pn={},mn={};fn(pn,mn,No);const gn={},hn={},{getSchemaByType:Pt,resolveSchemaWithDefaultValue:Jo,resolveSchemaToProps:xs,mappingSchemaToProps:Ss,setDesignerContext:Ts}=sn(gn,hn),yn={},bn={};fn(yn,bn,Jo);function Ie(e,n,o=new Map,a=(l,s,u,c)=>s,i={},r=l=>l){return cn[n.title]=n,un[n.title]=a,pn[n.title]=i,mn[n.title]=r,gn[n.title]=n,hn[n.title]=a,yn[n.title]=i,bn[n.title]=r,(l={},s=!0)=>{if(!s)return Vo(l,o);const u=Io(l,n,o),c=Object.keys(e).reduce((d,f)=>(d[f]=e[f].default,d),{});return Object.assign(c,u)}}function _e(e,n){return{customClass:n.class,customStyle:n.style}}function Qo(e,n){if(!e||e.length<1)return null;for(const o of e){if(o.id===n)return o;if(o.children){const a=o.children.find(i=>i.id===n);if(a)return a}}return null}function Zo(){function e(n,o){const{name:a}=o,[i,r]=o.payloads;if(a==="tabChange"||a==="tabRemove")return n[`on${a.charAt(0).toUpperCase()}${a.slice(1)}`];const l=n.contents;if(!l||l.length<1)return null;const s=l.reduce((c,d)=>{const f=d.toolbar&&d.toolbar.buttons||[];return c.push(...f),c},[]);if(!s||s.length<1)return;const u=Qo(s,r);return u?u.onClick||u.click:null}return{resolve:e}}const ht=new Map([["appearance",_e]]);function Ko(e,n){const o=Math.random().toString().slice(2,6),a=n.parentComponentInstance,i=e.getSchemaByType("tab-page");i.id=`tab-page-${o}`,i.title="标题",i.toolbar={id:`tab-page-toolbar-${o}`,buttons:[]};const r=e.getSchemaByType("tabs");Object.assign(r,{id:`tabs-${o}`,appearance:{class:"f-component-tabs f-tabs-has-grid"},contents:[i],activeId:i.id});const l=e.getSchemaByType("section");Object.assign(l,{id:`section-${o}`,appearance:{class:"f-section-tabs f-section-in-mainsubcard"},fill:!1,showHeader:!1,contents:[r]});const s=e.getSchemaByType("content-container");Object.assign(s,{id:`container-${o}`,appearance:{class:"f-struct-wrapper"},contents:[l]});const u=a.schema;switch(u&&u.type){case z["splitter-pane"].type:{l.appearance.class="f-section-tabs f-section-in-main",r.appearance.class="f-component-tabs";break}}const c=a.elementRef,d=window.getComputedStyle(c);return d&&d.display==="flex"&&(s.appearance.class+=" d-block"),s}function vn(e,n,o){if(o.parentComponentInstance)return Ko(e,o);{const i=e.getSchemaByType("tab-page");return n.contents=[i],n}}function ea(e,n,o){return n}const Cn={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/tabs.schema.json",title:"tabs",description:"A Farris Container Component",type:"object",properties:{id:{description:"The unique identifier for a Tabs",type:"string"},type:{description:"The type string of Tabs component",type:"string",default:"tabs"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},contents:{description:"",type:"array",default:[]},autoTitleWidth:{description:"",type:"boolean",default:!1},titleWidth:{description:"",type:"number"},titleLength:{description:"",type:"number",default:7},fill:{description:"",type:"boolean",default:!1},visible:{description:"",type:"boolean",default:!0},activeId:{description:"",type:"string",default:""}},required:["id","type","contents"],events:{onTabChange:"切换标签页事件",onTabRemove:"移除标签页事件"}},ta={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/tab-toolbar.schema.json",title:"tab-toolbar",description:"A Farris Toolbar Component",type:"object",properties:{id:{description:"The unique identifier for a Tab Toolbar",type:"string"},type:{description:"The type string of Tab Toolbar",type:"string",default:"tab-toolbar"},appearance:{description:"",type:"object",properties:{class:{type:"string",default:""}}},alignment:{description:"The alignment of Tab Toolbar Button.",type:"string",default:"right"},buttons:{description:"The items of Tab Toolbar.",type:"array",default:[]},buttonSize:{type:"string",default:""},visible:{description:"",type:"boolean",default:!0}},required:["id","type","buttons"],events:{onClick:"点击事件"}},na=new Map([["buttons","items"],["appearance",_e]]);function yt(e,n,o){return n}const oa={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/response-toolbar.schema.json",title:"response-toolbar",description:"A Farris Toolbar Component",type:"object",properties:{id:{description:"The unique identifier for a Response Toolbar",type:"string"},type:{description:"The type string of Response Toolbar",type:"string",default:"response-toolbar"},appearance:{description:"",type:"object",properties:{class:{type:"string",default:""}}},alignment:{description:"The alignment of Response Toolbar Button.",type:"string",default:"right"},buttons:{description:"The items of Response Toolbar.",type:"array",default:[]},buttonSize:{type:"string",default:""},visible:{description:"",type:"boolean",default:!0}},required:["id","type","buttons"],events:{onClick:"点击事件"}},aa={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/response-toolbar-item.schema.json",title:"response-toolbar-item",description:"A Farris Toolbar Item Component",type:"object",properties:{id:{description:"The unique identifier for a Response Toolbar",type:"string"},type:{description:"The type string of Response Toolbar",type:"string",default:"response-toolbar-item"},appearance:{description:"",type:"object",properties:{class:{type:"string",default:""}}},alignment:{description:"对齐",type:"string",default:"right"},text:{description:"文本",type:"string",default:"按钮"},icon:{description:"图标",type:"string",default:""},disabled:{description:"禁用",type:"boolean",default:!1},visible:{description:"是否可见",type:"boolean",default:!0},onClick:{description:"点击事件",type:"string",default:""},tipsEnable:{description:"",type:"boolean",default:!1},tipsText:{description:"",type:"string",default:""},dropdownClass:{description:"处于下拉菜单时的样式",type:"string",default:""},split:{description:"",type:"boolean",default:!1}},required:["id","type","text"],events:{onClick:"点击事件"}},bt={id:{type:String,default:""},customClass:{type:String,default:""},alignment:{Type:String,default:"right"},items:{Type:Array,default:[]},visible:{type:Boolean,default:!0}},ia=Object.assign({},bt,{componentId:{type:String,default:""}});Ie(bt,oa,na,yt);const wn={id:{type:String,default:""},item:{type:Object,default:{}},items:{type:Object,default:{}},class:{type:String,default:"btn-secondary"},text:{type:String,default:""},disabled:{type:Boolean,default:!1},icon:{type:String,default:""},componentId:{type:String,default:""},expanded:{type:Boolean,default:!1},alignment:{Type:String,default:"right"},split:{type:Boolean,default:!1},isDP:{type:Boolean,default:!1},isDPItem:{type:Boolean,default:!1}};Ie(wn,aa,void 0,yt);const jt={tabType:{type:String,default:"default"},autoTitleWidth:{type:Boolean,default:!1},titleLength:{type:Number,default:7},position:{type:String,default:"top"},showDropdown:{type:Boolean,default:!0},scrollStep:{type:Number,default:10},autoResize:{type:Boolean,default:!1},width:{type:Number},height:{type:Number},searchBoxVisible:{type:Boolean,default:!0},titleWidth:{type:Number,default:0},customClass:{type:String,default:""},activeId:{type:String},fill:{type:Boolean,default:!1},justifyContent:{type:String,default:"left"},visible:{type:Boolean,default:!0}},ra=Ie(jt,Cn,ht,vn),xn=Object.assign({},jt,{componentId:{type:String,default:""}}),la=Ie(xn,Cn,ht,vn),sa=Zo(),ca=Ie(bt,ta,ht,yt);function ua(e,n,o){const a=t.ref([]),i=t.ref(e.activeId||"");let r="";const l=t.ref(!0),s=t.ref([]),u=t.ref(!0),c=t.ref(0),d=t.computed(()=>{const y=a.value.find(x=>x.props.id===i.value);return(y==null?void 0:y.props.toolbarPosition)==="inHead"});function f(y,N=!0){const x=y.findIndex(w=>w.props.show!==!1&&!w.props.disabled);if(s.value=[],x!==-1){if(i.value=y[x].props.id,!N)return;const w=y[x];w&&w.props.toolbar&&w.props.toolbar.buttons&&w.props.toolbar.buttons.length&&(s.value=[...w.props.toolbar.buttons],u.value=w.props.toolbarVisible)}}function g(y){i.value=y;const N=a.value.find(x=>x.props.id===y);s.value=[],N&&N.props.toolbar&&N.props.toolbar.buttons&&N.props.toolbar.buttons.length&&(s.value=[...N.props.toolbar.buttons],u.value=N.props.toolbarVisible),n.emit("update:activeId",y),n.emit("tabChange",{prevId:r,nextId:i.value})}function p(y){let N=-1;if(!i.value){if(N=y.findIndex(x=>i.value===x.props.id&&x.props.show!==!1&&!x.props.disabled),N>-1)return;r=i.value}f(y,!1),g(i.value)}function m(y){let N=!1;if(y){const x=a.value.find(w=>w.props.id===y);N=!x||x.props.show===!1||x.props.disabled===!0}N?p(a.value):(i.value!==y&&(r=i.value,i.value=y),g(i.value))}t.watch(()=>e.activeId,(y,N)=>{y!==N&&m(y)});function h(y){var x;if(e.autoTitleWidth)return;const N=(x=y.value)==null?void 0:x.querySelectorAll(".st-tab-text");if(!(!N||e.tabType==="pill"))for(let w=0;w<N.length;w++){const C=N[w].parentNode;N[w].scrollWidth>C.offsetWidth?N[w].classList.contains("farris-title-text-custom")||N[w].classList.add("farris-title-text-custom"):N[w].classList.remove("farris-title-text-custom")}}const b=y=>{y.preventDefault(),y.stopPropagation()};function I(y,N,x=!1){const w=a.value.findIndex(C=>C.props.id===N);a.value=a.value.filter(C=>C.props.id!==N),i.value===N&&(r=N,i.value="",f(a.value)),b(y),t.nextTick(()=>{c.value++,h(o),x&&(l.value=!0),n.emit("tabRemove",{removeIndex:w,removeId:N,activeId:i.value})})}function v(y,N=!0){i.value===y&&(i.value="",r=y,m("")),t.nextTick(()=>{c.value++,N&&(l.value=!0)})}let P;function T(y){P=y}function k(y){i.value!==y&&(r=i.value,g(y),P&&P())}function S(y){a.value.findIndex(x=>x.props.id===y.props.id)===-1&&a.value.push(y),c.value++}function V(y){a.value.findIndex(x=>x.props.id===y.props.id)!==-1&&(a.value.forEach(x=>{x.props.id===y.props.id&&(x=y)}),y.props.id===i.value&&d.value,t.nextTick(()=>{c.value++,h(o)}))}return{activeId:i,addTab:S,changeTitleStyle:h,removeTab:I,selectTab:k,tabPages:a,updateTab:V,toolbarItems:s,needUpdateNavigationLayout:c,checkActiveIdAndSelect:m,toggleShowTab:v,hasInHeadClass:d,setScrollToSelectedTabFunction:T,toolbarVisible:u}}function da(e,n,o,a,i){const{activeId:r,removeTab:l,selectTab:s}=i,u=t.computed(()=>{const v={"st-tab-text":!0,"text-truncate":e.tabType==="pill"&&!e.autoTitleWidth,"farris-title-auto":e.autoTitleWidth};return ye.getCustomClass(v,n.customTitleClass)}),c=t.computed(()=>({"nav-item":!0,"d-none":n.show!==void 0?!n.show:!1,"f-state-active":n.id===r.value,"f-state-disabled":n.disabled})),d=t.computed(()=>({width:`${n.tabWidth}px`})),f=t.computed(()=>({"nav-link":!0,"tabs-text-truncate":!0,active:n.id===r.value,disabled:n.disabled})),g=t.reactive({content:n.title,overflowShown:!0});function p(){return e.tabType!=="pill"&&!e.autoTitleWidth?t.withDirectives(t.createVNode("span",{class:u.value,"data-tabid":n.id},[n.title]),[[t.resolveDirective("tooltip"),g]]):t.createVNode("span",{class:u.value,"data-tabid":n.id,title:n.title},[n.title])}const m=t.ref(n.removeable);function h(){return m.value?t.createVNode("span",{class:"st-drop-close",onClick:v=>l(v,n.id)},[t.createVNode("i",{class:"f-icon f-icon-close"},null)]):""}function b(v){s(n.id),e.tabType==="one-page"&&a.scrollToByPaggId(n.id)}function I(){return o.slots.title?t.createVNode("a",{class:f.value,onClick:b,id:`${n.id}-design-item`},[o.slots.title(o),h()]):n.titleRenderFunction?t.createVNode("a",{class:f.value,onClick:b,id:`${n.id}-design-item`},[n.titleRenderFunction(),h()]):t.createVNode("a",{class:f.value,onClick:b,id:`${n.id}-design-item`},[p(),h()])}return t.createVNode("li",{class:c.value,style:d.value},[I()])}function fa(e,n,o,a,i){const{shouldShowNavigationButtons:r}=o,{tabPages:l}=i,s=t.computed(()=>({spacer:!0,"f-utils-fill":!0,"spacer-sides-dropdown":r.value})),u=t.computed(()=>({width:"100%","justify-content":e.justifyContent})),c=t.computed(()=>({nav:!0,"farris-nav-tabs":!0,"flex-nowrap":!0,"nav-fill":e.tabType==="fill","nav-pills":e.tabType==="pills","flex-row":e.position==="top"||e.position==="bottom","flex-column":e.position==="left"||e.position==="right"}));return()=>t.createVNode("div",{class:s.value,style:u.value},[t.createVNode("ul",{class:c.value,ref:n},[l.value.map(d=>da(e,d.props,d,a,i))])])}function Sn(e,n,o,a,i){const r=t.ref(),{shouldShowNavigationButtons:l}=o,{activeId:s,tabPages:u,selectTab:c}=i,d=t.ref(s.value),f=t.computed(()=>u.value.map(h=>({name:h.props.title,value:h.props.id,show:h.props.show,disabled:h.props.disabled}))),g=t.computed(()=>({spacer:!0,"f-utils-fill":!0,"spacer-sides-dropdown":l.value})),p=t.computed(()=>({width:"100%",display:"flex","justify-content":e.justifyContent}));t.onMounted(()=>{r.value&&(n.value=r.value.$el)});function m(h){c(h)}return t.watch(()=>s.value,h=>{h!==d.value&&(d.value=h)},{immediate:!0}),()=>t.createVNode("div",{class:g.value,style:p.value},[t.createVNode(yo,{items:f.value,modelValue:d.value,"onUpdate:modelValue":h=>d.value=h,onChange:m,ref:r},null)])}function pa(e,n,o,a){const{t:i}=Oe.useI18n(),r=t.ref(),{activeId:l,removeTab:s,tabPages:u,selectTab:c}=a,{hideDropDown:d,searchTabText:f}=n,g=600;let p=null;const m=t.computed(()=>{var w,C;let x=[];return e.searchBoxVisible?x=(w=u.value)==null?void 0:w.filter(F=>F.props.title.includes(f.value)):x=(C=u.value)==null?void 0:C.slice(),x}),h=t.computed(()=>({"dropdown-menu":!0,"tabs-pt28":e.searchBoxVisible,show:!d.value,"d-none":d.value}));let b;function I(x){b=x}t.watch(d,x=>{if(b.value)if(x)r.value.style.width=null;else{const w=b.value.querySelector(".farris-tabs-header"),C=b.value.clientHeight-w.clientHeight-20,B=w.querySelector(".farris-tabs-title").clientWidth-20;r.value.style.maxWidth=B+"px",r.value.style.maxHeight=C+"px",t.nextTick(()=>{const{width:j}=r.value.getClientRects()[0];r.value.style.width=j?j+"px":null})}});function v(x){return{"dropdown-item":!0,"text-truncate":!0,"px-2":!0,disabled:x.props.disabled,active:x.props.id===l.value,"d-none":x.props.show!==!0}}function P(x){x.preventDefault(),x.stopPropagation()}function T(){p&&clearTimeout(p)}function k(){d.value||(p=setTimeout(()=>{d.value=!0},g))}function S(x,w){x.stopPropagation(),w.disabled||c(w.id),d.value=!0}function V(x,w){x.stopPropagation(),s(x,w,!0)}function y(x){return x.slots.title?t.createVNode("a",{class:"dropdown-title",id:`${x.props.id}-dropdown-item`},[x.slots.title(x)]):x.props.titleRenderFunction?t.createVNode("a",{class:"dropdown-title",id:`${x.props.id}-dropdown-item`},[x.props.titleRenderFunction()]):t.createVNode("a",{class:"dropdown-title",id:`${x.props.id}-dropdown-item`},[x.props.title])}function N(){return t.createVNode("div",{ref:r,class:h.value,onMouseenter:()=>T(),onMouseleave:()=>k()},[e.searchBoxVisible&&t.createVNode("div",{onClick:x=>P(x),class:"pb-1 tabs-li-absolute"},[t.withDirectives(t.createVNode("input",{type:"text",class:"form-control","onUpdate:modelValue":x=>f.value=x},null),[[t.vModelText,f.value]]),t.createVNode("span",{class:"f-icon f-icon-page-title-query tabs-icon-search"},null)]),m.value.length?t.createVNode("ul",{class:"tab-dropdown-menu--items flex-fill"},[m.value.map(x=>t.createVNode("li",{class:v(x),onClick:w=>S(w,x.props)},[x.props.removeable&&x.props.disabled!==!0&&t.createVNode("span",{class:"float-right st-drop-close",onClick:w=>V(w,x.props.id)},[t.createVNode("i",{class:"f-icon f-icon-close"},null)]),y(x)]))]):t.createVNode("div",{class:"dropdown-no-data"},[i("tabs.noData")])])}return{renderDropdownMenu:N,setTabsRef:I}}function ma(e,n,o,a){const{hideDropDown:i}=n,{renderDropdownMenu:r,setTabsRef:l}=pa(e,n,o,a),s=t.ref(e.showDropdown);function u(){return s.value&&t.createVNode(t.Fragment,null,[t.createVNode("button",{class:"btn dropdown-toggle-split dropdown-toggle",onClick:()=>{i.value=!1}},null),r()])}return{renderMorePagesButtton:u,setTabsRef:l}}function Tn(e,n,o,a){const i=t.ref(!1),{selectTab:r,tabPages:l,needUpdateNavigationLayout:s,activeId:u}=a,c=4,d=t.computed(()=>({btn:!0,"sc-nav-btn":!0,"px-1":!0,"sc-nav-lr":!0,"d-none":!i.value})),f=t.computed(()=>({"btn-group":!0,"sc-nav-btn":!0,dropdown:!0,"d-none":!i.value})),g=t.computed(()=>({btn:!0,"sc-nav-rg":!0,"d-none":!i.value}));function p(v,P){if(!n.value)return;const T=n.value.scrollLeft,k=n.value.scrollWidth-n.value.offsetWidth;if(P>0){if(n.value.scrollLeft>=k)return;n.value.scrollLeft=T+e.scrollStep+v}else if(P<0){if(n.value.scrollLeft<=0)return;n.value.scrollLeft=T-e.scrollStep-v}}function m(v=-1){if(!i.value||!n.value)return;v<0&&(v=l.value.findIndex(V=>V.props.id===u.value));const P=e.tabType==="pills"?".f-capsule-item":".nav-item",T=n.value.querySelectorAll(P),{parentElement:k}=n.value,S=T[v];if(S&&k){const V=k.getBoundingClientRect().left,y=k.getBoundingClientRect().right,N=S.getBoundingClientRect().left,x=S.getBoundingClientRect().right;N<V?p(V-N,-1):y<x&&p(x-y,1),e.tabType==="one-page"&&o.scrollTo(v)}}function h(){var T;if(!n.value)return;const v=n.value,P=(T=n.value)==null?void 0:T.parentElement;i.value=P&&v&&P.offsetWidth<v.scrollWidth-c,i.value&&t.nextTick(()=>{m()})}function b(v){v.disabled||r(v.id)}function I(){["default","one-page"].indexOf(e.tabType)>-1&&t.nextTick(()=>{m()})}return t.watch(s,()=>{h()}),{previousButtonClass:d,nextButtonGroupClass:f,nextButtonClass:g,scrollTab:p,selectAndScrollToTab:b,shouldShowNavigationButtons:i,updateNavigationLayout:h,scrollToSelectedTab:I}}function Nn(e,n){const{tabPages:o}=n,a=t.ref(""),i=t.ref(!0),r=t.computed(()=>e.searchBoxVisible),l=t.computed(()=>r.value?o.value.filter(u=>u.props.title.includes(a.value)):o.value.slice());return t.watch(i,s=>{s||(a.value="")}),{searchTabText:a,hideDropDown:i,shouldShowSearchBox:r,tabsInDropdownMenu:l}}function In(e,n,o){const a=".farris-tab-page",{tabPages:i}=o;function r(s){const u=n.value;if(u){const c=n.value.querySelectorAll(a);if(c.length>0){const d=c[s],{offsetTop:f}=d,g=f-32>0?f-32:0;u.scrollTop=g}}}function l(s){const u=i.value.findIndex(c=>c.props.id===s);u>-1&&r(u)}return{scrollTo:r,scrollToByPaggId:l}}const Ze=t.defineComponent({name:"FTabs",props:jt,emits:["tabChange","tabRemove","update:activeId","Click"],setup(e,n){const{t:o}=Oe.useI18n(),a=t.ref(e.tabType),i=t.shallowRef(),r=t.ref(e.customClass),l=t.shallowRef(),s=t.shallowRef(),u=t.ref(),c=ua(e,n,l),{activeId:d,changeTitleStyle:f,tabPages:g,addTab:p,updateTab:m,toolbarItems:h,checkActiveIdAndSelect:b,toggleShowTab:I,hasInHeadClass:v,toolbarVisible:P}=c,T=In(e,s,c),k=Tn(e,l,T,c),{previousButtonClass:S,nextButtonClass:V,nextButtonGroupClass:y,scrollTab:N,updateNavigationLayout:x,scrollToSelectedTab:w}=k;c.setScrollToSelectedTabFunction(w);const C=Nn(e,c),F=fa(e,l,k,T,c),B=F,j=Sn(e,l,k,T,c),M=new Map([["default",F],["one-page",B],["pills",j]]);t.computed(()=>{const ee=g.value.find(ie=>ie.props.id===d.value);return ee==null?void 0:ee.slots});const D=t.computed(()=>e.fill);t.provide("tabs",{activeId:d,addTab:p,updateTab:m,tabPages:g,tabType:a,shouldFillParentContaner:D,toggleShowTab:I,toolbarVisible:P});let $=!1;const O=t.computed(()=>({"farris-tabs-header":!0,"farris-tabs-inHead":v.value,"farris-tabs-inContent":!v.value,"farris-tabs-nav-fill":e.tabType==="fill","farris-tabs-nav-pills":e.tabType==="pills"})),A=t.computed(()=>{const ee={width:v.value&&e.titleWidth?`${e.titleWidth}%`:""};return ee.width&&(ee.flex="unset"),ee}),L=t.computed(()=>{const ee={"farris-tabs":!0,"f-utils-fill-flex-column":D.value,"flex-column":e.position==="top","flex-column-reverse":e.position==="bottom","flex-row":e.position==="left","flex-row-reverse":e.position==="right","one-page":e.tabType==="one-page"};return r.value&&r.value.split(" ").reduce((ie,se)=>(ie[se]=!0,ie),ee),ee}),Q=new ResizeObserver(ee=>{ee.length&&x()});function te(){u.value&&!$&&(Q.observe(u.value),$=!0)}t.watch(()=>e.visible,ee=>{t.nextTick(()=>{g.value.length&&b(e.activeId||g.value[0].props.id),x(),f(l),te()})}),t.watch(()=>e.autoTitleWidth,ee=>{t.nextTick(()=>{x(),f(l)})});const oe={leftButton:o("tabs.leftButton"),rightButton:o("tabs.rightButton")};t.onMounted(()=>{e.visible&&(g.value.length&&b(e.activeId||g.value[0].props.id),t.nextTick(()=>{x(),f(l)}),te())});function J(){return t.createVNode("button",{title:oe.leftButton,type:"button",class:S.value,onClick:()=>{N(0,-1)}},null)}function de(){return t.createVNode("button",{title:oe.rightButton,type:"button",class:V.value,onClick:()=>{N(0,1)}},null)}const{renderMorePagesButtton:ge,setTabsRef:le}=ma(e,C,k,c);le(i);const X=(ee,ie)=>{n.emit("Click",ee,ie,d.value)};function ce(){return h.value.length?t.createVNode("div",{class:{"farris-tabs-toolbar":!0,"d-none":!P.value}},[t.createVNode(an,{class:"f-utils-fill",alignment:v.value?"right":"left",items:h.value,visible:P.value,onClick:X},null)]):null}const E=M.get(e.tabType)||M.get("default");function q(){var ee,ie,se,Ve;return t.createVNode("div",{class:O.value},[t.createVNode("div",{class:"farris-tabs-header-pre"},[(ie=(ee=n.slots).headerPrefix)==null?void 0:ie.call(ee)]),t.createVNode("div",{class:"farris-tabs-title scroll-tabs",style:A.value,ref:u},[J(),E&&E(),t.createVNode("div",{class:y.value},[de(),ge()])]),ce(),t.createVNode("div",{class:"farris-tabs-header-post"},[(Ve=(se=n.slots).headerSuffix)==null?void 0:Ve.call(se)])])}const H=t.computed(()=>({"farris-tabs-content":!0,"f-utils-fill-flex-column":D.value}));function W(){var ee,ie;return t.createVNode("div",{class:H.value,ref:s},[(ie=(ee=n.slots).default)==null?void 0:ie.call(ee)])}return()=>e.visible?t.createVNode("div",{class:L.value,ref:i},[q(),W()]):null}});function ga(e,n,o){return n&&n.contents&&n.contents.length&&(n.contents.forEach(a=>{a.title&&(a.text=a.title)}),n.buttons=n.contents,delete n.contents),n&&Object.prototype.hasOwnProperty.call(n,"visible")?{toolbar:n,toolbarVisible:n.visible}:{toolbar:n}}const Vn=new Map([["appearance",_e],["toolbar",ga]]),kn={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/tab-page.schema.json",title:"tab-page",description:"A Farris Container Component",type:"object",properties:{id:{description:"The unique identifier for a tab-page Item",type:"string"},type:{description:"The type string of tab-page Item component",type:"string",default:"tab-page"},contents:{description:"",type:"array",default:[]},title:{description:"",type:"string",default:"标题"},disabled:{description:"",type:"boolean",default:!1},removeable:{description:"",type:"boolean",default:!1},show:{description:"",type:"boolean",default:!0},toolbar:{description:"",type:"object"},tabWidth:{description:"",type:"number"},toolbarPosition:{description:"",type:"string",default:"inHead"},customTitleClass:{description:"",type:"string",default:""},onTabChange:{description:"",type:"切换标签页事件",default:""},onTabRemove:{description:"",type:"string",default:"移除标签页事件"},titleHtml:{description:"",type:"string",default:""},titleRenderFunction:{description:"",type:"function",default:null}},required:["id","type","contents"]},$t={tabWidth:{type:Number},id:{type:String,default:""},customTitleClass:{type:String,default:""},titleOverflow:{type:Boolean,default:!1},title:{type:String,default:""},selected:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},removeable:{type:Boolean,default:!1},show:{type:Boolean,default:!0},toolbar:{type:Object,default:{}},toolbarPosition:{type:String,default:"inHead"},toolbarVisible:{type:Boolean,default:!0},titleRenderFunction:{type:Function}},ha=Je.createPropsResolver($t,kn,Vn),Fn=Object.assign({},$t,{titleHtml:{type:String,default:""}}),ya=Je.createPropsResolver(Fn,kn,Vn);function ba(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!t.isVNode(e)}const vt=t.defineComponent({name:"FTabPage",props:$t,emits:[],setup(e,n){const o=t.inject("tabs"),a=t.ref(e.show),i={slots:n.slots,props:e},r=t.ref((o==null?void 0:o.tabType.value)||"default");t.onMounted(()=>{const p=o==null?void 0:o.tabPages.value.findIndex(m=>m.props.id===e.id);(!p||p===-1)&&(o==null||o.addTab(i))}),t.onUnmounted(()=>{});const l=t.computed(()=>(e==null?void 0:e.id)===(o==null?void 0:o.activeId.value)),s=t.computed(()=>({display:l.value?"":"none"}));t.watch(()=>e,p=>{o==null||o.updateTab({props:p,slots:n.slots})},{immediate:!0,deep:!0}),t.watch(()=>e.show,p=>{o==null||o.toggleShowTab(e.id)}),t.watch(()=>e.toolbarVisible,p=>{l.value&&o&&(o.toolbarVisible.value=p)});function u(){var m,h;const p=(h=(m=n.slots).default)==null?void 0:h.call(m);return t.createVNode(bo,{"main-title":e.title,class:["farris-tab-page",a.value?"":"f-tab-d-none"]},ba(p)?p:{default:()=>[p]})}const c=t.computed(()=>{var m;return{"farris-tab-page":!0,"f-tab-d-none":!a.value,"f-utils-fill-flex-column":l.value&&o&&((m=o.shouldFillParentContaner)==null?void 0:m.value)}});function d(){var m,h;const p=(h=(m=n.slots).default)==null?void 0:h.call(m);return t.createVNode("div",{class:c.value,style:s.value},[p])}const g=new Map([["default",d],["one-page",u]]).get(r.value)||d;return()=>g()}});function va(e,n,o,a,i,r){const{activeId:l,selectTab:s,removeDesignTab:u,selectDesignTab:c,addTabPageToolbar:d,resetPositionForSelectedElement:f}=i,g=t.computed(()=>({"st-tab-text":!0,"farris-title-auto":e.autoTitleWidth})),p=t.computed(()=>{const C={"farris-component":!0,"nav-item":!0,"f-state-active":n.id===l.value};return C[`${n.id}-design-item`]=!0,C}),m=t.computed(()=>{const C={};return n.tabWidth&&n.tabWidth>0&&(C.width=`${n.tabWidth}px`),C}),h=t.computed(()=>({"nav-link":!0,"tabs-text-truncate":!0,active:n.id===l.value}));function b(){return t.createVNode("span",{class:g.value,title:n.title},[n.title])}const I=t.ref(n.removeable);function v(){return I.value?t.createVNode("span",{class:"st-drop-close",style:"opacity:0.6"},[t.createVNode("i",{class:"f-icon f-icon-close"},null)]):""}function P(){return I.value?n.titleHtml+`<span class="st-drop-close" style="opacity:0.6">
|
|
2
2
|
<i class="f-icon f-icon-close"></i>
|
|
3
|
-
</span>`:n.titleHtml}function T(C){s(n.id),e.tabType==="one-page"&&a.scrollToByPaggId(n.id)}function k(C){C&&(C.stopPropagation(),C.preventDefault()),c(C,n.id,r.value)}function S(C){u(C,n.id)}function V(C){d(C,n.id)}t.watch(()=>n.toolbarPosition,()=>{t.nextTick(()=>{f()})}),t.watch(()=>n.tabWidth,()=>{t.nextTick(()=>{f()})}),t.watch(()=>n.titleHtml,()=>{t.nextTick(()=>{f()})});function y(){return t.createVNode("div",{role:"button",class:"btn component-settings-button",title:"删除",ref:"removeComponent",onClick:C=>S(C)},[t.createVNode("i",{class:"f-icon f-icon-yxs_delete"},null)])}function N(){return t.createVNode("div",{role:"button",class:"btn component-settings-button",title:"新增按钮",ref:"addComponent",onClick:C=>V(C)},[t.createVNode("i",{class:"f-icon f-icon-plus-circle"},null)])}function x(){return t.createVNode("div",{class:"component-btn-group","data-noattach":"true"},[t.createVNode("div",null,[y(),!n.toolbar||!n.toolbar.buttons||!n.toolbar.buttons.length?N():""])])}function w(){return o.slots.title?t.createVNode("a",{class:h.value,onClick:T,id:`${n.id}-design-item`},[o.slots.title(o),v()]):n.titleHtml?t.createVNode("a",{class:h.value,onClick:T,id:`${n.id}-design-item`,innerHTML:P()},null):t.createVNode("a",{class:h.value,onClick:T,id:`${n.id}-design-item`},[b(),v()])}return t.createVNode("li",{onClick:C=>k(C),class:p.value,style:m.value,pageId:`${n.id}-design-item`},[x(),w()])}function Ca(e,n,o,a,i,r,l){const{tabPages:s,selectTab:u,emitSelectionChange:c}=i,d=t.computed(()=>({spacer:!0,"f-utils-fill":!0})),f=t.computed(()=>({width:"100%","justify-content":e.justifyContent})),g=t.computed(()=>({nav:!0,"farris-nav-tabs":!0,"flex-nowrap":!0,"nav-fill":e.tabType==="fill","nav-pills":e.tabType==="pills","flex-row":e.position==="top"||e.position==="bottom","flex-column":e.position==="left"||e.position==="right"})),p=t.computed(()=>({overflow:"auto"})),m=function(h){var I;h&&(h.stopPropagation(),h.preventDefault());const b=Pt("tab-page");b.id=`tab_page_${Math.random().toString().slice(2,6)}`,b.title="标题",b.toolbar={id:`${b.id}_toolbar`,buttons:[],type:"tab-toolbar"},(I=r.value.schema.contents)==null||I.push(b),u(b.id),t.nextTick(()=>{c(b.id,r.value)})};return()=>t.createVNode("div",{class:d.value,style:f.value},[t.createVNode("ul",{class:g.value,style:p.value,ref:n},[s.value.map(h=>va(e,h.props,h,a,i,r)),t.createVNode("li",{class:"nav-item no-drag add-nav-item"},[t.createVNode("a",{class:"nav-link tabs-text-truncate",title:"添加页签",onClick:h=>m(h)},[t.createVNode("i",{class:"f-icon f-icon-plus",style:"font-size: 20px;margin: 0 auto;line-height: 24px;"},null)])])])])}function Ct(e,n,o){var w;const a=o&&o.getStyles&&o.getStyles()||"",i=o&&o.getDesignerClass&&o.getDesignerClass()||"",r=t.ref();let l;function s(){return(n==null?void 0:n.schema.componentType)==="frame"?!1:o&&o.checkCanMoveComponent?o.checkCanMoveComponent():!0}function u(){return!1}function c(){return(n==null?void 0:n.schema.componentType)==="frame"?!1:o&&o.checkCanDeleteComponent?o.checkCanDeleteComponent():!0}function d(){return(n==null?void 0:n.schema.componentType)==="frame"?!0:o&&o.hideNestedPaddingInDesginerView?o.hideNestedPaddingInDesginerView():!1}function f(C){if(!C||!C.value)return null;if(C.value.schema&&C.value.schema.type==="component")return C.value;const F=t.ref(C==null?void 0:C.value.parent),B=f(F);return B||null}function g(C=n){var M;if(o!=null&&o.getDraggableDesignItemElement)return o.getDraggableDesignItemElement(C);const{componentInstance:F,designerItemElementRef:B}=C;if(!F||!F.value)return null;const{getCustomButtons:j}=F.value;return F.value.canMove||j&&((M=j())!=null&&M.length)?B:g(C.parent)}function p(C){return!!o&&o.canAccepts(C)}function m(){return(n==null?void 0:n.schema.label)||(n==null?void 0:n.schema.title)||(n==null?void 0:n.schema.name)}function h(){}function b(C,F){var B;!C||!F||(o!=null&&o.onAcceptMovedChildElement&&o.onAcceptMovedChildElement(C,F),(B=n==null?void 0:n.setupContext)==null||B.emit("dragEnd"))}function I(C,F){const{componentType:B}=C;let j=Je.getSchemaByTypeForDesigner(B,C,F);o&&o.onResolveNewComponentSchema&&(j=o.onResolveNewComponentSchema(C,j));const M=B.toLowerCase().replace(/-/g,"_");return j&&!j.id&&j.type===B&&(j.id=`${M}_${Math.random().toString().slice(2,6)}`),j}function v(C){C&&o!=null&&o.onChildElementMovedOut&&o.onChildElementMovedOut(C)}function P(...C){if(o&&o.getPropsConfig)return o.getPropsConfig(...C)}function T(C){if(!C)return;const F=n==null?void 0:n.schema,{formSchemaUtils:B}=C;if(F&&B.getExpressions().length){const j=B.getExpressions().findIndex(M=>M.target===F.id);j>-1&&B.getExpressions().splice(j,1)}}function k(C){if(!C||!(n!=null&&n.schema))return;const F=n.schema,{formSchemaUtils:B}=C;B.removeCommunicationInComponent(F)}function S(C){o&&o.onRemoveComponent&&o.onRemoveComponent(),T(C),k(C),n!=null&&n.schema.contents&&n.schema.contents.map(F=>{let B=F.id;F.type==="component-ref"&&(B=F.component);const j=e.value.querySelectorAll(`#${B}-design-item`);j!=null&&j.length&&Array.from(j).map(M=>{var D;(D=M==null?void 0:M.componentInstance)!=null&&D.value.onRemoveComponent&&M.componentInstance.value.onRemoveComponent(C)})})}function V(){if(o&&o.getCustomButtons)return o.getCustomButtons()}function y(C){var B,j;if(!((B=n==null?void 0:n.schema)!=null&&B.id))return;if(!l&&C&&(l=C.formSchemaUtils),o!=null&&o.setComponentBasicInfoMap){o.setComponentBasicInfoMap();return}let F="";if(o!=null&&o.getComponentTitle)F=o.getComponentTitle();else{const{text:M,title:D,label:$,mainTitle:O,name:A,type:L}=n.schema;F=M||D||$||O||A||((j=z[L])==null?void 0:j.name)}F&&l.getControlBasicInfoMap().set(n.schema.id,{componentTitle:F,parentPathName:F})}function N(C){var M;const{changeObject:F}=C,{propertyID:B,propertyValue:j}=F;if(["text","title","label","name","mainTitle"].includes((M=C==null?void 0:C.changeObject)==null?void 0:M.propertyID)&&B&&j&&(y(),l)){const D=l.getControlBasicInfoMap(),$=D.keys().toArray().filter(O=>{var A,L;return((A=D.get(O))==null?void 0:A.reliedComponentId)===((L=n==null?void 0:n.schema)==null?void 0:L.id)});$!=null&&$.length&&$.forEach(O=>{const A=D.get(O).parentPathName.split(" > ");A[0]=j,D.get(O).parentPathName=A.join(" > ")})}}function x(C){if(N(C),o&&o.onPropertyChanged)return o.onPropertyChanged(C)}return r.value={canMove:s(),canSelectParent:u(),canDelete:c(),canNested:!d(),contents:n==null?void 0:n.schema.contents,elementRef:e,parent:(w=n==null?void 0:n.parent)==null?void 0:w.componentInstance,schema:n==null?void 0:n.schema,styles:a,designerClass:i,canAccepts:p,getBelongedComponentInstance:f,getDraggableDesignItemElement:g,getDraggingDisplayText:m,getPropConfig:P,getDragScopeElement:h,onAcceptMovedChildElement:b,onChildElementMovedOut:v,addNewChildComponentSchema:I,triggerBelongedComponentToMoveWhenMoved:!!o&&o.triggerBelongedComponentToMoveWhenMoved||t.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:!!o&&o.triggerBelongedComponentToDeleteWhenDeleted||t.ref(!1),onRemoveComponent:S,getCustomButtons:V,onPropertyChanged:x,setComponentBasicInfoMap:y,updateContextSchema:n==null?void 0:n.updateContextSchema},r}const Ue=t.ref(0);function wa(e,n){const o=n.getBoundingClientRect(),a=e.getBoundingClientRect(),i=a.top>=o.top,r=a.top<=o.bottom;return i&&r}function Et(e){const n=e.querySelector(".component-btn-group");if(!n)return;n.style.display="";const o=n.getBoundingClientRect();if(!(o.top===0&&o.left===0)){const a=n.querySelector("div");if(a){const i=a.getBoundingClientRect();a.style.top=o.top+"px";let r=o.left-i.width;const l=document.querySelector(".editorDiv");if(l){const s=l.getBoundingClientRect();r<s.left&&({left:r}=e.getBoundingClientRect())}a.style.left=r+"px"}}}function xa(e){if(!window.scrollContainerList)return;const n=Array.from(window.scrollContainerList);if(n.length&&n.length===1){const o=n[0],a=document.querySelector(`[id=${o}]`);if(a&&a.contains(e))return a}}function Dt(e){if(!e)return;const n=e.getBoundingClientRect();if(n.width===0&&n.height===0)return;const o=e.querySelector(".component-btn-group");if(o){let a=!0;const i=xa(e);if(i&&(a=wa(e,i)),!a){o.style.display="none";return}Et(e)}}function Sa(e){if(!e)return;let n;e.className.includes("dgComponentSelected")?n=e:n=e.querySelector(".dgComponentSelected"),n&&Dt(n)}var We=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Ta(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function wt(e){throw new Error('Could not dynamically require "'+e+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var Bn={exports:{}};(function(e,n){(function(o){e.exports=o()})(function(){return function(){function o(a,i,r){function l(c,d){if(!i[c]){if(!a[c]){var f=typeof wt=="function"&&wt;if(!d&&f)return f(c,!0);if(s)return s(c,!0);var g=new Error("Cannot find module '"+c+"'");throw g.code="MODULE_NOT_FOUND",g}var p=i[c]={exports:{}};a[c][0].call(p.exports,function(m){var h=a[c][1][m];return l(h||m)},p,p.exports,o,a,i,r)}return i[c].exports}for(var s=typeof wt=="function"&&wt,u=0;u<r.length;u++)l(r[u]);return l}return o}()({1:[function(o,a,i){var r={},l="(?:^|\\s)",s="(?:\\s|$)";function u(f){var g=r[f];return g?g.lastIndex=0:r[f]=g=new RegExp(l+f+s,"g"),g}function c(f,g){var p=f.className;p.length?u(g).test(p)||(f.className+=" "+g):f.className=g}function d(f,g){f.className=f.className.replace(u(g)," ").trim()}a.exports={add:c,rm:d}},{}],2:[function(o,a,i){(function(r){var l=o("contra/emitter"),s=o("crossvent"),u=o("./classes"),c=document,d=c.documentElement;function f(w,C){var F=arguments.length;F===1&&Array.isArray(w)===!1&&(C=w,w=[]);var B,j,M,D,$,O,A,L,Q,te=null,oe,J,de=!1,ge=0,le,X=C||{};X.moves===void 0&&(X.moves=v),X.accepts===void 0&&(X.accepts=v),X.invalid===void 0&&(X.invalid=Le),X.containers===void 0&&(X.containers=w||[]),X.isContainer===void 0&&(X.isContainer=I),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 ce=l({containers:X.containers,start:ve,end:Ee,cancel:_,remove:ct,destroy:ee,canMove:ae,dragging:!1});return X.removeOnSpill===!0&&ce.on("over",Gt).on("out",Xt),q(),ce;function E(R){return ce.containers.indexOf(R)!==-1||X.isContainer(R)}function q(R){var U=R?"remove":"add";m(d,U,"mousedown",se),m(d,U,"mouseup",Ye)}function H(R){var U=R?"remove":"add";m(d,U,"mousemove",Ve)}function W(R){var U=R?"remove":"add";s[U](d,"selectstart",ie),s[U](d,"click",ie)}function ee(){q(!0),Ye({})}function ie(R){oe&&R.preventDefault()}function se(R){D=R.clientX,$=R.clientY;var U=h(R)!==1||R.metaKey||R.ctrlKey;if(!U){var G=R.target,K=be(G);K&&(oe=K,H(),R.type==="mousedown"&&(S(G)?G.focus():R.preventDefault()))}}function Ve(R){if(oe){if(h(R)===0){Ye({});return}if(!(R.clientX!==void 0&&Math.abs(R.clientX-D)<=(X.slideFactorX||0)&&R.clientY!==void 0&&Math.abs(R.clientY-$)<=(X.slideFactorY||0))){if(X.ignoreInputTextSelection){var U=x("clientX",R)||0,G=x("clientY",R)||0,K=c.elementFromPoint(U,G);if(S(K))return}var pe=oe;H(!0),W(),Ee(),Be(pe),u.add(L||M,"gu-transit"),Jt(),Yt(),ge=0,ze(R)}}}function be(R){if(!(ce.dragging&&B)&&!E(R)){for(var U=R;k(R)&&E(k(R))===!1;)if(X.invalid(R,U)||(R=k(R),!R))return;var G=k(R);if(G&&!X.invalid(R,U)){var K=X.moves(R,G,U,y(R));if(K)return{item:R,source:G}}}}function ae(R){return!!be(R)}function ve(R){var U=be(R);U&&Be(U)}function Be(R){on(R.item,R.source)&&(L=R.item.cloneNode(!0),ce.emit("cloned",L,R.item,"copy")),j=R.source,M=R.item,O=A=y(R.item),ce.dragging=!0,ce.emit("drag",M,j)}function Le(){return!1}function Ee(){if(ce.dragging){var R=L||M;st(R,k(R))}}function He(){oe=!1,H(!0),W(!0)}function Ye(R){if(He(),!!ce.dragging){var U=L||M,G=x("clientX",R)||0,K=x("clientY",R)||0,pe=b(B,G,K),me=xe(pe,G,K);me&&(L&&X.copySortSource||!L||me!==j)?st(U,me):X.removeOnSpill?ct():_()}}function st(R,U){var G=k(R);L&&X.copySortSource&&U===j&&G.removeChild(M),we(U)?ce.emit("cancel",R,j):ce.emit("drop",R,U,j,A),re()}function ct(){if(ce.dragging){var R=L||M,U=k(R);U&&U.removeChild(R),ce.emit(L?"cancel":"remove",R,U,j),re()}}function _(R){if(ce.dragging){var U=arguments.length>0?R:X.revertOnSpill,G=L||M,K=k(G),pe=we(K);pe===!1&&U&&(L?K&&K.removeChild(L):j.insertBefore(G,O)),pe||U?ce.emit("cancel",G,j,j):ce.emit("drop",G,K,j,A),re()}}function re(){var R=L||M;He(),Qt(),Zt(),R&&u.rm(R,"gu-transit"),Q&&clearTimeout(Q),ce.dragging=!1,te&&ce.emit("out",R,te,j),ce.emit("dragend",R,ge),j=M=L=O=A=Q=te=null}function we(R,U){var G;return U!==void 0?G=U:B?G=A:G=y(L||M),R===j&&G===O}function xe(R,U,G){for(var K=R;K&&!pe();)K=k(K);return K;function pe(){var me=E(K);if(me===!1)return!1;var De=Ft(K,R),Me=Bt(K,De,U,G),Pe=we(K,Me);return Pe?!0:X.accepts(M,K,j,Me)}}function ze(R){if(!B)return;R.preventDefault();var U=x("clientX",R)||0,G=x("clientY",R)||0;B.style.left=U-2+"px",B.style.top=G-2+"px";var K=L||M,pe=b(B,U,G),me=xe(pe,U,G),De=me!==null&&me!==te;(De||me===null)&&(je(),te=me,qe()),nn(pe,G);var Me=k(K);if(me===j&&L&&!X.copySortSource){Me&&Me.removeChild(K);return}var Pe,Ae=Ft(me,pe);if(de=ft(Ae,me),Ae!==null)Pe=Bt(me,Ae,U,G);else if(X.revertOnSpill===!0&&!L)Pe=O,me=j;else{L&&Me&&Me.removeChild(K),L&&J&&(J.style.display="none");return}J.style.display="block",Wt(Pe,K,De),Pe?en(Ae,Pe):tn(me);function Se(ke){ce.emit(ke,K,te,j)}function qe(){De&&Se("over")}function je(){te&&Se("out")}}function Wt(R,U,G){(R===U||R===y(U))&&(A=y(U)),(R===null&&G||R!==U&&R!==y(U))&&(A=R)}function Gt(R){u.rm(R,"gu-hide")}function Xt(R){ce.dragging&&u.add(R,"gu-hide")}function Yt(){B||(B=document.createElement("div"),B.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;",B.innerHTML=X.getMirrorText&&X.getMirrorText(M)||"控件",u.add(B,"gu-mirror"),X.mirrorContainer.appendChild(B),m(d,"add","mousemove",ze),u.add(X.mirrorContainer,"gu-unselectable"),ce.emit("cloned",B,M,"mirror"))}function Jt(){if(J=document.createElement("div"),u.add(J,"gu-insertion"),M){var R=M.getBoundingClientRect();J.style.left=R.left+"px",J.style.top=R.top+"px"}de=!1,X.mirrorContainer.appendChild(J)}function Qt(){B&&(u.rm(X.mirrorContainer,"gu-unselectable"),m(d,"remove","mousemove",ze),k(B).removeChild(B),B=null)}function Zt(){J&&(k(J).removeChild(J),J=null)}function Ft(R,U){for(var G=U;G!==R&&k(G)!==R;)G=k(G);return G===d?null:G}function ft(R,U){if(!U)return de;var G=R||U&&U.lastElementChild;if(!G)return!0;var K=getComputedStyle(R),pe=/^inline/.test(K.getPropertyValue("display"))||/^(left|right)$/.test(K.getPropertyValue("float"));if(pe)return!0;if(U){var me=getComputedStyle(U),De=me.getPropertyValue("display");if(/flex$/.test(De)){var Me=me.getPropertyValue("flex-direction")||"row";if(Me==="row"||Me==="row-reverse")return!Kt(U)}return!1}return!0}function Kt(R){if(!R.children||!R.children.length)return!1;for(const U of Array.from(R.children)){const K=(U.className&&U.className.split(" ")||[]).filter(pe=>/^col(-md|-xl|-el){0,1}-([1-9]|10|11|12)$/.test(pe));if(!K.length)return!1;for(const pe of K){const me=pe.slice(pe.lastIndexOf("-")+1);if(parseInt(me,10)!==12)return!1}}return!0}function en(R,U){const G=U.getBoundingClientRect();if(J.style.left=G.left+"px",J.style.top=G.top+"px",de){if(J.style.height=G.height+"px",J.style.width="4px",R){const K=R.getBoundingClientRect();K.top!==G.top&&(J.style.left=K.right+"px",J.style.top=K.top+"px",J.style.height=K.height+"px")}}else if(J.style.height="4px",J.style.width=G.width+"px",le){const K=le.getBoundingClientRect();G.top<K.top&&(J.style.display="none")}U===M&&M&&(J.style.display="none")}function tn(R){A=null;var U=R.lastElementChild;if(U){var G=U.getBoundingClientRect();de?(J.style.left=G.right+"px",J.style.top=G.top+"px",J.style.height=G.height+"px",J.style.width="4px"):(J.style.left=G.left+"px",J.style.top=G.bottom+"px",J.style.height="4px",J.style.width=G.width+"px"),U===M&&M&&(J.style.display="none")}else J.style.display="none"}function nn(R,U){if(!X.mirrorContainer.contains(R)||!window.scrollContainerList||!Array.from(window.scrollContainerList).length||(le=g(R),!le||!le.contains(R)))return;const G=document.querySelector(".dgComponentSelected"),K=le.getBoundingClientRect();if(U-30<K.top&&le.scrollTop>0){let pe=le.scrollTop<10?le.scrollTop:10;le.scrollBy(0,-1*pe),G&&le.contains(G)&&(ge=ge+-1*pe)}if(U+30>K.bottom&&le.scrollTop<le.scrollHeight-le.clientHeight){const pe=le.scrollHeight-le.clientHeight-le.scrollTop;let me=pe<10?pe:10;le.scrollBy(0,me),G&&le.contains(G)&&(ge=ge+me)}}function Bt(R,U,G,K){var pe=X.direction==="horizontal",me=X.direction==="mixed",De=U!==R?Pe():Me();return De;function Me(){var Se=R.children.length,qe,je,ke;for(qe=0;qe<Se;qe++)if(je=R.children[qe],ke=je.getBoundingClientRect(),pe&&ke.left+ke.width/2>G||!me&&!pe&&ke.top+ke.height/2>K||me&&ke.left+ke.width>G&&ke.top+ke.height>K)return je;return null}function Pe(){var Se=U.getBoundingClientRect();if(me){var qe=K-Se.top,je=G-Se.left,ke=Se.bottom-K,pt=Se.right-G,mt=Math.min(je,pt,qe,ke),gt;return de?gt=pt<je:gt=ke===mt||pt===mt||je===mt,Ae(gt)}return Ae(pe?G>Se.left+P(Se)/2:K>Se.top+T(Se)/2)}function Ae(Se){return Se?y(U):U}}function on(R,U){return typeof X.copy=="boolean"?X.copy:X.copy(R,U)}}function g(w){const C=Array.from(window.scrollContainerList);if(C.length===1){const B=Array.from(window.scrollContainerList)[0];return document.getElementById(B)}const F=p(C);for(const B of F)if(B.contains(w))return B;return null}function p(w){const C=[];return w.forEach(F=>{const B=document.getElementById(F);B&&C.push(B)}),C.sort((F,B)=>F.contains(B)?1:B.contains(F)?-1:0),C}function m(w,C,F,B){var j={mouseup:"touchend",mousedown:"touchstart",mousemove:"touchmove"},M={mouseup:"pointerup",mousedown:"pointerdown",mousemove:"pointermove"},D={mouseup:"MSPointerUp",mousedown:"MSPointerDown",mousemove:"MSPointerMove"};r.navigator.pointerEnabled?s[C](w,M[F],B):r.navigator.msPointerEnabled?s[C](w,D[F],B):(s[C](w,j[F],B),s[C](w,F,B))}function h(w){if(w.touches!==void 0)return w.touches.length;if(w.which!==void 0&&w.which!==0)return w.which;if(w.buttons!==void 0)return w.buttons;var C=w.button;if(C!==void 0)return C&1?1:C&2?3:C&4?2:0}function b(w,C,F){w=w||{};var B=w.className||"",j;return w.className+=" gu-hide",j=c.elementFromPoint(C,F),w.className=B,j}function I(){return!1}function v(){return!0}function P(w){return w.width||w.right-w.left}function T(w){return w.height||w.bottom-w.top}function k(w){return w.parentNode===c?null:w.parentNode}function S(w){return w.tagName==="INPUT"||w.tagName==="TEXTAREA"||w.tagName==="SELECT"||V(w)}function V(w){return!w||w.contentEditable==="false"?!1:w.contentEditable==="true"?!0:V(k(w))}function y(w){return w.nextElementSibling||C();function C(){var F=w;do F=F.nextSibling;while(F&&F.nodeType!==1);return F}}function N(w){return w.targetTouches&&w.targetTouches.length?w.targetTouches[0]:w.changedTouches&&w.changedTouches.length?w.changedTouches[0]:w}function x(w,C){var F=N(C),B={pageX:"clientX",pageY:"clientY"};return w in B&&!(w in F)&&B[w]in F&&(w=B[w]),F[w]}a.exports=f}).call(this,typeof We<"u"?We:typeof self<"u"?self:typeof window<"u"?window:{})},{"./classes":1,"contra/emitter":5,crossvent:6}],3:[function(o,a,i){a.exports=function(l,s){return Array.prototype.slice.call(l,s)}},{}],4:[function(o,a,i){var r=o("ticky");a.exports=function(s,u,c){s&&r(function(){s.apply(c||null,u||[])})}},{ticky:10}],5:[function(o,a,i){var r=o("atoa"),l=o("./debounce");a.exports=function(u,c){var d=c||{},f={};return u===void 0&&(u={}),u.on=function(g,p){return f[g]?f[g].push(p):f[g]=[p],u},u.once=function(g,p){return p._once=!0,u.on(g,p),u},u.off=function(g,p){var m=arguments.length;if(m===1)delete f[g];else if(m===0)f={};else{var h=f[g];if(!h)return u;h.splice(h.indexOf(p),1)}return u},u.emit=function(){var g=r(arguments);return u.emitterSnapshot(g.shift()).apply(this,g)},u.emitterSnapshot=function(g){var p=(f[g]||[]).slice(0);return function(){var m=r(arguments),h=this||u;if(g==="error"&&d.throws!==!1&&!p.length)throw m.length===1?m[0]:m;return p.forEach(function(I){d.async?l(I,m,h):I.apply(h,m),I._once&&u.off(g,I)}),u}},u}},{"./debounce":4,atoa:3}],6:[function(o,a,i){(function(r){var l=o("custom-event"),s=o("./eventmap"),u=r.document,c=g,d=m,f=[];r.addEventListener||(c=p,d=h),a.exports={add:c,remove:d,fabricate:b};function g(k,S,V,y){return k.addEventListener(S,V,y)}function p(k,S,V){return k.attachEvent("on"+S,v(k,S,V))}function m(k,S,V,y){return k.removeEventListener(S,V,y)}function h(k,S,V){var y=P(k,S,V);if(y)return k.detachEvent("on"+S,y)}function b(k,S,V){var y=s.indexOf(S)===-1?x():N();k.dispatchEvent?k.dispatchEvent(y):k.fireEvent("on"+S,y);function N(){var w;return u.createEvent?(w=u.createEvent("Event"),w.initEvent(S,!0,!0)):u.createEventObject&&(w=u.createEventObject()),w}function x(){return new l(S,{detail:V})}}function I(k,S,V){return function(N){var x=N||r.event;x.target=x.target||x.srcElement,x.preventDefault=x.preventDefault||function(){x.returnValue=!1},x.stopPropagation=x.stopPropagation||function(){x.cancelBubble=!0},x.which=x.which||x.keyCode,V.call(k,x)}}function v(k,S,V){var y=P(k,S,V)||I(k,S,V);return f.push({wrapper:y,element:k,type:S,fn:V}),y}function P(k,S,V){var y=T(k,S,V);if(y){var N=f[y].wrapper;return f.splice(y,1),N}}function T(k,S,V){var y,N;for(y=0;y<f.length;y++)if(N=f[y],N.element===k&&N.type===S&&N.fn===V)return y}}).call(this,typeof We<"u"?We:typeof self<"u"?self:typeof window<"u"?window:{})},{"./eventmap":7,"custom-event":8}],7:[function(o,a,i){(function(r){var l=[],s="",u=/^on/;for(s in r)u.test(s)&&l.push(s.slice(2));a.exports=l}).call(this,typeof We<"u"?We:typeof self<"u"?self:typeof window<"u"?window:{})},{}],8:[function(o,a,i){(function(r){var l=r.CustomEvent;function s(){try{var u=new l("cat",{detail:{foo:"bar"}});return u.type==="cat"&&u.detail.foo==="bar"}catch{}return!1}a.exports=s()?l: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 We<"u"?We:typeof self<"u"?self:typeof window<"u"?window:{})},{}],9:[function(o,a,i){var r=a.exports={},l,s;function u(){throw new Error("setTimeout has not been defined")}function c(){throw new Error("clearTimeout has not been defined")}(function(){try{typeof setTimeout=="function"?l=setTimeout:l=u}catch{l=u}try{typeof clearTimeout=="function"?s=clearTimeout:s=c}catch{s=c}})();function d(T){if(l===setTimeout)return setTimeout(T,0);if((l===u||!l)&&setTimeout)return l=setTimeout,setTimeout(T,0);try{return l(T,0)}catch{try{return l.call(null,T,0)}catch{return l.call(this,T,0)}}}function f(T){if(s===clearTimeout)return clearTimeout(T);if((s===c||!s)&&clearTimeout)return s=clearTimeout,clearTimeout(T);try{return s(T)}catch{try{return s.call(null,T)}catch{return s.call(this,T)}}}var g=[],p=!1,m,h=-1;function b(){!p||!m||(p=!1,m.length?g=m.concat(g):h=-1,g.length&&I())}function I(){if(!p){var T=d(b);p=!0;for(var k=g.length;k;){for(m=g,g=[];++h<k;)m&&m[h].run();h=-1,k=g.length}m=null,p=!1,f(T)}}r.nextTick=function(T){var k=new Array(arguments.length-1);if(arguments.length>1)for(var S=1;S<arguments.length;S++)k[S-1]=arguments[S];g.push(new v(T,k)),g.length===1&&!p&&d(I)};function v(T,k){this.fun=T,this.array=k}v.prototype.run=function(){this.fun.apply(null,this.array)},r.title="browser",r.browser=!0,r.env={},r.argv=[],r.version="",r.versions={};function P(){}r.on=P,r.addListener=P,r.once=P,r.off=P,r.removeListener=P,r.removeAllListeners=P,r.emit=P,r.prependListener=P,r.prependOnceListener=P,r.listeners=function(T){return[]},r.binding=function(T){throw new Error("process.binding is not supported")},r.cwd=function(){return"/"},r.chdir=function(T){throw new Error("process.chdir is not supported")},r.umask=function(){return 0}},{}],10:[function(o,a,i){(function(r){var l=typeof r=="function",s;l?s=function(u){r(u)}:s=function(u){setTimeout(u,0)},a.exports=s}).call(this,o("timers").setImmediate)},{timers:11}],11:[function(o,a,i){(function(r,l){var s=o("process/browser.js").nextTick,u=Function.prototype.apply,c=Array.prototype.slice,d={},f=0;i.setTimeout=function(){return new g(u.call(setTimeout,window,arguments),clearTimeout)},i.setInterval=function(){return new g(u.call(setInterval,window,arguments),clearInterval)},i.clearTimeout=i.clearInterval=function(p){p.close()};function g(p,m){this._id=p,this._clearFn=m}g.prototype.unref=g.prototype.ref=function(){},g.prototype.close=function(){this._clearFn.call(window,this._id)},i.enroll=function(p,m){clearTimeout(p._idleTimeoutId),p._idleTimeout=m},i.unenroll=function(p){clearTimeout(p._idleTimeoutId),p._idleTimeout=-1},i._unrefActive=i.active=function(p){clearTimeout(p._idleTimeoutId);var m=p._idleTimeout;m>=0&&(p._idleTimeoutId=setTimeout(function(){p._onTimeout&&p._onTimeout()},m))},i.setImmediate=typeof r=="function"?r:function(p){var m=f++,h=arguments.length<2?!1:c.call(arguments,1);return d[m]=!0,s(function(){d[m]&&(h?p.apply(null,h):p.call(null),i.clearImmediate(m))}),m},i.clearImmediate=typeof l=="function"?l:function(p){delete d[p]}}).call(this,o("timers").setImmediate,o("timers").clearImmediate)},{"process/browser.js":9,timers:11}]},{},[2])(2)})})(Bn);var Na=Bn.exports;const xt=Ta(Na),Ia={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}},Va={showCloseButton:{type:Boolean,default:!0},animate:{type:String,default:"fadeIn"},options:{type:Object}},Ot=t.defineComponent({name:"Toast",props:Va,emits:["close","click"],setup:(e,n)=>{const{locale:o,t:a}=Oe.useI18n(),i=t.ref(e.animate),r="fadeOut",l=t.computed(()=>e.options),s=t.ref(!1),u=t.computed(()=>l.value.title&&l.value.message),c=t.computed(()=>!l.value.title&&l.value.message),d=t.computed(()=>{const T={animated:s.value,toast:!0,"toast--only-content":!u.value};return T[e.animate]=!1,T[r]=s.value,T["toasty-type-"+l.value.type]=!0,l.value.theme&&(T[l.value.theme]=!0),T}),f=t.computed(()=>{const S=`f-icon-${l.value&&l.value.type?l.value.type.replace("toasty-type-",""):"default"}`,V={"f-icon":!0};return V[S]=!0,V}),g=t.computed(()=>l.value.title||l.value.message),p=t.computed(()=>e.showCloseButton),m=t.computed(()=>!!l.value.buttons||!!n.slots.default),h=t.computed(()=>o.value==="en"?{wordBreak:"keep-all",overflowWrap:"break-word"}:{});function b(T){T.stopPropagation(),T.preventDefault(),s.value=!1,setTimeout(()=>{n.emit("close",l.value)},200)}function I(T,k){}function v(T){return`f-preten-link ${T.customClass?T.customClass:""}`}t.watch(i,()=>{i.value});const P=()=>{var T;return t.createVNode(t.Fragment,null,[t.createVNode("div",{class:"after-toast-msg text-right"},[!n.slots.default&&((T=l.value.buttons)==null?void 0:T.map(k=>t.createVNode("span",{class:v(k),onClick:S=>void 0},[k.text]))),n.slots.default&&n.slots.default()])])};return()=>t.createVNode("div",{class:d.value,style:"min-height:44px"},[p.value&&t.createVNode("button",{title:a("messageBox.close"),class:"toast-close f-btn-icon f-bare",onClick:b},[t.createVNode("span",{class:"f-icon modal_close"},null)]),g.value&&t.createVNode("section",{class:"modal-tips"},[!u.value&&t.createVNode("div",{class:"float-left modal-tips-iconwrap"},[t.createVNode("span",{class:f.value},null)]),t.createVNode("div",{class:"modal-tips-content"},[u.value&&t.createVNode(t.Fragment,null,[t.createVNode("h5",{class:"toast-title modal-tips-title",innerHTML:l.value.title},null),t.createVNode("p",{class:"toast-msg",innerHTML:l.value.message,style:h.value},null),m.value&&P()]),c.value&&(l.value.buttons?t.createVNode("div",{class:"toast-title-btns-wrapper d-flex"},[t.createVNode("h5",{class:"toast-title modal-tips-title only-toast-msg",style:h.value,innerHTML:l.value.message},null),t.createVNode("div",{class:"after-toast-title text-right ml-auto"},[P()])]):t.createVNode("h5",{class:"toast-title modal-tips-title only-toast-msg",style:h.value,innerHTML:l.value.message},null))])])])}}),St=t.defineComponent({name:"Notify",props:Ia,emits:["close","empty"],setup(e,n){const o=t.computed(()=>({"farris-notify":!0})),a={left:12,right:12,top:20,bottom:12},i=t.ref(),r=t.ref(e.options),l=t.ref(e.showCloseButton),s=t.computed(()=>e.position||"bottom-right"),u=t.computed(()=>e.timeout!=null?e.timeout:3e3),c=t.computed(()=>{const g=e.bottom?e.bottom:a.bottom,p=e.top?e.top:a.top,m={transition:"all 0.2s ease",left:s.value.indexOf("left")>-1?`${e.left?e.left:a.left}px`:"",right:s.value.indexOf("right")>-1?`${e.right?e.right:a.right}px`:"",top:s.value.indexOf("top")>-1?`${p}px`:"",bottom:s.value.indexOf("bottom")>-1?`${g}px`:""};return s.value.indexOf("center")>-1&&(m.left="50%",m.marginLeft="calc(-24rem / 2)",s.value==="center-center"&&(m.top="50%",m.transform="translate(-50%, -50%)")),m});function d(g){n.emit("close")}u.value&&setTimeout(()=>{d()},u.value),n.expose({closeToast:d,container:i,notifyPosition:s});function f(g,p){d()}return()=>t.createVNode("div",{class:o.value,style:c.value,ref:i},[t.createVNode(Ot,{options:r.value,showCloseButton:l.value,animate:e.animate,onClose:g=>f(g,r.value)},null)])}});class Mn{constructor(){fe(this,"notifyRefs",[]);fe(this,"globalConfig",t.reactive({}))}escapeAllHtml(n){if(typeof n!="string"||!n)return"";const o=document.createElement("div");return o.textContent=n||"",o.innerHTML.replace(/\\n/g,"<br>").replace(/\\t/g," ").replace(/\\r/g,"")}createNotifyInstance(n){const o=this,i=Object.assign({timeout:3e3,position:"bottom-right",showCloseButton:!0,safeHtml:!0},this.globalConfig,{...n}),r=document.createElement("div");r.style.display="contents";const l=t.createApp({setup(){var c;const s=t.ref();function u(){s.value.container.style.transform="scale(0)",setTimeout(()=>{o.updateNotifyPositionForClose(i,s),l.unmount()},220)}if(i.position.indexOf("top")>-1){const d=o.getNotifyInstances(i.position),f=d[d.length-1];if(f){const g=f.value.container.getBoundingClientRect();i.top=g.bottom}}return i.safeHtml&&((c=i.options)!=null&&c.message)&&(i.options.message=o.escapeAllHtml(i.options.message)),t.onUnmounted(()=>{document.body.removeChild(r)}),t.onMounted(()=>{o.updateNotifyPositionForCreate(i,s)}),()=>t.createVNode(t.Transition,{mode:"out-in",name:"fade",appear:!0},{default:()=>[t.createVNode(St,t.mergeProps({ref:s},i,{onClose:u}),null)]})}});return l.provide("NotifyService",this),document.body.appendChild(r),l.use(Qe.LocaleService.i18n),l.mount(r),l}getNotifyInstances(n){return this.notifyRefs.filter(o=>o.value.notifyPosition===n)}updateNotifyPositionForCreate(n,o){if(this.notifyRefs&&this.notifyRefs.length){const a=window.innerHeight;n.position.indexOf("bottom")>-1&&this.getNotifyInstances(n.position).forEach(i=>{const r=i.value.container.getBoundingClientRect();i.value.container.style.bottom=r.height+a-r.bottom+"px"})}this.notifyRefs=[...this.notifyRefs,o]}updateNotifyPositionForClose(n,o){const a=this.notifyRefs.indexOf(o);if(n.position.indexOf("top")>-1){const i=this.getNotifyInstances(n.position),r=i.indexOf(o);i.slice(r+1).forEach(l=>{l.value.container.style.top=l.value.container.offsetTop-l.value.container.offsetHeight+"px"})}a>-1&&this.notifyRefs.splice(a,1)}show(n){return this.createNotifyInstance(n)}buildNotifyProps(n,o){let a="",i="",r,l,s;typeof o=="string"?a=o:o&&(a=o.message||"",i=o.title||"",l=o.position||null,s=o.showCloseButton!=null?o.showCloseButton:null,r=o.timeout!=null?o.timeout:null);const c={options:{type:n,message:a,title:i}};return l!=null&&(c.position=l),s!=null&&(c.showCloseButton=s),r!=null&&(c.timeout=r),c}info(n){const o=this.buildNotifyProps("info",n);return this.show(o)}success(n){const o=this.buildNotifyProps("success",n);return this.show(o)}warning(n){const o=this.buildNotifyProps("warning",n);return this.show(o)}error(n){const o=this.buildNotifyProps("error",n);return this.show(o)}close(n){n&&n.unmount()}closeAll(){this.notifyRefs.forEach(n=>{n==null||n.value.closeToast()}),this.notifyRefs.length=0}}const Pn=Symbol("NOTIFY_SERVICE_TOKEN");St.install=e=>{e.component(St.name,St),e.component(Ot.name,Ot);const n=new Mn;e.provide(Pn,n),e.provide("FNotifyService",n)},`${Qe.LocaleService.getLocaleValue("datagrid.loadingMessage")}`;const ka={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:Qe.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 Fa(e,n,o,a,i,r,l,s,u,c,d,f,g,p,m,h,b){const{calculateCellPositionInRow:I}=r,{columnContext:v,hasLeftFixedColumn:P,hasRightFixedColumn:T}=l,{gridDataStyle:k,leftFixedGridDataStyle:S,rightFixedGridDataStyle:V}=p,{renderDataRow:y}=Z.getHierarchyRow(e,n,v,b,s,u,c,d,f,g,p,m,h),N=[y];function x(j,M){const D=I(j);return b.value.filter($=>$.visible!==!1).map(($,O)=>N[$.type]($,D,M,O))}function w(){return t.createVNode("div",{ref:a,class:"fv-grid-content-left-fixed"},[t.createVNode("div",{class:"fv-grid-data",style:S.value},[x(v.value.leftColumns.filter(j=>j.visible),"left")])])}function C(){return t.createVNode("div",{ref:o,class:"fv-grid-content-primary"},[t.createVNode("div",{class:"fv-grid-data",style:k.value},[x(v.value.primaryColumns.filter(j=>j.visible),"primary")])])}function F(){return t.createVNode("div",{ref:i,class:"fv-grid-content-right-fixed"},[t.createVNode("div",{class:"fv-grid-data",style:V.value},[x(v.value.rightColumns.filter(j=>j.visible),"right")])])}function B(){const j=[];return P.value&&j.push(w()),j.push(C()),T.value&&j.push(F()),j}return{renderDataArea:B}}const Ba=t.defineComponent({name:"FTreeGrid",props:ka,emits:["selectionChange","clickRow","expandNode","unSelectItem","dblclickNode","doubleClickRow","unSelectItem","selectItem","filterChanged","sortChanged","selectionUpdate"],setup(e,n){var mo,go;const a=((mo=e.rowOption)==null?void 0:mo.height)||28,i=t.ref(20),r=t.ref(e.columns),l=Z.useIdentify(e),{idField:s}=l,u=t.ref(),c=t.ref(),d=t.ref(),f=t.ref(),g=t.ref(),p=t.ref([]),m=t.ref(!1),h=t.ref(((go=e.rowOption)==null?void 0:go.wrapContent)||!1),b=Z.useGroupData(e,l),I=Z.useFilter(e,n),v=Z.useHierarchy(e),{collapseField:P}=v,{showLoading:T,renderLoading:k}=Z.useLoading(e,u),S=Z.useDataView(e,new Map,I,v,l),{dataView:V}=S,y=Z.useSelection(e,S,l,p,n),{showSelection:N,selectedValues:x}=y,w=Z.useSelectHierarchyItem(e,p,S,l,y,n),C=t.computed(()=>e.disabled),F=t.computed(()=>e.virtualized?Math.min(S.dataView.value.length,i.value):S.dataView.value.length),B=Z.usePagination(e,S),{shouldRenderPagination:j}=B,{containerStyleObject:M}=Z.useDataViewContainerStyle(e),D=Z.useCommandColumn(e),{applyCommands:$}=D;$(r);const{applyColumnSetting:O,removeColumnSetting:A}=Z.useSettingColumn(e);e.showSetting&&O(r);const L=Z.useColumn(e,n),Q=Z.useSort(e),{applyColumnSorter:te,columnContext:oe,updateColumnRenderContext:J}=L;te(S,Q);const de=Z.useGroupColumn(e,oe),ge=Z.useRow(e,n,y,l),le=Z.useEdit(e,n,l,ge,p),X=Z.useVisualDataBound(e),ce=Z.useVisualDataCell(e,le,X),E=Z.useVisualDataRow(e,S,le,v,l,X,ce),q=Z.useVisualData(e,r,S,F,0,E),{getVisualData:H}=q,W=Z.useCellPosition(e,oe),ee=Z.useSidebar(e,y),{sidebarWidth:ie}=ee,se=Z.useVirtualScroll(e,S,p,oe,q,F,0,ie),{onWheel:Ve,dataGridWidth:be,viewPortHeight:ae,viewPortWidth:ve,resetScroll:Be,updateVisibleRowsOnLatestVisibleScope:Le}=se,Ee=Z.useFitColumn(e,oe,c,ve,de),{calculateColumnsSize:He}=Ee,Ye=Z.useFilterHistory(),st=Z.useColumnFilter(c,g,S,Ye,se),ct=Z.useDragColumn(e,n,L,S,de,b,se),_=t.computed(()=>{const Y={"fv-grid":!0,"fv-grid-bordered":e.showBorder,"fv-grid-horizontal-bordered":e.showHorizontalLines,"fv-datagrid-strip":e.showStripe};return ye.getCustomClass(Y,e.customClass)}),re=t.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":m.value,"fv-grid-wrap-content":h.value})),{renderDataArea:we}=Fa(e,n,d,f,g,W,L,S,le,v,ge,y,w,se,q,X,p),{renderGridHeader:xe,renderGridColumnResizeOverlay:ze,shouldShowHeader:Wt}=Z.getColumnHeader(e,n,c,f,g,L,S,ct,st,I,Ye,Ee,de,y,ee,Q,se,ve,p),{renderDataGridSidebar:Gt}=Z.getSidebar(e,ge,y,ee,se),{renderDisableMask:Xt}=Z.getDisableMask(),{renderHorizontalScrollbar:Yt}=Z.getHorizontalScrollbar(e,c,se),{renderVerticalScrollbar:Jt}=Z.getVerticalScrollbar(e,c,se);function Qt(){var Y,ne,Te;if(c.value&&c.value.clientHeight>0&&((Y=c.value)==null?void 0:Y.clientWidth)>0){const Fe=Math.ceil(c.value.clientHeight/a);Fe>i.value&&(i.value=Fe,Le()),ae.value=((ne=d.value)==null?void 0:ne.clientHeight)||0,be.value=((Te=c.value)==null?void 0:Te.clientWidth)||0,He()}}t.onMounted(()=>{c.value&&(i.value=Math.max(Math.ceil(c.value.clientHeight/a),i.value),p.value=H(0,F.value+0-1),vo.useResizeObserver(c.value,Qt),He(),t.nextTick(()=>{c.value&&(be.value=c.value.clientWidth),d.value&&(ve.value=d.value.clientWidth,ae.value=d.value.clientHeight)})),T.value&&k()}),t.onUnmounted(()=>{}),t.watch(ve,()=>{c.value&&He()});function Zt(Y){S.collapseTo(Y),S.reOrderVisibleIndex(),Be()}function Ft(Y){S.expandTo(Y),S.reOrderVisibleIndex(),Be()}function ft(){const Y=y.getSelectionRow();return Y?Y.dataIndex-1:-1}function Kt(){const Y=ft();S.insertNewDataItem(Y),p.value=H(0,F.value+0-1)}function en(){const Y=ft();S.insertNewChildDataItem(Y),p.value=H(0,F.value+0-1)}function tn(Y,ne){const Te=p.value.find($e=>$e.raw[s.value]===ne),Fe=Te?Te.dataIndex-1:-1;S.insertNewChildDataItems(Y,Fe)}function nn(){const Y=ft(),ne=w.getNextSelectableHierarchyItemId(Y);S.removeHierarchyDataItem(Y),p.value=H(0,F.value+0-1),ne&&w.selectItemById(ne)}function Bt(Y){le.onEditingRow(Y)}function on(Y){le.acceptEditingRow(Y)}function R(Y){le.cancelEditingRow(Y)}function U(Y){Y&&(r.value=Y,$(r),J(r.value),te(S,Q),He())}t.watch(()=>e.columns,Y=>{U(Y)});function G(Y,ne){Y&&(S.load(Y),S.reOrderVisibleIndex(),ne!=null&&ne.keepScrollPosition?se.scrollTo(se.offsetY.value):Be())}function K(Y){w.selectItemById(Y)}function pe(Y){const ne=p.value.find(Te=>Te.raw[l.idField.value]===Y);ne&&ge.clickRowItem(ne)}function me(Y){ge.activeRowById(Y)}function De(Y){w.selectItemByIds(Y)}function Me(){return y.getSelectedItems()}function Pe(){y.clearSelection()}const Ae=t.computed(()=>!p.value||!p.value.length),{renderEmpty:Se}=Z.getEmpty(e,n);function qe(){return y.getSelectionRow()}function je(Y){w.unSelectItemByIds(Y)}function ke(){return y.currentSelectedDataId.value}function pt(Y,ne,Te){const Fe=V.value.find($e=>$e[s.value]===Y);if(Fe){if(Object.keys(Fe).forEach(Ne=>{Object.prototype.hasOwnProperty.call(ne,Ne)&&(Fe[Ne]=ne[Ne])}),Te){const{collapseField:Ne,disabledField:ot,checkedField:at,visibleField:it}=Te;Ne&&!he.isUndefined(ne[Ne])&&(Fe.__fv_collapse__=ne[Ne]),at&&!he.isUndefined(ne[at])&&(Fe.__fv_checked__=ne[at]),ot&&!he.isUndefined(ne[ot])&&(Fe.__fv_disabled__=ne[ot]),it&&!he.isUndefined(ne[it])&&(Fe.__fv_visible__=ne[it])}const $e=p.value.find(Ne=>Ne.raw[s.value]===Y),ho=p.value.findIndex(Ne=>Ne.raw[s.value]===Y);if($e){if($e.raw=Fe,Object.keys($e.data).forEach(Ne=>{$e.data[Ne].updateData(Fe)}),Te){const{collapseField:Ne,disabledField:ot,checkedField:at,visibleField:it}=Te;Ne&&!he.isUndefined(ne[Ne])&&($e.collapse=ne[Ne]),at&&!he.isUndefined(ne[at])&&($e.checked=ne[at]),ot&&!he.isUndefined(ne[ot])&&($e.disabled=ne[ot]),it&&!he.isUndefined(ne[it])&&($e.visible=ne[it])}p.value=[...p.value.slice(0,ho),$e,...p.value.slice(ho+1)],S.updateSummary()}}}function mt(Y){return Object.prototype.hasOwnProperty.call(Y,"raw")?S.hasRealChildren(Y.raw):S.hasRealChildren(Y)}function gt(Y){const ne=S.dataView.value.find(Te=>Te[s.value]===Y);return ne?ne[P.value]:""}function Ur(){return P.value}t.watch(()=>e.showSetting,(Y,ne)=>{Y!==ne&&(Y?O(r):A(r),U(r.value))});function Wr(Y){return p.value.filter(ne=>Y.includes(ne.raw[e.idField]))}function Gr(Y){const ne=l.idField.value,Te=p.value.find(Fe=>Fe.raw[ne]===Y);Te&&ge.changeRow(Te)}function Xr(){y.keepSelectingOnPaging.value||Pe(),S.updateVisibleDataSummary(p.value)}n.expose({activeRowById:me,addNewDataItem:Kt,addNewChildDataItem:en,addChildrenToNode:tn,collapseTo:Zt,expandTo:Ft,removeDataItem:nn,editDataItem:Bt,acceptDataItem:on,cancelDataItem:R,updateColumns:U,updateDataSource:G,selectItemById:K,selectItemByIds:De,getSelectedItems:Me,clearSelection:Pe,getSelectionRow:qe,clickRowItemById:pe,unSelectItemByIds:je,getCurrentRowId:ke,reassignRowData:pt,hasChildren:mt,getCollapseField:Ur,getCollapseStatusById:gt,getVisibleDataByIds:Wr,selectRowById:Gr,updateDerivedData:Xr});const Yr=t.computed(()=>{const Y={};return se.shouldShowHorizontalScrollbar.value&&(Y.paddingBottom="10px"),se.shouldShowVirticalScrollbar.value&&(Y.paddingRight="10px"),Y}),Jr=t.computed(()=>({...M.value,borderRadius:"5px"}));Z.getPagination(e,n,S,se,B,y);const Qr=t.computed(()=>({"d-flex":!0,"justify-content-between":j.value&&N.value,"justify-content-end":j.value&&!N.value,"position-relative":!0})),Zr=t.computed(()=>({"d-flex":!0,"align-items-center":!0})),{renderDataGridSummary:Kr}=Z.getSummary(e,S,L);return()=>t.createVNode("div",{ref:u,class:_.value,style:Jr.value,onWheel:Ve},[c.value&&Wt.value&&xe(),t.createVNode("div",{ref:c,class:re.value,onMouseover:()=>m.value=!0,onMouseleave:()=>m.value=!1,style:Yr.value},[c.value&&Gt(p),c.value&&we(),c.value&&Ae.value&&Se(),c.value&&Yt(),c.value&&Jt()]),c.value&&Kr(),N.value&&t.createVNode("div",{class:Qr.value},[N.value&&t.createVNode("div",{class:Zr.value},[t.createVNode("div",null,["已选:"+x.value.length,t.createTextVNode(" 条")])])]),ze(),C.value&&Xt()])}});ye.withInstall(Ba);const Ma=new Map([["appearance",_e]]);function Pa(e,n,o){return n}Ie({direction:{type:String,default:"horizontal"},fill:{type:Boolean,default:!1},height:{type:Number,default:0},clickable:{type:Boolean,default:!0},steps:{type:Array,default:[{id:"1",title:"审批中(示例)",description:"正在审批"},{id:"2",title:"复核中(示例)",description:"等待复核"}]},activeIndex:{type:Number,default:0},onClick:{type:Function,default:()=>{}}},{$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/step.schema.json",title:"step",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for step",type:"string"},type:{description:"The type string of step",type:"string",default:"step"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disable:{type:"string",default:!1},editable:{description:"",type:"boolean",default:!0},placeholder:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},require:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},visible:{description:"",type:"boolean",default:!0}},required:["id","type"]},Ma,Pa,{title:"step",description:"A Farris Component",type:"object",categories:{basic:{description:"Basic Infomation",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"waiting for modification",enum:[]}}}}}});const Rt=new Map([["appearance",_e]]),ja=new Map([]),$a="root-viewmodel";class Ea{constructor(n,o){fe(this,"formSchemaUtils");fe(this,"controlCreatorUtils");fe(this,"designViewModelUtils");this.resolver=n,this.designerHostService=o,this.formSchemaUtils=this.designerHostService.formSchemaUtils,this.controlCreatorUtils=this.designerHostService.controlCreatorUtils,this.designViewModelUtils=this.designerHostService.designViewModelUtils}createComponent(n){const o=this.createComponentRefNode(n),a=this.createComponentNode(n),i=this.createViewModeNode(n),r=this.formSchemaUtils.getFormSchema();return r.module.viewmodels.push(i),r.module.components.push(a),this.designViewModelUtils.assembleDesignViewModel(),o}createComponentRefNode(n){const o=this.resolver.getSchemaByType("component-ref");return Object.assign(o,{id:`${n.componentId}-component-ref`,component:`${n.componentId}-component`}),o}createComponentNode(n){const o=this.resolver.getSchemaByType("component"),a=this.createFormComponentContents(n);return Object.assign(o,{id:`${n.componentId}-component`,viewModel:`${n.componentId}-component-viewmodel`,componentType:n.componentType,appearance:{class:this.getFormComponentClass()},formColumns:n.formColumns,contents:a}),o}getFormComponentClass(){const{templateId:n}=this.formSchemaUtils.getFormSchema().module;return n==="double-list-in-tab-template"?"f-struct-wrapper f-utils-fill-flex-column":"f-struct-wrapper"}createFormComponentContents(n){const o=this.resolver.getSchemaByType("section");Object.assign(o,{id:n.componentId+"-form-section",appearance:{class:"f-section-form f-section-in-mainsubcard"},mainTitle:n.componentName});const a=this.resolver.getSchemaByType("response-form"),i=[];Object.assign(a,{id:n.componentId+"-form",appearance:{class:"f-form-layout farris-form farris-form-controls-inline"},contents:i}),o.contents=[a];const{selectedFields:r}=n;r==null||r.forEach(s=>{if(s.$type===ye.FormSchemaEntityField$Type.SimpleField){const u=he.cloneDeep(s),c=this.resolveControlClassByFormColumns(n),d=this.controlCreatorUtils.setFormFieldProperty(u,"",c);d&&i.push(d)}});const{templateId:l}=this.formSchemaUtils.getFormSchema().module;return l==="double-list-in-tab-template"&&(o.appearance.class="f-section-grid f-section-in-main px-0 pt-0",o.fill=!0),[o]}resolveControlClassByFormColumns(n){let o="";switch(n.formColumns){case 1:{o="col-12";break}case 2:{o="col-12 col-md-6 col-xl-6 col-el-6";break}case 3:{o="col-12 col-md-6 col-xl-4 col-el-4";break}case 4:{o="col-12 col-md-6 col-xl-3 col-el-2";break}}return o}createViewModeNode(n){return{id:`${n.componentId}-component-viewmodel`,code:`${n.componentId}-component-viewmodel`,name:n.componentName,bindTo:n.bindTo,parent:$a,fields:this.assembleViewModelFields(n),commands:[],states:[],enableValidation:!0}}assembleViewModelFields(n){const o=[],{selectedFields:a}=n;return a==null||a.forEach(i=>{if(i.$type===ye.FormSchemaEntityField$Type.SimpleField){let r="blur";const l=i.type.name;(l===ye.FormSchemaEntityFieldTypeName.Enum||l===ye.FormSchemaEntityFieldTypeName.Boolean)&&(r="change"),o.push({type:"Form",id:i.id,fieldName:i.bindingField,groupId:null,groupName:null,updateOn:r,fieldSchema:{}})}}),o}}function Da(e,n,o,a){var r,l,s,u,c,d;const i=o.parentComponentInstance;if(i&&a){const f=(r=i.schema)==null?void 0:r.type,p={componentId:`form-${Math.random().toString(36).slice(2,6)}`,componentName:((l=o.bindingSourceContext)==null?void 0:l.entityTitle)||((u=(s=o.bindingSourceContext)==null?void 0:s.bindingEntity)==null?void 0:u.name)||"标题",componentType:"form",formColumns:f==="splitter-pane"?1:4,parentContainerId:i.schema.id,bindTo:((c=o.bindingSourceContext)==null?void 0:c.bindTo)||"/",selectedFields:(d=o.bindingSourceContext)==null?void 0:d.bindingEntityFields};return new Ea(e,a).createComponent(p)}else return n}function Oa(e,n,o){return n}Ie({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"]},Rt,Da);const jn={$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"]};Ie({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}},jn,Rt,void 0);function Ra(){function e(n,o){var l;if(!n)return!1;const a=((l=n.targetContainer)==null?void 0:l.componentInstance)&&n.targetContainer.componentInstance.value;if(!a)return!1;const i=a.schema.type,r=o==null?void 0:o.formSchemaUtils.getComponentById(a.belongedComponentId);return!((n.componentCategory==="input"||n.componentType==="form-group")&&![z["response-layout-item"].type,z["response-form"].type,z.fieldset.type].includes(i)||(n.componentType===z.tabs.type||n.componentType===z.section.type)&&((r==null?void 0:r.componentType)!=="frame"||![z["content-container"].type,z["splitter-pane"].type,z["response-layout-item"].type].includes(i))||[z["query-solution"].type,z["filter-bar"].type].includes(n.componentType)||n.componentType===z.fieldset.type&&i!==z["response-form"].type)}return{basalDragulaRuleForContainer:e}}class $n{getTemplateRule(n,o){const a=o==null?void 0:o.formSchemaUtils,i=a==null?void 0:a.getFormTemplateRule(),r={canAccept:!0,canDelete:!0,canMove:!0};if(!i)return r;const l=this.getComponentContext(n),{componentClassList:s}=l;return s.forEach(u=>{if(!u||!i[u])return;const{canMove:c,canDelete:d,canAccept:f}=i[u];r.canMove=r.canMove&&this.resolveRuleValue(c,l),r.canDelete=r.canDelete&&this.resolveRuleValue(d,l),r.canAccept=r.canAccept&&this.resolveRuleValue(f,l)}),r}resolveRuleValue(n,o){return typeof n=="boolean"?n:this.parseRuleValueSchema(n,o)}parseRuleValueSchema(n,o){const a=n.invalidContext||[];let i=!0;for(const r of a){const{firstLevelChild:l,secondLevelChild:s,parent:u,...c}=r;if(c&&o.component){let d=!0;for(const f of Object.keys(c))if(c[f]!==o.component[f]){d=!1;break}if(!d){i=!1;continue}}if(r.firstLevelChild){if(r.firstLevelChild.class){const{firstLevelChildClassList:d}=o;if(d&&!d.includes(r.firstLevelChild.class)){i=!1;continue}}if(r.firstLevelChild.type){const{firstLevelChildSchema:d}=o;if(!d||d.type!==r.firstLevelChild.type){i=!1;continue}}}if(r.secondLevelChild){if(r.secondLevelChild.class){const{secondLevelChildClassList:d}=o;if(d&&!d.includes(r.secondLevelChild.class)){i=!1;continue}}if(r.secondLevelChild.type){const{secondLevelChildSchema:d}=o;if(!d||d.type!==r.secondLevelChild.type){i=!1;continue}}}if(r.parent){if(r.parent.class){const{parentClassList:d}=o;if(d&&!d.includes(r.parent.class)){i=!1;continue}}if(r.parent.type){const{parentSchema:d}=o;if(d&&d.type!==r.parent.type){i=!1;continue}}}i=!0;break}return!i}getComponentContext(n){var h,b,I,v;const o=n.schema,a=o.appearance&&o.appearance.class||"",i=a.split(" ")||[],r=o.contents||[],l=r.length?r[0]:null,s=l&&l.appearance?l.appearance.class:"",u=s?s.split(" "):[],c=(h=l==null?void 0:l.contents)!=null&&h.length?l==null?void 0:l.contents[0]:null,d=c&&c.appearance?c.appearance.class:"",f=d?d.split(" "):[],g=o.type==="component"?(I=(b=n.parent)==null?void 0:b.parent)==null?void 0:I.schema:(v=n.parent)==null?void 0:v.schema,p=g&&g.appearance&&g.appearance.class||"",m=p?p.split(" "):[];return{componentClass:a,componentClassList:i,childContents:r,firstLevelChildSchema:l,firstLevelChildClass:s,firstLevelChildClassList:u,secondLevelChildSchema:c,secondLevelChildClass:d,secondLevelChildClassList:f,parentSchema:g,parentClass:p,parentClassList:m,component:o}}}const La=t.ref(0);function Aa(){La.value++}function qa(e){const{formSchemaUtils:n,formStateMachineUtils:o}=e;function a(u,c=""){return{path:c+u.code,field:u.id,fullPath:u.code}}function i(u,c=""){return n.getViewModelById(u).states.map(f=>a(f,c))}function r(u){const c=n.getRootViewModelId(),d=i(u);if(u===c)return d;const f=i(c,"root-component.");return[...d,...f]}function l(u){return u.binding&&u.binding.path||u.id||""}function s(){return o&&o.getRenderStates()||[]}return{getVariables:r,getControlName:l,getStateMachines:s}}class Ha{constructor(n){fe(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'"}]);fe(this,"expressionNames",{compute:"计算表达式",dependency:"依赖表达式",validate:"验证表达式",dataPicking:"帮助前表达式",visible:"可见表达式",readonly:"只读表达式",required:"必填表达式"});fe(this,"getExpressionConverter",(n,o)=>({convertFrom:(a,i,r,l)=>{const s=r.getExpressionRuleValue(n,o||i);return s&&s.value||""},convertTo:(a,i,r,l,s)=>{var u;if(i==="dataPicking"&&(r!=null&&r.target)){const c=`${r.target}_dataPicking`;((u=r.rules)==null?void 0:u.some(f=>f.id===c&&f.value))?a.dictPickingExpressionId=c:delete a.dictPickingExpressionId}l.updateExpression(r)}}));this.formSchemaService=n}getExpressionRule(n,o){const a=this.formSchemaService.getExpressions();if(!a)return"";const i=a.find(l=>l.target===n);if(!i)return"";const r=i.rules.find(l=>l.type===o);return r||""}getContextFormVariables(){const{module:n}=this.formSchemaService.getFormSchema();if(!n.viewmodels||n.viewmodels.length===0)return[];const o=this.formSchemaService.getRootViewModelId(),a=this.formSchemaService.getViewModelById(o);if(!a||!a.states||a.states.length===0)return[];const i=[];return a.states.forEach(r=>{i.push({key:r.code,name:r.name,description:r.name,category:r.category})}),i}createTreeNode(n,o,a="label"){return{id:n.id,name:n.name,bindingPath:n[a],parents:o,type:"field"}}buildEntityFieldsTreeData(n=null,o){const a=[];return n==null||n.forEach(i=>{var s;const r=this.createTreeNode(i,o);let l=[];(s=i.type)!=null&&s.fields&&(l=this.buildEntityFieldsTreeData(i.type.fields,[...o,i.label])),a.push({data:r,children:l,expanded:!0})}),a}buildChildEntityTreeData(n=null,o){const a=[];return n==null||n.forEach(i=>{var u,c;const r=this.createTreeNode(i,o);r.type="entity";const l=this.buildEntityFieldsTreeData((u=i.type)==null?void 0:u.fields,[...o,i.label]),s=this.buildChildEntityTreeData((c=i.type)==null?void 0:c.entities,[...o,i.label]);s!=null&&s.length&&(l==null||l.push(...s)),a.push({data:r,children:l||[],expanded:!0})}),a}getEntitiesTreeData(){const n=this.formSchemaService.getSchemaEntities();if(!(n!=null&&n.length))return[];const o=n[0];if(!(o!=null&&o.type))return[];const a=this.buildEntityFieldsTreeData(o.type.fields,[o.code]),i=this.buildChildEntityTreeData(o.type.entities,[o.code]);return i!=null&&i.length&&(a==null||a.push(...i)),{entityCode:o.code,fields:[{data:this.createTreeNode(o,[],"code"),children:a||[]}]}}getEntitiesAndVariables(){return{entities:this.getEntitiesTreeData(),variables:{session:{name:"系统变量",items:this.sessionVariables,visible:!1},forms:{name:"表单变量",items:this.getContextFormVariables(),visible:!0}}}}onBeforeOpenExpression(n,o,a){const i=a==="Field"?n.binding.field:n.id,r=this.getExpressionRule(i,o),l=this.getEntitiesAndVariables(),s={message:["validate","required","dataPicking"].includes(o)&&r?r.message:"",...l};return r.messageType!=null&&(s.messageType=r.messageType),s}buildRule(n,o,a,i){const{expression:r,message:l,messageType:s}=o,u={id:`${n}_${a}`,type:a,value:r};return(a==="validate"||a==="dataPicking"||a==="required")&&(u.message=l),a==="dataPicking"&&(u.messageType=s),a==="validate"&&i&&(u.elementId=i),u}getExpressionData(){const{expressions:n}=this.formSchemaService.getFormSchema().module;return n||[]}updateExpression(n,o,a,i){const r=o==="Field"?n.binding.field:n.id,l=this.buildRule(r,a,i,n.type==="form-group"?n.id:"");let u=this.getExpressionData().find(d=>d.targetType===o&&d.target===r);const c=d=>d.value.trim()==="";if(u){const d=u.rules.find(f=>f.id===l.id);if(d)c(l)?u.rules=u.rules.filter(f=>f.id!==l.id):(Object.assign(d,l),i==="validate"&&n.type==="form-group"&&(d.elementId=n.id));else{if(c(l))return null;u.rules=u.rules||[],u.rules.push(l)}}else{if(c(l))return null;u={target:`${r}`,rules:[l],targetType:o}}return u}getExpressionEditorOptions(n,o,a,i){return a.reduce((r,l)=>{var u,c;const s=o==="Field"?(u=n==null?void 0:n.binding)==null?void 0:u.field:n.id;return r[l]={hide:o==="Field"?!!((c=n==null?void 0:n.binding)!=null&&c.field):!1,description:"",title:this.expressionNames[l],type:"string",$converter:this.getExpressionConverter(s),refreshPanelAfterChanged:!0,editor:{type:"expression-editor",singleExpand:!1,dialogTitle:`${this.expressionNames[l]}编辑器`,showMessage:l==="validate"||l==="dataPicking"||l==="required",showMessageType:l==="dataPicking",beforeOpen:()=>this.onBeforeOpenExpression(n,l,o),onSubmitModal:d=>{const f=this.updateExpression(n,o,d,l);if(i){const g=this.buildRule(s,d,l);i(g)}return f}}},r},{})}getExpressionInfo(n,o,a){const i=o==="Field"?n.binding.field:n.id,r=this.getExpressionRule(i,a),l={value:r&&r.value,targetId:i,targetType:o,expressionType:a};return r&&r.message&&(l.message=r.message),l}getExpressionConfig(n,o,a=["compute","dependency","validate"],i){return{description:"表达式",title:"表达式",hide:!n.binding,properties:{...this.getExpressionEditorOptions(n,o,a,i)}}}getExpressionOptions(n,o,a){const i=this.getExpressionInfo(n,o,a);return{dialogTitle:`${this.expressionNames[a]}编辑器`,singleExpand:!1,showMessage:a==="required",beforeOpen:()=>this.onBeforeOpenExpression(n,a,o),expressionInfo:i}}}class ut{constructor(n,o){fe(this,"componentId");fe(this,"viewModelId");fe(this,"eventsEditorUtils");fe(this,"formSchemaUtils");fe(this,"formMetadataConverter");fe(this,"designViewModelUtils");fe(this,"designViewModelField");fe(this,"controlCreatorUtils");fe(this,"designerHostService");fe(this,"designerContext");fe(this,"schemaService",null);fe(this,"metadataService",null);fe(this,"propertyConfig",{type:"object",categories:{}});var a;this.componentId=n,this.designerHostService=o,this.eventsEditorUtils=o.eventsEditorUtils,this.formSchemaUtils=o.formSchemaUtils,this.formMetadataConverter=o.formMetadataConverter,this.viewModelId=((a=this.formSchemaUtils)==null?void 0:a.getViewModelIdByComponentId(n))||"",this.designViewModelUtils=o.designViewModelUtils,this.controlCreatorUtils=o.controlCreatorUtils,this.metadataService=o.metadataService,this.schemaService=o.schemaService,this.designerContext=o.designerContext}getFormDesignerInstance(){var n,o;return(o=(n=this.designerContext)==null?void 0:n.instances)==null?void 0:o.formDesigner.value}getTableInfo(){var n;return(n=this.schemaService)==null?void 0:n.getTableInfoByViewModelId(this.viewModelId)}setDesignViewModelField(n){var a;const o=n.binding&&n.binding.type==="Form"&&n.binding.field;if(o){if(!this.designViewModelField){const i=this.designViewModelUtils.getDgViewModel(this.viewModelId);this.designViewModelField=i.fields.find(r=>r.id===o)}n.updateOn=(a=this.designViewModelField)==null?void 0:a.updateOn}}getBasicPropConfig(n){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:n.type,name:z[n.type]&&z[n.type].name}]}}}}}getAppearanceConfig(n=null,o={},a){const i={title:"外观",description:"Appearance"},r={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 l in o)r[l]=Object.assign(r[l]||{},o[l]);return{...i,properties:{...r},setPropertyRelates(l,s){if(l){switch(l&&l.propertyID){case"class":case"style":{Ue.value++;break}}a&&a(l,n,s)}}}}getPropertyEditorParams(n,o=[],a="visible",i={},r={},l=""){const{getVariables:s,getControlName:u,getStateMachines:c}=qa(this.designerHostService),d=this.getRealTargetType(n),f=o&&o.length>0?o:["Const","Variable","StateMachine","Expression"],g={type:"property-editor",propertyTypes:f};return f.map(p=>{switch(p){case"Const":Object.assign(g,{constType:"enum",constEnums:[{id:!0,name:"是"},{id:!1,name:"否"}]},i);break;case"Expression":g.expressionConfig=this.getExpressionOptions(n,d,l||a);break;case"StateMachine":g.stateMachines=c();break;case"Variable":Object.assign(g,{controlName:u(n),newVariablePrefix:"is",newVariableType:"Boolean",variables:s(this.viewModelId),onBeforeOpenVariables:m=>{m.value=s(this.viewModelId)}},r);break}}),g}getVisibleProperty(n,o=""){var r;let a=["Const","Variable","StateMachine","Expression"];return o==="gridFieldEditor"?a=["Const","Expression"]:o==="form-group"&&!((r=n.binding)!=null&&r.field)&&(a=["Const","Variable","StateMachine"]),{visible:{title:"是否可见",type:"boolean",description:"运行时组件是否可见",editor:this.getPropertyEditorParams(n,a,"visible")}}}getBehaviorConfig(n,o="",a={},i){const r={title:"行为",description:""},l=this.getVisibleProperty(n,o);for(const u in a)l[u]=Object.assign(l[u]||{},a[u]);const s=this;return{...r,properties:{...l},setPropertyRelates(u,c){if(u){switch(u.propertyID){case"disabled":case"readonly":case"visible":s.afterMutilEditorChanged(n,u);break}i&&i(u,c)}}}}afterMutilEditorChanged(n,o){this.addNewVariableToViewModel(o,this.viewModelId),this.updateExpressionValue(o),this.clearExpression(o,n)}updateElementByParentContainer(n,o){const a=o&&o.parent&&o.parent.schema;if(!a)return;const i=a.contents.findIndex(l=>l.id===n),r=he.cloneDeep(a.contents[i]);a.contents.splice(i,1),a.contents.splice(i,0,r),Aa()}addNewVariableToViewModel(n,o){const a=n.propertyValue;if(!(a&&typeof a=="object")||!(a.type==="Variable"&&a.isNewVariable))return;const l={id:a.field,category:"locale",code:a.fullPath,name:a.fullPath,type:a.newVariableType||"String"};delete a.newVariableType,delete a.isNewVariable,this.formSchemaUtils.getVariableByCode(l.code)||this.formSchemaUtils.getViewModelById(o).states.push(l)}updateExpressionValue(n){const o=n.propertyValue;if(!((o&&o.type)==="Expression"&&o.expressionInfo))return;const{expressionId:r,expressionInfo:l}=o,{targetId:s,targetType:u,expressionType:c,value:d,message:f}=l,g=this.formSchemaUtils.getModule();g.expressions=g.expressions||[];const{expressions:p}=g;let m=p.find(b=>b.target===s);m||(m={target:s,rules:[],targetType:u},p.push(m));const h=m.rules.find(b=>b.type===c);if(h)h.value=d,h.message=f;else{const b={id:r,type:c,value:d,message:f};m.rules.push(b)}delete o.expressionInfo}clearExpression(n,o){const a=n.propertyValue;if(a&&a.type==="Expression")return;const r=n.propertyID,l=this.formSchemaUtils.getExpressions(),s=o.binding?o.binding.field:o.id,u=l.find(c=>c.target===s);!u||!u.rules||(u.rules=u.rules.filter(c=>c.type!==r))}getExpressionOptions(n,o,a){return new Ha(this.formSchemaUtils).getExpressionOptions(n,o,a)}getRealTargetType(n){return["response-toolbar-item","tab-toolbar-item","section-toolbar-item"].indexOf(n.type)>-1?"Button":n.binding&&n.binding.field?"Field":"Container"}createBaseEventProperty(n){const o={};return o[this.viewModelId]={type:"events-editor",editor:{initialData:n,viewSourceHandle:a=>{var i;((i=a.controller)==null?void 0:i.label.indexOf(this.formSchemaUtils.getModule().code))>-1&&this.eventsEditorUtils.jumpToMethod(a)}}},o}}const lt=class lt{static getEditorTypesByMDataType(n,o=!1,a=""){if(o)return[{key:z["language-textbox"].type,value:z["language-textbox"].name}];let i=lt.fieldControlTypeMapping[n];if(a==="data-grid-column"&&(i!=null&&i.length)){const r=[z["check-group"].type,z["radio-group"].type];i=i.filter(l=>!r.includes(l.key))}return i}static getAllInputTypes(){const n=[];for(const o in lt.fieldControlTypeMapping)lt.fieldControlTypeMapping[o].forEach(a=>{n.find(i=>i.key===a.key&&i.value===a.value)||n.push({key:a.key,value:a.value})});return n}static mappingDomPropAndSchemaProp(n,o){var r;const a=(r=n.editor)==null?void 0:r.type,i=[];return(n.type===z["data-grid-column"].type||n.type===z["tree-grid-column"].type)&&o&&o.categoryId&&o.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"}),(a===z["input-group"].type||a===z.textarea.type||a===z["number-spinner"].type)&&i.push({domField:"editor.maxLength",schemaField:"type.length"}),a===z["number-spinner"].type&&i.push({domField:"editor.precision",schemaField:"type.precision"}),(n.type===z["data-grid-column"].type||n.type===z["tree-grid-column"].type)&&i.push({domField:"formatter.precision",schemaField:"type.precision"}),(a===z["combo-list"].type||a===z["radio-group"].type)&&i.push({domField:"editor.data",schemaField:"type.enumValues"}),(n.type===z["data-grid-column"].type||n.type===z["tree-grid-column"].type)&&i.push({domField:"formatter.data",schemaField:"type.enumValues"}),a===z["date-picker"].type&&(i.push({domField:"editor.displayFormat",schemaField:"editor.format"}),i.push({domField:"editor.fieldType",schemaField:"type.name"})),a===z["number-spinner"].type&&(i.push({domField:"editor.max",schemaField:"editor.maxValue"}),i.push({domField:"editor.min",schemaField:"editor.minValue"})),a===z.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"}),(n.type===z["data-grid-column"].type||n.type===z["tree-grid-column"].type)&&i.push({domField:"field",schemaField:"bindingPath"}),i}};fe(lt,"fieldControlTypeMapping",{String:[{key:z["input-group"].type,value:z["input-group"].name},{key:z.lookup.type,value:z.lookup.name},{key:z["date-picker"].type,value:z["date-picker"].name},{key:z.switch.type,value:z.switch.name},{key:z["check-box"].type,value:z["check-box"].name},{key:z["check-group"].type,value:z["check-group"].name},{key:z["radio-group"].type,value:z["radio-group"].name},{key:z["combo-list"].type,value:z["combo-list"].name},{key:z.textarea.type,value:z.textarea.name},{key:z["time-picker"].type,value:z["time-picker"].name}],Text:[{key:z.textarea.type,value:z.textarea.name},{key:z.lookup.type,value:z.lookup.name}],Decimal:[{key:z["number-spinner"].type,value:z["number-spinner"].name}],Integer:[{key:z["number-spinner"].type,value:z["number-spinner"].name}],Number:[{key:z["number-spinner"].type,value:z["number-spinner"].name},{key:z.switch.type,value:z.switch.name},{key:z["check-box"].type,value:z["check-box"].name}],BigNumber:[{key:z["number-spinner"].type,value:z["number-spinner"].name}],Date:[{key:z["date-picker"].type,value:z["date-picker"].name}],DateTime:[{key:z["date-picker"].type,value:z["date-picker"].name}],Boolean:[{key:z.switch.type,value:z.switch.name},{key:z["check-box"].type,value:z["check-box"].name}],Enum:[{key:z["combo-list"].type,value:z["combo-list"].name},{key:z["radio-group"].type,value:z["radio-group"].name}],Object:[{key:z.lookup.type,value:z.lookup.name},{key:z["combo-list"].type,value:z["combo-list"].name},{key:z["radio-group"].type,value:z["radio-group"].name}]});let En=lt;Ie({id:{type:String,default:""},editor:{type:Object,default:{}},modelValue:{type:[String,Boolean,Array,Number]},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1}},jn,Rt,void 0);const za={$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"]},_a={initialState:{type:Object,default:{uniqueColClassInSM:12,uniqueColClassInMD:6,uniqueColClassInLG:3,uniqueColClassInEL:2}}};Je.createPropsResolver(_a,za,ja,Oa);const Ua={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 Lt(){return new DOMException("The request is not allowed","NotAllowedError")}async function Wa(e){if(!navigator.clipboard)throw Lt();return navigator.clipboard.writeText(e)}async function Ga(e){const n=document.createElement("span");n.textContent=e,n.style.whiteSpace="pre",n.style.webkitUserSelect="auto",n.style.userSelect="all",document.body.appendChild(n);const o=window.getSelection(),a=window.document.createRange();o==null||o.removeAllRanges(),a.selectNode(n),o==null||o.addRange(a);let i=!1;try{i=window.document.execCommand("copy")}finally{o==null||o.removeAllRanges(),window.document.body.removeChild(n)}if(!i)throw Lt()}async function Xa(e){try{await Wa(e)}catch(n){try{await Ga(e)}catch(o){throw o||n||Lt()}}}function Ya(){async function e(n){await Xa(n)}return{onCopy:e}}function Ja(e,n,o,a){const i=t.ref(14),r=t.ref(140),l=t.ref(""),s=t.ref(a.value.length),u=t.computed(()=>a.value),c=t.computed(()=>({"font-size":`${i.value}px`,height:"100%"}));function d(f){if(f.currentTarget){const g=f.currentTarget.value||"";s.value=g.length}}return()=>t.createVNode(t.Fragment,null,[t.createVNode("textarea",{title:"promptMessage",name:"promptMessage",class:"form-control",style:c.value,rows:"4",maxlength:r.value,onInput:f=>d(f)},[u.value]),t.createVNode("span",{class:"textarea-wordcount",title:l.value,style:"position: absolute; bottom: 76px; right: 32px; cursor: pointer; text-align: right;"},[s.value+" / "+r.value])])}function Qa(e,n,o,a){const i=Ja(e,n,o,a),r=new Map([["text-area",i]]);function l(s){return r.get(s)||null}return{getEditorRender:l}}function Za(){const e=t.ref(!1),n=t.ref("复制成功");return{feedbackStyle:t.computed(()=>{const a={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 a.opacity=e.value?"0.8":"0",a.display=e.value?"":"none",a}),feedbackMessage:n,toShowFeedback:e}}function Ka(e,n){const o=n.getEditorRender(e.promptEditorType);return()=>o&&o()}function ei(e,n){function o(p){if(p==null)return 0;let m=0;for(let h=0;h<p.length;h++){const b=p.charCodeAt(h);b>=0&&b<=128?m++:m=m+2}return m}function a(p,m){if(p!==""&&p!==void 0&&p!==null){p=""+p;const h=p.length;let b="",I=0;for(let v=0;v<h;v++){const P=p.charAt(v);if(I++,encodeURI(P).length>4&&I++,b=b.concat(P),I>=m)return b=b.concat("..."),b}if(I<m)return p}return""}const i=t.computed(()=>!!e.value&&!!e.value.date),r=t.computed(()=>{const p=e.value&&e.value.date||"";return`${n.exception.happend} : ${p}`}),l=t.computed(()=>!!e.value&&!!e.value.detail),s=t.computed(()=>e.value?o(e.value.detail)>160:!1),u=t.ref(!1),c=t.computed(()=>u.value?n.exception.collapse:n.exception.expand),d=t.computed(()=>{const p=n.exception.detail+" : "+(e.value&&e.value.detail)||"";return u.value?p:a(p,160)}),f=t.computed(()=>({position:"absolute",right:0,bottom:u.value?0:"2px",color:"#2A87FF",cursor:"pointer"}));function g(){u.value=!u.value}return()=>t.createVNode("div",{class:"toast-msg-detail"},[i.value&&t.createVNode("div",null,[r.value]),l.value&&t.createVNode("div",{class:"exception_wrap"},[t.createVNode("div",{class:"exception_error_msg"},[t.createVNode("div",{innerHTML:d.value},null),s.value&&t.createVNode("span",{style:f.value,onClick:g},[c.value])])])])}function ti(e){return()=>t.createVNode("p",{class:"toast-msg-detail",innerHTML:e.value},null)}function ni(e,n,o,a,i){const r=t.ref(e.exceptionInfo),l=t.computed(()=>{const m=n.value==="question"?"warning":n.value,h={"f-icon":!0},b=`f-icon-${m}`;return h[b]=!0,h}),s=t.computed(()=>o.value||r.value&&r.value.message),u=t.computed(()=>a.value),c=t.computed(()=>!!a.value),d=t.computed(()=>!!r.value);function f(){return d.value?ei(r,i):c.value?ti(u):()=>null}const g=f(),p=t.computed(()=>i.locale==="en"?{wordBreak:"keep-all",overflowWrap:"break-word"}:{});return()=>t.createVNode(t.Fragment,null,[t.createVNode("div",{class:"float-left modal-tips-iconwrap"},[t.createVNode("span",{class:l.value},null)]),t.createVNode("div",{class:"modal-tips-content"},[t.createVNode("p",{class:"toast-msg-title",innerHTML:s.value,style:p.value},null),g()])])}function oi(e,n,o,a){const{onCopy:i}=n,{toShowFeedback:r}=o,l=t.ref(a.exception.copySuccess||"复制成功"),s=t.ref(a.exception.copy||"复制详细信息"),u=t.ref(e.exceptionInfo||{date:"",message:"",detail:""}),c=t.computed(()=>u.value&&u.value.detail||"");function d(f){i(c.value).catch(g=>{l.value=a.exception.copyFailed||"复制失败"}).finally(()=>{r.value=!0,setTimeout(()=>{r.value=!1},700)})}return()=>t.createVNode("span",{style:"width: 100%;color: #2A87FF;padding-left: 37px;"},[t.createVNode("span",{onClick:d,style:"cursor: pointer;"},[s.value])])}function ai(e,n,o,a,i){const r=t.ref(e.type),l=t.ref(e.buttons),s=t.ref(e.exceptionInfo),u=t.ref(i.ok||e.okButtonText),c=t.ref(i.cancel||e.cancelButtonText),d=t.ref(e.showCancelButton),f=t.ref(e.showOkButton),g=t.computed(()=>!!(l.value&&l.value.length)),p=t.computed(()=>s.value&&s.value.message&&s.value.detail),m=t.computed(()=>!(l.value&&l.value.length)&&(f.value||d.value)),h=oi(e,o,a,i);u.value==="关闭"?u.value=i.close:u.value==="知道了"&&(u.value=i.exception.roger);function b(v){r.value==="question"&&n.emit("reject"),n.emit("close")}function I(v){r.value==="question"&&n.emit("accept"),n.emit("close")}return()=>t.createVNode("div",{class:"modal-footer"},[p.value&&h(),m.value&&d.value&&t.createVNode("button",{type:"button",class:"btn btn-secondary btn-lg",onClick:b},[c.value]),m.value&&f.value&&t.createVNode("button",{type:"button",class:"btn btn-primary btn-lg",onClick:I},[u.value]),g.value&&l.value.length&&l.value.map(v=>t.createVNode("button",{type:"button",onClick:v.handle,class:v.class},[v.iconClass&&t.createVNode("span",{class:v.iconClass},null),v.text]))])}function ii(e){const{t:n,locale:o}=Oe.useI18n();function a(i,r,l){return r===l?n(i):r}return{yes:a("messageBox.yes")||"是",no:a("messageBox.no")||"否",close:a("messageBox.close")||"关闭",ok:a("messageBox.ok",e.okButtonText,"确定")||"确定",cancel:a("messageBox.cancel",e.cancelButtonText,"取消")||"取消",title:a("messageBox.title")||"系统提示",errorTitle:a("messageBox.errorTitle")||"错误提示",exception:{expand:a("messageBox.exception.expand")||"展开",collapse:a("messageBox.exception.collapse")||"收起",happend:a("messageBox.exception.happend")||"发生时间",detail:a("messageBox.exception.detail")||"详细信息",copy:a("messageBox.exception.copy")||"复制详细信息",copySuccess:a("messageBox.exception.copySuccess")||"复制成功",copyFailed:a("messageBox.exception.copyFailed")||"复制失败",roger:a("messageBox.exception.roger")||"知道了"},locale:o.value}}const Tt=t.defineComponent({name:"FMessageBox",props:Ua,emits:["accept","reject","close"],setup(e,n){const o=ii(e),a=t.ref(e.type),i=t.ref(e.title),r=t.ref(e.detail),l=t.computed(()=>{const I={"modal-tips":!0,"d-flex":!0,"flex-row":!0},v=`messager-type-${a.value}`;return I[v]=!0,I}),s=t.computed(()=>{const I={cursor:"default"};return a.value==="prompt"?I.padding="0.5rem 0.5rem 1rem 1.5rem":a.value==="error"&&(I.padding="0.5rem 1.5rem 1rem 1.5rem"),I}),u=Ya(),c=Qa(e,a,i,r),d=Za(),{feedbackStyle:f,feedbackMessage:g}=d;g.value=o.exception.copySuccess;function p(){return t.createVNode("div",{style:f.value},[g.value])}function m(){switch(a.value){case"prompt":return Ka(e,c);default:return ni(e,a,i,r,o)}}const h=m(),b=ai(e,n,u,d,o);return()=>t.createVNode("div",{class:"farris-messager"},[!e.exceptionInfo&&t.createVNode("div",{style:"height: 30px;width: 100%;position: absolute;",class:"messager-draggable"},null),t.createVNode("section",{class:l.value,style:s.value},[h()]),b(),p()])}}),ri={$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:"关闭前回调"}},li=new Map([["appearance",Je.resolveAppearance]]);function si(e,n,o){return n}function ci(){function e(n,o){const a={};return a.beforeClose=i=>o.call("beforeClose",[i,n]),a}return{resolve:e}}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"}},ui=Je.createPropsResolver(Dn,ri,li,si),di=ci();class Ce{constructor(n,o){this.x=n,this.y=o}static getTransformInfo(n){const a=window.getComputedStyle(n).getPropertyValue("transform").replace(/[^-\d,]/g,"").split(",");if(a.length>=6){const i=parseInt(a[4],10),r=parseInt(a[5],10);return{x:i,y:r}}return{x:0,y:0}}static fromEvent(n,o=null){if(this.isMouseEvent(n))return new Ce(n.clientX,n.clientY);if(o===null||n.changedTouches.length===1)return new Ce(n.changedTouches[0].clientX,n.changedTouches[0].clientY);for(let a=0;a<n.changedTouches.length;a++)if(n.changedTouches[a].target===o)return new Ce(n.changedTouches[a].clientX,n.changedTouches[a].clientY)}static isMouseEvent(n){return Object.prototype.toString.apply(n).indexOf("MouseEvent")===8}static isIPosition(n){return!!n&&"x"in n&&"y"in n}static getCurrent(n){const o=new Ce(0,0);if(window){const a=window.getComputedStyle(n);if(a){const i=parseInt(a.getPropertyValue("left"),10),r=parseInt(a.getPropertyValue("top"),10);o.x=isNaN(i)?0:i,o.y=isNaN(r)?0:r}return o}return null}static copy(n){return new Ce(0,0).set(n)}get value(){return{x:this.x,y:this.y}}add(n){return this.x+=n.x,this.y+=n.y,this}subtract(n){return this.x-=n.x,this.y-=n.y,this}multiply(n){this.x*=n,this.y*=n}divide(n){this.x/=n,this.y/=n}reset(){return this.x=0,this.y=0,this}set(n){return this.x=n.x,this.y=n.y,this}}class Ke{constructor(n,o){this.width=n,this.height=o}static getCurrent(n){const o=new Ke(0,0);if(window){const a=window.getComputedStyle(n);return a&&(o.width=parseInt(a.getPropertyValue("width"),10),o.height=parseInt(a.getPropertyValue("height"),10)),o}return null}static copy(n){return new Ke(0,0).set(n)}set(n){return this.width=n.width,this.height=n.height,this}}function fi(e,n){const o=t.ref(),a=t.ref(),i=t.ref(),r=t.ref(),l=t.ref(),s=t.ref(),u=t.ref(),c=t.ref(),d=t.ref(),f=t.ref(),g=t.ref(),p=t.ref(e.resizeable),m=t.ref(),h=t.ref(e.draggable),b=t.ref(!1);function I(){const $=a.value||document.body,O=window.getComputedStyle($);if(!O||!o.value)return;const A=Ce.getTransformInfo(o.value),L={};u.value&&(L.deltaL=o.value.offsetLeft-u.value.x,L.deltaT=o.value.offsetTop-u.value.y);const Q=O.getPropertyValue("position");L.width=$.clientWidth,L.height=$.clientHeight,L.pr=parseInt(O.getPropertyValue("padding-right"),10),L.pb=parseInt(O.getPropertyValue("padding-bottom"),10),L.position=O.getPropertyValue("position"),Q==="static"&&($.style.position="relative"),L.translateX=A.x,L.translateY=A.y,f.value=L}function v($){if(o.value){r.value=Ke.getCurrent(o.value),l.value=Ce.getCurrent(o.value),s.value=r.value?Ke.copy(r.value):null,u.value=l.value?Ce.copy(l.value):null,I();const O=$.target.getAttribute("type")||"";c.value={n:!!O.match(/n/),s:!!O.match(/s/),w:!!O.match(/w/),e:!!O.match(/e/)}}}function P(){var $,O,A,L;if(o.value){const Q=o.value;c.value&&((c.value.n||c.value.s)&&(($=s.value)!=null&&$.height)&&(Q.style.height=s.value.height+"px"),(c.value.w||c.value.e)&&((O=s.value)!=null&&O.width)&&(Q.style.width=s.value.width+"px"),u.value&&((A=u.value)!=null&&A.x&&(Q.style.left=u.value.x+"px"),(L=u.value)!=null&&L.y&&(Q.style.top=u.value.y+"px")))}}function T(){const $=e.minHeight?e.minHeight:1,O=e.minWidth?e.minWidth:1;s.value&&u.value&&c.value&&r.value&&(s.value.height<$&&(s.value.height=$,c.value.n&&l.value&&(u.value.y=l.value.y+(r.value.height-$))),s.value.width<O&&(s.value.width=O,c.value.w&&l.value&&(u.value.x=l.value.x+(r.value.width-O))),e.maxHeight&&s.value.height>e.maxHeight&&(s.value.height=e.maxHeight,l.value&&c.value.n&&(u.value.y=l.value.y+(r.value.height-e.maxHeight))),e.maxWidth&&s.value.width>e.maxWidth&&(s.value.width=e.maxWidth,c.value.w&&l.value&&(u.value.x=l.value.x+(r.value.width-e.maxWidth))))}function k(){if(a.value){const $=f.value;if(u.value&&s.value&&c.value&&r.value){const O=$.width-$.pr-$.deltaL-$.translateX-u.value.x,A=$.height-$.pb-$.deltaT-$.translateY-u.value.y;c.value.n&&u.value.y+$.translateY<0&&l.value&&(u.value.y=-$.translateY,s.value.height=r.value.height+l.value.y+$.translateY),c.value.w&&u.value.x+$.translateX<0&&l.value&&(u.value.x=-$.translateX,s.value.width=r.value.width+l.value.x+$.translateX),s.value.width>O&&(s.value.width=O),s.value.height>A&&(s.value.height=A)}}}function S($){if(!i.value||!r.value||!l.value||!c.value)return;$.subtract(i.value);const O=$.x,A=$.y;c.value.n?(u.value.y=l.value.y+A,s.value.height=r.value.height-A):c.value.s&&(s.value.height=r.value.height+A),c.value.e?s.value.width=r.value.width+O:c.value.w&&(s.value.width=r.value.width-O,u.value.x=l.value.x+O),k(),T(),P()}function V($){if(!d.value)return;const O=Ce.fromEvent($);O&&S(O)}function y(){if(o.value){const{width:$,height:O,x:A,y:L}=o.value.getBoundingClientRect(),Q=Ce.getTransformInfo(o.value);return{size:{width:$,height:O},position:{x:A-Q.x,y:L-Q.y}}}return null}function N($){if(o.value){const O=y();g.value=O}i.value=void 0,r.value=null,l.value=null,s.value=null,u.value=null,c.value=null,d.value=null,document.removeEventListener("mousemove",V),document.removeEventListener("mouseup",N)}function x(){document.addEventListener("mousemove",V),document.addEventListener("mouseup",N)}function w($){$ instanceof MouseEvent&&$.button===2||h.value&&(document.body.click(),$.stopPropagation(),$.preventDefault(),i.value=Ce.fromEvent($),d.value=$.target,v($),x())}function C($){return o.value=$,p.value&&t.createVNode(t.Fragment,null,[t.createVNode("div",{class:"fv-resizable-handle fv-resizable-n",type:"n",onMousedown:O=>w(O)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-e",type:"e",onMousedown:O=>w(O)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-s",type:"s",onMousedown:O=>w(O)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-w",type:"w",onMousedown:O=>w(O)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-ne",type:"ne",onMousedown:O=>w(O)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-se fv-resizable-diagonal",type:"se",onMousedown:O=>w(O)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-sw",type:"sw",onMousedown:O=>w(O)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-nw",type:"nw",onMousedown:O=>w(O)},null)])}function F($=!0){document.body.click();const O=a.value||document.body,A=Ke.getCurrent(O),L=o.value;$&&L&&(m.value=y(),m.value.transform=L.style.transform),A&&L&&(s.value=A,s.value.height-=14,s.value.width-=14,L.style.height=s.value.height+"px",L.style.width=s.value.width+"px",L.style.left="7px",L.style.top="7px",L.style.transform="",g.value={size:s.value,position:{x:0,y:0}},h.value=!1,b.value=!0)}function B(){var $,O;if(document.body.click(),m.value){const A={width:m.value.size.width||0,height:m.value.size.height||0},L={x:(window.innerWidth-A.width)/2,y:(window.innerHeight-A.height)/2};($=s.value)==null||$.set(A),(O=u.value)==null||O.set(L);const Q=o.value;Q.style.height=A.height+"px",Q.style.width=A.width+"px",Q.style.left=`${L.x}px`,Q.style.top=`${L.y}px`,Q.style.transform="",g.value={size:A,position:L},h.value=e.draggable,b.value=!1}}function j(){if(o.value){const $=Ke.getCurrent(o.value);if($){const{width:O,height:A}=$;o.value.style.left=`${(window.innerWidth-O)/2}px`,o.value.style.top=`${(window.innerHeight-A)/2}px`,o.value.style.transform=""}}}function M(){const $=()=>{b.value?F(!1):j(),document.body.click()};return window.addEventListener("resize",$),()=>{window.removeEventListener("resize",$)}}const D=M();return{renderResizeBar:C,boundingElement:a,resizedEventParam:g,maximize:F,restore:B,allowDrag:h,isMaximized:b,unWindowResizeHandle:D,moveToCenter:j}}function pi(e,n,o){const a=t.ref(),i=t.ref(e.draggable),r=t.ref(e.lockAxis),l=t.ref(),s=t.ref(),u=t.ref(!1),c=t.ref(new Ce(0,0)),d=t.ref(new Ce(0,0)),f=t.ref(new Ce(0,0)),g=t.ref(new Ce(0,0));t.watch(()=>o.value,V=>{l.value.style.cursor=V?"move":"default"});function p(V,y){if(y.tagName==="BUTTON")return!1;if(y===V)return!0;for(const N in y.children)if(Object.prototype.hasOwnProperty.call(y.children,N)&&p(V,y.children[N]))return!0;return!1}function m(){var x,w;let V=f.value.x+d.value.x,y=f.value.y+d.value.y;r.value==="x"?(V=((x=c.value)==null?void 0:x.x)||0,f.value.x=0):r.value==="y"&&(y=((w=c.value)==null?void 0:w.y)||0,f.value.y=0);const N=`translate3d(${Math.round(V)}px, ${Math.round(y)}px, 0px)`;a.value&&(a.value.style.transform=N),g.value.x=V,g.value.y=y}function h(){if(!s.value||!a.value)return null;const V=s.value.getBoundingClientRect(),y=a.value.getBoundingClientRect(),N={top:V.top<y.top,right:V.right>y.right,bottom:V.bottom>y.bottom,left:V.left<y.left};return N.top||(f.value.y-=y.top-V.top),N.bottom||(f.value.y-=y.bottom-V.bottom),N.right||(f.value.x-=y.right-V.right),N.left||(f.value.x-=y.left-V.left),m(),N}function b(V){V&&(c.value&&V.subtract(c.value),f.value.set(V),m(),h())}function I(V){u.value&&i.value&&(V.stopPropagation(),V.preventDefault(),b(Ce.fromEvent(V,l.value)))}function v(){var V;u.value&&(u.value=!1,d.value.add(f.value),f.value.reset(),(V=a.value)==null||V.classList.remove("ng-dragging"),n.emit("stopMove"),document.removeEventListener("mousemove",I),document.removeEventListener("mouseup",v))}function P(){!u.value&&l.value&&(u.value=!0,l.value.classList.add("ng-dragging"),document.addEventListener("mousemove",I),document.addEventListener("mouseup",v))}function T(){if(a.value){const V=Ce.getTransformInfo(a.value);d.value.set(V);return}d.value.reset()}function k(V){if(!o.value||V instanceof MouseEvent&&V.button===2)return;const y=V.target||V.srcElement;l.value!==void 0&&y&&!p(y,l.value)||i.value!==!1&&(document.body.click(),V.stopPropagation(),V.preventDefault(),c.value=Ce.fromEvent(V,a.value),T(),P())}function S(V,y,N){if(i.value&&y){if(V)l.value=V;else if(e.dragHandle){if(e.dragHandle instanceof HTMLElement)l.value=e.dragHandle;else if(typeof e.dragHandle=="string"){const x=y.querySelector(e.dragHandle);x&&(l.value=x)}}a.value=y,s.value=N,l.value?(l.value.classList.add("ng-draggable"),l.value.addEventListener("mousedown",k)):i.value=!1}}return{registerDraggle:S,resetTranslate:T}}function On(e,n){if(e){const o=a=>{a.key.toLowerCase()===e.toLowerCase()&&n({event:a,key:e})};return document.addEventListener("keydown",o),()=>{document.removeEventListener("keydown",o)}}}function mi(e,n){const o=t.ref(e.enableEsc);let a=null;return o.value?(a=On("Escape",i=>{n.emit("esc",{event:i.event,type:"esc"})}),{remove:a}):null}function gi(e,n){const o=t.ref(e.enableEnter);let a=null;return o.value?(a=On("Enter",i=>{n.emit("enter",{event:i.event,type:"enter"})}),{remove:a}):null}const et=t.defineComponent({name:"FModal",props:Dn,emits:["update:modelValue","accept","cancel","closed","resize","esc","enter","stopMove"],setup(e,n){const o=t.ref(e.width||300),a=t.ref(e.height||200),i=t.ref(e.modelValue),r=t.ref(""),l=t.ref(e.class),s=t.ref(e.fitContent),u=t.ref(e.showHeader),c=t.ref(""),d=t.ref(e.showCloseButton),f=t.ref(e.showMaxButton),g=t.ref(!1),p=t.ref(e.dialogType),m=t.ref(e.src),h=t.ref(""),b=t.ref(e.showButtons),I=t.ref(e.title),v=t.ref(e.containment||null),P=t.ref(),{t:T}=Oe.useI18n();I.value==="错误提示"&&(I.value=T("messageBox.errorTitle"));const k=t.ref(!1);function S(_,re){const we=re?"accept":"cancel";Promise.resolve().then(()=>{var xe;return(xe=e.beforeClose)==null?void 0:xe.call(e,{closeType:we})}).then(xe=>{xe&&(i.value=!1,n.emit("update:modelValue",!1),re!=null&&n.emit(re?"accept":"cancel"),n.emit("closed",_))})}const V=[{name:"cancel",text:T("messageBox.cancel")||"取消",class:"btn btn-secondary",handle:_=>{S(_,!1)}},{name:"accept",text:T("messageBox.ok")||"确定",class:"btn btn-primary",handle:_=>{S(_,!0)}}],y=t.ref(e.buttons&&e.buttons.length?e.buttons:V),N=t.computed(()=>!!c.value),x=t.computed(()=>!!b.value&&!!y.value),w=t.ref(),C=t.ref(),F=t.ref(!1),{renderResizeBar:B,maximize:j,restore:M,boundingElement:D,resizedEventParam:$,allowDrag:O,unWindowResizeHandle:A,moveToCenter:L}=fi(e),{registerDraggle:Q}=pi(e,n,O);function te(){return!!document.querySelectorAll(".farris-modal").length&&document.body.classList.contains("modal-open")}function oe(){const _=document.querySelectorAll(".farris-modal").length;(!_||_-1<=0)&&document.body.classList.remove("modal-open"),P.value&&P.value.classList.remove("show")}t.watch(()=>e.title,(_,re)=>{_!==re&&(I.value=_)}),t.watch(()=>e.modelValue,(_,re)=>{_!==re&&(i.value=_,i.value&&e.draggable&&t.nextTick(()=>{C.value&&!v.value&&(v.value=C.value.parentElement,D.value=v.value,Q(w.value,C.value,D.value),L())}),_||(v.value&&(v.value=null),oe())),i.value?k.value=te():(F.value=!1,O.value=e.draggable)}),t.watch(()=>e.showHeader,(_,re)=>{_!==re&&(u.value=_)}),t.watch(()=>e.showButtons,(_,re)=>{_!==re&&(b.value=_)}),t.watch(()=>$.value,(_,re)=>{const we=_||{},xe=re||{};JSON.stringify(we)!==JSON.stringify(xe)&&n.emit("resize",{newSize:_,oldSize:re,isMaximized:F.value})});const J=t.computed(()=>(i.value&&document.body.classList.add("modal-open"),i.value)),de=t.computed(()=>{var we;const _={modal:!0,"farris-modal":!0,fade:!0};_["f-modal-fitContent"]=!!s.value,_.show=!!J.value;const re=(we=e.maskClass)==null?void 0:we.split(" ");return re==null||re.reduce((xe,ze)=>(xe[ze]=!0,xe),_),_}),ge=t.computed(()=>{var we;const _={"modal-dialog":!0},re=(we=l.value)==null?void 0:we.split(" ");return re==null||re.reduce((xe,ze)=>(xe[ze]=!0,xe),_),_}),le=t.computed(()=>{const _={position:"absolute",top:`${(window.innerHeight-a.value)/2}px`,left:`${(window.innerWidth-o.value)/2}px`,width:`${o.value}px`,height:s.value?"auto":`${a.value}px`};return e.mask||(_.pointerEvents="auto"),_}),X=()=>ye.getMaxZIndex()||1040,ce=t.computed(()=>{const _={display:"block",zIndex:X()};return e.mask||(_.pointerEvents="none",_.backgroundColor="transparent"),k.value&&(_.backgroundColor="transparent"),_}),E=t.computed(()=>({"modal-content":!0,"modal-content-has-header":u.value})),q=t.computed(()=>{const _={display:u.value?"":"none"};return _["pointer-events"]=O.value?"auto":"none",_}),H=t.computed(()=>({"f-icon":!0,modal_maximize:!0,modalrevert:F.value})),W=t.computed(()=>({"modal-body":!0,"f-utils-flex-column":p.value==="iframe","f-utils-fill":!0}));function ee(){return{height:`${e.footerHeight||60}px`}}const ie=t.computed(()=>{const _={textAlgin:h.value},re=ee();return Object.assign(_,re)});function se(_){if(_==null||_.stopPropagation(),F.value){F.value=!1,M();return}j(),F.value=!0}async function Ve(_,re){_.handle&&await _.handle(re,_)&&n.emit("closed",re)}function be(_){_.width&&(o.value=_.width),_.height&&(a.value=_.height),_.buttons&&(y.value=_.buttons),_.title&&(I.value=_.title)}let ae=null,ve=null;t.onBeforeMount(()=>{k.value=te()}),t.onMounted(()=>{C.value&&!v.value&&(v.value=C.value.parentElement,D.value=v.value,Q(w.value,C.value,D.value)),J.value&&document.body.classList.add("modal-open"),ae=mi(e,n),ve=gi(e,n)}),t.onUnmounted(()=>{A&&A(),ae&&ae.remove(),ve&&ve.remove()}),n.expose({modalElementRef:C,updateModalOptions:be,close:S,maxDialog:se,isMaximized:F});function Be(){return t.createVNode("ul",null,[g.value&&t.createVNode("li",{class:"f-btn-icon f-bare"},[t.createVNode("span",{class:"f-icon modal_minimize"},null)]),f.value&&t.createVNode("li",{onClick:se,class:"f-btn-icon f-bare",style:"pointer-events: auto;"},[t.createVNode("span",{class:H.value},null)]),d.value&&t.createVNode("li",{class:"f-btn-icon f-bare",onClick:_=>S(_,!1),style:"pointer-events: auto;"},[t.createVNode("span",{class:"f-icon modal_close"},null)])])}function Le(){return t.createVNode("div",{class:"modal-footer",style:ie.value},[y.value&&y.value.map(_=>{const re=t.ref(_.disabled);return t.createVNode("button",{name:_.name,type:"button",disabled:re.value,class:_.class+(_.iconClass?" btn-icontext":""),onClick:we=>{Ve(_,we)}},[!!_.iconClass&&t.createVNode("i",{class:_.iconClass},null),_.text])})])}function Ee(){return t.createVNode("div",{ref:w,class:"modal-header",style:q.value},[n.slots.headerTemplate?n.slots.headerTemplate():t.createVNode("div",{class:"modal-title"},[N.value&&t.createVNode("span",{class:c.value,style:"margin-right: 8px"},null),t.createVNode("span",{class:"modal-title-label"},[I.value])]),t.createVNode("div",{class:"actions"},[Be()])])}function He(){return n.slots.footerTemplate?n.slots.footerTemplate():x.value&&Le()}function Ye(_){if(_.stopPropagation(),e.allowClickMaskToClose){if(_.target!==P.value)return;S(_,!1)}}function st(){var _,re;return t.createVNode("div",{id:r.value,class:ge.value,style:le.value,ref:C},[t.createVNode("div",{class:E.value},[u.value&&Ee(),t.createVNode("div",{class:W.value},[(re=(_=n.slots).default)==null?void 0:re.call(_),p.value==="iframe"&&t.createVNode("iframe",{title:r.value,class:"f-utils-fill",width:"100%",frameborder:"0",src:m.value},null)]),He()]),!s.value&&C.value&&!F.value&&B(C.value)])}function ct(_){return _||"body"}return()=>t.createVNode(t.Teleport,{to:ct(e.host)},{default:()=>[J.value&&t.createVNode(t.Transition,{name:"fade",appear:!0},{default:()=>[t.createVNode("div",{ref:P,class:de.value,style:ce.value,onClick:Ye},[st()])]})]})}});function Rn(e){if(e.content&&e.content.render)return e.content.render;if(e.render&&typeof e.render=="function")return e.render}function hi(e){const n=document.createElement("div");n.style.display="contents";const o=t.createApp({setup(a,i){t.onUnmounted(()=>{document.body.removeChild(n)});const r=t.ref(),l=t.ref(e.class||""),s=t.ref(!!e.showButtons),u=t.ref(!!e.showHeader),c=t.ref(e.showCloseButton==null?!0:e.showCloseButton),d=t.ref(!0),f=t.ref(e.title||""),g=e.acceptCallback||(()=>{}),p=e.rejectCallback||(()=>{}),m=e.closedCallback||(P=>{}),h=e.resizeHandle||(P=>{}),b=e.stopMoveHandle||(P=>{}),I=Rn(e),v=P=>{d.value=!1,o.unmount(),m(P)};return t.onMounted(()=>{}),i.expose({modalRef:r}),()=>t.createVNode(et,{ref:r,class:l.value,modelValue:d.value,"onUpdate:modelValue":P=>d.value=P,title:f.value,width:e.width,height:e.height,buttons:e.buttons,"show-header":u.value,"show-buttons":s.value,"show-close-button":c.value,"show-max-button":!1,onAccept:g,onCancel:p,fitContent:e.fitContent==null?!0:e.fitContent,onClosed:v,onResize:h,onStopMove:b},{default:()=>[I&&I(o)]})}});return document.body.appendChild(n),o.use(Qe.LocaleService.i18n),o.mount(n),o}class Ln{constructor(n){fe(this,"appContext",null);fe(this,"modalRef",t.ref());fe(this,"activeModalIndex",t.ref(0));fe(this,"modalRefs",{});fe(this,"isUseEscCloseModal",t.ref(!1));fe(this,"activeModalInstance",t.computed(()=>this.modalRefs[this.activeModalIndex.value]));this.app=n,this.appContext=n?n._context:null}getCurrentModal(){return this.activeModalInstance.value}adaptToWindow(n,o){const{width:a,height:i}={width:window.innerWidth,height:window.innerHeight};return a<n&&(n=a-14),i<o&&(o=i-14),{width:n,height:o}}static show(n){const o=Object.assign({title:"",showButtons:!0,showHeader:!0},n);return hi(o)}close(n){var o,a;n?(a=n.value)==null||a.close():(o=this.getCurrentModal())==null||o.close()}open(n){const o=document.createDocumentFragment();n.showMaxButton&&n.fitContent&&(n.showMaxButton=!1);const a=t.shallowRef(Object.assign({title:"",showButtons:!0,showHeader:!0},n)),i=t.ref(!0),r=a.value.acceptCallback||(()=>{}),l=a.value.rejectCallback||(()=>{}),s=a.value.closedCallback||((k,S)=>{}),u=a.value.resizeHandle||(k=>{}),c=n.stopMoveHandle||(k=>{});let d;const f=Rn(a.value),g=k=>{var V;i.value=!1;const S=(V=k==null?void 0:k.target)==null?void 0:V.classList.contains("modal_close");s(k,this.isUseEscCloseModal.value?"esc":S?"icon":"button")},p=k=>{g(k),d&&t.nextTick(()=>{if(this.modalRefs[this.activeModalIndex.value]&&delete this.modalRefs[this.activeModalIndex.value],t.render(null,o),d=null,this.modalRef.value=null,this.modalRefs){const S=Object.keys(this.modalRefs).map(V=>Number(V));S.length>0?this.activeModalIndex.value=Math.max(...S):this.activeModalIndex.value=0}this.isUseEscCloseModal.value=!1})},m=k=>{var S;this.isUseEscCloseModal.value=!0,this.activeModalInstance&&((S=this.activeModalInstance.value)==null||S.close(k==null?void 0:k.event))},{width:h,height:b}=a.value,I=this.adaptToWindow(h||500,b||320);Object.assign(a.value,I);const v=()=>t.createVNode(et,t.mergeProps({ref:this.modalRef,modelValue:i.value,"onUpdate:modelValue":k=>i.value=k},a.value,{onAccept:r,onCancel:l,onClosed:p,onResize:u,onEsc:m,onStopMove:c}),{default:()=>[f&&f(this.app)]});return d=(k=>{const S=t.h(v,k);return S.appContext=this.appContext,t.render(S,o),S})({...a.value}),this.activeModalIndex.value++,this.modalRefs[this.activeModalIndex.value]=this.modalRef.value,{update:k=>{a.value={...a.value,...k},d&&t.render(t.cloneVNode(d,{...a}),o)},destroy:p,modalRef:this.activeModalInstance,close:()=>this.close()}}}const An=Symbol("FModalService");et.install=e=>{e.component(et.name,et);const n=new Ln(e);e.provide(An,n),e.provide("FModalService",n)},et.register=(e,n,o,a)=>{e.modal=et,n.modal=ui,a.modal={callbackResolver:di}};const Re=class Re{static show(n){const o=t.reactive({...n}),a=!1,i=o.type==="error"||o.type==="prompt",r=o.type==="error"?"错误提示":o.type==="prompt"&&o.title||"",l=o.acceptCallback||(()=>{}),s=o.rejectCallback||(()=>{});let u=null,c=new Ln(Re.app);const d=()=>{u&&(u==null||u.destroy(),c=null)};return u=c==null?void 0:c.open({class:"modal-message modal-message-type-info",title:r,showButtons:a,showHeader:i,width:o.width||400,fitContent:!0,showMaxButton:!1,draggable:!0,dragHandle:".messager-draggable",render:()=>t.createVNode(Tt,t.mergeProps(o,{onAccept:l,onReject:s,onClose:d}),null)}),c==null?void 0:c.getCurrentModal()}static info(n,o){const a=t.reactive({type:"info",title:n,detail:o,okButtonText:"知道了",showCancelButton:!1});Re.show(a)}static warning(n,o){const a=t.reactive({type:"warning",title:n,detail:o,okButtonText:"知道了",showCancelButton:!1});Re.show(a)}static success(n,o){const a=t.reactive({type:"success",title:n,detail:o,okButtonText:"关闭",showCancelButton:!1});Re.show(a)}static error(n,o,a){const i=t.reactive({width:500,type:"error",okButtonText:"关闭",showCancelButton:!1,exceptionInfo:{date:a,message:n,detail:o}});Re.show(i)}static prompt(n,o){const a=t.reactive({type:"prompt",title:n,detail:o,okButtonText:"确定",cancelButtonText:"取消"});Re.show(a)}static question(n,o,a,i){const r=t.reactive({type:"question",title:n,detail:o,okButtonText:"确定",cancelButtonText:"取消",acceptCallback:a,rejectCallback:i});Re.show(r)}};fe(Re,"app",null);let Nt=Re;Tt.install=e=>{e.component(Tt.name,Tt),Nt.app=e,e.provide("FMessageBoxService",Nt)};const yi={id:{type:String,default:""},componentId:{type:String,default:""},canAdd:{type:Boolean,default:!1},canDelete:{type:Boolean,default:!1},canMove:{type:Boolean,default:!1},contentKey:{type:String,default:"contents"},childLabel:{type:String,default:""},childType:{type:String,default:""},modelValue:{type:Object}};function bi(e,n,o){var N;const a="",i=t.ref();let r;function l(){return!0}function s(){return!1}function u(){return!0}function c(){return!0}function d(){return!0}function f(x){if(!x||!x.value)return null;const w=t.ref(x==null?void 0:x.value.parent),C=f(w);return C||null}function g(x=n){var B;const{componentInstance:w,designerItemElementRef:C}=x;if(!w||!w.value)return null;const{getCustomButtons:F}=w.value;return w.value.canMove||w.value.canAdd||w.value.canDelete||F&&((B=F())!=null&&B.length)?C:g(x.parent)}function p(){}function m(x){return!!o}function h(){return(n==null?void 0:n.schema.label)||(n==null?void 0:n.schema.title)||(n==null?void 0:n.schema.name)}function b(){}function I(x,w){}function v(x){const{componentType:w}=x,C=t.inject("designer-host-service");let F=Je.getSchemaByTypeForDesigner(w,x,C);const B=w.toLowerCase().replace(/-/g,"_");return F&&!F.id&&F.type===w&&(F.id=`${B}_${Math.random().toString().slice(2,6)}`),F}function P(x){}function T(...x){return[]}function k(){}function S(x){var C;if(!(n!=null&&n.schema))return;let w="";{const{text:F,title:B,label:j,mainTitle:M,name:D,type:$}=n.schema;w=F||B||j||M||D||((C=z[$])==null?void 0:C.name)}w&&(!r&&x&&(r=x.formSchemaUtils),r.getControlBasicInfoMap().set(n.schema.id,{componentTitle:w,parentPathName:w}))}function V(x){var B;const{changeObject:w}=x,{propertyID:C,propertyValue:F}=w;["text","title","label","name","mainTitle"].includes((B=x==null?void 0:x.changeObject)==null?void 0:B.propertyID)&&C&&F&&S()}function y(x){V(x)}return i.value={canMove:l(),canSelectParent:s(),canAdd:c(),canDelete:u(),canNested:!d(),contents:[],elementRef:e,parent:(N=n.parent)==null?void 0:N.componentInstance,schema:n.schema,styles:a,canAccepts:m,getBelongedComponentInstance:f,getDraggableDesignItemElement:g,getDraggingDisplayText:h,getPropConfig:T,getDragScopeElement:b,onAcceptMovedChildElement:I,onChildElementMovedOut:P,addNewChildComponentSchema:v,onRemoveComponent:k,triggerBelongedComponentToMoveWhenMoved:t.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:t.ref(!1),onPropertyChanged:y,getCustomButtons:p,setComponentBasicInfoMap:S},i}const qn=t.defineComponent({name:"FDesignerInnerItem",props:yi,emits:["selectionChange","addComponent","removeComponent","clickButton"],setup(e,n){const o=t.ref(e.canMove),a=t.ref(e.canAdd),i=t.ref(e.canDelete),r=t.ref(!1),l=t.ref(e.contentKey),s=t.ref(e.childType),u=t.ref(e.childLabel),c=t.ref(e.modelValue),d=t.ref(""),f=t.ref(),g=t.inject("canvas-dragula"),p=t.ref(),m=t.inject("design-item-context"),h={designerItemElementRef:f,componentInstance:p,schema:c.value,parent:m,setupContext:n};t.provide("design-item-context",h);const b=t.inject("designer-host-service"),I=t.inject("external-container-id"),v=t.computed(()=>{var $;const M=(($=p.value)==null?void 0:$.getCustomButtons)&&p.value.getCustomButtons();return{"farris-component":!0,"flex-fill":e.id==="root-component","position-relative":o.value||i.value||(M==null?void 0:M.length),"farris-nested":r.value,"can-move":o.value,"d-none":f.value&&f.value.classList.contains("d-none")}}),P=t.computed(()=>{const M={};return d.value&&d.value.split(";").reduce((D,$)=>{const[O,A]=$.split(":");return O&&(D[O]=A),D},M),M});function T(M,D){if(m&&m.schema[l.value]){const $=m.schema[l.value].findIndex(O=>O.id===D.id);if($>-1){const O=m.schema[l.value].length,A=m.schema[l.value][$%O];m.designerItemElementRef.value.querySelector(`#${A.id}-design-item`),m.schema[l.value].splice($,1),Ue.value++,n.emit("removeComponent"),n.emit("selectionChange")}}}function k(M){if(p.value.addNewChildComponentSchema){const D={componentType:s.value,label:u.value,parentComponentInstance:p.value,targetPosition:-1},$=p.value.addNewChildComponentSchema(D);c.value[l.value].push($),n.emit("addComponent")}}function S(){return a.value&&t.createVNode("div",{role:"button",class:"btn component-settings-button",title:"新增",ref:"removeComponent",onClick:M=>{k()}},[t.createVNode("i",{class:"f-icon f-icon-plus-circle"},null)])}function V(M){return i.value&&t.createVNode("div",{role:"button",class:"btn component-settings-button",title:"删除",ref:"removeComponent",onClick:t.withModifiers(D=>T(D,M),["stop"])},[t.createVNode("i",{class:"f-icon f-icon-yxs_delete"},null)])}function y(){return o.value&&t.createVNode("div",{role:"button",class:"btn component-settings-button",title:"移动",ref:"moveComponent"},[t.createVNode("i",{"data-dragging-icon":"true",class:"cmp_move f-icon f-icon-yxs_move"},null)])}function N(){var D;const M=((D=p.value)==null?void 0:D.getCustomButtons)&&p.value.getCustomButtons();return M&&!!M.length&&M.map($=>t.createVNode("div",{role:"button",class:`btn component-settings-button ${$.class||""} ${$.text?"settings-button-extend":""}`,title:$.title,ref:$.id,onClick:O=>$.onClick&&$.onClick(O)},[t.createVNode("i",{class:"f-icon "+$.icon},null),$.text&&t.createVNode("span",{class:"icon-text"},[$.text])]))}function x(M){return t.createVNode("div",{class:"component-btn-group","data-noattach":"true"},[t.createVNode("div",null,[S(),y(),V(M),N()])])}t.watch(()=>e.modelValue,M=>{c.value=M,h.schema=M});function w(M){window.scrollContainerList||(window.scrollContainerList=new Set);const D=M.getAttribute("id");D&&window.scrollContainerList.add(D)}function C(M){const D=M.target;w(D),Sa(D)}function F(){var M,D;(D=(M=c.value)==null?void 0:M.contents)!=null&&D.length&&f.value&&f.value.addEventListener("scroll",C)}function B(){const M=f.value,D=t.ref(M.children[1]);return bi(D,h).value}t.onMounted(()=>{if(f.value){const M=f.value.querySelector(`[data-dragref='${c.value.id}-container']`);p.value=M&&M.componentInstance?M.componentInstance.value:B(),g&&M&&g.attachComponents(M,c.value),r.value=p.value.canNested!==void 0?p.value.canNested:r.value,a.value=p.value.canAdd!==void 0?p.value.canAdd:a.value,i.value=p.value.canDelete!==void 0?p.value.canDelete:i.value,o.value=p.value.canMove!==void 0?p.value.canMove:o.value,d.value=p.value.styles||"",f.value&&(f.value.componentInstance=p,f.value.designItemContext=h),p.value.setComponentBasicInfoMap(b)}F(),Ue.value++}),t.onBeforeUnmount(()=>{f.value&&f.value.removeEventListener("scroll",C)});function j(M){if(M&&(M.preventDefault(),M.stopPropagation()),I){const O=document.getElementById(`${I}-design-item`);O&&O.click();return}let D=h.designerItemElementRef;const $=f.value;if($){const O=document.getElementsByClassName("dgComponentFocused");O&&O.length===1&&O[0]===f.value&&f.value.classList.contains("dgComponentSelected")||(Array.from(O).forEach(L=>L.classList.remove("dgComponentFocused")),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(L=>L.classList.remove("dgComponentSelected")),$.classList.add("dgComponentFocused"),n.emit("selectionChange",c.value.type,c.value,e.componentId,p.value),p.value.getDraggableDesignItemElement&&(D=p.value.getDraggableDesignItemElement(h),D&&D.value&&D.value.classList.add("dgComponentSelected")))}Dt(D==null?void 0:D.value)}return()=>t.createVNode("div",{id:`${e.id}-design-item`,ref:f,class:v.value,style:P.value,onClick:j},[x(c.value),n.slots.default&&n.slots.default()])}});class vi extends ut{constructor(n,o){super(n,o)}getPropertyConfig(n){return this.getBasicPropConfig(n),this.getAppearanceProperties(n),this.getBehaviorProperties(n),this.getToolbarProperties(n),this.propertyConfig}getBehaviorProperties(n){const o=this.getPropertyEditorParams(n,[],"show",{},{},"visible"),a=this.getPropertyEditorParams(n,[],"disabled"),i=this;this.propertyConfig.categories.behavior={description:"",title:"行为",properties:{show:{description:"是否可见",type:"boolean",title:"是否可见",editor:o},disabled:{description:"是否禁用",type:"boolean",title:"是否禁用",editor:a},removeable:{description:"是否可移除",type:"boolean",title:"是否可移除"},titleHtml:{title:"标签页模板",type:"string",description:"设置标签页HTML模板",refreshPanelAfterChanged:!0,editor:{type:"code-editor",language:"html"}}},setPropertyRelates(r,l){if(r)switch(r.propertyID){case"disabled":case"show":i.afterMutilEditorChanged(n,r);break}}}}getBasicPropConfig(n){this.propertyConfig.categories.basic={description:"Basic Infomation",title:"基本信息",properties:{id:{description:"标签页项的标识",title:"标识",type:"string",readonly:!0},title:{description:"标签页项的标题",title:"标题",type:"string"}},setPropertyRelates(o,a){if(o)switch(o&&o.propertyID){case"title":{o.needRefreshControlTree=!0;break}}}}}getAppearanceProperties(n){this.propertyConfig.categories.appearance={title:"外观",description:"",properties:{customTitleClass:{title:"标题class",type:"string",description:"为标签页的标题指定class样式名"},tabWidth:{description:"为标签页的标题指定宽度",type:"number",title:"标签页的标题宽度(px)",editor:{nullable:!0,min:0,decimals:0}}}}}getToolbarProperties(n){this.propertyConfig.categories.toolbar={title:"工具栏",description:"",properties:{toolbarPosition:{title:"工具栏位置",type:"string",description:"为工具栏指定位置",editor:{type:"combo-list",data:[{id:"inHead",name:"标题区域"},{id:"inContent",name:"内容区域"}]}}}}}}class Ci extends ut{constructor(n,o){super(n,o)}getPropertyConfig(n){return this.propertyConfig.categories.basic=this.getBasicPropConfig(n),this.propertyConfig.categories.appearance=this.getAppearanceProperties(n),this.propertyConfig.categories.behavior=this.getBehaviorProperties(n),this.getEventPropConfig(n),this.propertyConfig}getAppearanceProperties(n){return{title:"外观",description:"Appearance",properties:{class:{title:"class样式",type:"string",description:""},titleWidth:{description:"标题区域宽度占标签头部区域的横向比例",type:"number",title:"标题区域宽度(%)",editor:{min:0,decimals:0,max:100,nullable:!0}},autoTitleWidth:{description:"是,则标题显示全部字符;否,则标题最多显示20个字符",type:"boolean",title:"标题自适应宽度"},fill:{description:"flex布局下,是否填充满剩余部分",type:"boolean",title:"填充"}}}}getBehaviorProperties(n){const o=this.getCurrentTabPages(n);n.activeId&&typeof n.activeId=="string"&&(o.find(l=>l.id===n.activeId)||(n.activeId=""));const a=this.getPropertyEditorParams(n,["Const","Variable"],"activeId",{constType:"enum",constEnums:o},{newVariableType:"String"}),i=this;return{description:"",title:"行为",properties:{activeId:{title:"默认选中标签页",type:"string",description:"默认选中标签页",defaultValue:o.length>0?o[0].id:"",editor:a}},setPropertyRelates(r,l){if(r)switch(r.propertyID){case"activeId":i.addNewVariableToViewModel(r,i.viewModelId);break}}}}getCurrentTabPages(n){const o=n.contents||[],a=[];return o.forEach(i=>{a.push({name:i.title,id:i.id})}),a}getEventPropConfig(n){const o=[{label:"onTabChange",name:"切换标签页事件"},{label:"onTabRemove",name:"移除标签页事件"}],a=this,i=a.eventsEditorUtils.formProperties(n,a.viewModelId,o),r=a.createBaseEventProperty(i);this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:r,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(l,s){const u=l.propertyValue;delete n[a.viewModelId],u&&(u.setPropertyRelates=this.setPropertyRelates,a.eventsEditorUtils.saveRelatedParameters(n,a.viewModelId,u.events,u))}}}}function wi(e,n){const o=e.schema,a=new $n,{canMove:i,canAccept:r,canDelete:l}=a.getTemplateRule(e,n);function s(h){return h.componentType==="list-view"?!0:r}function u(){return l}function c(){return i}function d(){return!i&&!l}function f(h){var T;let b=document.querySelector(".dgComponentFocused");b||(b=e.designerItemElementRef.value.querySelector(".farris-nav-tabs .f-state-active"));const I=(b==null?void 0:b.id)||(b==null?void 0:b.getAttribute("pageid"))||"";if(I===`${o.id}-design-item`)return new Ci(h,n).getPropertyConfig(o);const v=new vi(h,n),P=(T=o.contents)==null?void 0:T.find(k=>I===`${k.id}-design-item`);return v.getPropertyConfig(P||o)}function g(){e.designerItemElementRef.value&&t.nextTick(()=>{const h=e.designerItemElementRef.value.querySelector(".dgComponentSelected");h!=null&&h.className.includes("dgComponentSelected")&&h.click()})}function p(h){if(!h)return;const{changeObject:b}=h;b&&b.propertyID==="title"&&g()}function m(){var h;if(e&&n){const{formSchemaUtils:b}=n,I=z.tabs.name;b.getControlBasicInfoMap().set(e.schema.id,{componentTitle:I,parentPathName:I});const v=e.designerItemElementRef.value.querySelector(".farris-tabs-content");(h=e.schema.contents)==null||h.forEach(P=>{const T=v==null?void 0:v.querySelector(`#${P.id}-design-item`);T&&T.componentInstance&&T.componentInstance.value.setComponentBasicInfoMap()})}}return{canAccepts:s,checkCanDeleteComponent:u,checkCanMoveComponent:c,getPropsConfig:f,hideNestedPaddingInDesginerView:d,onPropertyChanged:p,setComponentBasicInfoMap:m}}function xi(e,n,o,a,i,r){const l=t.ref([]),s=t.ref(e.activeId||""),u=t.ref(!0),c=t.ref(),d=t.ref([]),f=t.ref(!0),g=t.ref(0),p=t.computed(()=>{const E=l.value.find(H=>H.props.id===s.value);return(E==null?void 0:E.props.toolbarPosition)==="inHead"});let m;function h(E){m=E}function b(E,q=!0){const H=E.value&&E.value.length>0?0:-1;if(d.value=[],H!==-1&&(!s.value||typeof s.value=="object")){if(s.value=E.value[H].props.id,!q)return;const W=E.value[H];W&&W.props.toolbar&&W.props.toolbar.buttons&&W.props.toolbar.buttons.length&&(d.value=[...W.props.toolbar.buttons])}}function I(){const E=l.value.find(W=>W.props.id===s.value);if(d.value=[],E&&E.props.toolbar){const W=Object.prototype.hasOwnProperty.call(E.props.toolbar,"contents")?"contents":"buttons";E.props.toolbar[W]&&E.props.toolbar[W].length&&(d.value=[...E.props.toolbar[W]])}const q=a.schema.contents,H=q==null?void 0:q.find(W=>W.id===s.value);H!=null&&H.toolbar&&!H.toolbar.type&&(H.toolbar.type="tab-toolbar"),c.value=H==null?void 0:H.toolbar}function v(E){const q=s.value;i.changeSelectedId(""),s.value=E,I(),n.emit("tabChange",{prevId:q,nextId:E})}function P(E){let q=-1;!s.value&&(q=E.value.findIndex(H=>s.value===H.props.id),q>-1)||(b(E,!1),v(s.value))}function T(E){let q=!1;q=!l.value.find(W=>W.props.id===E),q?(s.value="",P(l)):(s.value=E,v(s.value))}function k(E,q){E.classList.contains(q)||E.classList.add(q)}function S(E,q){E.classList.remove(q)}function V(E){const{parentElement:q}=E;q&&(E.scrollWidth>q.offsetWidth?k(E,"farris-title-text-custom"):S(E,"farris-title-text-custom"))}t.watch(()=>e.activeId,(E,q)=>{E!==q&&T(E)});function y(E){var H;if(e.autoTitleWidth)return;const q=(H=E.value)==null?void 0:H.querySelectorAll(".st-tab-text");q&&q.forEach(W=>V(W))}const N=E=>{E.preventDefault(),E.stopPropagation()};function x(E){l.value=l.value.filter(q=>q.props.id!==E),s.value===E&&(s.value="",b(l))}function w(E,q,H=!1){const W=l.value.findIndex(ee=>ee.props.id===q);x(q),N(E),t.nextTick(()=>{g.value++,y(o),H&&(u.value=!0),n.emit("tabRemove",{removeIndex:W,removeId:q,activeId:s.value})})}function C(E,q=!0){s.value===E&&(s.value="",b(l)),t.nextTick(()=>{g.value++,q&&(u.value=!0)})}function F(E){v(E)}function B(E){l.value.findIndex(H=>H.props.id===E.props.id)===-1&&l.value.push(E),g.value++}function j(E){l.value.findIndex(H=>H.props.id===E.props.id)!==-1&&(l.value.forEach(H=>{H.props.id===E.props.id&&(H=E)}),E.props.id===s.value&&p.value,t.nextTick(()=>{g.value++,y(o)}))}function M(E){E&&(E.stopPropagation(),E.preventDefault())}function D(E){var W;const q=a.designerItemElementRef.value.querySelector(".farris-tabs-content"),H=q==null?void 0:q.querySelector(`#${E}-design-item`);(W=H==null?void 0:H.componentInstance)!=null&&W.value.onRemoveComponent&&H.componentInstance.value.onRemoveComponent(r)}function $(E){var ie,se;const q=r.formSchemaUtils.getExpressions();if(!q||!q.length)return;const H=a.schema.contents,W=H==null?void 0:H.find(Ve=>Ve.id===E);if(!W||!((se=(ie=W.toolbar)==null?void 0:ie.buttons)!=null&&se.length))return;const ee=Ve=>{Ve.forEach(be=>{const ae=q.findIndex(ve=>ve.target===be.id);ae>-1&&q.splice(ae,1),be.children&&be.children.length&&ee(be.children)})};ee(W.toolbar.buttons)}function O(E,q){var ee,ie;M(E);const H=a.schema.contents,W=H==null?void 0:H.findIndex(se=>se.id===q);!H||W===-1||W===void 0||(ee=r==null?void 0:r.designerContext)!=null&&ee.checkCanDeleteControl&&!r.designerContext.checkCanDeleteControl(H[W])||($(q),D(q),H==null||H.splice(W,1),x(q),I(),(ie=a==null?void 0:a.setupContext)==null||ie.emit("selectionChange"),Ue.value++)}function A(){Array.from(document.getElementsByClassName("dgComponentFocused")).forEach(q=>q.classList.remove("dgComponentFocused"));const E=document.getElementsByClassName("dgComponentSelected");Array.from(E).forEach(q=>q.classList.remove("dgComponentSelected"))}function L(E){E.currentTarget.classList.add("dgComponentFocused","dgComponentSelected")}function Q(E,q){var ie;const{contents:H=[]}=a.schema,W=H==null?void 0:H.findIndex(se=>se.id===E),ee=H[W];(ie=a==null?void 0:a.setupContext)==null||ie.emit("selectionChange",ee.type,ee,e.componentId,q)}function te(E,q){const H=q.getBoundingClientRect(),W=E.getBoundingClientRect(),ee=W.left+W.width<=H.left+H.width,ie=W.left+W.width>=H.left;return ee&&ie}function oe(E,q){if(E||(E=m.value.querySelector(".farris-tabs-header").querySelector(".dgComponentSelected")),q||(q=m.value.querySelector(".farris-nav-tabs")),E&&q){const H=E.querySelector(".component-btn-group");te(E,q)?Et(E):H&&(H.style.display="none")}}function J(){o&&o.value&&o.value.addEventListener("scroll",E=>{const q=E.target.querySelector(".dgComponentSelected");oe(q,E.target)})}function de(E){if(E&&E.parentElement){let q=E.getBoundingClientRect(),H=E.parentElement.getBoundingClientRect();(q.left<H.left||q.right>H.right)&&(o.value.scrollLeft=0,q=E.getBoundingClientRect(),H=E.parentElement.getBoundingClientRect(),o.value.scrollLeft=q.left-H.left),Dt(E)}}function ge(E,q,H){var ie,se,Ve;A(),M(E),L(E),Q(q,H);const W=E.currentTarget;de(W);const ee=(se=(ie=H.schema)==null?void 0:ie.contents)==null?void 0:se.find(be=>be.id===q);if(ee&&(!ee.toolbar||((Ve=ee.toolbar.buttons)==null?void 0:Ve.length)===0)){const be=E.currentTarget;t.nextTick(()=>{A(),be==null||be.classList.add("dgComponentFocused","dgComponentSelected"),de(be)})}}function le(E){var W;const q=a.designerItemElementRef.value.querySelector(".farris-tabs-content"),H=q==null?void 0:q.querySelector(`#${E}-design-item`);(W=H==null?void 0:H.componentInstance)!=null&&W.value.onRemoveComponent&&H.componentInstance.value.setComponentBasicInfoMap()}function X(E,q){M(E);const H=a.schema.contents,W=H==null?void 0:H.find(ie=>ie.id===q);if(!W)return;(!W.toolbar||!W.toolbar.buttons)&&(W.toolbar={id:`${W.id}_toolbar`,buttons:[]}),W.toolbar.id||(W.toolbar.id=`${W.id}_toolbar`);const ee=Pt("tab-toolbar-item");ee.id=`tab_toolbar_item_${Math.random().toString().slice(2,6)}`,W.toolbar.buttons.push(ee),d.value=[...W.toolbar.buttons],c.value=W.toolbar,le(W.id),t.nextTick(()=>{if(o&&o.value){const ie=o.value.querySelector(".f-state-active");ie&&de(ie)}})}function ce(E){}return{activeId:s,addTab:B,changeTitleStyle:y,removeTab:w,selectTab:F,tabPages:l,updateTab:j,toolbarItems:d,removeDesignTab:O,selectDesignTab:ge,toolbarSchema:c,changeToolbarItems:I,addTabPageToolbar:X,listenTabNavElementScroll:J,setHorizontalScrollbarPosition:de,needUpdateNavigationLayout:g,checkActiveIdAndSelect:T,toggleShowTab:C,hasInHeadClass:p,emitSelectionChange:Q,resetPositionForSelectedElement:oe,setTabsRef:h,setScrollToSelectedTabFunction:ce,toolbarVisible:f,updateComponentBasicInfoMap:le}}class Si extends ut{constructor(o,a,i="response-toolbar"){super(o,a);fe(this,"toolbarType","response-toolbar");this.toolbarType=i}getPropertyConfig(o){return this.propertyConfig.categories.basic=this.getBasicPropConfig(o),this.toolbarType!=="tab-toolbar"&&this.getAppearancePropConfig(o),this.propertyConfig.categories.behavior=this.getBehaviorConfig(o),this.propertyConfig}getAppearancePropConfig(o){this.propertyConfig.categories.appearance={title:"外观",description:"Appearance",properties:{class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter",parentPropertyID:"appearance"}}}}getBehaviorProperties(o){this.propertyConfig.categories.behavior={title:"行为",description:"",properties:{alignment:{title:"对齐方式",description:"在工具栏区域内按钮组的位置",type:"enum",editor:{type:"combo-list",textField:"name",valueField:"value",data:[{value:"left",name:"左对齐"},{value:"center",name:"居中"},{value:"right",name:"右对齐"}]}}}}}}function Ti(e,n,o){const a=e.schema;function i(){var h;let m=((h=e.parent)==null?void 0:h.schema.type)||"";["page-header","tabs","section"].findIndex(b=>b===m)===-1&&(m=""),o.toolbarPosition=m}i();function r(m){return!1}function l(m,h){return h.text=m.label,h}function s(){return!1}function u(){return!1}function c(){return!1}function d(){return!0}function f(m){return new Si(m,n,a.type).getPropertyConfig(a)}function g(m){var v;m&&(m.stopPropagation(),m.preventDefault());const{schema:h}=e;h.buttons||(h.buttons=[]);let b="";if(h.type)b=h.type+"-item";else{const P=(v=e.parent)==null?void 0:v.schema.type;b=P==="tabs"?"tab-toolbar-item":P==="section"?"section-toolbar-item":"response-toolbar-item"}const I=dn(b);I.id=`toolbar_item_${Math.random().toString().slice(2,6)}`,h.buttons.push(I),o.updateToolbarItems(),o.changeSelectedId("")}function p(){return[{id:"appendItem",title:"新增按钮",text:"",icon:"f-icon f-icon-plus-circle text-white",onClick:m=>g(m)}]}return{canAccepts:r,checkCanAddComponent:c,checkCanDeleteComponent:u,checkCanMoveComponent:s,hideNestedPaddingInDesginerView:d,onResolveNewComponentSchema:l,getPropsConfig:f,getCustomButtons:p}}function Ni(e){let n;function o(i,r,l,s){const u=e.schema;if(!(u!=null&&u.buttons))return;let c;if(l){const p=l.getAttribute("id");c=Array.from(r.children).findIndex(m=>m.getAttribute("id")===p)}else c=Array.from(r.children).length;const d=i.getAttribute("id"),f=Array.from(r.children).findIndex(p=>p.getAttribute("id")===d),g=u.buttons[f];f!==c&&f>-1&&c>-1&&(f<c&&(c=c-1),u.buttons.splice(f,1),u.buttons.splice(c,0,g),s(),t.nextTick(()=>{const p=r.querySelector(".dgComponentSelected");p!=null&&p.className.includes("dgComponentSelected")&&(p.classList.remove("dgComponentSelected"),p.classList.remove("dgComponentFocused"),p.click()),Ue.value++}))}function a(i,r,l){n&&n.destroy(),!(!xt||!i||!r)&&(n=xt([i],{mirrorContainer:r,direction:"horizontal",getMirrorText(s){return s.innerText},moves(s,u,c){let d=!0;return c.classList.contains("dropdown-item")?(d=!1,d):(s.classList.contains("no-drag")&&(d=!1),d)}}).on("drop",(s,u,c,d)=>o(s,u,d,l)))}return{dragulaInstance:n,initDragula:a}}function Ii(e,n,o){const{renderToolbarItemDesigner:a,actionHandlers:i}=o;let r;function l(v){r=v}function s(v,P=null){const T=n.value.find(k=>k.id===v.id);if(T.isDP)if(document.body.click(),typeof P=="boolean")T.expanded=P;else{const k=v.expanded;T.expanded=!k}}i.toggleDropdownMenu=s;function u(v){var T;const P={"dropdown-menu":!0};if(v.class){const k=(T=v.menuClass)==null?void 0:T.split(" ");k&&k.length&&k.reduce((S,V)=>(S[V]=!0,S),P)}return P}function c(v){var k;const P={disabled:v.disabled===!1,"dropdown-submenu":!0,"f-rt-dropdown":!0,"text-truncate":!0},T=(k=v.dropdownClass)==null?void 0:k.split(" ");return T&&T.length&&T.reduce((S,V)=>(S[V]=!0,S),P),P}function d(v){const P={disabled:!1,"dropdown-item":!0,"f-rt-btn":!0,"position-relative":!0,"farris-component":!0,"text-truncate":!0},T=(v.class||"").split(" ");return T&&T.length&&T.reduce((k,S)=>(k[S]=!0,k),P),P}let f;const g=new Map;function p(v,P,T){v.stopPropagation();const k=T?T.id:"__top_item__";if(P.children&&P.children.length&&(P.expanded=!P.expanded,P.expanded)){if(g.has(k)&&g.get(k)!==P){const S=g.get(k);S&&(S.expanded=!1,g.delete(k))}g.set(k,P)}}function m(v){var P;return(P=v.children)==null?void 0:P.map((T,k)=>T.children&&T.children.length?t.createVNode("li",{class:c(T),id:T.id},[t.createVNode("span",{class:d(T),onClick:S=>p(S,T,v)},[T.text,t.createVNode("i",{class:"f-icon f-icon-arrow-chevron-right",style:"display: inline-block;float: right;line-height: 1.25rem;"},null)]),f(T,T)]):a(T,k,!0))}function h(v,P,T,k){const{height:y,left:N,top:x}=k[0],{width:w,height:C}=T.getBoundingClientRect(),{marginTop:F,marginBottom:B}=getComputedStyle(T),j=Math.ceil(parseFloat(F))+Math.ceil(parseFloat(B)),M=x+y,D=P==null?void 0:P.getBoundingClientRect();function $(){let Q=0,te="left";const oe=D?D.right:window.innerWidth,J=D?D.left:0;return Q=oe-N-10,oe-N<w&&N-J>oe-N&&(te="right",Q=N-J-10),{hposition:te,maxWidth:Math.min(Q,300)}}let O=0,A="bottom";if(v==="tabs"||v==="section")O=P.getBoundingClientRect().bottom-M-j-10;else{const Q=D?D.bottom:window.innerHeight;O=v==="page-header"?Q-M:x,O=O-j-10,A=v==="page-header"?"bottom":"top"}const L=$();return{position:A+"-"+L.hposition,maxWidth:L.maxWidth,maxHeight:O}}function b(v){var V,y,N;const P="300px",T={display:v.expanded===!0?"block":"none",position:"absolute",maxWidth:P,minWidth:"120px"};if(!(r!=null&&r.value))return T;const k=r.value.querySelector("#"+v.id),S=k==null?void 0:k.getClientRects();if(k&&S&&S.length>0){const x=k?k.querySelector("#"+v.id+"_menu"):null;if(!x||v.expanded!==!0)return T;x.style.visibility="hidden",x.style.display="block",x.style.maxHeight="auto",x.style.maxWidth=P;let w;switch(i.toolbarPosition){case"tabs":w=(V=r.value)==null?void 0:V.closest(".farris-tabs");break;case"section":w=(y=r.value)==null?void 0:y.closest(".f-section");break;default:w=(N=r.value)==null?void 0:N.closest(".f-page")}const C=h(i.toolbarPosition,w,x,S),{position:F,maxHeight:B,maxWidth:j}=C;x.style.visibility="visible";const M={left:F.indexOf("left")>-1?0:"unset",right:F.indexOf("left")>-1?"unset":0,bottom:F.indexOf("bottom")>-1?"unset":"100%",top:F.indexOf("bottom")>-1?"!00%":"unset",maxWidth:j?j+"px":"300px",maxHeight:B?B+"px":"auto",overflowY:B?"auto":"unset"};Object.assign(T,M)}return T}i.changeMenuPosition=b,f=function(v,P){return t.createVNode("ul",{class:u(v),style:b(v),id:v.id+"_menu"},[m(v)])};function I(v=""){v&&g.has(v)?g.forEach((P,T)=>{T!==v&&(P.expanded=!1,g.delete(T))}):(g.forEach(P=>{P.expanded=!1}),g.clear())}return{renderDropdownMenu:f,clearAllDropDownMenu:I,setResponseToolbarRef:l}}function Hn(){function e(o){const a={"f-icon":!0};if(o.icon){const i=o.icon.trim().split(" ");i&&i.length&&i.reduce((r,l)=>(r[l]=!0,r),a)}return a}function n(o){return!!(o.icon&&o.icon.trim())}return{iconClass:e,shouldShowIcon:n}}class Vi extends ut{constructor(n,o){super(n,o)}getPropertyConfig(n,o=!1){return this.propertyConfig.categories.basic=this.getBasicPropConfig(n),this.propertyConfig.categories.basic.properties.text={title:"文本",type:"string",description:"",refreshPanelAfterChanged:!0},this.getAppearanceProperties(n,o),this.getbBehaviorConfig(n),this.getEventPropConfig(n),this.propertyConfig}getAppearanceProperties(n,o=!1){this.propertyConfig.categories.appearance={title:"外观",properties:{class:{description:"组件的CSS样式",title:"class样式",visible:!o},icon:{title:"图标",type:"string",description:""},split:{title:"下拉按钮分离",type:"boolean",description:"启用下拉按钮分离,可以单独点击按钮。单独点击下拉按钮展开下拉面板",visible:!!(n.children&&n.children.length>0)}}}}getbBehaviorConfig(n){const o=this.getPropertyEditorParams(n,["Const","Variable","StateMachine","Expression"],"disabled");this.propertyConfig.categories.behavior=this.getBehaviorConfig(n,"",{disabled:{title:"禁用",type:"boolean",description:"按钮禁用状态",refreshPanelAfterChanged:!0,editor:o}})}getEventPropConfig(n){const o=[{label:"onClick",name:"点击事件"}],a=this,i=a.eventsEditorUtils.formProperties(n,a.viewModelId,o),r=a.createBaseEventProperty(i);this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:r,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(l,s){const u=l.propertyValue;delete n[a.viewModelId],u&&(u.setPropertyRelates=this.setPropertyRelates,a.eventsEditorUtils.saveRelatedParameters(n,a.viewModelId,u.events,u))}}}}class ki extends ut{constructor(o,a,i="response-toolbar-item"){super(o,a);fe(this,"toolbarType","response-toolbar-item");this.toolbarType=i}getPropertyConfig(o,a=!1){this.propertyConfig.categories.basic=this.getBasicPropConfig(o),this.propertyConfig.categories.basic.properties.text={title:"文本",type:"string",description:"",refreshPanelAfterChanged:!0},this.propertyConfig.categories.basic.setPropertyRelates=r=>{if(r)switch(r&&r.propertyID){case"text":{r.needRefreshControlTree=!0;break}}},this.getAppearanceProperties(o,a);const i=this.getPropertyEditorParams(o,["Const","Variable","StateMachine","Expression"],"disabled");return this.propertyConfig.categories.behavior=this.getBehaviorConfig(o,"",{disabled:{title:"禁用",type:"boolean",description:"按钮禁用状态",refreshPanelAfterChanged:!0,editor:i}}),this.getEventPropConfig(o),this.propertyConfig}getAppearanceProperties(o,a=!1){this.propertyConfig.categories.appearance={title:"外观",description:"Appearance",properties:{class:{title:"class样式",type:"string",description:"",$converter:"/converter/appearance.converter",parentPropertyID:"appearance",visible:!a},icon:{title:"图标",type:"string",description:""},split:{title:"下拉按钮分离",type:"boolean",description:"启用下拉按钮分离,可以单独点击按钮。单独点击下拉按钮展开下拉面板",visible:!!(o.children&&o.children.length>0)},tipsEnable:{title:"启用提示",type:"boolean",description:"当启用提示时,鼠标滑过按钮会有消息提示框",refreshPanelAfterChanged:!0,visible:this.toolbarType==="response-toolbar-item"},tipsText:{title:"提示消息内容",type:"string",description:"消息提示框内的展示内容",visible:o.tipsEnable===!0}}}}getEventPropConfig(o){const a=[{label:"onClick",name:"点击事件"}],i=this,r=i.eventsEditorUtils.formProperties(o,i.viewModelId,a),l=i.createBaseEventProperty(r);this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:l,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(s,u){const c=s.propertyValue;delete o[i.viewModelId],c&&(c.setPropertyRelates=this.setPropertyRelates,i.eventsEditorUtils.saveRelatedParameters(o,i.viewModelId,c.events,c))}}}}function At(e,n){if(!e)return!1;const o=n||[];return(o==null?void 0:o.findIndex(i=>i.id===e))===-1}function zn(e,n){const o=n||[];let a={parentIndex:-1,itemIndex:-1};return o.some((i,r)=>{if(i.children&&i.children.length>0){const l=i.children.findIndex(s=>s.id===e);return l>-1?(a={parentIndex:r,itemIndex:l},!0):!1}}),a}function _n(e,n){const o=n||[];let a={parentIndex:-1,itemIndex:-1};const i=o==null?void 0:o.findIndex(r=>r.id===e);return i>-1?{parent:null,item:o[i]}:(o.some((r,l)=>{if(r.children&&r.children.length>0){const s=r.children.findIndex(u=>u.id===e);return s>-1?(a={parentIndex:l,itemIndex:s},!0):!1}}),a.parentIndex<0?{parent:null,item:null}:{parent:o[a.parentIndex],item:o[a.parentIndex].children[a.itemIndex]})}function Fi(e,n){const o=n||[],a=o==null?void 0:o.findIndex(i=>i.id===e);return a>-1&&o[a].children&&o[a].children.length>0?o[a].expanded===!0:!1}function Bi(e,n,o){function a(C){return!1}function i(){return!1}function r(){return!1}function l(){return!1}function s(){return o.toolbarContext.schema.buttons||[]}function u(C,F=""){setTimeout(()=>{var D,$;const B=(D=e.parent)==null?void 0:D.designerItemElementRef.value;let j;F&&(j=B==null?void 0:B.querySelector("#"+F));const M=($=j||B)==null?void 0:$.querySelector("#"+C);M==null||M.click()},0)}function c(C,F){F.disabled&&F.disabled.expressionId&&(F.disabled.expressionId=`${F.id}_disabled`),F.visible&&F.visible.expressionId&&(F.visible.expressionId=`${F.id}_visible`);const B=n.formSchemaUtils.getExpressions(),j=B.find(D=>D.target===C.id);if(!j||!j.rules||!j.rules.length)return;const M={target:F.id,rules:[],targetType:"Button"};j.rules.forEach(D=>{const $=Object.assign(he.cloneDeep(D),{id:`${F.id}_${D.type}`});M.rules.push($)}),B.push(M)}function d(){var j;const C=e.schema,F=Object.assign(he.cloneDeep(C),{id:`${e.schema.type}-cloned-${Math.random().toString(36).slice(2,6)}`,onClick:null});(j=n==null?void 0:n.designerContext)!=null&&j.appendIdentifyForNewControl&&n.designerContext.appendIdentifyForNewControl(F);let B=[];return F.children&&F.children.length&&(B=F.children.map(M=>{var $;const D=he.cloneDeep(M);return Object.assign(D,{id:`${e.schema.type}-cloned-${Math.random().toString(36).slice(2,6)}`,onClick:null}),($=n==null?void 0:n.designerContext)!=null&&$.appendIdentifyForNewControl&&n.designerContext.appendIdentifyForNewControl(D),c(M,D),D}),F.children=B),c(C,F),F}function f(){const C=e.schema.type||"response-toolbar-item",F=Pt(C),B=C.toLowerCase().replace("-","_");return F&&!F.id&&F.type===C&&(F.id=`${B}_${Math.random().toString().slice(2,6)}`,F.text="按钮"),F}function g(C){const F=s(),B=F==null?void 0:F.findIndex(M=>M.id===C),j=B===-1?null:F[B];return{index:B,toolbarItem:j}}function p(){const C=e.schema.id,F=s();return At(C,F)}function m(C){const F=n.formSchemaUtils.getExpressions();if(!F||!F.length)return;const B=j=>{const M=F&&F.findIndex(D=>D.target===j.id);M>-1&&F.splice(M,1)};B(C),C.children&&C.children.length&&C.children.forEach(j=>{B(j)})}function h(C){o.changeSelectedId(C)}function b(C){n.formSchemaUtils.removeCommunicationInComponent(C),C.children&&C.children.length&&C.children.forEach(F=>{n.formSchemaUtils.removeCommunicationInComponent(F)})}function I(){var j,M,D;if((j=n==null?void 0:n.designerContext)!=null&&j.checkCanDeleteControl&&!n.designerContext.checkCanDeleteControl(e.schema))return;const C=s(),{parentIndex:F,itemIndex:B}=zn(e.schema.id,C);F===-1||B===-1||(m(e.schema),b(e.schema),C[F].children.splice(B,1),o.updateToolbarItems(),(M=e.setupContext)==null||M.emit("removeComponent"),(D=e.setupContext)==null||D.emit("selectionChange"),Ue.value++)}function v(){var j,M,D;if((j=n==null?void 0:n.designerContext)!=null&&j.checkCanDeleteControl&&!n.designerContext.checkCanDeleteControl(e.schema))return;const C=e.schema.id,F=s(),B=F==null?void 0:F.findIndex($=>$.id===C);B!==-1&&(m(F[B]),b(F[B]),F==null||F.splice(B,1),o.updateToolbarItems(),(M=e.setupContext)==null||M.emit("removeComponent"),(D=e.setupContext)==null||D.emit("selectionChange"),Ue.value++)}function P(C="Append"){var $;const F=s(),{parentIndex:B,itemIndex:j}=zn(e.schema.id,F);if(B===-1||j===-1)return;const M=f(),D=C==="Copy"?d():Object.assign({},M);F[B].children.splice(j+1,0,D),o.updateToolbarItems(),h(D.id),($=e.setupContext)==null||$.emit("addComponent")}function T(C,F){const{index:B}=g(F);if(B===-1)return{index:B,schema:null};const j=f(),M=C==="Copy"?d():Object.assign({},j);return{index:B,schema:M}}function k(){var j;const C=e.schema.id,{index:F,schema:B}=T("Copy",C);B&&(s().splice(F+1,0,B),o.updateToolbarItems(),u(B.id),(j=e.setupContext)==null||j.emit("addComponent"))}function S(){var j;const C=e.schema.id,{index:F,schema:B}=T("Append",C);if(B&&e.parent){const D=s()[F].children||[];D.push(B);const $=s();$[F].children=D,o.updateToolbarItems(),h(B.id),(j=e.setupContext)==null||j.emit("addComponent")}}function V(C){let F;switch(e.schema.type){case"tab-toolbar-item":F=new Vi(C,n);break;default:F=new ki(C,n,e.schema.type)}return F.getPropertyConfig(e.schema,p())}function y(C){C.stopPropagation(),C.stopImmediatePropagation()}function N(){const C=[{id:"delete",title:"删除",text:"",icon:"f-icon-yxs_delete",onClick:F=>{y(F),p()?I():v()}},{id:"copy",title:"复制",icon:"f-icon-yxs_copy",onClick:F=>{y(F);const{activeElement:B}=document,j=B?B.tagName.toLowerCase():"";j&&j==="input"||j==="textarea"?(B==null||B.blur(),t.nextTick(()=>{p()?P("Copy"):k()})):p()?P("Copy"):k()}}];return C.push(p()?{id:"appendSiblingButton",title:"",text:"新增同级",icon:"f-icon-plus-circle",onClick:F=>{y(F),P()}}:{id:"appendChildButton",title:"",text:"新增子级",icon:"f-icon-plus-circle",onClick:F=>{y(F),S()}}),C}function x(){const{schema:C}=e;m(C)}function w(){var C,F,B,j;if(e&&n){const{formSchemaUtils:M}=n,{schema:D}=e;switch(D.type){case"response-toolbar-item":{M.getControlBasicInfoMap().set(D.id,{componentTitle:D.text,parentPathName:D.text});break}case"tab-toolbar-item":case"section-toolbar-item":{let $;const O=(C=e.parent)==null?void 0:C.parent;(O==null?void 0:O.schema.type)==="tabs"||(O==null?void 0:O.schema.type)==="section"?$=(F=O.componentInstance)==null?void 0:F.value:$=(j=(B=O==null?void 0:O.parent)==null?void 0:B.componentInstance)==null?void 0:j.value,$!=null&&$.setComponentBasicInfoMap&&$.setComponentBasicInfoMap()}}}}return{canAccepts:a,checkCanMoveComponent:i,checkCanDeleteComponent:r,checkCanAddComponent:l,getPropsConfig:V,getCustomButtons:N,onRemoveComponent:x,setComponentBasicInfoMap:w}}const Mi=t.defineComponent({name:"FResponseToolbarItemDesign",props:wn,emits:["Click","dropdown","clearAll"],setup(e,n){const o=t.ref(e.alignment),a=Hn(),i=t.ref(),r=t.inject("designer-host-service"),l=t.inject("design-item-context"),s=t.inject("toolbar-item-action"),u=Bi(l,r,s),c=rn.useDesignerInnerComponent(i,l,u);t.onMounted(()=>{i.value.componentInstance=c}),n.expose(c.value);function d(){const T={"f-icon":!0},k=e.icon?e.icon.trim():"";return ye.getCustomClass(T,k)}function f(){return!!(e.icon&&e.icon.trim())}const g=t.computed(()=>{const T={btn:!0,"f-rt-btn":!0,"f-btn-ml":!e.isDP&&(o.value==="right"||o.value==="center"),"f-btn-mr":!e.isDP&&o.value==="left","btn-icontext":!!(e.icon&&e.icon.trim()),disabled:e.disabled===!0,"no-drag":!0,"text-truncate":!0};return ye.getCustomClass(T,e.class)}),p=t.computed(()=>e.split?{display:"flex","align-items":"center"}:{display:"flex","align-items":"center","border-radius":"6px","padding-right":"0.1rem","border-top-right-radius":"6px","border-bottom-right-radius":"6px"}),m=t.computed(()=>{const T={btn:!0,"dropdown-toggle":!0,"f-btn-mr":o.value==="left","dropdown-toggle-split":!0,"no-drag":!0};return ye.getCustomClass(T,e.class)}),h=t.computed(()=>{let T={btn:!e.isDPItem,disabled:e.disabled===!0,"dropdown-item":e.isDPItem,"f-rt-btn":!0,"text-truncate":!0,"btn-icontext":!e.isDPItem&&!!(e.icon&&e.icon.trim()),"dropdown-item-icontext":e.isDPItem&&!!(e.icon&&e.icon.trim()),"no-drag":!0};return e.isDPItem||(T=ye.getCustomClass(T,e.class||"")),e.isDP&&(T=ye.getCustomClass(T,e.dropdownClass||"")),T});function b(T,k){k&&k.stopPropagation(),n.emit(T,{id:e.id,isDP:e.isDP})}function I(){return{"btn-group":!0,"no-drag":!0,"f-rt-dropdown":!0,"f-btn-ml":o.value==="right"||o.value==="center","f-btn-mr":o.value==="left"}}function v(){return t.createVNode("div",{ref:i,"data-dragref":`${l.schema.id}-container`,class:"farris-component position-relative",style:"display:inline-block!important;"},[t.createVNode("div",{class:I(),id:e.id},[t.createVNode("div",{class:g.value,style:p.value,onClick:()=>b("clearAll")},[a.shouldShowIcon(e)&&t.createVNode("i",{class:a.iconClass(e)},null),t.createVNode("span",null,[e.text]),!e.split&&t.createVNode("span",{class:"f-icon f-icon-arrow-chevron-down",style:"margin:0 0.5rem 0 0.25rem;",onClick:T=>b("dropdown",T)},null)]),e.split&&t.createVNode("button",{class:m.value,style:"border-radius:0 6px 6px 0;",onClick:T=>b("dropdown",T)},null),s.renderDropdownMenu(e.item,e.item)])])}function P(){return t.createVNode("li",{ref:i,"data-dragref":`${l.schema.id}-container`,id:e.id,class:h.value},[a.shouldShowIcon(e)&&t.createVNode("i",{class:a.iconClass(e)},null),e.text])}return()=>e.isDP?v():e.isDPItem?P():t.createVNode("div",{ref:i,"data-dragref":`${l.schema.id}-container`,class:"farris-component position-relative",style:"display:inline-block!important;"},[t.createVNode("button",{type:"button",class:g.value,id:e.id,onClick:()=>b("clearAll")},[f()&&t.createVNode("i",{class:d()},null),e.text])])}});function Pi(e,n,o,a){function i(g,p,m,h){a.changeSelectedId((p==null?void 0:p.id)||""),o&&o.setupContext&&o.setupContext.emit("selectionChange",g,p,m,h)}function r(){}function l(g){const p=g.expanded;a.clearAllDropdown(),a.toggleDropdownMenu(g,!p)}function s(g){a.clearAllDropdown(g.isDP?g.id:"")}function u(g,p=""){const m=e.items||[],h=p||g,b=m.find(I=>I.id===h);return p?b.children.find(I=>I.id===g):b}function c(g,p=!1){if(!p)return;const m=g.target;m!=null&&m.classList.contains("dgComponentFocused")&&(m==null||m.classList.add("dgComponentSelected"))}function d(g,p=!1){if(!p)return;const m=g.target;m!=null&&m.classList.contains("dgComponentFocused")&&(m==null||m.classList.remove("dgComponentSelected"))}function f(g,p,m=!1){const h=u(g.id,g.parent),b=t.ref(h);return t.createVNode(qn,{key:h.id,class:["p-0",m?"d-block no-drag":"d-inline-block"],modelValue:b.value,"onUpdate:modelValue":I=>b.value=I,canMove:!1,childType:"response-toolbar-item",childLabel:"按钮",contentKey:"buttons",componentId:e.componentId,id:h.id,onSelectionChange:i,onRemoveComponent:r,onMouseenter:I=>c(I,m),onMouseleave:I=>d(I,m)},{default:()=>{var I;return[t.createVNode(Mi,{id:h.id,disabled:h.disabled,text:h.text,icon:h.icon,isDP:g.isDP,item:g,split:h.split,isDPItem:g.isDPItem,class:((I=g.appearance)==null?void 0:I.class)||"btn-secondary",alignment:e.alignment||"right",onDropdown:()=>l(g),onClearAll:v=>s(v),componentId:e.componentId},null)]}})}return{renderToolbarItemDesigner:f,actionHandlers:a}}function qt(e,n=!1,o=""){const a=[];return e.reduce((i,r)=>{if(r.children&&r.children.length>0){const l=qt(r.children,!0,r.id);i.push(Object.assign({},r,{children:l,isDPItem:!1,isDP:!0,parent:"",expanded:!1}))}else i.push(Object.assign({},r,{isDPItem:n,isDP:!1,parent:o}));return i},a),a}const Un=t.defineComponent({name:"FResponseToolbarDesign",props:ia,emits:["Click"],setup(e,n){const o=t.ref(qt(e.items)),a=t.ref(),i=t.ref(),r=t.ref(),l=t.ref("");let s=0;const u=15,c=t.inject("designer-host-service"),d=t.inject("design-item-context"),f={clearAllDropdown:A=>{},toggleDropdownMenu:A=>{},updateToolbarItems:()=>{},changeSelectedId:A=>{l.value=A},renderDropdownMenu:(A,L)=>{},toolbarContext:d,changeMenuPosition:(A,L,Q)=>({}),toolbarPosition:""},g=Ti(d,c,f),p=rn.useDesignerComponent(r,d,g),m=t.inject("toolbar-item-handler"),{initDragula:h,dragulaInstance:b}=Ni(d),I=Hn(),v=Pi(e,i,d,f),P=Ii(I,o,v),{renderToolbarItemDesigner:T}=v,{clearAllDropDownMenu:k,renderDropdownMenu:S,setResponseToolbarRef:V}=P;t.provide("toolbar-item-action",f),f.renderDropdownMenu=S,V(r),m&&(m.changeSelectedId=function(A){l.value=A});function y(){const A=i.value.querySelector(".dgComponentSelected");A&&Et(A)}function N(){if(l.value)if(At(l.value,o.value)){const{parent:A,item:L}=_n(l.value,o.value);A&&(f.toggleDropdownMenu(A,!0),setTimeout(()=>{var oe;const Q=r.value.querySelector("#"+A.id),te=Q==null?void 0:Q.querySelector("#"+L.id);(((oe=te==null?void 0:te.parentElement)==null?void 0:oe.className)||"").indexOf("dgComponentFocused")<0&&(te==null||te.click())},0))}else y()}function x(A=""){o.value.filter(L=>L.id!==A&&L.children&&L.children.length>0).forEach(L=>{L.expanded=!1}),k(A)}f.clearAllDropdown=x;function w(){m&&m.updateToolbarItems&&m.updateToolbarItems()}f.updateToolbarItems=w;function C(A){if(A){const L=r.value.querySelector("#"+A.id),Q=L.querySelector("#"+A.id+"_menu"),te=f.changeMenuPosition(A,L);Object.keys(te).forEach(oe=>{Q.style[oe]=te[oe]})}}function F(){const Q=i.value.clientWidth,te=i.value.querySelectorAll(".farris-component>.f-rt-btn");te&&te.forEach(J=>{J.style.maxWidth=Q-12+"px"});const oe=i.value.querySelectorAll(".farris-component>.f-rt-dropdown");oe&&oe.forEach(J=>{J.querySelector(".dropdown-toggle-split")?J.querySelector(".f-rt-btn").style.maxWidth=Q-38+"px":J.style.maxWidth=Q-12+"px"})}const B=new ResizeObserver(A=>{var L;if(A.length){const te=A[0].contentRect.width;if(te===0){s=0;return}if(Math.abs(te-s)>u){if(s=te,At(l.value,o.value)){const{parent:oe,item:J}=_n(l.value,o.value);C(oe)}else if(Fi(l.value,o.value)){const oe=(L=o.value)==null?void 0:L.find(J=>J.id===l.value);C(oe)}else x();F()}}});t.onMounted(()=>{B.observe(r.value),s=r.value.clientWidth,r.value.componentInstance=p,h(i.value,a.value,w)}),t.onUnmounted(()=>{B.disconnect(),b&&b.destroy&&b.destroy()}),n.expose(p.value);const j=t.computed(()=>{const A={"f-toolbar":!0,"f-response-toolbar":!0,"position-relative":!0,"f-response-toolbar-sm":e.buttonSize==="sm","f-response-toolbar-lg":e.buttonSize==="lg"};return ye.getCustomClass(A,e.customClass)}),M=t.computed(()=>({"text-left":e.alignment==="left","text-right":e.alignment==="right","justify-content-end":e.alignment==="right","justify-content-start":e.alignment==="left","justify-content-center":e.alignment==="center","no-drag":!0,"w-100":!0}));t.watch(()=>e.items,()=>{o.value=qt(e.items),t.nextTick(()=>{N(),F()})},{deep:!0});function D(A){A&&(A.stopPropagation(),A.preventDefault());const{schema:L}=d;L.buttons||(L.buttons=[]);const Q=dn("response-toolbar-item");Q.id=`toolbar_item_${Math.random().toString().slice(2,6)}`,Q.appearance={class:"btn btn-secondary"},L.buttons.push(Q)}function $(){return t.createVNode("li",{style:"border-width: 1px;border-style: dashed;display: inline-block;padding: 0 8px;line-height: 24px; border-radius: 3px; cursor: default;color: #B4BCCC;",onClick:D},[t.createVNode("span",{class:"f-icon f-icon-amplification mr-1",style:"font-size: 12px;"},null),t.createVNode("span",{class:"farris-tag-add-text"},[t.createTextVNode("添加按钮")])])}function O(){return o.value.map((A,L)=>T(A,L))}return()=>{var A;return t.createVNode("div",{ref:r,"data-dragref":`${d.schema.id}-container`,class:j.value,id:e.id},[t.createVNode("div",{ref:a,class:M.value,onClick:L=>x(L)},[t.createVNode("div",{ref:i,class:"d-block f-response-content"},[(A=o.value)!=null&&A.length?O():$()])])])}}});function ji(e,n,o,a,i){var g;const{toolbarItems:r,toolbarSchema:l,changeToolbarItems:s,hasInHeadClass:u}=e,c=l.value.id||`${((g=a==null?void 0:a.schema)==null?void 0:g.id)||""}-toolbar`;function d(p,m,h,b){var I;(I=a.setupContext)==null||I.emit("selectionChange",p,m,h,b)}function f(){s()}return t.createVNode("div",{class:"farris-tabs-toolbar",style:"overflow:unset;"},[t.createVNode("div",{class:"farris-tabs-inline-flex w-100",style:"flex:1"},[t.createVNode(qn,{modelValue:l.value,"onUpdate:modelValue":p=>l.value=p,class:"w-100 position-relative",key:c,canAdd:!1,childType:"tab-toolbar-item",childLabel:"按钮",contentKey:"buttons",id:c,onSelectionChange:d,componentId:i,onAddComponent:f},{default:()=>[t.createVNode(Un,{alignment:u.value?"right":"left",items:r.value,componentId:i},null)]})])])}function $i(e,n){let o;function a(s){var d;const c=Array.from(s.children).find(f=>f.className.includes("add-nav-item"));c&&!((d=c.className)!=null&&d.includes("d-none"))&&(c.className+=" d-none")}function i(s){var d;const c=Array.from(s.children).find(f=>f.className.includes("add-nav-item"));c&&((d=c.className)!=null&&d.includes(" d-none"))&&(c.className=c.className.replace(" d-none",""))}function r(s,u,c){i(u);const d=e.schema;if(!(d!=null&&d.contents))return;let f;if(c){const h=c.getAttribute("pageId");f=Array.from(u.children).findIndex(b=>b.getAttribute("pageId")===h)}else f=Array.from(u.children).length;const g=s.getAttribute("pageId"),p=Array.from(u.children).findIndex(h=>h.getAttribute("pageId")===g),m=d.contents[p];if(p!==f&&p>-1&&f>-1){if(p<f&&(f=f-1),d.contents.splice(p,1),d.contents.splice(f,0,m),n.value){const h=n.value[p];n.value.splice(p,1),n.value.splice(f,0,h)}t.nextTick(()=>{s.className.includes("dgComponentSelected")&&(s.classList.remove("dgComponentSelected"),s.classList.remove("dgComponentFocused"),s.click()),Ue.value++})}}function l(s,u){o&&o.destroy(),!(!xt||!s||!u)&&(o=xt([s],{mirrorContainer:u,direction:"horizontal",moves(c){return!c.classList.contains("no-drag")},getMirrorText(c){return c.innerText},accepts(c,d,f,g){return a(d),g&&g.className.includes("nav-item")}}).on("drop",(c,d,f,g)=>r(c,d,g)))}return{dragulaInstance:o,initHeaderDragula:l}}const Ei=t.defineComponent({name:"FTabsDesign",props:xn,emits:["tabChange","tabRemove"],setup(e,n){const o=t.ref(),a=t.inject("designer-host-service"),i=t.inject("design-item-context"),r=wi(i,a),l=Ct(o,i,r),s=t.ref(e.tabType),u=t.shallowRef(),c=t.shallowRef(),d={updateToolbarItems:function(){},changeSelectedId:E=>{}},f=xi(e,n,u,i,d,a),{activeId:g,changeTitleStyle:p,tabPages:m,addTab:h,updateTab:b,toolbarItems:I,setTabsRef:v,checkActiveIdAndSelect:P,listenTabNavElementScroll:T,toolbarSchema:k,toggleShowTab:S,hasInHeadClass:V,updateComponentBasicInfoMap:y}=f;v(o);const N=In(e,c,f),x=Tn(e,u,N,f),{updateNavigationLayout:w}=x,C=Nn(e,f),{hideDropDown:F}=C,B=Ca(e,u,x,N,f,l),j=B,M=Sn(e,u,x,N,f),D=new Map([["default",B],["one-page",j],["pills",M]]);t.computed(()=>{const E=m.value.find(q=>q.props.id===g.value);return E==null?void 0:E.slots});function $(){const E=l.value.schema.contents||[];return E.length<1?null:E.find(H=>H.id===g.value)}d.updateToolbarItems=function(){var q,H;const E=$();(q=E==null?void 0:E.toolbar)!=null&&q.buttons?I.value=[...(H=E==null?void 0:E.toolbar)==null?void 0:H.buttons]:I.value=[],k.value=E==null?void 0:E.toolbar,E!=null&&E.id&&y(E.id)};const O=t.ref(!0);t.provide("tabs",{activeId:g,addTab:h,updateTab:b,tabPages:m,tabType:s,toggleShowTab:S,toolbarVisible:O}),t.provide("toolbar-item-handler",d);const A=t.computed(()=>e.fill),L=t.computed(()=>({"farris-tabs-header":!0,"farris-tabs-inHead":V.value,"farris-tabs-inContent":!V.value,"farris-tabs-nav-fill":e.tabType==="fill","farris-tabs-nav-pills":e.tabType==="pills"})),Q=t.computed(()=>{const E={width:V.value&&e.titleWidth?`${e.titleWidth}%`:""};return E.width&&(E.flex="unset"),E}),te=t.computed(()=>({"farris-tabs":!0,"flex-column":e.position==="top","flex-column-reverse":e.position==="bottom","flex-row":e.position==="left","flex-row-reverse":e.position==="right","one-page":e.tabType==="one-page"})),{initHeaderDragula:oe,dragulaInstance:J}=$i(i,m);t.onMounted(()=>{m.value.length&&P(e.activeId||m.value[0].props.id),t.nextTick(()=>{w()}),p(u),window.addEventListener("click",E=>{var q;F.value||(q=o.value)!=null&&q.contains(E.target)||(F.value=!0)}),window.addEventListener("resize",()=>{w()}),T(),o.value.componentInstance=l,e.tabType==="default"&&oe(u.value,u.value)}),t.onUnmounted(()=>{J&&J.destroy&&J.destroy()});function de(){return!!I.value.length&&ji(f,l,r,i,e.componentId)}const ge=D.get(e.tabType)||D.get("default");function le(){var E,q,H,W;return t.createVNode("div",{class:L.value},[t.createVNode("div",{class:"farris-tabs-header-pre"},[(q=(E=n.slots).headerPrefix)==null?void 0:q.call(E)]),t.createVNode("div",{class:"farris-tabs-title scroll-tabs",style:Q.value},[ge&&ge()]),de(),t.createVNode("div",{class:"farris-tabs-header-post"},[(W=(H=n.slots).headerSuffix)==null?void 0:W.call(H)])])}const X=t.computed(()=>({"farris-tabs-content":!0,"f-utils-fill-flex-column":A.value}));function ce(){var E,q,H,W;return t.createVNode("div",{class:X.value,ref:c},[(q=(E=i==null?void 0:i.schema)==null?void 0:E.contents)!=null&&q.length?(W=(H=n.slots).default)==null?void 0:W.call(H):""])}return n.expose(l.value),l.value.updateToolbarItems=d.updateToolbarItems,()=>t.createVNode("div",{class:te.value,ref:o},[le(),ce()])}});function Di(e,n,o){return n?{enableAccordion:o.accordionMode}:{enableAccordion:""}}function Oi(e,n){var o;return{buttons:n.buttons,buttonPosition:n.position,buttonsClass:(o=n.appearance)==null?void 0:o.class,buttonsVisible:n.visible}}const Ht=new Map([["appearance",_e],["expanded","expandStatus"],["enableAccordion",Di],["toolbar",Oi]]);function Ri(e,n){const o=Math.random().toString().slice(2,6),a=n.parentComponentInstance,i=e.getSchemaByType("section");Object.assign(i,{id:`section-${o}`,appearance:{class:"f-section-in-mainsubcard"},mainTitle:n.mainTitle||i.mainTitle||"标题"});const r=e.getSchemaByType("content-container");Object.assign(r,{id:`container-${o}`,appearance:{class:"f-struct-wrapper"},contents:[i]});const l=a.schema;switch(l&&l.type){case z["splitter-pane"].type:{i.appearance.class="f-section-in-main";break}}const s=a.elementRef,u=window.getComputedStyle(s);return u&&u.display==="flex"&&(r.appearance.class+=" d-block"),r}function Wn(e,n,o){return o.parentComponentInstance?Ri(e,o):n}const Gn={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/section.schema.json",title:"section",description:"A Farris Container 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:"section"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},contentClass:{description:"",type:"string",default:""},contents:{description:"",type:"array",default:[]},enableAccordion:{description:"",type:"string",default:""},accordionMode:{description:"",type:"string",default:"default"},enableMaximize:{description:"",type:"boolean",default:!1},expanded:{description:"",type:"boolean",default:!0},fill:{description:"",type:"boolean",default:!1},headerClass:{description:"",type:"string",default:""},size:{description:"",type:"object",properties:{width:{type:"number"},height:{type:"number"}},default:null},showHeader:{description:"",type:"string",default:!0},mainTitle:{description:"",type:"string",default:""},subTitle:{description:"",type:"string",default:""},headerContentClass:{description:"",type:"string",default:""},extendClass:{description:"",type:"string",default:""},visible:{description:"",type:"boolean",default:!0},expandStatus:{description:"",type:"boolean",default:!0},toolbar:{description:"",type:"object",properties:{type:{type:"string",default:"section-toolbar"},position:{type:"string",default:"inHead"},buttons:{type:"array",default:[]},appearance:{description:"",type:"object",properties:{class:{type:"string",default:""}}}},default:null},headerTitleHtml:{description:"",type:"string",default:""},headerTitleRenderFunction:{description:"",type:"function",default:null},headerHtml:{description:"",type:"string",default:""},headerRenderFunction:{description:"",type:"function",default:null},headerContentHtml:{description:"",type:"string",default:""},headerContentRenderFunction:{description:"",type:"function",default:null},toolbarHtml:{description:"",type:"string",default:""},toolbarRenderFunction:{description:"",type:"function",default:null}},required:["id","type","contents"]},Li={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/section-toolbar.schema.json",title:"section-toolbar",description:"A Farris Toolbar Component",type:"object",properties:{id:{description:"The unique identifier for a Section Toolbar",type:"string"},type:{description:"The type string of Section Toolbar",type:"string",default:"section-toolbar"},appearance:{description:"",type:"object",properties:{class:{type:"string",default:""}}},alignment:{description:"The alignment of Section Toolbar Button.",type:"string",default:"right"},buttons:{description:"The items of Section Toolbar.",type:"array",default:[]},buttonSize:{type:"string",default:""},visible:{description:"",type:"boolean",default:!0}},required:["id","type","buttons"],events:{onClick:"点击事件"}},zt={contentClass:{type:String,default:""},customClass:{type:String,default:""},customStyle:{type:String,default:""},enableAccordion:{type:String,default:""},expandStatus:{type:Boolean,default:!0},mainTitle:{type:String,default:""},showHeader:{type:Boolean,default:!0},subTitle:{type:String,default:""},expandLabel:{type:String,default:"展开"},collapseLabel:{type:String,default:"收起"},headerClass:{type:String,default:""},enableMaximize:{type:Boolean,default:!1},headerContentClass:{type:String,default:""},extendClass:{type:String,default:""},buttons:{type:Array,default:[]},buttonPosition:{type:String,default:"inHead"},buttonsClass:{type:String,default:""},buttonsVisible:{type:Boolean,default:!0},fill:{type:Boolean,default:!1},visible:{type:Boolean,default:!0},headerTitleRenderFunction:{type:Function},headerRenderFunction:{type:Function},headerContentRenderFunction:{type:Function},toolbarRenderFunction:{type:Function}};Ie(zt,Gn,Ht,Wn);const Ai=Object.assign({},zt,{componentId:{type:String,default:""},headerTitleHtml:{type:String,default:""},headerHtml:{type:String,default:""},headerContentHtml:{type:String,default:""},toolbarHtml:{type:String,default:""}});Ie(bt,Li,Ht,yt),Ie(Ai,Gn,Ht,Wn);function qi(e,n,o){let a;function i(u=1){const c=["body>.f-datagrid-settings-simple-host","body>div","body>farris-dialog>.farris-modal.show","body>.farris-modal.show","body>farris-filter-panel>.f-filter-panel-wrapper","body .f-sidebar-show>.f-sidebar-main","body>.popover.show","body>filter-row-panel>.f-datagrid-filter-panel","body>.f-section-maximize"],d=Array.from(document.body.querySelectorAll(c.join(","))).filter(g=>g).map(g=>{const{display:p,zIndex:m}=window.getComputedStyle(g);return p==="none"?0:parseInt(m,10)}).filter(g=>g);let f=Math.max(...d);return f<1040&&(f=1040),f+u}function r(){a=e.value.nextElementSibling;const u=document&&document.querySelector("body");u&&(u.appendChild(e.value),e.value.style.zIndex=i())}function l(){a?n.value.insertBefore(e.value,a):n.value.appendChild(e.value),e.value.style.zIndex=null}function s(){!e||!n.value||(o.value=!o.value,o.value?r():l())}return{onClickMaxMinIcon:s}}function Xn(e,n){const o=t.ref(e.buttons),a=t.computed(()=>e.buttonPosition==="inHead"?"right":"left"),i=t.computed(()=>"f-section-toolbar col-6"+(e.buttonPosition==="inHead"?" f-toolbar f-section-header--toolbar":" f-section-content--toolbar")+(e.buttonsClass?" "+e.buttonsClass:"")),r=t.computed(()=>e.buttons&&e.buttons.length>0&&e.buttonPosition==="inHead");function l(c,d){n.emit("click",c,d)}function s(){return r.value&&t.createVNode(an,{customClass:i.value,items:o.value,onClick:l,alignment:a.value,visible:e.buttonsVisible},null)}function u(){return t.createVNode("div",{class:i.value},[t.createVNode("div",{class:"w-100",style:"flex:1"},[e.toolbarRenderFunction()])])}return()=>e.toolbarRenderFunction?u():s()}function Hi(e,n,o,a,i,r){const l={collapseLabel:Qe.LocaleService.getRealPropertyValue(e.collapseLabel,"收起","section.collapseLabel"),expandLabel:Qe.LocaleService.getRealPropertyValue(e.expandLabel,"展开","section.expandLabel")},s=t.computed(()=>e.buttonPosition),u=Xn(e,n),{onClickMaxMinIcon:c}=qi(a,i,r),d=t.computed(()=>e.enableMaximize),f=t.computed(()=>e.enableAccordion!==""),g=t.computed(()=>{const T={"f-section-header":!0};return n.slots.header&&e.headerClass.split(" ").reduce((S,V)=>(S[V]=!0,S),T),T});function p(T){T.stopPropagation(),e.enableAccordion!==""&&(o.value=!o.value)}function m(){const T=t.computed(()=>({btn:!0,"f-btn-collapse-expand":!0,"f-btn-mx":!0,"f-state-expand":o.value})),k=t.computed(()=>({"f-icon":!0,"f-icon-maximize":!r.value,"f-icon-minimize":r.value}));return t.createVNode("div",{class:"f-max-accordion"},[d.value?t.createVNode("span",{class:k.value,onClick:c},null):"",f.value?t.createVNode("button",{class:T.value,onClick:p},[t.createVNode("span",null,[o.value?l.collapseLabel:l.expandLabel])]):""])}function h(){return t.createVNode("div",{class:"f-title"},[t.createVNode("h4",{class:"f-title-text"},[e.mainTitle]),e.subTitle&&t.createVNode("span",null,[e.subTitle])])}function b(){const T=t.computed(()=>{const k={"f-content":!0};return e.headerContentClass&&e.headerContentClass.split(" ").reduce((V,y)=>(V[y]=!0,V),k),k});return n.slots.headerContent?t.createVNode("div",{class:T.value},[n.slots.headerContent()]):e.headerContentRenderFunction?t.createVNode("div",{class:T.value},[e.headerContentRenderFunction()]):null}function I(){return n.slots.headerTitle?n.slots.headerTitle():e.headerTitleRenderFunction?e.headerTitleRenderFunction():h()}function v(){return t.createVNode("div",{class:g.value},[I(),b(),s.value==="inHead"&&u(),(d.value||f.value)&&m()])}function P(){return n.slots.header?t.createVNode("div",{class:g.value},[n.slots.header()]):e.headerRenderFunction?t.createVNode("div",{class:g.value},[e.headerRenderFunction()]):v()}return()=>e.showHeader&&P()}const zi=t.defineComponent({name:"FSection",props:zt,emits:["click"],setup(e,n){const o=t.ref(),a=t.ref(),i=t.ref(e.customClass),r=t.computed(()=>e.enableAccordion),l=t.ref(e.expandStatus),s=t.computed(()=>e.buttonPosition),u=t.ref(!1),c=Hi(e,n,l,o,a,u),d=Xn(e,n),f=t.computed(()=>{const b={"f-section":!0,"f-section-accordion":r.value==="default","f-state-collapse":(r.value==="default"||r.value==="custom")&&!l.value,"f-section-custom-accordion":r.value==="custom","f-section-fill":e.fill,"f-section-maximize":u.value};return ye.getCustomClass(b,i.value)}),g=t.computed(()=>{const b={"f-section-content":!0};return ye.getCustomClass(b,e.contentClass)}),p=t.computed(()=>{const b={"f-section-extend":!0};return ye.getCustomClass(b,e.extendClass)});function m(){return n.slots.extend&&t.createVNode("div",{class:p.value},[n.slots.extend()])}function h(){return t.createVNode("div",{class:g.value},[s.value==="inContent"&&d(),n.slots.default&&n.slots.default()])}return t.watch(()=>e.expandStatus,(b,I)=>{b!==I&&(l.value=b)}),t.onMounted(()=>{o.value&&o.value&&(a.value=o.value.parentElement)}),()=>e.visible?t.createVNode("div",{class:f.value,ref:o,style:e.customStyle},[c(),m(),h()]):null}});function _i(e,n){const o=new $n,{canAccept:a}=o.getTemplateRule(e,n);function i(u){if(!Ra().basalDragulaRuleForContainer(u,n))return!1;const{schema:d}=e;return d.contents&&d.contents.length>0?!1:a}function r(u){return null}function l(){const{schema:u,parent:c}=e;c!=null&&c.schema.activeId&&u.id===c.schema.activeId&&(c.schema.activeId="")}function s(){var u,c;if(e&&n){const{formSchemaUtils:d}=n,f=d.getControlBasicInfoMap(),{schema:g}=e;f.set(g.id,{componentTitle:g.title,parentPathName:g.title}),(c=(u=g.toolbar)==null?void 0:u.buttons)!=null&&c.length&&g.toolbar.buttons.map(p=>{var m;f.set(p.id,{componentTitle:p.text,parentPathName:`${g.title} > ${p.text}`}),(m=p.children)!=null&&m.length&&p.children.map(h=>{f.set(h.id,{componentTitle:h.text,parentPathName:`${g.title} > ${h.text}`})})})}}return{canAccepts:i,getDraggableDesignItemElement:r,onRemoveComponent:l,setComponentBasicInfoMap:s}}function Ui(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!t.isVNode(e)}const Wi=t.defineComponent({name:"FTabPageDesign",props:Fn,emits:[],setup(e,n){const o=t.ref(),a=t.inject("design-item-context"),i=t.inject("designer-host-service"),r=_i(a,i),l=Ct(o,a,r);l.value.canNested=!1,l.value.canDelete=!1,l.value.canMove=!1,n.expose(l.value);const s=t.inject("tabs"),u=t.ref(!0),c={slots:n.slots,props:e},d=t.ref((s==null?void 0:s.tabType.value)||"default");t.onMounted(()=>{o.value.componentInstance=l;const v=s.tabPages.value.findIndex(P=>P.props.id===e.id);!v||v===-1?s==null||s.addTab(c):v>-1&&(u.value=!1,console.warn(`已经存在id为${e.id}的页签啦`))}),t.onUnmounted(()=>{});const f=t.computed(()=>(e==null?void 0:e.id)===(s==null?void 0:s.activeId.value)),g=t.computed(()=>({display:f.value?"":"none"}));t.watch(()=>e,v=>{s==null||s.updateTab({props:v,slots:n.slots})},{immediate:!0,deep:!0});function p(){var P,T;const v=(T=(P=n.slots).default)==null?void 0:T.call(P);return t.createVNode(zi,{"main-title":e.title,class:"farris-tab-page"},Ui(v)?v:{default:()=>[v]})}const m=t.computed(()=>({"farris-tab-page":!0,"drag-container":!0,"farris-tab-page-active":f.value}));function h(){var P,T;const v=(T=(P=n.slots).default)==null?void 0:T.call(P);return t.createVNode("div",{ref:o,class:m.value,"data-dragref":`${a.schema.id}-container`,style:g.value},[v])}const I=new Map([["default",h],["one-page",p]]).get(d.value)||h;return()=>u.value?I():null}}),Gi=Ie({id:{type:String,default:""},items:{type:Object,default:{}},class:{type:String,default:""},text:{type:String,default:""},disabled:{type:Boolean,default:!1},icon:{type:String,default:""},componentId:{type:String,default:""},expanded:{type:Boolean,default:!1},alignment:{Type:String,default:"right"},split:{type:Boolean,default:!1},isDP:{type:Boolean,default:!1},isDPItem:{type:Boolean,default:!1}},{$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/tab-toolbar-item.schema.json",title:"tab-toolbar-item",description:"A Farris Toolbar Item Component",type:"object",properties:{id:{description:"The unique identifier for a Response Toolbar",type:"string"},type:{description:"The type string of Response Toolbar",type:"string",default:"tab-toolbar-item"},appearance:{description:"",type:"object",properties:{class:{type:"string"}},default:{}},text:{description:"按钮",type:"string",default:"按钮"},icon:{description:"图标",type:"string",default:""},disabled:{description:"禁用",type:"boolean",default:!1},visible:{description:"是否可见",type:"boolean",default:!0},onClick:{description:"点击事件",type:"string",default:""},tipsEnable:{description:"",type:"boolean",default:!1},tipsText:{description:"",type:"string",default:""},dropdownClass:{description:"处于下拉菜单时的样式",type:"string",default:""},split:{description:"",type:"boolean",default:!1}},required:["id","type","text"],events:{onClick:"点击事件"}},ht,ea);Ze.install=e=>{e.component(Ze.name,Ze),e.component(vt.name,vt)},Ze.register=(e,n,o,a)=>{e.tabs=Ze,e["tab-page"]=vt,n.tabs=ra,n["tab-page"]=ha,a.tabs={eventHandlerResolver:sa}},Ze.registerDesigner=(e,n,o)=>{e.tabs=Ei,e["tab-page"]=Wi,n.tabs=la,n["tab-page"]=ya,n["tab-toolbar-item"]=Gi,e["tab-toolbar"]=Un,n["tab-toolbar"]=ca};const Xi=new Map([["appearance",_e]]),Yi={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/search-box.schema.json",title:"search-box",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for a search-box",type:"string"},type:{description:"The type string of search-box component",type:"string",default:"search-box"},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"]};function Ji(e,n,o){return n}const Qi={title:"search-box",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:[]}}}}}},_t={buttonContent:{type:String,default:'<i class="f-icon f-icon-search"></i>'},customClass:{type:String,default:""},modelValue:{type:String,default:""},popupHost:{type:Object},popupRightBoundary:{type:Object},popupOffsetX:{type:Object},data:{type:Array,default:[]},placeholder:{type:String,default:"请输入关键词"},idField:{default:"id",type:String},textField:{default:"name",type:String},maxHeight:{default:350,type:Number},loading:{default:!1,type:Boolean},disable:{default:!1,type:Boolean},showDropdown:{default:!0,type:Boolean},updateOn:{default:"blur",type:String}},Yn=Ie(_t,Yi,Xi,Ji,Qi),Zi={data:{type:Array,default:[]},onConfirmResult:{type:Function,default:()=>{}},onSearchedValue:{type:Function,default:()=>{}},idField:{default:"id",type:String},textField:{default:"name",type:String},maxHeight:{default:350,type:Number},loading:{default:!1,type:Boolean}},Jn=t.defineComponent({name:"FSearchBoxContainer",props:Zi,emits:["confirmResult","searchedValue"],setup(e,n){const o=t.ref(e.data),a=t.ref(),{slots:i}=n,r=t.computed(()=>({"search-box-container":!0,"f-utils-overflow-xhya":!0,"position-relative":!0}));function l(d){var f;(f=a.value)==null||f.search(d)}function s(d){d.length&&(n.emit("confirmResult",d[0].name),n.emit("searchedValue",d))}function u(d){return i.default?t.createVNode(t.Fragment,null,[i.default(d)]):t.createVNode("span",null,[d.item[e.textField]])}const c=t.computed(()=>{const d={};return d.padding="8px",e.maxHeight!==void 0&&e.maxHeight>0&&(d.maxHeight=`${e.maxHeight}px`),d});return t.watch(()=>e.loading,d=>{}),t.watch(()=>e.data,d=>{d!==o.value&&(o.value=d),a.value.updateDataSource(d)}),n.expose({search:l}),()=>{const d={content:u};return t.createVNode("div",{class:r.value,style:c.value},[t.createVNode(So,{ref:"loadingInstance",isActive:e.loading},null),t.createVNode(xo,{ref:a,itemClass:"dropdown-item",data:o.value,view:"ContentView",onClickItem:f=>s(f.data),idField:e.idField,textField:e.textField,titleField:e.textField,valueField:e.idField},d)])}}}),Ge=t.defineComponent({name:"FSearchBox",props:_t,emits:["update:modelValue","change","selectedValue","clickButton"],setup(e,n){t.ref(e.data);const o=t.ref(),a=t.ref(),i=t.ref(e.placeholder),r='<i class="f-icon f-icon-clockwise f-icon-spin"></i>',l=t.computed(()=>e.loading?r:e.buttonContent);t.ref(e.editable);const s=t.ref(e.modelValue);t.watch(s,p=>{var m;(m=a.value)==null||m.search(p),n.emit("update:modelValue",p)}),t.watch(()=>e.modelValue,p=>{s.value=p});function u(p){o.value.commitValue(p)}function c(p){const m=s.value;n.emit("change",p,{oldValue:m,newValue:p})}function d(p){n.emit("selectedValue",p)}function f(p){n.emit("clickButton",p)}function g(){o.value.togglePopup()}return n.expose({togglePopup:g}),()=>{const p={default:n.slots.default};return t.createVNode(wo,{ref:o,"button-content":l.value,"custom-class":e.customClass,updateOn:e.updateOn,placeholder:i.value,onChange:m=>c(m),onClickButton:m=>f(m),disable:e.disable,"enable-clear":!0,"button-behavior":"Execute",modelValue:s.value,"onUpdate:modelValue":m=>s.value=m,"popup-host":e.popupHost,"popup-right-boundary":e.popupRightBoundary,"popup-offset-x":e.popupOffsetX,"popup-on-input":e.showDropdown,"popup-on-focus":e.showDropdown,limitContentBySpace:!0,placement:"auto"},{default:()=>[e.showDropdown&&t.createVNode(Jn,{ref:a,data:e.data,idField:e.idField,textField:e.textField,onConfirmResult:u,onSearchedValue:m=>d(m),loading:e.loading,maxHeight:e.maxHeight},p)],...n.slots})}}}),Ki=t.defineComponent({name:"FSearchBoxDesign",props:_t,emits:["update:modelValue","change"],setup(e,n){const o=t.ref(e.data),a=t.ref(),i=t.ref(),r=t.ref("请输入关键词"),l=t.ref('<i class="f-icon f-icon-search"></i>'),s=t.ref(e.modelValue),u=t.ref(),c=t.inject("design-item-context"),d=Ct(u,c);t.onMounted(()=>{u.value.componentInstance=d}),n.expose(d.value),t.watch(s,p=>{var m;(m=i.value)==null||m.search(p),n.emit("update:modelValue",p)}),t.watch(()=>e.modelValue,p=>{s.value=p});function f(p){a.value.commitValue(p)}function g(p){n.emit("change",p)}return()=>t.createVNode("div",{ref:u},[t.createVNode(t.resolveComponent("f-button-edit"),{ref:a,"button-content":l.value,placeholder:r.value,onChange:g,"enable-clear":!0,"button-behavior":"Execute",modelValue:s.value,"onUpdate:modelValue":p=>s.value=p,"popup-host":e.popupHost,"popup-right-boundary":e.popupRightBoundary,"popup-offset-x":e.popupOffsetX,"popup-on-input":!0,"popup-on-focus":!0},{default:()=>[t.createVNode(Jn,{ref:i,data:o.value,onConfirmResult:f},null)]})])}});Ge.install=e=>{e.component(Ge.name,Ge)},Ge.register=(e,n,o,a)=>{e["search-box"]=Ge,n["search-box"]=Yn},Ge.registerDesigner=(e,n,o)=>{e["search-box"]=Ki,n["search-box"]=Yn};const Qn={columns:{type:Array,default:[{field:"name",title:"",dataType:"string"}]},customClass:{type:String,default:""},data:{type:Array,default:[]},draggable:{type:Boolean,default:!1},multiSelect:{type:Boolean,default:!1},multiSelectMode:{type:String,default:"OnCheck"},idField:{type:String,default:"id"},valueField:{type:String,default:"id"},textField:{type:String,default:"name"},titleField:{type:String,default:"name"},view:{type:String,default:"ContentView"},size:{type:String,default:"default"},placeholder:{type:String,default:""},header:{type:String,default:"ContentHeader"},headerClass:{type:String,default:""},itemClass:{type:[String,Function],default:"",validator:e=>typeof e=="string"||typeof e=="function"},itemStyle:{type:[String,Function],default:"",validator:e=>typeof e=="string"||typeof e=="function"},itemContentClass:{type:String,default:""},selectionValues:{type:Array,default:[]},group:{type:Object},selection:{type:Object,default:{enableSelectRow:!0,multiSelect:!1,multiSelectMode:"DependOnCheck",showCheckbox:!1,showSelectAll:!1,showSelection:!0}},keepOrder:{type:Boolean,default:!1},disableField:{type:String,default:"disabled"},enableHighlightSearch:{type:Boolean,default:!0},virtualized:{type:Boolean,default:!0},checkBeforeRemoveItem:{type:Function,default:null},headerTemplate:{type:Object},contentTemplate:{type:Object},footerTemplate:{type:Object},emptyTemplate:{type:Object},pagination:{type:Object,default:{enable:!1,size:20}}};function er(e,n){function o(r){const l=[];let s=r.nextNode();for(;s;)l.push(s),s=r.nextNode();return l}function a(r,l){const s=document.createTreeWalker(r,NodeFilter.SHOW_TEXT);return o(s).map(f=>({textNode:f,text:(f.textContent||"").toLocaleLowerCase()})).map(({textNode:f,text:g})=>{const p=[];let m=0;for(;m<g.length;){const h=g.indexOf(l,m);if(h===-1)break;p.push(h),m=h+l.length}return p.map(h=>{const b=new Range;return b.setStart(f,h),b.setEnd(f,h+l.length),b})}).flat()}function i(r){if(!CSS.highlights||(CSS.highlights.clear(),!r||!n))return;const l=a(n.value,r.toLocaleLowerCase()),s=new Highlight(...l);CSS.highlights.set("search-result",s)}return{search:i}}function Zn(e,n,o,a,i,r,l,s,u,c){const d=t.ref(e.size),f=t.ref(e.textField),g=t.ref(e.titleField),p=t.ref(e.disableField),m=t.computed(()=>{var N,x;return((N=e.selection)==null?void 0:N.multiSelect)&&((x=e.selection)==null?void 0:x.showCheckbox)}),{onMouseenterItem:h,onMouseoverItem:b,onMouseoutItem:I}=r,{getKey:v,listViewItemClass:P,listViewItemStyle:T,onCheckItem:k,onClickItem:S}=l,V=t.computed(()=>{const N={"text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"};return e.itemClass?N:{margin:d.value==="small"?"0.25rem 0":"8px 0",...N}});function y(N,x,w){return N.checked=s.findIndexInSelectedItems(N)>-1,t.createVNode("li",{class:P(N,x),id:v(N,x),key:v(N,x),style:T(N,x),onClick:C=>S(N,x,C),onMouseenter:C=>h(C,N,x),onMouseover:C=>b(C,N,x),onMouseout:C=>I(C,N,x)},[m.value&&t.createVNode("div",{class:"f-list-select",onClick:C=>C.stopPropagation()},[t.createVNode(Mt.FCheckbox,{id:"list-"+v(N,x),customClass:"listview-checkbox float-left",disabled:N[p.value],checked:N.checked,"onUpdate:checked":C=>N.checked=C,onChange:C=>{k(N,x,!C.checked)}},null)]),t.createVNode("div",{class:"f-list-content"},[t.createVNode("div",{class:e.itemContentClass,style:V.value,title:N.raw[g.value]||N.raw[f.value]},[N.raw[f.value]])])])}return{renderItem:y}}function tr(e,n,o,a,i,r,l,s,u,c){const d=t.ref(e.multiSelect),f=t.ref(e.disableField),g=t.ref(e.textField),{onMouseenterItem:p,onMouseoverItem:m,onMouseoutItem:h}=r,{getKey:b,listViewItemClass:I,listViewItemStyle:v,onCheckItem:P,onClickItem:T}=l;function k(V,y,N){return e.contentTemplate?t.createVNode(t.Fragment,null,[e.contentTemplate({item:V.raw,index:y,selectedItem:N})]):n.slots.content?t.createVNode(t.Fragment,null,[n.slots.content&&n.slots.content({item:V.raw,index:y,selectedItem:N})]):t.createVNode("div",{style:"margin: 10px 0;"},[V.raw[g.value||"name"]])}function S(V,y,N){return t.createVNode("li",{class:I(V,y),id:b(V,y),key:b(V,y),style:v(V,y),onClick:x=>T(V,y,x),onMouseenter:x=>p(x,V,y),onMouseover:x=>m(x,V,y),onMouseout:x=>h(x,V,y)},[d.value&&t.createVNode("div",{class:"f-list-select",onClick:x=>x.stopPropagation()},[t.createVNode(Mt.FCheckbox,{id:"list-"+b(V,y),customClass:"listview-checkbox",disabled:V[f.value]||!V.checked,checked:V.checked,"onUpdate:checked":x=>V.checked=x,onChange:x=>P(V,y,!x.checked)},null)]),t.createVNode("div",{class:"f-list-content"},[k(V,y,N)])])}return{renderItem:S}}function nr(e,n,o,a,i,r,l,s,u,c){const d=t.ref(e.multiSelect),f=t.ref(e.disableField),g=t.ref(e.textField),{onMouseenterItem:p,onMouseoverItem:m,onMouseoutItem:h}=r,{getKey:b,listViewItemClass:I,onCheckItem:v,onClickItem:P}=l,{dragstart:T,dragenter:k,dragover:S,dragend:V}=a,{removeItem:y}=u,N=t.computed(()=>({margin:d.value?"10px 0":"10px 0px 10px 14px"}));function x(j,M=""){const D=j.target;D.title=D.scrollWidth>D.clientWidth?M:""}function w(j){return t.createVNode("div",{style:N.value,onMouseenter:M=>x(M,j.raw[g.value||"name"])},[j.raw[g.value||"name"]])}function C(){return n.slots.itemContent?n.slots.itemContent:w}const F=C();function B(j,M,D){return t.createVNode("li",{class:I(j,M),id:b(j,M),key:b(j,M),onClick:$=>P(j,M,$),onMouseenter:$=>p($,j,M),onMouseover:$=>m($,j,M),onMouseout:$=>h($,j,M),draggable:"true",onDragstart:$=>T($,j,M),onDragenter:$=>k($,M),onDragend:$=>V($,j),onDragover:$=>S($)},[d.value&&t.createVNode("div",{class:"f-list-select",onClick:$=>$.stopPropagation()},[t.createVNode(Mt.FCheckbox,{id:"list-"+b(j,M),customClass:"listview-checkbox",disabled:j[f.value]||!j.checked,checked:j.checked,"onUpdate:checked":$=>j.checked=$,onChange:$=>v(j,M,!$.checked)},null)]),t.createVNode("div",{class:"f-list-content"},[F(j)]),t.createVNode("div",{class:"f-list-remove",onClick:$=>{$.stopPropagation(),y(M)}},[t.createVNode("div",{class:"f-list-remove-icon"},[t.createVNode("i",{class:"f-icon f-icon-remove_face"},null)])]),t.createVNode("div",{class:"f-list-handle"},[t.createVNode("div",null,[t.createVNode("i",{class:"f-icon f-icon-drag-vertical"},null)])])])}return{renderItem:B}}function or(e,n,o,a,i,r,l,s,u,c){var b;const d=t.ref(((b=e.group)==null?void 0:b.groupFields)||[]),{collpaseGroupIconClass:f}=i,{toggleGroupRow:g}=c;function p(I,v){v.collapse=!v.collapse,o.value=g(v.collapse?"collapse":"expand",v,o.value)}function m(I,v,P){return n.slots.group?t.createVNode(t.Fragment,null,[n.slots.content&&n.slots.group({item:I.raw,index:v,selectedItem:P})]):t.createVNode("div",{class:"f-navlookup-recentHeader",onClick:T=>p(T,I)},[t.createVNode("div",{class:"fv-grid-group-row-icon"},[t.createVNode("span",{class:f(I)},null)]),t.createVNode("div",{class:"f-navlookup-recommandLabel"},[I.raw[d.value[I.layer]]])])}function h(I,v,P){return I.layer>-1&&m(I,v,P)}return{renderItem:h}}function ar(e,n,o,a){const{dataView:i}=o,{updateSelectedItems:r}=a;function l(s){if(s>-1&&s<i.value.length){if(e!=null&&e.checkBeforeRemoveItem&&!e.checkBeforeRemoveItem(i.value[s]))return;const u=i.value.splice(s,1);r(),n.emit("removeItem",u[0])}}return{removeItem:l}}function ir(e,n,o,a,i,r,l,s,u,c){const{t:d}=Oe.useI18n(),f=t.ref(e.view),g=t.ref(e.view==="CardView"),p=t.ref({}),m=t.ref(d("listView.emptyMessage")),h=ar(e,n,a,u),b=t.computed(()=>({"f-list-view-group":!0,"f-list-view-group-multiselect":e.multiSelect,"d-flex":g.value,"flex-wrap":g.value})),I=t.computed(()=>!!o.value&&o.value.length>0),v=t.computed(()=>o.value.length===0);t.computed(()=>v.value&&!n.slots.empty);function P(){return f.value==="SingleView"?Zn:f.value==="DraggableView"?nr:(f.value==="ContentView"||f.value==="CardView")&&(e.contentTemplate||n.slots.content)?tr:Zn}const T=P(),{renderItem:k}=T(e,n,o,c,i,r,u,l,h,s),{renderItem:S}=or(e,n,o,c,i,r,u,l,h,s),V=[k,S];function y(){return o.value.filter(w=>w.visible!==!1).map((w,C)=>V[w.type](w,C,p))}function N(){return t.createVNode("div",{class:"f-list-view-emptydata",style:"margin: 0 auto;"},[t.createVNode("p",{class:"f-empty-title"},[e.emptyTemplate?e.emptyTemplate():n.slots.empty?n.slots.empty():m.value])])}function x(){return t.createVNode("ul",{class:b.value,style:"list-style: none;"},[I.value&&y(),v.value&&N()])}return{renderListArea:x}}function rr(e,n,o){function a(){return n.slots.header&&t.createVNode("div",{class:"f-list-view-header"},[n.slots.header()])}return{renderHeader:a}}function Kn(e,n,o){const a=t.ref(e.headerClass),i=t.ref(e.placeholder),r=t.ref(""),l=t.computed(()=>!r.value),s=t.computed(()=>!!r.value);function u(g){r.value=""}t.watch(r,g=>{e.enableHighlightSearch&&o.search(g),n.emit("afterSearch",g)});const c=t.computed(()=>{const g={"form-group":!0,"farris-form-group":!0};return a.value&&a.value.split(" ").reduce((m,h)=>(m[h]=!0,m),g),g});function d(g){}function f(){return t.createVNode("div",{class:"f-list-view-header",onClick:t.withModifiers(()=>d,["prevent","stop"])},[t.createVNode("div",{class:c.value},[t.createVNode("div",{class:"farris-input-wrap"},[t.createVNode("div",{class:"f-cmp-inputgroup"},[t.createVNode("div",{class:"input-group f-state-editable"},[t.withDirectives(t.createVNode("input",{class:"form-control f-utils-fill text-left","onUpdate:modelValue":g=>r.value=g,name:"input-group-value",type:"text",placeholder:i.value,autocomplete:"off"},null),[[t.vModelText,r.value]]),t.createVNode("div",{class:"input-group-append"},[s.value&&t.createVNode("span",{class:"input-group-text input-group-clear",onClick:g=>u()},[t.createVNode("i",{class:"f-icon f-icon-close-circle"},null)]),l.value&&t.createVNode("span",{class:"input-group-text"},[t.createVNode("span",{class:"f-icon f-icon-search"},null)])])])])])])])}return{renderHeader:f}}function lr(){const e=t.ref(""),n=t.ref(-1),o=t.ref(""),a=t.ref(-1),i=t.ref(!1);function r(f,g,p){a.value=p}function l(f,g,p){i.value||(a.value=p)}function s(f,g,p){a.value=-1}function u(){i.value=!0}function c(){i.value=!1}function d(){n.value=-1,e.value=""}return{activeIndex:n,focusedItemId:o,hoverIndex:a,clearActiveItem:d,onMouseenterItem:r,onMouseoverItem:l,onMouseoutItem:s,resumeHover:c,suspendHover:u}}function sr(e,n,o,a){const i=t.ref(e.idField),{dataView:r}=o,l=t.ref(-1),s=t.ref(!1),{activeIndex:u,focusedItemId:c,hoverIndex:d,resumeHover:f,suspendHover:g}=a;let p,m=0,h=0;function b(S,V){const y=S-m,N=V-h;p.style.left=parseInt(p.style.left)+y+"px",p.style.top=parseInt(p.style.top)+N+"px",m=S,h=V}function I(S){const{left:V,top:y}=S.getBoundingClientRect(),N=S.cloneNode(!0);return N.style.cssText=`
|
|
3
|
+
</span>`:n.titleHtml}function T(C){s(n.id),e.tabType==="one-page"&&a.scrollToByPaggId(n.id)}function k(C){C&&(C.stopPropagation(),C.preventDefault()),c(C,n.id,r.value)}function S(C){u(C,n.id)}function V(C){d(C,n.id)}t.watch(()=>n.toolbarPosition,()=>{t.nextTick(()=>{f()})}),t.watch(()=>n.tabWidth,()=>{t.nextTick(()=>{f()})}),t.watch(()=>n.titleHtml,()=>{t.nextTick(()=>{f()})});function y(){return t.createVNode("div",{role:"button",class:"btn component-settings-button",title:"删除",ref:"removeComponent",onClick:C=>S(C)},[t.createVNode("i",{class:"f-icon f-icon-yxs_delete"},null)])}function N(){return t.createVNode("div",{role:"button",class:"btn component-settings-button",title:"新增按钮",ref:"addComponent",onClick:C=>V(C)},[t.createVNode("i",{class:"f-icon f-icon-plus-circle"},null)])}function x(){return t.createVNode("div",{class:"component-btn-group","data-noattach":"true"},[t.createVNode("div",null,[y(),!n.toolbar||!n.toolbar.buttons||!n.toolbar.buttons.length?N():""])])}function w(){return o.slots.title?t.createVNode("a",{class:h.value,onClick:T,id:`${n.id}-design-item`},[o.slots.title(o),v()]):n.titleHtml?t.createVNode("a",{class:h.value,onClick:T,id:`${n.id}-design-item`,innerHTML:P()},null):t.createVNode("a",{class:h.value,onClick:T,id:`${n.id}-design-item`},[b(),v()])}return t.createVNode("li",{onClick:C=>k(C),class:p.value,style:m.value,pageId:`${n.id}-design-item`},[x(),w()])}function Ca(e,n,o,a,i,r,l){const{tabPages:s,selectTab:u,emitSelectionChange:c}=i,d=t.computed(()=>({spacer:!0,"f-utils-fill":!0})),f=t.computed(()=>({width:"100%","justify-content":e.justifyContent})),g=t.computed(()=>({nav:!0,"farris-nav-tabs":!0,"flex-nowrap":!0,"nav-fill":e.tabType==="fill","nav-pills":e.tabType==="pills","flex-row":e.position==="top"||e.position==="bottom","flex-column":e.position==="left"||e.position==="right"})),p=t.computed(()=>({overflow:"auto"})),m=function(h){var I;h&&(h.stopPropagation(),h.preventDefault());const b=Pt("tab-page");b.id=`tab_page_${Math.random().toString().slice(2,6)}`,b.title="标题",b.toolbar={id:`${b.id}_toolbar`,buttons:[],type:"tab-toolbar"},(I=r.value.schema.contents)==null||I.push(b),u(b.id),t.nextTick(()=>{c(b.id,r.value)})};return()=>t.createVNode("div",{class:d.value,style:f.value},[t.createVNode("ul",{class:g.value,style:p.value,ref:n},[s.value.map(h=>va(e,h.props,h,a,i,r)),t.createVNode("li",{class:"nav-item no-drag add-nav-item"},[t.createVNode("a",{class:"nav-link tabs-text-truncate",title:"添加页签",onClick:h=>m(h)},[t.createVNode("i",{class:"f-icon f-icon-plus",style:"font-size: 20px;margin: 0 auto;line-height: 24px;"},null)])])])])}function Ct(e,n,o){var w;const a=o&&o.getStyles&&o.getStyles()||"",i=o&&o.getDesignerClass&&o.getDesignerClass()||"",r=t.ref();let l;function s(){return(n==null?void 0:n.schema.componentType)==="frame"?!1:o&&o.checkCanMoveComponent?o.checkCanMoveComponent():!0}function u(){return!1}function c(){return(n==null?void 0:n.schema.componentType)==="frame"?!1:o&&o.checkCanDeleteComponent?o.checkCanDeleteComponent():!0}function d(){return(n==null?void 0:n.schema.componentType)==="frame"?!0:o&&o.hideNestedPaddingInDesginerView?o.hideNestedPaddingInDesginerView():!1}function f(C){if(!C||!C.value)return null;if(C.value.schema&&C.value.schema.type==="component")return C.value;const F=t.ref(C==null?void 0:C.value.parent),B=f(F);return B||null}function g(C=n){var M;if(o!=null&&o.getDraggableDesignItemElement)return o.getDraggableDesignItemElement(C);const{componentInstance:F,designerItemElementRef:B}=C;if(!F||!F.value)return null;const{getCustomButtons:j}=F.value;return F.value.canMove||j&&((M=j())!=null&&M.length)?B:g(C.parent)}function p(C){return!!o&&o.canAccepts(C)}function m(){return(n==null?void 0:n.schema.label)||(n==null?void 0:n.schema.title)||(n==null?void 0:n.schema.name)}function h(){}function b(C,F){var B;!C||!F||(o!=null&&o.onAcceptMovedChildElement&&o.onAcceptMovedChildElement(C,F),(B=n==null?void 0:n.setupContext)==null||B.emit("dragEnd"))}function I(C,F){const{componentType:B}=C;let j=Je.getSchemaByTypeForDesigner(B,C,F);o&&o.onResolveNewComponentSchema&&(j=o.onResolveNewComponentSchema(C,j));const M=B.toLowerCase().replace(/-/g,"_");return j&&!j.id&&j.type===B&&(j.id=`${M}_${Math.random().toString().slice(2,6)}`),j}function v(C){C&&o!=null&&o.onChildElementMovedOut&&o.onChildElementMovedOut(C)}function P(...C){if(o&&o.getPropsConfig)return o.getPropsConfig(...C)}function T(C){if(!C)return;const F=n==null?void 0:n.schema,{formSchemaUtils:B}=C;if(F&&B.getExpressions().length){const j=B.getExpressions().findIndex(M=>M.target===F.id);j>-1&&B.getExpressions().splice(j,1)}}function k(C){if(!C||!(n!=null&&n.schema))return;const F=n.schema,{formSchemaUtils:B}=C;B.removeCommunicationInComponent(F)}function S(C){o&&o.onRemoveComponent&&o.onRemoveComponent(),T(C),k(C),n!=null&&n.schema.contents&&n.schema.contents.map(F=>{let B=F.id;F.type==="component-ref"&&(B=F.component);const j=e.value.querySelectorAll(`#${B}-design-item`);j!=null&&j.length&&Array.from(j).map(M=>{var D;(D=M==null?void 0:M.componentInstance)!=null&&D.value.onRemoveComponent&&M.componentInstance.value.onRemoveComponent(C)})})}function V(){if(o&&o.getCustomButtons)return o.getCustomButtons()}function y(C){var B,j;if(!((B=n==null?void 0:n.schema)!=null&&B.id))return;if(!l&&C&&(l=C.formSchemaUtils),o!=null&&o.setComponentBasicInfoMap){o.setComponentBasicInfoMap();return}let F="";if(o!=null&&o.getComponentTitle)F=o.getComponentTitle();else{const{text:M,title:D,label:$,mainTitle:O,name:A,type:L}=n.schema;F=M||D||$||O||A||((j=z[L])==null?void 0:j.name)}F&&l.getControlBasicInfoMap().set(n.schema.id,{componentTitle:F,parentPathName:F})}function N(C){var M;const{changeObject:F}=C,{propertyID:B,propertyValue:j}=F;if(["text","title","label","name","mainTitle"].includes((M=C==null?void 0:C.changeObject)==null?void 0:M.propertyID)&&B&&j&&(y(),l)){const D=l.getControlBasicInfoMap(),$=D.keys().toArray().filter(O=>{var A,L;return((A=D.get(O))==null?void 0:A.reliedComponentId)===((L=n==null?void 0:n.schema)==null?void 0:L.id)});$!=null&&$.length&&$.forEach(O=>{const A=D.get(O).parentPathName.split(" > ");A[0]=j,D.get(O).parentPathName=A.join(" > ")})}}function x(C){if(N(C),o&&o.onPropertyChanged)return o.onPropertyChanged(C)}return r.value={canMove:s(),canSelectParent:u(),canDelete:c(),canNested:!d(),contents:n==null?void 0:n.schema.contents,elementRef:e,parent:(w=n==null?void 0:n.parent)==null?void 0:w.componentInstance,schema:n==null?void 0:n.schema,styles:a,designerClass:i,canAccepts:p,getBelongedComponentInstance:f,getDraggableDesignItemElement:g,getDraggingDisplayText:m,getPropConfig:P,getDragScopeElement:h,onAcceptMovedChildElement:b,onChildElementMovedOut:v,addNewChildComponentSchema:I,triggerBelongedComponentToMoveWhenMoved:!!o&&o.triggerBelongedComponentToMoveWhenMoved||t.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:!!o&&o.triggerBelongedComponentToDeleteWhenDeleted||t.ref(!1),onRemoveComponent:S,getCustomButtons:V,onPropertyChanged:x,setComponentBasicInfoMap:y,updateContextSchema:n==null?void 0:n.updateContextSchema},r}const Ue=t.ref(0);function wa(e,n){const o=n.getBoundingClientRect(),a=e.getBoundingClientRect(),i=a.top>=o.top,r=a.top<=o.bottom;return i&&r}function Et(e){const n=e.querySelector(".component-btn-group");if(!n)return;n.style.display="";const o=n.getBoundingClientRect();if(!(o.top===0&&o.left===0)){const a=n.querySelector("div");if(a){const i=a.getBoundingClientRect();a.style.top=o.top+"px";let r=o.left-i.width;const l=document.querySelector(".editorDiv");if(l){const s=l.getBoundingClientRect();r<s.left&&({left:r}=e.getBoundingClientRect())}a.style.left=r+"px"}}}function xa(e){if(!window.scrollContainerList)return;const n=Array.from(window.scrollContainerList);if(n.length&&n.length===1){const o=n[0],a=document.querySelector(`[id=${o}]`);if(a&&a.contains(e))return a}}function Dt(e){if(!e)return;const n=e.getBoundingClientRect();if(n.width===0&&n.height===0)return;const o=e.querySelector(".component-btn-group");if(o){let a=!0;const i=xa(e);if(i&&(a=wa(e,i)),!a){o.style.display="none";return}Et(e)}}function Sa(e){if(!e)return;let n;e.className.includes("dgComponentSelected")?n=e:n=e.querySelector(".dgComponentSelected"),n&&Dt(n)}var We=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Ta(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function wt(e){throw new Error('Could not dynamically require "'+e+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var Bn={exports:{}};(function(e,n){(function(o){e.exports=o()})(function(){return function(){function o(a,i,r){function l(c,d){if(!i[c]){if(!a[c]){var f=typeof wt=="function"&&wt;if(!d&&f)return f(c,!0);if(s)return s(c,!0);var g=new Error("Cannot find module '"+c+"'");throw g.code="MODULE_NOT_FOUND",g}var p=i[c]={exports:{}};a[c][0].call(p.exports,function(m){var h=a[c][1][m];return l(h||m)},p,p.exports,o,a,i,r)}return i[c].exports}for(var s=typeof wt=="function"&&wt,u=0;u<r.length;u++)l(r[u]);return l}return o}()({1:[function(o,a,i){var r={},l="(?:^|\\s)",s="(?:\\s|$)";function u(f){var g=r[f];return g?g.lastIndex=0:r[f]=g=new RegExp(l+f+s,"g"),g}function c(f,g){var p=f.className;p.length?u(g).test(p)||(f.className+=" "+g):f.className=g}function d(f,g){f.className=f.className.replace(u(g)," ").trim()}a.exports={add:c,rm:d}},{}],2:[function(o,a,i){(function(r){var l=o("contra/emitter"),s=o("crossvent"),u=o("./classes"),c=document,d=c.documentElement;function f(w,C){var F=arguments.length;F===1&&Array.isArray(w)===!1&&(C=w,w=[]);var B,j,M,D,$,O,A,L,Q,te=null,oe,J,de=!1,ge=0,le,X=C||{};X.moves===void 0&&(X.moves=v),X.accepts===void 0&&(X.accepts=v),X.invalid===void 0&&(X.invalid=Le),X.containers===void 0&&(X.containers=w||[]),X.isContainer===void 0&&(X.isContainer=I),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 ce=l({containers:X.containers,start:ve,end:Ee,cancel:_,remove:ct,destroy:ee,canMove:ae,dragging:!1});return X.removeOnSpill===!0&&ce.on("over",Gt).on("out",Xt),q(),ce;function E(R){return ce.containers.indexOf(R)!==-1||X.isContainer(R)}function q(R){var U=R?"remove":"add";m(d,U,"mousedown",se),m(d,U,"mouseup",Ye)}function H(R){var U=R?"remove":"add";m(d,U,"mousemove",Ve)}function W(R){var U=R?"remove":"add";s[U](d,"selectstart",ie),s[U](d,"click",ie)}function ee(){q(!0),Ye({})}function ie(R){oe&&R.preventDefault()}function se(R){D=R.clientX,$=R.clientY;var U=h(R)!==1||R.metaKey||R.ctrlKey;if(!U){var G=R.target,K=be(G);K&&(oe=K,H(),R.type==="mousedown"&&(S(G)?G.focus():R.preventDefault()))}}function Ve(R){if(oe){if(h(R)===0){Ye({});return}if(!(R.clientX!==void 0&&Math.abs(R.clientX-D)<=(X.slideFactorX||0)&&R.clientY!==void 0&&Math.abs(R.clientY-$)<=(X.slideFactorY||0))){if(X.ignoreInputTextSelection){var U=x("clientX",R)||0,G=x("clientY",R)||0,K=c.elementFromPoint(U,G);if(S(K))return}var pe=oe;H(!0),W(),Ee(),Be(pe),u.add(L||M,"gu-transit"),Jt(),Yt(),ge=0,ze(R)}}}function be(R){if(!(ce.dragging&&B)&&!E(R)){for(var U=R;k(R)&&E(k(R))===!1;)if(X.invalid(R,U)||(R=k(R),!R))return;var G=k(R);if(G&&!X.invalid(R,U)){var K=X.moves(R,G,U,y(R));if(K)return{item:R,source:G}}}}function ae(R){return!!be(R)}function ve(R){var U=be(R);U&&Be(U)}function Be(R){on(R.item,R.source)&&(L=R.item.cloneNode(!0),ce.emit("cloned",L,R.item,"copy")),j=R.source,M=R.item,O=A=y(R.item),ce.dragging=!0,ce.emit("drag",M,j)}function Le(){return!1}function Ee(){if(ce.dragging){var R=L||M;st(R,k(R))}}function He(){oe=!1,H(!0),W(!0)}function Ye(R){if(He(),!!ce.dragging){var U=L||M,G=x("clientX",R)||0,K=x("clientY",R)||0,pe=b(B,G,K),me=xe(pe,G,K);me&&(L&&X.copySortSource||!L||me!==j)?st(U,me):X.removeOnSpill?ct():_()}}function st(R,U){var G=k(R);L&&X.copySortSource&&U===j&&G.removeChild(M),we(U)?ce.emit("cancel",R,j):ce.emit("drop",R,U,j,A),re()}function ct(){if(ce.dragging){var R=L||M,U=k(R);U&&U.removeChild(R),ce.emit(L?"cancel":"remove",R,U,j),re()}}function _(R){if(ce.dragging){var U=arguments.length>0?R:X.revertOnSpill,G=L||M,K=k(G),pe=we(K);pe===!1&&U&&(L?K&&K.removeChild(L):j.insertBefore(G,O)),pe||U?ce.emit("cancel",G,j,j):ce.emit("drop",G,K,j,A),re()}}function re(){var R=L||M;He(),Qt(),Zt(),R&&u.rm(R,"gu-transit"),Q&&clearTimeout(Q),ce.dragging=!1,te&&ce.emit("out",R,te,j),ce.emit("dragend",R,ge),j=M=L=O=A=Q=te=null}function we(R,U){var G;return U!==void 0?G=U:B?G=A:G=y(L||M),R===j&&G===O}function xe(R,U,G){for(var K=R;K&&!pe();)K=k(K);return K;function pe(){var me=E(K);if(me===!1)return!1;var De=Ft(K,R),Me=Bt(K,De,U,G),Pe=we(K,Me);return Pe?!0:X.accepts(M,K,j,Me)}}function ze(R){if(!B)return;R.preventDefault();var U=x("clientX",R)||0,G=x("clientY",R)||0;B.style.left=U-2+"px",B.style.top=G-2+"px";var K=L||M,pe=b(B,U,G),me=xe(pe,U,G),De=me!==null&&me!==te;(De||me===null)&&(je(),te=me,qe()),nn(pe,G);var Me=k(K);if(me===j&&L&&!X.copySortSource){Me&&Me.removeChild(K);return}var Pe,Ae=Ft(me,pe);if(de=ft(Ae,me),Ae!==null)Pe=Bt(me,Ae,U,G);else if(X.revertOnSpill===!0&&!L)Pe=O,me=j;else{L&&Me&&Me.removeChild(K),L&&J&&(J.style.display="none");return}J.style.display="block",Wt(Pe,K,De),Pe?en(Ae,Pe):tn(me);function Se(ke){ce.emit(ke,K,te,j)}function qe(){De&&Se("over")}function je(){te&&Se("out")}}function Wt(R,U,G){(R===U||R===y(U))&&(A=y(U)),(R===null&&G||R!==U&&R!==y(U))&&(A=R)}function Gt(R){u.rm(R,"gu-hide")}function Xt(R){ce.dragging&&u.add(R,"gu-hide")}function Yt(){B||(B=document.createElement("div"),B.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;",B.innerHTML=X.getMirrorText&&X.getMirrorText(M)||"控件",u.add(B,"gu-mirror"),X.mirrorContainer.appendChild(B),m(d,"add","mousemove",ze),u.add(X.mirrorContainer,"gu-unselectable"),ce.emit("cloned",B,M,"mirror"))}function Jt(){if(J=document.createElement("div"),u.add(J,"gu-insertion"),M){var R=M.getBoundingClientRect();J.style.left=R.left+"px",J.style.top=R.top+"px"}de=!1,X.mirrorContainer.appendChild(J)}function Qt(){B&&(u.rm(X.mirrorContainer,"gu-unselectable"),m(d,"remove","mousemove",ze),k(B).removeChild(B),B=null)}function Zt(){J&&(k(J).removeChild(J),J=null)}function Ft(R,U){for(var G=U;G!==R&&k(G)!==R;)G=k(G);return G===d?null:G}function ft(R,U){if(!U)return de;var G=R||U&&U.lastElementChild;if(!G)return!0;var K=getComputedStyle(R),pe=/^inline/.test(K.getPropertyValue("display"))||/^(left|right)$/.test(K.getPropertyValue("float"));if(pe)return!0;if(U){var me=getComputedStyle(U),De=me.getPropertyValue("display");if(/flex$/.test(De)){var Me=me.getPropertyValue("flex-direction")||"row";if(Me==="row"||Me==="row-reverse")return!Kt(U)}return!1}return!0}function Kt(R){if(!R.children||!R.children.length)return!1;for(const U of Array.from(R.children)){const K=(U.className&&U.className.split(" ")||[]).filter(pe=>/^col(-md|-xl|-el){0,1}-([1-9]|10|11|12)$/.test(pe));if(!K.length)return!1;for(const pe of K){const me=pe.slice(pe.lastIndexOf("-")+1);if(parseInt(me,10)!==12)return!1}}return!0}function en(R,U){const G=U.getBoundingClientRect();if(J.style.left=G.left+"px",J.style.top=G.top+"px",de){if(J.style.height=G.height+"px",J.style.width="4px",R){const K=R.getBoundingClientRect();K.top!==G.top&&(J.style.left=K.right+"px",J.style.top=K.top+"px",J.style.height=K.height+"px")}}else if(J.style.height="4px",J.style.width=G.width+"px",le){const K=le.getBoundingClientRect();G.top<K.top&&(J.style.display="none")}U===M&&M&&(J.style.display="none")}function tn(R){A=null;var U=R.lastElementChild;if(U){var G=U.getBoundingClientRect();de?(J.style.left=G.right+"px",J.style.top=G.top+"px",J.style.height=G.height+"px",J.style.width="4px"):(J.style.left=G.left+"px",J.style.top=G.bottom+"px",J.style.height="4px",J.style.width=G.width+"px"),U===M&&M&&(J.style.display="none")}else J.style.display="none"}function nn(R,U){if(!X.mirrorContainer.contains(R)||!window.scrollContainerList||!Array.from(window.scrollContainerList).length||(le=g(R),!le||!le.contains(R)))return;const G=document.querySelector(".dgComponentSelected"),K=le.getBoundingClientRect();if(U-30<K.top&&le.scrollTop>0){let pe=le.scrollTop<10?le.scrollTop:10;le.scrollBy(0,-1*pe),G&&le.contains(G)&&(ge=ge+-1*pe)}if(U+30>K.bottom&&le.scrollTop<le.scrollHeight-le.clientHeight){const pe=le.scrollHeight-le.clientHeight-le.scrollTop;let me=pe<10?pe:10;le.scrollBy(0,me),G&&le.contains(G)&&(ge=ge+me)}}function Bt(R,U,G,K){var pe=X.direction==="horizontal",me=X.direction==="mixed",De=U!==R?Pe():Me();return De;function Me(){var Se=R.children.length,qe,je,ke;for(qe=0;qe<Se;qe++)if(je=R.children[qe],ke=je.getBoundingClientRect(),pe&&ke.left+ke.width/2>G||!me&&!pe&&ke.top+ke.height/2>K||me&&ke.left+ke.width>G&&ke.top+ke.height>K)return je;return null}function Pe(){var Se=U.getBoundingClientRect();if(me){var qe=K-Se.top,je=G-Se.left,ke=Se.bottom-K,pt=Se.right-G,mt=Math.min(je,pt,qe,ke),gt;return de?gt=pt<je:gt=ke===mt||pt===mt||je===mt,Ae(gt)}return Ae(pe?G>Se.left+P(Se)/2:K>Se.top+T(Se)/2)}function Ae(Se){return Se?y(U):U}}function on(R,U){return typeof X.copy=="boolean"?X.copy:X.copy(R,U)}}function g(w){const C=Array.from(window.scrollContainerList);if(C.length===1){const B=Array.from(window.scrollContainerList)[0];return document.getElementById(B)}const F=p(C);for(const B of F)if(B.contains(w))return B;return null}function p(w){const C=[];return w.forEach(F=>{const B=document.getElementById(F);B&&C.push(B)}),C.sort((F,B)=>F.contains(B)?1:B.contains(F)?-1:0),C}function m(w,C,F,B){var j={mouseup:"touchend",mousedown:"touchstart",mousemove:"touchmove"},M={mouseup:"pointerup",mousedown:"pointerdown",mousemove:"pointermove"},D={mouseup:"MSPointerUp",mousedown:"MSPointerDown",mousemove:"MSPointerMove"};r.navigator.pointerEnabled?s[C](w,M[F],B):r.navigator.msPointerEnabled?s[C](w,D[F],B):(s[C](w,j[F],B),s[C](w,F,B))}function h(w){if(w.touches!==void 0)return w.touches.length;if(w.which!==void 0&&w.which!==0)return w.which;if(w.buttons!==void 0)return w.buttons;var C=w.button;if(C!==void 0)return C&1?1:C&2?3:C&4?2:0}function b(w,C,F){w=w||{};var B=w.className||"",j;return w.className+=" gu-hide",j=c.elementFromPoint(C,F),w.className=B,j}function I(){return!1}function v(){return!0}function P(w){return w.width||w.right-w.left}function T(w){return w.height||w.bottom-w.top}function k(w){return w.parentNode===c?null:w.parentNode}function S(w){return w.tagName==="INPUT"||w.tagName==="TEXTAREA"||w.tagName==="SELECT"||V(w)}function V(w){return!w||w.contentEditable==="false"?!1:w.contentEditable==="true"?!0:V(k(w))}function y(w){return w.nextElementSibling||C();function C(){var F=w;do F=F.nextSibling;while(F&&F.nodeType!==1);return F}}function N(w){return w.targetTouches&&w.targetTouches.length?w.targetTouches[0]:w.changedTouches&&w.changedTouches.length?w.changedTouches[0]:w}function x(w,C){var F=N(C),B={pageX:"clientX",pageY:"clientY"};return w in B&&!(w in F)&&B[w]in F&&(w=B[w]),F[w]}a.exports=f}).call(this,typeof We<"u"?We:typeof self<"u"?self:typeof window<"u"?window:{})},{"./classes":1,"contra/emitter":5,crossvent:6}],3:[function(o,a,i){a.exports=function(l,s){return Array.prototype.slice.call(l,s)}},{}],4:[function(o,a,i){var r=o("ticky");a.exports=function(s,u,c){s&&r(function(){s.apply(c||null,u||[])})}},{ticky:10}],5:[function(o,a,i){var r=o("atoa"),l=o("./debounce");a.exports=function(u,c){var d=c||{},f={};return u===void 0&&(u={}),u.on=function(g,p){return f[g]?f[g].push(p):f[g]=[p],u},u.once=function(g,p){return p._once=!0,u.on(g,p),u},u.off=function(g,p){var m=arguments.length;if(m===1)delete f[g];else if(m===0)f={};else{var h=f[g];if(!h)return u;h.splice(h.indexOf(p),1)}return u},u.emit=function(){var g=r(arguments);return u.emitterSnapshot(g.shift()).apply(this,g)},u.emitterSnapshot=function(g){var p=(f[g]||[]).slice(0);return function(){var m=r(arguments),h=this||u;if(g==="error"&&d.throws!==!1&&!p.length)throw m.length===1?m[0]:m;return p.forEach(function(I){d.async?l(I,m,h):I.apply(h,m),I._once&&u.off(g,I)}),u}},u}},{"./debounce":4,atoa:3}],6:[function(o,a,i){(function(r){var l=o("custom-event"),s=o("./eventmap"),u=r.document,c=g,d=m,f=[];r.addEventListener||(c=p,d=h),a.exports={add:c,remove:d,fabricate:b};function g(k,S,V,y){return k.addEventListener(S,V,y)}function p(k,S,V){return k.attachEvent("on"+S,v(k,S,V))}function m(k,S,V,y){return k.removeEventListener(S,V,y)}function h(k,S,V){var y=P(k,S,V);if(y)return k.detachEvent("on"+S,y)}function b(k,S,V){var y=s.indexOf(S)===-1?x():N();k.dispatchEvent?k.dispatchEvent(y):k.fireEvent("on"+S,y);function N(){var w;return u.createEvent?(w=u.createEvent("Event"),w.initEvent(S,!0,!0)):u.createEventObject&&(w=u.createEventObject()),w}function x(){return new l(S,{detail:V})}}function I(k,S,V){return function(N){var x=N||r.event;x.target=x.target||x.srcElement,x.preventDefault=x.preventDefault||function(){x.returnValue=!1},x.stopPropagation=x.stopPropagation||function(){x.cancelBubble=!0},x.which=x.which||x.keyCode,V.call(k,x)}}function v(k,S,V){var y=P(k,S,V)||I(k,S,V);return f.push({wrapper:y,element:k,type:S,fn:V}),y}function P(k,S,V){var y=T(k,S,V);if(y){var N=f[y].wrapper;return f.splice(y,1),N}}function T(k,S,V){var y,N;for(y=0;y<f.length;y++)if(N=f[y],N.element===k&&N.type===S&&N.fn===V)return y}}).call(this,typeof We<"u"?We:typeof self<"u"?self:typeof window<"u"?window:{})},{"./eventmap":7,"custom-event":8}],7:[function(o,a,i){(function(r){var l=[],s="",u=/^on/;for(s in r)u.test(s)&&l.push(s.slice(2));a.exports=l}).call(this,typeof We<"u"?We:typeof self<"u"?self:typeof window<"u"?window:{})},{}],8:[function(o,a,i){(function(r){var l=r.CustomEvent;function s(){try{var u=new l("cat",{detail:{foo:"bar"}});return u.type==="cat"&&u.detail.foo==="bar"}catch{}return!1}a.exports=s()?l: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 We<"u"?We:typeof self<"u"?self:typeof window<"u"?window:{})},{}],9:[function(o,a,i){var r=a.exports={},l,s;function u(){throw new Error("setTimeout has not been defined")}function c(){throw new Error("clearTimeout has not been defined")}(function(){try{typeof setTimeout=="function"?l=setTimeout:l=u}catch{l=u}try{typeof clearTimeout=="function"?s=clearTimeout:s=c}catch{s=c}})();function d(T){if(l===setTimeout)return setTimeout(T,0);if((l===u||!l)&&setTimeout)return l=setTimeout,setTimeout(T,0);try{return l(T,0)}catch{try{return l.call(null,T,0)}catch{return l.call(this,T,0)}}}function f(T){if(s===clearTimeout)return clearTimeout(T);if((s===c||!s)&&clearTimeout)return s=clearTimeout,clearTimeout(T);try{return s(T)}catch{try{return s.call(null,T)}catch{return s.call(this,T)}}}var g=[],p=!1,m,h=-1;function b(){!p||!m||(p=!1,m.length?g=m.concat(g):h=-1,g.length&&I())}function I(){if(!p){var T=d(b);p=!0;for(var k=g.length;k;){for(m=g,g=[];++h<k;)m&&m[h].run();h=-1,k=g.length}m=null,p=!1,f(T)}}r.nextTick=function(T){var k=new Array(arguments.length-1);if(arguments.length>1)for(var S=1;S<arguments.length;S++)k[S-1]=arguments[S];g.push(new v(T,k)),g.length===1&&!p&&d(I)};function v(T,k){this.fun=T,this.array=k}v.prototype.run=function(){this.fun.apply(null,this.array)},r.title="browser",r.browser=!0,r.env={},r.argv=[],r.version="",r.versions={};function P(){}r.on=P,r.addListener=P,r.once=P,r.off=P,r.removeListener=P,r.removeAllListeners=P,r.emit=P,r.prependListener=P,r.prependOnceListener=P,r.listeners=function(T){return[]},r.binding=function(T){throw new Error("process.binding is not supported")},r.cwd=function(){return"/"},r.chdir=function(T){throw new Error("process.chdir is not supported")},r.umask=function(){return 0}},{}],10:[function(o,a,i){(function(r){var l=typeof r=="function",s;l?s=function(u){r(u)}:s=function(u){setTimeout(u,0)},a.exports=s}).call(this,o("timers").setImmediate)},{timers:11}],11:[function(o,a,i){(function(r,l){var s=o("process/browser.js").nextTick,u=Function.prototype.apply,c=Array.prototype.slice,d={},f=0;i.setTimeout=function(){return new g(u.call(setTimeout,window,arguments),clearTimeout)},i.setInterval=function(){return new g(u.call(setInterval,window,arguments),clearInterval)},i.clearTimeout=i.clearInterval=function(p){p.close()};function g(p,m){this._id=p,this._clearFn=m}g.prototype.unref=g.prototype.ref=function(){},g.prototype.close=function(){this._clearFn.call(window,this._id)},i.enroll=function(p,m){clearTimeout(p._idleTimeoutId),p._idleTimeout=m},i.unenroll=function(p){clearTimeout(p._idleTimeoutId),p._idleTimeout=-1},i._unrefActive=i.active=function(p){clearTimeout(p._idleTimeoutId);var m=p._idleTimeout;m>=0&&(p._idleTimeoutId=setTimeout(function(){p._onTimeout&&p._onTimeout()},m))},i.setImmediate=typeof r=="function"?r:function(p){var m=f++,h=arguments.length<2?!1:c.call(arguments,1);return d[m]=!0,s(function(){d[m]&&(h?p.apply(null,h):p.call(null),i.clearImmediate(m))}),m},i.clearImmediate=typeof l=="function"?l:function(p){delete d[p]}}).call(this,o("timers").setImmediate,o("timers").clearImmediate)},{"process/browser.js":9,timers:11}]},{},[2])(2)})})(Bn);var Na=Bn.exports;const xt=Ta(Na),Ia={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}},Va={showCloseButton:{type:Boolean,default:!0},animate:{type:String,default:"fadeIn"},options:{type:Object}},Ot=t.defineComponent({name:"Toast",props:Va,emits:["close","click"],setup:(e,n)=>{const{locale:o,t:a}=Oe.useI18n(),i=t.ref(e.animate),r="fadeOut",l=t.computed(()=>e.options),s=t.ref(!1),u=t.computed(()=>l.value.title&&l.value.message),c=t.computed(()=>!l.value.title&&l.value.message),d=t.computed(()=>{const T={animated:s.value,toast:!0,"toast--only-content":!u.value};return T[e.animate]=!1,T[r]=s.value,T["toasty-type-"+l.value.type]=!0,l.value.theme&&(T[l.value.theme]=!0),T}),f=t.computed(()=>{const S=`f-icon-${l.value&&l.value.type?l.value.type.replace("toasty-type-",""):"default"}`,V={"f-icon":!0};return V[S]=!0,V}),g=t.computed(()=>l.value.title||l.value.message),p=t.computed(()=>e.showCloseButton),m=t.computed(()=>!!l.value.buttons||!!n.slots.default),h=t.computed(()=>o.value==="en"?{wordBreak:"keep-all",overflowWrap:"break-word"}:{});function b(T){T.stopPropagation(),T.preventDefault(),s.value=!1,setTimeout(()=>{n.emit("close",l.value)},200)}function I(T,k){}function v(T){return`f-preten-link ${T.customClass?T.customClass:""}`}t.watch(i,()=>{i.value});const P=()=>{var T;return t.createVNode(t.Fragment,null,[t.createVNode("div",{class:"after-toast-msg text-right"},[!n.slots.default&&((T=l.value.buttons)==null?void 0:T.map(k=>t.createVNode("span",{class:v(k),onClick:S=>void 0},[k.text]))),n.slots.default&&n.slots.default()])])};return()=>t.createVNode("div",{class:d.value,style:"min-height:44px"},[p.value&&t.createVNode("button",{title:a("messageBox.close"),class:"toast-close f-btn-icon f-bare",onClick:b},[t.createVNode("span",{class:"f-icon modal_close"},null)]),g.value&&t.createVNode("section",{class:"modal-tips"},[!u.value&&t.createVNode("div",{class:"float-left modal-tips-iconwrap"},[t.createVNode("span",{class:f.value},null)]),t.createVNode("div",{class:"modal-tips-content"},[u.value&&t.createVNode(t.Fragment,null,[t.createVNode("h5",{class:"toast-title modal-tips-title",innerHTML:l.value.title},null),t.createVNode("p",{class:"toast-msg",innerHTML:l.value.message,style:h.value},null),m.value&&P()]),c.value&&(l.value.buttons?t.createVNode("div",{class:"toast-title-btns-wrapper d-flex"},[t.createVNode("h5",{class:"toast-title modal-tips-title only-toast-msg",style:h.value,innerHTML:l.value.message},null),t.createVNode("div",{class:"after-toast-title text-right ml-auto"},[P()])]):t.createVNode("h5",{class:"toast-title modal-tips-title only-toast-msg",style:h.value,innerHTML:l.value.message},null))])])])}}),St=t.defineComponent({name:"Notify",props:Ia,emits:["close","empty"],setup(e,n){const o=t.computed(()=>({"farris-notify":!0})),a={left:12,right:12,top:20,bottom:12},i=t.ref(),r=t.ref(e.options),l=t.ref(e.showCloseButton),s=t.computed(()=>e.position||"bottom-right"),u=t.computed(()=>e.timeout!=null?e.timeout:3e3),c=t.computed(()=>{const g=e.bottom?e.bottom:a.bottom,p=e.top?e.top:a.top,m={transition:"all 0.2s ease",left:s.value.indexOf("left")>-1?`${e.left?e.left:a.left}px`:"",right:s.value.indexOf("right")>-1?`${e.right?e.right:a.right}px`:"",top:s.value.indexOf("top")>-1?`${p}px`:"",bottom:s.value.indexOf("bottom")>-1?`${g}px`:""};return s.value.indexOf("center")>-1&&(m.left="50%",m.marginLeft="calc(-24rem / 2)",s.value==="center-center"&&(m.top="50%",m.transform="translate(-50%, -50%)")),m});function d(g){n.emit("close")}u.value&&setTimeout(()=>{d()},u.value),n.expose({closeToast:d,container:i,notifyPosition:s});function f(g,p){d()}return()=>t.createVNode("div",{class:o.value,style:c.value,ref:i},[t.createVNode(Ot,{options:r.value,showCloseButton:l.value,animate:e.animate,onClose:g=>f(g,r.value)},null)])}});class Mn{constructor(){fe(this,"notifyRefs",[]);fe(this,"globalConfig",t.reactive({}))}escapeAllHtml(n){if(typeof n!="string"||!n)return"";const o=document.createElement("div");return o.textContent=n||"",o.innerHTML.replace(/\\n/g,"<br>").replace(/\\t/g," ").replace(/\\r/g,"")}createNotifyInstance(n){const o=this,i=Object.assign({timeout:3e3,position:"bottom-right",showCloseButton:!0,safeHtml:!0},this.globalConfig,{...n}),r=document.createElement("div");r.style.display="contents";const l=t.createApp({setup(){var c;const s=t.ref();function u(){s.value.container.style.transform="scale(0)",setTimeout(()=>{o.updateNotifyPositionForClose(i,s),l.unmount()},220)}if(i.position.indexOf("top")>-1){const d=o.getNotifyInstances(i.position),f=d[d.length-1];if(f){const g=f.value.container.getBoundingClientRect();i.top=g.bottom}}return i.safeHtml&&((c=i.options)!=null&&c.message)&&(i.options.message=o.escapeAllHtml(i.options.message)),t.onUnmounted(()=>{document.body.removeChild(r)}),t.onMounted(()=>{o.updateNotifyPositionForCreate(i,s)}),()=>t.createVNode(t.Transition,{mode:"out-in",name:"fade",appear:!0},{default:()=>[t.createVNode(St,t.mergeProps({ref:s},i,{onClose:u}),null)]})}});return l.provide("NotifyService",this),document.body.appendChild(r),l.use(Qe.LocaleService.i18n),l.mount(r),l}getNotifyInstances(n){return this.notifyRefs.filter(o=>o.value.notifyPosition===n)}updateNotifyPositionForCreate(n,o){if(this.notifyRefs&&this.notifyRefs.length){const a=window.innerHeight;n.position.indexOf("bottom")>-1&&this.getNotifyInstances(n.position).forEach(i=>{const r=i.value.container.getBoundingClientRect();i.value.container.style.bottom=r.height+a-r.bottom+"px"})}this.notifyRefs=[...this.notifyRefs,o]}updateNotifyPositionForClose(n,o){const a=this.notifyRefs.indexOf(o);if(n.position.indexOf("top")>-1){const i=this.getNotifyInstances(n.position),r=i.indexOf(o);i.slice(r+1).forEach(l=>{l.value.container.style.top=l.value.container.offsetTop-l.value.container.offsetHeight+"px"})}a>-1&&this.notifyRefs.splice(a,1)}show(n){return this.createNotifyInstance(n)}buildNotifyProps(n,o){let a="",i="",r,l,s;typeof o=="string"?a=o:o&&(a=o.message||"",i=o.title||"",l=o.position||null,s=o.showCloseButton!=null?o.showCloseButton:null,r=o.timeout!=null?o.timeout:null);const c={options:{type:n,message:a,title:i}};return l!=null&&(c.position=l),s!=null&&(c.showCloseButton=s),r!=null&&(c.timeout=r),c}info(n){const o=this.buildNotifyProps("info",n);return this.show(o)}success(n){const o=this.buildNotifyProps("success",n);return this.show(o)}warning(n){const o=this.buildNotifyProps("warning",n);return this.show(o)}error(n){const o=this.buildNotifyProps("error",n);return this.show(o)}close(n){n&&n.unmount()}closeAll(){this.notifyRefs.forEach(n=>{n==null||n.value.closeToast()}),this.notifyRefs.length=0}}const Pn=Symbol("NOTIFY_SERVICE_TOKEN");St.install=e=>{e.component(St.name,St),e.component(Ot.name,Ot);const n=new Mn;e.provide(Pn,n),e.provide("FNotifyService",n)},`${Qe.LocaleService.getLocaleValue("datagrid.loadingMessage")}`;const ka={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:Qe.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 Fa(e,n,o,a,i,r,l,s,u,c,d,f,g,p,m,h,b){const{calculateCellPositionInRow:I}=r,{columnContext:v,hasLeftFixedColumn:P,hasRightFixedColumn:T}=l,{gridDataStyle:k,leftFixedGridDataStyle:S,rightFixedGridDataStyle:V}=p,{renderDataRow:y}=Z.getHierarchyRow(e,n,v,b,s,u,c,d,f,g,p,m,h),N=[y];function x(j,M){const D=I(j);return b.value.filter($=>$.visible!==!1).map(($,O)=>N[$.type]($,D,M,O))}function w(){return t.createVNode("div",{ref:a,class:"fv-grid-content-left-fixed"},[t.createVNode("div",{class:"fv-grid-data",style:S.value},[x(v.value.leftColumns.filter(j=>j.visible),"left")])])}function C(){return t.createVNode("div",{ref:o,class:"fv-grid-content-primary"},[t.createVNode("div",{class:"fv-grid-data",style:k.value},[x(v.value.primaryColumns.filter(j=>j.visible),"primary")])])}function F(){return t.createVNode("div",{ref:i,class:"fv-grid-content-right-fixed"},[t.createVNode("div",{class:"fv-grid-data",style:V.value},[x(v.value.rightColumns.filter(j=>j.visible),"right")])])}function B(){const j=[];return P.value&&j.push(w()),j.push(C()),T.value&&j.push(F()),j}return{renderDataArea:B}}const Ba=t.defineComponent({name:"FTreeGrid",props:ka,emits:["selectionChange","clickRow","expandNode","unSelectItem","dblclickNode","doubleClickRow","unSelectItem","selectItem","filterChanged","sortChanged","selectionUpdate"],setup(e,n){var mo,go;const a=((mo=e.rowOption)==null?void 0:mo.height)||28,i=t.ref(20),r=t.ref(e.columns),l=Z.useIdentify(e),{idField:s}=l,u=t.ref(),c=t.ref(),d=t.ref(),f=t.ref(),g=t.ref(),p=t.ref([]),m=t.ref(!1),h=t.ref(((go=e.rowOption)==null?void 0:go.wrapContent)||!1),b=Z.useGroupData(e,l),I=Z.useFilter(e,n),v=Z.useHierarchy(e),{collapseField:P}=v,{showLoading:T,renderLoading:k}=Z.useLoading(e,u),S=Z.useDataView(e,new Map,I,v,l),{dataView:V}=S,y=Z.useSelection(e,S,l,p,n),{showSelection:N,selectedValues:x}=y,w=Z.useSelectHierarchyItem(e,p,S,l,y,n),C=t.computed(()=>e.disabled),F=t.computed(()=>e.virtualized?Math.min(S.dataView.value.length,i.value):S.dataView.value.length),B=Z.usePagination(e,S),{shouldRenderPagination:j}=B,{containerStyleObject:M}=Z.useDataViewContainerStyle(e),D=Z.useCommandColumn(e),{applyCommands:$}=D;$(r);const{applyColumnSetting:O,removeColumnSetting:A}=Z.useSettingColumn(e);e.showSetting&&O(r);const L=Z.useColumn(e,n),Q=Z.useSort(e),{applyColumnSorter:te,columnContext:oe,updateColumnRenderContext:J}=L;te(S,Q);const de=Z.useGroupColumn(e,oe),ge=Z.useRow(e,n,y,l),le=Z.useEdit(e,n,l,ge,p),X=Z.useVisualDataBound(e),ce=Z.useVisualDataCell(e,le,X),E=Z.useVisualDataRow(e,S,le,v,l,X,ce),q=Z.useVisualData(e,r,S,F,0,E),{getVisualData:H}=q,W=Z.useCellPosition(e,oe),ee=Z.useSidebar(e,y),{sidebarWidth:ie}=ee,se=Z.useVirtualScroll(e,S,p,oe,q,F,0,ie),{onWheel:Ve,dataGridWidth:be,viewPortHeight:ae,viewPortWidth:ve,resetScroll:Be,updateVisibleRowsOnLatestVisibleScope:Le}=se,Ee=Z.useFitColumn(e,oe,c,ve,de),{calculateColumnsSize:He}=Ee,Ye=Z.useFilterHistory(),st=Z.useColumnFilter(c,g,S,Ye,se),ct=Z.useDragColumn(e,n,L,S,de,b,se),_=t.computed(()=>{const Y={"fv-grid":!0,"fv-grid-bordered":e.showBorder,"fv-grid-horizontal-bordered":e.showHorizontalLines,"fv-datagrid-strip":e.showStripe};return ye.getCustomClass(Y,e.customClass)}),re=t.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":m.value,"fv-grid-wrap-content":h.value})),{renderDataArea:we}=Fa(e,n,d,f,g,W,L,S,le,v,ge,y,w,se,q,X,p),{renderGridHeader:xe,renderGridColumnResizeOverlay:ze,shouldShowHeader:Wt}=Z.getColumnHeader(e,n,c,f,g,L,S,ct,st,I,Ye,Ee,de,y,ee,Q,se,ve,p),{renderDataGridSidebar:Gt}=Z.getSidebar(e,ge,y,ee,se),{renderDisableMask:Xt}=Z.getDisableMask(),{renderHorizontalScrollbar:Yt}=Z.getHorizontalScrollbar(e,c,se),{renderVerticalScrollbar:Jt}=Z.getVerticalScrollbar(e,c,se);function Qt(){var Y,ne,Te;if(c.value&&c.value.clientHeight>0&&((Y=c.value)==null?void 0:Y.clientWidth)>0){const Fe=Math.ceil(c.value.clientHeight/a);Fe>i.value&&(i.value=Fe,Le()),ae.value=((ne=d.value)==null?void 0:ne.clientHeight)||0,be.value=((Te=c.value)==null?void 0:Te.clientWidth)||0,He()}}t.onMounted(()=>{c.value&&(i.value=Math.max(Math.ceil(c.value.clientHeight/a),i.value),p.value=H(0,F.value+0-1),vo.useResizeObserver(c.value,Qt),He(),t.nextTick(()=>{c.value&&(be.value=c.value.clientWidth),d.value&&(ve.value=d.value.clientWidth,ae.value=d.value.clientHeight)})),T.value&&k()}),t.onUnmounted(()=>{}),t.watch(ve,()=>{c.value&&He()});function Zt(Y){S.collapseTo(Y),S.reOrderVisibleIndex(),Be()}function Ft(Y){S.expandTo(Y),S.reOrderVisibleIndex(),Be()}function ft(){const Y=y.getSelectionRow();return Y?Y.dataIndex-1:-1}function Kt(){const Y=ft();S.insertNewDataItem(Y),p.value=H(0,F.value+0-1)}function en(){const Y=ft();S.insertNewChildDataItem(Y),p.value=H(0,F.value+0-1)}function tn(Y,ne){const Te=p.value.find($e=>$e.raw[s.value]===ne),Fe=Te?Te.dataIndex-1:-1;S.insertNewChildDataItems(Y,Fe)}function nn(){const Y=ft(),ne=w.getNextSelectableHierarchyItemId(Y);S.removeHierarchyDataItem(Y),p.value=H(0,F.value+0-1),ne&&w.selectItemById(ne)}function Bt(Y){le.onEditingRow(Y)}function on(Y){le.acceptEditingRow(Y)}function R(Y){le.cancelEditingRow(Y)}function U(Y){Y&&(r.value=Y,$(r),J(r.value),te(S,Q),He())}t.watch(()=>e.columns,Y=>{U(Y)});function G(Y,ne){Y&&(S.load(Y),S.reOrderVisibleIndex(),ne!=null&&ne.keepScrollPosition?se.scrollTo(se.offsetY.value):Be())}function K(Y){w.selectItemById(Y)}function pe(Y){const ne=p.value.find(Te=>Te.raw[l.idField.value]===Y);ne&&ge.clickRowItem(ne)}function me(Y){ge.activeRowById(Y)}function De(Y){w.selectItemByIds(Y)}function Me(){return y.getSelectedItems()}function Pe(){y.clearSelection()}const Ae=t.computed(()=>!p.value||!p.value.length),{renderEmpty:Se}=Z.getEmpty(e,n);function qe(){return y.getSelectionRow()}function je(Y){w.unSelectItemByIds(Y)}function ke(){return y.currentSelectedDataId.value}function pt(Y,ne,Te){const Fe=V.value.find($e=>$e[s.value]===Y);if(Fe){if(Object.keys(Fe).forEach(Ne=>{Object.prototype.hasOwnProperty.call(ne,Ne)&&(Fe[Ne]=ne[Ne])}),Te){const{collapseField:Ne,disabledField:ot,checkedField:at,visibleField:it}=Te;Ne&&!he.isUndefined(ne[Ne])&&(Fe.__fv_collapse__=ne[Ne]),at&&!he.isUndefined(ne[at])&&(Fe.__fv_checked__=ne[at]),ot&&!he.isUndefined(ne[ot])&&(Fe.__fv_disabled__=ne[ot]),it&&!he.isUndefined(ne[it])&&(Fe.__fv_visible__=ne[it])}const $e=p.value.find(Ne=>Ne.raw[s.value]===Y),ho=p.value.findIndex(Ne=>Ne.raw[s.value]===Y);if($e){if($e.raw=Fe,Object.keys($e.data).forEach(Ne=>{$e.data[Ne].updateData(Fe)}),Te){const{collapseField:Ne,disabledField:ot,checkedField:at,visibleField:it}=Te;Ne&&!he.isUndefined(ne[Ne])&&($e.collapse=ne[Ne]),at&&!he.isUndefined(ne[at])&&($e.checked=ne[at]),ot&&!he.isUndefined(ne[ot])&&($e.disabled=ne[ot]),it&&!he.isUndefined(ne[it])&&($e.visible=ne[it])}p.value=[...p.value.slice(0,ho),$e,...p.value.slice(ho+1)],S.updateSummary()}}}function mt(Y){return Object.prototype.hasOwnProperty.call(Y,"raw")?S.hasRealChildren(Y.raw):S.hasRealChildren(Y)}function gt(Y){const ne=S.dataView.value.find(Te=>Te[s.value]===Y);return ne?ne[P.value]:""}function Ur(){return P.value}t.watch(()=>e.showSetting,(Y,ne)=>{Y!==ne&&(Y?O(r):A(r),U(r.value))});function Wr(Y){return p.value.filter(ne=>Y.includes(ne.raw[e.idField]))}function Gr(Y){const ne=l.idField.value,Te=p.value.find(Fe=>Fe.raw[ne]===Y);Te&&ge.changeRow(Te)}function Xr(){y.keepSelectingOnPaging.value||Pe(),S.updateVisibleDataSummary(p.value)}n.expose({activeRowById:me,addNewDataItem:Kt,addNewChildDataItem:en,addChildrenToNode:tn,collapseTo:Zt,expandTo:Ft,removeDataItem:nn,editDataItem:Bt,acceptDataItem:on,cancelDataItem:R,updateColumns:U,updateDataSource:G,selectItemById:K,selectItemByIds:De,getSelectedItems:Me,clearSelection:Pe,getSelectionRow:qe,clickRowItemById:pe,unSelectItemByIds:je,getCurrentRowId:ke,reassignRowData:pt,hasChildren:mt,getCollapseField:Ur,getCollapseStatusById:gt,getVisibleDataByIds:Wr,selectRowById:Gr,updateDerivedData:Xr});const Yr=t.computed(()=>{const Y={};return se.shouldShowHorizontalScrollbar.value&&(Y.paddingBottom="10px"),se.shouldShowVirticalScrollbar.value&&(Y.paddingRight="10px"),Y}),Jr=t.computed(()=>({...M.value,borderRadius:"5px"}));Z.getPagination(e,n,S,se,B,y);const Qr=t.computed(()=>({"d-flex":!0,"justify-content-between":j.value&&N.value,"justify-content-end":j.value&&!N.value,"position-relative":!0})),Zr=t.computed(()=>({"d-flex":!0,"align-items-center":!0})),{renderDataGridSummary:Kr}=Z.getSummary(e,S,L);return()=>t.createVNode("div",{ref:u,class:_.value,style:Jr.value,onWheel:Ve},[c.value&&Wt.value&&xe(),t.createVNode("div",{ref:c,class:re.value,onMouseover:()=>m.value=!0,onMouseleave:()=>m.value=!1,style:Yr.value},[c.value&&Gt(p),c.value&&we(),c.value&&Ae.value&&Se(),c.value&&Yt(),c.value&&Jt()]),c.value&&Kr(),N.value&&t.createVNode("div",{class:Qr.value},[N.value&&t.createVNode("div",{class:Zr.value},[t.createVNode("div",null,["已选:"+x.value.length,t.createTextVNode(" 条")])])]),ze(),C.value&&Xt()])}});ye.withInstall(Ba);const Ma=new Map([["appearance",_e]]);function Pa(e,n,o){return n}Ie({direction:{type:String,default:"horizontal"},fill:{type:Boolean,default:!1},height:{type:Number,default:0},clickable:{type:Boolean,default:!0},steps:{type:Array,default:[{id:"1",title:"审批中(示例)",description:"正在审批"},{id:"2",title:"复核中(示例)",description:"等待复核"}]},activeIndex:{type:Number,default:0},onClick:{type:Function,default:()=>{}}},{$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/step.schema.json",title:"step",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for step",type:"string"},type:{description:"The type string of step",type:"string",default:"step"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disable:{type:"string",default:!1},editable:{description:"",type:"boolean",default:!0},placeholder:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},require:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},visible:{description:"",type:"boolean",default:!0}},required:["id","type"]},Ma,Pa,{title:"step",description:"A Farris Component",type:"object",categories:{basic:{description:"Basic Infomation",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"waiting for modification",enum:[]}}}}}});const Rt=new Map([["appearance",_e]]),ja=new Map([]),$a="root-viewmodel";class Ea{constructor(n,o){fe(this,"formSchemaUtils");fe(this,"controlCreatorUtils");fe(this,"designViewModelUtils");this.resolver=n,this.designerHostService=o,this.formSchemaUtils=this.designerHostService.formSchemaUtils,this.controlCreatorUtils=this.designerHostService.controlCreatorUtils,this.designViewModelUtils=this.designerHostService.designViewModelUtils}createComponent(n){const o=this.createComponentRefNode(n),a=this.createComponentNode(n),i=this.createViewModeNode(n),r=this.formSchemaUtils.getFormSchema();return r.module.viewmodels.push(i),r.module.components.push(a),this.designViewModelUtils.assembleDesignViewModel(),o}createComponentRefNode(n){const o=this.resolver.getSchemaByType("component-ref");return Object.assign(o,{id:`${n.componentId}-component-ref`,component:`${n.componentId}-component`}),o}createComponentNode(n){const o=this.resolver.getSchemaByType("component"),a=this.createFormComponentContents(n);return Object.assign(o,{id:`${n.componentId}-component`,viewModel:`${n.componentId}-component-viewmodel`,componentType:n.componentType,appearance:{class:this.getFormComponentClass()},formColumns:n.formColumns,contents:a}),o}getFormComponentClass(){const{templateId:n}=this.formSchemaUtils.getFormSchema().module;return n==="double-list-in-tab-template"?"f-struct-wrapper f-utils-fill-flex-column":"f-struct-wrapper"}createFormComponentContents(n){const o=this.resolver.getSchemaByType("section");Object.assign(o,{id:n.componentId+"-form-section",appearance:{class:"f-section-form f-section-in-mainsubcard"},mainTitle:n.componentName});const a=this.resolver.getSchemaByType("response-form"),i=[];Object.assign(a,{id:n.componentId+"-form",appearance:{class:"f-form-layout farris-form farris-form-controls-inline"},contents:i}),o.contents=[a];const{selectedFields:r}=n;r==null||r.forEach(s=>{if(s.$type===ye.FormSchemaEntityField$Type.SimpleField){const u=he.cloneDeep(s),c=this.resolveControlClassByFormColumns(n),d=this.controlCreatorUtils.setFormFieldProperty(u,"",c);d&&i.push(d)}});const{templateId:l}=this.formSchemaUtils.getFormSchema().module;return l==="double-list-in-tab-template"&&(o.appearance.class="f-section-grid f-section-in-main px-0 pt-0",o.fill=!0),[o]}resolveControlClassByFormColumns(n){let o="";switch(n.formColumns){case 1:{o="col-12";break}case 2:{o="col-12 col-md-6 col-xl-6 col-el-6";break}case 3:{o="col-12 col-md-6 col-xl-4 col-el-4";break}case 4:{o="col-12 col-md-6 col-xl-3 col-el-2";break}}return o}createViewModeNode(n){return{id:`${n.componentId}-component-viewmodel`,code:`${n.componentId}-component-viewmodel`,name:n.componentName,bindTo:n.bindTo,parent:$a,fields:this.assembleViewModelFields(n),commands:[],states:[],enableValidation:!0}}assembleViewModelFields(n){const o=[],{selectedFields:a}=n;return a==null||a.forEach(i=>{if(i.$type===ye.FormSchemaEntityField$Type.SimpleField){let r="blur";const l=i.type.name;(l===ye.FormSchemaEntityFieldTypeName.Enum||l===ye.FormSchemaEntityFieldTypeName.Boolean)&&(r="change"),o.push({type:"Form",id:i.id,fieldName:i.bindingField,groupId:null,groupName:null,updateOn:r,fieldSchema:{}})}}),o}}function Da(e,n,o,a){var r,l,s,u,c,d;const i=o.parentComponentInstance;if(i&&a){const f=(r=i.schema)==null?void 0:r.type,p={componentId:`form-${Math.random().toString(36).slice(2,6)}`,componentName:((l=o.bindingSourceContext)==null?void 0:l.entityTitle)||((u=(s=o.bindingSourceContext)==null?void 0:s.bindingEntity)==null?void 0:u.name)||"标题",componentType:"form",formColumns:f==="splitter-pane"?1:4,parentContainerId:i.schema.id,bindTo:((c=o.bindingSourceContext)==null?void 0:c.bindTo)||"/",selectedFields:(d=o.bindingSourceContext)==null?void 0:d.bindingEntityFields};return new Ea(e,a).createComponent(p)}else return n}function Oa(e,n,o){return n}Ie({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"]},Rt,Da);const jn={$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"]};Ie({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}},jn,Rt,void 0);function Ra(){function e(n,o){var l;if(!n)return!1;const a=((l=n.targetContainer)==null?void 0:l.componentInstance)&&n.targetContainer.componentInstance.value;if(!a)return!1;const i=a.schema.type,r=o==null?void 0:o.formSchemaUtils.getComponentById(a.belongedComponentId);return!((n.componentCategory==="input"||n.componentType==="form-group")&&![z["response-layout-item"].type,z["response-form"].type,z.fieldset.type].includes(i)||(n.componentType===z.tabs.type||n.componentType===z.section.type)&&((r==null?void 0:r.componentType)!=="frame"||![z["content-container"].type,z["splitter-pane"].type,z["response-layout-item"].type].includes(i))||[z["query-solution"].type,z["filter-bar"].type].includes(n.componentType)||n.componentType===z.fieldset.type&&i!==z["response-form"].type)}return{basalDragulaRuleForContainer:e}}class $n{getTemplateRule(n,o){const a=o==null?void 0:o.formSchemaUtils,i=a==null?void 0:a.getFormTemplateRule(),r={canAccept:!0,canDelete:!0,canMove:!0};if(!i)return r;const l=this.getComponentContext(n),{componentClassList:s}=l;return s.forEach(u=>{if(!u||!i[u])return;const{canMove:c,canDelete:d,canAccept:f}=i[u];r.canMove=r.canMove&&this.resolveRuleValue(c,l),r.canDelete=r.canDelete&&this.resolveRuleValue(d,l),r.canAccept=r.canAccept&&this.resolveRuleValue(f,l)}),r}resolveRuleValue(n,o){return typeof n=="boolean"?n:this.parseRuleValueSchema(n,o)}parseRuleValueSchema(n,o){const a=n.invalidContext||[];let i=!0;for(const r of a){const{firstLevelChild:l,secondLevelChild:s,parent:u,...c}=r;if(c&&o.component){let d=!0;for(const f of Object.keys(c))if(c[f]!==o.component[f]){d=!1;break}if(!d){i=!1;continue}}if(r.firstLevelChild){if(r.firstLevelChild.class){const{firstLevelChildClassList:d}=o;if(d&&!d.includes(r.firstLevelChild.class)){i=!1;continue}}if(r.firstLevelChild.type){const{firstLevelChildSchema:d}=o;if(!d||d.type!==r.firstLevelChild.type){i=!1;continue}}}if(r.secondLevelChild){if(r.secondLevelChild.class){const{secondLevelChildClassList:d}=o;if(d&&!d.includes(r.secondLevelChild.class)){i=!1;continue}}if(r.secondLevelChild.type){const{secondLevelChildSchema:d}=o;if(!d||d.type!==r.secondLevelChild.type){i=!1;continue}}}if(r.parent){if(r.parent.class){const{parentClassList:d}=o;if(d&&!d.includes(r.parent.class)){i=!1;continue}}if(r.parent.type){const{parentSchema:d}=o;if(d&&d.type!==r.parent.type){i=!1;continue}}}i=!0;break}return!i}getComponentContext(n){var h,b,I,v;const o=n.schema,a=o.appearance&&o.appearance.class||"",i=a.split(" ")||[],r=o.contents||[],l=r.length?r[0]:null,s=l&&l.appearance?l.appearance.class:"",u=s?s.split(" "):[],c=(h=l==null?void 0:l.contents)!=null&&h.length?l==null?void 0:l.contents[0]:null,d=c&&c.appearance?c.appearance.class:"",f=d?d.split(" "):[],g=o.type==="component"?(I=(b=n.parent)==null?void 0:b.parent)==null?void 0:I.schema:(v=n.parent)==null?void 0:v.schema,p=g&&g.appearance&&g.appearance.class||"",m=p?p.split(" "):[];return{componentClass:a,componentClassList:i,childContents:r,firstLevelChildSchema:l,firstLevelChildClass:s,firstLevelChildClassList:u,secondLevelChildSchema:c,secondLevelChildClass:d,secondLevelChildClassList:f,parentSchema:g,parentClass:p,parentClassList:m,component:o}}}const La=t.ref(0);function Aa(){La.value++}function qa(e){const{formSchemaUtils:n,formStateMachineUtils:o}=e;function a(u,c=""){return{path:c+u.code,field:u.id,fullPath:u.code}}function i(u,c=""){return n.getViewModelById(u).states.map(f=>a(f,c))}function r(u){const c=n.getRootViewModelId(),d=i(u);if(u===c)return d;const f=i(c,"root-component.");return[...d,...f]}function l(u){return u.binding&&u.binding.path||u.id||""}function s(){return o&&o.getRenderStates()||[]}return{getVariables:r,getControlName:l,getStateMachines:s}}class Ha{constructor(n){fe(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'"}]);fe(this,"expressionNames",{compute:"计算表达式",dependency:"依赖表达式",validate:"验证表达式",dataPicking:"帮助前表达式",visible:"可见表达式",readonly:"只读表达式",required:"必填表达式"});fe(this,"getExpressionConverter",(n,o)=>({convertFrom:(a,i,r,l)=>{const s=r.getExpressionRuleValue(n,o||i);return s&&s.value||""},convertTo:(a,i,r,l,s)=>{var u;if(i==="dataPicking"&&(r!=null&&r.target)){const c=`${r.target}_dataPicking`;((u=r.rules)==null?void 0:u.some(f=>f.id===c&&f.value))?a.dictPickingExpressionId=c:delete a.dictPickingExpressionId}l.updateExpression(r)}}));this.formSchemaService=n}getExpressionRule(n,o){const a=this.formSchemaService.getExpressions();if(!a)return"";const i=a.find(l=>l.target===n);if(!i)return"";const r=i.rules.find(l=>l.type===o);return r||""}getContextFormVariables(){const{module:n}=this.formSchemaService.getFormSchema();if(!n.viewmodels||n.viewmodels.length===0)return[];const o=this.formSchemaService.getRootViewModelId(),a=this.formSchemaService.getViewModelById(o);if(!a||!a.states||a.states.length===0)return[];const i=[];return a.states.forEach(r=>{i.push({key:r.code,name:r.name,description:r.name,category:r.category})}),i}createTreeNode(n,o,a="label"){return{id:n.id,name:n.name,bindingPath:n[a],parents:o,type:"field"}}buildEntityFieldsTreeData(n=null,o){const a=[];return n==null||n.forEach(i=>{var s;const r=this.createTreeNode(i,o);let l=[];(s=i.type)!=null&&s.fields&&(l=this.buildEntityFieldsTreeData(i.type.fields,[...o,i.label])),a.push({data:r,children:l,expanded:!0})}),a}buildChildEntityTreeData(n=null,o){const a=[];return n==null||n.forEach(i=>{var u,c;const r=this.createTreeNode(i,o);r.type="entity";const l=this.buildEntityFieldsTreeData((u=i.type)==null?void 0:u.fields,[...o,i.label]),s=this.buildChildEntityTreeData((c=i.type)==null?void 0:c.entities,[...o,i.label]);s!=null&&s.length&&(l==null||l.push(...s)),a.push({data:r,children:l||[],expanded:!0})}),a}getEntitiesTreeData(){const n=this.formSchemaService.getSchemaEntities();if(!(n!=null&&n.length))return[];const o=n[0];if(!(o!=null&&o.type))return[];const a=this.buildEntityFieldsTreeData(o.type.fields,[o.code]),i=this.buildChildEntityTreeData(o.type.entities,[o.code]);return i!=null&&i.length&&(a==null||a.push(...i)),{entityCode:o.code,fields:[{data:this.createTreeNode(o,[],"code"),children:a||[]}]}}getEntitiesAndVariables(){return{entities:this.getEntitiesTreeData(),variables:{session:{name:"系统变量",items:this.sessionVariables,visible:!1},forms:{name:"表单变量",items:this.getContextFormVariables(),visible:!0}}}}onBeforeOpenExpression(n,o,a){const i=a==="Field"?n.binding.field:n.id,r=this.getExpressionRule(i,o),l=this.getEntitiesAndVariables(),s={message:["validate","required","dataPicking"].includes(o)&&r?r.message:"",...l};return r.messageType!=null&&(s.messageType=r.messageType),s}buildRule(n,o,a,i){const{expression:r,message:l,messageType:s}=o,u={id:`${n}_${a}`,type:a,value:r};return(a==="validate"||a==="dataPicking"||a==="required")&&(u.message=l),a==="dataPicking"&&(u.messageType=s),a==="validate"&&i&&(u.elementId=i),u}getExpressionData(){const{expressions:n}=this.formSchemaService.getFormSchema().module;return n||[]}updateExpression(n,o,a,i){const r=o==="Field"?n.binding.field:n.id,l=this.buildRule(r,a,i,n.type==="form-group"?n.id:"");let u=this.getExpressionData().find(d=>d.targetType===o&&d.target===r);const c=d=>d.value.trim()==="";if(u){const d=u.rules.find(f=>f.id===l.id);if(d)c(l)?u.rules=u.rules.filter(f=>f.id!==l.id):(Object.assign(d,l),i==="validate"&&n.type==="form-group"&&(d.elementId=n.id));else{if(c(l))return null;u.rules=u.rules||[],u.rules.push(l)}}else{if(c(l))return null;u={target:`${r}`,rules:[l],targetType:o}}return u}getExpressionEditorOptions(n,o,a,i){return a.reduce((r,l)=>{var u,c;const s=o==="Field"?(u=n==null?void 0:n.binding)==null?void 0:u.field:n.id;return r[l]={hide:o==="Field"?!!((c=n==null?void 0:n.binding)!=null&&c.field):!1,description:"",title:this.expressionNames[l],type:"string",$converter:this.getExpressionConverter(s),refreshPanelAfterChanged:!0,editor:{type:"expression-editor",singleExpand:!1,dialogTitle:`${this.expressionNames[l]}编辑器`,showMessage:l==="validate"||l==="dataPicking"||l==="required",showMessageType:l==="dataPicking",beforeOpen:()=>this.onBeforeOpenExpression(n,l,o),onSubmitModal:d=>{const f=this.updateExpression(n,o,d,l);if(i){const g=this.buildRule(s,d,l);i(g)}return f}}},r},{})}getExpressionInfo(n,o,a){const i=o==="Field"?n.binding.field:n.id,r=this.getExpressionRule(i,a),l={value:r&&r.value,targetId:i,targetType:o,expressionType:a};return r&&r.message&&(l.message=r.message),l}getExpressionConfig(n,o,a=["compute","dependency","validate"],i){return{description:"表达式",title:"表达式",hide:!n.binding,properties:{...this.getExpressionEditorOptions(n,o,a,i)}}}getExpressionOptions(n,o,a){const i=this.getExpressionInfo(n,o,a);return{dialogTitle:`${this.expressionNames[a]}编辑器`,singleExpand:!1,showMessage:a==="required",beforeOpen:()=>this.onBeforeOpenExpression(n,a,o),expressionInfo:i}}}class ut{constructor(n,o){fe(this,"componentId");fe(this,"viewModelId");fe(this,"eventsEditorUtils");fe(this,"formSchemaUtils");fe(this,"formMetadataConverter");fe(this,"designViewModelUtils");fe(this,"designViewModelField");fe(this,"controlCreatorUtils");fe(this,"designerHostService");fe(this,"designerContext");fe(this,"schemaService",null);fe(this,"metadataService",null);fe(this,"propertyConfig",{type:"object",categories:{}});var a;this.componentId=n,this.designerHostService=o,this.eventsEditorUtils=o.eventsEditorUtils,this.formSchemaUtils=o.formSchemaUtils,this.formMetadataConverter=o.formMetadataConverter,this.viewModelId=((a=this.formSchemaUtils)==null?void 0:a.getViewModelIdByComponentId(n))||"",this.designViewModelUtils=o.designViewModelUtils,this.controlCreatorUtils=o.controlCreatorUtils,this.metadataService=o.metadataService,this.schemaService=o.schemaService,this.designerContext=o.designerContext}getFormDesignerInstance(){var n,o;return(o=(n=this.designerContext)==null?void 0:n.instances)==null?void 0:o.formDesigner.value}getTableInfo(){var n;return(n=this.schemaService)==null?void 0:n.getTableInfoByViewModelId(this.viewModelId)}setDesignViewModelField(n){var a;const o=n.binding&&n.binding.type==="Form"&&n.binding.field;if(o){if(!this.designViewModelField){const i=this.designViewModelUtils.getDgViewModel(this.viewModelId);this.designViewModelField=i.fields.find(r=>r.id===o)}n.updateOn=(a=this.designViewModelField)==null?void 0:a.updateOn}}getBasicPropConfig(n){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:n.type,name:z[n.type]&&z[n.type].name}]}}}}}getAppearanceConfig(n=null,o={},a){const i={title:"外观",description:"Appearance"},r={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 l in o)r[l]=Object.assign(r[l]||{},o[l]);return{...i,properties:{...r},setPropertyRelates(l,s){if(l){switch(l&&l.propertyID){case"class":case"style":{Ue.value++;break}}a&&a(l,n,s)}}}}getPropertyEditorParams(n,o=[],a="visible",i={},r={},l=""){const{getVariables:s,getControlName:u,getStateMachines:c}=qa(this.designerHostService),d=this.getRealTargetType(n),f=o&&o.length>0?o:["Const","Variable","StateMachine","Expression"],g={type:"property-editor",propertyTypes:f};return f.map(p=>{switch(p){case"Const":Object.assign(g,{constType:"enum",constEnums:[{id:!0,name:"是"},{id:!1,name:"否"}]},i);break;case"Expression":g.expressionConfig=this.getExpressionOptions(n,d,l||a);break;case"StateMachine":g.stateMachines=c();break;case"Variable":Object.assign(g,{controlName:u(n),newVariablePrefix:"is",newVariableType:"Boolean",variables:s(this.viewModelId),onBeforeOpenVariables:m=>{m.value=s(this.viewModelId)}},r);break}}),g}getVisibleProperty(n,o=""){var r;let a=["Const","Variable","StateMachine","Expression"];return o==="gridFieldEditor"?a=["Const","Expression"]:o==="form-group"&&!((r=n.binding)!=null&&r.field)&&(a=["Const","Variable","StateMachine"]),{visible:{title:"是否可见",type:"boolean",description:"运行时组件是否可见",editor:this.getPropertyEditorParams(n,a,"visible")}}}getBehaviorConfig(n,o="",a={},i){const r={title:"行为",description:""},l=this.getVisibleProperty(n,o);for(const u in a)l[u]=Object.assign(l[u]||{},a[u]);const s=this;return{...r,properties:{...l},setPropertyRelates(u,c){if(u){switch(u.propertyID){case"disabled":case"readonly":case"visible":s.afterMutilEditorChanged(n,u);break}i&&i(u,c)}}}}afterMutilEditorChanged(n,o){this.addNewVariableToViewModel(o,this.viewModelId),this.updateExpressionValue(o),this.clearExpression(o,n)}updateElementByParentContainer(n,o){const a=o&&o.parent&&o.parent.schema;if(!a)return;const i=a.contents.findIndex(l=>l.id===n),r=he.cloneDeep(a.contents[i]);a.contents.splice(i,1),a.contents.splice(i,0,r),Aa()}addNewVariableToViewModel(n,o){const a=n.propertyValue;if(!(a&&typeof a=="object")||!(a.type==="Variable"&&a.isNewVariable))return;const l={id:a.field,category:"locale",code:a.fullPath,name:a.fullPath,type:a.newVariableType||"String"};delete a.newVariableType,delete a.isNewVariable,this.formSchemaUtils.getVariableByCode(l.code)||this.formSchemaUtils.getViewModelById(o).states.push(l)}updateExpressionValue(n){const o=n.propertyValue;if(!((o&&o.type)==="Expression"&&o.expressionInfo))return;const{expressionId:r,expressionInfo:l}=o,{targetId:s,targetType:u,expressionType:c,value:d,message:f}=l,g=this.formSchemaUtils.getModule();g.expressions=g.expressions||[];const{expressions:p}=g;let m=p.find(b=>b.target===s);m||(m={target:s,rules:[],targetType:u},p.push(m));const h=m.rules.find(b=>b.type===c);if(h)h.value=d,h.message=f;else{const b={id:r,type:c,value:d,message:f};m.rules.push(b)}delete o.expressionInfo}clearExpression(n,o){const a=n.propertyValue;if(a&&a.type==="Expression")return;const r=n.propertyID,l=this.formSchemaUtils.getExpressions(),s=o.binding?o.binding.field:o.id,u=l.find(c=>c.target===s);!u||!u.rules||(u.rules=u.rules.filter(c=>c.type!==r))}getExpressionOptions(n,o,a){return new Ha(this.formSchemaUtils).getExpressionOptions(n,o,a)}getRealTargetType(n){return["response-toolbar-item","tab-toolbar-item","section-toolbar-item"].indexOf(n.type)>-1?"Button":n.binding&&n.binding.field?"Field":"Container"}createBaseEventProperty(n){const o={};return o[this.viewModelId]={type:"events-editor",editor:{initialData:n,viewSourceHandle:a=>{var i;((i=a.controller)==null?void 0:i.label.indexOf(this.formSchemaUtils.getModule().code))>-1&&this.eventsEditorUtils.jumpToMethod(a)}}},o}}const lt=class lt{static getEditorTypesByMDataType(n,o=!1,a=""){if(o)return[{key:z["language-textbox"].type,value:z["language-textbox"].name}];let i=lt.fieldControlTypeMapping[n];if(a==="data-grid-column"&&(i!=null&&i.length)){const r=[z["check-group"].type,z["radio-group"].type];i=i.filter(l=>!r.includes(l.key))}return i}static getAllInputTypes(){const n=[];for(const o in lt.fieldControlTypeMapping)lt.fieldControlTypeMapping[o].forEach(a=>{n.find(i=>i.key===a.key&&i.value===a.value)||n.push({key:a.key,value:a.value})});return n}static mappingDomPropAndSchemaProp(n,o){var r;const a=(r=n.editor)==null?void 0:r.type,i=[];return(n.type===z["data-grid-column"].type||n.type===z["tree-grid-column"].type)&&o&&o.categoryId&&o.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"}),(a===z["input-group"].type||a===z.textarea.type||a===z["number-spinner"].type)&&i.push({domField:"editor.maxLength",schemaField:"type.length"}),a===z["number-spinner"].type&&i.push({domField:"editor.precision",schemaField:"type.precision"}),(n.type===z["data-grid-column"].type||n.type===z["tree-grid-column"].type)&&i.push({domField:"formatter.precision",schemaField:"type.precision"}),(a===z["combo-list"].type||a===z["radio-group"].type)&&i.push({domField:"editor.data",schemaField:"type.enumValues"}),(n.type===z["data-grid-column"].type||n.type===z["tree-grid-column"].type)&&i.push({domField:"formatter.data",schemaField:"type.enumValues"}),a===z["date-picker"].type&&(i.push({domField:"editor.displayFormat",schemaField:"editor.format"}),i.push({domField:"editor.fieldType",schemaField:"type.name"})),a===z["number-spinner"].type&&(i.push({domField:"editor.max",schemaField:"editor.maxValue"}),i.push({domField:"editor.min",schemaField:"editor.minValue"})),a===z.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"}),(n.type===z["data-grid-column"].type||n.type===z["tree-grid-column"].type)&&i.push({domField:"field",schemaField:"bindingPath"}),i}};fe(lt,"fieldControlTypeMapping",{String:[{key:z["input-group"].type,value:z["input-group"].name},{key:z.lookup.type,value:z.lookup.name},{key:z["date-picker"].type,value:z["date-picker"].name},{key:z.switch.type,value:z.switch.name},{key:z["check-box"].type,value:z["check-box"].name},{key:z["check-group"].type,value:z["check-group"].name},{key:z["radio-group"].type,value:z["radio-group"].name},{key:z["combo-list"].type,value:z["combo-list"].name},{key:z.textarea.type,value:z.textarea.name},{key:z["time-picker"].type,value:z["time-picker"].name}],Text:[{key:z.textarea.type,value:z.textarea.name},{key:z.lookup.type,value:z.lookup.name}],Decimal:[{key:z["number-spinner"].type,value:z["number-spinner"].name}],Integer:[{key:z["number-spinner"].type,value:z["number-spinner"].name}],Number:[{key:z["number-spinner"].type,value:z["number-spinner"].name},{key:z.switch.type,value:z.switch.name},{key:z["check-box"].type,value:z["check-box"].name}],BigNumber:[{key:z["number-spinner"].type,value:z["number-spinner"].name}],Date:[{key:z["date-picker"].type,value:z["date-picker"].name}],DateTime:[{key:z["date-picker"].type,value:z["date-picker"].name}],Boolean:[{key:z.switch.type,value:z.switch.name},{key:z["check-box"].type,value:z["check-box"].name}],Enum:[{key:z["combo-list"].type,value:z["combo-list"].name},{key:z["radio-group"].type,value:z["radio-group"].name}],Object:[{key:z.lookup.type,value:z.lookup.name},{key:z["combo-list"].type,value:z["combo-list"].name},{key:z["radio-group"].type,value:z["radio-group"].name}]});let En=lt;Ie({id:{type:String,default:""},editor:{type:Object,default:{}},modelValue:{type:[String,Boolean,Array,Number]},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1}},jn,Rt,void 0);const za={$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"]},_a={initialState:{type:Object,default:{uniqueColClassInSM:12,uniqueColClassInMD:6,uniqueColClassInLG:3,uniqueColClassInEL:2}}};Je.createPropsResolver(_a,za,ja,Oa);const Ua={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 Lt(){return new DOMException("The request is not allowed","NotAllowedError")}async function Wa(e){if(!navigator.clipboard)throw Lt();return navigator.clipboard.writeText(e)}async function Ga(e){const n=document.createElement("span");n.textContent=e,n.style.whiteSpace="pre",n.style.webkitUserSelect="auto",n.style.userSelect="all",document.body.appendChild(n);const o=window.getSelection(),a=window.document.createRange();o==null||o.removeAllRanges(),a.selectNode(n),o==null||o.addRange(a);let i=!1;try{i=window.document.execCommand("copy")}finally{o==null||o.removeAllRanges(),window.document.body.removeChild(n)}if(!i)throw Lt()}async function Xa(e){try{await Wa(e)}catch(n){try{await Ga(e)}catch(o){throw o||n||Lt()}}}function Ya(){async function e(n){await Xa(n)}return{onCopy:e}}function Ja(e,n,o,a){const i=t.ref(14),r=t.ref(140),l=t.ref(""),s=t.ref(a.value.length),u=t.computed(()=>a.value),c=t.computed(()=>({"font-size":`${i.value}px`,height:"100%"}));function d(f){if(f.currentTarget){const g=f.currentTarget.value||"";s.value=g.length}}return()=>t.createVNode(t.Fragment,null,[t.createVNode("textarea",{title:"promptMessage",name:"promptMessage",class:"form-control",style:c.value,rows:"4",maxlength:r.value,onInput:f=>d(f)},[u.value]),t.createVNode("span",{class:"textarea-wordcount",title:l.value,style:"position: absolute; bottom: 76px; right: 32px; cursor: pointer; text-align: right;"},[s.value+" / "+r.value])])}function Qa(e,n,o,a){const i=Ja(e,n,o,a),r=new Map([["text-area",i]]);function l(s){return r.get(s)||null}return{getEditorRender:l}}function Za(){const e=t.ref(!1),n=t.ref("复制成功");return{feedbackStyle:t.computed(()=>{const a={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 a.opacity=e.value?"0.8":"0",a.display=e.value?"":"none",a}),feedbackMessage:n,toShowFeedback:e}}function Ka(e,n){const o=n.getEditorRender(e.promptEditorType);return()=>o&&o()}function ei(e,n){function o(p){if(p==null)return 0;let m=0;for(let h=0;h<p.length;h++){const b=p.charCodeAt(h);b>=0&&b<=128?m++:m=m+2}return m}function a(p,m){if(p!==""&&p!==void 0&&p!==null){p=""+p;const h=p.length;let b="",I=0;for(let v=0;v<h;v++){const P=p.charAt(v);if(I++,encodeURI(P).length>4&&I++,b=b.concat(P),I>=m)return b=b.concat("..."),b}if(I<m)return p}return""}const i=t.computed(()=>!!e.value&&!!e.value.date),r=t.computed(()=>{const p=e.value&&e.value.date||"";return`${n.exception.happend} : ${p}`}),l=t.computed(()=>!!e.value&&!!e.value.detail),s=t.computed(()=>e.value?o(e.value.detail)>160:!1),u=t.ref(!1),c=t.computed(()=>u.value?n.exception.collapse:n.exception.expand),d=t.computed(()=>{const p=n.exception.detail+" : "+(e.value&&e.value.detail)||"";return u.value?p:a(p,160)}),f=t.computed(()=>({position:"absolute",right:0,bottom:u.value?0:"2px",color:"#2A87FF",cursor:"pointer"}));function g(){u.value=!u.value}return()=>t.createVNode("div",{class:"toast-msg-detail"},[i.value&&t.createVNode("div",null,[r.value]),l.value&&t.createVNode("div",{class:"exception_wrap"},[t.createVNode("div",{class:"exception_error_msg"},[t.createVNode("div",{innerHTML:d.value},null),s.value&&t.createVNode("span",{style:f.value,onClick:g},[c.value])])])])}function ti(e){return()=>t.createVNode("p",{class:"toast-msg-detail",innerHTML:e.value},null)}function ni(e,n,o,a,i){const r=t.ref(e.exceptionInfo),l=t.computed(()=>{const m=n.value==="question"?"warning":n.value,h={"f-icon":!0},b=`f-icon-${m}`;return h[b]=!0,h}),s=t.computed(()=>o.value||r.value&&r.value.message),u=t.computed(()=>a.value),c=t.computed(()=>!!a.value),d=t.computed(()=>!!r.value);function f(){return d.value?ei(r,i):c.value?ti(u):()=>null}const g=f(),p=t.computed(()=>i.locale==="en"?{wordBreak:"keep-all",overflowWrap:"break-word"}:{});return()=>t.createVNode(t.Fragment,null,[t.createVNode("div",{class:"float-left modal-tips-iconwrap"},[t.createVNode("span",{class:l.value},null)]),t.createVNode("div",{class:"modal-tips-content"},[t.createVNode("p",{class:"toast-msg-title",innerHTML:s.value,style:p.value},null),g()])])}function oi(e,n,o,a){const{onCopy:i}=n,{toShowFeedback:r}=o,l=t.ref(a.exception.copySuccess||"复制成功"),s=t.ref(a.exception.copy||"复制详细信息"),u=t.ref(e.exceptionInfo||{date:"",message:"",detail:""}),c=t.computed(()=>u.value&&u.value.detail||"");function d(f){i(c.value).catch(g=>{l.value=a.exception.copyFailed||"复制失败"}).finally(()=>{r.value=!0,setTimeout(()=>{r.value=!1},700)})}return()=>t.createVNode("span",{style:"width: 100%;color: #2A87FF;padding-left: 37px;"},[t.createVNode("span",{onClick:d,style:"cursor: pointer;"},[s.value])])}function ai(e,n,o,a,i){const r=t.ref(e.type),l=t.ref(e.buttons),s=t.ref(e.exceptionInfo),u=t.ref(i.ok||e.okButtonText),c=t.ref(i.cancel||e.cancelButtonText),d=t.ref(e.showCancelButton),f=t.ref(e.showOkButton),g=t.computed(()=>!!(l.value&&l.value.length)),p=t.computed(()=>!!(s.value&&s.value.detail)),m=t.computed(()=>!(l.value&&l.value.length)&&(f.value||d.value)),h=oi(e,o,a,i);u.value==="关闭"?u.value=i.close:u.value==="知道了"&&(u.value=i.exception.roger);function b(v){r.value==="question"&&n.emit("reject"),n.emit("close")}function I(v){r.value==="question"&&n.emit("accept"),n.emit("close")}return()=>t.createVNode("div",{class:"modal-footer"},[p.value&&h(),m.value&&d.value&&t.createVNode("button",{type:"button",class:"btn btn-secondary btn-lg",onClick:b},[c.value]),m.value&&f.value&&t.createVNode("button",{type:"button",class:"btn btn-primary btn-lg",onClick:I},[u.value]),g.value&&l.value.length&&l.value.map(v=>t.createVNode("button",{type:"button",onClick:v.handle,class:v.class},[v.iconClass&&t.createVNode("span",{class:v.iconClass},null),v.text]))])}function ii(e){const{t:n,locale:o}=Oe.useI18n();function a(i,r,l){return r===l?n(i):r}return{yes:a("messageBox.yes")||"是",no:a("messageBox.no")||"否",close:a("messageBox.close")||"关闭",ok:a("messageBox.ok",e.okButtonText,"确定")||"确定",cancel:a("messageBox.cancel",e.cancelButtonText,"取消")||"取消",title:a("messageBox.title")||"系统提示",errorTitle:a("messageBox.errorTitle")||"错误提示",exception:{expand:a("messageBox.exception.expand")||"展开",collapse:a("messageBox.exception.collapse")||"收起",happend:a("messageBox.exception.happend")||"发生时间",detail:a("messageBox.exception.detail")||"详细信息",copy:a("messageBox.exception.copy")||"复制详细信息",copySuccess:a("messageBox.exception.copySuccess")||"复制成功",copyFailed:a("messageBox.exception.copyFailed")||"复制失败",roger:a("messageBox.exception.roger")||"知道了"},locale:o.value}}const Tt=t.defineComponent({name:"FMessageBox",props:Ua,emits:["accept","reject","close"],setup(e,n){const o=ii(e),a=t.ref(e.type),i=t.ref(e.title),r=t.ref(e.detail),l=t.computed(()=>{const I={"modal-tips":!0,"d-flex":!0,"flex-row":!0},v=`messager-type-${a.value}`;return I[v]=!0,I}),s=t.computed(()=>{const I={cursor:"default"};return a.value==="prompt"?I.padding="0.5rem 0.5rem 1rem 1.5rem":a.value==="error"&&(I.padding="0.5rem 1.5rem 1rem 1.5rem"),I}),u=Ya(),c=Qa(e,a,i,r),d=Za(),{feedbackStyle:f,feedbackMessage:g}=d;g.value=o.exception.copySuccess;function p(){return t.createVNode("div",{style:f.value},[g.value])}function m(){switch(a.value){case"prompt":return Ka(e,c);default:return ni(e,a,i,r,o)}}const h=m(),b=ai(e,n,u,d,o);return()=>t.createVNode("div",{class:"farris-messager"},[!e.exceptionInfo&&t.createVNode("div",{style:"height: 30px;width: 100%;position: absolute;",class:"messager-draggable"},null),t.createVNode("section",{class:l.value,style:s.value},[h()]),b(),p()])}}),ri={$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:"关闭前回调"}},li=new Map([["appearance",Je.resolveAppearance]]);function si(e,n,o){return n}function ci(){function e(n,o){const a={};return a.beforeClose=i=>o.call("beforeClose",[i,n]),a}return{resolve:e}}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"}},ui=Je.createPropsResolver(Dn,ri,li,si),di=ci();class Ce{constructor(n,o){this.x=n,this.y=o}static getTransformInfo(n){const a=window.getComputedStyle(n).getPropertyValue("transform").replace(/[^-\d,]/g,"").split(",");if(a.length>=6){const i=parseInt(a[4],10),r=parseInt(a[5],10);return{x:i,y:r}}return{x:0,y:0}}static fromEvent(n,o=null){if(this.isMouseEvent(n))return new Ce(n.clientX,n.clientY);if(o===null||n.changedTouches.length===1)return new Ce(n.changedTouches[0].clientX,n.changedTouches[0].clientY);for(let a=0;a<n.changedTouches.length;a++)if(n.changedTouches[a].target===o)return new Ce(n.changedTouches[a].clientX,n.changedTouches[a].clientY)}static isMouseEvent(n){return Object.prototype.toString.apply(n).indexOf("MouseEvent")===8}static isIPosition(n){return!!n&&"x"in n&&"y"in n}static getCurrent(n){const o=new Ce(0,0);if(window){const a=window.getComputedStyle(n);if(a){const i=parseInt(a.getPropertyValue("left"),10),r=parseInt(a.getPropertyValue("top"),10);o.x=isNaN(i)?0:i,o.y=isNaN(r)?0:r}return o}return null}static copy(n){return new Ce(0,0).set(n)}get value(){return{x:this.x,y:this.y}}add(n){return this.x+=n.x,this.y+=n.y,this}subtract(n){return this.x-=n.x,this.y-=n.y,this}multiply(n){this.x*=n,this.y*=n}divide(n){this.x/=n,this.y/=n}reset(){return this.x=0,this.y=0,this}set(n){return this.x=n.x,this.y=n.y,this}}class Ke{constructor(n,o){this.width=n,this.height=o}static getCurrent(n){const o=new Ke(0,0);if(window){const a=window.getComputedStyle(n);return a&&(o.width=parseInt(a.getPropertyValue("width"),10),o.height=parseInt(a.getPropertyValue("height"),10)),o}return null}static copy(n){return new Ke(0,0).set(n)}set(n){return this.width=n.width,this.height=n.height,this}}function fi(e,n){const o=t.ref(),a=t.ref(),i=t.ref(),r=t.ref(),l=t.ref(),s=t.ref(),u=t.ref(),c=t.ref(),d=t.ref(),f=t.ref(),g=t.ref(),p=t.ref(e.resizeable),m=t.ref(),h=t.ref(e.draggable),b=t.ref(!1);function I(){const $=a.value||document.body,O=window.getComputedStyle($);if(!O||!o.value)return;const A=Ce.getTransformInfo(o.value),L={};u.value&&(L.deltaL=o.value.offsetLeft-u.value.x,L.deltaT=o.value.offsetTop-u.value.y);const Q=O.getPropertyValue("position");L.width=$.clientWidth,L.height=$.clientHeight,L.pr=parseInt(O.getPropertyValue("padding-right"),10),L.pb=parseInt(O.getPropertyValue("padding-bottom"),10),L.position=O.getPropertyValue("position"),Q==="static"&&($.style.position="relative"),L.translateX=A.x,L.translateY=A.y,f.value=L}function v($){if(o.value){r.value=Ke.getCurrent(o.value),l.value=Ce.getCurrent(o.value),s.value=r.value?Ke.copy(r.value):null,u.value=l.value?Ce.copy(l.value):null,I();const O=$.target.getAttribute("type")||"";c.value={n:!!O.match(/n/),s:!!O.match(/s/),w:!!O.match(/w/),e:!!O.match(/e/)}}}function P(){var $,O,A,L;if(o.value){const Q=o.value;c.value&&((c.value.n||c.value.s)&&(($=s.value)!=null&&$.height)&&(Q.style.height=s.value.height+"px"),(c.value.w||c.value.e)&&((O=s.value)!=null&&O.width)&&(Q.style.width=s.value.width+"px"),u.value&&((A=u.value)!=null&&A.x&&(Q.style.left=u.value.x+"px"),(L=u.value)!=null&&L.y&&(Q.style.top=u.value.y+"px")))}}function T(){const $=e.minHeight?e.minHeight:1,O=e.minWidth?e.minWidth:1;s.value&&u.value&&c.value&&r.value&&(s.value.height<$&&(s.value.height=$,c.value.n&&l.value&&(u.value.y=l.value.y+(r.value.height-$))),s.value.width<O&&(s.value.width=O,c.value.w&&l.value&&(u.value.x=l.value.x+(r.value.width-O))),e.maxHeight&&s.value.height>e.maxHeight&&(s.value.height=e.maxHeight,l.value&&c.value.n&&(u.value.y=l.value.y+(r.value.height-e.maxHeight))),e.maxWidth&&s.value.width>e.maxWidth&&(s.value.width=e.maxWidth,c.value.w&&l.value&&(u.value.x=l.value.x+(r.value.width-e.maxWidth))))}function k(){if(a.value){const $=f.value;if(u.value&&s.value&&c.value&&r.value){const O=$.width-$.pr-$.deltaL-$.translateX-u.value.x,A=$.height-$.pb-$.deltaT-$.translateY-u.value.y;c.value.n&&u.value.y+$.translateY<0&&l.value&&(u.value.y=-$.translateY,s.value.height=r.value.height+l.value.y+$.translateY),c.value.w&&u.value.x+$.translateX<0&&l.value&&(u.value.x=-$.translateX,s.value.width=r.value.width+l.value.x+$.translateX),s.value.width>O&&(s.value.width=O),s.value.height>A&&(s.value.height=A)}}}function S($){if(!i.value||!r.value||!l.value||!c.value)return;$.subtract(i.value);const O=$.x,A=$.y;c.value.n?(u.value.y=l.value.y+A,s.value.height=r.value.height-A):c.value.s&&(s.value.height=r.value.height+A),c.value.e?s.value.width=r.value.width+O:c.value.w&&(s.value.width=r.value.width-O,u.value.x=l.value.x+O),k(),T(),P()}function V($){if(!d.value)return;const O=Ce.fromEvent($);O&&S(O)}function y(){if(o.value){const{width:$,height:O,x:A,y:L}=o.value.getBoundingClientRect(),Q=Ce.getTransformInfo(o.value);return{size:{width:$,height:O},position:{x:A-Q.x,y:L-Q.y}}}return null}function N($){if(o.value){const O=y();g.value=O}i.value=void 0,r.value=null,l.value=null,s.value=null,u.value=null,c.value=null,d.value=null,document.removeEventListener("mousemove",V),document.removeEventListener("mouseup",N)}function x(){document.addEventListener("mousemove",V),document.addEventListener("mouseup",N)}function w($){$ instanceof MouseEvent&&$.button===2||h.value&&(document.body.click(),$.stopPropagation(),$.preventDefault(),i.value=Ce.fromEvent($),d.value=$.target,v($),x())}function C($){return o.value=$,p.value&&t.createVNode(t.Fragment,null,[t.createVNode("div",{class:"fv-resizable-handle fv-resizable-n",type:"n",onMousedown:O=>w(O)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-e",type:"e",onMousedown:O=>w(O)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-s",type:"s",onMousedown:O=>w(O)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-w",type:"w",onMousedown:O=>w(O)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-ne",type:"ne",onMousedown:O=>w(O)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-se fv-resizable-diagonal",type:"se",onMousedown:O=>w(O)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-sw",type:"sw",onMousedown:O=>w(O)},null),t.createVNode("div",{class:"fv-resizable-handle fv-resizable-nw",type:"nw",onMousedown:O=>w(O)},null)])}function F($=!0){document.body.click();const O=a.value||document.body,A=Ke.getCurrent(O),L=o.value;$&&L&&(m.value=y(),m.value.transform=L.style.transform),A&&L&&(s.value=A,s.value.height-=14,s.value.width-=14,L.style.height=s.value.height+"px",L.style.width=s.value.width+"px",L.style.left="7px",L.style.top="7px",L.style.transform="",g.value={size:s.value,position:{x:0,y:0}},h.value=!1,b.value=!0)}function B(){var $,O;if(document.body.click(),m.value){const A={width:m.value.size.width||0,height:m.value.size.height||0},L={x:(window.innerWidth-A.width)/2,y:(window.innerHeight-A.height)/2};($=s.value)==null||$.set(A),(O=u.value)==null||O.set(L);const Q=o.value;Q.style.height=A.height+"px",Q.style.width=A.width+"px",Q.style.left=`${L.x}px`,Q.style.top=`${L.y}px`,Q.style.transform="",g.value={size:A,position:L},h.value=e.draggable,b.value=!1}}function j(){if(o.value){const $=Ke.getCurrent(o.value);if($){const{width:O,height:A}=$;o.value.style.left=`${(window.innerWidth-O)/2}px`,o.value.style.top=`${(window.innerHeight-A)/2}px`,o.value.style.transform=""}}}function M(){const $=()=>{b.value?F(!1):j(),document.body.click()};return window.addEventListener("resize",$),()=>{window.removeEventListener("resize",$)}}const D=M();return{renderResizeBar:C,boundingElement:a,resizedEventParam:g,maximize:F,restore:B,allowDrag:h,isMaximized:b,unWindowResizeHandle:D,moveToCenter:j}}function pi(e,n,o){const a=t.ref(),i=t.ref(e.draggable),r=t.ref(e.lockAxis),l=t.ref(),s=t.ref(),u=t.ref(!1),c=t.ref(new Ce(0,0)),d=t.ref(new Ce(0,0)),f=t.ref(new Ce(0,0)),g=t.ref(new Ce(0,0));t.watch(()=>o.value,V=>{l.value.style.cursor=V?"move":"default"});function p(V,y){if(y.tagName==="BUTTON")return!1;if(y===V)return!0;for(const N in y.children)if(Object.prototype.hasOwnProperty.call(y.children,N)&&p(V,y.children[N]))return!0;return!1}function m(){var x,w;let V=f.value.x+d.value.x,y=f.value.y+d.value.y;r.value==="x"?(V=((x=c.value)==null?void 0:x.x)||0,f.value.x=0):r.value==="y"&&(y=((w=c.value)==null?void 0:w.y)||0,f.value.y=0);const N=`translate3d(${Math.round(V)}px, ${Math.round(y)}px, 0px)`;a.value&&(a.value.style.transform=N),g.value.x=V,g.value.y=y}function h(){if(!s.value||!a.value)return null;const V=s.value.getBoundingClientRect(),y=a.value.getBoundingClientRect(),N={top:V.top<y.top,right:V.right>y.right,bottom:V.bottom>y.bottom,left:V.left<y.left};return N.top||(f.value.y-=y.top-V.top),N.bottom||(f.value.y-=y.bottom-V.bottom),N.right||(f.value.x-=y.right-V.right),N.left||(f.value.x-=y.left-V.left),m(),N}function b(V){V&&(c.value&&V.subtract(c.value),f.value.set(V),m(),h())}function I(V){u.value&&i.value&&(V.stopPropagation(),V.preventDefault(),b(Ce.fromEvent(V,l.value)))}function v(){var V;u.value&&(u.value=!1,d.value.add(f.value),f.value.reset(),(V=a.value)==null||V.classList.remove("ng-dragging"),n.emit("stopMove"),document.removeEventListener("mousemove",I),document.removeEventListener("mouseup",v))}function P(){!u.value&&l.value&&(u.value=!0,l.value.classList.add("ng-dragging"),document.addEventListener("mousemove",I),document.addEventListener("mouseup",v))}function T(){if(a.value){const V=Ce.getTransformInfo(a.value);d.value.set(V);return}d.value.reset()}function k(V){if(!o.value||V instanceof MouseEvent&&V.button===2)return;const y=V.target||V.srcElement;l.value!==void 0&&y&&!p(y,l.value)||i.value!==!1&&(document.body.click(),V.stopPropagation(),V.preventDefault(),c.value=Ce.fromEvent(V,a.value),T(),P())}function S(V,y,N){if(i.value&&y){if(V)l.value=V;else if(e.dragHandle){if(e.dragHandle instanceof HTMLElement)l.value=e.dragHandle;else if(typeof e.dragHandle=="string"){const x=y.querySelector(e.dragHandle);x&&(l.value=x)}}a.value=y,s.value=N,l.value?(l.value.classList.add("ng-draggable"),l.value.addEventListener("mousedown",k)):i.value=!1}}return{registerDraggle:S,resetTranslate:T}}function On(e,n){if(e){const o=a=>{a.key.toLowerCase()===e.toLowerCase()&&n({event:a,key:e})};return document.addEventListener("keydown",o),()=>{document.removeEventListener("keydown",o)}}}function mi(e,n){const o=t.ref(e.enableEsc);let a=null;return o.value?(a=On("Escape",i=>{n.emit("esc",{event:i.event,type:"esc"})}),{remove:a}):null}function gi(e,n){const o=t.ref(e.enableEnter);let a=null;return o.value?(a=On("Enter",i=>{n.emit("enter",{event:i.event,type:"enter"})}),{remove:a}):null}const et=t.defineComponent({name:"FModal",props:Dn,emits:["update:modelValue","accept","cancel","closed","resize","esc","enter","stopMove"],setup(e,n){const o=t.ref(e.width||300),a=t.ref(e.height||200),i=t.ref(e.modelValue),r=t.ref(""),l=t.ref(e.class),s=t.ref(e.fitContent),u=t.ref(e.showHeader),c=t.ref(""),d=t.ref(e.showCloseButton),f=t.ref(e.showMaxButton),g=t.ref(!1),p=t.ref(e.dialogType),m=t.ref(e.src),h=t.ref(""),b=t.ref(e.showButtons),I=t.ref(e.title),v=t.ref(e.containment||null),P=t.ref(),{t:T}=Oe.useI18n();I.value==="错误提示"&&(I.value=T("messageBox.errorTitle"));const k=t.ref(!1);function S(_,re){const we=re?"accept":"cancel";Promise.resolve().then(()=>{var xe;return(xe=e.beforeClose)==null?void 0:xe.call(e,{closeType:we})}).then(xe=>{xe&&(i.value=!1,n.emit("update:modelValue",!1),re!=null&&n.emit(re?"accept":"cancel"),n.emit("closed",_))})}const V=[{name:"cancel",text:T("messageBox.cancel")||"取消",class:"btn btn-secondary",handle:_=>{S(_,!1)}},{name:"accept",text:T("messageBox.ok")||"确定",class:"btn btn-primary",handle:_=>{S(_,!0)}}],y=t.ref(e.buttons&&e.buttons.length?e.buttons:V),N=t.computed(()=>!!c.value),x=t.computed(()=>!!b.value&&!!y.value),w=t.ref(),C=t.ref(),F=t.ref(!1),{renderResizeBar:B,maximize:j,restore:M,boundingElement:D,resizedEventParam:$,allowDrag:O,unWindowResizeHandle:A,moveToCenter:L}=fi(e),{registerDraggle:Q}=pi(e,n,O);function te(){return!!document.querySelectorAll(".farris-modal").length&&document.body.classList.contains("modal-open")}function oe(){const _=document.querySelectorAll(".farris-modal").length;(!_||_-1<=0)&&document.body.classList.remove("modal-open"),P.value&&P.value.classList.remove("show")}t.watch(()=>e.title,(_,re)=>{_!==re&&(I.value=_)}),t.watch(()=>e.modelValue,(_,re)=>{_!==re&&(i.value=_,i.value&&e.draggable&&t.nextTick(()=>{C.value&&!v.value&&(v.value=C.value.parentElement,D.value=v.value,Q(w.value,C.value,D.value),L())}),_||(v.value&&(v.value=null),oe())),i.value?k.value=te():(F.value=!1,O.value=e.draggable)}),t.watch(()=>e.showHeader,(_,re)=>{_!==re&&(u.value=_)}),t.watch(()=>e.showButtons,(_,re)=>{_!==re&&(b.value=_)}),t.watch(()=>$.value,(_,re)=>{const we=_||{},xe=re||{};JSON.stringify(we)!==JSON.stringify(xe)&&n.emit("resize",{newSize:_,oldSize:re,isMaximized:F.value})});const J=t.computed(()=>(i.value&&document.body.classList.add("modal-open"),i.value)),de=t.computed(()=>{var we;const _={modal:!0,"farris-modal":!0,fade:!0};_["f-modal-fitContent"]=!!s.value,_.show=!!J.value;const re=(we=e.maskClass)==null?void 0:we.split(" ");return re==null||re.reduce((xe,ze)=>(xe[ze]=!0,xe),_),_}),ge=t.computed(()=>{var we;const _={"modal-dialog":!0},re=(we=l.value)==null?void 0:we.split(" ");return re==null||re.reduce((xe,ze)=>(xe[ze]=!0,xe),_),_}),le=t.computed(()=>{const _={position:"absolute",top:`${(window.innerHeight-a.value)/2}px`,left:`${(window.innerWidth-o.value)/2}px`,width:`${o.value}px`,height:s.value?"auto":`${a.value}px`};return e.mask||(_.pointerEvents="auto"),_}),X=()=>ye.getMaxZIndex()||1040,ce=t.computed(()=>{const _={display:"block",zIndex:X()};return e.mask||(_.pointerEvents="none",_.backgroundColor="transparent"),k.value&&(_.backgroundColor="transparent"),_}),E=t.computed(()=>({"modal-content":!0,"modal-content-has-header":u.value})),q=t.computed(()=>{const _={display:u.value?"":"none"};return _["pointer-events"]=O.value?"auto":"none",_}),H=t.computed(()=>({"f-icon":!0,modal_maximize:!0,modalrevert:F.value})),W=t.computed(()=>({"modal-body":!0,"f-utils-flex-column":p.value==="iframe","f-utils-fill":!0}));function ee(){return{height:`${e.footerHeight||60}px`}}const ie=t.computed(()=>{const _={textAlgin:h.value},re=ee();return Object.assign(_,re)});function se(_){if(_==null||_.stopPropagation(),F.value){F.value=!1,M();return}j(),F.value=!0}async function Ve(_,re){_.handle&&await _.handle(re,_)&&n.emit("closed",re)}function be(_){_.width&&(o.value=_.width),_.height&&(a.value=_.height),_.buttons&&(y.value=_.buttons),_.title&&(I.value=_.title)}let ae=null,ve=null;t.onBeforeMount(()=>{k.value=te()}),t.onMounted(()=>{C.value&&!v.value&&(v.value=C.value.parentElement,D.value=v.value,Q(w.value,C.value,D.value)),J.value&&document.body.classList.add("modal-open"),ae=mi(e,n),ve=gi(e,n)}),t.onUnmounted(()=>{A&&A(),ae&&ae.remove(),ve&&ve.remove()}),n.expose({modalElementRef:C,updateModalOptions:be,close:S,maxDialog:se,isMaximized:F});function Be(){return t.createVNode("ul",null,[g.value&&t.createVNode("li",{class:"f-btn-icon f-bare"},[t.createVNode("span",{class:"f-icon modal_minimize"},null)]),f.value&&t.createVNode("li",{onClick:se,class:"f-btn-icon f-bare",style:"pointer-events: auto;"},[t.createVNode("span",{class:H.value},null)]),d.value&&t.createVNode("li",{class:"f-btn-icon f-bare",onClick:_=>S(_,!1),style:"pointer-events: auto;"},[t.createVNode("span",{class:"f-icon modal_close"},null)])])}function Le(){return t.createVNode("div",{class:"modal-footer",style:ie.value},[y.value&&y.value.map(_=>{const re=t.ref(_.disabled);return t.createVNode("button",{name:_.name,type:"button",disabled:re.value,class:_.class+(_.iconClass?" btn-icontext":""),onClick:we=>{Ve(_,we)}},[!!_.iconClass&&t.createVNode("i",{class:_.iconClass},null),_.text])})])}function Ee(){return t.createVNode("div",{ref:w,class:"modal-header",style:q.value},[n.slots.headerTemplate?n.slots.headerTemplate():t.createVNode("div",{class:"modal-title"},[N.value&&t.createVNode("span",{class:c.value,style:"margin-right: 8px"},null),t.createVNode("span",{class:"modal-title-label"},[I.value])]),t.createVNode("div",{class:"actions"},[Be()])])}function He(){return n.slots.footerTemplate?n.slots.footerTemplate():x.value&&Le()}function Ye(_){if(_.stopPropagation(),e.allowClickMaskToClose){if(_.target!==P.value)return;S(_,!1)}}function st(){var _,re;return t.createVNode("div",{id:r.value,class:ge.value,style:le.value,ref:C},[t.createVNode("div",{class:E.value},[u.value&&Ee(),t.createVNode("div",{class:W.value},[(re=(_=n.slots).default)==null?void 0:re.call(_),p.value==="iframe"&&t.createVNode("iframe",{title:r.value,class:"f-utils-fill",width:"100%",frameborder:"0",src:m.value},null)]),He()]),!s.value&&C.value&&!F.value&&B(C.value)])}function ct(_){return _||"body"}return()=>t.createVNode(t.Teleport,{to:ct(e.host)},{default:()=>[J.value&&t.createVNode(t.Transition,{name:"fade",appear:!0},{default:()=>[t.createVNode("div",{ref:P,class:de.value,style:ce.value,onClick:Ye},[st()])]})]})}});function Rn(e){if(e.content&&e.content.render)return e.content.render;if(e.render&&typeof e.render=="function")return e.render}function hi(e){const n=document.createElement("div");n.style.display="contents";const o=t.createApp({setup(a,i){t.onUnmounted(()=>{document.body.removeChild(n)});const r=t.ref(),l=t.ref(e.class||""),s=t.ref(!!e.showButtons),u=t.ref(!!e.showHeader),c=t.ref(e.showCloseButton==null?!0:e.showCloseButton),d=t.ref(!0),f=t.ref(e.title||""),g=e.acceptCallback||(()=>{}),p=e.rejectCallback||(()=>{}),m=e.closedCallback||(P=>{}),h=e.resizeHandle||(P=>{}),b=e.stopMoveHandle||(P=>{}),I=Rn(e),v=P=>{d.value=!1,o.unmount(),m(P)};return t.onMounted(()=>{}),i.expose({modalRef:r}),()=>t.createVNode(et,{ref:r,class:l.value,modelValue:d.value,"onUpdate:modelValue":P=>d.value=P,title:f.value,width:e.width,height:e.height,buttons:e.buttons,"show-header":u.value,"show-buttons":s.value,"show-close-button":c.value,"show-max-button":!1,onAccept:g,onCancel:p,fitContent:e.fitContent==null?!0:e.fitContent,onClosed:v,onResize:h,onStopMove:b},{default:()=>[I&&I(o)]})}});return document.body.appendChild(n),o.use(Qe.LocaleService.i18n),o.mount(n),o}class Ln{constructor(n){fe(this,"appContext",null);fe(this,"modalRef",t.ref());fe(this,"activeModalIndex",t.ref(0));fe(this,"modalRefs",{});fe(this,"isUseEscCloseModal",t.ref(!1));fe(this,"activeModalInstance",t.computed(()=>this.modalRefs[this.activeModalIndex.value]));this.app=n,this.appContext=n?n._context:null}getCurrentModal(){return this.activeModalInstance.value}adaptToWindow(n,o){const{width:a,height:i}={width:window.innerWidth,height:window.innerHeight};return a<n&&(n=a-14),i<o&&(o=i-14),{width:n,height:o}}static show(n){const o=Object.assign({title:"",showButtons:!0,showHeader:!0},n);return hi(o)}close(n){var o,a;n?(a=n.value)==null||a.close():(o=this.getCurrentModal())==null||o.close()}open(n){const o=document.createDocumentFragment();n.showMaxButton&&n.fitContent&&(n.showMaxButton=!1);const a=t.shallowRef(Object.assign({title:"",showButtons:!0,showHeader:!0},n)),i=t.ref(!0),r=a.value.acceptCallback||(()=>{}),l=a.value.rejectCallback||(()=>{}),s=a.value.closedCallback||((k,S)=>{}),u=a.value.resizeHandle||(k=>{}),c=n.stopMoveHandle||(k=>{});let d;const f=Rn(a.value),g=k=>{var V;i.value=!1;const S=(V=k==null?void 0:k.target)==null?void 0:V.classList.contains("modal_close");s(k,this.isUseEscCloseModal.value?"esc":S?"icon":"button")},p=k=>{g(k),d&&t.nextTick(()=>{if(this.modalRefs[this.activeModalIndex.value]&&delete this.modalRefs[this.activeModalIndex.value],t.render(null,o),d=null,this.modalRef.value=null,this.modalRefs){const S=Object.keys(this.modalRefs).map(V=>Number(V));S.length>0?this.activeModalIndex.value=Math.max(...S):this.activeModalIndex.value=0}this.isUseEscCloseModal.value=!1})},m=k=>{var S;this.isUseEscCloseModal.value=!0,this.activeModalInstance&&((S=this.activeModalInstance.value)==null||S.close(k==null?void 0:k.event))},{width:h,height:b}=a.value,I=this.adaptToWindow(h||500,b||320);Object.assign(a.value,I);const v=()=>t.createVNode(et,t.mergeProps({ref:this.modalRef,modelValue:i.value,"onUpdate:modelValue":k=>i.value=k},a.value,{onAccept:r,onCancel:l,onClosed:p,onResize:u,onEsc:m,onStopMove:c}),{default:()=>[f&&f(this.app)]});return d=(k=>{const S=t.h(v,k);return S.appContext=this.appContext,t.render(S,o),S})({...a.value}),this.activeModalIndex.value++,this.modalRefs[this.activeModalIndex.value]=this.modalRef.value,{update:k=>{a.value={...a.value,...k},d&&t.render(t.cloneVNode(d,{...a}),o)},destroy:p,modalRef:this.activeModalInstance,close:()=>this.close()}}}const An=Symbol("FModalService");et.install=e=>{e.component(et.name,et);const n=new Ln(e);e.provide(An,n),e.provide("FModalService",n)},et.register=(e,n,o,a)=>{e.modal=et,n.modal=ui,a.modal={callbackResolver:di}};const Re=class Re{static show(n){const o=t.reactive({...n}),a=!1,i=o.type==="error"||o.type==="prompt",r=o.type==="error"?"错误提示":o.type==="prompt"&&o.title||"",l=o.acceptCallback||(()=>{}),s=o.rejectCallback||(()=>{});let u=null,c=new Ln(Re.app);const d=()=>{u&&(u==null||u.destroy(),c=null)};return u=c==null?void 0:c.open({class:"modal-message modal-message-type-info",title:r,showButtons:a,showHeader:i,width:o.width||400,fitContent:!0,showMaxButton:!1,draggable:!0,dragHandle:".messager-draggable",render:()=>t.createVNode(Tt,t.mergeProps(o,{onAccept:l,onReject:s,onClose:d}),null)}),c==null?void 0:c.getCurrentModal()}static info(n,o){const a=t.reactive({type:"info",title:n,detail:o,okButtonText:"知道了",showCancelButton:!1});Re.show(a)}static warning(n,o){const a=t.reactive({type:"warning",title:n,detail:o,okButtonText:"知道了",showCancelButton:!1});Re.show(a)}static success(n,o){const a=t.reactive({type:"success",title:n,detail:o,okButtonText:"关闭",showCancelButton:!1});Re.show(a)}static error(n,o,a){const i=t.reactive({width:500,type:"error",okButtonText:"关闭",showCancelButton:!1,exceptionInfo:{date:a,message:n,detail:o}});Re.show(i)}static prompt(n,o){const a=t.reactive({type:"prompt",title:n,detail:o,okButtonText:"确定",cancelButtonText:"取消"});Re.show(a)}static question(n,o,a,i){const r=t.reactive({type:"question",title:n,detail:o,okButtonText:"确定",cancelButtonText:"取消",acceptCallback:a,rejectCallback:i});Re.show(r)}};fe(Re,"app",null);let Nt=Re;Tt.install=e=>{e.component(Tt.name,Tt),Nt.app=e,e.provide("FMessageBoxService",Nt)};const yi={id:{type:String,default:""},componentId:{type:String,default:""},canAdd:{type:Boolean,default:!1},canDelete:{type:Boolean,default:!1},canMove:{type:Boolean,default:!1},contentKey:{type:String,default:"contents"},childLabel:{type:String,default:""},childType:{type:String,default:""},modelValue:{type:Object}};function bi(e,n,o){var N;const a="",i=t.ref();let r;function l(){return!0}function s(){return!1}function u(){return!0}function c(){return!0}function d(){return!0}function f(x){if(!x||!x.value)return null;const w=t.ref(x==null?void 0:x.value.parent),C=f(w);return C||null}function g(x=n){var B;const{componentInstance:w,designerItemElementRef:C}=x;if(!w||!w.value)return null;const{getCustomButtons:F}=w.value;return w.value.canMove||w.value.canAdd||w.value.canDelete||F&&((B=F())!=null&&B.length)?C:g(x.parent)}function p(){}function m(x){return!!o}function h(){return(n==null?void 0:n.schema.label)||(n==null?void 0:n.schema.title)||(n==null?void 0:n.schema.name)}function b(){}function I(x,w){}function v(x){const{componentType:w}=x,C=t.inject("designer-host-service");let F=Je.getSchemaByTypeForDesigner(w,x,C);const B=w.toLowerCase().replace(/-/g,"_");return F&&!F.id&&F.type===w&&(F.id=`${B}_${Math.random().toString().slice(2,6)}`),F}function P(x){}function T(...x){return[]}function k(){}function S(x){var C;if(!(n!=null&&n.schema))return;let w="";{const{text:F,title:B,label:j,mainTitle:M,name:D,type:$}=n.schema;w=F||B||j||M||D||((C=z[$])==null?void 0:C.name)}w&&(!r&&x&&(r=x.formSchemaUtils),r.getControlBasicInfoMap().set(n.schema.id,{componentTitle:w,parentPathName:w}))}function V(x){var B;const{changeObject:w}=x,{propertyID:C,propertyValue:F}=w;["text","title","label","name","mainTitle"].includes((B=x==null?void 0:x.changeObject)==null?void 0:B.propertyID)&&C&&F&&S()}function y(x){V(x)}return i.value={canMove:l(),canSelectParent:s(),canAdd:c(),canDelete:u(),canNested:!d(),contents:[],elementRef:e,parent:(N=n.parent)==null?void 0:N.componentInstance,schema:n.schema,styles:a,canAccepts:m,getBelongedComponentInstance:f,getDraggableDesignItemElement:g,getDraggingDisplayText:h,getPropConfig:T,getDragScopeElement:b,onAcceptMovedChildElement:I,onChildElementMovedOut:P,addNewChildComponentSchema:v,onRemoveComponent:k,triggerBelongedComponentToMoveWhenMoved:t.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:t.ref(!1),onPropertyChanged:y,getCustomButtons:p,setComponentBasicInfoMap:S},i}const qn=t.defineComponent({name:"FDesignerInnerItem",props:yi,emits:["selectionChange","addComponent","removeComponent","clickButton"],setup(e,n){const o=t.ref(e.canMove),a=t.ref(e.canAdd),i=t.ref(e.canDelete),r=t.ref(!1),l=t.ref(e.contentKey),s=t.ref(e.childType),u=t.ref(e.childLabel),c=t.ref(e.modelValue),d=t.ref(""),f=t.ref(),g=t.inject("canvas-dragula"),p=t.ref(),m=t.inject("design-item-context"),h={designerItemElementRef:f,componentInstance:p,schema:c.value,parent:m,setupContext:n};t.provide("design-item-context",h);const b=t.inject("designer-host-service"),I=t.inject("external-container-id"),v=t.computed(()=>{var $;const M=(($=p.value)==null?void 0:$.getCustomButtons)&&p.value.getCustomButtons();return{"farris-component":!0,"flex-fill":e.id==="root-component","position-relative":o.value||i.value||(M==null?void 0:M.length),"farris-nested":r.value,"can-move":o.value,"d-none":f.value&&f.value.classList.contains("d-none")}}),P=t.computed(()=>{const M={};return d.value&&d.value.split(";").reduce((D,$)=>{const[O,A]=$.split(":");return O&&(D[O]=A),D},M),M});function T(M,D){if(m&&m.schema[l.value]){const $=m.schema[l.value].findIndex(O=>O.id===D.id);if($>-1){const O=m.schema[l.value].length,A=m.schema[l.value][$%O];m.designerItemElementRef.value.querySelector(`#${A.id}-design-item`),m.schema[l.value].splice($,1),Ue.value++,n.emit("removeComponent"),n.emit("selectionChange")}}}function k(M){if(p.value.addNewChildComponentSchema){const D={componentType:s.value,label:u.value,parentComponentInstance:p.value,targetPosition:-1},$=p.value.addNewChildComponentSchema(D);c.value[l.value].push($),n.emit("addComponent")}}function S(){return a.value&&t.createVNode("div",{role:"button",class:"btn component-settings-button",title:"新增",ref:"removeComponent",onClick:M=>{k()}},[t.createVNode("i",{class:"f-icon f-icon-plus-circle"},null)])}function V(M){return i.value&&t.createVNode("div",{role:"button",class:"btn component-settings-button",title:"删除",ref:"removeComponent",onClick:t.withModifiers(D=>T(D,M),["stop"])},[t.createVNode("i",{class:"f-icon f-icon-yxs_delete"},null)])}function y(){return o.value&&t.createVNode("div",{role:"button",class:"btn component-settings-button",title:"移动",ref:"moveComponent"},[t.createVNode("i",{"data-dragging-icon":"true",class:"cmp_move f-icon f-icon-yxs_move"},null)])}function N(){var D;const M=((D=p.value)==null?void 0:D.getCustomButtons)&&p.value.getCustomButtons();return M&&!!M.length&&M.map($=>t.createVNode("div",{role:"button",class:`btn component-settings-button ${$.class||""} ${$.text?"settings-button-extend":""}`,title:$.title,ref:$.id,onClick:O=>$.onClick&&$.onClick(O)},[t.createVNode("i",{class:"f-icon "+$.icon},null),$.text&&t.createVNode("span",{class:"icon-text"},[$.text])]))}function x(M){return t.createVNode("div",{class:"component-btn-group","data-noattach":"true"},[t.createVNode("div",null,[S(),y(),V(M),N()])])}t.watch(()=>e.modelValue,M=>{c.value=M,h.schema=M});function w(M){window.scrollContainerList||(window.scrollContainerList=new Set);const D=M.getAttribute("id");D&&window.scrollContainerList.add(D)}function C(M){const D=M.target;w(D),Sa(D)}function F(){var M,D;(D=(M=c.value)==null?void 0:M.contents)!=null&&D.length&&f.value&&f.value.addEventListener("scroll",C)}function B(){const M=f.value,D=t.ref(M.children[1]);return bi(D,h).value}t.onMounted(()=>{if(f.value){const M=f.value.querySelector(`[data-dragref='${c.value.id}-container']`);p.value=M&&M.componentInstance?M.componentInstance.value:B(),g&&M&&g.attachComponents(M,c.value),r.value=p.value.canNested!==void 0?p.value.canNested:r.value,a.value=p.value.canAdd!==void 0?p.value.canAdd:a.value,i.value=p.value.canDelete!==void 0?p.value.canDelete:i.value,o.value=p.value.canMove!==void 0?p.value.canMove:o.value,d.value=p.value.styles||"",f.value&&(f.value.componentInstance=p,f.value.designItemContext=h),p.value.setComponentBasicInfoMap(b)}F(),Ue.value++}),t.onBeforeUnmount(()=>{f.value&&f.value.removeEventListener("scroll",C)});function j(M){if(M&&(M.preventDefault(),M.stopPropagation()),I){const O=document.getElementById(`${I}-design-item`);O&&O.click();return}let D=h.designerItemElementRef;const $=f.value;if($){const O=document.getElementsByClassName("dgComponentFocused");O&&O.length===1&&O[0]===f.value&&f.value.classList.contains("dgComponentSelected")||(Array.from(O).forEach(L=>L.classList.remove("dgComponentFocused")),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(L=>L.classList.remove("dgComponentSelected")),$.classList.add("dgComponentFocused"),n.emit("selectionChange",c.value.type,c.value,e.componentId,p.value),p.value.getDraggableDesignItemElement&&(D=p.value.getDraggableDesignItemElement(h),D&&D.value&&D.value.classList.add("dgComponentSelected")))}Dt(D==null?void 0:D.value)}return()=>t.createVNode("div",{id:`${e.id}-design-item`,ref:f,class:v.value,style:P.value,onClick:j},[x(c.value),n.slots.default&&n.slots.default()])}});class vi extends ut{constructor(n,o){super(n,o)}getPropertyConfig(n){return this.getBasicPropConfig(n),this.getAppearanceProperties(n),this.getBehaviorProperties(n),this.getToolbarProperties(n),this.propertyConfig}getBehaviorProperties(n){const o=this.getPropertyEditorParams(n,[],"show",{},{},"visible"),a=this.getPropertyEditorParams(n,[],"disabled"),i=this;this.propertyConfig.categories.behavior={description:"",title:"行为",properties:{show:{description:"是否可见",type:"boolean",title:"是否可见",editor:o},disabled:{description:"是否禁用",type:"boolean",title:"是否禁用",editor:a},removeable:{description:"是否可移除",type:"boolean",title:"是否可移除"},titleHtml:{title:"标签页模板",type:"string",description:"设置标签页HTML模板",refreshPanelAfterChanged:!0,editor:{type:"code-editor",language:"html"}}},setPropertyRelates(r,l){if(r)switch(r.propertyID){case"disabled":case"show":i.afterMutilEditorChanged(n,r);break}}}}getBasicPropConfig(n){this.propertyConfig.categories.basic={description:"Basic Infomation",title:"基本信息",properties:{id:{description:"标签页项的标识",title:"标识",type:"string",readonly:!0},title:{description:"标签页项的标题",title:"标题",type:"string"}},setPropertyRelates(o,a){if(o)switch(o&&o.propertyID){case"title":{o.needRefreshControlTree=!0;break}}}}}getAppearanceProperties(n){this.propertyConfig.categories.appearance={title:"外观",description:"",properties:{customTitleClass:{title:"标题class",type:"string",description:"为标签页的标题指定class样式名"},tabWidth:{description:"为标签页的标题指定宽度",type:"number",title:"标签页的标题宽度(px)",editor:{nullable:!0,min:0,decimals:0,needValid:!0}}}}}getToolbarProperties(n){this.propertyConfig.categories.toolbar={title:"工具栏",description:"",properties:{toolbarPosition:{title:"工具栏位置",type:"string",description:"为工具栏指定位置",editor:{type:"combo-list",data:[{id:"inHead",name:"标题区域"},{id:"inContent",name:"内容区域"}]}}}}}}class Ci extends ut{constructor(n,o){super(n,o)}getPropertyConfig(n){return this.propertyConfig.categories.basic=this.getBasicPropConfig(n),this.propertyConfig.categories.appearance=this.getAppearanceProperties(n),this.propertyConfig.categories.behavior=this.getBehaviorProperties(n),this.getEventPropConfig(n),this.propertyConfig}getAppearanceProperties(n){return{title:"外观",description:"Appearance",properties:{class:{title:"class样式",type:"string",description:""},titleWidth:{description:"标题区域宽度占标签头部区域的横向比例",type:"number",title:"标题区域宽度(%)",editor:{min:0,decimals:0,max:100,nullable:!0,needValid:!0}},autoTitleWidth:{description:"是,则标题显示全部字符;否,则标题最多显示20个字符",type:"boolean",title:"标题自适应宽度"},fill:{description:"flex布局下,是否填充满剩余部分",type:"boolean",title:"填充"}}}}getBehaviorProperties(n){const o=this.getCurrentTabPages(n);n.activeId&&typeof n.activeId=="string"&&(o.find(l=>l.id===n.activeId)||(n.activeId=""));const a=this.getPropertyEditorParams(n,["Const","Variable"],"activeId",{constType:"enum",constEnums:o},{newVariableType:"String"}),i=this;return{description:"",title:"行为",properties:{activeId:{title:"默认选中标签页",type:"string",description:"默认选中标签页",defaultValue:o.length>0?o[0].id:"",editor:a}},setPropertyRelates(r,l){if(r)switch(r.propertyID){case"activeId":i.addNewVariableToViewModel(r,i.viewModelId);break}}}}getCurrentTabPages(n){const o=n.contents||[],a=[];return o.forEach(i=>{a.push({name:i.title,id:i.id})}),a}getEventPropConfig(n){const o=[{label:"onTabChange",name:"切换标签页事件"},{label:"onTabRemove",name:"移除标签页事件"}],a=this,i=a.eventsEditorUtils.formProperties(n,a.viewModelId,o),r=a.createBaseEventProperty(i);this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:r,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(l,s){const u=l.propertyValue;delete n[a.viewModelId],u&&(u.setPropertyRelates=this.setPropertyRelates,a.eventsEditorUtils.saveRelatedParameters(n,a.viewModelId,u.events,u))}}}}function wi(e,n){const o=e.schema,a=new $n,{canMove:i,canAccept:r,canDelete:l}=a.getTemplateRule(e,n);function s(h){return h.componentType==="list-view"?!0:r}function u(){return l}function c(){return i}function d(){return!i&&!l}function f(h){var T;let b=document.querySelector(".dgComponentFocused");b||(b=e.designerItemElementRef.value.querySelector(".farris-nav-tabs .f-state-active"));const I=(b==null?void 0:b.id)||(b==null?void 0:b.getAttribute("pageid"))||"";if(I===`${o.id}-design-item`)return new Ci(h,n).getPropertyConfig(o);const v=new vi(h,n),P=(T=o.contents)==null?void 0:T.find(k=>I===`${k.id}-design-item`);return v.getPropertyConfig(P||o)}function g(){e.designerItemElementRef.value&&t.nextTick(()=>{const h=e.designerItemElementRef.value.querySelector(".dgComponentSelected");h!=null&&h.className.includes("dgComponentSelected")&&h.click()})}function p(h){if(!h)return;const{changeObject:b}=h;b&&b.propertyID==="title"&&g()}function m(){var h;if(e&&n){const{formSchemaUtils:b}=n,I=z.tabs.name;b.getControlBasicInfoMap().set(e.schema.id,{componentTitle:I,parentPathName:I});const v=e.designerItemElementRef.value.querySelector(".farris-tabs-content");(h=e.schema.contents)==null||h.forEach(P=>{const T=v==null?void 0:v.querySelector(`#${P.id}-design-item`);T&&T.componentInstance&&T.componentInstance.value.setComponentBasicInfoMap()})}}return{canAccepts:s,checkCanDeleteComponent:u,checkCanMoveComponent:c,getPropsConfig:f,hideNestedPaddingInDesginerView:d,onPropertyChanged:p,setComponentBasicInfoMap:m}}function xi(e,n,o,a,i,r){const l=t.ref([]),s=t.ref(e.activeId||""),u=t.ref(!0),c=t.ref(),d=t.ref([]),f=t.ref(!0),g=t.ref(0),p=t.computed(()=>{const E=l.value.find(H=>H.props.id===s.value);return(E==null?void 0:E.props.toolbarPosition)==="inHead"});let m;function h(E){m=E}function b(E,q=!0){const H=E.value&&E.value.length>0?0:-1;if(d.value=[],H!==-1&&(!s.value||typeof s.value=="object")){if(s.value=E.value[H].props.id,!q)return;const W=E.value[H];W&&W.props.toolbar&&W.props.toolbar.buttons&&W.props.toolbar.buttons.length&&(d.value=[...W.props.toolbar.buttons])}}function I(){const E=l.value.find(W=>W.props.id===s.value);if(d.value=[],E&&E.props.toolbar){const W=Object.prototype.hasOwnProperty.call(E.props.toolbar,"contents")?"contents":"buttons";E.props.toolbar[W]&&E.props.toolbar[W].length&&(d.value=[...E.props.toolbar[W]])}const q=a.schema.contents,H=q==null?void 0:q.find(W=>W.id===s.value);H!=null&&H.toolbar&&!H.toolbar.type&&(H.toolbar.type="tab-toolbar"),c.value=H==null?void 0:H.toolbar}function v(E){const q=s.value;i.changeSelectedId(""),s.value=E,I(),n.emit("tabChange",{prevId:q,nextId:E})}function P(E){let q=-1;!s.value&&(q=E.value.findIndex(H=>s.value===H.props.id),q>-1)||(b(E,!1),v(s.value))}function T(E){let q=!1;q=!l.value.find(W=>W.props.id===E),q?(s.value="",P(l)):(s.value=E,v(s.value))}function k(E,q){E.classList.contains(q)||E.classList.add(q)}function S(E,q){E.classList.remove(q)}function V(E){const{parentElement:q}=E;q&&(E.scrollWidth>q.offsetWidth?k(E,"farris-title-text-custom"):S(E,"farris-title-text-custom"))}t.watch(()=>e.activeId,(E,q)=>{E!==q&&T(E)});function y(E){var H;if(e.autoTitleWidth)return;const q=(H=E.value)==null?void 0:H.querySelectorAll(".st-tab-text");q&&q.forEach(W=>V(W))}const N=E=>{E.preventDefault(),E.stopPropagation()};function x(E){l.value=l.value.filter(q=>q.props.id!==E),s.value===E&&(s.value="",b(l))}function w(E,q,H=!1){const W=l.value.findIndex(ee=>ee.props.id===q);x(q),N(E),t.nextTick(()=>{g.value++,y(o),H&&(u.value=!0),n.emit("tabRemove",{removeIndex:W,removeId:q,activeId:s.value})})}function C(E,q=!0){s.value===E&&(s.value="",b(l)),t.nextTick(()=>{g.value++,q&&(u.value=!0)})}function F(E){v(E)}function B(E){l.value.findIndex(H=>H.props.id===E.props.id)===-1&&l.value.push(E),g.value++}function j(E){l.value.findIndex(H=>H.props.id===E.props.id)!==-1&&(l.value.forEach(H=>{H.props.id===E.props.id&&(H=E)}),E.props.id===s.value&&p.value,t.nextTick(()=>{g.value++,y(o)}))}function M(E){E&&(E.stopPropagation(),E.preventDefault())}function D(E){var W;const q=a.designerItemElementRef.value.querySelector(".farris-tabs-content"),H=q==null?void 0:q.querySelector(`#${E}-design-item`);(W=H==null?void 0:H.componentInstance)!=null&&W.value.onRemoveComponent&&H.componentInstance.value.onRemoveComponent(r)}function $(E){var ie,se;const q=r.formSchemaUtils.getExpressions();if(!q||!q.length)return;const H=a.schema.contents,W=H==null?void 0:H.find(Ve=>Ve.id===E);if(!W||!((se=(ie=W.toolbar)==null?void 0:ie.buttons)!=null&&se.length))return;const ee=Ve=>{Ve.forEach(be=>{const ae=q.findIndex(ve=>ve.target===be.id);ae>-1&&q.splice(ae,1),be.children&&be.children.length&&ee(be.children)})};ee(W.toolbar.buttons)}function O(E,q){var ee,ie;M(E);const H=a.schema.contents,W=H==null?void 0:H.findIndex(se=>se.id===q);!H||W===-1||W===void 0||(ee=r==null?void 0:r.designerContext)!=null&&ee.checkCanDeleteControl&&!r.designerContext.checkCanDeleteControl(H[W])||($(q),D(q),H==null||H.splice(W,1),x(q),I(),(ie=a==null?void 0:a.setupContext)==null||ie.emit("selectionChange"),Ue.value++)}function A(){Array.from(document.getElementsByClassName("dgComponentFocused")).forEach(q=>q.classList.remove("dgComponentFocused"));const E=document.getElementsByClassName("dgComponentSelected");Array.from(E).forEach(q=>q.classList.remove("dgComponentSelected"))}function L(E){E.currentTarget.classList.add("dgComponentFocused","dgComponentSelected")}function Q(E,q){var ie;const{contents:H=[]}=a.schema,W=H==null?void 0:H.findIndex(se=>se.id===E),ee=H[W];(ie=a==null?void 0:a.setupContext)==null||ie.emit("selectionChange",ee.type,ee,e.componentId,q)}function te(E,q){const H=q.getBoundingClientRect(),W=E.getBoundingClientRect(),ee=W.left+W.width<=H.left+H.width,ie=W.left+W.width>=H.left;return ee&&ie}function oe(E,q){if(E||(E=m.value.querySelector(".farris-tabs-header").querySelector(".dgComponentSelected")),q||(q=m.value.querySelector(".farris-nav-tabs")),E&&q){const H=E.querySelector(".component-btn-group");te(E,q)?Et(E):H&&(H.style.display="none")}}function J(){o&&o.value&&o.value.addEventListener("scroll",E=>{const q=E.target.querySelector(".dgComponentSelected");oe(q,E.target)})}function de(E){if(E&&E.parentElement){let q=E.getBoundingClientRect(),H=E.parentElement.getBoundingClientRect();(q.left<H.left||q.right>H.right)&&(o.value.scrollLeft=0,q=E.getBoundingClientRect(),H=E.parentElement.getBoundingClientRect(),o.value.scrollLeft=q.left-H.left),Dt(E)}}function ge(E,q,H){var ie,se,Ve;A(),M(E),L(E),Q(q,H);const W=E.currentTarget;de(W);const ee=(se=(ie=H.schema)==null?void 0:ie.contents)==null?void 0:se.find(be=>be.id===q);if(ee&&(!ee.toolbar||((Ve=ee.toolbar.buttons)==null?void 0:Ve.length)===0)){const be=E.currentTarget;t.nextTick(()=>{A(),be==null||be.classList.add("dgComponentFocused","dgComponentSelected"),de(be)})}}function le(E){var W;const q=a.designerItemElementRef.value.querySelector(".farris-tabs-content"),H=q==null?void 0:q.querySelector(`#${E}-design-item`);(W=H==null?void 0:H.componentInstance)!=null&&W.value.onRemoveComponent&&H.componentInstance.value.setComponentBasicInfoMap()}function X(E,q){M(E);const H=a.schema.contents,W=H==null?void 0:H.find(ie=>ie.id===q);if(!W)return;(!W.toolbar||!W.toolbar.buttons)&&(W.toolbar={id:`${W.id}_toolbar`,buttons:[]}),W.toolbar.id||(W.toolbar.id=`${W.id}_toolbar`);const ee=Pt("tab-toolbar-item");ee.id=`tab_toolbar_item_${Math.random().toString().slice(2,6)}`,W.toolbar.buttons.push(ee),d.value=[...W.toolbar.buttons],c.value=W.toolbar,le(W.id),t.nextTick(()=>{if(o&&o.value){const ie=o.value.querySelector(".f-state-active");ie&&de(ie)}})}function ce(E){}return{activeId:s,addTab:B,changeTitleStyle:y,removeTab:w,selectTab:F,tabPages:l,updateTab:j,toolbarItems:d,removeDesignTab:O,selectDesignTab:ge,toolbarSchema:c,changeToolbarItems:I,addTabPageToolbar:X,listenTabNavElementScroll:J,setHorizontalScrollbarPosition:de,needUpdateNavigationLayout:g,checkActiveIdAndSelect:T,toggleShowTab:C,hasInHeadClass:p,emitSelectionChange:Q,resetPositionForSelectedElement:oe,setTabsRef:h,setScrollToSelectedTabFunction:ce,toolbarVisible:f,updateComponentBasicInfoMap:le}}class Si extends ut{constructor(o,a,i="response-toolbar"){super(o,a);fe(this,"toolbarType","response-toolbar");this.toolbarType=i}getPropertyConfig(o){return this.propertyConfig.categories.basic=this.getBasicPropConfig(o),this.toolbarType!=="tab-toolbar"&&this.getAppearancePropConfig(o),this.propertyConfig.categories.behavior=this.getBehaviorConfig(o),this.propertyConfig}getAppearancePropConfig(o){this.propertyConfig.categories.appearance={title:"外观",description:"Appearance",properties:{class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter",parentPropertyID:"appearance"}}}}getBehaviorProperties(o){this.propertyConfig.categories.behavior={title:"行为",description:"",properties:{alignment:{title:"对齐方式",description:"在工具栏区域内按钮组的位置",type:"enum",editor:{type:"combo-list",textField:"name",valueField:"value",data:[{value:"left",name:"左对齐"},{value:"center",name:"居中"},{value:"right",name:"右对齐"}]}}}}}}function Ti(e,n,o){const a=e.schema;function i(){var h;let m=((h=e.parent)==null?void 0:h.schema.type)||"";["page-header","tabs","section"].findIndex(b=>b===m)===-1&&(m=""),o.toolbarPosition=m}i();function r(m){return!1}function l(m,h){return h.text=m.label,h}function s(){return!1}function u(){return!1}function c(){return!1}function d(){return!0}function f(m){return new Si(m,n,a.type).getPropertyConfig(a)}function g(m){var v;m&&(m.stopPropagation(),m.preventDefault());const{schema:h}=e;h.buttons||(h.buttons=[]);let b="";if(h.type)b=h.type+"-item";else{const P=(v=e.parent)==null?void 0:v.schema.type;b=P==="tabs"?"tab-toolbar-item":P==="section"?"section-toolbar-item":"response-toolbar-item"}const I=dn(b);I.id=`toolbar_item_${Math.random().toString().slice(2,6)}`,h.buttons.push(I),o.updateToolbarItems(),o.changeSelectedId("")}function p(){return[{id:"appendItem",title:"新增按钮",text:"",icon:"f-icon f-icon-plus-circle text-white",onClick:m=>g(m)}]}return{canAccepts:r,checkCanAddComponent:c,checkCanDeleteComponent:u,checkCanMoveComponent:s,hideNestedPaddingInDesginerView:d,onResolveNewComponentSchema:l,getPropsConfig:f,getCustomButtons:p}}function Ni(e){let n;function o(i,r,l,s){const u=e.schema;if(!(u!=null&&u.buttons))return;let c;if(l){const p=l.getAttribute("id");c=Array.from(r.children).findIndex(m=>m.getAttribute("id")===p)}else c=Array.from(r.children).length;const d=i.getAttribute("id"),f=Array.from(r.children).findIndex(p=>p.getAttribute("id")===d),g=u.buttons[f];f!==c&&f>-1&&c>-1&&(f<c&&(c=c-1),u.buttons.splice(f,1),u.buttons.splice(c,0,g),s(),t.nextTick(()=>{const p=r.querySelector(".dgComponentSelected");p!=null&&p.className.includes("dgComponentSelected")&&(p.classList.remove("dgComponentSelected"),p.classList.remove("dgComponentFocused"),p.click()),Ue.value++}))}function a(i,r,l){n&&n.destroy(),!(!xt||!i||!r)&&(n=xt([i],{mirrorContainer:r,direction:"horizontal",getMirrorText(s){return s.innerText},moves(s,u,c){let d=!0;return c.classList.contains("dropdown-item")?(d=!1,d):(s.classList.contains("no-drag")&&(d=!1),d)}}).on("drop",(s,u,c,d)=>o(s,u,d,l)))}return{dragulaInstance:n,initDragula:a}}function Ii(e,n,o){const{renderToolbarItemDesigner:a,actionHandlers:i}=o;let r;function l(v){r=v}function s(v,P=null){const T=n.value.find(k=>k.id===v.id);if(T.isDP)if(document.body.click(),typeof P=="boolean")T.expanded=P;else{const k=v.expanded;T.expanded=!k}}i.toggleDropdownMenu=s;function u(v){var T;const P={"dropdown-menu":!0};if(v.class){const k=(T=v.menuClass)==null?void 0:T.split(" ");k&&k.length&&k.reduce((S,V)=>(S[V]=!0,S),P)}return P}function c(v){var k;const P={disabled:v.disabled===!1,"dropdown-submenu":!0,"f-rt-dropdown":!0,"text-truncate":!0},T=(k=v.dropdownClass)==null?void 0:k.split(" ");return T&&T.length&&T.reduce((S,V)=>(S[V]=!0,S),P),P}function d(v){const P={disabled:!1,"dropdown-item":!0,"f-rt-btn":!0,"position-relative":!0,"farris-component":!0,"text-truncate":!0},T=(v.class||"").split(" ");return T&&T.length&&T.reduce((k,S)=>(k[S]=!0,k),P),P}let f;const g=new Map;function p(v,P,T){v.stopPropagation();const k=T?T.id:"__top_item__";if(P.children&&P.children.length&&(P.expanded=!P.expanded,P.expanded)){if(g.has(k)&&g.get(k)!==P){const S=g.get(k);S&&(S.expanded=!1,g.delete(k))}g.set(k,P)}}function m(v){var P;return(P=v.children)==null?void 0:P.map((T,k)=>T.children&&T.children.length?t.createVNode("li",{class:c(T),id:T.id},[t.createVNode("span",{class:d(T),onClick:S=>p(S,T,v)},[T.text,t.createVNode("i",{class:"f-icon f-icon-arrow-chevron-right",style:"display: inline-block;float: right;line-height: 1.25rem;"},null)]),f(T,T)]):a(T,k,!0))}function h(v,P,T,k){const{height:y,left:N,top:x}=k[0],{width:w,height:C}=T.getBoundingClientRect(),{marginTop:F,marginBottom:B}=getComputedStyle(T),j=Math.ceil(parseFloat(F))+Math.ceil(parseFloat(B)),M=x+y,D=P==null?void 0:P.getBoundingClientRect();function $(){let Q=0,te="left";const oe=D?D.right:window.innerWidth,J=D?D.left:0;return Q=oe-N-10,oe-N<w&&N-J>oe-N&&(te="right",Q=N-J-10),{hposition:te,maxWidth:Math.min(Q,300)}}let O=0,A="bottom";if(v==="tabs"||v==="section")O=P.getBoundingClientRect().bottom-M-j-10;else{const Q=D?D.bottom:window.innerHeight;O=v==="page-header"?Q-M:x,O=O-j-10,A=v==="page-header"?"bottom":"top"}const L=$();return{position:A+"-"+L.hposition,maxWidth:L.maxWidth,maxHeight:O}}function b(v){var V,y,N;const P="300px",T={display:v.expanded===!0?"block":"none",position:"absolute",maxWidth:P,minWidth:"120px"};if(!(r!=null&&r.value))return T;const k=r.value.querySelector("#"+v.id),S=k==null?void 0:k.getClientRects();if(k&&S&&S.length>0){const x=k?k.querySelector("#"+v.id+"_menu"):null;if(!x||v.expanded!==!0)return T;x.style.visibility="hidden",x.style.display="block",x.style.maxHeight="auto",x.style.maxWidth=P;let w;switch(i.toolbarPosition){case"tabs":w=(V=r.value)==null?void 0:V.closest(".farris-tabs");break;case"section":w=(y=r.value)==null?void 0:y.closest(".f-section");break;default:w=(N=r.value)==null?void 0:N.closest(".f-page")}const C=h(i.toolbarPosition,w,x,S),{position:F,maxHeight:B,maxWidth:j}=C;x.style.visibility="visible";const M={left:F.indexOf("left")>-1?0:"unset",right:F.indexOf("left")>-1?"unset":0,bottom:F.indexOf("bottom")>-1?"unset":"100%",top:F.indexOf("bottom")>-1?"!00%":"unset",maxWidth:j?j+"px":"300px",maxHeight:B?B+"px":"auto",overflowY:B?"auto":"unset"};Object.assign(T,M)}return T}i.changeMenuPosition=b,f=function(v,P){return t.createVNode("ul",{class:u(v),style:b(v),id:v.id+"_menu"},[m(v)])};function I(v=""){v&&g.has(v)?g.forEach((P,T)=>{T!==v&&(P.expanded=!1,g.delete(T))}):(g.forEach(P=>{P.expanded=!1}),g.clear())}return{renderDropdownMenu:f,clearAllDropDownMenu:I,setResponseToolbarRef:l}}function Hn(){function e(o){const a={"f-icon":!0};if(o.icon){const i=o.icon.trim().split(" ");i&&i.length&&i.reduce((r,l)=>(r[l]=!0,r),a)}return a}function n(o){return!!(o.icon&&o.icon.trim())}return{iconClass:e,shouldShowIcon:n}}class Vi extends ut{constructor(n,o){super(n,o)}getPropertyConfig(n,o=!1){return this.propertyConfig.categories.basic=this.getBasicPropConfig(n),this.propertyConfig.categories.basic.properties.text={title:"文本",type:"string",description:"",refreshPanelAfterChanged:!0},this.getAppearanceProperties(n,o),this.getbBehaviorConfig(n),this.getEventPropConfig(n),this.propertyConfig}getAppearanceProperties(n,o=!1){this.propertyConfig.categories.appearance={title:"外观",properties:{class:{description:"组件的CSS样式",title:"class样式",visible:!o},icon:{title:"图标",type:"string",description:""},split:{title:"下拉按钮分离",type:"boolean",description:"启用下拉按钮分离,可以单独点击按钮。单独点击下拉按钮展开下拉面板",visible:!!(n.children&&n.children.length>0)}}}}getbBehaviorConfig(n){const o=this.getPropertyEditorParams(n,["Const","Variable","StateMachine","Expression"],"disabled");this.propertyConfig.categories.behavior=this.getBehaviorConfig(n,"",{disabled:{title:"禁用",type:"boolean",description:"按钮禁用状态",refreshPanelAfterChanged:!0,editor:o}})}getEventPropConfig(n){const o=[{label:"onClick",name:"点击事件"}],a=this,i=a.eventsEditorUtils.formProperties(n,a.viewModelId,o),r=a.createBaseEventProperty(i);this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:r,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(l,s){const u=l.propertyValue;delete n[a.viewModelId],u&&(u.setPropertyRelates=this.setPropertyRelates,a.eventsEditorUtils.saveRelatedParameters(n,a.viewModelId,u.events,u))}}}}class ki extends ut{constructor(o,a,i="response-toolbar-item"){super(o,a);fe(this,"toolbarType","response-toolbar-item");this.toolbarType=i}getPropertyConfig(o,a=!1){this.propertyConfig.categories.basic=this.getBasicPropConfig(o),this.propertyConfig.categories.basic.properties.text={title:"文本",type:"string",description:"",refreshPanelAfterChanged:!0},this.propertyConfig.categories.basic.setPropertyRelates=r=>{if(r)switch(r&&r.propertyID){case"text":{r.needRefreshControlTree=!0;break}}},this.getAppearanceProperties(o,a);const i=this.getPropertyEditorParams(o,["Const","Variable","StateMachine","Expression"],"disabled");return this.propertyConfig.categories.behavior=this.getBehaviorConfig(o,"",{disabled:{title:"禁用",type:"boolean",description:"按钮禁用状态",refreshPanelAfterChanged:!0,editor:i}}),this.getEventPropConfig(o),this.propertyConfig}getAppearanceProperties(o,a=!1){this.propertyConfig.categories.appearance={title:"外观",description:"Appearance",properties:{class:{title:"class样式",type:"string",description:"",$converter:"/converter/appearance.converter",parentPropertyID:"appearance",visible:!a},icon:{title:"图标",type:"string",description:""},split:{title:"下拉按钮分离",type:"boolean",description:"启用下拉按钮分离,可以单独点击按钮。单独点击下拉按钮展开下拉面板",visible:!!(o.children&&o.children.length>0)},tipsEnable:{title:"启用提示",type:"boolean",description:"当启用提示时,鼠标滑过按钮会有消息提示框",refreshPanelAfterChanged:!0,visible:this.toolbarType==="response-toolbar-item"},tipsText:{title:"提示消息内容",type:"string",description:"消息提示框内的展示内容",visible:o.tipsEnable===!0}}}}getEventPropConfig(o){const a=[{label:"onClick",name:"点击事件"}],i=this,r=i.eventsEditorUtils.formProperties(o,i.viewModelId,a),l=i.createBaseEventProperty(r);this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:l,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(s,u){const c=s.propertyValue;delete o[i.viewModelId],c&&(c.setPropertyRelates=this.setPropertyRelates,i.eventsEditorUtils.saveRelatedParameters(o,i.viewModelId,c.events,c))}}}}function At(e,n){if(!e)return!1;const o=n||[];return(o==null?void 0:o.findIndex(i=>i.id===e))===-1}function zn(e,n){const o=n||[];let a={parentIndex:-1,itemIndex:-1};return o.some((i,r)=>{if(i.children&&i.children.length>0){const l=i.children.findIndex(s=>s.id===e);return l>-1?(a={parentIndex:r,itemIndex:l},!0):!1}}),a}function _n(e,n){const o=n||[];let a={parentIndex:-1,itemIndex:-1};const i=o==null?void 0:o.findIndex(r=>r.id===e);return i>-1?{parent:null,item:o[i]}:(o.some((r,l)=>{if(r.children&&r.children.length>0){const s=r.children.findIndex(u=>u.id===e);return s>-1?(a={parentIndex:l,itemIndex:s},!0):!1}}),a.parentIndex<0?{parent:null,item:null}:{parent:o[a.parentIndex],item:o[a.parentIndex].children[a.itemIndex]})}function Fi(e,n){const o=n||[],a=o==null?void 0:o.findIndex(i=>i.id===e);return a>-1&&o[a].children&&o[a].children.length>0?o[a].expanded===!0:!1}function Bi(e,n,o){function a(C){return!1}function i(){return!1}function r(){return!1}function l(){return!1}function s(){return o.toolbarContext.schema.buttons||[]}function u(C,F=""){setTimeout(()=>{var D,$;const B=(D=e.parent)==null?void 0:D.designerItemElementRef.value;let j;F&&(j=B==null?void 0:B.querySelector("#"+F));const M=($=j||B)==null?void 0:$.querySelector("#"+C);M==null||M.click()},0)}function c(C,F){F.disabled&&F.disabled.expressionId&&(F.disabled.expressionId=`${F.id}_disabled`),F.visible&&F.visible.expressionId&&(F.visible.expressionId=`${F.id}_visible`);const B=n.formSchemaUtils.getExpressions(),j=B.find(D=>D.target===C.id);if(!j||!j.rules||!j.rules.length)return;const M={target:F.id,rules:[],targetType:"Button"};j.rules.forEach(D=>{const $=Object.assign(he.cloneDeep(D),{id:`${F.id}_${D.type}`});M.rules.push($)}),B.push(M)}function d(){var j;const C=e.schema,F=Object.assign(he.cloneDeep(C),{id:`${e.schema.type}-cloned-${Math.random().toString(36).slice(2,6)}`,onClick:null});(j=n==null?void 0:n.designerContext)!=null&&j.appendIdentifyForNewControl&&n.designerContext.appendIdentifyForNewControl(F);let B=[];return F.children&&F.children.length&&(B=F.children.map(M=>{var $;const D=he.cloneDeep(M);return Object.assign(D,{id:`${e.schema.type}-cloned-${Math.random().toString(36).slice(2,6)}`,onClick:null}),($=n==null?void 0:n.designerContext)!=null&&$.appendIdentifyForNewControl&&n.designerContext.appendIdentifyForNewControl(D),c(M,D),D}),F.children=B),c(C,F),F}function f(){const C=e.schema.type||"response-toolbar-item",F=Pt(C),B=C.toLowerCase().replace("-","_");return F&&!F.id&&F.type===C&&(F.id=`${B}_${Math.random().toString().slice(2,6)}`,F.text="按钮"),F}function g(C){const F=s(),B=F==null?void 0:F.findIndex(M=>M.id===C),j=B===-1?null:F[B];return{index:B,toolbarItem:j}}function p(){const C=e.schema.id,F=s();return At(C,F)}function m(C){const F=n.formSchemaUtils.getExpressions();if(!F||!F.length)return;const B=j=>{const M=F&&F.findIndex(D=>D.target===j.id);M>-1&&F.splice(M,1)};B(C),C.children&&C.children.length&&C.children.forEach(j=>{B(j)})}function h(C){o.changeSelectedId(C)}function b(C){n.formSchemaUtils.removeCommunicationInComponent(C),C.children&&C.children.length&&C.children.forEach(F=>{n.formSchemaUtils.removeCommunicationInComponent(F)})}function I(){var j,M,D;if((j=n==null?void 0:n.designerContext)!=null&&j.checkCanDeleteControl&&!n.designerContext.checkCanDeleteControl(e.schema))return;const C=s(),{parentIndex:F,itemIndex:B}=zn(e.schema.id,C);F===-1||B===-1||(m(e.schema),b(e.schema),C[F].children.splice(B,1),o.updateToolbarItems(),(M=e.setupContext)==null||M.emit("removeComponent"),(D=e.setupContext)==null||D.emit("selectionChange"),Ue.value++)}function v(){var j,M,D;if((j=n==null?void 0:n.designerContext)!=null&&j.checkCanDeleteControl&&!n.designerContext.checkCanDeleteControl(e.schema))return;const C=e.schema.id,F=s(),B=F==null?void 0:F.findIndex($=>$.id===C);B!==-1&&(m(F[B]),b(F[B]),F==null||F.splice(B,1),o.updateToolbarItems(),(M=e.setupContext)==null||M.emit("removeComponent"),(D=e.setupContext)==null||D.emit("selectionChange"),Ue.value++)}function P(C="Append"){var $;const F=s(),{parentIndex:B,itemIndex:j}=zn(e.schema.id,F);if(B===-1||j===-1)return;const M=f(),D=C==="Copy"?d():Object.assign({},M);F[B].children.splice(j+1,0,D),o.updateToolbarItems(),h(D.id),($=e.setupContext)==null||$.emit("addComponent")}function T(C,F){const{index:B}=g(F);if(B===-1)return{index:B,schema:null};const j=f(),M=C==="Copy"?d():Object.assign({},j);return{index:B,schema:M}}function k(){var j;const C=e.schema.id,{index:F,schema:B}=T("Copy",C);B&&(s().splice(F+1,0,B),o.updateToolbarItems(),u(B.id),(j=e.setupContext)==null||j.emit("addComponent"))}function S(){var j;const C=e.schema.id,{index:F,schema:B}=T("Append",C);if(B&&e.parent){const D=s()[F].children||[];D.push(B);const $=s();$[F].children=D,o.updateToolbarItems(),h(B.id),(j=e.setupContext)==null||j.emit("addComponent")}}function V(C){let F;switch(e.schema.type){case"tab-toolbar-item":F=new Vi(C,n);break;default:F=new ki(C,n,e.schema.type)}return F.getPropertyConfig(e.schema,p())}function y(C){C.stopPropagation(),C.stopImmediatePropagation()}function N(){const C=[{id:"delete",title:"删除",text:"",icon:"f-icon-yxs_delete",onClick:F=>{y(F),p()?I():v()}},{id:"copy",title:"复制",icon:"f-icon-yxs_copy",onClick:F=>{y(F);const{activeElement:B}=document,j=B?B.tagName.toLowerCase():"";j&&j==="input"||j==="textarea"?(B==null||B.blur(),t.nextTick(()=>{p()?P("Copy"):k()})):p()?P("Copy"):k()}}];return C.push(p()?{id:"appendSiblingButton",title:"",text:"新增同级",icon:"f-icon-plus-circle",onClick:F=>{y(F),P()}}:{id:"appendChildButton",title:"",text:"新增子级",icon:"f-icon-plus-circle",onClick:F=>{y(F),S()}}),C}function x(){const{schema:C}=e;m(C)}function w(){var C,F,B,j;if(e&&n){const{formSchemaUtils:M}=n,{schema:D}=e;switch(D.type){case"response-toolbar-item":{M.getControlBasicInfoMap().set(D.id,{componentTitle:D.text,parentPathName:D.text});break}case"tab-toolbar-item":case"section-toolbar-item":{let $;const O=(C=e.parent)==null?void 0:C.parent;(O==null?void 0:O.schema.type)==="tabs"||(O==null?void 0:O.schema.type)==="section"?$=(F=O.componentInstance)==null?void 0:F.value:$=(j=(B=O==null?void 0:O.parent)==null?void 0:B.componentInstance)==null?void 0:j.value,$!=null&&$.setComponentBasicInfoMap&&$.setComponentBasicInfoMap()}}}}return{canAccepts:a,checkCanMoveComponent:i,checkCanDeleteComponent:r,checkCanAddComponent:l,getPropsConfig:V,getCustomButtons:N,onRemoveComponent:x,setComponentBasicInfoMap:w}}const Mi=t.defineComponent({name:"FResponseToolbarItemDesign",props:wn,emits:["Click","dropdown","clearAll"],setup(e,n){const o=t.ref(e.alignment),a=Hn(),i=t.ref(),r=t.inject("designer-host-service"),l=t.inject("design-item-context"),s=t.inject("toolbar-item-action"),u=Bi(l,r,s),c=rn.useDesignerInnerComponent(i,l,u);t.onMounted(()=>{i.value.componentInstance=c}),n.expose(c.value);function d(){const T={"f-icon":!0},k=e.icon?e.icon.trim():"";return ye.getCustomClass(T,k)}function f(){return!!(e.icon&&e.icon.trim())}const g=t.computed(()=>{const T={btn:!0,"f-rt-btn":!0,"f-btn-ml":!e.isDP&&(o.value==="right"||o.value==="center"),"f-btn-mr":!e.isDP&&o.value==="left","btn-icontext":!!(e.icon&&e.icon.trim()),disabled:e.disabled===!0,"no-drag":!0,"text-truncate":!0};return ye.getCustomClass(T,e.class)}),p=t.computed(()=>e.split?{display:"flex","align-items":"center"}:{display:"flex","align-items":"center","border-radius":"6px","padding-right":"0.1rem","border-top-right-radius":"6px","border-bottom-right-radius":"6px"}),m=t.computed(()=>{const T={btn:!0,"dropdown-toggle":!0,"f-btn-mr":o.value==="left","dropdown-toggle-split":!0,"no-drag":!0};return ye.getCustomClass(T,e.class)}),h=t.computed(()=>{let T={btn:!e.isDPItem,disabled:e.disabled===!0,"dropdown-item":e.isDPItem,"f-rt-btn":!0,"text-truncate":!0,"btn-icontext":!e.isDPItem&&!!(e.icon&&e.icon.trim()),"dropdown-item-icontext":e.isDPItem&&!!(e.icon&&e.icon.trim()),"no-drag":!0};return e.isDPItem||(T=ye.getCustomClass(T,e.class||"")),e.isDP&&(T=ye.getCustomClass(T,e.dropdownClass||"")),T});function b(T,k){k&&k.stopPropagation(),n.emit(T,{id:e.id,isDP:e.isDP})}function I(){return{"btn-group":!0,"no-drag":!0,"f-rt-dropdown":!0,"f-btn-ml":o.value==="right"||o.value==="center","f-btn-mr":o.value==="left"}}function v(){return t.createVNode("div",{ref:i,"data-dragref":`${l.schema.id}-container`,class:"farris-component position-relative",style:"display:inline-block!important;"},[t.createVNode("div",{class:I(),id:e.id},[t.createVNode("div",{class:g.value,style:p.value,onClick:()=>b("clearAll")},[a.shouldShowIcon(e)&&t.createVNode("i",{class:a.iconClass(e)},null),t.createVNode("span",null,[e.text]),!e.split&&t.createVNode("span",{class:"f-icon f-icon-arrow-chevron-down",style:"margin:0 0.5rem 0 0.25rem;",onClick:T=>b("dropdown",T)},null)]),e.split&&t.createVNode("button",{class:m.value,style:"border-radius:0 6px 6px 0;",onClick:T=>b("dropdown",T)},null),s.renderDropdownMenu(e.item,e.item)])])}function P(){return t.createVNode("li",{ref:i,"data-dragref":`${l.schema.id}-container`,id:e.id,class:h.value},[a.shouldShowIcon(e)&&t.createVNode("i",{class:a.iconClass(e)},null),e.text])}return()=>e.isDP?v():e.isDPItem?P():t.createVNode("div",{ref:i,"data-dragref":`${l.schema.id}-container`,class:"farris-component position-relative",style:"display:inline-block!important;"},[t.createVNode("button",{type:"button",class:g.value,id:e.id,onClick:()=>b("clearAll")},[f()&&t.createVNode("i",{class:d()},null),e.text])])}});function Pi(e,n,o,a){function i(g,p,m,h){a.changeSelectedId((p==null?void 0:p.id)||""),o&&o.setupContext&&o.setupContext.emit("selectionChange",g,p,m,h)}function r(){}function l(g){const p=g.expanded;a.clearAllDropdown(),a.toggleDropdownMenu(g,!p)}function s(g){a.clearAllDropdown(g.isDP?g.id:"")}function u(g,p=""){const m=e.items||[],h=p||g,b=m.find(I=>I.id===h);return p?b.children.find(I=>I.id===g):b}function c(g,p=!1){if(!p)return;const m=g.target;m!=null&&m.classList.contains("dgComponentFocused")&&(m==null||m.classList.add("dgComponentSelected"))}function d(g,p=!1){if(!p)return;const m=g.target;m!=null&&m.classList.contains("dgComponentFocused")&&(m==null||m.classList.remove("dgComponentSelected"))}function f(g,p,m=!1){const h=u(g.id,g.parent),b=t.ref(h);return t.createVNode(qn,{key:h.id,class:["p-0",m?"d-block no-drag":"d-inline-block"],modelValue:b.value,"onUpdate:modelValue":I=>b.value=I,canMove:!1,childType:"response-toolbar-item",childLabel:"按钮",contentKey:"buttons",componentId:e.componentId,id:h.id,onSelectionChange:i,onRemoveComponent:r,onMouseenter:I=>c(I,m),onMouseleave:I=>d(I,m)},{default:()=>{var I;return[t.createVNode(Mi,{id:h.id,disabled:h.disabled,text:h.text,icon:h.icon,isDP:g.isDP,item:g,split:h.split,isDPItem:g.isDPItem,class:((I=g.appearance)==null?void 0:I.class)||"btn-secondary",alignment:e.alignment||"right",onDropdown:()=>l(g),onClearAll:v=>s(v),componentId:e.componentId},null)]}})}return{renderToolbarItemDesigner:f,actionHandlers:a}}function qt(e,n=!1,o=""){const a=[];return e.reduce((i,r)=>{if(r.children&&r.children.length>0){const l=qt(r.children,!0,r.id);i.push(Object.assign({},r,{children:l,isDPItem:!1,isDP:!0,parent:"",expanded:!1}))}else i.push(Object.assign({},r,{isDPItem:n,isDP:!1,parent:o}));return i},a),a}const Un=t.defineComponent({name:"FResponseToolbarDesign",props:ia,emits:["Click"],setup(e,n){const o=t.ref(qt(e.items)),a=t.ref(),i=t.ref(),r=t.ref(),l=t.ref("");let s=0;const u=15,c=t.inject("designer-host-service"),d=t.inject("design-item-context"),f={clearAllDropdown:A=>{},toggleDropdownMenu:A=>{},updateToolbarItems:()=>{},changeSelectedId:A=>{l.value=A},renderDropdownMenu:(A,L)=>{},toolbarContext:d,changeMenuPosition:(A,L,Q)=>({}),toolbarPosition:""},g=Ti(d,c,f),p=rn.useDesignerComponent(r,d,g),m=t.inject("toolbar-item-handler"),{initDragula:h,dragulaInstance:b}=Ni(d),I=Hn(),v=Pi(e,i,d,f),P=Ii(I,o,v),{renderToolbarItemDesigner:T}=v,{clearAllDropDownMenu:k,renderDropdownMenu:S,setResponseToolbarRef:V}=P;t.provide("toolbar-item-action",f),f.renderDropdownMenu=S,V(r),m&&(m.changeSelectedId=function(A){l.value=A});function y(){const A=i.value.querySelector(".dgComponentSelected");A&&Et(A)}function N(){if(l.value)if(At(l.value,o.value)){const{parent:A,item:L}=_n(l.value,o.value);A&&(f.toggleDropdownMenu(A,!0),setTimeout(()=>{var oe;const Q=r.value.querySelector("#"+A.id),te=Q==null?void 0:Q.querySelector("#"+L.id);(((oe=te==null?void 0:te.parentElement)==null?void 0:oe.className)||"").indexOf("dgComponentFocused")<0&&(te==null||te.click())},0))}else y()}function x(A=""){o.value.filter(L=>L.id!==A&&L.children&&L.children.length>0).forEach(L=>{L.expanded=!1}),k(A)}f.clearAllDropdown=x;function w(){m&&m.updateToolbarItems&&m.updateToolbarItems()}f.updateToolbarItems=w;function C(A){if(A){const L=r.value.querySelector("#"+A.id),Q=L.querySelector("#"+A.id+"_menu"),te=f.changeMenuPosition(A,L);Object.keys(te).forEach(oe=>{Q.style[oe]=te[oe]})}}function F(){const Q=i.value.clientWidth,te=i.value.querySelectorAll(".farris-component>.f-rt-btn");te&&te.forEach(J=>{J.style.maxWidth=Q-12+"px"});const oe=i.value.querySelectorAll(".farris-component>.f-rt-dropdown");oe&&oe.forEach(J=>{J.querySelector(".dropdown-toggle-split")?J.querySelector(".f-rt-btn").style.maxWidth=Q-38+"px":J.style.maxWidth=Q-12+"px"})}const B=new ResizeObserver(A=>{var L;if(A.length){const te=A[0].contentRect.width;if(te===0){s=0;return}if(Math.abs(te-s)>u){if(s=te,At(l.value,o.value)){const{parent:oe,item:J}=_n(l.value,o.value);C(oe)}else if(Fi(l.value,o.value)){const oe=(L=o.value)==null?void 0:L.find(J=>J.id===l.value);C(oe)}else x();F()}}});t.onMounted(()=>{B.observe(r.value),s=r.value.clientWidth,r.value.componentInstance=p,h(i.value,a.value,w)}),t.onUnmounted(()=>{B.disconnect(),b&&b.destroy&&b.destroy()}),n.expose(p.value);const j=t.computed(()=>{const A={"f-toolbar":!0,"f-response-toolbar":!0,"position-relative":!0,"f-response-toolbar-sm":e.buttonSize==="sm","f-response-toolbar-lg":e.buttonSize==="lg"};return ye.getCustomClass(A,e.customClass)}),M=t.computed(()=>({"text-left":e.alignment==="left","text-right":e.alignment==="right","justify-content-end":e.alignment==="right","justify-content-start":e.alignment==="left","justify-content-center":e.alignment==="center","no-drag":!0,"w-100":!0}));t.watch(()=>e.items,()=>{o.value=qt(e.items),t.nextTick(()=>{N(),F()})},{deep:!0});function D(A){A&&(A.stopPropagation(),A.preventDefault());const{schema:L}=d;L.buttons||(L.buttons=[]);const Q=dn("response-toolbar-item");Q.id=`toolbar_item_${Math.random().toString().slice(2,6)}`,Q.appearance={class:"btn btn-secondary"},L.buttons.push(Q)}function $(){return t.createVNode("li",{style:"border-width: 1px;border-style: dashed;display: inline-block;padding: 0 8px;line-height: 24px; border-radius: 3px; cursor: default;color: #B4BCCC;",onClick:D},[t.createVNode("span",{class:"f-icon f-icon-amplification mr-1",style:"font-size: 12px;"},null),t.createVNode("span",{class:"farris-tag-add-text"},[t.createTextVNode("添加按钮")])])}function O(){return o.value.map((A,L)=>T(A,L))}return()=>{var A;return t.createVNode("div",{ref:r,"data-dragref":`${d.schema.id}-container`,class:j.value,id:e.id},[t.createVNode("div",{ref:a,class:M.value,onClick:L=>x(L)},[t.createVNode("div",{ref:i,class:"d-block f-response-content"},[(A=o.value)!=null&&A.length?O():$()])])])}}});function ji(e,n,o,a,i){var g;const{toolbarItems:r,toolbarSchema:l,changeToolbarItems:s,hasInHeadClass:u}=e,c=l.value.id||`${((g=a==null?void 0:a.schema)==null?void 0:g.id)||""}-toolbar`;function d(p,m,h,b){var I;(I=a.setupContext)==null||I.emit("selectionChange",p,m,h,b)}function f(){s()}return t.createVNode("div",{class:"farris-tabs-toolbar",style:"overflow:unset;"},[t.createVNode("div",{class:"farris-tabs-inline-flex w-100",style:"flex:1"},[t.createVNode(qn,{modelValue:l.value,"onUpdate:modelValue":p=>l.value=p,class:"w-100 position-relative",key:c,canAdd:!1,childType:"tab-toolbar-item",childLabel:"按钮",contentKey:"buttons",id:c,onSelectionChange:d,componentId:i,onAddComponent:f},{default:()=>[t.createVNode(Un,{alignment:u.value?"right":"left",items:r.value,componentId:i},null)]})])])}function $i(e,n){let o;function a(s){var d;const c=Array.from(s.children).find(f=>f.className.includes("add-nav-item"));c&&!((d=c.className)!=null&&d.includes("d-none"))&&(c.className+=" d-none")}function i(s){var d;const c=Array.from(s.children).find(f=>f.className.includes("add-nav-item"));c&&((d=c.className)!=null&&d.includes(" d-none"))&&(c.className=c.className.replace(" d-none",""))}function r(s,u,c){i(u);const d=e.schema;if(!(d!=null&&d.contents))return;let f;if(c){const h=c.getAttribute("pageId");f=Array.from(u.children).findIndex(b=>b.getAttribute("pageId")===h)}else f=Array.from(u.children).length;const g=s.getAttribute("pageId"),p=Array.from(u.children).findIndex(h=>h.getAttribute("pageId")===g),m=d.contents[p];if(p!==f&&p>-1&&f>-1){if(p<f&&(f=f-1),d.contents.splice(p,1),d.contents.splice(f,0,m),n.value){const h=n.value[p];n.value.splice(p,1),n.value.splice(f,0,h)}t.nextTick(()=>{s.className.includes("dgComponentSelected")&&(s.classList.remove("dgComponentSelected"),s.classList.remove("dgComponentFocused"),s.click()),Ue.value++})}}function l(s,u){o&&o.destroy(),!(!xt||!s||!u)&&(o=xt([s],{mirrorContainer:u,direction:"horizontal",moves(c){return!c.classList.contains("no-drag")},getMirrorText(c){return c.innerText},accepts(c,d,f,g){return a(d),g&&g.className.includes("nav-item")}}).on("drop",(c,d,f,g)=>r(c,d,g)))}return{dragulaInstance:o,initHeaderDragula:l}}const Ei=t.defineComponent({name:"FTabsDesign",props:xn,emits:["tabChange","tabRemove"],setup(e,n){const o=t.ref(),a=t.inject("designer-host-service"),i=t.inject("design-item-context"),r=wi(i,a),l=Ct(o,i,r),s=t.ref(e.tabType),u=t.shallowRef(),c=t.shallowRef(),d={updateToolbarItems:function(){},changeSelectedId:E=>{}},f=xi(e,n,u,i,d,a),{activeId:g,changeTitleStyle:p,tabPages:m,addTab:h,updateTab:b,toolbarItems:I,setTabsRef:v,checkActiveIdAndSelect:P,listenTabNavElementScroll:T,toolbarSchema:k,toggleShowTab:S,hasInHeadClass:V,updateComponentBasicInfoMap:y}=f;v(o);const N=In(e,c,f),x=Tn(e,u,N,f),{updateNavigationLayout:w}=x,C=Nn(e,f),{hideDropDown:F}=C,B=Ca(e,u,x,N,f,l),j=B,M=Sn(e,u,x,N,f),D=new Map([["default",B],["one-page",j],["pills",M]]);t.computed(()=>{const E=m.value.find(q=>q.props.id===g.value);return E==null?void 0:E.slots});function $(){const E=l.value.schema.contents||[];return E.length<1?null:E.find(H=>H.id===g.value)}d.updateToolbarItems=function(){var q,H;const E=$();(q=E==null?void 0:E.toolbar)!=null&&q.buttons?I.value=[...(H=E==null?void 0:E.toolbar)==null?void 0:H.buttons]:I.value=[],k.value=E==null?void 0:E.toolbar,E!=null&&E.id&&y(E.id)};const O=t.ref(!0);t.provide("tabs",{activeId:g,addTab:h,updateTab:b,tabPages:m,tabType:s,toggleShowTab:S,toolbarVisible:O}),t.provide("toolbar-item-handler",d);const A=t.computed(()=>e.fill),L=t.computed(()=>({"farris-tabs-header":!0,"farris-tabs-inHead":V.value,"farris-tabs-inContent":!V.value,"farris-tabs-nav-fill":e.tabType==="fill","farris-tabs-nav-pills":e.tabType==="pills"})),Q=t.computed(()=>{const E={width:V.value&&e.titleWidth?`${e.titleWidth}%`:""};return E.width&&(E.flex="unset"),E}),te=t.computed(()=>({"farris-tabs":!0,"flex-column":e.position==="top","flex-column-reverse":e.position==="bottom","flex-row":e.position==="left","flex-row-reverse":e.position==="right","one-page":e.tabType==="one-page"})),{initHeaderDragula:oe,dragulaInstance:J}=$i(i,m);t.onMounted(()=>{m.value.length&&P(e.activeId||m.value[0].props.id),t.nextTick(()=>{w()}),p(u),window.addEventListener("click",E=>{var q;F.value||(q=o.value)!=null&&q.contains(E.target)||(F.value=!0)}),window.addEventListener("resize",()=>{w()}),T(),o.value.componentInstance=l,e.tabType==="default"&&oe(u.value,u.value)}),t.onUnmounted(()=>{J&&J.destroy&&J.destroy()});function de(){return!!I.value.length&&ji(f,l,r,i,e.componentId)}const ge=D.get(e.tabType)||D.get("default");function le(){var E,q,H,W;return t.createVNode("div",{class:L.value},[t.createVNode("div",{class:"farris-tabs-header-pre"},[(q=(E=n.slots).headerPrefix)==null?void 0:q.call(E)]),t.createVNode("div",{class:"farris-tabs-title scroll-tabs",style:Q.value},[ge&&ge()]),de(),t.createVNode("div",{class:"farris-tabs-header-post"},[(W=(H=n.slots).headerSuffix)==null?void 0:W.call(H)])])}const X=t.computed(()=>({"farris-tabs-content":!0,"f-utils-fill-flex-column":A.value}));function ce(){var E,q,H,W;return t.createVNode("div",{class:X.value,ref:c},[(q=(E=i==null?void 0:i.schema)==null?void 0:E.contents)!=null&&q.length?(W=(H=n.slots).default)==null?void 0:W.call(H):""])}return n.expose(l.value),l.value.updateToolbarItems=d.updateToolbarItems,()=>t.createVNode("div",{class:te.value,ref:o},[le(),ce()])}});function Di(e,n,o){return n?{enableAccordion:o.accordionMode}:{enableAccordion:""}}function Oi(e,n){var o;return{buttons:n.buttons,buttonPosition:n.position,buttonsClass:(o=n.appearance)==null?void 0:o.class,buttonsVisible:n.visible}}const Ht=new Map([["appearance",_e],["expanded","expandStatus"],["enableAccordion",Di],["toolbar",Oi]]);function Ri(e,n){const o=Math.random().toString().slice(2,6),a=n.parentComponentInstance,i=e.getSchemaByType("section");Object.assign(i,{id:`section-${o}`,appearance:{class:"f-section-in-mainsubcard"},mainTitle:n.mainTitle||i.mainTitle||"标题"});const r=e.getSchemaByType("content-container");Object.assign(r,{id:`container-${o}`,appearance:{class:"f-struct-wrapper"},contents:[i]});const l=a.schema;switch(l&&l.type){case z["splitter-pane"].type:{i.appearance.class="f-section-in-main";break}}const s=a.elementRef,u=window.getComputedStyle(s);return u&&u.display==="flex"&&(r.appearance.class+=" d-block"),r}function Wn(e,n,o){return o.parentComponentInstance?Ri(e,o):n}const Gn={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/section.schema.json",title:"section",description:"A Farris Container 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:"section"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},contentClass:{description:"",type:"string",default:""},contents:{description:"",type:"array",default:[]},enableAccordion:{description:"",type:"string",default:""},accordionMode:{description:"",type:"string",default:"default"},enableMaximize:{description:"",type:"boolean",default:!1},expanded:{description:"",type:"boolean",default:!0},fill:{description:"",type:"boolean",default:!1},headerClass:{description:"",type:"string",default:""},size:{description:"",type:"object",properties:{width:{type:"number"},height:{type:"number"}},default:null},showHeader:{description:"",type:"string",default:!0},mainTitle:{description:"",type:"string",default:""},subTitle:{description:"",type:"string",default:""},headerContentClass:{description:"",type:"string",default:""},extendClass:{description:"",type:"string",default:""},visible:{description:"",type:"boolean",default:!0},expandStatus:{description:"",type:"boolean",default:!0},toolbar:{description:"",type:"object",properties:{type:{type:"string",default:"section-toolbar"},position:{type:"string",default:"inHead"},buttons:{type:"array",default:[]},appearance:{description:"",type:"object",properties:{class:{type:"string",default:""}}}},default:null},headerTitleHtml:{description:"",type:"string",default:""},headerTitleRenderFunction:{description:"",type:"function",default:null},headerHtml:{description:"",type:"string",default:""},headerRenderFunction:{description:"",type:"function",default:null},headerContentHtml:{description:"",type:"string",default:""},headerContentRenderFunction:{description:"",type:"function",default:null},toolbarHtml:{description:"",type:"string",default:""},toolbarRenderFunction:{description:"",type:"function",default:null}},required:["id","type","contents"]},Li={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/section-toolbar.schema.json",title:"section-toolbar",description:"A Farris Toolbar Component",type:"object",properties:{id:{description:"The unique identifier for a Section Toolbar",type:"string"},type:{description:"The type string of Section Toolbar",type:"string",default:"section-toolbar"},appearance:{description:"",type:"object",properties:{class:{type:"string",default:""}}},alignment:{description:"The alignment of Section Toolbar Button.",type:"string",default:"right"},buttons:{description:"The items of Section Toolbar.",type:"array",default:[]},buttonSize:{type:"string",default:""},visible:{description:"",type:"boolean",default:!0}},required:["id","type","buttons"],events:{onClick:"点击事件"}},zt={contentClass:{type:String,default:""},customClass:{type:String,default:""},customStyle:{type:String,default:""},enableAccordion:{type:String,default:""},expandStatus:{type:Boolean,default:!0},mainTitle:{type:String,default:""},showHeader:{type:Boolean,default:!0},subTitle:{type:String,default:""},expandLabel:{type:String,default:"展开"},collapseLabel:{type:String,default:"收起"},headerClass:{type:String,default:""},enableMaximize:{type:Boolean,default:!1},headerContentClass:{type:String,default:""},extendClass:{type:String,default:""},buttons:{type:Array,default:[]},buttonPosition:{type:String,default:"inHead"},buttonsClass:{type:String,default:""},buttonsVisible:{type:Boolean,default:!0},fill:{type:Boolean,default:!1},visible:{type:Boolean,default:!0},headerTitleRenderFunction:{type:Function},headerRenderFunction:{type:Function},headerContentRenderFunction:{type:Function},toolbarRenderFunction:{type:Function}};Ie(zt,Gn,Ht,Wn);const Ai=Object.assign({},zt,{componentId:{type:String,default:""},headerTitleHtml:{type:String,default:""},headerHtml:{type:String,default:""},headerContentHtml:{type:String,default:""},toolbarHtml:{type:String,default:""}});Ie(bt,Li,Ht,yt),Ie(Ai,Gn,Ht,Wn);function qi(e,n,o){let a;function i(u=1){const c=["body>.f-datagrid-settings-simple-host","body>div","body>farris-dialog>.farris-modal.show","body>.farris-modal.show","body>farris-filter-panel>.f-filter-panel-wrapper","body .f-sidebar-show>.f-sidebar-main","body>.popover.show","body>filter-row-panel>.f-datagrid-filter-panel","body>.f-section-maximize"],d=Array.from(document.body.querySelectorAll(c.join(","))).filter(g=>g).map(g=>{const{display:p,zIndex:m}=window.getComputedStyle(g);return p==="none"?0:parseInt(m,10)}).filter(g=>g);let f=Math.max(...d);return f<1040&&(f=1040),f+u}function r(){a=e.value.nextElementSibling;const u=document&&document.querySelector("body");u&&(u.appendChild(e.value),e.value.style.zIndex=i())}function l(){a?n.value.insertBefore(e.value,a):n.value.appendChild(e.value),e.value.style.zIndex=null}function s(){!e||!n.value||(o.value=!o.value,o.value?r():l())}return{onClickMaxMinIcon:s}}function Xn(e,n){const o=t.ref(e.buttons),a=t.computed(()=>e.buttonPosition==="inHead"?"right":"left"),i=t.computed(()=>"f-section-toolbar col-6"+(e.buttonPosition==="inHead"?" f-toolbar f-section-header--toolbar":" f-section-content--toolbar")+(e.buttonsClass?" "+e.buttonsClass:"")),r=t.computed(()=>e.buttons&&e.buttons.length>0&&e.buttonPosition==="inHead");function l(c,d){n.emit("click",c,d)}function s(){return r.value&&t.createVNode(an,{customClass:i.value,items:o.value,onClick:l,alignment:a.value,visible:e.buttonsVisible},null)}function u(){return t.createVNode("div",{class:i.value},[t.createVNode("div",{class:"w-100",style:"flex:1"},[e.toolbarRenderFunction()])])}return()=>e.toolbarRenderFunction?u():s()}function Hi(e,n,o,a,i,r){const l={collapseLabel:Qe.LocaleService.getRealPropertyValue(e.collapseLabel,"收起","section.collapseLabel"),expandLabel:Qe.LocaleService.getRealPropertyValue(e.expandLabel,"展开","section.expandLabel")},s=t.computed(()=>e.buttonPosition),u=Xn(e,n),{onClickMaxMinIcon:c}=qi(a,i,r),d=t.computed(()=>e.enableMaximize),f=t.computed(()=>e.enableAccordion!==""),g=t.computed(()=>{const T={"f-section-header":!0};return n.slots.header&&e.headerClass.split(" ").reduce((S,V)=>(S[V]=!0,S),T),T});function p(T){T.stopPropagation(),e.enableAccordion!==""&&(o.value=!o.value)}function m(){const T=t.computed(()=>({btn:!0,"f-btn-collapse-expand":!0,"f-btn-mx":!0,"f-state-expand":o.value})),k=t.computed(()=>({"f-icon":!0,"f-icon-maximize":!r.value,"f-icon-minimize":r.value}));return t.createVNode("div",{class:"f-max-accordion"},[d.value?t.createVNode("span",{class:k.value,onClick:c},null):"",f.value?t.createVNode("button",{class:T.value,onClick:p},[t.createVNode("span",null,[o.value?l.collapseLabel:l.expandLabel])]):""])}function h(){return t.createVNode("div",{class:"f-title"},[t.createVNode("h4",{class:"f-title-text"},[e.mainTitle]),e.subTitle&&t.createVNode("span",null,[e.subTitle])])}function b(){const T=t.computed(()=>{const k={"f-content":!0};return e.headerContentClass&&e.headerContentClass.split(" ").reduce((V,y)=>(V[y]=!0,V),k),k});return n.slots.headerContent?t.createVNode("div",{class:T.value},[n.slots.headerContent()]):e.headerContentRenderFunction?t.createVNode("div",{class:T.value},[e.headerContentRenderFunction()]):null}function I(){return n.slots.headerTitle?n.slots.headerTitle():e.headerTitleRenderFunction?e.headerTitleRenderFunction():h()}function v(){return t.createVNode("div",{class:g.value},[I(),b(),s.value==="inHead"&&u(),(d.value||f.value)&&m()])}function P(){return n.slots.header?t.createVNode("div",{class:g.value},[n.slots.header()]):e.headerRenderFunction?t.createVNode("div",{class:g.value},[e.headerRenderFunction()]):v()}return()=>e.showHeader&&P()}const zi=t.defineComponent({name:"FSection",props:zt,emits:["click"],setup(e,n){const o=t.ref(),a=t.ref(),i=t.ref(e.customClass),r=t.computed(()=>e.enableAccordion),l=t.ref(e.expandStatus),s=t.computed(()=>e.buttonPosition),u=t.ref(!1),c=Hi(e,n,l,o,a,u),d=Xn(e,n),f=t.computed(()=>{const b={"f-section":!0,"f-section-accordion":r.value==="default","f-state-collapse":(r.value==="default"||r.value==="custom")&&!l.value,"f-section-custom-accordion":r.value==="custom","f-section-fill":e.fill,"f-section-maximize":u.value};return ye.getCustomClass(b,i.value)}),g=t.computed(()=>{const b={"f-section-content":!0};return ye.getCustomClass(b,e.contentClass)}),p=t.computed(()=>{const b={"f-section-extend":!0};return ye.getCustomClass(b,e.extendClass)});function m(){return n.slots.extend&&t.createVNode("div",{class:p.value},[n.slots.extend()])}function h(){return t.createVNode("div",{class:g.value},[s.value==="inContent"&&d(),n.slots.default&&n.slots.default()])}return t.watch(()=>e.expandStatus,(b,I)=>{b!==I&&(l.value=b)}),t.onMounted(()=>{o.value&&o.value&&(a.value=o.value.parentElement)}),()=>e.visible?t.createVNode("div",{class:f.value,ref:o,style:e.customStyle},[c(),m(),h()]):null}});function _i(e,n){const o=new $n,{canAccept:a}=o.getTemplateRule(e,n);function i(u){if(!Ra().basalDragulaRuleForContainer(u,n))return!1;const{schema:d}=e;return d.contents&&d.contents.length>0?!1:a}function r(u){return null}function l(){const{schema:u,parent:c}=e;c!=null&&c.schema.activeId&&u.id===c.schema.activeId&&(c.schema.activeId="")}function s(){var u,c;if(e&&n){const{formSchemaUtils:d}=n,f=d.getControlBasicInfoMap(),{schema:g}=e;f.set(g.id,{componentTitle:g.title,parentPathName:g.title}),(c=(u=g.toolbar)==null?void 0:u.buttons)!=null&&c.length&&g.toolbar.buttons.map(p=>{var m;f.set(p.id,{componentTitle:p.text,parentPathName:`${g.title} > ${p.text}`}),(m=p.children)!=null&&m.length&&p.children.map(h=>{f.set(h.id,{componentTitle:h.text,parentPathName:`${g.title} > ${h.text}`})})})}}return{canAccepts:i,getDraggableDesignItemElement:r,onRemoveComponent:l,setComponentBasicInfoMap:s}}function Ui(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!t.isVNode(e)}const Wi=t.defineComponent({name:"FTabPageDesign",props:Fn,emits:[],setup(e,n){const o=t.ref(),a=t.inject("design-item-context"),i=t.inject("designer-host-service"),r=_i(a,i),l=Ct(o,a,r);l.value.canNested=!1,l.value.canDelete=!1,l.value.canMove=!1,n.expose(l.value);const s=t.inject("tabs"),u=t.ref(!0),c={slots:n.slots,props:e},d=t.ref((s==null?void 0:s.tabType.value)||"default");t.onMounted(()=>{o.value.componentInstance=l;const v=s.tabPages.value.findIndex(P=>P.props.id===e.id);!v||v===-1?s==null||s.addTab(c):v>-1&&(u.value=!1,console.warn(`已经存在id为${e.id}的页签啦`))}),t.onUnmounted(()=>{});const f=t.computed(()=>(e==null?void 0:e.id)===(s==null?void 0:s.activeId.value)),g=t.computed(()=>({display:f.value?"":"none"}));t.watch(()=>e,v=>{s==null||s.updateTab({props:v,slots:n.slots})},{immediate:!0,deep:!0});function p(){var P,T;const v=(T=(P=n.slots).default)==null?void 0:T.call(P);return t.createVNode(zi,{"main-title":e.title,class:"farris-tab-page"},Ui(v)?v:{default:()=>[v]})}const m=t.computed(()=>({"farris-tab-page":!0,"drag-container":!0,"farris-tab-page-active":f.value}));function h(){var P,T;const v=(T=(P=n.slots).default)==null?void 0:T.call(P);return t.createVNode("div",{ref:o,class:m.value,"data-dragref":`${a.schema.id}-container`,style:g.value},[v])}const I=new Map([["default",h],["one-page",p]]).get(d.value)||h;return()=>u.value?I():null}}),Gi=Ie({id:{type:String,default:""},items:{type:Object,default:{}},class:{type:String,default:""},text:{type:String,default:""},disabled:{type:Boolean,default:!1},icon:{type:String,default:""},componentId:{type:String,default:""},expanded:{type:Boolean,default:!1},alignment:{Type:String,default:"right"},split:{type:Boolean,default:!1},isDP:{type:Boolean,default:!1},isDPItem:{type:Boolean,default:!1}},{$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/tab-toolbar-item.schema.json",title:"tab-toolbar-item",description:"A Farris Toolbar Item Component",type:"object",properties:{id:{description:"The unique identifier for a Response Toolbar",type:"string"},type:{description:"The type string of Response Toolbar",type:"string",default:"tab-toolbar-item"},appearance:{description:"",type:"object",properties:{class:{type:"string"}},default:{}},text:{description:"按钮",type:"string",default:"按钮"},icon:{description:"图标",type:"string",default:""},disabled:{description:"禁用",type:"boolean",default:!1},visible:{description:"是否可见",type:"boolean",default:!0},onClick:{description:"点击事件",type:"string",default:""},tipsEnable:{description:"",type:"boolean",default:!1},tipsText:{description:"",type:"string",default:""},dropdownClass:{description:"处于下拉菜单时的样式",type:"string",default:""},split:{description:"",type:"boolean",default:!1}},required:["id","type","text"],events:{onClick:"点击事件"}},ht,ea);Ze.install=e=>{e.component(Ze.name,Ze),e.component(vt.name,vt)},Ze.register=(e,n,o,a)=>{e.tabs=Ze,e["tab-page"]=vt,n.tabs=ra,n["tab-page"]=ha,a.tabs={eventHandlerResolver:sa}},Ze.registerDesigner=(e,n,o)=>{e.tabs=Ei,e["tab-page"]=Wi,n.tabs=la,n["tab-page"]=ya,n["tab-toolbar-item"]=Gi,e["tab-toolbar"]=Un,n["tab-toolbar"]=ca};const Xi=new Map([["appearance",_e]]),Yi={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/search-box.schema.json",title:"search-box",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for a search-box",type:"string"},type:{description:"The type string of search-box component",type:"string",default:"search-box"},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"]};function Ji(e,n,o){return n}const Qi={title:"search-box",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:[]}}}}}},_t={buttonContent:{type:String,default:'<i class="f-icon f-icon-search"></i>'},customClass:{type:String,default:""},modelValue:{type:String,default:""},popupHost:{type:Object},popupRightBoundary:{type:Object},popupOffsetX:{type:Object},data:{type:Array,default:[]},placeholder:{type:String,default:"请输入关键词"},idField:{default:"id",type:String},textField:{default:"name",type:String},maxHeight:{default:350,type:Number},loading:{default:!1,type:Boolean},disable:{default:!1,type:Boolean},showDropdown:{default:!0,type:Boolean},updateOn:{default:"blur",type:String}},Yn=Ie(_t,Yi,Xi,Ji,Qi),Zi={data:{type:Array,default:[]},onConfirmResult:{type:Function,default:()=>{}},onSearchedValue:{type:Function,default:()=>{}},idField:{default:"id",type:String},textField:{default:"name",type:String},maxHeight:{default:350,type:Number},loading:{default:!1,type:Boolean}},Jn=t.defineComponent({name:"FSearchBoxContainer",props:Zi,emits:["confirmResult","searchedValue"],setup(e,n){const o=t.ref(e.data),a=t.ref(),{slots:i}=n,r=t.computed(()=>({"search-box-container":!0,"f-utils-overflow-xhya":!0,"position-relative":!0}));function l(d){var f;(f=a.value)==null||f.search(d)}function s(d){d.length&&(n.emit("confirmResult",d[0].name),n.emit("searchedValue",d))}function u(d){return i.default?t.createVNode(t.Fragment,null,[i.default(d)]):t.createVNode("span",null,[d.item[e.textField]])}const c=t.computed(()=>{const d={};return d.padding="8px",e.maxHeight!==void 0&&e.maxHeight>0&&(d.maxHeight=`${e.maxHeight}px`),d});return t.watch(()=>e.loading,d=>{}),t.watch(()=>e.data,d=>{d!==o.value&&(o.value=d),a.value.updateDataSource(d)}),n.expose({search:l}),()=>{const d={content:u};return t.createVNode("div",{class:r.value,style:c.value},[t.createVNode(So,{ref:"loadingInstance",isActive:e.loading},null),t.createVNode(xo,{ref:a,itemClass:"dropdown-item",data:o.value,view:"ContentView",onClickItem:f=>s(f.data),idField:e.idField,textField:e.textField,titleField:e.textField,valueField:e.idField},d)])}}}),Ge=t.defineComponent({name:"FSearchBox",props:_t,emits:["update:modelValue","change","selectedValue","clickButton"],setup(e,n){t.ref(e.data);const o=t.ref(),a=t.ref(),i=t.ref(e.placeholder),r='<i class="f-icon f-icon-clockwise f-icon-spin"></i>',l=t.computed(()=>e.loading?r:e.buttonContent);t.ref(e.editable);const s=t.ref(e.modelValue);t.watch(s,p=>{var m;(m=a.value)==null||m.search(p),n.emit("update:modelValue",p)}),t.watch(()=>e.modelValue,p=>{s.value=p});function u(p){o.value.commitValue(p)}function c(p){const m=s.value;n.emit("change",p,{oldValue:m,newValue:p})}function d(p){n.emit("selectedValue",p)}function f(p){n.emit("clickButton",p)}function g(){o.value.togglePopup()}return n.expose({togglePopup:g}),()=>{const p={default:n.slots.default};return t.createVNode(wo,{ref:o,"button-content":l.value,"custom-class":e.customClass,updateOn:e.updateOn,placeholder:i.value,onChange:m=>c(m),onClickButton:m=>f(m),disable:e.disable,"enable-clear":!0,"button-behavior":"Execute",modelValue:s.value,"onUpdate:modelValue":m=>s.value=m,"popup-host":e.popupHost,"popup-right-boundary":e.popupRightBoundary,"popup-offset-x":e.popupOffsetX,"popup-on-input":e.showDropdown,"popup-on-focus":e.showDropdown,limitContentBySpace:!0,placement:"auto"},{default:()=>[e.showDropdown&&t.createVNode(Jn,{ref:a,data:e.data,idField:e.idField,textField:e.textField,onConfirmResult:u,onSearchedValue:m=>d(m),loading:e.loading,maxHeight:e.maxHeight},p)],...n.slots})}}}),Ki=t.defineComponent({name:"FSearchBoxDesign",props:_t,emits:["update:modelValue","change"],setup(e,n){const o=t.ref(e.data),a=t.ref(),i=t.ref(),r=t.ref("请输入关键词"),l=t.ref('<i class="f-icon f-icon-search"></i>'),s=t.ref(e.modelValue),u=t.ref(),c=t.inject("design-item-context"),d=Ct(u,c);t.onMounted(()=>{u.value.componentInstance=d}),n.expose(d.value),t.watch(s,p=>{var m;(m=i.value)==null||m.search(p),n.emit("update:modelValue",p)}),t.watch(()=>e.modelValue,p=>{s.value=p});function f(p){a.value.commitValue(p)}function g(p){n.emit("change",p)}return()=>t.createVNode("div",{ref:u},[t.createVNode(t.resolveComponent("f-button-edit"),{ref:a,"button-content":l.value,placeholder:r.value,onChange:g,"enable-clear":!0,"button-behavior":"Execute",modelValue:s.value,"onUpdate:modelValue":p=>s.value=p,"popup-host":e.popupHost,"popup-right-boundary":e.popupRightBoundary,"popup-offset-x":e.popupOffsetX,"popup-on-input":!0,"popup-on-focus":!0},{default:()=>[t.createVNode(Jn,{ref:i,data:o.value,onConfirmResult:f},null)]})])}});Ge.install=e=>{e.component(Ge.name,Ge)},Ge.register=(e,n,o,a)=>{e["search-box"]=Ge,n["search-box"]=Yn},Ge.registerDesigner=(e,n,o)=>{e["search-box"]=Ki,n["search-box"]=Yn};const Qn={columns:{type:Array,default:[{field:"name",title:"",dataType:"string"}]},customClass:{type:String,default:""},data:{type:Array,default:[]},draggable:{type:Boolean,default:!1},multiSelect:{type:Boolean,default:!1},multiSelectMode:{type:String,default:"OnCheck"},idField:{type:String,default:"id"},valueField:{type:String,default:"id"},textField:{type:String,default:"name"},titleField:{type:String,default:"name"},view:{type:String,default:"ContentView"},size:{type:String,default:"default"},placeholder:{type:String,default:""},header:{type:String,default:"ContentHeader"},headerClass:{type:String,default:""},itemClass:{type:[String,Function],default:"",validator:e=>typeof e=="string"||typeof e=="function"},itemStyle:{type:[String,Function],default:"",validator:e=>typeof e=="string"||typeof e=="function"},itemContentClass:{type:String,default:""},selectionValues:{type:Array,default:[]},group:{type:Object},selection:{type:Object,default:{enableSelectRow:!0,multiSelect:!1,multiSelectMode:"DependOnCheck",showCheckbox:!1,showSelectAll:!1,showSelection:!0}},keepOrder:{type:Boolean,default:!1},disableField:{type:String,default:"disabled"},enableHighlightSearch:{type:Boolean,default:!0},virtualized:{type:Boolean,default:!0},checkBeforeRemoveItem:{type:Function,default:null},headerTemplate:{type:Object},contentTemplate:{type:Object},footerTemplate:{type:Object},emptyTemplate:{type:Object},pagination:{type:Object,default:{enable:!1,size:20}}};function er(e,n){function o(r){const l=[];let s=r.nextNode();for(;s;)l.push(s),s=r.nextNode();return l}function a(r,l){const s=document.createTreeWalker(r,NodeFilter.SHOW_TEXT);return o(s).map(f=>({textNode:f,text:(f.textContent||"").toLocaleLowerCase()})).map(({textNode:f,text:g})=>{const p=[];let m=0;for(;m<g.length;){const h=g.indexOf(l,m);if(h===-1)break;p.push(h),m=h+l.length}return p.map(h=>{const b=new Range;return b.setStart(f,h),b.setEnd(f,h+l.length),b})}).flat()}function i(r){if(!CSS.highlights||(CSS.highlights.clear(),!r||!n))return;const l=a(n.value,r.toLocaleLowerCase()),s=new Highlight(...l);CSS.highlights.set("search-result",s)}return{search:i}}function Zn(e,n,o,a,i,r,l,s,u,c){const d=t.ref(e.size),f=t.ref(e.textField),g=t.ref(e.titleField),p=t.ref(e.disableField),m=t.computed(()=>{var N,x;return((N=e.selection)==null?void 0:N.multiSelect)&&((x=e.selection)==null?void 0:x.showCheckbox)}),{onMouseenterItem:h,onMouseoverItem:b,onMouseoutItem:I}=r,{getKey:v,listViewItemClass:P,listViewItemStyle:T,onCheckItem:k,onClickItem:S}=l,V=t.computed(()=>{const N={"text-overflow":"ellipsis",overflow:"hidden","white-space":"nowrap"};return e.itemClass?N:{margin:d.value==="small"?"0.25rem 0":"8px 0",...N}});function y(N,x,w){return N.checked=s.findIndexInSelectedItems(N)>-1,t.createVNode("li",{class:P(N,x),id:v(N,x),key:v(N,x),style:T(N,x),onClick:C=>S(N,x,C),onMouseenter:C=>h(C,N,x),onMouseover:C=>b(C,N,x),onMouseout:C=>I(C,N,x)},[m.value&&t.createVNode("div",{class:"f-list-select",onClick:C=>C.stopPropagation()},[t.createVNode(Mt.FCheckbox,{id:"list-"+v(N,x),customClass:"listview-checkbox float-left",disabled:N[p.value],checked:N.checked,"onUpdate:checked":C=>N.checked=C,onChange:C=>{k(N,x,!C.checked)}},null)]),t.createVNode("div",{class:"f-list-content"},[t.createVNode("div",{class:e.itemContentClass,style:V.value,title:N.raw[g.value]||N.raw[f.value]},[N.raw[f.value]])])])}return{renderItem:y}}function tr(e,n,o,a,i,r,l,s,u,c){const d=t.ref(e.multiSelect),f=t.ref(e.disableField),g=t.ref(e.textField),{onMouseenterItem:p,onMouseoverItem:m,onMouseoutItem:h}=r,{getKey:b,listViewItemClass:I,listViewItemStyle:v,onCheckItem:P,onClickItem:T}=l;function k(V,y,N){return e.contentTemplate?t.createVNode(t.Fragment,null,[e.contentTemplate({item:V.raw,index:y,selectedItem:N})]):n.slots.content?t.createVNode(t.Fragment,null,[n.slots.content&&n.slots.content({item:V.raw,index:y,selectedItem:N})]):t.createVNode("div",{style:"margin: 10px 0;"},[V.raw[g.value||"name"]])}function S(V,y,N){return t.createVNode("li",{class:I(V,y),id:b(V,y),key:b(V,y),style:v(V,y),onClick:x=>T(V,y,x),onMouseenter:x=>p(x,V,y),onMouseover:x=>m(x,V,y),onMouseout:x=>h(x,V,y)},[d.value&&t.createVNode("div",{class:"f-list-select",onClick:x=>x.stopPropagation()},[t.createVNode(Mt.FCheckbox,{id:"list-"+b(V,y),customClass:"listview-checkbox",disabled:V[f.value]||!V.checked,checked:V.checked,"onUpdate:checked":x=>V.checked=x,onChange:x=>P(V,y,!x.checked)},null)]),t.createVNode("div",{class:"f-list-content"},[k(V,y,N)])])}return{renderItem:S}}function nr(e,n,o,a,i,r,l,s,u,c){const d=t.ref(e.multiSelect),f=t.ref(e.disableField),g=t.ref(e.textField),{onMouseenterItem:p,onMouseoverItem:m,onMouseoutItem:h}=r,{getKey:b,listViewItemClass:I,onCheckItem:v,onClickItem:P}=l,{dragstart:T,dragenter:k,dragover:S,dragend:V}=a,{removeItem:y}=u,N=t.computed(()=>({margin:d.value?"10px 0":"10px 0px 10px 14px"}));function x(j,M=""){const D=j.target;D.title=D.scrollWidth>D.clientWidth?M:""}function w(j){return t.createVNode("div",{style:N.value,onMouseenter:M=>x(M,j.raw[g.value||"name"])},[j.raw[g.value||"name"]])}function C(){return n.slots.itemContent?n.slots.itemContent:w}const F=C();function B(j,M,D){return t.createVNode("li",{class:I(j,M),id:b(j,M),key:b(j,M),onClick:$=>P(j,M,$),onMouseenter:$=>p($,j,M),onMouseover:$=>m($,j,M),onMouseout:$=>h($,j,M),draggable:"true",onDragstart:$=>T($,j,M),onDragenter:$=>k($,M),onDragend:$=>V($,j),onDragover:$=>S($)},[d.value&&t.createVNode("div",{class:"f-list-select",onClick:$=>$.stopPropagation()},[t.createVNode(Mt.FCheckbox,{id:"list-"+b(j,M),customClass:"listview-checkbox",disabled:j[f.value]||!j.checked,checked:j.checked,"onUpdate:checked":$=>j.checked=$,onChange:$=>v(j,M,!$.checked)},null)]),t.createVNode("div",{class:"f-list-content"},[F(j)]),t.createVNode("div",{class:"f-list-remove",onClick:$=>{$.stopPropagation(),y(M)}},[t.createVNode("div",{class:"f-list-remove-icon"},[t.createVNode("i",{class:"f-icon f-icon-remove_face"},null)])]),t.createVNode("div",{class:"f-list-handle"},[t.createVNode("div",null,[t.createVNode("i",{class:"f-icon f-icon-drag-vertical"},null)])])])}return{renderItem:B}}function or(e,n,o,a,i,r,l,s,u,c){var b;const d=t.ref(((b=e.group)==null?void 0:b.groupFields)||[]),{collpaseGroupIconClass:f}=i,{toggleGroupRow:g}=c;function p(I,v){v.collapse=!v.collapse,o.value=g(v.collapse?"collapse":"expand",v,o.value)}function m(I,v,P){return n.slots.group?t.createVNode(t.Fragment,null,[n.slots.content&&n.slots.group({item:I.raw,index:v,selectedItem:P})]):t.createVNode("div",{class:"f-navlookup-recentHeader",onClick:T=>p(T,I)},[t.createVNode("div",{class:"fv-grid-group-row-icon"},[t.createVNode("span",{class:f(I)},null)]),t.createVNode("div",{class:"f-navlookup-recommandLabel"},[I.raw[d.value[I.layer]]])])}function h(I,v,P){return I.layer>-1&&m(I,v,P)}return{renderItem:h}}function ar(e,n,o,a){const{dataView:i}=o,{updateSelectedItems:r}=a;function l(s){if(s>-1&&s<i.value.length){if(e!=null&&e.checkBeforeRemoveItem&&!e.checkBeforeRemoveItem(i.value[s]))return;const u=i.value.splice(s,1);r(),n.emit("removeItem",u[0])}}return{removeItem:l}}function ir(e,n,o,a,i,r,l,s,u,c){const{t:d}=Oe.useI18n(),f=t.ref(e.view),g=t.ref(e.view==="CardView"),p=t.ref({}),m=t.ref(d("listView.emptyMessage")),h=ar(e,n,a,u),b=t.computed(()=>({"f-list-view-group":!0,"f-list-view-group-multiselect":e.multiSelect,"d-flex":g.value,"flex-wrap":g.value})),I=t.computed(()=>!!o.value&&o.value.length>0),v=t.computed(()=>o.value.length===0);t.computed(()=>v.value&&!n.slots.empty);function P(){return f.value==="SingleView"?Zn:f.value==="DraggableView"?nr:(f.value==="ContentView"||f.value==="CardView")&&(e.contentTemplate||n.slots.content)?tr:Zn}const T=P(),{renderItem:k}=T(e,n,o,c,i,r,u,l,h,s),{renderItem:S}=or(e,n,o,c,i,r,u,l,h,s),V=[k,S];function y(){return o.value.filter(w=>w.visible!==!1).map((w,C)=>V[w.type](w,C,p))}function N(){return t.createVNode("div",{class:"f-list-view-emptydata",style:"margin: 0 auto;"},[t.createVNode("p",{class:"f-empty-title"},[e.emptyTemplate?e.emptyTemplate():n.slots.empty?n.slots.empty():m.value])])}function x(){return t.createVNode("ul",{class:b.value,style:"list-style: none;"},[I.value&&y(),v.value&&N()])}return{renderListArea:x}}function rr(e,n,o){function a(){return n.slots.header&&t.createVNode("div",{class:"f-list-view-header"},[n.slots.header()])}return{renderHeader:a}}function Kn(e,n,o){const a=t.ref(e.headerClass),i=t.ref(e.placeholder),r=t.ref(""),l=t.computed(()=>!r.value),s=t.computed(()=>!!r.value);function u(g){r.value=""}t.watch(r,g=>{e.enableHighlightSearch&&o.search(g),n.emit("afterSearch",g)});const c=t.computed(()=>{const g={"form-group":!0,"farris-form-group":!0};return a.value&&a.value.split(" ").reduce((m,h)=>(m[h]=!0,m),g),g});function d(g){}function f(){return t.createVNode("div",{class:"f-list-view-header",onClick:t.withModifiers(()=>d,["prevent","stop"])},[t.createVNode("div",{class:c.value},[t.createVNode("div",{class:"farris-input-wrap"},[t.createVNode("div",{class:"f-cmp-inputgroup"},[t.createVNode("div",{class:"input-group f-state-editable"},[t.withDirectives(t.createVNode("input",{class:"form-control f-utils-fill text-left","onUpdate:modelValue":g=>r.value=g,name:"input-group-value",type:"text",placeholder:i.value,autocomplete:"off"},null),[[t.vModelText,r.value]]),t.createVNode("div",{class:"input-group-append"},[s.value&&t.createVNode("span",{class:"input-group-text input-group-clear",onClick:g=>u()},[t.createVNode("i",{class:"f-icon f-icon-close-circle"},null)]),l.value&&t.createVNode("span",{class:"input-group-text"},[t.createVNode("span",{class:"f-icon f-icon-search"},null)])])])])])])])}return{renderHeader:f}}function lr(){const e=t.ref(""),n=t.ref(-1),o=t.ref(""),a=t.ref(-1),i=t.ref(!1);function r(f,g,p){a.value=p}function l(f,g,p){i.value||(a.value=p)}function s(f,g,p){a.value=-1}function u(){i.value=!0}function c(){i.value=!1}function d(){n.value=-1,e.value=""}return{activeIndex:n,focusedItemId:o,hoverIndex:a,clearActiveItem:d,onMouseenterItem:r,onMouseoverItem:l,onMouseoutItem:s,resumeHover:c,suspendHover:u}}function sr(e,n,o,a){const i=t.ref(e.idField),{dataView:r}=o,l=t.ref(-1),s=t.ref(!1),{activeIndex:u,focusedItemId:c,hoverIndex:d,resumeHover:f,suspendHover:g}=a;let p,m=0,h=0;function b(S,V){const y=S-m,N=V-h;p.style.left=parseInt(p.style.left)+y+"px",p.style.top=parseInt(p.style.top)+N+"px",m=S,h=V}function I(S){const{left:V,top:y}=S.getBoundingClientRect(),N=S.cloneNode(!0);return N.style.cssText=`
|
|
4
4
|
position:absolute;
|
|
5
5
|
left:${V}px;
|
|
6
6
|
top:${document.documentElement.scrollTop?y+document.documentElement.scrollTop:y}px;
|
|
@@ -26,4 +26,4 @@
|
|
|
26
26
|
<div class="dot dot3"></div>
|
|
27
27
|
<div class="dot dot4"></div>
|
|
28
28
|
</div>
|
|
29
|
-
</div>`,'<svg width="100%" height="100%" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" preserveAspectRatio="xMidYMid" class="lds-coffee"><defs><linearGradient id="gradient" x1="0%" x2="0%" y1="0%" y2="100%"><stop offset="10%" stop-color="black" stop-opacity="0"></stop><stop offset="100%" stop-color="white" stop-opacity="1"></stop></linearGradient><mask id="mask" maskUnits="userSpaceOnUse" x="0" y="0" width="100" height="100"><rect x="22" y="8" width="56" height="54" fill="url(#gradient)"></rect></mask><path id="steam" d="M0-4c-2.1,2.6-2.1,6.4,0,9l0,0c2.1,2.6,2.1,6.4,0,9l0,0c-2.1,2.6-2.1,6.4,0,9l0,0c2.1,2.6,2.1,6.4,0,9l0,0 c-2.1,2.6-2.1,6.4,0,9l0,0c2.1,2.6,2.1,6.4,0,9c-2.1,2.6-2.1,6.4,0,9l0,0c2.1,2.6,2.1,6.4,0,9l0,0c-2.1,2.6-2.1,6.4,0,9l0,0 c2.1,2.6,2.1,6.4,0,9l0,0c-2.1,2.6-2.1,6.4,0,9l0,0c2.1,2.6,2.1,6.4,0,9c-2.1,2.6-2.1,6.4,0,9l0,0c2.1,2.6,2.1,6.4,0,9l0,0 c-2.1,2.6-2.1,6.4,0,9h0c2.1,2.6,2.1,6.4,0,9h0c-2.1,2.6-2.1,6.4,0,9h0c2.1,2.6,2.1,6.4,0,9" stroke-width="6" stroke-linecap="round" fill="#f00" stroke="#58a8f6"></path></defs><g mask="url(#mask)"><use x="29" y="1.00876" href="#steam"><animate attributeName="y" calcMode="linear" values="4;-14" keyTimes="0;1" dur="0.5" begin="0s" repeatCount="indefinite"></animate></use><use x="47" y="-5.98248" href="#steam"><animate attributeName="y" calcMode="linear" values="0;-18" keyTimes="0;1" dur="0.25" begin="0s" repeatCount="indefinite"></animate></use><use x="64" y="-8.48686" href="#steam"><animate attributeName="y" calcMode="linear" values="-4;-22" keyTimes="0;1" dur="0.3333333333333333" begin="0s" repeatCount="indefinite"></animate></use></g><path d="M81.2,52.5l-5.2,0V49c0-1.6-1.3-3-3-3H20c-1.6,0-3,1.3-3,3v11.6C17,71.3,25.7,80,36.5,80h20.1 c7.1,0,13.3-3.8,16.7-9.5h8.3c5.2,0,9.3-4.4,9-9.6C90.2,56.1,86,52.5,81.2,52.5z M81.5,67.5h-6.8c0.8-2.2,1.3-4.5,1.3-7v-5h5.5 c3.3,0,6,2.7,6,6S84.8,67.5,81.5,67.5z" fill="#58a8f6"></path><path d="M78.8,88H19.2c-1.1,0-2-0.9-2-2s0.9-2,2-2h59.5c1.1,0,2,0.9,2,2S79.9,88,78.8,88z" fill="rgba(80.78431372549018%,94.50980392156862%,72.15686274509802%,0)"></path></svg>'],Vt=t.defineComponent({name:"FLoading",props:Cr,emits:["closed","hidden"],setup(e,n){const o=xr,a=t.ref(e.showMessage),i=t.ref(e.isActive),r=t.ref(e.message),l=t.ref(e.width),s=t.ref(e.type),u=t.ref(null),c=t.ref(null),d=t.ref(!1);let f="",g;const p=t.computed(()=>s.value&&s.value in[0,1,2]?s.value:0);t.onMounted(()=>{h()});const m=t.computed(()=>{const S={visibility:d.value?"visible":"hidden",transform:"translate(-50%,-50%)"};return e.target===document.body&&(S.position="fixed"),S});function h(){i.value&&!g&&(g=setTimeout(()=>{g=null,P(),d.value=!0},e.delay)),i.value||g&&(clearTimeout(g),g=null)}function b(S){f=S}function I(){return f}function v(S=()=>{}){i.value=!1,d.value=!1,n.emit("closed",{loadingId:f,callback:S})}function P(){const S=T();u.value&&u.value.style&&(u.value.style.zIndex=(S+1).toString()),c.value&&c.value.style&&(c.value.style.zIndex=(S+1).toString())}function T(S=1){const V=["body>.f-datagrid-settings-simple-host","body>div","body>farris-dialog>.farris-modal.show","body>.farris-modal.show","body>farris-filter-panel>.f-filter-panel-wrapper","body .f-sidebar-show>.f-sidebar-main","body>.popover.show","body>filter-row-panel>.f-datagrid-filter-panel","body>.f-section-maximize"],y=Array.from(document.body.querySelectorAll(V.join(","))).filter(x=>x).map(x=>{const{display:w,zIndex:C}=window.getComputedStyle(x);return w==="none"?0:parseInt(C,10)}).filter(x=>x);let N=Math.max(...y);return N<1040&&(N=1040),N+S}n.expose({close:v,setLoadingId:b,getLoadingId:I}),t.watch(()=>e.isActive,S=>{i.value=S,h(),S||v()});function k(S){S.stopPropagation()}return()=>t.createVNode(t.Fragment,null,[i.value&&t.createVNode("div",{ref:u,onClick:k,class:"farris-loading-backdrop loading-wait"},null),i.value&&t.createVNode("div",{ref:c,class:"farris-loading",style:m.value},[t.createVNode("div",{class:"ng-busy-default-wrapper"},[t.createVNode("div",{class:"ng-busy-default-sign"},[t.createVNode("div",{style:[{display:"inline-block"},{margin:"4px"},{width:l.value+"px"},{height:l.value+"px"}],innerHTML:o[p.value]},null),a.value&&t.createVNode("div",{class:"ng-busy-default-text",style:"margin-left:0;",innerHTML:r.value},null)])])])])}});let co=-1;const tt={};function Sr(e){const n=document.createElement("div"),o=e.target||document.body,a=!!e.targetPosition;let i="unset";if(a){const{position:s}=window.getComputedStyle(o);i=s,o.style.position=e.targetPosition}const r=Nr();co=r;const l=t.createApp({setup(){const{t:s}=Oe.useI18n(),u=t.ref(e.message);u.value==="正在加载,请稍候..."&&(u.value=s("loading.message"));const c={...e,message:u.value},d=t.ref();t.onUnmounted(()=>{a&&(o.style.position=i),n.remove()}),t.onMounted(()=>{d.value&&d.value.setLoadingId(r)});function f(g){l.unmount(),g.callback&&g.callback(),delete tt[g.loadingId]}return tt[r]=d,()=>t.createVNode(Vt,t.mergeProps({ref:d},c,{onClosed:f}),null)}});return o.style=o.style?o.style:{},o.appendChild(n),l.use(Qe.LocaleService.i18n),l.mount(n),tt[r]}function Tr(){const e=Object.keys(tt).map(n=>parseInt(n,10));return e.length?Math.max(...e):0}function Nr(){return Tr()+1}class uo{static show(n){const a={...{...wr,isActive:!0,target:document.body,targetPosition:""},...n};return Sr(a)}static close(n,o=()=>{}){const i=tt[n||co];i&&i.value.close(o)}static clearAll(){const n=Object.keys(tt);n.length&&n.forEach(o=>{const a=tt[o];a&&a.value.close()})}}Vt.install=e=>{e.component(Vt.name,Vt),e.provide("FLoadingService",uo)};const dt=t.defineComponent({name:"FSchemaSelector",props:ln,emits:["selectionChange","cancel","submit"],setup(e,n){const o=t.ref(e.viewType),a=t.ref(e.viewOptions),i=new Map([["Card",gr],["Icon",hr],["List",br]]),r=e.injectSymbolToken,l=t.ref("");t.provide("F_SCHEMA_SELECTOR_SEARCH_VALUE",l),t.provide("FLoadingService",uo);const s=t.inject(r,vr()),u=new Map([["Recent",s.getRecentlyData],["Recommand",s.getRecommandData],["Total",s.getSchemaData]]),c=t.ref(),d=t.ref(!1),f=[];function g(y){n.emit("selectionChange",y)}function p(){n.emit("selectionChange",[]),f.length&&f.map(y=>{y.clearSelection&&y.clearSelection()})}function m(){return a.value.map((y,N)=>{if(i.has(y.type)){const x=i.get(y.type),w={enableGroup:y.enableGroup||!1,groupField:y.groupField||"category",groupFormatter:y.groupFormatter||null,getData:u.get(y.dataSource),editorParams:e.editorParams,pagination:y.pagination||!1};return t.createVNode(vt,{id:y.id,title:y.title,class:"container h-100"},{default:()=>[t.createVNode(x,t.mergeProps({ref:C=>{C&&(f[N]=C)}},w,{onSelectionChange:C=>g(C)}),null)]})}})}function h(y){l.value=y}function b(){l.value=""}function I(){return t.createVNode(Ge,{showDropdown:!1,updateOn:"change",customClass:"f-schema-selector-search",placeholder:"请输入名称/编号搜索",onChange:h,onClear:b},null)}function v(){return t.createVNode(Ze,{onTabChange:p},{default:m,headerSuffix:I})}function P(){const y=s.getSchemaData,N=s.getNavigationData;return t.createVNode(yr,{ref:c,getData:y,getCategory:N,editorParams:e.editorParams},null)}function T(){n.emit("cancel")}async function k(){var y,N;if(!d.value){if(d.value=!0,o.value==="NavList"){(y=c==null?void 0:c.value)!=null&&y.validateNavListData&&((N=c==null?void 0:c.value)!=null&&N.validateNavListData())?n.emit("submit",c.value.selectedController):d.value=!1;return}if(e.validateFunction&&typeof e.validateFunction=="function"&&!await e.validateFunction()){d.value=!1;return}n.emit("submit")}}const V=new Map([["Tabs",v],["NavList",P]]).get(o.value);return()=>t.createVNode("div",{class:"f-schema-selector h-100 d-flex flex-column"},[V&&V(),e.showFooter?t.createVNode("div",{class:"modal-footer"},[t.createVNode("button",{type:"button",class:"btn btn-secondary",onClick:T},[t.createTextVNode("取消")]),t.createVNode("button",{type:"button",class:"btn btn-primary",onClick:k},[t.createTextVNode("确定")])]):""])}}),Ir={id:{type:String,default:""},buttonContent:{type:String,default:'<i class="f-icon f-icon-lookup"></i>'},buttonBehavior:{type:String,default:"Popup"},autoComplete:{type:Boolean,default:!1},customClass:{type:String,default:""},disable:{type:Boolean,default:!1},editable:{type:Boolean,default:!0},enableClear:{type:Boolean,default:!1},modelValue:{type:String,default:""},readonly:{type:Boolean,default:!1},showButtonWhenDisabled:{type:Boolean,default:!1},enableTitle:{type:Boolean,default:!1},inputType:{type:String,default:"text"},forcePlaceholder:{type:Boolean,default:!1},placeholder:{type:String,default:""},minLength:Number,maxLength:{type:Number},tabIndex:Number,popupHost:{type:Object},popupRightBoundary:{type:Object},popupOffsetX:{type:Object},popupOnInput:{type:Boolean,default:!1},popupOnFocus:{type:Boolean,default:!1},popupOnClick:{type:Boolean,default:!1},popupClass:{type:String,default:""},popupMinWidth:{type:Number,default:160},modalOptions:{type:Object,default:{}},wrapText:{type:Boolean,default:!1},multiSelect:{type:Boolean,default:!1},separator:{type:String,default:","},textAlign:{type:String,default:"left"},beforeClickButton:{type:Function,default:null},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1},beforeOpen:{type:Function,default:null},updateOn:{type:String,default:"change"},keepWidthWithReference:{type:Boolean,default:!0},placement:{type:String,default:"bottom-left"},limitContentBySpace:{type:Boolean,default:!1},beforeClose:{type:Function,default:null},beforeClosePopup:{type:Function,default:null}},Vr={popupContentPosition:{type:Object,default:{left:0,top:0}},host:{type:Object},backgroundColor:{type:String,default:""}},kr=t.defineComponent({name:"FOverlay",props:Vr,emits:["click"],setup(e,n){const o=t.ref(e.popupContentPosition),a=t.ref(e.host),i=t.computed(()=>({backgroundColor:e.backgroundColor||"",pointerEvents:"auto"}));function r(s){n.emit("click"),s.preventDefault(),s.stopPropagation()}t.computed(()=>{const s=a.value;if(s){const u=s.getBoundingClientRect(),{left:c,top:d,height:f}=u;return{left:c,top:d+f}}return o.value});const l=t.computed(()=>({}));return()=>t.createVNode(t.Teleport,{to:"body"},{default:()=>{var s,u;return[t.createVNode("div",{class:"overlay-container",onClick:c=>r(c),style:i.value},[t.createVNode("div",{style:l.value},[(u=(s=n.slots).default)==null?void 0:u.call(s)])])]}})}});function Fr(e){if(e.content&&e.content.render)return e.content.render;if(e.render&&typeof e.render=="function")return e.render}function Br(e){const n=document.createElement("div");n.style.display="contents";let o;const a=e.onClickCallback||(()=>{}),i=()=>{a(),o&&o.unmount()};return o=t.createApp({setup(){t.onUnmounted(()=>{document.body.removeChild(n)});const r=Fr(e);return()=>t.createVNode(kr,{"popup-content-position":e.popupPosition,host:e.host,onClick:i,backgroundColor:e.backgroundColor},{default:()=>[r&&r()]})}}),document.body.appendChild(n),o.mount(n),o}class Mr{static show(n){return Br(n)}}function fo(e,n){function o(){const a=e.beforeOpen||e.beforeClickButton||null;let i=Promise.resolve(!0);if(a){const r=a(n.value);if(typeof r>"u")return i;typeof r=="boolean"?i=Promise.resolve(r):i=r}return i}return{judgeCanOpen:o}}function Pr(e,n,o,a,i){const r=t.ref(e.buttonBehavior),l=t.ref(e.popupOnInput),s=t.computed(()=>({"input-group-append":!0,"append-force-show":e.showButtonWhenDisabled&&(e.readonly||e.disable)})),{judgeCanOpen:u}=fo(e,i),c=t.computed(()=>e.showButtonWhenDisabled||(!e.editable||!e.readonly)&&!e.disable),d=t.inject(An,null),f=t.ref();async function g(h){if(await u()&&c.value){const b=!!n.slots.default;if(r.value==="Modal"){const I=e.modalOptions,v=d==null?void 0:d.open({...I,render:()=>n.slots.default&&n.slots.default()});f.value=v==null?void 0:v.modalRef}r.value==="Overlay"&&Mr.show({host:document.body,backgroundColor:"rgba(0,0,0,.15)",render:()=>n.slots.default&&n.slots.default()}),b&&r.value==="Popup"&&a.togglePopup(!0),b&&l.value&&a.hidePopup(),n.emit("clickButton",{origin:h,value:e.modelValue})}}function p(h){n.emit("mouseEnterIcon",h)}function m(h){n.emit("mouseLeaveIcon",h)}return{buttonGroupClass:s,onClickButton:g,onMouseEnterButton:p,onMouseLeaveButton:m,modalRef:f}}function jr(e,n,o,a,i,r){const l=t.ref(!1),s=t.computed(()=>e.enableClear&&!e.readonly&&!e.disable),{changeTextBoxValue:u,hasClearClass:c}=r;function d(m){l.value=m,c.value=m}t.watch(i,()=>{d(!!i.value)});function f(m){const h=!e.readonly&&!e.disable&&e.editable,b=!e.editable;m.stopPropagation(),(h||b)&&(u(""),i.value="",d(!l.value),n.emit("clear"))}function g(m){if(s.value){if(!o.value){d(!1);return}!e.disable&&!e.readonly&&d(!0)}}function p(m){s.value&&d(!1)}return{enableClearButton:s,showClearButton:l,onClearValue:f,onMouseEnterTextBox:g,onMouseLeaveTextBox:p}}function $r(e,n,o,a,i){const r=t.computed(()=>e.popupOnInput),l=t.computed(()=>e.popupOnFocus),{shouldPopupContent:s,closeAllPopover:u}=i,c=t.ref(!1),d=t.computed(()=>e.enableTitle?o.value:""),f=t.computed(()=>(e.disable||e.readonly)&&!e.forcePlaceholder?"":e.placeholder),g=t.computed(()=>e.readonly||!e.editable),p=t.ref(!1),m=t.computed(()=>!e.disable&&p.value),h=t.computed(()=>({"text-left":e.textAlign==="left","text-center":e.textAlign==="center","text-right":e.textAlign==="right","form-control":!0,"f-utils-fill":!0})),b=t.computed(()=>({"input-group":!0,"f-state-disabled":e.disable,"f-state-editable":e.editable&&!e.disable&&!e.readonly,"f-state-readonly":e.readonly,"f-state-focus":m.value,"input-group--has-clear":e.enableClear&&c.value}));function I(w,C=!0){o.value=w,C&&(n.emit("change",w),n.emit("update:modelValue",w))}function v(w){s.value=!1,I(w,!0)}t.watch(()=>e.modelValue,w=>{o.value=w});function P(w){p.value=!1,n.emit("blur",w),w.stopPropagation()}function T(w){n.emit("click",w),u(),n.slots.default&&!e.disable&&!e.readonly&&e.popupOnClick&&i.togglePopup()}function k(w){!e.disable&&!e.readonly&&(p.value=!0,g.value||(n.emit("focus",w),l.value&&!s.value&&i.popup()))}function S(w){n.emit("input",w);const C=w.target.value;a.value=C,o.value!==C&&I(C,e.updateOn==="change"),r.value&&!s.value&&i.popup()}function V(w){w.target.tagName!=="INPUT"&&w.preventDefault(),w.stopPropagation()}function y(w){n.emit("keydown",w)}function N(w){w.key==="Enter"&&(r.value||l.value)&&i.hidePopup(),n.emit("keyup",w)}function x(w){const C=w.target.value;w.stopPropagation(),I(C)}return{hasFocusedTextBox:m,isTextBoxReadonly:g,textBoxClass:h,textBoxPlaceholder:f,textBoxTitle:d,inputGroupClass:b,hasClearClass:c,changeTextBoxValue:I,commitValue:v,onBlurTextBox:P,onClickTextBox:T,onFocusTextBox:k,onInput:S,onKeyDownTextBox:y,onKeyUpTextBox:N,onMouseDownTextBox:V,onTextBoxValueChange:x}}const nt="FarrisVue_PopoverInstancesKey";function Er(e,n,o,a){const i=t.ref(),r=t.ref(!1),{judgeCanOpen:l}=fo(e,a);t.watch(()=>i.value,(p,m)=>{window[nt]=window[nt]||new WeakMap,p?window[nt].set(o.value,p):window[nt].delete(o.value)});function s(){if(window[nt]){const p=window[nt];document.querySelectorAll(".f-button-edit,.v-popover").forEach(m=>{const h=p.get(m);h&&m!==o.value&&!o.value.closest(".popover-fitcontent")&&h.hide()})}}function u(){const p=i.value;p&&p.show(o.value)}async function c(p=!1){if(!!n.slots.default){if(!p&&!r.value&&!await l())return;r.value=!r.value,await t.nextTick(),u()}}async function d(p=!1){if(!!n.slots.default){if(!p&&!await l())return;r.value=!0,await t.nextTick(),u()}}function f(){r.value=!1}function g(){r.value=!0,t.nextTick(()=>{u()})}return{hidePopup:f,showPopup:g,popup:d,shouldPopupContent:r,togglePopup:c,popoverRef:i,closeAllPopover:s}}function Dr(e,n,o){const a=t.ref(),{isTextBoxReadonly:i,textBoxClass:r,textBoxPlaceholder:l,textBoxTitle:s,onBlurTextBox:u,onClickTextBox:c,onFocusTextBox:d,onInput:f,onKeyDownTextBox:g,onKeyUpTextBox:p,onMouseDownTextBox:m,onTextBoxValueChange:h}=o,b=t.ref(e.id),{uuid:I}=ye.useGuid(),v=t.computed(()=>({"border-top-right-radius":"6px","border-bottom-right-radius":"6px"}));t.onMounted(()=>{var V,y;e.selectOnCreated&&((V=a.value)==null||V.select()),e.focusOnCreated&&((y=a.value)==null||y.focus({preventScroll:!0})),b.value||(b.value="button-edit_"+I(8)),b.value=b.value+"-textbox"});const P=t.ref(!1),T=V=>{V.preventDefault(),P.value=!0},k=V=>{V.preventDefault(),P.value=!1,f(V)};function S(V){P.value||f(V)}return()=>t.createVNode("input",{id:e.id?e.id+"-textbox":void 0,ref:a,name:"input-group-value",autocomplete:e.autoComplete?"on":"off",class:r.value,style:v.value,disabled:e.disable,maxlength:e.maxLength,minlength:e.minLength,placeholder:l.value,readonly:i.value,tabindex:e.tabIndex,title:s.value,type:e.inputType,value:n.value,onBlur:u,onChange:h,onClick:c,onFocus:d,onInput:S,onKeydown:g,onKeyup:p,onMousedown:m,onCompositionend:k,onCompositionstart:T},null)}function Or(e,n,o){const a=t.ref(e.separator),i=t.computed(()=>e.readonly||e.disable),{changeTextBoxValue:r,onFocusTextBox:l,onBlurTextBox:s,onClickTextBox:u,textBoxPlaceholder:c}=o,d=t.computed(()=>n.value?n.value.split(a.value).map(m=>({name:m,selectable:!0})):[]);function f(m){r(m.map(h=>h.name).join(a.value),!0)}t.watch(()=>e.separator,m=>{a.value=m});const g=t.ref(!e.disable&&!e.readonly);t.watch([()=>e.disable,()=>e.readonly],([m,h],[b,I])=>{g.value=!m&&!h});function p(m){u(m)}return()=>t.createVNode(Co,{tabindex:e.tabIndex,onFocus:l,onBlur:s,id:`${e.id}-tag-editor`,class:"form-control",placeholder:c.value,data:d.value,showClose:!i.value,showInput:!0,disable:i.value,onChange:f,onClick:p},null)}function Rr(e,n,o,a){const{buttonGroupClass:i,onClickButton:r,onMouseEnterButton:l,onMouseLeaveButton:s}=o,{enableClearButton:u,showClearButton:c,onClearValue:d}=a,f=t.ref(),g=he.debounce(m=>{r(m)},e.buttonBehavior==="Modal"?0:200),p=()=>{n.emit("beforeClearValue")};return{renderButtonGroup:()=>t.createVNode("div",{id:e.id?`${e.id}-button-group`:void 0,class:i.value},[u.value&&t.withDirectives(t.createVNode("span",{class:"input-group-text input-group-clear",onClick:d,onMousedown:p},[t.createVNode("i",{class:"f-icon modal_close"},null)]),[[t.vShow,c.value]]),n.slots.buttonContent?t.createVNode("span",{class:"input-group-text input-group-append-button",onClick:g,onMouseenter:l,onMouseleave:s},[n.slots.buttonContent()]):e.buttonContent?t.createVNode("span",{class:"input-group-text input-group-append-button",innerHTML:e.buttonContent,ref:f,onClick:m=>g(m),onMouseenter:l,onMouseleave:s},null):null]),buttonHandleElement:f}}function Lr(e,n,o){const a=t.ref(e.popupMinWidth),{hidePopup:i,popoverRef:r}=o,l=()=>{n.emit("shown")};return()=>t.createVNode(To,{id:`${e.id}-popover`,ref:r,placement:e.placement,host:e.popupHost,"keep-width-with-reference":e.keepWidthWithReference,fitContent:!0,"right-boundary":e.popupRightBoundary,minWidth:a.value,class:e.popupClass,offsetX:e.popupOffsetX,onHidden:i,onShown:l,beforeClose:e.beforeClosePopup,limitContentBySpace:e.limitContentBySpace},{default:()=>{var s,u;return[(u=(s=n.slots).default)==null?void 0:u.call(s)]}})}const Ar=t.defineComponent({name:"FButtonEdit",props:Ir,emits:["updateExtendInfo","clear","change","click","clickButton","blur","focus","mouseEnterIcon","mouseLeaveIcon","keyup","keydown","inputClick","input","update:modelValue","beforeClearValue"],setup(e,n){const o=t.ref(),a=t.ref(e.customClass),i=t.ref(e.modelValue),r=Er(e,n,o,i),{shouldPopupContent:l,hidePopup:s,showPopup:u,togglePopup:c}=r,d=Pr(e,n,o,r,i),f=t.ref(""),g=$r(e,n,i,f,r),{hasFocusedTextBox:p,commitValue:m,inputGroupClass:h}=g,b=jr(e,n,i,p,f,g),{onMouseEnterTextBox:I,onMouseLeaveTextBox:v}=b,P=t.ref(!1),T=t.computed(()=>{const M={"f-button-edit":!0,"f-cmp-inputgroup":!0,"f-button-edit-nowrap":!e.wrapText};return a.value&&a.value.split(" ").reduce((D,$)=>(D[$]=!0,D),M),M}),k=t.computed(()=>({overflow:e.wrapText?"hidden":""})),S=t.computed(()=>({paddingLeft:"3px",backgroundColor:"#fff"}));function V(){if(!e.multiSelect||e.inputType!=="tag"||!o.value)return 0;let M=0;const D=Array.from(o.value.querySelectorAll(".farris-tag-item"));return D&&D.length&&(M=D.map($=>$.offsetTop).filter($=>$>20).length),M}const y=t.ref(V());t.onUpdated(()=>{y.value=V()});function N(){return e.multiSelect&&e.inputType==="tag"?()=>t.createVNode(t.Fragment,null,[Or(e,i,g)(),!!y.value&&t.createVNode("div",{class:"d-flex flex-row mr-2 more-tags","more-tags":!0},[t.createVNode("span",{class:"multi--more-text"},[t.createTextVNode("+"),y.value])])]):Dr(e,i,g)}let x=N();t.watch([()=>e.multiSelect,()=>e.inputType],()=>{x=N()});const{renderButtonGroup:w,buttonHandleElement:C}=Rr(e,n,d,b),F=Lr(e,n,r),B=t.ref(l.value),j={displayText:f,commitValue:m,elementRef:o,hidePopup:s,showPopup:u,popoverRef:r.popoverRef,shouldPopupContent:l,togglePopup:c,openDialog:()=>{C.value&&e.buttonBehavior==="Modal"&&C.value.click()},getModal:()=>{var M;return e.buttonBehavior==="Modal"?(M=d.modalRef.value)==null?void 0:M.value:null},getTextbox:()=>{var M;return(M=o.value)==null?void 0:M.querySelector("input")},forceClosePopup:()=>{B.value=!1,P.value=!0,l.value=!1}};return t.onMounted(()=>{o.value.componentInstance=j,window.onresize=()=>{document.body.click()}}),t.onBeforeUnmount(()=>{var M;window.onresize=null,(M=window[nt])==null||M.delete(o.value)}),n.expose(j),t.watch(()=>l.value,async(M,D)=>{if(P.value){B.value=M,P.value=!1;return}if(!M&&e.beforeClosePopup&&typeof e.beforeClosePopup=="function"){try{const $=await e.beforeClosePopup();B.value=!$,(!$||e.readonly)&&(l.value=!0)}catch($){console.error("Error in beforeClosePopup:",$),B.value=D,l.value=D}return}B.value=M}),()=>{var M,D;return t.createVNode(t.Fragment,null,[t.createVNode("div",t.mergeProps(n.attrs,{ref:o,class:T.value,id:e.id?e.id:void 0,style:k.value}),[t.createVNode("div",{id:e.id?`${e.id}-input-group`:void 0,class:h.value,style:S.value,onMouseenter:I,onMouseleave:v},[(D=(M=n.slots).precontent)==null?void 0:D.call(M),x(),w()])]),B.value&&F()])}}}),qr={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/schema-editor.schema.json",title:"schema-editor",description:"A Farris Input Component",type:"object",properties:{title:{description:"",type:"string",default:"选择数据源"},textField:{description:"",type:"string",default:"name"},viewOptions:{description:"",type:"array",default:[]},beforeOpenDialog:{description:"",type:"object",default:null},repositoryToken:{description:"",type:"object",default:null},onSchemaSelected:{description:"",type:"object",default:null},editorParams:{description:"",type:"object",default:null},onSubmitModal:{description:"",type:"object",default:null},disabled:{description:"",type:"boolean",default:!1},readonly:{description:"",type:"boolean",default:!1},modelValue:{description:"",type:"object",default:null},displayFormatter:{description:"",type:"object",default:null},modalHeight:{description:"",type:"number",default:600},modalWidth:{description:"",type:"number",default:800},requiredTip:{description:"",type:"string",default:"请选择数据源"},validateFunction:{description:"",type:"object",default:null}},required:[],ignore:[]},po={title:{type:String,default:"选择数据源"},textField:{type:String,default:"name"},viewOptions:{type:Array,default:[]},beforeOpenDialog:{type:Function,default:null},repositoryToken:{type:Symbol},onSchemaSelected:{type:Function,default:null},editorParams:{type:Object,default:null},onSubmitModal:{type:Function,default:null},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},modelValue:{type:Object,default:null},displayFormatter:{type:Function,default:null},modalHeight:{type:Number,default:600},modalWidth:{type:Number,default:800},requiredTip:{type:String,default:"请选择数据源"},validateFunction:{type:Function,default:null}},Hr=Ie(po,qr);function zr(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!t.isVNode(e)}const kt=t.defineComponent({name:"FSchemaSelectorEditor",props:po,emits:["selectionChange","update:modelValue"],setup(e,n){const o=t.inject(Pn);o.globalConfig={position:"top-center"};const a='<i class="f-icon f-icon-lookup"></i>',i=t.ref(e.viewType),r=t.ref(),l=t.ref(e.modelValue),s=t.ref(e.viewOptions),u=t.ref(e.title);function c(){let m="";r.value&&Array.isArray(r.value)&&(m=r.value.map(h=>h[e.textField]).join(",")),e.displayFormatter&&(m=e.displayFormatter(r.value)),l.value=m}t.watch(e.title,m=>{u.value=m}),t.watch(()=>e.modelValue,m=>{typeof m=="string"?l.value=m:c()});function d(m){r.value=m}function f(){return i.value==="controller"?t.createVNode(dt,{injectSymbolToken:e.repositoryToken,"view-type":"NavList"},null):t.createVNode(dt,{injectSymbolToken:e.repositoryToken,viewOptions:s.value,editorParams:e.editorParams,onSelectionChange:m=>d(m)},null)}t.onMounted(()=>{});const g={title:u.value||"选择",fitContent:!1,height:e.modalHeight||600,width:e.modalWidth||800,buttons:[{name:"cancel",text:"取消",class:"btn btn-secondary",handle:m=>!0},{name:"accept",text:"确定",class:"btn btn-primary",handle:async m=>{if(r.value&&r.value.length){if(e.validateFunction&&typeof e.validateFunction=="function"&&!await e.validateFunction(r.value[0]))return!1;if(c(),e.onSubmitModal&&typeof e.onSubmitModal=="function"){const h=await e.onSubmitModal(r.value);h&&e.onSchemaSelected&&typeof e.onSchemaSelected=="function"&&(r.value[0].metadataContent=h,e.onSchemaSelected(r.value))}else e.onSchemaSelected(r.value[0]);return!0}return o==null||o.warning(e.requiredTip||"请选择数据源"),!1}}],resizeable:!1,draggable:!0};function p(){r.value=null,e.beforeOpenDialog&&e.beforeOpenDialog({})}return()=>{let m;return t.createVNode(Ar,{modelValue:l.value,"onUpdate:modelValue":h=>l.value=h,editable:!1,disabled:e.disabled,readonly:e.readonly,inputType:"text",enableTitle:!0,enableClear:!1,buttonContent:a,buttonBehavior:"Modal",modalOptions:g,beforeOpen:p},zr(m=f())?m:{default:()=>[m]})}}}),_r={install(e){e.component(dt.name,dt),e.component(kt.name,kt)},register(e,n,o){e["schema-selector"]=kt,n["schema-selector"]=Hr}};ue.FSchemaSelector=dt,ue.FSchemaSelectorEditor=kt,ue.default=_r,ue.schemaSelectorProps=ln,Object.defineProperties(ue,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
|
29
|
+
</div>`,'<svg width="100%" height="100%" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" preserveAspectRatio="xMidYMid" class="lds-coffee"><defs><linearGradient id="gradient" x1="0%" x2="0%" y1="0%" y2="100%"><stop offset="10%" stop-color="black" stop-opacity="0"></stop><stop offset="100%" stop-color="white" stop-opacity="1"></stop></linearGradient><mask id="mask" maskUnits="userSpaceOnUse" x="0" y="0" width="100" height="100"><rect x="22" y="8" width="56" height="54" fill="url(#gradient)"></rect></mask><path id="steam" d="M0-4c-2.1,2.6-2.1,6.4,0,9l0,0c2.1,2.6,2.1,6.4,0,9l0,0c-2.1,2.6-2.1,6.4,0,9l0,0c2.1,2.6,2.1,6.4,0,9l0,0 c-2.1,2.6-2.1,6.4,0,9l0,0c2.1,2.6,2.1,6.4,0,9c-2.1,2.6-2.1,6.4,0,9l0,0c2.1,2.6,2.1,6.4,0,9l0,0c-2.1,2.6-2.1,6.4,0,9l0,0 c2.1,2.6,2.1,6.4,0,9l0,0c-2.1,2.6-2.1,6.4,0,9l0,0c2.1,2.6,2.1,6.4,0,9c-2.1,2.6-2.1,6.4,0,9l0,0c2.1,2.6,2.1,6.4,0,9l0,0 c-2.1,2.6-2.1,6.4,0,9h0c2.1,2.6,2.1,6.4,0,9h0c-2.1,2.6-2.1,6.4,0,9h0c2.1,2.6,2.1,6.4,0,9" stroke-width="6" stroke-linecap="round" fill="#f00" stroke="#58a8f6"></path></defs><g mask="url(#mask)"><use x="29" y="1.00876" href="#steam"><animate attributeName="y" calcMode="linear" values="4;-14" keyTimes="0;1" dur="0.5" begin="0s" repeatCount="indefinite"></animate></use><use x="47" y="-5.98248" href="#steam"><animate attributeName="y" calcMode="linear" values="0;-18" keyTimes="0;1" dur="0.25" begin="0s" repeatCount="indefinite"></animate></use><use x="64" y="-8.48686" href="#steam"><animate attributeName="y" calcMode="linear" values="-4;-22" keyTimes="0;1" dur="0.3333333333333333" begin="0s" repeatCount="indefinite"></animate></use></g><path d="M81.2,52.5l-5.2,0V49c0-1.6-1.3-3-3-3H20c-1.6,0-3,1.3-3,3v11.6C17,71.3,25.7,80,36.5,80h20.1 c7.1,0,13.3-3.8,16.7-9.5h8.3c5.2,0,9.3-4.4,9-9.6C90.2,56.1,86,52.5,81.2,52.5z M81.5,67.5h-6.8c0.8-2.2,1.3-4.5,1.3-7v-5h5.5 c3.3,0,6,2.7,6,6S84.8,67.5,81.5,67.5z" fill="#58a8f6"></path><path d="M78.8,88H19.2c-1.1,0-2-0.9-2-2s0.9-2,2-2h59.5c1.1,0,2,0.9,2,2S79.9,88,78.8,88z" fill="rgba(80.78431372549018%,94.50980392156862%,72.15686274509802%,0)"></path></svg>'],Vt=t.defineComponent({name:"FLoading",props:Cr,emits:["closed","hidden"],setup(e,n){const o=xr,a=t.ref(e.showMessage),i=t.ref(e.isActive),r=t.ref(e.message),l=t.ref(e.width),s=t.ref(e.type),u=t.ref(null),c=t.ref(null),d=t.ref(!1);let f="",g;const p=t.computed(()=>s.value&&s.value in[0,1,2]?s.value:0);t.onMounted(()=>{h()});const m=t.computed(()=>{const S={visibility:d.value?"visible":"hidden",transform:"translate(-50%,-50%)"};return e.target===document.body&&(S.position="fixed"),S});function h(){i.value&&!g&&(g=setTimeout(()=>{g=null,P(),d.value=!0},e.delay)),i.value||g&&(clearTimeout(g),g=null)}function b(S){f=S}function I(){return f}function v(S=()=>{}){i.value=!1,d.value=!1,n.emit("closed",{loadingId:f,callback:S})}function P(){const S=T();u.value&&u.value.style&&(u.value.style.zIndex=(S+1).toString()),c.value&&c.value.style&&(c.value.style.zIndex=(S+1).toString())}function T(S=1){const V=["body>.f-datagrid-settings-simple-host","body>div","body>farris-dialog>.farris-modal.show","body>.farris-modal.show","body>farris-filter-panel>.f-filter-panel-wrapper","body .f-sidebar-show>.f-sidebar-main","body>.popover.show","body>filter-row-panel>.f-datagrid-filter-panel","body>.f-section-maximize"],y=Array.from(document.body.querySelectorAll(V.join(","))).filter(x=>x).map(x=>{const{display:w,zIndex:C}=window.getComputedStyle(x);return w==="none"?0:parseInt(C,10)}).filter(x=>x);let N=Math.max(...y);return N<1040&&(N=1040),N+S}n.expose({close:v,setLoadingId:b,getLoadingId:I}),t.watch(()=>e.isActive,S=>{i.value=S,h(),S||v()});function k(S){S.stopPropagation()}return()=>t.createVNode(t.Fragment,null,[i.value&&t.createVNode("div",{ref:u,onClick:k,class:"farris-loading-backdrop loading-wait"},null),i.value&&t.createVNode("div",{ref:c,class:"farris-loading",style:m.value},[t.createVNode("div",{class:"ng-busy-default-wrapper"},[t.createVNode("div",{class:"ng-busy-default-sign"},[t.createVNode("div",{style:[{display:"inline-block"},{margin:"4px"},{width:l.value+"px"},{height:l.value+"px"}],innerHTML:o[p.value]},null),a.value&&t.createVNode("div",{class:"ng-busy-default-text",style:"margin-left:0;",innerHTML:r.value},null)])])])])}});let co=-1;const tt={};function Sr(e){const n=document.createElement("div"),o=e.target||document.body,a=!!e.targetPosition;let i="unset";if(a){const{position:s}=window.getComputedStyle(o);i=s,o.style.position=e.targetPosition}const r=Nr();co=r;const l=t.createApp({setup(){const{t:s}=Oe.useI18n(),u=t.ref(e.message);u.value==="正在加载,请稍候..."&&(u.value=s("loading.message"));const c={...e,message:u.value},d=t.ref();t.onUnmounted(()=>{a&&(o.style.position=i),n.remove()}),t.onMounted(()=>{d.value&&d.value.setLoadingId(r)});function f(g){l.unmount(),g.callback&&g.callback(),delete tt[g.loadingId]}return tt[r]=d,()=>t.createVNode(Vt,t.mergeProps({ref:d},c,{onClosed:f}),null)}});return o.style=o.style?o.style:{},o.appendChild(n),l.use(Qe.LocaleService.i18n),l.mount(n),tt[r]}function Tr(){const e=Object.keys(tt).map(n=>parseInt(n,10));return e.length?Math.max(...e):0}function Nr(){return Tr()+1}class uo{static show(n){const a={...{...wr,isActive:!0,target:document.body,targetPosition:""},...n};return Sr(a)}static close(n,o=()=>{}){const i=tt[n||co];i&&i.value.close(o)}static clearAll(){const n=Object.keys(tt);n.length&&n.forEach(o=>{const a=tt[o];a&&a.value.close()})}}Vt.install=e=>{e.component(Vt.name,Vt),e.provide("FLoadingService",uo)};const dt=t.defineComponent({name:"FSchemaSelector",props:ln,emits:["selectionChange","cancel","submit"],setup(e,n){const o=t.ref(e.viewType),a=t.ref(e.viewOptions),i=new Map([["Card",gr],["Icon",hr],["List",br]]),r=e.injectSymbolToken,l=t.ref("");t.provide("F_SCHEMA_SELECTOR_SEARCH_VALUE",l),t.provide("FLoadingService",uo);const s=t.inject(r,vr()),u=new Map([["Recent",s.getRecentlyData],["Recommand",s.getRecommandData],["Total",s.getSchemaData]]),c=t.ref(),d=t.ref(!1),f=[];function g(y){n.emit("selectionChange",y)}function p(){n.emit("selectionChange",[]),f.length&&f.map(y=>{y.clearSelection&&y.clearSelection()})}function m(){return a.value.map((y,N)=>{if(i.has(y.type)){const x=i.get(y.type),w={enableGroup:y.enableGroup||!1,groupField:y.groupField||"category",groupFormatter:y.groupFormatter||null,getData:u.get(y.dataSource),editorParams:e.editorParams,pagination:y.pagination||!1};return t.createVNode(vt,{id:y.id,title:y.title,class:"container h-100"},{default:()=>[t.createVNode(x,t.mergeProps({ref:C=>{C&&(f[N]=C)}},w,{onSelectionChange:C=>g(C)}),null)]})}})}function h(y){l.value=y}function b(){l.value=""}function I(){return t.createVNode(Ge,{showDropdown:!1,updateOn:"change",customClass:"f-schema-selector-search",placeholder:"请输入名称/编号搜索",onChange:h,onClear:b},null)}function v(){return t.createVNode(Ze,{onTabChange:p},{default:m,headerSuffix:I})}function P(){const y=s.getSchemaData,N=s.getNavigationData;return t.createVNode(yr,{ref:c,getData:y,getCategory:N,editorParams:e.editorParams},null)}function T(){n.emit("cancel")}async function k(){var y,N;if(!d.value){if(d.value=!0,o.value==="NavList"){(y=c==null?void 0:c.value)!=null&&y.validateNavListData&&((N=c==null?void 0:c.value)!=null&&N.validateNavListData())?n.emit("submit",c.value.selectedController):d.value=!1;return}if(e.validateFunction&&typeof e.validateFunction=="function"&&!await e.validateFunction()){d.value=!1;return}n.emit("submit")}}const V=new Map([["Tabs",v],["NavList",P]]).get(o.value);return()=>t.createVNode("div",{class:"f-schema-selector h-100 d-flex flex-column"},[V&&V(),e.showFooter?t.createVNode("div",{class:"modal-footer"},[t.createVNode("button",{type:"button",class:"btn btn-secondary",onClick:T},[t.createTextVNode("取消")]),t.createVNode("button",{type:"button",class:"btn btn-primary",onClick:k},[t.createTextVNode("确定")])]):""])}}),Ir={id:{type:String,default:""},buttonContent:{type:String,default:'<i class="f-icon f-icon-lookup"></i>'},buttonBehavior:{type:String,default:"Popup"},autoComplete:{type:Boolean,default:!1},customClass:{type:String,default:""},disable:{type:Boolean,default:!1},editable:{type:Boolean,default:!0},enableClear:{type:Boolean,default:!1},modelValue:{type:String,default:""},readonly:{type:Boolean,default:!1},showButtonWhenDisabled:{type:Boolean,default:!1},enableTitle:{type:Boolean,default:!1},inputType:{type:String,default:"text"},forcePlaceholder:{type:Boolean,default:!1},placeholder:{type:String,default:""},minLength:Number,maxLength:{type:Number},tabIndex:Number,popupHost:{type:Object},popupRightBoundary:{type:Object},popupOffsetX:{type:Object},popupOnInput:{type:Boolean,default:!1},popupOnFocus:{type:Boolean,default:!1},popupOnClick:{type:Boolean,default:!1},popupClass:{type:String,default:""},popupMinWidth:{type:Number,default:160},modalOptions:{type:Object,default:{}},wrapText:{type:Boolean,default:!1},multiSelect:{type:Boolean,default:!1},separator:{type:String,default:","},textAlign:{type:String,default:"left"},beforeClickButton:{type:Function,default:null},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1},beforeOpen:{type:Function,default:null},updateOn:{type:String,default:"change"},keepWidthWithReference:{type:Boolean,default:!0},placement:{type:String,default:"bottom-left"},limitContentBySpace:{type:Boolean,default:!1},beforeClose:{type:Function,default:null},beforeClosePopup:{type:Function,default:null}},Vr={popupContentPosition:{type:Object,default:{left:0,top:0}},host:{type:Object},backgroundColor:{type:String,default:""}},kr=t.defineComponent({name:"FOverlay",props:Vr,emits:["click"],setup(e,n){const o=t.ref(e.popupContentPosition),a=t.ref(e.host),i=t.computed(()=>({backgroundColor:e.backgroundColor||"",pointerEvents:"auto"}));function r(s){n.emit("click"),s.preventDefault(),s.stopPropagation()}t.computed(()=>{const s=a.value;if(s){const u=s.getBoundingClientRect(),{left:c,top:d,height:f}=u;return{left:c,top:d+f}}return o.value});const l=t.computed(()=>({}));return()=>t.createVNode(t.Teleport,{to:"body"},{default:()=>{var s,u;return[t.createVNode("div",{class:"overlay-container",onClick:c=>r(c),style:i.value},[t.createVNode("div",{style:l.value},[(u=(s=n.slots).default)==null?void 0:u.call(s)])])]}})}});function Fr(e){if(e.content&&e.content.render)return e.content.render;if(e.render&&typeof e.render=="function")return e.render}function Br(e){const n=document.createElement("div");n.style.display="contents";let o;const a=e.onClickCallback||(()=>{}),i=()=>{a(),o&&o.unmount()};return o=t.createApp({setup(){t.onUnmounted(()=>{document.body.removeChild(n)});const r=Fr(e);return()=>t.createVNode(kr,{"popup-content-position":e.popupPosition,host:e.host,onClick:i,backgroundColor:e.backgroundColor},{default:()=>[r&&r()]})}}),document.body.appendChild(n),o.mount(n),o}class Mr{static show(n){return Br(n)}}function fo(e,n){function o(){const a=e.beforeOpen||e.beforeClickButton||null;let i=Promise.resolve(!0);if(a){const r=a(n.value);if(typeof r>"u")return i;typeof r=="boolean"?i=Promise.resolve(r):i=r}return i}return{judgeCanOpen:o}}function Pr(e,n,o,a,i){const r=t.ref(e.buttonBehavior),l=t.ref(e.popupOnInput),s=t.computed(()=>({"input-group-append":!0,"append-force-show":e.showButtonWhenDisabled&&(e.readonly||e.disable)})),{judgeCanOpen:u}=fo(e,i),c=t.computed(()=>e.showButtonWhenDisabled||(!e.editable||!e.readonly)&&!e.disable),d=t.inject(An,null),f=t.ref();async function g(h){if(await u()&&c.value){const b=!!n.slots.default;if(r.value==="Modal"){const I=e.modalOptions,v=d==null?void 0:d.open({...I,render:()=>n.slots.default&&n.slots.default()});f.value=v==null?void 0:v.modalRef}r.value==="Overlay"&&Mr.show({host:document.body,backgroundColor:"rgba(0,0,0,.15)",render:()=>n.slots.default&&n.slots.default()}),b&&r.value==="Popup"&&a.togglePopup(!0),b&&l.value&&a.hidePopup(),n.emit("clickButton",{origin:h,value:e.modelValue})}}function p(h){n.emit("mouseEnterIcon",h)}function m(h){n.emit("mouseLeaveIcon",h)}return{buttonGroupClass:s,onClickButton:g,onMouseEnterButton:p,onMouseLeaveButton:m,modalRef:f}}function jr(e,n,o,a,i,r){const l=t.ref(!1),s=t.computed(()=>e.enableClear&&!e.readonly&&!e.disable),{changeTextBoxValue:u,hasClearClass:c}=r;function d(m){l.value=m,c.value=m}t.watch(i,()=>{d(!!i.value)});function f(m){const h=!e.readonly&&!e.disable&&e.editable,b=!e.editable;m.stopPropagation(),(h||b)&&(u(""),i.value="",d(!l.value),n.emit("clear"))}function g(m){if(s.value){if(!o.value){d(!1);return}!e.disable&&!e.readonly&&d(!0)}}function p(m){s.value&&d(!1)}return{enableClearButton:s,showClearButton:l,onClearValue:f,onMouseEnterTextBox:g,onMouseLeaveTextBox:p}}function $r(e,n,o,a,i){const r=t.computed(()=>e.popupOnInput),l=t.computed(()=>e.popupOnFocus),{shouldPopupContent:s,closeAllPopover:u}=i,c=t.ref(!1),d=t.computed(()=>e.enableTitle?o.value:""),f=t.computed(()=>(e.disable||e.readonly)&&!e.forcePlaceholder?"":e.placeholder),g=t.computed(()=>e.readonly||!e.editable),p=t.ref(!1),m=t.computed(()=>!e.disable&&p.value),h=t.computed(()=>({"text-left":e.textAlign==="left","text-center":e.textAlign==="center","text-right":e.textAlign==="right","form-control":!0,"f-utils-fill":!0})),b=t.computed(()=>({"input-group":!0,"f-state-disabled":e.disable,"f-state-editable":e.editable&&!e.disable&&!e.readonly,"f-state-readonly":e.readonly,"f-state-focus":m.value,"input-group--has-clear":e.enableClear&&c.value}));function I(w,C=!0){o.value=w,C&&(n.emit("change",w),n.emit("update:modelValue",w))}function v(w){s.value=!1,I(w,!0)}t.watch(()=>e.modelValue,w=>{o.value=w});function P(w){p.value=!1,n.emit("blur",w),w.stopPropagation()}function T(w){n.emit("click",w),u(),n.slots.default&&!e.disable&&!e.readonly&&e.popupOnClick&&i.togglePopup()}function k(w){!e.disable&&!e.readonly&&(p.value=!0,g.value||(n.emit("focus",w),l.value&&!s.value&&i.popup()))}function S(w){n.emit("input",w);const C=w.target.value;a.value=C,o.value!==C&&I(C,e.updateOn==="change"),r.value&&!s.value&&i.popup()}function V(w){w.target.tagName!=="INPUT"&&w.preventDefault(),w.stopPropagation()}function y(w){n.emit("keydown",w)}function N(w){w.key==="Enter"&&(r.value||l.value)&&i.hidePopup(),n.emit("keyup",w)}function x(w){const C=w.target.value;w.stopPropagation(),I(C)}return{hasFocusedTextBox:m,isTextBoxReadonly:g,textBoxClass:h,textBoxPlaceholder:f,textBoxTitle:d,inputGroupClass:b,hasClearClass:c,changeTextBoxValue:I,commitValue:v,onBlurTextBox:P,onClickTextBox:T,onFocusTextBox:k,onInput:S,onKeyDownTextBox:y,onKeyUpTextBox:N,onMouseDownTextBox:V,onTextBoxValueChange:x}}const nt="FarrisVue_PopoverInstancesKey";function Er(e,n,o,a){const i=t.ref(),r=t.ref(!1),{judgeCanOpen:l}=fo(e,a);t.watch(()=>i.value,(p,m)=>{window[nt]=window[nt]||new WeakMap,p?window[nt].set(o.value,p):window[nt].delete(o.value)});function s(){if(window[nt]){const p=window[nt];document.querySelectorAll(".f-button-edit,.v-popover").forEach(m=>{const h=p.get(m);h&&m!==o.value&&!o.value.closest(".popover-fitcontent")&&h.hide()})}}function u(){const p=i.value;p&&p.show(o.value)}async function c(p=!1){if(!!n.slots.default){if(!p&&!r.value&&!await l())return;r.value=!r.value,r.value&&(await t.nextTick(),u())}}async function d(p=!1){if(!!n.slots.default){if(!p&&!await l())return;r.value=!0,await t.nextTick(),u()}}function f(){r.value=!1}function g(){r.value=!0,t.nextTick(()=>{u()})}return{hidePopup:f,showPopup:g,popup:d,shouldPopupContent:r,togglePopup:c,popoverRef:i,closeAllPopover:s}}function Dr(e,n,o){const a=t.ref(),{isTextBoxReadonly:i,textBoxClass:r,textBoxPlaceholder:l,textBoxTitle:s,onBlurTextBox:u,onClickTextBox:c,onFocusTextBox:d,onInput:f,onKeyDownTextBox:g,onKeyUpTextBox:p,onMouseDownTextBox:m,onTextBoxValueChange:h}=o,b=t.ref(e.id),{uuid:I}=ye.useGuid(),v=t.computed(()=>({"border-top-right-radius":"6px","border-bottom-right-radius":"6px"}));t.onMounted(()=>{var V,y;e.selectOnCreated&&((V=a.value)==null||V.select()),e.focusOnCreated&&((y=a.value)==null||y.focus({preventScroll:!0})),b.value||(b.value="button-edit_"+I(8)),b.value=b.value+"-textbox"});const P=t.ref(!1),T=V=>{V.preventDefault(),P.value=!0},k=V=>{V.preventDefault(),P.value=!1,f(V)};function S(V){P.value||f(V)}return()=>t.createVNode("input",{id:e.id?e.id+"-textbox":void 0,ref:a,name:"input-group-value",autocomplete:e.autoComplete?"on":"off",class:r.value,style:v.value,disabled:e.disable,maxlength:e.maxLength,minlength:e.minLength,placeholder:l.value,readonly:i.value,tabindex:e.tabIndex,title:s.value,type:e.inputType,value:n.value,onBlur:u,onChange:h,onClick:c,onFocus:d,onInput:S,onKeydown:g,onKeyup:p,onMousedown:m,onCompositionend:k,onCompositionstart:T},null)}function Or(e,n,o){const a=t.ref(e.separator),i=t.computed(()=>e.readonly||e.disable),{changeTextBoxValue:r,onFocusTextBox:l,onBlurTextBox:s,onClickTextBox:u,textBoxPlaceholder:c}=o,d=t.computed(()=>n.value?n.value.split(a.value).map(m=>({name:m,selectable:!0})):[]);function f(m){r(m.map(h=>h.name).join(a.value),!0)}t.watch(()=>e.separator,m=>{a.value=m});const g=t.ref(!e.disable&&!e.readonly);t.watch([()=>e.disable,()=>e.readonly],([m,h],[b,I])=>{g.value=!m&&!h});function p(m){u(m)}return()=>t.createVNode(Co,{tabindex:e.tabIndex,onFocus:l,onBlur:s,id:`${e.id}-tag-editor`,class:"form-control",placeholder:c.value,data:d.value,showClose:!i.value,showInput:!0,disable:i.value,onChange:f,onClick:p},null)}function Rr(e,n,o,a){const{buttonGroupClass:i,onClickButton:r,onMouseEnterButton:l,onMouseLeaveButton:s}=o,{enableClearButton:u,showClearButton:c,onClearValue:d}=a,f=t.ref(),g=he.debounce(m=>{r(m)},e.buttonBehavior==="Modal"?0:200),p=()=>{n.emit("beforeClearValue")};return{renderButtonGroup:()=>t.createVNode("div",{id:e.id?`${e.id}-button-group`:void 0,class:i.value},[u.value&&t.withDirectives(t.createVNode("span",{class:"input-group-text input-group-clear",onClick:d,onMousedown:p},[t.createVNode("i",{class:"f-icon modal_close"},null)]),[[t.vShow,c.value]]),n.slots.buttonContent?t.createVNode("span",{class:"input-group-text input-group-append-button",onClick:g,onMouseenter:l,onMouseleave:s},[n.slots.buttonContent()]):e.buttonContent?t.createVNode("span",{class:"input-group-text input-group-append-button",innerHTML:e.buttonContent,ref:f,onClick:m=>g(m),onMouseenter:l,onMouseleave:s},null):null]),buttonHandleElement:f}}function Lr(e,n,o){const a=t.ref(e.popupMinWidth),{hidePopup:i,popoverRef:r}=o,l=()=>{n.emit("shown")};return()=>t.createVNode(To,{id:`${e.id}-popover`,ref:r,placement:e.placement,host:e.popupHost,"keep-width-with-reference":e.keepWidthWithReference,fitContent:!0,"right-boundary":e.popupRightBoundary,minWidth:a.value,class:e.popupClass,offsetX:e.popupOffsetX,onHidden:i,onShown:l,beforeClose:e.beforeClosePopup,limitContentBySpace:e.limitContentBySpace},{default:()=>{var s,u;return[(u=(s=n.slots).default)==null?void 0:u.call(s)]}})}const Ar=t.defineComponent({name:"FButtonEdit",props:Ir,emits:["updateExtendInfo","clear","change","click","clickButton","blur","focus","mouseEnterIcon","mouseLeaveIcon","keyup","keydown","inputClick","input","update:modelValue","beforeClearValue"],setup(e,n){const o=t.ref(),a=t.ref(e.customClass),i=t.ref(e.modelValue),r=Er(e,n,o,i),{shouldPopupContent:l,hidePopup:s,showPopup:u,togglePopup:c}=r,d=Pr(e,n,o,r,i),f=t.ref(""),g=$r(e,n,i,f,r),{hasFocusedTextBox:p,commitValue:m,inputGroupClass:h}=g,b=jr(e,n,i,p,f,g),{onMouseEnterTextBox:I,onMouseLeaveTextBox:v}=b,P=t.ref(!1),T=t.computed(()=>{const M={"f-button-edit":!0,"f-cmp-inputgroup":!0,"f-button-edit-nowrap":!e.wrapText};return a.value&&a.value.split(" ").reduce((D,$)=>(D[$]=!0,D),M),M}),k=t.computed(()=>({overflow:e.wrapText?"hidden":""})),S=t.computed(()=>({paddingLeft:"3px",backgroundColor:"#fff"}));function V(){if(!e.multiSelect||e.inputType!=="tag"||!o.value)return 0;let M=0;const D=Array.from(o.value.querySelectorAll(".farris-tag-item"));return D&&D.length&&(M=D.map($=>$.offsetTop).filter($=>$>20).length),M}const y=t.ref(V());t.onUpdated(()=>{y.value=V()});function N(){return e.multiSelect&&e.inputType==="tag"?()=>t.createVNode(t.Fragment,null,[Or(e,i,g)(),!!y.value&&t.createVNode("div",{class:"d-flex flex-row mr-2 more-tags","more-tags":!0},[t.createVNode("span",{class:"multi--more-text"},[t.createTextVNode("+"),y.value])])]):Dr(e,i,g)}let x=N();t.watch([()=>e.multiSelect,()=>e.inputType],()=>{x=N()});const{renderButtonGroup:w,buttonHandleElement:C}=Rr(e,n,d,b),F=Lr(e,n,r),B=t.ref(l.value),j={displayText:f,commitValue:m,elementRef:o,hidePopup:s,showPopup:u,popoverRef:r.popoverRef,shouldPopupContent:l,togglePopup:c,openDialog:()=>{C.value&&e.buttonBehavior==="Modal"&&C.value.click()},getModal:()=>{var M;return e.buttonBehavior==="Modal"?(M=d.modalRef.value)==null?void 0:M.value:null},getTextbox:()=>{var M;return(M=o.value)==null?void 0:M.querySelector("input")},forceClosePopup:()=>{B.value=!1,P.value=!0,l.value=!1}};return t.onMounted(()=>{o.value.componentInstance=j,window.onresize=()=>{document.body.click()}}),t.onBeforeUnmount(()=>{var M;window.onresize=null,(M=window[nt])==null||M.delete(o.value)}),n.expose(j),t.watch(()=>l.value,async(M,D)=>{if(P.value){B.value=M,P.value=!1;return}if(!M&&e.beforeClosePopup&&typeof e.beforeClosePopup=="function"){try{const $=await e.beforeClosePopup();B.value=!$,(!$||e.readonly)&&(l.value=!0)}catch($){console.error("Error in beforeClosePopup:",$),B.value=D,l.value=D}return}B.value=M}),()=>{var M,D;return t.createVNode(t.Fragment,null,[t.createVNode("div",t.mergeProps(n.attrs,{ref:o,class:T.value,id:e.id?e.id:void 0,style:k.value}),[t.createVNode("div",{id:e.id?`${e.id}-input-group`:void 0,class:h.value,style:S.value,onMouseenter:I,onMouseleave:v},[(D=(M=n.slots).precontent)==null?void 0:D.call(M),x(),w()])]),B.value&&F()])}}}),qr={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/schema-editor.schema.json",title:"schema-editor",description:"A Farris Input Component",type:"object",properties:{title:{description:"",type:"string",default:"选择数据源"},textField:{description:"",type:"string",default:"name"},viewOptions:{description:"",type:"array",default:[]},beforeOpenDialog:{description:"",type:"object",default:null},repositoryToken:{description:"",type:"object",default:null},onSchemaSelected:{description:"",type:"object",default:null},editorParams:{description:"",type:"object",default:null},onSubmitModal:{description:"",type:"object",default:null},disabled:{description:"",type:"boolean",default:!1},readonly:{description:"",type:"boolean",default:!1},modelValue:{description:"",type:"object",default:null},displayFormatter:{description:"",type:"object",default:null},modalHeight:{description:"",type:"number",default:600},modalWidth:{description:"",type:"number",default:800},requiredTip:{description:"",type:"string",default:"请选择数据源"},validateFunction:{description:"",type:"object",default:null}},required:[],ignore:[]},po={title:{type:String,default:"选择数据源"},textField:{type:String,default:"name"},viewOptions:{type:Array,default:[]},beforeOpenDialog:{type:Function,default:null},repositoryToken:{type:Symbol},onSchemaSelected:{type:Function,default:null},editorParams:{type:Object,default:null},onSubmitModal:{type:Function,default:null},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},modelValue:{type:Object,default:null},displayFormatter:{type:Function,default:null},modalHeight:{type:Number,default:600},modalWidth:{type:Number,default:800},requiredTip:{type:String,default:"请选择数据源"},validateFunction:{type:Function,default:null}},Hr=Ie(po,qr);function zr(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!t.isVNode(e)}const kt=t.defineComponent({name:"FSchemaSelectorEditor",props:po,emits:["selectionChange","update:modelValue"],setup(e,n){const o=t.inject(Pn);o.globalConfig={position:"top-center"};const a='<i class="f-icon f-icon-lookup"></i>',i=t.ref(e.viewType),r=t.ref(),l=t.ref(e.modelValue),s=t.ref(e.viewOptions),u=t.ref(e.title);function c(){let m="";r.value&&Array.isArray(r.value)&&(m=r.value.map(h=>h[e.textField]).join(",")),e.displayFormatter&&(m=e.displayFormatter(r.value)),l.value=m}t.watch(e.title,m=>{u.value=m}),t.watch(()=>e.modelValue,m=>{typeof m=="string"?l.value=m:c()});function d(m){r.value=m}function f(){return i.value==="controller"?t.createVNode(dt,{injectSymbolToken:e.repositoryToken,"view-type":"NavList"},null):t.createVNode(dt,{injectSymbolToken:e.repositoryToken,viewOptions:s.value,editorParams:e.editorParams,onSelectionChange:m=>d(m)},null)}t.onMounted(()=>{});const g={title:u.value||"选择",fitContent:!1,height:e.modalHeight||600,width:e.modalWidth||800,buttons:[{name:"cancel",text:"取消",class:"btn btn-secondary",handle:m=>!0},{name:"accept",text:"确定",class:"btn btn-primary",handle:async m=>{if(r.value&&r.value.length){if(e.validateFunction&&typeof e.validateFunction=="function"&&!await e.validateFunction(r.value[0]))return!1;if(c(),e.onSubmitModal&&typeof e.onSubmitModal=="function"){const h=await e.onSubmitModal(r.value);h&&e.onSchemaSelected&&typeof e.onSchemaSelected=="function"&&(r.value[0].metadataContent=h,e.onSchemaSelected(r.value))}else e.onSchemaSelected(r.value[0]);return!0}return o==null||o.warning(e.requiredTip||"请选择数据源"),!1}}],resizeable:!1,draggable:!0};function p(){r.value=null,e.beforeOpenDialog&&e.beforeOpenDialog({})}return()=>{let m;return t.createVNode(Ar,{modelValue:l.value,"onUpdate:modelValue":h=>l.value=h,editable:!1,disabled:e.disabled,readonly:e.readonly,inputType:"text",enableTitle:!0,enableClear:!1,buttonContent:a,buttonBehavior:"Modal",modalOptions:g,beforeOpen:p},zr(m=f())?m:{default:()=>[m]})}}}),_r={install(e){e.component(dt.name,dt),e.component(kt.name,kt)},register(e,n,o){e["schema-selector"]=kt,n["schema-selector"]=Hr}};ue.FSchemaSelector=dt,ue.FSchemaSelectorEditor=kt,ue.default=_r,ue.schemaSelectorProps=ln,Object.defineProperties(ue,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|