@farris/ui-vue 1.3.4 → 1.3.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/accordion/index.esm.js +16 -16
- package/components/accordion/index.umd.cjs +1 -1
- package/components/avatar/index.esm.js +65 -65
- package/components/avatar/index.umd.cjs +1 -1
- package/components/button-edit/index.esm.js +13 -13
- package/components/button-edit/index.umd.cjs +1 -1
- package/components/calendar/index.esm.js +504 -490
- package/components/calendar/index.umd.cjs +1 -1
- package/components/capsule/index.esm.js +247 -233
- package/components/capsule/index.umd.cjs +1 -1
- package/components/checkbox/index.esm.js +356 -344
- package/components/checkbox/index.umd.cjs +1 -1
- package/components/color-picker/index.esm.js +159 -145
- package/components/color-picker/index.umd.cjs +2 -2
- package/components/combo-list/index.esm.js +127 -128
- package/components/combo-list/index.umd.cjs +1 -1
- package/components/combo-tree/index.esm.js +15 -15
- package/components/combo-tree/index.umd.cjs +1 -1
- package/components/component/index.esm.js +101 -87
- package/components/component/index.umd.cjs +1 -1
- package/components/condition/index.esm.js +9 -7
- package/components/condition/index.umd.cjs +1 -1
- package/components/content-container/index.esm.js +181 -167
- package/components/content-container/index.umd.cjs +1 -1
- package/components/data-grid/index.esm.js +746 -730
- package/components/data-grid/index.umd.cjs +1 -1
- package/components/data-view/index.esm.js +9 -7
- package/components/data-view/index.umd.cjs +1 -1
- package/components/date-picker/index.esm.js +789 -777
- package/components/date-picker/index.umd.cjs +1 -1
- package/components/designer-canvas/index.esm.js +3096 -3069
- package/components/designer-canvas/index.umd.cjs +1 -1
- package/components/dropdown/index.esm.js +257 -243
- package/components/dropdown/index.umd.cjs +2 -2
- package/components/dynamic-form/index.esm.js +322 -306
- package/components/dynamic-form/index.umd.cjs +1 -1
- package/components/dynamic-resolver/index.esm.js +177 -163
- package/components/dynamic-resolver/index.umd.cjs +1 -1
- package/components/event-parameter/index.esm.js +78 -82
- package/components/event-parameter/index.umd.cjs +1 -1
- package/components/events-editor/index.esm.js +501 -487
- package/components/events-editor/index.umd.cjs +1 -1
- package/components/expression-editor/index.esm.js +37 -37
- package/components/expression-editor/index.umd.cjs +1 -1
- package/components/external-container/index.esm.js +487 -472
- package/components/external-container/index.umd.cjs +1 -1
- package/components/field-selector/index.esm.js +440 -433
- package/components/field-selector/index.umd.cjs +1 -1
- package/components/filter-bar/index.esm.js +594 -587
- package/components/filter-bar/index.umd.cjs +1 -1
- package/components/flow-canvas/index.esm.js +2766 -2739
- package/components/flow-canvas/index.umd.cjs +1 -1
- package/components/image-cropper/index.esm.js +402 -388
- package/components/image-cropper/index.umd.cjs +1 -1
- package/components/input-group/index.esm.js +201 -202
- package/components/input-group/index.umd.cjs +1 -1
- package/components/layout/index.esm.js +264 -245
- package/components/layout/index.umd.cjs +1 -1
- package/components/list-nav/index.esm.js +157 -143
- package/components/list-nav/index.umd.cjs +1 -1
- package/components/list-view/index.esm.js +314 -298
- package/components/list-view/index.umd.cjs +1 -1
- package/components/lookup/index.esm.js +862 -843
- package/components/lookup/index.umd.cjs +1 -1
- package/components/mapping-editor/index.esm.js +1031 -1015
- package/components/mapping-editor/index.umd.cjs +1 -1
- package/components/nav/index.esm.js +169 -155
- package/components/nav/index.umd.cjs +2 -2
- package/components/number-range/index.esm.js +150 -137
- package/components/number-range/index.umd.cjs +1 -1
- package/components/number-spinner/index.esm.js +207 -194
- package/components/number-spinner/index.umd.cjs +1 -1
- package/components/order/index.esm.js +427 -414
- package/components/order/index.umd.cjs +1 -1
- package/components/page-footer/index.esm.js +22 -22
- package/components/page-footer/index.umd.cjs +1 -1
- package/components/page-header/index.esm.js +510 -492
- package/components/page-header/index.umd.cjs +1 -1
- package/components/pagination/index.esm.js +192 -178
- package/components/pagination/index.umd.cjs +1 -1
- package/components/progress/index.esm.js +234 -220
- package/components/progress/index.umd.cjs +3 -3
- package/components/property-editor/index.esm.js +288 -277
- package/components/property-editor/index.umd.cjs +2 -2
- package/components/property-panel/index.esm.js +62 -61
- package/components/property-panel/index.umd.cjs +1 -1
- package/components/query-solution/index.esm.js +776 -770
- package/components/query-solution/index.umd.cjs +6 -6
- package/components/radio-button/index.esm.js +64 -64
- package/components/radio-button/index.umd.cjs +1 -1
- package/components/radio-group/index.esm.js +296 -283
- package/components/radio-group/index.umd.cjs +1 -1
- package/components/rate/index.esm.js +222 -208
- package/components/rate/index.umd.cjs +1 -1
- package/components/response-layout/index.esm.js +187 -173
- package/components/response-layout/index.umd.cjs +1 -1
- package/components/response-layout-editor/index.esm.js +554 -542
- package/components/response-layout-editor/index.umd.cjs +1 -1
- package/components/response-toolbar/index.esm.js +483 -469
- package/components/response-toolbar/index.umd.cjs +1 -1
- package/components/schema-selector/index.esm.js +634 -619
- package/components/schema-selector/index.umd.cjs +2 -2
- package/components/search-box/index.esm.js +228 -214
- package/components/search-box/index.umd.cjs +1 -1
- package/components/section/index.esm.js +419 -406
- package/components/section/index.umd.cjs +1 -1
- package/components/smoke-detector/index.esm.js +162 -148
- package/components/smoke-detector/index.umd.cjs +1 -1
- package/components/splitter/index.esm.js +308 -284
- package/components/splitter/index.umd.cjs +1 -1
- package/components/step/index.esm.js +279 -265
- package/components/step/index.umd.cjs +1 -1
- package/components/switch/index.esm.js +183 -170
- package/components/switch/index.umd.cjs +1 -1
- package/components/tabs/index.esm.js +307 -294
- package/components/tabs/index.umd.cjs +1 -1
- package/components/tags/index.esm.js +320 -306
- package/components/tags/index.umd.cjs +1 -1
- package/components/text/index.esm.js +245 -231
- package/components/text/index.umd.cjs +1 -1
- package/components/textarea/index.esm.js +260 -247
- package/components/textarea/index.umd.cjs +1 -1
- package/components/time-picker/index.esm.js +409 -396
- package/components/time-picker/index.umd.cjs +1 -1
- package/components/transfer/index.esm.js +424 -410
- package/components/transfer/index.umd.cjs +1 -1
- package/components/tree-grid/index.esm.js +383 -376
- package/components/tree-grid/index.umd.cjs +1 -1
- package/components/tree-view/index.esm.js +595 -575
- package/components/tree-view/index.umd.cjs +1 -1
- package/components/uploader/index.esm.js +325 -311
- package/components/uploader/index.umd.cjs +2 -2
- package/components/verify-detail/index.esm.js +304 -290
- package/components/verify-detail/index.umd.cjs +1 -1
- package/components/video/index.esm.js +99 -85
- package/components/video/index.umd.cjs +1 -1
- package/components/weather/index.esm.js +947 -933
- package/components/weather/index.umd.cjs +4 -4
- package/farris.all.esm.js +5492 -5470
- package/farris.all.umd.cjs +13 -13
- package/index.css +1 -1
- package/package.json +1 -1
- package/types/condition/src/composition/condition-value/input-group-value.d.ts +1 -1
- package/types/entity-binding-selector/composition/use-entity-tree.d.ts +3 -0
- package/types/entity-binding-selector/composition/use-field-tree.d.ts +1 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(R,r){typeof exports=="object"&&typeof module<"u"?r(exports,require("vue"),require("lodash-es"),require("bignumber.js")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es","bignumber.js"],r):(R=typeof globalThis<"u"?globalThis:R||self,r(R.splitter={},R.Vue,R.LodashES))})(this,function(R,r,B){"use strict";const V={},F={};function L(t){const{properties:e,title:n,ignore:i}=t,o=i&&Array.isArray(i),s=Object.keys(e).reduce((a,d)=>((!o||!i.find(v=>v===d))&&(a[d]=e[d].type==="object"&&e[d].properties?L(e[d]):B.cloneDeep(e[d].default)),a),{});if(n&&(!o||!i.find(a=>a==="id"))){const a=n.toLowerCase().replace(/-/g,"_");s.id=`${a}_${Math.random().toString().slice(2,6)}`}return s}function A(t,e={},n){const i=V[t];if(i){let o=L(i);const s=F[t];return o=s?s({getSchemaByType:A},o,e,n):o,o}return null}function U(t,e){const n=L(e);return Object.keys(n).reduce((i,o)=>(i[o]&&B.isPlainObject(i[o])&&B.isPlainObject(t[o]||!t[o])?Object.assign(i[o],t[o]||{}):i[o]=t[o],i),n),n}function Q(t,e){return Object.keys(t).filter(i=>t[i]!=null).reduce((i,o)=>{if(e.has(o)){const s=e.get(o);if(typeof s=="string")i[s]=t[o];else{const a=s(o,t[o],t);Object.assign(i,a)}}else i[o]=t[o];return i},{})}function J(t,e,n=new Map){const i=U(t,e);return Q(i,n)}function Z(t={}){function e(c,p,m,l){if(typeof m=="number")return l[c].length===m;if(typeof m=="object"){const h=Object.keys(m)[0],y=m[h];if(h==="not")return Number(l[c].length)!==Number(y);if(h==="moreThan")return Number(l[c].length)>=Number(y);if(h==="lessThan")return Number(l[c].length)<=Number(y)}return!1}function n(c,p,m,l){return l[c]&&l[c].propertyValue&&String(l[c].propertyValue.value)===String(m)}const i=new Map([["length",e],["getProperty",n]]);Object.keys(t).reduce((c,p)=>(c.set(p,t[p]),c),i);function o(c,p){const m=c;return typeof p=="number"?[{target:m,operator:"length",param:null,value:Number(p)}]:typeof p=="boolean"?[{target:m,operator:"getProperty",param:c,value:!!p}]:typeof p=="object"?Object.keys(p).map(l=>{if(l==="length")return{target:m,operator:"length",param:null,value:p[l]};const h=l,y=p[l];return{target:m,operator:"getProperty",param:h,value:y}}):[]}function s(c){return Object.keys(c).reduce((m,l)=>{const h=o(l,c[l]);return m.push(...h),m},[])}function a(c,p){if(i.has(c.operator)){const m=i.get(c.operator);return m&&m(c.target,c.param,c.value,p)||!1}return!1}function d(c,p){return s(c).reduce((h,y)=>h&&a(y,p),!0)}function v(c,p){const m=Object.keys(c),l=m.includes("allOf"),h=m.includes("anyOf"),y=l||h,P=(y?c[y?l?"allOf":"anyOf":"allOf"]:[c]).map(f=>d(f,p));return l?!P.includes(!1):P.includes(!0)}return{parseValueSchema:v}}const O={button:{type:"button",name:"按钮",icon:"Button"},"response-toolbar":{type:"response-toolbar",name:"工具栏",icon:"ButtonGroup"},"response-toolbar-item":{type:"response-toolbar-item",name:"按钮",icon:"Button"},"content-container":{type:"content-container",name:"容器",icon:"ContentContainer"},"input-group":{type:"input-group",name:"文本",icon:"TextBox"},textarea:{type:"textarea",name:"多行文本",icon:"MultiTextBox"},lookup:{type:"lookup",name:"帮助",icon:"LookupEdit"},"number-spinner":{type:"number-spinner",name:"数值",icon:"NumericBox"},"date-picker":{type:"date-picker",name:"日期",icon:"DateBox"},switch:{type:"switch",name:"开关",icon:"SwitchField"},"radio-group":{type:"radio-group",name:"单选组",icon:"RadioGroup"},"check-box":{type:"check-box",name:"复选框",icon:"CheckBox"},"check-group":{type:"check-group",name:"复选框组",icon:"CheckGroup"},"combo-list":{type:"combo-list",name:"下拉列表",icon:"EnumField"},"response-form":{type:"response-form",name:"卡片面板",icon:"Form"},"response-layout":{type:"response-layout",name:"布局容器",icon:"ResponseLayout3"},"response-layout-item":{type:"response-layout-item",name:"布局",icon:"ResponseLayout1"},"tree-grid":{type:"tree-grid",name:"树表格",icon:"TreeGrid"},"tree-grid-column":{type:"tree-grid-column",name:"树表格列"},"data-grid":{type:"data-grid",name:"表格",icon:"DataGrid"},"data-grid-column":{type:"data-grid-column",name:"表格列"},module:{type:"Module",name:"模块",icon:"Module"},component:{type:"component",name:"组件",icon:"Component"},tabs:{type:"tabs",name:"标签页",icon:"Tab"},"tab-page":{type:"tab-page",name:"标签页项",dependentParentControl:"Tab"},"tab-toolbar-item":{type:"tab-toolbar-item",name:"标签页工具栏按钮",icon:"Button"},"time-picker":{type:"time-picker",name:"时间选择",icon:"TimePicker"},section:{type:"section",name:"分组面板",icon:"Section"},"section-toolbar":{type:"section-toolbar",name:"分组面板工具栏"},"section-toolbar-item":{type:"section-toolbar-item",name:"分组面板按钮"},splitter:{type:"splitter",name:"分栏面板",icon:"Splitter"},"splitter-pane":{type:"splitter-pane",name:"分栏面板项",dependentParentControl:"Splitter"},"component-ref":{type:"component-ref",name:"组件引用节点"},uploader:{type:"uploader",name:"附件上传",icon:"FileUpload"},"page-header":{type:"page-header",name:"页头",icon:"Header"},"page-footer":{type:"page-footer",name:"页脚",icon:"ModalFooter"},"tab-toolbar":{type:"tab-toolbar",name:"标签页工具栏",icon:"TabToolbar"},fieldset:{type:"fieldset",name:"分组",icon:"fieldset"},"query-solution":{type:"query-solution",name:"筛选方案",icon:"QueryScheme"}},K={},x={};Z();function E(t,e,n=new Map,i=(a,d,v,c)=>d,o={},s=a=>a){return V[e.title]=e,F[e.title]=i,K[e.title]=o,x[e.title]=s,(a={})=>{const d=J(a,e,n),v=Object.keys(t).reduce((c,p)=>(c[p]=t[p].default,c),{});return Object.assign(v,d)}}function q(t,e){return{customClass:e.class,customStyle:e.style}}const I=new Map([["appearance",q]]);function ee(t,e,n){const i=t.getSchemaByType("splitter-pane");return i.appearance={class:"f-col-w6 f-page-content-nav"},i.position="left",e.contents.unshift(i),e}function te(t,e,n){const i=t.getSchemaByType("splitter-pane");return i.appearance={class:"f-page-content-main"},i.position="main",e.contents.push(i),e}function ne(t,e,n){const i=n.parentComponentInstance;return String(i.schema.appearance.class||"").split(" ").includes("f-page-main")&&(e.appearance={class:"f-page-content"}),ee(t,e),te(t,e),e}const ie={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/splitter.schema.json",title:"splitter",description:"A Farris Container Component",type:"object",properties:{id:{description:"The unique identifier for a splitter",type:"string"},type:{description:"The type string of splitter component",type:"string",default:"splitter"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},contents:{description:"",type:"array",default:[]},direction:{description:"",type:"string",default:"row",enum:["column","row"]}}},oe={title:"splitter",description:"A Farris Container Component",type:"object",categories:{basic:{description:"Basic Infomation",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"combo-list",textField:"value",valueField:"key",data:[{key:"splitter",value:"分栏面板"}]}}}},appearance:{description:"",title:"外观",properties:{class:{description:"组件的CSS样式",title:"class样式"},style:{description:"组件的内容样式",title:"style样式"}}}}},M={customStyle:{type:String,default:""},customClass:{type:String,default:""},direction:{Type:String,default:"row"}},H=E(M,ie,I,ne,oe);function W(t){const e=r.ref(-1),n=r.ref(-1),i=r.ref(0),o=r.ref(0),s=r.ref(!1),a=r.ref(!1),d=r.computed(()=>({display:s.value?"block":"none",left:`${i.value}px`})),v=r.computed(()=>({display:a.value?"block":"none",top:`${o.value}px`})),c=r.computed(()=>({display:a.value||s.value?"block":"none"}));function p(l){const h=t.value;if(h){const{left:y}=h.getBoundingClientRect();i.value=l.clientX-y}}function m(l){const h=t.value;if(h){const{top:y}=h.getBoundingClientRect();o.value=l.clientY-y}}return{horizontalResizeHandleStyle:d,verticalResizeHandleStyle:v,resizeOverlayStyle:c,showHorizontalResizeHandle:s,showVerticalResizeHandle:a,horizontalResizeBarPosition:e,verticalResizeBarPosition:n,verticalResizeHandleOffset:o,horizontalResizeHandleOffset:i,draggingHorizontalResizeHandle:p,draggingVerticalResizeHandle:m}}const ae=["moz","ms","webkit"];function se(){let t=0;return e=>{const n=new Date().getTime(),i=Math.max(0,16-(n-t)),o=setTimeout(()=>{e(n+i)},i);return t=n+i,o}}function re(){if(typeof window>"u")return()=>0;if(window.requestAnimationFrame)return window.requestAnimationFrame.bind(window);const t=ae.filter(e=>`${e}RequestAnimationFrame`in window)[0];return t?window[`${t}RequestAnimationFrame`]:se()}re();function j(t,e){return((e==null?void 0:e.split(" "))||[]).reduce((i,o)=>(o&&(i[o]=!0),i),t),t}function D(t,e){return((e==null?void 0:e.split(";"))||[]).reduce((i,o)=>{if(o){const s=o.split(":");i[s[0]]=s[1]}return i},t),t}const k=r.defineComponent({name:"FSplitter",props:M,emits:[],setup(t,e){const n=r.ref(),i=W(n),{horizontalResizeHandleStyle:o,verticalResizeHandleStyle:s,resizeOverlayStyle:a}=i;r.provide("splitter",{useResizeHandleComposition:i});const d=r.computed(()=>j({"f-splitter":!0},t==null?void 0:t.customClass)),v=r.computed(()=>{const c={"flex-direction":t.direction==="row"?"row":"column"};return D(c,t==null?void 0:t.customStyle)});return()=>r.createVNode("div",{class:d.value,ref:n,style:v.value},[e.slots.default&&e.slots.default(),r.createVNode("div",{class:"f-splitter-resize-overlay",style:a.value},null),r.createVNode("div",{class:"f-splitter-horizontal-resize-proxy",style:o.value},null),r.createVNode("div",{class:"f-splitter-vertical-resize-proxy",style:s.value},null)])}}),le=new Map([["appearance",q]]),ce={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/splitter-pane.schema.json",title:"splitter-pane",description:"A Farris Container Component",type:"object",properties:{id:{description:"The unique identifier for a splitter",type:"string"},type:{description:"The type string of splitter component",type:"string",default:"splitter-pane"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},size:{description:"",type:"object",properties:{width:{type:"number"},height:{type:"strnumbering"}},default:{}},collapsable:{description:"",type:"boolean",default:!1},contents:{description:"",type:"array",default:[]},"min-height":{description:"",type:"number"},"min-width":{description:"",type:"number"},position:{description:"",type:"string",default:"left",enum:["left","center","right","top","bottom"]},resizable:{description:"",type:"boolean",default:!1},visible:{description:"",type:"number",default:!0}}},pe={title:"splitter-pane",description:"A Farris Container Component",type:"object",categories:{basic:{description:"Basic Infomation",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"combo-list",textField:"value",valueField:"key",data:[{key:"splitter-pane",value:"分栏面板项"}]}}}},appearance:{description:"",title:"外观",properties:{class:{description:"组件的CSS样式",title:"class样式"},style:{description:"组件的内容样式",title:"style样式"},width:{description:"组件的宽度",title:"宽度(px)",type:"number"},height:{description:"组件的高度",title:"高度(px)",type:"number"},minWidth:{description:"面板最小宽度",title:"最小宽度(px)",type:"number"},minHeight:{description:"面板最小高度",title:"最小高度(px)",type:"number"}}},behavior:{description:"",title:"行为",properties:{position:{description:"",title:"位置",editor:{type:"combo-list",idField:"value",valueField:"value",data:[{value:"left",name:"左侧"},{value:"center",name:"居中"},{value:"right",name:"右侧"},{value:"top",name:"顶部"},{value:"bottom",name:"底部"}]}}}}}},N={customClass:{type:String,defaut:""},customStyle:{type:String,default:""},width:{type:Number},height:{type:Number},position:{type:String,default:"left"},visible:{type:Boolean,default:!0},resizable:{type:Boolean,default:!1},resizeHandle:{type:String,default:""},collapsable:{type:Boolean,default:!1},minWidth:{type:Number,default:0},minHeight:{type:Number,default:0}},_=E(N,ce,le,void 0,pe);function G(t,e){const n=r.ref(t.width),i=r.ref(t.height),{horizontalResizeBarPosition:o,horizontalResizeHandleOffset:s,showHorizontalResizeHandle:a,showVerticalResizeHandle:d,verticalResizeBarPosition:v,verticalResizeHandleOffset:c,draggingHorizontalResizeHandle:p,draggingVerticalResizeHandle:m}=e;let l="",h,y;function C(u){if((l==="left"||l==="right")&&y){const{left:f}=y.getBoundingClientRect(),{width:z}=h.getBoundingClientRect(),b=u.clientX-f,g=l==="left"?(z||0)+(b-o.value):(z||0)-(b-o.value);n.value=t.minWidth>0?Math.max(t.minWidth,g):g}if((l==="top"||l==="bottom")&&y){const{top:f}=y.getBoundingClientRect(),{height:z}=h.getBoundingClientRect(),b=u.clientY-f,g=l==="top"?(z||0)+(b-v.value):(z||0)-(b-v.value);i.value=t.minHeight>0?Math.max(t.minHeight,g):g}s.value=0,c.value=0,o.value=-1,v.value=-1,a.value=!1,d.value=!1,document.removeEventListener("mousemove",p),document.removeEventListener("mouseup",C),document.body.style.userSelect="",l="",h=null,y=null}function w(u,f,z){if(l=f,h=z,a.value=!0,y=u.composedPath().find(g=>g.className.split(" ")[0]==="f-splitter"),y){const{left:g}=y.getBoundingClientRect();s.value=u.clientX-g,o.value=u.clientX-g,document.addEventListener("mousemove",p),document.addEventListener("mouseup",C),document.body.style.userSelect="none"}}function P(u,f,z){if(l=f,h=z,d.value=!0,y=u.composedPath().find(g=>g.className.split(" ")[0]==="f-splitter"),y){const{top:g}=y.getBoundingClientRect();c.value=u.clientY-g,v.value=u.clientY-g,document.addEventListener("mousemove",m),document.addEventListener("mouseup",C),document.body.style.userSelect="none"}}return{actualWidth:n,actualHeight:i,onClickSplitterHorizontalResizeBar:w,onClickSplitterVerticalResizeBar:P}}const $=r.defineComponent({name:"FSplitterPane",props:N,emits:[],setup(t,e){const n=r.ref(),i=r.inject("splitter"),{useResizeHandleComposition:o}=i,s=G(t,o),{actualHeight:a,actualWidth:d,onClickSplitterHorizontalResizeBar:v,onClickSplitterVerticalResizeBar:c}=s,p=r.ref(t.position),m=r.computed(()=>{const u={"f-splitter-pane":!0,"f-splitter-pane-main":p.value==="center","has-resize-bar":t.resizable};return u["f-splitter-pane-"+p.value]=!0,j(u,t==null?void 0:t.customClass)}),l=r.computed(()=>t.resizeHandle?t.resizeHandle.split(",").filter(u=>["e","n","s","w"].find(f=>f===u)):[]),h=r.computed(()=>{const u={};return(d.value&&p.value==="left"||p.value==="right"||l.value.find(f=>f==="e")||l.value.find(f=>f==="w"))&&(u.width=`${d.value}px`),(a.value&&p.value==="bottom"||p.value==="top"||l.value.find(f=>f==="s")||l.value.find(f=>f==="n"))&&(u.height=`${a.value}px`),D(u,t==null?void 0:t.customStyle)}),y=r.computed(()=>({"f-splitter-resize-bar":!0,"f-splitter-resize-bar-e":p.value==="left","f-splitter-resize-bar-n":p.value==="bottom","f-splitter-resize-bar-s":p.value==="top","f-splitter-resize-bar-w":p.value==="right"}));function C(u){return{e:"left",w:"right",s:"top",n:"bottom"}[u]||u}function w(u,f){f=C(f),["left","right"].find(z=>z===f)&&v(u,f,n.value),["top","bottom"].find(z=>z===f)&&c(u,f,n.value)}function P(){return l.value.length>0?l.value.map(u=>r.createVNode("span",{class:"f-splitter-resize-bar f-splitter-resize-bar-"+u,onMousedown:f=>w(f,u)},null)):r.createVNode("span",{class:y.value,onMousedown:u=>w(u,p.value)},null)}return()=>r.createVNode("div",{ref:n,class:m.value,style:h.value},[e.slots.default&&e.slots.default(),t.resizable&&P()])}});function X(t,e,n){var z;const i=n&&n.getStyles&&n.getStyles()||"",o=n&&n.getDesignerClass&&n.getDesignerClass()||"",s=r.ref();function a(){return(e==null?void 0:e.schema.componentType)==="frame"?!1:n&&n.checkCanMoveComponent?n.checkCanMoveComponent():!0}function d(){return!1}function v(){return(e==null?void 0:e.schema.componentType)==="frame"?!1:n&&n.checkCanDeleteComponent?n.checkCanDeleteComponent():!0}function c(){return(e==null?void 0:e.schema.componentType)==="frame"?!0:n&&n.hideNestedPaddingInDesginerView?n.hideNestedPaddingInDesginerView():!1}function p(b){if(!b||!b.value)return null;if(b.value.schema&&b.value.schema.type==="component")return b.value;const g=r.ref(b==null?void 0:b.value.parent),S=p(g);return S||null}function m(b=e){const{componentInstance:g,designerItemElementRef:S}=b;return!g||!g.value?null:g.value.canMove?S:m(b.parent)}function l(b){return!!n&&n.canAccepts(b)}function h(){return(e==null?void 0:e.schema.label)||(e==null?void 0:e.schema.title)||(e==null?void 0:e.schema.name)}function y(){}function C(b,g){g&&n!=null&&n.onAcceptMovedChildElement&&n.onAcceptMovedChildElement(g)}function w(b,g){const{componentType:S}=b;let T=A(S,b,g);n&&n.onResolveNewComponentSchema&&(T=n.onResolveNewComponentSchema(b,T));const be=S.toLowerCase().replace(/-/g,"_");return T&&!T.id&&T.type===S&&(T.id=`${be}_${Math.random().toString().slice(2,6)}`),T}function P(b){}function u(...b){if(n&&n.getPropsConfig)return n.getPropsConfig(...b)}function f(){n&&n.onRemoveComponent&&n.onRemoveComponent(),e!=null&&e.schema.contents&&e.schema.contents.map(b=>{var T;let g=b.id;b.type==="component-ref"&&(g=b.component);const S=t.value.querySelector(`#${g}-design-item`);(T=S==null?void 0:S.componentInstance)!=null&&T.value.onRemoveComponent&&S.componentInstance.value.onRemoveComponent()})}return s.value={canMove:a(),canSelectParent:d(),canDelete:v(),canNested:!c(),contents:e==null?void 0:e.schema.contents,elementRef:t,parent:(z=e==null?void 0:e.parent)==null?void 0:z.componentInstance,schema:e==null?void 0:e.schema,styles:i,designerClass:o,canAccepts:l,getBelongedComponentInstance:p,getDraggableDesignItemElement:m,getDraggingDisplayText:h,getPropConfig:u,getDragScopeElement:y,onAcceptMovedChildElement:C,onChildElementMovedOut:P,addNewChildComponentSchema:w,triggerBelongedComponentToMoveWhenMoved:!!n&&n.triggerBelongedComponentToMoveWhenMoved||r.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:!!n&&n.triggerBelongedComponentToDeleteWhenDeleted||r.ref(!1),onRemoveComponent:f},s}class Y{getTemplateRule(e,n){const i=n==null?void 0:n.formSchemaUtils,o=i==null?void 0:i.getFormTemplateRule(),s={canAccept:!0,canDelete:!0,canMove:!0};if(!o)return s;const a=this.getComponentContext(e),{componentClassList:d}=a;return d.forEach(v=>{if(!v||!o[v])return;const{canMove:c,canDelete:p,canAccept:m}=o[v];s.canMove=s.canMove&&this.resolveRuleValue(c,a),s.canDelete=s.canDelete&&this.resolveRuleValue(p,a),s.canAccept=s.canAccept&&this.resolveRuleValue(m,a)}),s}resolveRuleValue(e,n){return typeof e=="boolean"?e:this.parseRuleValueSchema(e,n)}parseRuleValueSchema(e,n){const i=e.invalidContext||[];let o=!0;for(const s of i){if(s.firstLevelChild){if(s.firstLevelChild.class){const{firstLevelChildClassList:a}=n;if(a&&!a.includes(s.firstLevelChild.class)){o=!1;continue}}if(s.firstLevelChild.type){const{firstLevelChildSchema:a}=n;if(!a||a.type!==s.firstLevelChild.type){o=!1;continue}}}if(s.secondLevelChild){if(s.secondLevelChild.class){const{secondLevelChildClassList:a}=n;if(a&&!a.includes(s.secondLevelChild.class)){o=!1;continue}}if(s.secondLevelChild.type){const{secondLevelChildSchema:a}=n;if(!a||a.type!==s.secondLevelChild.type){o=!1;continue}}}if(s.parent){if(s.parent.class){const{parentClassList:a}=n;if(a&&!a.includes(s.parent.class)){o=!1;continue}}if(s.parent.type){const{parentSchema:a}=n;if(a&&a.type!==s.parent.type){o=!1;continue}}}o=!0;break}return!o}getComponentContext(e){var C,w,P,u;const n=e.schema,i=n.appearance&&n.appearance.class||"",o=i.split(" ")||[],s=n.contents||[],a=s.length?s[0]:null,d=a&&a.appearance?a.appearance.class:"",v=d?d.split(" "):[],c=(C=a==null?void 0:a.contents)!=null&&C.length?a==null?void 0:a.contents[0]:null,p=c&&c.appearance?c.appearance.class:"",m=p?p.split(" "):[],l=n.type==="component"?(P=(w=e.parent)==null?void 0:w.parent)==null?void 0:P.schema:(u=e.parent)==null?void 0:u.schema,h=l&&l.appearance&&l.appearance.class||"",y=h?h.split(" "):[];return{componentClass:i,componentClassList:o,childContents:s,firstLevelChildSchema:a,firstLevelChildClass:d,firstLevelChildClassList:v,secondLevelChildSchema:c,secondLevelChildClass:p,secondLevelChildClassList:m,parentSchema:l,parentClass:h,parentClassList:y}}}function ue(t,e){const n=new Y,{canMove:i,canDelete:o}=n.getTemplateRule(t,e);function s(){return!1}function a(){return o}function d(){return i}function v(){return!0}return{canAccepts:s,checkCanDeleteComponent:a,checkCanMoveComponent:d,hideNestedPaddingInDesginerView:v}}const fe=r.defineComponent({name:"FSplitterDesign",props:M,emits:[],setup(t,e){const n=r.ref(),i=r.inject("designer-host-service"),o=r.inject("design-item-context"),s=ue(o,i),a=X(n,o,s);a.value.canNested=!1;const d=W(n),{horizontalResizeHandleStyle:v,verticalResizeHandleStyle:c,resizeOverlayStyle:p}=d;r.provide("splitter",{useResizeHandleComposition:d});const m=r.computed(()=>j({"f-splitter":!0},t==null?void 0:t.customClass)),l=r.computed(()=>{const h={"flex-direction":t.direction==="row"?"row":"column"};return D(h,t==null?void 0:t.customStyle)});return r.onMounted(()=>{n.value.componentInstance=a}),e.expose(a.value),()=>r.createVNode("div",{class:m.value,ref:n,style:l.value},[e.slots.default&&e.slots.default(),r.createVNode("div",{class:"f-splitter-resize-overlay",style:p.value},null),r.createVNode("div",{class:"f-splitter-horizontal-resize-proxy",style:v.value},null),r.createVNode("div",{class:"f-splitter-vertical-resize-proxy",style:c.value},null)])}});function de(){function t(e,n){var a;if(!e)return!1;const i=((a=e.targetContainer)==null?void 0:a.componentInstance)&&e.targetContainer.componentInstance.value;if(!i)return!1;const o=i.schema.type,s=n==null?void 0:n.formSchemaUtils.getComponentById(i.belongedComponentId);return!((e.componentCategory==="input"||e.componentType==="form-group")&&![O["response-layout-item"].type,O["response-form"].type].includes(o)||(e.componentType===O.tabs.type||e.componentType===O.section.type)&&((s==null?void 0:s.componentType)!=="frame"||![O["content-container"].type,O["splitter-pane"].type,O["response-layout-item"].type].includes(o)))}return{basalDragulaRuleForContainer:t}}function me(t,e){const n=new Y,{canAccept:i}=n.getTemplateRule(t,e);function o(d){return de().basalDragulaRuleForContainer(d,e)?i:!1}function s(){return!1}function a(){return!1}return{canAccepts:o,checkCanMoveComponent:s,checkCanDeleteComponent:a}}const ye=r.defineComponent({name:"FSplitterPaneDesign",props:N,emits:[],setup(t,e){const n=r.ref(),i=r.inject("designer-host-service"),o=r.inject("design-item-context"),s=me(o,i),a=X(n,o,s);a.value.styles="padding:0;box-shadow:none;",a.value.canNested=!1,a.value.canMove=!1,a.value.canDelete=!1,r.onMounted(()=>{n.value.componentInstance=a}),e.expose(a.value);const d=r.inject("splitter"),{useResizeHandleComposition:v}=d,c=G(t,v),{actualHeight:p,actualWidth:m}=c,l=r.ref(t.position),h=r.computed(()=>{const u={"f-splitter-pane":!0,"f-splitter-pane-main":l.value==="center","has-resize-bar":t.resizable,"f-component-splitter-pane":!0,"drag-container":!0};return u["f-splitter-pane-"+l.value]=!0,j(u,t==null?void 0:t.customClass)}),y=r.computed(()=>t.resizeHandle?t.resizeHandle.split(",").filter(u=>["e","n","s","w"].find(f=>f===u)):[]),C=r.computed(()=>{const u={};return(m.value&&l.value==="left"||l.value==="right"||y.value.find(f=>f==="e")||y.value.find(f=>f==="w"))&&(u.width=`${m.value}px`),(p.value&&l.value==="bottom"||l.value==="top"||y.value.find(f=>f==="s")||y.value.find(f=>f==="n"))&&(u.height=`${p.value}px`),D(u,t==null?void 0:t.customStyle)}),w=r.computed(()=>({"f-splitter-resize-bar":!0,"f-splitter-resize-bar-e":l.value==="left","f-splitter-resize-bar-n":l.value==="bottom","f-splitter-resize-bar-s":l.value==="top","f-splitter-resize-bar-w":l.value==="right"}));function P(){return y.value.length>0?y.value.map(u=>r.createVNode("span",{class:"f-splitter-resize-bar f-splitter-resize-bar-"+u},null)):r.createVNode("span",{class:w.value},null)}return()=>r.createVNode("div",{ref:n,"data-dragref":`${o.schema.id}-container`,class:h.value,style:C.value},[e.slots.default&&e.slots.default(),t.resizable&&P()])}}),he={install(t){t.component(k.name,k),t.component($.name,$)},register(t,e,n,i){t.splitter=k,e.splitter=H,t["splitter-pane"]=$,e["splitter-pane"]=_},registerDesigner(t,e,n){t.splitter=fe,e.splitter=H,t["splitter-pane"]=ye,e["splitter-pane"]=_}};R.FSplitter=k,R.FSplitterPane=$,R.default=he,R.splitterProps=M,R.splitterPropsResolver=H,Object.defineProperties(R,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
|
1
|
+
(function(w,s){typeof exports=="object"&&typeof module<"u"?s(exports,require("vue"),require("lodash-es"),require("bignumber.js")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es","bignumber.js"],s):(w=typeof globalThis<"u"?globalThis:w||self,s(w.splitter={},w.Vue,w.LodashES))})(this,function(w,s,$){"use strict";const V={},F={};function L(t){const{properties:e,title:n,ignore:i}=t,r=i&&Array.isArray(i),a=Object.keys(e).reduce((o,d)=>((!r||!i.find(v=>v===d))&&(o[d]=e[d].type==="object"&&e[d].properties?L(e[d]):$.cloneDeep(e[d].default)),o),{});if(n&&(!r||!i.find(o=>o==="id"))){const o=n.toLowerCase().replace(/-/g,"_");a.id=`${o}_${Math.random().toString().slice(2,6)}`}return a}function U(t){const{properties:e,title:n,required:i}=t;if(i&&Array.isArray(i)){const r=i.reduce((a,o)=>(a[o]=e[o].type==="object"&&e[o].properties?L(e[o]):$.cloneDeep(e[o].default),a),{});if(n&&i.find(a=>a==="id")){const a=n.toLowerCase().replace(/-/g,"_");r.id=`${a}_${Math.random().toString().slice(2,6)}`}return r}return{type:n}}function A(t,e={},n){const i=V[t];if(i){let r=U(i);const a=F[t];return r=a?a({getSchemaByType:A},r,e,n):r,r}return null}function Q(t,e){const n=L(e);return Object.keys(n).reduce((i,r)=>(Object.prototype.hasOwnProperty.call(t,r)&&(i[r]&&$.isPlainObject(i[r])&&$.isPlainObject(t[r]||!t[r])?Object.assign(i[r],t[r]||{}):i[r]=t[r]),i),n),n}function J(t,e){return Object.keys(t).filter(i=>t[i]!=null).reduce((i,r)=>{if(e.has(r)){const a=e.get(r);if(typeof a=="string")i[a]=t[r];else{const o=a(r,t[r],t);Object.assign(i,o)}}else i[r]=t[r];return i},{})}function Z(t,e,n=new Map){const i=Q(t,e);return J(i,n)}function x(t={}){function e(c,p,m,l){if(typeof m=="number")return l[c].length===m;if(typeof m=="object"){const h=Object.keys(m)[0],y=m[h];if(h==="not")return Number(l[c].length)!==Number(y);if(h==="moreThan")return Number(l[c].length)>=Number(y);if(h==="lessThan")return Number(l[c].length)<=Number(y)}return!1}function n(c,p,m,l){return l[c]&&l[c].propertyValue&&String(l[c].propertyValue.value)===String(m)}const i=new Map([["length",e],["getProperty",n]]);Object.keys(t).reduce((c,p)=>(c.set(p,t[p]),c),i);function r(c,p){const m=c;return typeof p=="number"?[{target:m,operator:"length",param:null,value:Number(p)}]:typeof p=="boolean"?[{target:m,operator:"getProperty",param:c,value:!!p}]:typeof p=="object"?Object.keys(p).map(l=>{if(l==="length")return{target:m,operator:"length",param:null,value:p[l]};const h=l,y=p[l];return{target:m,operator:"getProperty",param:h,value:y}}):[]}function a(c){return Object.keys(c).reduce((m,l)=>{const h=r(l,c[l]);return m.push(...h),m},[])}function o(c,p){if(i.has(c.operator)){const m=i.get(c.operator);return m&&m(c.target,c.param,c.value,p)||!1}return!1}function d(c,p){return a(c).reduce((h,y)=>h&&o(y,p),!0)}function v(c,p){const m=Object.keys(c),l=m.includes("allOf"),h=m.includes("anyOf"),y=l||h,P=(y?c[y?l?"allOf":"anyOf":"allOf"]:[c]).map(f=>d(f,p));return l?!P.includes(!1):P.includes(!0)}return{parseValueSchema:v}}const O={button:{type:"button",name:"按钮",icon:"Button"},"response-toolbar":{type:"response-toolbar",name:"工具栏",icon:"ButtonGroup"},"response-toolbar-item":{type:"response-toolbar-item",name:"按钮",icon:"Button"},"content-container":{type:"content-container",name:"容器",icon:"ContentContainer"},"input-group":{type:"input-group",name:"文本",icon:"TextBox"},textarea:{type:"textarea",name:"多行文本",icon:"MultiTextBox"},lookup:{type:"lookup",name:"帮助",icon:"LookupEdit"},"number-spinner":{type:"number-spinner",name:"数值",icon:"NumericBox"},"date-picker":{type:"date-picker",name:"日期",icon:"DateBox"},switch:{type:"switch",name:"开关",icon:"SwitchField"},"radio-group":{type:"radio-group",name:"单选组",icon:"RadioGroup"},"check-box":{type:"check-box",name:"复选框",icon:"CheckBox"},"check-group":{type:"check-group",name:"复选框组",icon:"CheckGroup"},"combo-list":{type:"combo-list",name:"下拉列表",icon:"EnumField"},"response-form":{type:"response-form",name:"卡片面板",icon:"Form"},"response-layout":{type:"response-layout",name:"布局容器",icon:"ResponseLayout3"},"response-layout-item":{type:"response-layout-item",name:"布局",icon:"ResponseLayout1"},"tree-grid":{type:"tree-grid",name:"树表格",icon:"TreeGrid"},"tree-grid-column":{type:"tree-grid-column",name:"树表格列"},"data-grid":{type:"data-grid",name:"表格",icon:"DataGrid"},"data-grid-column":{type:"data-grid-column",name:"表格列"},module:{type:"Module",name:"模块",icon:"Module"},component:{type:"component",name:"组件",icon:"Component"},tabs:{type:"tabs",name:"标签页",icon:"Tab"},"tab-page":{type:"tab-page",name:"标签页项",dependentParentControl:"Tab"},"tab-toolbar-item":{type:"tab-toolbar-item",name:"标签页工具栏按钮",icon:"Button"},"time-picker":{type:"time-picker",name:"时间选择",icon:"TimePicker"},section:{type:"section",name:"分组面板",icon:"Section"},"section-toolbar":{type:"section-toolbar",name:"分组面板工具栏"},"section-toolbar-item":{type:"section-toolbar-item",name:"分组面板按钮"},splitter:{type:"splitter",name:"分栏面板",icon:"Splitter"},"splitter-pane":{type:"splitter-pane",name:"分栏面板项",dependentParentControl:"Splitter"},"component-ref":{type:"component-ref",name:"组件引用节点"},uploader:{type:"uploader",name:"附件上传",icon:"FileUpload"},"page-header":{type:"page-header",name:"页头",icon:"Header"},"page-footer":{type:"page-footer",name:"页脚",icon:"ModalFooter"},"tab-toolbar":{type:"tab-toolbar",name:"标签页工具栏",icon:"TabToolbar"},fieldset:{type:"fieldset",name:"分组",icon:"fieldset"},"query-solution":{type:"query-solution",name:"筛选方案",icon:"QueryScheme"}},K={},I={};x();function E(t,e,n=new Map,i=(o,d,v,c)=>d,r={},a=o=>o){return V[e.title]=e,F[e.title]=i,K[e.title]=r,I[e.title]=a,(o={})=>{const d=Z(o,e,n),v=Object.keys(t).reduce((c,p)=>(c[p]=t[p].default,c),{});return Object.assign(v,d)}}function q(t,e){return{customClass:e.class,customStyle:e.style}}const ee=new Map([["appearance",q]]);function te(t,e,n){const i=t.getSchemaByType("splitter-pane");return i.appearance={class:"f-col-w6 f-page-content-nav"},i.position="left",e.contents.unshift(i),e}function ne(t,e,n){const i=t.getSchemaByType("splitter-pane");return i.appearance={class:"f-page-content-main"},i.position="main",e.contents.push(i),e}function ie(t,e,n){const i=n.parentComponentInstance;return String(i.schema.appearance.class||"").split(" ").includes("f-page-main")&&(e.appearance={class:"f-page-content"}),te(t,e),ne(t,e),e}const oe={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/splitter.schema.json",title:"splitter",description:"A Farris Container Component",type:"object",properties:{id:{description:"The unique identifier for a splitter",type:"string"},type:{description:"The type string of splitter component",type:"string",default:"splitter"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},contents:{description:"",type:"array",default:[]},direction:{description:"",type:"string",default:"row",enum:["column","row"]}},required:["id","type","contents"]},re={title:"splitter",description:"A Farris Container Component",type:"object",categories:{basic:{description:"Basic Infomation",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"combo-list",textField:"value",valueField:"key",data:[{key:"splitter",value:"分栏面板"}]}}}},appearance:{description:"",title:"外观",properties:{class:{description:"组件的CSS样式",title:"class样式"},style:{description:"组件的内容样式",title:"style样式"}}}}},D={customStyle:{type:String,default:""},customClass:{type:String,default:""},direction:{Type:String,default:"row"}},H=E(D,oe,ee,ie,re);function W(t){const e=s.ref(-1),n=s.ref(-1),i=s.ref(0),r=s.ref(0),a=s.ref(!1),o=s.ref(!1),d=s.computed(()=>({display:a.value?"block":"none",left:`${i.value}px`})),v=s.computed(()=>({display:o.value?"block":"none",top:`${r.value}px`})),c=s.computed(()=>({display:o.value||a.value?"block":"none"}));function p(l){const h=t.value;if(h){const{left:y}=h.getBoundingClientRect();i.value=l.clientX-y}}function m(l){const h=t.value;if(h){const{top:y}=h.getBoundingClientRect();r.value=l.clientY-y}}return{horizontalResizeHandleStyle:d,verticalResizeHandleStyle:v,resizeOverlayStyle:c,showHorizontalResizeHandle:a,showVerticalResizeHandle:o,horizontalResizeBarPosition:e,verticalResizeBarPosition:n,verticalResizeHandleOffset:r,horizontalResizeHandleOffset:i,draggingHorizontalResizeHandle:p,draggingVerticalResizeHandle:m}}const ae=["moz","ms","webkit"];function se(){let t=0;return e=>{const n=new Date().getTime(),i=Math.max(0,16-(n-t)),r=setTimeout(()=>{e(n+i)},i);return t=n+i,r}}function le(){if(typeof window>"u")return()=>0;if(window.requestAnimationFrame)return window.requestAnimationFrame.bind(window);const t=ae.filter(e=>`${e}RequestAnimationFrame`in window)[0];return t?window[`${t}RequestAnimationFrame`]:se()}le();function M(t,e){return((e==null?void 0:e.split(" "))||[]).reduce((i,r)=>(r&&(i[r]=!0),i),t),t}function j(t,e){return((e==null?void 0:e.split(";"))||[]).reduce((i,r)=>{if(r){const a=r.split(":");i[a[0]]=a[1]}return i},t),t}const k=s.defineComponent({name:"FSplitter",props:D,emits:[],setup(t,e){const n=s.ref(),i=W(n),{horizontalResizeHandleStyle:r,verticalResizeHandleStyle:a,resizeOverlayStyle:o}=i;s.provide("splitter",{useResizeHandleComposition:i});const d=s.computed(()=>M({"f-splitter":!0},t==null?void 0:t.customClass)),v=s.computed(()=>{const c={"flex-direction":t.direction==="row"?"row":"column"};return j(c,t==null?void 0:t.customStyle)});return()=>s.createVNode("div",{class:d.value,ref:n,style:v.value},[e.slots.default&&e.slots.default(),s.createVNode("div",{class:"f-splitter-resize-overlay",style:o.value},null),s.createVNode("div",{class:"f-splitter-horizontal-resize-proxy",style:r.value},null),s.createVNode("div",{class:"f-splitter-vertical-resize-proxy",style:a.value},null)])}}),ce=new Map([["appearance",q]]),pe={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/splitter-pane.schema.json",title:"splitter-pane",description:"A Farris Container Component",type:"object",properties:{id:{description:"The unique identifier for a splitter",type:"string"},type:{description:"The type string of splitter component",type:"string",default:"splitter-pane"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},size:{description:"",type:"object",properties:{width:{type:"number"},height:{type:"strnumbering"}},default:{}},collapsable:{description:"",type:"boolean",default:!1},contents:{description:"",type:"array",default:[]},"min-height":{description:"",type:"number"},"min-width":{description:"",type:"number"},position:{description:"",type:"string",default:"left",enum:["left","center","right","top","bottom"]},resizable:{description:"",type:"boolean",default:!1},visible:{description:"",type:"number",default:!0}},required:["id","type","contents"]},ue={title:"splitter-pane",description:"A Farris Container Component",type:"object",categories:{basic:{description:"Basic Infomation",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"combo-list",textField:"value",valueField:"key",data:[{key:"splitter-pane",value:"分栏面板项"}]}}}},appearance:{description:"",title:"外观",properties:{class:{description:"组件的CSS样式",title:"class样式"},style:{description:"组件的内容样式",title:"style样式"},width:{description:"组件的宽度",title:"宽度(px)",type:"number"},height:{description:"组件的高度",title:"高度(px)",type:"number"},minWidth:{description:"面板最小宽度",title:"最小宽度(px)",type:"number"},minHeight:{description:"面板最小高度",title:"最小高度(px)",type:"number"}}},behavior:{description:"",title:"行为",properties:{position:{description:"",title:"位置",editor:{type:"combo-list",idField:"value",valueField:"value",data:[{value:"left",name:"左侧"},{value:"center",name:"居中"},{value:"right",name:"右侧"},{value:"top",name:"顶部"},{value:"bottom",name:"底部"}]}}}}}},N={customClass:{type:String,defaut:""},customStyle:{type:String,default:""},width:{type:Number},height:{type:Number},position:{type:String,default:"left"},visible:{type:Boolean,default:!0},resizable:{type:Boolean,default:!1},resizeHandle:{type:String,default:""},collapsable:{type:Boolean,default:!1},minWidth:{type:Number,default:0},minHeight:{type:Number,default:0}},_=E(N,pe,ce,void 0,ue);function G(t,e){const n=s.ref(t.width),i=s.ref(t.height),{horizontalResizeBarPosition:r,horizontalResizeHandleOffset:a,showHorizontalResizeHandle:o,showVerticalResizeHandle:d,verticalResizeBarPosition:v,verticalResizeHandleOffset:c,draggingHorizontalResizeHandle:p,draggingVerticalResizeHandle:m}=e;let l="",h,y;function z(u){if((l==="left"||l==="right")&&y){const{left:f}=y.getBoundingClientRect(),{width:C}=h.getBoundingClientRect(),b=u.clientX-f,g=l==="left"?(C||0)+(b-r.value):(C||0)-(b-r.value);n.value=t.minWidth>0?Math.max(t.minWidth,g):g}if((l==="top"||l==="bottom")&&y){const{top:f}=y.getBoundingClientRect(),{height:C}=h.getBoundingClientRect(),b=u.clientY-f,g=l==="top"?(C||0)+(b-v.value):(C||0)-(b-v.value);i.value=t.minHeight>0?Math.max(t.minHeight,g):g}a.value=0,c.value=0,r.value=-1,v.value=-1,o.value=!1,d.value=!1,document.removeEventListener("mousemove",p),document.removeEventListener("mouseup",z),document.body.style.userSelect="",l="",h=null,y=null}function R(u,f,C){if(l=f,h=C,o.value=!0,y=u.composedPath().find(g=>g.className.split(" ")[0]==="f-splitter"),y){const{left:g}=y.getBoundingClientRect();a.value=u.clientX-g,r.value=u.clientX-g,document.addEventListener("mousemove",p),document.addEventListener("mouseup",z),document.body.style.userSelect="none"}}function P(u,f,C){if(l=f,h=C,d.value=!0,y=u.composedPath().find(g=>g.className.split(" ")[0]==="f-splitter"),y){const{top:g}=y.getBoundingClientRect();c.value=u.clientY-g,v.value=u.clientY-g,document.addEventListener("mousemove",m),document.addEventListener("mouseup",z),document.body.style.userSelect="none"}}return{actualWidth:n,actualHeight:i,onClickSplitterHorizontalResizeBar:R,onClickSplitterVerticalResizeBar:P}}const B=s.defineComponent({name:"FSplitterPane",props:N,emits:[],setup(t,e){const n=s.ref(),i=s.inject("splitter"),{useResizeHandleComposition:r}=i,a=G(t,r),{actualHeight:o,actualWidth:d,onClickSplitterHorizontalResizeBar:v,onClickSplitterVerticalResizeBar:c}=a,p=s.ref(t.position),m=s.computed(()=>{const u={"f-splitter-pane":!0,"f-splitter-pane-main":p.value==="center","has-resize-bar":t.resizable};return u["f-splitter-pane-"+p.value]=!0,M(u,t==null?void 0:t.customClass)}),l=s.computed(()=>t.resizeHandle?t.resizeHandle.split(",").filter(u=>["e","n","s","w"].find(f=>f===u)):[]),h=s.computed(()=>{const u={};return(d.value&&p.value==="left"||p.value==="right"||l.value.find(f=>f==="e")||l.value.find(f=>f==="w"))&&(u.width=`${d.value}px`),(o.value&&p.value==="bottom"||p.value==="top"||l.value.find(f=>f==="s")||l.value.find(f=>f==="n"))&&(u.height=`${o.value}px`),j(u,t==null?void 0:t.customStyle)}),y=s.computed(()=>({"f-splitter-resize-bar":!0,"f-splitter-resize-bar-e":p.value==="left","f-splitter-resize-bar-n":p.value==="bottom","f-splitter-resize-bar-s":p.value==="top","f-splitter-resize-bar-w":p.value==="right"}));function z(u){return{e:"left",w:"right",s:"top",n:"bottom"}[u]||u}function R(u,f){f=z(f),["left","right"].find(C=>C===f)&&v(u,f,n.value),["top","bottom"].find(C=>C===f)&&c(u,f,n.value)}function P(){return l.value.length>0?l.value.map(u=>s.createVNode("span",{class:"f-splitter-resize-bar f-splitter-resize-bar-"+u,onMousedown:f=>R(f,u)},null)):s.createVNode("span",{class:y.value,onMousedown:u=>R(u,p.value)},null)}return()=>s.createVNode("div",{ref:n,class:m.value,style:h.value},[e.slots.default&&e.slots.default(),t.resizable&&P()])}});function X(t,e,n){var C;const i=n&&n.getStyles&&n.getStyles()||"",r=n&&n.getDesignerClass&&n.getDesignerClass()||"",a=s.ref();function o(){return(e==null?void 0:e.schema.componentType)==="frame"?!1:n&&n.checkCanMoveComponent?n.checkCanMoveComponent():!0}function d(){return!1}function v(){return(e==null?void 0:e.schema.componentType)==="frame"?!1:n&&n.checkCanDeleteComponent?n.checkCanDeleteComponent():!0}function c(){return(e==null?void 0:e.schema.componentType)==="frame"?!0:n&&n.hideNestedPaddingInDesginerView?n.hideNestedPaddingInDesginerView():!1}function p(b){if(!b||!b.value)return null;if(b.value.schema&&b.value.schema.type==="component")return b.value;const g=s.ref(b==null?void 0:b.value.parent),S=p(g);return S||null}function m(b=e){const{componentInstance:g,designerItemElementRef:S}=b;return!g||!g.value?null:g.value.canMove?S:m(b.parent)}function l(b){return!!n&&n.canAccepts(b)}function h(){return(e==null?void 0:e.schema.label)||(e==null?void 0:e.schema.title)||(e==null?void 0:e.schema.name)}function y(){}function z(b,g){g&&n!=null&&n.onAcceptMovedChildElement&&n.onAcceptMovedChildElement(g)}function R(b,g){const{componentType:S}=b;let T=A(S,b,g);n&&n.onResolveNewComponentSchema&&(T=n.onResolveNewComponentSchema(b,T));const ve=S.toLowerCase().replace(/-/g,"_");return T&&!T.id&&T.type===S&&(T.id=`${ve}_${Math.random().toString().slice(2,6)}`),T}function P(b){}function u(...b){if(n&&n.getPropsConfig)return n.getPropsConfig(...b)}function f(){n&&n.onRemoveComponent&&n.onRemoveComponent(),e!=null&&e.schema.contents&&e.schema.contents.map(b=>{var T;let g=b.id;b.type==="component-ref"&&(g=b.component);const S=t.value.querySelector(`#${g}-design-item`);(T=S==null?void 0:S.componentInstance)!=null&&T.value.onRemoveComponent&&S.componentInstance.value.onRemoveComponent()})}return a.value={canMove:o(),canSelectParent:d(),canDelete:v(),canNested:!c(),contents:e==null?void 0:e.schema.contents,elementRef:t,parent:(C=e==null?void 0:e.parent)==null?void 0:C.componentInstance,schema:e==null?void 0:e.schema,styles:i,designerClass:r,canAccepts:l,getBelongedComponentInstance:p,getDraggableDesignItemElement:m,getDraggingDisplayText:h,getPropConfig:u,getDragScopeElement:y,onAcceptMovedChildElement:z,onChildElementMovedOut:P,addNewChildComponentSchema:R,triggerBelongedComponentToMoveWhenMoved:!!n&&n.triggerBelongedComponentToMoveWhenMoved||s.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:!!n&&n.triggerBelongedComponentToDeleteWhenDeleted||s.ref(!1),onRemoveComponent:f},a}class Y{getTemplateRule(e,n){const i=n==null?void 0:n.formSchemaUtils,r=i==null?void 0:i.getFormTemplateRule(),a={canAccept:!0,canDelete:!0,canMove:!0};if(!r)return a;const o=this.getComponentContext(e),{componentClassList:d}=o;return d.forEach(v=>{if(!v||!r[v])return;const{canMove:c,canDelete:p,canAccept:m}=r[v];a.canMove=a.canMove&&this.resolveRuleValue(c,o),a.canDelete=a.canDelete&&this.resolveRuleValue(p,o),a.canAccept=a.canAccept&&this.resolveRuleValue(m,o)}),a}resolveRuleValue(e,n){return typeof e=="boolean"?e:this.parseRuleValueSchema(e,n)}parseRuleValueSchema(e,n){const i=e.invalidContext||[];let r=!0;for(const a of i){if(a.firstLevelChild){if(a.firstLevelChild.class){const{firstLevelChildClassList:o}=n;if(o&&!o.includes(a.firstLevelChild.class)){r=!1;continue}}if(a.firstLevelChild.type){const{firstLevelChildSchema:o}=n;if(!o||o.type!==a.firstLevelChild.type){r=!1;continue}}}if(a.secondLevelChild){if(a.secondLevelChild.class){const{secondLevelChildClassList:o}=n;if(o&&!o.includes(a.secondLevelChild.class)){r=!1;continue}}if(a.secondLevelChild.type){const{secondLevelChildSchema:o}=n;if(!o||o.type!==a.secondLevelChild.type){r=!1;continue}}}if(a.parent){if(a.parent.class){const{parentClassList:o}=n;if(o&&!o.includes(a.parent.class)){r=!1;continue}}if(a.parent.type){const{parentSchema:o}=n;if(o&&o.type!==a.parent.type){r=!1;continue}}}r=!0;break}return!r}getComponentContext(e){var z,R,P,u;const n=e.schema,i=n.appearance&&n.appearance.class||"",r=i.split(" ")||[],a=n.contents||[],o=a.length?a[0]:null,d=o&&o.appearance?o.appearance.class:"",v=d?d.split(" "):[],c=(z=o==null?void 0:o.contents)!=null&&z.length?o==null?void 0:o.contents[0]:null,p=c&&c.appearance?c.appearance.class:"",m=p?p.split(" "):[],l=n.type==="component"?(P=(R=e.parent)==null?void 0:R.parent)==null?void 0:P.schema:(u=e.parent)==null?void 0:u.schema,h=l&&l.appearance&&l.appearance.class||"",y=h?h.split(" "):[];return{componentClass:i,componentClassList:r,childContents:a,firstLevelChildSchema:o,firstLevelChildClass:d,firstLevelChildClassList:v,secondLevelChildSchema:c,secondLevelChildClass:p,secondLevelChildClassList:m,parentSchema:l,parentClass:h,parentClassList:y}}}function fe(t,e){const n=new Y,{canMove:i,canDelete:r}=n.getTemplateRule(t,e);function a(){return!1}function o(){return r}function d(){return i}function v(){return!0}return{canAccepts:a,checkCanDeleteComponent:o,checkCanMoveComponent:d,hideNestedPaddingInDesginerView:v}}const de=s.defineComponent({name:"FSplitterDesign",props:D,emits:[],setup(t,e){const n=s.ref(),i=s.inject("designer-host-service"),r=s.inject("design-item-context"),a=fe(r,i),o=X(n,r,a);o.value.canNested=!1;const d=W(n),{horizontalResizeHandleStyle:v,verticalResizeHandleStyle:c,resizeOverlayStyle:p}=d;s.provide("splitter",{useResizeHandleComposition:d});const m=s.computed(()=>M({"f-splitter":!0},t==null?void 0:t.customClass)),l=s.computed(()=>{const h={"flex-direction":t.direction==="row"?"row":"column"};return j(h,t==null?void 0:t.customStyle)});return s.onMounted(()=>{n.value.componentInstance=o}),e.expose(o.value),()=>s.createVNode("div",{class:m.value,ref:n,style:l.value},[e.slots.default&&e.slots.default(),s.createVNode("div",{class:"f-splitter-resize-overlay",style:p.value},null),s.createVNode("div",{class:"f-splitter-horizontal-resize-proxy",style:v.value},null),s.createVNode("div",{class:"f-splitter-vertical-resize-proxy",style:c.value},null)])}});function me(){function t(e,n){var o;if(!e)return!1;const i=((o=e.targetContainer)==null?void 0:o.componentInstance)&&e.targetContainer.componentInstance.value;if(!i)return!1;const r=i.schema.type,a=n==null?void 0:n.formSchemaUtils.getComponentById(i.belongedComponentId);return!((e.componentCategory==="input"||e.componentType==="form-group")&&![O["response-layout-item"].type,O["response-form"].type].includes(r)||(e.componentType===O.tabs.type||e.componentType===O.section.type)&&((a==null?void 0:a.componentType)!=="frame"||![O["content-container"].type,O["splitter-pane"].type,O["response-layout-item"].type].includes(r)))}return{basalDragulaRuleForContainer:t}}function ye(t,e){const n=new Y,{canAccept:i}=n.getTemplateRule(t,e);function r(d){return me().basalDragulaRuleForContainer(d,e)?i:!1}function a(){return!1}function o(){return!1}return{canAccepts:r,checkCanMoveComponent:a,checkCanDeleteComponent:o}}const he=s.defineComponent({name:"FSplitterPaneDesign",props:N,emits:[],setup(t,e){const n=s.ref(),i=s.inject("designer-host-service"),r=s.inject("design-item-context"),a=ye(r,i),o=X(n,r,a);o.value.styles="padding:0;box-shadow:none;",o.value.canNested=!1,o.value.canMove=!1,o.value.canDelete=!1,s.onMounted(()=>{n.value.componentInstance=o}),e.expose(o.value);const d=s.inject("splitter"),{useResizeHandleComposition:v}=d,c=G(t,v),{actualHeight:p,actualWidth:m}=c,l=s.ref(t.position),h=s.computed(()=>{const u={"f-splitter-pane":!0,"f-splitter-pane-main":l.value==="center","has-resize-bar":t.resizable,"f-component-splitter-pane":!0,"drag-container":!0};return u["f-splitter-pane-"+l.value]=!0,M(u,t==null?void 0:t.customClass)}),y=s.computed(()=>t.resizeHandle?t.resizeHandle.split(",").filter(u=>["e","n","s","w"].find(f=>f===u)):[]),z=s.computed(()=>{const u={};return(m.value&&l.value==="left"||l.value==="right"||y.value.find(f=>f==="e")||y.value.find(f=>f==="w"))&&(u.width=`${m.value}px`),(p.value&&l.value==="bottom"||l.value==="top"||y.value.find(f=>f==="s")||y.value.find(f=>f==="n"))&&(u.height=`${p.value}px`),j(u,t==null?void 0:t.customStyle)}),R=s.computed(()=>({"f-splitter-resize-bar":!0,"f-splitter-resize-bar-e":l.value==="left","f-splitter-resize-bar-n":l.value==="bottom","f-splitter-resize-bar-s":l.value==="top","f-splitter-resize-bar-w":l.value==="right"}));function P(){return y.value.length>0?y.value.map(u=>s.createVNode("span",{class:"f-splitter-resize-bar f-splitter-resize-bar-"+u},null)):s.createVNode("span",{class:R.value},null)}return()=>s.createVNode("div",{ref:n,"data-dragref":`${r.schema.id}-container`,class:h.value,style:z.value},[e.slots.default&&e.slots.default(),t.resizable&&P()])}}),be={install(t){t.component(k.name,k),t.component(B.name,B)},register(t,e,n,i){t.splitter=k,e.splitter=H,t["splitter-pane"]=B,e["splitter-pane"]=_},registerDesigner(t,e,n){t.splitter=de,e.splitter=H,t["splitter-pane"]=he,e["splitter-pane"]=_}};w.FSplitter=k,w.FSplitterPane=B,w.default=be,w.splitterProps=D,w.splitterPropsResolver=H,Object.defineProperties(w,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|