UNPKG

@aplus-frontend/ui

Version:

3 lines (2 loc) 4.75 kB
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue");require("../../ap-field/index.js");const R=require("@aplus-frontend/antdv");require("../../config-provider/index.js");const v=require("lodash-unified");require("./popover-input/index.vue.js");require("../../hooks/index.js");const j=require("../../utils/index.js"),z=require("../../ap-field/hooks/use-default-placeholder.js"),L=require("./utils.js"),O=require("./style/index.js"),E=require("../../hooks/useControllableValue.js"),F=require("../../config-provider/hooks/use-locale.js"),T=require("../../config-provider/hooks/use-namespace.js"),M=require("../../ap-field/select/index.vue.js"),$=require("../../ap-field/text/index.js"),D=require("./popover-input/index.vue2.js"),p="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},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(y,{emit:h}){const n=y,g=z.useDefaultPlaceholder("Text",n),B=h,{value:u,updateValue:a}=E.useControllableValue(n,B),s=e.ref(),c=e.ref(),{t:b}=F.useLocale(),{b:x,cssVar:V}=T.useNamespace("batch-input-group"),d=O.default("batch-input-group"),q=e.computed(()=>{const t=n.popoverPlacement;return{"popover-left":v.isNumber(t)?`${t}px`:t==="left"?"0px":"unset","popover-right":t==="right"?"0px":"unset"}}),A=e.computed(()=>n.options?n.options.length>1&&n.hasAll?[{value:p,label:b("ap.common.all")},...n.options]:n.options:[]),C=e.computed(()=>n.options?n.options.map(t=>t.value):[]),_=e.computed(()=>e.unref(u)?.value?.length?e.unref(u).value.join(","):""),S=e.computed(()=>e.unref(u)?.value?.length?e.unref(u).value.join(` `):""),k=e.computed(()=>{const t=e.unref(u)?.key;if(t?.length)return t.length===1||!n.hasAll?t[0]:p}),I=e.computed(()=>{const t=e.unref(u)?.key;return!t||t?.length<=1?e.unref(g):(n.options||[]).filter(o=>t.includes(o.value)).map(o=>o.label).join("/")});function P(t){const l=e.unref(u)||{},o=t===p?e.unref(C):j.isDef(t)?[t]:[];a({...l,key:o})}function U(t){const l=e.unref(u)||{},o=t.target.value||"";let i=L.splitValue(o,",",",",n.maxNum);if(o!==i){const m=c.value?.$el?.querySelector("input");m&&(m.value=i)}let r=i.split(",");r.length===1&&r[0]===""&&(r=[]),a({...l,value:r})}function w(t){const l=e.unref(u)||{};let o=t.split(/,|\n/);a({...l,value:o})}function f(){const t=e.unref(u)||{},l=t.value?.filter(Boolean);a({...t,value:l})}function N(t){f(),n.onBlur?.(t)}return(t,l)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"containerRef",ref:s,class:e.normalizeClass([e.unref(x)(),e.unref(d)]),style:e.normalizeStyle(e.unref(V)(q.value)),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(R.Space).Compact,{block:""},{default:e.withCtx(()=>[t.options?.length?(e.openBlock(),e.createBlock(e.unref(M.default),{key:0,style:e.normalizeStyle(t.style),options:A.value,value:k.value,"allow-clear":!1,"dropdown-match-select-width":!1,disabled:t.disabled,"get-popup-container":()=>s.value,"onUpdate:value":P},null,8,["style","options","value","disabled","get-popup-container"])):e.createCommentVNode("",!0),e.createVNode(e.unref($.ApFieldText),e.mergeProps(e.unref(v.omit)(n,["style","value","onUpdate:value","inputStyle","hasAll","options","onBlur"]),{ref_key:"inputRef",ref:c,style:t.inputStyle,value:_.value,placeholder:I.value,onInput:U,onBlur:N}),{suffix:e.withCtx(()=>[e.createVNode(D.default,{_parent:s.value,value:S.value,disabled:t.disabled,placement:n.popoverPlacement,"max-num":t.maxNum,class:e.normalizeClass(e.unref(d)),"onUpdate:value":w,onClose:f},null,8,["_parent","value","disabled","placement","max-num","class"])]),_:1},16,["style","value","placeholder"])]),_:1})],38))}});exports.default=K;