bkui-vue 1.0.3-beta.60 → 1.0.3-beta.60.scrollbar.2

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.
Files changed (216) hide show
  1. package/dist/index.cjs.js +52 -50
  2. package/dist/index.esm.js +14678 -13989
  3. package/dist/index.umd.js +52 -50
  4. package/dist/style.css +1 -1
  5. package/dist/style.variable.css +1 -1
  6. package/lib/affix/index.js +1 -1
  7. package/lib/alert/index.js +1 -1
  8. package/lib/animate-number/index.js +7 -8
  9. package/lib/badge/index.js +1 -1
  10. package/lib/breadcrumb/index.js +1 -1
  11. package/lib/button/index.js +1 -1
  12. package/lib/card/index.js +1 -1
  13. package/lib/cascader/index.js +38 -42
  14. package/lib/checkbox/index.js +6 -7
  15. package/lib/collapse/index.js +11 -12
  16. package/lib/collapse-transition/index.js +3 -4
  17. package/lib/color-picker/index.js +10 -13
  18. package/lib/components.d.ts +0 -1
  19. package/lib/components.js +1 -2
  20. package/lib/config-provider/index.js +1 -1
  21. package/lib/container/index.js +10 -12
  22. package/lib/date-picker/index.js +2 -2
  23. package/lib/dialog/dialog.css +9 -7
  24. package/lib/dialog/dialog.variable.css +9 -7
  25. package/lib/dialog/index.js +4 -4
  26. package/lib/directives/index.js +1 -1
  27. package/lib/divider/index.js +2 -3
  28. package/lib/dropdown/index.js +6 -8
  29. package/lib/exception/index.js +1 -1
  30. package/lib/fixed-navbar/index.js +2 -3
  31. package/lib/form/index.js +1 -1
  32. package/lib/icon/angle-double-down-line.js +1 -1
  33. package/lib/icon/angle-double-left-line.js +1 -1
  34. package/lib/icon/angle-double-left.js +1 -1
  35. package/lib/icon/angle-double-right-line.js +1 -1
  36. package/lib/icon/angle-double-right.js +1 -1
  37. package/lib/icon/angle-double-up-line.js +1 -1
  38. package/lib/icon/angle-down-fill.js +1 -1
  39. package/lib/icon/angle-down-line.js +1 -1
  40. package/lib/icon/angle-down.js +1 -1
  41. package/lib/icon/angle-left.js +1 -1
  42. package/lib/icon/angle-right.js +1 -1
  43. package/lib/icon/angle-up-fill.js +1 -1
  44. package/lib/icon/angle-up.js +1 -1
  45. package/lib/icon/archive-fill.js +1 -1
  46. package/lib/icon/arrows-left.js +1 -1
  47. package/lib/icon/arrows-right.js +1 -1
  48. package/lib/icon/assistant.js +1 -1
  49. package/lib/icon/audio-fill.js +1 -1
  50. package/lib/icon/bk.js +1 -1
  51. package/lib/icon/circle.js +1 -1
  52. package/lib/icon/close-line.js +1 -1
  53. package/lib/icon/close.js +1 -1
  54. package/lib/icon/code.js +1 -1
  55. package/lib/icon/cog-shape.js +1 -1
  56. package/lib/icon/collapse-left.js +1 -1
  57. package/lib/icon/copy-shape.js +1 -1
  58. package/lib/icon/copy.js +1 -1
  59. package/lib/icon/data-shape.js +1 -1
  60. package/lib/icon/del.js +1 -1
  61. package/lib/icon/doc-fill.js +1 -1
  62. package/lib/icon/done.js +1 -1
  63. package/lib/icon/down-shape.js +1 -1
  64. package/lib/icon/down-small.js +1 -1
  65. package/lib/icon/edit-line.js +1 -1
  66. package/lib/icon/ellipsis.js +1 -1
  67. package/lib/icon/enlarge-line.js +1 -1
  68. package/lib/icon/error.js +1 -1
  69. package/lib/icon/excel-fill.js +1 -1
  70. package/lib/icon/exclamation-circle-shape.js +1 -1
  71. package/lib/icon/eye.js +1 -1
  72. package/lib/icon/filliscreen-line.js +1 -1
  73. package/lib/icon/fix-line.js +1 -1
  74. package/lib/icon/fix-shape.js +1 -1
  75. package/lib/icon/folder-open.js +1 -1
  76. package/lib/icon/folder-shape-open.js +1 -1
  77. package/lib/icon/folder-shape.js +1 -1
  78. package/lib/icon/folder.js +1 -1
  79. package/lib/icon/funnel.js +1 -1
  80. package/lib/icon/grag-fill.js +1 -1
  81. package/lib/icon/help-document-fill.js +1 -1
  82. package/lib/icon/help-fill.js +1 -1
  83. package/lib/icon/help.js +1 -1
  84. package/lib/icon/image-fill.js +1 -1
  85. package/lib/icon/img-error.js +1 -1
  86. package/lib/icon/img-placehoulder.js +1 -1
  87. package/lib/icon/info-line.js +1 -1
  88. package/lib/icon/info.js +1 -1
  89. package/lib/icon/left-shape.js +1 -1
  90. package/lib/icon/left-turn-line.js +1 -1
  91. package/lib/icon/loading.js +1 -1
  92. package/lib/icon/narrow-line.js +1 -1
  93. package/lib/icon/original.js +1 -1
  94. package/lib/icon/pdf-fill.js +1 -1
  95. package/lib/icon/play-shape.js +1 -1
  96. package/lib/icon/plus.js +1 -1
  97. package/lib/icon/ppt-fill.js +1 -1
  98. package/lib/icon/qq.js +1 -1
  99. package/lib/icon/right-shape.js +1 -1
  100. package/lib/icon/right-turn-line.js +1 -1
  101. package/lib/icon/search.js +1 -1
  102. package/lib/icon/share.js +1 -1
  103. package/lib/icon/spinner.js +1 -1
  104. package/lib/icon/success.js +1 -1
  105. package/lib/icon/switcher-loading.js +1 -1
  106. package/lib/icon/text-all.js +1 -1
  107. package/lib/icon/text-file.js +1 -1
  108. package/lib/icon/text-fill.js +1 -1
  109. package/lib/icon/transfer.js +1 -1
  110. package/lib/icon/tree-application-shape.js +1 -1
  111. package/lib/icon/unfull-screen.js +1 -1
  112. package/lib/icon/unvisible.js +1 -1
  113. package/lib/icon/up-shape.js +1 -1
  114. package/lib/icon/upload.js +1 -1
  115. package/lib/icon/video-fill.js +1 -1
  116. package/lib/icon/warn.js +1 -1
  117. package/lib/icon/weixin-pro.js +1 -1
  118. package/lib/icon/weixin.js +1 -1
  119. package/lib/image/index.js +10 -11
  120. package/lib/info-box/index.js +4 -5
  121. package/lib/input/index.js +4 -4
  122. package/lib/link/index.js +2 -2
  123. package/lib/loading/index.js +11 -12
  124. package/lib/menu/index.js +2 -3
  125. package/lib/message/index.js +1 -1
  126. package/lib/modal/hooks.d.ts +1 -1
  127. package/lib/modal/index.d.ts +0 -3
  128. package/lib/modal/index.js +26 -25
  129. package/lib/modal/modal.css +9 -7
  130. package/lib/modal/modal.d.ts +0 -1
  131. package/lib/modal/modal.less +18 -11
  132. package/lib/modal/modal.variable.css +9 -7
  133. package/lib/navigation/index.js +7 -9
  134. package/lib/notify/index.js +1 -1
  135. package/lib/overflow-title/index.js +9 -10
  136. package/lib/pagination/index.js +1 -1
  137. package/lib/plugin-popover/index.js +26 -30
  138. package/lib/pop-confirm/index.js +4 -5
  139. package/lib/popover/index.js +26 -30
  140. package/lib/popover2/index.js +2 -2
  141. package/lib/process/index.js +4 -4
  142. package/lib/progress/index.js +5 -6
  143. package/lib/radio/index.js +6 -7
  144. package/lib/rate/index.js +1 -1
  145. package/lib/resize-layout/index.js +1 -1
  146. package/lib/search-select/index.d.ts +12 -327
  147. package/lib/search-select/index.js +350 -633
  148. package/lib/search-select/input.d.ts +2 -7
  149. package/lib/search-select/search-select.css +6 -20
  150. package/lib/search-select/search-select.d.ts +4 -109
  151. package/lib/search-select/search-select.less +12 -16
  152. package/lib/search-select/search-select.variable.css +6 -20
  153. package/lib/search-select/selected.d.ts +5 -107
  154. package/lib/search-select/utils.d.ts +1 -13
  155. package/lib/select/index.d.ts +9 -32
  156. package/lib/select/index.js +5 -8
  157. package/lib/select/select.d.ts +3 -14
  158. package/lib/shared/index.js +5 -8
  159. package/lib/sideslider/index.js +4 -4
  160. package/lib/sideslider/sideslider.css +5 -0
  161. package/lib/sideslider/sideslider.less +14 -8
  162. package/lib/sideslider/sideslider.variable.css +5 -0
  163. package/lib/slider/index.d.ts +3 -3
  164. package/lib/slider/index.js +19 -20
  165. package/lib/slider/slider.d.ts +1 -1
  166. package/lib/steps/index.d.ts +3 -3
  167. package/lib/steps/index.js +4 -4
  168. package/lib/steps/steps.d.ts +1 -1
  169. package/lib/swiper/index.js +1 -1
  170. package/lib/switcher/index.js +1 -1
  171. package/lib/tab/index.d.ts +4 -4
  172. package/lib/tab/index.js +3 -4
  173. package/lib/tab/tab.d.ts +1 -1
  174. package/lib/table/const.d.ts +1 -1
  175. package/lib/table/index.d.ts +9 -9
  176. package/lib/table/index.js +24 -26
  177. package/lib/table/plugins/use-fixed-column.d.ts +1 -1
  178. package/lib/table/table.css +96 -42
  179. package/lib/table/table.d.ts +3 -3
  180. package/lib/table/table.less +41 -56
  181. package/lib/table/table.variable.css +96 -42
  182. package/lib/table/use-render.d.ts +1 -1
  183. package/lib/table-column/index.js +2 -2
  184. package/lib/tag/index.js +1 -1
  185. package/lib/tag-input/index.js +3 -4
  186. package/lib/timeline/index.js +0 -1
  187. package/lib/transfer/index.d.ts +3 -3
  188. package/lib/transfer/transfer.d.ts +1 -1
  189. package/lib/tree/index.js +10 -12
  190. package/lib/tree/tree.css +75 -2
  191. package/lib/tree/tree.variable.css +75 -2
  192. package/lib/upload/index.d.ts +4 -16
  193. package/lib/upload/index.js +34 -25
  194. package/lib/upload/props.d.ts +0 -3
  195. package/lib/upload/upload-trigger.d.ts +0 -6
  196. package/lib/upload/upload.d.ts +1 -7
  197. package/lib/virtual-render/bk-scrollbar.css +74 -0
  198. package/lib/virtual-render/bk-scrollbar.d.ts +10 -0
  199. package/lib/virtual-render/bk-scrollbar.less +93 -0
  200. package/lib/virtual-render/bk-scrollbar.variable.css +203 -0
  201. package/lib/virtual-render/index.d.ts +4 -0
  202. package/lib/virtual-render/index.js +2542 -235
  203. package/lib/virtual-render/props.d.ts +7 -0
  204. package/lib/virtual-render/scrollbar-core/can-use-dom.d.ts +2 -0
  205. package/lib/virtual-render/scrollbar-core/helpers.d.ts +5 -0
  206. package/lib/virtual-render/scrollbar-core/index.d.ts +213 -0
  207. package/lib/virtual-render/scrollbar-core/mouse-wheel.d.ts +5 -0
  208. package/lib/virtual-render/scrollbar-core/scrollbar-width.d.ts +1 -0
  209. package/lib/virtual-render/use-fix-top.d.ts +2 -7
  210. package/lib/virtual-render/use-scrollbar.d.ts +23 -0
  211. package/lib/virtual-render/v-virtual-render.d.ts +2 -1
  212. package/lib/virtual-render/virtual-render.css +75 -2
  213. package/lib/virtual-render/virtual-render.d.ts +2 -0
  214. package/lib/virtual-render/virtual-render.less +2 -2
  215. package/lib/virtual-render/virtual-render.variable.css +75 -2
  216. package/package.json +5 -1
