UNPKG

@farris/ui-vue

Version:

Farris Vue, a Farris Design based Vue3 component library.

1 lines 80.6 kB
(function(z,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("lodash-es"),require("../list-view/index.umd.js"),require("../button-edit/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es","../list-view/index.umd.js","../button-edit/index.umd.js"],e):(z=typeof globalThis<"u"?globalThis:z||self,e(z["response-layout-editor"]={},z.Vue,z.LodashES,z.FListView,z.FButtonEdit))})(this,function(z,e,P,xe,Ne){"use strict";var fa=Object.defineProperty;var pa=(z,e,P)=>e in z?fa(z,e,{enumerable:!0,configurable:!0,writable:!0,value:P}):z[e]=P;var L=(z,e,P)=>pa(z,typeof e!="symbol"?e+"":e,P);const de={initialState:{type:Object,default:{}}},Me={defaultStates:{type:Object,default:{mode:""}},onSwitchInStandardModeChanged:{type:Function,default:()=>{}},onCurrentScreenResolutionChanged:{type:Function,default:()=>{}},onScreenNameChanged:{type:Function,default:()=>{}}},Te={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/capsule.schema.json",title:"capsule",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for a capsule",type:"string"},type:{description:"The type string of capsule component",type:"string",default:"capsule"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disable:{type:"string",default:!1},editable:{description:"",type:"boolean",default:!0},placeholder:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},require:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},visible:{description:"",type:"boolean",default:!0}},required:["id","type"]},fe={},pe={};function ne(t){const{properties:a,title:n,ignore:l}=t,o=l&&Array.isArray(l),i=Object.keys(a).reduce((c,u)=>((!o||!l.find(p=>p===u))&&(c[u]=a[u].type==="object"&&a[u].properties?ne(a[u]):P.cloneDeep(a[u].default)),c),{});if(n&&(!o||!l.find(c=>c==="id"))){const c=n.toLowerCase().replace(/-/g,"_");i.id=`${c}_${Math.random().toString().slice(2,6)}`}return i}function $e(t){const{properties:a,title:n,required:l}=t;if(l&&Array.isArray(l)){const o=l.reduce((i,c)=>(i[c]=a[c].type==="object"&&a[c].properties?ne(a[c]):P.cloneDeep(a[c].default),i),{});if(n&&l.find(i=>i==="id")){const i=n.toLowerCase().replace(/-/g,"_");o.id=`${i}_${Math.random().toString().slice(2,6)}`}return o}return{type:n}}function me(t,a={},n){const l=fe[t];if(l){let o=$e(l);const i=pe[t];return o=i?i({getSchemaByType:me},o,a,n):o,o}return null}function Be(t,a){const n=ne(a);return Object.keys(n).reduce((l,o)=>(Object.prototype.hasOwnProperty.call(t,o)&&(l[o]&&P.isPlainObject(l[o])&&P.isPlainObject(t[o]||!t[o])?Object.assign(l[o],t[o]||{}):l[o]=t[o]),l),n),n}function he(t,a){return Object.keys(t).filter(l=>t[l]!=null).reduce((l,o)=>{if(a.has(o)){const i=a.get(o);if(typeof i=="string")l[i]=t[o];else{const c=i(o,t[o],t);Object.assign(l,c)}}else l[o]=t[o];return l},{})}function Fe(t,a,n=new Map){const l=Be(t,a);return he(l,n)}function ke(t={}){function a(s,f,r,d){if(typeof r=="number")return d[s].length===r;if(typeof r=="object"){const b=Object.keys(r)[0],S=r[b];if(b==="not")return Number(d[s].length)!==Number(S);if(b==="moreThan")return Number(d[s].length)>=Number(S);if(b==="lessThan")return Number(d[s].length)<=Number(S)}return!1}function n(s,f,r,d){return d[s]&&d[s].propertyValue&&String(d[s].propertyValue.value)===String(r)}const l=new Map([["length",a],["getProperty",n]]);Object.keys(t).reduce((s,f)=>(s.set(f,t[f]),s),l);function o(s,f){const r=s;return typeof f=="number"?[{target:r,operator:"length",param:null,value:Number(f)}]:typeof f=="boolean"?[{target:r,operator:"getProperty",param:s,value:!!f}]:typeof f=="object"?Object.keys(f).map(d=>{if(d==="length")return{target:r,operator:"length",param:null,value:f[d]};const b=d,S=f[d];return{target:r,operator:"getProperty",param:b,value:S}}):[]}function i(s){return Object.keys(s).reduce((r,d)=>{const b=o(d,s[d]);return r.push(...b),r},[])}function c(s,f){if(l.has(s.operator)){const r=l.get(s.operator);return r&&r(s.target,s.param,s.value,f)||!1}return!1}function u(s,f){return i(s).reduce((b,S)=>b&&c(S,f),!0)}function p(s,f){const r=Object.keys(s),d=r.includes("allOf"),b=r.includes("anyOf"),S=d||b,M=(S?s[S?d?"allOf":"anyOf":"allOf"]:[s]).map(x=>u(x,f));return d?!M.includes(!1):M.includes(!0)}return{parseValueSchema:p}}const Re={},De={};ke();function J(t,a,n=new Map,l=(c,u,p,s)=>u,o={},i=c=>c){return fe[a.title]=a,pe[a.title]=l,Re[a.title]=o,De[a.title]=i,(c={},u=!0)=>{if(!u)return he(c,n);const p=Fe(c,a,n),s=Object.keys(t).reduce((f,r)=>(f[r]=t[r].default,f),{});return Object.assign(s,p)}}function Q(t,a){return{customClass:a.class,customStyle:a.style}}const Ee=new Map([["appearance",Q]]);function Oe(t,a,n){return a}const je={title:"capsule",description:"A Farris Component",type:"object",categories:{basic:{description:"Basic Infomation",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"waiting for modification",enum:[]}}}}}},ge={items:{Type:Array,default:[{name:"升序",value:"asc",icon:"f-icon f-icon-col-ascendingorder"},{name:"降序",value:"desc",icon:"f-icon f-icon-col-descendingorder"}]},modelValue:{type:String,default:""},type:{type:String,default:"primary"}},Ae={name:{type:String,default:""},value:{type:String,default:""},isActive:{type:Boolean,default:!1},icon:{type:String,default:""},index:{type:Number,default:0},show:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1}};J(ge,Te,Ee,Oe,je);const Ie=e.defineComponent({name:"FCapsuleItem",props:Ae,emits:["mounted","active"],setup(t,a){const n=e.ref(),l=e.ref(t.isActive);e.watch(()=>t.isActive,c=>{l.value=c});const o=e.computed(()=>({"f-capsule-item":!0,"f-capsule-active-item":l.value,"f-capsule-disabled":t.disabled}));e.onMounted(()=>{a.emit("mounted",n,t.value)});function i(c){t.disabled||a.emit("active",c,{name:t.name,value:t.value})}return()=>e.createVNode("div",{ref:n,class:o.value,onClick:c=>i(c)},[t.icon&&e.createVNode("i",{class:t.icon},null),t.name])}}),Le=e.defineComponent({name:"FCapsule",props:ge,emits:["change","update:modelValue"],setup(t,a){const n=e.ref(t.items),l=e.ref(),o=2,i=e.ref(t.modelValue),c=e.ref("none"),u=e.ref(t.type),p=e.computed(()=>{const h={"f-capsule-container":!0};return u.value&&(h[u.value]=!0),h}),s=e.computed(()=>({})),f=e.computed(()=>({"f-capsule":!0})),r=e.ref(o),d=e.ref(0),b=e.ref(0),S=e.computed(()=>({left:`${r.value}px`,width:`${d.value}px`,transition:c.value})),B=e.computed(()=>({width:`${b.value}px`})),w=new Map;function M(h){var g;if(w.has(h.value)){const y=(g=w.get(h.value))==null?void 0:g.value;if(y){const V=y.getBoundingClientRect(),D=l.value.getBoundingClientRect();r.value=V.left-D.left+o+l.value.scrollLeft,d.value=V.width-2*o}}}function $(h,g){const y=h.value;i.value=y,a.emit("update:modelValue",y),M(h),g&&a.emit("change",y)}function x(h){const g=n.value.findIndex(y=>y.value===h);g>-1&&$(n.value[g],!1)}e.watch(()=>t.modelValue,h=>{i.value=h,x(i.value)}),e.onMounted(async()=>{x(i.value),await e.nextTick(),c.value="0.1s ease-out all",b.value=Array.from(w.values()).reduce((h,g)=>(h+=g.value.clientWidth,h),0)});function j(h,g){$(g,!0)}function F(h,g){w.set(g,h)}function O(h){Array.from(w.keys()).forEach(g=>{h.find(V=>V.value===g)||w.delete(g)})}function m(h,g){return e.createVNode(Ie,{name:h.name,value:h.value,isActive:h.value===i.value,index:g,disabled:h.disabled,key:h.value,onMounted:F,onActive:j},null)}return e.watch(()=>t.items,async h=>{const g=h.filter(y=>y.show);O(g),n.value=g,await e.nextTick(),x(i.value),b.value=Array.from(w.values()).reduce((y,V)=>(y+=V.value.clientWidth,y),0)}),()=>e.createVNode("span",{ref:l,class:p.value,style:s.value},[e.createVNode("span",{class:"f-capsule-pane"},[n.value.map((h,g)=>m(h,g))]),e.createVNode("small",{class:f.value,style:S.value},null),e.createVNode("div",{class:"f-capsule-board",style:B.value},null)])}}),ze=new Map([["appearance",Q]]),Pe={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/switch.schema.json",title:"switch",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for a switch",type:"string"},type:{description:"The type string of switch component",type:"string",default:"switch"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disabled:{type:"boolean",default:!1},onBackground:{description:"",type:"string",default:""},offBackground:{description:"",type:"string",default:""},onColor:{description:"",type:"string",default:""},offColor:{description:"",type:"string",default:""},onLabel:{description:"",type:"string",default:""},offLabel:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},size:{description:"",type:"enum",default:"medium"},required:{description:"",type:"boolean",default:!1}},required:["type"],ignore:["id","appearance","binding"]};function He(t,a,n){return a}const ye={modelValue:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},onBackground:{type:String},offBackground:{type:String},onColor:{type:String},offColor:{type:String},onLabel:{type:String},offLabel:{type:String},size:{type:String,default:"medium"},onModelValueChanged:{type:Function,default:()=>{}},focusOnCreated:{type:Boolean,default:!1}};J(ye,Pe,ze,He);const We=e.defineComponent({name:"FSwitch",props:ye,emits:["update:modelValue","modelValueChanged"],setup(t,a){const{disabled:n,size:l,onLabel:o,offLabel:i,onBackground:c,offBackground:u,onColor:p,offColor:s,readonly:f}=e.toRefs(t),r=e.ref(!!t.modelValue),d=e.ref(),b=e.computed(()=>({switch:!0,"f-cmp-switch":!0,checked:r.value,disabled:f.value||n.value,"switch-large":l.value==="large","switch-medium":l.value==="medium","switch-small":l.value==="small"})),S=e.computed(()=>r.value?{outline:"none",background:c.value}:{outline:"none",backgroundColor:u.value}),B=e.computed(()=>r.value?{background:p.value}:{backgroundColor:s.value}),w=e.computed(()=>(o==null?void 0:o.value)||(i==null?void 0:i.value));function M(){f.value||n.value||(r.value=!r.value,a.emit("update:modelValue",r.value))}return e.watch(r,($,x)=>{$!==x&&a.emit("modelValueChanged",$)}),e.watch(()=>t.modelValue,($,x)=>{$!==x&&(r.value=$)}),e.onMounted(()=>{var $;t.focusOnCreated&&(($=d.value)==null||$.focus())}),()=>e.createVNode("span",{ref:d,tabindex:"0",role:"button",class:b.value,style:S.value,onClick:M},[w.value&&e.createVNode("span",{class:"switch-pane"},[e.createVNode("span",{class:"switch-label-checked"},[o==null?void 0:o.value]),e.createVNode("span",{class:"switch-label-unchecked"},[i==null?void 0:i.value])]),e.createVNode("small",{style:B.value},[a.slots.default&&a.slots.default()])])}}),qe=e.defineComponent({name:"FScreenResolutionSelector",props:Me,emits:["screenNameChanged","currentScreenResolutionChanged","switchInStandardModeChanged"],setup(t,a){const n=e.ref([{name:"小屏幕",code:"SM",value:"SM",active:!1},{name:"中等屏幕",code:"MD",value:"MD",active:!0},{name:"大屏幕",code:"LG",value:"LG",active:!1},{name:"极大屏幕",code:"EL",value:"EL",active:!1}]),l=e.ref(t.defaultStates),o=e.ref("MD"),i=e.ref("中等屏幕"),c=e.ref(!0);function u(f){n.value.forEach(r=>{r.active=r.code===f,r.active&&(o.value=r.code,i.value=r.name,a.emit("screenNameChanged",i.value),a.emit("currentScreenResolutionChanged",o.value))})}function p(){a.emit("switchInStandardModeChanged",c.value)}e.watch(c,()=>{}),e.onBeforeMount(()=>{l.value.model==="standard"?c.value=!0:(c.value=!1,p())});function s(){return e.createVNode(Le,{class:"f-layout-editor-screen-resolution-selector-frame",items:n.value,modelValue:o.value,"onUpdate:modelValue":f=>o.value=f,onChange:u},null)}return()=>e.createVNode("div",{class:"f-layout-editor-screen-resolution-selector"},[e.createVNode("div",{class:"f-layout-editor-screen-resolution-selector-header"},[e.createVNode("div",{class:"f-layout-editor-screen-resolution-selector-form"},[e.createTextVNode("表单布局配置")])]),s(),e.createVNode("div",{class:"f-layout-editor-screen-resolution-selector-switch"},[e.createVNode(We,{class:"f-layout-editor-show-switch",modelValue:c.value,"onUpdate:modelValue":f=>c.value=f,onModelValueChanged:p},null),c.value?e.createVNode("div",{class:"f-layout-editor-show-switch-label"},[e.createTextVNode("标准模式")]):e.createVNode("div",{class:"f-layout-editor-show-switch-label"},[e.createTextVNode("自定义模式")])])])}}),Ue={currentScreenResolution:{type:String,default:""},switchInStandardMode:{type:Boolean,default:!1},currentArea:{type:Object,default:[]},twoDimensionalArray:{type:Array,default:[]}},Ge={item:{type:Object,default:{}},currentScreenResolution:{type:String,default:""},switchInStandardMode:{type:Boolean,default:!1}},Xe=e.defineComponent({name:"FColumnWidthView",props:Ge,emits:[],setup(t,a){const n=e.ref(t.item),l=e.ref(t.currentScreenResolution),o=e.computed(()=>`col-${n.value[`columnIn${l.value}`]}`);return e.watch([()=>t.item,()=>t.currentScreenResolution],([i,c],[u,p])=>{i!==u&&(n.value=i),c!==p&&(l.value=c)}),()=>e.createVNode("div",{class:o.value},[e.createVNode("div",{class:"f-layout-editor-column-width-view",title:n.value.label},[e.createVNode("div",{class:"f-layout-editor-column-width-view-label"},[n.value.label])])])}}),Ye=e.defineComponent({name:"FPreview",props:Ue,emits:["update:twoDimensionalArray"],setup(t,a){const n=e.ref(t.currentScreenResolution),l=e.ref(t.switchInStandardMode),o=e.ref(t.currentArea),i=e.ref(t.twoDimensionalArray),c=e.ref([]);e.watch([()=>t.currentArea,()=>t.switchInStandardMode,()=>t.currentScreenResolution],([r,d,b],[S,B,w])=>{r!==S&&(o.value=r),d!==B&&(l.value=d),b!==w&&(n.value=b)});function u(r,d){const b=[];let S=[];return r.forEach(B=>{d!==B.componentRow&&(d+=1,b.push(S),S=[]),S.push(B)}),b.push(S),b}function p(){const r=[];let d=1;return c.value.forEach(b=>{const S=u(b,d);d+=S.length,r.push(S)}),r}function s(){c.value=P.cloneDeep(i.value),c.value=p()}e.watch(()=>t.twoDimensionalArray,()=>{i.value=t.twoDimensionalArray,s()}),e.onMounted(()=>{s()});function f(){if(l.value)return"";const r=Array.from({length:12},()=>e.createVNode("div",{class:"col-1"},[e.createVNode("div",{class:"f-layout-editor-preview-customize-single-background"},[e.createTextVNode(" ")])]));return e.createVNode("div",{class:"f-layout-editor-preview-customize-whole-background"},[r])}return()=>e.createVNode("div",{class:"f-layout-editor-preview f-utils-fill-flex-column"},[e.createVNode("div",{class:"f-layout-editor-preview-header"},[e.createTextVNode("预览区")]),f(),e.createVNode("div",{class:"f-layout-editor-preview-view f-utils-overflow-xhya"},[e.createVNode("div",{class:"f-layout-editor-preview-row-group"},[c.value.map(r=>{var d,b;return((d=r[0][0])==null?void 0:d.group.toString())===((b=o.value[0])==null?void 0:b.id)&&r.map(S=>e.createVNode("div",{class:"f-layout-editor-row"},[S.map(B=>e.createVNode(Xe,{item:B,"onUpdate:item":w=>B=w,currentScreenResolution:n.value,switchInStandardMode:l.value},null))]))})])])])}}),_e={currentScreenResolution:{type:String,default:""},switchInStandardMode:{type:Boolean,default:!1},originalData:{type:Array,default:[]},originalDataCopy:{type:Array,default:[]},defaultStates:{type:Object,default:{}},onTwoDimensionalArrayChanged:{type:Function,default:()=>{}},onOriginalDataChanged:{type:Function,default:()=>{}}};function Je(t,a){const n=e.ref(-1),l=e.ref(!1);function o(r){if(r.target.offsetParent){const d=r.target.offsetParent,b=d.offsetWidth-r.target.offsetWidth/2-4,S=d.offsetHeight/2;r.dataTransfer&&r.dataTransfer.setDragImage(d,b,S)}}function i(r){if(r){const d=t.value.findIndex(b=>b.label===r.label);setTimeout(()=>{n.value=d,l.value=!0,r.moving=!0})}}function c(r,d){r.stopPropagation(),o(r),i(d)}function u(r){const d=t.value.findIndex(b=>b.label===r.label);if(n.value!==d){const b=t.value[n.value],S=t.value;S.splice(n.value,1),S.splice(d,0,b),n.value=d,a&&a()}}function p(r,d){r.preventDefault(),u(d)}function s(r){r.preventDefault(),r.dataTransfer&&(r.dataTransfer.dropEffect="move")}function f(r,d){d&&(d.moving=!1),l.value=!1}return{dragstart:c,dragenter:p,dragover:s,dragend:f,isDragging:l}}const Qe=new Map([["appearance",Q]]),Ze={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/combo-list.schema.json",title:"combo-list",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a combo list",type:"string"},type:{description:"The type string of number combo list component",type:"string",default:"combo-list"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disabled:{description:"",type:"boolean",default:!1},enableClear:{description:"",type:"boolean",default:!1},editable:{description:"",type:"boolean",default:!1},enableLinkLabel:{description:"",type:"boolean",default:!1},label:{description:"",type:"string",default:""},lableWidth:{description:"",type:"number"},placeholder:{description:"",type:"string",default:"请选择"},idField:{description:"",type:"string",default:"id"},valueField:{description:"",type:"string",default:"id"},titleField:{description:"",type:"string",default:"name"},textField:{description:"",type:"string",default:"name"},dataSourceType:{description:"",type:"string",default:"static"},data:{description:"",type:"array"},remote:{description:"",type:"string"},readonly:{description:"",type:"boolean",default:!1},required:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},textAlign:{description:"",type:"string",enum:["left","middle","right"],default:"left"},multiSelect:{description:"",type:"boolean",default:!1},maxLength:{description:"",type:"number",default:null},visible:{description:"",type:"boolean",default:!0},onBlur:{description:"",type:"string",default:""},onClickLinkLabel:{description:"",type:"sting",default:""},maxHeight:{description:"",type:"number",default:350},minPanelWidth:{description:"",type:"number",default:160},popupOnClick:{description:"",type:"boolean",default:!0},separator:{description:"",type:"string",default:","}},required:["type"],ignore:["id","appearance","binding","visible"]};function Ke(t,a,n){return a}const le={id:{type:String},data:{type:Array,default:[]},disabled:{default:!1,type:Boolean},dropDownIcon:{type:String,default:'<span class="f-icon f-icon-arrow-60-down"></span>'},editable:{default:!1,type:Boolean},enableClear:{default:!0,type:Boolean},enableSearch:{type:Boolean,default:!1},enableTitle:{default:!0,type:Boolean},fitEditor:{default:!1,type:Boolean},forcePlaceholder:{default:!1,type:Boolean},hidePanelOnClear:{default:!0,type:Boolean},idField:{default:"id",type:String},mapFields:{type:Object},maxHeight:{default:350,type:Number},maxLength:{type:Number},multiSelect:{type:Boolean,default:!1},modelValue:{},placeholder:{type:String,default:"请选择"},placement:{type:String,default:"auto"},readonly:{default:!1,type:Boolean},remote:{default:null,type:Object},remoteSearch:{default:!1,type:Boolean},separator:{default:",",type:String},tabIndex:{type:Number,default:-1},textField:{default:"name",type:String},titleField:{default:"name",type:String},valueField:{default:"id",type:String},viewType:{default:"tag",type:String},change:{type:Function,default:()=>{}},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1},autoHeight:{type:Boolean,default:!0},beforeOpen:{type:Function,default:null},searchOption:{type:[Boolean,Function],default:!1},enableHighlightSearch:{type:Boolean,default:!0},minPanelWidth:{type:Number,default:160},popupOnClick:{type:Boolean,default:!0}};Object.assign({},le,{readonly:{}}),J(le,Ze,Qe,Ke);const et={dataSource:{type:Array,default:[]},enableSearch:{type:Boolean,default:!1},idField:{type:String,default:"id"},multiSelect:{type:Boolean,default:!1},selectedValues:{type:String,default:""},separator:{type:String,default:","},textField:{type:String,default:"name"},titleField:{type:String,default:"name"},width:{type:Number},maxHeight:{type:Number},valueField:{type:String,default:"id"},onSelectionChange:{type:Function,default:()=>{}},searchOption:{type:[Boolean,Function],default:!1},enableHighlightSearch:{type:Boolean,default:!0}},tt=e.defineComponent({name:"FComboListContainer",props:et,emits:["selectionChange"],setup(t,a){const n=e.ref(),l=e.ref(t.dataSource),o=e.ref([]),i=e.ref(t.separator),c=e.ref(t.width),u=e.ref(t.maxHeight),p=e.ref(String(t.selectedValues).split(i.value)),s=e.computed(()=>t.multiSelect),f=e.computed(()=>({enableSelectRow:!0,multiSelect:t.multiSelect,multiSelectMode:"OnCheckAndClick",showCheckbox:s.value,showSelectAll:!1,showSelection:!0}));e.watch(t.dataSource,()=>{l.value=t.dataSource}),e.computed(()=>t.enableSearch?"SearchBar":"ContentHeader");const r=e.computed(()=>{const w={};return c.value!==void 0&&(w.width=`${c.value}px`),u.value!==void 0&&u.value>0&&(w.maxHeight=`${u.value}px`),w});function d(w){n.value.search(w)}function b(w){o.value=w.map(M=>Object.assign({},M)),p.value=w.map(M=>M[t.idField]),a.emit("selectionChange",o.value)}function S(w){if(t.enableHighlightSearch)return;let M=[];const{searchOption:$}=t;typeof $=="function"?M=l.value.filter(x=>$(w,x)):M=l.value.filter(x=>x[t.valueField].indexOf(w)>-1||x[t.textField].indexOf(w)>-1),n.value.updateDataSource(M)}e.watch([()=>t.selectedValues],([w])=>{t.multiSelect?p.value=w.split(i.value):p.value=[w]});function B(w){n.value.activeRowById(w)}return e.onMounted(()=>{var w,M;if(!t.multiSelect){const $=(w=p.value)==null?void 0:w[0];let x=$;if(!P.isUndefined($)){const j=typeof $,F=typeof((M=l.value[0])==null?void 0:M[t.valueField||t.idField]);F==="number"&&j!==F&&(x=Number($)),F==="boolean"&&j!==F&&(x=$==="true"?!0:$==="false"?!1:$),B(x)}}}),a.expose({search:d,activeRowById:B}),()=>e.createVNode("div",{class:"f-combo-list-container",style:r.value},[e.createVNode(xe,{ref:n,size:"small",itemClass:"f-combo-list-item",itemContentClass:"text-truncate",header:"ContentHeader",headerClass:"f-combo-list-search-box",data:l.value,idField:t.idField,textField:t.textField,titleField:t.titleField,multiSelect:t.multiSelect,selection:f.value,enableHighlightSearch:t.enableHighlightSearch,selectionValues:p.value,onSelectionChange:b,onAfterSearch:S},null)])}});function at(t){const a=e.ref(""),n=e.ref(t.modelValue),l=e.ref(t.data||[]),o=e.ref(t.editable);function i(r){const d=t.multiSelect?String(r).split(t.separator):[String(r)],b=d.map(w=>[w,!0]),S=new Map(b);return l.value.filter(w=>S.has(String(w[t.valueField]))).sort((w,M)=>{const $=d.indexOf(w[t.valueField]),x=d.indexOf(M[t.valueField]);return $-x})}function c(r){const d=i(r).map(b=>b[t.textField]).join(t.separator);a.value=o.value?d||r:d}function u(r){if(t.multiSelect){const d=r.split(t.separator).map(S=>[S,!0]),b=new Map(d);return l.value.filter(S=>b.has(S[t.textField]))}return l.value.filter(d=>""+d[t.textField]===r)}function p(r){const d={};return d[t.idField]=r,d[t.textField]=r,[d]}function s(r){let d=u(r);const b=d&&d.length>0;return o.value&&!b&&(d=p(r)),d}function f(){const{url:r,method:d="GET",headers:b={},body:S=null}=t.remote,B=d.toLowerCase()==="get"?{method:d,headers:b}:{method:d,headers:b,body:S};let w=!1;fetch(r,B).then(M=>{var x,j;if(M.status===200)return w=!!((j=(x=M.headers)==null?void 0:x.get("content-type"))!=null&&j.includes("application/json")),w?M.text():M.json();throw new Error(M.statusText)}).then(M=>{l.value=w?JSON.parse(M):M}).catch(M=>{console.error(M)})}return t.remote&&f(),e.watch(()=>t.data,()=>{l.value=t.data}),e.watch([l],([r])=>{if(t.modelValue!=null){const d=r.find(b=>b[t.valueField]===t.modelValue);d&&(a.value=d[t.textField])}}),e.watch(()=>t.modelValue,r=>{n.value=r,c(r)}),c(t.modelValue),{dataSource:l,displayText:a,editable:o,modelValue:n,getItemsByDisplayText:u,getItemsByValue:i,getSelectedItemsByDisplayText:s}}const nt=e.defineComponent({name:"FComboList",props:le,emits:["clear","update:modelValue","change","input"],setup(t,a){const n=e.ref(),l=e.ref(),o=e.ref(t.disabled||t.readonly),i=e.ref(t.enableClear),c=e.ref(t.enableSearch),u=e.ref(t.readonly),{dataSource:p,displayText:s,editable:f,modelValue:r,getSelectedItemsByDisplayText:d,getItemsByDisplayText:b}=at(t),S=e.computed(()=>t.multiSelect),B=e.computed(()=>l.value?l.value.elementRef.getBoundingClientRect().width:0);function w(){!S.value&&l.value&&l.value.hidePopup()}function M(y){s.value=y.map(D=>D[t.textField]).join(t.separator);let V="";y.length===1?V=y[0][t.valueField]:V=y.map(D=>D[t.valueField]).join(t.separator),r.value!==V&&(r.value=V,a.emit("update:modelValue",r.value),a.emit("change",y,r.value))}function $(){const y=d(s.value);M(y)}function x(){u.value||s.value}function j(y){var V;r.value="",(V=n.value)==null||V.activeRowById(""),a.emit("update:modelValue",""),a.emit("change",[],""),a.emit("clear")}function F(y){var V,D;t.enableSearch?((V=n.value)==null||V.search(y),(D=n.value)==null||D.activeRowById(y)):(r.value=y,s.value=y,a.emit("update:modelValue",r.value),a.emit("change",[y],y))}function O(y){if(t.multiSelect){const V=b(y),q=V.map(T=>T[t.idField||t.valueField]).join(t.separator);r.value!==q&&(r.value=q,a.emit("update:modelValue",r.value),a.emit("change",V,r.value))}}function m(){return s.value}function h(y){F(y),a.emit("input",y)}function g(){l.value.hidePopup()}return a.expose({getDisplayText:m,hidePopup:g}),e.watch([()=>t.disabled,()=>t.editable,()=>t.enableClear,()=>t.enableSearch,()=>t.readonly],([y,V,D,q,T])=>{o.value=y,f.value=V,i.value=D,c.value=q,u.value=T}),()=>e.createVNode(Ne,{ref:l,id:t.id,disable:o.value,readonly:u.value,forcePlaceholder:t.forcePlaceholder,editable:f.value,buttonContent:t.dropDownIcon,placeholder:t.placeholder,enableClear:i.value,maxLength:t.maxLength,tabIndex:t.tabIndex,enableTitle:t.enableTitle,multiSelect:t.multiSelect,inputType:t.multiSelect?t.viewType:"text",modelValue:s.value,"onUpdate:modelValue":y=>s.value=y,focusOnCreated:t.focusOnCreated,selectOnCreated:t.selectOnCreated,onClear:j,onClick:x,onChange:O,onBlur:$,onInput:h,beforeOpen:t.beforeOpen,placement:t.placement,popupMinWidth:t.minPanelWidth,popupClass:"f-combo-list-wrapper",popupOnClick:t.popupOnClick},{default:()=>[e.createVNode(tt,{ref:n,idField:t.idField,valueField:t.valueField,textField:t.textField,titleField:t.titleField,dataSource:p.value,selectedValues:r.value,separator:t.separator,multiSelect:t.multiSelect,enableSearch:c.value,maxHeight:t.maxHeight,enableHighlightSearch:t.enableHighlightSearch,width:t.fitEditor?B.value:void 0,onSelectionChange:y=>{M(y),w()}},null)]})}}),lt={currentScreenResolution:{type:String,default:""},field:{type:Object,default:{}},switchInStandardMode:{type:Boolean,default:!1},fieldChanged:{type:Function,default:()=>{}}},ot=new Map([["appearance",Q]]);function rt(t,a,n){return a}const it={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/radio-button.schema.json",title:"radio-button",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for radio-button",type:"string"},type:{description:"The type string of radio-button",type:"string",default:"radio-button"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disable:{type:"string",default:!1},editable:{description:"",type:"boolean",default:!0},placeholder:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},require:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},visible:{description:"",type:"boolean",default:!0}},required:["id","type"]},st={title:"radio-button",description:"A Farris Component",type:"object",categories:{basic:{description:"Basic Infomation",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"waiting for modification",enum:[]}}}}}},ve={enumData:{type:Array,default:[{text:"1",active:!0}]},suffixValue:{type:String,default:""},onSelectedValueChanged:{type:Function,default:()=>{}}};J(ve,it,ot,rt,st);const ct=e.defineComponent({name:"FRadioButton",props:ve,emits:["selectedValueChanged"],setup(t,a){const n=e.ref(t.enumData);function l(i,c){if(i.currentTarget.classList.value="btn btn-secondary active",i.currentTarget.tagName.toLowerCase()==="label"){const{currentTarget:u}=i,p=u.parentElement;Array.from(p.querySelectorAll("label")).filter(f=>f!==u).forEach(f=>f.classList.remove("active"))}a.emit("selectedValueChanged",c)}function o(i){return`${i.text}${t.suffixValue}`}return e.watch(()=>t.enumData,(i,c)=>{i!==c&&(n.value=t.enumData)}),()=>e.createVNode("div",{class:"f-radio-button"},[e.createVNode("div",{class:["farris-input-wrap"]},[n.value.map((i,c)=>e.createVNode(e.Fragment,null,[e.createVNode("label",{class:i.active?"btn btn-secondary active":"btn btn-secondary",onClick:u=>l(u,i)},[e.createVNode("span",{class:"f-radio-button-text"},[o(i)])])]))])])}}),ut=new Map([["appearance",Q]]);function dt(t,a,n){return a}const ft={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/rate.schema.json",title:"rate",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for rate",type:"string"},type:{description:"The type string of rate",type:"string",default:"rate"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disable:{type:"string",default:!1},editable:{description:"",type:"boolean",default:!0},placeholder:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},require:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},visible:{description:"",type:"boolean",default:!0}},required:["id","type"],ignore:["id","appearance","binding"]},pt={title:"rate",description:"A Farris Component",type:"object",categories:{basic:{description:"Basic Infomation",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"waiting for modification",enum:[]}}}}}},be={size:{type:String,default:"large"},enableHalf:{type:Boolean,default:!1},enableClear:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},pointSystem:{type:Number,default:5},lightColor:{type:String,default:""},darkColor:{type:String,default:""},iconClass:{type:String,default:"f-icon-star"},numOfStar:{type:Number,default:5},toolTipDisabled:{type:Boolean,default:!0},toolTipContents:{type:Array,default:["很不满意","不满意","一般","满意","非常满意"]},enableScore:{type:Boolean,default:!0},enableSatisfaction:{type:Boolean,default:!1},value:{type:Number,default:0},modelValue:{type:Number,default:0}};J(be,ft,ut,dt,pt);const mt=e.defineComponent({name:"FRate",props:be,emits:["selectedValue","update:modelValue"],setup(t,a){const n=e.ref(t.size),l=e.ref(t.enableHalf),o=e.ref(t.enableClear),i=e.ref(t.disabled),c=e.ref(t.pointSystem),u=e.ref(t.lightColor),p=e.ref(t.darkColor),s=e.ref(t.iconClass),f=e.ref(t.numOfStar),r=e.ref(t.toolTipDisabled),d=e.ref(t.toolTipContents),b=e.ref(t.enableScore),S=e.ref(t.enableSatisfaction);let B;const w=e.ref(0),M=e.ref(0),$=e.ref(0),x=e.ref(t.modelValue);let j=1,F,O,m;const h=4;e.onMounted(()=>{});function g(){const v=f.value;m=[];for(let R=1;R<=v;R++)m.push({id:R})}function y(){let v;l.value?v=Math.ceil(x.value/j):v=x.value,M.value=(B*x.value+Math.floor(x.value)*h)/j,F=d.value[v-1]}function V(){switch(n.value){case"small":B=14;break;case"middle":B=16;break;case"large":B=18;break;case"extraLarge":B=24;break}g(),f.value&&(j=c.value/f.value),x.value&&y()}V();function D(v){return v.className.indexOf("f-icon")!==-1}function q(){return w.value===M.value&&o.value&&M.value!==0?(M.value=0,x.value=0,O=null,w.value=0,$.value=0,a.emit("selectedValue",x.value),a.emit("update:modelValue",x.value),!0):!1}function T(v,R,E){if(v.movementX||v.movementY){if(i.value)return;S.value&&(F=d.value[R-1]),v.offsetX<B/2&&l.value===!0?(w.value=B*R-B/2+h*(R-1),$.value=j*R-j/2):(w.value=B*R+h*(R-1),$.value=j*R)}if(E===!0){if(q())return;x.value=$.value,M.value=w.value,O=F,a.emit("update:modelValue",x.value),a.emit("selectedValue",x.value)}}function k(v,R){var E;if(D(v.target)&&v.target){const W=parseInt((E=v.target)==null?void 0:E.id);T(v,W,R)}}const I=e.computed(()=>$.value?$.value+"分":x.value+"分"),G=e.computed(()=>({width:(w.value||M.value)+"px"}));function N(){w.value=0}return e.watch(()=>t.modelValue,v=>{x.value=v,y()}),()=>e.createVNode("div",{class:"farris-star-rating",onMouseover:e.withModifiers(v=>k(v,!1),["prevent"]),onMousemove:e.withModifiers(v=>k(v,!1),["prevent"]),onMouseleave:e.withModifiers(v=>N(),["prevent"]),onClick:e.withModifiers(v=>k(v,!0),["prevent"])},[e.createVNode("div",{class:"star-light-area",style:G.value},[m.map(v=>e.createVNode("span",{class:["f-icon default-light-color ",s.value,{"f-star-sm":n.value==="small"},{"f-star-md":n.value==="middle"},{"f-star-lg":n.value==="large"},{"f-star-exlarge":n.value==="extraLarge"},{disabled:r.value}],id:v.id,style:{color:u.value}},null))]),e.createVNode("div",{class:["star-dark-area",{small:n.value==="small"},{middle:n.value==="middle"},{large:n.value==="large"}]},[m.map(v=>e.createVNode("span",{class:["f-icon default-dark-color",s.value,{"f-star-sm":n.value==="small"},{"f-star-md":n.value==="middle"},{"f-star-lg":n.value==="large"},{"f-star-exlarge":n.value==="extraLarge"}],id:v.id,style:{color:p.value}},null))]),e.createVNode("div",{class:["f-utils-fill",{"font-small":n.value==="small"},{"font-middle":n.value==="middle"},{"font-large":n.value==="large"},{"font-exlarge":n.value==="extraLarge"}]},[b.value&&e.createVNode("span",null,[e.createTextVNode(" "),I.value,e.createTextVNode(" ")]),S.value&&(O||F)&&e.createVNode("span",null,[e.createTextVNode(" "),F||O])])])}}),ht=e.defineComponent({name:"FColumnWidthEditor",props:lt,emits:["fieldChanged"],setup(t,a){const n={SM:["1"],MD:["1","2"],LG:["1","2","3","4"],EL:["1","2","3","4","5","6"]},l=e.ref(t.currentScreenResolution),o=e.ref(t.field),i=e.ref(t.switchInStandardMode),c=e.ref(),u=e.ref(""),p=e.ref(),s=e.ref("customize"),f=e.ref(),r=e.inject("ResponseLayoutEditorDraggableComposition"),{dragstart:d,dragenter:b,dragover:S,dragend:B}=r;function w(){c.value=n==null?void 0:n[l.value],i.value?(u.value=`displayWidthIn${l.value}`,s.value=`${o.value[u.value]}`):(u.value=`columnIn${l.value}`,f.value=o.value[u.value])}function M(g){if(i.value===!0){const y=Number(g==null?void 0:g.text);p.value=y;const V=o.value[`columnIn${l.value}`]/o.value[`displayWidthIn${l.value}`];o.value[`columnIn${l.value}`]=y*V,o.value[`displayWidthIn${l.value}`]=Number(y),a.emit("fieldChanged",o.value)}}function $(g){f.value=g;const y=o.value[`columnIn${l.value}`]/o.value[`displayWidthIn${l.value}`];o.value[`columnIn${l.value}`]=f.value,o.value[`displayWidthIn${l.value}`]=f.value/y,a.emit("fieldChanged",o.value)}function x(){return e.createVNode(mt,{enableHalf:!0,size:"extraLarge",pointSystem:12,numOfStar:6,lightColor:"#5D89FE",darkColor:"#e7e9f3",iconClass:"f-icon-column-rectangle",modelValue:f.value,"onUpdate:modelValue":g=>f.value=g,enableScore:!1,onSelectedValue:()=>$(f.value)},null)}function j(){const g=[];c.value=n==null?void 0:n[l.value];const y=o.value[`displayWidthIn${l.value}`];return c.value.forEach(V=>{const D={text:V,active:y.toString()===V};g.push(D)}),g}function F(){const g=j();return e.createVNode(ct,{enumData:g,suffixValue:"列",onSelectedValueChanged:M},{default:()=>[e.createTextVNode(" ")]})}function O(){var g;if(((g=o==null?void 0:o.value)==null?void 0:g.showTopBorder)===1)return e.createVNode("div",{class:"f-layout-editor-column-width-editor-row"},[e.createVNode("span",{class:"f-layout-editor-column-width-editor-row-left"},null),e.createVNode("span",{class:"f-layout-editor-column-width-editor-row-middle"},[e.createTextVNode("第"),o.value.componentRow,e.createTextVNode("行")]),e.createVNode("span",{class:"f-layout-editor-column-width-editor-row-right"},null)])}function m(){return i.value?e.createVNode("div",{class:"f-column-width-editor-switch-standard"},[e.createVNode("div",{class:"f-layout-editor-column-width-editor-click-button"},[F()])]):e.createVNode("div",{class:"f-column-width-editor-switch-customize",onDragenter:g=>b(g,o.value),onDragend:g=>B(g,o.value),onDragover:g=>S(g)},[e.createVNode("div",{class:"f-layout-editor-column-width-editor-rectangle"},[x(),e.createVNode("div",{class:"f-layout-editor-rate-show-column"},[f.value,e.createTextVNode("列")]),e.createVNode("span",{class:"f-layout-editor-drag-handler f-icon f-icon-drag-vertical",draggable:"true",onDragstart:g=>d(g,o.value)},null)])])}function h(){var g,y;return e.createVNode("div",{class:"f-layout-editor-column-width-editor-component"},[e.createVNode("div",{class:"f-layout-editor-column-width-editor-label",title:(g=o==null?void 0:o.value)==null?void 0:g.label},[(y=o==null?void 0:o.value)==null?void 0:y.label]),m()])}return e.watch(()=>[t.field,t.switchInStandardMode,t.currentScreenResolution],([g,y,V],[D,q,T])=>{V!==T&&(l.value=V,c.value=n[l.value],w()),y!==q&&(i.value=y),i.value===!1&&w(),g!==D&&(o.value=g)}),e.onMounted(()=>{w()}),()=>e.createVNode("div",{class:"f-layout-editor-column-width-editor"},[O(),h()])}}),gt=e.defineComponent({name:"FFieldList",props:_e,emits:["update:currentArea","twoDimensionalArrayChanged","originalDataChanged"],setup(t,a){const n=e.ref(t.currentScreenResolution),l=e.ref(t.switchInStandardMode),o=e.ref(t.originalData),i=e.ref(t.originalDataCopy),c=e.ref(t.defaultStates),u=e.ref(""),p=e.ref([]),s=e.ref(t.currentArea),f=e.ref(0),r=e.ref(),d=e.ref(0),b=e.ref("1"),S=e.ref([]);function B(){const T=[];return o.value.forEach(k=>{T.indexOf(k.group)===-1&&T.push(k.group)}),T}function w(){b.value=c.value.defaultGroupNumber.toString(),u.value=`区域${b.value}`,s.value=[p.value[Number(b.value)-1]],a.emit("update:currentArea",s.value)}function M(){var k;const T=B();for(let I=0;I<T.length;I++){const G={id:(k=T[I])==null?void 0:k.toString(),label:"区域"+T[I]};p.value.push(G)}w()}function $(){let T=[];r.value=[];let k=1;o.value.forEach(I=>{I.group===k||(k+=1,r.value.push(T),T=[]),T.push(I)}),r.value.push(T)}function x(T,k){let G=12;return f.value=1+k,T.forEach(N=>{N.showTopBorder=0;const v=N[`columnIn${n.value}`];G>=v?(N.componentRow=f.value,G-=v):(f.value+=1,N.componentRow=f.value,G=12-v,N.showTopBorder=1)}),T[0].showTopBorder=1,T}function j(T){let k=[];for(const I of T)k=k.concat(I);o.value=P.cloneDeep(k),d.value=0}function F(){r.value[s.value[0].id-1]=P.cloneDeep(S.value);const T=[];d.value=0,r.value.forEach(k=>{const I=x(k,d.value);T.push(I),d.value=I[I.length-1].componentRow}),j(T)}function O(){$();const T=[];return d.value=0,r.value.forEach(k=>{const I=x(k,d.value);T.push(I),d.value=I[I.length-1].componentRow}),a.emit("twoDimensionalArrayChanged",r.value),j(T),o.value}function m(){S.value=[],o.value.forEach(T=>{T.group===Number(s.value[0].id)&&S.value.push(T)})}function h(){o.value=P.cloneDeep(O()),a.emit("originalDataChanged",o.value)}function g(T){S.value.forEach(k=>{k.id===T.id&&Object.assign(k,T)}),F(),h(),m()}function y(T){for(let k=0;k<T.length;k++)s.value=[{id:T[k].id,label:T[k].label}];a.emit("update:currentArea",s.value),m(),F()}function V(){return e.createVNode("div",{class:"f-layout-editor-field-list-top"},[e.createVNode("div",{class:"f-layout-editor-field-list-header"},[e.createTextVNode("组件列表")]),e.createVNode("div",{class:"f-layout-editor-choose-group"},[e.createVNode(nt,{modelValue:b.value,"onUpdate:modelValue":T=>b.value=T,placeholder:"当前可编辑组",enableClear:!1,"id-field":"id","text-field":"label",data:p.value,editable:!1,onChange:y},null)])])}function D(){return e.createVNode("div",{class:"f-layout-editor-field-list-content f-utils-overflow-xhya"},[S.value.map(T=>e.createVNode(ht,{key:T.label,currentScreenResolution:n.value,field:T,"onUpdate:field":k=>T=k,switchInStandardMode:l.value,"onUpdate:switchInStandardMode":k=>l.value=k,onFieldChanged:g},null))])}const q=Je(S,()=>{F(),h(),m()});return e.provide("ResponseLayoutEditorDraggableComposition",q),e.watch(()=>t.currentArea,(T,k)=>{T!==k&&(s.value=t.currentArea,m())}),e.watch(s,(T,k)=>{T!==k&&m()}),e.watch(()=>t.currentGroup,(T,k)=>{T!==k&&(u.value=t.currentGroup)}),e.watch(()=>t.currentScreenResolution,(T,k)=>{T!==k&&(n.value=t.currentScreenResolution,h(),$(),s.value[0]&&(S.value=P.cloneDeep(r.value[Number(s.value[0].id)-1])))}),e.watch(()=>t.switchInStandardMode,(T,k)=>{T!==k&&(l.value=t.switchInStandardMode,o.value=P.cloneDeep(i.value))}),e.watch(c,(T,k)=>{T!==k&&h()}),e.onBeforeMount(()=>{M(),O(),m()}),()=>e.createVNode("div",{class:"f-layout-editor-field-list f-utils-fill-flex-column"},[l.value?e.createVNode("div",{class:"f-layout-editor-field-list-standard f-utils-fill-flex-column"},[V(),D()]):e.createVNode("div",{class:"f-layout-editor-field-list-customize f-utils-fill-flex-column"},[V(),D()])])}}),Z=e.defineComponent({name:"FResponseLayoutEditor",props:de,emits:["close","submit"],setup(t,a){const n=e.ref(t.initialState),l=e.ref(),o=e.ref(),i=e.ref(""),c=e.ref(""),u=e.ref(!0),p=e.ref([{id:"1",label:"区域1"}]),s=e.ref([]),f=e.ref();e.ref(t.width),e.ref(t.height),e.watch(()=>t.initialState,m=>{n.value=m}),e.watch([()=>t.currentArea,()=>t.switchInStandardMode],([m,h],[g,y])=>{m!==g&&(p.value=m),h!==y&&(u.value=h)});function r(m){i.value=m}function d(m){c.value=m}function b(m){u.value=m}function S(m){p.value=[].concat(m)}function B(m){l.value=P.cloneDeep(m)}function w(m){s.value=m}function M(){a.emit("close")}function $(){a.emit("submit",l.value)}function x(){return e.createVNode(gt,{class:"f-utils-fill-flex-column",defaultStates:o.value,originalDataCopy:f.value,currentScreenResolution:c.value,"onUpdate:currentScreenResolution":m=>c.value=m,originalData:l.value,"onUpdate:originalData":m=>l.value=m,switchInStandardMode:u.value,"onUpdate:switchInStandardMode":m=>u.value=m,currentArea:p.value,"onUpdate:currentArea":m=>p.value=m,onCurrentAreaChanged:S,onTwoDimensionalArrayChanged:w,onOriginalDataChanged:B},null)}function j(){return e.createVNode(Ye,{class:"f-utils-fill-flex-column",currentArea:p.value,"onUpdate:currentArea":m=>p.value=m,currentScreenResolution:c.value,"onUpdate:currentScreenResolution":m=>c.value=m,switchInStandardMode:u.value,twoDimensionalArray:s.value,"onUpdate:twoDimensionalArray":m=>s.value=m},null)}const F=e.computed(()=>u.value?"f-layout-editor-left-standard f-utils-fill-flex-column":"f-layout-editor-left-customize f-utils-fill-flex-column"),O=e.computed(()=>u.value?"f-layout-editor-right-standard f-utils-fill-flex-column":"f-layout-editor-right-customize f-utils-fill-flex-column");return e.onBeforeMount(()=>{l.value=P.cloneDeep(n.value.importData),f.value=P.cloneDeep(n.value.importData),o.value=n.value.defaultState,i.value="中等屏幕",c.value="MD"}),m=>e.createVNode("div",{class:"f-layout-editor f-utils-flex-column"},[e.createVNode("div",{class:"f-layout-editor-top"},[e.createVNode(qe,{defaultStates:o.value,onScreenNameChanged:r,onCurrentScreenResolutionChanged:d,onSwitchInStandardModeChanged:b},null)]),e.createVNode("div",{class:"f-layout-editor-content f-utils-fill"},[e.createVNode("div",{class:"f-layout-editor-left f-utils-fill-flex-column"},[e.createVNode("div",{class:F.value},[x()])]),e.createVNode("div",{class:"f-layout-editor-right f-utils-fill-flex-column"},[e.createVNode("div",{class:O.value},[j()])])]),e.createVNode("div",{class:"f-layout-editor-bottom"},[e.createVNode("div",{class:"f-layout-editor-button"},[e.createVNode("div",{class:"f-layout-editor-cancel-btn",onClick:M},[e.createVNode("span",{class:"f-layout-editor-text-cancel"},[e.createTextVNode("取消")])]),e.createVNode("div",{class:"f-layout-editor-sure-btn",onClick:$},[e.createVNode("span",{class:"f-layout-editor-text-sure"},[e.createTextVNode("确认")])])])])])}}),yt=new Map([["appearance",Q]]);function vt(t,a,n,l){const o=t.getSchemaByType("section");return o.id=`${l}-section`,o.appearance={class:"f-section-form f-section-in-main"},o.mainTitle="标题",o.contents=[a],o}function bt(t,a,n,l){const o=t.getSchemaByType("component");return o.id=`${l}-component`,o.componentType="form-col-1",o.appearance={class:"f-struct-form f-struct-wrapper"},o.contents=[a],o}function wt(t,a,n){a.appearance={class:"f-form-layout farris-form farris-form-controls-inline"};const l=vt(t,a,n,a.id);return bt(t,l,n,a.id)}const Ct={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/response-layout-editor-setting.schema.json",title:"response-layout-editor-setting",description:"A Farris Data Collection Component",type:"object",properties:{id:{description:"The unique identifier for response layout editor",type:"string"},type:{description:"The type string of response layout editor component",type:"string",default:"response-layout-editor-setting"},initialState:{description:"",type:"object",default:{}},height:{description:"",type:"number",default:0},width:{description:"",type:"number",default:0},beforeOpen:{description:"",type:"function"}},required:["id","type"]},St={title:"response-form",description:"A Farris Component",type:"object",categories:{basic:{description:"Basic Infomation",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"waiting for modification",enum:[]}}}}}},oe={initialState:{type:Object},height:{type:Number,default:0},width:{type:Number,default:0},modelValue:{type:Object},beforeOpen:{type:Object}},we=J(oe,Ct,yt,wt,St),Vt={allowClickMaskToClose:{type:Boolean,default:!1},beforeClose:{type:Function,default:()=>!0},class:{type:String,default:""},maskClass:{type:String,default:""},title:{type:String,default:""},width:{type:Number,default:500},height:{type:Number,default:320},buttons:{type:Array,default:[]},modelValue:{type:Boolean,default:!1},mask:{type:Boolean,default:!0},showHeader:{type:Boolean,default:!0},showButtons:{type:Boolean,default:!0},fitContent:{type:Boolean,default:!0},showCloseButton:{type:Boolean,default:!0},showMaxButton:{type:Boolean,default:!1},minHeight:{type:Number},maxHeight:{type:Number},minWidth:{type:Number},maxWidth:{type:Number},containment:{type:Object,default:null},resizeable:{type:Boolean,default:!1},draggable:{type:Boolean,default:!1},dragHandle:{type:Object,default:null},closedCallback:{type:Function,default:null},resizeHandle:{type:Function,default:null},render:{type:Function,default:null},acceptCallback:{type:Function,default:null},rejectCallback:{type:Function,default:null},enableEsc:{type:Boolean,default:!0},enableEnter:{type:Boolean,default:!1},dialogType:{type:String,default:""},src:{type:String,default:""},footerHeight:{type:Number,default:60}};class H{constructor(a,n){this.x=a,this.y=n}static getTransformInfo(a){const l=window.getComputedStyle(a).getPropertyValue("transform").replace(/[^-\d,]/g,"").split(",");if(l.length>=6){const o=parseInt(l[4],10),i=parseInt(l[5],10);return{x:o,y:i}}return{x:0,y:0}}static fromEvent(a,n=null){if(this.isMouseEvent(a))return new H(a.clientX,a.clientY);if(n===null||a.changedTouches.length===1)return new H(a.changedTouches[0].clientX,a.changedTouches[0].clientY);for(let l=0;l<a.changedTouches.length;l++)if(a.changedTouches[l].target===n)return new H(a.changedTouches[l].clientX,a.changedTouches[l].clientY)}static isMouseEvent(a){return Object.prototype.toString.apply(a).indexOf("MouseEvent")===8}static isIPosition(a){return!!a&&"x"in a&&"y"in a}static getCurrent(a){const n=new H(0,0);if(window){const l=window.getComputedStyle(a);if(l){const o=parseInt(l.getPropertyValue("left"),10),i=parseInt(l.getPropertyValue("top"),10);n.x=isNaN(o)?0:o,n.y=isNaN(i)?0:i}return n}return null}static copy(a){return new H(0,0).set(a)}get value(){return{x:this.x,y:this.y}}add(a){return this.x+=a.x,this.y+=a.y,this}subtract(a){return this.x-=a.x,this.y-=a.y,this}multiply(a){this.x*=a,this.y*=a}divide(a){this.x/=a,this.y/=a}reset(){return this.x=0,this.y=0,this}set(a){return this.x=a.x,this.y=a.y,this}}class Y{constructor(a,n){this.width=a,this.height=n}static getCurrent(a){const n=new Y(0,0);if(window){const l=window.getComputedStyle(a);return l&&(n.width=parseInt(l.getPropertyValue("width"),10),n.height=parseInt(l.getPropertyValue("height"),10)),n}return null}static copy(a){return new Y(0,0).set(a)}set(a){return this.width=a.width,this.height=a.height,this}}function xt(t,a){const n=e.ref(),l=e.ref(),o=e.ref(),i=e.ref(),c=e.ref(),u=e.ref(),p=e.ref(),s=e.ref(),f=e.ref(),r=e.ref(),d=e.ref(),b=e.ref(t.resizeable),S=e.ref(),B=e.ref(t.draggable),w=e.ref(!1);function M(){const N=l.value||document.body,v=window.getComputedStyle(N);if(!v||!n.value)return;const R=H.getTransformInfo(n.value),E={};p.value&&(E.deltaL=n.value.offsetLeft-p.value.x,E.deltaT=n.value.offsetTop-p.value.y);const W=v.getPropertyValue("position");E.width=N.clientWidth,E.height=N.clientHeight,E.pr=parseInt(v.getPropertyValue("padding-right"),10),E.pb=parseInt(v.getPropertyValue("padding-bottom"),10),E.position=v.getPropertyValue("position"),W==="static"&&(N.style.position="relative"),E.translateX=R.x,E.translateY=R.y,r.value=E}function $(N){if(n.value){i.value=Y.getCurrent(n.value),c.value=H.getCurrent(n.value),u.value=i.value?Y.copy(i.value):null,p.value=c.value?H.copy(c.value):null,M();const v=N.target.getAttribute("type")||"";s.value={n:!!v.match(/n/),s:!!v.match(/s/),w:!!v.match(/w/),e:!!v.match(/e/)}}}function x(){var N,v,R,E;if(n.value){const W=n.value;s.value&&((s.value.n||s.value.s)&&((N=u.value)!=null&&N.height)&&(W.style.height=u.value.height+"px"),(s.value.w||s.value.e)&&((v=u.value)!=null&&v.width)&&(W.style.width=u.value.width+"px"),p.value&&((R=p.value)!=null&&R.x&&(W.style.left=p.value.x+"px"),(E=p.val