UNPKG

@aplus-frontend/ui

Version:

3 lines (2 loc) 4.77 kB
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),y=require("@aplus-frontend/antdv"),w=require("lodash-unified");require("../../ap-field/index.js");const N=require("../../ap-field/hooks/use-default-placeholder.js");require("../../config-provider/index.js");require("../../hooks/index.js");require("../../utils/index.js");require("./popover-input/index.vue.js");const j=require("./style/index.js"),R=require("./utils.js"),L=require("../../hooks/useControllableValue.js"),O=require("../../config-provider/hooks/use-locale.js"),z=require("../../config-provider/hooks/use-namespace.js"),E=require("../../utils/is.js"),T=require("../../ap-field/select/index.vue.js"),M=require("../../ap-field/text/index.js"),D=require("./popover-input/index.vue2.js"),c="GROUP_SEARCH_ALL",K=e.defineComponent({name:"BatchInputGroup",__name:"index",props:{style:{type:[Boolean,null,String,Object,Array]},inputStyle:{type:[Boolean,null,String,Object,Array]},options:{},hasAll:{type:Boolean,default:!0},value:{},"onUpdate:value":{},popoverPlacement:{default:"left"},maxNum:{default:200},getPopupContainer:{},mode:{default:"edit"},class:{},variant:{},size:{},name:{},type:{default:"text"},onCompositionend:{},onCompositionstart:{},onFocus:{},onBlur:{},onChange:{},onInput:{},onKeydown:{},onKeyup:{},onMousedown:{},focused:{type:Boolean},hidden:{type:Boolean},disabled:{type:Boolean},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:{},valueModifiers:{},status:{},defaultValue:{},inputElement:{},triggerFocus:{},handleReset:{},addonBefore:{},addonAfter:{},prefix:{},suffix:{},clearIcon:{},allowClear:{type:Boolean,default:!0},emptyText:{default:"--"},beforeInput:{}},emits:["update:value"],setup(h,{emit:g}){const n=h,B=N.useDefaultPlaceholder("Text",n),C=g,{value:u,updateValue:a}=L.useControllableValue(n,C),i=e.ref(),d=e.ref(),{t:b}=O.useLocale(),{b:q}=z.useNamespace("batch-input-group"),f=j.default("batch-input-group"),r=y.Form.useInjectFormItemContext(),A=e.computed(()=>n.options?n.options.length>1&&n.hasAll?[{value:c,label:b("ap.common.all")},...n.options]:n.options:[]),V=e.computed(()=>n.options?n.options.map(t=>t.value):[]),x=e.computed(()=>e.unref(u)?.value?.length?e.unref(u).value.join(","):""),_=e.computed(()=>e.unref(u)?.value?.length?e.unref(u).value.join(` `):""),I=e.computed(()=>{const t=e.unref(u)?.key;if(t?.length)return t.length===1||!n.hasAll?t[0]:c}),S=e.computed(()=>{const t=e.unref(u)?.key;return!t||t?.length<=1||n.hasAll===!1?e.unref(B):(n.options||[]).filter(o=>t.includes(o.value)).map(o=>o.label).join("/")});function k(t){const l=e.unref(u)||{},o=t===c?e.unref(V):E.isDef(t)?[t]:[];a({...l,key:o}),r.onFieldChange()}function F(t){const l=e.unref(u)||{},o=t.target.value||"";let p=R.splitValue(o,",",",",n.maxNum);if(o!==p){const v=d.value?.$el?.querySelector("input");v&&(v.value=p)}let s=p.split(",");s.length===1&&s[0]===""&&(s=[]),a({...l,value:s}),r.onFieldChange()}function P(t){const l=e.unref(u)||{};let o=t.split(/,|\n/);a({...l,value:o}),r.onFieldChange()}function m(){const t=e.unref(u)||{},l=t.value?.filter(Boolean);a({...t,value:l}),r.onFieldChange()}function U(t){m(),n.onBlur?.(t)}return(t,l)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"containerRef",ref:i,class:e.normalizeClass([e.unref(q)(),e.unref(f)]),onFocus:l[0]||(l[0]=(...o)=>t.onFocus&&t.onFocus(...o)),onBlur:l[1]||(l[1]=(...o)=>t.onBlur&&t.onBlur(...o))},[e.createVNode(e.unref(y.Space).Compact,{block:""},{default:e.withCtx(()=>[t.options?.length?(e.openBlock(),e.createBlock(e.unref(T.default),{key:0,style:e.normalizeStyle(t.style),options:A.value,value:I.value,"allow-clear":!1,"dropdown-match-select-width":!1,disabled:t.disabled,"get-popup-container":()=>i.value,"onUpdate:value":k},null,8,["style","options","value","disabled","get-popup-container"])):e.createCommentVNode("",!0),e.createVNode(e.unref(M.ApFieldText),e.mergeProps(e.unref(w.omit)(n,["style","value","onUpdate:value","inputStyle","hasAll","options","onBlur"]),{ref_key:"inputRef",ref:d,style:t.inputStyle,value:x.value,placeholder:S.value,onInput:F,onBlur:U}),{suffix:e.withCtx(()=>[e.createVNode(D.default,{_parent:i.value,value:_.value,disabled:t.disabled,placement:n.popoverPlacement,"max-num":t.maxNum,class:e.normalizeClass(e.unref(f)),"get-popup-container":t.getPopupContainer,"onUpdate:value":P,onClose:m},null,8,["_parent","value","disabled","placement","max-num","class","get-popup-container"])]),_:1},16,["style","value","placeholder"])]),_:1})],34))}});exports.default=K;