@@ -126,7 +126,7 @@ function _regeneratorRuntime() {
126
126
  function makeInvokeMethod(e, r, n) {
127
127
  var o = h;
128
128
  return function (i, a) {
129
- if (o === f) throw new Error("Generator is already running");
129
+ if (o === f) throw Error("Generator is already running");
130
130
  if (o === s) {
131
131
  if ("throw" === i) throw a;
132
132
  return {
@@ -268,7 +268,7 @@ function _regeneratorRuntime() {
268
268
  } else if (c) {
269
269
  if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);
270
270
  } else {
271
- if (!u) throw new Error("try statement without catch or finally");
271
+ if (!u) throw Error("try statement without catch or finally");
272
272
  if (this.prev < i.finallyLoc) return handle(i.finallyLoc);
273
273
  }
274
274
  }
@@ -308,7 +308,7 @@ function _regeneratorRuntime() {
308
308
  return o;
309
309
  }
310
310
  }
311
- throw new Error("illegal catch attempt");
311
+ throw Error("illegal catch attempt");
312
312
  },
313
313
  delegateYield: function delegateYield(e, r, n) {
314
314
  return this.delegate = {
@@ -459,7 +459,7 @@ function toPrimitive(t, r) {
459
459
 
460
460
  function toPropertyKey(t) {
461
461
  var i = toPrimitive(t, "string");
462
- return "symbol" == _typeof(i) ? i : String(i);
462
+ return "symbol" == _typeof(i) ? i : i + "";
463
463
  }
464
464
  ;// CONCATENATED MODULE: ../../node_modules/@babel/runtime/helpers/esm/defineProperty.js
465
465
 
@@ -480,7 +480,7 @@ function _defineProperty(obj, key, value) {
480
480
  ;// CONCATENATED MODULE: external "vue"
481
481
  var external_vue_x = y => { var x = {}; __webpack_require__.d(x, y); return x; }
482
482
  var external_vue_y = x => () => x
483
- const external_vue_namespaceObject = external_vue_x({ ["Fragment"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.Fragment, ["computed"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.computed, ["createTextVNode"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.createTextVNode, ["createVNode"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.createVNode, ["defineComponent"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.defineComponent, ["inject"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.inject, ["nextTick"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.nextTick, ["onBeforeUnmount"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.onBeforeUnmount, ["onMounted"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.onMounted, ["provide"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.provide, ["ref"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.ref, ["resolveDirective"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.resolveDirective, ["shallowRef"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.shallowRef, ["watch"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.watch, ["withDirectives"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.withDirectives });
483
+ const external_vue_namespaceObject = external_vue_x({ ["Fragment"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.Fragment, ["computed"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.computed, ["createTextVNode"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.createTextVNode, ["createVNode"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.createVNode, ["defineComponent"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.defineComponent, ["inject"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.inject, ["onBeforeUnmount"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.onBeforeUnmount, ["onMounted"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.onMounted, ["provide"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.provide, ["ref"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.ref, ["resolveDirective"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.resolveDirective, ["shallowRef"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.shallowRef, ["watch"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.watch, ["watchEffect"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.watchEffect, ["withDirectives"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.withDirectives });
484
484
  ;// CONCATENATED MODULE: ../../node_modules/resize-detector/esm/index.js
485
485
  var raf = null;
486
486
  function requestAnimationFrame (callback) {
@@ -809,66 +809,6 @@ const directives_namespaceObject = directives_x({ ["clickoutside"]: () => __WEBP
809
809
  var icon_x = y => { var x = {}; __webpack_require__.d(x, y); return x; }
810
810
  var icon_y = x => () => x
811
811
  const icon_namespaceObject = icon_x({ ["Close"]: () => __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_icon_a97c79c3__.Close, ["Error"]: () => __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_icon_a97c79c3__.Error, ["ExclamationCircleShape"]: () => __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_icon_a97c79c3__.ExclamationCircleShape, ["Search"]: () => __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_icon_a97c79c3__.Search });
812
- ;// CONCATENATED MODULE: ../../node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js
813
- function _arrayWithHoles(arr) {
814
- if (Array.isArray(arr)) return arr;
815
- }
816
- ;// CONCATENATED MODULE: ../../node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js
817
- function _iterableToArrayLimit(r, l) {
818
- var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
819
- if (null != t) {
820
- var e,
821
- n,
822
- i,
823
- u,
824
- a = [],
825
- f = !0,
826
- o = !1;
827
- try {
828
- if (i = (t = t.call(r)).next, 0 === l) {
829
- if (Object(t) !== t) return;
830
- f = !1;
831
- } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);
832
- } catch (r) {
833
- o = !0, n = r;
834
- } finally {
835
- try {
836
- if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return;
837
- } finally {
838
- if (o) throw n;
839
- }
840
- }
841
- return a;
842
- }
843
- }
844
- ;// CONCATENATED MODULE: ../../node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js
845
- function _arrayLikeToArray(arr, len) {
846
- if (len == null || len > arr.length) len = arr.length;
847
- for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
848
- return arr2;
849
- }
850
- ;// CONCATENATED MODULE: ../../node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js
851
-
852
- function _unsupportedIterableToArray(o, minLen) {
853
- if (!o) return;
854
- if (typeof o === "string") return _arrayLikeToArray(o, minLen);
855
- var n = Object.prototype.toString.call(o).slice(8, -1);
856
- if (n === "Object" && o.constructor) n = o.constructor.name;
857
- if (n === "Map" || n === "Set") return Array.from(o);
858
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
859
- }
860
- ;// CONCATENATED MODULE: ../../node_modules/@babel/runtime/helpers/esm/nonIterableRest.js
861
- function _nonIterableRest() {
862
- throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
863
- }
864
- ;// CONCATENATED MODULE: ../../node_modules/@babel/runtime/helpers/esm/slicedToArray.js
865
-
866
-
867
-
868
-
869
- function _slicedToArray(arr, i) {
870
- return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();
871
- }
872
812
  ;// CONCATENATED MODULE: ../../node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js
873
813
  function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
874
814
  try {
@@ -927,27 +867,6 @@ const radio_namespaceObject = radio_x({ ["default"]: () => __WEBPACK_EXTERNAL_MO
927
867
  var radio_less_x = y => { var x = {}; __webpack_require__.d(x, y); return x; }
928
868
  var radio_less_y = x => () => x
929
869
  const radio_less_namespaceObject = radio_less_x({ });
930
- ;// CONCATENATED MODULE: ../../node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js
931
-
932
- function _arrayWithoutHoles(arr) {
933
- if (Array.isArray(arr)) return _arrayLikeToArray(arr);
934
- }
935
- ;// CONCATENATED MODULE: ../../node_modules/@babel/runtime/helpers/esm/iterableToArray.js
936
- function _iterableToArray(iter) {
937
- if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
938
- }
939
- ;// CONCATENATED MODULE: ../../node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js
940
- function _nonIterableSpread() {
941
- throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
942
- }
943
- ;// CONCATENATED MODULE: ../../node_modules/@babel/runtime/helpers/esm/toConsumableArray.js
944
-
945
-
946
-
947
-
948
- function _toConsumableArray(arr) {
949
- return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();
950
- }
951
870
  ;// CONCATENATED MODULE: ../../node_modules/@babel/runtime/helpers/esm/classCallCheck.js
952
871
  function _classCallCheck(instance, Constructor) {
953
872
  if (!(instance instanceof Constructor)) {
@@ -977,7 +896,6 @@ function _createClass(Constructor, protoProps, staticProps) {
977
896
 
978
897
 
979
898
 
980
-
981
899
  /*
982
900
  * Tencent is pleased to support the open source community by making
983
901
  * 蓝鲸智云PaaS平台社区版 (BlueKing PaaS Community Edition) available.
@@ -1004,7 +922,6 @@ function _createClass(Constructor, protoProps, staticProps) {
1004
922
  * IN THE SOFTWARE.
1005
923
  */
1006
924
 
1007
-
1008
925
  /**
1009
926
  * @description: 获取menu list方法
1010
927
  * @param {ISearchItem} item 已选择的key字段 为空则代表当前并未选择key字段
@@ -1016,11 +933,6 @@ var ValueBehavior;
1016
933
  ValueBehavior["ALL"] = "all";
1017
934
  ValueBehavior["NEEDKEY"] = "need-key";
1018
935
  })(ValueBehavior || (ValueBehavior = {}));
1019
- var DeleteBehavior;
1020
- (function (DeleteBehavior) {
1021
- DeleteBehavior["CHAR"] = "delete-char";
1022
- DeleteBehavior["VALUE"] = "delete-value";
1023
- })(DeleteBehavior || (DeleteBehavior = {}));
1024
936
  var SEARCH_SLECT_PROVIDER_KEY = Symbol('SEARCH_SLECT_PROVIDER_KEY');
1025
937
  var useSearchSelectProvider = function useSearchSelectProvider(data) {
1026
938
  (0,external_vue_namespaceObject.provide)(SEARCH_SLECT_PROVIDER_KEY, data);
@@ -1033,8 +945,6 @@ var SearchInputMode;
1033
945
  SearchInputMode["DEFAULT"] = "default";
1034
946
  SearchInputMode["EDIT"] = "edit";
1035
947
  })(SearchInputMode || (SearchInputMode = {}));
1036
- var ValueSplitRegex = /(\||,|、|\/|\r\n|\n)/gm;
1037
- var ValueSplitTestRegex = /^(\||,|、|\/|\r\n|\n)$/;
1038
948
  var SearchLogical;
1039
949
  (function (SearchLogical) {
1040
950
  SearchLogical["AND"] = "&";
@@ -1045,15 +955,13 @@ var SelectedItem = /*#__PURE__*/function () {
1045
955
  var type = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'default';
1046
956
  _classCallCheck(this, SelectedItem);
1047
957
  _defineProperty(this, "values", []);
1048
- _defineProperty(this, "nameRenderkey", (0,shared_namespaceObject.random)(4));
1049
958
  this.searchItem = searchItem;
1050
959
  this.type = type;
1051
960
  this.id = searchItem.id;
1052
961
  this.name = searchItem.name;
1053
962
  this.logical = searchItem.logical || SearchLogical.OR;
1054
- this.type = type;
1055
963
  }
1056
- _createClass(SelectedItem, [{
964
+ return _createClass(SelectedItem, [{
1057
965
  key: "multiple",
1058
966
  get: function get() {
1059
967
  return !!this.searchItem.multiple;
@@ -1116,7 +1024,6 @@ var SelectedItem = /*#__PURE__*/function () {
1116
1024
  }, {
1117
1025
  key: "addValue",
1118
1026
  value: function addValue(item) {
1119
- this.nameRenderkey = (0,shared_namespaceObject.random)(4);
1120
1027
  if (this.multiple) {
1121
1028
  var index = this.values.findIndex(function (val) {
1122
1029
  return val.id === item.id;
@@ -1130,69 +1037,6 @@ var SelectedItem = /*#__PURE__*/function () {
1130
1037
  }
1131
1038
  this.values = [item];
1132
1039
  }
1133
- }, {
1134
- key: "str2Values",
1135
- value: function str2Values(str) {
1136
- var _this = this;
1137
- var list = str === null || str === void 0 ? void 0 : str.split(this.logical).map(function (v) {
1138
- return v.trim();
1139
- }).filter(function (v) {
1140
- return v;
1141
- });
1142
- if (!(list !== null && list !== void 0 && list.length)) return [];
1143
- var findChildByName = function findChildByName(name) {
1144
- return _this.children.find(function (item) {
1145
- return item.name === name;
1146
- });
1147
- };
1148
- if (!this.multiple) {
1149
- var val = list.join(" ".concat(this.logical, " ")).trim();
1150
- var item = findChildByName(val);
1151
- return [{
1152
- id: item ? item.id : val,
1153
- name: item ? item.name : val,
1154
- disabled: !!(item !== null && item !== void 0 && item.disabled)
1155
- }];
1156
- }
1157
- // 对于多选情况,处理整个列表
1158
- return list.map(function (val) {
1159
- var existing = _this.values.find(function (item) {
1160
- return item.name === val;
1161
- });
1162
- if (existing) return existing;
1163
- var item = findChildByName(val);
1164
- return {
1165
- id: item ? item.id : val,
1166
- name: item ? item.name : val,
1167
- disabled: !!(item !== null && item !== void 0 && item.disabled)
1168
- };
1169
- });
1170
- }
1171
- }, {
1172
- key: "addValues",
1173
- value: function addValues(str) {
1174
- var mergeValues = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
1175
- var valuesFromStr = str.split(ValueSplitRegex).filter(function (v) {
1176
- return v.trim() && !ValueSplitTestRegex.test(v);
1177
- });
1178
- var currentValues = mergeValues ? this.values.map(function (item) {
1179
- return item.name;
1180
- }) : [];
1181
- var combinedValues = [].concat(_toConsumableArray(valuesFromStr), _toConsumableArray(currentValues));
1182
- var logicalString = combinedValues.filter(function (v) {
1183
- return v.trim();
1184
- }).join(this.logical);
1185
- this.values = this.str2Values(logicalString);
1186
- }
1187
- }, {
1188
- key: "getValue",
1189
- value: function getValue(str) {
1190
- return this.values.find(function (item) {
1191
- return item.id === str;
1192
- }) || this.values.find(function (item) {
1193
- return item.name === str;
1194
- });
1195
- }
1196
1040
  }, {
1197
1041
  key: "toValue",
1198
1042
  value: function toValue() {
@@ -1230,7 +1074,6 @@ var SelectedItem = /*#__PURE__*/function () {
1230
1074
  });
1231
1075
  }
1232
1076
  }]);
1233
- return SelectedItem;
1234
1077
  }();
1235
1078
  ;// CONCATENATED MODULE: ../../packages/search-select/src/menu.tsx
1236
1079
 
@@ -1263,10 +1106,9 @@ var SelectedItem = /*#__PURE__*/function () {
1263
1106
 
1264
1107
 
1265
1108
 
1266
-
1267
1109
  // import { Done } from '@bkui-vue/icon';
1268
1110
 
1269
- /* harmony default export */ const menu = ((0,external_vue_namespaceObject.defineComponent)({
1111
+ /* harmony default export */ const menu = (defineComponent({
1270
1112
  name: 'SearchSelectMenu',
1271
1113
  props: {
1272
1114
  list: {
@@ -1311,7 +1153,7 @@ var SelectedItem = /*#__PURE__*/function () {
1311
1153
  var t = (0,config_provider_namespaceObject.useLocale)('searchSelect');
1312
1154
  var _usePrefix = (0,config_provider_namespaceObject.usePrefix)(),
1313
1155
  resolveClassName = _usePrefix.resolveClassName;
1314
- var localFooterBtns = (0,external_vue_namespaceObject.computed)(function () {
1156
+ var localFooterBtns = computed(function () {
1315
1157
  if (props.footerBtns === undefined || props.footerBtns.length === 0) {
1316
1158
  return [{
1317
1159
  id: 'confirm',
@@ -1334,7 +1176,7 @@ var SelectedItem = /*#__PURE__*/function () {
1334
1176
  function handleClickFooterBtn(item) {
1335
1177
  emit('footerClick', item);
1336
1178
  }
1337
- var filterList = (0,external_vue_namespaceObject.computed)(function () {
1179
+ var filterList = computed(function () {
1338
1180
  var _props$list, _props$keyword;
1339
1181
  if (!((_props$list = props.list) !== null && _props$list !== void 0 && _props$list.length)) return [];
1340
1182
  if (!((_props$keyword = props.keyword) !== null && _props$keyword !== void 0 && _props$keyword.length)) return props.list;
@@ -1471,10 +1313,9 @@ var SelectedItem = /*#__PURE__*/function () {
1471
1313
 
1472
1314
 
1473
1315
 
1474
-
1475
-
1476
1316
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
1477
1317
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
1318
+
1478
1319
  /*
1479
1320
  * Tencent is pleased to support the open source community by making
1480
1321
  * 蓝鲸智云PaaS平台社区版 (BlueKing PaaS Community Edition) available.
@@ -1560,8 +1401,7 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
1560
1401
  var menuList = (0,external_vue_namespaceObject.ref)([]);
1561
1402
  var _useSearchSelectInjec = useSearchSelectInject(),
1562
1403
  editKey = _useSearchSelectInjec.editKey,
1563
- onValidate = _useSearchSelectInjec.onValidate,
1564
- searchData = _useSearchSelectInjec.searchData;
1404
+ onValidate = _useSearchSelectInjec.onValidate;
1565
1405
  var valueLoagic = (0,external_vue_namespaceObject.computed)(function () {
1566
1406
  var _usingItem$value;
1567
1407
  return ((_usingItem$value = usingItem.value) === null || _usingItem$value === void 0 ? void 0 : _usingItem$value.logical) || SearchLogical.OR;
@@ -1572,25 +1412,26 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
1572
1412
  }
1573
1413
  });
1574
1414
  // effects
1575
- // watchEffect(
1576
- // () => {
1577
- // if (!keyword.value) {
1578
- // setInputText();
1579
- // }
1580
- // },
1581
- // { flush: 'pre' },
1582
- // );
1415
+ (0,external_vue_namespaceObject.watchEffect)(function () {
1416
+ if (!keyword.value) {
1417
+ setInputText();
1418
+ }
1419
+ }, {
1420
+ flush: 'pre'
1421
+ });
1583
1422
  (0,external_vue_namespaceObject.watch)([menuList, showPopover], function () {
1584
1423
  var _menuList$value;
1585
- var shouldBindEvent = showPopover.value && ((_menuList$value = menuList.value) === null || _menuList$value === void 0 ? void 0 : _menuList$value.some(function (item) {
1424
+ if ((_menuList$value = menuList.value) !== null && _menuList$value !== void 0 && _menuList$value.some(function (item) {
1586
1425
  return !item.disabled;
1587
- }));
1588
- if (shouldBindEvent) {
1426
+ }) && showPopover.value) {
1589
1427
  if (!isBindEvent) {
1590
- var _menuList$value$find;
1591
- menuHoverId.value = props.valueBehavior === ValueBehavior.NEEDKEY ? ((_menuList$value$find = menuList.value.find(function (item) {
1592
- return !item.disabled;
1593
- })) === null || _menuList$value$find === void 0 ? void 0 : _menuList$value$find.id) || '' : '';
1428
+ if (props.valueBehavior === ValueBehavior.NEEDKEY) {
1429
+ menuHoverId.value = menuList.value.find(function (item) {
1430
+ return !item.disabled;
1431
+ }).id;
1432
+ } else {
1433
+ menuHoverId.value = '';
1434
+ }
1594
1435
  isBindEvent = true;
1595
1436
  document.addEventListener('keydown', handleDocumentKeydown);
1596
1437
  }
@@ -1620,91 +1461,84 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
1620
1461
  e.preventDefault();
1621
1462
  (_inputRef$value = inputRef.value) === null || _inputRef$value === void 0 || _inputRef$value.blur();
1622
1463
  var len = menuList.value.length;
1464
+ var i = len;
1623
1465
  var index = menuList.value.findIndex(function (set) {
1624
1466
  return set.id === menuHoverId.value;
1625
1467
  });
1626
- for (var tries = 0; tries < len; tries++) {
1627
- index = (index + (e.code === 'ArrowDown' ? 1 : -1) + len) % len;
1468
+ while (i >= 0) {
1469
+ index = e.code === 'ArrowDown' ? index + 1 : index - 1;
1470
+ // eslint-disable-next-line no-nested-ternary
1471
+ index = index > len - 1 ? 0 : index < 0 ? len - 1 : index;
1628
1472
  var item = menuList.value[index];
1629
1473
  if (item && !item.disabled) {
1474
+ i = -1;
1630
1475
  var dom = document.getElementById(item.id);
1631
1476
  dom === null || dom === void 0 || dom.focus();
1632
1477
  menuHoverId.value = item.id;
1633
- break;
1478
+ return;
1634
1479
  }
1480
+ i -= 1;
1635
1481
  }
1636
1482
  }
1637
1483
  function documentEnterEvent(e) {
1638
- if (!isBindEvent) return;
1639
- e.preventDefault();
1640
- var item = menuList.value.find(function (item) {
1641
- return item.id === menuHoverId.value;
1642
- });
1643
- item && handleSelectItem(item);
1484
+ if (isBindEvent) {
1485
+ e.preventDefault();
1486
+ var item = menuList.value.find(function (item) {
1487
+ return item.id === menuHoverId.value;
1488
+ });
1489
+ item && handleSelectItem(item);
1490
+ }
1644
1491
  }
1645
1492
  function handleClickOutside(e) {
1646
1493
  var _popoverRef$value, _props$clickOutside;
1647
1494
  if (!((_popoverRef$value = popoverRef.value) !== null && _popoverRef$value !== void 0 && _popoverRef$value.contains(e.target)) && (_props$clickOutside = props.clickOutside) !== null && _props$clickOutside !== void 0 && _props$clickOutside.call(props, e.target, popoverRef.value)) {
1648
- if (props.mode === SearchInputMode.EDIT || usingItem.value) {
1649
- usingItem.value && handleKeyEnter().then(function (v) {
1650
- return v && clearInput();
1651
- });
1652
- if (!usingItem.value) {
1653
- emit('focus', false);
1654
- }
1495
+ var _usingItem$value2, _usingItem$value3;
1496
+ if ((_usingItem$value2 = usingItem.value) !== null && _usingItem$value2 !== void 0 && (_usingItem$value2 = _usingItem$value2.values) !== null && _usingItem$value2 !== void 0 && _usingItem$value2.length && (_usingItem$value3 = usingItem.value) !== null && _usingItem$value3 !== void 0 && _usingItem$value3.multiple) {
1497
+ keyword.value = '';
1498
+ handleKeyEnter();
1655
1499
  return;
1656
1500
  }
1657
- isFocus.value = false;
1658
1501
  showPopover.value = false;
1502
+ isFocus.value = false;
1659
1503
  emit('focus', isFocus.value);
1660
1504
  }
1661
1505
  }
1662
- function handleInputFocus() {
1663
- showNoSelectValueError.value = false;
1664
- if (props.mode === SearchInputMode.EDIT && usingItem.value && !isFocus.value) {
1665
- var nodeList = Array.from(inputRef.value.querySelectorAll("[data-type=\"".concat(usingItem.value.values.length ? 'value' : usingItem.value.type, "\"]")));
1666
- if (!nodeList.length) return;
1667
- var range = document.createRange();
1668
- var selection = window.getSelection();
1669
- range.selectNodeContents(nodeList.at(-1));
1670
- selection === null || selection === void 0 || selection.removeAllRanges();
1671
- selection.addRange(range); // 注意这里会触发focu事件
1672
- setInputFocus(true, false);
1673
- return;
1674
- }
1675
- setMenuList();
1676
- setInputFocus(false, !isFocus.value);
1677
- }
1678
- function handleInputPaste(event) {
1679
- event.preventDefault();
1680
- var formattedText = event.clipboardData.getData('text').trim();
1681
- if (!usingItem.value) {
1682
- var formateItem = str2SeletedItem(formattedText);
1683
- if (formateItem) {
1684
- usingItem.value = formateItem;
1685
- setInputFocus(true, true);
1506
+ function handleInputFocus(e) {
1507
+ setInputFocus();
1508
+ e && setMenuList();
1509
+ }
1510
+ function handleInputChange(event) {
1511
+ var _usingItem$value5, _usingItem$value8;
1512
+ clearInput();
1513
+ var text = event.target.innerText;
1514
+ if (/(\r|\n)/gm.test(text) || /\s{2}/gm.test(text)) {
1515
+ var _usingItem$value4;
1516
+ event.preventDefault();
1517
+ text = text.replace(/(\r|\n)/gm, " ".concat(valueLoagic.value, " ")).replace(/\s{2}/gm, '');
1518
+ inputRef.value.innerText = text;
1519
+ setInputFocus();
1520
+ keyword.value = text.replace(((_usingItem$value4 = usingItem.value) === null || _usingItem$value4 === void 0 ? void 0 : _usingItem$value4.keyInnerText) || '', '').trim();
1521
+ debounceSetMenuList();
1522
+ } else if (!keyword.value && text.length < (((_usingItem$value5 = usingItem.value) === null || _usingItem$value5 === void 0 || (_usingItem$value5 = _usingItem$value5.inputInnerText) === null || _usingItem$value5 === void 0 ? void 0 : _usingItem$value5.length) || 1)) {
1523
+ var _usingItem$value6, _usingItem$value7, _usingItem$value$valu, _text;
1524
+ var outerText = text.replace("\xA0", " ").replace(((_usingItem$value6 = usingItem.value) === null || _usingItem$value6 === void 0 ? void 0 : _usingItem$value6.keyInnerText.replace("\xA0", " ").trim()) || '', '').trim();
1525
+ var hasKeyword = text && ((_usingItem$value7 = usingItem.value) === null || _usingItem$value7 === void 0 ? void 0 : _usingItem$value7.keyInnerText) && text.replace("\xA0", " ").includes(usingItem.value.keyInnerText.replace("\xA0", " ").trim());
1526
+ if (hasKeyword && outerText && (_usingItem$value$valu = usingItem.value.values) !== null && _usingItem$value$valu !== void 0 && _usingItem$value$valu.length) {
1527
+ keyword.value = outerText;
1528
+ debounceSetMenuList();
1686
1529
  return;
1687
1530
  }
1688
- keyword.value = formattedText.split(ValueSplitRegex).filter(function (v) {
1689
- return v.trim() && !ValueSplitTestRegex.test(v);
1690
- }).join(" ".concat(valueLoagic.value, " "));
1691
- inputRef.value.innerText = keyword.value;
1692
- setInputFocus();
1531
+ if (outerText || !((_text = text) !== null && _text !== void 0 && _text.length)) {
1532
+ usingItem.value = null;
1533
+ }
1534
+ keyword.value = outerText ? text : '';
1693
1535
  debounceSetMenuList();
1694
- return;
1695
- }
1696
- usingItem.value.addValues(formattedText);
1697
- debounceSetMenuList();
1698
- }
1699
- function handleInputChange(event) {
1700
- var text = event.target.innerText.trim();
1701
- if (!usingItem.value) {
1702
- keyword.value = text;
1536
+ } else if (!((_usingItem$value8 = usingItem.value) !== null && _usingItem$value8 !== void 0 && (_usingItem$value8 = _usingItem$value8.values) !== null && _usingItem$value8 !== void 0 && _usingItem$value8.length)) {
1537
+ var _usingItem$value9;
1538
+ keyword.value = text.replace("\xA0", " ").replace(((_usingItem$value9 = usingItem.value) === null || _usingItem$value9 === void 0 ? void 0 : _usingItem$value9.keyInnerText.replace("\xA0", " ")) || '', '').trim();
1539
+ setInputFocus();
1703
1540
  debounceSetMenuList();
1704
- return;
1705
1541
  }
1706
- keyword.value = usingItem.value.isSpecialType() ? text : text.replace(usingItem.value.name, '').replace(':', '').trim();
1707
- debounceSetMenuList();
1708
1542
  }
1709
1543
  function handleInputKeyup(event) {
1710
1544
  switch (event.code) {
@@ -1713,12 +1547,10 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
1713
1547
  if (props.valueBehavior === ValueBehavior.NEEDKEY && menuList.value.some(function (item) {
1714
1548
  return item.id === menuHoverId.value;
1715
1549
  })) return;
1716
- handleKeyEnter(event).then(function (v) {
1717
- return v && clearInput();
1718
- });
1550
+ handleKeyEnter(event);
1719
1551
  break;
1720
1552
  case 'Backspace':
1721
- handleKeyBackspace(event);
1553
+ handleKeyBackspace();
1722
1554
  default:
1723
1555
  showNoSelectValueError.value = false;
1724
1556
  break;
@@ -1729,20 +1561,19 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
1729
1561
  }
1730
1562
  function _handleKeyEnter() {
1731
1563
  _handleKeyEnter = _asyncToGenerator( /*#__PURE__*/regenerator_default().mark(function _callee(event) {
1732
- var _usingItem$value4, _usingItem$value5;
1733
- var isValid;
1564
+ var value, _res, values, _keyword$value, valueList, _res2, _value, _res3, _value2, _res4, res;
1734
1565
  return regenerator_default().wrap(function _callee$(_context) {
1735
1566
  while (1) switch (_context.prev = _context.next) {
1736
1567
  case 0:
1737
1568
  event === null || event === void 0 || event.preventDefault();
1738
- // 异步延迟解决确保响应时机问题
1569
+ // resolve 中文输入时直接按下enter的错误表现
1739
1570
  _context.next = 3;
1740
- return new Promise(function (resolve) {
1741
- return setTimeout(resolve, 0);
1571
+ return new Promise(function (r) {
1572
+ return setTimeout(r, 0);
1742
1573
  });
1743
1574
  case 3:
1744
1575
  if (usingItem.value) {
1745
- _context.next = 9;
1576
+ _context.next = 16;
1746
1577
  break;
1747
1578
  }
1748
1579
  if (!(!keyword.value || props.valueBehavior === ValueBehavior.NEEDKEY)) {
@@ -1751,40 +1582,123 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
1751
1582
  }
1752
1583
  return _context.abrupt("return");
1753
1584
  case 6:
1754
- _context.next = 8;
1755
- return enterNewItemSelected();
1756
- case 8:
1757
- return _context.abrupt("return", _context.sent);
1585
+ value = {
1586
+ id: keyword.value,
1587
+ name: keyword.value
1588
+ };
1589
+ _context.next = 9;
1590
+ return validateUsingItemValues(value);
1758
1591
  case 9:
1759
- if (!keyword.value) {
1760
- _context.next = 13;
1592
+ _res = _context.sent;
1593
+ if (_res) {
1594
+ _context.next = 12;
1761
1595
  break;
1762
1596
  }
1763
- _context.next = 12;
1764
- return enterExistingItemSelected();
1597
+ return _context.abrupt("return");
1765
1598
  case 12:
1766
- return _context.abrupt("return", _context.sent);
1767
- case 13:
1768
- if (!(!((_usingItem$value4 = usingItem.value) !== null && _usingItem$value4 !== void 0 && _usingItem$value4.isSpecialType()) && ((_usingItem$value5 = usingItem.value) === null || _usingItem$value5 === void 0 ? void 0 : _usingItem$value5.values.length) < 1)) {
1769
- _context.next = 16;
1599
+ emit('add', new SelectedItem(value, 'text'));
1600
+ keyword.value = '';
1601
+ setMenuList();
1602
+ return _context.abrupt("return");
1603
+ case 16:
1604
+ values = usingItem.value.values;
1605
+ if (values !== null && values !== void 0 && values.length) {
1606
+ _context.next = 43;
1770
1607
  break;
1771
1608
  }
1772
- showNoSelectValueError.value = !showNoSelectValueError.value;
1773
- return _context.abrupt("return", false);
1774
- case 16:
1775
- _context.next = 18;
1609
+ if (!((_keyword$value = keyword.value) !== null && _keyword$value !== void 0 && _keyword$value.length)) {
1610
+ _context.next = 41;
1611
+ break;
1612
+ }
1613
+ if (!keyword.value.includes(valueLoagic.value)) {
1614
+ _context.next = 29;
1615
+ break;
1616
+ }
1617
+ valueList = keyword.value.split(valueLoagic.value);
1618
+ _context.next = 23;
1619
+ return validateUsingItemValues({
1620
+ id: keyword.value,
1621
+ name: keyword.value
1622
+ });
1623
+ case 23:
1624
+ _res2 = _context.sent;
1625
+ if (_res2) {
1626
+ _context.next = 26;
1627
+ break;
1628
+ }
1629
+ return _context.abrupt("return");
1630
+ case 26:
1631
+ valueList.forEach(function (v) {
1632
+ return usingItem.value.addValue({
1633
+ id: v,
1634
+ name: v
1635
+ });
1636
+ });
1637
+ _context.next = 36;
1638
+ break;
1639
+ case 29:
1640
+ _value = {
1641
+ id: keyword.value,
1642
+ name: keyword.value
1643
+ };
1644
+ _context.next = 32;
1645
+ return validateUsingItemValues(_value);
1646
+ case 32:
1647
+ _res3 = _context.sent;
1648
+ if (_res3) {
1649
+ _context.next = 35;
1650
+ break;
1651
+ }
1652
+ return _context.abrupt("return");
1653
+ case 35:
1654
+ usingItem.value.addValue(_value);
1655
+ case 36:
1656
+ emit('add', usingItem.value);
1657
+ keyword.value = '';
1658
+ usingItem.value = null;
1659
+ setInputFocus(true);
1660
+ return _context.abrupt("return");
1661
+ case 41:
1662
+ showNoSelectValueError.value = true;
1663
+ return _context.abrupt("return");
1664
+ case 43:
1665
+ if (!keyword.value) {
1666
+ _context.next = 56;
1667
+ break;
1668
+ }
1669
+ _value2 = {
1670
+ id: keyword.value,
1671
+ name: keyword.value
1672
+ };
1673
+ _context.next = 47;
1674
+ return validateUsingItemValues(_value2);
1675
+ case 47:
1676
+ _res4 = _context.sent;
1677
+ if (_res4) {
1678
+ _context.next = 50;
1679
+ break;
1680
+ }
1681
+ return _context.abrupt("return");
1682
+ case 50:
1683
+ usingItem.value.addValue(_value2);
1684
+ emit('add', usingItem.value);
1685
+ keyword.value = '';
1686
+ usingItem.value = null;
1687
+ setInputFocus(true);
1688
+ return _context.abrupt("return");
1689
+ case 56:
1690
+ _context.next = 58;
1776
1691
  return validateUsingItemValues();
1777
- case 18:
1778
- isValid = _context.sent;
1779
- if (isValid) {
1780
- _context.next = 21;
1692
+ case 58:
1693
+ res = _context.sent;
1694
+ if (res) {
1695
+ _context.next = 61;
1781
1696
  break;
1782
1697
  }
1783
- return _context.abrupt("return", false);
1784
- case 21:
1698
+ return _context.abrupt("return");
1699
+ case 61:
1785
1700
  setSelectedItem();
1786
- return _context.abrupt("return", false);
1787
- case 23:
1701
+ case 62:
1788
1702
  case "end":
1789
1703
  return _context.stop();
1790
1704
  }
@@ -1792,31 +1706,22 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
1792
1706
  }));
1793
1707
  return _handleKeyEnter.apply(this, arguments);
1794
1708
  }
1795
- function handleKeyBackspace(event) {
1796
- var _usingItem$value2;
1709
+ function handleKeyBackspace() {
1710
+ var _usingItem$value10;
1797
1711
  // 删除已选择项
1798
1712
  if (!usingItem.value && !keyword.value) {
1799
1713
  emit('delete');
1714
+ // eslint-disable-next-line @typescript-eslint/no-misused-promises
1800
1715
  setTimeout(setMenuList, 16);
1801
1716
  return;
1802
1717
  }
1803
- if ((_usingItem$value2 = usingItem.value) !== null && _usingItem$value2 !== void 0 && _usingItem$value2.values.length) {
1804
- var _usingItem$value$chil;
1805
- if (usingItem.value.type === 'text' || !((_usingItem$value$chil = usingItem.value.children) !== null && _usingItem$value$chil !== void 0 && _usingItem$value$chil.length)) return;
1806
- event.preventDefault();
1807
- var selection = window.getSelection();
1808
- if ((selection === null || selection === void 0 ? void 0 : selection.rangeCount) > 0) {
1809
- var _node;
1810
- var range = selection.getRangeAt(0);
1811
- var startPos = range.startContainer;
1812
- var node = startPos;
1813
- while (node && node.parentNode !== inputRef.value) {
1814
- node = node.parentNode;
1815
- }
1816
- var editIndex = ((_node = node) === null || _node === void 0 || (_node = _node.dataset) === null || _node === void 0 ? void 0 : _node.index) || -1;
1817
- usingItem.value.values.splice(+editIndex, 1);
1718
+ if ((_usingItem$value10 = usingItem.value) !== null && _usingItem$value10 !== void 0 && _usingItem$value10.values.length) {
1719
+ var _usingItem$value11;
1720
+ // 删除选项
1721
+ if ((_usingItem$value11 = usingItem.value) !== null && _usingItem$value11 !== void 0 && _usingItem$value11.multiple || usingItem.value.isInValueList(usingItem.value.values[0]) || props.mode === SearchInputMode.EDIT && !keyword.value) {
1722
+ usingItem.value.values.splice(-1, 1);
1818
1723
  keyword.value = '';
1819
- setInputFocus(false, false);
1724
+ setInputFocus();
1820
1725
  return;
1821
1726
  }
1822
1727
  } else if (!keyword.value) {
@@ -1831,78 +1736,86 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
1831
1736
  }
1832
1737
  function _handleSelectItem() {
1833
1738
  _handleSelectItem = _asyncToGenerator( /*#__PURE__*/regenerator_default().mark(function _callee2(item, type) {
1834
- var _item$value, _usingItem$value6, _usingItem$value9;
1835
- var _item$realId, selectedItem, _usingItem$value7, _usingItem$value8, isCondition;
1739
+ var _item$value, _inputRef$value2, _usingItem$value14, _usingItem$value15;
1740
+ var _item$realId2, _item$realId, seleted, _res5, isCondition, res;
1836
1741
  return regenerator_default().wrap(function _callee2$(_context2) {
1837
1742
  while (1) switch (_context2.prev = _context2.next) {
1838
1743
  case 0:
1839
1744
  if (!((_item$value = item.value) !== null && _item$value !== void 0 && _item$value.id)) {
1840
- _context2.next = 18;
1745
+ _context2.next = 20;
1841
1746
  break;
1842
1747
  }
1843
- selectedItem = new SelectedItem(_objectSpread(_objectSpread({}, item), {}, {
1844
- id: (_item$realId = item.realId) !== null && _item$realId !== void 0 ? _item$realId : item.id
1845
- }), type);
1846
- selectedItem.addValues(item.value.name, false);
1847
- if (!(props.valueBehavior === ValueBehavior.NEEDKEY && menuHoverId.value)) {
1748
+ if (!(props.valueBehavior === ValueBehavior.NEEDKEY && item.value || !props.validateValues)) {
1848
1749
  _context2.next = 8;
1849
1750
  break;
1850
1751
  }
1851
- setSelectedItem(selectedItem);
1852
- setInputFocus(true);
1752
+ seleted = new SelectedItem(_objectSpread(_objectSpread({}, item), {}, {
1753
+ id: (_item$realId = item.realId) !== null && _item$realId !== void 0 ? _item$realId : item.id
1754
+ }), type);
1755
+ seleted.addValue(item.value);
1756
+ setSelectedItem(seleted);
1757
+ if (props.valueBehavior === ValueBehavior.NEEDKEY && menuHoverId.value) {
1758
+ setInputFocus(true);
1759
+ }
1853
1760
  menuHoverId.value = '';
1854
1761
  return _context2.abrupt("return");
1855
1762
  case 8:
1856
- usingItem.value = selectedItem;
1857
- _context2.next = 11;
1858
- return validateUsingItemValues(usingItem.value.values);
1859
- case 11:
1860
- if (_context2.sent) {
1861
- _context2.next = 14;
1763
+ usingItem.value = new SelectedItem(_objectSpread(_objectSpread({}, item), {}, {
1764
+ id: (_item$realId2 = item.realId) !== null && _item$realId2 !== void 0 ? _item$realId2 : item.id
1765
+ }), type);
1766
+ usingItem.value.addValue(item.value);
1767
+ _context2.next = 12;
1768
+ return validateUsingItemValues(item.value);
1769
+ case 12:
1770
+ _res5 = _context2.sent;
1771
+ if (_res5) {
1772
+ _context2.next = 16;
1862
1773
  break;
1863
1774
  }
1864
1775
  usingItem.value = null;
1865
1776
  return _context2.abrupt("return");
1866
- case 14:
1777
+ case 16:
1867
1778
  setSelectedItem(usingItem.value);
1868
- setInputFocus(true);
1869
1779
  menuHoverId.value = '';
1780
+ setInputFocus(true);
1870
1781
  return _context2.abrupt("return");
1871
- case 18:
1872
- if (!(!usingItem.value || ((_usingItem$value6 = usingItem.value) === null || _usingItem$value6 === void 0 ? void 0 : _usingItem$value6.type) === 'condition')) {
1873
- _context2.next = 26;
1782
+ case 20:
1783
+ if (!(!usingItem.value || !(inputRef !== null && inputRef !== void 0 && (_inputRef$value2 = inputRef.value) !== null && _inputRef$value2 !== void 0 && _inputRef$value2.innerText))) {
1784
+ _context2.next = 28;
1874
1785
  break;
1875
1786
  }
1876
- usingItem.value = new SelectedItem(item, type !== null && type !== void 0 ? type : (_usingItem$value7 = usingItem.value) === null || _usingItem$value7 === void 0 ? void 0 : _usingItem$value7.type);
1787
+ usingItem.value = new SelectedItem(item, type);
1877
1788
  keyword.value = '';
1878
- isCondition = ((_usingItem$value8 = usingItem.value) === null || _usingItem$value8 === void 0 ? void 0 : _usingItem$value8.type) === 'condition';
1879
- if (isCondition) {
1880
- setSelectedItem();
1881
- }
1789
+ isCondition = type === 'condition';
1790
+ isCondition && setSelectedItem();
1882
1791
  showPopover.value = isCondition || !!usingItem.value.children.length;
1883
1792
  setInputFocus(props.valueBehavior === ValueBehavior.NEEDKEY && !!menuHoverId.value);
1884
1793
  return _context2.abrupt("return");
1885
- case 26:
1886
- if (usingItem.value) {
1887
- usingItem.value.addValue(item);
1888
- (0,external_vue_namespaceObject.nextTick)(deleteInputTextNode);
1889
- }
1890
- _context2.next = 29;
1891
- return validateUsingItemValues(usingItem.value.values);
1892
- case 29:
1893
- if (_context2.sent) {
1894
- _context2.next = 31;
1794
+ case 28:
1795
+ if (!(((_usingItem$value14 = usingItem.value) === null || _usingItem$value14 === void 0 ? void 0 : _usingItem$value14.type) === 'condition')) {
1796
+ _context2.next = 32;
1895
1797
  break;
1896
1798
  }
1799
+ usingItem.value = new SelectedItem(item, type);
1800
+ setSelectedItem();
1897
1801
  return _context2.abrupt("return");
1898
- case 31:
1899
- if (!usingItem.value.multiple) {
1900
- setSelectedItem();
1802
+ case 32:
1803
+ usingItem.value.addValue(item);
1804
+ _context2.next = 35;
1805
+ return validateUsingItemValues(item);
1806
+ case 35:
1807
+ res = _context2.sent;
1808
+ if (res) {
1809
+ _context2.next = 38;
1810
+ break;
1901
1811
  }
1902
- if (props.valueBehavior === ValueBehavior.NEEDKEY && (_usingItem$value9 = usingItem.value) !== null && _usingItem$value9 !== void 0 && _usingItem$value9.multiple) {
1812
+ return _context2.abrupt("return");
1813
+ case 38:
1814
+ if (!usingItem.value.multiple) setSelectedItem();
1815
+ if (props.valueBehavior === ValueBehavior.NEEDKEY && (_usingItem$value15 = usingItem.value) !== null && _usingItem$value15 !== void 0 && _usingItem$value15.multiple) {
1903
1816
  setInputFocus();
1904
1817
  }
1905
- case 33:
1818
+ case 40:
1906
1819
  case "end":
1907
1820
  return _context2.stop();
1908
1821
  }
@@ -1914,10 +1827,10 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
1914
1827
  handleSelectItem(item, 'condition');
1915
1828
  }
1916
1829
  function handleMenuFooterClick(item) {
1917
- var _usingItem$value3;
1830
+ var _usingItem$value12;
1918
1831
  switch (item.id) {
1919
1832
  case 'confirm':
1920
- if (!((_usingItem$value3 = usingItem.value) !== null && _usingItem$value3 !== void 0 && _usingItem$value3.values.length)) return;
1833
+ if (!((_usingItem$value12 = usingItem.value) !== null && _usingItem$value12 !== void 0 && _usingItem$value12.values.length)) return;
1921
1834
  keyword.value = '';
1922
1835
  handleKeyEnter();
1923
1836
  break;
@@ -1927,110 +1840,119 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
1927
1840
  break;
1928
1841
  }
1929
1842
  }
1930
- function handleLogicalChange(logical) {
1931
- if (!usingItem.value) return;
1932
- usingItem.value.logical = logical;
1933
- }
1934
1843
  // functions
1935
- function validateValues(_x4, _x5) {
1936
- return _validateValues.apply(this, arguments);
1844
+ function validateUsingItemValues(_x4) {
1845
+ return _validateUsingItemValues.apply(this, arguments);
1937
1846
  }
1938
- function _validateValues() {
1939
- _validateValues = _asyncToGenerator( /*#__PURE__*/regenerator_default().mark(function _callee3(searchItem, value) {
1940
- var validateStr;
1847
+ function _validateUsingItemValues() {
1848
+ _validateUsingItemValues = _asyncToGenerator( /*#__PURE__*/regenerator_default().mark(function _callee3(value) {
1849
+ var _usingItem$value16, searchItem, validate, values;
1941
1850
  return regenerator_default().wrap(function _callee3$(_context3) {
1942
1851
  while (1) switch (_context3.prev = _context3.next) {
1943
1852
  case 0:
1944
- if (!(typeof props.validateValues === 'function')) {
1945
- _context3.next = 14;
1853
+ if (usingItem.value) {
1854
+ _context3.next = 4;
1946
1855
  break;
1947
1856
  }
1948
- validateStr = '';
1949
- _context3.prev = 2;
1950
- _context3.next = 5;
1951
- return props.validateValues(searchItem !== null && searchItem !== void 0 ? searchItem : null, value);
1952
- case 5:
1953
- validateStr = _context3.sent;
1954
- _context3.next = 11;
1955
- break;
1956
- case 8:
1957
- _context3.prev = 8;
1958
- _context3.t0 = _context3["catch"](2);
1959
- validateStr = false;
1960
- case 11:
1961
- if (!(typeof validateStr === 'string' || validateStr === false)) {
1962
- _context3.next = 14;
1857
+ _context3.next = 3;
1858
+ return validateValues(null, [value]);
1859
+ case 3:
1860
+ return _context3.abrupt("return", _context3.sent);
1861
+ case 4:
1862
+ _usingItem$value16 = usingItem.value, searchItem = _usingItem$value16.searchItem, validate = _usingItem$value16.validate, values = _usingItem$value16.values;
1863
+ if (!(validate && typeof props.validateValues === 'function')) {
1864
+ _context3.next = 9;
1963
1865
  break;
1964
1866
  }
1965
- onValidate(validateStr || '校验错误');
1966
- return _context3.abrupt("return", false);
1967
- case 14:
1867
+ _context3.next = 8;
1868
+ return validateValues(searchItem, value ? [value] : values);
1869
+ case 8:
1870
+ return _context3.abrupt("return", _context3.sent);
1871
+ case 9:
1968
1872
  onValidate('');
1969
1873
  return _context3.abrupt("return", true);
1970
- case 16:
1874
+ case 11:
1971
1875
  case "end":
1972
1876
  return _context3.stop();
1973
1877
  }
1974
- }, _callee3, null, [[2, 8]]);
1878
+ }, _callee3);
1975
1879
  }));
1976
- return _validateValues.apply(this, arguments);
1977
- }
1978
- function validateUsingItemValues(_x6) {
1979
1880
  return _validateUsingItemValues.apply(this, arguments);
1980
1881
  }
1981
- function _validateUsingItemValues() {
1982
- _validateUsingItemValues = _asyncToGenerator( /*#__PURE__*/regenerator_default().mark(function _callee4(preValues) {
1983
- var _usingItem$value10, searchItem, validate, values;
1882
+ function validateValues(_x5, _x6) {
1883
+ return _validateValues.apply(this, arguments);
1884
+ }
1885
+ function _validateValues() {
1886
+ _validateValues = _asyncToGenerator( /*#__PURE__*/regenerator_default().mark(function _callee4(searchItem, value) {
1887
+ var _props$validateValues;
1888
+ var validateStr;
1984
1889
  return regenerator_default().wrap(function _callee4$(_context4) {
1985
1890
  while (1) switch (_context4.prev = _context4.next) {
1986
1891
  case 0:
1987
- if (usingItem.value) {
1988
- _context4.next = 4;
1989
- break;
1990
- }
1991
- _context4.next = 3;
1992
- return validateValues(null, preValues);
1993
- case 3:
1994
- return _context4.abrupt("return", _context4.sent);
1995
- case 4:
1996
- _usingItem$value10 = usingItem.value, searchItem = _usingItem$value10.searchItem, validate = _usingItem$value10.validate, values = _usingItem$value10.values;
1997
- if (!(validate && typeof props.validateValues === 'function')) {
1998
- _context4.next = 9;
1892
+ _context4.next = 2;
1893
+ return (_props$validateValues = props.validateValues) === null || _props$validateValues === void 0 ? void 0 : _props$validateValues.call(props, searchItem !== null && searchItem !== void 0 ? searchItem : null, value)["catch"](function () {
1894
+ return false;
1895
+ });
1896
+ case 2:
1897
+ validateStr = _context4.sent;
1898
+ if (!(typeof validateStr === 'string' || validateStr === false)) {
1899
+ _context4.next = 6;
1999
1900
  break;
2000
1901
  }
2001
- _context4.next = 8;
2002
- return validateValues(searchItem, preValues !== null && preValues !== void 0 ? preValues : values);
2003
- case 8:
2004
- return _context4.abrupt("return", _context4.sent);
2005
- case 9:
1902
+ onValidate(validateStr || '校验错误');
1903
+ return _context4.abrupt("return", false);
1904
+ case 6:
2006
1905
  onValidate('');
2007
1906
  return _context4.abrupt("return", true);
2008
- case 11:
1907
+ case 8:
2009
1908
  case "end":
2010
1909
  return _context4.stop();
2011
1910
  }
2012
1911
  }, _callee4);
2013
1912
  }));
2014
- return _validateUsingItemValues.apply(this, arguments);
1913
+ return _validateValues.apply(this, arguments);
1914
+ }
1915
+ function setInputFocus() {
1916
+ var refleshMenuList = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
1917
+ if (refleshMenuList) {
1918
+ setTimeout(function () {
1919
+ setMenuList();
1920
+ }, 16);
1921
+ }
1922
+ isFocus.value = true;
1923
+ showPopover.value = true;
1924
+ showNoSelectValueError.value = false;
1925
+ var timer = setTimeout(function () {
1926
+ if (inputRef.value) {
1927
+ inputRef.value.focus(); // 光标移至最后
1928
+ var selection = window.getSelection();
1929
+ if (selection.focusOffset === 0) {
1930
+ selection.selectAllChildren(inputRef.value);
1931
+ selection.collapseToEnd();
1932
+ }
1933
+ }
1934
+ window.clearTimeout(timer);
1935
+ }, 0);
1936
+ emit('focus', isFocus.value);
2015
1937
  }
2016
1938
  function setMenuList() {
2017
1939
  return _setMenuList.apply(this, arguments);
2018
1940
  }
2019
1941
  function _setMenuList() {
2020
1942
  _setMenuList = _asyncToGenerator( /*#__PURE__*/regenerator_default().mark(function _callee5() {
2021
- var _props$data, _usingItem$value$sear, _usingItem$value$valu;
2022
- var list, _usingItem$value11, _keyword$value2, hoverItem;
1943
+ var _usingItem$value17, _usingItem$value$valu2;
1944
+ var list, _usingItem$value18, _keyword$value2, hoverItem;
2023
1945
  return regenerator_default().wrap(function _callee5$(_context5) {
2024
1946
  while (1) switch (_context5.prev = _context5.next) {
2025
1947
  case 0:
2026
1948
  list = [];
2027
- if (!(typeof props.getMenuList === 'function' && (!((_props$data = props.data) !== null && _props$data !== void 0 && _props$data.length) && !usingItem.value || usingItem.value && (((_usingItem$value$sear = usingItem.value.searchItem) === null || _usingItem$value$sear === void 0 ? void 0 : _usingItem$value$sear.async) === undefined || usingItem.value.searchItem.async === true)))) {
1949
+ if (!(typeof props.getMenuList === 'function' && (typeof ((_usingItem$value17 = usingItem.value) === null || _usingItem$value17 === void 0 || (_usingItem$value17 = _usingItem$value17.searchItem) === null || _usingItem$value17 === void 0 ? void 0 : _usingItem$value17.async) === 'undefined' || usingItem.value.searchItem.async === true))) {
2028
1950
  _context5.next = 9;
2029
1951
  break;
2030
1952
  }
2031
1953
  loading.value = true;
2032
1954
  _context5.next = 5;
2033
- return props.getMenuList((_usingItem$value11 = usingItem.value) === null || _usingItem$value11 === void 0 ? void 0 : _usingItem$value11.searchItem, keyword.value)["catch"](function () {
1955
+ return props.getMenuList((_usingItem$value18 = usingItem.value) === null || _usingItem$value18 === void 0 ? void 0 : _usingItem$value18.searchItem, keyword.value)["catch"](function () {
2034
1956
  return [];
2035
1957
  });
2036
1958
  case 5:
@@ -2091,7 +2013,7 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
2091
2013
  });
2092
2014
  } else if (usingItem.value.type === 'condition') {
2093
2015
  list = props.conditions;
2094
- } else if (!((_usingItem$value$valu = usingItem.value.values) !== null && _usingItem$value$valu !== void 0 && _usingItem$value$valu.length) || usingItem.value.multiple || props.mode === SearchInputMode.EDIT) {
2016
+ } else if (!((_usingItem$value$valu2 = usingItem.value.values) !== null && _usingItem$value$valu2 !== void 0 && _usingItem$value$valu2.length) || usingItem.value.multiple || props.mode === SearchInputMode.EDIT) {
2095
2017
  list = usingItem.value.children.filter(function (item) {
2096
2018
  return item.name.toLocaleLowerCase().includes(keyword.value.toLocaleLowerCase());
2097
2019
  });
@@ -2116,193 +2038,35 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
2116
2038
  }));
2117
2039
  return _setMenuList.apply(this, arguments);
2118
2040
  }
2119
- function enterNewItemSelected() {
2120
- return _enterNewItemSelected.apply(this, arguments);
2121
- }
2122
- function _enterNewItemSelected() {
2123
- _enterNewItemSelected = _asyncToGenerator( /*#__PURE__*/regenerator_default().mark(function _callee6() {
2124
- var formatItem, valueList, res;
2125
- return regenerator_default().wrap(function _callee6$(_context6) {
2126
- while (1) switch (_context6.prev = _context6.next) {
2127
- case 0:
2128
- formatItem = str2SeletedItem(keyword.value);
2129
- valueList = (formatItem === null || formatItem === void 0 ? void 0 : formatItem.values) || [{
2130
- id: keyword.value,
2131
- name: keyword.value
2132
- }];
2133
- _context6.next = 4;
2134
- return validateUsingItemValues(valueList);
2135
- case 4:
2136
- res = _context6.sent;
2137
- if (res) {
2138
- _context6.next = 7;
2139
- break;
2140
- }
2141
- return _context6.abrupt("return");
2142
- case 7:
2143
- emit('add', formatItem || new SelectedItem(_objectSpread({}, valueList[0]), 'text'));
2144
- keyword.value = '';
2145
- setMenuList();
2146
- return _context6.abrupt("return", true);
2147
- case 11:
2148
- case "end":
2149
- return _context6.stop();
2150
- }
2151
- }, _callee6);
2152
- }));
2153
- return _enterNewItemSelected.apply(this, arguments);
2154
- }
2155
- function enterExistingItemSelected() {
2156
- return _enterExistingItemSelected.apply(this, arguments);
2157
- }
2158
- function _enterExistingItemSelected() {
2159
- _enterExistingItemSelected = _asyncToGenerator( /*#__PURE__*/regenerator_default().mark(function _callee7() {
2160
- var valueList, formatItem, isValid;
2161
- return regenerator_default().wrap(function _callee7$(_context7) {
2162
- while (1) switch (_context7.prev = _context7.next) {
2163
- case 0:
2164
- valueList = [];
2165
- if (usingItem.value.isSpecialType()) {
2166
- formatItem = str2SeletedItem(keyword.value);
2167
- if (formatItem) {
2168
- usingItem.value = formatItem;
2169
- valueList = formatItem.values;
2170
- }
2171
- }
2172
- valueList = valueList.length ? valueList : usingItem.value.str2Values(keyword.value);
2173
- _context7.next = 5;
2174
- return validateUsingItemValues(valueList);
2175
- case 5:
2176
- isValid = _context7.sent;
2177
- if (isValid) {
2178
- _context7.next = 8;
2179
- break;
2180
- }
2181
- return _context7.abrupt("return");
2182
- case 8:
2183
- if (usingItem.value.type === 'text') {
2184
- usingItem.value.name = keyword.value;
2185
- usingItem.value.id = keyword.value;
2186
- } else {
2187
- usingItem.value.values = valueList;
2188
- }
2189
- emit('add', usingItem.value);
2190
- keyword.value = '';
2191
- usingItem.value = null;
2192
- setInputFocus(true);
2193
- return _context7.abrupt("return", true);
2194
- case 14:
2195
- case "end":
2196
- return _context7.stop();
2197
- }
2198
- }, _callee7);
2199
- }));
2200
- return _enterExistingItemSelected.apply(this, arguments);
2201
- }
2202
- function setCursorToEnd() {
2203
- if (!inputRef.value) return;
2204
- var range = document.createRange();
2205
- var selection = window.getSelection();
2206
- range.selectNodeContents(inputRef.value);
2207
- range.collapse(false);
2208
- selection.removeAllRanges();
2209
- selection.addRange(range);
2210
- }
2211
- function setInputFocus() {
2212
- var refleshMenuList = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
2213
- var needCursorToEnd = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
2214
- if (refleshMenuList) {
2215
- setTimeout(setMenuList, 16);
2216
- }
2217
- isFocus.value = true;
2218
- showPopover.value = true;
2219
- showNoSelectValueError.value = false;
2220
- needCursorToEnd && (0,external_vue_namespaceObject.nextTick)(setCursorToEnd);
2221
- emit('focus', isFocus.value);
2222
- }
2223
2041
  function setSelectedItem(item) {
2224
2042
  emit('add', item !== null && item !== void 0 ? item : usingItem.value);
2225
2043
  usingItem.value = null;
2226
2044
  keyword.value = '';
2227
- setInputFocus(true, true);
2228
- (0,external_vue_namespaceObject.nextTick)(clearInput);
2045
+ setInputFocus(props.valueBehavior === ValueBehavior.NEEDKEY);
2229
2046
  }
2230
2047
  function clearInput() {
2231
- if (!inputRef.value) return;
2232
- keyword.value = '';
2233
- (0,external_vue_namespaceObject.nextTick)(function () {
2234
- return inputRef.value.innerText = '';
2235
- });
2236
- }
2237
- function str2SeletedItem(str) {
2238
- var _str$split = str.split(':'),
2239
- _str$split2 = _slicedToArray(_str$split, 2),
2240
- key = _str$split2[0],
2241
- value = _str$split2[1];
2242
- if (key !== null && key !== void 0 && key.trim()) {
2243
- var selectedItem = searchData.value.find(function (item) {
2244
- return item.name === key.trim();
2245
- });
2246
- if (selectedItem) {
2247
- var item = new SelectedItem(_objectSpread({}, selectedItem), 'default');
2248
- item.addValues(value);
2249
- return item;
2250
- }
2048
+ var text = inputRef.value.innerText;
2049
+ if (text[text.length - 1] === '\n' || text[0] === '\r') {
2050
+ setInputText(text.slice(0, -1));
2051
+ clearInput();
2052
+ } else if (text[0] === '\n' || text[0] === '\r') {
2053
+ setInputText(text.slice(1));
2054
+ clearInput();
2251
2055
  }
2252
- return undefined;
2253
2056
  }
2254
- function deleteInputTextNode() {
2255
- var _keyword$value;
2256
- if ((_keyword$value = keyword.value) !== null && _keyword$value !== void 0 && _keyword$value.length) {
2257
- keyword.value = '';
2258
- var nodes = Array.from(inputRef.value.childNodes);
2259
- nodes.forEach(function (node) {
2260
- var _node$textContent;
2261
- if (node.nodeType === Node.TEXT_NODE && (_node$textContent = node.textContent) !== null && _node$textContent !== void 0 && _node$textContent.trim()) {
2262
- inputRef.value.removeChild(node);
2263
- }
2264
- });
2057
+ function setInputText() {
2058
+ var text = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
2059
+ if (inputRef.value) {
2060
+ var _usingItem$value13;
2061
+ inputRef.value.innerHTML = text || ((_usingItem$value13 = usingItem.value) === null || _usingItem$value13 === void 0 ? void 0 : _usingItem$value13.inputInnerHtml) || '';
2265
2062
  }
2266
2063
  }
2267
- function inputFocusForWrapper() {
2268
- var _inputRef$value2;
2269
- (_inputRef$value2 = inputRef.value) === null || _inputRef$value2 === void 0 || _inputRef$value2.focus();
2270
- }
2271
- function inputEnterForWrapper() {
2272
- return _inputEnterForWrapper.apply(this, arguments);
2273
- }
2274
- function _inputEnterForWrapper() {
2275
- _inputEnterForWrapper = _asyncToGenerator( /*#__PURE__*/regenerator_default().mark(function _callee8() {
2276
- return regenerator_default().wrap(function _callee8$(_context8) {
2277
- while (1) switch (_context8.prev = _context8.next) {
2278
- case 0:
2279
- _context8.next = 2;
2280
- return handleKeyEnter().then(function (v) {
2281
- return v && clearInput();
2282
- });
2283
- case 2:
2284
- showPopover.value = false;
2285
- inputRef.value.blur();
2286
- case 4:
2287
- case "end":
2288
- return _context8.stop();
2289
- }
2290
- }, _callee8);
2291
- }));
2292
- return _inputEnterForWrapper.apply(this, arguments);
2293
- }
2294
- function inputClearForWrapper() {
2295
- keyword.value = '';
2296
- showNoSelectValueError.value = false;
2297
- showPopover.value = false;
2298
- usingItem.value = null;
2299
- (0,external_vue_namespaceObject.nextTick)(clearInput);
2064
+ function handleLogicalChange(logical) {
2065
+ if (!usingItem.value) return;
2066
+ usingItem.value.logical = logical;
2300
2067
  }
2301
2068
  // expose
2302
2069
  expose({
2303
- inputFocusForWrapper: inputFocusForWrapper,
2304
- inputEnterForWrapper: inputEnterForWrapper,
2305
- inputClearForWrapper: inputClearForWrapper,
2306
2070
  handleInputFocus: handleInputFocus,
2307
2071
  isFocus: isFocus
2308
2072
  });
@@ -2323,17 +2087,12 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
2323
2087
  handleClickOutside: handleClickOutside,
2324
2088
  handleInputFocus: handleInputFocus,
2325
2089
  handleInputChange: handleInputChange,
2326
- handleInputPaste: handleInputPaste,
2327
2090
  handleLogicalChange: handleLogicalChange,
2328
2091
  handleInputKeyup: handleInputKeyup,
2329
2092
  handleSelectItem: handleSelectItem,
2330
2093
  handleSelectCondtionItem: handleSelectCondtionItem,
2331
2094
  handleMenuFooterClick: handleMenuFooterClick,
2332
2095
  resolveClassName: resolveClassName,
2333
- inputFocusForWrapper: inputFocusForWrapper,
2334
- inputEnterForWrapper: inputEnterForWrapper,
2335
- inputClearForWrapper: inputClearForWrapper,
2336
- deleteInputTextNode: deleteInputTextNode,
2337
2096
  t: t
2338
2097
  };
2339
2098
  },
@@ -2356,7 +2115,7 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
2356
2115
  }
2357
2116
  } : {});
2358
2117
  var inputContent = function inputContent() {
2359
- var _this$keyword2, _this$usingItem, _this$usingItem2;
2118
+ var _this$keyword2;
2360
2119
  return (0,external_vue_namespaceObject.withDirectives)((0,external_vue_namespaceObject.createVNode)("div", {
2361
2120
  "ref": "inputRef",
2362
2121
  "class": {
@@ -2368,37 +2127,13 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
2368
2127
  "data-placeholder": !inputInnerHtml && !_this.keyword ? _this.placeholder : '',
2369
2128
  "data-tips": placeholder || '',
2370
2129
  "spellcheck": "false",
2371
- "onPaste": _this.handleInputPaste,
2372
2130
  "onFocus": _this.handleInputFocus,
2373
2131
  "onInput": _this.handleInputChange,
2374
2132
  "onKeydown": _this.handleInputKeyup
2375
- }, [((_this$usingItem = _this.usingItem) === null || _this$usingItem === void 0 ? void 0 : _this$usingItem.name) && (!_this.usingItem.isSpecialType() ? (0,external_vue_namespaceObject.createVNode)("span", {
2376
- "data-key": _this.usingItem.name,
2377
- "data-type": _this.usingItem.type,
2378
- "key": _this.usingItem.nameRenderkey,
2379
- "onMousedown": function onMousedown(e) {
2380
- return e.preventDefault();
2381
- },
2382
- "contenteditable": false,
2383
- "style": {
2384
- color: '#979BA5'
2385
- }
2386
- }, [_this.usingItem.name, (0,external_vue_namespaceObject.createTextVNode)(":\xA0")]) : (0,external_vue_namespaceObject.createVNode)("span", {
2387
- "data-key": _this.usingItem.name,
2388
- "data-type": _this.usingItem.type,
2389
- "key": _this.usingItem.nameRenderkey
2390
- }, [_this.usingItem.name])), (_this$usingItem2 = _this.usingItem) === null || _this$usingItem2 === void 0 || (_this$usingItem2 = _this$usingItem2.values) === null || _this$usingItem2 === void 0 ? void 0 : _this$usingItem2.map(function (item, index) {
2391
- return (0,external_vue_namespaceObject.createVNode)("span", {
2392
- "key": index,
2393
- "data-key": item.name,
2394
- "data-type": "value",
2395
- "data-id": item.id,
2396
- "data-index": index
2397
- }, [index > 0 ? " ".concat(_this.usingItem.logical, " ") : '', item.name]);
2398
- })]), [[(0,external_vue_namespaceObject.resolveDirective)("clickoutside"), _this.handleClickOutside]]);
2133
+ }, null), [[(0,external_vue_namespaceObject.resolveDirective)("clickoutside"), _this.handleClickOutside]]);
2399
2134
  };
2400
2135
  var popoverContent = function popoverContent() {
2401
- var _this$menuList2, _this$usingItem3, _this$usingItem4;
2136
+ var _this$menuList2, _this$usingItem, _this$usingItem2;
2402
2137
  if (_this.loading) {
2403
2138
  return (0,external_vue_namespaceObject.createVNode)("div", null, [_this.t.loading]);
2404
2139
  }
@@ -2417,8 +2152,8 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
2417
2152
  return item.id;
2418
2153
  })) || [],
2419
2154
  "conditions": showCondition ? _this.conditions : [],
2420
- "logical": (_this$usingItem3 = _this.usingItem) === null || _this$usingItem3 === void 0 ? void 0 : _this$usingItem3.logical,
2421
- "showLogical": (_this$usingItem4 = _this.usingItem) === null || _this$usingItem4 === void 0 ? void 0 : _this$usingItem4.showLogical,
2155
+ "logical": (_this$usingItem = _this.usingItem) === null || _this$usingItem === void 0 ? void 0 : _this$usingItem.logical,
2156
+ "showLogical": (_this$usingItem2 = _this.usingItem) === null || _this$usingItem2 === void 0 ? void 0 : _this$usingItem2.showLogical,
2422
2157
  "onUpdate:logical": _this.handleLogicalChange,
2423
2158
  "onSelectItem": _this.handleSelectItem,
2424
2159
  "onSelectCondition": _this.handleSelectCondtionItem,
@@ -2468,8 +2203,7 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
2468
2203
 
2469
2204
 
2470
2205
 
2471
-
2472
- /* harmony default export */ const selected = ((0,external_vue_namespaceObject.defineComponent)({
2206
+ /* harmony default export */ const selected = (defineComponent({
2473
2207
  name: 'SearchSelected',
2474
2208
  props: {
2475
2209
  data: {
@@ -2497,8 +2231,7 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
2497
2231
  emits: ['delete'],
2498
2232
  setup: function setup(_props, _ref) {
2499
2233
  var emit = _ref.emit;
2500
- var inputRef = (0,external_vue_namespaceObject.ref)(null);
2501
- var selectedInputRef = (0,external_vue_namespaceObject.ref)(null);
2234
+ var inputRef = ref(null);
2502
2235
  var _useSearchSelectInjec = useSearchSelectInject(),
2503
2236
  onEditClick = _useSearchSelectInjec.onEditClick,
2504
2237
  onEditEnter = _useSearchSelectInjec.onEditEnter,
@@ -2523,9 +2256,8 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
2523
2256
  if (isFocus) return;
2524
2257
  onEditBlur();
2525
2258
  }
2526
- function handleInputOutside(target) {
2527
- var _selectedInputRef$val;
2528
- return !((_selectedInputRef$val = selectedInputRef.value) !== null && _selectedInputRef$val !== void 0 && _selectedInputRef$val.contains(target));
2259
+ function handleInputOutside() {
2260
+ return true;
2529
2261
  }
2530
2262
  function copySeletedItem(item) {
2531
2263
  var newItem = new SelectedItem(item.searchItem, item.type);
@@ -2535,7 +2267,6 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
2535
2267
  }
2536
2268
  return {
2537
2269
  inputRef: inputRef,
2538
- selectedInputRef: selectedInputRef,
2539
2270
  editKey: editKey,
2540
2271
  copySeletedItem: copySeletedItem,
2541
2272
  handleDeleteSelected: handleDeleteSelected,
@@ -2550,8 +2281,7 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
2550
2281
  var contentComponent = function contentComponent(item, index) {
2551
2282
  return _this.editKey === "".concat(item.id, "_").concat(index) ? (0,external_vue_namespaceObject.createVNode)("div", {
2552
2283
  "class": "selected-input",
2553
- "key": _this.editKey.toString(),
2554
- "ref": "selectedInputRef"
2284
+ "key": _this.editKey.toString()
2555
2285
  }, [(0,external_vue_namespaceObject.createVNode)(input, {
2556
2286
  "ref": "inputRef",
2557
2287
  "key": _this.editKey.toString(),
@@ -2680,13 +2410,6 @@ var SearchSelectProps = {
2680
2410
  return [ValueBehavior.ALL, ValueBehavior.NEEDKEY].includes(v);
2681
2411
  }
2682
2412
  }
2683
- // deleteBehavior: {
2684
- // type: String as PropType<`${DeleteBehavior}`>,
2685
- // default: DeleteBehavior.CHAR,
2686
- // validator(v: DeleteBehavior) {
2687
- // return [DeleteBehavior.CHAR, DeleteBehavior.VALUE].includes(v);
2688
- // },
2689
- // },
2690
2413
  };
2691
2414
  /* harmony default export */ const search_select = ((0,external_vue_namespaceObject.defineComponent)({
2692
2415
  name: 'SearchSelect',
@@ -2802,11 +2525,7 @@ var SearchSelectProps = {
2802
2525
  onEditEnter: onEditEnter,
2803
2526
  onEditBlur: onEditBlur,
2804
2527
  onValidate: onValidate,
2805
- editKey: editKey,
2806
- searchData: (0,external_vue_namespaceObject.computed)(function () {
2807
- return props.data;
2808
- }),
2809
- isClickOutside: handleInputOutside
2528
+ editKey: editKey
2810
2529
  });
2811
2530
  function onEditClick(item, index) {
2812
2531
  editKey.value = "".concat(item.id, "_").concat(index);
@@ -2858,13 +2577,12 @@ var SearchSelectProps = {
2858
2577
  }
2859
2578
  function handleWrapClick() {
2860
2579
  if (!editKey.value) {
2861
- inputRef.value.inputFocusForWrapper();
2580
+ inputRef.value.handleInputFocus();
2862
2581
  }
2863
2582
  }
2864
2583
  function handleClearAll() {
2865
2584
  selectedList.value = [];
2866
2585
  overflowIndex.value = -1;
2867
- inputRef.value.inputClearForWrapper();
2868
2586
  emit('update:modelValue', []);
2869
2587
  }
2870
2588
  function handleInputOutside(target) {
@@ -2896,7 +2614,6 @@ var SearchSelectProps = {
2896
2614
  isFocus.value = v;
2897
2615
  }
2898
2616
  function handleClickSearch(e) {
2899
- inputRef.value.inputEnterForWrapper();
2900
2617
  emit('search', e);
2901
2618
  }
2902
2619
  return {