@farris/ui-vue 1.3.0 → 1.3.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/accordion/index.esm.js +1 -1
- package/components/accordion/index.umd.cjs +1 -1
- package/components/avatar/index.esm.js +472 -366
- package/components/avatar/index.umd.cjs +1 -1
- package/components/button-edit/index.esm.js +1 -1
- package/components/button-edit/index.umd.cjs +1 -1
- package/components/calendar/index.esm.js +472 -480
- package/components/calendar/index.umd.cjs +1 -1
- package/components/capsule/index.esm.js +225 -233
- package/components/capsule/index.umd.cjs +1 -1
- package/components/checkbox/index.esm.js +615 -517
- package/components/checkbox/index.umd.cjs +1 -1
- package/components/color-picker/index.esm.js +325 -333
- package/components/color-picker/index.umd.cjs +2 -2
- package/components/combo-list/index.esm.js +578 -472
- package/components/combo-list/index.umd.cjs +1 -1
- package/components/combo-tree/index.esm.js +49 -49
- package/components/combo-tree/index.umd.cjs +1 -1
- package/components/common/index.esm.js +832 -722
- package/components/common/index.umd.cjs +1 -1
- package/components/component/index.esm.js +303 -981
- package/components/component/index.umd.cjs +1 -1
- package/components/condition/index.esm.js +8 -8
- package/components/condition/index.umd.cjs +1 -1
- package/components/content-container/index.esm.js +335 -1002
- package/components/content-container/index.umd.cjs +1 -1
- package/components/data-grid/index.esm.js +4429 -4312
- package/components/data-grid/index.umd.cjs +1 -1
- package/components/data-view/index.esm.js +3037 -3020
- package/components/data-view/index.umd.cjs +1 -1
- package/components/date-picker/index.esm.js +2216 -2119
- package/components/date-picker/index.umd.cjs +1 -1
- package/components/designer-canvas/index.css +1 -1
- package/components/designer-canvas/index.esm.js +914 -883
- package/components/designer-canvas/index.umd.cjs +1 -1
- package/components/dropdown/index.esm.js +223 -231
- package/components/dropdown/index.umd.cjs +2 -2
- package/components/dynamic-form/index.esm.js +1691 -2187
- package/components/dynamic-form/index.umd.cjs +1 -1
- package/components/dynamic-resolver/index.esm.js +143 -136
- package/components/dynamic-resolver/index.umd.cjs +1 -1
- package/components/events-editor/index.esm.js +250 -258
- package/components/events-editor/index.umd.cjs +1 -1
- package/components/expression-editor/index.esm.js +1 -1
- package/components/expression-editor/index.umd.cjs +1 -1
- package/components/external-container/index.esm.js +2672 -3438
- package/components/external-container/index.umd.cjs +1 -1
- package/components/field-selector/index.esm.js +2965 -2970
- package/components/field-selector/index.umd.cjs +1 -1
- package/components/filter-bar/index.esm.js +1650 -1602
- package/components/filter-bar/index.umd.cjs +1 -1
- package/components/flow-canvas/index.css +1 -1
- package/components/flow-canvas/index.esm.js +684 -675
- package/components/flow-canvas/index.umd.cjs +1 -1
- package/components/image-cropper/index.esm.js +453 -461
- package/components/image-cropper/index.umd.cjs +1 -1
- package/components/input-group/index.esm.js +604 -507
- package/components/input-group/index.umd.cjs +1 -1
- package/components/layout/index.esm.js +402 -378
- package/components/layout/index.umd.cjs +1 -1
- package/components/list-nav/index.esm.js +348 -1019
- package/components/list-nav/index.umd.cjs +1 -1
- package/components/list-view/index.esm.js +1658 -1666
- package/components/list-view/index.umd.cjs +1 -1
- package/components/lookup/index.esm.js +5209 -5088
- package/components/lookup/index.umd.cjs +1 -1
- package/components/mapping-editor/index.esm.js +4329 -4213
- package/components/mapping-editor/index.umd.cjs +1 -1
- package/components/nav/index.esm.js +905 -1357
- package/components/nav/index.umd.cjs +3 -3
- package/components/number-range/index.esm.js +517 -420
- package/components/number-range/index.umd.cjs +1 -1
- package/components/number-spinner/index.esm.js +588 -491
- package/components/number-spinner/index.umd.cjs +1 -1
- package/components/order/index.esm.js +1376 -1965
- package/components/order/index.umd.cjs +1 -1
- package/components/page-footer/index.esm.js +1 -1
- package/components/page-footer/index.umd.cjs +1 -1
- package/components/page-header/index.esm.js +1073 -1905
- package/components/page-header/index.umd.cjs +1 -1
- package/components/pagination/index.esm.js +809 -1237
- package/components/pagination/index.umd.cjs +1 -1
- package/components/progress/index.esm.js +198 -206
- package/components/progress/index.umd.cjs +3 -3
- package/components/property-editor/index.esm.js +1297 -1200
- package/components/property-editor/index.umd.cjs +2 -2
- package/components/property-panel/index.esm.js +609 -507
- package/components/property-panel/index.umd.cjs +1 -1
- package/components/query-solution/index.esm.js +3391 -3758
- package/components/query-solution/index.umd.cjs +1 -1
- package/components/radio-button/index.esm.js +1 -1
- package/components/radio-button/index.umd.cjs +1 -1
- package/components/radio-group/index.esm.js +544 -447
- package/components/radio-group/index.umd.cjs +1 -1
- package/components/rate/index.esm.js +247 -255
- package/components/rate/index.umd.cjs +1 -1
- package/components/response-layout/index.esm.js +146 -154
- package/components/response-layout/index.umd.cjs +1 -1
- package/components/response-layout-editor/index.esm.js +700 -675
- package/components/response-layout-editor/index.umd.cjs +1 -1
- package/components/response-toolbar/index.esm.js +956 -1786
- package/components/response-toolbar/index.umd.cjs +1 -1
- package/components/schema-selector/index.esm.js +4963 -5617
- package/components/schema-selector/index.umd.cjs +2 -2
- package/components/search-box/index.esm.js +158 -161
- package/components/search-box/index.umd.cjs +1 -1
- package/components/section/index.esm.js +436 -1124
- package/components/section/index.umd.cjs +1 -1
- package/components/smoke-detector/index.esm.js +92 -100
- package/components/smoke-detector/index.umd.cjs +1 -1
- package/components/splitter/index.esm.js +571 -1210
- package/components/splitter/index.umd.cjs +1 -1
- package/components/splitter/style.js +2 -0
- package/components/step/index.esm.js +239 -247
- package/components/step/index.umd.cjs +1 -1
- package/components/switch/index.esm.js +445 -348
- package/components/switch/index.umd.cjs +1 -1
- package/components/tabs/index.esm.js +2278 -3031
- package/components/tabs/index.umd.cjs +1 -1
- package/components/tags/index.esm.js +311 -319
- package/components/tags/index.umd.cjs +1 -1
- package/components/text/index.esm.js +215 -223
- package/components/text/index.umd.cjs +1 -1
- package/components/textarea/index.esm.js +468 -371
- package/components/textarea/index.umd.cjs +1 -1
- package/components/time-picker/index.esm.js +1271 -1174
- package/components/time-picker/index.umd.cjs +1 -1
- package/components/transfer/index.esm.js +469 -477
- package/components/transfer/index.umd.cjs +1 -1
- package/components/tree-grid/index.esm.js +3060 -3065
- package/components/tree-grid/index.umd.cjs +1 -1
- package/components/tree-view/index.esm.js +2476 -2481
- package/components/tree-view/index.umd.cjs +1 -1
- package/components/uploader/index.esm.js +374 -382
- package/components/uploader/index.umd.cjs +2 -2
- package/components/verify-detail/index.esm.js +248 -256
- package/components/verify-detail/index.umd.cjs +1 -1
- package/components/video/index.esm.js +414 -1093
- package/components/video/index.umd.cjs +1 -1
- package/components/weather/index.esm.js +498 -506
- package/components/weather/index.umd.cjs +5 -5
- package/farris.all.esm.js +20216 -21844
- package/farris.all.umd.cjs +9 -9
- package/index.css +1 -1
- package/package.json +1 -1
- package/types/common/directive/area-response.d.ts +10 -0
- package/types/common/index.d.ts +8 -0
- package/types/common/radio-checkbox/radio-checkbox.props.d.ts +1 -0
- package/types/common/utils/resolve-field.d.ts +2 -0
- package/types/common/utils/use-class.d.ts +7 -0
- package/types/component/src/designer/use-designer-rules.d.ts +2 -2
- package/types/condition/src/types.d.ts +2 -1
- package/types/content-container/src/designer/use-designer-rules.d.ts +3 -3
- package/types/data-grid/index.d.ts +8 -5
- package/types/data-grid/src/data-grid.component.d.ts +3 -2
- package/types/data-grid/src/designer/data-grid.design.component.d.ts +2 -2
- package/types/data-grid/src/designer/use-designer-rules.d.ts +2 -2
- package/types/data-view/components/row/hierarchy-row.component.d.ts +2 -2
- package/types/data-view/composition/data/use-tree-data.d.ts +1 -1
- package/types/data-view/composition/types.d.ts +7 -9
- package/types/designer-canvas/index.d.ts +2 -1
- package/types/designer-canvas/src/composition/rule/use-dragula-common-rule.d.ts +4 -0
- package/types/designer-canvas/src/composition/rule/use-template-rule.d.ts +30 -0
- package/types/designer-canvas/src/composition/types.d.ts +1 -2
- package/types/designer-canvas/src/types.d.ts +2 -1
- package/types/dynamic-form/src/designer/response-form.design.component.d.ts +7 -1
- package/types/dynamic-form/src/designer/use-designer-rules.d.ts +2 -2
- package/types/dynamic-form/src/property-config/form.property-config.d.ts +1 -1
- package/types/dynamic-resolver/src/common/toolbar-resolver.d.ts +1 -1
- package/types/external-container/src/designer/use-designer-rules.d.ts +3 -3
- package/types/layout/src/designer/layout-pane-use-designer-rules.d.ts +3 -3
- package/types/list-nav/src/designer/use-designer-rules.d.ts +3 -0
- package/types/pagination/src/components/buttons/goto-buttons.component.d.ts +2 -2
- package/types/pagination/src/components/buttons/next-buttons.component.d.ts +2 -2
- package/types/pagination/src/components/buttons/previous-buttons.component.d.ts +2 -2
- package/types/pagination/src/components/pages/page-list.component.d.ts +2 -2
- package/types/pagination/src/components/pages/page-number.component.d.ts +2 -2
- package/types/property-panel/index.d.ts +2 -1
- package/types/property-panel/src/composition/entity/input-base-property.d.ts +1 -1
- package/types/query-solution/src/designer/query-solution-config/composition/types.d.ts +34 -27
- package/types/query-solution/src/designer/query-solution-config/composition/use-panel.d.ts +2 -16
- package/types/query-solution/src/designer/query-solution-config/composition/use-property.d.ts +19 -0
- package/types/query-solution/src/designer/query-solution-config/composition/use-querysolution-rules.d.ts +3 -0
- package/types/query-solution/src/designer/query-solution-config/composition/use-transfer.d.ts +1 -1
- package/types/query-solution/src/property-config/query-solution.property-config.d.ts +60 -0
- package/types/query-solution/src/solutions.d.ts +108 -509
- package/types/response-layout-editor/index.d.ts +3 -1
- package/types/response-toolbar/src/designer/use-designer-rules.d.ts +3 -3
- package/types/response-toolbar/src/property-config/response-toolbar-item.property-config.d.ts +1 -0
- package/types/section/src/designer/use-designer-rules.d.ts +3 -3
- package/types/splitter/src/components/splitter-pane.component.d.ts +1 -1
- package/types/splitter/src/designer/splitter-pane-use-designer-rules.d.ts +3 -3
- package/types/splitter/src/designer/splitter-use-designer-rules.d.ts +3 -3
- package/types/tabs/src/designer/tab-page-use-designer-rules.d.ts +3 -3
- package/types/tabs/src/designer/tab-use-designer-rules.d.ts +3 -3
- package/types/tree-grid/index.d.ts +3 -3
- package/types/tree-grid/src/tree-grid.component.d.ts +1 -1
- package/types/designer-canvas/src/composition/rule/use-drag-drop-rules.d.ts +0 -19
- package/types/designer-canvas/src/composition/use-dragula-common-rule.d.ts +0 -4
- package/types/list-nav/src/composition/use-designer-rules.d.ts +0 -3
- package/types/query-solution/src/designer/query-solution-config/composition/mock-data.d.ts +0 -6
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(b,p){typeof exports=="object"&&typeof module<"u"?p(exports,require("vue"),require("lodash-es"),require("../common/index.umd.js"),require("../dynamic-resolver/index.umd.js"),require("../response-layout-editor/index.umd.js/src/composition/converter/use-response-layout-editor-setting")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es","../common/index.umd.js","../dynamic-resolver/index.umd.js","../response-layout-editor/index.umd.js/src/composition/converter/use-response-layout-editor-setting"],p):(b=typeof globalThis<"u"?globalThis:b||self,p(b.textarea={},b.Vue,b.LodashES,b.common,b.dynamicResolver,b.useResponseLayoutEditorSetting))})(this,function(b,p,T,q,I,_){"use strict";var me=Object.defineProperty;var ye=(b,p,T)=>p in b?me(b,p,{enumerable:!0,configurable:!0,writable:!0,value:T}):b[p]=T;var C=(b,p,T)=>ye(b,typeof p!="symbol"?p+"":p,T);const O={},G={};function U(o){const{properties:t,title:e,ignore:n}=o,r=n&&Array.isArray(n),a=Object.keys(t).reduce((l,m)=>((!r||!n.find(u=>u==m))&&(l[m]=t[m].type==="object"&&t[m].properties?U(t[m]):T.cloneDeep(t[m].default)),l),{});return(!r||!n.find(l=>l=="id"))&&(a.id=`${e}-${Date.now()}`),a}function $(o,t={},e){const n=O[o];if(n){let r=U(n);const a=G[o];return r=a?a({getSchemaByType:$},r,t,e):r,r}return null}function z(o,t){const e=U(t);return Object.keys(o).reduce((n,r)=>(n[r]&&T.isPlainObject(n[r])&&T.isPlainObject(o[r])?Object.assign(n[r],o[r]):n[r]=o[r],n),e),e}function J(o,t){return Object.keys(o).filter(n=>o[n]!=null).reduce((n,r)=>{if(t.has(r)){const a=t.get(r);if(typeof a=="string")n[a]=o[r];else{const l=a(r,o[r],o);Object.assign(n,l)}}else n[r]=o[r];return n},{})}function X(o,t,e=new Map){const n=z(o,t);return J(n,e)}function Q(o={}){function t(i,d,c,y){if(typeof c=="number")return y[i].length===c;if(typeof c=="object"){const g=Object.keys(c)[0],f=c[g];if(g==="not")return Number(y[i].length)!==Number(f);if(g==="moreThan")return Number(y[i].length)>=Number(f);if(g==="lessThan")return Number(y[i].length)<=Number(f)}return!1}function e(i,d,c,y){return y[i]&&y[i].propertyValue&&String(y[i].propertyValue.value)===String(c)}const n=new Map([["length",t],["getProperty",e]]);Object.keys(o).reduce((i,d)=>(i.set(d,o[d]),i),n);function r(i,d){const c=i;return typeof d=="number"?[{target:c,operator:"length",param:null,value:Number(d)}]:typeof d=="boolean"?[{target:c,operator:"getProperty",param:i,value:!!d}]:typeof d=="object"?Object.keys(d).map(y=>{if(y==="length")return{target:c,operator:"length",param:null,value:d[y]};const g=y,f=d[y];return{target:c,operator:"getProperty",param:g,value:f}}):[]}function a(i){return Object.keys(i).reduce((c,y)=>{const g=r(y,i[y]);return c.push(...g),c},[])}function l(i,d){if(n.has(i.operator)){const c=n.get(i.operator);return c&&c(i.target,i.param,i.value,d)||!1}return!1}function m(i,d){return a(i).reduce((g,f)=>g&&l(f,d),!0)}function u(i,d){const c=Object.keys(i),y=c.includes("allOf"),g=c.includes("anyOf"),f=y||g,S=(f?i[f?y?"allOf":"anyOf":"allOf"]:[i]).map(P=>m(P,d));return y?!S.includes(!1):S.includes(!0)}return{parseValueSchema:u}}const s={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"}},Y={},Z={};Q();function H(o,t,e=new Map,n=(l,m,u)=>m,r={},a=l=>l){return O[t.title]=t,G[t.title]=n,Y[t.title]=r,Z[t.title]=a,(l={})=>{const m=X(l,t,e),u=Object.keys(o).reduce((i,d)=>(i[d]=o[d].default,i),{});return Object.assign(u,m)}}function R(o,t){return{customClass:t.class,customStyle:t.style}}const K=new Map([["appearance",R]]),ee={$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},ignore:["id","appearance","binding"]},required:["id","type"]};function te(o,t,e){return t}const L={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:Boolean},showCount:{type:Boolean,default:!1},showBorder:{Type:Boolean,default:!0},tabIndex:{type:Number,default:-1}},j=H(L,ee,K,te),F=p.defineComponent({name:"FTextarea",props:L,emits:["update:modelValue","valueChange"],setup(o,t){const e=p.ref(),n=p.ref(o.modelValue),r=p.computed(()=>o.modelValue),a=q.useTextBox(o,t,n,r),{inputGroupClass:l,onBlur:m,onFocus:u}=a,i=q.useClear(o,t,a),{onMouseEnter:d,onMouseLeave:c,clearButtonClass:y,shouldShowClearButton:g,clearButtonStyle:f}=i,V=p.computed(()=>o.maxLength?o.maxLength:o.modelValue.length),A=v=>{var P,D;v.stopPropagation(),t.emit("update:modelValue",(P=v.target)==null?void 0:P.value),t.emit("valueChange",(D=v.target)==null?void 0:D.value)},S=v=>{v.stopPropagation(),e.value.value="",t.emit("update:modelValue",""),t.emit("valueChange","")};return p.onMounted(()=>{}),()=>p.createVNode("div",{class:l.value,onMouseenter:d,onMouseleave:c,style:"position:relative"},[p.withDirectives(p.createVNode("textarea",{id:o.id,"onUpdate:modelValue":v=>o.modelValue=v,ref:e,minlength:o.minLength,maxlength:o.maxLength?o.maxLength:null,tabindex:o.tabIndex,disabled:o.disabled,readonly:o.readonly,autocomplete:o.autocomplete,placeholder:o.placeholder,autofocus:o.autofocus,rows:o.rows,onInput:A,onFocus:u,onBlur:m,style:"border-radius:6px; padding:5px 10px; width:100%"},null),[[p.vModelText,o.modelValue]]),g.value&&p.createVNode("span",{id:"clearIcon",class:y.value,style:f.value,onClick:v=>S(v)},[p.createVNode("i",{class:"f-icon modal_close"},null)]),o.showCount&&p.createVNode("span",{style:"position: absolute;bottom: 5px;right: 10px"},[`${o.modelValue.length}/${V.value}`])])}});function ne(o,t,e){var W;function n(){e!=null&&e.resolveComponentContext&&e.resolveComponentContext()}n();const r=e&&e.getStyles&&e.getStyles()||"",a=e&&e.getDesignerClass&&e.getDesignerClass()||"",l=p.ref();function m(){return(t==null?void 0:t.schema.componentType)==="frame"?!1:e&&e.checkCanMoveComponent?e.checkCanMoveComponent():!0}function u(){return!1}function i(){return(t==null?void 0:t.schema.componentType)==="frame"?!1:e&&e.checkCanDeleteComponent?e.checkCanDeleteComponent():!0}function d(){return(t==null?void 0:t.schema.componentType)==="frame"?!0:e&&e.hideNestedPaddingInDesginerView?e.hideNestedPaddingInDesginerView():!1}function c(h){if(!h||!h.value)return null;if(h.value.schema&&h.value.schema.type==="component")return h.value;const M=p.ref(h==null?void 0:h.value.parent),k=c(M);return k||null}function y(h=t){const{componentInstance:M,designerItemElementRef:k}=h;return!M||!M.value?null:M.value.canMove?k:y(h.parent)}function g(h){return!!e&&e.canAccepts(h)}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 V(){}function A(h,M){M&&e!=null&&e.onAcceptMovedChildElement&&e.onAcceptMovedChildElement(M)}function S(h,M){const{componentType:k}=h;let w=$(k,h,M);e&&e.onResolveNewComponentSchema&&(w=e.onResolveNewComponentSchema(h,w));const N=k.toLowerCase().replace("-","_");return w&&!w.id&&w.type===k&&(w.id=`${N}_${Math.random().toString().slice(2,6)}`),w}function v(h,M){const k=String(h.getAttribute("data-controltype")),w=h.getAttribute("data-feature"),N=w?JSON.parse(w):{};N.parentComponentInstance=l.value;let B=$(k,N);e&&e.onAcceptNewChildElement&&(B=e.onAcceptNewChildElement(h,M,B));const de=k.toLowerCase().replace("-","_");return B&&!B.id&&B.type===k&&(B.id=`${de}_${Math.random().toString().slice(2,6)}`),B}function P(h){}function D(...h){if(e&&e.getPropsConfig)return e.getPropsConfig(...h)}return l.value={canMove:m(),canSelectParent:u(),canDelete:i(),canNested:!d(),contents:t==null?void 0:t.schema.contents,elementRef:o,parent:(W=t==null?void 0:t.parent)==null?void 0:W.componentInstance,schema:t==null?void 0:t.schema,styles:r,designerClass:a,canAccepts:g,getBelongedComponentInstance:c,getDraggableDesignItemElement:y,getDraggingDisplayText:f,getPropConfig:D,getDragScopeElement:V,onAcceptMovedChildElement:A,onAcceptNewChildElement:v,onChildElementMovedOut:P,addNewChildComponentSchema:S,updateDragAndDropRules:n,triggerBelongedComponentToMoveWhenMoved:!!e&&e.triggerBelongedComponentToMoveWhenMoved||p.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:!!e&&e.triggerBelongedComponentToDeleteWhenDeleted||p.ref(!1)},l}class oe{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){const e=t.binding&&t.binding.type==="Form"&&t.binding.field;if(e){if(!this.designViewModelField){const n=this.designViewModelUtils.getDgViewModel(this.viewModelId);this.designViewModelField=n.fields.find(r=>r.id===e)}t.updateOn=this.designViewModelField.updateOn}}changeFieldEditorType(t,e){}getBasicPropConfig(t){return{description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"combo-list",textField:"name",valueField:"value",data:[{value:t.type,name:s[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 r=n.contents.findIndex(l=>l.id===t),a=T.cloneDeep(n.contents[r]);n.contents.splice(r,1),n.contents.splice(r,0,a)}}const x=class x{static getEditorTypesByMDataType(t){const e=x.fieldControlTypeMapping[t];return e||[{key:"",value:""}]}static getAllInputTypes(){const t=[];for(let e in x.fieldControlTypeMapping)x.fieldControlTypeMapping[e].forEach(n=>{t.find(r=>r.key===n.key&&r.value===n.value)||t.push({key:n.key,value:n.value})});return t}};C(x,"fieldControlTypeMapping",{String:[{key:s["input-group"].type,value:s["input-group"].name},{key:s.lookup.type,value:s.lookup.name},{key:s["date-picker"].type,value:s["date-picker"].name},{key:s["check-box"].type,value:s["check-box"].name},{key:s["radio-group"].type,value:s["radio-group"].name},{key:s["combo-list"].type,value:s["combo-list"].name},{key:s.textarea.type,value:s.textarea.name}],Text:[{key:s.textarea.type,value:s.textarea.name},{key:s.lookup.type,value:s.lookup.name}],Decimal:[{key:s["number-spinner"].type,value:s["number-spinner"].name}],Integer:[{key:s["number-spinner"].type,value:s["number-spinner"].name}],Number:[{key:s["number-spinner"].type,value:s["number-spinner"].name}],BigNumber:[{key:s["number-spinner"].type,value:s["number-spinner"].name}],Date:[{key:s["date-picker"].type,value:s["date-picker"].name}],DateTime:[{key:s["date-picker"].type,value:s["date-picker"].name}],Boolean:[{key:s.switch.type,value:s.switch.name},{key:s["check-box"].type,value:s["check-box"].name}],Enum:[{key:s["combo-list"].type,value:s["combo-list"].name},{key:s["radio-group"].type,value:s["radio-group"].name}],Object:[{key:s.lookup.type,value:s.lookup.name},{key:s["combo-list"].type,value:s["combo-list"].name},{key:s["radio-group"].type,value:s["radio-group"].name}]});let E=x;const re=p.ref(0);class ie extends oe{constructor(e,n){super(e,n);C(this,"responseLayoutEditorFunction");this.responseLayoutEditorFunction=_.useResponseLayoutEditorSetting(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 m;var r=this;this.setDesignViewModelField(e);const a=this.formSchemaUtils.getFormMetadataBasicInfo(),l=this.designViewModelUtils.getAllFields2TreeByVMId(this.viewModelId);return{description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"编辑器类型",title:"编辑器类型",type:"string",refreshPanelAfterChanged:!0,$converter:"/converter/change-editor.converter",editor:{type:"combo-list",textField:"value",valueField:"key",editable:!1,data:r.designViewModelField?E.getEditorTypesByMDataType((m=r.designViewModelField.type)==null?void 0:m.name):E.getAllInputTypes()}},label:{title:"标签",type:"string",$converter:"/converter/form-group-label.converter"},binding:{description:"绑定的表单字段",title:"绑定",$converter:"/converter/field-selector.converter",editor:{type:"field-selector",bindingType:{enable:!1},editorParams:{propertyData:e,formBasicInfo:a},columns:[{field:"name",title:"字段名称"},{field:"bindingField",title:"绑定字段"},{field:"fieldType",title:"字段类型"}],textField:"bindingField",data:l}}},setPropertyRelates(u,i){if(u)switch(u&&u.propertyID){case"type":{r.changeControlType(e,u,n);break}case"label":{u.needRefreshControlTree=!0;break}}}}}getAppearanceProperties(e,n){var r=this;return{title:"样式",description:"Appearance",properties:{class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter"},style:{title:"style样式",type:"string",description:"组件的样式",$converter:"/converter/appearance.converter"},responseLayout:{description:"响应式列宽",title:"响应式列宽",type:"boolean",visible:!0,refreshPanelAfterChanged:!0,editor:{type:"response-layout-editor-setting",initialState:r.responseLayoutEditorFunction.checkCanOpenLayoutEditor(e,r.componentId)}}},setPropertyRelates(a,l){if(a)switch(a&&a.propertyID){case"responseLayout":r.responseLayoutEditorFunction.changeFormControlsByResponseLayoutConfig(a.propertyValue,r.componentId||e.id),r.updateUnifiedLayoutAfterResponseLayoutChanged(r.componentId),r.updateElementByParentContainer(e.id,n),delete e.responseLayout;break;case"class":r.updateUnifiedLayoutAfterControlChanged(a.propertyValue,e.id,this.componentId),r.updateElementByParentContainer(e.id,n);break}}}}getEditorProperties(e){return this.getComponentConfig(e)}changeControlType(e,n,r){var d,c,y,g;const a=n.propertyValue,l=r&&r.parent&&r.parent.schema;if(!l)return;const m=l.contents.findIndex(f=>f.id===e.id),u=l.contents[m];let i;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),i=this.controlCreatorUtils.setFormFieldProperty(this.designViewModelField,a)),i||(i=I.getSchemaByType("form-group")||{},i.editor=I.getSchemaByType(a)||{},delete i.editor.id,delete i.editor.binding,delete i.editor.appearance),Object.assign(i,{id:u.id,appearance:u.appearance,size:u.size,label:u.label,binding:u.binding,visible:u.visible}),Object.assign(i.editor,{isTextArea:i.isTextArea&&u.isTextArea,placeholder:(d=u.editor)==null?void 0:d.placeholder,holdPlace:(c=u.editor)==null?void 0:c.holdPlace,readonly:(y=u.editor)==null?void 0:y.readonly,require:(g=u.editor)==null?void 0:g.require}),l.contents.splice(m,1),l.contents.splice(m,0,i),r.schema=Object.assign(u,i),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(f=>f.classList.remove("dgComponentSelected")),re.value++}getComponentConfig(e,n={},r={}){const a=Object.assign({description:"编辑器",title:"编辑器",type:"input-group",$converter:"/converter/property-editor.converter"},n),l=Object.assign({readonly:{description:"",title:"只读",type:"boolean"},disabled:{description:"",title:"禁用",type:"boolean"},placeholder:{description:"空值时,输入控件内的占位文本",title:"提示文本",type:"string"}},r);return{...a,properties:{...l}}}updateUnifiedLayoutAfterControlChanged(e,n,r){const a=e.split(" ");let l=a.find(c=>/^col-([1-9]|10|11|12)$/.test(c)),m=a.find(c=>/^col-md-([1-9]|10|11|12)$/.test(c)),u=a.find(c=>/^col-xl-([1-9]|10|11|12)$/.test(c)),i=a.find(c=>/^col-el-([1-9]|10|11|12)$/.test(c));l=l||"col-12",m=m||"col-md-"+l.replace("col-",""),u=u||"col-xl-"+m.replace("col-md-",""),i=i||"col-el-"+u.replace("col-xl-","");const d={id:n,columnInSM:parseInt(l.replace("col-",""),10),columnInMD:parseInt(m.replace("col-md-",""),10),columnInLG:parseInt(u.replace("col-xl-",""),10),columnInEL:parseInt(i.replace("col-el-",""),10)};this.updateUnifiedLayoutAfterResponseLayoutChanged(r,d)}updateUnifiedLayoutAfterResponseLayoutChanged(e,n){const{formNode:r}=this.responseLayoutEditorFunction.checkCanFindFormNode(e);if(!r||!r.unifiedLayout)return;const a=[];if(this.responseLayoutEditorFunction.getResonseFormLayoutConfig(r,a,1),n){const f=a.find(V=>V.id===n.id);Object.assign(f||{},n)}const l=a.map(f=>f.columnInSM),m=a.map(f=>f.columnInMD),u=a.map(f=>f.columnInLG),i=a.map(f=>f.columnInEL),d=this.checkIsUniqueColumn(l)?l[0]:null,c=this.checkIsUniqueColumn(m)?m[0]:null,y=this.checkIsUniqueColumn(u)?u[0]:null,g=this.checkIsUniqueColumn(i)?i[0]:null;Object.assign(r.unifiedLayout,{uniqueColClassInSM:d,uniqueColClassInMD:c,uniqueColClassInLG:y,uniqueColClassInEL:g})}checkIsUniqueColumn(e){const n=new Set(e);return Array.from(n).length===1}}class ae extends ie{constructor(t,e){super(t,e)}}function le(o,t){o.schema;const e=p.ref(!0),n=p.ref(!0);function r(c){return!1}function a(){return!1}function l(){return!1}function m(){return!0}function u(c){}function i(){}function d(c){return null}return{canAccepts:r,checkCanDeleteComponent:a,checkCanMoveComponent:l,hideNestedPaddingInDesginerView:m,onAcceptMovedChildElement:u,resolveComponentContext:i,triggerBelongedComponentToMoveWhenMoved:e,triggerBelongedComponentToDeleteWhenDeleted:n,getPropsConfig:d}}function se(o,t){const{canAccepts:e,checkCanDeleteComponent:n,checkCanMoveComponent:r,hideNestedPaddingInDesginerView:a,onAcceptMovedChildElement:l,resolveComponentContext:m,triggerBelongedComponentToMoveWhenMoved:u,triggerBelongedComponentToDeleteWhenDeleted:i}=le(o),d=o.schema;function c(y,g){return new ae(y,t).getPropertyConfig(d,g)}return{canAccepts:e,checkCanDeleteComponent:n,checkCanMoveComponent:r,hideNestedPaddingInDesginerView:a,onAcceptMovedChildElement:l,resolveComponentContext:m,triggerBelongedComponentToMoveWhenMoved:u,triggerBelongedComponentToDeleteWhenDeleted:i,getPropsConfig:c}}const ce=p.defineComponent({name:"FTextareaDesign",props:L,emits:[""],setup(o,t){const e=p.ref(),n=p.inject("designer-host-service"),r=p.inject("design-item-context"),a=se(r,n),l=ne(e,r,a),m=p.computed(()=>o.maxLength?o.maxLength:o.modelValue.length),u=p.computed(()=>({position:"relative"})),i=p.computed(()=>({"box-shadow":"0 0 0 1px #dcdfe6 inset",border:"none",padding:"5px 10px",width:"100%"})),d={position:"absolute",bottom:"5px",right:"10px"};return p.onMounted(()=>{e.value.componentInstance=l}),t.expose(l.value),()=>p.createVNode("div",{style:u.value,ref:e},[p.createVNode("textarea",{id:o.id,tabindex:o.tabIndex,disabled:!1,readonly:!0,style:i.value,placeholder:o.placeholder,rows:o.rows},null),o.showCount&&p.createVNode("span",{style:d},[`${o.modelValue.length}/${m.value}`])])}}),pe=o=>{const t=o;return t.install=function(e){e.component(t.name,o)},o};F.register=(o,t,e,n)=>{o.textarea=F,t.textarea=j},F.registerDesigner=(o,t,e)=>{o.textarea=ce,t.textarea=j};const ue=pe(F);b.FTextarea=F,b.default=ue,b.propsResolver=j,b.textAreaProps=L,Object.defineProperties(b,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
|
1
|
+
(function(w,f){typeof exports=="object"&&typeof module<"u"?f(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"],f):(w=typeof globalThis<"u"?globalThis:w||self,f(w.textarea={},w.Vue,w.LodashES,w.common,w.designerCanvas))})(this,function(w,f,V,U,$){"use strict";var ue=Object.defineProperty;var me=(w,f,V)=>f in w?ue(w,f,{enumerable:!0,configurable:!0,writable:!0,value:V}):w[f]=V;var C=(w,f,V)=>me(w,typeof f!="symbol"?f+"":f,V);const j={},G={};function A(i){const{properties:t,title:e,ignore:o}=i,r=o&&Array.isArray(o),l=Object.keys(t).reduce((c,y)=>((!r||!o.find(m=>m==y))&&(c[y]=t[y].type==="object"&&t[y].properties?A(t[y]):V.cloneDeep(t[y].default)),c),{});return e&&(!r||!o.find(c=>c=="id"))&&(l.id=`${e}-${Date.now()}`),l}function W(i,t={},e){const o=j[i];if(o){let r=A(o);const l=G[i];return r=l?l({getSchemaByType:W},r,t,e):r,r}return null}function q(i,t){const e=A(t);return Object.keys(i).reduce((o,r)=>(o[r]&&V.isPlainObject(o[r])&&V.isPlainObject(i[r])?Object.assign(o[r],i[r]):o[r]=i[r],o),e),e}function O(i,t){return Object.keys(i).filter(o=>i[o]!=null).reduce((o,r)=>{if(t.has(r)){const l=t.get(r);if(typeof l=="string")o[l]=i[r];else{const c=l(r,i[r],i);Object.assign(o,c)}}else o[r]=i[r];return o},{})}function z(i,t,e=new Map){const o=q(i,t);return O(o,e)}function X(i={}){function t(a,s,n,p){if(typeof n=="number")return p[a].length===n;if(typeof n=="object"){const h=Object.keys(n)[0],u=n[h];if(h==="not")return Number(p[a].length)!==Number(u);if(h==="moreThan")return Number(p[a].length)>=Number(u);if(h==="lessThan")return Number(p[a].length)<=Number(u)}return!1}function e(a,s,n,p){return p[a]&&p[a].propertyValue&&String(p[a].propertyValue.value)===String(n)}const o=new Map([["length",t],["getProperty",e]]);Object.keys(i).reduce((a,s)=>(a.set(s,i[s]),a),o);function r(a,s){const n=a;return typeof s=="number"?[{target:n,operator:"length",param:null,value:Number(s)}]:typeof s=="boolean"?[{target:n,operator:"getProperty",param:a,value:!!s}]:typeof s=="object"?Object.keys(s).map(p=>{if(p==="length")return{target:n,operator:"length",param:null,value:s[p]};const h=p,u=s[p];return{target:n,operator:"getProperty",param:h,value:u}}):[]}function l(a){return Object.keys(a).reduce((n,p)=>{const h=r(p,a[p]);return n.push(...h),n},[])}function c(a,s){if(o.has(a.operator)){const n=o.get(a.operator);return n&&n(a.target,a.param,a.value,s)||!1}return!1}function y(a,s){return l(a).reduce((h,u)=>h&&c(u,s),!0)}function m(a,s){const n=Object.keys(a),p=n.includes("allOf"),h=n.includes("anyOf"),u=p||h,M=(u?a[u?p?"allOf":"anyOf":"allOf"]:[a]).map(S=>y(S,s));return p?!M.includes(!1):M.includes(!0)}return{parseValueSchema:m}}const d={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"}},_={},J={};X();function Q(i,t,e=new Map,o=(c,y,m)=>y,r={},l=c=>c){return j[t.title]=t,G[t.title]=o,_[t.title]=r,J[t.title]=l,(c={})=>{const y=z(c,t,e),m=Object.keys(i).reduce((a,s)=>(a[s]=i[s].default,a),{});return Object.assign(m,y)}}function Y(i,t){return{customClass:t.class,customStyle:t.style}}const Z=new Map([["appearance",Y]]),H={$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},ignore:["id","appearance","binding"]},required:["id","type"]};function K(i,t,e){return t}const D={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:Boolean},showCount:{type:Boolean,default:!1},showBorder:{Type:Boolean,default:!0},tabIndex:{type:Number,default:-1}},N=Q(D,H,Z,K),P=f.defineComponent({name:"FTextarea",props:D,emits:["update:modelValue","valueChange"],setup(i,t){const e=f.ref(),o=f.ref(i.modelValue),r=f.computed(()=>i.modelValue),l=U.useTextBox(i,t,o,r),{inputGroupClass:c,onBlur:y,onFocus:m}=l,a=U.useClear(i,t,l),{onMouseEnter:s,onMouseLeave:n,clearButtonClass:p,shouldShowClearButton:h,clearButtonStyle:u}=a,g=f.computed(()=>i.maxLength?i.maxLength:i.modelValue.length),k=b=>{var S,F;b.stopPropagation(),t.emit("update:modelValue",(S=b.target)==null?void 0:S.value),t.emit("valueChange",(F=b.target)==null?void 0:F.value)},M=b=>{b.stopPropagation(),e.value.value="",t.emit("update:modelValue",""),t.emit("valueChange","")};return f.onMounted(()=>{}),()=>f.createVNode("div",{class:c.value,onMouseenter:s,onMouseleave:n,style:"position:relative"},[f.withDirectives(f.createVNode("textarea",{class:"form-control",id:i.id,"onUpdate:modelValue":b=>i.modelValue=b,ref:e,minlength:i.minLength,maxlength:i.maxLength?i.maxLength:null,tabindex:i.tabIndex,disabled:i.disabled,readonly:i.readonly,autocomplete:i.autocomplete,placeholder:i.placeholder,autofocus:i.autofocus,rows:i.rows,onInput:k,onFocus:m,onBlur:y},null),[[f.vModelText,i.modelValue]]),h.value&&f.createVNode("span",{id:"clearIcon",class:p.value,style:u.value,onClick:b=>M(b)},[f.createVNode("i",{class:"f-icon modal_close"},null)]),i.showCount&&f.createVNode("span",{style:"position: absolute;bottom: 5px;right: 10px"},[`${i.modelValue.length}/${g.value}`])])}});function R(i,t,e){var F;function o(){e!=null&&e.resolveComponentContext&&e.resolveComponentContext()}o();const r=e&&e.getStyles&&e.getStyles()||"",l=e&&e.getDesignerClass&&e.getDesignerClass()||"",c=f.ref();function y(){return(t==null?void 0:t.schema.componentType)==="frame"?!1:e&&e.checkCanMoveComponent?e.checkCanMoveComponent():!0}function m(){return!1}function a(){return(t==null?void 0:t.schema.componentType)==="frame"?!1:e&&e.checkCanDeleteComponent?e.checkCanDeleteComponent():!0}function s(){return(t==null?void 0:t.schema.componentType)==="frame"?!0:e&&e.hideNestedPaddingInDesginerView?e.hideNestedPaddingInDesginerView():!1}function n(v){if(!v||!v.value)return null;if(v.value.schema&&v.value.schema.type==="component")return v.value;const T=f.ref(v==null?void 0:v.value.parent),B=n(T);return B||null}function p(v=t){const{componentInstance:T,designerItemElementRef:B}=v;return!T||!T.value?null:T.value.canMove?B:p(v.parent)}function h(v){return!!e&&e.canAccepts(v)}function u(){return(t==null?void 0:t.schema.label)||(t==null?void 0:t.schema.title)||(t==null?void 0:t.schema.name)}function g(){}function k(v,T){T&&e!=null&&e.onAcceptMovedChildElement&&e.onAcceptMovedChildElement(T)}function M(v,T){const{componentType:B}=v;let I=W(B,v,T);e&&e.onResolveNewComponentSchema&&(I=e.onResolveNewComponentSchema(v,I));const x=B.toLowerCase().replace("-","_");return I&&!I.id&&I.type===B&&(I.id=`${x}_${Math.random().toString().slice(2,6)}`),I}function b(v){}function S(...v){if(e&&e.getPropsConfig)return e.getPropsConfig(...v)}return c.value={canMove:y(),canSelectParent:m(),canDelete:a(),canNested:!s(),contents:t==null?void 0:t.schema.contents,elementRef:i,parent:(F=t==null?void 0:t.parent)==null?void 0:F.componentInstance,schema:t==null?void 0:t.schema,styles:r,designerClass:l,canAccepts:h,getBelongedComponentInstance:n,getDraggableDesignItemElement:p,getDraggingDisplayText:u,getPropConfig:S,getDragScopeElement:g,onAcceptMovedChildElement:k,onChildElementMovedOut:b,addNewChildComponentSchema:M,updateDragAndDropRules:o,triggerBelongedComponentToMoveWhenMoved:!!e&&e.triggerBelongedComponentToMoveWhenMoved||f.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:!!e&&e.triggerBelongedComponentToDeleteWhenDeleted||f.ref(!1)},c}class ee{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 o;this.componentId=t,this.designerHostService=e,this.eventsEditorUtils=e.eventsEditorUtils,this.formSchemaUtils=e.formSchemaUtils,this.formMetadataConverter=e.formMetadataConverter,this.viewModelId=((o=this.formSchemaUtils)==null?void 0:o.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){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(r=>r.id===e)}t.updateOn=this.designViewModelField.updateOn}}changeFieldEditorType(t,e){}getBasicPropConfig(t){return{description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"combo-list",textField:"name",valueField:"value",data:[{value:t.type,name:d[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 o=e&&e.parent&&e.parent.schema;if(!o)return;const r=o.contents.findIndex(c=>c.id===t),l=V.cloneDeep(o.contents[r]);o.contents.splice(r,1),o.contents.splice(r,0,l)}}const E=class E{static getEditorTypesByMDataType(t){const e=E.fieldControlTypeMapping[t];return e||[{key:"",value:""}]}static getAllInputTypes(){const t=[];for(let e in E.fieldControlTypeMapping)E.fieldControlTypeMapping[e].forEach(o=>{t.find(r=>r.key===o.key&&r.value===o.value)||t.push({key:o.key,value:o.value})});return t}};C(E,"fieldControlTypeMapping",{String:[{key:d["input-group"].type,value:d["input-group"].name},{key:d.lookup.type,value:d.lookup.name},{key:d["date-picker"].type,value:d["date-picker"].name},{key:d["check-box"].type,value:d["check-box"].name},{key:d["check-group"].type,value:d["check-group"].name},{key:d["radio-group"].type,value:d["radio-group"].name},{key:d["combo-list"].type,value:d["combo-list"].name},{key:d.textarea.type,value:d.textarea.name}],Text:[{key:d.textarea.type,value:d.textarea.name},{key:d.lookup.type,value:d.lookup.name}],Decimal:[{key:d["number-spinner"].type,value:d["number-spinner"].name}],Integer:[{key:d["number-spinner"].type,value:d["number-spinner"].name}],Number:[{key:d["number-spinner"].type,value:d["number-spinner"].name}],BigNumber:[{key:d["number-spinner"].type,value:d["number-spinner"].name}],Date:[{key:d["date-picker"].type,value:d["date-picker"].name}],DateTime:[{key:d["date-picker"].type,value:d["date-picker"].name}],Boolean:[{key:d.switch.type,value:d.switch.name},{key:d["check-box"].type,value:d["check-box"].name}],Enum:[{key:d["combo-list"].type,value:d["combo-list"].name},{key:d["radio-group"].type,value:d["radio-group"].name}],Object:[{key:d.lookup.type,value:d.lookup.name},{key:d["combo-list"].type,value:d["combo-list"].name},{key:d["radio-group"].type,value:d["radio-group"].name}]});let L=E;const te=f.ref(0);class ne{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 oe(i){let t,e;const o=new Map;let r=[];function l(s,n){const h=s.split(" ").filter(b=>b.startsWith("col-"));if(h.length===0){n.isSupportedClass=!1;return}let u=h.find(b=>/^col-([1-9]|10|11|12)$/.test(b)),g=h.find(b=>/^col-md-([1-9]|10|11|12)$/.test(b)),k=h.find(b=>/^col-xl-([1-9]|10|11|12)$/.test(b)),M=h.find(b=>/^col-el-([1-9]|10|11|12)$/.test(b));u=u||"col-12",n.columnInSM=parseInt(u.replace("col-",""),10),n.displayWidthInSM=n.columnInSM/12,n.displayWidthInSM!==1&&(n.isSupportedClass=!1),g=g||"col-md-"+n.columnInSM,n.columnInMD=parseInt(g.replace("col-md-",""),10),n.displayWidthInMD=n.columnInMD/6,[1,2].includes(n.displayWidthInMD)||(n.isSupportedClass=!1),k=k||"col-xl-"+n.columnInMD,n.columnInLG=parseInt(k.replace("col-xl-",""),10),n.displayWidthInLG=n.columnInLG/3,[1,2,3,4].includes(n.displayWidthInLG)||(n.isSupportedClass=!1),M=M||"col-el-"+n.columnInLG,n.columnInEL=parseInt(M.replace("col-el-",""),10),n.displayWidthInEL=n.columnInEL/2,[1,2,3,4,5,6].includes(n.displayWidthInEL)||(n.isSupportedClass=!1)}function c(s,n,p,h=!1){let u=!1;s.contents.forEach(g=>{if(g.type==="fieldset"){p+=1,c(g,n,p,!0),u=!0;return}u&&(p+=1,u=!1);const k=g.appearance&&g.appearance.class,M=new ne;k?l(k,M):M.isSupportedClass=!1,M.label=g.label||g.id,M.id=g.id,M.group=p,h&&(M.fieldSetId=s.id),e===g.id&&(t=p),o.set(g.id,g),n.push(M)})}function y(s){const n=i.getComponentById(s);if(!n||!n.componentType||!n.componentType.startsWith("form"))return{result:!1,message:"只可以在响应式表单组件中调整响应式布局配置"};const p=i.selectNode(n,h=>h.type===$.DgControl["response-form"].type);return!p||!p.contents||p.contents.length===0?{result:!1,message:"Form区域内没有控件,请先添加控件"}:{result:!0,message:"",formNode:p}}function m(s,n){n=n||s.id;const{result:p,message:h,formNode:u}=y(n);if(!p)return{result:p,message:h};e=s.id,r=[],o.clear();const g=u.contents[0].type===$.DgControl.fieldset.type?0:1;c(u,r,g);const k=r.find(b=>!b.isSupportedClass);return{defaultState:{defaultGroupNumber:t||1,model:k?"customize":"standard"},importData:r}}function a(s,n){n=n;const{result:p,formNode:h}=y(n);if(!p)return"";const u=[];return s.forEach(g=>{var b;const k=o.get(g.id),M=k.appearance&&k.appearance.class;if(M){const F=M.split(" ").filter(de=>!de.startsWith("col-")),v="col-"+g.columnInSM,T="col-md-"+g.columnInMD,B="col-xl-"+g.columnInLG,I="col-el-"+g.columnInEL,x=[v,T,B,I].concat(F);k.appearance.class=x.join(" ")}if(g.fieldSetId){const S=h.contents.find(v=>v.id===g.fieldSetId),F=u.find(v=>v.id===g.fieldSetId);F?(b=F.contents)==null||b.push(k):(u.push(S),S.contents=[k])}else u.push(k)}),h.contents=u,h.id}return{checkCanFindFormNode:y,checkCanOpenLayoutEditor:m,changeFormControlsByResponseLayoutConfig:a,getResonseFormLayoutConfig:c}}class re extends ee{constructor(e,o){super(e,o);C(this,"responseLayoutEditorFunction");this.responseLayoutEditorFunction=oe(this.formSchemaUtils)}getPropertyConfig(e,o){return this.propertyConfig.categories.basic=this.getBasicProperties(e,o),this.propertyConfig.categories.appearance=this.getAppearanceProperties(e,o),this.propertyConfig.categories.editor=this.getEditorProperties(e),this.propertyConfig}getBasicProperties(e,o){var y;var r=this;this.setDesignViewModelField(e);const l=this.formSchemaUtils.getFormMetadataBasicInfo(),c=this.designViewModelUtils.getAllFields2TreeByVMId(this.viewModelId);return{description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"编辑器类型",title:"编辑器类型",type:"string",refreshPanelAfterChanged:!0,$converter:"/converter/change-editor.converter",editor:{type:"combo-list",textField:"value",valueField:"key",editable:!1,data:r.designViewModelField?L.getEditorTypesByMDataType((y=r.designViewModelField.type)==null?void 0:y.name):L.getAllInputTypes()}},label:{title:"标签",type:"string",$converter:"/converter/form-group-label.converter"},binding:{description:"绑定的表单字段",title:"绑定",$converter:"/converter/field-selector.converter",editor:{type:"field-selector",bindingType:{enable:!1},editorParams:{propertyData:e,formBasicInfo:l},columns:[{field:"name",title:"字段名称"},{field:"bindingField",title:"绑定字段"},{field:"fieldType",title:"字段类型"}],textField:"bindingField",data:c}}},setPropertyRelates(m,a){if(m)switch(m&&m.propertyID){case"type":{r.changeControlType(e,m,o);break}case"label":{m.needRefreshControlTree=!0;break}}}}}getAppearanceProperties(e,o){var r=this;return{title:"样式",description:"Appearance",properties:{class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter"},style:{title:"style样式",type:"string",description:"组件的样式",$converter:"/converter/appearance.converter"},responseLayout:{description:"响应式列宽",title:"响应式列宽",type:"boolean",visible:!0,refreshPanelAfterChanged:!0,editor:{type:"response-layout-editor-setting",initialState:r.responseLayoutEditorFunction.checkCanOpenLayoutEditor(e,r.componentId)}}},setPropertyRelates(l,c){if(l)switch(l&&l.propertyID){case"responseLayout":r.responseLayoutEditorFunction.changeFormControlsByResponseLayoutConfig(l.propertyValue,r.componentId||e.id),r.updateUnifiedLayoutAfterResponseLayoutChanged(r.componentId),r.updateElementByParentContainer(e.id,o),delete e.responseLayout;break;case"class":r.updateUnifiedLayoutAfterControlChanged(l.propertyValue,e.id,this.componentId),r.updateElementByParentContainer(e.id,o);break}}}}getEditorProperties(e){return this.getComponentConfig(e)}changeControlType(e,o,r){var s,n,p,h;const l=o.propertyValue,c=r&&r.parent&&r.parent.schema;if(!c)return;const y=c.contents.findIndex(u=>u.id===e.id),m=c.contents[y];let a;this.designViewModelField&&(this.designViewModelUtils.getDgViewModel(this.viewModelId).changeField(this.designViewModelField.id,{editor:{$type:l},name:this.designViewModelField.name,require:this.designViewModelField.require,readonly:this.designViewModelField.readonly},!1),a=this.controlCreatorUtils.setFormFieldProperty(this.designViewModelField,l)),a||(a=this.controlCreatorUtils.createFormGroupWithoutField(l)),Object.assign(a,{id:m.id,appearance:m.appearance,size:m.size,label:m.label,binding:m.binding,visible:m.visible}),Object.assign(a.editor,{isTextArea:a.isTextArea&&m.isTextArea,placeholder:(s=m.editor)==null?void 0:s.placeholder,holdPlace:(n=m.editor)==null?void 0:n.holdPlace,readonly:(p=m.editor)==null?void 0:p.readonly,require:(h=m.editor)==null?void 0:h.require}),c.contents.splice(y,1),c.contents.splice(y,0,a),r.schema=Object.assign(m,a),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(u=>u.classList.remove("dgComponentSelected")),te.value++}getComponentConfig(e,o={},r={}){const l=Object.assign({description:"编辑器",title:"编辑器",type:"input-group",$converter:"/converter/property-editor.converter"},o),c=Object.assign({readonly:{description:"",title:"只读",type:"boolean"},disabled:{description:"",title:"禁用",type:"boolean"},placeholder:{description:"空值时,输入控件内的占位文本",title:"提示文本",type:"string"}},r);return{...l,properties:{...c}}}updateUnifiedLayoutAfterControlChanged(e,o,r){const l=e.split(" ");let c=l.find(n=>/^col-([1-9]|10|11|12)$/.test(n)),y=l.find(n=>/^col-md-([1-9]|10|11|12)$/.test(n)),m=l.find(n=>/^col-xl-([1-9]|10|11|12)$/.test(n)),a=l.find(n=>/^col-el-([1-9]|10|11|12)$/.test(n));c=c||"col-12",y=y||"col-md-"+c.replace("col-",""),m=m||"col-xl-"+y.replace("col-md-",""),a=a||"col-el-"+m.replace("col-xl-","");const s={id:o,columnInSM:parseInt(c.replace("col-",""),10),columnInMD:parseInt(y.replace("col-md-",""),10),columnInLG:parseInt(m.replace("col-xl-",""),10),columnInEL:parseInt(a.replace("col-el-",""),10)};this.updateUnifiedLayoutAfterResponseLayoutChanged(r,s)}updateUnifiedLayoutAfterResponseLayoutChanged(e,o){const{formNode:r}=this.responseLayoutEditorFunction.checkCanFindFormNode(e);if(!r||!r.unifiedLayout)return;const l=[];if(this.responseLayoutEditorFunction.getResonseFormLayoutConfig(r,l,1),o){const u=l.find(g=>g.id===o.id);Object.assign(u||{},o)}const c=l.map(u=>u.columnInSM),y=l.map(u=>u.columnInMD),m=l.map(u=>u.columnInLG),a=l.map(u=>u.columnInEL),s=this.checkIsUniqueColumn(c)?c[0]:null,n=this.checkIsUniqueColumn(y)?y[0]:null,p=this.checkIsUniqueColumn(m)?m[0]:null,h=this.checkIsUniqueColumn(a)?a[0]:null;Object.assign(r.unifiedLayout,{uniqueColClassInSM:s,uniqueColClassInMD:n,uniqueColClassInLG:p,uniqueColClassInEL:h})}checkIsUniqueColumn(e){const o=new Set(e);return Array.from(o).length===1}}class ie extends re{constructor(t,e){super(t,e)}}function ae(i,t){i.schema;const e=f.ref(!0),o=f.ref(!0);function r(n){return!1}function l(){return!1}function c(){return!1}function y(){return!0}function m(n){}function a(){}function s(n){return null}return{canAccepts:r,checkCanDeleteComponent:l,checkCanMoveComponent:c,hideNestedPaddingInDesginerView:y,onAcceptMovedChildElement:m,resolveComponentContext:a,triggerBelongedComponentToMoveWhenMoved:e,triggerBelongedComponentToDeleteWhenDeleted:o,getPropsConfig:s}}function le(i,t){const{canAccepts:e,checkCanDeleteComponent:o,checkCanMoveComponent:r,hideNestedPaddingInDesginerView:l,onAcceptMovedChildElement:c,resolveComponentContext:y,triggerBelongedComponentToMoveWhenMoved:m,triggerBelongedComponentToDeleteWhenDeleted:a}=ae(i),s=i.schema;function n(p,h){return new ie(p,t).getPropertyConfig(s,h)}return{canAccepts:e,checkCanDeleteComponent:o,checkCanMoveComponent:r,hideNestedPaddingInDesginerView:l,onAcceptMovedChildElement:c,resolveComponentContext:y,triggerBelongedComponentToMoveWhenMoved:m,triggerBelongedComponentToDeleteWhenDeleted:a,getPropsConfig:n}}const se=f.defineComponent({name:"FTextareaDesign",props:D,emits:[""],setup(i,t){const e=f.ref(),o=f.inject("designer-host-service"),r=f.inject("design-item-context"),l=le(r,o),c=R(e,r,l),y=f.computed(()=>i.maxLength?i.maxLength:i.modelValue.length),m=f.computed(()=>({position:"relative"})),a=f.computed(()=>({"box-shadow":"0 0 0 1px #dcdfe6 inset",border:"none",padding:"5px 10px",width:"100%"})),s={position:"absolute",bottom:"5px",right:"10px"};return f.onMounted(()=>{e.value.componentInstance=c}),t.expose(c.value),()=>f.createVNode("div",{style:m.value,ref:e},[f.createVNode("textarea",{id:i.id,tabindex:i.tabIndex,disabled:!1,readonly:!0,style:a.value,placeholder:i.placeholder,rows:i.rows},null),i.showCount&&f.createVNode("span",{style:s},[`${i.modelValue.length}/${y.value}`])])}}),ce=i=>{const t=i;return t.install=function(e){e.component(t.name,i)},i};P.register=(i,t,e,o)=>{i.textarea=P,t.textarea=N},P.registerDesigner=(i,t,e)=>{i.textarea=se,t.textarea=N};const pe=ce(P);w.FTextarea=P,w.default=pe,w.propsResolver=N,w.textAreaProps=D,Object.defineProperties(w,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|