@farris/ui-vue
Version:
Farris Vue, a Farris Design based Vue3 component library.
2 lines (1 loc) • 4 kB
JavaScript
(function(n,i){typeof exports=="object"&&typeof module<"u"?i(exports,require("../../components/common/index.umd.js"),require("../../components/textarea/index.umd.js"),require("vue"),require("../../components/designer-canvas/index.umd.js"),require("../../components/dynamic-resolver/index.umd.js"),require("../../components/property-panel/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","../../components/common/index.umd.js","../../components/textarea/index.umd.js","vue","../../components/designer-canvas/index.umd.js","../../components/dynamic-resolver/index.umd.js","../../components/property-panel/index.umd.js"],i):(n=typeof globalThis<"u"?globalThis:n||self,i(n.textarea={},n.common,n.FTextarea,n.Vue,n.designerCanvas,n.dynamicResolver,n.propertyPanel))})(this,function(n,i,p,o,f,u,y){"use strict";const g=new Map([["appearance",u.resolveAppearance]]),x={$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:!1},maxLength:{description:"",type:"number",default:0},updateOn:{description:"",type:"string",default:"blur"},allowUnlimtedWhenEmpty:{description:"",type:"boolean",default:!0},autoHeight:{description:"",type:"boolean",default:!1},resizable:{description:"",type:"boolean",default:!1},lineBreak:{description:"",type:"boolean",default:"enter"}},required:["type"],ignore:["id","appearance","binding","visible"]};function h(e,t,r){return t}const b=Object.assign({},p.textAreaProps,{readonly:{}}),m=u.createPropsResolver(p.textAreaProps,x,g,h);class j extends y.InputBaseProperty{constructor(t,r){super(t,r)}getEditorProperties(t){return this.getComponentConfig(t,{type:"textarea"},{resizable:{description:"",title:"拖拽调整大小",type:"boolean"},autoHeight:{description:"",title:"自动高度",visible:!1,type:"boolean"}})}getGridFieldEdtiorProperties(t){return this.getComponentConfig(t,{type:"textarea"},{autoHeight:{description:"",title:"自动高度",visible:!1,type:"boolean"}})}}function v(e,t){const r=e.schema;function a(d,c){return new j(d,t).getPropertyConfig(r,c)}return{getPropsConfig:a}}const s=o.defineComponent({name:"FTextareaDesign",props:b,emits:[""],setup(e,t){const r=o.ref(),a=o.inject("designer-host-service"),d=o.inject("design-item-context"),c=v(d,a),l=f.useDesignerComponent(r,d,c),P=o.computed(()=>e.maxLength?e.maxLength:e.modelValue.length),w=o.computed(()=>({position:"relative"})),q=o.computed(()=>({"box-shadow":"0 0 0 1px #dcdfe6 inset",border:"none",padding:"5px 10px",width:"100%"})),T={position:"absolute",bottom:"5px",right:"10px"};return o.onMounted(()=>{r.value.componentInstance=l}),t.expose(l.value),()=>o.createVNode("div",{style:w.value,ref:r},[o.createVNode("textarea",{id:e.id,tabindex:e.tabIndex,disabled:!1,readonly:!0,style:q.value,placeholder:e.placeholder,rows:e.rows},null),e.showCount&&o.createVNode("span",{style:T},[`${e.modelValue.length}/${P.value}`])])}});s.register=(e,t,r,a)=>{e.textarea=p,t.textarea=m},s.registerDesigner=(e,t,r)=>{e.textarea=s,t.textarea=m};const C=i.withInstall(s);n.FTextareaDesign=s,n.default=C,Object.defineProperties(n,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});