bkui-vue 0.0.1-beta.344 → 0.0.1-beta.345

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -30,6 +30,7 @@ declare const TagInput: {
30
30
  allowAutoMatch: boolean;
31
31
  leftSpace: number;
32
32
  popoverProps: {};
33
+ tagOverflowTips: {};
33
34
  }> & Omit<Readonly<import("vue").ExtractPropTypes<{
34
35
  modelValue: import("vue-types").VueTypeDef<string[]> & {
35
36
  default: () => string[];
@@ -270,6 +271,10 @@ declare const TagInput: {
270
271
  type: BooleanConstructor;
271
272
  default: boolean;
272
273
  };
274
+ tagOverflowTips: {
275
+ type: import("vue").PropType<Partial<import("../directives/src/tooltips").IOptions>>;
276
+ default: () => {};
277
+ };
273
278
  }>> & {
274
279
  onFocus?: (...args: any[]) => any;
275
280
  onBlur?: (...args: any[]) => any;
@@ -278,7 +283,7 @@ declare const TagInput: {
278
283
  "onUpdate:modelValue"?: (...args: any[]) => any;
279
284
  onRemove?: (...args: any[]) => any;
280
285
  onRemoveAll?: (...args: any[]) => any;
281
- } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "trigger" | "disabled" | "placeholder" | "list" | "separator" | "clearable" | "showClearOnlyHover" | "modelValue" | "withValidate" | "searchKey" | "allowCreate" | "collapseTags" | "displayKey" | "tooltipKey" | "saveKey" | "hasDeleteIcon" | "useGroup" | "maxData" | "maxResult" | "contentMaxHeight" | "contentWidth" | "allowNextFocus" | "allowAutoMatch" | "leftSpace" | "popoverProps">;
286
+ } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "trigger" | "disabled" | "placeholder" | "list" | "separator" | "clearable" | "showClearOnlyHover" | "modelValue" | "withValidate" | "searchKey" | "allowCreate" | "collapseTags" | "displayKey" | "tooltipKey" | "saveKey" | "hasDeleteIcon" | "useGroup" | "maxData" | "maxResult" | "contentMaxHeight" | "contentWidth" | "allowNextFocus" | "allowAutoMatch" | "leftSpace" | "popoverProps" | "tagOverflowTips">;
282
287
  $attrs: {
283
288
  [x: string]: unknown;
284
289
  };
@@ -532,6 +537,10 @@ declare const TagInput: {
532
537
  type: BooleanConstructor;
533
538
  default: boolean;
534
539
  };
540
+ tagOverflowTips: {
541
+ type: import("vue").PropType<Partial<import("../directives/src/tooltips").IOptions>>;
542
+ default: () => {};
543
+ };
535
544
  }>> & {
536
545
  onFocus?: (...args: any[]) => any;
537
546
  onBlur?: (...args: any[]) => any;
@@ -622,6 +631,7 @@ declare const TagInput: {
622
631
  allowAutoMatch: boolean;
623
632
  leftSpace: number;
624
633
  popoverProps: {};
634
+ tagOverflowTips: {};
625
635
  }> & {
626
636
  beforeCreate?: (() => void) | (() => void)[];
627
637
  created?: (() => void) | (() => void)[];
@@ -882,6 +892,10 @@ declare const TagInput: {
882
892
  type: BooleanConstructor;
883
893
  default: boolean;
884
894
  };
895
+ tagOverflowTips: {
896
+ type: import("vue").PropType<Partial<import("../directives/src/tooltips").IOptions>>;
897
+ default: () => {};
898
+ };
885
899
  }>> & {
886
900
  onFocus?: (...args: any[]) => any;
887
901
  onBlur?: (...args: any[]) => any;
@@ -1188,6 +1202,10 @@ declare const TagInput: {
1188
1202
  type: BooleanConstructor;
1189
1203
  default: boolean;
1190
1204
  };
1205
+ tagOverflowTips: {
1206
+ type: import("vue").PropType<Partial<import("../directives/src/tooltips").IOptions>>;
1207
+ default: () => {};
1208
+ };
1191
1209
  }>> & {
1192
1210
  onFocus?: (...args: any[]) => any;
1193
1211
  onBlur?: (...args: any[]) => any;
@@ -1278,5 +1296,6 @@ declare const TagInput: {
1278
1296
  allowAutoMatch: boolean;
1279
1297
  leftSpace: number;
1280
1298
  popoverProps: {};
1299
+ tagOverflowTips: {};
1281
1300
  }> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & import("@vue/runtime-core").Plugin;
1282
1301
  export default TagInput;
@@ -1 +1 @@
1
- !function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t(require("../shared"),require("vue"),require("lodash"),require("../directives"),require("../icon"),require("../loading"),require("../popover"),require("vue-types"));else if("function"==typeof define&&define.amd)define(["../shared","vue","lodash","../directives","../icon","../loading","../popover","vue-types"],t);else{var r="object"==typeof exports?t(require("../shared"),require("vue"),require("lodash"),require("../directives"),require("../icon"),require("../loading"),require("../popover"),require("vue-types")):t(e["../shared"],e.vue,e.lodash,e["../directives"],e["../icon"],e["../loading"],e["../popover"],e["vue-types"]);for(var a in r)("object"==typeof exports?exports:e)[a]=r[a]}}(self,((e,t,r,a,o,n,l,i)=>(()=>{"use strict";var s={4061:e=>{e.exports=a},6870:e=>{e.exports=o},4870:e=>{e.exports=n},5537:e=>{e.exports=l},4212:t=>{t.exports=e},467:e=>{e.exports=r},748:e=>{e.exports=t},210:e=>{e.exports=i}},u={};function c(e){var t=u[e];if(void 0!==t)return t.exports;var r=u[e]={exports:{}};return s[e](r,r.exports,c),r.exports}c.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return c.d(t,{a:t}),t},c.d=(e,t)=>{for(var r in t)c.o(t,r)&&!c.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},c.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),c.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var d={};return(()=>{c.r(d),c.d(d,{default:()=>L});var e=c(4212);function t(e){return t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},t(e)}function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,a=new Array(t);r<t;r++)a[r]=e[r];return a}function a(e,t){if(e){if("string"==typeof e)return r(e,t);var a=Object.prototype.toString.call(e).slice(8,-1);return"Object"===a&&e.constructor&&(a=e.constructor.name),"Map"===a||"Set"===a?Array.from(e):"Arguments"===a||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?r(e,t):void 0}}function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function n(e){return function(e){if(Array.isArray(e))return r(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||a(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}var l=c(748),i=c(467),s=c(4061),u=c(6870),p=c(4870),f=c.n(p),v=c(5537),g=c.n(v),h=12,y=function(e){for(var t=e.length,r=0,a=0;a<t;a++)0!=(65280&e.charCodeAt(a))&&(r+=1),r+=1;return r};const m=(0,l.defineComponent)({name:"ListTagRender",props:{node:e.PropTypes.object,searchKey:e.PropTypes.oneOfType([e.PropTypes.string,e.PropTypes.arrayOf(e.PropTypes.string)]),displayKey:e.PropTypes.string,searchKeyword:e.PropTypes.string,tpl:{type:Function}},render:function(){var e=this,t=function(t){if(e.searchKeyword){var r=new RegExp("(".concat(e.searchKeyword,")"),"i");return t.replace(r,'<strong class="highlight-text">$1</strong>')}return t};if(this.tpl)return this.tpl(this.node,t,l.h,this);var r=this.node[this.displayKey];return(0,l.createVNode)("div",{class:"bk-selector-node"},[(0,l.createVNode)("span",{class:"text",innerHTML:t(r)},[r])])}});var T,b=c(210);!function(e){e.FOCUS="focus",e.SEARCH="search"}(T||(T={}));const w=(0,l.defineComponent)({name:"TagRender",props:{node:e.PropTypes.object,displayKey:e.PropTypes.string,tpl:{type:Function}},render:function(){return this.tpl?this.tpl(this.node,l.h,this):(0,l.createVNode)("div",{class:"tag"},[(0,l.createVNode)("span",{class:"text"},[this.node[this.displayKey]])])}}),x=(0,l.defineComponent)({name:"TagInput",directives:{bkTooltips:s.bkTooltips},props:{modelValue:e.PropTypes.arrayOf(e.PropTypes.string).def([]),placeholder:e.PropTypes.string.def("请输入并按 Enter 结束"),list:e.PropTypes.arrayOf(e.PropTypes.object).def([]),disabled:e.PropTypes.bool.def(!1),tooltipKey:e.PropTypes.string.def(""),saveKey:e.PropTypes.string.def("id"),displayKey:e.PropTypes.string.def("name"),hasDeleteIcon:e.PropTypes.bool.def(!1),clearable:e.PropTypes.bool.def(!0),trigger:(0,b.toType)("treeTriggerType",{}).def(T.SEARCH),searchKey:e.PropTypes.oneOfType([e.PropTypes.string,e.PropTypes.arrayOf(e.PropTypes.string)]).def("name"),useGroup:e.PropTypes.bool.def(!1),allowCreate:e.PropTypes.bool.def(!1),maxData:e.PropTypes.number.def(-1),maxResult:e.PropTypes.number.def(10),contentMaxHeight:e.PropTypes.number.def(300),contentWidth:e.PropTypes.number.def(190),separator:e.PropTypes.string.def(""),allowNextFocus:e.PropTypes.bool.def(!0),allowAutoMatch:e.PropTypes.bool.def(!1),showClearOnlyHover:e.PropTypes.bool.def(!1),leftSpace:e.PropTypes.number.def(0),createTagValidator:{type:Function},filterCallback:{type:Function},tagTpl:{type:Function},tpl:{type:Function},pasteFn:{type:Function},withValidate:{type:Boolean,default:!0},popoverProps:{type:Object,default:function(){return{}}},collapseTags:{type:Boolean,default:!1}},emits:["update:modelValue","change","select","focus","blur","remove","removeAll"],setup:function(r,s){var u=s.emit,c=(0,e.useFormItem)(),d=(0,l.reactive)({isEdit:!1,isHover:!1,focusItemIndex:r.allowCreate?-1:0}),p=(0,l.reactive)(Object.assign({isShow:!1,width:190,offset:{mainAxis:4,crossAxis:0}},r.popoverProps)),f=function(e){var t=(0,l.reactive)({curPage:1,totalSize:0,totalPage:0,pageSize:e,isPageLoading:!1,curPageList:[],renderListPaged:[]});return{pageState:t,initPage:function(){var e,r,a=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];t.curPage=1,t.totalSize=a.length,t.totalPage=Math.ceil(t.totalSize/t.pageSize)||1;var o=[];if(t.pageSize>0)for(var l=0;l<t.totalSize;l+=t.pageSize)o.push(a.slice(l,l+t.pageSize));(e=t.renderListPaged).splice.apply(e,[0,t.renderListPaged.length].concat(o)),(r=t.curPageList).splice.apply(r,[0,t.curPageList.length].concat(n(t.renderListPaged[t.curPage-1]||[])))},pageChange:function(e){var r;t.curPage=e,(r=t.curPageList).splice.apply(r,[t.curPageList.length,0].concat(n(t.renderListPaged[t.curPage-1]||[]))),t.isPageLoading=!1}}}((0,l.toRefs)(r).maxResult),v=f.pageState,g=f.initPage,m=f.pageChange,T=(0,l.ref)(""),b=(0,l.ref)(null),w=(0,l.ref)(null),x=(0,l.ref)(null),L=(0,l.ref)(null),P=(0,l.ref)(null),I=(0,l.ref)(null),C=(0,l.computed)((function(){return!r.disabled&&r.hasDeleteIcon})),S=(0,l.computed)((function(){return 1===r.maxData})),K=(0,l.computed)((function(){return 0===k.selectedTagList.length&&""===T.value&&!d.isEdit})),V=(0,l.computed)((function(){return r.clearable&&!r.disabled&&0!==k.selectedTagList.length&&(!r.showClearOnlyHover||d.isHover)})),N=(0,l.computed)((function(){return{"bk-tag-input-trigger":!0,active:d.isEdit,disabled:r.disabled}})),k=(0,l.reactive)({localList:[],tagListCache:[],selectedTagList:[],selectedTagListCache:[]}),A=(0,l.computed)((function(){return k.selectedTagList.map((function(e){return e[r.saveKey]}))})),O=function(e){var t=(0,l.toRefs)(e),r=t.useGroup,a=t.saveKey,o=t.displayKey,n=t.list,i=(0,l.ref)([]),s=(0,l.ref)({});return(0,l.watch)([r,a,o,n],(function(){i.value=[];var e=(0,l.markRaw)(n.value);r.value&&(e=e.reduce((function(e,t){var r=[];return t.children&&(r=t.children.map((function(e){return Object.assign({group:{groupId:t[a.value],groupName:t[o.value]}},e)}))),e.concat(r)}),[])),i.value=e,s.value=e.reduce((function(e,t){return e[t[a.value]]=t,e}),{})}),{immediate:!0}),{flatList:i,saveKeyMap:s}}(r),E=O.flatList,R=O.saveKeyMap,j=(0,l.computed)((function(){if(r.useGroup){var e={};return v.curPageList.forEach((function(t,r){t.__index__=r,e[t.group.groupId]||(e[t.group.groupId]={id:t.group.groupId,name:t.group.groupName,children:[]}),e[t.group.groupId].children.push(t)})),Object.keys(e).map((function(t){return e[t]}))}return v.curPageList}));(0,l.watch)([function(){return E.value}],(function(){(0,l.nextTick)((function(){H()}))})),(0,l.watch)((function(){return r.modelValue}),(function(e){var t,a,o;o=e,(a=A.value).length===o.length&&o.every((function(e,t){return a[t]===e}))||((0,l.nextTick)((function(){H()})),r.withValidate&&(null===(t=null==c?void 0:c.validate)||void 0===t||t.call(c,"change")))})),(0,l.watch)(T,(0,i.debounce)((function(){var e=0!==v.curPageList.length,t=T.value;""!==t&&e||""===t&&"focus"===r.trigger&&e?p.isShow=!0:"focus"===r.trigger&&e||(p.isShow=!1)}),150)),(0,l.watch)((function(){return p.isShow}),(function(e){D(),e&&P.value&&((0,l.nextTick)((function(){P.value.scrollTop=0})),P.value.removeEventListener("scroll",q),P.value.addEventListener("scroll",q))})),(0,l.onMounted)((function(){H()}));var D=function(){var e;p.offset.crossAxis=S.value?0:null===(e=L.value)||void 0===e?void 0:e.offsetLeft},q=function(){if(!v.isPageLoading&&0!==P.value.scrollTop){var e=P.value;if(e.scrollTop+e.offsetHeight>=e.scrollHeight){var t=v.curPage+1;t<=v.totalPage&&(v.isPageLoading=!0,setTimeout((function(){m(t)}),500))}}},F=function(){var e;return Array.from((null===(e=x.value)||void 0===e?void 0:e.childNodes)||[]).filter((function(e){return![Node.TEXT_NODE,Node.COMMENT_NODE].includes(e.nodeType)}))},M=function(e){if(!r.disabled){if(null==e?void 0:e.target){var t=e.target.className;(t.indexOf("bk-tag-input-trigger")>-1||t.indexOf("tag-list")>-1)&&x.value.appendChild(L.value)}clearTimeout(I.value),S.value&&A.value.length&&(k.tagListCache=n(A.value),k.selectedTagListCache=n(k.selectedTagList),T.value=k.selectedTagListCache[0][r.saveKey],Q(k.selectedTagList[0],0),U()),d.isEdit=!0,(0,l.nextTick)((function(){var e;null===(e=b.value)||void 0===e||e.focus(),"focus"===r.trigger&&0!==k.localList.length&&(_(),p.isShow?D():p.isShow=!0)}))}},H=function(){var e=r.saveKey,t=r.modelValue,a=r.displayKey,n=r.allowCreate,l=r.trigger;if(k.selectedTagList=[],k.localList=E.value,t.length){var i={};k.selectedTagList=t.map((function(t){var r,l=R.value[t];return i[t]=1,!l&&n?(o(r={},e,t),o(r,a,t),r):l})).filter((function(e){return e})),S.value||(k.localList=k.localList.filter((function(t){return!i[t[e]]})))}"focus"===l&&_()},_=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",t=r.searchKey,a=r.filterCallback,o=e.toLowerCase().trim();if(""!==o){var n=[];n="function"==typeof a?a(o,t,k.localList)||[]:Array.isArray(t)?k.localList.filter((function(e){return t.some((function(t){return e[t].toLowerCase().indexOf(o)>-1}))})):k.localList.filter((function(e){return e[t].toLowerCase().indexOf(o)>-1})),g(n)}else g(k.localList)},z=function(){T.value=""},B=function(){if(S.value)return 0;var e=F().findIndex((function(e){return"tagInputItem"===e.id}));return e>=0?e:0},G=function(e,t){var r=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(t&&e){var a=t;r&&(a=t.nextElementSibling||null),t.parentNode.insertBefore(e,a)}},U=function(e){var t=r.maxData,a=r.trigger,o=r.allowCreate;if(-1===t||t>A.value.length){var n=((null==e?void 0:e.target)?e.target:T).value,l=y(n);l?(_(n),b.value.style.width="".concat(l*h,"px")):"focus"===a&&_()}else W(),T.value="",p.isShow=!1;d.isEdit=!0,d.focusItemIndex=o?-1:0},W=function(){I.value=setTimeout((function(){var e,t,o,n=T.value;if(z(),d.isEdit=!1,S.value){var l=(t=k.tagListCache,o=1,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var a,o,n=[],l=!0,i=!1;try{for(r=r.call(e);!(l=(a=r.next()).done)&&(n.push(a.value),!t||n.length!==t);l=!0);}catch(e){i=!0,o=e}finally{try{l||null==r.return||r.return()}finally{if(i)throw o}}return n}}(t,o)||a(t,o)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}())[0];n&&n===l&&k.selectedTagListCache.length?J(k.selectedTagListCache[0],"select"):Z("remove")}else if(r.allowAutoMatch&&n){var i=v.curPageList.find((function(e){return Array.isArray(r.searchKey)?r.searchKey.map((function(t){return e[t]})).includes(n):e[r.searchKey]===n}));i?$(i,"select"):r.allowCreate&&$(n,"custom")}p.isShow=!1,u("blur",n,A.value),null===(e=null==c?void 0:c.validate)||void 0===e||e.call(c,"blur")}),200)},$=function(e,t,r){null==r||r.stopPropagation(),e&&!e.disabled&&(S.value&&(k.tagListCache=[],k.selectedTagListCache=[],k.selectedTagList=[]),J(e,t),Z("select"),z(),p.isShow=!1)},Z=function(e,t){u(e,t),u("update:modelValue",A.value),u("change",A.value)},X=function(){var e=P.value.clientHeight,t=P.value.getBoundingClientRect().y;(0,l.nextTick)((function(){var r=P.value.querySelector(".bk-selector-actived");if(r){var a=r.clientHeight,o=r.getBoundingClientRect().y;o<t&&(P.value.scrollTop=P.value.scrollTop-(t-o));var n=o+a-t;n>e&&(P.value.scrollTop=P.value.scrollTop+n-e)}}))},J=function(e,a){if(!(k.selectedTagList.length>=r.maxData&&-1!==r.maxData)){var i,s=r.separator,u=r.saveKey,c=r.displayKey,d=r.createTagValidator,p=B(),f=1,v=!1,g=function(e){return"function"!=typeof d||d(e)};if("custom"===a)if(s){var y,m=e.split(s),T=(m=m.filter((function(e){return(null==e?void 0:e.trim())&&!A.value.includes(e)&&g(e)}))).map((function(e){var t;return R.value[e]||(o(t={},u,e),o(t,c,e),t)}));m.length&&((y=k.selectedTagList).splice.apply(y,[p,0].concat(n(T))),f=T.length,v=!0)}else{var w="object"===t(e);if(void 0!==(i=(i=w?e[u]:e.trim()).replace(/\s+/g,""))&&!A.value.includes(i)&&g(i)){var x,P=R.value[i]||(w?e:(o(x={},u,i),o(x,c,i),x));k.selectedTagList.splice(p,0,P),v=!0}}else e&&(void 0===(i=e[u])||A.value.includes(i)||(k.selectedTagList.splice(p,0,e),v=!0));v&&(0,l.nextTick)((function(){for(var e=1;e<=f;e++){var t=F()[p+e];G(t,L.value)}if(b.value.style.width="".concat(h,"px"),!S.value){r.allowNextFocus&&M();var a=A.value.reduce((function(e,t){return e[t]=1,e}),{});k.localList=k.localList.filter((function(e){return!a[e[u]]}))}}))}},Q=function(e,t){k.selectedTagList.splice(t,1);var a=R.value[e[r.saveKey]];(r.allowCreate&&a||!r.allowCreate)&&!S.value&&k.localList.push(e)},Y=(0,l.computed)((function(){return r.collapseTags?r.collapseTags&&!d.isEdit:r.collapseTags})),ee=function(e,t,r){(0,l.watch)([r,t],(function(){o()}),{flush:"post"});var a=(0,l.ref)(null),o=function(){t.value&&(a.value=null,setTimeout((function(){var t=Array.from(e.value.querySelectorAll(".tag-item")),r=t.findIndex((function(e,r){return!!r&&t[r-1].offsetTop!==e.offsetTop}));a.value=r>0?r-1:null})))};return{overflowTagIndex:a}}(w,Y,A),te=ee.overflowTagIndex;return Object.assign(Object.assign(Object.assign(Object.assign({popoverProps:p},(0,l.toRefs)(d)),(0,l.toRefs)(k)),(0,l.toRefs)(v)),{isShowPlaceholder:K,isShowClear:V,curInputValue:T,renderList:j,showTagClose:C,tagInputRef:b,bkTagSelectorRef:w,tagListRef:x,tagInputItemRef:L,selectorListRef:P,triggerClass:N,overflowTagIndex:te,localCollapseTags:Y,focusInputTrigger:M,activeClass:function(e,t){var a={"bk-selector-actived":!1,"bk-selector-selected":A.value.includes(e[r.saveKey])};return r.useGroup?a["bk-selector-actived"]=e.__index__===d.focusItemIndex:a["bk-selector-actived"]=t===d.focusItemIndex,a},handleInput:U,handleFocus:function(){var e;p.width=S.value?null===(e=w.value)||void 0===e?void 0:e.clientWidth:r.contentWidth,u("focus")},handleBlur:W,handleTagSelected:$,handleTagRemove:function(e,t,r){null==r||r.stopPropagation(),Q(e,t),z(),Z("remove",e),b.value.style.width="".concat(h,"px")},handleClear:function(e){e.stopPropagation();var t=k.selectedTagList;k.selectedTagList=[];var a,o=t.filter((function(e){return R.value[e[r.saveKey]]}));(!r.allowCreate||0===o.length)&&r.allowCreate||S.value||(a=k.localList).push.apply(a,n(o)),Z("removeAll")},tagFocus:function(e){r.disabled||(G(L.value,e.currentTarget,!0),b.value.style.width="".concat(h,"px"),p.isShow&&D())},handleKeydown:function(e){if(!v.isPageLoading){var t=e.target.value,a=y(t),o=B(),n=F();switch(e.code){case"ArrowUp":if(e.preventDefault(),!p.isShow)return;d.focusItemIndex=d.focusItemIndex-1,d.focusItemIndex=d.focusItemIndex<0?-1:d.focusItemIndex,-1===d.focusItemIndex&&(d.focusItemIndex=v.curPageList.length-1),X();break;case"ArrowDown":if(e.preventDefault(),!p.isShow)return;d.focusItemIndex=d.focusItemIndex+1,d.focusItemIndex=d.focusItemIndex>v.curPageList.length-1?v.curPageList.length:d.focusItemIndex,d.focusItemIndex===v.curPageList.length&&(d.focusItemIndex=0),X();break;case"ArrowLeft":if(d.isEdit=!0,!a){if(o<1)return;G(L.value,n[o-1]),M()}break;case"ArrowRight":if(d.isEdit=!0,!a){if(o===n.length-1)return;G(n[o+1],L.value),M()}break;case"Enter":case"NumpadEnter":!r.allowCreate&&p.isShow||r.allowCreate&&d.focusItemIndex>=0&&p.isShow?$(v.curPageList[d.focusItemIndex],"select",e):r.allowCreate&&$(T.value,"custom",e),e.preventDefault();break;case"Backspace":0===o||T.value||function(e,t){var a=F();G(L.value,a[e-1]),k.selectedTagList.splice(e-1,1),M();var o=R.value[t[r.saveKey]];(r.allowCreate&&o||!r.allowCreate)&&!S.value&&k.localList.push(t),b.value="".concat(h,"px"),Z("remove")}(o,k.selectedTagList[o-1])}}},handlePaste:function(e){if(e.preventDefault(),S.value)return!1;var t=r.maxData,a=r.saveKey,l=r.displayKey,i=r.pasteFn,s=r.allowCreate,u=e.clipboardData.getData("text"),c=i?i(u):function(e){var t=[],a=e.split(";"),n=/^[a-zA-Z][a-zA-Z_]*/g;return a.forEach((function(e){var a=e.match(n);if(a){var l,i=a.join("");t.push((o(l={},r.saveKey,i),o(l,r.displayKey,i),l))}})),t}(u),d=c.map((function(e){return e[a]}));if(d.length){var p=F(),f=B(),v=k.localList.map((function(e){return e[a]}));if(d=d.filter((function(e){var t=(null==e?void 0:e.trim())&&!A.value.includes(e);return s?t:t&&v.includes(e)})),-1!==t){var g=k.selectedTagList.length;if(g<t){var y=t-g;d.length>y&&(d=n(d.slice(0,y)))}else d=[]}var m,T=s?d.map((function(e){var t,r=k.localList.find((function(t){return t[a]===e}));return null!=r?r:(o(t={},a,e),o(t,l,e),t)})):k.localList.filter((function(e){return d.includes(e[a])}));d.length&&((m=k.selectedTagList).splice.apply(m,[f,0].concat(n(T))),G(L.value,p[f]),b.value.style.width="".concat(h,"px"),k.localList=k.localList.filter((function(e){return!d.includes(e[a])})),Z("select"),M())}}})},render:function(){var e=this;return(0,l.createVNode)("div",{class:"bk-tag-input",ref:"bkTagSelectorRef",onClick:this.focusInputTrigger,onMouseenter:function(){return e.isHover=!0},onMouseleave:function(){return e.isHover=!1}},[(0,l.createVNode)(g(),(0,l.mergeProps)({theme:"light bk-tag-input-popover-content",trigger:"manual",placement:"bottom-start",arrow:!1},this.popoverProps),{default:function(){var t,r,a;return(0,l.createVNode)("div",{class:e.triggerClass},[(0,l.createVNode)("ul",{class:"tag-list",ref:"tagListRef",style:{marginLeft:"".concat(e.leftSpace,"px")}},[e.selectedTagList.map((function(t,r){var a={boundary:"window",theme:"light",distance:12,content:t[e.tooltipKey],disabled:!e.tooltipKey},o=e.localCollapseTags&&e.overflowTagIndex&&r>=e.overflowTagIndex;return(0,l.withDirectives)((0,l.createVNode)("li",{class:"tag-item",style:{display:o?"none":""},onClick:e.tagFocus},[(0,l.createVNode)(w,{node:t,tpl:e.tagTpl,displayKey:e.displayKey},null),e.showTagClose?(0,l.createVNode)(u.Error,{class:"remove-tag",onClick:e.handleTagRemove.bind(e,t,r)},null):null]),[[(0,l.resolveDirective)("bk-tooltips"),a]])})),(0,l.withDirectives)((0,l.createVNode)("li",{ref:"tagInputItemRef",id:"tagInputItem",class:"tag-input-item",role:"input"},[(0,l.withDirectives)((0,l.createVNode)("input",{type:"text",class:"tag-input",ref:"tagInputRef","onUpdate:modelValue":function(t){return e.curInputValue=t},onInput:e.handleInput,onFocus:e.handleFocus,onBlur:e.handleBlur,onKeydown:e.handleKeydown,onPaste:e.handlePaste},null),[[l.vModelText,e.curInputValue]])]),[[l.vShow,e.isEdit]]),!!e.overflowTagIndex&&e.localCollapseTags&&(0,l.createVNode)("li",{class:"tag-item"},[(0,l.createVNode)("div",{class:"tag"},[(0,l.createVNode)("span",{class:"text"},[(0,l.createTextVNode)("+"),e.selectedTagList.length-e.overflowTagIndex])])])]),(0,l.withDirectives)((0,l.createVNode)("p",{class:"placeholder"},[e.placeholder]),[[l.vShow,e.isShowPlaceholder]]),null!==(a=null===(r=null===(t=e.$slots)||void 0===t?void 0:t.suffix)||void 0===r?void 0:r.call(t))&&void 0!==a?a:e.isShowClear&&(0,l.createVNode)(u.Close,{class:"clear-icon",onClick:e.handleClear},null)])},content:function(){return(0,l.createVNode)("div",{class:"bk-selector-list"},[(0,l.createVNode)("ul",{ref:"selectorListRef",style:{"max-height":"".concat(e.contentMaxHeight,"px")},class:"outside-ul"},[e.renderList.map((function(t,r){return e.useGroup?(0,l.createVNode)("li",{class:"bk-selector-group-item"},[(0,l.createVNode)("span",{class:"group-name"},[t.name,(0,l.createTextVNode)(" ("),t.children.length,(0,l.createTextVNode)(")")]),(0,l.createVNode)("ul",{class:"bk-selector-group-list-item"},[t.children.map((function(t,r){return(0,l.createVNode)("li",{class:["bk-selector-list-item",{disabled:t.disabled},e.activeClass(t,r)],onClick:e.handleTagSelected.bind(e,t,"select")},[(0,l.createVNode)(m,{node:t,displayKey:e.displayKey,tpl:e.tpl,searchKey:e.searchKey,searchKeyword:e.curInputValue},null)])}))])]):(0,l.createVNode)("li",{class:["bk-selector-list-item",{disabled:t.disabled},e.activeClass(t,r)],onClick:e.handleTagSelected.bind(e,t,"select")},[(0,l.createVNode)(m,{node:t,displayKey:e.displayKey,tpl:e.tpl,searchKey:e.searchKey,searchKeyword:e.curInputValue},null)])})),e.isPageLoading?(0,l.createVNode)("li",{class:"bk-selector-list-item loading"},[(0,l.createVNode)(f(),{theme:"primary",size:p.BkLoadingSize.Small},null)]):null])])}})])}}),L=(0,e.withInstall)(x)})(),d})()));
1
+ !function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t(require("../shared"),require("vue"),require("lodash"),require("../directives"),require("../icon"),require("../loading"),require("../popover"),require("vue-types"));else if("function"==typeof define&&define.amd)define(["../shared","vue","lodash","../directives","../icon","../loading","../popover","vue-types"],t);else{var r="object"==typeof exports?t(require("../shared"),require("vue"),require("lodash"),require("../directives"),require("../icon"),require("../loading"),require("../popover"),require("vue-types")):t(e["../shared"],e.vue,e.lodash,e["../directives"],e["../icon"],e["../loading"],e["../popover"],e["vue-types"]);for(var a in r)("object"==typeof exports?exports:e)[a]=r[a]}}(self,((e,t,r,a,o,n,l,i)=>(()=>{"use strict";var s={4061:e=>{e.exports=a},6870:e=>{e.exports=o},4870:e=>{e.exports=n},5537:e=>{e.exports=l},4212:t=>{t.exports=e},467:e=>{e.exports=r},748:e=>{e.exports=t},210:e=>{e.exports=i}},u={};function c(e){var t=u[e];if(void 0!==t)return t.exports;var r=u[e]={exports:{}};return s[e](r,r.exports,c),r.exports}c.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return c.d(t,{a:t}),t},c.d=(e,t)=>{for(var r in t)c.o(t,r)&&!c.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},c.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),c.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var d={};return(()=>{c.r(d),c.d(d,{default:()=>L});var e=c(4212);function t(e){return t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},t(e)}function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,a=new Array(t);r<t;r++)a[r]=e[r];return a}function a(e,t){if(e){if("string"==typeof e)return r(e,t);var a=Object.prototype.toString.call(e).slice(8,-1);return"Object"===a&&e.constructor&&(a=e.constructor.name),"Map"===a||"Set"===a?Array.from(e):"Arguments"===a||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?r(e,t):void 0}}function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function n(e){return function(e){if(Array.isArray(e))return r(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||a(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}var l=c(748),i=c(467),s=c(4061),u=c(6870),p=c(4870),f=c.n(p),v=c(5537),g=c.n(v),h=12,y=function(e){for(var t=e.length,r=0,a=0;a<t;a++)0!=(65280&e.charCodeAt(a))&&(r+=1),r+=1;return r};const m=(0,l.defineComponent)({name:"ListTagRender",props:{node:e.PropTypes.object,searchKey:e.PropTypes.oneOfType([e.PropTypes.string,e.PropTypes.arrayOf(e.PropTypes.string)]),displayKey:e.PropTypes.string,searchKeyword:e.PropTypes.string,tpl:{type:Function}},render:function(){var e=this,t=function(t){if(e.searchKeyword){var r=new RegExp("(".concat(e.searchKeyword,")"),"i");return t.replace(r,'<strong class="highlight-text">$1</strong>')}return t};if(this.tpl)return this.tpl(this.node,t,l.h,this);var r=this.node[this.displayKey];return(0,l.createVNode)("div",{class:"bk-selector-node"},[(0,l.createVNode)("span",{class:"text",innerHTML:t(r)},[r])])}});var T,b=c(210);!function(e){e.FOCUS="focus",e.SEARCH="search"}(T||(T={}));const w=(0,l.defineComponent)({name:"TagRender",directives:{bkTooltips:s.bkTooltips},props:{node:e.PropTypes.object,displayKey:e.PropTypes.string,tpl:{type:Function},hasTips:{type:Boolean,default:!1},tagOverflowTips:{type:Object,default:function(){return{}}}},setup:function(t){var r=(0,l.ref)(),a=(0,l.ref)(!1),o=(0,l.computed)((function(){return Object.assign({boundary:"window",theme:"light",distance:12,content:t.node[t.displayKey],disabled:t.hasTips||!a.value},t.tagOverflowTips)}));return(0,l.onMounted)((function(){a.value=(0,e.checkOverflow)(r.value)})),{overflowTips:o,tagRef:r}},render:function(){return this.tpl?this.tpl(this.node,l.h,this):(0,l.withDirectives)((0,l.createVNode)("div",{class:"tag",ref:"tagRef"},[(0,l.createVNode)("span",{class:"text"},[this.node[this.displayKey]])]),[[(0,l.resolveDirective)("bk-tooltips"),this.overflowTips]])}}),x=(0,l.defineComponent)({name:"TagInput",directives:{bkTooltips:s.bkTooltips},props:{modelValue:e.PropTypes.arrayOf(e.PropTypes.string).def([]),placeholder:e.PropTypes.string.def("请输入并按 Enter 结束"),list:e.PropTypes.arrayOf(e.PropTypes.object).def([]),disabled:e.PropTypes.bool.def(!1),tooltipKey:e.PropTypes.string.def(""),saveKey:e.PropTypes.string.def("id"),displayKey:e.PropTypes.string.def("name"),hasDeleteIcon:e.PropTypes.bool.def(!1),clearable:e.PropTypes.bool.def(!0),trigger:(0,b.toType)("treeTriggerType",{}).def(T.SEARCH),searchKey:e.PropTypes.oneOfType([e.PropTypes.string,e.PropTypes.arrayOf(e.PropTypes.string)]).def("name"),useGroup:e.PropTypes.bool.def(!1),allowCreate:e.PropTypes.bool.def(!1),maxData:e.PropTypes.number.def(-1),maxResult:e.PropTypes.number.def(10),contentMaxHeight:e.PropTypes.number.def(300),contentWidth:e.PropTypes.number.def(190),separator:e.PropTypes.string.def(""),allowNextFocus:e.PropTypes.bool.def(!0),allowAutoMatch:e.PropTypes.bool.def(!1),showClearOnlyHover:e.PropTypes.bool.def(!1),leftSpace:e.PropTypes.number.def(0),createTagValidator:{type:Function},filterCallback:{type:Function},tagTpl:{type:Function},tpl:{type:Function},pasteFn:{type:Function},withValidate:{type:Boolean,default:!0},popoverProps:{type:Object,default:function(){return{}}},collapseTags:{type:Boolean,default:!1},tagOverflowTips:{type:Object,default:function(){return{}}}},emits:["update:modelValue","change","select","focus","blur","remove","removeAll"],setup:function(r,s){var u=s.emit,c=(0,e.useFormItem)(),d=(0,l.reactive)({isEdit:!1,isHover:!1,focusItemIndex:r.allowCreate?-1:0}),p=(0,l.reactive)(Object.assign({isShow:!1,width:190,offset:{mainAxis:4,crossAxis:0}},r.popoverProps)),f=function(e){var t=(0,l.reactive)({curPage:1,totalSize:0,totalPage:0,pageSize:e,isPageLoading:!1,curPageList:[],renderListPaged:[]});return{pageState:t,initPage:function(){var e,r,a=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];t.curPage=1,t.totalSize=a.length,t.totalPage=Math.ceil(t.totalSize/t.pageSize)||1;var o=[];if(t.pageSize>0)for(var l=0;l<t.totalSize;l+=t.pageSize)o.push(a.slice(l,l+t.pageSize));(e=t.renderListPaged).splice.apply(e,[0,t.renderListPaged.length].concat(o)),(r=t.curPageList).splice.apply(r,[0,t.curPageList.length].concat(n(t.renderListPaged[t.curPage-1]||[])))},pageChange:function(e){var r;t.curPage=e,(r=t.curPageList).splice.apply(r,[t.curPageList.length,0].concat(n(t.renderListPaged[t.curPage-1]||[]))),t.isPageLoading=!1}}}((0,l.toRefs)(r).maxResult),v=f.pageState,g=f.initPage,m=f.pageChange,T=(0,l.ref)(""),b=(0,l.ref)(null),w=(0,l.ref)(null),x=(0,l.ref)(null),L=(0,l.ref)(null),P=(0,l.ref)(null),I=(0,l.ref)(null),C=(0,l.computed)((function(){return!r.disabled&&r.hasDeleteIcon})),S=(0,l.computed)((function(){return 1===r.maxData})),K=(0,l.computed)((function(){return 0===N.selectedTagList.length&&""===T.value&&!d.isEdit})),k=(0,l.computed)((function(){return r.clearable&&!r.disabled&&0!==N.selectedTagList.length&&(!r.showClearOnlyHover||d.isHover)})),V=(0,l.computed)((function(){return{"bk-tag-input-trigger":!0,active:d.isEdit,disabled:r.disabled}})),N=(0,l.reactive)({localList:[],tagListCache:[],selectedTagList:[],selectedTagListCache:[]}),O=(0,l.computed)((function(){return N.selectedTagList.map((function(e){return e[r.saveKey]}))})),A=function(e){var t=(0,l.toRefs)(e),r=t.useGroup,a=t.saveKey,o=t.displayKey,n=t.list,i=(0,l.ref)([]),s=(0,l.ref)({});return(0,l.watch)([r,a,o,n],(function(){i.value=[];var e=(0,l.markRaw)(n.value);r.value&&(e=e.reduce((function(e,t){var r=[];return t.children&&(r=t.children.map((function(e){return Object.assign({group:{groupId:t[a.value],groupName:t[o.value]}},e)}))),e.concat(r)}),[])),i.value=e,s.value=e.reduce((function(e,t){return e[t[a.value]]=t,e}),{})}),{immediate:!0}),{flatList:i,saveKeyMap:s}}(r),R=A.flatList,j=A.saveKeyMap,E=(0,l.computed)((function(){if(r.useGroup){var e={};return v.curPageList.forEach((function(t,r){t.__index__=r,e[t.group.groupId]||(e[t.group.groupId]={id:t.group.groupId,name:t.group.groupName,children:[]}),e[t.group.groupId].children.push(t)})),Object.keys(e).map((function(t){return e[t]}))}return v.curPageList}));(0,l.watch)([function(){return R.value}],(function(){(0,l.nextTick)((function(){H()}))})),(0,l.watch)((function(){return r.modelValue}),(function(e){var t,a,o;o=e,(a=O.value).length===o.length&&o.every((function(e,t){return a[t]===e}))||((0,l.nextTick)((function(){H()})),r.withValidate&&(null===(t=null==c?void 0:c.validate)||void 0===t||t.call(c,"change")))})),(0,l.watch)(T,(0,i.debounce)((function(){var e=0!==v.curPageList.length,t=T.value;""!==t&&e||""===t&&"focus"===r.trigger&&e?p.isShow=!0:"focus"===r.trigger&&e||(p.isShow=!1)}),150)),(0,l.watch)((function(){return p.isShow}),(function(e){D(),e&&P.value&&((0,l.nextTick)((function(){P.value.scrollTop=0})),P.value.removeEventListener("scroll",M),P.value.addEventListener("scroll",M))})),(0,l.onMounted)((function(){H()}));var D=function(){var e;p.offset.crossAxis=S.value?0:null===(e=L.value)||void 0===e?void 0:e.offsetLeft},M=function(){if(!v.isPageLoading&&0!==P.value.scrollTop){var e=P.value;if(e.scrollTop+e.offsetHeight>=e.scrollHeight){var t=v.curPage+1;t<=v.totalPage&&(v.isPageLoading=!0,setTimeout((function(){m(t)}),500))}}},q=function(){var e;return Array.from((null===(e=x.value)||void 0===e?void 0:e.childNodes)||[]).filter((function(e){return![Node.TEXT_NODE,Node.COMMENT_NODE].includes(e.nodeType)}))},F=function(e){if(!r.disabled){if(null==e?void 0:e.target){var t=e.target.className;(t.indexOf("bk-tag-input-trigger")>-1||t.indexOf("tag-list")>-1)&&x.value.appendChild(L.value)}clearTimeout(I.value),S.value&&O.value.length&&(N.tagListCache=n(O.value),N.selectedTagListCache=n(N.selectedTagList),T.value=N.selectedTagListCache[0][r.saveKey],Q(N.selectedTagList[0],0),U()),d.isEdit=!0,(0,l.nextTick)((function(){var e;null===(e=b.value)||void 0===e||e.focus(),"focus"===r.trigger&&0!==N.localList.length&&(_(),p.isShow?D():p.isShow=!0)}))}},H=function(){var e=r.saveKey,t=r.modelValue,a=r.displayKey,n=r.allowCreate,l=r.trigger;if(N.selectedTagList=[],N.localList=R.value,t.length){var i={};N.selectedTagList=t.map((function(t){var r,l=j.value[t];return i[t]=1,!l&&n?(o(r={},e,t),o(r,a,t),r):l})).filter((function(e){return e})),S.value||(N.localList=N.localList.filter((function(t){return!i[t[e]]})))}"focus"===l&&_()},_=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",t=r.searchKey,a=r.filterCallback,o=e.toLowerCase().trim();if(""!==o){var n=[];n="function"==typeof a?a(o,t,N.localList)||[]:Array.isArray(t)?N.localList.filter((function(e){return t.some((function(t){return e[t].toLowerCase().indexOf(o)>-1}))})):N.localList.filter((function(e){return e[t].toLowerCase().indexOf(o)>-1})),g(n)}else g(N.localList)},z=function(){T.value=""},B=function(){if(S.value)return 0;var e=q().findIndex((function(e){return"tagInputItem"===e.id}));return e>=0?e:0},G=function(e,t){var r=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(t&&e){var a=t;r&&(a=t.nextElementSibling||null),t.parentNode.insertBefore(e,a)}},U=function(e){var t=r.maxData,a=r.trigger,o=r.allowCreate;if(-1===t||t>O.value.length){var n=((null==e?void 0:e.target)?e.target:T).value,l=y(n);l?(_(n),b.value.style.width="".concat(l*h,"px")):"focus"===a&&_()}else W(),T.value="",p.isShow=!1;d.isEdit=!0,d.focusItemIndex=o?-1:0},W=function(){I.value=setTimeout((function(){var e,t,o,n=T.value;if(z(),d.isEdit=!1,S.value){var l=(t=N.tagListCache,o=1,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var a,o,n=[],l=!0,i=!1;try{for(r=r.call(e);!(l=(a=r.next()).done)&&(n.push(a.value),!t||n.length!==t);l=!0);}catch(e){i=!0,o=e}finally{try{l||null==r.return||r.return()}finally{if(i)throw o}}return n}}(t,o)||a(t,o)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}())[0];n&&n===l&&N.selectedTagListCache.length?J(N.selectedTagListCache[0],"select"):Z("remove")}else if(r.allowAutoMatch&&n){var i=v.curPageList.find((function(e){return Array.isArray(r.searchKey)?r.searchKey.map((function(t){return e[t]})).includes(n):e[r.searchKey]===n}));i?$(i,"select"):r.allowCreate&&$(n,"custom")}p.isShow=!1,u("blur",n,O.value),null===(e=null==c?void 0:c.validate)||void 0===e||e.call(c,"blur")}),200)},$=function(e,t,r){null==r||r.stopPropagation(),e&&!e.disabled&&(S.value&&(N.tagListCache=[],N.selectedTagListCache=[],N.selectedTagList=[]),J(e,t),Z("select"),z(),p.isShow=!1)},Z=function(e,t){u(e,t),u("update:modelValue",O.value),u("change",O.value)},X=function(){var e=P.value.clientHeight,t=P.value.getBoundingClientRect().y;(0,l.nextTick)((function(){var r=P.value.querySelector(".bk-selector-actived");if(r){var a=r.clientHeight,o=r.getBoundingClientRect().y;o<t&&(P.value.scrollTop=P.value.scrollTop-(t-o));var n=o+a-t;n>e&&(P.value.scrollTop=P.value.scrollTop+n-e)}}))},J=function(e,a){if(!(N.selectedTagList.length>=r.maxData&&-1!==r.maxData)){var i,s=r.separator,u=r.saveKey,c=r.displayKey,d=r.createTagValidator,p=B(),f=1,v=!1,g=function(e){return"function"!=typeof d||d(e)};if("custom"===a)if(s){var y,m=e.split(s),T=(m=m.filter((function(e){return(null==e?void 0:e.trim())&&!O.value.includes(e)&&g(e)}))).map((function(e){var t;return j.value[e]||(o(t={},u,e),o(t,c,e),t)}));m.length&&((y=N.selectedTagList).splice.apply(y,[p,0].concat(n(T))),f=T.length,v=!0)}else{var w="object"===t(e);if(void 0!==(i=(i=w?e[u]:e.trim()).replace(/\s+/g,""))&&!O.value.includes(i)&&g(i)){var x,P=j.value[i]||(w?e:(o(x={},u,i),o(x,c,i),x));N.selectedTagList.splice(p,0,P),v=!0}}else e&&(void 0===(i=e[u])||O.value.includes(i)||(N.selectedTagList.splice(p,0,e),v=!0));v&&(0,l.nextTick)((function(){for(var e=1;e<=f;e++){var t=q()[p+e];G(t,L.value)}if(b.value.style.width="".concat(h,"px"),!S.value){r.allowNextFocus&&F();var a=O.value.reduce((function(e,t){return e[t]=1,e}),{});N.localList=N.localList.filter((function(e){return!a[e[u]]}))}}))}},Q=function(e,t){N.selectedTagList.splice(t,1);var a=j.value[e[r.saveKey]];(r.allowCreate&&a||!r.allowCreate)&&!S.value&&N.localList.push(e)},Y=(0,l.computed)((function(){return r.collapseTags?r.collapseTags&&!d.isEdit:r.collapseTags})),ee=function(e,t,r){(0,l.watch)([r,t],(function(){o()}),{flush:"post"});var a=(0,l.ref)(null),o=function(){t.value&&(a.value=null,setTimeout((function(){var t=Array.from(e.value.querySelectorAll(".tag-item")),r=t.findIndex((function(e,r){return!!r&&t[r-1].offsetTop!==e.offsetTop}));a.value=r>0?r-1:null})))};return{overflowTagIndex:a}}(w,Y,O),te=ee.overflowTagIndex;return Object.assign(Object.assign(Object.assign(Object.assign({popoverProps:p},(0,l.toRefs)(d)),(0,l.toRefs)(N)),(0,l.toRefs)(v)),{isShowPlaceholder:K,isShowClear:k,curInputValue:T,renderList:E,showTagClose:C,tagInputRef:b,bkTagSelectorRef:w,tagListRef:x,tagInputItemRef:L,selectorListRef:P,triggerClass:V,overflowTagIndex:te,localCollapseTags:Y,focusInputTrigger:F,activeClass:function(e,t){var a={"bk-selector-actived":!1,"bk-selector-selected":O.value.includes(e[r.saveKey])};return r.useGroup?a["bk-selector-actived"]=e.__index__===d.focusItemIndex:a["bk-selector-actived"]=t===d.focusItemIndex,a},handleInput:U,handleFocus:function(){var e;p.width=S.value?null===(e=w.value)||void 0===e?void 0:e.clientWidth:r.contentWidth,u("focus")},handleBlur:W,handleTagSelected:$,handleTagRemove:function(e,t,r){null==r||r.stopPropagation(),Q(e,t),z(),Z("remove",e),b.value.style.width="".concat(h,"px")},handleClear:function(e){e.stopPropagation();var t=N.selectedTagList;N.selectedTagList=[];var a,o=t.filter((function(e){return j.value[e[r.saveKey]]}));(!r.allowCreate||0===o.length)&&r.allowCreate||S.value||(a=N.localList).push.apply(a,n(o)),Z("removeAll")},tagFocus:function(e){r.disabled||(G(L.value,e.currentTarget,!0),b.value.style.width="".concat(h,"px"),p.isShow&&D())},handleKeydown:function(e){if(!v.isPageLoading){var t=e.target.value,a=y(t),o=B(),n=q();switch(e.code){case"ArrowUp":if(e.preventDefault(),!p.isShow)return;d.focusItemIndex=d.focusItemIndex-1,d.focusItemIndex=d.focusItemIndex<0?-1:d.focusItemIndex,-1===d.focusItemIndex&&(d.focusItemIndex=v.curPageList.length-1),X();break;case"ArrowDown":if(e.preventDefault(),!p.isShow)return;d.focusItemIndex=d.focusItemIndex+1,d.focusItemIndex=d.focusItemIndex>v.curPageList.length-1?v.curPageList.length:d.focusItemIndex,d.focusItemIndex===v.curPageList.length&&(d.focusItemIndex=0),X();break;case"ArrowLeft":if(d.isEdit=!0,!a){if(o<1)return;G(L.value,n[o-1]),F()}break;case"ArrowRight":if(d.isEdit=!0,!a){if(o===n.length-1)return;G(n[o+1],L.value),F()}break;case"Enter":case"NumpadEnter":!r.allowCreate&&p.isShow||r.allowCreate&&d.focusItemIndex>=0&&p.isShow?$(v.curPageList[d.focusItemIndex],"select",e):r.allowCreate&&T.value.trim()&&$(T.value,"custom",e),e.preventDefault();break;case"Backspace":0===o||T.value||function(e,t){var a=q();G(L.value,a[e-1]),N.selectedTagList.splice(e-1,1),F();var o=j.value[t[r.saveKey]];(r.allowCreate&&o||!r.allowCreate)&&!S.value&&N.localList.push(t),b.value="".concat(h,"px"),Z("remove")}(o,N.selectedTagList[o-1])}}},handlePaste:function(e){if(e.preventDefault(),S.value)return!1;var t=r.maxData,a=r.saveKey,l=r.displayKey,i=r.pasteFn,s=r.allowCreate,u=e.clipboardData.getData("text"),c=i?i(u):function(e){var t=[],a=e.split(";"),n=/^[a-zA-Z][a-zA-Z_]*/g;return a.forEach((function(e){var a=e.match(n);if(a){var l,i=a.join("");t.push((o(l={},r.saveKey,i),o(l,r.displayKey,i),l))}})),t}(u),d=c.map((function(e){return e[a]}));if(d.length){var p=q(),f=B(),v=N.localList.map((function(e){return e[a]}));if(d=d.filter((function(e){var t=(null==e?void 0:e.trim())&&!O.value.includes(e);return s?t:t&&v.includes(e)})),-1!==t){var g=N.selectedTagList.length;if(g<t){var y=t-g;d.length>y&&(d=n(d.slice(0,y)))}else d=[]}var m,T=s?d.map((function(e){var t,r=N.localList.find((function(t){return t[a]===e}));return null!=r?r:(o(t={},a,e),o(t,l,e),t)})):N.localList.filter((function(e){return d.includes(e[a])}));d.length&&((m=N.selectedTagList).splice.apply(m,[f,0].concat(n(T))),G(L.value,p[f]),b.value.style.width="".concat(h,"px"),N.localList=N.localList.filter((function(e){return!d.includes(e[a])})),Z("select"),F())}}})},render:function(){var e=this;return(0,l.createVNode)("div",{class:"bk-tag-input",ref:"bkTagSelectorRef",onClick:this.focusInputTrigger,onMouseenter:function(){return e.isHover=!0},onMouseleave:function(){return e.isHover=!1}},[(0,l.createVNode)(g(),(0,l.mergeProps)({theme:"light bk-tag-input-popover-content",trigger:"manual",placement:"bottom-start",arrow:!1},this.popoverProps),{default:function(){var t,r,a;return(0,l.createVNode)("div",{class:e.triggerClass},[(0,l.createVNode)("ul",{class:"tag-list",ref:"tagListRef",style:{marginLeft:"".concat(e.leftSpace,"px")}},[e.selectedTagList.map((function(t,r){var a={boundary:"window",theme:"light",distance:12,content:t[e.tooltipKey],disabled:!e.tooltipKey},o=e.localCollapseTags&&e.overflowTagIndex&&r>=e.overflowTagIndex;return(0,l.withDirectives)((0,l.createVNode)("li",{class:"tag-item",style:{display:o?"none":""},onClick:e.tagFocus},[(0,l.createVNode)(w,{node:t,tpl:e.tagTpl,displayKey:e.displayKey,hasTips:!!e.tooltipKey,tagOverflowTips:e.tagOverflowTips},null),e.showTagClose?(0,l.createVNode)(u.Error,{class:"remove-tag",onClick:e.handleTagRemove.bind(e,t,r)},null):null]),[[(0,l.resolveDirective)("bk-tooltips"),a]])})),(0,l.withDirectives)((0,l.createVNode)("li",{ref:"tagInputItemRef",id:"tagInputItem",class:"tag-input-item",role:"input"},[(0,l.withDirectives)((0,l.createVNode)("input",{type:"text",class:"tag-input",ref:"tagInputRef","onUpdate:modelValue":function(t){return e.curInputValue=t},onInput:e.handleInput,onFocus:e.handleFocus,onBlur:e.handleBlur,onKeydown:e.handleKeydown,onPaste:e.handlePaste},null),[[l.vModelText,e.curInputValue]])]),[[l.vShow,e.isEdit]]),!!e.overflowTagIndex&&e.localCollapseTags&&(0,l.createVNode)("li",{class:"tag-item"},[(0,l.createVNode)("div",{class:"tag"},[(0,l.createVNode)("span",{class:"text"},[(0,l.createTextVNode)("+"),e.selectedTagList.length-e.overflowTagIndex])])])]),(0,l.withDirectives)((0,l.createVNode)("p",{class:"placeholder"},[e.placeholder]),[[l.vShow,e.isShowPlaceholder]]),null!==(a=null===(r=null===(t=e.$slots)||void 0===t?void 0:t.suffix)||void 0===r?void 0:r.call(t))&&void 0!==a?a:e.isShowClear&&(0,l.createVNode)(u.Close,{class:"clear-icon",onClick:e.handleClear},null)])},content:function(){return(0,l.createVNode)("div",{class:"bk-selector-list"},[(0,l.createVNode)("ul",{ref:"selectorListRef",style:{"max-height":"".concat(e.contentMaxHeight,"px")},class:"outside-ul"},[e.renderList.map((function(t,r){return e.useGroup?(0,l.createVNode)("li",{class:"bk-selector-group-item"},[(0,l.createVNode)("span",{class:"group-name"},[t.name,(0,l.createTextVNode)(" ("),t.children.length,(0,l.createTextVNode)(")")]),(0,l.createVNode)("ul",{class:"bk-selector-group-list-item"},[t.children.map((function(t,r){return(0,l.createVNode)("li",{class:["bk-selector-list-item",{disabled:t.disabled},e.activeClass(t,r)],onClick:e.handleTagSelected.bind(e,t,"select")},[(0,l.createVNode)(m,{node:t,displayKey:e.displayKey,tpl:e.tpl,searchKey:e.searchKey,searchKeyword:e.curInputValue},null)])}))])]):(0,l.createVNode)("li",{class:["bk-selector-list-item",{disabled:t.disabled},e.activeClass(t,r)],onClick:e.handleTagSelected.bind(e,t,"select")},[(0,l.createVNode)(m,{node:t,displayKey:e.displayKey,tpl:e.tpl,searchKey:e.searchKey,searchKeyword:e.curInputValue},null)])})),e.isPageLoading?(0,l.createVNode)("li",{class:"bk-selector-list-item loading"},[(0,l.createVNode)(f(),{theme:"primary",size:p.BkLoadingSize.Small},null)]):null])])}})])}}),L=(0,e.withInstall)(x)})(),d})()));
@@ -236,22 +236,13 @@ declare const _default: import("vue").DefineComponent<{
236
236
  default: () => {};
237
237
  };
238
238
  collapseTags: {
239
- /**
240
- * 不显示条件:
241
- * 1. 设置不可清除
242
- * 2. 禁用时
243
- * 3. tag标签为空时
244
- * 4. 设置了showClearOnlyHover,且没有hover的时候
245
- */
246
- type: BooleanConstructor; /**
247
- * 不显示条件:
248
- * 1. 设置不可清除
249
- * 2. 禁用时
250
- * 3. tag标签为空时
251
- * 4. 设置了showClearOnlyHover,且没有hover的时候
252
- */
239
+ type: BooleanConstructor;
253
240
  default: boolean;
254
241
  };
242
+ tagOverflowTips: {
243
+ type: import("vue").PropType<Partial<import("../directives/src/tooltips").IOptions>>;
244
+ default: () => {};
245
+ };
255
246
  }, {
256
247
  isShowPlaceholder: import("vue").ComputedRef<boolean>;
257
248
  isShowClear: import("vue").ComputedRef<boolean>;
@@ -543,22 +534,13 @@ declare const _default: import("vue").DefineComponent<{
543
534
  default: () => {};
544
535
  };
545
536
  collapseTags: {
546
- /**
547
- * 不显示条件:
548
- * 1. 设置不可清除
549
- * 2. 禁用时
550
- * 3. tag标签为空时
551
- * 4. 设置了showClearOnlyHover,且没有hover的时候
552
- */
553
- type: BooleanConstructor; /**
554
- * 不显示条件:
555
- * 1. 设置不可清除
556
- * 2. 禁用时
557
- * 3. tag标签为空时
558
- * 4. 设置了showClearOnlyHover,且没有hover的时候
559
- */
537
+ type: BooleanConstructor;
560
538
  default: boolean;
561
539
  };
540
+ tagOverflowTips: {
541
+ type: import("vue").PropType<Partial<import("../directives/src/tooltips").IOptions>>;
542
+ default: () => {};
543
+ };
562
544
  }>> & {
563
545
  onFocus?: (...args: any[]) => any;
564
546
  onBlur?: (...args: any[]) => any;
@@ -595,5 +577,6 @@ declare const _default: import("vue").DefineComponent<{
595
577
  allowAutoMatch: boolean;
596
578
  leftSpace: number;
597
579
  popoverProps: {};
580
+ tagOverflowTips: {};
598
581
  }>;
599
582
  export default _default;
@@ -1,4 +1,5 @@
1
1
  import { ExtractPropTypes, PropType, VNode } from 'vue';
2
+ import { IOptions } from '../directives/src/tooltips';
2
3
  declare const tagProps: () => {
3
4
  modelValue: import("vue-types").VueTypeDef<string[]> & {
4
5
  default: () => string[];
@@ -231,6 +232,10 @@ declare const tagProps: () => {
231
232
  type: BooleanConstructor;
232
233
  default: boolean;
233
234
  };
235
+ tagOverflowTips: {
236
+ type: PropType<Partial<IOptions>>;
237
+ default: () => {};
238
+ };
234
239
  };
235
240
  export default tagProps;
236
241
  export declare type TagProps = Partial<ExtractPropTypes<ReturnType<typeof tagProps>>>;
@@ -1,3 +1,5 @@
1
+ import { PropType } from 'vue';
2
+ import { IOptions } from '../directives/src/tooltips';
1
3
  declare const _default: import("vue").DefineComponent<{
2
4
  node: import("vue-types").VueTypeValidableDef<{
3
5
  [key: string]: any;
@@ -12,7 +14,24 @@ declare const _default: import("vue").DefineComponent<{
12
14
  tpl: {
13
15
  type: FunctionConstructor;
14
16
  };
15
- }, unknown, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
17
+ hasTips: {
18
+ type: BooleanConstructor;
19
+ default: boolean;
20
+ };
21
+ tagOverflowTips: {
22
+ type: PropType<Partial<IOptions>>;
23
+ default: () => {};
24
+ };
25
+ }, {
26
+ overflowTips: import("vue").ComputedRef<{
27
+ boundary: string;
28
+ theme: string;
29
+ distance: number;
30
+ content: any;
31
+ disabled: boolean;
32
+ }>;
33
+ tagRef: import("vue").Ref<any>;
34
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
16
35
  node: import("vue-types").VueTypeValidableDef<{
17
36
  [key: string]: any;
18
37
  }> & {
@@ -26,10 +45,20 @@ declare const _default: import("vue").DefineComponent<{
26
45
  tpl: {
27
46
  type: FunctionConstructor;
28
47
  };
48
+ hasTips: {
49
+ type: BooleanConstructor;
50
+ default: boolean;
51
+ };
52
+ tagOverflowTips: {
53
+ type: PropType<Partial<IOptions>>;
54
+ default: () => {};
55
+ };
29
56
  }>>, {
30
57
  displayKey: string;
58
+ tagOverflowTips: {};
31
59
  node: {
32
60
  [key: string]: any;
33
61
  };
62
+ hasTips: boolean;
34
63
  }>;
35
64
  export default _default;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bkui-vue",
3
- "version": "0.0.1-beta.344",
3
+ "version": "0.0.1-beta.345",
4
4
  "workspaces": {
5
5
  "packages": [
6
6
  "packages/!(**.bak)*",