@farris/ui-vue 1.5.6 → 1.5.8
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/accordion/package.json +1 -1
- package/components/avatar/index.esm.js +4 -4
- package/components/avatar/index.umd.cjs +1 -1
- package/components/avatar/package.json +1 -1
- package/components/binding-selector/package.json +1 -1
- package/components/border-editor/package.json +1 -1
- package/components/button/package.json +1 -1
- package/components/button-edit/package.json +1 -1
- package/components/button-group/package.json +1 -1
- package/components/calculator/package.json +1 -1
- package/components/calendar/package.json +1 -1
- package/components/capsule/package.json +1 -1
- package/components/checkbox/package.json +1 -1
- package/components/checkbox-group/package.json +1 -1
- package/components/code-editor/package.json +1 -1
- package/components/color-picker/package.json +1 -1
- package/components/combo-list/package.json +1 -1
- package/components/combo-tree/package.json +1 -1
- package/components/common/package.json +1 -1
- package/components/component/index.esm.js +4 -4
- package/components/component/index.umd.cjs +1 -1
- package/components/component/package.json +1 -1
- package/components/condition/index.esm.js +4 -4
- package/components/condition/index.umd.cjs +1 -1
- package/components/condition/package.json +1 -1
- package/components/content-container/index.esm.js +4 -4
- package/components/content-container/index.umd.cjs +1 -1
- package/components/content-container/package.json +1 -1
- package/components/data-grid/package.json +1 -1
- package/components/data-view/package.json +1 -1
- package/components/date-picker/index.esm.js +1082 -1421
- package/components/date-picker/index.umd.cjs +1 -1
- package/components/date-picker/package.json +1 -1
- package/components/designer-canvas/index.esm.js +4 -4
- package/components/designer-canvas/index.umd.cjs +1 -1
- package/components/designer-canvas/package.json +1 -1
- package/components/designer-outline/package.json +1 -1
- package/components/designer-toolbox/package.json +1 -1
- package/components/discussion-editor/package.json +1 -1
- package/components/discussion-list/package.json +1 -1
- package/components/drawer/package.json +1 -1
- package/components/dropdown/package.json +1 -1
- package/components/dynamic-form/index.esm.js +4 -4
- package/components/dynamic-form/index.umd.cjs +1 -1
- package/components/dynamic-form/package.json +1 -1
- package/components/dynamic-resolver/package.json +1 -1
- package/components/dynamic-view/index.esm.js +4 -4
- package/components/dynamic-view/index.umd.cjs +1 -1
- package/components/dynamic-view/package.json +1 -1
- package/components/enum-editor/package.json +1 -1
- package/components/event-parameter/package.json +1 -1
- package/components/events-editor/index.esm.js +4 -4
- package/components/events-editor/index.umd.cjs +1 -1
- package/components/events-editor/package.json +1 -1
- package/components/expression-editor/package.json +1 -1
- package/components/external-container/package.json +1 -1
- package/components/field-selector/package.json +1 -1
- package/components/fieldset/package.json +1 -1
- package/components/filter-bar/index.esm.js +12 -11
- package/components/filter-bar/index.umd.cjs +1 -1
- package/components/filter-bar/package.json +1 -1
- package/components/filter-condition-editor/package.json +1 -1
- package/components/flow-canvas/index.esm.js +4 -4
- package/components/flow-canvas/index.umd.cjs +1 -1
- package/components/flow-canvas/package.json +1 -1
- package/components/html-template/package.json +1 -1
- package/components/image-cropper/package.json +1 -1
- package/components/input-group/package.json +1 -1
- package/components/json-editor/package.json +1 -1
- package/components/layout/package.json +1 -1
- package/components/list-nav/package.json +1 -1
- package/components/list-view/package.json +1 -1
- package/components/loading/package.json +1 -1
- package/components/locale/package.json +1 -1
- package/components/lookup/package.json +1 -1
- package/components/mapping-editor/package.json +1 -1
- package/components/menu-lookup/package.json +1 -1
- package/components/message-box/package.json +1 -1
- package/components/modal/package.json +1 -1
- package/components/nav/package.json +1 -1
- package/components/notify/package.json +1 -1
- package/components/number-range/index.esm.js +4 -4
- package/components/number-range/index.umd.cjs +1 -1
- package/components/number-range/package.json +1 -1
- package/components/number-spinner/index.esm.js +4 -4
- package/components/number-spinner/index.umd.cjs +1 -1
- package/components/number-spinner/package.json +1 -1
- package/components/order/package.json +1 -1
- package/components/page-footer/package.json +1 -1
- package/components/page-header/index.esm.js +1584 -2320
- package/components/page-header/index.umd.cjs +1 -1
- package/components/page-header/package.json +1 -1
- package/components/pagination/package.json +1 -1
- package/components/popover/package.json +1 -1
- package/components/progress/package.json +1 -1
- package/components/property-editor/package.json +1 -1
- package/components/property-panel/index.esm.js +4 -4
- package/components/property-panel/index.umd.cjs +1 -1
- package/components/property-panel/package.json +1 -1
- package/components/query-solution/index.esm.js +77 -76
- package/components/query-solution/index.umd.cjs +6 -6
- package/components/query-solution/package.json +1 -1
- package/components/radio/package.json +1 -1
- package/components/radio-button/package.json +1 -1
- package/components/radio-group/package.json +1 -1
- package/components/rate/package.json +1 -1
- package/components/response-layout/index.esm.js +4 -4
- package/components/response-layout/index.umd.cjs +1 -1
- package/components/response-layout/package.json +1 -1
- package/components/response-layout-editor/package.json +1 -1
- package/components/response-toolbar/index.esm.js +500 -3662
- package/components/response-toolbar/index.umd.cjs +1 -1
- package/components/response-toolbar/package.json +1 -1
- package/components/schema-selector/index.esm.js +3008 -7347
- package/components/schema-selector/index.umd.cjs +6 -6
- package/components/schema-selector/package.json +1 -1
- package/components/search-box/package.json +1 -1
- package/components/section/index.esm.js +1564 -1635
- package/components/section/index.umd.cjs +1 -1
- package/components/section/package.json +1 -1
- package/components/smoke-detector/package.json +1 -1
- package/components/sort-condition-editor/package.json +1 -1
- package/components/spacing-editor/package.json +1 -1
- package/components/splitter/package.json +1 -1
- package/components/step/package.json +1 -1
- package/components/switch/package.json +1 -1
- package/components/tabs/index.esm.js +545 -4943
- package/components/tabs/index.umd.cjs +1 -1
- package/components/tabs/package.json +1 -1
- package/components/tags/package.json +1 -1
- package/components/text/package.json +1 -1
- package/components/textarea/index.esm.js +100 -5841
- package/components/textarea/index.umd.cjs +2 -2
- package/components/textarea/package.json +1 -1
- package/components/time-picker/index.esm.js +4 -4
- package/components/time-picker/index.umd.cjs +1 -1
- package/components/time-picker/package.json +1 -1
- package/components/tooltip/package.json +1 -1
- package/components/transfer/package.json +1 -1
- package/components/tree-grid/package.json +1 -1
- package/components/tree-view/package.json +1 -1
- package/components/uploader/package.json +1 -1
- package/components/verify-detail/package.json +1 -1
- package/components/video/index.esm.js +4 -4
- package/components/video/index.umd.cjs +1 -1
- package/components/video/package.json +1 -1
- package/components/weather/package.json +1 -1
- package/designer/button-edit/index.css +1 -0
- package/designer/button-edit/index.esm.js +1556 -0
- package/designer/button-edit/index.umd.cjs +1 -0
- package/designer/checkbox/index.esm.js +207 -0
- package/designer/checkbox/index.umd.cjs +1 -0
- package/designer/checkbox-group/index.esm.js +377 -0
- package/designer/checkbox-group/index.umd.cjs +1 -0
- package/designer/data-grid/index.css +1 -0
- package/designer/data-grid/index.esm.js +14332 -0
- package/designer/data-grid/index.umd.cjs +20 -0
- package/designer/data-view/index.esm.js +271 -0
- package/designer/data-view/index.umd.cjs +1 -0
- package/designer/date-picker/index.esm.js +1879 -0
- package/designer/date-picker/index.umd.cjs +1 -0
- package/designer/drawer/index.css +1 -0
- package/designer/drawer/index.esm.js +463 -0
- package/designer/drawer/index.umd.cjs +1 -0
- package/designer/farris-designer.all.esm.js +16815 -0
- package/designer/farris-designer.all.umd.cjs +32 -0
- package/designer/index.css +1 -0
- package/designer/input-group/index.esm.js +647 -0
- package/designer/input-group/index.umd.cjs +1 -0
- package/designer/radio-group/index.esm.js +6959 -0
- package/designer/radio-group/index.umd.cjs +1 -0
- package/designer/response-toolbar/index.esm.js +3015 -0
- package/designer/response-toolbar/index.umd.cjs +1 -0
- package/designer/tabs/index.esm.js +2200 -0
- package/designer/tabs/index.umd.cjs +1 -0
- package/designer/textarea/index.esm.js +249 -0
- package/designer/textarea/index.umd.cjs +1 -0
- package/designer/tree-grid/index.css +1 -0
- package/designer/tree-grid/index.esm.js +1673 -0
- package/designer/tree-grid/index.umd.cjs +1 -0
- package/farris.all.esm.js +57107 -57104
- package/farris.all.umd.cjs +16 -16
- package/package.json +1 -1
- package/types/components.d.ts +1 -0
- package/types/date-picker/designer.d.ts +29 -0
- package/types/date-picker/index.d.ts +2 -1
- package/types/date-picker/src/date-picker.props.d.ts +0 -5
- package/types/date-picker/src/designer/date-picker.design.props.d.ts +22 -0
- package/types/response-toolbar/designer.d.ts +37 -0
- package/types/response-toolbar/index.d.ts +6 -5
- package/types/response-toolbar/src/composition/toolbar-item-dragula.d.ts +1 -2
- package/types/response-toolbar/src/composition/types.d.ts +1 -1
- package/types/response-toolbar/src/designer/response-toolbar.design.props.d.ts +13 -0
- package/types/response-toolbar/src/designer/use-designer-item-rules.d.ts +1 -2
- package/types/response-toolbar/src/designer/use-designer-rules.d.ts +1 -2
- package/types/response-toolbar/src/property-config/response-toolbar-item.property-config.d.ts +1 -1
- package/types/response-toolbar/src/property-config/response-toolbar.property-config.d.ts +1 -1
- package/types/response-toolbar/src/response-toolbar.props.d.ts +0 -12
- package/types/response-toolbar/src/schema/schema-resolver.d.ts +1 -1
- package/types/tabs/designer.d.ts +28 -0
- package/types/tabs/index.d.ts +1 -0
- package/types/tabs/src/components/tab-page.props.d.ts +0 -1
- package/types/tabs/src/designer/tab-page.design.props.d.ts +1 -0
- package/types/tabs/src/designer/tabs.design.props.d.ts +12 -0
- package/types/tabs/src/tabs.props.d.ts +0 -11
- package/types/textarea/designer.d.ts +28 -0
- package/types/textarea/index.d.ts +0 -15
- package/types/textarea/src/designer/textarea.design.props.d.ts +6 -0
- package/types/textarea/src/designer/use-design-rules.d.ts +1 -2
- package/types/textarea/src/property-config/textarea.property-config.d.ts +1 -1
- package/types/textarea/src/schema/schema-resolver.d.ts +1 -1
- package/types/textarea/src/textarea.props.d.ts +0 -5
- /package/{components/textarea → designer/radio-group}/index.css +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(J,s){typeof exports=="object"&&typeof module<"u"?s(exports,require("vue"),require("lodash-es"),require("../response-toolbar/index.umd.js"),require("bignumber.js"),require("../common/index.umd.js"),require("../designer-canvas/index.umd.js"),require("../property-panel/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es","../response-toolbar/index.umd.js","bignumber.js","../common/index.umd.js","../designer-canvas/index.umd.js","../property-panel/index.umd.js"],s):(J=typeof globalThis<"u"?globalThis:J||self,s(J["page-header"]={},J.Vue,J.LodashES,J.FResponseToolbar$1,J.BigNumber,J.common,J.designerCanvas,J.propertyPanel))})(this,function(J,s,oe,wt,qn,le,Fe,xt){"use strict";var Fn=Object.defineProperty;var Ln=(J,s,oe)=>s in J?Fn(J,s,{enumerable:!0,configurable:!0,writable:!0,value:oe}):J[s]=oe;var G=(J,s,oe)=>Ln(J,typeof s!="symbol"?s+"":s,oe);const Le={},qe={};function we(n){const{properties:t,title:e,ignore:o}=n,r=o&&Array.isArray(o),i=Object.keys(t).reduce((a,f)=>((!r||!o.find(d=>d===f))&&(a[f]=t[f].type==="object"&&t[f].properties?we(t[f]):oe.cloneDeep(t[f].default)),a),{});if(e&&(!r||!o.find(a=>a==="id"))){const a=e.toLowerCase().replace(/-/g,"_");i.id=`${a}_${Math.random().toString().slice(2,6)}`}return i}function Tt(n){const{properties:t,title:e,required:o}=n;if(o&&Array.isArray(o)){const r=o.reduce((i,a)=>(i[a]=t[a].type==="object"&&t[a].properties?we(t[a]):oe.cloneDeep(t[a].default),i),{});if(e&&o.find(i=>i==="id")){const i=e.toLowerCase().replace(/-/g,"_");r.id=`${i}_${Math.random().toString().slice(2,6)}`}return r}return{type:e}}function ge(n,t={},e){const o=Le[n];if(o){let r=Tt(o);const i=qe[n];return r=i?i({getSchemaByType:ge},r,t,e):r,r}return null}function St(n,t){const e=we(t);return Object.keys(e).reduce((o,r)=>(Object.prototype.hasOwnProperty.call(n,r)&&(o[r]&&oe.isPlainObject(o[r])&&oe.isPlainObject(n[r]||!n[r])?Object.assign(o[r],n[r]||{}):o[r]=n[r]),o),e),e}function He(n,t){return Object.keys(n).filter(o=>n[o]!=null).reduce((o,r)=>{if(t.has(r)){const i=t.get(r);if(typeof i=="string")o[i]=n[r];else{const a=i(r,n[r],n);Object.assign(o,a)}}else o[r]=n[r];return o},{})}function Pt(n,t,e=new Map){const o=St(n,t);return He(o,e)}function Et(n={}){function t(p,v,h,b){if(typeof h=="number")return b[p].length===h;if(typeof h=="object"){const m=Object.keys(h)[0],u=h[m];if(m==="not")return Number(b[p].length)!==Number(u);if(m==="moreThan")return Number(b[p].length)>=Number(u);if(m==="lessThan")return Number(b[p].length)<=Number(u)}return!1}function e(p,v,h,b){return b[p]&&b[p].propertyValue&&String(b[p].propertyValue.value)===String(h)}const o=new Map([["length",t],["getProperty",e]]);Object.keys(n).reduce((p,v)=>(p.set(v,n[v]),p),o);function r(p,v){const h=p;return typeof v=="number"?[{target:h,operator:"length",param:null,value:Number(v)}]:typeof v=="boolean"?[{target:h,operator:"getProperty",param:p,value:!!v}]:typeof v=="object"?Object.keys(v).map(b=>{if(b==="length")return{target:h,operator:"length",param:null,value:v[b]};const m=b,u=v[b];return{target:h,operator:"getProperty",param:m,value:u}}):[]}function i(p){return Object.keys(p).reduce((h,b)=>{const m=r(b,p[b]);return h.push(...m),h},[])}function a(p,v){if(o.has(p.operator)){const h=o.get(p.operator);return h&&h(p.target,p.param,p.value,v)||!1}return!1}function f(p,v){return i(p).reduce((m,u)=>m&&a(u,v),!0)}function d(p,v){const h=Object.keys(p),b=h.includes("allOf"),m=h.includes("anyOf"),u=b||m,_=(u?p[u?b?"allOf":"anyOf":"allOf"]:[p]).map(D=>f(D,v));return b?!_.includes(!1):_.includes(!0)}return{parseValueSchema:d}}const Dt={button:{type:"button",name:"按钮"},"response-toolbar":{type:"response-toolbar",name:"工具栏"},"response-toolbar-item":{type:"response-toolbar-item",name:"按钮"},"content-container":{type:"content-container",name:"容器"},"input-group":{type:"input-group",name:"文本"},textarea:{type:"textarea",name:"多行文本"},lookup:{type:"lookup",name:"帮助"},"number-spinner":{type:"number-spinner",name:"数值"},"date-picker":{type:"date-picker",name:"日期"},switch:{type:"switch",name:"开关"},"radio-group":{type:"radio-group",name:"单选组"},"check-box":{type:"check-box",name:"复选框"},"check-group":{type:"check-group",name:"复选框组"},"combo-list":{type:"combo-list",name:"下拉列表"},"response-form":{type:"response-form",name:"卡片面板"},"response-layout":{type:"response-layout",name:"布局容器",icon:"response-layout-3"},"response-layout-item":{type:"response-layout-item",name:"布局",icon:"response-layout-1"},"tree-grid":{type:"tree-grid",name:"树表格"},"tree-grid-column":{type:"tree-grid-column",name:"树表格列"},"data-grid":{type:"data-grid",name:"表格"},"data-grid-column":{type:"data-grid-column",name:"表格列"},module:{type:"Module",name:"模块"},component:{type:"component",name:"组件"},tabs:{type:"tabs",name:"标签页"},"tab-page":{type:"tab-page",name:"标签页项",dependentParentControl:"Tab"},"tab-toolbar-item":{type:"tab-toolbar-item",name:"标签页工具栏按钮"},"html-template":{type:"html-template",name:"模板容器"},"time-picker":{type:"time-picker",name:"时间选择"},section:{type:"section",name:"分组面板"},"section-toolbar":{type:"section-toolbar",name:"分组面板工具栏"},"section-toolbar-item":{type:"section-toolbar-item",name:"分组面板按钮"},splitter:{type:"splitter",name:"分栏面板"},"splitter-pane":{type:"splitter-pane",name:"分栏面板项",dependentParentControl:"Splitter"},"component-ref":{type:"component-ref",name:"组件引用节点"},uploader:{type:"uploader",name:"附件上传"},"page-header":{type:"page-header",name:"页头"},"page-footer":{type:"page-footer",name:"页脚"},"tab-toolbar":{type:"tab-toolbar",name:"标签页工具栏"},fieldset:{type:"fieldset",name:"分组"},"query-solution":{type:"query-solution",name:"筛选方案"},drawer:{type:"drawer",name:"抽屉"},"external-container":{type:"external-container",name:"外部容器",icon:"content-container"},"list-nav":{type:"list-nav",name:"列表导航"},"filter-bar":{type:"filter-bar",name:"筛选条"}},Mt={},kt={};Et();function xe(n,t,e=new Map,o=(a,f,d,p)=>f,r={},i=a=>a){return Le[t.title]=t,qe[t.title]=o,Mt[t.title]=r,kt[t.title]=i,(a={},f=!0)=>{if(!f)return He(a,e);const d=Pt(a,t,e),p=Object.keys(n).reduce((v,h)=>(v[h]=n[h].default,v),{});return Object.assign(p,d)}}function We(n,t){return{customClass:t.class,customStyle:t.style}}function Vt(n,t){var o,r;const e={};if(t!=null&&t.buttons){const i=[];(o=t==null?void 0:t.buttons)==null||o.map(a=>{const f={};Object.keys(a).map(d=>{var p;d==="appearance"?f.class=((p=a[d])==null?void 0:p.class)||"":f[d]=a[d]}),i.push(f)}),e.buttons=i}return(r=t==null?void 0:t.appearance)!=null&&r.class&&(e.buttonClass=t.appearance.class||"col-6"),t!=null&&t.id&&(e.toolbarId=t.id),t&&Object.prototype.hasOwnProperty.call(t,"visible")&&(e.buttonsVisible=t.visible),e}function Ue(n,t){if(!n||n.length<1)return null;for(const e of n){if(e.id===t)return e;if(e.children){const o=e.children.find(r=>r.id===t);if(o)return o}}return null}function Nt(){function n(t,e){var f;const o=(f=t.toolbar)==null?void 0:f.buttons;if(!o||o.length<1)return null;const[r,i]=e.payloads,a=Ue(o,i);return a?a.onClick||a.click:null}return{resolve:n}}function It(){function n(t,e){const o=t.buttons;if(!o||o.length<1)return null;const[r,i]=e.payloads,a=Ue(o,i);return a?a.onClick||a.click:null}return{resolve:n}}const Bt=new Map([["appearance",We],["toolbar",Vt]]),At={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/page-header.schema.json",title:"page-header",description:"A Farris Container Component",type:"object",properties:{id:{description:"The unique identifier for a Page Header",type:"string"},type:{description:"The type string of Page Header component",type:"string",default:"page-header"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},showIcon:{description:"",type:"boolean",default:!0},icon:{description:"",type:"string",default:"f-icon-page-title-record"},iconClass:{description:"",type:"string",default:"f-text-orna-bill"},title:{description:"",type:"string",default:""},subTitle:{description:"",type:"string",default:""},toolbar:{description:"",type:"object",properties:{appearance:{description:"",type:"object",properties:{class:{type:"string",default:"col-6"}}},id:{description:"",type:"string"},type:{description:"",type:"string",default:"response-toolbar"},alignment:{description:"The alignment of Response Toolbar Button.",type:"string",default:"right"},buttons:{description:"The items of Response Toolbar.",type:"array",default:[]},visible:{description:"",type:"boolean",default:!0}}},buttonClass:{description:"",type:"string",default:"col-6"},toolbarId:{description:"",type:"string",default:""},titleContentClass:{description:"",type:"string",default:""},contentClass:{description:"",type:"string",default:""},downContentClass:{description:"",type:"string",default:""},showPagination:{description:"",type:"boolean",default:!1},prePaginationDisabled:{description:"",type:"boolean",default:!0},nextPaginationDisabled:{description:"",type:"boolean",default:!1},visible:{description:"",type:"boolean",default:!0}},required:["id","type"]};function Rt(n,t,e){return t.title="标题",t}const me={customClass:{type:String,default:""},showIcon:{type:Boolean,default:!0},icon:{type:String,default:"f-icon-page-title-record"},iconClass:{type:String,default:"f-text-orna-bill"},title:{type:String,default:""},subTitle:{type:String,default:""},buttonClass:{type:String,default:"col-6"},toolbarId:{type:String,default:""},buttons:{type:Array,default:[]},titleContentClass:{type:String,default:""},contentClass:{type:String,default:""},downContentClass:{type:String,default:""},showPagination:{type:Boolean,default:!1},prePaginationDisabled:{type:Boolean,default:!0},nextPaginationDisabled:{type:Boolean,default:!1},visible:{type:Boolean,default:!0},buttonsVisible:{type:Boolean,default:!0}},ze=Object.assign({},me,{componentId:{type:String,default:""}}),Te=xe(me,At,Bt,Rt),Ge=Nt(),be=s.defineComponent({name:"FPageHeader",props:me,emits:["click","prePaginationClick","nextPaginationClick"],setup(n,t){const e=s.ref(n.buttons),o=(D,g)=>{t.emit("click",D,g)};function r(D,g){D&&g&&g.split(" ").reduce((T,P)=>(T[P]=!0,T),D)}const i=s.computed(()=>{const D={"f-page-header":!0,"d-none":!n.visible};return r(D,n.customClass),D}),a=s.computed(()=>{const D={"f-title-icon":!0};return r(D,n.iconClass),D}),f=s.computed(()=>{const D={"f-icon":!0};return r(D,n.icon),D}),d=s.computed(()=>{const D={"f-title":!0};return r(D,n.titleContentClass),D}),p=s.computed(()=>{const D={"f-content":!0};return r(D,n.contentClass),D}),v=s.computed(()=>{const D={"f-content":!0};return r(D,n.downContentClass),D}),h=s.computed(()=>({"f-icon f-icon-arrow-w":!0,"f-state-disabled":n.prePaginationDisabled})),b=s.computed(()=>({"f-icon f-icon-arrow-e":!0,"f-state-disabled":n.nextPaginationDisabled}));function m(D){n.prePaginationDisabled||t.emit("prePaginationClick",D)}function u(D){n.nextPaginationDisabled||t.emit("nextPaginationClick",D)}function x(){return t.slots.titleContent?s.createVNode("div",{class:d.value},[s.createTextVNode(" "),t.slots.titleContent()]):s.createVNode("div",{class:"f-title"},[n.showIcon&&n.icon?s.createVNode("span",{class:a.value},[s.createVNode("i",{class:f.value},null)]):"",s.createVNode("h4",{class:"f-title-text"},[n.title]),n.subTitle?s.createVNode("h5",{class:"f-title-subtitle"},[n.subTitle]):"",n.showPagination?s.createVNode("div",{class:"f-title-pagination"},[s.createVNode("span",{class:h.value,onClick:m},null),s.createVNode("span",{class:b.value,onClick:u},null)]):""])}function R(){return t.slots.content?s.createVNode("div",{class:p.value},[s.createTextVNode(" "),t.slots.content()]):""}function _(){if(n.buttons&&n.buttons.length>0)return s.createVNode(wt,{id:n.toolbarId,customClass:n.buttonClass,visible:n.buttonsVisible,items:e.value,onClick:o},null)}function N(){return t.slots.downContent?s.createVNode("div",{class:v.value},[s.createTextVNode(" "),t.slots.downContent()]):""}return s.watch(()=>n.buttons,D=>{e.value=D},{deep:!0}),()=>n.visible?s.createVNode("div",{class:i.value},[s.createVNode("nav",{class:"f-page-header-base"},[x(),R(),_()]),N()]):null}});function $t(n,t,e){var P;const o=e&&e.getStyles&&e.getStyles()||"",r=e&&e.getDesignerClass&&e.getDesignerClass()||"",i=s.ref();function a(){return(t==null?void 0:t.schema.componentType)==="frame"?!1:e&&e.checkCanMoveComponent?e.checkCanMoveComponent():!0}function f(){return!1}function d(){return(t==null?void 0:t.schema.componentType)==="frame"?!1:e&&e.checkCanDeleteComponent?e.checkCanDeleteComponent():!0}function p(){return(t==null?void 0:t.schema.componentType)==="frame"?!0:e&&e.hideNestedPaddingInDesginerView?e.hideNestedPaddingInDesginerView():!1}function v(S){if(!S||!S.value)return null;if(S.value.schema&&S.value.schema.type==="component")return S.value;const j=s.ref(S==null?void 0:S.value.parent),y=v(j);return y||null}function h(S=t){var E;if(e!=null&&e.getDraggableDesignItemElement)return e.getDraggableDesignItemElement(S);const{componentInstance:j,designerItemElementRef:y}=S;if(!j||!j.value)return null;const{getCustomButtons:c}=j.value;return j.value.canMove||c&&((E=c())!=null&&E.length)?y:h(S.parent)}function b(S){return!!e&&e.canAccepts(S)}function m(){return(t==null?void 0:t.schema.label)||(t==null?void 0:t.schema.title)||(t==null?void 0:t.schema.name)}function u(){}function x(S,j){var y;!S||!j||(e!=null&&e.onAcceptMovedChildElement&&e.onAcceptMovedChildElement(S,j),(y=t==null?void 0:t.setupContext)==null||y.emit("dragEnd"))}function R(S,j){const{componentType:y}=S;let c=ge(y,S,j);e&&e.onResolveNewComponentSchema&&(c=e.onResolveNewComponentSchema(S,c));const E=y.toLowerCase().replace(/-/g,"_");return c&&!c.id&&c.type===y&&(c.id=`${E}_${Math.random().toString().slice(2,6)}`),c}function _(S){S&&e!=null&&e.onChildElementMovedOut&&e.onChildElementMovedOut(S)}function N(...S){if(e&&e.getPropsConfig)return e.getPropsConfig(...S)}function D(S){if(!S)return;const j=t==null?void 0:t.schema,{formSchemaUtils:y}=S;if(j&&y.getExpressions().length){const c=y.getExpressions().findIndex(E=>E.target===j.id);c>-1&&y.getExpressions().splice(c,1)}}function g(S){e&&e.onRemoveComponent&&e.onRemoveComponent(),D(S),t!=null&&t.schema.contents&&t.schema.contents.map(j=>{let y=j.id;j.type==="component-ref"&&(y=j.component);const c=n.value.querySelectorAll(`#${y}-design-item`);c!=null&&c.length&&Array.from(c).map(E=>{var V;(V=E==null?void 0:E.componentInstance)!=null&&V.value.onRemoveComponent&&E.componentInstance.value.onRemoveComponent(S)})})}function l(){if(e&&e.getCustomButtons)return e.getCustomButtons()}function T(S){if(e&&e.onPropertyChanged)return e.onPropertyChanged(S)}return i.value={canMove:a(),canSelectParent:f(),canDelete:d(),canNested:!p(),contents:t==null?void 0:t.schema.contents,elementRef:n,parent:(P=t==null?void 0:t.parent)==null?void 0:P.componentInstance,schema:t==null?void 0:t.schema,styles:o,designerClass:r,canAccepts:b,getBelongedComponentInstance:v,getDraggableDesignItemElement:h,getDraggingDisplayText:m,getPropConfig:N,getDragScopeElement:u,onAcceptMovedChildElement:x,onChildElementMovedOut:_,addNewChildComponentSchema:R,triggerBelongedComponentToMoveWhenMoved:!!e&&e.triggerBelongedComponentToMoveWhenMoved||s.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:!!e&&e.triggerBelongedComponentToDeleteWhenDeleted||s.ref(!1),onRemoveComponent:g,getCustomButtons:l,onPropertyChanged:T},i}const Ot=s.ref(0);function jt(){Ot.value++}const he=s.ref(0);function _t(n,t){const e=t.getBoundingClientRect(),o=n.getBoundingClientRect(),r=o.top>=e.top,i=o.top<=e.bottom;return r&&i}function Ye(n){const t=n.querySelector(".component-btn-group");if(!t)return;t.style.display="";const e=t.getBoundingClientRect();if(!(e.top===0&&e.left===0)){const o=t.querySelector("div");if(o){const r=o.getBoundingClientRect();o.style.top=e.top+"px";let i=e.left-r.width;const a=document.querySelector(".editorDiv");if(a){const f=a.getBoundingClientRect();i<f.left&&({left:i}=n.getBoundingClientRect())}o.style.left=i+"px"}}}function Ft(n){if(!window.scrollContainerList)return;const t=Array.from(window.scrollContainerList);if(t.length&&t.length===1){const e=t[0],o=document.querySelector(`[id=${e}]`);if(o&&o.contains(n))return o}}function Xe(n){if(!n)return;const t=n.getBoundingClientRect();if(t.width===0&&t.height===0)return;const e=n.querySelector(".component-btn-group");if(e){let o=!0;const r=Ft(n);if(r&&(o=_t(n,r)),!o){e.style.display="none";return}Ye(n)}}function Lt(n){if(!n)return;let t;n.className.includes("dgComponentSelected")?t=n:t=n.querySelector(".dgComponentSelected"),t&&Xe(t)}function qt(n){const{formSchemaUtils:t,formStateMachineUtils:e}=n;function o(d,p=""){return{path:p+d.code,field:d.id,fullPath:d.code}}function r(d,p=""){return t.getViewModelById(d).states.map(h=>o(h,p))}function i(d){const p=t.getRootViewModelId(),v=r(d);if(d===p)return v;const h=r(p,"root-component.");return[...v,...h]}function a(d){return d.binding&&d.binding.path||d.id||""}function f(){return e&&e.getRenderStates()||[]}return{getVariables:i,getControlName:a,getStateMachines:f}}class Ht{constructor(t){G(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'"}]);G(this,"expressionNames",{compute:"计算表达式",dependency:"依赖表达式",validate:"验证表达式",dataPicking:"帮助前表达式",visible:"可见表达式",readonly:"只读表达式",required:"必填表达式"});G(this,"getExpressionConverter",(t,e)=>({convertFrom:(o,r,i,a)=>{const f=i.getExpressionRuleValue(t,e||r);return f&&f.value||""},convertTo:(o,r,i,a,f)=>{var d;if(r==="dataPicking"&&(i!=null&&i.target)){const p=`${i.target}_dataPicking`;((d=i.rules)==null?void 0:d.some(h=>h.id===p&&h.value))?o.dictPickingExpressionId=p:delete o.dictPickingExpressionId}a.updateExpression(i)}}));this.formSchemaService=t}getExpressionRule(t,e){const o=this.formSchemaService.getExpressions();if(!o)return"";const r=o.find(a=>a.target===t);if(!r)return"";const i=r.rules.find(a=>a.type===e);return i||""}getContextFormVariables(){const{module:t}=this.formSchemaService.getFormSchema();if(!t.viewmodels||t.viewmodels.length===0)return[];const e=this.formSchemaService.getRootViewModelId(),o=this.formSchemaService.getViewModelById(e);if(!o||!o.states||o.states.length===0)return[];const r=[];return o.states.forEach(i=>{r.push({key:i.code,name:i.name,description:i.name,category:i.category})}),r}createTreeNode(t,e,o="label"){return{id:t.id,name:t.name,bindingPath:t[o],parents:e}}buildEntityFieldsTreeData(t=null,e){const o=[];return t==null||t.forEach(r=>{var f;const i=this.createTreeNode(r,e);let a=[];(f=r.type)!=null&&f.fields&&(a=this.buildEntityFieldsTreeData(r.type.fields,[...e,r.label])),o.push({data:i,children:a,expanded:!0})}),o}buildChildEntityTreeData(t=null,e){const o=[];return t==null||t.forEach(r=>{var d,p;const i=this.createTreeNode(r,e),a=this.buildEntityFieldsTreeData((d=r.type)==null?void 0:d.fields,[...e,r.label]),f=this.buildChildEntityTreeData((p=r.type)==null?void 0:p.entities,[...e,r.label]);f!=null&&f.length&&(a==null||a.push(...f)),o.push({data:i,children:a||[],expanded:!0})}),o}getEntitiesTreeData(){const t=this.formSchemaService.getSchemaEntities();if(!(t!=null&&t.length))return[];const e=t[0];if(!(e!=null&&e.type))return[];const o=this.buildEntityFieldsTreeData(e.type.fields,[e.code]),r=this.buildChildEntityTreeData(e.type.entities,[e.code]);return r!=null&&r.length&&(o==null||o.push(...r)),{entityCode:e.code,fields:[{data:this.createTreeNode(e,[],"code"),children:o||[]}]}}getEntitiesAndVariables(){return{entities:this.getEntitiesTreeData(),variables:{session:{name:"系统变量",items:this.sessionVariables,visible:!1},forms:{name:"表单变量",items:this.getContextFormVariables(),visible:!0}}}}onBeforeOpenExpression(t,e,o){const r=o==="Field"?t.binding.field:t.id,i=this.getExpressionRule(r,e),a=this.getEntitiesAndVariables(),f={message:["validate","required","dataPicking"].includes(e)&&i?i.message:"",...a};return i.messageType!=null&&(f.messageType=i.messageType),f}buildRule(t,e,o,r){const{expression:i,message:a,messageType:f}=e,d={id:`${t}_${o}`,type:o,value:i};return(o==="validate"||o==="dataPicking"||o==="required")&&(d.message=a),o==="dataPicking"&&(d.messageType=f),o==="validate"&&r&&(d.elementId=r),d}getExpressionData(){const{expressions:t}=this.formSchemaService.getFormSchema().module;return t||[]}updateExpression(t,e,o,r){const i=e==="Field"?t.binding.field:t.id,a=this.buildRule(i,o,r,t.type==="form-group"?t.id:"");let d=this.getExpressionData().find(v=>v.targetType===e&&v.target===i);const p=v=>v.value.trim()==="";if(d){const v=d.rules.find(h=>h.id===a.id);if(v)p(a)?d.rules=d.rules.filter(h=>h.id!==a.id):(Object.assign(v,a),r==="validate"&&t.type==="form-group"&&(v.elementId=t.id));else{if(p(a))return null;d.rules=d.rules||[],d.rules.push(a)}}else{if(p(a))return null;d={target:`${i}`,rules:[a],targetType:e}}return d}getExpressionEditorOptions(t,e,o,r){return o.reduce((i,a)=>{var d,p;const f=e==="Field"?(d=t==null?void 0:t.binding)==null?void 0:d.field:t.id;return i[a]={hide:e==="Field"?!!((p=t==null?void 0:t.binding)!=null&&p.field):!1,description:"",title:this.expressionNames[a],type:"string",$converter:this.getExpressionConverter(f),editor:{type:"expression-editor",singleExpand:!1,dialogTitle:`${this.expressionNames[a]}编辑器`,showMessage:a==="validate"||a==="dataPicking"||a==="required",showMessageType:a==="dataPicking",beforeOpen:()=>this.onBeforeOpenExpression(t,a,e),onSubmitModal:v=>{const h=this.updateExpression(t,e,v,a);if(r){const b=this.buildRule(f,v,a);r(b)}return h}}},i},{})}getExpressionInfo(t,e,o){const r=e==="Field"?t.binding.field:t.id,i=this.getExpressionRule(r,o),a={value:i&&i.value,targetId:r,targetType:e,expressionType:o};return i&&i.message&&(a.message=i.message),a}getExpressionConfig(t,e,o=["compute","dependency","validate"],r){return{description:"表达式",title:"表达式",properties:{...this.getExpressionEditorOptions(t,e,o,r)}}}getExpressionOptions(t,e,o){const r=this.getExpressionInfo(t,e,o);return{dialogTitle:`${this.expressionNames[o]}编辑器`,singleExpand:!1,showMessage:o==="required",beforeOpen:()=>this.onBeforeOpenExpression(t,o,e),expressionInfo:r}}}class Se{constructor(t,e){G(this,"componentId");G(this,"viewModelId");G(this,"eventsEditorUtils");G(this,"formSchemaUtils");G(this,"formMetadataConverter");G(this,"designViewModelUtils");G(this,"designViewModelField");G(this,"controlCreatorUtils");G(this,"designerHostService");G(this,"schemaService",null);G(this,"metadataService",null);G(this,"propertyConfig",{type:"object",categories:{}});var o;this.componentId=t,this.designerHostService=e,this.eventsEditorUtils=e.eventsEditorUtils,this.formSchemaUtils=e.formSchemaUtils,this.formMetadataConverter=e.formMetadataConverter,this.viewModelId=((o=this.formSchemaUtils)==null?void 0:o.getViewModelIdByComponentId(t))||"",this.designViewModelUtils=e.designViewModelUtils,this.controlCreatorUtils=e.controlCreatorUtils,this.metadataService=e.metadataService,this.schemaService=e.schemaService}getTableInfo(){var t;return(t=this.schemaService)==null?void 0:t.getTableInfoByViewModelId(this.viewModelId)}setDesignViewModelField(t){var o;const e=t.binding&&t.binding.type==="Form"&&t.binding.field;if(e){if(!this.designViewModelField){const r=this.designViewModelUtils.getDgViewModel(this.viewModelId);this.designViewModelField=r.fields.find(i=>i.id===e)}t.updateOn=(o=this.designViewModelField)==null?void 0:o.updateOn}}getBasicPropConfig(t){return{description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"combo-list",textField:"name",valueField:"value",idField:"value",editable:!1,data:[{value:t.type,name:Dt[t.type].name}]}}}}}getAppearanceConfig(t=null,e={},o){const r={title:"外观",description:"Appearance"},i={class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter"},style:{title:"style样式",type:"string",description:"组件的样式",$converter:"/converter/appearance.converter"}};for(const a in e)i[a]=Object.assign(i[a]||{},e[a]);return{...r,properties:{...i},setPropertyRelates(a,f){if(a){switch(a&&a.propertyID){case"class":case"style":{he.value++;break}}o&&o(a,t,f)}}}}getPropertyEditorParams(t,e=[],o="visible",r={},i={}){const{getVariables:a,getControlName:f,getStateMachines:d}=qt(this.designerHostService),p=this.getRealTargetType(t),v=e&&e.length>0?e:["Const","Variable","StateMachine","Expression"],h={type:"property-editor",propertyTypes:v};return v.map(b=>{switch(b){case"Const":Object.assign(h,{constType:"enum",constEnums:[{id:!0,name:"是"},{id:!1,name:"否"}]},r);break;case"Expression":h.expressionConfig=this.getExpressionOptions(t,p,o);break;case"StateMachine":h.stateMachines=d();break;case"Variable":Object.assign(h,{controlName:f(t),newVariablePrefix:"is",newVariableType:"Boolean",variables:a(this.viewModelId),onBeforeOpenVariables:m=>{m.value=a(this.viewModelId)}},i);break}}),h}getVisibleProperty(t,e=""){return{visible:{title:"是否可见",type:"boolean",description:"运行时组件是否可见",editor:this.getPropertyEditorParams(t,e==="gridFieldEditor"?["Const","Expression"]:["Const","Variable","StateMachine","Expression"],"visible")}}}getBehaviorConfig(t,e="",o={},r){const i={title:"行为",description:""},a=this.getVisibleProperty(t,e);for(const d in o)a[d]=Object.assign(a[d]||{},o[d]);const f=this;return{...i,properties:{...a},setPropertyRelates(d,p){if(d){switch(d.propertyID){case"disabled":case"readonly":case"visible":f.afterMutilEditorChanged(t,d);break}r&&r(d,p)}}}}afterMutilEditorChanged(t,e){this.addNewVariableToViewModel(e,this.viewModelId),this.updateExpressionValue(e),this.clearExpression(e,t)}updateElementByParentContainer(t,e){const o=e&&e.parent&&e.parent.schema;if(!o)return;const r=o.contents.findIndex(a=>a.id===t),i=oe.cloneDeep(o.contents[r]);o.contents.splice(r,1),o.contents.splice(r,0,i),jt()}addNewVariableToViewModel(t,e){const o=t.propertyValue;if(!(o&&typeof o=="object")||!(o.type==="Variable"&&o.isNewVariable))return;const a={id:o.field,category:"locale",code:o.fullPath,name:o.fullPath,type:o.newVariableType||"String"};delete o.newVariableType,delete o.isNewVariable,this.formSchemaUtils.getVariableByCode(a.code)||this.formSchemaUtils.getViewModelById(e).states.push(a)}updateExpressionValue(t){const e=t.propertyValue;if(!((e&&e.type)==="Expression"&&e.expressionInfo))return;const{expressionId:i,expressionInfo:a}=e,{targetId:f,targetType:d,expressionType:p,value:v,message:h}=a,b=this.formSchemaUtils.getModule();b.expressions??(b.expressions=[]);const{expressions:m}=b;let u=m.find(R=>R.target===f);u||(u={target:f,rules:[],targetType:d},m.push(u));const x=u.rules.find(R=>R.type===p);if(x)x.value=v,x.message=h;else{const R={id:i,type:p,value:v,message:h};u.rules.push(R)}delete e.expressionInfo}clearExpression(t,e){const o=t.propertyValue;if(o&&o.type==="Expression")return;const i=t.propertyID,a=this.formSchemaUtils.getExpressions(),f=e.binding?e.binding.field:e.id,d=a.find(p=>p.target===f);!d||!d.rules||(d.rules=d.rules.filter(p=>p.type!==i))}getExpressionOptions(t,e,o){return new Ht(this.formSchemaUtils).getExpressionOptions(t,e,o)}getRealTargetType(t){return["response-toolbar-item","tab-toolbar-item","section-toolbar-item"].indexOf(t.type)>-1?"Button":t.binding&&t.binding.field?"Field":"Container"}}class Wt extends Se{constructor(t,e){super(t,e)}getPropertyConfig(t){return this.propertyConfig.categories.basic=this.getBasicPropConfig(t),this.propertyConfig.categories.appearance=this.getAppearanceProperties(t),this.propertyConfig.categories.behavior=this.getBehaviorConfig(t),this.propertyConfig}getAppearanceProperties(t){return{title:"外观",description:"",properties:{class:{title:"class样式",type:"string",description:"组件的CSS样式"},icon:{title:"图标",type:"string",description:"图标"},title:{title:"标题",type:"string",description:"标题"}},setPropertyRelates(e,o){if(e)switch(e&&e.propertyID){case"title":{e.needRefreshControlTree=!0;break}}}}}}function Ut(n,t){function e(f){return!1}function o(){return!1}function r(){return!1}function i(){return!0}function a(f){return new Wt(f,t).getPropertyConfig(n)}return{canAccepts:e,hideNestedPaddingInDesginerView:i,getPropsConfig:a,checkCanDeleteComponent:o,checkCanMoveComponent:r}}class Qe{constructor(t){G(this,"id","");G(this,"class","btn-secondary");G(this,"icon","");G(this,"groupId","");G(this,"order",-1);G(this,"asDropDownTop",!1);G(this,"text","");G(this,"visible",!0);G(this,"shown",!0);G(this,"responsed",!1);G(this,"tipsEnable",!1);G(this,"tipsText","");G(this,"width",0);G(this,"dropdownClass","");G(this,"onClick",()=>{});G(this,"options");var o,r;this.options=t;const e=["id","class","icon","groupId","order","asDropDownTop","text","isDP","visible","responsed","width","tipsEnable","tipsText","dropdownClass","onClick"];Object.keys(t).filter(i=>e.indexOf(i)>-1).forEach(i=>{i==="visible"?this[i]=t[i]===void 0?!0:t[i]:this[i]=t[i]}),this.shown=this.visible,(o=t.appearance)!=null&&o.class&&(this.class=(r=t.appearance)==null?void 0:r.class)}get enable(){return Object.keys(this.options).indexOf("disabled")>-1?!this.options.disabled:s.computed(()=>!0)}setWidth(t){this.width=parseInt(t,10)}getWidth(){return this.visible?this.width:!1}}class zt extends Qe{constructor(t){super(t)}}function Je(){function n(t){const e=[];return t.reduce((o,r)=>(r.children&&r.children.length>0?o.push(new ve(r)):o.push(new zt(r)),o),e),e}return{buildResponseToolbarItems:n}}const{buildResponseToolbarItems:Gt}=Je();class ve extends Qe{constructor(e){super(e);G(this,"placement","");G(this,"visible",!0);G(this,"dropdownClass","");G(this,"menuClass","");G(this,"split",!1);G(this,"children",[]);G(this,"expanded",!1);G(this,"shown",!0);const o=["visible","icon","isDP","class","dropdownClass","menuClass","placement","split","expanded"];Object.keys(e).filter(r=>o.indexOf(r)>-1).forEach(r=>{r==="visible"?this[r]=e[r]===void 0?!0:e[r]:this[r]=e[r]}),this.shown=this.visible,e.children&&e.children.length&&(this.children=Gt(e.children))}}const Yt=new Map([["buttons","items"],["appearance",We]]);function Ze(n,t,e){return t}const Xt={$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:"点击事件"}},Qt={$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"]},Pe={id:{type:String,default:""},customClass:{type:String,default:""},alignment:{Type:String,default:"right"},items:{Type:Array,default:[]},visible:{type:Boolean,default:!0}},Jt=Object.assign({},Pe,{componentId:{type:String,default:""}}),Ee=xe(Pe,Xt,Yt,Ze),Ke={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}},Zt=xe(Ke,Qt,void 0,Ze),Kt=It();function De(){function n(e){const o={"f-icon":!0};if(e.icon){const r=e.icon.trim().split(" ");r&&r.length&&r.reduce((i,a)=>(i[a]=!0,i),o)}return o}function t(e){return!!(e.icon&&e.icon.trim())}return{iconClass:n,shouldShowIcon:t}}const en=["moz","ms","webkit"];function tn(){let n=0;return t=>{const e=new Date().getTime(),o=Math.max(0,16-(e-n)),r=setTimeout(()=>{t(e+o)},o);return n=e+o,r}}function nn(){if(typeof window>"u")return()=>0;if(window.requestAnimationFrame)return window.requestAnimationFrame.bind(window);const n=en.filter(t=>`${t}RequestAnimationFrame`in window)[0];return n?window[`${n}RequestAnimationFrame`]:tn()}nn();function de(n,t){return((t==null?void 0:t.split(" "))||[]).reduce((o,r)=>(r&&(o[r]=!0),o),n),n}function on(n,t){function e(g){return de({"dropdown-menu":!0},g.menuClass)}function o(g){const l={disabled:!g.enable,"dropdown-submenu":!0,"f-rt-dropdown":!0,"text-truncate":!0};return de(l,g.dropdownClass)}function r(g){const l={disabled:!g.enable,"dropdown-item":!0,"f-rt-btn":!0,"text-truncate":!0};return de(l,g.dropdownClass)}function i(g){const l={disabled:!g.enable,"dropdown-item":!0,"f-rt-btn":!0,"text-truncate":!0,"f-rt-toggle":!g.split,"btn-icontext":!!(g.icon&&g.icon.trim()),"dropdown-toggle":!g.split};return de(l,g.dropdownClass)}function a(g){const l={"f-rt-btn":!0,"text-truncate":!0,"btn-icontext":!!(g.icon&&g.icon.trim()),"d-block":!0};return de(l,g.dropdownClass)}let f;const d=new Map;function p(g,l,T){g.stopPropagation();const P=T?T.id:"__top_item__";if(l.children&&l.children.length&&(l.expanded=!l.expanded,l.expanded)){if(d.has(P)&&d.get(P)!==l){const S=d.get(P);S&&(S.expanded=!1,d.delete(P))}d.set(P,l)}}function v(g,l){document.body.click(),l.enable&&(g.stopPropagation(),typeof l.onClick=="function"&&l.onClick(g,l.id),n.emit("click",g,l.id))}function h(g,l){const T=g.target;T.className.indexOf("dropdown-item")<0||(T.title=T.scrollWidth>T.clientWidth?l:"")}function b(g,l,T){if(l.tipsEnable&&l.tipsText){const P=s.reactive({content:l.tipsText,enable:l.tipsEnable});return s.withDirectives(s.createVNode("li",{class:r(l),id:l.id,key:l.id+"_"+T,onClick:S=>v(S,l)},[s.createVNode("span",{class:a(l)},[t.shouldShowIcon(l)&&s.createVNode("i",{class:t.iconClass(l)},null),l.text])]),[[s.resolveDirective("tooltip"),P]])}return s.createVNode("li",{class:r(l),id:l.id,onClick:P=>v(P,l)},[s.createVNode("span",{class:a(l),onMouseenter:P=>h(P,l.text)},[t.shouldShowIcon(l)&&s.createVNode("i",{class:t.iconClass(l)},null),l.text])])}function m(g,l,T){l.enable&&(typeof l.onClick=="function"&&T.onClick(g,l.id),n.emit("click",g,l.id),T.split||p(g,l,T))}function u(g,l,T){g&&g.stopPropagation(),p(g,l,T)}function x(g,l){g.stopPropagation();const T=l.id;if(l.children&&l.children.length&&l.expanded&&d.has(T)){const P=d.get(T);P&&(P.expanded=!1,d.delete(T))}}function R(g,l,T){if(l.tipsEnable&&l.tipsText){const P=s.reactive({content:l.tipsText,enable:l.tipsEnable});return s.createVNode("li",{class:o(l),id:l.id,key:l.id+"_"+T,onClick:S=>m(S,l,g)},[s.withDirectives(s.createVNode("span",{class:i(l)},[t.shouldShowIcon(l)&&s.createVNode("i",{class:t.iconClass(l)},null),l.text]),[[s.resolveDirective("tooltip"),P]]),l.split&&s.createVNode("span",{class:"dropdown-toggle dropdown-toggle-split f-rt-toggle",onClick:S=>u(S,l,g)},null),f(l,l)])}return s.createVNode("li",{class:o(l),id:l.id,onClick:P=>m(P,l,g),onMouseenter:P=>h(P,l.text)},[s.createVNode("span",{class:i(l)},[t.shouldShowIcon(l)&&s.createVNode("i",{class:t.iconClass(l)},null),l.text]),l.split&&s.createVNode("span",{class:"dropdown-toggle dropdown-toggle-split f-rt-toggle",onClick:P=>u(P,l,g)},null),f(l,l)])}function _(g){return g.children.filter(l=>l.visible).map((l,T)=>l.children&&l.children.length?R(g,l,T):b(g,l,T))}function N(g,l,T){const P={display:g.expanded?"block":"none",position:"fixed",maxWidth:"300px",minWidth:"120px",zIndex:1040,overflowY:"auto",maxHeight:"none"},S=window.innerWidth,j=window.innerHeight,y=l,c=y==null?void 0:y.getClientRects();if(y&&c&&c.length){const{top:E,width:V,left:w,right:k,height:B}=c[0],M=Math.ceil(B+E);P.top=`${M}px`,P.left=`${w}px`;const H=g.id+"_menu",q=l?l.querySelector("#"+H):null;if(q){q.style.visibility="hidden",q.style.display="block";const $=q.offsetHeight;P.display==="block"&&(q.style.display="block");const O=q.getBoundingClientRect();if(T){P.top=`${E-6}px`;const z=Math.ceil(V+w);P.left=`${z}px`}S-w-V<O.width&&(P.left=`${(T?w:k)-O.width}px`),j-E-B<$?E>$?(P.top=`${E-$-6}px`,P.maxHeight=`${E-16}px`):(P.maxHeight=`${j-M}px`,E>j-E-B&&(P.top="10px",P.maxHeight=`${E-16}px`)):P.maxHeight=`${j-M}px`,q.style.visibility="visible"}}return P}f=function(g,l){var j,y;const T=s.getCurrentInstance(),P=l?l.id:g.id,S=(y=(j=T==null?void 0:T.exposed)==null?void 0:j.elementRef.value)==null?void 0:y.querySelector("#"+P);return s.createVNode("ul",{class:e(g),style:N(g,S,l),id:g.id+"_menu",onWheel:c=>x(c,g)},[_(g)])};function D(){d.forEach(g=>{g.expanded=!1}),d.clear()}return{renderDropdownMenu:f,clearAllDropDownMenu:D}}function rn(n,t,e){const o=s.ref(n.alignment),{renderDropdownMenu:r,clearAllDropDownMenu:i}=on(t,e);function a(u){const x={"btn-group":!0,"f-rt-dropdown":!0,"f-btn-ml":o.value==="right"||o.value==="center","f-btn-mr":o.value==="left"};return de(x,u.dropdownClass)}function f(u){const x={btn:!0,disabled:!u.enable,"f-rt-btn":!0,"btn-icontext":!!(u.icon&&u.icon.trim()),"f-rt-toggle":!u.split,"dropdown-toggle":!u.split};return de(x,u.class)}function d(u){return de({btn:!0,"dropdown-toggle":!0,"dropdown-toggle-split":!0},u.class)}function p(u){return u.split?{display:"flex"}:{display:"flex","border-radius":"6px"}}function v(u,x){u.stopPropagation();const R=x.expanded;document.body.click(),typeof x.onClick=="function"&&x.onClick(u,x.id),t.emit("click",u,x.id),x.split||(x.expanded=!R)}function h(u,x){u.stopPropagation();const R=x.expanded;document.body.click(),x.expanded=!R}function b(u,x=!0){if(u.tipsEnable&&u.tipsText){const R=s.reactive({content:u.tipsText,enable:u.tipsEnable});return s.createVNode("div",{id:u.id,class:a(u)},[s.withDirectives(s.createVNode("div",{class:f(u),style:p(u),onClick:_=>u.enable&&v(_,u)},[e.shouldShowIcon(u)&&s.createVNode("i",{class:e.iconClass(u)},null),s.createVNode("span",null,[u.text])]),[[s.resolveDirective("tooltip"),R]]),u.split&&s.createVNode("button",{class:d(u),style:"border-radius:0 6px 6px 0;",onClick:_=>h(_,u)},null),x&&r(u)])}return s.createVNode("div",{id:u.id,class:a(u)},[s.createVNode("div",{class:f(u),style:p(u),onClick:R=>u.enable&&v(R,u)},[e.shouldShowIcon(u)&&s.createVNode("i",{class:e.iconClass(u)},null),s.createVNode("span",null,[u.text])]),u.split&&s.createVNode("button",{class:d(u),style:"border-radius:0 6px 6px 0;",onClick:R=>h(R,u)},null),x&&r(u)])}function m(){i()}return{renderToolbarDropdown:b,clearAllDropDown:m}}const{buildResponseToolbarItems:et}=Je(),ye=s.defineComponent({name:"FResponseToolbar",props:Pe,emits:["click"],setup(n,t){const e=s.ref(et(n.items)),o=s.ref(),r=s.ref(),i=s.ref(),a={id:"__more_buttons__",text:"更多"},f=s.ref(new ve(a)),d={id:a.id+"width",text:a.text},p=s.ref(-1),v=De();let h=!1;const b=s.computed(()=>f.value.children.length>0),m=s.computed(()=>{const M={"f-toolbar":!0,"f-response-toolbar":!0,"position-relative":!0,"f-response-toolbar-sm":n.buttonSize==="sm","f-response-toolbar-lg":n.buttonSize==="lg","d-none":!n.visible};return le.getCustomClass(M,n.customClass)}),u=s.computed(()=>({"w-100":!0,"d-flex":!0,"flex-nowrap":!0,"justify-content-end":n.alignment==="right","justify-content-start":n.alignment==="left","justify-content-center":n.alignment==="center"})),{renderToolbarDropdown:x,clearAllDropDown:R}=rn(n,t,v);function _(M){M&&M.target.closest("ul.dropdown-menu")&&M.type==="wheel"||(e.value.filter(H=>H.children&&H.children.length>0).forEach(H=>{H.expanded=!1}),f.value.expanded=!1,R())}function N(M,H){var O;const q={btn:!0,"f-rt-btn":!0,"f-btn-ml":n.alignment==="right"||H>0&&n.alignment==="center","f-btn-mr":n.alignment==="left","btn-icontext":!!(M.icon&&M.icon.trim())},$=((O=M==null?void 0:M.appearance)==null?void 0:O.class)||M.class||"btn-secondary";return le.getCustomClass(q,$)}function D(M,H){document.body.click(),typeof H.onClick=="function"&&H.onClick(M,H.id),t.emit("click",M,H.id)}function g(M,H){if(M.tipsEnable&&M.tipsText){const q=s.reactive({content:M.tipsText,enable:M.tipsEnable});return s.withDirectives(s.createVNode("button",{type:"button",class:N(M,H),id:M.id,disabled:!M.enable,onClick:$=>D($,M)},[v.shouldShowIcon(M)&&s.createVNode("i",{class:v.iconClass(M)},null),M.text]),[[s.resolveDirective("tooltip"),q]])}return s.createVNode("button",{type:"button",class:N(M,H),id:M.id,disabled:!M.enable,onClick:q=>D(q,M)},[v.shouldShowIcon(M)&&s.createVNode("i",{class:v.iconClass(M)},null),M.text])}let l=new Map,T=[];function P(M){const H=Math.ceil(parseFloat(getComputedStyle(M).getPropertyValue("margin-left"))),q=Math.ceil(parseFloat(getComputedStyle(M).getPropertyValue("margin-right")));return(H||0)+M.getBoundingClientRect().width+(q||0)}function S(M,H,q){if(H<p.value){let $=q-1;for(;$>=0;$--){const O=M[$],z=P(O);if(H+=z,H>=p.value)break}q=$}return H-=p.value,{start:q,space:H}}function j(M){const H=i.value;let q=M;const O=Array.from(H.children).filter(ee=>ee.id!=="__more_buttons__"),z=O.length;let U=!1,Y=0;for(;Y<z;Y++){const ee=O[Y],ie=P(ee);if(ie<=q)q-=ie;else{const Z=S(O,q,Y);Y=Z.start,q=Z.space,U=!0;break}}if(!U&&T.length>0){const ee=S(O,q,Y);Y=ee.start,q=ee.space}const W=T.length>0;for(;Y<z;Y++){const ee=O[Y],ie=P(ee);l.set(ee.id,!0),T[W?"unshift":"push"]({id:ee.id,width:ie})}return q}function y(M){let H=j(M);if(T.length){let z=0;for(;z<T.length;z++){const U=n.items.find(Y=>Y.id===T[z].id);if(U&&U.visible!==!1){const Y=T[z].width;if(H>=Y||z===T.length-1&&H+p.value>=Y)H-=Y;else break}}for(let U=0;U<z;U++)l.delete(T[U].id);T.splice(0,z-1)}const q=Object.assign({},f.value);q.children=[];const $=new ve(q),O=e.value.reduce((z,U)=>{const Y=n.items.find(W=>W.id===U.id);return l.has(U.id)?($.children.push(U),U.shown=!1):U.shown=Y.visible!==!1,z.push(U),z},[]);f.value=$,e.value=O}function c(M=-1){if(M===0||!i.value||!r.value)return;M<0&&(M=r.value.getBoundingClientRect().width);const H=i.value.getBoundingClientRect().width;(M>=0&&M<H||T.length)&&(y(M),_())}function E(){return p.value<0&&s.createVNode("div",{style:"position:absolute;top:-30px;visibility:hidden;"},[x(new ve(d))])}const V=new ResizeObserver(M=>{if(M.length){const q=M[0].contentRect.width;c(q)}});function w(){l=new Map,T=[]}function k(){r.value&&!h&&(V.observe(r.value),h=!0)}function B(){if(o.value&&p.value<0){const M=o.value.querySelector("#"+d.id);M&&(p.value=P(M))}}return s.onMounted(()=>{B(),c(),k(),document.body.addEventListener("click",_),document.body.addEventListener("wheel",_)}),s.onUnmounted(()=>{V.disconnect(),document.body.removeEventListener("click",_),document.body.removeEventListener("wheel",_)}),s.watch(()=>n.items,()=>{e.value=et(n.items),f.value.children=[],s.nextTick(()=>{w(),c()})},{deep:!0}),s.watch(()=>n.visible,M=>{M&&s.nextTick(()=>{B(),c(),k()})}),t.expose({elementRef:o}),()=>s.createVNode("div",{class:m.value,id:n.id,ref:o,style:{"overflow-y":p.value<0?"hidden":"initial"}},[n.visible&&E(),n.visible&&s.createVNode("div",{ref:r,class:u.value},[s.createVNode("div",{ref:i,class:"d-inline-block f-response-content",style:"white-space: nowrap;"},[e.value.filter(M=>M.shown).map((M,H)=>M.children&&M.children.length>0?x(M):g(M,H)),b.value&&x(f.value)])])])}});class sn extends Se{constructor(e,o,r="response-toolbar"){super(e,o);G(this,"toolbarType","response-toolbar");this.toolbarType=r}getPropertyConfig(e){return this.propertyConfig.categories.basic=this.getBasicPropConfig(e),this.toolbarType!=="tab-toolbar"&&this.getAppearancePropConfig(e),this.toolbarType==="response-toolbar"&&(this.propertyConfig.categories.behavior=this.getBehaviorConfig(e)),this.propertyConfig}getAppearancePropConfig(e){this.propertyConfig.categories.appearance={title:"外观",description:"Appearance",properties:{class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter"}}}}getBehaviorProperties(e){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 an(n,t,e){const o=n.schema;function r(){var x;let u=((x=n.parent)==null?void 0:x.schema.type)||"";["page-header","tabs","section"].findIndex(R=>R===u)===-1&&(u=""),e.toolbarPosition=u}r();function i(u){return!1}function a(u,x){return x.text=u.label,x}function f(){return!1}function d(){return!1}function p(){return!1}function v(){return!0}function h(u){return new sn(u,t,o.type).getPropertyConfig(o)}function b(u){var N;u&&(u.stopPropagation(),u.preventDefault());const{schema:x}=n;x.buttons||(x.buttons=[]);let R="";if(x.type)R=x.type+"-item";else{const D=(N=n.parent)==null?void 0:N.schema.type;R=D==="tabs"?"tab-toolbar-item":D==="section"?"section-toolbar-item":"response-toolbar-item"}const _=ge(R);_.id=`toolbar_item_${Math.random().toString().slice(2,6)}`,x.buttons.push(_),e.updateToolbarItems(),e.changeSelectedId("")}function m(){return[{id:"appendItem",title:"新增按钮",text:"",icon:"f-icon f-icon-plus-circle text-white",onClick:u=>b(u)}]}return{canAccepts:i,checkCanAddComponent:p,checkCanDeleteComponent:d,checkCanMoveComponent:f,hideNestedPaddingInDesginerView:v,onResolveNewComponentSchema:a,getPropsConfig:h,getCustomButtons:m}}var ue=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function ln(n){return n&&n.__esModule&&Object.prototype.hasOwnProperty.call(n,"default")?n.default:n}function Ce(n){throw new Error('Could not dynamically require "'+n+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var tt={exports:{}};(function(n,t){(function(e){n.exports=e()})(function(){return function(){function e(o,r,i){function a(p,v){if(!r[p]){if(!o[p]){var h=typeof Ce=="function"&&Ce;if(!v&&h)return h(p,!0);if(f)return f(p,!0);var b=new Error("Cannot find module '"+p+"'");throw b.code="MODULE_NOT_FOUND",b}var m=r[p]={exports:{}};o[p][0].call(m.exports,function(u){var x=o[p][1][u];return a(x||u)},m,m.exports,e,o,r,i)}return r[p].exports}for(var f=typeof Ce=="function"&&Ce,d=0;d<i.length;d++)a(i[d]);return a}return e}()({1:[function(e,o,r){var i={},a="(?:^|\\s)",f="(?:\\s|$)";function d(h){var b=i[h];return b?b.lastIndex=0:i[h]=b=new RegExp(a+h+f,"g"),b}function p(h,b){var m=h.className;m.length?d(b).test(m)||(h.className+=" "+b):h.className=b}function v(h,b){h.className=h.className.replace(d(b)," ").trim()}o.exports={add:p,rm:v}},{}],2:[function(e,o,r){(function(i){var a=e("contra/emitter"),f=e("crossvent"),d=e("./classes"),p=document,v=p.documentElement;function h(c,E){var V=arguments.length;V===1&&Array.isArray(c)===!1&&(E=c,c=[]);var w,k,B,M,H,q,$,O,z,U=null,Y,W,ee=!1,ie=0,Z,F=E||{};F.moves===void 0&&(F.moves=N),F.accepts===void 0&&(F.accepts=N),F.invalid===void 0&&(F.invalid=En),F.containers===void 0&&(F.containers=c||[]),F.isContainer===void 0&&(F.isContainer=_),F.copy===void 0&&(F.copy=!1),F.copySortSource===void 0&&(F.copySortSource=!1),F.revertOnSpill===void 0&&(F.revertOnSpill=!1),F.removeOnSpill===void 0&&(F.removeOnSpill=!1),F.direction===void 0&&(F.direction="vertical"),F.ignoreInputTextSelection===void 0&&(F.ignoreInputTextSelection=!0),F.mirrorContainer===void 0&&(F.mirrorContainer=p.body);var K=a({containers:F.containers,start:Pn,end:pt,cancel:bt,remove:mt,destroy:wn,canMove:Sn,dragging:!1});return F.removeOnSpill===!0&&K.on("over",Mn).on("out",kn),ct(),K;function Ve(C){return K.containers.indexOf(C)!==-1||F.isContainer(C)}function ct(C){var I=C?"remove":"add";u(v,I,"mousedown",xn),u(v,I,"mouseup",Be)}function Ne(C){var I=C?"remove":"add";u(v,I,"mousemove",Tn)}function dt(C){var I=C?"remove":"add";f[I](v,"selectstart",ut),f[I](v,"click",ut)}function wn(){ct(!0),Be({})}function ut(C){Y&&C.preventDefault()}function xn(C){M=C.clientX,H=C.clientY;var I=x(C)!==1||C.metaKey||C.ctrlKey;if(!I){var A=C.target,L=Ie(A);L&&(Y=L,Ne(),C.type==="mousedown"&&(T(A)?A.focus():C.preventDefault()))}}function Tn(C){if(Y){if(x(C)===0){Be({});return}if(!(C.clientX!==void 0&&Math.abs(C.clientX-M)<=(F.slideFactorX||0)&&C.clientY!==void 0&&Math.abs(C.clientY-H)<=(F.slideFactorY||0))){if(F.ignoreInputTextSelection){var I=y("clientX",C)||0,A=y("clientY",C)||0,L=p.elementFromPoint(I,A);if(T(L))return}var X=Y;Ne(!0),dt(),pt(),ft(X),d.add(O||B,"gu-transit"),Nn(),Vn(),ie=0,$e(C)}}}function Ie(C){if(!(K.dragging&&w)&&!Ve(C)){for(var I=C;l(C)&&Ve(l(C))===!1;)if(F.invalid(C,I)||(C=l(C),!C))return;var A=l(C);if(A&&!F.invalid(C,I)){var L=F.moves(C,A,I,S(C));if(L)return{item:C,source:A}}}}function Sn(C){return!!Ie(C)}function Pn(C){var I=Ie(C);I&&ft(I)}function ft(C){_n(C.item,C.source)&&(O=C.item.cloneNode(!0),K.emit("cloned",O,C.item,"copy")),k=C.source,B=C.item,q=$=S(C.item),K.dragging=!0,K.emit("drag",B,k)}function En(){return!1}function pt(){if(K.dragging){var C=O||B;ht(C,l(C))}}function gt(){Y=!1,Ne(!0),dt(!0)}function Be(C){if(gt(),!!K.dragging){var I=O||B,A=y("clientX",C)||0,L=y("clientY",C)||0,X=R(w,A,L),Q=vt(X,A,L);Q&&(O&&F.copySortSource||!O||Q!==k)?ht(I,Q):F.removeOnSpill?mt():bt()}}function ht(C,I){var A=l(C);O&&F.copySortSource&&I===k&&A.removeChild(B),Re(I)?K.emit("cancel",C,k):K.emit("drop",C,I,k,$),Ae()}function mt(){if(K.dragging){var C=O||B,I=l(C);I&&I.removeChild(C),K.emit(O?"cancel":"remove",C,I,k),Ae()}}function bt(C){if(K.dragging){var I=arguments.length>0?C:F.revertOnSpill,A=O||B,L=l(A),X=Re(L);X===!1&&I&&(O?L&&L.removeChild(O):k.insertBefore(A,q)),X||I?K.emit("cancel",A,k,k):K.emit("drop",A,L,k,$),Ae()}}function Ae(){var C=O||B;gt(),In(),Bn(),C&&d.rm(C,"gu-transit"),z&&clearTimeout(z),K.dragging=!1,U&&K.emit("out",C,U,k),K.emit("dragend",C,ie),k=B=O=q=$=z=U=null}function Re(C,I){var A;return I!==void 0?A=I:w?A=$:A=S(O||B),C===k&&A===q}function vt(C,I,A){for(var L=C;L&&!X();)L=l(L);return L;function X(){var Q=Ve(L);if(Q===!1)return!1;var ce=yt(L,C),re=Ct(L,ce,I,A),ae=Re(L,re);return ae?!0:F.accepts(B,L,k,re)}}function $e(C){if(!w)return;C.preventDefault();var I=y("clientX",C)||0,A=y("clientY",C)||0;w.style.left=I-2+"px",w.style.top=A-2+"px";var L=O||B,X=R(w,I,A),Q=vt(X,I,A),ce=Q!==null&&Q!==U;(ce||Q===null)&&(se(),U=Q,pe()),jn(X,A);var re=l(L);if(Q===k&&O&&!F.copySortSource){re&&re.removeChild(L);return}var ae,fe=yt(Q,X);if(ee=An(fe,Q),fe!==null)ae=Ct(Q,fe,I,A);else if(F.revertOnSpill===!0&&!O)ae=q,Q=k;else{O&&re&&re.removeChild(L),O&&W&&(W.style.display="none");return}W.style.display="block",Dn(ae,L,ce),ae?$n(fe,ae):On(Q);function te(ne){K.emit(ne,L,U,k)}function pe(){ce&&te("over")}function se(){U&&te("out")}}function Dn(C,I,A){(C===I||C===S(I))&&($=S(I)),(C===null&&A||C!==I&&C!==S(I))&&($=C)}function Mn(C){d.rm(C,"gu-hide")}function kn(C){K.dragging&&d.add(C,"gu-hide")}function Vn(){w||(w=document.createElement("div"),w.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;",w.innerHTML=F.getMirrorText&&F.getMirrorText(B)||"控件",d.add(w,"gu-mirror"),F.mirrorContainer.appendChild(w),u(v,"add","mousemove",$e),d.add(F.mirrorContainer,"gu-unselectable"),K.emit("cloned",w,B,"mirror"))}function Nn(){if(W=document.createElement("div"),d.add(W,"gu-insertion"),B){var C=B.getBoundingClientRect();W.style.left=C.left+"px",W.style.top=C.top+"px"}ee=!1,F.mirrorContainer.appendChild(W)}function In(){w&&(d.rm(F.mirrorContainer,"gu-unselectable"),u(v,"remove","mousemove",$e),l(w).removeChild(w),w=null)}function Bn(){W&&(l(W).removeChild(W),W=null)}function yt(C,I){for(var A=I;A!==C&&l(A)!==C;)A=l(A);return A===v?null:A}function An(C,I){if(!I)return ee;var A=C||I&&I.lastElementChild;if(!A)return!0;var L=getComputedStyle(C),X=/^inline/.test(L.getPropertyValue("display"))||/^(left|right)$/.test(L.getPropertyValue("float"));if(X)return!0;if(I){var Q=getComputedStyle(I),ce=Q.getPropertyValue("display");if(/flex$/.test(ce)){var re=Q.getPropertyValue("flex-direction")||"row";if(re==="row"||re==="row-reverse")return!Rn(I)}return!1}return!0}function Rn(C){if(!C.children||!C.children.length)return!1;for(const I of Array.from(C.children)){const L=(I.className&&I.className.split(" ")||[]).filter(X=>/^col(-md|-xl|-el){0,1}-([1-9]|10|11|12)$/.test(X));if(!L.length)return!1;for(const X of L){const Q=X.slice(X.lastIndexOf("-")+1);if(parseInt(Q,10)!==12)return!1}}return!0}function $n(C,I){const A=I.getBoundingClientRect();if(W.style.left=A.left+"px",W.style.top=A.top+"px",ee){if(W.style.height=A.height+"px",W.style.width="4px",C){const L=C.getBoundingClientRect();L.top!==A.top&&(W.style.left=L.right+"px",W.style.top=L.top+"px",W.style.height=L.height+"px")}}else if(W.style.height="4px",W.style.width=A.width+"px",Z){const L=Z.getBoundingClientRect();A.top<L.top&&(W.style.display="none")}I===B&&B&&(W.style.display="none")}function On(C){$=null;var I=C.lastElementChild;if(I){var A=I.getBoundingClientRect();ee?(W.style.left=A.right+"px",W.style.top=A.top+"px",W.style.height=A.height+"px",W.style.width="4px"):(W.style.left=A.left+"px",W.style.top=A.bottom+"px",W.style.height="4px",W.style.width=A.width+"px"),I===B&&B&&(W.style.display="none")}else W.style.display="none"}function jn(C,I){if(!F.mirrorContainer.contains(C)||!window.scrollContainerList||!Array.from(window.scrollContainerList).length||(Z=b(C),!Z||!Z.contains(C)))return;const A=document.querySelector(".dgComponentSelected"),L=Z.getBoundingClientRect();if(I-30<L.top&&Z.scrollTop>0){let X=Z.scrollTop<10?Z.scrollTop:10;Z.scrollBy(0,-1*X),A&&Z.contains(A)&&(ie=ie+-1*X)}if(I+30>L.bottom&&Z.scrollTop<Z.scrollHeight-Z.clientHeight){const X=Z.scrollHeight-Z.clientHeight-Z.scrollTop;let Q=X<10?X:10;Z.scrollBy(0,Q),A&&Z.contains(A)&&(ie=ie+Q)}}function Ct(C,I,A,L){var X=F.direction==="horizontal",Q=F.direction==="mixed",ce=I!==C?ae():re();return ce;function re(){var te=C.children.length,pe,se,ne;for(pe=0;pe<te;pe++)if(se=C.children[pe],ne=se.getBoundingClientRect(),X&&ne.left+ne.width/2>A||!Q&&!X&&ne.top+ne.height/2>L||Q&&ne.left+ne.width>A&&ne.top+ne.height>L)return se;return null}function ae(){var te=I.getBoundingClientRect();if(Q){var pe=L-te.top,se=A-te.left,ne=te.bottom-L,Oe=te.right-A,je=Math.min(se,Oe,pe,ne),_e;return ee?_e=Oe<se:_e=ne===je||Oe===je||se===je,fe(_e)}return fe(X?A>te.left+D(te)/2:L>te.top+g(te)/2)}function fe(te){return te?S(I):I}}function _n(C,I){return typeof F.copy=="boolean"?F.copy:F.copy(C,I)}}function b(c){const E=Array.from(window.scrollContainerList);if(E.length===1){const w=Array.from(window.scrollContainerList)[0];return document.getElementById(w)}const V=m(E);for(const w of V)if(w.contains(c))return w;return null}function m(c){const E=[];return c.forEach(V=>{const w=document.getElementById(V);w&&E.push(w)}),E.sort((V,w)=>V.contains(w)?1:w.contains(V)?-1:0),E}function u(c,E,V,w){var k={mouseup:"touchend",mousedown:"touchstart",mousemove:"touchmove"},B={mouseup:"pointerup",mousedown:"pointerdown",mousemove:"pointermove"},M={mouseup:"MSPointerUp",mousedown:"MSPointerDown",mousemove:"MSPointerMove"};i.navigator.pointerEnabled?f[E](c,B[V],w):i.navigator.msPointerEnabled?f[E](c,M[V],w):(f[E](c,k[V],w),f[E](c,V,w))}function x(c){if(c.touches!==void 0)return c.touches.length;if(c.which!==void 0&&c.which!==0)return c.which;if(c.buttons!==void 0)return c.buttons;var E=c.button;if(E!==void 0)return E&1?1:E&2?3:E&4?2:0}function R(c,E,V){c=c||{};var w=c.className||"",k;return c.className+=" gu-hide",k=p.elementFromPoint(E,V),c.className=w,k}function _(){return!1}function N(){return!0}function D(c){return c.width||c.right-c.left}function g(c){return c.height||c.bottom-c.top}function l(c){return c.parentNode===p?null:c.parentNode}function T(c){return c.tagName==="INPUT"||c.tagName==="TEXTAREA"||c.tagName==="SELECT"||P(c)}function P(c){return!c||c.contentEditable==="false"?!1:c.contentEditable==="true"?!0:P(l(c))}function S(c){return c.nextElementSibling||E();function E(){var V=c;do V=V.nextSibling;while(V&&V.nodeType!==1);return V}}function j(c){return c.targetTouches&&c.targetTouches.length?c.targetTouches[0]:c.changedTouches&&c.changedTouches.length?c.changedTouches[0]:c}function y(c,E){var V=j(E),w={pageX:"clientX",pageY:"clientY"};return c in w&&!(c in V)&&w[c]in V&&(c=w[c]),V[c]}o.exports=h}).call(this,typeof ue<"u"?ue:typeof self<"u"?self:typeof window<"u"?window:{})},{"./classes":1,"contra/emitter":5,crossvent:6}],3:[function(e,o,r){o.exports=function(a,f){return Array.prototype.slice.call(a,f)}},{}],4:[function(e,o,r){var i=e("ticky");o.exports=function(f,d,p){f&&i(function(){f.apply(p||null,d||[])})}},{ticky:10}],5:[function(e,o,r){var i=e("atoa"),a=e("./debounce");o.exports=function(d,p){var v=p||{},h={};return d===void 0&&(d={}),d.on=function(b,m){return h[b]?h[b].push(m):h[b]=[m],d},d.once=function(b,m){return m._once=!0,d.on(b,m),d},d.off=function(b,m){var u=arguments.length;if(u===1)delete h[b];else if(u===0)h={};else{var x=h[b];if(!x)return d;x.splice(x.indexOf(m),1)}return d},d.emit=function(){var b=i(arguments);return d.emitterSnapshot(b.shift()).apply(this,b)},d.emitterSnapshot=function(b){var m=(h[b]||[]).slice(0);return function(){var u=i(arguments),x=this||d;if(b==="error"&&v.throws!==!1&&!m.length)throw u.length===1?u[0]:u;return m.forEach(function(_){v.async?a(_,u,x):_.apply(x,u),_._once&&d.off(b,_)}),d}},d}},{"./debounce":4,atoa:3}],6:[function(e,o,r){(function(i){var a=e("custom-event"),f=e("./eventmap"),d=i.document,p=b,v=u,h=[];i.addEventListener||(p=m,v=x),o.exports={add:p,remove:v,fabricate:R};function b(l,T,P,S){return l.addEventListener(T,P,S)}function m(l,T,P){return l.attachEvent("on"+T,N(l,T,P))}function u(l,T,P,S){return l.removeEventListener(T,P,S)}function x(l,T,P){var S=D(l,T,P);if(S)return l.detachEvent("on"+T,S)}function R(l,T,P){var S=f.indexOf(T)===-1?y():j();l.dispatchEvent?l.dispatchEvent(S):l.fireEvent("on"+T,S);function j(){var c;return d.createEvent?(c=d.createEvent("Event"),c.initEvent(T,!0,!0)):d.createEventObject&&(c=d.createEventObject()),c}function y(){return new a(T,{detail:P})}}function _(l,T,P){return function(j){var y=j||i.event;y.target=y.target||y.srcElement,y.preventDefault=y.preventDefault||function(){y.returnValue=!1},y.stopPropagation=y.stopPropagation||function(){y.cancelBubble=!0},y.which=y.which||y.keyCode,P.call(l,y)}}function N(l,T,P){var S=D(l,T,P)||_(l,T,P);return h.push({wrapper:S,element:l,type:T,fn:P}),S}function D(l,T,P){var S=g(l,T,P);if(S){var j=h[S].wrapper;return h.splice(S,1),j}}function g(l,T,P){var S,j;for(S=0;S<h.length;S++)if(j=h[S],j.element===l&&j.type===T&&j.fn===P)return S}}).call(this,typeof ue<"u"?ue:typeof self<"u"?self:typeof window<"u"?window:{})},{"./eventmap":7,"custom-event":8}],7:[function(e,o,r){(function(i){var a=[],f="",d=/^on/;for(f in i)d.test(f)&&a.push(f.slice(2));o.exports=a}).call(this,typeof ue<"u"?ue:typeof self<"u"?self:typeof window<"u"?window:{})},{}],8:[function(e,o,r){(function(i){var a=i.CustomEvent;function f(){try{var d=new a("cat",{detail:{foo:"bar"}});return d.type==="cat"&&d.detail.foo==="bar"}catch{}return!1}o.exports=f()?a:typeof document<"u"&&typeof document.createEvent=="function"?function(p,v){var h=document.createEvent("CustomEvent");return v?h.initCustomEvent(p,v.bubbles,v.cancelable,v.detail):h.initCustomEvent(p,!1,!1,void 0),h}:function(p,v){var h=document.createEventObject();return h.type=p,v?(h.bubbles=!!v.bubbles,h.cancelable=!!v.cancelable,h.detail=v.detail):(h.bubbles=!1,h.cancelable=!1,h.detail=void 0),h}}).call(this,typeof ue<"u"?ue:typeof self<"u"?self:typeof window<"u"?window:{})},{}],9:[function(e,o,r){var i=o.exports={},a,f;function d(){throw new Error("setTimeout has not been defined")}function p(){throw new Error("clearTimeout has not been defined")}(function(){try{typeof setTimeout=="function"?a=setTimeout:a=d}catch{a=d}try{typeof clearTimeout=="function"?f=clearTimeout:f=p}catch{f=p}})();function v(g){if(a===setTimeout)return setTimeout(g,0);if((a===d||!a)&&setTimeout)return a=setTimeout,setTimeout(g,0);try{return a(g,0)}catch{try{return a.call(null,g,0)}catch{return a.call(this,g,0)}}}function h(g){if(f===clearTimeout)return clearTimeout(g);if((f===p||!f)&&clearTimeout)return f=clearTimeout,clearTimeout(g);try{return f(g)}catch{try{return f.call(null,g)}catch{return f.call(this,g)}}}var b=[],m=!1,u,x=-1;function R(){!m||!u||(m=!1,u.length?b=u.concat(b):x=-1,b.length&&_())}function _(){if(!m){var g=v(R);m=!0;for(var l=b.length;l;){for(u=b,b=[];++x<l;)u&&u[x].run();x=-1,l=b.length}u=null,m=!1,h(g)}}i.nextTick=function(g){var l=new Array(arguments.length-1);if(arguments.length>1)for(var T=1;T<arguments.length;T++)l[T-1]=arguments[T];b.push(new N(g,l)),b.length===1&&!m&&v(_)};function N(g,l){this.fun=g,this.array=l}N.prototype.run=function(){this.fun.apply(null,this.array)},i.title="browser",i.browser=!0,i.env={},i.argv=[],i.version="",i.versions={};function D(){}i.on=D,i.addListener=D,i.once=D,i.off=D,i.removeListener=D,i.removeAllListeners=D,i.emit=D,i.prependListener=D,i.prependOnceListener=D,i.listeners=function(g){return[]},i.binding=function(g){throw new Error("process.binding is not supported")},i.cwd=function(){return"/"},i.chdir=function(g){throw new Error("process.chdir is not supported")},i.umask=function(){return 0}},{}],10:[function(e,o,r){(function(i){var a=typeof i=="function",f;a?f=function(d){i(d)}:f=function(d){setTimeout(d,0)},o.exports=f}).call(this,e("timers").setImmediate)},{timers:11}],11:[function(e,o,r){(function(i,a){var f=e("process/browser.js").nextTick,d=Function.prototype.apply,p=Array.prototype.slice,v={},h=0;r.setTimeout=function(){return new b(d.call(setTimeout,window,arguments),clearTimeout)},r.setInterval=function(){return new b(d.call(setInterval,window,arguments),clearInterval)},r.clearTimeout=r.clearInterval=function(m){m.close()};function b(m,u){this._id=m,this._clearFn=u}b.prototype.unref=b.prototype.ref=function(){},b.prototype.close=function(){this._clearFn.call(window,this._id)},r.enroll=function(m,u){clearTimeout(m._idleTimeoutId),m._idleTimeout=u},r.unenroll=function(m){clearTimeout(m._idleTimeoutId),m._idleTimeout=-1},r._unrefActive=r.active=function(m){clearTimeout(m._idleTimeoutId);var u=m._idleTimeout;u>=0&&(m._idleTimeoutId=setTimeout(function(){m._onTimeout&&m._onTimeout()},u))},r.setImmediate=typeof i=="function"?i:function(m){var u=h++,x=arguments.length<2?!1:p.call(arguments,1);return v[u]=!0,f(function(){v[u]&&(x?m.apply(null,x):m.call(null),r.clearImmediate(u))}),u},r.clearImmediate=typeof a=="function"?a:function(m){delete v[m]}}).call(this,e("timers").setImmediate,e("timers").clearImmediate)},{"process/browser.js":9,timers:11}]},{},[2])(2)})})(tt);var cn=tt.exports;const nt=ln(cn);function dn(n){let t;function e(r,i,a,f){const d=n.schema;if(!(d!=null&&d.buttons))return;let p;if(a){const m=a.getAttribute("id");p=Array.from(i.children).findIndex(u=>u.getAttribute("id")===m)}else p=Array.from(i.children).length;const v=r.getAttribute("id"),h=Array.from(i.children).findIndex(m=>m.getAttribute("id")===v),b=d.buttons[h];h!==p&&h>-1&&p>-1&&(h<p&&(p=p-1),d.buttons.splice(h,1),d.buttons.splice(p,0,b),f(),s.nextTick(()=>{const m=i.querySelector(".dgComponentSelected");m!=null&&m.className.includes("dgComponentSelected")&&(m.classList.remove("dgComponentSelected"),m.classList.remove("dgComponentFocused"),m.click()),he.value++}))}function o(r,i,a){t&&t.destroy(),!(!nt||!r||!i)&&(t=nt([r],{mirrorContainer:i,direction:"horizontal",getMirrorText(f){return f.innerText},moves(f,d,p){let v=!0;return p.classList.contains("dropdown-item")?(v=!1,v):(f.classList.contains("no-drag")&&(v=!1),v)}}).on("drop",(f,d,p,v)=>e(f,d,v,a)))}return{dragulaInstance:t,initDragula:o}}function un(n,t,e){const{renderToolbarItemDesigner:o,actionHandlers:r}=e;let i;function a(N){i=N}function f(N,D=null){const g=t.value.find(l=>l.id===N.id);if(g.isDP)if(document.body.click(),typeof D=="boolean")g.expanded=D;else{const l=N.expanded;g.expanded=!l}}r.toggleDropdownMenu=f;function d(N){var g;const D={"dropdown-menu":!0};if(N.class){const l=(g=N.menuClass)==null?void 0:g.split(" ");l&&l.length&&l.reduce((T,P)=>(T[P]=!0,T),D)}return D}function p(N){var l;const D={disabled:N.disabled===!1,"dropdown-submenu":!0,"f-rt-dropdown":!0,"text-truncate":!0},g=(l=N.dropdownClass)==null?void 0:l.split(" ");return g&&g.length&&g.reduce((T,P)=>(T[P]=!0,T),D),D}function v(N){const D={disabled:!1,"dropdown-item":!0,"f-rt-btn":!0,"position-relative":!0,"farris-component":!0,"text-truncate":!0},g=(N.class||"").split(" ");return g&&g.length&&g.reduce((l,T)=>(l[T]=!0,l),D),D}let h;const b=new Map;function m(N,D,g){N.stopPropagation();const l=g?g.id:"__top_item__";if(D.children&&D.children.length&&(D.expanded=!D.expanded,D.expanded)){if(b.has(l)&&b.get(l)!==D){const T=b.get(l);T&&(T.expanded=!1,b.delete(l))}b.set(l,D)}}function u(N){var D;return(D=N.children)==null?void 0:D.map((g,l)=>g.children&&g.children.length?s.createVNode("li",{class:p(g),id:g.id},[s.createVNode("span",{class:v(g),onClick:T=>m(T,g,N)},[g.text,s.createVNode("i",{class:"f-icon f-icon-arrow-chevron-right",style:"display: inline-block;float: right;line-height: 1.25rem;"},null)]),h(g,g)]):o(g,l,!0))}function x(N,D,g,l){const{height:S,left:j,top:y}=l[0],{width:c,height:E}=g.getBoundingClientRect(),{marginTop:V,marginBottom:w}=getComputedStyle(g),k=Math.ceil(parseFloat(V))+Math.ceil(parseFloat(w)),B=y+S,M=D==null?void 0:D.getBoundingClientRect();function H(){let z=0,U="left";const Y=M?M.right:window.innerWidth,W=M?M.left:0;return z=Y-j-10,Y-j<c&&j-W>Y-j&&(U="right",z=j-W-10),{hposition:U,maxWidth:Math.min(z,300)}}let q=0,$="bottom";if(N==="tabs"||N==="section")q=D.getBoundingClientRect().bottom-B-k-10;else{const z=M?M.bottom:window.innerHeight;q=N==="page-header"?z-B:y,q=q-k-10,$=N==="page-header"?"bottom":"top"}const O=H();return{position:$+"-"+O.hposition,maxWidth:O.maxWidth,maxHeight:q}}function R(N){var P,S,j;const D="300px",g={display:N.expanded===!0?"block":"none",position:"absolute",maxWidth:D,minWidth:"120px"};if(!(i!=null&&i.value))return g;const l=i.value.querySelector("#"+N.id),T=l==null?void 0:l.getClientRects();if(l&&T&&T.length>0){const y=l?l.querySelector("#"+N.id+"_menu"):null;if(!y||N.expanded!==!0)return g;y.style.visibility="hidden",y.style.display="block",y.style.maxHeight="auto",y.style.maxWidth=D;let c;switch(r.toolbarPosition){case"tabs":c=(P=i.value)==null?void 0:P.closest(".farris-tabs");break;case"section":c=(S=i.value)==null?void 0:S.closest(".f-section");break;default:c=(j=i.value)==null?void 0:j.closest(".f-page")}const E=x(r.toolbarPosition,c,y,T),{position:V,maxHeight:w,maxWidth:k}=E;y.style.visibility="visible";const B={left:V.indexOf("left")>-1?0:"unset",right:V.indexOf("left")>-1?"unset":0,bottom:V.indexOf("bottom")>-1?"unset":"100%",top:V.indexOf("bottom")>-1?"!00%":"unset",maxWidth:k?k+"px":"300px",maxHeight:w?w+"px":"auto",overflowY:w?"auto":"unset"};Object.assign(g,B)}return g}r.changeMenuPosition=R,h=function(N,D){return s.createVNode("ul",{class:d(N),style:R(N),id:N.id+"_menu"},[u(N)])};function _(N=""){N&&b.has(N)?b.forEach((D,g)=>{g!==N&&(D.expanded=!1,b.delete(g))}):(b.forEach(D=>{D.expanded=!1}),b.clear())}return{renderDropdownMenu:h,clearAllDropDownMenu:_,setResponseToolbarRef:a}}const fn={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 pn(n,t,e){var T;const o="",r=s.ref();function i(){return!0}function a(){return!1}function f(){return!0}function d(){return!0}function p(){return!0}function v(P){if(!P||!P.value)return null;const S=s.ref(P==null?void 0:P.value.parent),j=v(S);return j||null}function h(P=t){var c;const{componentInstance:S,designerItemElementRef:j}=P;if(!S||!S.value)return null;const{getCustomButtons:y}=S.value;return S.value.canMove||S.value.canAdd||S.value.canDelete||y&&((c=y())!=null&&c.length)?j:h(P.parent)}function b(){}function m(P){return!!e}function u(){return(t==null?void 0:t.schema.label)||(t==null?void 0:t.schema.title)||(t==null?void 0:t.schema.name)}function x(){}function R(P,S){}function _(P){const{componentType:S}=P,j=s.inject("designer-host-service");let y=ge(S,P,j);const c=S.toLowerCase().replace(/-/g,"_");return y&&!y.id&&y.type===S&&(y.id=`${c}_${Math.random().toString().slice(2,6)}`),y}function N(P){}function D(...P){return[]}function g(){}function l(P){}return r.value={canMove:i(),canSelectParent:a(),canAdd:d(),canDelete:f(),canNested:!p(),contents:[],elementRef:n,parent:(T=t.parent)==null?void 0:T.componentInstance,schema:t.schema,styles:o,canAccepts:m,getBelongedComponentInstance:v,getDraggableDesignItemElement:h,getDraggingDisplayText:u,getPropConfig:D,getDragScopeElement:x,onAcceptMovedChildElement:R,onChildElementMovedOut:N,addNewChildComponentSchema:_,onRemoveComponent:g,triggerBelongedComponentToMoveWhenMoved:s.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:s.ref(!1),onPropertyChanged:l,getCustomButtons:b},r}const ot=s.defineComponent({name:"FDesignerInnerItem",props:fn,emits:["selectionChange","addComponent","removeComponent","clickButton"],setup(n,t){const e=s.ref(n.canMove),o=s.ref(n.canAdd),r=s.ref(n.canDelete),i=s.ref(!1),a=s.ref(n.contentKey),f=s.ref(n.childType),d=s.ref(n.childLabel),p=s.ref(n.modelValue),v=s.ref(""),h=s.ref(),b=s.inject("canvas-dragula"),m=s.ref(),u=s.inject("design-item-context"),x={designerItemElementRef:h,componentInstance:m,schema:p.value,parent:u,setupContext:t};s.provide("design-item-context",x);const R=s.computed(()=>{var B;const w=((B=m.value)==null?void 0:B.getCustomButtons)&&m.value.getCustomButtons();return{"farris-component":!0,"flex-fill":n.id==="root-component","position-relative":e.value||r.value||(w==null?void 0:w.length),"farris-nested":i.value,"can-move":e.value,"d-none":h.value&&h.value.classList.contains("d-none")}}),_=s.computed(()=>{const w={};return v.value&&v.value.split(";").reduce((k,B)=>{const[M,H]=B.split(":");return M&&(k[M]=H),k},w),w});function N(w,k){if(u&&u.schema[a.value]){const B=u.schema[a.value].findIndex(M=>M.id===k.id);if(B>-1){const M=u.schema[a.value].length,H=u.schema[a.value][B%M];u.designerItemElementRef.value.querySelector(`#${H.id}-design-item`),u.schema[a.value].splice(B,1),he.value++,t.emit("removeComponent"),t.emit("selectionChange")}}}function D(w){if(m.value.addNewChildComponentSchema){const k={componentType:f.value,label:d.value,parentComponentInstance:m.value,targetPosition:-1},B=m.value.addNewChildComponentSchema(k);p.value[a.value].push(B),t.emit("addComponent")}}function g(){return o.value&&s.createVNode("div",{role:"button",class:"btn component-settings-button",title:"新增",ref:"removeComponent",onClick:w=>{D()}},[s.createVNode("i",{class:"f-icon f-icon-plus-circle"},null)])}function l(w){return r.value&&s.createVNode("div",{role:"button",class:"btn component-settings-button",title:"删除",ref:"removeComponent",onClick:s.withModifiers(k=>N(k,w),["stop"])},[s.createVNode("i",{class:"f-icon f-icon-yxs_delete"},null)])}function T(){return e.value&&s.createVNode("div",{role:"button",class:"btn component-settings-button",title:"移动",ref:"moveComponent"},[s.createVNode("i",{"data-dragging-icon":"true",class:"cmp_move f-icon f-icon-yxs_move"},null)])}function P(){var k;const w=((k=m.value)==null?void 0:k.getCustomButtons)&&m.value.getCustomButtons();return w&&!!w.length&&w.map(B=>s.createVNode("div",{role:"button",class:`btn component-settings-button ${B.class||""} ${B.text?"settings-button-extend":""}`,title:B.title,ref:B.id,onClick:M=>B.onClick&&B.onClick(M)},[s.createVNode("i",{class:"f-icon "+B.icon},null),B.text&&s.createVNode("span",{class:"icon-text"},[B.text])]))}function S(w){return s.createVNode("div",{class:"component-btn-group","data-noattach":"true"},[s.createVNode("div",null,[g(),T(),l(w),P()])])}s.watch(()=>n.modelValue,w=>{p.value=w,x.schema=w});function j(w){window.scrollContainerList||(window.scrollContainerList=new Set);const k=w.getAttribute("id");k&&window.scrollContainerList.add(k)}function y(w){const k=w.target;j(k),Lt(k)}function c(){var w,k;(k=(w=p.value)==null?void 0:w.contents)!=null&&k.length&&h.value&&h.value.addEventListener("scroll",y)}function E(){const w=h.value,k=s.ref(w.children[1]);return pn(k,x).value}s.onMounted(()=>{if(h.value){const w=h.value.querySelector(`[data-dragref='${p.value.id}-container']`);m.value=w&&w.componentInstance?w.componentInstance.value:E(),b&&w&&b.attachComponents(w,p.value),i.value=m.value.canNested!==void 0?m.value.canNested:i.value,o.value=m.value.canAdd!==void 0?m.value.canAdd:o.value,r.value=m.value.canDelete!==void 0?m.value.canDelete:r.value,e.value=m.value.canMove!==void 0?m.value.canMove:e.value,v.value=m.value.styles||"",h.value&&(h.value.componentInstance=m,h.value.designItemContext=x)}c(),he.value++}),s.onBeforeUnmount(()=>{h.value&&h.value.removeEventListener("scroll",y)});function V(w){w&&(w.preventDefault(),w.stopPropagation());let k=x.designerItemElementRef;const B=h.value;if(B){const M=document.getElementsByClassName("dgComponentFocused");M&&M.length===1&&M[0]===h.value&&h.value.classList.contains("dgComponentSelected")||(Array.from(M).forEach(q=>q.classList.remove("dgComponentFocused")),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(q=>q.classList.remove("dgComponentSelected")),B.classList.add("dgComponentFocused"),t.emit("selectionChange",p.value.type,p.value,n.componentId,m.value),m.value.getDraggableDesignItemElement&&(k=m.value.getDraggableDesignItemElement(x),k&&k.value&&k.value.classList.add("dgComponentSelected")))}Xe(k==null?void 0:k.value)}return()=>s.createVNode("div",{id:`${n.id}-design-item`,ref:h,class:R.value,style:_.value,onClick:V},[S(p.value),t.slots.default&&t.slots.default()])}});class gn extends xt.BaseControlProperty{constructor(t,e){super(t,e)}getPropertyConfig(t,e=!1){return this.propertyConfig.categories.basic=this.getBasicPropConfig(t),this.propertyConfig.categories.basic.properties.text={title:"文本",type:"string",description:"",refreshPanelAfterChanged:!0},this.getAppearanceProperties(t,e),this.getbBehaviorConfig(t),this.getEventPropConfig(t),this.propertyConfig}getAppearanceProperties(t,e=!1){this.propertyConfig.categories.appearance={title:"外观",properties:{class:{description:"组件的CSS样式",title:"class样式",visible:!e},icon:{title:"图标",type:"string",description:""},split:{title:"下拉按钮分离",type:"boolean",description:"启用下拉按钮分离,可以单独点击按钮。单独点击下拉按钮展开下拉面板",visible:!!(t.children&&t.children.length>0)}}}}getbBehaviorConfig(t){const e=this.getPropertyEditorParams(t,["Const","Variable","StateMachine","Expression"],"disabled");this.propertyConfig.categories.behavior=this.getBehaviorConfig(t,"",{disabled:{title:"禁用",type:"boolean",description:"按钮禁用状态",refreshPanelAfterChanged:!0,editor:e}})}getEventPropConfig(t){const e=[{label:"onClick",name:"点击事件"}],o=this,r=o.eventsEditorUtils.formProperties(t,o.viewModelId,e),i={};i[o.viewModelId]={type:"events-editor",editor:{initialData:r}},this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:i,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(a,f){const d=a.propertyValue;delete t[o.viewModelId],d&&(d.setPropertyRelates=this.setPropertyRelates,o.eventsEditorUtils.saveRelatedParameters(t,o.viewModelId,d.events,d))}}}}class hn extends Se{constructor(e,o,r="response-toolbar-item"){super(e,o);G(this,"toolbarType","response-toolbar-item");this.toolbarType=r}getPropertyConfig(e,o=!1){this.propertyConfig.categories.basic=this.getBasicPropConfig(e),this.propertyConfig.categories.basic.properties.text={title:"文本",type:"string",description:"",refreshPanelAfterChanged:!0},this.propertyConfig.categories.basic.setPropertyRelates=i=>{if(i)switch(i&&i.propertyID){case"text":{i.needRefreshControlTree=!0;break}}},this.getAppearanceProperties(e,o);const r=this.getPropertyEditorParams(e,["Const","Variable","StateMachine","Expression"],"disabled");return this.propertyConfig.categories.behavior=this.getBehaviorConfig(e,"",{disabled:{title:"禁用",type:"boolean",description:"按钮禁用状态",refreshPanelAfterChanged:!0,editor:r}}),this.getEventPropConfig(e),this.propertyConfig}getAppearanceProperties(e,o=!1){this.propertyConfig.categories.appearance={title:"外观",description:"Appearance",properties:{class:{title:"class样式",type:"string",description:"",$converter:"/converter/appearance.converter",visible:!o},icon:{title:"图标",type:"string",description:""},split:{title:"下拉按钮分离",type:"boolean",description:"启用下拉按钮分离,可以单独点击按钮。单独点击下拉按钮展开下拉面板",visible:!!(e.children&&e.children.length>0)},tipsEnable:{title:"启用提示",type:"boolean",description:"当启用提示时,鼠标滑过按钮会有消息提示框",refreshPanelAfterChanged:!0,visible:this.toolbarType==="response-toolbar-item"},tipsText:{title:"提示消息内容",type:"string",description:"消息提示框内的展示内容",visible:e.tipsEnable===!0}}}}getEventPropConfig(e){const o=[{label:"onClick",name:"点击事件"}],r=this,i=r.eventsEditorUtils.formProperties(e,r.viewModelId,o),a={};a[r.viewModelId]={type:"events-editor",editor:{initialData:i}},this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:a,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(f,d){const p=f.propertyValue;delete e[r.viewModelId],p&&(p.setPropertyRelates=this.setPropertyRelates,r.eventsEditorUtils.saveRelatedParameters(e,r.viewModelId,p.events,p))}}}}function Me(n,t){if(!n)return!1;const e=t||[];return(e==null?void 0:e.findIndex(r=>r.id===n))===-1}function rt(n,t){const e=t||[];let o={parentIndex:-1,itemIndex:-1};return e.some((r,i)=>{if(r.children&&r.children.length>0){const a=r.children.findIndex(f=>f.id===n);return a>-1?(o={parentIndex:i,itemIndex:a},!0):!1}}),o}function it(n,t){const e=t||[];let o={parentIndex:-1,itemIndex:-1};const r=e==null?void 0:e.findIndex(i=>i.id===n);return r>-1?{parent:null,item:e[r]}:(e.some((i,a)=>{if(i.children&&i.children.length>0){const f=i.children.findIndex(d=>d.id===n);return f>-1?(o={parentIndex:a,itemIndex:f},!0):!1}}),o.parentIndex<0?{parent:null,item:null}:{parent:e[o.parentIndex],item:e[o.parentIndex].children[o.itemIndex]})}function mn(n,t){const e=t||[],o=e==null?void 0:e.findIndex(r=>r.id===n);return o>-1&&e[o].children&&e[o].children.length>0?e[o].expanded===!0:!1}function bn(n,t,e){function o(y){return!1}function r(){return!1}function i(){return!1}function a(){return!1}function f(){return e.toolbarContext.schema.buttons||[]}function d(y,c=""){setTimeout(()=>{var k,B;const E=(k=n.parent)==null?void 0:k.designerItemElementRef.value;let V;c&&(V=E==null?void 0:E.querySelector("#"+c));const w=(B=V||E)==null?void 0:B.querySelector("#"+y);w==null||w.click()},0)}function p(y,c){c.disabled&&c.disabled.expressionId&&(c.disabled.expressionId=`${c.id}_disabled`),c.visible&&c.visible.expressionId&&(c.visible.expressionId=`${c.id}_visible`);const E=t.formSchemaUtils.getExpressions(),V=E.find(k=>k.target===y.id);if(!V||!V.rules||!V.rules.length)return;const w={target:c.id,rules:[],targetType:"Button"};V.rules.forEach(k=>{const B=Object.assign(oe.cloneDeep(k),{id:`${c.id}_${k.type}`});w.rules.push(B)}),E.push(w)}function v(){const y=n.schema,c=Object.assign(oe.cloneDeep(y),{id:`${n.schema.type}-cloned-${Math.random().toString(36).slice(2,6)}`,onClick:null});let E=[];return c.children&&c.children.length&&(E=c.children.map(V=>{const w=oe.cloneDeep(V);return Object.assign(w,{id:`${n.schema.type}-cloned-${Math.random().toString(36).slice(2,6)}`,onClick:null}),p(V,w),w}),c.children=E),p(y,c),c}function h(){const y=n.schema.type||"response-toolbar-item",c=ge(y),E=y.toLowerCase().replace("-","_");return c&&!c.id&&c.type===y&&(c.id=`${E}_${Math.random().toString().slice(2,6)}`,c.text="按钮"),c}function b(y){const c=f(),E=c==null?void 0:c.findIndex(w=>w.id===y),V=E===-1?null:c[E];return{index:E,toolbarItem:V}}function m(){const y=n.schema.id,c=f();return Me(y,c)}function u(y){const c=t.formSchemaUtils.getExpressions();if(!c||!c.length)return;const E=V=>{const w=c&&c.findIndex(k=>k.target===V.id);w>-1&&c.splice(w,1)};E(y),y.children&&y.children.length&&y.children.forEach(V=>{E(V)})}function x(y){e.changeSelectedId(y)}function R(){var V,w;const y=f(),{parentIndex:c,itemIndex:E}=rt(n.schema.id,y);c===-1||E===-1||(u(n.schema),y[c].children.splice(E,1),e.updateToolbarItems(),(V=n.setupContext)==null||V.emit("removeComponent"),(w=n.setupContext)==null||w.emit("selectionChange"))}function _(){var V,w;const y=n.schema.id,c=f(),E=c==null?void 0:c.findIndex(k=>k.id===y);E!==-1&&(u(c[E]),c==null||c.splice(E,1),e.updateToolbarItems(),(V=n.setupContext)==null||V.emit("removeComponent"),(w=n.setupContext)==null||w.emit("selectionChange"),he.value++)}function N(y="Append"){var B;const c=f(),{parentIndex:E,itemIndex:V}=rt(n.schema.id,c);if(E===-1||V===-1)return;const w=h(),k=y==="Copy"?v():Object.assign({},w);c[E].children.splice(V+1,0,k),e.updateToolbarItems(),x(k.id),(B=n.setupContext)==null||B.emit("addComponent")}function D(y,c){const{index:E}=b(c);if(E===-1)return{index:E,schema:null};const V=h(),w=y==="Copy"?v():Object.assign({},V);return{index:E,schema:w}}function g(){var V;const y=n.schema.id,{index:c,schema:E}=D("Copy",y);E&&(f().splice(c+1,0,E),e.updateToolbarItems(),d(E.id),(V=n.setupContext)==null||V.emit("addComponent"))}function l(){var V;const y=n.schema.id,{index:c,schema:E}=D("Append",y);if(E&&n.parent){const k=f()[c].children||[];k.push(E);const B=f();B[c].children=k,e.updateToolbarItems(),x(E.id),(V=n.setupContext)==null||V.emit("addComponent")}}function T(y){let c;switch(n.schema.type){case"tab-toolbar-item":c=new gn(y,t);break;default:c=new hn(y,t,n.schema.type)}return c.getPropertyConfig(n.schema,m())}function P(y){y.stopPropagation(),y.stopImmediatePropagation()}function S(){const y=[{id:"delete",title:"删除",text:"",icon:"f-icon-yxs_delete",onClick:c=>{P(c),m()?R():_()}},{id:"copy",title:"复制",icon:"f-icon-yxs_copy",onClick:c=>{P(c);const{activeElement:E}=document,V=E?E.tagName.toLowerCase():"";V&&V==="input"||V==="textarea"?(E==null||E.blur(),s.nextTick(()=>{m()?N("Copy"):g()})):m()?N("Copy"):g()}}];return y.push(m()?{id:"appendSiblingButton",title:"",text:"新增同级",icon:"f-icon-plus-circle",onClick:c=>{P(c),N()}}:{id:"appendChildButton",title:"",text:"新增子级",icon:"f-icon-plus-circle",onClick:c=>{P(c),l()}}),y}function j(){const{schema:y}=n;u(y)}return{canAccepts:o,checkCanMoveComponent:r,checkCanDeleteComponent:i,checkCanAddComponent:a,getPropsConfig:T,getCustomButtons:S,onRemoveComponent:j}}const st=s.defineComponent({name:"FResponseToolbarItemDesign",props:Ke,emits:["Click","dropdown","clearAll"],setup(n,t){const e=s.ref(n.alignment),o=De(),r=s.ref(),i=s.inject("designer-host-service"),a=s.inject("design-item-context"),f=s.inject("toolbar-item-action"),d=bn(a,i,f),p=Fe.useDesignerInnerComponent(r,a,d);s.onMounted(()=>{r.value.componentInstance=p}),t.expose(p.value);function v(){const g={"f-icon":!0},l=n.icon?n.icon.trim():"";return le.getCustomClass(g,l)}function h(){return!!(n.icon&&n.icon.trim())}const b=s.computed(()=>{const g={btn:!0,"f-rt-btn":!0,"f-btn-ml":!n.isDP&&(e.value==="right"||e.value==="center"),"f-btn-mr":!n.isDP&&e.value==="left","btn-icontext":!!(n.icon&&n.icon.trim()),disabled:n.disabled===!0,"no-drag":!0,"text-truncate":!0};return le.getCustomClass(g,n.class)}),m=s.computed(()=>n.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"}),u=s.computed(()=>{const g={btn:!0,"dropdown-toggle":!0,"f-btn-mr":e.value==="left","dropdown-toggle-split":!0,"no-drag":!0};return le.getCustomClass(g,n.class)}),x=s.computed(()=>{let g={btn:!n.isDPItem,disabled:n.disabled===!0,"dropdown-item":n.isDPItem,"f-rt-btn":!0,"text-truncate":!0,"btn-icontext":!n.isDPItem&&!!(n.icon&&n.icon.trim()),"dropdown-item-icontext":n.isDPItem&&!!(n.icon&&n.icon.trim()),"no-drag":!0};return n.isDPItem||(g=le.getCustomClass(g,n.class||"")),n.isDP&&(g=le.getCustomClass(g,n.dropdownClass||"")),g});function R(g,l){l&&l.stopPropagation(),t.emit(g,{id:n.id,isDP:n.isDP})}function _(){return{"btn-group":!0,"no-drag":!0,"f-rt-dropdown":!0,"f-btn-ml":e.value==="right"||e.value==="center","f-btn-mr":e.value==="left"}}function N(){return s.createVNode("div",{ref:r,"data-dragref":`${a.schema.id}-container`,class:"farris-component position-relative",style:"display:inline-block!important;"},[s.createVNode("div",{class:_(),id:n.id},[s.createVNode("div",{class:b.value,style:m.value,onClick:()=>R("clearAll")},[o.shouldShowIcon(n)&&s.createVNode("i",{class:o.iconClass(n)},null),s.createVNode("span",null,[n.text]),!n.split&&s.createVNode("span",{class:"f-icon f-icon-arrow-chevron-down",style:"margin:0 0.5rem 0 0.25rem;",onClick:g=>R("dropdown",g)},null)]),n.split&&s.createVNode("button",{class:u.value,style:"border-radius:0 6px 6px 0;",onClick:g=>R("dropdown",g)},null),f.renderDropdownMenu(n.item,n.item)])])}function D(){return s.createVNode("li",{ref:r,"data-dragref":`${a.schema.id}-container`,id:n.id,class:x.value},[o.shouldShowIcon(n)&&s.createVNode("i",{class:o.iconClass(n)},null),n.text])}return()=>n.isDP?N():n.isDPItem?D():s.createVNode("div",{ref:r,"data-dragref":`${a.schema.id}-container`,class:"farris-component position-relative",style:"display:inline-block!important;"},[s.createVNode("button",{type:"button",class:b.value,id:n.id,onClick:()=>R("clearAll")},[h()&&s.createVNode("i",{class:v()},null),n.text])])}});function vn(n,t,e,o){function r(b,m,u,x){o.changeSelectedId((m==null?void 0:m.id)||""),e&&e.setupContext&&e.setupContext.emit("selectionChange",b,m,u,x)}function i(){}function a(b){const m=b.expanded;o.clearAllDropdown(),o.toggleDropdownMenu(b,!m)}function f(b){o.clearAllDropdown(b.isDP?b.id:"")}function d(b,m=""){const u=n.items||[],x=m||b,R=u.find(_=>_.id===x);return m?R.children.find(_=>_.id===b):R}function p(b,m=!1){if(!m)return;const u=b.target;u!=null&&u.classList.contains("dgComponentFocused")&&(u==null||u.classList.add("dgComponentSelected"))}function v(b,m=!1){if(!m)return;const u=b.target;u!=null&&u.classList.contains("dgComponentFocused")&&(u==null||u.classList.remove("dgComponentSelected"))}function h(b,m,u=!1){const x=d(b.id,b.parent),R=s.ref(x);return s.createVNode(ot,{key:x.id,class:["p-0",u?"d-block no-drag":"d-inline-block"],modelValue:R.value,"onUpdate:modelValue":_=>R.value=_,canMove:!1,childType:"response-toolbar-item",childLabel:"按钮",contentKey:"buttons",componentId:n.componentId,id:x.id,onSelectionChange:r,onRemoveComponent:i,onMouseenter:_=>p(_,u),onMouseleave:_=>v(_,u)},{default:()=>{var _;return[s.createVNode(st,{id:x.id,disabled:x.disabled,text:x.text,icon:x.icon,isDP:b.isDP,item:b,split:x.split,isDPItem:b.isDPItem,class:((_=b.appearance)==null?void 0:_.class)||"btn-secondary",alignment:n.alignment||"right",onDropdown:()=>a(b),onClearAll:N=>f(N),componentId:n.componentId},null)]}})}return{renderToolbarItemDesigner:h,actionHandlers:o}}function ke(n,t=!1,e=""){const o=[];return n.reduce((r,i)=>{if(i.children&&i.children.length>0){const a=ke(i.children,!0,i.id);r.push(Object.assign({},i,{children:a,isDPItem:!1,isDP:!0,parent:"",expanded:!1}))}else r.push(Object.assign({},i,{isDPItem:t,isDP:!1,parent:e}));return r},o),o}const at=s.defineComponent({name:"FResponseToolbarDesign",props:Jt,emits:["Click"],setup(n,t){const e=s.ref(ke(n.items)),o=s.ref(),r=s.ref(),i=s.ref(),a=s.ref("");let f=0;const d=15,p=s.inject("designer-host-service"),v=s.inject("design-item-context"),h={clearAllDropdown:$=>{},toggleDropdownMenu:$=>{},updateToolbarItems:()=>{},changeSelectedId:$=>{a.value=$},renderDropdownMenu:($,O)=>{},toolbarContext:v,changeMenuPosition:($,O,z)=>({}),toolbarPosition:""},b=an(v,p,h),m=Fe.useDesignerComponent(i,v,b),u=s.inject("toolbar-item-handler"),{initDragula:x,dragulaInstance:R}=dn(v),_=De(),N=vn(n,r,v,h),D=un(_,e,N),{renderToolbarItemDesigner:g}=N,{clearAllDropDownMenu:l,renderDropdownMenu:T,setResponseToolbarRef:P}=D;s.provide("toolbar-item-action",h),h.renderDropdownMenu=T,P(i),u&&(u.changeSelectedId=function($){a.value=$});function S(){const $=r.value.querySelector(".dgComponentSelected");$&&Ye($)}function j(){if(a.value)if(Me(a.value,e.value)){const{parent:$,item:O}=it(a.value,e.value);$&&(h.toggleDropdownMenu($,!0),setTimeout(()=>{var Y;const z=i.value.querySelector("#"+$.id),U=z==null?void 0:z.querySelector("#"+O.id);(((Y=U==null?void 0:U.parentElement)==null?void 0:Y.className)||"").indexOf("dgComponentFocused")<0&&(U==null||U.click())},0))}else S()}function y($=""){e.value.filter(O=>O.id!==$&&O.children&&O.children.length>0).forEach(O=>{O.expanded=!1}),l($)}h.clearAllDropdown=y;function c(){u&&u.updateToolbarItems&&u.updateToolbarItems()}h.updateToolbarItems=c;function E($){if($){const O=i.value.querySelector("#"+$.id),z=O.querySelector("#"+$.id+"_menu"),U=h.changeMenuPosition($,O);Object.keys(U).forEach(Y=>{z.style[Y]=U[Y]})}}function V(){const z=r.value.clientWidth,U=r.value.querySelectorAll(".farris-component>.f-rt-btn");U&&U.forEach(W=>{W.style.maxWidth=z-12+"px"});const Y=r.value.querySelectorAll(".farris-component>.f-rt-dropdown");Y&&Y.forEach(W=>{W.querySelector(".dropdown-toggle-split")?W.querySelector(".f-rt-btn").style.maxWidth=z-38+"px":W.style.maxWidth=z-12+"px"})}const w=new ResizeObserver($=>{var O;if($.length){const U=$[0].contentRect.width;if(U===0){f=0;return}if(Math.abs(U-f)>d){if(f=U,Me(a.value,e.value)){const{parent:Y,item:W}=it(a.value,e.value);E(Y)}else if(mn(a.value,e.value)){const Y=(O=e.value)==null?void 0:O.find(W=>W.id===a.value);E(Y)}else y();V()}}});s.onMounted(()=>{w.observe(i.value),f=i.value.clientWidth,i.value.componentInstance=m,x(r.value,o.value,c)}),s.onUnmounted(()=>{w.disconnect(),R&&R.destroy&&R.destroy()}),t.expose(m.value);const k=s.computed(()=>{const $={"f-toolbar":!0,"f-response-toolbar":!0,"position-relative":!0,"f-response-toolbar-sm":n.buttonSize==="sm","f-response-toolbar-lg":n.buttonSize==="lg"};return le.getCustomClass($,n.customClass)}),B=s.computed(()=>({"text-left":n.alignment==="left","text-right":n.alignment==="right","justify-content-end":n.alignment==="right","justify-content-start":n.alignment==="left","justify-content-center":n.alignment==="center","no-drag":!0,"w-100":!0}));s.watch(()=>n.items,()=>{e.value=ke(n.items),s.nextTick(()=>{j(),V()})},{deep:!0});function M($){$&&($.stopPropagation(),$.preventDefault());const{schema:O}=v;O.buttons||(O.buttons=[]);const z=ge("response-toolbar-item");z.id=`toolbar_item_${Math.random().toString().slice(2,6)}`,z.appearance={class:"btn btn-secondary"},O.buttons.push(z)}function H(){return s.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:M},[s.createVNode("span",{class:"f-icon f-icon-amplification mr-1",style:"font-size: 12px;"},null),s.createVNode("span",{class:"farris-tag-add-text"},[s.createTextVNode("添加按钮")])])}function q(){return e.value.map(($,O)=>g($,O))}return()=>{var $;return s.createVNode("div",{ref:i,"data-dragref":`${v.schema.id}-container`,class:k.value,id:n.id},[s.createVNode("div",{ref:o,class:B.value,onClick:O=>y(O)},[s.createVNode("div",{ref:r,class:"d-block f-response-content"},[($=e.value)!=null&&$.length?q():H()])])])}}}),lt=Ee;ye.register=(n,t,e,o)=>{n["response-toolbar"]=ye,t["response-toolbar"]=Ee,o["response-toolbar"]={eventHandlerResolver:Kt}},ye.registerDesigner=(n,t,e)=>{n["response-toolbar"]=at,t["response-toolbar"]=Ee,n["response-toolbar-item"]=st,t["response-toolbar-item"]=Zt},le.withInstall(ye);const yn=s.defineComponent({name:"FPageHeaderDesign",props:ze,emits:["click"],setup(n,t){const e=s.ref(),o=s.inject("designer-host-service"),r=s.inject("design-item-context"),i=Ut(r.schema,o),a=$t(e,r,i),f=s.ref(r.schema.toolbar||{type:"response-toolbar",buttons:[]}),d=s.ref(lt(f.value));s.onMounted(()=>{e.value.componentInstance=a}),s.watch(()=>r.schema.toolbar,()=>{f.value=r.schema.toolbar||{type:"response-toolbar",buttons:[]},d.value=lt(f.value)},{deep:!0});const p=s.computed(()=>[...d.value.items]);function v(x,R,_,N){r&&r.setupContext&&r.setupContext.emit("selectionChange",x,R,_,N)}t.expose(a.value);function h(x,R){x&&R&&R.split(" ").reduce((N,D)=>(N[D]=!0,N),x)}const b=s.computed(()=>{const x={"f-title-icon":!0};return h(x,n.iconClass),x}),m=s.computed(()=>{const x={"f-icon":!0};return h(x,n.icon),x}),u=s.computed(()=>{const x={"text-right":!0,"col-6":!0};return h(x,n.buttonClass||""),x});return()=>s.createVNode("div",{ref:e},[s.createVNode("nav",{class:"f-page-header-base"},[s.createVNode("div",{class:"f-title"},[n.showIcon&&n.icon?s.createVNode("span",{class:b.value},[s.createVNode("i",{class:m.value},null)]):"",s.createVNode("h4",{class:"f-title-text"},[n.title])]),s.createVNode(ot,{class:u.value,modelValue:f.value,"onUpdate:modelValue":x=>f.value=x,canAdd:!1,childType:"response-toolbar-item",childLabel:"按钮",contentKey:"buttons",id:f.value.id,componentId:n.componentId,onSelectionChange:v},{default:()=>[s.createVNode(at,{id:f.value.id,customClass:"w-100",items:p.value,componentId:n.componentId},null)]})])])}}),Cn={install(n){n.component(be.name,be)},register(n,t,e,o){n["page-header"]=be,t["page-header"]=Te,o["page-header"]={eventHandlerResolver:Ge}},registerDesigner(n,t,e){n["page-header"]=yn,t["page-header"]=Te}};J.PageHeader=be,J.default=Cn,J.eventHandlerResolver=Ge,J.pageHeaderDesignerProps=ze,J.pageHeaderProps=me,J.propsResolver=Te,Object.defineProperties(J,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
|
1
|
+
(function(G,l){typeof exports=="object"&&typeof module<"u"?l(exports,require("vue"),require("lodash-es"),require("../response-toolbar/index.umd.js"),require("../../designer/response-toolbar/index.umd.js"),require("../common/index.umd.js"),require("../dynamic-resolver/index.umd.js"),require("../designer-canvas/index.umd.js"),require("../property-panel/index.umd.js"),require("../tabs/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es","../response-toolbar/index.umd.js","../../designer/response-toolbar/index.umd.js","../common/index.umd.js","../dynamic-resolver/index.umd.js","../designer-canvas/index.umd.js","../property-panel/index.umd.js","../tabs/index.umd.js"],l):(G=typeof globalThis<"u"?globalThis:G||self,l(G["page-header"]={},G.Vue,G.LodashES,G.FResponseToolbar,G.designer,G.common,G.dynamicResolver,G.designerCanvas,G.propertyPanel,G.tabs))})(this,function(G,l,te,ye,$e,de,ue,me,Oe,lt){"use strict";var Sn=Object.defineProperty;var Tn=(G,l,te)=>l in G?Sn(G,l,{enumerable:!0,configurable:!0,writable:!0,value:te}):G[l]=te;var J=(G,l,te)=>Tn(G,typeof l!="symbol"?l+"":l,te);const je={},Re={};function be(n){const{properties:t,title:e,ignore:o}=n,r=o&&Array.isArray(o),i=Object.keys(t).reduce((s,u)=>((!r||!o.find(c=>c===u))&&(s[u]=t[u].type==="object"&&t[u].properties?be(t[u]):te.cloneDeep(t[u].default)),s),{});if(e&&(!r||!o.find(s=>s==="id"))){const s=e.toLowerCase().replace(/-/g,"_");i.id=`${s}_${Math.random().toString().slice(2,6)}`}return i}function ut(n){const{properties:t,title:e,required:o}=n;if(o&&Array.isArray(o)){const r=o.reduce((i,s)=>(i[s]=t[s].type==="object"&&t[s].properties?be(t[s]):te.cloneDeep(t[s].default),i),{});if(e&&o.find(i=>i==="id")){const i=e.toLowerCase().replace(/-/g,"_");r.id=`${i}_${Math.random().toString().slice(2,6)}`}return r}return{type:e}}function Ce(n,t={},e){const o=je[n];if(o){let r=ut(o);const i=Re[n];return r=i?i({getSchemaByType:Ce},r,t,e):r,r}return null}function dt(n,t){const e=be(t);return Object.keys(e).reduce((o,r)=>(Object.prototype.hasOwnProperty.call(n,r)&&(o[r]&&te.isPlainObject(o[r])&&te.isPlainObject(n[r]||!n[r])?Object.assign(o[r],n[r]||{}):o[r]=n[r]),o),e),e}function _e(n,t){return Object.keys(n).filter(o=>n[o]!=null).reduce((o,r)=>{if(t.has(r)){const i=t.get(r);if(typeof i=="string")o[i]=n[r];else{const s=i(r,n[r],n);Object.assign(o,s)}}else o[r]=n[r];return o},{})}function ft(n,t,e=new Map){const o=dt(n,t);return _e(o,e)}function pt(n={}){function t(d,h,f,m){if(typeof f=="number")return m[d].length===f;if(typeof f=="object"){const p=Object.keys(f)[0],g=f[p];if(p==="not")return Number(m[d].length)!==Number(g);if(p==="moreThan")return Number(m[d].length)>=Number(g);if(p==="lessThan")return Number(m[d].length)<=Number(g)}return!1}function e(d,h,f,m){return m[d]&&m[d].propertyValue&&String(m[d].propertyValue.value)===String(f)}const o=new Map([["length",t],["getProperty",e]]);Object.keys(n).reduce((d,h)=>(d.set(h,n[h]),d),o);function r(d,h){const f=d;return typeof h=="number"?[{target:f,operator:"length",param:null,value:Number(h)}]:typeof h=="boolean"?[{target:f,operator:"getProperty",param:d,value:!!h}]:typeof h=="object"?Object.keys(h).map(m=>{if(m==="length")return{target:f,operator:"length",param:null,value:h[m]};const p=m,g=h[m];return{target:f,operator:"getProperty",param:p,value:g}}):[]}function i(d){return Object.keys(d).reduce((f,m)=>{const p=r(m,d[m]);return f.push(...p),f},[])}function s(d,h){if(o.has(d.operator)){const f=o.get(d.operator);return f&&f(d.target,d.param,d.value,h)||!1}return!1}function u(d,h){return i(d).reduce((p,g)=>p&&s(g,h),!0)}function c(d,h){const f=Object.keys(d),m=f.includes("allOf"),p=f.includes("anyOf"),g=m||p,_=(g?d[g?m?"allOf":"anyOf":"allOf"]:[d]).map(w=>u(w,h));return m?!_.includes(!1):_.includes(!0)}return{parseValueSchema:c}}const mt={button:{type:"button",name:"按钮"},"response-toolbar":{type:"response-toolbar",name:"工具栏"},"response-toolbar-item":{type:"response-toolbar-item",name:"按钮"},"content-container":{type:"content-container",name:"容器"},"input-group":{type:"input-group",name:"文本"},textarea:{type:"textarea",name:"多行文本"},lookup:{type:"lookup",name:"帮助"},"number-spinner":{type:"number-spinner",name:"数值"},"date-picker":{type:"date-picker",name:"日期"},switch:{type:"switch",name:"开关"},"radio-group":{type:"radio-group",name:"单选组"},"check-box":{type:"check-box",name:"复选框"},"check-group":{type:"check-group",name:"复选框组"},"combo-list":{type:"combo-list",name:"下拉列表"},"response-form":{type:"response-form",name:"卡片面板"},"response-layout":{type:"response-layout",name:"布局容器",icon:"response-layout-3"},"response-layout-item":{type:"response-layout-item",name:"布局",icon:"response-layout-1"},"tree-grid":{type:"tree-grid",name:"树表格"},"tree-grid-column":{type:"tree-grid-column",name:"树表格列"},"data-grid":{type:"data-grid",name:"表格"},"data-grid-column":{type:"data-grid-column",name:"表格列"},module:{type:"Module",name:"模块"},component:{type:"component",name:"组件"},tabs:{type:"tabs",name:"标签页"},"tab-page":{type:"tab-page",name:"标签页项",dependentParentControl:"Tab"},"tab-toolbar-item":{type:"tab-toolbar-item",name:"标签页工具栏按钮"},"html-template":{type:"html-template",name:"模板容器"},"time-picker":{type:"time-picker",name:"时间选择"},section:{type:"section",name:"分组面板"},"section-toolbar":{type:"section-toolbar",name:"分组面板工具栏"},"section-toolbar-item":{type:"section-toolbar-item",name:"分组面板按钮"},splitter:{type:"splitter",name:"分栏面板"},"splitter-pane":{type:"splitter-pane",name:"分栏面板项",dependentParentControl:"Splitter"},"component-ref":{type:"component-ref",name:"组件引用节点"},uploader:{type:"uploader",name:"附件上传"},"page-header":{type:"page-header",name:"页头"},"page-footer":{type:"page-footer",name:"页脚"},"tab-toolbar":{type:"tab-toolbar",name:"标签页工具栏"},fieldset:{type:"fieldset",name:"分组"},"query-solution":{type:"query-solution",name:"筛选方案"},drawer:{type:"drawer",name:"抽屉"},"external-container":{type:"external-container",name:"外部容器",icon:"content-container"},"list-nav":{type:"list-nav",name:"列表导航"},"filter-bar":{type:"filter-bar",name:"筛选条"}},gt={},ht={};pt();function vt(n,t,e=new Map,o=(s,u,c,d)=>u,r={},i=s=>s){return je[t.title]=t,Re[t.title]=o,gt[t.title]=r,ht[t.title]=i,(s={},u=!0)=>{if(!u)return _e(s,e);const c=ft(s,t,e),d=Object.keys(n).reduce((h,f)=>(h[f]=n[f].default,h),{});return Object.assign(d,c)}}function yt(n,t){return{customClass:t.class,customStyle:t.style}}function bt(n,t){var o,r;const e={};if(t!=null&&t.buttons){const i=[];(o=t==null?void 0:t.buttons)==null||o.map(s=>{const u={};Object.keys(s).map(c=>{var d;c==="appearance"?u.class=((d=s[c])==null?void 0:d.class)||"":u[c]=s[c]}),i.push(u)}),e.buttons=i}return(r=t==null?void 0:t.appearance)!=null&&r.class&&(e.buttonClass=t.appearance.class||"col-6"),t!=null&&t.id&&(e.toolbarId=t.id),t&&Object.prototype.hasOwnProperty.call(t,"visible")&&(e.buttonsVisible=t.visible),e}function Ct(n,t){if(!n||n.length<1)return null;for(const e of n){if(e.id===t)return e;if(e.children){const o=e.children.find(r=>r.id===t);if(o)return o}}return null}function wt(){function n(t,e){var u;const o=(u=t.toolbar)==null?void 0:u.buttons;if(!o||o.length<1)return null;const[r,i]=e.payloads,s=Ct(o,i);return s?s.onClick||s.click:null}return{resolve:n}}const xt=new Map([["appearance",yt],["toolbar",bt]]),St={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/page-header.schema.json",title:"page-header",description:"A Farris Container Component",type:"object",properties:{id:{description:"The unique identifier for a Page Header",type:"string"},type:{description:"The type string of Page Header component",type:"string",default:"page-header"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},showIcon:{description:"",type:"boolean",default:!0},icon:{description:"",type:"string",default:"f-icon-page-title-record"},iconClass:{description:"",type:"string",default:"f-text-orna-bill"},title:{description:"",type:"string",default:""},subTitle:{description:"",type:"string",default:""},toolbar:{description:"",type:"object",properties:{appearance:{description:"",type:"object",properties:{class:{type:"string",default:"col-6"}}},id:{description:"",type:"string"},type:{description:"",type:"string",default:"response-toolbar"},alignment:{description:"The alignment of Response Toolbar Button.",type:"string",default:"right"},buttons:{description:"The items of Response Toolbar.",type:"array",default:[]},visible:{description:"",type:"boolean",default:!0}}},buttonClass:{description:"",type:"string",default:"col-6"},toolbarId:{description:"",type:"string",default:""},titleContentClass:{description:"",type:"string",default:""},contentClass:{description:"",type:"string",default:""},downContentClass:{description:"",type:"string",default:""},showPagination:{description:"",type:"boolean",default:!1},prePaginationDisabled:{description:"",type:"boolean",default:!0},nextPaginationDisabled:{description:"",type:"boolean",default:!1},visible:{description:"",type:"boolean",default:!0}},required:["id","type"]};function Tt(n,t,e){return t.title="标题",t}const ge={customClass:{type:String,default:""},showIcon:{type:Boolean,default:!0},icon:{type:String,default:"f-icon-page-title-record"},iconClass:{type:String,default:"f-text-orna-bill"},title:{type:String,default:""},subTitle:{type:String,default:""},buttonClass:{type:String,default:"col-6"},toolbarId:{type:String,default:""},buttons:{type:Array,default:[]},titleContentClass:{type:String,default:""},contentClass:{type:String,default:""},downContentClass:{type:String,default:""},showPagination:{type:Boolean,default:!1},prePaginationDisabled:{type:Boolean,default:!0},nextPaginationDisabled:{type:Boolean,default:!1},visible:{type:Boolean,default:!0},buttonsVisible:{type:Boolean,default:!0}},Fe=Object.assign({},ge,{componentId:{type:String,default:""}}),we=vt(ge,St,xt,Tt),Le=wt(),he=l.defineComponent({name:"FPageHeader",props:ge,emits:["click","prePaginationClick","nextPaginationClick"],setup(n,t){const e=l.ref(n.buttons),o=(w,C)=>{t.emit("click",w,C)};function r(w,C){w&&C&&C.split(" ").reduce((N,B)=>(N[B]=!0,N),w)}const i=l.computed(()=>{const w={"f-page-header":!0,"d-none":!n.visible};return r(w,n.customClass),w}),s=l.computed(()=>{const w={"f-title-icon":!0};return r(w,n.iconClass),w}),u=l.computed(()=>{const w={"f-icon":!0};return r(w,n.icon),w}),c=l.computed(()=>{const w={"f-title":!0};return r(w,n.titleContentClass),w}),d=l.computed(()=>{const w={"f-content":!0};return r(w,n.contentClass),w}),h=l.computed(()=>{const w={"f-content":!0};return r(w,n.downContentClass),w}),f=l.computed(()=>({"f-icon f-icon-arrow-w":!0,"f-state-disabled":n.prePaginationDisabled})),m=l.computed(()=>({"f-icon f-icon-arrow-e":!0,"f-state-disabled":n.nextPaginationDisabled}));function p(w){n.prePaginationDisabled||t.emit("prePaginationClick",w)}function g(w){n.nextPaginationDisabled||t.emit("nextPaginationClick",w)}function T(){return t.slots.titleContent?l.createVNode("div",{class:c.value},[l.createTextVNode(" "),t.slots.titleContent()]):l.createVNode("div",{class:"f-title"},[n.showIcon&&n.icon?l.createVNode("span",{class:s.value},[l.createVNode("i",{class:u.value},null)]):"",l.createVNode("h4",{class:"f-title-text"},[n.title]),n.subTitle?l.createVNode("h5",{class:"f-title-subtitle"},[n.subTitle]):"",n.showPagination?l.createVNode("div",{class:"f-title-pagination"},[l.createVNode("span",{class:f.value,onClick:p},null),l.createVNode("span",{class:m.value,onClick:g},null)]):""])}function A(){return t.slots.content?l.createVNode("div",{class:d.value},[l.createTextVNode(" "),t.slots.content()]):""}function _(){if(n.buttons&&n.buttons.length>0)return l.createVNode(ye,{id:n.toolbarId,customClass:n.buttonClass,visible:n.buttonsVisible,items:e.value,onClick:o},null)}function D(){return t.slots.downContent?l.createVNode("div",{class:h.value},[l.createTextVNode(" "),t.slots.downContent()]):""}return l.watch(()=>n.buttons,w=>{e.value=w},{deep:!0}),()=>n.visible?l.createVNode("div",{class:i.value},[l.createVNode("nav",{class:"f-page-header-base"},[T(),A(),_()]),D()]):null}});function Pt(n,t,e){var B;const o=e&&e.getStyles&&e.getStyles()||"",r=e&&e.getDesignerClass&&e.getDesignerClass()||"",i=l.ref();function s(){return(t==null?void 0:t.schema.componentType)==="frame"?!1:e&&e.checkCanMoveComponent?e.checkCanMoveComponent():!0}function u(){return!1}function c(){return(t==null?void 0:t.schema.componentType)==="frame"?!1:e&&e.checkCanDeleteComponent?e.checkCanDeleteComponent():!0}function d(){return(t==null?void 0:t.schema.componentType)==="frame"?!0:e&&e.hideNestedPaddingInDesginerView?e.hideNestedPaddingInDesginerView():!1}function h(P){if(!P||!P.value)return null;if(P.value.schema&&P.value.schema.type==="component")return P.value;const $=l.ref(P==null?void 0:P.value.parent),b=h($);return b||null}function f(P=t){var S;if(e!=null&&e.getDraggableDesignItemElement)return e.getDraggableDesignItemElement(P);const{componentInstance:$,designerItemElementRef:b}=P;if(!$||!$.value)return null;const{getCustomButtons:a}=$.value;return $.value.canMove||a&&((S=a())!=null&&S.length)?b:f(P.parent)}function m(P){return!!e&&e.canAccepts(P)}function p(){return(t==null?void 0:t.schema.label)||(t==null?void 0:t.schema.title)||(t==null?void 0:t.schema.name)}function g(){}function T(P,$){var b;!P||!$||(e!=null&&e.onAcceptMovedChildElement&&e.onAcceptMovedChildElement(P,$),(b=t==null?void 0:t.setupContext)==null||b.emit("dragEnd"))}function A(P,$){const{componentType:b}=P;let a=Ce(b,P,$);e&&e.onResolveNewComponentSchema&&(a=e.onResolveNewComponentSchema(P,a));const S=b.toLowerCase().replace(/-/g,"_");return a&&!a.id&&a.type===b&&(a.id=`${S}_${Math.random().toString().slice(2,6)}`),a}function _(P){P&&e!=null&&e.onChildElementMovedOut&&e.onChildElementMovedOut(P)}function D(...P){if(e&&e.getPropsConfig)return e.getPropsConfig(...P)}function w(P){if(!P)return;const $=t==null?void 0:t.schema,{formSchemaUtils:b}=P;if($&&b.getExpressions().length){const a=b.getExpressions().findIndex(S=>S.target===$.id);a>-1&&b.getExpressions().splice(a,1)}}function C(P){e&&e.onRemoveComponent&&e.onRemoveComponent(),w(P),t!=null&&t.schema.contents&&t.schema.contents.map($=>{let b=$.id;$.type==="component-ref"&&(b=$.component);const a=n.value.querySelectorAll(`#${b}-design-item`);a!=null&&a.length&&Array.from(a).map(S=>{var I;(I=S==null?void 0:S.componentInstance)!=null&&I.value.onRemoveComponent&&S.componentInstance.value.onRemoveComponent(P)})})}function x(){if(e&&e.getCustomButtons)return e.getCustomButtons()}function N(P){if(e&&e.onPropertyChanged)return e.onPropertyChanged(P)}return i.value={canMove:s(),canSelectParent:u(),canDelete:c(),canNested:!d(),contents:t==null?void 0:t.schema.contents,elementRef:n,parent:(B=t==null?void 0:t.parent)==null?void 0:B.componentInstance,schema:t==null?void 0:t.schema,styles:o,designerClass:r,canAccepts:m,getBelongedComponentInstance:h,getDraggableDesignItemElement:f,getDraggingDisplayText:p,getPropConfig:D,getDragScopeElement:g,onAcceptMovedChildElement:T,onChildElementMovedOut:_,addNewChildComponentSchema:A,triggerBelongedComponentToMoveWhenMoved:!!e&&e.triggerBelongedComponentToMoveWhenMoved||l.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:!!e&&e.triggerBelongedComponentToDeleteWhenDeleted||l.ref(!1),onRemoveComponent:C,getCustomButtons:x,onPropertyChanged:N},i}const Et=l.ref(0);function It(){Et.value++}const xe=l.ref(0);function Mt(n,t){const e=t.getBoundingClientRect(),o=n.getBoundingClientRect(),r=o.top>=e.top,i=o.top<=e.bottom;return r&&i}function Dt(n){const t=n.querySelector(".component-btn-group");if(!t)return;t.style.display="";const e=t.getBoundingClientRect();if(!(e.top===0&&e.left===0)){const o=t.querySelector("div");if(o){const r=o.getBoundingClientRect();o.style.top=e.top+"px";let i=e.left-r.width;const s=document.querySelector(".editorDiv");if(s){const u=s.getBoundingClientRect();i<u.left&&({left:i}=n.getBoundingClientRect())}o.style.left=i+"px"}}}function Vt(n){if(!window.scrollContainerList)return;const t=Array.from(window.scrollContainerList);if(t.length&&t.length===1){const e=t[0],o=document.querySelector(`[id=${e}]`);if(o&&o.contains(n))return o}}function qe(n){if(!n)return;const t=n.getBoundingClientRect();if(t.width===0&&t.height===0)return;const e=n.querySelector(".component-btn-group");if(e){let o=!0;const r=Vt(n);if(r&&(o=Mt(n,r)),!o){e.style.display="none";return}Dt(n)}}function Nt(n){if(!n)return;let t;n.className.includes("dgComponentSelected")?t=n:t=n.querySelector(".dgComponentSelected"),t&&qe(t)}function kt(n){const{formSchemaUtils:t,formStateMachineUtils:e}=n;function o(c,d=""){return{path:d+c.code,field:c.id,fullPath:c.code}}function r(c,d=""){return t.getViewModelById(c).states.map(f=>o(f,d))}function i(c){const d=t.getRootViewModelId(),h=r(c);if(c===d)return h;const f=r(d,"root-component.");return[...h,...f]}function s(c){return c.binding&&c.binding.path||c.id||""}function u(){return e&&e.getRenderStates()||[]}return{getVariables:i,getControlName:s,getStateMachines:u}}class Bt{constructor(t){J(this,"sessionVariables",[{key:"CurrentSysOrgName",name:"当前组织Name",description:"当前组织Name"},{key:"CurrentSysOrgId",name:"当前组织Id",description:"当前组织Id"},{key:"CurrentUserName",name:"当前用户Name",description:"当前用户Name"},{key:"CurrentUserCode",name:"当前用户Code",description:"当前用户Code"},{key:"CurrentUserId",name:"当前用户Id",description:"当前用户Id"},{key:"CurrentLanguage",name:"当前语言编号",description:"当前登录的语言编号,例如简体中文返回'zh-CHS',英文返回'en',繁体中文'zh-CHT'"}]);J(this,"expressionNames",{compute:"计算表达式",dependency:"依赖表达式",validate:"验证表达式",dataPicking:"帮助前表达式",visible:"可见表达式",readonly:"只读表达式",required:"必填表达式"});J(this,"getExpressionConverter",(t,e)=>({convertFrom:(o,r,i,s)=>{const u=i.getExpressionRuleValue(t,e||r);return u&&u.value||""},convertTo:(o,r,i,s,u)=>{var c;if(r==="dataPicking"&&(i!=null&&i.target)){const d=`${i.target}_dataPicking`;((c=i.rules)==null?void 0:c.some(f=>f.id===d&&f.value))?o.dictPickingExpressionId=d:delete o.dictPickingExpressionId}s.updateExpression(i)}}));this.formSchemaService=t}getExpressionRule(t,e){const o=this.formSchemaService.getExpressions();if(!o)return"";const r=o.find(s=>s.target===t);if(!r)return"";const i=r.rules.find(s=>s.type===e);return i||""}getContextFormVariables(){const{module:t}=this.formSchemaService.getFormSchema();if(!t.viewmodels||t.viewmodels.length===0)return[];const e=this.formSchemaService.getRootViewModelId(),o=this.formSchemaService.getViewModelById(e);if(!o||!o.states||o.states.length===0)return[];const r=[];return o.states.forEach(i=>{r.push({key:i.code,name:i.name,description:i.name,category:i.category})}),r}createTreeNode(t,e,o="label"){return{id:t.id,name:t.name,bindingPath:t[o],parents:e}}buildEntityFieldsTreeData(t=null,e){const o=[];return t==null||t.forEach(r=>{var u;const i=this.createTreeNode(r,e);let s=[];(u=r.type)!=null&&u.fields&&(s=this.buildEntityFieldsTreeData(r.type.fields,[...e,r.label])),o.push({data:i,children:s,expanded:!0})}),o}buildChildEntityTreeData(t=null,e){const o=[];return t==null||t.forEach(r=>{var c,d;const i=this.createTreeNode(r,e),s=this.buildEntityFieldsTreeData((c=r.type)==null?void 0:c.fields,[...e,r.label]),u=this.buildChildEntityTreeData((d=r.type)==null?void 0:d.entities,[...e,r.label]);u!=null&&u.length&&(s==null||s.push(...u)),o.push({data:i,children:s||[],expanded:!0})}),o}getEntitiesTreeData(){const t=this.formSchemaService.getSchemaEntities();if(!(t!=null&&t.length))return[];const e=t[0];if(!(e!=null&&e.type))return[];const o=this.buildEntityFieldsTreeData(e.type.fields,[e.code]),r=this.buildChildEntityTreeData(e.type.entities,[e.code]);return r!=null&&r.length&&(o==null||o.push(...r)),{entityCode:e.code,fields:[{data:this.createTreeNode(e,[],"code"),children:o||[]}]}}getEntitiesAndVariables(){return{entities:this.getEntitiesTreeData(),variables:{session:{name:"系统变量",items:this.sessionVariables,visible:!1},forms:{name:"表单变量",items:this.getContextFormVariables(),visible:!0}}}}onBeforeOpenExpression(t,e,o){const r=o==="Field"?t.binding.field:t.id,i=this.getExpressionRule(r,e),s=this.getEntitiesAndVariables(),u={message:["validate","required","dataPicking"].includes(e)&&i?i.message:"",...s};return i.messageType!=null&&(u.messageType=i.messageType),u}buildRule(t,e,o,r){const{expression:i,message:s,messageType:u}=e,c={id:`${t}_${o}`,type:o,value:i};return(o==="validate"||o==="dataPicking"||o==="required")&&(c.message=s),o==="dataPicking"&&(c.messageType=u),o==="validate"&&r&&(c.elementId=r),c}getExpressionData(){const{expressions:t}=this.formSchemaService.getFormSchema().module;return t||[]}updateExpression(t,e,o,r){const i=e==="Field"?t.binding.field:t.id,s=this.buildRule(i,o,r,t.type==="form-group"?t.id:"");let c=this.getExpressionData().find(h=>h.targetType===e&&h.target===i);const d=h=>h.value.trim()==="";if(c){const h=c.rules.find(f=>f.id===s.id);if(h)d(s)?c.rules=c.rules.filter(f=>f.id!==s.id):(Object.assign(h,s),r==="validate"&&t.type==="form-group"&&(h.elementId=t.id));else{if(d(s))return null;c.rules=c.rules||[],c.rules.push(s)}}else{if(d(s))return null;c={target:`${i}`,rules:[s],targetType:e}}return c}getExpressionEditorOptions(t,e,o,r){return o.reduce((i,s)=>{var c,d;const u=e==="Field"?(c=t==null?void 0:t.binding)==null?void 0:c.field:t.id;return i[s]={hide:e==="Field"?!!((d=t==null?void 0:t.binding)!=null&&d.field):!1,description:"",title:this.expressionNames[s],type:"string",$converter:this.getExpressionConverter(u),editor:{type:"expression-editor",singleExpand:!1,dialogTitle:`${this.expressionNames[s]}编辑器`,showMessage:s==="validate"||s==="dataPicking"||s==="required",showMessageType:s==="dataPicking",beforeOpen:()=>this.onBeforeOpenExpression(t,s,e),onSubmitModal:h=>{const f=this.updateExpression(t,e,h,s);if(r){const m=this.buildRule(u,h,s);r(m)}return f}}},i},{})}getExpressionInfo(t,e,o){const r=e==="Field"?t.binding.field:t.id,i=this.getExpressionRule(r,o),s={value:i&&i.value,targetId:r,targetType:e,expressionType:o};return i&&i.message&&(s.message=i.message),s}getExpressionConfig(t,e,o=["compute","dependency","validate"],r){return{description:"表达式",title:"表达式",properties:{...this.getExpressionEditorOptions(t,e,o,r)}}}getExpressionOptions(t,e,o){const r=this.getExpressionInfo(t,e,o);return{dialogTitle:`${this.expressionNames[o]}编辑器`,singleExpand:!1,showMessage:o==="required",beforeOpen:()=>this.onBeforeOpenExpression(t,o,e),expressionInfo:r}}}class At{constructor(t,e){J(this,"componentId");J(this,"viewModelId");J(this,"eventsEditorUtils");J(this,"formSchemaUtils");J(this,"formMetadataConverter");J(this,"designViewModelUtils");J(this,"designViewModelField");J(this,"controlCreatorUtils");J(this,"designerHostService");J(this,"schemaService",null);J(this,"metadataService",null);J(this,"propertyConfig",{type:"object",categories:{}});var o;this.componentId=t,this.designerHostService=e,this.eventsEditorUtils=e.eventsEditorUtils,this.formSchemaUtils=e.formSchemaUtils,this.formMetadataConverter=e.formMetadataConverter,this.viewModelId=((o=this.formSchemaUtils)==null?void 0:o.getViewModelIdByComponentId(t))||"",this.designViewModelUtils=e.designViewModelUtils,this.controlCreatorUtils=e.controlCreatorUtils,this.metadataService=e.metadataService,this.schemaService=e.schemaService}getTableInfo(){var t;return(t=this.schemaService)==null?void 0:t.getTableInfoByViewModelId(this.viewModelId)}setDesignViewModelField(t){var o;const e=t.binding&&t.binding.type==="Form"&&t.binding.field;if(e){if(!this.designViewModelField){const r=this.designViewModelUtils.getDgViewModel(this.viewModelId);this.designViewModelField=r.fields.find(i=>i.id===e)}t.updateOn=(o=this.designViewModelField)==null?void 0:o.updateOn}}getBasicPropConfig(t){return{description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"combo-list",textField:"name",valueField:"value",idField:"value",editable:!1,data:[{value:t.type,name:mt[t.type].name}]}}}}}getAppearanceConfig(t=null,e={},o){const r={title:"外观",description:"Appearance"},i={class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter"},style:{title:"style样式",type:"string",description:"组件的样式",$converter:"/converter/appearance.converter"}};for(const s in e)i[s]=Object.assign(i[s]||{},e[s]);return{...r,properties:{...i},setPropertyRelates(s,u){if(s){switch(s&&s.propertyID){case"class":case"style":{xe.value++;break}}o&&o(s,t,u)}}}}getPropertyEditorParams(t,e=[],o="visible",r={},i={}){const{getVariables:s,getControlName:u,getStateMachines:c}=kt(this.designerHostService),d=this.getRealTargetType(t),h=e&&e.length>0?e:["Const","Variable","StateMachine","Expression"],f={type:"property-editor",propertyTypes:h};return h.map(m=>{switch(m){case"Const":Object.assign(f,{constType:"enum",constEnums:[{id:!0,name:"是"},{id:!1,name:"否"}]},r);break;case"Expression":f.expressionConfig=this.getExpressionOptions(t,d,o);break;case"StateMachine":f.stateMachines=c();break;case"Variable":Object.assign(f,{controlName:u(t),newVariablePrefix:"is",newVariableType:"Boolean",variables:s(this.viewModelId),onBeforeOpenVariables:p=>{p.value=s(this.viewModelId)}},i);break}}),f}getVisibleProperty(t,e=""){return{visible:{title:"是否可见",type:"boolean",description:"运行时组件是否可见",editor:this.getPropertyEditorParams(t,e==="gridFieldEditor"?["Const","Expression"]:["Const","Variable","StateMachine","Expression"],"visible")}}}getBehaviorConfig(t,e="",o={},r){const i={title:"行为",description:""},s=this.getVisibleProperty(t,e);for(const c in o)s[c]=Object.assign(s[c]||{},o[c]);const u=this;return{...i,properties:{...s},setPropertyRelates(c,d){if(c){switch(c.propertyID){case"disabled":case"readonly":case"visible":u.afterMutilEditorChanged(t,c);break}r&&r(c,d)}}}}afterMutilEditorChanged(t,e){this.addNewVariableToViewModel(e,this.viewModelId),this.updateExpressionValue(e),this.clearExpression(e,t)}updateElementByParentContainer(t,e){const o=e&&e.parent&&e.parent.schema;if(!o)return;const r=o.contents.findIndex(s=>s.id===t),i=te.cloneDeep(o.contents[r]);o.contents.splice(r,1),o.contents.splice(r,0,i),It()}addNewVariableToViewModel(t,e){const o=t.propertyValue;if(!(o&&typeof o=="object")||!(o.type==="Variable"&&o.isNewVariable))return;const s={id:o.field,category:"locale",code:o.fullPath,name:o.fullPath,type:o.newVariableType||"String"};delete o.newVariableType,delete o.isNewVariable,this.formSchemaUtils.getVariableByCode(s.code)||this.formSchemaUtils.getViewModelById(e).states.push(s)}updateExpressionValue(t){const e=t.propertyValue;if(!((e&&e.type)==="Expression"&&e.expressionInfo))return;const{expressionId:i,expressionInfo:s}=e,{targetId:u,targetType:c,expressionType:d,value:h,message:f}=s,m=this.formSchemaUtils.getModule();m.expressions??(m.expressions=[]);const{expressions:p}=m;let g=p.find(A=>A.target===u);g||(g={target:u,rules:[],targetType:c},p.push(g));const T=g.rules.find(A=>A.type===d);if(T)T.value=h,T.message=f;else{const A={id:i,type:d,value:h,message:f};g.rules.push(A)}delete e.expressionInfo}clearExpression(t,e){const o=t.propertyValue;if(o&&o.type==="Expression")return;const i=t.propertyID,s=this.formSchemaUtils.getExpressions(),u=e.binding?e.binding.field:e.id,c=s.find(d=>d.target===u);!c||!c.rules||(c.rules=c.rules.filter(d=>d.type!==i))}getExpressionOptions(t,e,o){return new Bt(this.formSchemaUtils).getExpressionOptions(t,e,o)}getRealTargetType(t){return["response-toolbar-item","tab-toolbar-item","section-toolbar-item"].indexOf(t.type)>-1?"Button":t.binding&&t.binding.field?"Field":"Container"}}class $t extends At{constructor(t,e){super(t,e)}getPropertyConfig(t){return this.propertyConfig.categories.basic=this.getBasicPropConfig(t),this.propertyConfig.categories.appearance=this.getAppearanceProperties(t),this.propertyConfig.categories.behavior=this.getBehaviorConfig(t),this.propertyConfig}getAppearanceProperties(t){return{title:"外观",description:"",properties:{class:{title:"class样式",type:"string",description:"组件的CSS样式"},icon:{title:"图标",type:"string",description:"图标"},title:{title:"标题",type:"string",description:"标题"}},setPropertyRelates(e,o){if(e)switch(e&&e.propertyID){case"title":{e.needRefreshControlTree=!0;break}}}}}}function Ot(n,t){function e(u){return!1}function o(){return!1}function r(){return!1}function i(){return!0}function s(u){return new $t(u,t).getPropertyConfig(n)}return{canAccepts:e,hideNestedPaddingInDesginerView:i,getPropsConfig:s,checkCanDeleteComponent:o,checkCanMoveComponent:r}}const jt=new Map([["buttons","items"],["appearance",ue.resolveAppearance]]);function Ue(n,t,e){return t}const Rt={$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:"点击事件"}},_t={$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"]},Ft=Object.assign({},ye.responseToolbarProps,{componentId:{type:String,default:""}});ue.createPropsResolver(ye.responseToolbarProps,Rt,jt,Ue);const He={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}};ue.createPropsResolver(He,_t,void 0,Ue),ue.createResponseToolbarEventHandlerResolver();class Lt extends Oe.BaseControlProperty{constructor(e,o,r="response-toolbar"){super(e,o);J(this,"toolbarType","response-toolbar");this.toolbarType=r}getPropertyConfig(e){return this.propertyConfig.categories.basic=this.getBasicPropConfig(e),this.toolbarType!=="tab-toolbar"&&this.getAppearancePropConfig(e),this.toolbarType==="response-toolbar"&&(this.propertyConfig.categories.behavior=this.getBehaviorConfig(e)),this.propertyConfig}getAppearancePropConfig(e){this.propertyConfig.categories.appearance={title:"外观",description:"Appearance",properties:{class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter"}}}}getBehaviorProperties(e){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 qt(n,t,e){const o=n.schema;function r(){var T;let g=((T=n.parent)==null?void 0:T.schema.type)||"";["page-header","tabs","section"].findIndex(A=>A===g)===-1&&(g=""),e.toolbarPosition=g}r();function i(g){return!1}function s(g,T){return T.text=g.label,T}function u(){return!1}function c(){return!1}function d(){return!1}function h(){return!0}function f(g){return new Lt(g,t,o.type).getPropertyConfig(o)}function m(g){var D;g&&(g.stopPropagation(),g.preventDefault());const{schema:T}=n;T.buttons||(T.buttons=[]);let A="";if(T.type)A=T.type+"-item";else{const w=(D=n.parent)==null?void 0:D.schema.type;A=w==="tabs"?"tab-toolbar-item":w==="section"?"section-toolbar-item":"response-toolbar-item"}const _=ue.getSchemaByType(A);_.id=`toolbar_item_${Math.random().toString().slice(2,6)}`,T.buttons.push(_),e.updateToolbarItems(),e.changeSelectedId("")}function p(){return[{id:"appendItem",title:"新增按钮",text:"",icon:"f-icon f-icon-plus-circle text-white",onClick:g=>m(g)}]}return{canAccepts:i,checkCanAddComponent:d,checkCanDeleteComponent:c,checkCanMoveComponent:u,hideNestedPaddingInDesginerView:h,onResolveNewComponentSchema:s,getPropsConfig:f,getCustomButtons:p}}var ae=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Ut(n){return n&&n.__esModule&&Object.prototype.hasOwnProperty.call(n,"default")?n.default:n}function ve(n){throw new Error('Could not dynamically require "'+n+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var We={exports:{}};(function(n,t){(function(e){n.exports=e()})(function(){return function(){function e(o,r,i){function s(d,h){if(!r[d]){if(!o[d]){var f=typeof ve=="function"&&ve;if(!h&&f)return f(d,!0);if(u)return u(d,!0);var m=new Error("Cannot find module '"+d+"'");throw m.code="MODULE_NOT_FOUND",m}var p=r[d]={exports:{}};o[d][0].call(p.exports,function(g){var T=o[d][1][g];return s(T||g)},p,p.exports,e,o,r,i)}return r[d].exports}for(var u=typeof ve=="function"&&ve,c=0;c<i.length;c++)s(i[c]);return s}return e}()({1:[function(e,o,r){var i={},s="(?:^|\\s)",u="(?:\\s|$)";function c(f){var m=i[f];return m?m.lastIndex=0:i[f]=m=new RegExp(s+f+u,"g"),m}function d(f,m){var p=f.className;p.length?c(m).test(p)||(f.className+=" "+m):f.className=m}function h(f,m){f.className=f.className.replace(c(m)," ").trim()}o.exports={add:d,rm:h}},{}],2:[function(e,o,r){(function(i){var s=e("contra/emitter"),u=e("crossvent"),c=e("./classes"),d=document,h=d.documentElement;function f(a,S){var I=arguments.length;I===1&&Array.isArray(a)===!1&&(S=a,a=[]);var y,E,k,H,oe,Z,R,F,z,W=null,X,L,fe=!1,pe=0,Q,O=S||{};O.moves===void 0&&(O.moves=D),O.accepts===void 0&&(O.accepts=D),O.invalid===void 0&&(O.invalid=ln),O.containers===void 0&&(O.containers=a||[]),O.isContainer===void 0&&(O.isContainer=_),O.copy===void 0&&(O.copy=!1),O.copySortSource===void 0&&(O.copySortSource=!1),O.revertOnSpill===void 0&&(O.revertOnSpill=!1),O.removeOnSpill===void 0&&(O.removeOnSpill=!1),O.direction===void 0&&(O.direction="vertical"),O.ignoreInputTextSelection===void 0&&(O.ignoreInputTextSelection=!0),O.mirrorContainer===void 0&&(O.mirrorContainer=d.body);var Y=s({containers:O.containers,start:cn,end:tt,cancel:it,remove:rt,destroy:on,canMove:an,dragging:!1});return O.removeOnSpill===!0&&Y.on("over",dn).on("out",fn),Je(),Y;function Pe(v){return Y.containers.indexOf(v)!==-1||O.isContainer(v)}function Je(v){var M=v?"remove":"add";g(h,M,"mousedown",rn),g(h,M,"mouseup",Me)}function Ee(v){var M=v?"remove":"add";g(h,M,"mousemove",sn)}function Ze(v){var M=v?"remove":"add";u[M](h,"selectstart",Ke),u[M](h,"click",Ke)}function on(){Je(!0),Me({})}function Ke(v){X&&v.preventDefault()}function rn(v){H=v.clientX,oe=v.clientY;var M=T(v)!==1||v.metaKey||v.ctrlKey;if(!M){var V=v.target,j=Ie(V);j&&(X=j,Ee(),v.type==="mousedown"&&(N(V)?V.focus():v.preventDefault()))}}function sn(v){if(X){if(T(v)===0){Me({});return}if(!(v.clientX!==void 0&&Math.abs(v.clientX-H)<=(O.slideFactorX||0)&&v.clientY!==void 0&&Math.abs(v.clientY-oe)<=(O.slideFactorY||0))){if(O.ignoreInputTextSelection){var M=b("clientX",v)||0,V=b("clientY",v)||0,j=d.elementFromPoint(M,V);if(N(j))return}var q=X;Ee(!0),Ze(),tt(),et(q),c.add(F||k,"gu-transit"),mn(),pn(),pe=0,Ne(v)}}}function Ie(v){if(!(Y.dragging&&y)&&!Pe(v)){for(var M=v;x(v)&&Pe(x(v))===!1;)if(O.invalid(v,M)||(v=x(v),!v))return;var V=x(v);if(V&&!O.invalid(v,M)){var j=O.moves(v,V,M,P(v));if(j)return{item:v,source:V}}}}function an(v){return!!Ie(v)}function cn(v){var M=Ie(v);M&&et(M)}function et(v){xn(v.item,v.source)&&(F=v.item.cloneNode(!0),Y.emit("cloned",F,v.item,"copy")),E=v.source,k=v.item,Z=R=P(v.item),Y.dragging=!0,Y.emit("drag",k,E)}function ln(){return!1}function tt(){if(Y.dragging){var v=F||k;ot(v,x(v))}}function nt(){X=!1,Ee(!0),Ze(!0)}function Me(v){if(nt(),!!Y.dragging){var M=F||k,V=b("clientX",v)||0,j=b("clientY",v)||0,q=A(y,V,j),U=st(q,V,j);U&&(F&&O.copySortSource||!F||U!==E)?ot(M,U):O.removeOnSpill?rt():it()}}function ot(v,M){var V=x(v);F&&O.copySortSource&&M===E&&V.removeChild(k),Ve(M)?Y.emit("cancel",v,E):Y.emit("drop",v,M,E,R),De()}function rt(){if(Y.dragging){var v=F||k,M=x(v);M&&M.removeChild(v),Y.emit(F?"cancel":"remove",v,M,E),De()}}function it(v){if(Y.dragging){var M=arguments.length>0?v:O.revertOnSpill,V=F||k,j=x(V),q=Ve(j);q===!1&&M&&(F?j&&j.removeChild(F):E.insertBefore(V,Z)),q||M?Y.emit("cancel",V,E,E):Y.emit("drop",V,j,E,R),De()}}function De(){var v=F||k;nt(),gn(),hn(),v&&c.rm(v,"gu-transit"),z&&clearTimeout(z),Y.dragging=!1,W&&Y.emit("out",v,W,E),Y.emit("dragend",v,pe),E=k=F=Z=R=z=W=null}function Ve(v,M){var V;return M!==void 0?V=M:y?V=R:V=P(F||k),v===E&&V===Z}function st(v,M,V){for(var j=v;j&&!q();)j=x(j);return j;function q(){var U=Pe(j);if(U===!1)return!1;var se=at(j,v),ne=ct(j,se,M,V),ie=Ve(j,ne);return ie?!0:O.accepts(k,j,E,ne)}}function Ne(v){if(!y)return;v.preventDefault();var M=b("clientX",v)||0,V=b("clientY",v)||0;y.style.left=M-2+"px",y.style.top=V-2+"px";var j=F||k,q=A(y,M,V),U=st(q,M,V),se=U!==null&&U!==W;(se||U===null)&&(re(),W=U,le()),wn(q,V);var ne=x(j);if(U===E&&F&&!O.copySortSource){ne&&ne.removeChild(j);return}var ie,ce=at(U,q);if(fe=vn(ce,U),ce!==null)ie=ct(U,ce,M,V);else if(O.revertOnSpill===!0&&!F)ie=Z,U=E;else{F&&ne&&ne.removeChild(j),F&&L&&(L.style.display="none");return}L.style.display="block",un(ie,j,se),ie?bn(ce,ie):Cn(U);function K(ee){Y.emit(ee,j,W,E)}function le(){se&&K("over")}function re(){W&&K("out")}}function un(v,M,V){(v===M||v===P(M))&&(R=P(M)),(v===null&&V||v!==M&&v!==P(M))&&(R=v)}function dn(v){c.rm(v,"gu-hide")}function fn(v){Y.dragging&&c.add(v,"gu-hide")}function pn(){y||(y=document.createElement("div"),y.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;",y.innerHTML=O.getMirrorText&&O.getMirrorText(k)||"控件",c.add(y,"gu-mirror"),O.mirrorContainer.appendChild(y),g(h,"add","mousemove",Ne),c.add(O.mirrorContainer,"gu-unselectable"),Y.emit("cloned",y,k,"mirror"))}function mn(){if(L=document.createElement("div"),c.add(L,"gu-insertion"),k){var v=k.getBoundingClientRect();L.style.left=v.left+"px",L.style.top=v.top+"px"}fe=!1,O.mirrorContainer.appendChild(L)}function gn(){y&&(c.rm(O.mirrorContainer,"gu-unselectable"),g(h,"remove","mousemove",Ne),x(y).removeChild(y),y=null)}function hn(){L&&(x(L).removeChild(L),L=null)}function at(v,M){for(var V=M;V!==v&&x(V)!==v;)V=x(V);return V===h?null:V}function vn(v,M){if(!M)return fe;var V=v||M&&M.lastElementChild;if(!V)return!0;var j=getComputedStyle(v),q=/^inline/.test(j.getPropertyValue("display"))||/^(left|right)$/.test(j.getPropertyValue("float"));if(q)return!0;if(M){var U=getComputedStyle(M),se=U.getPropertyValue("display");if(/flex$/.test(se)){var ne=U.getPropertyValue("flex-direction")||"row";if(ne==="row"||ne==="row-reverse")return!yn(M)}return!1}return!0}function yn(v){if(!v.children||!v.children.length)return!1;for(const M of Array.from(v.children)){const j=(M.className&&M.className.split(" ")||[]).filter(q=>/^col(-md|-xl|-el){0,1}-([1-9]|10|11|12)$/.test(q));if(!j.length)return!1;for(const q of j){const U=q.slice(q.lastIndexOf("-")+1);if(parseInt(U,10)!==12)return!1}}return!0}function bn(v,M){const V=M.getBoundingClientRect();if(L.style.left=V.left+"px",L.style.top=V.top+"px",fe){if(L.style.height=V.height+"px",L.style.width="4px",v){const j=v.getBoundingClientRect();j.top!==V.top&&(L.style.left=j.right+"px",L.style.top=j.top+"px",L.style.height=j.height+"px")}}else if(L.style.height="4px",L.style.width=V.width+"px",Q){const j=Q.getBoundingClientRect();V.top<j.top&&(L.style.display="none")}M===k&&k&&(L.style.display="none")}function Cn(v){R=null;var M=v.lastElementChild;if(M){var V=M.getBoundingClientRect();fe?(L.style.left=V.right+"px",L.style.top=V.top+"px",L.style.height=V.height+"px",L.style.width="4px"):(L.style.left=V.left+"px",L.style.top=V.bottom+"px",L.style.height="4px",L.style.width=V.width+"px"),M===k&&k&&(L.style.display="none")}else L.style.display="none"}function wn(v,M){if(!O.mirrorContainer.contains(v)||!window.scrollContainerList||!Array.from(window.scrollContainerList).length||(Q=m(v),!Q||!Q.contains(v)))return;const V=document.querySelector(".dgComponentSelected"),j=Q.getBoundingClientRect();if(M-30<j.top&&Q.scrollTop>0){let q=Q.scrollTop<10?Q.scrollTop:10;Q.scrollBy(0,-1*q),V&&Q.contains(V)&&(pe=pe+-1*q)}if(M+30>j.bottom&&Q.scrollTop<Q.scrollHeight-Q.clientHeight){const q=Q.scrollHeight-Q.clientHeight-Q.scrollTop;let U=q<10?q:10;Q.scrollBy(0,U),V&&Q.contains(V)&&(pe=pe+U)}}function ct(v,M,V,j){var q=O.direction==="horizontal",U=O.direction==="mixed",se=M!==v?ie():ne();return se;function ne(){var K=v.children.length,le,re,ee;for(le=0;le<K;le++)if(re=v.children[le],ee=re.getBoundingClientRect(),q&&ee.left+ee.width/2>V||!U&&!q&&ee.top+ee.height/2>j||U&&ee.left+ee.width>V&&ee.top+ee.height>j)return re;return null}function ie(){var K=M.getBoundingClientRect();if(U){var le=j-K.top,re=V-K.left,ee=K.bottom-j,ke=K.right-V,Be=Math.min(re,ke,le,ee),Ae;return fe?Ae=ke<re:Ae=ee===Be||ke===Be||re===Be,ce(Ae)}return ce(q?V>K.left+w(K)/2:j>K.top+C(K)/2)}function ce(K){return K?P(M):M}}function xn(v,M){return typeof O.copy=="boolean"?O.copy:O.copy(v,M)}}function m(a){const S=Array.from(window.scrollContainerList);if(S.length===1){const y=Array.from(window.scrollContainerList)[0];return document.getElementById(y)}const I=p(S);for(const y of I)if(y.contains(a))return y;return null}function p(a){const S=[];return a.forEach(I=>{const y=document.getElementById(I);y&&S.push(y)}),S.sort((I,y)=>I.contains(y)?1:y.contains(I)?-1:0),S}function g(a,S,I,y){var E={mouseup:"touchend",mousedown:"touchstart",mousemove:"touchmove"},k={mouseup:"pointerup",mousedown:"pointerdown",mousemove:"pointermove"},H={mouseup:"MSPointerUp",mousedown:"MSPointerDown",mousemove:"MSPointerMove"};i.navigator.pointerEnabled?u[S](a,k[I],y):i.navigator.msPointerEnabled?u[S](a,H[I],y):(u[S](a,E[I],y),u[S](a,I,y))}function T(a){if(a.touches!==void 0)return a.touches.length;if(a.which!==void 0&&a.which!==0)return a.which;if(a.buttons!==void 0)return a.buttons;var S=a.button;if(S!==void 0)return S&1?1:S&2?3:S&4?2:0}function A(a,S,I){a=a||{};var y=a.className||"",E;return a.className+=" gu-hide",E=d.elementFromPoint(S,I),a.className=y,E}function _(){return!1}function D(){return!0}function w(a){return a.width||a.right-a.left}function C(a){return a.height||a.bottom-a.top}function x(a){return a.parentNode===d?null:a.parentNode}function N(a){return a.tagName==="INPUT"||a.tagName==="TEXTAREA"||a.tagName==="SELECT"||B(a)}function B(a){return!a||a.contentEditable==="false"?!1:a.contentEditable==="true"?!0:B(x(a))}function P(a){return a.nextElementSibling||S();function S(){var I=a;do I=I.nextSibling;while(I&&I.nodeType!==1);return I}}function $(a){return a.targetTouches&&a.targetTouches.length?a.targetTouches[0]:a.changedTouches&&a.changedTouches.length?a.changedTouches[0]:a}function b(a,S){var I=$(S),y={pageX:"clientX",pageY:"clientY"};return a in y&&!(a in I)&&y[a]in I&&(a=y[a]),I[a]}o.exports=f}).call(this,typeof ae<"u"?ae:typeof self<"u"?self:typeof window<"u"?window:{})},{"./classes":1,"contra/emitter":5,crossvent:6}],3:[function(e,o,r){o.exports=function(s,u){return Array.prototype.slice.call(s,u)}},{}],4:[function(e,o,r){var i=e("ticky");o.exports=function(u,c,d){u&&i(function(){u.apply(d||null,c||[])})}},{ticky:10}],5:[function(e,o,r){var i=e("atoa"),s=e("./debounce");o.exports=function(c,d){var h=d||{},f={};return c===void 0&&(c={}),c.on=function(m,p){return f[m]?f[m].push(p):f[m]=[p],c},c.once=function(m,p){return p._once=!0,c.on(m,p),c},c.off=function(m,p){var g=arguments.length;if(g===1)delete f[m];else if(g===0)f={};else{var T=f[m];if(!T)return c;T.splice(T.indexOf(p),1)}return c},c.emit=function(){var m=i(arguments);return c.emitterSnapshot(m.shift()).apply(this,m)},c.emitterSnapshot=function(m){var p=(f[m]||[]).slice(0);return function(){var g=i(arguments),T=this||c;if(m==="error"&&h.throws!==!1&&!p.length)throw g.length===1?g[0]:g;return p.forEach(function(_){h.async?s(_,g,T):_.apply(T,g),_._once&&c.off(m,_)}),c}},c}},{"./debounce":4,atoa:3}],6:[function(e,o,r){(function(i){var s=e("custom-event"),u=e("./eventmap"),c=i.document,d=m,h=g,f=[];i.addEventListener||(d=p,h=T),o.exports={add:d,remove:h,fabricate:A};function m(x,N,B,P){return x.addEventListener(N,B,P)}function p(x,N,B){return x.attachEvent("on"+N,D(x,N,B))}function g(x,N,B,P){return x.removeEventListener(N,B,P)}function T(x,N,B){var P=w(x,N,B);if(P)return x.detachEvent("on"+N,P)}function A(x,N,B){var P=u.indexOf(N)===-1?b():$();x.dispatchEvent?x.dispatchEvent(P):x.fireEvent("on"+N,P);function $(){var a;return c.createEvent?(a=c.createEvent("Event"),a.initEvent(N,!0,!0)):c.createEventObject&&(a=c.createEventObject()),a}function b(){return new s(N,{detail:B})}}function _(x,N,B){return function($){var b=$||i.event;b.target=b.target||b.srcElement,b.preventDefault=b.preventDefault||function(){b.returnValue=!1},b.stopPropagation=b.stopPropagation||function(){b.cancelBubble=!0},b.which=b.which||b.keyCode,B.call(x,b)}}function D(x,N,B){var P=w(x,N,B)||_(x,N,B);return f.push({wrapper:P,element:x,type:N,fn:B}),P}function w(x,N,B){var P=C(x,N,B);if(P){var $=f[P].wrapper;return f.splice(P,1),$}}function C(x,N,B){var P,$;for(P=0;P<f.length;P++)if($=f[P],$.element===x&&$.type===N&&$.fn===B)return P}}).call(this,typeof ae<"u"?ae:typeof self<"u"?self:typeof window<"u"?window:{})},{"./eventmap":7,"custom-event":8}],7:[function(e,o,r){(function(i){var s=[],u="",c=/^on/;for(u in i)c.test(u)&&s.push(u.slice(2));o.exports=s}).call(this,typeof ae<"u"?ae:typeof self<"u"?self:typeof window<"u"?window:{})},{}],8:[function(e,o,r){(function(i){var s=i.CustomEvent;function u(){try{var c=new s("cat",{detail:{foo:"bar"}});return c.type==="cat"&&c.detail.foo==="bar"}catch{}return!1}o.exports=u()?s:typeof document<"u"&&typeof document.createEvent=="function"?function(d,h){var f=document.createEvent("CustomEvent");return h?f.initCustomEvent(d,h.bubbles,h.cancelable,h.detail):f.initCustomEvent(d,!1,!1,void 0),f}:function(d,h){var f=document.createEventObject();return f.type=d,h?(f.bubbles=!!h.bubbles,f.cancelable=!!h.cancelable,f.detail=h.detail):(f.bubbles=!1,f.cancelable=!1,f.detail=void 0),f}}).call(this,typeof ae<"u"?ae:typeof self<"u"?self:typeof window<"u"?window:{})},{}],9:[function(e,o,r){var i=o.exports={},s,u;function c(){throw new Error("setTimeout has not been defined")}function d(){throw new Error("clearTimeout has not been defined")}(function(){try{typeof setTimeout=="function"?s=setTimeout:s=c}catch{s=c}try{typeof clearTimeout=="function"?u=clearTimeout:u=d}catch{u=d}})();function h(C){if(s===setTimeout)return setTimeout(C,0);if((s===c||!s)&&setTimeout)return s=setTimeout,setTimeout(C,0);try{return s(C,0)}catch{try{return s.call(null,C,0)}catch{return s.call(this,C,0)}}}function f(C){if(u===clearTimeout)return clearTimeout(C);if((u===d||!u)&&clearTimeout)return u=clearTimeout,clearTimeout(C);try{return u(C)}catch{try{return u.call(null,C)}catch{return u.call(this,C)}}}var m=[],p=!1,g,T=-1;function A(){!p||!g||(p=!1,g.length?m=g.concat(m):T=-1,m.length&&_())}function _(){if(!p){var C=h(A);p=!0;for(var x=m.length;x;){for(g=m,m=[];++T<x;)g&&g[T].run();T=-1,x=m.length}g=null,p=!1,f(C)}}i.nextTick=function(C){var x=new Array(arguments.length-1);if(arguments.length>1)for(var N=1;N<arguments.length;N++)x[N-1]=arguments[N];m.push(new D(C,x)),m.length===1&&!p&&h(_)};function D(C,x){this.fun=C,this.array=x}D.prototype.run=function(){this.fun.apply(null,this.array)},i.title="browser",i.browser=!0,i.env={},i.argv=[],i.version="",i.versions={};function w(){}i.on=w,i.addListener=w,i.once=w,i.off=w,i.removeListener=w,i.removeAllListeners=w,i.emit=w,i.prependListener=w,i.prependOnceListener=w,i.listeners=function(C){return[]},i.binding=function(C){throw new Error("process.binding is not supported")},i.cwd=function(){return"/"},i.chdir=function(C){throw new Error("process.chdir is not supported")},i.umask=function(){return 0}},{}],10:[function(e,o,r){(function(i){var s=typeof i=="function",u;s?u=function(c){i(c)}:u=function(c){setTimeout(c,0)},o.exports=u}).call(this,e("timers").setImmediate)},{timers:11}],11:[function(e,o,r){(function(i,s){var u=e("process/browser.js").nextTick,c=Function.prototype.apply,d=Array.prototype.slice,h={},f=0;r.setTimeout=function(){return new m(c.call(setTimeout,window,arguments),clearTimeout)},r.setInterval=function(){return new m(c.call(setInterval,window,arguments),clearInterval)},r.clearTimeout=r.clearInterval=function(p){p.close()};function m(p,g){this._id=p,this._clearFn=g}m.prototype.unref=m.prototype.ref=function(){},m.prototype.close=function(){this._clearFn.call(window,this._id)},r.enroll=function(p,g){clearTimeout(p._idleTimeoutId),p._idleTimeout=g},r.unenroll=function(p){clearTimeout(p._idleTimeoutId),p._idleTimeout=-1},r._unrefActive=r.active=function(p){clearTimeout(p._idleTimeoutId);var g=p._idleTimeout;g>=0&&(p._idleTimeoutId=setTimeout(function(){p._onTimeout&&p._onTimeout()},g))},r.setImmediate=typeof i=="function"?i:function(p){var g=f++,T=arguments.length<2?!1:d.call(arguments,1);return h[g]=!0,u(function(){h[g]&&(T?p.apply(null,T):p.call(null),r.clearImmediate(g))}),g},r.clearImmediate=typeof s=="function"?s:function(p){delete h[p]}}).call(this,e("timers").setImmediate,e("timers").clearImmediate)},{"process/browser.js":9,timers:11}]},{},[2])(2)})})(We);var Ht=We.exports;const Ge=Ut(Ht);function Wt(n){let t;function e(r,i,s,u){const c=n.schema;if(!(c!=null&&c.buttons))return;let d;if(s){const p=s.getAttribute("id");d=Array.from(i.children).findIndex(g=>g.getAttribute("id")===p)}else d=Array.from(i.children).length;const h=r.getAttribute("id"),f=Array.from(i.children).findIndex(p=>p.getAttribute("id")===h),m=c.buttons[f];f!==d&&f>-1&&d>-1&&(f<d&&(d=d-1),c.buttons.splice(f,1),c.buttons.splice(d,0,m),u(),l.nextTick(()=>{const p=i.querySelector(".dgComponentSelected");p!=null&&p.className.includes("dgComponentSelected")&&(p.classList.remove("dgComponentSelected"),p.classList.remove("dgComponentFocused"),p.click()),me.canvasChanged.value++}))}function o(r,i,s){t&&t.destroy(),!(!Ge||!r||!i)&&(t=Ge([r],{mirrorContainer:i,direction:"horizontal",getMirrorText(u){return u.innerText},moves(u,c,d){let h=!0;return d.classList.contains("dropdown-item")?(h=!1,h):(u.classList.contains("no-drag")&&(h=!1),h)}}).on("drop",(u,c,d,h)=>e(u,c,h,s)))}return{dragulaInstance:t,initDragula:o}}function Gt(n,t,e){const{renderToolbarItemDesigner:o,actionHandlers:r}=e;let i;function s(D){i=D}function u(D,w=null){const C=t.value.find(x=>x.id===D.id);if(C.isDP)if(document.body.click(),typeof w=="boolean")C.expanded=w;else{const x=D.expanded;C.expanded=!x}}r.toggleDropdownMenu=u;function c(D){var C;const w={"dropdown-menu":!0};if(D.class){const x=(C=D.menuClass)==null?void 0:C.split(" ");x&&x.length&&x.reduce((N,B)=>(N[B]=!0,N),w)}return w}function d(D){var x;const w={disabled:D.disabled===!1,"dropdown-submenu":!0,"f-rt-dropdown":!0,"text-truncate":!0},C=(x=D.dropdownClass)==null?void 0:x.split(" ");return C&&C.length&&C.reduce((N,B)=>(N[B]=!0,N),w),w}function h(D){const w={disabled:!1,"dropdown-item":!0,"f-rt-btn":!0,"position-relative":!0,"farris-component":!0,"text-truncate":!0},C=(D.class||"").split(" ");return C&&C.length&&C.reduce((x,N)=>(x[N]=!0,x),w),w}let f;const m=new Map;function p(D,w,C){D.stopPropagation();const x=C?C.id:"__top_item__";if(w.children&&w.children.length&&(w.expanded=!w.expanded,w.expanded)){if(m.has(x)&&m.get(x)!==w){const N=m.get(x);N&&(N.expanded=!1,m.delete(x))}m.set(x,w)}}function g(D){var w;return(w=D.children)==null?void 0:w.map((C,x)=>C.children&&C.children.length?l.createVNode("li",{class:d(C),id:C.id},[l.createVNode("span",{class:h(C),onClick:N=>p(N,C,D)},[C.text,l.createVNode("i",{class:"f-icon f-icon-arrow-chevron-right",style:"display: inline-block;float: right;line-height: 1.25rem;"},null)]),f(C,C)]):o(C,x,!0))}function T(D,w,C,x){const{height:P,left:$,top:b}=x[0],{width:a,height:S}=C.getBoundingClientRect(),{marginTop:I,marginBottom:y}=getComputedStyle(C),E=Math.ceil(parseFloat(I))+Math.ceil(parseFloat(y)),k=b+P,H=w==null?void 0:w.getBoundingClientRect();function oe(){let z=0,W="left";const X=H?H.right:window.innerWidth,L=H?H.left:0;return z=X-$-10,X-$<a&&$-L>X-$&&(W="right",z=$-L-10),{hposition:W,maxWidth:Math.min(z,300)}}let Z=0,R="bottom";if(D==="tabs"||D==="section")Z=w.getBoundingClientRect().bottom-k-E-10;else{const z=H?H.bottom:window.innerHeight;Z=D==="page-header"?z-k:b,Z=Z-E-10,R=D==="page-header"?"bottom":"top"}const F=oe();return{position:R+"-"+F.hposition,maxWidth:F.maxWidth,maxHeight:Z}}function A(D){var B,P,$;const w="300px",C={display:D.expanded===!0?"block":"none",position:"absolute",maxWidth:w,minWidth:"120px"};if(!(i!=null&&i.value))return C;const x=i.value.querySelector("#"+D.id),N=x==null?void 0:x.getClientRects();if(x&&N&&N.length>0){const b=x?x.querySelector("#"+D.id+"_menu"):null;if(!b||D.expanded!==!0)return C;b.style.visibility="hidden",b.style.display="block",b.style.maxHeight="auto",b.style.maxWidth=w;let a;switch(r.toolbarPosition){case"tabs":a=(B=i.value)==null?void 0:B.closest(".farris-tabs");break;case"section":a=(P=i.value)==null?void 0:P.closest(".f-section");break;default:a=($=i.value)==null?void 0:$.closest(".f-page")}const S=T(r.toolbarPosition,a,b,N),{position:I,maxHeight:y,maxWidth:E}=S;b.style.visibility="visible";const k={left:I.indexOf("left")>-1?0:"unset",right:I.indexOf("left")>-1?"unset":0,bottom:I.indexOf("bottom")>-1?"unset":"100%",top:I.indexOf("bottom")>-1?"!00%":"unset",maxWidth:E?E+"px":"300px",maxHeight:y?y+"px":"auto",overflowY:y?"auto":"unset"};Object.assign(C,k)}return C}r.changeMenuPosition=A,f=function(D,w){return l.createVNode("ul",{class:c(D),style:A(D),id:D.id+"_menu"},[g(D)])};function _(D=""){D&&m.has(D)?m.forEach((w,C)=>{C!==D&&(w.expanded=!1,m.delete(C))}):(m.forEach(w=>{w.expanded=!1}),m.clear())}return{renderDropdownMenu:f,clearAllDropDownMenu:_,setResponseToolbarRef:s}}function ze(){function n(e){const o={"f-icon":!0};if(e.icon){const r=e.icon.trim().split(" ");r&&r.length&&r.reduce((i,s)=>(i[s]=!0,i),o)}return o}function t(e){return!!(e.icon&&e.icon.trim())}return{iconClass:n,shouldShowIcon:t}}const zt={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 Xt(n,t,e){var N;const o="",r=l.ref();function i(){return!0}function s(){return!1}function u(){return!0}function c(){return!0}function d(){return!0}function h(B){if(!B||!B.value)return null;const P=l.ref(B==null?void 0:B.value.parent),$=h(P);return $||null}function f(B=t){var a;const{componentInstance:P,designerItemElementRef:$}=B;if(!P||!P.value)return null;const{getCustomButtons:b}=P.value;return P.value.canMove||P.value.canAdd||P.value.canDelete||b&&((a=b())!=null&&a.length)?$:f(B.parent)}function m(){}function p(B){return!!e}function g(){return(t==null?void 0:t.schema.label)||(t==null?void 0:t.schema.title)||(t==null?void 0:t.schema.name)}function T(){}function A(B,P){}function _(B){const{componentType:P}=B,$=l.inject("designer-host-service");let b=Ce(P,B,$);const a=P.toLowerCase().replace(/-/g,"_");return b&&!b.id&&b.type===P&&(b.id=`${a}_${Math.random().toString().slice(2,6)}`),b}function D(B){}function w(...B){return[]}function C(){}function x(B){}return r.value={canMove:i(),canSelectParent:s(),canAdd:c(),canDelete:u(),canNested:!d(),contents:[],elementRef:n,parent:(N=t.parent)==null?void 0:N.componentInstance,schema:t.schema,styles:o,canAccepts:p,getBelongedComponentInstance:h,getDraggableDesignItemElement:f,getDraggingDisplayText:g,getPropConfig:w,getDragScopeElement:T,onAcceptMovedChildElement:A,onChildElementMovedOut:D,addNewChildComponentSchema:_,onRemoveComponent:C,triggerBelongedComponentToMoveWhenMoved:l.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:l.ref(!1),onPropertyChanged:x,getCustomButtons:m},r}const Xe=l.defineComponent({name:"FDesignerInnerItem",props:zt,emits:["selectionChange","addComponent","removeComponent","clickButton"],setup(n,t){const e=l.ref(n.canMove),o=l.ref(n.canAdd),r=l.ref(n.canDelete),i=l.ref(!1),s=l.ref(n.contentKey),u=l.ref(n.childType),c=l.ref(n.childLabel),d=l.ref(n.modelValue),h=l.ref(""),f=l.ref(),m=l.inject("canvas-dragula"),p=l.ref(),g=l.inject("design-item-context"),T={designerItemElementRef:f,componentInstance:p,schema:d.value,parent:g,setupContext:t};l.provide("design-item-context",T);const A=l.computed(()=>{var k;const y=((k=p.value)==null?void 0:k.getCustomButtons)&&p.value.getCustomButtons();return{"farris-component":!0,"flex-fill":n.id==="root-component","position-relative":e.value||r.value||(y==null?void 0:y.length),"farris-nested":i.value,"can-move":e.value,"d-none":f.value&&f.value.classList.contains("d-none")}}),_=l.computed(()=>{const y={};return h.value&&h.value.split(";").reduce((E,k)=>{const[H,oe]=k.split(":");return H&&(E[H]=oe),E},y),y});function D(y,E){if(g&&g.schema[s.value]){const k=g.schema[s.value].findIndex(H=>H.id===E.id);if(k>-1){const H=g.schema[s.value].length,oe=g.schema[s.value][k%H];g.designerItemElementRef.value.querySelector(`#${oe.id}-design-item`),g.schema[s.value].splice(k,1),xe.value++,t.emit("removeComponent"),t.emit("selectionChange")}}}function w(y){if(p.value.addNewChildComponentSchema){const E={componentType:u.value,label:c.value,parentComponentInstance:p.value,targetPosition:-1},k=p.value.addNewChildComponentSchema(E);d.value[s.value].push(k),t.emit("addComponent")}}function C(){return o.value&&l.createVNode("div",{role:"button",class:"btn component-settings-button",title:"新增",ref:"removeComponent",onClick:y=>{w()}},[l.createVNode("i",{class:"f-icon f-icon-plus-circle"},null)])}function x(y){return r.value&&l.createVNode("div",{role:"button",class:"btn component-settings-button",title:"删除",ref:"removeComponent",onClick:l.withModifiers(E=>D(E,y),["stop"])},[l.createVNode("i",{class:"f-icon f-icon-yxs_delete"},null)])}function N(){return e.value&&l.createVNode("div",{role:"button",class:"btn component-settings-button",title:"移动",ref:"moveComponent"},[l.createVNode("i",{"data-dragging-icon":"true",class:"cmp_move f-icon f-icon-yxs_move"},null)])}function B(){var E;const y=((E=p.value)==null?void 0:E.getCustomButtons)&&p.value.getCustomButtons();return y&&!!y.length&&y.map(k=>l.createVNode("div",{role:"button",class:`btn component-settings-button ${k.class||""} ${k.text?"settings-button-extend":""}`,title:k.title,ref:k.id,onClick:H=>k.onClick&&k.onClick(H)},[l.createVNode("i",{class:"f-icon "+k.icon},null),k.text&&l.createVNode("span",{class:"icon-text"},[k.text])]))}function P(y){return l.createVNode("div",{class:"component-btn-group","data-noattach":"true"},[l.createVNode("div",null,[C(),N(),x(y),B()])])}l.watch(()=>n.modelValue,y=>{d.value=y,T.schema=y});function $(y){window.scrollContainerList||(window.scrollContainerList=new Set);const E=y.getAttribute("id");E&&window.scrollContainerList.add(E)}function b(y){const E=y.target;$(E),Nt(E)}function a(){var y,E;(E=(y=d.value)==null?void 0:y.contents)!=null&&E.length&&f.value&&f.value.addEventListener("scroll",b)}function S(){const y=f.value,E=l.ref(y.children[1]);return Xt(E,T).value}l.onMounted(()=>{if(f.value){const y=f.value.querySelector(`[data-dragref='${d.value.id}-container']`);p.value=y&&y.componentInstance?y.componentInstance.value:S(),m&&y&&m.attachComponents(y,d.value),i.value=p.value.canNested!==void 0?p.value.canNested:i.value,o.value=p.value.canAdd!==void 0?p.value.canAdd:o.value,r.value=p.value.canDelete!==void 0?p.value.canDelete:r.value,e.value=p.value.canMove!==void 0?p.value.canMove:e.value,h.value=p.value.styles||"",f.value&&(f.value.componentInstance=p,f.value.designItemContext=T)}a(),xe.value++}),l.onBeforeUnmount(()=>{f.value&&f.value.removeEventListener("scroll",b)});function I(y){y&&(y.preventDefault(),y.stopPropagation());let E=T.designerItemElementRef;const k=f.value;if(k){const H=document.getElementsByClassName("dgComponentFocused");H&&H.length===1&&H[0]===f.value&&f.value.classList.contains("dgComponentSelected")||(Array.from(H).forEach(Z=>Z.classList.remove("dgComponentFocused")),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(Z=>Z.classList.remove("dgComponentSelected")),k.classList.add("dgComponentFocused"),t.emit("selectionChange",d.value.type,d.value,n.componentId,p.value),p.value.getDraggableDesignItemElement&&(E=p.value.getDraggableDesignItemElement(T),E&&E.value&&E.value.classList.add("dgComponentSelected")))}qe(E==null?void 0:E.value)}return()=>l.createVNode("div",{id:`${n.id}-design-item`,ref:f,class:A.value,style:_.value,onClick:I},[P(d.value),t.slots.default&&t.slots.default()])}});class Yt extends Oe.BaseControlProperty{constructor(e,o,r="response-toolbar-item"){super(e,o);J(this,"toolbarType","response-toolbar-item");this.toolbarType=r}getPropertyConfig(e,o=!1){this.propertyConfig.categories.basic=this.getBasicPropConfig(e),this.propertyConfig.categories.basic.properties.text={title:"文本",type:"string",description:"",refreshPanelAfterChanged:!0},this.propertyConfig.categories.basic.setPropertyRelates=i=>{if(i)switch(i&&i.propertyID){case"text":{i.needRefreshControlTree=!0;break}}},this.getAppearanceProperties(e,o);const r=this.getPropertyEditorParams(e,["Const","Variable","StateMachine","Expression"],"disabled");return this.propertyConfig.categories.behavior=this.getBehaviorConfig(e,"",{disabled:{title:"禁用",type:"boolean",description:"按钮禁用状态",refreshPanelAfterChanged:!0,editor:r}}),this.getEventPropConfig(e),this.propertyConfig}getAppearanceProperties(e,o=!1){this.propertyConfig.categories.appearance={title:"外观",description:"Appearance",properties:{class:{title:"class样式",type:"string",description:"",$converter:"/converter/appearance.converter",visible:!o},icon:{title:"图标",type:"string",description:""},split:{title:"下拉按钮分离",type:"boolean",description:"启用下拉按钮分离,可以单独点击按钮。单独点击下拉按钮展开下拉面板",visible:!!(e.children&&e.children.length>0)},tipsEnable:{title:"启用提示",type:"boolean",description:"当启用提示时,鼠标滑过按钮会有消息提示框",refreshPanelAfterChanged:!0,visible:this.toolbarType==="response-toolbar-item"},tipsText:{title:"提示消息内容",type:"string",description:"消息提示框内的展示内容",visible:e.tipsEnable===!0}}}}getEventPropConfig(e){const o=[{label:"onClick",name:"点击事件"}],r=this,i=r.eventsEditorUtils.formProperties(e,r.viewModelId,o),s={};s[r.viewModelId]={type:"events-editor",editor:{initialData:i}},this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:s,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(u,c){const d=u.propertyValue;delete e[r.viewModelId],d&&(d.setPropertyRelates=this.setPropertyRelates,r.eventsEditorUtils.saveRelatedParameters(e,r.viewModelId,d.events,d))}}}}function Se(n,t){if(!n)return!1;const e=t||[];return(e==null?void 0:e.findIndex(r=>r.id===n))===-1}function Ye(n,t){const e=t||[];let o={parentIndex:-1,itemIndex:-1};return e.some((r,i)=>{if(r.children&&r.children.length>0){const s=r.children.findIndex(u=>u.id===n);return s>-1?(o={parentIndex:i,itemIndex:s},!0):!1}}),o}function Qe(n,t){const e=t||[];let o={parentIndex:-1,itemIndex:-1};const r=e==null?void 0:e.findIndex(i=>i.id===n);return r>-1?{parent:null,item:e[r]}:(e.some((i,s)=>{if(i.children&&i.children.length>0){const u=i.children.findIndex(c=>c.id===n);return u>-1?(o={parentIndex:s,itemIndex:u},!0):!1}}),o.parentIndex<0?{parent:null,item:null}:{parent:e[o.parentIndex],item:e[o.parentIndex].children[o.itemIndex]})}function Qt(n,t){const e=t||[],o=e==null?void 0:e.findIndex(r=>r.id===n);return o>-1&&e[o].children&&e[o].children.length>0?e[o].expanded===!0:!1}function Jt(n,t,e){function o(b){return!1}function r(){return!1}function i(){return!1}function s(){return!1}function u(){return e.toolbarContext.schema.buttons||[]}function c(b,a=""){setTimeout(()=>{var E,k;const S=(E=n.parent)==null?void 0:E.designerItemElementRef.value;let I;a&&(I=S==null?void 0:S.querySelector("#"+a));const y=(k=I||S)==null?void 0:k.querySelector("#"+b);y==null||y.click()},0)}function d(b,a){a.disabled&&a.disabled.expressionId&&(a.disabled.expressionId=`${a.id}_disabled`),a.visible&&a.visible.expressionId&&(a.visible.expressionId=`${a.id}_visible`);const S=t.formSchemaUtils.getExpressions(),I=S.find(E=>E.target===b.id);if(!I||!I.rules||!I.rules.length)return;const y={target:a.id,rules:[],targetType:"Button"};I.rules.forEach(E=>{const k=Object.assign(te.cloneDeep(E),{id:`${a.id}_${E.type}`});y.rules.push(k)}),S.push(y)}function h(){const b=n.schema,a=Object.assign(te.cloneDeep(b),{id:`${n.schema.type}-cloned-${Math.random().toString(36).slice(2,6)}`,onClick:null});let S=[];return a.children&&a.children.length&&(S=a.children.map(I=>{const y=te.cloneDeep(I);return Object.assign(y,{id:`${n.schema.type}-cloned-${Math.random().toString(36).slice(2,6)}`,onClick:null}),d(I,y),y}),a.children=S),d(b,a),a}function f(){const b=n.schema.type||"response-toolbar-item",a=ue.getSchemaByType(b),S=b.toLowerCase().replace("-","_");return a&&!a.id&&a.type===b&&(a.id=`${S}_${Math.random().toString().slice(2,6)}`,a.text="按钮"),a}function m(b){const a=u(),S=a==null?void 0:a.findIndex(y=>y.id===b),I=S===-1?null:a[S];return{index:S,toolbarItem:I}}function p(){const b=n.schema.id,a=u();return Se(b,a)}function g(b){const a=t.formSchemaUtils.getExpressions();if(!a||!a.length)return;const S=I=>{const y=a&&a.findIndex(E=>E.target===I.id);y>-1&&a.splice(y,1)};S(b),b.children&&b.children.length&&b.children.forEach(I=>{S(I)})}function T(b){e.changeSelectedId(b)}function A(){var I,y;const b=u(),{parentIndex:a,itemIndex:S}=Ye(n.schema.id,b);a===-1||S===-1||(g(n.schema),b[a].children.splice(S,1),e.updateToolbarItems(),(I=n.setupContext)==null||I.emit("removeComponent"),(y=n.setupContext)==null||y.emit("selectionChange"))}function _(){var I,y;const b=n.schema.id,a=u(),S=a==null?void 0:a.findIndex(E=>E.id===b);S!==-1&&(g(a[S]),a==null||a.splice(S,1),e.updateToolbarItems(),(I=n.setupContext)==null||I.emit("removeComponent"),(y=n.setupContext)==null||y.emit("selectionChange"),me.canvasChanged.value++)}function D(b="Append"){var k;const a=u(),{parentIndex:S,itemIndex:I}=Ye(n.schema.id,a);if(S===-1||I===-1)return;const y=f(),E=b==="Copy"?h():Object.assign({},y);a[S].children.splice(I+1,0,E),e.updateToolbarItems(),T(E.id),(k=n.setupContext)==null||k.emit("addComponent")}function w(b,a){const{index:S}=m(a);if(S===-1)return{index:S,schema:null};const I=f(),y=b==="Copy"?h():Object.assign({},I);return{index:S,schema:y}}function C(){var I;const b=n.schema.id,{index:a,schema:S}=w("Copy",b);S&&(u().splice(a+1,0,S),e.updateToolbarItems(),c(S.id),(I=n.setupContext)==null||I.emit("addComponent"))}function x(){var I;const b=n.schema.id,{index:a,schema:S}=w("Append",b);if(S&&n.parent){const E=u()[a].children||[];E.push(S);const k=u();k[a].children=E,e.updateToolbarItems(),T(S.id),(I=n.setupContext)==null||I.emit("addComponent")}}function N(b){let a;switch(n.schema.type){case"tab-toolbar-item":a=new lt.TabToolbarItemProperty(b,t);break;default:a=new Yt(b,t,n.schema.type)}return a.getPropertyConfig(n.schema,p())}function B(b){b.stopPropagation(),b.stopImmediatePropagation()}function P(){const b=[{id:"delete",title:"删除",text:"",icon:"f-icon-yxs_delete",onClick:a=>{B(a),p()?A():_()}},{id:"copy",title:"复制",icon:"f-icon-yxs_copy",onClick:a=>{B(a);const{activeElement:S}=document,I=S?S.tagName.toLowerCase():"";I&&I==="input"||I==="textarea"?(S==null||S.blur(),l.nextTick(()=>{p()?D("Copy"):C()})):p()?D("Copy"):C()}}];return b.push(p()?{id:"appendSiblingButton",title:"",text:"新增同级",icon:"f-icon-plus-circle",onClick:a=>{B(a),D()}}:{id:"appendChildButton",title:"",text:"新增子级",icon:"f-icon-plus-circle",onClick:a=>{B(a),x()}}),b}function $(){const{schema:b}=n;g(b)}return{canAccepts:o,checkCanMoveComponent:r,checkCanDeleteComponent:i,checkCanAddComponent:s,getPropsConfig:N,getCustomButtons:P,onRemoveComponent:$}}const Zt=l.defineComponent({name:"FResponseToolbarItemDesign",props:He,emits:["Click","dropdown","clearAll"],setup(n,t){const e=l.ref(n.alignment),o=ze(),r=l.ref(),i=l.inject("designer-host-service"),s=l.inject("design-item-context"),u=l.inject("toolbar-item-action"),c=Jt(s,i,u),d=me.useDesignerInnerComponent(r,s,c);l.onMounted(()=>{r.value.componentInstance=d}),t.expose(d.value);function h(){const C={"f-icon":!0},x=n.icon?n.icon.trim():"";return de.getCustomClass(C,x)}function f(){return!!(n.icon&&n.icon.trim())}const m=l.computed(()=>{const C={btn:!0,"f-rt-btn":!0,"f-btn-ml":!n.isDP&&(e.value==="right"||e.value==="center"),"f-btn-mr":!n.isDP&&e.value==="left","btn-icontext":!!(n.icon&&n.icon.trim()),disabled:n.disabled===!0,"no-drag":!0,"text-truncate":!0};return de.getCustomClass(C,n.class)}),p=l.computed(()=>n.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"}),g=l.computed(()=>{const C={btn:!0,"dropdown-toggle":!0,"f-btn-mr":e.value==="left","dropdown-toggle-split":!0,"no-drag":!0};return de.getCustomClass(C,n.class)}),T=l.computed(()=>{let C={btn:!n.isDPItem,disabled:n.disabled===!0,"dropdown-item":n.isDPItem,"f-rt-btn":!0,"text-truncate":!0,"btn-icontext":!n.isDPItem&&!!(n.icon&&n.icon.trim()),"dropdown-item-icontext":n.isDPItem&&!!(n.icon&&n.icon.trim()),"no-drag":!0};return n.isDPItem||(C=de.getCustomClass(C,n.class||"")),n.isDP&&(C=de.getCustomClass(C,n.dropdownClass||"")),C});function A(C,x){x&&x.stopPropagation(),t.emit(C,{id:n.id,isDP:n.isDP})}function _(){return{"btn-group":!0,"no-drag":!0,"f-rt-dropdown":!0,"f-btn-ml":e.value==="right"||e.value==="center","f-btn-mr":e.value==="left"}}function D(){return l.createVNode("div",{ref:r,"data-dragref":`${s.schema.id}-container`,class:"farris-component position-relative",style:"display:inline-block!important;"},[l.createVNode("div",{class:_(),id:n.id},[l.createVNode("div",{class:m.value,style:p.value,onClick:()=>A("clearAll")},[o.shouldShowIcon(n)&&l.createVNode("i",{class:o.iconClass(n)},null),l.createVNode("span",null,[n.text]),!n.split&&l.createVNode("span",{class:"f-icon f-icon-arrow-chevron-down",style:"margin:0 0.5rem 0 0.25rem;",onClick:C=>A("dropdown",C)},null)]),n.split&&l.createVNode("button",{class:g.value,style:"border-radius:0 6px 6px 0;",onClick:C=>A("dropdown",C)},null),u.renderDropdownMenu(n.item,n.item)])])}function w(){return l.createVNode("li",{ref:r,"data-dragref":`${s.schema.id}-container`,id:n.id,class:T.value},[o.shouldShowIcon(n)&&l.createVNode("i",{class:o.iconClass(n)},null),n.text])}return()=>n.isDP?D():n.isDPItem?w():l.createVNode("div",{ref:r,"data-dragref":`${s.schema.id}-container`,class:"farris-component position-relative",style:"display:inline-block!important;"},[l.createVNode("button",{type:"button",class:m.value,id:n.id,onClick:()=>A("clearAll")},[f()&&l.createVNode("i",{class:h()},null),n.text])])}});function Kt(n,t,e,o){function r(m,p,g,T){o.changeSelectedId((p==null?void 0:p.id)||""),e&&e.setupContext&&e.setupContext.emit("selectionChange",m,p,g,T)}function i(){}function s(m){const p=m.expanded;o.clearAllDropdown(),o.toggleDropdownMenu(m,!p)}function u(m){o.clearAllDropdown(m.isDP?m.id:"")}function c(m,p=""){const g=n.items||[],T=p||m,A=g.find(_=>_.id===T);return p?A.children.find(_=>_.id===m):A}function d(m,p=!1){if(!p)return;const g=m.target;g!=null&&g.classList.contains("dgComponentFocused")&&(g==null||g.classList.add("dgComponentSelected"))}function h(m,p=!1){if(!p)return;const g=m.target;g!=null&&g.classList.contains("dgComponentFocused")&&(g==null||g.classList.remove("dgComponentSelected"))}function f(m,p,g=!1){const T=c(m.id,m.parent),A=l.ref(T);return l.createVNode(Xe,{key:T.id,class:["p-0",g?"d-block no-drag":"d-inline-block"],modelValue:A.value,"onUpdate:modelValue":_=>A.value=_,canMove:!1,childType:"response-toolbar-item",childLabel:"按钮",contentKey:"buttons",componentId:n.componentId,id:T.id,onSelectionChange:r,onRemoveComponent:i,onMouseenter:_=>d(_,g),onMouseleave:_=>h(_,g)},{default:()=>{var _;return[l.createVNode(Zt,{id:T.id,disabled:T.disabled,text:T.text,icon:T.icon,isDP:m.isDP,item:m,split:T.split,isDPItem:m.isDPItem,class:((_=m.appearance)==null?void 0:_.class)||"btn-secondary",alignment:n.alignment||"right",onDropdown:()=>s(m),onClearAll:D=>u(D),componentId:n.componentId},null)]}})}return{renderToolbarItemDesigner:f,actionHandlers:o}}function Te(n,t=!1,e=""){const o=[];return n.reduce((r,i)=>{if(i.children&&i.children.length>0){const s=Te(i.children,!0,i.id);r.push(Object.assign({},i,{children:s,isDPItem:!1,isDP:!0,parent:"",expanded:!1}))}else r.push(Object.assign({},i,{isDPItem:t,isDP:!1,parent:e}));return r},o),o}const en=l.defineComponent({name:"FResponseToolbarDesign",props:Ft,emits:["Click"],setup(n,t){const e=l.ref(Te(n.items)),o=l.ref(),r=l.ref(),i=l.ref(),s=l.ref("");let u=0;const c=15,d=l.inject("designer-host-service"),h=l.inject("design-item-context"),f={clearAllDropdown:R=>{},toggleDropdownMenu:R=>{},updateToolbarItems:()=>{},changeSelectedId:R=>{s.value=R},renderDropdownMenu:(R,F)=>{},toolbarContext:h,changeMenuPosition:(R,F,z)=>({}),toolbarPosition:""},m=qt(h,d,f),p=me.useDesignerComponent(i,h,m),g=l.inject("toolbar-item-handler"),{initDragula:T,dragulaInstance:A}=Wt(h),_=ze(),D=Kt(n,r,h,f),w=Gt(_,e,D),{renderToolbarItemDesigner:C}=D,{clearAllDropDownMenu:x,renderDropdownMenu:N,setResponseToolbarRef:B}=w;l.provide("toolbar-item-action",f),f.renderDropdownMenu=N,B(i),g&&(g.changeSelectedId=function(R){s.value=R});function P(){const R=r.value.querySelector(".dgComponentSelected");R&&me.setPositionForSelectedElement(R)}function $(){if(s.value)if(Se(s.value,e.value)){const{parent:R,item:F}=Qe(s.value,e.value);R&&(f.toggleDropdownMenu(R,!0),setTimeout(()=>{var X;const z=i.value.querySelector("#"+R.id),W=z==null?void 0:z.querySelector("#"+F.id);(((X=W==null?void 0:W.parentElement)==null?void 0:X.className)||"").indexOf("dgComponentFocused")<0&&(W==null||W.click())},0))}else P()}function b(R=""){e.value.filter(F=>F.id!==R&&F.children&&F.children.length>0).forEach(F=>{F.expanded=!1}),x(R)}f.clearAllDropdown=b;function a(){g&&g.updateToolbarItems&&g.updateToolbarItems()}f.updateToolbarItems=a;function S(R){if(R){const F=i.value.querySelector("#"+R.id),z=F.querySelector("#"+R.id+"_menu"),W=f.changeMenuPosition(R,F);Object.keys(W).forEach(X=>{z.style[X]=W[X]})}}function I(){const z=r.value.clientWidth,W=r.value.querySelectorAll(".farris-component>.f-rt-btn");W&&W.forEach(L=>{L.style.maxWidth=z-12+"px"});const X=r.value.querySelectorAll(".farris-component>.f-rt-dropdown");X&&X.forEach(L=>{L.querySelector(".dropdown-toggle-split")?L.querySelector(".f-rt-btn").style.maxWidth=z-38+"px":L.style.maxWidth=z-12+"px"})}const y=new ResizeObserver(R=>{var F;if(R.length){const W=R[0].contentRect.width;if(W===0){u=0;return}if(Math.abs(W-u)>c){if(u=W,Se(s.value,e.value)){const{parent:X,item:L}=Qe(s.value,e.value);S(X)}else if(Qt(s.value,e.value)){const X=(F=e.value)==null?void 0:F.find(L=>L.id===s.value);S(X)}else b();I()}}});l.onMounted(()=>{y.observe(i.value),u=i.value.clientWidth,i.value.componentInstance=p,T(r.value,o.value,a)}),l.onUnmounted(()=>{y.disconnect(),A&&A.destroy&&A.destroy()}),t.expose(p.value);const E=l.computed(()=>{const R={"f-toolbar":!0,"f-response-toolbar":!0,"position-relative":!0,"f-response-toolbar-sm":n.buttonSize==="sm","f-response-toolbar-lg":n.buttonSize==="lg"};return de.getCustomClass(R,n.customClass)}),k=l.computed(()=>({"text-left":n.alignment==="left","text-right":n.alignment==="right","justify-content-end":n.alignment==="right","justify-content-start":n.alignment==="left","justify-content-center":n.alignment==="center","no-drag":!0,"w-100":!0}));l.watch(()=>n.items,()=>{e.value=Te(n.items),l.nextTick(()=>{$(),I()})},{deep:!0});function H(R){R&&(R.stopPropagation(),R.preventDefault());const{schema:F}=h;F.buttons||(F.buttons=[]);const z=ue.getSchemaByType("response-toolbar-item");z.id=`toolbar_item_${Math.random().toString().slice(2,6)}`,z.appearance={class:"btn btn-secondary"},F.buttons.push(z)}function oe(){return l.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:H},[l.createVNode("span",{class:"f-icon f-icon-amplification mr-1",style:"font-size: 12px;"},null),l.createVNode("span",{class:"farris-tag-add-text"},[l.createTextVNode("添加按钮")])])}function Z(){return e.value.map((R,F)=>C(R,F))}return()=>{var R;return l.createVNode("div",{ref:i,"data-dragref":`${h.schema.id}-container`,class:E.value,id:n.id},[l.createVNode("div",{ref:o,class:k.value,onClick:F=>b(F)},[l.createVNode("div",{ref:r,class:"d-block f-response-content"},[(R=e.value)!=null&&R.length?Z():oe()])])])}}}),tn=l.defineComponent({name:"FPageHeaderDesign",props:Fe,emits:["click"],setup(n,t){const e=l.ref(),o=l.inject("designer-host-service"),r=l.inject("design-item-context"),i=Ot(r.schema,o),s=Pt(e,r,i),u=l.ref(r.schema.toolbar||{type:"response-toolbar",buttons:[]}),c=l.ref($e.responseToolbarResolver(u.value));l.onMounted(()=>{e.value.componentInstance=s}),l.watch(()=>r.schema.toolbar,()=>{u.value=r.schema.toolbar||{type:"response-toolbar",buttons:[]},c.value=$e.responseToolbarResolver(u.value)},{deep:!0});const d=l.computed(()=>[...c.value.items]);function h(T,A,_,D){r&&r.setupContext&&r.setupContext.emit("selectionChange",T,A,_,D)}t.expose(s.value);function f(T,A){T&&A&&A.split(" ").reduce((D,w)=>(D[w]=!0,D),T)}const m=l.computed(()=>{const T={"f-title-icon":!0};return f(T,n.iconClass),T}),p=l.computed(()=>{const T={"f-icon":!0};return f(T,n.icon),T}),g=l.computed(()=>{const T={"text-right":!0,"col-6":!0};return f(T,n.buttonClass||""),T});return()=>l.createVNode("div",{ref:e},[l.createVNode("nav",{class:"f-page-header-base"},[l.createVNode("div",{class:"f-title"},[n.showIcon&&n.icon?l.createVNode("span",{class:m.value},[l.createVNode("i",{class:p.value},null)]):"",l.createVNode("h4",{class:"f-title-text"},[n.title])]),l.createVNode(Xe,{class:g.value,modelValue:u.value,"onUpdate:modelValue":T=>u.value=T,canAdd:!1,childType:"response-toolbar-item",childLabel:"按钮",contentKey:"buttons",id:u.value.id,componentId:n.componentId,onSelectionChange:h},{default:()=>[l.createVNode(en,{id:u.value.id,customClass:"w-100",items:d.value,componentId:n.componentId},null)]})])])}}),nn={install(n){n.component(he.name,he)},register(n,t,e,o){n["page-header"]=he,t["page-header"]=we,o["page-header"]={eventHandlerResolver:Le}},registerDesigner(n,t,e){n["page-header"]=tn,t["page-header"]=we}};G.PageHeader=he,G.default=nn,G.eventHandlerResolver=Le,G.pageHeaderDesignerProps=Fe,G.pageHeaderProps=ge,G.propsResolver=we,Object.defineProperties(G,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
|
@@ -17,7 +17,7 @@ import An from "../combo-tree/index.esm.js";
|
|
|
17
17
|
import zn from "../component/index.esm.js";
|
|
18
18
|
import Un from "../color-picker/index.esm.js";
|
|
19
19
|
import Gn from "../content-container/index.esm.js";
|
|
20
|
-
import qn from "
|
|
20
|
+
import qn from "../../designer/date-picker/index.esm.js";
|
|
21
21
|
import Wn from "../../designer/data-grid/index.esm.js";
|
|
22
22
|
import _n from "../dropdown/index.esm.js";
|
|
23
23
|
import Xn from "../dynamic-form/index.esm.js";
|
|
@@ -43,7 +43,7 @@ import mo from "../progress/index.esm.js";
|
|
|
43
43
|
import vo from "../query-solution/index.esm.js";
|
|
44
44
|
import go from "../../designer/radio-group/index.esm.js";
|
|
45
45
|
import ho from "../rate/index.esm.js";
|
|
46
|
-
import yo from "
|
|
46
|
+
import yo from "../../designer/response-toolbar/index.esm.js";
|
|
47
47
|
import bo from "../response-layout/index.esm.js";
|
|
48
48
|
import Co from "../response-layout-editor/index.esm.js";
|
|
49
49
|
import wo from "../search-box/index.esm.js";
|
|
@@ -52,7 +52,7 @@ import So from "../smoke-detector/index.esm.js";
|
|
|
52
52
|
import Fo from "../splitter/index.esm.js";
|
|
53
53
|
import Eo from "../step/index.esm.js";
|
|
54
54
|
import Io from "../switch/index.esm.js";
|
|
55
|
-
import To from "
|
|
55
|
+
import To from "../../designer/tabs/index.esm.js";
|
|
56
56
|
import Mo from "../tags/index.esm.js";
|
|
57
57
|
import ko from "../text/index.esm.js";
|
|
58
58
|
import Po from "../time-picker/index.esm.js";
|
|
@@ -61,7 +61,7 @@ import Vo from "../tree-view/index.esm.js";
|
|
|
61
61
|
import Oo from "../uploader/index.esm.js";
|
|
62
62
|
import No from "../verify-detail/index.esm.js";
|
|
63
63
|
import Ro from "../video/index.esm.js";
|
|
64
|
-
import jo from "
|
|
64
|
+
import jo from "../../designer/textarea/index.esm.js";
|
|
65
65
|
import Lo from "../schema-selector/index.esm.js";
|
|
66
66
|
import $o from "../../designer/tree-grid/index.esm.js";
|
|
67
67
|
import Do from "../event-parameter/index.esm.js";
|