@farris/ui-vue 1.4.0 → 1.4.1
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/avatar/index.esm.js +2 -1
- package/components/avatar/index.umd.cjs +1 -1
- package/components/checkbox/index.esm.js +2 -1
- package/components/checkbox/index.umd.cjs +1 -1
- package/components/combo-list/index.esm.js +2 -1
- package/components/combo-list/index.umd.cjs +1 -1
- package/components/condition/index.css +1 -1
- package/components/condition/index.esm.js +715 -704
- package/components/condition/index.umd.cjs +1 -1
- package/components/content-container/index.css +1 -1
- package/components/content-container/index.esm.js +1180 -1169
- package/components/content-container/index.umd.cjs +1 -1
- package/components/data-grid/index.css +1 -1
- package/components/data-grid/index.esm.js +2949 -2901
- package/components/data-grid/index.umd.cjs +1 -1
- package/components/data-view/index.css +1 -1
- package/components/data-view/index.esm.js +609 -598
- package/components/data-view/index.umd.cjs +1 -1
- package/components/date-picker/index.esm.js +3 -2
- package/components/date-picker/index.umd.cjs +1 -1
- package/components/designer-canvas/index.css +1 -1
- package/components/designer-canvas/index.esm.js +2081 -2062
- package/components/designer-canvas/index.umd.cjs +1 -1
- package/components/designer-outline/index.css +1 -1
- package/components/drawer/index.esm.js +23 -21
- package/components/drawer/index.umd.cjs +1 -1
- package/components/dynamic-form/index.css +1 -1
- package/components/dynamic-form/index.esm.js +2745 -2691
- package/components/dynamic-form/index.umd.cjs +1 -1
- package/components/external-container/index.css +1 -1
- package/components/external-container/index.esm.js +1322 -1311
- package/components/external-container/index.umd.cjs +1 -1
- package/components/field-selector/index.css +1 -1
- package/components/field-selector/index.esm.js +85 -74
- package/components/field-selector/index.umd.cjs +1 -1
- package/components/filter-bar/index.esm.js +4618 -4320
- package/components/filter-bar/index.umd.cjs +3 -3
- package/components/flow-canvas/index.css +1 -1
- package/components/flow-canvas/index.esm.js +1982 -1963
- package/components/flow-canvas/index.umd.cjs +1 -1
- package/components/input-group/index.esm.js +2 -1
- package/components/input-group/index.umd.cjs +1 -1
- package/components/list-view/index.css +1 -1
- package/components/list-view/index.esm.js +822 -811
- package/components/list-view/index.umd.cjs +1 -1
- package/components/lookup/index.css +1 -1
- package/components/lookup/index.esm.js +3268 -3219
- package/components/lookup/index.umd.cjs +1 -1
- package/components/mapping-editor/index.css +1 -1
- package/components/mapping-editor/index.esm.js +1985 -1937
- package/components/mapping-editor/index.umd.cjs +1 -1
- package/components/number-range/index.esm.js +136 -135
- package/components/number-range/index.umd.cjs +1 -1
- package/components/number-spinner/index.esm.js +2 -1
- package/components/number-spinner/index.umd.cjs +1 -1
- package/components/order/index.esm.js +2 -1
- package/components/order/index.umd.cjs +1 -1
- package/components/property-editor/index.esm.js +2 -1
- package/components/property-editor/index.umd.cjs +1 -1
- package/components/property-panel/index.esm.js +295 -283
- package/components/property-panel/index.umd.cjs +2 -2
- package/components/query-solution/index.css +1 -1
- package/components/query-solution/index.esm.js +5430 -5374
- package/components/query-solution/index.umd.cjs +7 -7
- package/components/radio-group/index.esm.js +2 -1
- package/components/radio-group/index.umd.cjs +1 -1
- package/components/schema-selector/index.css +1 -1
- package/components/schema-selector/index.esm.js +1259 -1248
- package/components/schema-selector/index.umd.cjs +2 -2
- package/components/section/index.css +1 -1
- package/components/section/index.esm.js +1272 -1261
- package/components/section/index.umd.cjs +1 -1
- package/components/switch/index.esm.js +2 -1
- package/components/switch/index.umd.cjs +1 -1
- package/components/textarea/index.esm.js +14 -13
- package/components/textarea/index.umd.cjs +1 -1
- package/components/time-picker/index.esm.js +2 -1
- package/components/time-picker/index.umd.cjs +1 -1
- package/components/tree-grid/index.css +1 -1
- package/components/tree-grid/index.esm.js +715 -704
- package/components/tree-grid/index.umd.cjs +1 -1
- package/components/tree-view/index.css +1 -1
- package/components/tree-view/index.esm.js +107 -96
- package/components/tree-view/index.umd.cjs +1 -1
- package/farris.all.esm.js +14687 -14334
- package/farris.all.umd.cjs +11 -11
- package/index.css +1 -1
- package/package.json +1 -1
- package/types/condition/src/composition/condition-value/input-group-value.d.ts +1 -1
- package/types/dynamic-form/src/component/dynamic-form-label/dynamic-form-label.component.d.ts +6 -0
- package/types/dynamic-form/src/component/dynamic-form-label/dynamic-form-label.props.d.ts +8 -0
- package/types/dynamic-form/src/composition/form-binding-resolver-design.d.ts +6 -0
- package/types/filter-bar/src/components/drawer.component.d.ts +4 -0
- package/types/filter-bar/src/components/filter-item/filter-item.component.d.ts +10 -0
- package/types/filter-bar/src/components/filter-item/filter-item.props.d.ts +3 -0
- package/types/filter-bar/src/components/filter-item-condition/filter-item-condition.component.d.ts +11 -0
- package/types/filter-bar/src/components/filter-item-condition/filter-item-condition.props.d.ts +3 -0
- package/types/filter-bar/src/composition/types.d.ts +2 -0
- package/types/filter-bar/src/composition/use-condition.d.ts +19 -0
- package/types/filter-bar/src/filter-bar.component.d.ts +2 -1
- package/types/filter-bar/src/types.d.ts +4 -6
- package/types/filter-bar/src/components/filter-item.component.d.ts +0 -5
- /package/types/filter-bar/src/components/{toolbar-component.d.ts → toolbar.component.d.ts} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(k,m){typeof exports=="object"&&typeof module<"u"?m(exports,require("vue"),require("lodash-es"),require("../designer-canvas/index.umd.js"),require("../common/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es","../designer-canvas/index.umd.js","../common/index.umd.js"],m):(k=typeof globalThis<"u"?globalThis:k||self,m(k.switch={},k.Vue,k.LodashES,k.designerCanvas,k.common))})(this,function(k,m,T,j,G){"use strict";var ue=Object.defineProperty;var me=(k,m,T)=>m in k?ue(k,m,{enumerable:!0,configurable:!0,writable:!0,value:T}):k[m]=T;var C=(k,m,T)=>me(k,typeof m!="symbol"?m+"":m,T);const O={},W={};function $(c){const{properties:n,title:e,ignore:t}=c,o=t&&Array.isArray(t),r=Object.keys(n).reduce((l,f)=>((!o||!t.find(h=>h===f))&&(l[f]=n[f].type==="object"&&n[f].properties?$(n[f]):T.cloneDeep(n[f].default)),l),{});if(e&&(!o||!t.find(l=>l==="id"))){const l=e.toLowerCase().replace(/-/g,"_");r.id=`${l}_${Math.random().toString().slice(2,6)}`}return r}function _(c){const{properties:n,title:e,required:t}=c;if(t&&Array.isArray(t)){const o=t.reduce((r,l)=>(r[l]=n[l].type==="object"&&n[l].properties?$(n[l]):T.cloneDeep(n[l].default),r),{});if(e&&t.find(r=>r==="id")){const r=e.toLowerCase().replace(/-/g,"_");o.id=`${r}_${Math.random().toString().slice(2,6)}`}return o}return{type:e}}function z(c,n={},e){const t=O[c];if(t){let o=_(t);const r=W[c];return o=r?r({getSchemaByType:z},o,n,e):o,o}return null}function X(c,n){const e=$(n);return Object.keys(e).reduce((t,o)=>(Object.prototype.hasOwnProperty.call(c,o)&&(t[o]&&T.isPlainObject(t[o])&&T.isPlainObject(c[o]||!c[o])?Object.assign(t[o],c[o]||{}):t[o]=c[o]),t),e),e}function Q(c,n){return Object.keys(c).filter(t=>c[t]!=null).reduce((t,o)=>{if(n.has(o)){const r=n.get(o);if(typeof r=="string")t[r]=c[o];else{const l=r(o,c[o],c);Object.assign(t,l)}}else t[o]=c[o];return t},{})}function H(c,n,e=new Map){const t=X(c,n);return Q(t,e)}function J(c={}){function n(s,d,i,p){if(typeof i=="number")return p[s].length===i;if(typeof i=="object"){const y=Object.keys(i)[0],u=i[y];if(y==="not")return Number(p[s].length)!==Number(u);if(y==="moreThan")return Number(p[s].length)>=Number(u);if(y==="lessThan")return Number(p[s].length)<=Number(u)}return!1}function e(s,d,i,p){return p[s]&&p[s].propertyValue&&String(p[s].propertyValue.value)===String(i)}const t=new Map([["length",n],["getProperty",e]]);Object.keys(c).reduce((s,d)=>(s.set(d,c[d]),s),t);function o(s,d){const i=s;return typeof d=="number"?[{target:i,operator:"length",param:null,value:Number(d)}]:typeof d=="boolean"?[{target:i,operator:"getProperty",param:s,value:!!d}]:typeof d=="object"?Object.keys(d).map(p=>{if(p==="length")return{target:i,operator:"length",param:null,value:d[p]};const y=p,u=d[p];return{target:i,operator:"getProperty",param:y,value:u}}):[]}function r(s){return Object.keys(s).reduce((i,p)=>{const y=o(p,s[p]);return i.push(...y),i},[])}function l(s,d){if(t.has(s.operator)){const i=t.get(s.operator);return i&&i(s.target,s.param,s.value,d)||!1}return!1}function f(s,d){return r(s).reduce((y,u)=>y&&l(u,d),!0)}function h(s,d){const i=Object.keys(s),p=i.includes("allOf"),y=i.includes("anyOf"),u=p||y,v=(u?s[u?p?"allOf":"anyOf":"allOf"]:[s]).map(V=>f(V,d));return p?!v.includes(!1):v.includes(!0)}return{parseValueSchema:h}}const a={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"}},Y={},Z={};J();function K(c,n,e=new Map,t=(l,f,h,s)=>f,o={},r=l=>l){return O[n.title]=n,W[n.title]=t,Y[n.title]=o,Z[n.title]=r,(l={})=>{const f=H(l,n,e),h=Object.keys(c).reduce((s,d)=>(s[d]=c[d].default,s),{});return Object.assign(h,f)}}function R(c,n){return{customClass:n.class,customStyle:n.style}}const x=new Map([["appearance",R]]),ee={$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 te(c,n,e){return n}const L={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:()=>{}}},U=K(L,ee,x,te),A=m.defineComponent({name:"FSwitch",props:L,emits:["update:modelValue","modelValueChanged"],setup(c,n){const{disabled:e,size:t,onLabel:o,offLabel:r,onBackground:l,offBackground:f,onColor:h,offColor:s,readonly:d}=m.toRefs(c),i=m.ref(c.modelValue),p=m.computed(()=>({switch:!0,"f-cmp-switch":!0,checked:i.value,disabled:d.value||e.value,"switch-large":t.value==="large","switch-medium":t.value==="medium","switch-small":t.value==="small"})),y=m.computed(()=>i.value?{outline:"none",background:l.value}:{outline:"none",backgroundColor:f.value}),u=m.computed(()=>i.value?{background:h.value}:{backgroundColor:s.value}),g=m.computed(()=>(o==null?void 0:o.value)||(r==null?void 0:r.value));function F(){d.value||e.value||(i.value=!i.value,n.emit("update:modelValue",i.value))}return m.watch(i,(v,w)=>{v!==w&&n.emit("modelValueChanged",v)}),m.watch(()=>c.modelValue,(v,w)=>{v!==w&&(i.value=v)}),()=>m.createVNode("span",{tabindex:"0",role:"button",class:p.value,style:y.value,onClick:F},[g.value&&m.createVNode("span",{class:"switch-pane"},[m.createVNode("span",{class:"switch-label-checked"},[o==null?void 0:o.value]),m.createVNode("span",{class:"switch-label-unchecked"},[r==null?void 0:r.value])]),m.createVNode("small",{style:u.value},[n.slots.default&&n.slots.default()])])}});function ne(c,n,e){var q;const t=e&&e.getStyles&&e.getStyles()||"",o=e&&e.getDesignerClass&&e.getDesignerClass()||"",r=m.ref();function l(){return(n==null?void 0:n.schema.componentType)==="frame"?!1:e&&e.checkCanMoveComponent?e.checkCanMoveComponent():!0}function f(){return!1}function h(){return(n==null?void 0:n.schema.componentType)==="frame"?!1:e&&e.checkCanDeleteComponent?e.checkCanDeleteComponent():!0}function s(){return(n==null?void 0:n.schema.componentType)==="frame"?!0:e&&e.hideNestedPaddingInDesginerView?e.hideNestedPaddingInDesginerView():!1}function d(b){if(!b||!b.value)return null;if(b.value.schema&&b.value.schema.type==="component")return b.value;const S=m.ref(b==null?void 0:b.value.parent),P=d(S);return P||null}function i(b=n){var E;const{componentInstance:S,designerItemElementRef:P}=b;if(!S||!S.value)return null;const{getCustomButtons:M}=S.value;return S.value.canMove||M&&((E=M())!=null&&E.length)?P:i(b.parent)}function p(b){return!!e&&e.canAccepts(b)}function y(){return(n==null?void 0:n.schema.label)||(n==null?void 0:n.schema.title)||(n==null?void 0:n.schema.name)}function u(){}function g(b,S){!b||!S||e!=null&&e.onAcceptMovedChildElement&&e.onAcceptMovedChildElement(b,S)}function F(b,S){const{componentType:P}=b;let M=z(P,b,S);e&&e.onResolveNewComponentSchema&&(M=e.onResolveNewComponentSchema(b,M));const E=P.toLowerCase().replace(/-/g,"_");return M&&!M.id&&M.type===P&&(M.id=`${E}_${Math.random().toString().slice(2,6)}`),M}function v(b){}function w(...b){if(e&&e.getPropsConfig)return e.getPropsConfig(...b)}function V(){e&&e.onRemoveComponent&&e.onRemoveComponent(),n!=null&&n.schema.contents&&n.schema.contents.map(b=>{let S=b.id;b.type==="component-ref"&&(S=b.component);const P=c.value.querySelectorAll(`#${S}-design-item`);P!=null&&P.length&&Array.from(P).map(M=>{var E;(E=M==null?void 0:M.componentInstance)!=null&&E.value.onRemoveComponent&&M.componentInstance.value.onRemoveComponent()})})}function D(){if(e&&e.getCustomButtons)return e.getCustomButtons()}function B(b){if(e&&e.onPropertyChanged)return e.onPropertyChanged(b)}return r.value={canMove:l(),canSelectParent:f(),canDelete:h(),canNested:!s(),contents:n==null?void 0:n.schema.contents,elementRef:c,parent:(q=n==null?void 0:n.parent)==null?void 0:q.componentInstance,schema:n==null?void 0:n.schema,styles:t,designerClass:o,canAccepts:p,getBelongedComponentInstance:d,getDraggableDesignItemElement:i,getDraggingDisplayText:y,getPropConfig:w,getDragScopeElement:u,onAcceptMovedChildElement:g,onChildElementMovedOut:v,addNewChildComponentSchema:F,triggerBelongedComponentToMoveWhenMoved:!!e&&e.triggerBelongedComponentToMoveWhenMoved||m.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:!!e&&e.triggerBelongedComponentToDeleteWhenDeleted||m.ref(!1),onRemoveComponent:V,getCustomButtons:D,onPropertyChanged:B},r}class oe{constructor(n,e){C(this,"componentId");C(this,"viewModelId");C(this,"eventsEditorUtils");C(this,"formSchemaUtils");C(this,"formMetadataConverter");C(this,"designViewModelUtils");C(this,"designViewModelField");C(this,"controlCreatorUtils");C(this,"designerHostService");C(this,"schemaService",null);C(this,"metadataService",null);C(this,"propertyConfig",{type:"object",categories:{}});var t;this.componentId=n,this.designerHostService=e,this.eventsEditorUtils=e.eventsEditorUtils,this.formSchemaUtils=e.formSchemaUtils,this.formMetadataConverter=e.formMetadataConverter,this.viewModelId=((t=this.formSchemaUtils)==null?void 0:t.getViewModelIdByComponentId(n))||"",this.designViewModelUtils=e.designViewModelUtils,this.controlCreatorUtils=e.controlCreatorUtils,this.metadataService=e.metadataService,this.schemaService=e.schemaService}getTableInfo(){var n;return(n=this.schemaService)==null?void 0:n.getTableInfoByViewModelId(this.viewModelId)}setDesignViewModelField(n){var t;const e=n.binding&&n.binding.type==="Form"&&n.binding.field;if(e){if(!this.designViewModelField){const o=this.designViewModelUtils.getDgViewModel(this.viewModelId);this.designViewModelField=o.fields.find(r=>r.id===e)}n.updateOn=(t=this.designViewModelField)==null?void 0:t.updateOn}}getBasicPropConfig(n){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",editable:!1,data:[{value:n.type,name:a[n.type].name}]}}}}}getAppearanceConfig(n=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(n,e){const t=e&&e.parent&&e.parent.schema;if(!t)return;const o=t.contents.findIndex(l=>l.id===n),r=T.cloneDeep(t.contents[o]);t.contents.splice(o,1),t.contents.splice(o,0,r)}}const I=class I{static getEditorTypesByMDataType(n){const e=I.fieldControlTypeMapping[n];return e||[{key:"",value:""}]}static getAllInputTypes(){const n=[];for(const e in I.fieldControlTypeMapping)I.fieldControlTypeMapping[e].forEach(t=>{n.find(o=>o.key===t.key&&o.value===t.value)||n.push({key:t.key,value:t.value})});return n}static mappingDomPropAndSchemaProp(n){var o;const e=(o=n.editor)==null?void 0:o.type;if(!e)return[];const t=[];switch(t.push({domField:"editor.required",schemaField:"require"}),t.push({domField:"editor.readonly",schemaField:"readonly"}),e){case a["data-grid-column"].type:case a["tree-grid-column"].type:{t.push({domField:"title",schemaField:"name"});break}default:t.push({domField:"label",schemaField:"name"})}return(e===a["input-group"].type||e===a.textarea.type||e===a["number-spinner"].type)&&t.push({domField:"editor.maxLength",schemaField:"type.length"}),e===a["number-spinner"].type&&t.push({domField:"editor.precision",schemaField:"type.precision"}),(e===a["combo-list"].type||e===a["radio-group"].type)&&t.push({domField:"editor.data",schemaField:"type.enumValues"}),e===a["date-picker"].type&&(t.push({domField:"editor.displayFormat",schemaField:"editor.format"}),t.push({domField:"editor.fieldType",schemaField:"type.name"})),e===a["number-spinner"].type&&(t.push({domField:"editor.max",schemaField:"editor.maxValue"}),t.push({domField:"editor.min",schemaField:"editor.minValue"})),e===a.lookup.type&&(t.push({domField:"editor.dataSource",schemaField:"editor.dataSource"}),t.push({domField:"editor.valueField",schemaField:"editor.valueField"}),t.push({domField:"editor.textField",schemaField:"editor.textField"}),t.push({domField:"editor.displayType",schemaField:"editor.displayType"}),t.push({domField:"editor.mapFields",schemaField:"editor.mapFields"}),t.push({domField:"editor.helpId",schemaField:"editor.helpId"})),t.push({domField:"path",schemaField:"bindingPath"}),t.push({domField:"binding.path",schemaField:"bindingField"}),t.push({domField:"binding.fullPath",schemaField:"path"}),(e===a["data-grid-column"].type||e===a["tree-grid-column"].type)&&t.push({domField:"field",schemaField:"bindingPath"}),t}};C(I,"fieldControlTypeMapping",{String:[{key:a["input-group"].type,value:a["input-group"].name},{key:a.lookup.type,value:a.lookup.name},{key:a["date-picker"].type,value:a["date-picker"].name},{key:a["check-group"].type,value:a["check-group"].name},{key:a["radio-group"].type,value:a["radio-group"].name},{key:a["combo-list"].type,value:a["combo-list"].name},{key:a.textarea.type,value:a.textarea.name}],Text:[{key:a.textarea.type,value:a.textarea.name},{key:a.lookup.type,value:a.lookup.name}],Decimal:[{key:a["number-spinner"].type,value:a["number-spinner"].name}],Integer:[{key:a["number-spinner"].type,value:a["number-spinner"].name}],Number:[{key:a["number-spinner"].type,value:a["number-spinner"].name}],BigNumber:[{key:a["number-spinner"].type,value:a["number-spinner"].name}],Date:[{key:a["date-picker"].type,value:a["date-picker"].name}],DateTime:[{key:a["date-picker"].type,value:a["date-picker"].name}],Boolean:[{key:a.switch.type,value:a.switch.name},{key:a["check-box"].type,value:a["check-box"].name}],Enum:[{key:a["combo-list"].type,value:a["combo-list"].name},{key:a["radio-group"].type,value:a["radio-group"].name}],Object:[{key:a.lookup.type,value:a.lookup.name},{key:a["combo-list"].type,value:a["combo-list"].name},{key:a["radio-group"].type,value:a["radio-group"].name}]});let N=I;const ie=m.ref(0);class re{constructor(){C(this,"label","");C(this,"id","");C(this,"columnInSM",12);C(this,"columnInMD",6);C(this,"columnInLG",3);C(this,"columnInEL",2);C(this,"displayWidthInSM",1);C(this,"displayWidthInMD",1);C(this,"displayWidthInLG",1);C(this,"displayWidthInEL",1);C(this,"displayColumnCountAtBreakPoint","md");C(this,"tagRow",0);C(this,"showTopBorder",0);C(this,"group",1);C(this,"isSupportedClass",!0);C(this,"fieldSetId","")}}function ae(c){let n,e;const t=new Map;let o=[];function r(d,i){const y=d.split(" ").filter(w=>w.startsWith("col-"));if(y.length===0){i.isSupportedClass=!1;return}let u=y.find(w=>/^col-([1-9]|10|11|12)$/.test(w)),g=y.find(w=>/^col-md-([1-9]|10|11|12)$/.test(w)),F=y.find(w=>/^col-xl-([1-9]|10|11|12)$/.test(w)),v=y.find(w=>/^col-el-([1-9]|10|11|12)$/.test(w));u=u||"col-12",i.columnInSM=parseInt(u.replace("col-",""),10),i.displayWidthInSM=i.columnInSM/12,i.displayWidthInSM!==1&&(i.isSupportedClass=!1),g=g||"col-md-"+i.columnInSM,i.columnInMD=parseInt(g.replace("col-md-",""),10),i.displayWidthInMD=i.columnInMD/6,[1,2].includes(i.displayWidthInMD)||(i.isSupportedClass=!1),F=F||"col-xl-"+i.columnInMD,i.columnInLG=parseInt(F.replace("col-xl-",""),10),i.displayWidthInLG=i.columnInLG/3,[1,2,3,4].includes(i.displayWidthInLG)||(i.isSupportedClass=!1),v=v||"col-el-"+i.columnInLG,i.columnInEL=parseInt(v.replace("col-el-",""),10),i.displayWidthInEL=i.columnInEL/2,[1,2,3,4,5,6].includes(i.displayWidthInEL)||(i.isSupportedClass=!1)}function l(d,i,p,y=!1){let u=!1;d.contents.forEach(g=>{if(g.type==="fieldset"){p+=1,l(g,i,p,!0),u=!0;return}u&&(p+=1,u=!1);const F=g.appearance&&g.appearance.class,v=new re;F?r(F,v):v.isSupportedClass=!1,v.label=g.label||g.id,v.id=g.id,v.group=p,y&&(v.fieldSetId=d.id),e===g.id&&(n=p),t.set(g.id,g),i.push(v)})}function f(d){const i=c.getComponentById(d);if(!i||!i.componentType||!i.componentType.startsWith("form"))return{result:!1,message:"只可以在响应式表单组件中调整响应式布局配置"};const p=c.selectNode(i,y=>y.type===j.DgControl["response-form"].type);return!p||!p.contents||p.contents.length===0?{result:!1,message:"Form区域内没有控件,请先添加控件"}:{result:!0,message:"",formNode:p}}function h(d,i){i=i||d.id;const{result:p,message:y,formNode:u}=f(i);if(!p)return{result:p,message:y};e=d.id,o=[],t.clear();const g=u.contents[0].type===j.DgControl.fieldset.type?0:1;l(u,o,g);const F=o.find(w=>!w.isSupportedClass);return{defaultState:{defaultGroupNumber:n||1,model:F?"customize":"standard"},importData:o}}function s(d,i){i=i;const{result:p,formNode:y}=f(i);if(!p)return"";const u=[];return d.forEach(g=>{var w;const F=t.get(g.id),v=F.appearance&&F.appearance.class;if(v){const D=v.split(" ").filter(M=>!M.startsWith("col-")),B="col-"+g.columnInSM,q="col-md-"+g.columnInMD,b="col-xl-"+g.columnInLG,S="col-el-"+g.columnInEL,P=[B,q,b,S].concat(D);F.appearance.class=P.join(" ")}if(g.fieldSetId){const V=y.contents.find(B=>B.id===g.fieldSetId),D=u.find(B=>B.id===g.fieldSetId);D?(w=D.contents)==null||w.push(F):(u.push(V),V.contents=[F])}else u.push(F)}),y.contents=u,y.id}return{checkCanFindFormNode:f,checkCanOpenLayoutEditor:h,changeFormControlsByResponseLayoutConfig:s,getResonseFormLayoutConfig:l}}class se extends oe{constructor(e,t){super(e,t);C(this,"responseLayoutEditorFunction");this.responseLayoutEditorFunction=ae(this.formSchemaUtils)}getPropertyConfig(e,t){return this.propertyConfig.categories.basic=this.getBasicProperties(e,t),this.propertyConfig.categories.appearance=this.getAppearanceProperties(e,t),this.propertyConfig.categories.editor=this.getEditorProperties(e),this.propertyConfig}getBasicProperties(e,t){var r;const o=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:o.designViewModelField?N.getEditorTypesByMDataType((r=o.designViewModelField.type)==null?void 0:r.name):N.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(l,f){if(l)switch(l&&l.propertyID){case"type":{o.changeControlType(e,l,t);break}case"label":{l.needRefreshControlTree=!0;break}}}}}getAppearanceProperties(e,t){const o=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:o.responseLayoutEditorFunction.checkCanOpenLayoutEditor(e,o.componentId)}}},setPropertyRelates(r,l){if(r)switch(r&&r.propertyID){case"responseLayout":o.responseLayoutEditorFunction.changeFormControlsByResponseLayoutConfig(r.propertyValue,o.componentId||e.id),o.updateUnifiedLayoutAfterResponseLayoutChanged(o.componentId),o.updateElementByParentContainer(e.id,t),delete e.responseLayout;break;case"class":o.updateUnifiedLayoutAfterControlChanged(r.propertyValue,e.id,this.componentId),o.updateElementByParentContainer(e.id,t);break}}}}getEditorProperties(e){return this.getComponentConfig(e)}changeControlType(e,t,o){var d,i,p,y;const r=t.propertyValue,l=o&&o.parent&&o.parent.schema;if(!l)return;const f=l.contents.findIndex(u=>u.id===e.id),h=l.contents[f];let s;this.designViewModelField&&(this.designViewModelUtils.getDgViewModel(this.viewModelId).changeField(this.designViewModelField.id,{editor:{$type:r},name:this.designViewModelField.name,require:this.designViewModelField.require,readonly:this.designViewModelField.readonly},!1),s=this.controlCreatorUtils.setFormFieldProperty(this.designViewModelField,r)),s||(s=this.controlCreatorUtils.createFormGroupWithoutField(r)),Object.assign(s,{id:h.id,appearance:h.appearance,size:h.size,label:h.label,binding:h.binding,visible:h.visible}),Object.assign(s.editor,{isTextArea:s.isTextArea&&h.isTextArea,placeholder:(d=h.editor)==null?void 0:d.placeholder,holdPlace:(i=h.editor)==null?void 0:i.holdPlace,readonly:(p=h.editor)==null?void 0:p.readonly,required:(y=h.editor)==null?void 0:y.required}),l.contents.splice(f,1),l.contents.splice(f,0,s),o.schema=Object.assign(h,s),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(u=>u.classList.remove("dgComponentSelected")),Array.from(document.getElementsByClassName("dgComponentFocused")).forEach(u=>u.classList.remove("dgComponentFocused")),ie.value++}getComponentConfig(e,t={},o={},r){const l=Object.assign({description:"编辑器",title:"编辑器",type:"input-group",$converter:"/converter/property-editor.converter"},t),f=Object.assign({readonly:{description:"",title:"只读",type:"boolean",editor:{enableClear:!0,editable:!0}},disabled:{description:"",title:"禁用",type:"boolean",visible:!1},placeholder:{description:"当控件没有值时在输入框中显示的文本",title:"提示文本",type:"string"}},o);return{...l,properties:{...f},setPropertyRelates:r}}updateUnifiedLayoutAfterControlChanged(e,t,o){const r=e.split(" ");let l=r.find(i=>/^col-([1-9]|10|11|12)$/.test(i)),f=r.find(i=>/^col-md-([1-9]|10|11|12)$/.test(i)),h=r.find(i=>/^col-xl-([1-9]|10|11|12)$/.test(i)),s=r.find(i=>/^col-el-([1-9]|10|11|12)$/.test(i));l=l||"col-12",f=f||"col-md-"+l.replace("col-",""),h=h||"col-xl-"+f.replace("col-md-",""),s=s||"col-el-"+h.replace("col-xl-","");const d={id:t,columnInSM:parseInt(l.replace("col-",""),10),columnInMD:parseInt(f.replace("col-md-",""),10),columnInLG:parseInt(h.replace("col-xl-",""),10),columnInEL:parseInt(s.replace("col-el-",""),10)};this.updateUnifiedLayoutAfterResponseLayoutChanged(o,d)}updateUnifiedLayoutAfterResponseLayoutChanged(e,t){const{formNode:o}=this.responseLayoutEditorFunction.checkCanFindFormNode(e);if(!o||!o.unifiedLayout)return;const r=[];if(this.responseLayoutEditorFunction.getResonseFormLayoutConfig(o,r,1),t){const u=r.find(g=>g.id===t.id);Object.assign(u||{},t)}const l=r.map(u=>u.columnInSM),f=r.map(u=>u.columnInMD),h=r.map(u=>u.columnInLG),s=r.map(u=>u.columnInEL),d=this.checkIsUniqueColumn(l)?l[0]:null,i=this.checkIsUniqueColumn(f)?f[0]:null,p=this.checkIsUniqueColumn(h)?h[0]:null,y=this.checkIsUniqueColumn(s)?s[0]:null;Object.assign(o.unifiedLayout,{uniqueColClassInSM:d,uniqueColClassInMD:i,uniqueColClassInLG:p,uniqueColClassInEL:y})}checkIsUniqueColumn(e){const t=new Set(e);return Array.from(t).length===1}getItemCollectionEditor(e,t,o){return t=t||"value",o=o||"name",{editor:{columns:[{field:t,title:"值",dataType:"string"},{field:o,title:"名称",dataType:"string"},{field:"disabled",title:"禁用",visible:!1,dataType:"boolean",editor:{type:"switch"}}],type:"item-collection-editor",valueField:t,nameField:o,requiredFields:[t,o],uniqueFields:[t,o],readonly:this.checkEnumDataReadonly(e)}}}checkEnumDataReadonly(e){return!e.binding||e.binding.type!=="Form"?!1:!!(this.designViewModelField&&this.designViewModelField.type&&this.designViewModelField.type.$type===G.FormSchemaEntityFieldType$Type.EnumType)}}class le extends se{constructor(n,e){super(n,e)}getEditorProperties(n){return this.getComponentConfig(n,{type:"switch"},{disabled:{visible:!1},placeholder:{visible:!1},onLabel:{description:"",title:"打开时标签",type:"string"},offLabel:{description:"",title:"关闭时标签",type:"string"},onBackground:{description:"",title:"打开时背景色",type:"string"},offBackground:{description:"",title:"关闭时背景色",type:"string"},size:{description:"",title:"尺寸",type:"enum",editor:{data:[{id:"small",name:"小号"},{id:"medium",name:"中号"},{id:"large",name:"大号"}]}}})}}function ce(c,n){const e=c.schema;function t(o,r){return new le(o,n).getPropertyConfig(e,r)}return{getPropsConfig:t}}const de=m.defineComponent({name:"FSwitchDesign",props:L,emits:["update:modelValue"],setup(c,n){const{size:e,onLabel:t,offLabel:o}=m.toRefs(c),r=m.ref(),l=m.inject("designer-host-service"),f=m.inject("design-item-context"),h=ce(f,l),s=ne(r,f,h);m.onMounted(()=>{r.value.componentInstance=s}),n.expose(s.value);const d=m.computed(()=>({switch:!0,"f-cmp-switch":!0,checked:!1,"switch-large":e.value==="large","switch-medium":e.value==="medium","switch-small":e.value==="small"})),i=m.computed(()=>(t==null?void 0:t.value)||(o==null?void 0:o.value));return()=>m.createVNode("span",{ref:r,tabindex:"0",role:"button",class:d.value},[i.value&&m.createVNode("span",{class:"switch-pane"},[m.createVNode("span",{class:"switch-label-unchecked"},[o==null?void 0:o.value])]),m.createVNode("small",null,[n.slots.default&&n.slots.default()])])}});A.register=(c,n,e,t)=>{c.switch=A,n.switch=U},A.registerDesigner=(c,n,e)=>{c.switch=de,n.switch=U};const pe=G.withInstall(A);k.FSwitch=A,k.default=pe,k.propsResolver=U,k.switchProps=L,Object.defineProperties(k,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
|
1
|
+
(function(k,m){typeof exports=="object"&&typeof module<"u"?m(exports,require("vue"),require("lodash-es"),require("../designer-canvas/index.umd.js"),require("../common/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es","../designer-canvas/index.umd.js","../common/index.umd.js"],m):(k=typeof globalThis<"u"?globalThis:k||self,m(k.switch={},k.Vue,k.LodashES,k.designerCanvas,k.common))})(this,function(k,m,T,j,G){"use strict";var ue=Object.defineProperty;var me=(k,m,T)=>m in k?ue(k,m,{enumerable:!0,configurable:!0,writable:!0,value:T}):k[m]=T;var C=(k,m,T)=>me(k,typeof m!="symbol"?m+"":m,T);const O={},W={};function $(c){const{properties:n,title:e,ignore:t}=c,o=t&&Array.isArray(t),r=Object.keys(n).reduce((l,f)=>((!o||!t.find(h=>h===f))&&(l[f]=n[f].type==="object"&&n[f].properties?$(n[f]):T.cloneDeep(n[f].default)),l),{});if(e&&(!o||!t.find(l=>l==="id"))){const l=e.toLowerCase().replace(/-/g,"_");r.id=`${l}_${Math.random().toString().slice(2,6)}`}return r}function _(c){const{properties:n,title:e,required:t}=c;if(t&&Array.isArray(t)){const o=t.reduce((r,l)=>(r[l]=n[l].type==="object"&&n[l].properties?$(n[l]):T.cloneDeep(n[l].default),r),{});if(e&&t.find(r=>r==="id")){const r=e.toLowerCase().replace(/-/g,"_");o.id=`${r}_${Math.random().toString().slice(2,6)}`}return o}return{type:e}}function z(c,n={},e){const t=O[c];if(t){let o=_(t);const r=W[c];return o=r?r({getSchemaByType:z},o,n,e):o,o}return null}function X(c,n){const e=$(n);return Object.keys(e).reduce((t,o)=>(Object.prototype.hasOwnProperty.call(c,o)&&(t[o]&&T.isPlainObject(t[o])&&T.isPlainObject(c[o]||!c[o])?Object.assign(t[o],c[o]||{}):t[o]=c[o]),t),e),e}function Q(c,n){return Object.keys(c).filter(t=>c[t]!=null).reduce((t,o)=>{if(n.has(o)){const r=n.get(o);if(typeof r=="string")t[r]=c[o];else{const l=r(o,c[o],c);Object.assign(t,l)}}else t[o]=c[o];return t},{})}function H(c,n,e=new Map){const t=X(c,n);return Q(t,e)}function J(c={}){function n(s,d,i,p){if(typeof i=="number")return p[s].length===i;if(typeof i=="object"){const y=Object.keys(i)[0],u=i[y];if(y==="not")return Number(p[s].length)!==Number(u);if(y==="moreThan")return Number(p[s].length)>=Number(u);if(y==="lessThan")return Number(p[s].length)<=Number(u)}return!1}function e(s,d,i,p){return p[s]&&p[s].propertyValue&&String(p[s].propertyValue.value)===String(i)}const t=new Map([["length",n],["getProperty",e]]);Object.keys(c).reduce((s,d)=>(s.set(d,c[d]),s),t);function o(s,d){const i=s;return typeof d=="number"?[{target:i,operator:"length",param:null,value:Number(d)}]:typeof d=="boolean"?[{target:i,operator:"getProperty",param:s,value:!!d}]:typeof d=="object"?Object.keys(d).map(p=>{if(p==="length")return{target:i,operator:"length",param:null,value:d[p]};const y=p,u=d[p];return{target:i,operator:"getProperty",param:y,value:u}}):[]}function r(s){return Object.keys(s).reduce((i,p)=>{const y=o(p,s[p]);return i.push(...y),i},[])}function l(s,d){if(t.has(s.operator)){const i=t.get(s.operator);return i&&i(s.target,s.param,s.value,d)||!1}return!1}function f(s,d){return r(s).reduce((y,u)=>y&&l(u,d),!0)}function h(s,d){const i=Object.keys(s),p=i.includes("allOf"),y=i.includes("anyOf"),u=p||y,v=(u?s[u?p?"allOf":"anyOf":"allOf"]:[s]).map(V=>f(V,d));return p?!v.includes(!1):v.includes(!0)}return{parseValueSchema:h}}const a={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"}},Y={},Z={};J();function K(c,n,e=new Map,t=(l,f,h,s)=>f,o={},r=l=>l){return O[n.title]=n,W[n.title]=t,Y[n.title]=o,Z[n.title]=r,(l={})=>{const f=H(l,n,e),h=Object.keys(c).reduce((s,d)=>(s[d]=c[d].default,s),{});return Object.assign(h,f)}}function R(c,n){return{customClass:n.class,customStyle:n.style}}const x=new Map([["appearance",R]]),ee={$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 te(c,n,e){return n}const L={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:()=>{}}},U=K(L,ee,x,te),A=m.defineComponent({name:"FSwitch",props:L,emits:["update:modelValue","modelValueChanged"],setup(c,n){const{disabled:e,size:t,onLabel:o,offLabel:r,onBackground:l,offBackground:f,onColor:h,offColor:s,readonly:d}=m.toRefs(c),i=m.ref(c.modelValue),p=m.computed(()=>({switch:!0,"f-cmp-switch":!0,checked:i.value,disabled:d.value||e.value,"switch-large":t.value==="large","switch-medium":t.value==="medium","switch-small":t.value==="small"})),y=m.computed(()=>i.value?{outline:"none",background:l.value}:{outline:"none",backgroundColor:f.value}),u=m.computed(()=>i.value?{background:h.value}:{backgroundColor:s.value}),g=m.computed(()=>(o==null?void 0:o.value)||(r==null?void 0:r.value));function F(){d.value||e.value||(i.value=!i.value,n.emit("update:modelValue",i.value))}return m.watch(i,(v,w)=>{v!==w&&n.emit("modelValueChanged",v)}),m.watch(()=>c.modelValue,(v,w)=>{v!==w&&(i.value=v)}),()=>m.createVNode("span",{tabindex:"0",role:"button",class:p.value,style:y.value,onClick:F},[g.value&&m.createVNode("span",{class:"switch-pane"},[m.createVNode("span",{class:"switch-label-checked"},[o==null?void 0:o.value]),m.createVNode("span",{class:"switch-label-unchecked"},[r==null?void 0:r.value])]),m.createVNode("small",{style:u.value},[n.slots.default&&n.slots.default()])])}});function ne(c,n,e){var q;const t=e&&e.getStyles&&e.getStyles()||"",o=e&&e.getDesignerClass&&e.getDesignerClass()||"",r=m.ref();function l(){return(n==null?void 0:n.schema.componentType)==="frame"?!1:e&&e.checkCanMoveComponent?e.checkCanMoveComponent():!0}function f(){return!1}function h(){return(n==null?void 0:n.schema.componentType)==="frame"?!1:e&&e.checkCanDeleteComponent?e.checkCanDeleteComponent():!0}function s(){return(n==null?void 0:n.schema.componentType)==="frame"?!0:e&&e.hideNestedPaddingInDesginerView?e.hideNestedPaddingInDesginerView():!1}function d(b){if(!b||!b.value)return null;if(b.value.schema&&b.value.schema.type==="component")return b.value;const S=m.ref(b==null?void 0:b.value.parent),P=d(S);return P||null}function i(b=n){var E;const{componentInstance:S,designerItemElementRef:P}=b;if(!S||!S.value)return null;const{getCustomButtons:M}=S.value;return S.value.canMove||M&&((E=M())!=null&&E.length)?P:i(b.parent)}function p(b){return!!e&&e.canAccepts(b)}function y(){return(n==null?void 0:n.schema.label)||(n==null?void 0:n.schema.title)||(n==null?void 0:n.schema.name)}function u(){}function g(b,S){!b||!S||e!=null&&e.onAcceptMovedChildElement&&e.onAcceptMovedChildElement(b,S)}function F(b,S){const{componentType:P}=b;let M=z(P,b,S);e&&e.onResolveNewComponentSchema&&(M=e.onResolveNewComponentSchema(b,M));const E=P.toLowerCase().replace(/-/g,"_");return M&&!M.id&&M.type===P&&(M.id=`${E}_${Math.random().toString().slice(2,6)}`),M}function v(b){}function w(...b){if(e&&e.getPropsConfig)return e.getPropsConfig(...b)}function V(){e&&e.onRemoveComponent&&e.onRemoveComponent(),n!=null&&n.schema.contents&&n.schema.contents.map(b=>{let S=b.id;b.type==="component-ref"&&(S=b.component);const P=c.value.querySelectorAll(`#${S}-design-item`);P!=null&&P.length&&Array.from(P).map(M=>{var E;(E=M==null?void 0:M.componentInstance)!=null&&E.value.onRemoveComponent&&M.componentInstance.value.onRemoveComponent()})})}function D(){if(e&&e.getCustomButtons)return e.getCustomButtons()}function B(b){if(e&&e.onPropertyChanged)return e.onPropertyChanged(b)}return r.value={canMove:l(),canSelectParent:f(),canDelete:h(),canNested:!s(),contents:n==null?void 0:n.schema.contents,elementRef:c,parent:(q=n==null?void 0:n.parent)==null?void 0:q.componentInstance,schema:n==null?void 0:n.schema,styles:t,designerClass:o,canAccepts:p,getBelongedComponentInstance:d,getDraggableDesignItemElement:i,getDraggingDisplayText:y,getPropConfig:w,getDragScopeElement:u,onAcceptMovedChildElement:g,onChildElementMovedOut:v,addNewChildComponentSchema:F,triggerBelongedComponentToMoveWhenMoved:!!e&&e.triggerBelongedComponentToMoveWhenMoved||m.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:!!e&&e.triggerBelongedComponentToDeleteWhenDeleted||m.ref(!1),onRemoveComponent:V,getCustomButtons:D,onPropertyChanged:B},r}class oe{constructor(n,e){C(this,"componentId");C(this,"viewModelId");C(this,"eventsEditorUtils");C(this,"formSchemaUtils");C(this,"formMetadataConverter");C(this,"designViewModelUtils");C(this,"designViewModelField");C(this,"controlCreatorUtils");C(this,"designerHostService");C(this,"schemaService",null);C(this,"metadataService",null);C(this,"propertyConfig",{type:"object",categories:{}});var t;this.componentId=n,this.designerHostService=e,this.eventsEditorUtils=e.eventsEditorUtils,this.formSchemaUtils=e.formSchemaUtils,this.formMetadataConverter=e.formMetadataConverter,this.viewModelId=((t=this.formSchemaUtils)==null?void 0:t.getViewModelIdByComponentId(n))||"",this.designViewModelUtils=e.designViewModelUtils,this.controlCreatorUtils=e.controlCreatorUtils,this.metadataService=e.metadataService,this.schemaService=e.schemaService}getTableInfo(){var n;return(n=this.schemaService)==null?void 0:n.getTableInfoByViewModelId(this.viewModelId)}setDesignViewModelField(n){var t;const e=n.binding&&n.binding.type==="Form"&&n.binding.field;if(e){if(!this.designViewModelField){const o=this.designViewModelUtils.getDgViewModel(this.viewModelId);this.designViewModelField=o.fields.find(r=>r.id===e)}n.updateOn=(t=this.designViewModelField)==null?void 0:t.updateOn}}getBasicPropConfig(n){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",editable:!1,data:[{value:n.type,name:a[n.type].name}]}}}}}getAppearanceConfig(n=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(n,e){const t=e&&e.parent&&e.parent.schema;if(!t)return;const o=t.contents.findIndex(l=>l.id===n),r=T.cloneDeep(t.contents[o]);t.contents.splice(o,1),t.contents.splice(o,0,r)}}const I=class I{static getEditorTypesByMDataType(n){const e=I.fieldControlTypeMapping[n];return e||[{key:"",value:""}]}static getAllInputTypes(){const n=[];for(const e in I.fieldControlTypeMapping)I.fieldControlTypeMapping[e].forEach(t=>{n.find(o=>o.key===t.key&&o.value===t.value)||n.push({key:t.key,value:t.value})});return n}static mappingDomPropAndSchemaProp(n){var o;const e=(o=n.editor)==null?void 0:o.type;if(!e)return[];const t=[];switch(t.push({domField:"editor.required",schemaField:"require"}),t.push({domField:"editor.readonly",schemaField:"readonly"}),e){case a["data-grid-column"].type:case a["tree-grid-column"].type:{t.push({domField:"title",schemaField:"name"});break}default:t.push({domField:"label",schemaField:"name"})}return(e===a["input-group"].type||e===a.textarea.type||e===a["number-spinner"].type)&&t.push({domField:"editor.maxLength",schemaField:"type.length"}),e===a["number-spinner"].type&&t.push({domField:"editor.precision",schemaField:"type.precision"}),(e===a["combo-list"].type||e===a["radio-group"].type)&&t.push({domField:"editor.data",schemaField:"type.enumValues"}),e===a["date-picker"].type&&(t.push({domField:"editor.displayFormat",schemaField:"editor.format"}),t.push({domField:"editor.fieldType",schemaField:"type.name"})),e===a["number-spinner"].type&&(t.push({domField:"editor.max",schemaField:"editor.maxValue"}),t.push({domField:"editor.min",schemaField:"editor.minValue"})),e===a.lookup.type&&(t.push({domField:"editor.dataSource",schemaField:"editor.dataSource"}),t.push({domField:"editor.valueField",schemaField:"editor.valueField"}),t.push({domField:"editor.textField",schemaField:"editor.textField"}),t.push({domField:"editor.displayType",schemaField:"editor.displayType"}),t.push({domField:"editor.mapFields",schemaField:"editor.mapFields"}),t.push({domField:"editor.helpId",schemaField:"editor.helpId"})),t.push({domField:"path",schemaField:"bindingPath"}),t.push({domField:"binding.path",schemaField:"bindingField"}),t.push({domField:"binding.fullPath",schemaField:"path"}),(e===a["data-grid-column"].type||e===a["tree-grid-column"].type)&&t.push({domField:"field",schemaField:"bindingPath"}),t}};C(I,"fieldControlTypeMapping",{String:[{key:a["input-group"].type,value:a["input-group"].name},{key:a.lookup.type,value:a.lookup.name},{key:a["date-picker"].type,value:a["date-picker"].name},{key:a["check-group"].type,value:a["check-group"].name},{key:a["radio-group"].type,value:a["radio-group"].name},{key:a["combo-list"].type,value:a["combo-list"].name},{key:a.textarea.type,value:a.textarea.name}],Text:[{key:a.textarea.type,value:a.textarea.name},{key:a.lookup.type,value:a.lookup.name}],Decimal:[{key:a["number-spinner"].type,value:a["number-spinner"].name}],Integer:[{key:a["number-spinner"].type,value:a["number-spinner"].name}],Number:[{key:a["number-spinner"].type,value:a["number-spinner"].name}],BigNumber:[{key:a["number-spinner"].type,value:a["number-spinner"].name}],Date:[{key:a["date-picker"].type,value:a["date-picker"].name}],DateTime:[{key:a["date-picker"].type,value:a["date-picker"].name}],Boolean:[{key:a.switch.type,value:a.switch.name},{key:a["check-box"].type,value:a["check-box"].name}],Enum:[{key:a["combo-list"].type,value:a["combo-list"].name},{key:a["radio-group"].type,value:a["radio-group"].name}],Object:[{key:a.lookup.type,value:a.lookup.name},{key:a["combo-list"].type,value:a["combo-list"].name},{key:a["radio-group"].type,value:a["radio-group"].name}]});let N=I;const ie=m.ref(0);class re{constructor(){C(this,"label","");C(this,"id","");C(this,"columnInSM",12);C(this,"columnInMD",6);C(this,"columnInLG",3);C(this,"columnInEL",2);C(this,"displayWidthInSM",1);C(this,"displayWidthInMD",1);C(this,"displayWidthInLG",1);C(this,"displayWidthInEL",1);C(this,"displayColumnCountAtBreakPoint","md");C(this,"tagRow",0);C(this,"showTopBorder",0);C(this,"group",1);C(this,"isSupportedClass",!0);C(this,"fieldSetId","")}}function ae(c){let n,e;const t=new Map;let o=[];function r(d,i){const y=d.split(" ").filter(w=>w.startsWith("col-"));if(y.length===0){i.isSupportedClass=!1;return}let u=y.find(w=>/^col-([1-9]|10|11|12)$/.test(w)),g=y.find(w=>/^col-md-([1-9]|10|11|12)$/.test(w)),F=y.find(w=>/^col-xl-([1-9]|10|11|12)$/.test(w)),v=y.find(w=>/^col-el-([1-9]|10|11|12)$/.test(w));u=u||"col-12",i.columnInSM=parseInt(u.replace("col-",""),10),i.displayWidthInSM=i.columnInSM/12,i.displayWidthInSM!==1&&(i.isSupportedClass=!1),g=g||"col-md-"+i.columnInSM,i.columnInMD=parseInt(g.replace("col-md-",""),10),i.displayWidthInMD=i.columnInMD/6,[1,2].includes(i.displayWidthInMD)||(i.isSupportedClass=!1),F=F||"col-xl-"+i.columnInMD,i.columnInLG=parseInt(F.replace("col-xl-",""),10),i.displayWidthInLG=i.columnInLG/3,[1,2,3,4].includes(i.displayWidthInLG)||(i.isSupportedClass=!1),v=v||"col-el-"+i.columnInLG,i.columnInEL=parseInt(v.replace("col-el-",""),10),i.displayWidthInEL=i.columnInEL/2,[1,2,3,4,5,6].includes(i.displayWidthInEL)||(i.isSupportedClass=!1)}function l(d,i,p,y=!1){let u=!1;d.contents.forEach(g=>{if(g.type==="fieldset"){p+=1,l(g,i,p,!0),u=!0;return}u&&(p+=1,u=!1);const F=g.appearance&&g.appearance.class,v=new re;F?r(F,v):v.isSupportedClass=!1,v.label=g.label||g.id,v.id=g.id,v.group=p,y&&(v.fieldSetId=d.id),e===g.id&&(n=p),t.set(g.id,g),i.push(v)})}function f(d){const i=c.getComponentById(d);if(!i||!i.componentType||!i.componentType.startsWith("form"))return{result:!1,message:"只可以在响应式表单组件中调整响应式布局配置"};const p=c.selectNode(i,y=>y.type===j.DgControl["response-form"].type);return!p||!p.contents||p.contents.length===0?{result:!1,message:"Form区域内没有控件,请先添加控件"}:{result:!0,message:"",formNode:p}}function h(d,i){i=i||d.id;const{result:p,message:y,formNode:u}=f(i);if(!p)return{result:p,message:y};e=d.id,o=[],t.clear();const g=u.contents[0].type===j.DgControl.fieldset.type?0:1;l(u,o,g);const F=o.find(w=>!w.isSupportedClass);return{defaultState:{defaultGroupNumber:n||1,model:F?"customize":"standard"},importData:o}}function s(d,i){i=i;const{result:p,formNode:y}=f(i);if(!p)return"";const u=[];return d.forEach(g=>{var w;const F=t.get(g.id),v=F.appearance&&F.appearance.class;if(v){const D=v.split(" ").filter(M=>!M.startsWith("col-")),B="col-"+g.columnInSM,q="col-md-"+g.columnInMD,b="col-xl-"+g.columnInLG,S="col-el-"+g.columnInEL,P=[B,q,b,S].concat(D);F.appearance.class=P.join(" ")}if(g.fieldSetId){const V=y.contents.find(B=>B.id===g.fieldSetId),D=u.find(B=>B.id===g.fieldSetId);D?(w=D.contents)==null||w.push(F):(u.push(V),V.contents=[F])}else u.push(F)}),y.contents=u,y.id}return{checkCanFindFormNode:f,checkCanOpenLayoutEditor:h,changeFormControlsByResponseLayoutConfig:s,getResonseFormLayoutConfig:l}}class se extends oe{constructor(e,t){super(e,t);C(this,"responseLayoutEditorFunction");this.responseLayoutEditorFunction=ae(this.formSchemaUtils)}getPropertyConfig(e,t){return this.propertyConfig.categories.basic=this.getBasicProperties(e,t),this.propertyConfig.categories.appearance=this.getAppearanceProperties(e,t),this.propertyConfig.categories.editor=this.getEditorProperties(e),this.propertyConfig}getBasicProperties(e,t){var r;const o=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:o.designViewModelField?N.getEditorTypesByMDataType((r=o.designViewModelField.type)==null?void 0:r.name):N.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"},refreshPanelAfterChanged:!0}},setPropertyRelates(l,f){if(l)switch(l&&l.propertyID){case"type":{o.changeControlType(e,l,t);break}case"label":{l.needRefreshControlTree=!0;break}}}}}getAppearanceProperties(e,t){const o=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:o.responseLayoutEditorFunction.checkCanOpenLayoutEditor(e,o.componentId)}}},setPropertyRelates(r,l){if(r)switch(r&&r.propertyID){case"responseLayout":o.responseLayoutEditorFunction.changeFormControlsByResponseLayoutConfig(r.propertyValue,o.componentId||e.id),o.updateUnifiedLayoutAfterResponseLayoutChanged(o.componentId),o.updateElementByParentContainer(e.id,t),delete e.responseLayout;break;case"class":o.updateUnifiedLayoutAfterControlChanged(r.propertyValue,e.id,this.componentId),o.updateElementByParentContainer(e.id,t);break}}}}getEditorProperties(e){return this.getComponentConfig(e)}changeControlType(e,t,o){var d,i,p,y;const r=t.propertyValue,l=o&&o.parent&&o.parent.schema;if(!l)return;const f=l.contents.findIndex(u=>u.id===e.id),h=l.contents[f];let s;this.designViewModelField&&(this.designViewModelUtils.getDgViewModel(this.viewModelId).changeField(this.designViewModelField.id,{editor:{$type:r},name:this.designViewModelField.name,require:this.designViewModelField.require,readonly:this.designViewModelField.readonly},!1),s=this.controlCreatorUtils.setFormFieldProperty(this.designViewModelField,r)),s||(s=this.controlCreatorUtils.createFormGroupWithoutField(r)),Object.assign(s,{id:h.id,appearance:h.appearance,size:h.size,label:h.label,binding:h.binding,visible:h.visible}),Object.assign(s.editor,{isTextArea:s.isTextArea&&h.isTextArea,placeholder:(d=h.editor)==null?void 0:d.placeholder,holdPlace:(i=h.editor)==null?void 0:i.holdPlace,readonly:(p=h.editor)==null?void 0:p.readonly,required:(y=h.editor)==null?void 0:y.required}),l.contents.splice(f,1),l.contents.splice(f,0,s),o.schema=Object.assign(h,s),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(u=>u.classList.remove("dgComponentSelected")),Array.from(document.getElementsByClassName("dgComponentFocused")).forEach(u=>u.classList.remove("dgComponentFocused")),ie.value++}getComponentConfig(e,t={},o={},r){const l=Object.assign({description:"编辑器",title:"编辑器",type:"input-group",$converter:"/converter/property-editor.converter"},t),f=Object.assign({readonly:{description:"",title:"只读",type:"boolean",editor:{enableClear:!0,editable:!0}},disabled:{description:"",title:"禁用",type:"boolean",visible:!1},placeholder:{description:"当控件没有值时在输入框中显示的文本",title:"提示文本",type:"string"}},o);return{...l,properties:{...f},setPropertyRelates:r}}updateUnifiedLayoutAfterControlChanged(e,t,o){const r=e.split(" ");let l=r.find(i=>/^col-([1-9]|10|11|12)$/.test(i)),f=r.find(i=>/^col-md-([1-9]|10|11|12)$/.test(i)),h=r.find(i=>/^col-xl-([1-9]|10|11|12)$/.test(i)),s=r.find(i=>/^col-el-([1-9]|10|11|12)$/.test(i));l=l||"col-12",f=f||"col-md-"+l.replace("col-",""),h=h||"col-xl-"+f.replace("col-md-",""),s=s||"col-el-"+h.replace("col-xl-","");const d={id:t,columnInSM:parseInt(l.replace("col-",""),10),columnInMD:parseInt(f.replace("col-md-",""),10),columnInLG:parseInt(h.replace("col-xl-",""),10),columnInEL:parseInt(s.replace("col-el-",""),10)};this.updateUnifiedLayoutAfterResponseLayoutChanged(o,d)}updateUnifiedLayoutAfterResponseLayoutChanged(e,t){const{formNode:o}=this.responseLayoutEditorFunction.checkCanFindFormNode(e);if(!o||!o.unifiedLayout)return;const r=[];if(this.responseLayoutEditorFunction.getResonseFormLayoutConfig(o,r,1),t){const u=r.find(g=>g.id===t.id);Object.assign(u||{},t)}const l=r.map(u=>u.columnInSM),f=r.map(u=>u.columnInMD),h=r.map(u=>u.columnInLG),s=r.map(u=>u.columnInEL),d=this.checkIsUniqueColumn(l)?l[0]:null,i=this.checkIsUniqueColumn(f)?f[0]:null,p=this.checkIsUniqueColumn(h)?h[0]:null,y=this.checkIsUniqueColumn(s)?s[0]:null;Object.assign(o.unifiedLayout,{uniqueColClassInSM:d,uniqueColClassInMD:i,uniqueColClassInLG:p,uniqueColClassInEL:y})}checkIsUniqueColumn(e){const t=new Set(e);return Array.from(t).length===1}getItemCollectionEditor(e,t,o){return t=t||"value",o=o||"name",{editor:{columns:[{field:t,title:"值",dataType:"string"},{field:o,title:"名称",dataType:"string"},{field:"disabled",title:"禁用",visible:!1,dataType:"boolean",editor:{type:"switch"}}],type:"item-collection-editor",valueField:t,nameField:o,requiredFields:[t,o],uniqueFields:[t,o],readonly:this.checkEnumDataReadonly(e)}}}checkEnumDataReadonly(e){return!e.binding||e.binding.type!=="Form"?!1:!!(this.designViewModelField&&this.designViewModelField.type&&this.designViewModelField.type.$type===G.FormSchemaEntityFieldType$Type.EnumType)}}class le extends se{constructor(n,e){super(n,e)}getEditorProperties(n){return this.getComponentConfig(n,{type:"switch"},{disabled:{visible:!1},placeholder:{visible:!1},onLabel:{description:"",title:"打开时标签",type:"string"},offLabel:{description:"",title:"关闭时标签",type:"string"},onBackground:{description:"",title:"打开时背景色",type:"string"},offBackground:{description:"",title:"关闭时背景色",type:"string"},size:{description:"",title:"尺寸",type:"enum",editor:{data:[{id:"small",name:"小号"},{id:"medium",name:"中号"},{id:"large",name:"大号"}]}}})}}function ce(c,n){const e=c.schema;function t(o,r){return new le(o,n).getPropertyConfig(e,r)}return{getPropsConfig:t}}const de=m.defineComponent({name:"FSwitchDesign",props:L,emits:["update:modelValue"],setup(c,n){const{size:e,onLabel:t,offLabel:o}=m.toRefs(c),r=m.ref(),l=m.inject("designer-host-service"),f=m.inject("design-item-context"),h=ce(f,l),s=ne(r,f,h);m.onMounted(()=>{r.value.componentInstance=s}),n.expose(s.value);const d=m.computed(()=>({switch:!0,"f-cmp-switch":!0,checked:!1,"switch-large":e.value==="large","switch-medium":e.value==="medium","switch-small":e.value==="small"})),i=m.computed(()=>(t==null?void 0:t.value)||(o==null?void 0:o.value));return()=>m.createVNode("span",{ref:r,tabindex:"0",role:"button",class:d.value},[i.value&&m.createVNode("span",{class:"switch-pane"},[m.createVNode("span",{class:"switch-label-unchecked"},[o==null?void 0:o.value])]),m.createVNode("small",null,[n.slots.default&&n.slots.default()])])}});A.register=(c,n,e,t)=>{c.switch=A,n.switch=U},A.registerDesigner=(c,n,e)=>{c.switch=de,n.switch=U};const pe=G.withInstall(A);k.FSwitch=A,k.default=pe,k.propsResolver=U,k.switchProps=L,Object.defineProperties(k,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
|
@@ -291,7 +291,7 @@ const q = {
|
|
|
291
291
|
tabIndex: { type: Number, default: -1 }
|
|
292
292
|
}, Me = Object.assign({}, q, {
|
|
293
293
|
readonly: {}
|
|
294
|
-
}), H = ce(q, Ce, pe, Fe),
|
|
294
|
+
}), H = ce(q, Ce, pe, Fe), D = /* @__PURE__ */ W({
|
|
295
295
|
name: "FTextarea",
|
|
296
296
|
props: q,
|
|
297
297
|
emits: ["update:modelValue", "valueChange"],
|
|
@@ -551,12 +551,12 @@ class we {
|
|
|
551
551
|
n.contents.splice(o, 1), n.contents.splice(o, 0, a);
|
|
552
552
|
}
|
|
553
553
|
}
|
|
554
|
-
const
|
|
554
|
+
const A = class A {
|
|
555
555
|
/**
|
|
556
556
|
* 根据绑定字段类型获取可用的输入类控件
|
|
557
557
|
*/
|
|
558
558
|
static getEditorTypesByMDataType(t) {
|
|
559
|
-
const e =
|
|
559
|
+
const e = A.fieldControlTypeMapping[t];
|
|
560
560
|
return e || [{ key: "", value: "" }];
|
|
561
561
|
}
|
|
562
562
|
/**
|
|
@@ -564,8 +564,8 @@ const D = class D {
|
|
|
564
564
|
*/
|
|
565
565
|
static getAllInputTypes() {
|
|
566
566
|
const t = [];
|
|
567
|
-
for (const e in
|
|
568
|
-
|
|
567
|
+
for (const e in A.fieldControlTypeMapping)
|
|
568
|
+
A.fieldControlTypeMapping[e].forEach((n) => {
|
|
569
569
|
t.find((o) => o.key === n.key && o.value === n.value) || t.push({ key: n.key, value: n.value });
|
|
570
570
|
});
|
|
571
571
|
return t;
|
|
@@ -595,7 +595,7 @@ const D = class D {
|
|
|
595
595
|
/**
|
|
596
596
|
* <字段类型,可配置的控件类型列表>的映射
|
|
597
597
|
*/
|
|
598
|
-
b(
|
|
598
|
+
b(A, "fieldControlTypeMapping", {
|
|
599
599
|
String: [
|
|
600
600
|
{ key: s["input-group"].type, value: s["input-group"].name },
|
|
601
601
|
{ key: s.lookup.type, value: s.lookup.name },
|
|
@@ -641,7 +641,7 @@ b(D, "fieldControlTypeMapping", {
|
|
|
641
641
|
{ key: s["radio-group"].type, value: s["radio-group"].name }
|
|
642
642
|
]
|
|
643
643
|
});
|
|
644
|
-
let N =
|
|
644
|
+
let N = A;
|
|
645
645
|
const Se = V(0);
|
|
646
646
|
class Te {
|
|
647
647
|
constructor() {
|
|
@@ -804,7 +804,8 @@ class Be extends we {
|
|
|
804
804
|
disableOccupiedFields: !0
|
|
805
805
|
},
|
|
806
806
|
textField: "bindingField"
|
|
807
|
-
}
|
|
807
|
+
},
|
|
808
|
+
refreshPanelAfterChanged: !0
|
|
808
809
|
}
|
|
809
810
|
},
|
|
810
811
|
setPropertyRelates(l, m) {
|
|
@@ -1089,15 +1090,15 @@ const Le = /* @__PURE__ */ W({
|
|
|
1089
1090
|
}, [`${i.modelValue.length}/${m.value}`])]);
|
|
1090
1091
|
}
|
|
1091
1092
|
});
|
|
1092
|
-
|
|
1093
|
-
i.textarea =
|
|
1093
|
+
D.register = (i, t, e, n) => {
|
|
1094
|
+
i.textarea = D, t.textarea = H;
|
|
1094
1095
|
};
|
|
1095
|
-
|
|
1096
|
+
D.registerDesigner = (i, t, e) => {
|
|
1096
1097
|
i.textarea = Le, t.textarea = H;
|
|
1097
1098
|
};
|
|
1098
|
-
const Ue = te(
|
|
1099
|
+
const Ue = te(D);
|
|
1099
1100
|
export {
|
|
1100
|
-
|
|
1101
|
+
D as FTextarea,
|
|
1101
1102
|
Ue as default,
|
|
1102
1103
|
H as propsResolver,
|
|
1103
1104
|
Me as textAreaDesignProps,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(F,m){typeof exports=="object"&&typeof module<"u"?m(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"],m):(F=typeof globalThis<"u"?globalThis:F||self,m(F.textarea={},F.Vue,F.LodashES,F.common,F.designerCanvas))})(this,function(F,m,V,N,j){"use strict";var me=Object.defineProperty;var ye=(F,m,V)=>m in F?me(F,m,{enumerable:!0,configurable:!0,writable:!0,value:V}):F[m]=V;var C=(F,m,V)=>ye(F,typeof m!="symbol"?m+"":m,V);const G={},O={};function x(i){const{properties:t,title:e,ignore:n}=i,o=n&&Array.isArray(n),a=Object.keys(t).reduce((s,y)=>((!o||!n.find(h=>h===y))&&(s[y]=t[y].type==="object"&&t[y].properties?x(t[y]):V.cloneDeep(t[y].default)),s),{});if(e&&(!o||!n.find(s=>s==="id"))){const s=e.toLowerCase().replace(/-/g,"_");a.id=`${s}_${Math.random().toString().slice(2,6)}`}return a}function z(i){const{properties:t,title:e,required:n}=i;if(n&&Array.isArray(n)){const o=n.reduce((a,s)=>(a[s]=t[s].type==="object"&&t[s].properties?x(t[s]):V.cloneDeep(t[s].default),a),{});if(e&&n.find(a=>a==="id")){const a=e.toLowerCase().replace(/-/g,"_");o.id=`${a}_${Math.random().toString().slice(2,6)}`}return o}return{type:e}}function W(i,t={},e){const n=G[i];if(n){let o=z(n);const a=O[i];return o=a?a({getSchemaByType:W},o,t,e):o,o}return null}function X(i,t){const e=x(t);return Object.keys(e).reduce((n,o)=>(Object.prototype.hasOwnProperty.call(i,o)&&(n[o]&&V.isPlainObject(n[o])&&V.isPlainObject(i[o]||!i[o])?Object.assign(n[o],i[o]||{}):n[o]=i[o]),n),e),e}function H(i,t){return Object.keys(i).filter(n=>i[n]!=null).reduce((n,o)=>{if(t.has(o)){const a=t.get(o);if(typeof a=="string")n[a]=i[o];else{const s=a(o,i[o],i);Object.assign(n,s)}}else n[o]=i[o];return n},{})}function Q(i,t,e=new Map){const n=X(i,t);return H(n,e)}function J(i={}){function t(c,d,r,p){if(typeof r=="number")return p[c].length===r;if(typeof r=="object"){const f=Object.keys(r)[0],u=r[f];if(f==="not")return Number(p[c].length)!==Number(u);if(f==="moreThan")return Number(p[c].length)>=Number(u);if(f==="lessThan")return Number(p[c].length)<=Number(u)}return!1}function e(c,d,r,p){return p[c]&&p[c].propertyValue&&String(p[c].propertyValue.value)===String(r)}const n=new Map([["length",t],["getProperty",e]]);Object.keys(i).reduce((c,d)=>(c.set(d,i[d]),c),n);function o(c,d){const r=c;return typeof d=="number"?[{target:r,operator:"length",param:null,value:Number(d)}]:typeof d=="boolean"?[{target:r,operator:"getProperty",param:c,value:!!d}]:typeof d=="object"?Object.keys(d).map(p=>{if(p==="length")return{target:r,operator:"length",param:null,value:d[p]};const f=p,u=d[p];return{target:r,operator:"getProperty",param:f,value:u}}):[]}function a(c){return Object.keys(c).reduce((r,p)=>{const f=o(p,c[p]);return r.push(...f),r},[])}function s(c,d){if(n.has(c.operator)){const r=n.get(c.operator);return r&&r(c.target,c.param,c.value,d)||!1}return!1}function y(c,d){return a(c).reduce((f,u)=>f&&s(u,d),!0)}function h(c,d){const r=Object.keys(c),p=r.includes("allOf"),f=r.includes("anyOf"),u=p||f,v=(u?c[u?p?"allOf":"anyOf":"allOf"]:[c]).map(B=>y(B,d));return p?!v.includes(!1):v.includes(!0)}return{parseValueSchema:h}}const l={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"}},Y={},Z={};J();function K(i,t,e=new Map,n=(s,y,h,c)=>y,o={},a=s=>s){return G[t.title]=t,O[t.title]=n,Y[t.title]=o,Z[t.title]=a,(s={})=>{const y=Q(s,t,e),h=Object.keys(i).reduce((c,d)=>(c[d]=i[d].default,c),{});return Object.assign(h,y)}}function R(i,t){return{customClass:t.class,customStyle:t.style}}const ee=new Map([["appearance",R]]),te={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/switch.schema.json",title:"textarea",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for a textarea",type:"string"},type:{description:"The type string of textarea component",type:"string",default:"textarea"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disabled:{type:"boolean",default:!1},editable:{description:"",type:"boolean",default:!0},placeholder:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},required:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},visible:{description:"",type:"boolean",default:!0},rows:{description:"",type:"number"},showCount:{description:"",type:"boolean",default:!0}},required:["type"],ignore:["id","appearance","binding","visible"]};function ne(i,t,e){return t}const $={autoHeight:{type:Boolean,default:!1},autofocus:{type:Boolean,default:!1},autocomplete:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},enableClear:{type:Boolean,default:!1},id:{type:String,default:""},minLength:{type:Number,default:0},maxLength:{type:Number},modelValue:{type:String,default:""},placeholder:{type:String,default:""},readonly:{type:Boolean,default:!1},rows:{type:Number,default:2},showCount:{type:Boolean,default:!1},showBorder:{Type:Boolean,default:!0},tabIndex:{type:Number,default:-1}},_=Object.assign({},$,{readonly:{}}),U=K($,te,ee,ne),A=m.defineComponent({name:"FTextarea",props:$,emits:["update:modelValue","valueChange"],setup(i,t){const e=m.ref(),n=m.ref(i.modelValue),o=m.computed(()=>i.modelValue),a=N.useTextBox(i,t,n,o),{inputGroupClass:s,onBlur:y,onFocus:h}=a,c=N.useClear(i,t,a),{onMouseEnter:d,onMouseLeave:r,clearButtonClass:p,shouldShowClearButton:f,clearButtonStyle:u}=c,b=m.computed(()=>i.maxLength?i.maxLength:i.modelValue?i.modelValue.length:0),M=w=>{var L,g;w.stopPropagation(),t.emit("update:modelValue",(L=w.target)==null?void 0:L.value),t.emit("valueChange",(g=w.target)==null?void 0:g.value)},v=w=>{w.stopPropagation(),e.value.value="",t.emit("update:modelValue",""),t.emit("valueChange","")},k=m.computed(()=>({"form-control":!0,"h-100":i.autoHeight})),B=m.computed(()=>i.rows>2?{height:"auto"}:{}),E=m.computed(()=>i.disabled||i.readonly?"":i.placeholder);return t.expose({elementRef:e}),m.onMounted(()=>{}),()=>m.createVNode("div",{class:s.value,onMouseenter:d,onMouseleave:r,style:"position:relative"},[m.withDirectives(m.createVNode("textarea",{class:k.value,id:i.id,"onUpdate:modelValue":w=>i.modelValue=w,ref:e,minlength:i.minLength,maxlength:i.maxLength?i.maxLength:null,tabindex:i.tabIndex,disabled:i.disabled,readonly:i.readonly,autocomplete:i.autocomplete,placeholder:E.value,autofocus:i.autofocus,rows:i.rows,onInput:M,onFocus:h,onBlur:y,style:B.value},null),[[m.vModelText,i.modelValue]]),f.value&&m.createVNode("span",{id:"clearIcon",class:p.value,style:u.value,onClick:w=>v(w)},[m.createVNode("i",{class:"f-icon modal_close"},null)]),i.showCount&&m.createVNode("span",{style:"position: absolute;bottom: 5px;right: 10px;z-index:999"},[`${i.modelValue?i.modelValue.length:0}/${b.value}`])])}});function oe(i,t,e){var L;const n=e&&e.getStyles&&e.getStyles()||"",o=e&&e.getDesignerClass&&e.getDesignerClass()||"",a=m.ref();function s(){return(t==null?void 0:t.schema.componentType)==="frame"?!1:e&&e.checkCanMoveComponent?e.checkCanMoveComponent():!0}function y(){return!1}function h(){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 d(g){if(!g||!g.value)return null;if(g.value.schema&&g.value.schema.type==="component")return g.value;const T=m.ref(g==null?void 0:g.value.parent),P=d(T);return P||null}function r(g=t){var I;const{componentInstance:T,designerItemElementRef:P}=g;if(!T||!T.value)return null;const{getCustomButtons:S}=T.value;return T.value.canMove||S&&((I=S())!=null&&I.length)?P:r(g.parent)}function p(g){return!!e&&e.canAccepts(g)}function f(){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 b(g,T){!g||!T||e!=null&&e.onAcceptMovedChildElement&&e.onAcceptMovedChildElement(g,T)}function M(g,T){const{componentType:P}=g;let S=W(P,g,T);e&&e.onResolveNewComponentSchema&&(S=e.onResolveNewComponentSchema(g,S));const I=P.toLowerCase().replace(/-/g,"_");return S&&!S.id&&S.type===P&&(S.id=`${I}_${Math.random().toString().slice(2,6)}`),S}function v(g){}function k(...g){if(e&&e.getPropsConfig)return e.getPropsConfig(...g)}function B(){e&&e.onRemoveComponent&&e.onRemoveComponent(),t!=null&&t.schema.contents&&t.schema.contents.map(g=>{let T=g.id;g.type==="component-ref"&&(T=g.component);const P=i.value.querySelectorAll(`#${T}-design-item`);P!=null&&P.length&&Array.from(P).map(S=>{var I;(I=S==null?void 0:S.componentInstance)!=null&&I.value.onRemoveComponent&&S.componentInstance.value.onRemoveComponent()})})}function E(){if(e&&e.getCustomButtons)return e.getCustomButtons()}function w(g){if(e&&e.onPropertyChanged)return e.onPropertyChanged(g)}return a.value={canMove:s(),canSelectParent:y(),canDelete:h(),canNested:!c(),contents:t==null?void 0:t.schema.contents,elementRef:i,parent:(L=t==null?void 0:t.parent)==null?void 0:L.componentInstance,schema:t==null?void 0:t.schema,styles:n,designerClass:o,canAccepts:p,getBelongedComponentInstance:d,getDraggableDesignItemElement:r,getDraggingDisplayText:f,getPropConfig:k,getDragScopeElement:u,onAcceptMovedChildElement:b,onChildElementMovedOut:v,addNewChildComponentSchema:M,triggerBelongedComponentToMoveWhenMoved:!!e&&e.triggerBelongedComponentToMoveWhenMoved||m.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:!!e&&e.triggerBelongedComponentToDeleteWhenDeleted||m.ref(!1),onRemoveComponent:B,getCustomButtons:E,onPropertyChanged:w},a}class ie{constructor(t,e){C(this,"componentId");C(this,"viewModelId");C(this,"eventsEditorUtils");C(this,"formSchemaUtils");C(this,"formMetadataConverter");C(this,"designViewModelUtils");C(this,"designViewModelField");C(this,"controlCreatorUtils");C(this,"designerHostService");C(this,"schemaService",null);C(this,"metadataService",null);C(this,"propertyConfig",{type:"object",categories:{}});var n;this.componentId=t,this.designerHostService=e,this.eventsEditorUtils=e.eventsEditorUtils,this.formSchemaUtils=e.formSchemaUtils,this.formMetadataConverter=e.formMetadataConverter,this.viewModelId=((n=this.formSchemaUtils)==null?void 0:n.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 n;const e=t.binding&&t.binding.type==="Form"&&t.binding.field;if(e){if(!this.designViewModelField){const o=this.designViewModelUtils.getDgViewModel(this.viewModelId);this.designViewModelField=o.fields.find(a=>a.id===e)}t.updateOn=(n=this.designViewModelField)==null?void 0:n.updateOn}}getBasicPropConfig(t){return{description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"combo-list",textField:"name",valueField:"value",editable:!1,data:[{value:t.type,name:l[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 n=e&&e.parent&&e.parent.schema;if(!n)return;const o=n.contents.findIndex(s=>s.id===t),a=V.cloneDeep(n.contents[o]);n.contents.splice(o,1),n.contents.splice(o,0,a)}}const D=class D{static getEditorTypesByMDataType(t){const e=D.fieldControlTypeMapping[t];return e||[{key:"",value:""}]}static getAllInputTypes(){const t=[];for(const e in D.fieldControlTypeMapping)D.fieldControlTypeMapping[e].forEach(n=>{t.find(o=>o.key===n.key&&o.value===n.value)||t.push({key:n.key,value:n.value})});return t}static mappingDomPropAndSchemaProp(t){var o;const e=(o=t.editor)==null?void 0:o.type;if(!e)return[];const n=[];switch(n.push({domField:"editor.required",schemaField:"require"}),n.push({domField:"editor.readonly",schemaField:"readonly"}),e){case l["data-grid-column"].type:case l["tree-grid-column"].type:{n.push({domField:"title",schemaField:"name"});break}default:n.push({domField:"label",schemaField:"name"})}return(e===l["input-group"].type||e===l.textarea.type||e===l["number-spinner"].type)&&n.push({domField:"editor.maxLength",schemaField:"type.length"}),e===l["number-spinner"].type&&n.push({domField:"editor.precision",schemaField:"type.precision"}),(e===l["combo-list"].type||e===l["radio-group"].type)&&n.push({domField:"editor.data",schemaField:"type.enumValues"}),e===l["date-picker"].type&&(n.push({domField:"editor.displayFormat",schemaField:"editor.format"}),n.push({domField:"editor.fieldType",schemaField:"type.name"})),e===l["number-spinner"].type&&(n.push({domField:"editor.max",schemaField:"editor.maxValue"}),n.push({domField:"editor.min",schemaField:"editor.minValue"})),e===l.lookup.type&&(n.push({domField:"editor.dataSource",schemaField:"editor.dataSource"}),n.push({domField:"editor.valueField",schemaField:"editor.valueField"}),n.push({domField:"editor.textField",schemaField:"editor.textField"}),n.push({domField:"editor.displayType",schemaField:"editor.displayType"}),n.push({domField:"editor.mapFields",schemaField:"editor.mapFields"}),n.push({domField:"editor.helpId",schemaField:"editor.helpId"})),n.push({domField:"path",schemaField:"bindingPath"}),n.push({domField:"binding.path",schemaField:"bindingField"}),n.push({domField:"binding.fullPath",schemaField:"path"}),(e===l["data-grid-column"].type||e===l["tree-grid-column"].type)&&n.push({domField:"field",schemaField:"bindingPath"}),n}};C(D,"fieldControlTypeMapping",{String:[{key:l["input-group"].type,value:l["input-group"].name},{key:l.lookup.type,value:l.lookup.name},{key:l["date-picker"].type,value:l["date-picker"].name},{key:l["check-group"].type,value:l["check-group"].name},{key:l["radio-group"].type,value:l["radio-group"].name},{key:l["combo-list"].type,value:l["combo-list"].name},{key:l.textarea.type,value:l.textarea.name}],Text:[{key:l.textarea.type,value:l.textarea.name},{key:l.lookup.type,value:l.lookup.name}],Decimal:[{key:l["number-spinner"].type,value:l["number-spinner"].name}],Integer:[{key:l["number-spinner"].type,value:l["number-spinner"].name}],Number:[{key:l["number-spinner"].type,value:l["number-spinner"].name}],BigNumber:[{key:l["number-spinner"].type,value:l["number-spinner"].name}],Date:[{key:l["date-picker"].type,value:l["date-picker"].name}],DateTime:[{key:l["date-picker"].type,value:l["date-picker"].name}],Boolean:[{key:l.switch.type,value:l.switch.name},{key:l["check-box"].type,value:l["check-box"].name}],Enum:[{key:l["combo-list"].type,value:l["combo-list"].name},{key:l["radio-group"].type,value:l["radio-group"].name}],Object:[{key:l.lookup.type,value:l.lookup.name},{key:l["combo-list"].type,value:l["combo-list"].name},{key:l["radio-group"].type,value:l["radio-group"].name}]});let q=D;const re=m.ref(0);class ae{constructor(){C(this,"label","");C(this,"id","");C(this,"columnInSM",12);C(this,"columnInMD",6);C(this,"columnInLG",3);C(this,"columnInEL",2);C(this,"displayWidthInSM",1);C(this,"displayWidthInMD",1);C(this,"displayWidthInLG",1);C(this,"displayWidthInEL",1);C(this,"displayColumnCountAtBreakPoint","md");C(this,"tagRow",0);C(this,"showTopBorder",0);C(this,"group",1);C(this,"isSupportedClass",!0);C(this,"fieldSetId","")}}function le(i){let t,e;const n=new Map;let o=[];function a(d,r){const f=d.split(" ").filter(k=>k.startsWith("col-"));if(f.length===0){r.isSupportedClass=!1;return}let u=f.find(k=>/^col-([1-9]|10|11|12)$/.test(k)),b=f.find(k=>/^col-md-([1-9]|10|11|12)$/.test(k)),M=f.find(k=>/^col-xl-([1-9]|10|11|12)$/.test(k)),v=f.find(k=>/^col-el-([1-9]|10|11|12)$/.test(k));u=u||"col-12",r.columnInSM=parseInt(u.replace("col-",""),10),r.displayWidthInSM=r.columnInSM/12,r.displayWidthInSM!==1&&(r.isSupportedClass=!1),b=b||"col-md-"+r.columnInSM,r.columnInMD=parseInt(b.replace("col-md-",""),10),r.displayWidthInMD=r.columnInMD/6,[1,2].includes(r.displayWidthInMD)||(r.isSupportedClass=!1),M=M||"col-xl-"+r.columnInMD,r.columnInLG=parseInt(M.replace("col-xl-",""),10),r.displayWidthInLG=r.columnInLG/3,[1,2,3,4].includes(r.displayWidthInLG)||(r.isSupportedClass=!1),v=v||"col-el-"+r.columnInLG,r.columnInEL=parseInt(v.replace("col-el-",""),10),r.displayWidthInEL=r.columnInEL/2,[1,2,3,4,5,6].includes(r.displayWidthInEL)||(r.isSupportedClass=!1)}function s(d,r,p,f=!1){let u=!1;d.contents.forEach(b=>{if(b.type==="fieldset"){p+=1,s(b,r,p,!0),u=!0;return}u&&(p+=1,u=!1);const M=b.appearance&&b.appearance.class,v=new ae;M?a(M,v):v.isSupportedClass=!1,v.label=b.label||b.id,v.id=b.id,v.group=p,f&&(v.fieldSetId=d.id),e===b.id&&(t=p),n.set(b.id,b),r.push(v)})}function y(d){const r=i.getComponentById(d);if(!r||!r.componentType||!r.componentType.startsWith("form"))return{result:!1,message:"只可以在响应式表单组件中调整响应式布局配置"};const p=i.selectNode(r,f=>f.type===j.DgControl["response-form"].type);return!p||!p.contents||p.contents.length===0?{result:!1,message:"Form区域内没有控件,请先添加控件"}:{result:!0,message:"",formNode:p}}function h(d,r){r=r||d.id;const{result:p,message:f,formNode:u}=y(r);if(!p)return{result:p,message:f};e=d.id,o=[],n.clear();const b=u.contents[0].type===j.DgControl.fieldset.type?0:1;s(u,o,b);const M=o.find(k=>!k.isSupportedClass);return{defaultState:{defaultGroupNumber:t||1,model:M?"customize":"standard"},importData:o}}function c(d,r){r=r;const{result:p,formNode:f}=y(r);if(!p)return"";const u=[];return d.forEach(b=>{var k;const M=n.get(b.id),v=M.appearance&&M.appearance.class;if(v){const E=v.split(" ").filter(S=>!S.startsWith("col-")),w="col-"+b.columnInSM,L="col-md-"+b.columnInMD,g="col-xl-"+b.columnInLG,T="col-el-"+b.columnInEL,P=[w,L,g,T].concat(E);M.appearance.class=P.join(" ")}if(b.fieldSetId){const B=f.contents.find(w=>w.id===b.fieldSetId),E=u.find(w=>w.id===b.fieldSetId);E?(k=E.contents)==null||k.push(M):(u.push(B),B.contents=[M])}else u.push(M)}),f.contents=u,f.id}return{checkCanFindFormNode:y,checkCanOpenLayoutEditor:h,changeFormControlsByResponseLayoutConfig:c,getResonseFormLayoutConfig:s}}class se extends ie{constructor(e,n){super(e,n);C(this,"responseLayoutEditorFunction");this.responseLayoutEditorFunction=le(this.formSchemaUtils)}getPropertyConfig(e,n){return this.propertyConfig.categories.basic=this.getBasicProperties(e,n),this.propertyConfig.categories.appearance=this.getAppearanceProperties(e,n),this.propertyConfig.categories.editor=this.getEditorProperties(e),this.propertyConfig}getBasicProperties(e,n){var a;const o=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:o.designViewModelField?q.getEditorTypesByMDataType((a=o.designViewModelField.type)==null?void 0:a.name):q.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,y){if(s)switch(s&&s.propertyID){case"type":{o.changeControlType(e,s,n);break}case"label":{s.needRefreshControlTree=!0;break}}}}}getAppearanceProperties(e,n){const o=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:o.responseLayoutEditorFunction.checkCanOpenLayoutEditor(e,o.componentId)}}},setPropertyRelates(a,s){if(a)switch(a&&a.propertyID){case"responseLayout":o.responseLayoutEditorFunction.changeFormControlsByResponseLayoutConfig(a.propertyValue,o.componentId||e.id),o.updateUnifiedLayoutAfterResponseLayoutChanged(o.componentId),o.updateElementByParentContainer(e.id,n),delete e.responseLayout;break;case"class":o.updateUnifiedLayoutAfterControlChanged(a.propertyValue,e.id,this.componentId),o.updateElementByParentContainer(e.id,n);break}}}}getEditorProperties(e){return this.getComponentConfig(e)}changeControlType(e,n,o){var d,r,p,f;const a=n.propertyValue,s=o&&o.parent&&o.parent.schema;if(!s)return;const y=s.contents.findIndex(u=>u.id===e.id),h=s.contents[y];let c;this.designViewModelField&&(this.designViewModelUtils.getDgViewModel(this.viewModelId).changeField(this.designViewModelField.id,{editor:{$type:a},name:this.designViewModelField.name,require:this.designViewModelField.require,readonly:this.designViewModelField.readonly},!1),c=this.controlCreatorUtils.setFormFieldProperty(this.designViewModelField,a)),c||(c=this.controlCreatorUtils.createFormGroupWithoutField(a)),Object.assign(c,{id:h.id,appearance:h.appearance,size:h.size,label:h.label,binding:h.binding,visible:h.visible}),Object.assign(c.editor,{isTextArea:c.isTextArea&&h.isTextArea,placeholder:(d=h.editor)==null?void 0:d.placeholder,holdPlace:(r=h.editor)==null?void 0:r.holdPlace,readonly:(p=h.editor)==null?void 0:p.readonly,required:(f=h.editor)==null?void 0:f.required}),s.contents.splice(y,1),s.contents.splice(y,0,c),o.schema=Object.assign(h,c),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(u=>u.classList.remove("dgComponentSelected")),Array.from(document.getElementsByClassName("dgComponentFocused")).forEach(u=>u.classList.remove("dgComponentFocused")),re.value++}getComponentConfig(e,n={},o={},a){const s=Object.assign({description:"编辑器",title:"编辑器",type:"input-group",$converter:"/converter/property-editor.converter"},n),y=Object.assign({readonly:{description:"",title:"只读",type:"boolean",editor:{enableClear:!0,editable:!0}},disabled:{description:"",title:"禁用",type:"boolean",visible:!1},placeholder:{description:"当控件没有值时在输入框中显示的文本",title:"提示文本",type:"string"}},o);return{...s,properties:{...y},setPropertyRelates:a}}updateUnifiedLayoutAfterControlChanged(e,n,o){const a=e.split(" ");let s=a.find(r=>/^col-([1-9]|10|11|12)$/.test(r)),y=a.find(r=>/^col-md-([1-9]|10|11|12)$/.test(r)),h=a.find(r=>/^col-xl-([1-9]|10|11|12)$/.test(r)),c=a.find(r=>/^col-el-([1-9]|10|11|12)$/.test(r));s=s||"col-12",y=y||"col-md-"+s.replace("col-",""),h=h||"col-xl-"+y.replace("col-md-",""),c=c||"col-el-"+h.replace("col-xl-","");const d={id:n,columnInSM:parseInt(s.replace("col-",""),10),columnInMD:parseInt(y.replace("col-md-",""),10),columnInLG:parseInt(h.replace("col-xl-",""),10),columnInEL:parseInt(c.replace("col-el-",""),10)};this.updateUnifiedLayoutAfterResponseLayoutChanged(o,d)}updateUnifiedLayoutAfterResponseLayoutChanged(e,n){const{formNode:o}=this.responseLayoutEditorFunction.checkCanFindFormNode(e);if(!o||!o.unifiedLayout)return;const a=[];if(this.responseLayoutEditorFunction.getResonseFormLayoutConfig(o,a,1),n){const u=a.find(b=>b.id===n.id);Object.assign(u||{},n)}const s=a.map(u=>u.columnInSM),y=a.map(u=>u.columnInMD),h=a.map(u=>u.columnInLG),c=a.map(u=>u.columnInEL),d=this.checkIsUniqueColumn(s)?s[0]:null,r=this.checkIsUniqueColumn(y)?y[0]:null,p=this.checkIsUniqueColumn(h)?h[0]:null,f=this.checkIsUniqueColumn(c)?c[0]:null;Object.assign(o.unifiedLayout,{uniqueColClassInSM:d,uniqueColClassInMD:r,uniqueColClassInLG:p,uniqueColClassInEL:f})}checkIsUniqueColumn(e){const n=new Set(e);return Array.from(n).length===1}getItemCollectionEditor(e,n,o){return n=n||"value",o=o||"name",{editor:{columns:[{field:n,title:"值",dataType:"string"},{field:o,title:"名称",dataType:"string"},{field:"disabled",title:"禁用",visible:!1,dataType:"boolean",editor:{type:"switch"}}],type:"item-collection-editor",valueField:n,nameField:o,requiredFields:[n,o],uniqueFields:[n,o],readonly:this.checkEnumDataReadonly(e)}}}checkEnumDataReadonly(e){return!e.binding||e.binding.type!=="Form"?!1:!!(this.designViewModelField&&this.designViewModelField.type&&this.designViewModelField.type.$type===N.FormSchemaEntityFieldType$Type.EnumType)}}class ce extends se{constructor(t,e){super(t,e)}getEditorProperties(t){return this.getComponentConfig(t,{type:"textarea"},{rows:{description:"",title:"文本区域可见的行数",type:"number",editor:{min:0,nullable:!0}},showCount:{description:"",title:"展示输入文本数量",type:"boolean"}})}}function de(i,t){const e=i.schema;function n(o,a){return new ce(o,t).getPropertyConfig(e,a)}return{getPropsConfig:n}}const pe=m.defineComponent({name:"FTextareaDesign",props:_,emits:[""],setup(i,t){const e=m.ref(),n=m.inject("designer-host-service"),o=m.inject("design-item-context"),a=de(o,n),s=oe(e,o,a),y=m.computed(()=>i.maxLength?i.maxLength:i.modelValue.length),h=m.computed(()=>({position:"relative"})),c=m.computed(()=>({"box-shadow":"0 0 0 1px #dcdfe6 inset",border:"none",padding:"5px 10px",width:"100%"})),d={position:"absolute",bottom:"5px",right:"10px"};return m.onMounted(()=>{e.value.componentInstance=s}),t.expose(s.value),()=>m.createVNode("div",{style:h.value,ref:e},[m.createVNode("textarea",{id:i.id,tabindex:i.tabIndex,disabled:!1,readonly:!0,style:c.value,placeholder:i.placeholder,rows:i.rows},null),i.showCount&&m.createVNode("span",{style:d},[`${i.modelValue.length}/${y.value}`])])}});A.register=(i,t,e,n)=>{i.textarea=A,t.textarea=U},A.registerDesigner=(i,t,e)=>{i.textarea=pe,t.textarea=U};const ue=N.withInstall(A);F.FTextarea=A,F.default=ue,F.propsResolver=U,F.textAreaDesignProps=_,F.textAreaProps=$,Object.defineProperties(F,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
|
1
|
+
(function(F,m){typeof exports=="object"&&typeof module<"u"?m(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"],m):(F=typeof globalThis<"u"?globalThis:F||self,m(F.textarea={},F.Vue,F.LodashES,F.common,F.designerCanvas))})(this,function(F,m,V,N,j){"use strict";var me=Object.defineProperty;var ye=(F,m,V)=>m in F?me(F,m,{enumerable:!0,configurable:!0,writable:!0,value:V}):F[m]=V;var C=(F,m,V)=>ye(F,typeof m!="symbol"?m+"":m,V);const G={},O={};function x(i){const{properties:t,title:e,ignore:n}=i,o=n&&Array.isArray(n),a=Object.keys(t).reduce((s,y)=>((!o||!n.find(h=>h===y))&&(s[y]=t[y].type==="object"&&t[y].properties?x(t[y]):V.cloneDeep(t[y].default)),s),{});if(e&&(!o||!n.find(s=>s==="id"))){const s=e.toLowerCase().replace(/-/g,"_");a.id=`${s}_${Math.random().toString().slice(2,6)}`}return a}function z(i){const{properties:t,title:e,required:n}=i;if(n&&Array.isArray(n)){const o=n.reduce((a,s)=>(a[s]=t[s].type==="object"&&t[s].properties?x(t[s]):V.cloneDeep(t[s].default),a),{});if(e&&n.find(a=>a==="id")){const a=e.toLowerCase().replace(/-/g,"_");o.id=`${a}_${Math.random().toString().slice(2,6)}`}return o}return{type:e}}function W(i,t={},e){const n=G[i];if(n){let o=z(n);const a=O[i];return o=a?a({getSchemaByType:W},o,t,e):o,o}return null}function X(i,t){const e=x(t);return Object.keys(e).reduce((n,o)=>(Object.prototype.hasOwnProperty.call(i,o)&&(n[o]&&V.isPlainObject(n[o])&&V.isPlainObject(i[o]||!i[o])?Object.assign(n[o],i[o]||{}):n[o]=i[o]),n),e),e}function H(i,t){return Object.keys(i).filter(n=>i[n]!=null).reduce((n,o)=>{if(t.has(o)){const a=t.get(o);if(typeof a=="string")n[a]=i[o];else{const s=a(o,i[o],i);Object.assign(n,s)}}else n[o]=i[o];return n},{})}function Q(i,t,e=new Map){const n=X(i,t);return H(n,e)}function J(i={}){function t(c,d,r,p){if(typeof r=="number")return p[c].length===r;if(typeof r=="object"){const f=Object.keys(r)[0],u=r[f];if(f==="not")return Number(p[c].length)!==Number(u);if(f==="moreThan")return Number(p[c].length)>=Number(u);if(f==="lessThan")return Number(p[c].length)<=Number(u)}return!1}function e(c,d,r,p){return p[c]&&p[c].propertyValue&&String(p[c].propertyValue.value)===String(r)}const n=new Map([["length",t],["getProperty",e]]);Object.keys(i).reduce((c,d)=>(c.set(d,i[d]),c),n);function o(c,d){const r=c;return typeof d=="number"?[{target:r,operator:"length",param:null,value:Number(d)}]:typeof d=="boolean"?[{target:r,operator:"getProperty",param:c,value:!!d}]:typeof d=="object"?Object.keys(d).map(p=>{if(p==="length")return{target:r,operator:"length",param:null,value:d[p]};const f=p,u=d[p];return{target:r,operator:"getProperty",param:f,value:u}}):[]}function a(c){return Object.keys(c).reduce((r,p)=>{const f=o(p,c[p]);return r.push(...f),r},[])}function s(c,d){if(n.has(c.operator)){const r=n.get(c.operator);return r&&r(c.target,c.param,c.value,d)||!1}return!1}function y(c,d){return a(c).reduce((f,u)=>f&&s(u,d),!0)}function h(c,d){const r=Object.keys(c),p=r.includes("allOf"),f=r.includes("anyOf"),u=p||f,v=(u?c[u?p?"allOf":"anyOf":"allOf"]:[c]).map(B=>y(B,d));return p?!v.includes(!1):v.includes(!0)}return{parseValueSchema:h}}const l={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"}},Y={},Z={};J();function K(i,t,e=new Map,n=(s,y,h,c)=>y,o={},a=s=>s){return G[t.title]=t,O[t.title]=n,Y[t.title]=o,Z[t.title]=a,(s={})=>{const y=Q(s,t,e),h=Object.keys(i).reduce((c,d)=>(c[d]=i[d].default,c),{});return Object.assign(h,y)}}function R(i,t){return{customClass:t.class,customStyle:t.style}}const ee=new Map([["appearance",R]]),te={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/switch.schema.json",title:"textarea",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for a textarea",type:"string"},type:{description:"The type string of textarea component",type:"string",default:"textarea"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disabled:{type:"boolean",default:!1},editable:{description:"",type:"boolean",default:!0},placeholder:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},required:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},visible:{description:"",type:"boolean",default:!0},rows:{description:"",type:"number"},showCount:{description:"",type:"boolean",default:!0}},required:["type"],ignore:["id","appearance","binding","visible"]};function ne(i,t,e){return t}const $={autoHeight:{type:Boolean,default:!1},autofocus:{type:Boolean,default:!1},autocomplete:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},enableClear:{type:Boolean,default:!1},id:{type:String,default:""},minLength:{type:Number,default:0},maxLength:{type:Number},modelValue:{type:String,default:""},placeholder:{type:String,default:""},readonly:{type:Boolean,default:!1},rows:{type:Number,default:2},showCount:{type:Boolean,default:!1},showBorder:{Type:Boolean,default:!0},tabIndex:{type:Number,default:-1}},_=Object.assign({},$,{readonly:{}}),U=K($,te,ee,ne),A=m.defineComponent({name:"FTextarea",props:$,emits:["update:modelValue","valueChange"],setup(i,t){const e=m.ref(),n=m.ref(i.modelValue),o=m.computed(()=>i.modelValue),a=N.useTextBox(i,t,n,o),{inputGroupClass:s,onBlur:y,onFocus:h}=a,c=N.useClear(i,t,a),{onMouseEnter:d,onMouseLeave:r,clearButtonClass:p,shouldShowClearButton:f,clearButtonStyle:u}=c,b=m.computed(()=>i.maxLength?i.maxLength:i.modelValue?i.modelValue.length:0),M=w=>{var L,g;w.stopPropagation(),t.emit("update:modelValue",(L=w.target)==null?void 0:L.value),t.emit("valueChange",(g=w.target)==null?void 0:g.value)},v=w=>{w.stopPropagation(),e.value.value="",t.emit("update:modelValue",""),t.emit("valueChange","")},k=m.computed(()=>({"form-control":!0,"h-100":i.autoHeight})),B=m.computed(()=>i.rows>2?{height:"auto"}:{}),E=m.computed(()=>i.disabled||i.readonly?"":i.placeholder);return t.expose({elementRef:e}),m.onMounted(()=>{}),()=>m.createVNode("div",{class:s.value,onMouseenter:d,onMouseleave:r,style:"position:relative"},[m.withDirectives(m.createVNode("textarea",{class:k.value,id:i.id,"onUpdate:modelValue":w=>i.modelValue=w,ref:e,minlength:i.minLength,maxlength:i.maxLength?i.maxLength:null,tabindex:i.tabIndex,disabled:i.disabled,readonly:i.readonly,autocomplete:i.autocomplete,placeholder:E.value,autofocus:i.autofocus,rows:i.rows,onInput:M,onFocus:h,onBlur:y,style:B.value},null),[[m.vModelText,i.modelValue]]),f.value&&m.createVNode("span",{id:"clearIcon",class:p.value,style:u.value,onClick:w=>v(w)},[m.createVNode("i",{class:"f-icon modal_close"},null)]),i.showCount&&m.createVNode("span",{style:"position: absolute;bottom: 5px;right: 10px;z-index:999"},[`${i.modelValue?i.modelValue.length:0}/${b.value}`])])}});function oe(i,t,e){var L;const n=e&&e.getStyles&&e.getStyles()||"",o=e&&e.getDesignerClass&&e.getDesignerClass()||"",a=m.ref();function s(){return(t==null?void 0:t.schema.componentType)==="frame"?!1:e&&e.checkCanMoveComponent?e.checkCanMoveComponent():!0}function y(){return!1}function h(){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 d(g){if(!g||!g.value)return null;if(g.value.schema&&g.value.schema.type==="component")return g.value;const T=m.ref(g==null?void 0:g.value.parent),P=d(T);return P||null}function r(g=t){var I;const{componentInstance:T,designerItemElementRef:P}=g;if(!T||!T.value)return null;const{getCustomButtons:S}=T.value;return T.value.canMove||S&&((I=S())!=null&&I.length)?P:r(g.parent)}function p(g){return!!e&&e.canAccepts(g)}function f(){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 b(g,T){!g||!T||e!=null&&e.onAcceptMovedChildElement&&e.onAcceptMovedChildElement(g,T)}function M(g,T){const{componentType:P}=g;let S=W(P,g,T);e&&e.onResolveNewComponentSchema&&(S=e.onResolveNewComponentSchema(g,S));const I=P.toLowerCase().replace(/-/g,"_");return S&&!S.id&&S.type===P&&(S.id=`${I}_${Math.random().toString().slice(2,6)}`),S}function v(g){}function k(...g){if(e&&e.getPropsConfig)return e.getPropsConfig(...g)}function B(){e&&e.onRemoveComponent&&e.onRemoveComponent(),t!=null&&t.schema.contents&&t.schema.contents.map(g=>{let T=g.id;g.type==="component-ref"&&(T=g.component);const P=i.value.querySelectorAll(`#${T}-design-item`);P!=null&&P.length&&Array.from(P).map(S=>{var I;(I=S==null?void 0:S.componentInstance)!=null&&I.value.onRemoveComponent&&S.componentInstance.value.onRemoveComponent()})})}function E(){if(e&&e.getCustomButtons)return e.getCustomButtons()}function w(g){if(e&&e.onPropertyChanged)return e.onPropertyChanged(g)}return a.value={canMove:s(),canSelectParent:y(),canDelete:h(),canNested:!c(),contents:t==null?void 0:t.schema.contents,elementRef:i,parent:(L=t==null?void 0:t.parent)==null?void 0:L.componentInstance,schema:t==null?void 0:t.schema,styles:n,designerClass:o,canAccepts:p,getBelongedComponentInstance:d,getDraggableDesignItemElement:r,getDraggingDisplayText:f,getPropConfig:k,getDragScopeElement:u,onAcceptMovedChildElement:b,onChildElementMovedOut:v,addNewChildComponentSchema:M,triggerBelongedComponentToMoveWhenMoved:!!e&&e.triggerBelongedComponentToMoveWhenMoved||m.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:!!e&&e.triggerBelongedComponentToDeleteWhenDeleted||m.ref(!1),onRemoveComponent:B,getCustomButtons:E,onPropertyChanged:w},a}class ie{constructor(t,e){C(this,"componentId");C(this,"viewModelId");C(this,"eventsEditorUtils");C(this,"formSchemaUtils");C(this,"formMetadataConverter");C(this,"designViewModelUtils");C(this,"designViewModelField");C(this,"controlCreatorUtils");C(this,"designerHostService");C(this,"schemaService",null);C(this,"metadataService",null);C(this,"propertyConfig",{type:"object",categories:{}});var n;this.componentId=t,this.designerHostService=e,this.eventsEditorUtils=e.eventsEditorUtils,this.formSchemaUtils=e.formSchemaUtils,this.formMetadataConverter=e.formMetadataConverter,this.viewModelId=((n=this.formSchemaUtils)==null?void 0:n.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 n;const e=t.binding&&t.binding.type==="Form"&&t.binding.field;if(e){if(!this.designViewModelField){const o=this.designViewModelUtils.getDgViewModel(this.viewModelId);this.designViewModelField=o.fields.find(a=>a.id===e)}t.updateOn=(n=this.designViewModelField)==null?void 0:n.updateOn}}getBasicPropConfig(t){return{description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"combo-list",textField:"name",valueField:"value",editable:!1,data:[{value:t.type,name:l[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 n=e&&e.parent&&e.parent.schema;if(!n)return;const o=n.contents.findIndex(s=>s.id===t),a=V.cloneDeep(n.contents[o]);n.contents.splice(o,1),n.contents.splice(o,0,a)}}const D=class D{static getEditorTypesByMDataType(t){const e=D.fieldControlTypeMapping[t];return e||[{key:"",value:""}]}static getAllInputTypes(){const t=[];for(const e in D.fieldControlTypeMapping)D.fieldControlTypeMapping[e].forEach(n=>{t.find(o=>o.key===n.key&&o.value===n.value)||t.push({key:n.key,value:n.value})});return t}static mappingDomPropAndSchemaProp(t){var o;const e=(o=t.editor)==null?void 0:o.type;if(!e)return[];const n=[];switch(n.push({domField:"editor.required",schemaField:"require"}),n.push({domField:"editor.readonly",schemaField:"readonly"}),e){case l["data-grid-column"].type:case l["tree-grid-column"].type:{n.push({domField:"title",schemaField:"name"});break}default:n.push({domField:"label",schemaField:"name"})}return(e===l["input-group"].type||e===l.textarea.type||e===l["number-spinner"].type)&&n.push({domField:"editor.maxLength",schemaField:"type.length"}),e===l["number-spinner"].type&&n.push({domField:"editor.precision",schemaField:"type.precision"}),(e===l["combo-list"].type||e===l["radio-group"].type)&&n.push({domField:"editor.data",schemaField:"type.enumValues"}),e===l["date-picker"].type&&(n.push({domField:"editor.displayFormat",schemaField:"editor.format"}),n.push({domField:"editor.fieldType",schemaField:"type.name"})),e===l["number-spinner"].type&&(n.push({domField:"editor.max",schemaField:"editor.maxValue"}),n.push({domField:"editor.min",schemaField:"editor.minValue"})),e===l.lookup.type&&(n.push({domField:"editor.dataSource",schemaField:"editor.dataSource"}),n.push({domField:"editor.valueField",schemaField:"editor.valueField"}),n.push({domField:"editor.textField",schemaField:"editor.textField"}),n.push({domField:"editor.displayType",schemaField:"editor.displayType"}),n.push({domField:"editor.mapFields",schemaField:"editor.mapFields"}),n.push({domField:"editor.helpId",schemaField:"editor.helpId"})),n.push({domField:"path",schemaField:"bindingPath"}),n.push({domField:"binding.path",schemaField:"bindingField"}),n.push({domField:"binding.fullPath",schemaField:"path"}),(e===l["data-grid-column"].type||e===l["tree-grid-column"].type)&&n.push({domField:"field",schemaField:"bindingPath"}),n}};C(D,"fieldControlTypeMapping",{String:[{key:l["input-group"].type,value:l["input-group"].name},{key:l.lookup.type,value:l.lookup.name},{key:l["date-picker"].type,value:l["date-picker"].name},{key:l["check-group"].type,value:l["check-group"].name},{key:l["radio-group"].type,value:l["radio-group"].name},{key:l["combo-list"].type,value:l["combo-list"].name},{key:l.textarea.type,value:l.textarea.name}],Text:[{key:l.textarea.type,value:l.textarea.name},{key:l.lookup.type,value:l.lookup.name}],Decimal:[{key:l["number-spinner"].type,value:l["number-spinner"].name}],Integer:[{key:l["number-spinner"].type,value:l["number-spinner"].name}],Number:[{key:l["number-spinner"].type,value:l["number-spinner"].name}],BigNumber:[{key:l["number-spinner"].type,value:l["number-spinner"].name}],Date:[{key:l["date-picker"].type,value:l["date-picker"].name}],DateTime:[{key:l["date-picker"].type,value:l["date-picker"].name}],Boolean:[{key:l.switch.type,value:l.switch.name},{key:l["check-box"].type,value:l["check-box"].name}],Enum:[{key:l["combo-list"].type,value:l["combo-list"].name},{key:l["radio-group"].type,value:l["radio-group"].name}],Object:[{key:l.lookup.type,value:l.lookup.name},{key:l["combo-list"].type,value:l["combo-list"].name},{key:l["radio-group"].type,value:l["radio-group"].name}]});let q=D;const re=m.ref(0);class ae{constructor(){C(this,"label","");C(this,"id","");C(this,"columnInSM",12);C(this,"columnInMD",6);C(this,"columnInLG",3);C(this,"columnInEL",2);C(this,"displayWidthInSM",1);C(this,"displayWidthInMD",1);C(this,"displayWidthInLG",1);C(this,"displayWidthInEL",1);C(this,"displayColumnCountAtBreakPoint","md");C(this,"tagRow",0);C(this,"showTopBorder",0);C(this,"group",1);C(this,"isSupportedClass",!0);C(this,"fieldSetId","")}}function le(i){let t,e;const n=new Map;let o=[];function a(d,r){const f=d.split(" ").filter(k=>k.startsWith("col-"));if(f.length===0){r.isSupportedClass=!1;return}let u=f.find(k=>/^col-([1-9]|10|11|12)$/.test(k)),b=f.find(k=>/^col-md-([1-9]|10|11|12)$/.test(k)),M=f.find(k=>/^col-xl-([1-9]|10|11|12)$/.test(k)),v=f.find(k=>/^col-el-([1-9]|10|11|12)$/.test(k));u=u||"col-12",r.columnInSM=parseInt(u.replace("col-",""),10),r.displayWidthInSM=r.columnInSM/12,r.displayWidthInSM!==1&&(r.isSupportedClass=!1),b=b||"col-md-"+r.columnInSM,r.columnInMD=parseInt(b.replace("col-md-",""),10),r.displayWidthInMD=r.columnInMD/6,[1,2].includes(r.displayWidthInMD)||(r.isSupportedClass=!1),M=M||"col-xl-"+r.columnInMD,r.columnInLG=parseInt(M.replace("col-xl-",""),10),r.displayWidthInLG=r.columnInLG/3,[1,2,3,4].includes(r.displayWidthInLG)||(r.isSupportedClass=!1),v=v||"col-el-"+r.columnInLG,r.columnInEL=parseInt(v.replace("col-el-",""),10),r.displayWidthInEL=r.columnInEL/2,[1,2,3,4,5,6].includes(r.displayWidthInEL)||(r.isSupportedClass=!1)}function s(d,r,p,f=!1){let u=!1;d.contents.forEach(b=>{if(b.type==="fieldset"){p+=1,s(b,r,p,!0),u=!0;return}u&&(p+=1,u=!1);const M=b.appearance&&b.appearance.class,v=new ae;M?a(M,v):v.isSupportedClass=!1,v.label=b.label||b.id,v.id=b.id,v.group=p,f&&(v.fieldSetId=d.id),e===b.id&&(t=p),n.set(b.id,b),r.push(v)})}function y(d){const r=i.getComponentById(d);if(!r||!r.componentType||!r.componentType.startsWith("form"))return{result:!1,message:"只可以在响应式表单组件中调整响应式布局配置"};const p=i.selectNode(r,f=>f.type===j.DgControl["response-form"].type);return!p||!p.contents||p.contents.length===0?{result:!1,message:"Form区域内没有控件,请先添加控件"}:{result:!0,message:"",formNode:p}}function h(d,r){r=r||d.id;const{result:p,message:f,formNode:u}=y(r);if(!p)return{result:p,message:f};e=d.id,o=[],n.clear();const b=u.contents[0].type===j.DgControl.fieldset.type?0:1;s(u,o,b);const M=o.find(k=>!k.isSupportedClass);return{defaultState:{defaultGroupNumber:t||1,model:M?"customize":"standard"},importData:o}}function c(d,r){r=r;const{result:p,formNode:f}=y(r);if(!p)return"";const u=[];return d.forEach(b=>{var k;const M=n.get(b.id),v=M.appearance&&M.appearance.class;if(v){const E=v.split(" ").filter(S=>!S.startsWith("col-")),w="col-"+b.columnInSM,L="col-md-"+b.columnInMD,g="col-xl-"+b.columnInLG,T="col-el-"+b.columnInEL,P=[w,L,g,T].concat(E);M.appearance.class=P.join(" ")}if(b.fieldSetId){const B=f.contents.find(w=>w.id===b.fieldSetId),E=u.find(w=>w.id===b.fieldSetId);E?(k=E.contents)==null||k.push(M):(u.push(B),B.contents=[M])}else u.push(M)}),f.contents=u,f.id}return{checkCanFindFormNode:y,checkCanOpenLayoutEditor:h,changeFormControlsByResponseLayoutConfig:c,getResonseFormLayoutConfig:s}}class se extends ie{constructor(e,n){super(e,n);C(this,"responseLayoutEditorFunction");this.responseLayoutEditorFunction=le(this.formSchemaUtils)}getPropertyConfig(e,n){return this.propertyConfig.categories.basic=this.getBasicProperties(e,n),this.propertyConfig.categories.appearance=this.getAppearanceProperties(e,n),this.propertyConfig.categories.editor=this.getEditorProperties(e),this.propertyConfig}getBasicProperties(e,n){var a;const o=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:o.designViewModelField?q.getEditorTypesByMDataType((a=o.designViewModelField.type)==null?void 0:a.name):q.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"},refreshPanelAfterChanged:!0}},setPropertyRelates(s,y){if(s)switch(s&&s.propertyID){case"type":{o.changeControlType(e,s,n);break}case"label":{s.needRefreshControlTree=!0;break}}}}}getAppearanceProperties(e,n){const o=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:o.responseLayoutEditorFunction.checkCanOpenLayoutEditor(e,o.componentId)}}},setPropertyRelates(a,s){if(a)switch(a&&a.propertyID){case"responseLayout":o.responseLayoutEditorFunction.changeFormControlsByResponseLayoutConfig(a.propertyValue,o.componentId||e.id),o.updateUnifiedLayoutAfterResponseLayoutChanged(o.componentId),o.updateElementByParentContainer(e.id,n),delete e.responseLayout;break;case"class":o.updateUnifiedLayoutAfterControlChanged(a.propertyValue,e.id,this.componentId),o.updateElementByParentContainer(e.id,n);break}}}}getEditorProperties(e){return this.getComponentConfig(e)}changeControlType(e,n,o){var d,r,p,f;const a=n.propertyValue,s=o&&o.parent&&o.parent.schema;if(!s)return;const y=s.contents.findIndex(u=>u.id===e.id),h=s.contents[y];let c;this.designViewModelField&&(this.designViewModelUtils.getDgViewModel(this.viewModelId).changeField(this.designViewModelField.id,{editor:{$type:a},name:this.designViewModelField.name,require:this.designViewModelField.require,readonly:this.designViewModelField.readonly},!1),c=this.controlCreatorUtils.setFormFieldProperty(this.designViewModelField,a)),c||(c=this.controlCreatorUtils.createFormGroupWithoutField(a)),Object.assign(c,{id:h.id,appearance:h.appearance,size:h.size,label:h.label,binding:h.binding,visible:h.visible}),Object.assign(c.editor,{isTextArea:c.isTextArea&&h.isTextArea,placeholder:(d=h.editor)==null?void 0:d.placeholder,holdPlace:(r=h.editor)==null?void 0:r.holdPlace,readonly:(p=h.editor)==null?void 0:p.readonly,required:(f=h.editor)==null?void 0:f.required}),s.contents.splice(y,1),s.contents.splice(y,0,c),o.schema=Object.assign(h,c),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(u=>u.classList.remove("dgComponentSelected")),Array.from(document.getElementsByClassName("dgComponentFocused")).forEach(u=>u.classList.remove("dgComponentFocused")),re.value++}getComponentConfig(e,n={},o={},a){const s=Object.assign({description:"编辑器",title:"编辑器",type:"input-group",$converter:"/converter/property-editor.converter"},n),y=Object.assign({readonly:{description:"",title:"只读",type:"boolean",editor:{enableClear:!0,editable:!0}},disabled:{description:"",title:"禁用",type:"boolean",visible:!1},placeholder:{description:"当控件没有值时在输入框中显示的文本",title:"提示文本",type:"string"}},o);return{...s,properties:{...y},setPropertyRelates:a}}updateUnifiedLayoutAfterControlChanged(e,n,o){const a=e.split(" ");let s=a.find(r=>/^col-([1-9]|10|11|12)$/.test(r)),y=a.find(r=>/^col-md-([1-9]|10|11|12)$/.test(r)),h=a.find(r=>/^col-xl-([1-9]|10|11|12)$/.test(r)),c=a.find(r=>/^col-el-([1-9]|10|11|12)$/.test(r));s=s||"col-12",y=y||"col-md-"+s.replace("col-",""),h=h||"col-xl-"+y.replace("col-md-",""),c=c||"col-el-"+h.replace("col-xl-","");const d={id:n,columnInSM:parseInt(s.replace("col-",""),10),columnInMD:parseInt(y.replace("col-md-",""),10),columnInLG:parseInt(h.replace("col-xl-",""),10),columnInEL:parseInt(c.replace("col-el-",""),10)};this.updateUnifiedLayoutAfterResponseLayoutChanged(o,d)}updateUnifiedLayoutAfterResponseLayoutChanged(e,n){const{formNode:o}=this.responseLayoutEditorFunction.checkCanFindFormNode(e);if(!o||!o.unifiedLayout)return;const a=[];if(this.responseLayoutEditorFunction.getResonseFormLayoutConfig(o,a,1),n){const u=a.find(b=>b.id===n.id);Object.assign(u||{},n)}const s=a.map(u=>u.columnInSM),y=a.map(u=>u.columnInMD),h=a.map(u=>u.columnInLG),c=a.map(u=>u.columnInEL),d=this.checkIsUniqueColumn(s)?s[0]:null,r=this.checkIsUniqueColumn(y)?y[0]:null,p=this.checkIsUniqueColumn(h)?h[0]:null,f=this.checkIsUniqueColumn(c)?c[0]:null;Object.assign(o.unifiedLayout,{uniqueColClassInSM:d,uniqueColClassInMD:r,uniqueColClassInLG:p,uniqueColClassInEL:f})}checkIsUniqueColumn(e){const n=new Set(e);return Array.from(n).length===1}getItemCollectionEditor(e,n,o){return n=n||"value",o=o||"name",{editor:{columns:[{field:n,title:"值",dataType:"string"},{field:o,title:"名称",dataType:"string"},{field:"disabled",title:"禁用",visible:!1,dataType:"boolean",editor:{type:"switch"}}],type:"item-collection-editor",valueField:n,nameField:o,requiredFields:[n,o],uniqueFields:[n,o],readonly:this.checkEnumDataReadonly(e)}}}checkEnumDataReadonly(e){return!e.binding||e.binding.type!=="Form"?!1:!!(this.designViewModelField&&this.designViewModelField.type&&this.designViewModelField.type.$type===N.FormSchemaEntityFieldType$Type.EnumType)}}class ce extends se{constructor(t,e){super(t,e)}getEditorProperties(t){return this.getComponentConfig(t,{type:"textarea"},{rows:{description:"",title:"文本区域可见的行数",type:"number",editor:{min:0,nullable:!0}},showCount:{description:"",title:"展示输入文本数量",type:"boolean"}})}}function de(i,t){const e=i.schema;function n(o,a){return new ce(o,t).getPropertyConfig(e,a)}return{getPropsConfig:n}}const pe=m.defineComponent({name:"FTextareaDesign",props:_,emits:[""],setup(i,t){const e=m.ref(),n=m.inject("designer-host-service"),o=m.inject("design-item-context"),a=de(o,n),s=oe(e,o,a),y=m.computed(()=>i.maxLength?i.maxLength:i.modelValue.length),h=m.computed(()=>({position:"relative"})),c=m.computed(()=>({"box-shadow":"0 0 0 1px #dcdfe6 inset",border:"none",padding:"5px 10px",width:"100%"})),d={position:"absolute",bottom:"5px",right:"10px"};return m.onMounted(()=>{e.value.componentInstance=s}),t.expose(s.value),()=>m.createVNode("div",{style:h.value,ref:e},[m.createVNode("textarea",{id:i.id,tabindex:i.tabIndex,disabled:!1,readonly:!0,style:c.value,placeholder:i.placeholder,rows:i.rows},null),i.showCount&&m.createVNode("span",{style:d},[`${i.modelValue.length}/${y.value}`])])}});A.register=(i,t,e,n)=>{i.textarea=A,t.textarea=U},A.registerDesigner=(i,t,e)=>{i.textarea=pe,t.textarea=U};const ue=N.withInstall(A);F.FTextarea=A,F.default=ue,F.propsResolver=U,F.textAreaDesignProps=_,F.textAreaProps=$,Object.defineProperties(F,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|