@aplus-frontend/ui
Version:
2 lines (1 loc) • 2.38 kB
JavaScript
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),g=require("@aplus-frontend/antdv");require("../../hooks/index.js");const I=require("lodash-unified"),q=require("../hooks/use-default-placeholder.js");require("../../render/index.js");const C=require("../../hooks/useControllableValue.js"),S=require("../../render/render.js");function _(u){return typeof u=="function"||Object.prototype.toString.call(u)==="[object Object]"&&!e.isVNode(u)}const V=e.defineComponent({name:"ApFieldText",__name:"index",props:{mode:{default:"edit"},class:{},style:{},variant:{},size:{},value:{},name:{},type:{default:"text"},onCompositionend:{},onCompositionstart:{},onFocus:{},onBlur:{},onChange:{},onInput:{},onKeydown:{},onKeyup:{},onMousedown:{},focused:{type:Boolean},hidden:{type:Boolean},disabled:{type:Boolean,default:void 0},prefixCls:{},id:{},readonly:{type:Boolean},autofocus:{type:Boolean},autocomplete:{},placeholder:{},lazy:{type:Boolean,default:!0},maxlength:{},loading:{type:Boolean},bordered:{type:Boolean,default:!0},showCount:{type:[Boolean,Object]},htmlSize:{},onPressEnter:{},onMouseUp:{},onRawInput:{},"onUpdate:value":{},valueModifiers:{},status:{},defaultValue:{},inputElement:{},triggerFocus:{},handleReset:{},addonBefore:{},addonAfter:{},prefix:{},suffix:{},clearIcon:{},allowClear:{type:Boolean,default:!0},emptyText:{default:"--"},beforeInput:{}},emits:["update:value"],setup(u,{expose:i,emit:p}){const o=e.ref(),l=e.useSlots(),c=n=>{o.value?.focus(n)},f=()=>{o.value?.blur()},m=(n,a,r)=>{o.value?.setSelectionRange(n,a,r)},y=()=>{o.value?.select()},v=p,t=u,{value:s,updateValue:x}=C.useControllableValue(t,v),b=q.useDefaultPlaceholder("Text",t);function h(n){const a=n.target.value||"",r=t.beforeInput?t.beforeInput?.(a):a,d=o.value?.$el?.querySelector("input");d&&(d.value=r),x(r)}function B(){return t.mode==="edit"?e.createVNode(g.Input,e.mergeProps(I.omit(t,["mode","emptyText","value","onUpdate:value","beforeInput"]),{placeholder:e.unref(b),value:e.unref(s),onInput:h,ref:o}),_(l)?l:{default:()=>[l]}):e.createVNode("span",null,[t.prefix||l?.prefix?.(),e.unref(s)||t.emptyText,t.suffix||l?.suffix?.()])}return i({focus:c,blur:f,setSelectionRange:m,select:y,input:e.computed(()=>o.value?.input)}),(n,a)=>(e.openBlock(),e.createBlock(e.unref(S.default),{renderer:B}))}});exports.default=V;