@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"),I=require("lodash-unified");require("../../render/index.js");require("../../hooks/index.js");const q=require("../hooks/use-default-placeholder.js"),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 l=e.useSlots(),t=u,c=p,{value:s,updateValue:f}=C.useControllableValue(t,c),m=q.useDefaultPlaceholder("Text",t),o=e.shallowRef(),y=n=>{o.value?.focus(n)},v=()=>{o.value?.blur()},x=(n,a,r)=>{o.value?.setSelectionRange(n,a,r)},b=()=>{o.value?.select()};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),f(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(m),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:y,blur:v,setSelectionRange:x,select:b,input:e.computed(()=>o.value?.input)}),(n,a)=>(e.openBlock(),e.createBlock(e.unref(S.default),{renderer:B}))}});exports.default=V;