bkui-vue 1.0.3-beta.9 → 2.0.1-beta.1

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 (285) hide show
  1. package/dist/index.cjs.js +71 -73
  2. package/dist/index.esm.js +20956 -18684
  3. package/dist/index.umd.js +71 -73
  4. package/dist/locale/en.esm.js +1 -1
  5. package/dist/locale/en.esm.js.map +1 -1
  6. package/dist/locale/en.umd.js +1 -1
  7. package/dist/locale/en.umd.js.map +1 -1
  8. package/dist/locale/zh-cn.esm.js +1 -1
  9. package/dist/locale/zh-cn.esm.js.map +1 -1
  10. package/dist/locale/zh-cn.umd.js +1 -1
  11. package/dist/locale/zh-cn.umd.js.map +1 -1
  12. package/dist/style.css +1 -1
  13. package/dist/style.variable.css +1 -1
  14. package/lib/affix/affix.variable.css +3 -0
  15. package/lib/alert/alert.variable.css +3 -0
  16. package/lib/backtop/backtop.variable.css +3 -0
  17. package/lib/badge/badge.variable.css +3 -0
  18. package/lib/breadcrumb/breadcrumb.variable.css +3 -0
  19. package/lib/button/button.variable.css +3 -0
  20. package/lib/card/card.variable.css +3 -0
  21. package/lib/cascader/cascader.variable.css +3 -0
  22. package/lib/checkbox/checkbox.variable.css +3 -0
  23. package/lib/checkbox/index.js +4 -4
  24. package/lib/code-diff/code-diff.variable.css +3 -0
  25. package/lib/collapse/collapse.css +11 -0
  26. package/lib/collapse/collapse.d.ts +11 -0
  27. package/lib/collapse/collapse.less +15 -1
  28. package/lib/collapse/collapse.variable.css +14 -0
  29. package/lib/collapse/index.d.ts +23 -0
  30. package/lib/collapse/index.js +9 -1
  31. package/lib/collapse/props.d.ts +8 -0
  32. package/lib/collapse-transition/collapse-transition.variable.css +3 -0
  33. package/lib/color-picker/color-picker.variable.css +3 -0
  34. package/lib/components.d.ts +2 -0
  35. package/lib/components.js +3 -1
  36. package/lib/config-provider/config-provider.d.ts +3 -0
  37. package/lib/config-provider/config-provider.variable.css +3 -0
  38. package/lib/config-provider/index.d.ts +4 -0
  39. package/lib/config-provider/token.d.ts +1 -0
  40. package/lib/container/container.variable.css +3 -0
  41. package/lib/date-picker/base/month-table.d.ts +2 -2
  42. package/lib/date-picker/date-picker.d.ts +1 -0
  43. package/lib/date-picker/date-picker.variable.css +3 -0
  44. package/lib/date-picker/index.d.ts +3 -0
  45. package/lib/date-picker/index.js +70 -32
  46. package/lib/date-picker/interface.d.ts +1 -1
  47. package/lib/date-picker/time-picker.d.ts +1 -0
  48. package/lib/date-picker/utils.d.ts +4 -0
  49. package/lib/dialog/dialog.css +176 -150
  50. package/lib/dialog/dialog.d.ts +40 -109
  51. package/lib/dialog/dialog.less +51 -124
  52. package/lib/dialog/dialog.variable.css +179 -150
  53. package/lib/dialog/index.d.ts +99 -263
  54. package/lib/dialog/index.js +244 -246
  55. package/lib/dialog/props.d.ts +10 -35
  56. package/lib/directives/index.js +0 -1
  57. package/lib/divider/divider.variable.css +3 -0
  58. package/lib/dropdown/dropdown.css +3 -1
  59. package/lib/dropdown/dropdown.variable.css +6 -1
  60. package/lib/exception/exception.variable.css +3 -0
  61. package/lib/fixed-navbar/fixed-navbar.variable.css +3 -0
  62. package/lib/form/form.variable.css +3 -0
  63. package/lib/form/index.js +3 -1
  64. package/lib/icon/image-fill.js +82 -167
  65. package/lib/icon/img-error.js +82 -167
  66. package/lib/icon/img-placehoulder.js +82 -167
  67. package/lib/icon/index.d.ts +1 -0
  68. package/lib/icon/index.js +87 -2427
  69. package/lib/icon/info-line.js +82 -167
  70. package/lib/icon/info.js +82 -167
  71. package/lib/icon/left-shape.js +82 -167
  72. package/lib/icon/left-turn-line.js +82 -167
  73. package/lib/icon/loading.js +82 -167
  74. package/lib/icon/narrow-line.js +82 -167
  75. package/lib/icon/original.js +82 -167
  76. package/lib/icon/pdf-fill.js +82 -167
  77. package/lib/icon/play-shape.js +82 -167
  78. package/lib/icon/plus.js +82 -167
  79. package/lib/icon/ppt-fill.js +82 -167
  80. package/lib/icon/qq.js +82 -167
  81. package/lib/icon/right-shape.js +82 -167
  82. package/lib/icon/right-turn-line.js +82 -167
  83. package/lib/icon/search.js +82 -167
  84. package/lib/icon/share.js +82 -167
  85. package/lib/icon/spinner.js +82 -167
  86. package/lib/icon/success.js +82 -167
  87. package/lib/icon/switcher-loading.js +82 -167
  88. package/lib/icon/text-all.d.ts +4 -0
  89. package/lib/icon/text-all.js +191 -0
  90. package/lib/icon/text-file.js +82 -167
  91. package/lib/icon/text-fill.js +82 -167
  92. package/lib/icon/transfer.js +82 -167
  93. package/lib/icon/tree-application-shape.js +82 -167
  94. package/lib/icon/unfull-screen.js +82 -167
  95. package/lib/icon/unvisible.js +82 -167
  96. package/lib/icon/up-shape.js +82 -167
  97. package/lib/icon/upload.js +82 -167
  98. package/lib/icon/video-fill.js +82 -167
  99. package/lib/icon/warn.js +82 -167
  100. package/lib/icon/weixin-pro.js +82 -167
  101. package/lib/icon/weixin.js +82 -167
  102. package/lib/image/image-viewer.variable.css +3 -0
  103. package/lib/image/image.variable.css +3 -0
  104. package/lib/image/index.js +5 -2
  105. package/lib/info-box/index.d.ts +2 -2
  106. package/lib/info-box/index.js +257 -516
  107. package/lib/info-box/info-box.css +58 -28
  108. package/lib/info-box/info-box.d.ts +18 -16
  109. package/lib/info-box/info-box.less +82 -51
  110. package/lib/info-box/info-box.variable.css +61 -28
  111. package/lib/info-box/render-component.d.ts +4 -0
  112. package/lib/input/index.js +7 -1
  113. package/lib/input/input.variable.css +3 -0
  114. package/lib/link/link.variable.css +3 -0
  115. package/lib/loading/loading.variable.css +3 -0
  116. package/lib/locale/index.js +4 -2
  117. package/lib/locale/lang/en.d.ts +1 -0
  118. package/lib/menu/menu.variable.css +3 -0
  119. package/lib/menu/submenu.variable.css +3 -0
  120. package/lib/message/message.variable.css +3 -0
  121. package/lib/modal/hooks.d.ts +6 -0
  122. package/lib/modal/index.d.ts +41 -309
  123. package/lib/modal/index.js +285 -671
  124. package/lib/modal/mask.d.ts +6 -0
  125. package/lib/modal/modal.css +155 -76
  126. package/lib/modal/modal.d.ts +18 -116
  127. package/lib/modal/modal.less +107 -55
  128. package/lib/modal/modal.variable.css +158 -76
  129. package/lib/modal/props.mixin.d.ts +5 -41
  130. package/lib/navigation/navigation.variable.css +3 -0
  131. package/lib/notify/notify.variable.css +3 -0
  132. package/lib/overflow-title/index.js +46 -52
  133. package/lib/pagination/index.js +2 -1
  134. package/lib/pagination/pagination.variable.css +3 -0
  135. package/lib/plugin-popover/index.d.ts +1 -1
  136. package/lib/plugin-popover/index.js +45 -26
  137. package/lib/pop-confirm/index.js +8 -5
  138. package/lib/pop-confirm/pop-confirm.variable.css +3 -0
  139. package/lib/popover/content.d.ts +1 -1
  140. package/lib/popover/index.js +45 -26
  141. package/lib/popover/plugin-popover.d.ts +4 -1
  142. package/lib/popover/popover.css +3 -1
  143. package/lib/popover/popover.less +4 -1
  144. package/lib/popover/popover.variable.css +6 -1
  145. package/lib/preset.d.ts +2 -0
  146. package/lib/process/process.variable.css +3 -0
  147. package/lib/progress/progress.variable.css +3 -0
  148. package/lib/radio/index.d.ts +29 -0
  149. package/lib/radio/index.js +49 -26
  150. package/lib/radio/radio-button.d.ts +10 -0
  151. package/lib/radio/radio-group.d.ts +10 -0
  152. package/lib/radio/radio.d.ts +10 -0
  153. package/lib/radio/radio.variable.css +3 -0
  154. package/lib/rate/rate.variable.css +3 -0
  155. package/lib/rate/star.variable.css +3 -0
  156. package/lib/resize-layout/index.js +1 -1
  157. package/lib/resize-layout/resize-layout.variable.css +3 -0
  158. package/lib/scrollbar/index.d.ts +15 -0
  159. package/lib/scrollbar/index.js +18763 -0
  160. package/lib/scrollbar/scrollbar-core/can-use-dom.d.ts +2 -0
  161. package/lib/scrollbar/scrollbar-core/helpers.d.ts +5 -0
  162. package/lib/scrollbar/scrollbar-core/index.d.ts +241 -0
  163. package/lib/scrollbar/scrollbar-core/mouse-wheel.d.ts +5 -0
  164. package/lib/scrollbar/scrollbar-core/scrollbar-width.d.ts +1 -0
  165. package/lib/scrollbar/scrollbar.css +75 -0
  166. package/lib/scrollbar/scrollbar.less +94 -0
  167. package/lib/scrollbar/scrollbar.variable.css +204 -0
  168. package/lib/search-select/index.d.ts +375 -16
  169. package/lib/search-select/index.js +701 -366
  170. package/lib/search-select/input.d.ts +14 -5
  171. package/lib/search-select/search-select.css +20 -6
  172. package/lib/search-select/search-select.d.ts +129 -7
  173. package/lib/search-select/search-select.less +16 -12
  174. package/lib/search-select/search-select.variable.css +23 -6
  175. package/lib/search-select/selected.d.ts +116 -6
  176. package/lib/search-select/utils.d.ts +19 -6
  177. package/lib/select/index.d.ts +124 -6
  178. package/lib/select/index.js +1336 -72
  179. package/lib/select/option.d.ts +3 -1
  180. package/lib/select/pinyin/core.d.ts +14 -0
  181. package/lib/select/pinyin/dict.d.ts +34 -0
  182. package/lib/select/pinyin/index.d.ts +2 -0
  183. package/lib/select/select.css +55 -12
  184. package/lib/select/select.d.ts +50 -2
  185. package/lib/select/select.less +69 -19
  186. package/lib/select/select.variable.css +58 -12
  187. package/lib/select/selectTagInput.d.ts +7 -0
  188. package/lib/select/type.d.ts +2 -3
  189. package/lib/shared/index.d.ts +0 -1
  190. package/lib/shared/index.js +70 -50
  191. package/lib/shared/utils.d.ts +12 -0
  192. package/lib/shared/vue-types.d.ts +5 -0
  193. package/lib/sideslider/index.d.ts +55 -185
  194. package/lib/sideslider/index.js +81 -55
  195. package/lib/sideslider/sideslider.css +26 -90
  196. package/lib/sideslider/sideslider.d.ts +25 -87
  197. package/lib/sideslider/sideslider.less +56 -132
  198. package/lib/sideslider/sideslider.variable.css +29 -90
  199. package/lib/slider/index.d.ts +19 -0
  200. package/lib/slider/index.js +45 -5
  201. package/lib/slider/slider.css +14 -0
  202. package/lib/slider/slider.d.ts +9 -0
  203. package/lib/slider/slider.less +15 -0
  204. package/lib/slider/slider.variable.css +17 -0
  205. package/lib/steps/steps.variable.css +3 -0
  206. package/lib/styles/mixins/animate.variable.css +3 -0
  207. package/lib/styles/mixins/popper.variable.css +3 -0
  208. package/lib/styles/mixins/scroll.variable.css +3 -0
  209. package/lib/styles/reset.css +1 -3
  210. package/lib/styles/reset.less +3 -6
  211. package/lib/styles/reset.variable.css +4 -3
  212. package/lib/styles/themes/themes.less +5 -0
  213. package/lib/swiper/swiper.variable.css +3 -0
  214. package/lib/switcher/switcher.variable.css +3 -0
  215. package/lib/tab/tab.variable.css +3 -0
  216. package/lib/table/cache.d.ts +11 -3
  217. package/lib/table/components/table-cell.d.ts +3 -2
  218. package/lib/table/components/table-column.d.ts +7 -17
  219. package/lib/table/const.d.ts +4 -4
  220. package/lib/table/index.d.ts +29 -64
  221. package/lib/table/index.js +18068 -613
  222. package/lib/table/plugins/head-filter.css +8 -4
  223. package/lib/table/plugins/head-filter.less +6 -3
  224. package/lib/table/plugins/head-filter.variable.css +11 -4
  225. package/lib/table/plugins/head-sort.variable.css +3 -0
  226. package/lib/table/plugins/settings.variable.css +3 -0
  227. package/lib/table/plugins/use-active-columns.d.ts +2 -2
  228. package/lib/table/plugins/use-column-template.d.ts +7 -0
  229. package/lib/table/plugins/use-draggable.d.ts +2 -2
  230. package/lib/table/plugins/use-fixed-column.d.ts +1 -1
  231. package/lib/table/plugins/use-observer-resize.d.ts +5 -0
  232. package/lib/table/plugins/use-pagination.d.ts +3 -1
  233. package/lib/table/plugins/use-shift-key.d.ts +11 -0
  234. package/lib/table/props.d.ts +17 -7
  235. package/lib/table/table.css +112 -58
  236. package/lib/table/table.d.ts +11 -0
  237. package/lib/table/table.less +46 -58
  238. package/lib/table/table.variable.css +115 -58
  239. package/lib/table/use-attributes.d.ts +6 -43
  240. package/lib/table/use-column.d.ts +9 -10
  241. package/lib/table/use-common.d.ts +1 -1
  242. package/lib/table/use-render.d.ts +1 -1
  243. package/lib/table/utils.d.ts +1 -1
  244. package/lib/table-column/index.d.ts +92 -266
  245. package/lib/table-column/index.js +24 -98
  246. package/lib/tag/tag.variable.css +3 -0
  247. package/lib/tag-input/index.d.ts +4 -4
  248. package/lib/tag-input/tag-input.d.ts +2 -2
  249. package/lib/tag-input/tag-input.variable.css +3 -0
  250. package/lib/tag-input/tag-props.d.ts +1 -1
  251. package/lib/tag-input/tag-render.d.ts +1 -1
  252. package/lib/time-picker/index.d.ts +38 -35
  253. package/lib/time-picker/time-picker.variable.css +3 -0
  254. package/lib/timeline/index.d.ts +80 -44
  255. package/lib/timeline/index.js +54 -65
  256. package/lib/timeline/timeline.d.ts +46 -29
  257. package/lib/timeline/timeline.variable.css +3 -0
  258. package/lib/transfer/transfer.variable.css +3 -0
  259. package/lib/tree/constant.d.ts +3 -1
  260. package/lib/tree/index.d.ts +44 -0
  261. package/lib/tree/index.js +17548 -25
  262. package/lib/tree/props.d.ts +18 -0
  263. package/lib/tree/tree.css +76 -2
  264. package/lib/tree/tree.d.ts +28 -2
  265. package/lib/tree/tree.variable.css +79 -2
  266. package/lib/tree/use-intersection-observer.d.ts +27 -0
  267. package/lib/tree/use-node-attribute.d.ts +9 -0
  268. package/lib/upload/index.d.ts +12 -0
  269. package/lib/upload/index.js +21 -30
  270. package/lib/upload/props.d.ts +3 -0
  271. package/lib/upload/upload-trigger.d.ts +6 -0
  272. package/lib/upload/upload.d.ts +6 -0
  273. package/lib/upload/upload.variable.css +3 -0
  274. package/lib/virtual-render/index.d.ts +36 -9
  275. package/lib/virtual-render/index.js +295 -80
  276. package/lib/virtual-render/props.d.ts +16 -0
  277. package/lib/virtual-render/use-fix-top.d.ts +2 -7
  278. package/lib/virtual-render/use-scrollbar.d.ts +24 -0
  279. package/lib/virtual-render/v-virtual-render.d.ts +2 -1
  280. package/lib/virtual-render/virtual-render.css +76 -2
  281. package/lib/virtual-render/virtual-render.d.ts +16 -3
  282. package/lib/virtual-render/virtual-render.less +3 -3
  283. package/lib/virtual-render/virtual-render.variable.css +79 -2
  284. package/package.json +1 -1
  285. package/lib/shared/mask.d.ts +0 -11
