@farris/ui-vue 1.3.5 → 1.3.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/accordion/index.esm.js +16 -16
- package/components/accordion/index.umd.cjs +1 -1
- package/components/avatar/index.esm.js +65 -65
- package/components/avatar/index.umd.cjs +1 -1
- package/components/button-edit/index.esm.js +13 -13
- package/components/button-edit/index.umd.cjs +1 -1
- package/components/calendar/index.esm.js +504 -490
- package/components/calendar/index.umd.cjs +1 -1
- package/components/capsule/index.esm.js +247 -233
- package/components/capsule/index.umd.cjs +1 -1
- package/components/checkbox/index.esm.js +356 -344
- package/components/checkbox/index.umd.cjs +1 -1
- package/components/color-picker/index.esm.js +159 -145
- package/components/color-picker/index.umd.cjs +2 -2
- package/components/combo-list/index.esm.js +127 -128
- package/components/combo-list/index.umd.cjs +1 -1
- package/components/combo-tree/index.esm.js +15 -15
- package/components/combo-tree/index.umd.cjs +1 -1
- package/components/component/index.esm.js +101 -87
- package/components/component/index.umd.cjs +1 -1
- package/components/condition/index.esm.js +7 -5
- package/components/condition/index.umd.cjs +1 -1
- package/components/content-container/index.esm.js +181 -167
- package/components/content-container/index.umd.cjs +1 -1
- package/components/data-grid/index.esm.js +4057 -4304
- package/components/data-grid/index.umd.cjs +1 -1
- package/components/data-view/index.esm.js +2450 -2467
- package/components/data-view/index.umd.cjs +1 -1
- package/components/date-picker/index.esm.js +789 -777
- package/components/date-picker/index.umd.cjs +1 -1
- package/components/designer-canvas/index.esm.js +3593 -3585
- package/components/designer-canvas/index.umd.cjs +1 -1
- package/components/dropdown/index.esm.js +257 -243
- package/components/dropdown/index.umd.cjs +2 -2
- package/components/dynamic-form/index.esm.js +322 -306
- package/components/dynamic-form/index.umd.cjs +1 -1
- package/components/dynamic-resolver/index.esm.js +177 -163
- package/components/dynamic-resolver/index.umd.cjs +1 -1
- package/components/event-parameter/index.esm.js +163 -2643
- package/components/event-parameter/index.umd.cjs +1 -1
- package/components/events-editor/index.esm.js +500 -486
- package/components/events-editor/index.umd.cjs +1 -1
- package/components/expression-editor/index.esm.js +37 -37
- package/components/expression-editor/index.umd.cjs +1 -1
- package/components/external-container/index.esm.js +485 -470
- package/components/external-container/index.umd.cjs +1 -1
- package/components/field-selector/index.esm.js +2611 -2623
- package/components/field-selector/index.umd.cjs +1 -1
- package/components/filter-bar/index.esm.js +3825 -3837
- package/components/filter-bar/index.umd.cjs +1 -1
- package/components/flow-canvas/index.esm.js +3720 -3712
- package/components/flow-canvas/index.umd.cjs +1 -1
- package/components/image-cropper/index.esm.js +402 -388
- package/components/image-cropper/index.umd.cjs +1 -1
- package/components/input-group/index.esm.js +201 -202
- package/components/input-group/index.umd.cjs +1 -1
- package/components/layout/index.esm.js +264 -245
- package/components/layout/index.umd.cjs +1 -1
- package/components/list-nav/index.esm.js +157 -143
- package/components/list-nav/index.umd.cjs +1 -1
- package/components/list-view/index.esm.js +312 -296
- package/components/list-view/index.umd.cjs +1 -1
- package/components/lookup/index.esm.js +4748 -4992
- package/components/lookup/index.umd.cjs +1 -1
- package/components/mapping-editor/index.esm.js +4215 -4462
- package/components/mapping-editor/index.umd.cjs +1 -1
- package/components/nav/index.esm.js +169 -155
- package/components/nav/index.umd.cjs +2 -2
- package/components/number-range/index.esm.js +150 -137
- package/components/number-range/index.umd.cjs +1 -1
- package/components/number-spinner/index.esm.js +207 -194
- package/components/number-spinner/index.umd.cjs +1 -1
- package/components/order/index.esm.js +427 -414
- package/components/order/index.umd.cjs +1 -1
- package/components/page-footer/index.esm.js +22 -22
- package/components/page-footer/index.umd.cjs +1 -1
- package/components/page-header/index.esm.js +510 -492
- package/components/page-header/index.umd.cjs +1 -1
- package/components/pagination/index.esm.js +192 -178
- package/components/pagination/index.umd.cjs +1 -1
- package/components/progress/index.esm.js +234 -220
- package/components/progress/index.umd.cjs +3 -3
- package/components/property-editor/index.esm.js +288 -277
- package/components/property-editor/index.umd.cjs +2 -2
- package/components/property-panel/index.esm.js +62 -61
- package/components/property-panel/index.umd.cjs +1 -1
- package/components/query-solution/index.esm.js +3015 -3027
- package/components/query-solution/index.umd.cjs +5 -5
- package/components/radio-button/index.esm.js +64 -64
- package/components/radio-button/index.umd.cjs +1 -1
- package/components/radio-group/index.esm.js +293 -280
- package/components/radio-group/index.umd.cjs +1 -1
- package/components/rate/index.esm.js +222 -208
- package/components/rate/index.umd.cjs +1 -1
- package/components/response-layout/index.esm.js +187 -173
- package/components/response-layout/index.umd.cjs +1 -1
- package/components/response-layout-editor/index.esm.js +554 -542
- package/components/response-layout-editor/index.umd.cjs +1 -1
- package/components/response-toolbar/index.esm.js +483 -469
- package/components/response-toolbar/index.umd.cjs +1 -1
- package/components/schema-selector/index.esm.js +632 -617
- package/components/schema-selector/index.umd.cjs +2 -2
- package/components/search-box/index.esm.js +228 -214
- package/components/search-box/index.umd.cjs +1 -1
- package/components/section/index.esm.js +419 -406
- package/components/section/index.umd.cjs +1 -1
- package/components/smoke-detector/index.esm.js +162 -148
- package/components/smoke-detector/index.umd.cjs +1 -1
- package/components/splitter/index.esm.js +308 -284
- package/components/splitter/index.umd.cjs +1 -1
- package/components/step/index.esm.js +279 -265
- package/components/step/index.umd.cjs +1 -1
- package/components/switch/index.esm.js +183 -170
- package/components/switch/index.umd.cjs +1 -1
- package/components/tabs/index.esm.js +307 -294
- package/components/tabs/index.umd.cjs +1 -1
- package/components/tags/index.esm.js +320 -306
- package/components/tags/index.umd.cjs +1 -1
- package/components/text/index.esm.js +245 -231
- package/components/text/index.umd.cjs +1 -1
- package/components/textarea/index.esm.js +260 -247
- package/components/textarea/index.umd.cjs +1 -1
- package/components/time-picker/index.esm.js +409 -396
- package/components/time-picker/index.umd.cjs +1 -1
- package/components/transfer/index.esm.js +424 -410
- package/components/transfer/index.umd.cjs +1 -1
- package/components/tree-grid/index.esm.js +2994 -3006
- package/components/tree-grid/index.umd.cjs +1 -1
- package/components/tree-view/index.esm.js +749 -733
- package/components/tree-view/index.umd.cjs +1 -1
- package/components/uploader/index.esm.js +325 -311
- package/components/uploader/index.umd.cjs +2 -2
- package/components/verify-detail/index.esm.js +304 -290
- package/components/verify-detail/index.umd.cjs +1 -1
- package/components/video/index.esm.js +99 -85
- package/components/video/index.umd.cjs +1 -1
- package/components/weather/index.esm.js +947 -933
- package/components/weather/index.umd.cjs +4 -4
- package/farris.all.esm.js +7750 -7990
- package/farris.all.umd.cjs +12 -12
- package/package.json +1 -1
- package/types/data-view/composition/types.d.ts +0 -1
- package/types/entity-binding-selector/composition/use-entity-tree.d.ts +3 -0
- package/types/entity-binding-selector/composition/use-field-tree.d.ts +1 -0
- package/components/event-parameter/index.css +0 -1
- package/types/data-grid/src/components/data/data-grid-area.component.d.ts +0 -8
- package/types/data-grid/src/components/data/data-grid-area.props.d.ts +0 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(S,a){typeof exports=="object"&&typeof module<"u"?a(exports,require("vue"),require("lodash-es"),require("../common/index.umd.js"),require("../designer-canvas/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es","../common/index.umd.js","../designer-canvas/index.umd.js"],a):(S=typeof globalThis<"u"?globalThis:S||self,a(S.checkbox={},S.Vue,S.LodashES,S.common,S.designerCanvas))})(this,function(S,a,B,A,U){"use strict";var ge=Object.defineProperty;var be=(S,a,B)=>a in S?ge(S,a,{enumerable:!0,configurable:!0,writable:!0,value:B}):S[a]=B;var v=(S,a,B)=>be(S,typeof a!="symbol"?a+"":a,B);const Z={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/check-box.schema.json",title:"check-box",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a check box",type:"string"},type:{description:"The type string of check box component",type:"string",default:"check-box"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disabled:{type:"string",default:!1},editable:{description:"",type:"boolean",default:!0},placeholder:{description:"",type:"string",default:""},text:{description:"",type:"string",default:""},value:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},visible:{description:"",type:"boolean",default:!0}},required:["id","type"],ignore:["id","appearance","binding","visible"]},O={},W={};function D(o){const{properties:t,title:e,ignore:i}=o,r=i&&Array.isArray(i),l=Object.keys(t).reduce((u,h)=>((!r||!i.find(g=>g===h))&&(u[h]=t[h].type==="object"&&t[h].properties?D(t[h]):B.cloneDeep(t[h].default)),u),{});if(e&&(!r||!i.find(u=>u==="id"))){const u=e.toLowerCase().replace(/-/g,"_");l.id=`${u}_${Math.random().toString().slice(2,6)}`}return l}function z(o,t={},e){const i=O[o];if(i){let r=D(i);const l=W[o];return r=l?l({getSchemaByType:z},r,t,e):r,r}return null}function R(o,t){const e=D(t);return Object.keys(e).reduce((i,r)=>(i[r]&&B.isPlainObject(i[r])&&B.isPlainObject(o[r]||!o[r])?Object.assign(i[r],o[r]||{}):i[r]=o[r],i),e),e}function K(o,t){return Object.keys(o).filter(i=>o[i]!=null).reduce((i,r)=>{if(t.has(r)){const l=t.get(r);if(typeof l=="string")i[l]=o[r];else{const u=l(r,o[r],o);Object.assign(i,u)}}else i[r]=o[r];return i},{})}function ee(o,t,e=new Map){const i=R(o,t);return K(i,e)}function te(o={}){function t(s,m,n,p){if(typeof n=="number")return p[s].length===n;if(typeof n=="object"){const c=Object.keys(n)[0],d=n[c];if(c==="not")return Number(p[s].length)!==Number(d);if(c==="moreThan")return Number(p[s].length)>=Number(d);if(c==="lessThan")return Number(p[s].length)<=Number(d)}return!1}function e(s,m,n,p){return p[s]&&p[s].propertyValue&&String(p[s].propertyValue.value)===String(n)}const i=new Map([["length",t],["getProperty",e]]);Object.keys(o).reduce((s,m)=>(s.set(m,o[m]),s),i);function r(s,m){const n=s;return typeof m=="number"?[{target:n,operator:"length",param:null,value:Number(m)}]:typeof m=="boolean"?[{target:n,operator:"getProperty",param:s,value:!!m}]:typeof m=="object"?Object.keys(m).map(p=>{if(p==="length")return{target:n,operator:"length",param:null,value:m[p]};const c=p,d=m[p];return{target:n,operator:"getProperty",param:c,value:d}}):[]}function l(s){return Object.keys(s).reduce((n,p)=>{const c=r(p,s[p]);return n.push(...c),n},[])}function u(s,m){if(i.has(s.operator)){const n=i.get(s.operator);return n&&n(s.target,s.param,s.value,m)||!1}return!1}function h(s,m){return l(s).reduce((c,d)=>c&&u(d,m),!0)}function g(s,m){const n=Object.keys(s),p=n.includes("allOf"),c=n.includes("anyOf"),d=p||c,b=(d?s[d?p?"allOf":"anyOf":"allOf"]:[s]).map(T=>h(T,m));return p?!b.includes(!1):b.includes(!0)}return{parseValueSchema:g}}const f={button:{type:"button",name:"按钮",icon:"Button"},"response-toolbar":{type:"response-toolbar",name:"工具栏",icon:"ButtonGroup"},"response-toolbar-item":{type:"response-toolbar-item",name:"按钮",icon:"Button"},"content-container":{type:"content-container",name:"容器",icon:"ContentContainer"},"input-group":{type:"input-group",name:"文本",icon:"TextBox"},textarea:{type:"textarea",name:"多行文本",icon:"MultiTextBox"},lookup:{type:"lookup",name:"帮助",icon:"LookupEdit"},"number-spinner":{type:"number-spinner",name:"数值",icon:"NumericBox"},"date-picker":{type:"date-picker",name:"日期",icon:"DateBox"},switch:{type:"switch",name:"开关",icon:"SwitchField"},"radio-group":{type:"radio-group",name:"单选组",icon:"RadioGroup"},"check-box":{type:"check-box",name:"复选框",icon:"CheckBox"},"check-group":{type:"check-group",name:"复选框组",icon:"CheckGroup"},"combo-list":{type:"combo-list",name:"下拉列表",icon:"EnumField"},"response-form":{type:"response-form",name:"卡片面板",icon:"Form"},"response-layout":{type:"response-layout",name:"布局容器",icon:"ResponseLayout3"},"response-layout-item":{type:"response-layout-item",name:"布局",icon:"ResponseLayout1"},"tree-grid":{type:"tree-grid",name:"树表格",icon:"TreeGrid"},"tree-grid-column":{type:"tree-grid-column",name:"树表格列"},"data-grid":{type:"data-grid",name:"表格",icon:"DataGrid"},"data-grid-column":{type:"data-grid-column",name:"表格列"},module:{type:"Module",name:"模块",icon:"Module"},component:{type:"component",name:"组件",icon:"Component"},tabs:{type:"tabs",name:"标签页",icon:"Tab"},"tab-page":{type:"tab-page",name:"标签页项",dependentParentControl:"Tab"},"tab-toolbar-item":{type:"tab-toolbar-item",name:"标签页工具栏按钮",icon:"Button"},"time-picker":{type:"time-picker",name:"时间选择",icon:"TimePicker"},section:{type:"section",name:"分组面板",icon:"Section"},"section-toolbar":{type:"section-toolbar",name:"分组面板工具栏"},"section-toolbar-item":{type:"section-toolbar-item",name:"分组面板按钮"},splitter:{type:"splitter",name:"分栏面板",icon:"Splitter"},"splitter-pane":{type:"splitter-pane",name:"分栏面板项",dependentParentControl:"Splitter"},"component-ref":{type:"component-ref",name:"组件引用节点"},uploader:{type:"uploader",name:"附件上传",icon:"FileUpload"},"page-header":{type:"page-header",name:"页头",icon:"Header"},"page-footer":{type:"page-footer",name:"页脚",icon:"ModalFooter"},"tab-toolbar":{type:"tab-toolbar",name:"标签页工具栏",icon:"TabToolbar"},fieldset:{type:"fieldset",name:"分组",icon:"fieldset"},"query-solution":{type:"query-solution",name:"筛选方案",icon:"QueryScheme"}},ne={},oe={};te();function X(o,t,e=new Map,i=(u,h,g,s)=>h,r={},l=u=>u){return O[t.title]=t,W[t.title]=i,ne[t.title]=r,oe[t.title]=l,(u={})=>{const h=ee(u,t,e),g=Object.keys(o).reduce((s,m)=>(s[m]=o[m].default,s),{});return Object.assign(g,h)}}function ie(o,t){return{customClass:t.class,customStyle:t.style}}const _=new Map([["appearance",ie]]);function H(o,t,e){return t}const N={id:{Type:String,default:""},customClass:{Type:String,default:""},disabled:{Type:Boolean,default:!1},readonly:{type:Boolean,default:!1},indeterminate:{Type:Boolean,default:!1},modelValue:{Type:Boolean,default:!1},focusOnCreated:{type:Boolean,default:!1},value:{type:String,default:""},name:{type:String,default:""},label:{type:String,default:""},checked:{type:Boolean,default:!1}},G=X(N,Z,_,H),$=a.defineComponent({name:"FCheckBox",props:N,emits:["change","changeValue","update:modelValue","update:checked"],setup(o,t){const e=a.inject(A.CHECKBOX_CONTEXT,null),{buttonClass:i,disabled:r,name:l,shouldRenderButton:u,shouldRenderNative:h,shouldRenderTag:g,tagClass:s,checked:m,onClickCheckBox:n}=A.useCheck(o,t,e==null?void 0:e.parentProps,e==null?void 0:e.parentContext);a.ref();const p=a.ref(o.id),c=a.ref(o.customClass),d=a.ref(o.modelValue),y=a.ref(o.indeterminate);return a.computed(()=>{const C={"custom-control":!0,"custom-checkbox":!0};return c.value&&c.value.split(" ").reduce((b,M)=>(b[M]=!0,b),C),C}),a.watch(()=>o.modelValue,C=>{d.value=C}),a.watch(()=>o.indeterminate,C=>{y.value=C}),a.onMounted(()=>{}),()=>{var C,b,M,T,P,k;return a.createVNode(a.Fragment,null,[u.value&&a.createVNode("div",{class:i.value,style:"border-radius:0;border: 1px solid #E8EBF2;",onClick:n},[(b=(C=t.slots).default)==null?void 0:b.call(C)]),g.value&&a.createVNode("div",{class:s.value,onClick:n},[a.createVNode("div",{class:"title"},[(T=(M=t.slots).default)==null?void 0:T.call(M)]),a.createVNode("div",{class:"tip"},null),a.createVNode("span",{class:"f-icon f-icon-check f-radio-icon"},null)]),h.value&&a.createVNode("div",{class:"custom-control custom-checkbox",onClick:n},[a.createVNode("input",{type:"checkbox",class:"custom-control-input",name:l.value,id:p,value:o.value,checked:m.value,indeterminate:y.value,disabled:r.value},null),a.createVNode("div",{class:"custom-control-label"},[(k=(P=t.slots).default)==null?void 0:k.call(P)])])])}}}),re={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/check-box.schema.json",title:"check-group",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a check box",type:"string"},type:{description:"The type string of check box component",type:"string",default:"check-group"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disabled:{description:"",type:"boolean",default:!1},textField:{description:"",type:"string",default:"name"},valueField:{description:"",type:"string",default:"value"},data:{description:"",type:"array"},readonly:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},separator:{description:"",type:"string",default:","},name:{description:"",type:"string",default:""},horizontal:{description:"",type:"boolean",default:!1}},required:["id","type"],ignore:["id","appearance","binding","visible"]},x={...{checked:{type:Boolean,default:!1},mode:{type:String,default:"default"},type:{type:String,default:"secondary"},size:{type:String,default:"middle"}},id:String,disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},enumData:{type:Array,default:[{value:"example1",name:"示例一"},{value:"example2",name:"示例二"}]},data:{type:Array,default:[{value:"example1",name:"示例一"},{value:"example2",name:"示例二"}]},horizontal:{type:Boolean,default:!1},isStringValue:{type:Boolean,default:!0},loadData:{type:Function},modelValue:[String,Array],name:{type:String,default:""},separator:{type:String,default:","},tabIndex:{type:Number,default:0},textField:{type:String,default:"name"},valueField:{type:String,default:"value"}},j=X(x,re,_,H);function Q(o,t,e){const i=a.computed(()=>!(o.readonly&&o.disabled)),r=a.ref(o.data||o.enumData);function l(n){return n[o.valueField]}function u(n){return n[o.textField]}function h(n){return n?o.isStringValue?n.split(o.separator):n:[]}function g(n){const c=r.value.map(d=>l(d)).filter(d=>n.some(y=>y===String(d)));return o.isStringValue?c.join(o.separator):c}function s(n){const p=String(l(n));return h(e.value).some(d=>d===p)}function m(n,p){if(i.value){let c=h(e.value)||[];const d=String(l(n));!c||!c.length?c.push(d):c.some(y=>y===d)?c=c.filter(y=>y!==d):c.push(d),e.value=g(c),t.emit("changeValue",e.value),t.emit("update:modelValue",e.value)}p.stopPropagation()}return{enumData:r,getValue:l,getText:u,checked:s,onClickCheckbox:m}}const E=a.defineComponent({name:"FCheckGroup",props:x,emits:["changeValue","update:modelValue"],setup(o,t){const e=a.ref(o.modelValue),i=a.ref(o.horizontal),r=a.ref(o.tabIndex),l=a.ref(o.name),{enumData:u,onClickCheckbox:h,getValue:g,getText:s,checked:m}=Q(o,t,e),n=a.computed(()=>({"farris-checkradio-hor":i.value}));a.watch(()=>o.modelValue,c=>{e.value=c});const p=a.ref([]);return a.provide(A.CHECKBOX_CONTEXT,{values:p,parentProps:o,parentContext:t}),()=>a.createVNode("div",{class:["farris-input-wrap",n.value]},[t.slots.default?t.slots.default():u.value.map((c,d)=>{const y="checkbox_"+l.value+d;return a.createVNode("div",{class:"custom-control custom-checkbox"},[a.createVNode("input",{type:"checkbox",class:"custom-control-input",name:l.value,id:y,value:g(c),checked:m(c),disabled:o.readonly||o.disabled,tabindex:r.value,onClick:C=>h(c,C)},null),a.createVNode("label",{class:"custom-control-label",for:y,title:s(c)},[s(c)])])})])}});function J(o,t,e){var P;const i=e&&e.getStyles&&e.getStyles()||"",r=e&&e.getDesignerClass&&e.getDesignerClass()||"",l=a.ref();function u(){return(t==null?void 0:t.schema.componentType)==="frame"?!1:e&&e.checkCanMoveComponent?e.checkCanMoveComponent():!0}function h(){return!1}function g(){return(t==null?void 0:t.schema.componentType)==="frame"?!1:e&&e.checkCanDeleteComponent?e.checkCanDeleteComponent():!0}function s(){return(t==null?void 0:t.schema.componentType)==="frame"?!0:e&&e.hideNestedPaddingInDesginerView?e.hideNestedPaddingInDesginerView():!1}function m(k){if(!k||!k.value)return null;if(k.value.schema&&k.value.schema.type==="component")return k.value;const F=a.ref(k==null?void 0:k.value.parent),V=m(F);return V||null}function n(k=t){const{componentInstance:F,designerItemElementRef:V}=k;return!F||!F.value?null:F.value.canMove?V:n(k.parent)}function p(k){return!!e&&e.canAccepts(k)}function c(){return(t==null?void 0:t.schema.label)||(t==null?void 0:t.schema.title)||(t==null?void 0:t.schema.name)}function d(){}function y(k,F){F&&e!=null&&e.onAcceptMovedChildElement&&e.onAcceptMovedChildElement(F)}function C(k,F){const{componentType:V}=k;let w=z(V,k,F);e&&e.onResolveNewComponentSchema&&(w=e.onResolveNewComponentSchema(k,w));const q=V.toLowerCase().replace(/-/g,"_");return w&&!w.id&&w.type===V&&(w.id=`${q}_${Math.random().toString().slice(2,6)}`),w}function b(k){}function M(...k){if(e&&e.getPropsConfig)return e.getPropsConfig(...k)}function T(){e&&e.onRemoveComponent&&e.onRemoveComponent(),t!=null&&t.schema.contents&&t.schema.contents.map(k=>{var w;let F=k.id;k.type==="component-ref"&&(F=k.component);const V=o.value.querySelector(`#${F}-design-item`);(w=V==null?void 0:V.componentInstance)!=null&&w.value.onRemoveComponent&&V.componentInstance.value.onRemoveComponent()})}return l.value={canMove:u(),canSelectParent:h(),canDelete:g(),canNested:!s(),contents:t==null?void 0:t.schema.contents,elementRef:o,parent:(P=t==null?void 0:t.parent)==null?void 0:P.componentInstance,schema:t==null?void 0:t.schema,styles:i,designerClass:r,canAccepts:p,getBelongedComponentInstance:m,getDraggableDesignItemElement:n,getDraggingDisplayText:c,getPropConfig:M,getDragScopeElement:d,onAcceptMovedChildElement:y,onChildElementMovedOut:b,addNewChildComponentSchema:C,triggerBelongedComponentToMoveWhenMoved:!!e&&e.triggerBelongedComponentToMoveWhenMoved||a.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:!!e&&e.triggerBelongedComponentToDeleteWhenDeleted||a.ref(!1),onRemoveComponent:T},l}class ae{constructor(t,e){v(this,"componentId");v(this,"viewModelId");v(this,"eventsEditorUtils");v(this,"formSchemaUtils");v(this,"formMetadataConverter");v(this,"designViewModelUtils");v(this,"designViewModelField");v(this,"controlCreatorUtils");v(this,"designerHostService");v(this,"schemaService",null);v(this,"metadataService",null);v(this,"propertyConfig",{type:"object",categories:{}});var i;this.componentId=t,this.designerHostService=e,this.eventsEditorUtils=e.eventsEditorUtils,this.formSchemaUtils=e.formSchemaUtils,this.formMetadataConverter=e.formMetadataConverter,this.viewModelId=((i=this.formSchemaUtils)==null?void 0:i.getViewModelIdByComponentId(t))||"",this.designViewModelUtils=e.designViewModelUtils,this.controlCreatorUtils=e.controlCreatorUtils,this.metadataService=e.metadataService,this.schemaService=e.schemaService}getTableInfo(){var t;return(t=this.schemaService)==null?void 0:t.getTableInfoByViewModelId(this.viewModelId)}setDesignViewModelField(t){var i;const e=t.binding&&t.binding.type==="Form"&&t.binding.field;if(e){if(!this.designViewModelField){const r=this.designViewModelUtils.getDgViewModel(this.viewModelId);this.designViewModelField=r.fields.find(l=>l.id===e)}t.updateOn=(i=this.designViewModelField)==null?void 0:i.updateOn}}changeFieldEditorType(t,e){}getBasicPropConfig(t){return{description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"combo-list",textField:"name",valueField:"value",data:[{value:t.type,name:f[t.type].name}]}}}}}getAppearanceConfig(t=null){return{title:"样式",description:"Appearance",properties:{class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter"},style:{title:"style样式",type:"string",description:"组件的样式",$converter:"/converter/appearance.converter"}}}}updateElementByParentContainer(t,e){const i=e&&e.parent&&e.parent.schema;if(!i)return;const r=i.contents.findIndex(u=>u.id===t),l=B.cloneDeep(i.contents[r]);i.contents.splice(r,1),i.contents.splice(r,0,l)}}const I=class I{static getEditorTypesByMDataType(t){const e=I.fieldControlTypeMapping[t];return e||[{key:"",value:""}]}static getAllInputTypes(){const t=[];for(const e in I.fieldControlTypeMapping)I.fieldControlTypeMapping[e].forEach(i=>{t.find(r=>r.key===i.key&&r.value===i.value)||t.push({key:i.key,value:i.value})});return t}};v(I,"fieldControlTypeMapping",{String:[{key:f["input-group"].type,value:f["input-group"].name},{key:f.lookup.type,value:f.lookup.name},{key:f["date-picker"].type,value:f["date-picker"].name},{key:f["check-box"].type,value:f["check-box"].name},{key:f["check-group"].type,value:f["check-group"].name},{key:f["radio-group"].type,value:f["radio-group"].name},{key:f["combo-list"].type,value:f["combo-list"].name},{key:f.textarea.type,value:f.textarea.name}],Text:[{key:f.textarea.type,value:f.textarea.name},{key:f.lookup.type,value:f.lookup.name}],Decimal:[{key:f["number-spinner"].type,value:f["number-spinner"].name}],Integer:[{key:f["number-spinner"].type,value:f["number-spinner"].name}],Number:[{key:f["number-spinner"].type,value:f["number-spinner"].name}],BigNumber:[{key:f["number-spinner"].type,value:f["number-spinner"].name}],Date:[{key:f["date-picker"].type,value:f["date-picker"].name}],DateTime:[{key:f["date-picker"].type,value:f["date-picker"].name}],Boolean:[{key:f.switch.type,value:f.switch.name},{key:f["check-box"].type,value:f["check-box"].name}],Enum:[{key:f["combo-list"].type,value:f["combo-list"].name},{key:f["radio-group"].type,value:f["radio-group"].name}],Object:[{key:f.lookup.type,value:f.lookup.name},{key:f["combo-list"].type,value:f["combo-list"].name},{key:f["radio-group"].type,value:f["radio-group"].name}]});let L=I;const le=a.ref(0);class se{constructor(){v(this,"label","");v(this,"id","");v(this,"columnInSM",12);v(this,"columnInMD",6);v(this,"columnInLG",3);v(this,"columnInEL",2);v(this,"displayWidthInSM",1);v(this,"displayWidthInMD",1);v(this,"displayWidthInLG",1);v(this,"displayWidthInEL",1);v(this,"displayColumnCountAtBreakPoint","md");v(this,"tagRow",0);v(this,"showTopBorder",0);v(this,"group",1);v(this,"isSupportedClass",!0);v(this,"fieldSetId","")}}function ce(o){let t,e;const i=new Map;let r=[];function l(m,n){const c=m.split(" ").filter(M=>M.startsWith("col-"));if(c.length===0){n.isSupportedClass=!1;return}let d=c.find(M=>/^col-([1-9]|10|11|12)$/.test(M)),y=c.find(M=>/^col-md-([1-9]|10|11|12)$/.test(M)),C=c.find(M=>/^col-xl-([1-9]|10|11|12)$/.test(M)),b=c.find(M=>/^col-el-([1-9]|10|11|12)$/.test(M));d=d||"col-12",n.columnInSM=parseInt(d.replace("col-",""),10),n.displayWidthInSM=n.columnInSM/12,n.displayWidthInSM!==1&&(n.isSupportedClass=!1),y=y||"col-md-"+n.columnInSM,n.columnInMD=parseInt(y.replace("col-md-",""),10),n.displayWidthInMD=n.columnInMD/6,[1,2].includes(n.displayWidthInMD)||(n.isSupportedClass=!1),C=C||"col-xl-"+n.columnInMD,n.columnInLG=parseInt(C.replace("col-xl-",""),10),n.displayWidthInLG=n.columnInLG/3,[1,2,3,4].includes(n.displayWidthInLG)||(n.isSupportedClass=!1),b=b||"col-el-"+n.columnInLG,n.columnInEL=parseInt(b.replace("col-el-",""),10),n.displayWidthInEL=n.columnInEL/2,[1,2,3,4,5,6].includes(n.displayWidthInEL)||(n.isSupportedClass=!1)}function u(m,n,p,c=!1){let d=!1;m.contents.forEach(y=>{if(y.type==="fieldset"){p+=1,u(y,n,p,!0),d=!0;return}d&&(p+=1,d=!1);const C=y.appearance&&y.appearance.class,b=new se;C?l(C,b):b.isSupportedClass=!1,b.label=y.label||y.id,b.id=y.id,b.group=p,c&&(b.fieldSetId=m.id),e===y.id&&(t=p),i.set(y.id,y),n.push(b)})}function h(m){const n=o.getComponentById(m);if(!n||!n.componentType||!n.componentType.startsWith("form"))return{result:!1,message:"只可以在响应式表单组件中调整响应式布局配置"};const p=o.selectNode(n,c=>c.type===U.DgControl["response-form"].type);return!p||!p.contents||p.contents.length===0?{result:!1,message:"Form区域内没有控件,请先添加控件"}:{result:!0,message:"",formNode:p}}function g(m,n){n=n||m.id;const{result:p,message:c,formNode:d}=h(n);if(!p)return{result:p,message:c};e=m.id,r=[],i.clear();const y=d.contents[0].type===U.DgControl.fieldset.type?0:1;u(d,r,y);const C=r.find(M=>!M.isSupportedClass);return{defaultState:{defaultGroupNumber:t||1,model:C?"customize":"standard"},importData:r}}function s(m,n){n=n;const{result:p,formNode:c}=h(n);if(!p)return"";const d=[];return m.forEach(y=>{var M;const C=i.get(y.id),b=C.appearance&&C.appearance.class;if(b){const P=b.split(" ").filter(he=>!he.startsWith("col-")),k="col-"+y.columnInSM,F="col-md-"+y.columnInMD,V="col-xl-"+y.columnInLG,w="col-el-"+y.columnInEL,q=[k,F,V,w].concat(P);C.appearance.class=q.join(" ")}if(y.fieldSetId){const T=c.contents.find(k=>k.id===y.fieldSetId),P=d.find(k=>k.id===y.fieldSetId);P?(M=P.contents)==null||M.push(C):(d.push(T),T.contents=[C])}else d.push(C)}),c.contents=d,c.id}return{checkCanFindFormNode:h,checkCanOpenLayoutEditor:g,changeFormControlsByResponseLayoutConfig:s,getResonseFormLayoutConfig:u}}class Y extends ae{constructor(e,i){super(e,i);v(this,"responseLayoutEditorFunction");this.responseLayoutEditorFunction=ce(this.formSchemaUtils)}getPropertyConfig(e,i){return this.propertyConfig.categories.basic=this.getBasicProperties(e,i),this.propertyConfig.categories.appearance=this.getAppearanceProperties(e,i),this.propertyConfig.categories.editor=this.getEditorProperties(e),this.propertyConfig}getBasicProperties(e,i){var l;const r=this;return this.setDesignViewModelField(e),this.formSchemaUtils.getFormMetadataBasicInfo(),{description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"编辑器类型",title:"编辑器类型",type:"string",refreshPanelAfterChanged:!0,$converter:"/converter/change-editor.converter",editor:{type:"combo-list",textField:"value",valueField:"key",editable:!1,data:r.designViewModelField?L.getEditorTypesByMDataType((l=r.designViewModelField.type)==null?void 0:l.name):L.getAllInputTypes()}},label:{title:"标签",type:"string",$converter:"/converter/form-group-label.converter"},binding:{description:"绑定的表单字段",title:"绑定",editor:{type:"binding-selector",bindingType:{enable:!1},editorParams:{componentSchema:e,needSyncToViewModel:!0,viewModelId:this.viewModelId,designerHostService:this.designerHostService,disableOccupiedFields:!0},textField:"bindingField"}}},setPropertyRelates(u,h){if(u)switch(u&&u.propertyID){case"type":{r.changeControlType(e,u,i);break}case"label":{u.needRefreshControlTree=!0;break}}}}}getAppearanceProperties(e,i){const r=this;return{title:"样式",description:"Appearance",properties:{class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter"},style:{title:"style样式",type:"string",description:"组件的样式",$converter:"/converter/appearance.converter"},responseLayout:{description:"响应式列宽",title:"响应式列宽",type:"boolean",visible:!0,refreshPanelAfterChanged:!0,editor:{type:"response-layout-editor-setting",initialState:r.responseLayoutEditorFunction.checkCanOpenLayoutEditor(e,r.componentId)}}},setPropertyRelates(l,u){if(l)switch(l&&l.propertyID){case"responseLayout":r.responseLayoutEditorFunction.changeFormControlsByResponseLayoutConfig(l.propertyValue,r.componentId||e.id),r.updateUnifiedLayoutAfterResponseLayoutChanged(r.componentId),r.updateElementByParentContainer(e.id,i),delete e.responseLayout;break;case"class":r.updateUnifiedLayoutAfterControlChanged(l.propertyValue,e.id,this.componentId),r.updateElementByParentContainer(e.id,i);break}}}}getEditorProperties(e){return this.getComponentConfig(e)}changeControlType(e,i,r){var m,n,p,c;const l=i.propertyValue,u=r&&r.parent&&r.parent.schema;if(!u)return;const h=u.contents.findIndex(d=>d.id===e.id),g=u.contents[h];let s;this.designViewModelField&&(this.designViewModelUtils.getDgViewModel(this.viewModelId).changeField(this.designViewModelField.id,{editor:{$type:l},name:this.designViewModelField.name,require:this.designViewModelField.require,readonly:this.designViewModelField.readonly},!1),s=this.controlCreatorUtils.setFormFieldProperty(this.designViewModelField,l)),s||(s=this.controlCreatorUtils.createFormGroupWithoutField(l)),Object.assign(s,{id:g.id,appearance:g.appearance,size:g.size,label:g.label,binding:g.binding,visible:g.visible}),Object.assign(s.editor,{isTextArea:s.isTextArea&&g.isTextArea,placeholder:(m=g.editor)==null?void 0:m.placeholder,holdPlace:(n=g.editor)==null?void 0:n.holdPlace,readonly:(p=g.editor)==null?void 0:p.readonly,require:(c=g.editor)==null?void 0:c.require}),u.contents.splice(h,1),u.contents.splice(h,0,s),r.schema=Object.assign(g,s),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(d=>d.classList.remove("dgComponentSelected")),le.value++}getComponentConfig(e,i={},r={}){const l=Object.assign({description:"编辑器",title:"编辑器",type:"input-group",$converter:"/converter/property-editor.converter"},i),u=Object.assign({readonly:{description:"",title:"只读",type:"boolean"},disabled:{description:"",title:"禁用",type:"boolean"},placeholder:{description:"空值时,输入控件内的占位文本",title:"提示文本",type:"string"}},r);return{...l,properties:{...u}}}updateUnifiedLayoutAfterControlChanged(e,i,r){const l=e.split(" ");let u=l.find(n=>/^col-([1-9]|10|11|12)$/.test(n)),h=l.find(n=>/^col-md-([1-9]|10|11|12)$/.test(n)),g=l.find(n=>/^col-xl-([1-9]|10|11|12)$/.test(n)),s=l.find(n=>/^col-el-([1-9]|10|11|12)$/.test(n));u=u||"col-12",h=h||"col-md-"+u.replace("col-",""),g=g||"col-xl-"+h.replace("col-md-",""),s=s||"col-el-"+g.replace("col-xl-","");const m={id:i,columnInSM:parseInt(u.replace("col-",""),10),columnInMD:parseInt(h.replace("col-md-",""),10),columnInLG:parseInt(g.replace("col-xl-",""),10),columnInEL:parseInt(s.replace("col-el-",""),10)};this.updateUnifiedLayoutAfterResponseLayoutChanged(r,m)}updateUnifiedLayoutAfterResponseLayoutChanged(e,i){const{formNode:r}=this.responseLayoutEditorFunction.checkCanFindFormNode(e);if(!r||!r.unifiedLayout)return;const l=[];if(this.responseLayoutEditorFunction.getResonseFormLayoutConfig(r,l,1),i){const d=l.find(y=>y.id===i.id);Object.assign(d||{},i)}const u=l.map(d=>d.columnInSM),h=l.map(d=>d.columnInMD),g=l.map(d=>d.columnInLG),s=l.map(d=>d.columnInEL),m=this.checkIsUniqueColumn(u)?u[0]:null,n=this.checkIsUniqueColumn(h)?h[0]:null,p=this.checkIsUniqueColumn(g)?g[0]:null,c=this.checkIsUniqueColumn(s)?s[0]:null;Object.assign(r.unifiedLayout,{uniqueColClassInSM:m,uniqueColClassInMD:n,uniqueColClassInLG:p,uniqueColClassInEL:c})}checkIsUniqueColumn(e){const i=new Set(e);return Array.from(i).length===1}}class de extends Y{constructor(t,e){super(t,e)}getEditorProperties(t){const e=this.getComponentConfig(t,{type:"check-group"},{placeholder:{visible:!1},disabled:{visible:!1},textField:{description:"",title:"文本字段",type:"string"},valueField:{description:"",title:"值字段",type:"string"},data:{description:"",title:"数据",type:"array",editor:{columns:[{field:t.editor.valueField,title:"值",dataType:"string"},{field:t.editor.textField,title:"名称",dataType:"string"},{field:"disabled",title:"禁用",visible:!1,dataType:"boolean",editor:{type:"switch"}}],type:"item-collection-editor",valueField:t.editor.valueField,nameField:t.editor.textField,requiredFields:[t.editor.valueField,t.editor.textField],uniqueFields:[t.editor.valueField,t.editor.textField]},refreshPanelAfterChanged:!0}});return e.setPropertyRelates=function(i){if(i)switch(i.propertyID){case"data":{i.propertyValue.parameters&&(t.editor.valueField=i.propertyValue.parameters.valueField,t.editor.textField=i.propertyValue.parameters.nameField),t.editor.data=i.propertyValue.value;break}}},e}}class ue extends Y{constructor(t,e){super(t,e)}getEditorProperties(t){return this.getComponentConfig(t,{type:"check-group"},{placeholder:{visible:!1},disabled:{visible:!1},text:{description:"",title:"显示文本",type:"string"},value:{description:"",title:"选中值",type:"string"}})}}function pe(o,t){const e=o.schema;function i(r,l){return new de(r,t).getPropertyConfig(e,l)}return{getPropsConfig:i}}function me(o,t){const e=o.schema;function i(r,l){return new ue(r,t).getPropertyConfig(e,l)}return{getPropsConfig:i}}const fe=a.defineComponent({name:"FCheckboxGroupDesign",props:x,emits:["changeValue","update:modelValue"],setup(o,t){const e=a.ref(o.modelValue),i=a.ref(o.horizontal),r=a.ref(o.tabIndex),l=a.ref(o.name),u=a.computed(()=>({"farris-checkradio-hor":i.value})),{enumData:h,onClickCheckbox:g,getValue:s,getText:m,checked:n}=Q(o,t,e),p=a.ref(),c=a.inject("designer-host-service"),d=a.inject("design-item-context"),y=pe(d,c),C=J(p,d,y);return a.onMounted(()=>{p.value.componentInstance=C}),t.expose(C.value),a.watch(()=>o.modelValue,b=>{e.value=b,t.emit("changeValue",e.value)}),()=>a.createVNode("div",{ref:p,class:["farris-input-wrap",u.value]},[h.value.map((b,M)=>{const T="checkbox_"+l.value+M;return a.createVNode("div",{class:"custom-control custom-checkbox"},[a.createVNode("input",{type:"checkbox",class:"custom-control-input",name:l.value,id:T,value:s(b),checked:n(b),disabled:o.readonly||o.disabled,tabindex:r.value,onClick:P=>g(b,P)},null),a.createVNode("label",{class:"custom-control-label",for:T,title:m(b)},[m(b)])])})])}}),ye=a.defineComponent({name:"FCheckBoxDesign",props:N,emits:[],setup(o,t){const e=a.ref(),i=a.ref(o.id),r=a.ref(o.indeterminate),l=a.inject("designer-host-service"),u=a.inject("design-item-context"),h=me(u,l),g=J(e,u,h);return a.onMounted(()=>{e.value.componentInstance=g}),a.watch(()=>o.indeterminate,s=>{r.value=s}),t.expose(g.value),()=>a.createVNode("div",{ref:e,dragref:`${u.schema.id}-container`,class:"drag-container custom-control custom-checkbox"},[a.createVNode("input",{type:"checkbox",class:"custom-control-input",id:i,value:o.value,checked:o.modelValue,disabled:o.readonly||o.disabled},null),a.createVNode("div",{class:"custom-control-label"},null)])}});E.install=o=>{o.component(E.name,E),o.component($.name,$)},E.register=(o,t,e,i)=>{o["check-box"]=$,t["check-box"]=G,o["check-group"]=E,t["check-group"]=j},E.registerDesigner=(o,t,e)=>{o["check-box"]=ye,t["check-box"]=G,o["check-group"]=fe,t["check-group"]=j},S.FCheckBox=$,S.FCheckBoxGroup=E,S.checkBoxGroupPropsResolver=j,S.checkBoxProps=N,S.checkBoxPropsResolver=G,S.checkboxGroupProps=x,S.default=E,Object.defineProperties(S,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
|
1
|
+
(function(S,a){typeof exports=="object"&&typeof module<"u"?a(exports,require("vue"),require("lodash-es"),require("../common/index.umd.js"),require("../designer-canvas/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es","../common/index.umd.js","../designer-canvas/index.umd.js"],a):(S=typeof globalThis<"u"?globalThis:S||self,a(S.checkbox={},S.Vue,S.LodashES,S.common,S.designerCanvas))})(this,function(S,a,B,D,U){"use strict";var be=Object.defineProperty;var ke=(S,a,B)=>a in S?be(S,a,{enumerable:!0,configurable:!0,writable:!0,value:B}):S[a]=B;var v=(S,a,B)=>ke(S,typeof a!="symbol"?a+"":a,B);const Z={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/check-box.schema.json",title:"check-box",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a check box",type:"string"},type:{description:"The type string of check box component",type:"string",default:"check-box"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disabled:{type:"string",default:!1},editable:{description:"",type:"boolean",default:!0},placeholder:{description:"",type:"string",default:""},text:{description:"",type:"string",default:""},value:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},visible:{description:"",type:"boolean",default:!0}},required:["type"],ignore:["id","appearance","binding","visible"]},O={},W={};function L(o){const{properties:t,title:e,ignore:r}=o,i=r&&Array.isArray(r),l=Object.keys(t).reduce((s,h)=>((!i||!r.find(g=>g===h))&&(s[h]=t[h].type==="object"&&t[h].properties?L(t[h]):B.cloneDeep(t[h].default)),s),{});if(e&&(!i||!r.find(s=>s==="id"))){const s=e.toLowerCase().replace(/-/g,"_");l.id=`${s}_${Math.random().toString().slice(2,6)}`}return l}function R(o){const{properties:t,title:e,required:r}=o;if(r&&Array.isArray(r)){const i=r.reduce((l,s)=>(l[s]=t[s].type==="object"&&t[s].properties?L(t[s]):B.cloneDeep(t[s].default),l),{});if(e&&r.find(l=>l==="id")){const l=e.toLowerCase().replace(/-/g,"_");i.id=`${l}_${Math.random().toString().slice(2,6)}`}return i}return{type:e}}function z(o,t={},e){const r=O[o];if(r){let i=R(r);const l=W[o];return i=l?l({getSchemaByType:z},i,t,e):i,i}return null}function K(o,t){const e=L(t);return Object.keys(e).reduce((r,i)=>(Object.prototype.hasOwnProperty.call(o,i)&&(r[i]&&B.isPlainObject(r[i])&&B.isPlainObject(o[i]||!o[i])?Object.assign(r[i],o[i]||{}):r[i]=o[i]),r),e),e}function ee(o,t){return Object.keys(o).filter(r=>o[r]!=null).reduce((r,i)=>{if(t.has(i)){const l=t.get(i);if(typeof l=="string")r[l]=o[i];else{const s=l(i,o[i],o);Object.assign(r,s)}}else r[i]=o[i];return r},{})}function te(o,t,e=new Map){const r=K(o,t);return ee(r,e)}function ne(o={}){function t(c,f,n,p){if(typeof n=="number")return p[c].length===n;if(typeof n=="object"){const d=Object.keys(n)[0],u=n[d];if(d==="not")return Number(p[c].length)!==Number(u);if(d==="moreThan")return Number(p[c].length)>=Number(u);if(d==="lessThan")return Number(p[c].length)<=Number(u)}return!1}function e(c,f,n,p){return p[c]&&p[c].propertyValue&&String(p[c].propertyValue.value)===String(n)}const r=new Map([["length",t],["getProperty",e]]);Object.keys(o).reduce((c,f)=>(c.set(f,o[f]),c),r);function i(c,f){const n=c;return typeof f=="number"?[{target:n,operator:"length",param:null,value:Number(f)}]:typeof f=="boolean"?[{target:n,operator:"getProperty",param:c,value:!!f}]:typeof f=="object"?Object.keys(f).map(p=>{if(p==="length")return{target:n,operator:"length",param:null,value:f[p]};const d=p,u=f[p];return{target:n,operator:"getProperty",param:d,value:u}}):[]}function l(c){return Object.keys(c).reduce((n,p)=>{const d=i(p,c[p]);return n.push(...d),n},[])}function s(c,f){if(r.has(c.operator)){const n=r.get(c.operator);return n&&n(c.target,c.param,c.value,f)||!1}return!1}function h(c,f){return l(c).reduce((d,u)=>d&&s(u,f),!0)}function g(c,f){const n=Object.keys(c),p=n.includes("allOf"),d=n.includes("anyOf"),u=p||d,b=(u?c[u?p?"allOf":"anyOf":"allOf"]:[c]).map(P=>h(P,f));return p?!b.includes(!1):b.includes(!0)}return{parseValueSchema:g}}const m={button:{type:"button",name:"按钮",icon:"Button"},"response-toolbar":{type:"response-toolbar",name:"工具栏",icon:"ButtonGroup"},"response-toolbar-item":{type:"response-toolbar-item",name:"按钮",icon:"Button"},"content-container":{type:"content-container",name:"容器",icon:"ContentContainer"},"input-group":{type:"input-group",name:"文本",icon:"TextBox"},textarea:{type:"textarea",name:"多行文本",icon:"MultiTextBox"},lookup:{type:"lookup",name:"帮助",icon:"LookupEdit"},"number-spinner":{type:"number-spinner",name:"数值",icon:"NumericBox"},"date-picker":{type:"date-picker",name:"日期",icon:"DateBox"},switch:{type:"switch",name:"开关",icon:"SwitchField"},"radio-group":{type:"radio-group",name:"单选组",icon:"RadioGroup"},"check-box":{type:"check-box",name:"复选框",icon:"CheckBox"},"check-group":{type:"check-group",name:"复选框组",icon:"CheckGroup"},"combo-list":{type:"combo-list",name:"下拉列表",icon:"EnumField"},"response-form":{type:"response-form",name:"卡片面板",icon:"Form"},"response-layout":{type:"response-layout",name:"布局容器",icon:"ResponseLayout3"},"response-layout-item":{type:"response-layout-item",name:"布局",icon:"ResponseLayout1"},"tree-grid":{type:"tree-grid",name:"树表格",icon:"TreeGrid"},"tree-grid-column":{type:"tree-grid-column",name:"树表格列"},"data-grid":{type:"data-grid",name:"表格",icon:"DataGrid"},"data-grid-column":{type:"data-grid-column",name:"表格列"},module:{type:"Module",name:"模块",icon:"Module"},component:{type:"component",name:"组件",icon:"Component"},tabs:{type:"tabs",name:"标签页",icon:"Tab"},"tab-page":{type:"tab-page",name:"标签页项",dependentParentControl:"Tab"},"tab-toolbar-item":{type:"tab-toolbar-item",name:"标签页工具栏按钮",icon:"Button"},"time-picker":{type:"time-picker",name:"时间选择",icon:"TimePicker"},section:{type:"section",name:"分组面板",icon:"Section"},"section-toolbar":{type:"section-toolbar",name:"分组面板工具栏"},"section-toolbar-item":{type:"section-toolbar-item",name:"分组面板按钮"},splitter:{type:"splitter",name:"分栏面板",icon:"Splitter"},"splitter-pane":{type:"splitter-pane",name:"分栏面板项",dependentParentControl:"Splitter"},"component-ref":{type:"component-ref",name:"组件引用节点"},uploader:{type:"uploader",name:"附件上传",icon:"FileUpload"},"page-header":{type:"page-header",name:"页头",icon:"Header"},"page-footer":{type:"page-footer",name:"页脚",icon:"ModalFooter"},"tab-toolbar":{type:"tab-toolbar",name:"标签页工具栏",icon:"TabToolbar"},fieldset:{type:"fieldset",name:"分组",icon:"fieldset"},"query-solution":{type:"query-solution",name:"筛选方案",icon:"QueryScheme"}},oe={},re={};ne();function _(o,t,e=new Map,r=(s,h,g,c)=>h,i={},l=s=>s){return O[t.title]=t,W[t.title]=r,oe[t.title]=i,re[t.title]=l,(s={})=>{const h=te(s,t,e),g=Object.keys(o).reduce((c,f)=>(c[f]=o[f].default,c),{});return Object.assign(g,h)}}function ie(o,t){return{customClass:t.class,customStyle:t.style}}const X=new Map([["appearance",ie]]);function H(o,t,e){return t}const N={id:{Type:String,default:""},customClass:{Type:String,default:""},disabled:{Type:Boolean,default:!1},readonly:{type:Boolean,default:!1},indeterminate:{Type:Boolean,default:!1},modelValue:{Type:Boolean,default:!1},focusOnCreated:{type:Boolean,default:!1},value:{type:String,default:""},name:{type:String,default:""},label:{type:String,default:""},checked:{type:Boolean,default:!1}},G=_(N,Z,X,H),$=a.defineComponent({name:"FCheckBox",props:N,emits:["change","changeValue","update:modelValue","update:checked"],setup(o,t){const e=a.inject(D.CHECKBOX_CONTEXT,null),{buttonClass:r,disabled:i,name:l,shouldRenderButton:s,shouldRenderNative:h,shouldRenderTag:g,tagClass:c,checked:f,onClickCheckBox:n}=D.useCheck(o,t,e==null?void 0:e.parentProps,e==null?void 0:e.parentContext);a.ref();const p=a.ref(o.id),d=a.ref(o.customClass),u=a.ref(o.modelValue),y=a.ref(o.indeterminate);return a.computed(()=>{const C={"custom-control":!0,"custom-checkbox":!0};return d.value&&d.value.split(" ").reduce((b,M)=>(b[M]=!0,b),C),C}),a.watch(()=>o.modelValue,C=>{u.value=C}),a.watch(()=>o.indeterminate,C=>{y.value=C}),a.onMounted(()=>{}),()=>{var C,b,M,P,T,k;return a.createVNode(a.Fragment,null,[s.value&&a.createVNode("div",{class:r.value,style:"border-radius:0;border: 1px solid #E8EBF2;",onClick:n},[(b=(C=t.slots).default)==null?void 0:b.call(C)]),g.value&&a.createVNode("div",{class:c.value,onClick:n},[a.createVNode("div",{class:"title"},[(P=(M=t.slots).default)==null?void 0:P.call(M)]),a.createVNode("div",{class:"tip"},null),a.createVNode("span",{class:"f-icon f-icon-check f-radio-icon"},null)]),h.value&&a.createVNode("div",{class:"custom-control custom-checkbox",onClick:n},[a.createVNode("input",{type:"checkbox",class:"custom-control-input",name:l.value,id:p,value:o.value,checked:f.value,indeterminate:y.value,disabled:i.value},null),a.createVNode("div",{class:"custom-control-label"},[(k=(T=t.slots).default)==null?void 0:k.call(T)])])])}}}),ae={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/check-box.schema.json",title:"check-group",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a check box",type:"string"},type:{description:"The type string of check box component",type:"string",default:"check-group"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disabled:{description:"",type:"boolean",default:!1},textField:{description:"",type:"string",default:"name"},valueField:{description:"",type:"string",default:"value"},data:{description:"",type:"array"},readonly:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},separator:{description:"",type:"string",default:","},name:{description:"",type:"string",default:""},horizontal:{description:"",type:"boolean",default:!1}},required:["type"],ignore:["id","appearance","binding","visible"]},x={...{checked:{type:Boolean,default:!1},mode:{type:String,default:"default"},type:{type:String,default:"secondary"},size:{type:String,default:"middle"}},id:String,disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},enumData:{type:Array,default:[{value:"example1",name:"示例一"},{value:"example2",name:"示例二"}]},data:{type:Array,default:[{value:"example1",name:"示例一"},{value:"example2",name:"示例二"}]},horizontal:{type:Boolean,default:!1},isStringValue:{type:Boolean,default:!0},loadData:{type:Function},modelValue:[String,Array],name:{type:String,default:""},separator:{type:String,default:","},tabIndex:{type:Number,default:0},textField:{type:String,default:"name"},valueField:{type:String,default:"value"}},q=_(x,ae,X,H);function Q(o,t,e){const r=a.computed(()=>!(o.readonly&&o.disabled)),i=a.ref(o.data||o.enumData);function l(n){return n[o.valueField]}function s(n){return n[o.textField]}function h(n){return n?o.isStringValue?n.split(o.separator):n:[]}function g(n){const d=i.value.map(u=>l(u)).filter(u=>n.some(y=>y===String(u)));return o.isStringValue?d.join(o.separator):d}function c(n){const p=String(l(n));return h(e.value).some(u=>u===p)}function f(n,p){if(r.value){let d=h(e.value)||[];const u=String(l(n));!d||!d.length?d.push(u):d.some(y=>y===u)?d=d.filter(y=>y!==u):d.push(u),e.value=g(d),t.emit("changeValue",e.value),t.emit("update:modelValue",e.value)}p.stopPropagation()}return{enumData:i,getValue:l,getText:s,checked:c,onClickCheckbox:f}}const E=a.defineComponent({name:"FCheckGroup",props:x,emits:["changeValue","update:modelValue"],setup(o,t){const e=a.ref(o.modelValue),r=a.ref(o.horizontal),i=a.ref(o.tabIndex),l=a.ref(o.name),{enumData:s,onClickCheckbox:h,getValue:g,getText:c,checked:f}=Q(o,t,e),n=a.computed(()=>({"farris-checkradio-hor":r.value}));a.watch(()=>o.modelValue,d=>{e.value=d});const p=a.ref([]);return a.provide(D.CHECKBOX_CONTEXT,{values:p,parentProps:o,parentContext:t}),()=>a.createVNode("div",{class:["farris-input-wrap",n.value]},[t.slots.default?t.slots.default():s.value.map((d,u)=>{const y="checkbox_"+l.value+u;return a.createVNode("div",{class:"custom-control custom-checkbox"},[a.createVNode("input",{type:"checkbox",class:"custom-control-input",name:l.value,id:y,value:g(d),checked:f(d),disabled:o.readonly||o.disabled,tabindex:i.value,onClick:C=>h(d,C)},null),a.createVNode("label",{class:"custom-control-label",for:y,title:c(d)},[c(d)])])})])}});function J(o,t,e){var T;const r=e&&e.getStyles&&e.getStyles()||"",i=e&&e.getDesignerClass&&e.getDesignerClass()||"",l=a.ref();function s(){return(t==null?void 0:t.schema.componentType)==="frame"?!1:e&&e.checkCanMoveComponent?e.checkCanMoveComponent():!0}function h(){return!1}function g(){return(t==null?void 0:t.schema.componentType)==="frame"?!1:e&&e.checkCanDeleteComponent?e.checkCanDeleteComponent():!0}function c(){return(t==null?void 0:t.schema.componentType)==="frame"?!0:e&&e.hideNestedPaddingInDesginerView?e.hideNestedPaddingInDesginerView():!1}function f(k){if(!k||!k.value)return null;if(k.value.schema&&k.value.schema.type==="component")return k.value;const F=a.ref(k==null?void 0:k.value.parent),V=f(F);return V||null}function n(k=t){const{componentInstance:F,designerItemElementRef:V}=k;return!F||!F.value?null:F.value.canMove?V:n(k.parent)}function p(k){return!!e&&e.canAccepts(k)}function d(){return(t==null?void 0:t.schema.label)||(t==null?void 0:t.schema.title)||(t==null?void 0:t.schema.name)}function u(){}function y(k,F){F&&e!=null&&e.onAcceptMovedChildElement&&e.onAcceptMovedChildElement(F)}function C(k,F){const{componentType:V}=k;let w=z(V,k,F);e&&e.onResolveNewComponentSchema&&(w=e.onResolveNewComponentSchema(k,w));const j=V.toLowerCase().replace(/-/g,"_");return w&&!w.id&&w.type===V&&(w.id=`${j}_${Math.random().toString().slice(2,6)}`),w}function b(k){}function M(...k){if(e&&e.getPropsConfig)return e.getPropsConfig(...k)}function P(){e&&e.onRemoveComponent&&e.onRemoveComponent(),t!=null&&t.schema.contents&&t.schema.contents.map(k=>{var w;let F=k.id;k.type==="component-ref"&&(F=k.component);const V=o.value.querySelector(`#${F}-design-item`);(w=V==null?void 0:V.componentInstance)!=null&&w.value.onRemoveComponent&&V.componentInstance.value.onRemoveComponent()})}return l.value={canMove:s(),canSelectParent:h(),canDelete:g(),canNested:!c(),contents:t==null?void 0:t.schema.contents,elementRef:o,parent:(T=t==null?void 0:t.parent)==null?void 0:T.componentInstance,schema:t==null?void 0:t.schema,styles:r,designerClass:i,canAccepts:p,getBelongedComponentInstance:f,getDraggableDesignItemElement:n,getDraggingDisplayText:d,getPropConfig:M,getDragScopeElement:u,onAcceptMovedChildElement:y,onChildElementMovedOut:b,addNewChildComponentSchema:C,triggerBelongedComponentToMoveWhenMoved:!!e&&e.triggerBelongedComponentToMoveWhenMoved||a.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:!!e&&e.triggerBelongedComponentToDeleteWhenDeleted||a.ref(!1),onRemoveComponent:P},l}class le{constructor(t,e){v(this,"componentId");v(this,"viewModelId");v(this,"eventsEditorUtils");v(this,"formSchemaUtils");v(this,"formMetadataConverter");v(this,"designViewModelUtils");v(this,"designViewModelField");v(this,"controlCreatorUtils");v(this,"designerHostService");v(this,"schemaService",null);v(this,"metadataService",null);v(this,"propertyConfig",{type:"object",categories:{}});var r;this.componentId=t,this.designerHostService=e,this.eventsEditorUtils=e.eventsEditorUtils,this.formSchemaUtils=e.formSchemaUtils,this.formMetadataConverter=e.formMetadataConverter,this.viewModelId=((r=this.formSchemaUtils)==null?void 0:r.getViewModelIdByComponentId(t))||"",this.designViewModelUtils=e.designViewModelUtils,this.controlCreatorUtils=e.controlCreatorUtils,this.metadataService=e.metadataService,this.schemaService=e.schemaService}getTableInfo(){var t;return(t=this.schemaService)==null?void 0:t.getTableInfoByViewModelId(this.viewModelId)}setDesignViewModelField(t){var r;const e=t.binding&&t.binding.type==="Form"&&t.binding.field;if(e){if(!this.designViewModelField){const i=this.designViewModelUtils.getDgViewModel(this.viewModelId);this.designViewModelField=i.fields.find(l=>l.id===e)}t.updateOn=(r=this.designViewModelField)==null?void 0:r.updateOn}}changeFieldEditorType(t,e){}getBasicPropConfig(t){return{description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"combo-list",textField:"name",valueField:"value",data:[{value:t.type,name:m[t.type].name}]}}}}}getAppearanceConfig(t=null){return{title:"样式",description:"Appearance",properties:{class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter"},style:{title:"style样式",type:"string",description:"组件的样式",$converter:"/converter/appearance.converter"}}}}updateElementByParentContainer(t,e){const r=e&&e.parent&&e.parent.schema;if(!r)return;const i=r.contents.findIndex(s=>s.id===t),l=B.cloneDeep(r.contents[i]);r.contents.splice(i,1),r.contents.splice(i,0,l)}}const I=class I{static getEditorTypesByMDataType(t){const e=I.fieldControlTypeMapping[t];return e||[{key:"",value:""}]}static getAllInputTypes(){const t=[];for(const e in I.fieldControlTypeMapping)I.fieldControlTypeMapping[e].forEach(r=>{t.find(i=>i.key===r.key&&i.value===r.value)||t.push({key:r.key,value:r.value})});return t}};v(I,"fieldControlTypeMapping",{String:[{key:m["input-group"].type,value:m["input-group"].name},{key:m.lookup.type,value:m.lookup.name},{key:m["date-picker"].type,value:m["date-picker"].name},{key:m["check-box"].type,value:m["check-box"].name},{key:m["check-group"].type,value:m["check-group"].name},{key:m["radio-group"].type,value:m["radio-group"].name},{key:m["combo-list"].type,value:m["combo-list"].name},{key:m.textarea.type,value:m.textarea.name}],Text:[{key:m.textarea.type,value:m.textarea.name},{key:m.lookup.type,value:m.lookup.name}],Decimal:[{key:m["number-spinner"].type,value:m["number-spinner"].name}],Integer:[{key:m["number-spinner"].type,value:m["number-spinner"].name}],Number:[{key:m["number-spinner"].type,value:m["number-spinner"].name}],BigNumber:[{key:m["number-spinner"].type,value:m["number-spinner"].name}],Date:[{key:m["date-picker"].type,value:m["date-picker"].name}],DateTime:[{key:m["date-picker"].type,value:m["date-picker"].name}],Boolean:[{key:m.switch.type,value:m.switch.name},{key:m["check-box"].type,value:m["check-box"].name}],Enum:[{key:m["combo-list"].type,value:m["combo-list"].name},{key:m["radio-group"].type,value:m["radio-group"].name}],Object:[{key:m.lookup.type,value:m.lookup.name},{key:m["combo-list"].type,value:m["combo-list"].name},{key:m["radio-group"].type,value:m["radio-group"].name}]});let A=I;const se=a.ref(0);class ce{constructor(){v(this,"label","");v(this,"id","");v(this,"columnInSM",12);v(this,"columnInMD",6);v(this,"columnInLG",3);v(this,"columnInEL",2);v(this,"displayWidthInSM",1);v(this,"displayWidthInMD",1);v(this,"displayWidthInLG",1);v(this,"displayWidthInEL",1);v(this,"displayColumnCountAtBreakPoint","md");v(this,"tagRow",0);v(this,"showTopBorder",0);v(this,"group",1);v(this,"isSupportedClass",!0);v(this,"fieldSetId","")}}function de(o){let t,e;const r=new Map;let i=[];function l(f,n){const d=f.split(" ").filter(M=>M.startsWith("col-"));if(d.length===0){n.isSupportedClass=!1;return}let u=d.find(M=>/^col-([1-9]|10|11|12)$/.test(M)),y=d.find(M=>/^col-md-([1-9]|10|11|12)$/.test(M)),C=d.find(M=>/^col-xl-([1-9]|10|11|12)$/.test(M)),b=d.find(M=>/^col-el-([1-9]|10|11|12)$/.test(M));u=u||"col-12",n.columnInSM=parseInt(u.replace("col-",""),10),n.displayWidthInSM=n.columnInSM/12,n.displayWidthInSM!==1&&(n.isSupportedClass=!1),y=y||"col-md-"+n.columnInSM,n.columnInMD=parseInt(y.replace("col-md-",""),10),n.displayWidthInMD=n.columnInMD/6,[1,2].includes(n.displayWidthInMD)||(n.isSupportedClass=!1),C=C||"col-xl-"+n.columnInMD,n.columnInLG=parseInt(C.replace("col-xl-",""),10),n.displayWidthInLG=n.columnInLG/3,[1,2,3,4].includes(n.displayWidthInLG)||(n.isSupportedClass=!1),b=b||"col-el-"+n.columnInLG,n.columnInEL=parseInt(b.replace("col-el-",""),10),n.displayWidthInEL=n.columnInEL/2,[1,2,3,4,5,6].includes(n.displayWidthInEL)||(n.isSupportedClass=!1)}function s(f,n,p,d=!1){let u=!1;f.contents.forEach(y=>{if(y.type==="fieldset"){p+=1,s(y,n,p,!0),u=!0;return}u&&(p+=1,u=!1);const C=y.appearance&&y.appearance.class,b=new ce;C?l(C,b):b.isSupportedClass=!1,b.label=y.label||y.id,b.id=y.id,b.group=p,d&&(b.fieldSetId=f.id),e===y.id&&(t=p),r.set(y.id,y),n.push(b)})}function h(f){const n=o.getComponentById(f);if(!n||!n.componentType||!n.componentType.startsWith("form"))return{result:!1,message:"只可以在响应式表单组件中调整响应式布局配置"};const p=o.selectNode(n,d=>d.type===U.DgControl["response-form"].type);return!p||!p.contents||p.contents.length===0?{result:!1,message:"Form区域内没有控件,请先添加控件"}:{result:!0,message:"",formNode:p}}function g(f,n){n=n||f.id;const{result:p,message:d,formNode:u}=h(n);if(!p)return{result:p,message:d};e=f.id,i=[],r.clear();const y=u.contents[0].type===U.DgControl.fieldset.type?0:1;s(u,i,y);const C=i.find(M=>!M.isSupportedClass);return{defaultState:{defaultGroupNumber:t||1,model:C?"customize":"standard"},importData:i}}function c(f,n){n=n;const{result:p,formNode:d}=h(n);if(!p)return"";const u=[];return f.forEach(y=>{var M;const C=r.get(y.id),b=C.appearance&&C.appearance.class;if(b){const T=b.split(" ").filter(ge=>!ge.startsWith("col-")),k="col-"+y.columnInSM,F="col-md-"+y.columnInMD,V="col-xl-"+y.columnInLG,w="col-el-"+y.columnInEL,j=[k,F,V,w].concat(T);C.appearance.class=j.join(" ")}if(y.fieldSetId){const P=d.contents.find(k=>k.id===y.fieldSetId),T=u.find(k=>k.id===y.fieldSetId);T?(M=T.contents)==null||M.push(C):(u.push(P),P.contents=[C])}else u.push(C)}),d.contents=u,d.id}return{checkCanFindFormNode:h,checkCanOpenLayoutEditor:g,changeFormControlsByResponseLayoutConfig:c,getResonseFormLayoutConfig:s}}class Y extends le{constructor(e,r){super(e,r);v(this,"responseLayoutEditorFunction");this.responseLayoutEditorFunction=de(this.formSchemaUtils)}getPropertyConfig(e,r){return this.propertyConfig.categories.basic=this.getBasicProperties(e,r),this.propertyConfig.categories.appearance=this.getAppearanceProperties(e,r),this.propertyConfig.categories.editor=this.getEditorProperties(e),this.propertyConfig}getBasicProperties(e,r){var l;const i=this;return this.setDesignViewModelField(e),{description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"编辑器类型",title:"编辑器类型",type:"string",refreshPanelAfterChanged:!0,$converter:"/converter/change-editor.converter",editor:{type:"combo-list",textField:"value",valueField:"key",editable:!1,data:i.designViewModelField?A.getEditorTypesByMDataType((l=i.designViewModelField.type)==null?void 0:l.name):A.getAllInputTypes()}},label:{title:"标签",type:"string",$converter:"/converter/form-group-label.converter"},binding:{description:"绑定的表单字段",title:"绑定",editor:{type:"binding-selector",bindingType:{enable:!1},editorParams:{componentSchema:e,needSyncToViewModel:!0,viewModelId:this.viewModelId,designerHostService:this.designerHostService,disableOccupiedFields:!0},textField:"bindingField"}}},setPropertyRelates(s,h){if(s)switch(s&&s.propertyID){case"type":{i.changeControlType(e,s,r);break}case"label":{s.needRefreshControlTree=!0;break}}}}}getAppearanceProperties(e,r){const i=this;return{title:"样式",description:"Appearance",properties:{class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter"},style:{title:"style样式",type:"string",description:"组件的样式",$converter:"/converter/appearance.converter"},responseLayout:{description:"响应式列宽",title:"响应式列宽",type:"boolean",visible:!0,refreshPanelAfterChanged:!0,editor:{type:"response-layout-editor-setting",initialState:i.responseLayoutEditorFunction.checkCanOpenLayoutEditor(e,i.componentId)}}},setPropertyRelates(l,s){if(l)switch(l&&l.propertyID){case"responseLayout":i.responseLayoutEditorFunction.changeFormControlsByResponseLayoutConfig(l.propertyValue,i.componentId||e.id),i.updateUnifiedLayoutAfterResponseLayoutChanged(i.componentId),i.updateElementByParentContainer(e.id,r),delete e.responseLayout;break;case"class":i.updateUnifiedLayoutAfterControlChanged(l.propertyValue,e.id,this.componentId),i.updateElementByParentContainer(e.id,r);break}}}}getEditorProperties(e){return this.getComponentConfig(e)}changeControlType(e,r,i){var f,n,p,d;const l=r.propertyValue,s=i&&i.parent&&i.parent.schema;if(!s)return;const h=s.contents.findIndex(u=>u.id===e.id),g=s.contents[h];let c;this.designViewModelField&&(this.designViewModelUtils.getDgViewModel(this.viewModelId).changeField(this.designViewModelField.id,{editor:{$type:l},name:this.designViewModelField.name,require:this.designViewModelField.require,readonly:this.designViewModelField.readonly},!1),c=this.controlCreatorUtils.setFormFieldProperty(this.designViewModelField,l)),c||(c=this.controlCreatorUtils.createFormGroupWithoutField(l)),Object.assign(c,{id:g.id,appearance:g.appearance,size:g.size,label:g.label,binding:g.binding,visible:g.visible}),Object.assign(c.editor,{isTextArea:c.isTextArea&&g.isTextArea,placeholder:(f=g.editor)==null?void 0:f.placeholder,holdPlace:(n=g.editor)==null?void 0:n.holdPlace,readonly:(p=g.editor)==null?void 0:p.readonly,require:(d=g.editor)==null?void 0:d.require}),s.contents.splice(h,1),s.contents.splice(h,0,c),i.schema=Object.assign(g,c),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(u=>u.classList.remove("dgComponentSelected")),se.value++}getComponentConfig(e,r={},i={}){const l=Object.assign({description:"编辑器",title:"编辑器",type:"input-group",$converter:"/converter/property-editor.converter"},r),s=Object.assign({readonly:{description:"",title:"只读",type:"boolean"},disabled:{description:"",title:"禁用",type:"boolean"},placeholder:{description:"空值时,输入控件内的占位文本",title:"提示文本",type:"string"}},i);return{...l,properties:{...s}}}updateUnifiedLayoutAfterControlChanged(e,r,i){const l=e.split(" ");let s=l.find(n=>/^col-([1-9]|10|11|12)$/.test(n)),h=l.find(n=>/^col-md-([1-9]|10|11|12)$/.test(n)),g=l.find(n=>/^col-xl-([1-9]|10|11|12)$/.test(n)),c=l.find(n=>/^col-el-([1-9]|10|11|12)$/.test(n));s=s||"col-12",h=h||"col-md-"+s.replace("col-",""),g=g||"col-xl-"+h.replace("col-md-",""),c=c||"col-el-"+g.replace("col-xl-","");const f={id:r,columnInSM:parseInt(s.replace("col-",""),10),columnInMD:parseInt(h.replace("col-md-",""),10),columnInLG:parseInt(g.replace("col-xl-",""),10),columnInEL:parseInt(c.replace("col-el-",""),10)};this.updateUnifiedLayoutAfterResponseLayoutChanged(i,f)}updateUnifiedLayoutAfterResponseLayoutChanged(e,r){const{formNode:i}=this.responseLayoutEditorFunction.checkCanFindFormNode(e);if(!i||!i.unifiedLayout)return;const l=[];if(this.responseLayoutEditorFunction.getResonseFormLayoutConfig(i,l,1),r){const u=l.find(y=>y.id===r.id);Object.assign(u||{},r)}const s=l.map(u=>u.columnInSM),h=l.map(u=>u.columnInMD),g=l.map(u=>u.columnInLG),c=l.map(u=>u.columnInEL),f=this.checkIsUniqueColumn(s)?s[0]:null,n=this.checkIsUniqueColumn(h)?h[0]:null,p=this.checkIsUniqueColumn(g)?g[0]:null,d=this.checkIsUniqueColumn(c)?c[0]:null;Object.assign(i.unifiedLayout,{uniqueColClassInSM:f,uniqueColClassInMD:n,uniqueColClassInLG:p,uniqueColClassInEL:d})}checkIsUniqueColumn(e){const r=new Set(e);return Array.from(r).length===1}}class ue extends Y{constructor(t,e){super(t,e)}getEditorProperties(t){const e=this.getComponentConfig(t,{type:"check-group"},{placeholder:{visible:!1},disabled:{visible:!1},textField:{description:"",title:"文本字段",type:"string"},valueField:{description:"",title:"值字段",type:"string"},data:{description:"",title:"数据",type:"array",editor:{columns:[{field:t.editor.valueField,title:"值",dataType:"string"},{field:t.editor.textField,title:"名称",dataType:"string"},{field:"disabled",title:"禁用",visible:!1,dataType:"boolean",editor:{type:"switch"}}],type:"item-collection-editor",valueField:t.editor.valueField,nameField:t.editor.textField,requiredFields:[t.editor.valueField,t.editor.textField],uniqueFields:[t.editor.valueField,t.editor.textField]},refreshPanelAfterChanged:!0}});return e.setPropertyRelates=function(r){if(r)switch(r.propertyID){case"data":{r.propertyValue.parameters&&(t.editor.valueField=r.propertyValue.parameters.valueField,t.editor.textField=r.propertyValue.parameters.nameField),t.editor.data=r.propertyValue.value;break}}},e}}class pe extends Y{constructor(t,e){super(t,e)}getEditorProperties(t){return this.getComponentConfig(t,{type:"check-group"},{placeholder:{visible:!1},disabled:{visible:!1},text:{description:"",title:"显示文本",type:"string"},value:{description:"",title:"选中值",type:"string"}})}}function fe(o,t){const e=o.schema;function r(i,l){return new ue(i,t).getPropertyConfig(e,l)}return{getPropsConfig:r}}function me(o,t){const e=o.schema;function r(i,l){return new pe(i,t).getPropertyConfig(e,l)}return{getPropsConfig:r}}const ye=a.defineComponent({name:"FCheckboxGroupDesign",props:x,emits:["changeValue","update:modelValue"],setup(o,t){const e=a.ref(o.modelValue),r=a.ref(o.horizontal),i=a.ref(o.tabIndex),l=a.ref(o.name),s=a.computed(()=>({"farris-checkradio-hor":r.value})),{enumData:h,onClickCheckbox:g,getValue:c,getText:f,checked:n}=Q(o,t,e),p=a.ref(),d=a.inject("designer-host-service"),u=a.inject("design-item-context"),y=fe(u,d),C=J(p,u,y);return a.onMounted(()=>{p.value.componentInstance=C}),t.expose(C.value),a.watch(()=>o.modelValue,b=>{e.value=b,t.emit("changeValue",e.value)}),()=>a.createVNode("div",{ref:p,class:["farris-input-wrap",s.value]},[h.value.map((b,M)=>{const P="checkbox_"+l.value+M;return a.createVNode("div",{class:"custom-control custom-checkbox"},[a.createVNode("input",{type:"checkbox",class:"custom-control-input",name:l.value,id:P,value:c(b),checked:n(b),disabled:o.readonly||o.disabled,tabindex:i.value,onClick:T=>g(b,T)},null),a.createVNode("label",{class:"custom-control-label",for:P,title:f(b)},[f(b)])])})])}}),he=a.defineComponent({name:"FCheckBoxDesign",props:N,emits:[],setup(o,t){const e=a.ref(),r=a.ref(o.id),i=a.ref(o.indeterminate),l=a.inject("designer-host-service"),s=a.inject("design-item-context"),h=me(s,l),g=J(e,s,h);return a.onMounted(()=>{e.value.componentInstance=g}),a.watch(()=>o.indeterminate,c=>{i.value=c}),t.expose(g.value),()=>a.createVNode("div",{ref:e,dragref:`${s.schema.id}-container`,class:"drag-container custom-control custom-checkbox"},[a.createVNode("input",{type:"checkbox",class:"custom-control-input",id:r,value:o.value,checked:o.modelValue,disabled:o.readonly||o.disabled},null),a.createVNode("div",{class:"custom-control-label"},null)])}});E.install=o=>{o.component(E.name,E),o.component($.name,$)},E.register=(o,t,e,r)=>{o["check-box"]=$,t["check-box"]=G,o["check-group"]=E,t["check-group"]=q},E.registerDesigner=(o,t,e)=>{o["check-box"]=he,t["check-box"]=G,o["check-group"]=ye,t["check-group"]=q},S.FCheckBox=$,S.FCheckBoxGroup=E,S.checkBoxGroupPropsResolver=q,S.checkBoxProps=N,S.checkBoxPropsResolver=G,S.checkboxGroupProps=x,S.default=E,Object.defineProperties(S,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|