@farris/ui-vue 1.2.7 → 1.2.9
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 +136 -136
- package/components/accordion/index.umd.cjs +1 -1
- package/components/avatar/index.esm.js +418 -456
- package/components/avatar/index.umd.cjs +1 -1
- package/components/border-editor/index.esm.js +4 -4
- package/components/border-editor/index.umd.cjs +1 -1
- package/components/button/index.esm.js +1 -1
- package/components/button/index.umd.cjs +1 -1
- package/components/button-edit/index.esm.js +363 -436
- package/components/button-edit/index.umd.cjs +1 -1
- package/components/button-group/index.esm.js +5 -5
- package/components/button-group/index.umd.cjs +1 -1
- package/components/calendar/index.esm.js +417 -417
- package/components/calendar/index.umd.cjs +1 -1
- package/components/capsule/index.esm.js +176 -176
- package/components/capsule/index.umd.cjs +1 -1
- package/components/checkbox/index.esm.js +557 -594
- package/components/checkbox/index.umd.cjs +1 -1
- package/components/color-picker/index.esm.js +119 -119
- package/components/color-picker/index.umd.cjs +2 -2
- package/components/combo-list/index.esm.js +502 -535
- package/components/combo-list/index.umd.cjs +1 -1
- package/components/combo-tree/index.esm.js +69 -69
- package/components/combo-tree/index.umd.cjs +1 -1
- package/components/component/index.esm.js +387 -275
- package/components/component/index.umd.cjs +1 -1
- package/components/condition/index.esm.js +1219 -983
- package/components/condition/index.umd.cjs +1 -1
- package/components/content-container/index.esm.js +292 -219
- package/components/content-container/index.umd.cjs +1 -1
- package/components/data-grid/index.css +1 -1
- package/components/data-grid/index.esm.js +5718 -5546
- package/components/data-grid/index.umd.cjs +1 -1
- package/components/data-view/index.esm.js +3291 -2930
- package/components/data-view/index.umd.cjs +1 -1
- package/components/date-picker/index.esm.js +2650 -2682
- package/components/date-picker/index.umd.cjs +1 -1
- package/components/dependent-base/style.js +1 -0
- package/components/dependent-fluid/style.js +1 -0
- package/components/dependent-icon/style.js +1 -0
- package/components/dependent-input/style.js +1 -0
- package/components/dependent-table/style.js +1 -0
- package/components/designer-canvas/index.css +1 -1
- package/components/designer-canvas/index.esm.js +945 -932
- package/components/designer-canvas/index.umd.cjs +1 -1
- package/components/designer-outline/index.css +1 -1
- package/components/designer-outline/index.esm.js +175 -133
- package/components/designer-outline/index.umd.cjs +1 -1
- package/components/designer-toolbox/index.esm.js +36 -12
- package/components/designer-toolbox/index.umd.cjs +1 -1
- package/components/discussion-editor/index.esm.js +1 -1
- package/components/discussion-editor/index.umd.cjs +1 -1
- package/components/dropdown/index.esm.js +246 -246
- package/components/dropdown/index.umd.cjs +2 -2
- package/components/dynamic-form/index.esm.js +1319 -1172
- package/components/dynamic-form/index.umd.cjs +1 -1
- package/components/dynamic-resolver/index.esm.js +119 -82
- package/components/dynamic-resolver/index.umd.cjs +1 -1
- package/components/dynamic-view/index.esm.js +258 -249
- package/components/dynamic-view/index.umd.cjs +1 -1
- package/components/enum-editor/index.esm.js +3 -3
- package/components/enum-editor/index.umd.cjs +1 -1
- package/components/events-editor/index.esm.js +569 -514
- package/components/events-editor/index.umd.cjs +1 -1
- package/components/expression-editor/index.esm.js +104 -104
- package/components/expression-editor/index.umd.cjs +1 -1
- package/components/external-container/index.css +1 -1
- package/components/external-container/index.esm.js +3122 -2686
- package/components/external-container/index.umd.cjs +1 -1
- package/components/field-selector/index.css +1 -1
- package/components/field-selector/index.esm.js +6780 -6608
- package/components/field-selector/index.umd.cjs +1 -1
- package/components/filter-bar/index.css +1 -1
- package/components/filter-bar/index.esm.js +1466 -1523
- package/components/filter-bar/index.umd.cjs +1 -1
- package/components/flow-canvas/index.css +1 -1
- package/components/flow-canvas/index.esm.js +1048 -1035
- package/components/flow-canvas/index.umd.cjs +1 -1
- package/components/image-cropper/index.esm.js +422 -422
- package/components/image-cropper/index.umd.cjs +1 -1
- package/components/input-group/index.esm.js +674 -716
- package/components/input-group/index.umd.cjs +1 -1
- package/components/layout/index.esm.js +291 -291
- package/components/layout/index.umd.cjs +1 -1
- package/components/list-nav/index.esm.js +303 -230
- package/components/list-nav/index.umd.cjs +1 -1
- package/components/list-view/index.css +1 -1
- package/components/list-view/index.esm.js +2486 -2130
- package/components/list-view/index.umd.cjs +1 -1
- package/components/lookup/index.css +1 -1
- package/components/lookup/index.esm.js +7474 -7272
- package/components/lookup/index.umd.cjs +1 -1
- package/components/mapping-editor/index.css +1 -1
- package/components/mapping-editor/index.esm.js +6139 -5949
- package/components/mapping-editor/index.umd.cjs +1 -1
- package/components/message-box/index.esm.js +1 -1
- package/components/message-box/index.umd.cjs +1 -1
- package/components/modal/index.esm.js +1 -1
- package/components/modal/index.umd.cjs +1 -1
- package/components/nav/index.esm.js +432 -371
- package/components/nav/index.umd.cjs +3 -3
- package/components/number-range/index.esm.js +1124 -0
- package/components/number-range/index.umd.cjs +1 -0
- package/components/number-range/package.json +8 -0
- package/components/number-range/style.js +6 -0
- package/components/number-spinner/index.esm.js +1155 -0
- package/components/number-spinner/index.umd.cjs +1 -0
- package/components/number-spinner/package.json +8 -0
- package/components/number-spinner/style.js +4 -0
- package/components/order/index.css +1 -1
- package/components/order/index.esm.js +1215 -1178
- package/components/order/index.umd.cjs +1 -1
- package/components/page-footer/index.esm.js +147 -147
- package/components/page-footer/index.umd.cjs +1 -1
- package/components/page-header/index.esm.js +1240 -1346
- package/components/page-header/index.umd.cjs +1 -1
- package/components/pagination/index.esm.js +489 -428
- package/components/pagination/index.umd.cjs +1 -1
- package/components/progress/index.esm.js +220 -220
- package/components/progress/index.umd.cjs +3 -3
- package/components/property-editor/index.esm.js +1512 -1540
- package/components/property-editor/index.umd.cjs +3 -3
- package/components/property-panel/index.css +1 -1
- package/components/property-panel/index.esm.js +749 -815
- package/components/property-panel/index.umd.cjs +1 -1
- package/components/query-solution/index.css +1 -0
- package/components/query-solution/index.esm.js +7074 -0
- package/components/query-solution/index.umd.cjs +1 -0
- package/components/query-solution/package.json +8 -0
- package/components/query-solution/style.js +2 -0
- package/components/radio-button/index.esm.js +86 -86
- package/components/radio-button/index.umd.cjs +1 -1
- package/components/radio-group/index.esm.js +442 -479
- package/components/radio-group/index.umd.cjs +1 -1
- package/components/rate/index.esm.js +213 -208
- package/components/rate/index.umd.cjs +1 -1
- package/components/response-layout/index.esm.js +116 -116
- package/components/response-layout/index.umd.cjs +1 -1
- package/components/response-layout-editor/index.esm.js +943 -918
- package/components/response-layout-editor/index.umd.cjs +1 -1
- package/components/response-toolbar/index.esm.js +1174 -1295
- package/components/response-toolbar/index.umd.cjs +1 -1
- package/components/schema-selector/index.css +1 -1
- package/components/schema-selector/index.esm.js +5383 -5171
- package/components/schema-selector/index.umd.cjs +2 -2
- package/components/search-box/index.esm.js +201 -201
- package/components/search-box/index.umd.cjs +1 -1
- package/components/section/index.esm.js +684 -542
- package/components/section/index.umd.cjs +1 -1
- package/components/smoke-detector/index.esm.js +121 -121
- package/components/smoke-detector/index.umd.cjs +1 -1
- package/components/spacing-editor/index.esm.js +2 -2
- package/components/spacing-editor/index.umd.cjs +1 -1
- package/components/splitter/index.esm.js +1158 -382
- package/components/splitter/index.umd.cjs +1 -1
- package/components/step/index.esm.js +232 -232
- package/components/step/index.umd.cjs +1 -1
- package/components/switch/index.esm.js +451 -487
- package/components/switch/index.umd.cjs +1 -1
- package/components/tabs/index.esm.js +2078 -2168
- package/components/tabs/index.umd.cjs +1 -1
- package/components/tags/index.esm.js +318 -320
- package/components/tags/index.umd.cjs +1 -1
- package/components/text/index.esm.js +192 -192
- package/components/text/index.umd.cjs +1 -1
- package/components/textarea/index.esm.js +471 -497
- package/components/textarea/index.umd.cjs +1 -1
- package/components/time-picker/index.esm.js +1421 -1441
- package/components/time-picker/index.umd.cjs +1 -1
- package/components/transfer/index.css +1 -1
- package/components/transfer/index.esm.js +430 -421
- package/components/transfer/index.umd.cjs +1 -1
- package/components/tree-grid/index.css +1 -1
- package/components/tree-grid/index.esm.js +6806 -6624
- package/components/tree-grid/index.umd.cjs +1 -1
- package/components/tree-view/index.esm.js +2793 -2433
- package/components/tree-view/index.umd.cjs +1 -1
- package/components/uploader/index.esm.js +165 -165
- package/components/uploader/index.umd.cjs +2 -2
- package/components/verify-detail/index.esm.js +255 -255
- package/components/verify-detail/index.umd.cjs +1 -1
- package/components/video/index.esm.js +413 -334
- package/components/video/index.umd.cjs +1 -1
- package/components/weather/index.esm.js +902 -902
- package/components/weather/index.umd.cjs +4 -4
- package/farris.all.esm.js +54155 -52847
- package/farris.all.umd.cjs +9 -9
- package/index.css +1 -1
- package/package.json +1 -1
- package/types/button-edit/src/designer/button-group.design.component.d.ts +7 -0
- package/types/checkbox/index.d.ts +1 -0
- package/types/combo-list/src/components/list-container.component.d.ts +3 -0
- package/types/combo-list/src/components/list-container.props.d.ts +5 -1
- package/types/common/entity/entity-schema.d.ts +258 -0
- package/types/component/src/component-ref.props.d.ts +4 -0
- package/types/component/src/composition/inner-component-build-info.d.ts +27 -0
- package/types/component/src/designer/use-designer-rules.d.ts +2 -2
- package/types/data-grid/index.d.ts +5 -2
- package/types/data-grid/src/composition/data-grid-component-creator.service.d.ts +33 -0
- package/types/data-grid/src/data-grid.component.d.ts +2 -1
- package/types/data-grid/src/data-grid.props.d.ts +2 -2
- package/types/data-grid/src/designer/column-header.design.component.d.ts +1 -1
- package/types/data-grid/src/designer/data-grid-column.props.d.ts +1 -0
- package/types/data-grid/src/designer/use-group-column.d.ts +20 -0
- package/types/data-grid/src/property-config/data-grid.property-config.d.ts +4 -0
- package/types/data-grid/src/schema/schema-resolver.d.ts +2 -1
- package/types/data-view/components/column-format/boolean.component.d.ts +4 -0
- package/types/data-view/components/column-format/column-format.component.d.ts +4 -0
- package/types/data-view/components/column-format/date.component.d.ts +4 -0
- package/types/data-view/components/column-format/enum.component.d.ts +4 -0
- package/types/data-view/components/column-format/number.component.d.ts +4 -0
- package/types/data-view/composition/pagination/use-pagination.d.ts +1 -0
- package/types/data-view/composition/types.d.ts +19 -7
- package/types/data-view/composition/use-edit.d.ts +2 -1
- package/types/designer-canvas/src/composition/dg-control.d.ts +16 -350
- package/types/designer-canvas/src/composition/function/use-dragula.d.ts +2 -2
- package/types/designer-canvas/src/types.d.ts +3 -3
- package/types/dynamic-form/index.d.ts +3 -1
- package/types/dynamic-form/src/composition/response-form-component-creator.service.d.ts +31 -0
- package/types/dynamic-form/src/schema/schema-resolver.d.ts +2 -1
- package/types/dynamic-form/src/types.d.ts +1 -1
- package/types/dynamic-resolver/index.d.ts +1 -0
- package/types/dynamic-resolver/src/binding-resolver.d.ts +1 -0
- package/types/dynamic-resolver/src/schema-resolver.d.ts +2 -1
- package/types/dynamic-resolver/src/types.d.ts +3 -2
- package/types/dynamic-view/src/dynamic-view.component.d.ts +1 -1
- package/types/lookup/src/property-config/lookup.property-config.d.ts +2 -1
- package/types/modal/src/modal.props.d.ts +1 -4
- package/types/property-panel/src/composition/entity/base-property.d.ts +0 -12
- package/types/property-panel/src/composition/entity/input-base-property.d.ts +11 -26
- package/types/property-panel/src/composition/entity/schema-dom-mapping.d.ts +10 -8
- package/types/response-toolbar/src/response-toolbar.props.d.ts +2 -2
- package/types/response-toolbar/src/schema/schema-mapper.d.ts +4 -0
- package/types/section/src/property-config/section.property-config.d.ts +93 -0
- package/types/section/src/schema/schema-resolver.d.ts +2 -1
- package/types/tabs/src/composition/types.d.ts +2 -2
- package/types/tabs/src/designer/tab-header-item.design.component.d.ts +3 -1
- package/types/tabs/src/designer/tab-toolbar-item.props.d.ts +19 -0
- package/types/tabs/src/property-config/tab-page.property-config.d.ts +60 -0
- package/types/tabs/src/property-config/tabs.property-config.d.ts +6 -6
- package/types/tabs/src/schema/schema-resolver.d.ts +2 -1
- package/types/tags/index.d.ts +36 -5
- package/types/tree-grid/src/designer/use-designer-rules.d.ts +3 -0
- package/types/tree-grid/src/property-config/tree-grid.property-config.d.ts +11 -0
- package/types/tree-grid/src/schema/column-resolver.d.ts +1 -1
- package/types/tree-grid/src/tree-grid.props.d.ts +8 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(z,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):(z=typeof globalThis<"u"?globalThis:z||self,r(z.splitter={},z.Vue,z.LodashES))})(this,function(z,r,G){"use strict";const k={},F={};function R(t){const{properties:e,title:n}=t,i=Object.keys(e).reduce((s,u)=>(s[u]=e[u].type==="object"&&e[u].properties?R(e[u]):G.cloneDeep(e[u].default),s),{});return i.id=`${n}-${Date.now()}`,i}function j(t,e={}){const n=k[t];if(n){let i=R(n);const s=F[t];return i=s?s({getSchemaByType:j},i,e):i,i}return null}function Q(t,e){const n=R(e);return Object.keys(t).reduce((i,s)=>(i[s]=t[s],i),n),n}function U(t,e){return Object.keys(t).filter(i=>t[i]!=null).reduce((i,s)=>{if(e.has(s)){const u=e.get(s);if(typeof u=="string")i[u]=t[s];else{const p=u(s,t[s],t);Object.assign(i,p)}}else i[s]=t[s];return i},{})}function Z(t,e,n=new Map){const i=Q(t,e);return U(i,n)}function K(t={}){function e(o,a,l,c){if(typeof l=="number")return c[o].length===l;if(typeof l=="object"){const d=Object.keys(l)[0],m=l[d];if(d==="not")return Number(c[o].length)!==Number(m);if(d==="moreThan")return Number(c[o].length)>=Number(m);if(d==="lessThan")return Number(c[o].length)<=Number(m)}return!1}function n(o,a,l,c){return c[o]&&c[o].propertyValue&&String(c[o].propertyValue.value)===String(l)}const i=new Map([["length",e],["getProperty",n]]);Object.keys(t).reduce((o,a)=>(o.set(a,t[a]),o),i);function s(o,a){const l=o;return typeof a=="number"?[{target:l,operator:"length",param:null,value:Number(a)}]:typeof a=="boolean"?[{target:l,operator:"getProperty",param:o,value:!!a}]:typeof a=="object"?Object.keys(a).map(c=>{if(c==="length")return{target:l,operator:"length",param:null,value:a[c]};const d=c,m=a[c];return{target:l,operator:"getProperty",param:d,value:m}}):[]}function u(o){return Object.keys(o).reduce((l,c)=>{const d=s(c,o[c]);return l.push(...d),l},[])}function p(o,a){if(i.has(o.operator)){const l=i.get(o.operator);return l&&l(o.target,o.param,o.value,a)||!1}return!1}function y(o,a){return u(o).reduce((d,m)=>d&&p(m,a),!0)}function h(o,a){const l=Object.keys(o),c=l.includes("allOf"),d=l.includes("anyOf"),m=c||d,E=(m?o[m?c?"allOf":"anyOf":"allOf"]:[o]).map(S=>y(S,a));return c?!E.includes(!1):E.includes(!0)}return{parseValueSchema:h}}const x={},I={};K();function L(t,e,n=new Map,i=(p,y,h)=>y,s={},u=p=>p){return k[e.title]=e,F[e.title]=i,x[e.title]=s,I[e.title]=u,(p={})=>{const y=Z(p,e,n),h=Object.keys(t).reduce((o,a)=>(o[a]=t[a].default,o),{});return Object.assign(h,y)}}function W(t,e){return{customClass:e.class,customStyle:e.style}}const ee=new Map([["appearance",W]]);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 re={$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:"column",enum:["column","row"]}}},se={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:"Splitter",enum:[]}}}},appearance:{description:"",title:"外观",properties:{class:{description:"组件的CSS样式",title:"class样式"},style:{description:"组件的内容样式",title:"style样式"}}},behavior:{description:"",title:"行为",properties:{visible:{description:"运行时组件是否可见",type:"boolean",title:"是否可见"}}}}},M={customStyle:{type:String,default:""},customClass:{type:String,default:""},direction:{Type:String,default:"column"}},A=L(M,re,ee,ie,se);function q(t){const e=r.ref(-1),n=r.ref(-1),i=r.ref(0),s=r.ref(0),u=r.ref(!1),p=r.ref(!1),y=r.computed(()=>({display:u.value?"block":"none",left:`${i.value}px`})),h=r.computed(()=>({display:p.value?"block":"none",top:`${s.value}px`})),o=r.computed(()=>({display:p.value||u.value?"block":"none"}));function a(c){const d=t.value;if(d){const{left:m}=d.getBoundingClientRect();i.value=c.clientX-m}}function l(c){const d=t.value;if(d){const{top:m}=d.getBoundingClientRect();s.value=c.clientY-m}}return{horizontalResizeHandleStyle:y,verticalResizeHandleStyle:h,resizeOverlayStyle:o,showHorizontalResizeHandle:u,showVerticalResizeHandle:p,horizontalResizeBarPosition:e,verticalResizeBarPosition:n,verticalResizeHandleOffset:s,horizontalResizeHandleOffset:i,draggingHorizontalResizeHandle:a,draggingVerticalResizeHandle:l}}const ae=["moz","ms","webkit"];function oe(){let t=0;return e=>{const n=new Date().getTime(),i=Math.max(0,16-(n-t)),s=setTimeout(()=>{e(n+i)},i);return t=n+i,s}}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`]:oe()}le();function N(t,e){return((e==null?void 0:e.split(" "))||[]).reduce((i,s)=>(s&&(i[s]=!0),i),t),t}function H(t,e){return((e==null?void 0:e.split(";"))||[]).reduce((i,s)=>{if(s){const u=s.split(":");i[u[0]]=u[1]}return i},t),t}const T=r.defineComponent({name:"FSplitter",props:M,emits:[],setup(t,e){const n=r.ref(),i=q(n),{horizontalResizeHandleStyle:s,verticalResizeHandleStyle:u,resizeOverlayStyle:p}=i;r.provide("splitter",{useResizeHandleComposition:i});const y=r.computed(()=>N({"f-splitter":!0},t==null?void 0:t.customClass)),h=r.computed(()=>{const o={"flex-direction":t.direction==="row"?"column":"row"};return H(o,t==null?void 0:t.customStyle)});return()=>r.createVNode("div",{class:y.value,ref:n,style:h.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:s.value},null),r.createVNode("div",{class:"f-splitter-vertical-resize-proxy",style:u.value},null)])}}),ce=new Map([["appearance",W]]),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"]},resizeable:{description:"",type:"boolean",default:!0},visible:{description:"",type:"number",default:!0}}},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:"Splitter",enum:[]}}}},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"},"min-width":{description:"面板最小宽度",title:"最小宽度(px)",type:"number"},"min-height":{description:"面板最小高度",title:"最小高度(px)",type:"number"}}},behavior:{description:"",title:"行为",properties:{visible:{description:"运行时组件是否可见",type:"boolean",title:"是否可见"},position:{description:"",title:"位置",editor:{type:"combo-list",data:[{value:"left",name:"左侧"},{value:"center",name:"居中"},{value:"right",name:"右侧"},{value:"top",name:"顶部"},{value:"bottom",name:"底部"}]}}}}}},V={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:!0},collapsable:{type:Boolean,default:!1},minWidth:{type:Number,default:200},minHeight:{type:Number,default:200}},_=L(V,pe,ce,void 0,ue);function X(t,e){const n=r.ref(t.width),i=r.ref(t.height),{horizontalResizeBarPosition:s,horizontalResizeHandleOffset:u,showHorizontalResizeHandle:p,showVerticalResizeHandle:y,verticalResizeBarPosition:h,verticalResizeHandleOffset:o,draggingHorizontalResizeHandle:a,draggingVerticalResizeHandle:l}=e;let c="",d,m;function g(C){if((c==="left"||c==="right")&&m){const{left:S}=m.getBoundingClientRect(),{width:w}=d.getBoundingClientRect(),$=C.clientX-S,f=c==="left"?(w||0)+($-s.value):(w||0)-($-s.value);n.value=t.minWidth>0?Math.max(t.minWidth,f):f}if((c==="top"||c==="bottom")&&m){const{top:S}=m.getBoundingClientRect(),{height:w}=d.getBoundingClientRect(),$=C.clientY-S,f=c==="top"?(w||0)+($-h.value):(w||0)-($-h.value);i.value=t.minHeight>0?Math.max(t.minHeight,f):f}u.value=0,o.value=0,s.value=-1,h.value=-1,p.value=!1,y.value=!1,document.removeEventListener("mousemove",a),document.removeEventListener("mouseup",g),document.body.style.userSelect="",c="",d=null,m=null}function P(C,S,w){if(c=S,d=w,p.value=!0,m=C.composedPath().find(f=>f.className.split(" ")[0]==="f-splitter"),m){const{left:f}=m.getBoundingClientRect();u.value=C.clientX-f,s.value=C.clientX-f,document.addEventListener("mousemove",a),document.addEventListener("mouseup",g),document.body.style.userSelect="none"}}function E(C,S,w){if(c=S,d=w,y.value=!0,m=C.composedPath().find(f=>f.className.split(" ")[0]==="f-splitter"),m){const{top:f}=m.getBoundingClientRect();o.value=C.clientY-f,h.value=C.clientY-f,document.addEventListener("mousemove",l),document.addEventListener("mouseup",g),document.body.style.userSelect="none"}}return{actualWidth:n,actualHeight:i,onClickSplitterHorizontalResizeBar:P,onClickSplitterVerticalResizeBar:E}}const D=r.defineComponent({name:"FSplitterPane",props:V,emits:[],setup(t,e){const n=r.ref(),i=r.inject("splitter"),{useResizeHandleComposition:s}=i,u=X(t,s),{actualHeight:p,actualWidth:y,onClickSplitterHorizontalResizeBar:h,onClickSplitterVerticalResizeBar:o}=u,a=r.ref(t.position),l=r.computed(()=>{const g={"f-splitter-pane":!0,"f-splitter-pane-column":a.value==="left"||a.value==="right","f-splitter-pane-row":a.value==="bottom"||a.value==="top","f-splitter-pane-main":a.value==="center"};return N(g,t==null?void 0:t.customClass)}),c=r.computed(()=>{const g={};return(y.value&&a.value==="left"||a.value==="right")&&(g.width=`${y.value}px`),(p.value&&a.value==="bottom"||a.value==="top")&&(g.height=`${p.value}px`),H(g,t==null?void 0:t.customStyle)}),d=r.computed(()=>({"f-splitter-resize-bar":!0,"f-splitter-resize-bar-e":a.value==="left","f-splitter-resize-bar-n":a.value==="bottom","f-splitter-resize-bar-s":a.value==="top","f-splitter-resize-bar-w":a.value==="right"}));function m(g,P){(P==="left"||P==="right")&&h(g,P,n.value),(P==="top"||P==="bottom")&&o(g,P,n.value)}return()=>r.createVNode("div",{ref:n,class:l.value,style:c.value},[e.slots.default&&e.slots.default(),r.createVNode("span",{class:d.value,onMousedown:g=>m(g,a.value)},null)])}});function Y(t,e,n){var $;function i(){n!=null&&n.resolveComponentContext&&n.resolveComponentContext()}i();const s=n&&n.getStyles&&n.getStyles()||"",u=n&&n.getDesignerClass&&n.getDesignerClass()||"",p=r.ref();function y(){return(e==null?void 0:e.schema.componentType)==="frame"?!1:n&&n.checkCanMoveComponent?n.checkCanMoveComponent():!0}function h(){return!1}function o(){return(e==null?void 0:e.schema.componentType)==="frame"?!1:n&&n.checkCanDeleteComponent?n.checkCanDeleteComponent():!0}function a(){return(e==null?void 0:e.schema.componentType)==="frame"?!0:n&&n.hideNestedPaddingInDesginerView?n.hideNestedPaddingInDesginerView():!1}function l(f){if(!f||!f.value)return null;if(f.value.schema&&f.value.schema.type==="component")return f.value;const b=r.ref(f==null?void 0:f.value.parent),v=l(b);return v||null}function c(f=e){const{componentInstance:b,designerItemElementRef:v}=f;return!b||!b.value?null:b.value.canMove?v:c(f.parent)}function d(f){return!!n&&n.canAccepts(f)}function m(){return(e==null?void 0:e.schema.label)||(e==null?void 0:e.schema.title)||(e==null?void 0:e.schema.name)}function g(){}function P(f,b){b&&n!=null&&n.onAcceptMovedChildElement&&n.onAcceptMovedChildElement(b)}function E(f){const{componentType:b}=f;let v=j(b,f);n&&n.onResolveNewComponentSchema&&(v=n.onResolveNewComponentSchema(f,v));const B=b.toLowerCase().replace("-","_");return v&&!v.id&&v.type===b&&(v.id=`${B}_${Math.random().toString().slice(2,6)}`),v}function C(f,b){const v=String(f.getAttribute("data-controltype")),B=f.getAttribute("data-feature"),J=B?JSON.parse(B):{};J.parentComponentInstance=p.value;let O=j(v,J);n&&n.onAcceptNewChildElement&&(O=n.onAcceptNewChildElement(f,b,O));const ve=v.toLowerCase().replace("-","_");return O&&!O.id&&O.type===v&&(O.id=`${ve}_${Math.random().toString().slice(2,6)}`),O}function S(f){}function w(...f){if(n&&n.getPropsConfig)return n.getPropsConfig(...f)}return p.value={canMove:y(),canSelectParent:h(),canDelete:o(),canNested:!a(),contents:e==null?void 0:e.schema.contents,elementRef:t,parent:($=e==null?void 0:e.parent)==null?void 0:$.componentInstance,schema:e==null?void 0:e.schema,styles:s,designerClass:u,canAccepts:d,getBelongedComponentInstance:l,getDraggableDesignItemElement:c,getDraggingDisplayText:m,getPropConfig:w,getDragScopeElement:g,onAcceptMovedChildElement:P,onAcceptNewChildElement:C,onChildElementMovedOut:S,addNewChildComponentSchema:E,updateDragAndDropRules:i,triggerBelongedComponentToMoveWhenMoved:!!n&&n.triggerBelongedComponentToMoveWhenMoved||r.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:!!n&&n.triggerBelongedComponentToDeleteWhenDeleted||r.ref(!1)},p}function fe(t,e){function n(){return!1}return{canAccepts:n}}const de=r.defineComponent({name:"FSplitterDesign",props:M,emits:[],setup(t,e){var c;const n=r.ref(),i=r.inject("design-item-context"),s=fe(i.schema,(c=i.parent)==null?void 0:c.schema),u=Y(n,i,s);u.value.canNested=!1;const p=q(n),{horizontalResizeHandleStyle:y,verticalResizeHandleStyle:h,resizeOverlayStyle:o}=p;r.provide("splitter",{useResizeHandleComposition:p});const a=r.computed(()=>N({"f-splitter":!0},t==null?void 0:t.customClass)),l=r.computed(()=>{const d={"flex-direction":t.direction==="row"?"column":"row"};return H(d,t==null?void 0:t.customStyle)});return r.onMounted(()=>{n.value.componentInstance=u}),e.expose(u.value),()=>r.createVNode("div",{class:a.value,ref:n,style:l.value},[e.slots.default&&e.slots.default(),r.createVNode("div",{class:"f-splitter-resize-overlay",style:o.value},null),r.createVNode("div",{class:"f-splitter-horizontal-resize-proxy",style:y.value},null),r.createVNode("div",{class:"f-splitter-vertical-resize-proxy",style:h.value},null)])}});function me(){function t(e){var s,u;if(!e)return!1;const n=((s=e.targetContainer)==null?void 0:s.componentInstance)&&e.targetContainer.componentInstance.value;if(!n)return!1;const i=(u=n.schema.appearance)==null?void 0:u.class;if(e.controlCategory==="input"||e.controlType==="form-group"){const p=n.schema.type,y=(p==="response-form"||p==="content-container")&&i&&i.includes("farris-form");if(n.schema.type!=="response-layout-item"&&!y)return!1}return e.controlType!=="field-set"}return{basalDragulaRuleForContainer:t}}function ye(t,e){function n(s){var h;if(!me().basalDragulaRuleForContainer(s))return!1;if(((((h=t.appearance)==null?void 0:h.class)||"").split(" ")||[]).includes("f-page-content-nav")){const o=t.contents&&t.contents[0];return!(o&&o.type==="component")}return!0}function i(s,u,p){const y=t,o=(y.appearance&&y.appearance.class||"").split(" ");if(y.position==="main"&&o.includes("f-page-content-main")){if(p.type==="tabs"){const a=p.appearance&&p.appearance.class?String(p.appearance.class).split(" "):[];a.unshift("f-tabs-in-card"),p.appearance={class:a.join(" ")};const l=j("section");l.id=`${p.id}-section`,l.appearance={class:"f-section-tabs f-section-in-mainsubcard"},l.contents=[p];const c=j("content-container");return c.id=`${p.id}-struct-wrapper`,c.appearance={class:"f-struct-wrapper"},c.contents=[l],c}if(p.type==="section"){const a=p.appearance&&p.appearance.class?String(p.appearance.class).split(" "):[];a.unshift("f-section-in-main"),p.appearance={class:a.join(" ")},p.title=String(s.innerText);const l=j("content-container");return l.id=`${p.id}-struct-wrapper`,l.appearance={class:"f-struct-wrapper"},l.contents=[p],l}}return p}return{canAccepts:n,onAcceptNewChildElement:i}}const he=r.defineComponent({name:"FSplitterPaneDesign",props:V,emits:[],setup(t,e){var m;const n=r.ref(),i=r.inject("design-item-context"),s=ye(i.schema,(m=i.parent)==null?void 0:m.schema),u=Y(n,i,s);u.value.styles="padding:0;box-shadow:none;",u.value.canNested=!1,u.value.canMove=!1,u.value.canDelete=!1,r.onMounted(()=>{n.value.componentInstance=u}),e.expose(u.value);const p=r.inject("splitter"),{useResizeHandleComposition:y}=p,h=X(t,y),{actualHeight:o,actualWidth:a}=h,l=r.ref(t.position),c=r.computed(()=>{const g={"f-splitter-pane":!0,"f-splitter-pane-column":l.value==="left"||l.value==="right","f-splitter-pane-row":l.value==="bottom"||l.value==="top","f-splitter-pane-main":l.value==="center","f-component-splitter-pane":!0,"drag-container":!0};return N(g,t==null?void 0:t.customClass)}),d=r.computed(()=>{const g={};return(a.value&&l.value==="left"||l.value==="right")&&(g.width=`${a.value}px`),(o.value&&l.value==="bottom"||l.value==="top")&&(g.height=`${o.value}px`),H(g,t==null?void 0:t.customStyle)});return()=>r.createVNode("div",{ref:n,"data-dragref":`${i.schema.id}-container`,class:c.value,style:d.value},[e.slots.default&&e.slots.default()])}}),ge={install(t){t.component(T.name,T),t.component(D.name,D)},register(t,e,n,i){t.splitter=T,e.splitter=A,t["splitter-pane"]=D,e["splitter-pane"]=_},registerDesigner(t,e,n){t.splitter=de,e.splitter=A,t["splitter-pane"]=he,e["splitter-pane"]=_}};z.FSplitter=T,z.FSplitterPane=D,z.default=ge,z.splitterProps=M,z.splitterPropsResolver=A,Object.defineProperties(z,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
|
1
|
+
(function(O,f){typeof exports=="object"&&typeof module<"u"?f(exports,require("vue"),require("lodash-es"),require("bignumber.js")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es","bignumber.js"],f):(O=typeof globalThis<"u"?globalThis:O||self,f(O.splitter={},O.Vue,O.LodashES))})(this,function(O,f,G){"use strict";const L={},W={};function B(t){const{properties:e,title:n,ignore:o}=t,r=o&&Array.isArray(o),y=Object.keys(e).reduce((c,h)=>((!r||!o.find(C=>C==h))&&(c[h]=e[h].type==="object"&&e[h].properties?B(e[h]):G.cloneDeep(e[h].default)),c),{});return(!r||!o.find(c=>c=="id"))&&(y.id=`${n}-${Date.now()}`),y}function T(t,e={},n){const o=L[t];if(o){let r=B(o);const y=W[t];return r=y?y({getSchemaByType:T},r,e,n):r,r}return null}function Q(t,e){const n=B(e);return Object.keys(t).reduce((o,r)=>(o[r]&&typeof o[r]=="object"?Object.assign(o[r],t[r]):o[r]=t[r],o),n),n}function U(t,e){return Object.keys(t).filter(o=>t[o]!=null).reduce((o,r)=>{if(e.has(r)){const y=e.get(r);if(typeof y=="string")o[y]=t[r];else{const c=y(r,t[r],t);Object.assign(o,c)}}else o[r]=t[r];return o},{})}function Z(t,e,n=new Map){const o=Q(t,e);return U(o,n)}function K(t={}){function e(p,i,l,u){if(typeof l=="number")return u[p].length===l;if(typeof l=="object"){const m=Object.keys(l)[0],s=l[m];if(m==="not")return Number(u[p].length)!==Number(s);if(m==="moreThan")return Number(u[p].length)>=Number(s);if(m==="lessThan")return Number(u[p].length)<=Number(s)}return!1}function n(p,i,l,u){return u[p]&&u[p].propertyValue&&String(u[p].propertyValue.value)===String(l)}const o=new Map([["length",e],["getProperty",n]]);Object.keys(t).reduce((p,i)=>(p.set(i,t[i]),p),o);function r(p,i){const l=p;return typeof i=="number"?[{target:l,operator:"length",param:null,value:Number(i)}]:typeof i=="boolean"?[{target:l,operator:"getProperty",param:p,value:!!i}]:typeof i=="object"?Object.keys(i).map(u=>{if(u==="length")return{target:l,operator:"length",param:null,value:i[u]};const m=u,s=i[u];return{target:l,operator:"getProperty",param:m,value:s}}):[]}function y(p){return Object.keys(p).reduce((l,u)=>{const m=r(u,p[u]);return l.push(...m),l},[])}function c(p,i){if(o.has(p.operator)){const l=o.get(p.operator);return l&&l(p.target,p.param,p.value,i)||!1}return!1}function h(p,i){return y(p).reduce((m,s)=>m&&c(s,i),!0)}function C(p,i){const l=Object.keys(p),u=l.includes("allOf"),m=l.includes("anyOf"),s=u||m,g=(s?p[s?u?"allOf":"anyOf":"allOf"]:[p]).map(j=>h(j,i));return u?!g.includes(!1):g.includes(!0)}return{parseValueSchema:C}}const I={},ee={};K();function q(t,e,n=new Map,o=(c,h,C)=>h,r={},y=c=>c){return L[e.title]=e,W[e.title]=o,I[e.title]=r,ee[e.title]=y,(c={})=>{const h=Z(c,e,n),C=Object.keys(t).reduce((p,i)=>(p[i]=t[i].default,p),{});return Object.assign(C,h)}}function x(t,e){return{customClass:e.class,customStyle:e.style}}const te=new Map([["appearance",x]]);function ne(t,e,n){const o=t.getSchemaByType("splitter-pane");return o.appearance={class:"f-col-w6 f-page-content-nav"},o.position="left",e.contents.unshift(o),e}function oe(t,e,n){const o=t.getSchemaByType("splitter-pane");return o.appearance={class:"f-page-content-main"},o.position="main",e.contents.push(o),e}function se(t,e,n){const o=n.parentComponentInstance;return String(o.schema.appearance.class||"").split(" ").includes("f-page-main")&&(e.appearance={class:"f-page-content"}),ne(t,e),oe(t,e),e}const re={$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:"column",enum:["column","row"]}}},ie={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样式"}}},behavior:{description:"",title:"行为",properties:{visible:{description:"运行时组件是否可见",type:"boolean",title:"是否可见"}}}}},E={customStyle:{type:String,default:""},customClass:{type:String,default:""},direction:{Type:String,default:"column"}},V=q(E,re,te,se,ie);function _(t){const e=f.ref(-1),n=f.ref(-1),o=f.ref(0),r=f.ref(0),y=f.ref(!1),c=f.ref(!1),h=f.computed(()=>({display:y.value?"block":"none",left:`${o.value}px`})),C=f.computed(()=>({display:c.value?"block":"none",top:`${r.value}px`})),p=f.computed(()=>({display:c.value||y.value?"block":"none"}));function i(u){const m=t.value;if(m){const{left:s}=m.getBoundingClientRect();o.value=u.clientX-s}}function l(u){const m=t.value;if(m){const{top:s}=m.getBoundingClientRect();r.value=u.clientY-s}}return{horizontalResizeHandleStyle:h,verticalResizeHandleStyle:C,resizeOverlayStyle:p,showHorizontalResizeHandle:y,showVerticalResizeHandle:c,horizontalResizeBarPosition:e,verticalResizeBarPosition:n,verticalResizeHandleOffset:r,horizontalResizeHandleOffset:o,draggingHorizontalResizeHandle:i,draggingVerticalResizeHandle:l}}const ae=["moz","ms","webkit"];function ce(){let t=0;return e=>{const n=new Date().getTime(),o=Math.max(0,16-(n-t)),r=setTimeout(()=>{e(n+o)},o);return t=n+o,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`]:ce()}le();function N(t,e){return((e==null?void 0:e.split(" "))||[]).reduce((o,r)=>(r&&(o[r]=!0),o),t),t}function D(t,e){return((e==null?void 0:e.split(";"))||[]).reduce((o,r)=>{if(r){const y=r.split(":");o[y[0]]=y[1]}return o},t),t}const R=f.defineComponent({name:"FSplitter",props:E,emits:[],setup(t,e){const n=f.ref(),o=_(n),{horizontalResizeHandleStyle:r,verticalResizeHandleStyle:y,resizeOverlayStyle:c}=o;f.provide("splitter",{useResizeHandleComposition:o});const h=f.computed(()=>N({"f-splitter":!0},t==null?void 0:t.customClass)),C=f.computed(()=>{const p={"flex-direction":t.direction==="row"?"column":"row"};return D(p,t==null?void 0:t.customStyle)});return()=>f.createVNode("div",{class:h.value,ref:n,style:C.value},[e.slots.default&&e.slots.default(),f.createVNode("div",{class:"f-splitter-resize-overlay",style:c.value},null),f.createVNode("div",{class:"f-splitter-horizontal-resize-proxy",style:r.value},null),f.createVNode("div",{class:"f-splitter-vertical-resize-proxy",style:y.value},null)])}}),pe=new Map([["appearance",x]]),ue={$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"]},resizeable:{description:"",type:"boolean",default:!0},visible:{description:"",type:"number",default:!0}}},fe={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:"Splitter",enum:[]}}}},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"},"min-width":{description:"面板最小宽度",title:"最小宽度(px)",type:"number"},"min-height":{description:"面板最小高度",title:"最小高度(px)",type:"number"}}},behavior:{description:"",title:"行为",properties:{visible:{description:"运行时组件是否可见",type:"boolean",title:"是否可见"},position:{description:"",title:"位置",editor:{type:"combo-list",data:[{value:"left",name:"左侧"},{value:"center",name:"居中"},{value:"right",name:"右侧"},{value:"top",name:"顶部"},{value:"bottom",name:"底部"}]}}}}}},k={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:!0},collapsable:{type:Boolean,default:!1},minWidth:{type:Number,default:200},minHeight:{type:Number,default:200}},X=q(k,ue,pe,void 0,fe);function Y(t,e){const n=f.ref(t.width),o=f.ref(t.height),{horizontalResizeBarPosition:r,horizontalResizeHandleOffset:y,showHorizontalResizeHandle:c,showVerticalResizeHandle:h,verticalResizeBarPosition:C,verticalResizeHandleOffset:p,draggingHorizontalResizeHandle:i,draggingVerticalResizeHandle:l}=e;let u="",m,s;function a(v){if((u==="left"||u==="right")&&s){const{left:j}=s.getBoundingClientRect(),{width:P}=m.getBoundingClientRect(),z=v.clientX-j,b=u==="left"?(P||0)+(z-r.value):(P||0)-(z-r.value);n.value=t.minWidth>0?Math.max(t.minWidth,b):b}if((u==="top"||u==="bottom")&&s){const{top:j}=s.getBoundingClientRect(),{height:P}=m.getBoundingClientRect(),z=v.clientY-j,b=u==="top"?(P||0)+(z-C.value):(P||0)-(z-C.value);o.value=t.minHeight>0?Math.max(t.minHeight,b):b}y.value=0,p.value=0,r.value=-1,C.value=-1,c.value=!1,h.value=!1,document.removeEventListener("mousemove",i),document.removeEventListener("mouseup",a),document.body.style.userSelect="",u="",m=null,s=null}function d(v,j,P){if(u=j,m=P,c.value=!0,s=v.composedPath().find(b=>b.className.split(" ")[0]==="f-splitter"),s){const{left:b}=s.getBoundingClientRect();y.value=v.clientX-b,r.value=v.clientX-b,document.addEventListener("mousemove",i),document.addEventListener("mouseup",a),document.body.style.userSelect="none"}}function g(v,j,P){if(u=j,m=P,h.value=!0,s=v.composedPath().find(b=>b.className.split(" ")[0]==="f-splitter"),s){const{top:b}=s.getBoundingClientRect();p.value=v.clientY-b,C.value=v.clientY-b,document.addEventListener("mousemove",l),document.addEventListener("mouseup",a),document.body.style.userSelect="none"}}return{actualWidth:n,actualHeight:o,onClickSplitterHorizontalResizeBar:d,onClickSplitterVerticalResizeBar:g}}const M=f.defineComponent({name:"FSplitterPane",props:k,emits:[],setup(t,e){const n=f.ref(),o=f.inject("splitter"),{useResizeHandleComposition:r}=o,y=Y(t,r),{actualHeight:c,actualWidth:h,onClickSplitterHorizontalResizeBar:C,onClickSplitterVerticalResizeBar:p}=y,i=f.ref(t.position),l=f.computed(()=>{const a={"f-splitter-pane":!0,"f-splitter-pane-column":i.value==="left"||i.value==="right","f-splitter-pane-row":i.value==="bottom"||i.value==="top","f-splitter-pane-main":i.value==="center"};return N(a,t==null?void 0:t.customClass)}),u=f.computed(()=>{const a={};return(h.value&&i.value==="left"||i.value==="right")&&(a.width=`${h.value}px`),(c.value&&i.value==="bottom"||i.value==="top")&&(a.height=`${c.value}px`),D(a,t==null?void 0:t.customStyle)}),m=f.computed(()=>({"f-splitter-resize-bar":!0,"f-splitter-resize-bar-e":i.value==="left","f-splitter-resize-bar-n":i.value==="bottom","f-splitter-resize-bar-s":i.value==="top","f-splitter-resize-bar-w":i.value==="right"}));function s(a,d){(d==="left"||d==="right")&&C(a,d,n.value),(d==="top"||d==="bottom")&&p(a,d,n.value)}return()=>f.createVNode("div",{ref:n,class:l.value,style:u.value},[e.slots.default&&e.slots.default(),f.createVNode("span",{class:m.value,onMousedown:a=>s(a,i.value)},null)])}});function J(t,e,n){var z;function o(){n!=null&&n.resolveComponentContext&&n.resolveComponentContext()}o();const r=n&&n.getStyles&&n.getStyles()||"",y=n&&n.getDesignerClass&&n.getDesignerClass()||"",c=f.ref();function h(){return(e==null?void 0:e.schema.componentType)==="frame"?!1:n&&n.checkCanMoveComponent?n.checkCanMoveComponent():!0}function C(){return!1}function p(){return(e==null?void 0:e.schema.componentType)==="frame"?!1:n&&n.checkCanDeleteComponent?n.checkCanDeleteComponent():!0}function i(){return(e==null?void 0:e.schema.componentType)==="frame"?!0:n&&n.hideNestedPaddingInDesginerView?n.hideNestedPaddingInDesginerView():!1}function l(b){if(!b||!b.value)return null;if(b.value.schema&&b.value.schema.type==="component")return b.value;const w=f.ref(b==null?void 0:b.value.parent),$=l(w);return $||null}function u(b=e){const{componentInstance:w,designerItemElementRef:$}=b;return!w||!w.value?null:w.value.canMove?$:u(b.parent)}function m(b){return!!n&&n.canAccepts(b)}function s(){return(e==null?void 0:e.schema.label)||(e==null?void 0:e.schema.title)||(e==null?void 0:e.schema.name)}function a(){}function d(b,w){w&&n!=null&&n.onAcceptMovedChildElement&&n.onAcceptMovedChildElement(w)}function g(b,w){const{componentType:$}=b;let S=T($,b,w);n&&n.onResolveNewComponentSchema&&(S=n.onResolveNewComponentSchema(b,S));const H=$.toLowerCase().replace("-","_");return S&&!S.id&&S.type===$&&(S.id=`${H}_${Math.random().toString().slice(2,6)}`),S}function v(b,w){const $=String(b.getAttribute("data-controltype")),S=b.getAttribute("data-feature"),H=S?JSON.parse(S):{};H.parentComponentInstance=c.value;let A=T($,H);n&&n.onAcceptNewChildElement&&(A=n.onAcceptNewChildElement(b,w,A));const Ce=$.toLowerCase().replace("-","_");return A&&!A.id&&A.type===$&&(A.id=`${Ce}_${Math.random().toString().slice(2,6)}`),A}function j(b){}function P(...b){if(n&&n.getPropsConfig)return n.getPropsConfig(...b)}return c.value={canMove:h(),canSelectParent:C(),canDelete:p(),canNested:!i(),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:r,designerClass:y,canAccepts:m,getBelongedComponentInstance:l,getDraggableDesignItemElement:u,getDraggingDisplayText:s,getPropConfig:P,getDragScopeElement:a,onAcceptMovedChildElement:d,onAcceptNewChildElement:v,onChildElementMovedOut:j,addNewChildComponentSchema:g,updateDragAndDropRules:o,triggerBelongedComponentToMoveWhenMoved:!!n&&n.triggerBelongedComponentToMoveWhenMoved||f.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:!!n&&n.triggerBelongedComponentToDeleteWhenDeleted||f.ref(!1)},c}const de={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/dragging-rules.schema.json",title:"Dragging Rules",description:"The rules of designer canvas",type:"object",properties:{"f-page":{description:"The root class of page designed by farris.",type:"object",properties:{contents:{type:"object",properties:{"f-page-header":{description:"The class of page header designed by farris.",type:"string"},"f-page-main":{description:"The class of page body designed by farris.",type:"object",properties:{contents:{type:"object",properties:{"f-struct-like-card":{description:"",type:"object",properties:{contents:{type:"object",properties:{"f-struct-form":{description:"The class of form component which has a hierarchical structure of component -> section -> respnse-form.",type:"object",properties:{contents:{type:"object",properties:{"f-section-form":{description:"The class of section which has wrapped a reponse-form component.",type:"object",properties:{contents:{type:"object",properties:{"f-form-layout":{description:"The class of reponse form",type:"object",properties:{rules:{type:"object",properties:{canAccept:{type:"boolean",const:!0},fixed:{type:"boolean",const:!0},hidePadding:{type:"boolean",const:!1}}}}}}},rules:{type:"object",properties:{canAccept:{type:"boolean",const:!1},fixed:{type:"boolean",const:!0},hidePadding:{type:"boolean",const:!0}}}}}}},rules:{type:"object",properties:{canAccept:{type:"boolean",const:!1},fixed:{type:"boolean",const:!1},hidePadding:{type:"boolean",const:!0}}}}},"f-struct-wrapper":{description:"",type:"object",properties:{contents:{type:"object",properties:{"f-section-tabs":{description:"The class of section which has wrapped sub-grid tabs.",type:"object",properties:{contents:{type:"object",properties:{"f-tabs-in-card":{description:"The class of tabs which contains sub-grid.",type:"object",properties:{contents:{type:"object",properties:{"f-struct-data-grid-in-card":{description:"The class of sub-grid component",type:"object",properties:{contents:{type:"object",properties:{"f-grid-is-sub":{description:"The class of sub-grid",type:"object",properties:{rules:{type:"object",properties:{canAccept:{type:"boolean",const:!0},fixed:{type:"boolean",const:!0},hidePadding:{type:"boolean",const:!1}}}}}}},rules:{type:"object",properties:{canAccept:{type:"boolean",const:!1},fixed:{type:"boolean",const:!1},hidePadding:{type:"boolean",const:!0}}}}}}},rules:{type:"object",properties:{canAccept:{type:"boolean",const:!1},fixed:{type:"boolean",const:!0},hidePadding:{type:"boolean",const:!0}}}}}}},rules:{type:"object",properties:{canAccept:{type:"boolean",const:!1},fixed:{type:"boolean",const:!0},hidePadding:{type:"boolean",const:!0}}}}},"f-section-in-main":{description:"The class of section which has wrapped a reponse-form component.",type:"object",properties:{rules:{type:"object",properties:{canAccept:{type:"boolean",const:!0},fixed:{type:"boolean",const:!0},hidePadding:{type:"boolean",const:!1}}}}}}},rules:{type:"object",properties:{canAccept:{type:"boolean",const:!1},fixed:{type:"boolean",const:!1},hidePadding:{type:"boolean",const:!0}}}}}}},rules:{type:"object",properties:{canAccept:{type:"boolean",const:!0},fixed:{type:"boolean",const:!0},hidePadding:{type:"object",const:{allOf:[{sibling:0,parent:{"f-page-main":!0}}]}}}}}},"f-struct-data-grid":{description:"",type:"object",properties:{rules:{type:"object",properties:{canAccept:{type:"object",const:!0},fixed:{type:"boolean",const:!0},hidePadding:{type:"boolean",const:!0}}}}},"f-page-main-content":{description:"",type:"object",properties:{contents:{type:"object",properties:{"f-page-content-nav":{description:"",type:"object",properties:{contents:{type:"object",properties:{"f-struct-data-grid-in-nav":{description:"",type:"object",properties:{contents:{type:"object",properties:{"f-page-content-nav-extend":{description:"",type:"object"},"f-section-in-nav":{description:"",type:"object",properties:{rules:{type:"object",properties:{canAccept:{type:"boolean",const:!1},fixed:{type:"boolean",const:!0},hidePadding:{type:"boolean",const:!1}}}}}}},rules:{type:"object",properties:{canAccept:{type:"boolean",const:!0},fixed:{type:"boolean",const:!1},hidePadding:{type:"boolean",const:!0}}}}}}}}},"f-page-content-main":{description:"",type:"object",properties:{}}}}}},"f-page-content":{description:"",type:"object",properties:{contents:{type:"object",properties:{"f-page-content-nav":{description:"",type:"object",properties:{contents:{type:"object",properties:{"f-list-nav":{description:"",type:"object"},"f-list-nav-left":{description:"",type:"object"},"f-struct-data-grid-in-nav":{description:"",type:"object",properties:{contents:{type:"object",properties:{"f-section-form":{description:"",type:"object",properties:{rules:{type:"object",properties:{canAccept:{type:"boolean",const:!1},fixed:{type:"boolean",const:!0},hidePadding:{type:"boolean",const:!0}}}}},"f-section-grid":{description:"",type:"object",properties:{rules:{type:"object",properties:{canAccept:{type:"boolean",const:!1},fixed:{type:"boolean",const:!0},hidePadding:{type:"boolean",const:!0}}}}}}},rules:{type:"object",properties:{canAccept:{type:"boolean",const:!1},fixed:{type:"boolean",const:!0},hidePadding:{type:"boolean",const:!0}}}}}}}},rules:{type:"object",properties:{canAccept:{type:"boolean",const:!1},fixed:{type:"boolean",const:!0},hidePadding:{type:"boolean",const:!0}}}},"f-page-content-main":{description:"",type:"object",properties:{rules:{type:"object",properties:{canAccept:{type:"boolean",const:!1},fixed:{type:"boolean",const:!1},hidePadding:{type:"boolean",const:!0}}}}}}},rules:{type:"object",properties:{canAccept:{type:"boolean",const:!1},fixed:{type:"boolean",const:!0},hidePadding:{type:"boolean",const:!0}}}}}}},rules:{type:"object",properties:{canAccept:{type:"object",const:{anyOf:[{children:0},{children:{length:{not:1},"f-struct-like-card":!0}},{children:{"scroll-spy":!1,"f-page-content":!1,"f-struct-like-card":!1}}]}},fixed:{type:"boolean",const:!0},hidePadding:{type:"boolean",const:!0}}}}},"f-page-footer":{description:"The class of page footer designed by farris.",type:"string"}}},rules:{type:"object",properties:{canAccept:{type:"boolean",const:!1},fixed:{type:"boolean",const:!0},hidePadding:{type:"boolean",const:!0}}}}},"f-page-is-managelist":{description:"The root class of mangement list page.",type:"string"},"f-page-card":{description:"",type:"object"},"f-page-is-mainsubcard":{description:"",type:"object"}}},F=new Map;function ye(){function t(s,a,d,g){var v;if(typeof d=="number")return((v=g[s])==null?void 0:v.length)===d;if(typeof d=="object"){const j=Object.keys(d)[0],P=d[j];if(j==="not")return Number(g[s].length)!==Number(P);if(j==="moreThan")return Number(g[s].length)>=Number(P);if(j==="lessThan")return Number(g[s].length)<=Number(P)}return!1}function e(s,a,d,g){return typeof d=="boolean"?g.childrenClassList.includes(a)===!!d:!1}function n(s,a,d,g){return typeof d=="boolean"?g.parentClassList.includes(a)===!!d:!1}function o(s,a,d,g){return typeof d=="boolean"?g.parentClassList.includes(a)===!!d:!1}const r=new Map([["length",t],["hasChildren",e],["hasSibling",o],["hasParent",n]]);function y(s,a){const d=s;return typeof a=="number"?[{target:d,operator:"length",param:null,value:Number(a)}]:typeof a=="object"?Object.keys(a).map(g=>{if(g==="length")return{target:d,operator:"length",param:null,value:a[g]};const v=g,j=a[g];return{target:d,operator:s==="children"?"hasChildren":s==="parent"?"hasParent":"hasSibling",param:v,value:j}}):[]}function c(s,a){if(r.has(s.operator)){const d=r.get(s.operator);return d&&d(s.target,s.param,s.value,a)||!1}return!1}function h(s,a){return Object.keys(s).reduce((j,P)=>{const z=y(P,s[P]);return j.push(...z),j},[]).reduce((j,P)=>j&&c(P,a),!0)}function C(s,a){const d=Object.keys(s),g=d.includes("allOf"),v=d.includes("anyOf"),j=g||v,b=(j?s[j?g?"allOf":"anyOf":"allOf"]:[s]).map($=>h($,a));return g?!b.includes(!1):b.includes(!0)}function p(s,a){const d=s.const;return d?typeof d=="boolean"?d:typeof d=="object"?C(d,a):!1:!1}function i(s){return a=>{const d={canAccept:!0,fixed:!1,hidePadding:!1};return s&&s.properties&&Object.keys(s.properties).reduce((g,v)=>{const j=s.properties[v];return g[v]=p(j,a),g},d),d}}function l(s,a,d){if(a.type==="object"&&a.properties){const{rules:g,contents:v}=a.properties;d.set(s,i(g)),v&&Object.keys(v.properties).forEach(j=>l(j,v.properties[j],d))}}function u(){const{properties:s}=de;Object.keys(s).forEach(a=>{l(a,s[a],F)})}function m(s,a){const d={canAccept:!0,fixed:!1,hidePadding:!0};return F.has(s)?F.get(s)(a):d}return u(),{getRuleValue:m}}function be(t,e){const n=ye();let o,r=!1;function y(){return!1}function c(){return!r}function h(){return!r}function C(){r=!1;const i=t,l=i.appearance&&i.appearance.class||"",u=l.split(" "),m=i.contents||[],s=m.length?m[0]:null,a=s&&s.appearance?s.appearance.class:"",d=a?a.split(" "):[],g=m.length?m.reduce((b,w)=>{const $=w&&w.appearance?w.appearance.class:"",S=$?$.split(" "):[];return b.push(...S),b},[]):[],v=e,j=v&&v.appearance&&v.appearance.class||"",P=j?j.split(" "):[];o={componentClass:l,componentClassList:u,childContents:m,firstChildContent:s,firstChildClass:a,firstChildClassList:d,parent:v,parentClass:j,parentClassList:P,children:m,childrenClassList:g};const{fixed:z}=n.getRuleValue(u[0],o);return r=z,!0}function p(){return!0}return{canAccepts:y,checkCanDeleteComponent:c,checkCanMoveComponent:h,resolveComponentContext:C,hideNestedPaddingInDesginerView:p}}const me=f.defineComponent({name:"FSplitterDesign",props:E,emits:[],setup(t,e){var u;const n=f.ref(),o=f.inject("design-item-context"),r=be(o.schema,(u=o.parent)==null?void 0:u.schema),y=J(n,o,r);y.value.canNested=!1;const c=_(n),{horizontalResizeHandleStyle:h,verticalResizeHandleStyle:C,resizeOverlayStyle:p}=c;f.provide("splitter",{useResizeHandleComposition:c});const i=f.computed(()=>N({"f-splitter":!0},t==null?void 0:t.customClass)),l=f.computed(()=>{const m={"flex-direction":t.direction==="row"?"column":"row"};return D(m,t==null?void 0:t.customStyle)});return f.onMounted(()=>{n.value.componentInstance=y}),e.expose(y.value),()=>f.createVNode("div",{class:i.value,ref:n,style:l.value},[e.slots.default&&e.slots.default(),f.createVNode("div",{class:"f-splitter-resize-overlay",style:p.value},null),f.createVNode("div",{class:"f-splitter-horizontal-resize-proxy",style:h.value},null),f.createVNode("div",{class:"f-splitter-vertical-resize-proxy",style:C.value},null)])}});function he(){function t(e){var r,y;if(!e)return!1;const n=((r=e.targetContainer)==null?void 0:r.componentInstance)&&e.targetContainer.componentInstance.value;if(!n)return!1;const o=(y=n.schema.appearance)==null?void 0:y.class;if(e.controlCategory==="input"||e.controlType==="form-group"){const c=n.schema.type,h=(c==="response-form"||c==="content-container")&&o&&o.includes("farris-form");if(n.schema.type!=="response-layout-item"&&!h)return!1}return e.controlType!=="field-set"}return{basalDragulaRuleForContainer:t}}function ge(t,e){function n(r){var C;if(!he().basalDragulaRuleForContainer(r))return!1;if(((((C=t.appearance)==null?void 0:C.class)||"").split(" ")||[]).includes("f-page-content-nav")){const p=t.contents&&t.contents[0];return!(p&&p.type==="component")}return!0}function o(r,y,c){const h=t,p=(h.appearance&&h.appearance.class||"").split(" ");if(h.position==="main"&&p.includes("f-page-content-main")){if(c.type==="tabs"){const i=c.appearance&&c.appearance.class?String(c.appearance.class).split(" "):[];i.unshift("f-tabs-in-card"),c.appearance={class:i.join(" ")};const l=T("section");l.id=`${c.id}-section`,l.appearance={class:"f-section-tabs f-section-in-mainsubcard"},l.contents=[c];const u=T("content-container");return u.id=`${c.id}-struct-wrapper`,u.appearance={class:"f-struct-wrapper"},u.contents=[l],u}if(c.type==="section"){const i=c.appearance&&c.appearance.class?String(c.appearance.class).split(" "):[];i.unshift("f-section-in-main"),c.appearance={class:i.join(" ")},c.title=String(r.innerText);const l=T("content-container");return l.id=`${c.id}-struct-wrapper`,l.appearance={class:"f-struct-wrapper"},l.contents=[c],l}}return c}return{canAccepts:n,onAcceptNewChildElement:o}}const je=f.defineComponent({name:"FSplitterPaneDesign",props:k,emits:[],setup(t,e){var s;const n=f.ref(),o=f.inject("design-item-context"),r=ge(o.schema,(s=o.parent)==null?void 0:s.schema),y=J(n,o,r);y.value.styles="padding:0;box-shadow:none;",y.value.canNested=!1,y.value.canMove=!1,y.value.canDelete=!1,f.onMounted(()=>{n.value.componentInstance=y}),e.expose(y.value);const c=f.inject("splitter"),{useResizeHandleComposition:h}=c,C=Y(t,h),{actualHeight:p,actualWidth:i}=C,l=f.ref(t.position),u=f.computed(()=>{const a={"f-splitter-pane":!0,"f-splitter-pane-column":l.value==="left"||l.value==="right","f-splitter-pane-row":l.value==="bottom"||l.value==="top","f-splitter-pane-main":l.value==="center","f-component-splitter-pane":!0,"drag-container":!0};return N(a,t==null?void 0:t.customClass)}),m=f.computed(()=>{const a={};return(i.value&&l.value==="left"||l.value==="right")&&(a.width=`${i.value}px`),(p.value&&l.value==="bottom"||l.value==="top")&&(a.height=`${p.value}px`),D(a,t==null?void 0:t.customStyle)});return()=>f.createVNode("div",{ref:n,"data-dragref":`${o.schema.id}-container`,class:u.value,style:m.value},[e.slots.default&&e.slots.default()])}}),ve={install(t){t.component(R.name,R),t.component(M.name,M)},register(t,e,n,o){t.splitter=R,e.splitter=V,t["splitter-pane"]=M,e["splitter-pane"]=X},registerDesigner(t,e,n){t.splitter=me,e.splitter=V,t["splitter-pane"]=je,e["splitter-pane"]=X}};O.FSplitter=R,O.FSplitterPane=M,O.default=ve,O.splitterProps=E,O.splitterPropsResolver=V,Object.defineProperties(O,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|