@@ -1,5 +1,5 @@
1
- import { PropType, Ref } from 'vue';
2
- import { GetMenuListFunc, ICommonItem, IMenuFooterItem, ISearchItem, SearchInputMode, SearchItemType, SearchLogical, SelectedItem, ValidateValuesFunc, ValueBehavior } from './utils';
1
+ import { PropType, Ref, SlotsType } from 'vue';
2
+ import { GetMenuListFunc, ICommonItem, IMenuFooterItem, ISearchItem, MenuSlotParams, SearchInputMode, SearchItemType, SearchLogical, SelectedItem, ValidateValuesFunc, ValueBehavior } from './utils';
3
3
  declare const _default: import("vue").DefineComponent<{
4
4
  data: {
5
5
  type: PropType<ISearchItem[]>;
@@ -53,14 +53,20 @@ declare const _default: import("vue").DefineComponent<{
53
53
  };
54
54
  documentArrowEvent: (e: KeyboardEvent) => void;
55
55
  handleClickOutside: (e: MouseEvent) => void;
56
- handleInputFocus: (e: FocusEvent) => void;
56
+ handleInputFocus: () => void;
57
57
  handleInputChange: (event: Event) => void;
58
+ handleInputPaste: (event: ClipboardEvent) => void;
58
59
  handleLogicalChange: (logical: SearchLogical) => void;
59
60
  handleInputKeyup: (event: KeyboardEvent) => void;
60
61
  handleSelectItem: (item: ICommonItem, type?: SearchItemType) => Promise<void>;
61
62
  handleSelectCondtionItem: (item: ICommonItem) => void;
62
63
  handleMenuFooterClick: (item: IMenuFooterItem) => void;
63
64
  resolveClassName: (cls: string) => string;
65
+ inputFocusForWrapper: () => void;
66
+ inputEnterForWrapper: () => Promise<void>;
67
+ inputClearForWrapper: () => void;
68
+ deleteInputTextNode: () => void;
69
+ customPanelSubmit: (value: string) => void;
64
70
  t: import("vue").ComputedRef<{
65
71
  pleaseSelect: string;
66
72
  loading: string;
@@ -71,7 +77,7 @@ declare const _default: import("vue").DefineComponent<{
71
77
  and: string;
72
78
  logical: string;
73
79
  }>;
74
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("focus" | "delete" | "add")[], "focus" | "delete" | "add", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
80
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("focus" | "delete" | "add" | "selectKey")[], "focus" | "delete" | "add" | "selectKey", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
75
81
  data: {
76
82
  type: PropType<ISearchItem[]>;
77
83
  required: true;
@@ -96,10 +102,13 @@ declare const _default: import("vue").DefineComponent<{
96
102
  onFocus?: (...args: any[]) => any;
97
103
  onDelete?: (...args: any[]) => any;
98
104
  onAdd?: (...args: any[]) => any;
105
+ onSelectKey?: (...args: any[]) => any;
99
106
  }, {
100
107
  mode: SearchInputMode;
101
108
  conditions: ICommonItem[];
102
109
  showInputBefore: boolean;
103
110
  showCondition: boolean;
104
- }, {}>;
111
+ }, SlotsType<{
112
+ menu: MenuSlotParams;
113
+ }>>;
105
114
  export default _default;
@@ -189,6 +189,7 @@
189
189
  margin-top: -4px;
190
190
  color: #63656e;
191
191
  border: none;
192
+ flex: 1;
192
193
  }
193
194
  .bk-search-select-container .search-container-input .input-before:before {
194
195
  color: #c4c6cc;
@@ -287,12 +288,16 @@
287
288
  }
288
289
  .bk-search-select-menu .menu-item-mixin {
289
290
  display: flex;
290
- align-items: center;
291
291
  width: 100%;
292
292
  height: 32px;
293
+ max-width: 500px;
293
294
  padding: 0 8px;
294
- flex: 0 0 32px;
295
+ overflow: hidden;
296
+ text-overflow: ellipsis;
297
+ white-space: nowrap;
295
298
  outline: none;
299
+ align-items: center;
300
+ flex: 0 0 32px;
296
301
  }
297
302
  .bk-search-select-menu .menu-item-mixin:hover {
298
303
  cursor: pointer;
@@ -312,12 +317,16 @@
312
317
  }
313
318
  .bk-search-select-menu .menu-header-item {
314
319
  display: flex;
315
- align-items: center;
316
320
  width: 100%;
317
321
  height: 32px;
322
+ max-width: 500px;
318
323
  padding: 0 8px;
319
- flex: 0 0 32px;
324
+ overflow: hidden;
325
+ text-overflow: ellipsis;
326
+ white-space: nowrap;
320
327
  outline: none;
328
+ align-items: center;
329
+ flex: 0 0 32px;
321
330
  }
322
331
  .bk-search-select-menu .menu-header-item:hover {
323
332
  cursor: pointer;
@@ -360,18 +369,23 @@
360
369
  display: flex;
361
370
  max-height: 240px;
362
371
  padding: 4px 0;
372
+ margin: 0;
363
373
  overflow: auto;
364
374
  flex-direction: column;
365
375
  flex: 1;
366
376
  }
367
377
  .bk-search-select-menu .menu-content .menu-item {
368
378
  display: flex;
369
- align-items: center;
370
379
  width: 100%;
371
380
  height: 32px;
381
+ max-width: 500px;
372
382
  padding: 0 8px;
373
- flex: 0 0 32px;
383
+ overflow: hidden;
384
+ text-overflow: ellipsis;
385
+ white-space: nowrap;
374
386
  outline: none;
387
+ align-items: center;
388
+ flex: 0 0 32px;
375
389
  white-space: pre;
376
390
  }
377
391
  .bk-search-select-menu .menu-content .menu-item:hover {
@@ -1,5 +1,6 @@
1
1
  import { PropType, ShallowRef } from 'vue';
2
- import { GetMenuListFunc, ICommonItem, ISearchItem, ISearchValue, SearchItemType, SearchLogical, SelectedItem, ValidateValuesFunc, ValueBehavior } from './utils';
2
+ import { type SlotsType } from 'vue';
3
+ import { GetMenuListFunc, ICommonItem, ISearchItem, ISearchValue, MenuSlotParams, SearchItemType, SearchLogical, SelectedItem, ValidateValuesFunc, ValueBehavior } from './utils';
3
4
  export declare const SearchSelectProps: {
4
5
  data: {
5
6
  type: PropType<ISearchItem[]>;
@@ -84,7 +85,7 @@ declare const _default: import("vue").DefineComponent<{
84
85
  validator(v: ValueBehavior): boolean;
85
86
  };
86
87
  }, {
87
- inputRef: import("vue").Ref<import("vue").DefineComponent<{
88
+ inputRef: import("vue").Ref<import("vue").CreateComponentPublicInstance<Readonly<import("vue").ExtractPropTypes<{
88
89
  data: {
89
90
  type: PropType<ISearchItem[]>;
90
91
  required: true;
@@ -105,6 +106,11 @@ declare const _default: import("vue").DefineComponent<{
105
106
  getMenuList: PropType<GetMenuListFunc>;
106
107
  validateValues: PropType<ValidateValuesFunc>;
107
108
  valueBehavior: PropType<ValueBehavior>;
109
+ }>> & {
110
+ onFocus?: (...args: any[]) => any;
111
+ onDelete?: (...args: any[]) => any;
112
+ onAdd?: (...args: any[]) => any;
113
+ onSelectKey?: (...args: any[]) => any;
108
114
  }, {
109
115
  popoverRef: import("vue").Ref<HTMLDivElement>;
110
116
  inputRef: import("vue").Ref<HTMLDivElement>;
@@ -137,14 +143,20 @@ declare const _default: import("vue").DefineComponent<{
137
143
  };
138
144
  documentArrowEvent: (e: KeyboardEvent) => void;
139
145
  handleClickOutside: (e: MouseEvent) => void;
140
- handleInputFocus: (e: FocusEvent) => void;
146
+ handleInputFocus: () => void;
141
147
  handleInputChange: (event: Event) => void;
148
+ handleInputPaste: (event: ClipboardEvent) => void;
142
149
  handleLogicalChange: (logical: SearchLogical) => void;
143
150
  handleInputKeyup: (event: KeyboardEvent) => void;
144
151
  handleSelectItem: (item: ICommonItem, type?: SearchItemType) => Promise<void>;
145
152
  handleSelectCondtionItem: (item: ICommonItem) => void;
146
153
  handleMenuFooterClick: (item: import("./utils").IMenuFooterItem) => void;
147
154
  resolveClassName: (cls: string) => string;
155
+ inputFocusForWrapper: () => void;
156
+ inputEnterForWrapper: () => Promise<void>;
157
+ inputClearForWrapper: () => void;
158
+ deleteInputTextNode: () => void;
159
+ customPanelSubmit: (value: string) => void;
148
160
  t: import("vue").ComputedRef<{
149
161
  pleaseSelect: string;
150
162
  loading: string;
@@ -155,7 +167,7 @@ declare const _default: import("vue").DefineComponent<{
155
167
  and: string;
156
168
  logical: string;
157
169
  }>;
158
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("focus" | "delete" | "add")[], "focus" | "delete" | "add", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
170
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("focus" | "delete" | "add" | "selectKey")[], import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & Readonly<import("vue").ExtractPropTypes<{
159
171
  data: {
160
172
  type: PropType<ISearchItem[]>;
161
173
  required: true;
@@ -180,12 +192,109 @@ declare const _default: import("vue").DefineComponent<{
180
192
  onFocus?: (...args: any[]) => any;
181
193
  onDelete?: (...args: any[]) => any;
182
194
  onAdd?: (...args: any[]) => any;
195
+ onSelectKey?: (...args: any[]) => any;
183
196
  }, {
184
197
  mode: import("./utils").SearchInputMode;
185
198
  conditions: ICommonItem[];
186
199
  showInputBefore: boolean;
187
200
  showCondition: boolean;
188
- }, {}>>;
201
+ }, true, {}, SlotsType<{
202
+ menu: MenuSlotParams;
203
+ }>, {
204
+ P: {};
205
+ B: {};
206
+ D: {};
207
+ C: {};
208
+ M: {};
209
+ Defaults: {};
210
+ }, Readonly<import("vue").ExtractPropTypes<{
211
+ data: {
212
+ type: PropType<ISearchItem[]>;
213
+ required: true;
214
+ };
215
+ showInputBefore: BooleanConstructor;
216
+ showCondition: BooleanConstructor;
217
+ clickOutside: FunctionConstructor;
218
+ placeholder: StringConstructor;
219
+ conditions: {
220
+ type: PropType<ICommonItem[]>;
221
+ default: () => any[];
222
+ };
223
+ defautUsingItem: PropType<SelectedItem>;
224
+ mode: {
225
+ type: PropType<import("./utils").SearchInputMode>;
226
+ default: import("./utils").SearchInputMode;
227
+ };
228
+ getMenuList: PropType<GetMenuListFunc>;
229
+ validateValues: PropType<ValidateValuesFunc>;
230
+ valueBehavior: PropType<ValueBehavior>;
231
+ }>> & {
232
+ onFocus?: (...args: any[]) => any;
233
+ onDelete?: (...args: any[]) => any;
234
+ onAdd?: (...args: any[]) => any;
235
+ onSelectKey?: (...args: any[]) => any;
236
+ }, {
237
+ popoverRef: import("vue").Ref<HTMLDivElement>;
238
+ inputRef: import("vue").Ref<HTMLDivElement>;
239
+ keyword: import("vue").Ref<string>;
240
+ loading: import("vue").Ref<boolean>;
241
+ remoteMenuList: import("vue").Ref<{
242
+ id: string;
243
+ name: string;
244
+ disabled?: boolean;
245
+ realId?: string;
246
+ value?: {
247
+ name: string;
248
+ id: string;
249
+ realId?: string;
250
+ isSelected?: boolean;
251
+ logical?: SearchLogical;
252
+ };
253
+ isSelected?: boolean;
254
+ logical?: SearchLogical;
255
+ }[]>;
256
+ menuList: import("vue").Ref<ISearchItem[]>;
257
+ menuHoverId: import("vue").Ref<string>;
258
+ isFocus: import("vue").Ref<boolean>;
259
+ usingItem: import("vue").Ref<SelectedItem>;
260
+ showPopover: import("vue").Ref<boolean>;
261
+ showNoSelectValueError: import("vue").Ref<boolean>;
262
+ debounceSetMenuList: {
263
+ (this: any): any;
264
+ cancel(): void;
265
+ };
266
+ documentArrowEvent: (e: KeyboardEvent) => void;
267
+ handleClickOutside: (e: MouseEvent) => void;
268
+ handleInputFocus: () => void;
269
+ handleInputChange: (event: Event) => void;
270
+ handleInputPaste: (event: ClipboardEvent) => void;
271
+ handleLogicalChange: (logical: SearchLogical) => void;
272
+ handleInputKeyup: (event: KeyboardEvent) => void;
273
+ handleSelectItem: (item: ICommonItem, type?: SearchItemType) => Promise<void>;
274
+ handleSelectCondtionItem: (item: ICommonItem) => void;
275
+ handleMenuFooterClick: (item: import("./utils").IMenuFooterItem) => void;
276
+ resolveClassName: (cls: string) => string;
277
+ inputFocusForWrapper: () => void;
278
+ inputEnterForWrapper: () => Promise<void>;
279
+ inputClearForWrapper: () => void;
280
+ deleteInputTextNode: () => void;
281
+ customPanelSubmit: (value: string) => void;
282
+ t: import("vue").ComputedRef<{
283
+ pleaseSelect: string;
284
+ loading: string;
285
+ filterQueryMustHasValue: string;
286
+ ok: string;
287
+ cancel: string;
288
+ or: string;
289
+ and: string;
290
+ logical: string;
291
+ }>;
292
+ }, {}, {}, {}, {
293
+ mode: import("./utils").SearchInputMode;
294
+ conditions: ICommonItem[];
295
+ showInputBefore: boolean;
296
+ showCondition: boolean;
297
+ }>>;
189
298
  wrapRef: import("vue").Ref<HTMLDivElement>;
190
299
  isFocus: import("vue").Ref<boolean>;
191
300
  copyData: ShallowRef<ISearchItem[]>;
@@ -209,6 +318,7 @@ declare const _default: import("vue").DefineComponent<{
209
318
  }[];
210
319
  condition: string;
211
320
  logical: SearchLogical;
321
+ nameRenderkey: string;
212
322
  searchItem: {
213
323
  id: string;
214
324
  name: string;
@@ -251,6 +361,7 @@ declare const _default: import("vue").DefineComponent<{
251
361
  onlyRecommendChildren?: boolean;
252
362
  logical?: SearchLogical;
253
363
  showLogicalPanel?: boolean;
364
+ isCustomMenu?: boolean;
254
365
  };
255
366
  type: SearchItemType;
256
367
  readonly multiple: boolean;
@@ -276,8 +387,12 @@ declare const _default: import("vue").DefineComponent<{
276
387
  readonly keyInnerHtml: string;
277
388
  readonly keyInnerText: string;
278
389
  readonly showLogical: boolean;
390
+ readonly isCustomMenu: boolean;
279
391
  isSpecialType: () => boolean;
280
392
  addValue: (item: ICommonItem) => void;
393
+ str2Values: (str: string) => ICommonItem[];
394
+ addValues: (str: string, mergeValues?: boolean) => void;
395
+ getValue: (str: string) => ICommonItem;
281
396
  toValue: () => ISearchValue;
282
397
  toValueKey: () => string;
283
398
  isInValueList: (item: ICommonItem) => boolean;
@@ -296,6 +411,7 @@ declare const _default: import("vue").DefineComponent<{
296
411
  handleClickSearch: (e: MouseEvent) => void;
297
412
  localConditions: import("vue").ComputedRef<ICommonItem[]>;
298
413
  resolveClassName: (cls: string) => string;
414
+ handleSelectedKey: (a: any) => void;
299
415
  t: import("vue").ComputedRef<{
300
416
  pleaseSelect: string;
301
417
  loading: string;
@@ -306,7 +422,7 @@ declare const _default: import("vue").DefineComponent<{
306
422
  and: string;
307
423
  logical: string;
308
424
  }>;
309
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("search" | "update:modelValue")[], "search" | "update:modelValue", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
425
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("search" | "update:modelValue" | "selectKey")[], "search" | "update:modelValue" | "selectKey", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
310
426
  data: {
311
427
  type: PropType<ISearchItem[]>;
312
428
  default: () => any[];
@@ -349,6 +465,7 @@ declare const _default: import("vue").DefineComponent<{
349
465
  };
350
466
  }>> & {
351
467
  "onUpdate:modelValue"?: (...args: any[]) => any;
468
+ onSelectKey?: (...args: any[]) => any;
352
469
  onSearch?: (...args: any[]) => any;
353
470
  }, {
354
471
  data: ISearchItem[];
@@ -360,5 +477,10 @@ declare const _default: import("vue").DefineComponent<{
360
477
  valueBehavior: "all" | "need-key";
361
478
  shrink: boolean;
362
479
  uniqueSelect: boolean;
363
- }, {}>;
480
+ }, SlotsType<{
481
+ menu: MenuSlotParams;
482
+ prepend: void;
483
+ append: void;
484
+ validate: void;
485
+ }>>;
364
486
  export default _default;
@@ -2,10 +2,8 @@
2
2
  @import '../styles/themes/themes.less';
3
3
  @import '../styles/mixins/mixins.less';
4
4
 
5
-
6
5
  @search-select-name: ~'@{bk-prefix}-search-select';
7
6
 
8
-
9
7
  .@{search-select-name} {
10
8
  position: relative;
11
9
  z-index: 9;
@@ -41,7 +39,7 @@
41
39
  border-radius: @border-radius-base;
42
40
  outline: none;
43
41
  box-sizing: border-box;
44
- transition: border .2s linear;
42
+ transition: border 0.2s linear;
45
43
  resize: none;
46
44
  flex-direction: row;
47
45
  align-items: center;
@@ -72,7 +70,7 @@
72
70
  margin-top: 4px;
73
71
  overflow: visible;
74
72
  text-align: left;
75
- transition: max-height .3s cubic-bezier(.4, 0, .2, 1);
73
+ transition: max-height 0.3s cubic-bezier(0.4, 0, 0.2, 1);
76
74
  flex: 1;
77
75
  flex-wrap: wrap;
78
76
  align-items: center;
@@ -91,7 +89,7 @@
91
89
  align-self: center;
92
90
 
93
91
  &.hidden-selected {
94
- visibility: hidden
92
+ visibility: hidden;
95
93
  }
96
94
 
97
95
  &.overflow-selected {
@@ -139,6 +137,7 @@
139
137
  margin-top: -4px;
140
138
  color: @search-select-font-color;
141
139
  border: none;
140
+ flex: 1;
142
141
 
143
142
  .input-before {
144
143
  &:before {
@@ -198,7 +197,7 @@
198
197
  display: flex;
199
198
  margin-right: 8px;
200
199
  font-size: 16px;
201
- transition: color .2s linear;
200
+ transition: color 0.2s linear;
202
201
  align-items: center;
203
202
  justify-content: center;
204
203
 
@@ -216,7 +215,7 @@
216
215
  &::-webkit-scrollbar-thumb {
217
216
  background: #e6e9ea;
218
217
  border-radius: 20px;
219
- box-shadow: inset 0 0 6px rgba(204, 204, 204, .3);
218
+ box-shadow: inset 0 0 6px rgba(204, 204, 204, 0.3);
220
219
  }
221
220
  }
222
221
 
@@ -255,12 +254,16 @@
255
254
 
256
255
  .menu-item-mixin {
257
256
  display: flex;
258
- align-items: center;
259
257
  width: 100%;
260
258
  height: 32px;
259
+ max-width: 500px;
261
260
  padding: 0 8px;
262
- flex: 0 0 32px;
261
+ overflow: hidden;
262
+ text-overflow: ellipsis;
263
+ white-space: nowrap;
263
264
  outline: none;
265
+ align-items: center;
266
+ flex: 0 0 32px;
264
267
 
265
268
  &:hover {
266
269
  cursor: pointer;
@@ -285,7 +288,7 @@
285
288
  .menu-item-mixin();
286
289
 
287
290
  &.is-disabled {
288
- .menu-disabled-mixin()
291
+ .menu-disabled-mixin();
289
292
  }
290
293
  }
291
294
  }
@@ -323,6 +326,7 @@
323
326
  display: flex;
324
327
  max-height: 240px;
325
328
  padding: 4px 0;
329
+ margin: 0;
326
330
  overflow: auto;
327
331
  flex-direction: column;
328
332
  flex: 1;
@@ -355,7 +359,7 @@
355
359
  .menu-disabled-mixin();
356
360
 
357
361
  .menu-name {
358
- color: @light-gray;;
362
+ color: @light-gray;
359
363
  }
360
364
  }
361
365
 
@@ -394,7 +398,7 @@
394
398
  }
395
399
 
396
400
  &.is-disabled {
397
- .menu-disabled-mixin()
401
+ .menu-disabled-mixin();
398
402
  }
399
403
  }
400
404
  }
@@ -13,6 +13,7 @@
13
13
  --whitesmoke-color: #fafbfd;
14
14
  --disable-color: #dcdee5;
15
15
  --disable-bg-color: #f9fafd;
16
+ --border-color: #dcdee5;
16
17
  --font-size-base: 12px;
17
18
  --font-size-medium: 14px;
18
19
  --font-size-large: 16px;
@@ -124,6 +125,8 @@
124
125
  --search-select-placeholder-color: var(--light-gray);
125
126
  --search-select-message-color: var(--danger-color);
126
127
  --search-select-menu-border-color: var(--disable-color);
128
+ --select-active-color: #e1ecff;
129
+ --select-hover-color: #f5f7fa;
127
130
  }
128
131
  @keyframes loading-scale-animate {
129
132
  0% {
@@ -315,6 +318,7 @@
315
318
  margin-top: -4px;
316
319
  color: #63656e;
317
320
  border: none;
321
+ flex: 1;
318
322
  }
319
323
  .bk-search-select-container .search-container-input .input-before:before {
320
324
  color: #c4c6cc;
@@ -413,12 +417,16 @@
413
417
  }
414
418
  .bk-search-select-menu .menu-item-mixin {
415
419
  display: flex;
416
- align-items: center;
417
420
  width: 100%;
418
421
  height: 32px;
422
+ max-width: 500px;
419
423
  padding: 0 8px;
420
- flex: 0 0 32px;
424
+ overflow: hidden;
425
+ text-overflow: ellipsis;
426
+ white-space: nowrap;
421
427
  outline: none;
428
+ align-items: center;
429
+ flex: 0 0 32px;
422
430
  }
423
431
  .bk-search-select-menu .menu-item-mixin:hover {
424
432
  cursor: pointer;
@@ -438,12 +446,16 @@
438
446
  }
439
447
  .bk-search-select-menu .menu-header-item {
440
448
  display: flex;
441
- align-items: center;
442
449
  width: 100%;
443
450
  height: 32px;
451
+ max-width: 500px;
444
452
  padding: 0 8px;
445
- flex: 0 0 32px;
453
+ overflow: hidden;
454
+ text-overflow: ellipsis;
455
+ white-space: nowrap;
446
456
  outline: none;
457
+ align-items: center;
458
+ flex: 0 0 32px;
447
459
  }
448
460
  .bk-search-select-menu .menu-header-item:hover {
449
461
  cursor: pointer;
@@ -486,18 +498,23 @@
486
498
  display: flex;
487
499
  max-height: 240px;
488
500
  padding: 4px 0;
501
+ margin: 0;
489
502
  overflow: auto;
490
503
  flex-direction: column;
491
504
  flex: 1;
492
505
  }
493
506
  .bk-search-select-menu .menu-content .menu-item {
494
507
  display: flex;
495
- align-items: center;
496
508
  width: 100%;
497
509
  height: 32px;
510
+ max-width: 500px;
498
511
  padding: 0 8px;
499
- flex: 0 0 32px;
512
+ overflow: hidden;
513
+ text-overflow: ellipsis;
514
+ white-space: nowrap;
500
515
  outline: none;
516
+ align-items: center;
517
+ flex: 0 0 32px;
501
518
  white-space: pre;
502
519
  }
503
520
  .bk-search-select-menu .menu-content .menu-item:hover {