@farris/ui-vue
Version:
Farris Vue, a Farris Design based Vue3 component library.
1 lines • 296 kB
JavaScript
(function(ce,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):(ce=typeof globalThis<"u"?globalThis:ce||self,t(ce["schema-selector"]={},ce.Vue,ce.LodashES,ce.common,ce.FCapsule,ce.vueI18n,ce.FResponseToolbar,ce.dynamicResolver,ce.FSection$1,ce.locale,ce.VueUseCore,ce.dataView,ce.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,ce.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,ce.FButtonEdit$1,ce.FListView$1,ce.FLoading$1,ce.checkbox,ce.FPopover))})(this,function(ce,t,ye,he,Co,De,ln,Ye,wo,Je,xo,Z,sn,sl,cl,ul,dl,fl,pl,ml,gl,hl,yl,bl,vl,Cl,wl,xl,Sl,Tl,Nl,Vl,Il,kl,Fl,Bl,Ml,jl,Pl,$l,El,Dl,Ol,Rl,Ll,Al,ql,Hl,zl,_l,Wl,Ul,Gl,Xl,Yl,Jl,Ql,Zl,Kl,es,So,ts,ns,os,as,is,rs,ls,ss,cs,us,ds,fs,ps,ms,gs,hs,ys,bs,vs,Cs,ws,xs,Ss,Ts,Ns,Vs,To,No,Vo,jt,Io){"use strict";var rl=Object.defineProperty;var ll=(ce,t,ye)=>t in ce?rl(ce,t,{enumerable:!0,configurable:!0,writable:!0,value:ye}):ce[t]=ye;var fe=(ce,t,ye)=>ll(ce,typeof t!="symbol"?t+"":t,ye);const cn={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 un(e,n){let o;function a(f){const{properties:g,title:p,ignore:m}=f,h=m&&Array.isArray(m),S=Object.keys(g).reduce((I,w)=>((!h||!m.find(M=>M===w))&&(I[w]=g[w].type==="object"&&g[w].properties?a(g[w]):ye.cloneDeep(g[w].default)),I),{});if(p&&(!h||!m.find(I=>I==="id"))){const I=p.toLowerCase().replace(/-/g,"_");S.id=`${I}_${Math.random().toString().slice(2,6)}`}return S}function i(f){const{properties:g,title:p,required:m}=f;if(m&&Array.isArray(m)){const h=m.reduce((S,I)=>(S[I]=g[I].type==="object"&&g[I].properties?a(g[I]):ye.cloneDeep(g[I].default),S),{});if(p&&m.find(S=>S==="id")){const S=p.toLowerCase().replace(/-/g,"_");h.id=`${S}_${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 S=n[f];return h=S?S({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]&&ye.isPlainObject(m[h])&&ye.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 S=g.get(h);if(typeof S=="string")m[S]=f[h];else{const I=S(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),S=((p=f.editor)==null?void 0:p.type)||"";if(S){const I=e[S],w=l(f.editor,I);h.editor=w}return h}return f}function d(f){o=f}return{getSchemaByType:r,resolveSchemaWithDefaultValue:c,resolveSchemaToProps:u,mappingSchemaToProps:s,setDesignerContext:d}}const dn={},fn={},{getSchemaByType:pn,resolveSchemaWithDefaultValue:ko,resolveSchemaToProps:Fo,mappingSchemaToProps:Bo,setDesignerContext:Is}=un(dn,fn);function Mo(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(M=>s(M,d));return g?!I.includes(!1):I.includes(!0)}return{parseValueSchema:u}}const jo={convertTo:(e,n,o,a)=>{e.appearance||(e.appearance={}),e.appearance[n]=o},convertFrom:(e,n,o)=>e.appearance?e.appearance[n]:e[n]},Po={convertFrom:(e,n,o)=>e.buttons&&e.buttons.length?`共 ${e.buttons.length} 项`:"无"},$o={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:"多语输入框"}},Eo={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}},Do={convertTo:(e,n,o,a)=>{e[n]=e[n]},convertFrom:(e,n,o)=>e.editor?o.getRealEditorType(e.editor.type):""},Oo={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==="tempDateFormat")return e.formatter.dateFormat==="yyyy年MM月dd日"?"yearMonthDay":e.formatter.dateFormat==="yyyy-MM-dd HH:mm:ss"?"yyyy-MM-ddTHH:mm:ss":e.formatter.dateFormat==="yyyy/MM/dd HH:mm:ss"?"yyyy/MM/ddTHH:mm:ss":e.formatter.dateFormat==="yyyy年MM月dd日 HH时mm分ss秒"?"yearMonthDayHourMinuteSecond":e.formatter.tempDateFormat||e.formatter.dateFormat||"yyyy-MM-dd";if(n==="customFormat")return e.formatter.customFormat;if(n==="type")return e.formatter.type||"none"}return"none"}},Ro={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:""},Lo={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""}},Ao={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:""},qo={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}}},Ho={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}}},zo={convertTo:(e,n,o,a)=>{e.pagination||(e.pagination={}),e.pagination[n]=o},convertFrom:(e,n,o)=>e.pagination?e.pagination[n]:e[n]},_o={convertTo:(e,n,o,a)=>{e.rowNumber||(e.rowNumber={}),e.rowNumber[n]=o},convertFrom:(e,n,o)=>e.rowNumber?e.rowNumber[n]:e[n]},Wo={convertTo:(e,n,o,a)=>{e.selection||(e.selection={}),e.selection[n]=o},convertFrom:(e,n,o)=>e.selection?e.selection[n]:e[n]},Uo={convertFrom:(e,n,o)=>e[n]&&e[n].length?`共 ${e[n].length} 项`:""},Go={convertFrom:(e,n)=>e[n]||"",convertTo:(e,n,o)=>{e[n]=o}},Xo={convertTo:(e,n,o,a)=>{e.size||(e.size={}),e.size[n]=o},convertFrom:(e,n,o)=>e.size?e.size[n]:e[n]},Yo={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}},Jo={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)}},Qo={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"}},Zo={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 mn(e,n,o){const a=new Map([["/converter/appearance.converter",jo],["/converter/buttons.converter",Po],["/converter/property-editor.converter",$o],["/converter/items-count.converter",Uo],["/converter/type.converter",Eo],["/converter/change-editor.converter",Do],["/converter/change-formatter.converter",Oo],["/converter/column-command.converter",Ro],["/converter/column-option.converter",Lo],["/converter/summary.converter",Ao],["/converter/group.converter",qo],["/converter/form-group-label.converter",Go],["/converter/field-selector.converter",Ho],["/converter/pagination.converter",zo],["/converter/row-number.converter",_o],["/converter/grid-selection.converter",Wo],["/converter/size.converter",Xo],["/converter/change-formatter-enum.converter",Yo],["/converter/grid-sort.converter",Jo],["/converter/grid-filter.converter",Qo],["/converter/row-option.converter",Zo]]),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=Mo();function l(m,h){return()=>r.parseValueSchema(m,h)}function s(m,h,S){return m.includes("visible")&&h.visible!==void 0?typeof h.visible=="boolean"?()=>!!h.visible:h.visible===void 0?!0:l(h.visible,S):()=>!0}function u(m,h,S){return m.includes("readonly")&&h.readonly!==void 0?typeof h.readonly=="boolean"?()=>!!h.readonly:l(h.readonly,S):()=>!1}function c(m,h){const S=m.$converter||h;return typeof S=="string"&&S&&a.has(S)?a.get(S)||null:S||null}function d(m,h,S,I,w,M="",v=""){return Object.keys(m).map(C=>{const F=t.ref(1),y=C,b=m[C],V=Object.keys(b),x=b.title,N=b.type,k=i.get(N)||{type:"input-group",enableClear:!1},B=b.editor?Object.assign({},k,b.editor):Object.assign({},k),j=s(V,b,h),P=u(V,b,h);B.readonly=B.readonly===void 0?P():B.readonly;const D=b.type==="cascade"?d(b.properties,h,S,I,w,M,v):[],$=!0;let O=c(b,v);const A=t.computed({get(){if(F.value){if(["class","style"].find(ge=>ge===y)&&!O&&(O=a.get("/converter/appearance.converter")||null),O&&O.convertFrom)return O.convertFrom(S,C,w,M);const ue=S[C];return Object.prototype.hasOwnProperty.call(b,"defaultValue")&&(ue===void 0||typeof ue=="string"&&ue==="")?b.type==="boolean"?b.defaultValue:b.defaultValue||"":ue}return null},set(ue){F.value+=1,O&&O.convertTo?(O.convertTo(I,C,ue,w,M),O.convertTo(S,C,ue,w,M)):(I[C]=ue,S[C]=ue)}}),{refreshPanelAfterChanged:L,description:Q,isExpand:ne,parentPropertyID:ae}=b,J={propertyID:y,propertyName:x,propertyType:N,propertyValue:A,editor:B,visible:j,readonly:P,cascadeConfig:D,hideCascadeTitle:$,refreshPanelAfterChanged:L,description:Q,isExpand:ne,parentPropertyID:ae};return h[y]=J,J})}function f(m,h,S={}){const I={},w=e[m];return w&&w.categories?Object.keys(w.categories).map(v=>{const T=w.categories[v],C=T==null?void 0:T.title,F=d(T.properties||{},I,{},S,h);return{categoryId:v,categoryName:C,properties:F}}):[]}function g(m,h,S,I,w=""){const M=h.$ref.schema,v=h.$ref.converter,T=S[M],C=T.type,F=o(T),y={},b=e[C];if(b&&b.categories){const V=b.categories[m],x=V==null?void 0:V.title;v&&Object.keys(V.properties).forEach(B=>{V.properties[B].$converter=v});const N=(V==null?void 0:V.properties)||{},k=d(N,y,F,T,I,w);return{categoryId:m,categoryName:x,properties:k}}return{categoryId:m,categoryName:"",properties:[]}}function p(m,h,S,I,w){const M=m.type,v=o(m),T={};let C=w||e[M];if(C&&Object.keys(C).length===0&&S&&S.getPropConfig&&(C=S.getPropConfig(I)),C&&C.categories){const F=[];return Object.keys(C.categories).map(y=>{const b=C.categories[y];if(b.$ref){F.push(g(y,b,m,h,I));return}const V=b==null?void 0:b.title,x=b==null?void 0:b.tabId,N=b==null?void 0:b.tabName,k=b==null?void 0:b.hide,B=b==null?void 0:b.hideTitle,j=d(b.properties||{},T,v,m,h,I,b.$converter),{setPropertyRelates:P}=b,D=b==null?void 0:b.parentPropertyID;F.push({categoryId:y,categoryName:V,tabId:x,tabName:N,hide:k,properties:j,hideTitle:B,setPropertyRelates:P,parentPropertyID:D})}),F}return[]}return{getPropertyConfigBySchema:p,getPropertyConfigByType:f,propertyConverterMap:a}}const gn={},hn={};mn(gn,hn,ko);const yn={},bn={},{getSchemaByType:Pt,resolveSchemaWithDefaultValue:Ko,resolveSchemaToProps:ks,mappingSchemaToProps:Fs,setDesignerContext:Bs}=un(yn,bn),vn={},Cn={};mn(vn,Cn,Ko);function Ve(e,n,o=new Map,a=(l,s,u,c)=>s,i={},r=l=>l){return dn[n.title]=n,fn[n.title]=a,gn[n.title]=i,hn[n.title]=r,yn[n.title]=n,bn[n.title]=a,vn[n.title]=i,Cn[n.title]=r,(l={},s=!0)=>{if(!s)return Bo(l,o);const u=Fo(l,n,o),c=Object.keys(e).reduce((d,f)=>(d[f]=e[f].default,d),{});return Object.assign(c,u)}}function He(e,n){return{customClass:n.class,customStyle:n.style}}function ea(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 ta(){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=ea(s,r);return u?u.onClick||u.click:null}return{resolve:e}}const bt=new Map([["appearance",He]]);function na(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 wn(e,n,o){if(o.parentComponentInstance)return na(e,o);{const i=e.getSchemaByType("tab-page");return n.contents=[i],n}}function oa(e,n,o){return n}const xn={$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:"移除标签页事件"}},aa={$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:"点击事件"}},ia=new Map([["buttons","items"],["appearance",He]]);function vt(e,n,o){return n}const ra={$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:"点击事件"}},la={$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:"点击事件"}},Ct={id:{type:String,default:""},customClass:{type:String,default:""},alignment:{Type:String,default:"right"},items:{Type:Array,default:[]},visible:{type:Boolean,default:!0}},sa=Object.assign({},Ct,{componentId:{type:String,default:""}});Ve(Ct,ra,ia,vt);const Sn={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}};Ve(Sn,la,void 0,vt);const $t={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}},ca=Ve($t,xn,bt,wn),Tn=Object.assign({},$t,{componentId:{type:String,default:""}}),ua=Ve(Tn,xn,bt,wn),da=ta(),fa=Ve(Ct,aa,bt,vt);function pa(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(V=>V.props.id===i.value);return(y==null?void 0:y.props.toolbarPosition)==="inHead"});function f(y,b=!0){const V=y.findIndex(x=>x.props.show!==!1&&!x.props.disabled);if(s.value=[],V!==-1){if(i.value=y[V].props.id,!b)return;const x=y[V];x&&x.props.toolbar&&x.props.toolbar.buttons&&x.props.toolbar.buttons.length&&(s.value=[...x.props.toolbar.buttons],u.value=x.props.toolbarVisible)}}function g(y){i.value=y;const b=a.value.find(V=>V.props.id===y);s.value=[],b&&b.props.toolbar&&b.props.toolbar.buttons&&b.props.toolbar.buttons.length&&(s.value=[...b.props.toolbar.buttons],u.value=b.props.toolbarVisible),n.emit("update:activeId",y),n.emit("tabChange",{prevId:r,nextId:i.value})}function p(y){let b=-1;if(!i.value){if(b=y.findIndex(V=>i.value===V.props.id&&V.props.show!==!1&&!V.props.disabled),b>-1)return;r=i.value}f(y,!1),g(i.value)}function m(y){let b=!1;if(y){const V=a.value.find(x=>x.props.id===y);b=!V||V.props.show===!1||V.props.disabled===!0}b?p(a.value):(i.value!==y&&(r=i.value,i.value=y),g(i.value))}t.watch(()=>e.activeId,(y,b)=>{y!==b&&m(y)});function h(y){var V;if(e.autoTitleWidth)return;const b=(V=y.value)==null?void 0:V.querySelectorAll(".st-tab-text");if(!(!b||e.tabType==="pill"))for(let x=0;x<b.length;x++){const N=b[x].parentNode;b[x].scrollWidth>N.offsetWidth?b[x].classList.contains("farris-title-text-custom")||b[x].classList.add("farris-title-text-custom"):b[x].classList.remove("farris-title-text-custom")}}const S=y=>{y.preventDefault(),y.stopPropagation()};function I(y,b,V=!1){const x=a.value.findIndex(N=>N.props.id===b);a.value=a.value.filter(N=>N.props.id!==b),i.value===b&&(r=b,i.value="",f(a.value)),S(y),t.nextTick(()=>{c.value++,h(o),V&&(l.value=!0),n.emit("tabRemove",{removeIndex:x,removeId:b,activeId:i.value})})}function w(y,b=!0){i.value===y&&(i.value="",r=y,m("")),t.nextTick(()=>{c.value++,b&&(l.value=!0)})}let M;function v(y){M=y}function T(y){i.value!==y&&(r=i.value,g(y),M&&M())}function C(y){a.value.findIndex(V=>V.props.id===y.props.id)===-1&&a.value.push(y),c.value++}function F(y){a.value.findIndex(V=>V.props.id===y.props.id)!==-1&&(a.value.forEach(V=>{V.props.id===y.props.id&&(V=y)}),y.props.id===i.value&&d.value,t.nextTick(()=>{c.value++,h(o)}))}return{activeId:i,addTab:C,changeTitleStyle:h,removeTab:I,selectTab:T,tabPages:a,updateTab:F,toolbarItems:s,needUpdateNavigationLayout:c,checkActiveIdAndSelect:m,toggleShowTab:w,hasInHeadClass:d,setScrollToSelectedTabFunction:v,toolbarVisible:u}}function ma(e,n,o,a,i){const{activeId:r,removeTab:l,selectTab:s}=i,u=t.computed(()=>{const w={"st-tab-text":!0,"text-truncate":e.tabType==="pill"&&!e.autoTitleWidth,"farris-title-auto":e.autoTitleWidth};return he.getCustomClass(w,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:w=>l(w,n.id)},[t.createVNode("i",{class:"f-icon f-icon-close"},null)]):""}function S(w){s(n.id),e.tabType==="one-page"&&a.scrollToByPaggId(n.id)}function I(){return o.slots.title?t.createVNode("a",{class:f.value,onClick:S,id:`${n.id}-design-item`},[o.slots.title(o),h()]):n.titleRenderFunction?t.createVNode("a",{class:f.value,onClick:S,id:`${n.id}-design-item`},[n.titleRenderFunction(),h()]):t.createVNode("a",{class:f.value,onClick:S,id:`${n.id}-design-item`},[p(),h()])}return t.createVNode("li",{class:c.value,style:d.value},[I()])}function ga(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=>ma(e,d.props,d,a,i))])])}function Nn(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(Co,{items:f.value,modelValue:d.value,"onUpdate:modelValue":h=>d.value=h,onChange:m,ref:r},null)])}function ha(e,n,o,a){const{t:i}=De.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 V,x;let b=[];return e.searchBoxVisible?b=(V=u.value)==null?void 0:V.filter(N=>N.props.title.includes(f.value)):b=(x=u.value)==null?void 0:x.slice(),b}),h=t.computed(()=>({"dropdown-menu":!0,"tabs-pt28":e.searchBoxVisible,show:!d.value,"d-none":d.value}));let S;function I(b){S=b}t.watch(d,b=>{if(S.value)if(b)r.value.style.width=null;else{const V=S.value.querySelector(".farris-tabs-header"),x=S.value.clientHeight-V.clientHeight-20,k=V.querySelector(".farris-tabs-title").clientWidth-20;r.value.style.maxWidth=k+"px",r.value.style.maxHeight=x+"px",t.nextTick(()=>{const{width:B}=r.value.getClientRects()[0];r.value.style.width=B?B+"px":null})}});function w(b){return{"dropdown-item":!0,"text-truncate":!0,"px-2":!0,disabled:b.props.disabled,active:b.props.id===l.value,"d-none":b.props.show!==!0}}function M(b){b.preventDefault(),b.stopPropagation()}function v(){p&&clearTimeout(p)}function T(){d.value||(p=setTimeout(()=>{d.value=!0},g))}function C(b,V){b.stopPropagation(),V.disabled||c(V.id),d.value=!0}function F(b,V){b.stopPropagation(),s(b,V,!0)}function y(){return t.createVNode("div",{ref:r,class:h.value,onMouseenter:()=>v(),onMouseleave:()=>T()},[e.searchBoxVisible&&t.createVNode("div",{onClick:b=>M(b),class:"pb-1 tabs-li-absolute"},[t.withDirectives(t.createVNode("input",{type:"text",class:"form-control","onUpdate:modelValue":b=>f.value=b},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(b=>t.createVNode("li",{class:w(b),onClick:V=>C(V,b.props)},[b.props.removeable&&b.props.disabled!==!0&&t.createVNode("span",{class:"float-right st-drop-close",onClick:V=>F(V,b.props.id)},[t.createVNode("i",{class:"f-icon f-icon-close"},null)]),t.createVNode("a",{class:"dropdown-title",title:b.props.title},[b.props.title])]))]):t.createVNode("div",{class:"dropdown-no-data"},[i("tabs.noData")])])}return{renderDropdownMenu:y,setTabsRef:I}}function ya(e,n,o,a){const{hideDropDown:i}=n,{renderDropdownMenu:r,setTabsRef:l}=ha(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 Vn(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(w,M){if(!n.value)return;const v=n.value.scrollLeft,T=n.value.scrollWidth-n.value.offsetWidth;if(M>0){if(n.value.scrollLeft>=T)return;n.value.scrollLeft=v+e.scrollStep+w}else if(M<0){if(n.value.scrollLeft<=0)return;n.value.scrollLeft=v-e.scrollStep-w}}function m(w=-1){if(!i.value||!n.value)return;w<0&&(w=l.value.findIndex(F=>F.props.id===u.value));const M=e.tabType==="pills"?".f-capsule-item":".nav-item",v=n.value.querySelectorAll(M),{parentElement:T}=n.value,C=v[w];if(C&&T){const F=T.getBoundingClientRect().left,y=T.getBoundingClientRect().right,b=C.getBoundingClientRect().left,V=C.getBoundingClientRect().right;b<F?p(F-b,-1):y<V&&p(V-y,1),e.tabType==="one-page"&&o.scrollTo(w)}}function h(){var v;if(!n.value)return;const w=n.value,M=(v=n.value)==null?void 0:v.parentElement;i.value=M&&w&&M.offsetWidth<w.scrollWidth-c,i.value&&t.nextTick(()=>{m()})}function S(w){w.disabled||r(w.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:S,shouldShowNavigationButtons:i,updateNavigationLayout:h,scrollToSelectedTab:I}}function In(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 kn(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 Qe=t.defineComponent({name:"FTabs",props:$t,emits:["tabChange","tabRemove","update:activeId","Click"],setup(e,n){const{t:o}=De.useI18n(),a=t.ref(e.tabType),i=t.shallowRef(),r=t.ref(e.customClass),l=t.shallowRef(),s=t.shallowRef(),u=t.ref(),c=pa(e,n,l),{activeId:d,changeTitleStyle:f,tabPages:g,addTab:p,updateTab:m,toolbarItems:h,checkActiveIdAndSelect:S,toggleShowTab:I,hasInHeadClass:w,toolbarVisible:M}=c,v=kn(e,s,c),T=Vn(e,l,v,c),{previousButtonClass:C,nextButtonClass:F,nextButtonGroupClass:y,scrollTab:b,updateNavigationLayout:V,scrollToSelectedTab:x}=T;c.setScrollToSelectedTabFunction(x);const N=In(e,c),k=ga(e,l,T,v,c),B=k,j=Nn(e,l,T,v,c),P=new Map([["default",k],["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:M});let $=!1;const O=t.computed(()=>({"farris-tabs-header":!0,"farris-tabs-inHead":w.value,"farris-tabs-inContent":!w.value,"farris-tabs-nav-fill":e.tabType==="fill","farris-tabs-nav-pills":e.tabType==="pills"})),A=t.computed(()=>{const ee={width:w.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,de)=>(ie[de]=!0,ie),ee),ee}),Q=new ResizeObserver(ee=>{ee.length&&V()});function ne(){u.value&&!$&&(Q.observe(u.value),$=!0)}t.watch(()=>e.visible,ee=>{t.nextTick(()=>{g.value.length&&S(e.activeId||g.value[0].props.id),V(),f(l),ne()})}),t.watch(()=>e.autoTitleWidth,ee=>{t.nextTick(()=>{V(),f(l)})});const ae={leftButton:o("tabs.leftButton"),rightButton:o("tabs.rightButton")};t.onMounted(()=>{e.visible&&(g.value.length&&S(e.activeId||g.value[0].props.id),t.nextTick(()=>{V(),f(l)}),ne())});function J(){return t.createVNode("button",{title:ae.leftButton,type:"button",class:C.value,onClick:()=>{b(0,-1)}},null)}function ue(){return t.createVNode("button",{title:ae.rightButton,type:"button",class:F.value,onClick:()=>{b(0,1)}},null)}const{renderMorePagesButtton:ge,setTabsRef:re}=ya(e,N,T,c);re(i);const X=(ee,ie)=>{n.emit("Click",ee,ie,d.value)};function se(){return h.value.length?t.createVNode("div",{class:"farris-tabs-toolbar"},[t.createVNode(ln,{class:"f-utils-fill",alignment:w.value?"right":"left",items:h.value,visible:M.value,onClick:X},null)]):null}const E=P.get(e.tabType)||P.get("default");function q(){var ee,ie,de,xe;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},[ue(),ge()])]),se(),t.createVNode("div",{class:"farris-tabs-header-post"},[(xe=(de=n.slots).headerSuffix)==null?void 0:xe.call(de)])])}const H=t.computed(()=>({"farris-tabs-content":!0,"f-utils-fill-flex-column":D.value}));function U(){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(),U()]):null}});function ba(e,n,o){const a={toolbar:n,toolbarVisible:!0};return n&&n.contents&&n.contents.length&&(n.contents.forEach(i=>{i.title&&(i.text=i.title)}),n.buttons=n.contents,delete n.contents),n&&Object.prototype.hasOwnProperty.call(n,"visible")&&(a.toolbarVisible=n.visible),a}const Fn=new Map([["appearance",He],["toolbar",ba]]),Bn={$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"]},Et={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}},va=Ye.createPropsResolver(Et,Bn,Fn),Mn=Object.assign({},Et,{titleHtml:{type:String,default:""}}),Ca=Ye.createPropsResolver(Mn,Bn,Fn);function wa(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!t.isVNode(e)}const wt=t.defineComponent({name:"FTabPage",props:Et,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(wo,{"main-title":e.title,class:["farris-tab-page",a.value?"":"f-tab-d-none"]},wa(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 xa(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 N={"farris-component":!0,"nav-item":!0,"f-state-active":n.id===l.value};return N[`${n.id}-design-item`]=!0,N}),m=t.computed(()=>{const N={};return n.tabWidth&&n.tabWidth>0&&(N.width=`${n.tabWidth}px`),N}),h=t.computed(()=>({"nav-link":!0,"tabs-text-truncate":!0,active:n.id===l.value}));function S(){return t.createVNode("span",{class:g.value,title:n.title},[n.title])}const I=t.ref(n.removeable);function w(){return I.value?t.createVNode("span",{class:"st-drop-close",style:{opacity:.6}},[t.createVNode("i",{class:"f-icon f-icon-close"},null)]):""}function M(){return n.titleHtml+w()}function v(N){s(n.id),e.tabType==="one-page"&&a.scrollToByPaggId(n.id)}function T(N){N&&(N.stopPropagation(),N.preventDefault()),c(N,n.id,r.value)}function C(N){u(N,n.id)}function F(N){d(N,n.id)}t.watch(()=>n.toolbarPosition,()=>{t.nextTick(()=>{f()})}),t.watch(()=>n.tabWidth,()=>{t.nextTick(()=>{f()})});function y(){return t.createVNode("div",{role:"button",class:"btn component-settings-button",title:"删除",ref:"removeComponent",onClick:N=>C(N)},[t.createVNode("i",{class:"f-icon f-icon-yxs_delete"},null)])}function b(){return t.createVNode("div",{role:"button",class:"btn component-settings-button",title:"新增按钮",ref:"addComponent",onClick:N=>F(N)},[t.createVNode("i",{class:"f-icon f-icon-plus-circle"},null)])}function V(){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?b():""])])}function x(){return o.slots.title?t.createVNode("a",{class:h.value,onClick:v,id:`${n.id}-design-item`},[o.slots.title(o),w()]):n.titleHtml?t.createVNode("a",{class:h.value,onClick:v,id:`${n.id}-design-item`,innerHTML:M()},null):t.createVNode("a",{class:h.value,onClick:v,id:`${n.id}-design-item`},[S(),w()])}return t.createVNode("li",{onClick:N=>T(N),class:p.value,style:m.value,pageId:`${n.id}-design-item`},[V(),x()])}function Sa(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 S=Pt("tab-page");S.id=`tab_page_${Math.random().toString().slice(2,6)}`,S.title="标题",S.toolbar={id:`${S.id}_toolbar`,buttons:[],type:"tab-toolbar"},(I=r.value.schema.contents)==null||I.push(S),u(S.id),t.nextTick(()=>{c(S.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=>xa(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 ut(e,n,o){var x;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.checkC