bkui-vue 2.0.1-beta.9 → 2.0.1-beta.90

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 (451) hide show
  1. package/README.md +15 -0
  2. package/dist/index.cjs.js +167 -167
  3. package/dist/index.esm.js +32331 -31642
  4. package/dist/index.umd.js +167 -167
  5. package/dist/style.css +1 -1
  6. package/dist/style.variable.css +1 -1
  7. package/lib/affix/affix.css +130 -0
  8. package/lib/affix/affix.variable.css +262 -1
  9. package/lib/affix/index.js +7 -7
  10. package/lib/alert/alert.css +133 -3
  11. package/lib/alert/alert.d.ts +5 -12
  12. package/lib/alert/alert.variable.css +262 -1
  13. package/lib/alert/index.d.ts +11 -26
  14. package/lib/alert/index.js +6 -6
  15. package/lib/backtop/backtop.css +133 -3
  16. package/lib/backtop/backtop.d.ts +1 -1
  17. package/lib/backtop/backtop.variable.css +395 -4
  18. package/lib/backtop/index.d.ts +3 -3
  19. package/lib/backtop/index.js +6 -6
  20. package/lib/badge/badge.css +156 -26
  21. package/lib/badge/badge.variable.css +262 -1
  22. package/lib/badge/index.js +1 -1
  23. package/lib/breadcrumb/breadcrumb.css +135 -5
  24. package/lib/breadcrumb/breadcrumb.variable.css +397 -6
  25. package/lib/button/button.css +417 -243
  26. package/lib/button/button.d.ts +8 -8
  27. package/lib/button/button.less +74 -71
  28. package/lib/button/button.variable.css +450 -145
  29. package/lib/button/index.d.ts +11 -11
  30. package/lib/button/index.js +6 -7
  31. package/lib/card/card.css +134 -4
  32. package/lib/card/card.variable.css +396 -5
  33. package/lib/cascader/cascader-panel.d.ts +6 -1
  34. package/lib/cascader/cascader.css +153 -23
  35. package/lib/cascader/cascader.d.ts +5 -1
  36. package/lib/cascader/cascader.variable.css +415 -24
  37. package/lib/cascader/index.d.ts +1 -0
  38. package/lib/cascader/index.js +110 -40
  39. package/lib/cascader/interface.d.ts +1 -1
  40. package/lib/checkbox/checkbox-group.d.ts +0 -16
  41. package/lib/checkbox/checkbox.css +147 -9
  42. package/lib/checkbox/checkbox.d.ts +39 -7
  43. package/lib/checkbox/checkbox.less +12 -0
  44. package/lib/checkbox/checkbox.variable.css +270 -1
  45. package/lib/checkbox/index.d.ts +57 -22
  46. package/lib/checkbox/index.js +21 -8
  47. package/lib/checkbox/type.d.ts +1 -1
  48. package/lib/code-diff/code-diff.css +130 -0
  49. package/lib/code-diff/code-diff.variable.css +262 -1
  50. package/lib/code-diff/index.js +8 -8
  51. package/lib/collapse/collapse-panel.d.ts +5 -5
  52. package/lib/collapse/collapse.css +131 -1
  53. package/lib/collapse/collapse.variable.css +262 -1
  54. package/lib/collapse/index.d.ts +5 -5
  55. package/lib/collapse/index.js +4 -2
  56. package/lib/collapse/props.d.ts +2 -2
  57. package/lib/collapse/utils.d.ts +2 -2
  58. package/lib/collapse-transition/collapse-transition.css +130 -0
  59. package/lib/collapse-transition/collapse-transition.variable.css +262 -1
  60. package/lib/color-picker/color-picker.css +130 -0
  61. package/lib/color-picker/color-picker.d.ts +16 -0
  62. package/lib/color-picker/color-picker.variable.css +262 -1
  63. package/lib/color-picker/index.d.ts +23 -0
  64. package/lib/color-picker/index.js +52 -45
  65. package/lib/components.d.ts +30 -32
  66. package/lib/components.js +29 -31
  67. package/lib/config-provider/config-provider.css +130 -0
  68. package/lib/config-provider/config-provider.variable.css +262 -1
  69. package/lib/config-provider/index.d.ts +1 -1
  70. package/lib/container/container.css +130 -0
  71. package/lib/container/container.variable.css +392 -1
  72. package/lib/container/index.js +6 -7
  73. package/lib/date-picker/base/date-table.d.ts +1 -1
  74. package/lib/date-picker/base/month-table.d.ts +1 -1
  75. package/lib/date-picker/base/picker-dropdown.d.ts +1 -1
  76. package/lib/date-picker/base/year-table.d.ts +1 -1
  77. package/lib/date-picker/date-picker.css +147 -17
  78. package/lib/date-picker/date-picker.d.ts +3 -11
  79. package/lib/date-picker/date-picker.variable.css +262 -1
  80. package/lib/date-picker/index.d.ts +10 -24
  81. package/lib/date-picker/index.js +258 -219
  82. package/lib/date-picker/interface.d.ts +9 -9
  83. package/lib/date-picker/panel/date-range.d.ts +5 -5
  84. package/lib/date-picker/panel/date.d.ts +1 -1
  85. package/lib/date-picker/panel/time-range.d.ts +1 -10
  86. package/lib/date-picker/panel/time.d.ts +2 -11
  87. package/lib/date-picker/props.d.ts +1 -5
  88. package/lib/date-picker/time-picker.d.ts +3 -10
  89. package/lib/date-picker/utils.d.ts +1 -1
  90. package/lib/dialog/dialog.css +138 -8
  91. package/lib/dialog/dialog.d.ts +47 -31
  92. package/lib/dialog/dialog.variable.css +400 -9
  93. package/lib/dialog/index.d.ts +101 -67
  94. package/lib/dialog/index.js +25 -23
  95. package/lib/dialog/props.d.ts +20 -13
  96. package/lib/directives/index.d.ts +4 -3
  97. package/lib/directives/index.js +198 -176
  98. package/lib/directives/tooltips.d.ts +1 -1
  99. package/lib/dist.index.js +2 -4
  100. package/lib/divider/divider.css +133 -3
  101. package/lib/divider/divider.d.ts +5 -5
  102. package/lib/divider/divider.variable.css +262 -1
  103. package/lib/divider/index.d.ts +11 -11
  104. package/lib/divider/index.js +2 -2
  105. package/lib/divider/props.d.ts +2 -2
  106. package/lib/dropdown/dropdown-item.d.ts +1 -1
  107. package/lib/dropdown/dropdown-menu.d.ts +1 -1
  108. package/lib/dropdown/dropdown.css +130 -0
  109. package/lib/dropdown/dropdown.d.ts +11 -11
  110. package/lib/dropdown/dropdown.variable.css +392 -1
  111. package/lib/dropdown/index.d.ts +26 -26
  112. package/lib/dropdown/index.js +10 -8
  113. package/lib/exception/exception.css +130 -0
  114. package/lib/exception/exception.d.ts +9 -9
  115. package/lib/exception/exception.variable.css +262 -1
  116. package/lib/exception/index.d.ts +11 -11
  117. package/lib/exception/index.js +10 -10
  118. package/lib/exception/typings/index.d.ts +1 -1
  119. package/lib/fixed-navbar/fixed-navbar.css +134 -4
  120. package/lib/fixed-navbar/fixed-navbar.variable.css +262 -1
  121. package/lib/fixed-navbar/index.js +2 -2
  122. package/lib/form/form-item.d.ts +7 -19
  123. package/lib/form/form.css +130 -0
  124. package/lib/form/form.d.ts +2 -2
  125. package/lib/form/form.variable.css +262 -1
  126. package/lib/form/index.d.ts +7 -14
  127. package/lib/form/index.js +22 -21
  128. package/lib/form/type.d.ts +2 -2
  129. package/lib/icon/index.d.ts +11 -11
  130. package/lib/icon/index.js +11 -11
  131. package/lib/image/image-viewer.css +130 -0
  132. package/lib/image/image-viewer.d.ts +1 -1
  133. package/lib/image/image-viewer.variable.css +262 -1
  134. package/lib/image/image.css +130 -0
  135. package/lib/image/image.variable.css +392 -1
  136. package/lib/image/index.js +20 -21
  137. package/lib/index.d.ts +9 -3
  138. package/lib/index.js +5 -29
  139. package/lib/info-box/index.js +17 -18
  140. package/lib/info-box/info-box.css +134 -4
  141. package/lib/info-box/info-box.d.ts +15 -15
  142. package/lib/info-box/info-box.variable.css +262 -1
  143. package/lib/input/index.d.ts +15 -15
  144. package/lib/input/index.js +63 -516
  145. package/lib/input/input.css +225 -73
  146. package/lib/input/input.d.ts +15 -15
  147. package/lib/input/input.less +30 -1
  148. package/lib/input/input.variable.css +487 -74
  149. package/lib/link/index.d.ts +11 -11
  150. package/lib/link/index.js +3 -3
  151. package/lib/link/link.css +146 -16
  152. package/lib/link/link.d.ts +5 -5
  153. package/lib/link/link.variable.css +262 -1
  154. package/lib/loading/index.d.ts +12 -11
  155. package/lib/loading/index.js +10 -8
  156. package/lib/loading/loading.css +146 -16
  157. package/lib/loading/loading.d.ts +8 -8
  158. package/lib/loading/loading.variable.css +408 -17
  159. package/lib/locale/index.d.ts +1 -1
  160. package/lib/menu/index.d.ts +1 -0
  161. package/lib/menu/index.js +2 -3
  162. package/lib/menu/menu.css +148 -18
  163. package/lib/menu/menu.variable.css +410 -19
  164. package/lib/menu/submenu.css +130 -0
  165. package/lib/menu/submenu.d.ts +1 -0
  166. package/lib/menu/submenu.variable.css +262 -1
  167. package/lib/menu/utils.d.ts +3 -3
  168. package/lib/message/index.js +18 -18
  169. package/lib/message/message.css +153 -22
  170. package/lib/message/message.less +3 -2
  171. package/lib/message/message.variable.css +264 -2
  172. package/lib/message/messageConstructor.d.ts +16 -16
  173. package/lib/modal/index.d.ts +62 -21
  174. package/lib/modal/index.js +49 -28
  175. package/lib/modal/modal.css +134 -4
  176. package/lib/modal/modal.d.ts +24 -8
  177. package/lib/modal/modal.variable.css +396 -5
  178. package/lib/modal/props.mixin.d.ts +10 -3
  179. package/lib/navigation/index.js +20 -20
  180. package/lib/navigation/navigation.css +132 -2
  181. package/lib/navigation/navigation.d.ts +1 -1
  182. package/lib/navigation/navigation.variable.css +262 -1
  183. package/lib/notify/index.js +4 -4
  184. package/lib/notify/notify.css +137 -7
  185. package/lib/notify/notify.variable.css +262 -1
  186. package/lib/notify/notifyConstructor.d.ts +5 -5
  187. package/lib/overflow-title/components/overflow-title.d.ts +29 -20
  188. package/lib/overflow-title/index.d.ts +59 -42
  189. package/lib/overflow-title/index.js +75 -18
  190. package/lib/overflow-title/props.d.ts +28 -23
  191. package/lib/pagination/index.d.ts +0 -19
  192. package/lib/pagination/index.js +76 -23
  193. package/lib/pagination/pagination.css +139 -9
  194. package/lib/pagination/pagination.d.ts +0 -13
  195. package/lib/pagination/pagination.less +14 -13
  196. package/lib/pagination/pagination.variable.css +270 -9
  197. package/lib/pagination/type.d.ts +1 -1
  198. package/lib/pagination/use-limit.d.ts +1 -1
  199. package/lib/pagination/use-total.d.ts +1 -1
  200. package/lib/plugin-popover/index.js +92 -49
  201. package/lib/pop-confirm/index.d.ts +11 -43
  202. package/lib/pop-confirm/index.js +27 -28
  203. package/lib/pop-confirm/pop-confirm.css +133 -1
  204. package/lib/pop-confirm/pop-confirm.d.ts +5 -19
  205. package/lib/pop-confirm/pop-confirm.less +3 -1
  206. package/lib/pop-confirm/pop-confirm.variable.css +265 -2
  207. package/lib/pop-confirm/props.d.ts +5 -11
  208. package/lib/popover/const.d.ts +3 -3
  209. package/lib/popover/content.d.ts +5 -2
  210. package/lib/popover/index.d.ts +74 -30
  211. package/lib/popover/index.js +92 -49
  212. package/lib/popover/plugin-popover.d.ts +1 -1
  213. package/lib/popover/popover.css +130 -0
  214. package/lib/popover/popover.d.ts +32 -12
  215. package/lib/popover/popover.variable.css +262 -1
  216. package/lib/popover/props.d.ts +14 -6
  217. package/lib/popover/use-floating.d.ts +5 -2
  218. package/lib/preset.d.ts +0 -1
  219. package/lib/preset.js +0 -1
  220. package/lib/process/index.js +3 -3
  221. package/lib/process/process.css +143 -13
  222. package/lib/process/process.variable.css +262 -1
  223. package/lib/progress/index.d.ts +11 -11
  224. package/lib/progress/index.js +10 -11
  225. package/lib/progress/progress.css +134 -4
  226. package/lib/progress/progress.d.ts +7 -7
  227. package/lib/progress/progress.variable.css +396 -5
  228. package/lib/radio/index.d.ts +21 -21
  229. package/lib/radio/index.js +28 -17
  230. package/lib/radio/radio-button.d.ts +7 -7
  231. package/lib/radio/radio-group.d.ts +7 -7
  232. package/lib/radio/radio.css +172 -42
  233. package/lib/radio/radio.d.ts +7 -7
  234. package/lib/radio/radio.variable.css +262 -1
  235. package/lib/radio/type.d.ts +1 -1
  236. package/lib/rate/index.js +8 -8
  237. package/lib/rate/rate.css +130 -0
  238. package/lib/rate/rate.variable.css +262 -1
  239. package/lib/resize-layout/index.d.ts +34 -11
  240. package/lib/resize-layout/index.js +33 -14
  241. package/lib/resize-layout/resize-layout.css +130 -0
  242. package/lib/resize-layout/resize-layout.d.ts +16 -5
  243. package/lib/resize-layout/resize-layout.variable.css +262 -1
  244. package/lib/scrollbar/css/scrollbar.css +239 -0
  245. package/lib/scrollbar/css/scrollbar.less +139 -0
  246. package/lib/scrollbar/css/scrollbar.variable.css +499 -0
  247. package/lib/scrollbar/handlers/click-rail.d.ts +2 -0
  248. package/lib/scrollbar/handlers/drag-thumb.d.ts +1 -0
  249. package/lib/scrollbar/handlers/keyboard.d.ts +2 -0
  250. package/lib/scrollbar/handlers/mouse-wheel.d.ts +2 -0
  251. package/lib/scrollbar/handlers/touch.d.ts +4 -0
  252. package/lib/scrollbar/helper/class-names.d.ts +21 -0
  253. package/lib/scrollbar/helper/css.d.ts +3 -0
  254. package/lib/scrollbar/helper/dom.d.ts +4 -0
  255. package/lib/scrollbar/helper/event-manager.d.ts +20 -0
  256. package/lib/scrollbar/helper/util.d.ts +11 -0
  257. package/lib/scrollbar/index.d.ts +133 -13
  258. package/lib/scrollbar/index.js +1332 -18434
  259. package/lib/scrollbar/process-scroll-diff.d.ts +1 -0
  260. package/lib/scrollbar/update-geometry.d.ts +8 -0
  261. package/lib/search-select/index.d.ts +100 -78
  262. package/lib/search-select/index.js +344 -213
  263. package/lib/search-select/input.d.ts +17 -6
  264. package/lib/search-select/menu.d.ts +13 -1
  265. package/lib/search-select/search-select.css +163 -35
  266. package/lib/search-select/search-select.d.ts +33 -43
  267. package/lib/search-select/search-select.less +2 -2
  268. package/lib/search-select/search-select.variable.css +425 -36
  269. package/lib/search-select/selected.d.ts +35 -10
  270. package/lib/search-select/utils.d.ts +6 -6
  271. package/lib/select/common.d.ts +4 -4
  272. package/lib/select/index.d.ts +251 -91
  273. package/lib/select/index.js +313 -200
  274. package/lib/select/option.d.ts +5 -6
  275. package/lib/select/select.css +175 -43
  276. package/lib/select/select.d.ts +104 -34
  277. package/lib/select/select.less +7 -4
  278. package/lib/select/select.variable.css +437 -44
  279. package/lib/select/selectTagInput.d.ts +7 -6
  280. package/lib/select/type.d.ts +10 -11
  281. package/lib/shared/frame-throttle.d.ts +15 -0
  282. package/lib/shared/index.d.ts +2 -1
  283. package/lib/shared/index.js +111 -47
  284. package/lib/shared/popover.d.ts +3 -3
  285. package/lib/shared/token.d.ts +1 -1
  286. package/lib/shared/vue-types.d.ts +53 -52
  287. package/lib/shared/z-index-manager.d.ts +6 -6
  288. package/lib/sideslider/index.d.ts +52 -18
  289. package/lib/sideslider/index.js +12 -11
  290. package/lib/sideslider/sideslider.css +138 -9
  291. package/lib/sideslider/sideslider.d.ts +24 -8
  292. package/lib/sideslider/sideslider.less +7 -8
  293. package/lib/sideslider/sideslider.variable.css +269 -9
  294. package/lib/slider/index.js +21 -23
  295. package/lib/slider/slider.css +135 -5
  296. package/lib/slider/slider.variable.css +262 -1
  297. package/lib/steps/index.d.ts +14 -29
  298. package/lib/steps/index.js +3 -4
  299. package/lib/steps/steps.css +168 -38
  300. package/lib/steps/steps.d.ts +8 -18
  301. package/lib/steps/steps.variable.css +262 -1
  302. package/lib/styles/index.d.ts +1 -0
  303. package/lib/styles/mixins/animate.css +130 -0
  304. package/lib/styles/mixins/animate.variable.css +262 -1
  305. package/lib/styles/mixins/mixins.css +130 -0
  306. package/lib/styles/mixins/mixins.variable.css +130 -0
  307. package/lib/styles/mixins/popper.css +130 -0
  308. package/lib/styles/mixins/popper.variable.css +262 -1
  309. package/lib/styles/mixins/scroll.css +130 -0
  310. package/lib/styles/mixins/scroll.variable.css +262 -1
  311. package/lib/styles/reset.css +130 -0
  312. package/lib/styles/reset.variable.css +262 -1
  313. package/lib/{scrollbar/scrollbar.variable.css → styles/themes/themes.css} +2 -76
  314. package/lib/styles/themes/themes.less +299 -129
  315. package/lib/styles/themes/themes.variable.css +130 -0
  316. package/lib/swiper/index.js +5 -5
  317. package/lib/swiper/swiper.css +130 -0
  318. package/lib/swiper/swiper.variable.css +262 -1
  319. package/lib/switcher/index.d.ts +11 -11
  320. package/lib/switcher/index.js +2 -2
  321. package/lib/switcher/switcher.css +147 -17
  322. package/lib/switcher/switcher.d.ts +9 -9
  323. package/lib/switcher/switcher.variable.css +409 -18
  324. package/lib/tab/index.d.ts +49 -119
  325. package/lib/tab/index.js +60 -49
  326. package/lib/tab/props.d.ts +27 -52
  327. package/lib/tab/tab-nav.d.ts +26 -66
  328. package/lib/tab/tab-panel.d.ts +27 -5
  329. package/lib/tab/tab.css +211 -17
  330. package/lib/tab/tab.d.ts +10 -54
  331. package/lib/tab/tab.less +91 -4
  332. package/lib/tab/tab.variable.css +326 -1
  333. package/lib/table/components/ghost-body.d.ts +2 -0
  334. package/lib/table/components/table-cell.d.ts +22 -0
  335. package/lib/table/components/table-column.d.ts +23 -126
  336. package/lib/table/const.d.ts +23 -10
  337. package/lib/table/events.d.ts +16 -112
  338. package/lib/table/hooks/use-cell.d.ts +20 -0
  339. package/lib/table/hooks/use-column-resize.d.ts +7 -0
  340. package/lib/table/hooks/use-column-template.d.ts +5 -0
  341. package/lib/table/hooks/use-columns.d.ts +69 -0
  342. package/lib/table/{plugins → hooks}/use-draggable.d.ts +2 -2
  343. package/lib/table/hooks/use-fixed-column.d.ts +10 -0
  344. package/lib/table/hooks/use-head.d.ts +16 -0
  345. package/lib/table/hooks/use-layout.d.ts +25 -0
  346. package/lib/table/hooks/use-pagination.d.ts +16 -0
  347. package/lib/table/hooks/use-render.d.ts +21 -0
  348. package/lib/table/hooks/use-rows.d.ts +30 -0
  349. package/lib/table/hooks/use-settings.d.ts +136 -0
  350. package/lib/table/{plugins → hooks}/use-shift-key.d.ts +4 -2
  351. package/lib/table/index.d.ts +112 -634
  352. package/lib/table/index.js +4090 -3559
  353. package/lib/table/plugins/head-filter.css +135 -0
  354. package/lib/table/plugins/head-filter.d.ts +2 -1
  355. package/lib/table/plugins/head-filter.less +4 -0
  356. package/lib/table/plugins/head-filter.variable.css +267 -1
  357. package/lib/table/plugins/head-sort.css +130 -0
  358. package/lib/table/plugins/head-sort.variable.css +262 -1
  359. package/lib/table/plugins/settings.css +131 -0
  360. package/lib/table/plugins/settings.less +1 -0
  361. package/lib/table/plugins/settings.variable.css +263 -1
  362. package/lib/table/props.d.ts +125 -62
  363. package/lib/table/table.css +753 -431
  364. package/lib/table/table.d.ts +51 -185
  365. package/lib/table/table.less +244 -112
  366. package/lib/table/table.variable.css +1058 -475
  367. package/lib/table/utils.d.ts +49 -21
  368. package/lib/table-column/index.d.ts +30 -289
  369. package/lib/table-column/index.js +17385 -46
  370. package/lib/tag/index.d.ts +11 -11
  371. package/lib/tag/index.js +2 -3
  372. package/lib/tag/tag.css +136 -6
  373. package/lib/tag/tag.d.ts +5 -5
  374. package/lib/tag/tag.less +1 -1
  375. package/lib/tag/tag.variable.css +263 -2
  376. package/lib/tag-input/common.d.ts +2 -2
  377. package/lib/tag-input/index.d.ts +77 -19
  378. package/lib/tag-input/index.js +78 -54
  379. package/lib/tag-input/tag-input.css +157 -27
  380. package/lib/tag-input/tag-input.d.ts +39 -23
  381. package/lib/tag-input/tag-input.less +9 -9
  382. package/lib/tag-input/tag-input.variable.css +271 -10
  383. package/lib/tag-input/tag-props.d.ts +17 -4
  384. package/lib/time-picker/index.d.ts +10 -21
  385. package/lib/time-picker/time-picker.css +130 -0
  386. package/lib/time-picker/time-picker.variable.css +262 -1
  387. package/lib/timeline/index.js +2 -2
  388. package/lib/timeline/timeline.css +149 -19
  389. package/lib/timeline/timeline.variable.css +262 -1
  390. package/lib/transfer/const.d.ts +2 -2
  391. package/lib/transfer/index.js +3 -5
  392. package/lib/transfer/transfer.css +149 -19
  393. package/lib/transfer/transfer.variable.css +262 -1
  394. package/lib/tree/constant.d.ts +22 -20
  395. package/lib/tree/index.d.ts +41 -27
  396. package/lib/tree/index.js +102 -55
  397. package/lib/tree/props.d.ts +18 -11
  398. package/lib/tree/tree.css +242 -78
  399. package/lib/tree/tree.d.ts +17 -17
  400. package/lib/tree/tree.variable.css +504 -79
  401. package/lib/tree/use-empty.d.ts +1 -1
  402. package/lib/tree/use-node-action.d.ts +10 -9
  403. package/lib/tree/use-node-async.d.ts +2 -1
  404. package/lib/tree/use-node-attribute.d.ts +42 -34
  405. package/lib/tree/use-search.d.ts +1 -1
  406. package/lib/tree/use-tree-init.d.ts +8 -5
  407. package/lib/tree/util.d.ts +21 -21
  408. package/lib/upload/index.d.ts +52 -6
  409. package/lib/upload/index.js +134 -55
  410. package/lib/upload/props.d.ts +11 -2
  411. package/lib/upload/upload-list.d.ts +11 -1
  412. package/lib/upload/upload-trigger.d.ts +11 -1
  413. package/lib/upload/upload.css +157 -27
  414. package/lib/upload/upload.d.ts +24 -3
  415. package/lib/upload/upload.type.d.ts +12 -6
  416. package/lib/upload/upload.variable.css +419 -28
  417. package/lib/upload/use-file-handler.d.ts +1 -1
  418. package/lib/virtual-render/index.d.ts +12 -46
  419. package/lib/virtual-render/index.js +17468 -148
  420. package/lib/virtual-render/props.d.ts +2 -9
  421. package/lib/virtual-render/use-fix-top.d.ts +1 -1
  422. package/lib/virtual-render/use-scrollbar.d.ts +4 -17
  423. package/lib/virtual-render/v-virtual-render.d.ts +7 -1
  424. package/lib/virtual-render/virtual-render.css +225 -69
  425. package/lib/virtual-render/virtual-render.d.ts +6 -22
  426. package/lib/virtual-render/virtual-render.less +2 -11
  427. package/lib/virtual-render/virtual-render.variable.css +487 -70
  428. package/lib/volar.components.d.ts +2 -0
  429. package/package.json +17 -55
  430. package/lib/scrollbar/scrollbar-core/can-use-dom.d.ts +0 -2
  431. package/lib/scrollbar/scrollbar-core/helpers.d.ts +0 -5
  432. package/lib/scrollbar/scrollbar-core/index.d.ts +0 -241
  433. package/lib/scrollbar/scrollbar-core/mouse-wheel.d.ts +0 -5
  434. package/lib/scrollbar/scrollbar-core/scrollbar-width.d.ts +0 -1
  435. package/lib/scrollbar/scrollbar.css +0 -75
  436. package/lib/scrollbar/scrollbar.less +0 -94
  437. package/lib/table/plugins/col-group.d.ts +0 -38
  438. package/lib/table/plugins/settings.d.ts +0 -16
  439. package/lib/table/plugins/use-active-columns.d.ts +0 -16
  440. package/lib/table/plugins/use-column-resize.d.ts +0 -35
  441. package/lib/table/plugins/use-column-template.d.ts +0 -7
  442. package/lib/table/plugins/use-fixed-column.d.ts +0 -27
  443. package/lib/table/plugins/use-head-cell.d.ts +0 -7
  444. package/lib/table/plugins/use-pagination.d.ts +0 -23
  445. package/lib/table/use-attributes.d.ts +0 -62
  446. package/lib/table/use-column.d.ts +0 -275
  447. package/lib/table/use-common.d.ts +0 -1679
  448. package/lib/table/use-render.d.ts +0 -11
  449. /package/lib/table/{plugins → components}/body-empty.d.ts +0 -0
  450. /package/lib/table/{plugins → hooks}/use-observer-resize.d.ts +0 -0
  451. /package/lib/table/{plugins → hooks}/use-scroll-loading.d.ts +0 -0
@@ -2,12 +2,11 @@ import "../styles/reset.css";
2
2
  import "./select.less";
3
3
  import * as __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_shared_edbdfb03__ from "../shared";
4
4
  import * as __WEBPACK_EXTERNAL_MODULE_vue__ from "vue";
5
- import * as __WEBPACK_EXTERNAL_MODULE_lodash_isEqual_ce045a54__ from "lodash/isEqual";
6
5
  import * as __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_checkbox_13b1cb4a__ from "../checkbox";
7
6
  import "../checkbox/checkbox.less";
8
7
  import * as __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_config_provider_fe8577a3__ from "../config-provider";
9
8
  import * as __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_icon_a97c79c3__ from "../icon";
10
- import * as __WEBPACK_EXTERNAL_MODULE_lodash_merge_cf99375a__ from "lodash/merge";
9
+ import * as __WEBPACK_EXTERNAL_MODULE_lodash_isEqual_ce045a54__ from "lodash/isEqual";
11
10
  import * as __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_directives_45d4776f__ from "../directives";
12
11
  import * as __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_input_d525237e__ from "../input";
13
12
  import "../input/input.less";
@@ -17,9 +16,11 @@ import * as __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_popover_9b03f19d__ from "../p
17
16
  import "../popover/popover.less";
18
17
  import * as __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_virtual_render_927587a8__ from "../virtual-render";
19
18
  import "../virtual-render/virtual-render.less";
20
- import * as __WEBPACK_EXTERNAL_MODULE_lodash_debounce_3540babe__ from "lodash/debounce";
19
+ import * as __WEBPACK_EXTERNAL_MODULE_lodash_merge_cf99375a__ from "lodash/merge";
20
+ import * as __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_overflow_title_051a85a5__ from "../overflow-title";
21
21
  import * as __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_tag_d74826be__ from "../tag";
22
22
  import "../tag/tag.less";
23
+ import * as __WEBPACK_EXTERNAL_MODULE_lodash_debounce_3540babe__ from "lodash/debounce";
23
24
  /******/ var __webpack_modules__ = ({
24
25
 
25
26
  /***/ 7609:
@@ -492,10 +493,6 @@ function _defineProperty(obj, key, value) {
492
493
  var external_vue_x = y => { var x = {}; __webpack_require__.d(x, y); return x; }
493
494
  var external_vue_y = x => () => x
494
495
  const external_vue_namespaceObject = external_vue_x({ ["computed"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.computed, ["createTextVNode"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.createTextVNode, ["createVNode"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.createVNode, ["customRef"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.customRef, ["defineComponent"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.defineComponent, ["getCurrentInstance"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.getCurrentInstance, ["inject"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.inject, ["mergeProps"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.mergeProps, ["onBeforeMount"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.onBeforeMount, ["onBeforeUnmount"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.onBeforeUnmount, ["onMounted"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.onMounted, ["provide"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.provide, ["reactive"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.reactive, ["ref"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.ref, ["resolveDirective"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.resolveDirective, ["toRef"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.toRef, ["toRefs"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.toRefs, ["vModelText"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.vModelText, ["vShow"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.vShow, ["watch"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.watch, ["withDirectives"]: () => __WEBPACK_EXTERNAL_MODULE_vue__.withDirectives });
495
- ;// CONCATENATED MODULE: external "lodash/isEqual"
496
- var isEqual_x = y => { var x = {}; __webpack_require__.d(x, y); return x; }
497
- var isEqual_y = x => () => x
498
- const isEqual_namespaceObject = isEqual_x({ ["default"]: () => __WEBPACK_EXTERNAL_MODULE_lodash_isEqual_ce045a54__["default"] });
499
496
  ;// CONCATENATED MODULE: external "../checkbox"
500
497
  var checkbox_x = y => { var x = {}; __webpack_require__.d(x, y); return x; }
501
498
  var checkbox_y = x => () => x
@@ -511,7 +508,11 @@ const config_provider_namespaceObject = config_provider_x({ ["useLocale"]: () =>
511
508
  ;// CONCATENATED MODULE: external "../icon"
512
509
  var icon_x = y => { var x = {}; __webpack_require__.d(x, y); return x; }
513
510
  var icon_y = x => () => x
514
- const icon_namespaceObject = icon_x({ ["AngleUp"]: () => __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_icon_a97c79c3__.AngleUp, ["AngleUpFill"]: () => __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_icon_a97c79c3__.AngleUpFill, ["Close"]: () => __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_icon_a97c79c3__.Close, ["Done"]: () => __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_icon_a97c79c3__.Done, ["Search"]: () => __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_icon_a97c79c3__.Search, ["TextAll"]: () => __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_icon_a97c79c3__.TextAll });
511
+ const icon_namespaceObject = icon_x({ ["AngleDown"]: () => __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_icon_a97c79c3__.AngleDown, ["AngleUpFill"]: () => __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_icon_a97c79c3__.AngleUpFill, ["Close"]: () => __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_icon_a97c79c3__.Close, ["Done"]: () => __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_icon_a97c79c3__.Done, ["Search"]: () => __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_icon_a97c79c3__.Search, ["TextAll"]: () => __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_icon_a97c79c3__.TextAll });
512
+ ;// CONCATENATED MODULE: external "lodash/isEqual"
513
+ var isEqual_x = y => { var x = {}; __webpack_require__.d(x, y); return x; }
514
+ var isEqual_y = x => () => x
515
+ const isEqual_namespaceObject = isEqual_x({ ["default"]: () => __WEBPACK_EXTERNAL_MODULE_lodash_isEqual_ce045a54__["default"] });
515
516
  ;// CONCATENATED MODULE: ../../node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js
516
517
  function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
517
518
  try {
@@ -596,15 +597,16 @@ function useRegistry(data) {
596
597
  // 注册item
597
598
  var register = function register(key, item) {
598
599
  if (!item) return;
599
- if (data.value.has(key)) {
600
- // console.warn(`repeat ${key}`, item);
601
- return;
602
- }
603
600
  return data.value.set(key, item);
604
601
  };
605
602
  // 删除item
606
- var unregister = function unregister(key) {
607
- data.value["delete"](key);
603
+ var unregister = function unregister(key, item) {
604
+ if (item) {
605
+ if (data.value.get(key) !== item) return;
606
+ data.value["delete"](key);
607
+ } else {
608
+ data.value["delete"](key);
609
+ }
608
610
  };
609
611
  return {
610
612
  register: register,
@@ -621,6 +623,7 @@ function useDebouncedRef(value) {
621
623
  track();
622
624
  return innerValue;
623
625
  },
626
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
624
627
  set: function set(newValue) {
625
628
  clearTimeout(timeout);
626
629
  if (newValue === undefined || newValue === '') {
@@ -732,7 +735,6 @@ function isInViewPort(el, client) {
732
735
 
733
736
  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; }
734
737
  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; }
735
- /* eslint-disable vue/no-reserved-component-names */
736
738
  /*
737
739
  * Tencent is pleased to support the open source community by making
738
740
  * 蓝鲸智云PaaS平台社区版 (BlueKing PaaS Community Edition) available.
@@ -770,7 +772,7 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
770
772
  name: 'Option',
771
773
  props: {
772
774
  id: {
773
- type: [String, Number, Object],
775
+ type: [String, Number],
774
776
  require: true
775
777
  },
776
778
  name: shared_namespaceObject.PropTypes.oneOfType([shared_namespaceObject.PropTypes.number, shared_namespaceObject.PropTypes.string]),
@@ -779,6 +781,7 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
779
781
  },
780
782
  setup: function setup(props, _ref) {
781
783
  var attrs = _ref.attrs;
784
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
782
785
  var _getCurrentInstance = (0,external_vue_namespaceObject.getCurrentInstance)(),
783
786
  proxy = _getCurrentInstance.proxy;
784
787
  var states = (0,external_vue_namespaceObject.reactive)({
@@ -860,8 +863,8 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
860
863
  group === null || group === void 0 || group.register(optionID.value, proxy);
861
864
  });
862
865
  (0,external_vue_namespaceObject.onBeforeUnmount)(function () {
863
- select === null || select === void 0 || select.unregister(optionID.value);
864
- group === null || group === void 0 || group.unregister(optionID.value);
866
+ select === null || select === void 0 || select.unregister(optionID.value, proxy);
867
+ group === null || group === void 0 || group.unregister(optionID.value, proxy);
865
868
  });
866
869
  var _usePrefix = (0,config_provider_namespaceObject.usePrefix)(),
867
870
  resolveClassName = _usePrefix.resolveClassName;
@@ -894,16 +897,16 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
894
897
  "onClick": this.handleOptionClick,
895
898
  "onMouseenter": this.handleMouseEnter
896
899
  }, [this.showSelectedIcon && this.selectedStyle === shared_namespaceObject.SelectedTypeEnum.CHECKBOX && (0,external_vue_namespaceObject.createVNode)(checkbox_namespaceObject["default"], {
897
- "disabled": this.disabled,
898
900
  "class": this.resolveClassName('select-checkbox'),
901
+ "disabled": this.disabled,
899
902
  "modelValue": this.selected
900
903
  }, null), (_this$$slots$default = (_this$$slots$default2 = (_this$$slots = this.$slots)["default"]) === null || _this$$slots$default2 === void 0 ? void 0 : _this$$slots$default2.call(_this$$slots)) !== null && _this$$slots$default !== void 0 ? _this$$slots$default : (0,external_vue_namespaceObject.createVNode)("span", {
901
904
  "class": this.resolveClassName('select-option-item'),
902
905
  "title": String(this.optionName)
903
906
  }, [this.highlightKeyword ? this.transformNode(String(this.optionName)) : this.optionName]), this.showSelectedIcon && this.selected && this.selectedStyle === shared_namespaceObject.SelectedTypeEnum.CHECK && (0,external_vue_namespaceObject.createVNode)(icon_namespaceObject.Done, {
904
- "class": this.resolveClassName('select-selected-icon'),
905
907
  "width": 22,
906
- "height": 22
908
+ "height": 22,
909
+ "class": this.resolveClassName('select-selected-icon')
907
910
  }, null)]), [[external_vue_namespaceObject.vShow, this.visible]]);
908
911
  }
909
912
  }));
@@ -1054,10 +1057,6 @@ function optionGroup_objectSpread(e) { for (var r = 1; r < arguments.length; r++
1054
1057
  }, [(_this$$slots$default = (_this$$slots = this.$slots)["default"]) === null || _this$$slots$default === void 0 ? void 0 : _this$$slots$default.call(_this$$slots)]), [[external_vue_namespaceObject.vShow, !this.groupCollapse]])]), [[external_vue_namespaceObject.vShow, this.visible]]);
1055
1058
  }
1056
1059
  }));
1057
- ;// CONCATENATED MODULE: external "lodash/merge"
1058
- var merge_x = y => { var x = {}; __webpack_require__.d(x, y); return x; }
1059
- var merge_y = x => () => x
1060
- const merge_namespaceObject = merge_x({ ["default"]: () => __WEBPACK_EXTERNAL_MODULE_lodash_merge_cf99375a__["default"] });
1061
1060
  ;// CONCATENATED MODULE: external "../directives"
1062
1061
  var directives_x = y => { var x = {}; __webpack_require__.d(x, y); return x; }
1063
1062
  var directives_y = x => () => x
@@ -1094,6 +1093,10 @@ const virtual_render_namespaceObject = virtual_render_x({ ["default"]: () => __W
1094
1093
  var virtual_render_less_x = y => { var x = {}; __webpack_require__.d(x, y); return x; }
1095
1094
  var virtual_render_less_y = x => () => x
1096
1095
  const virtual_render_less_namespaceObject = virtual_render_less_x({ });
1096
+ ;// CONCATENATED MODULE: external "lodash/merge"
1097
+ var merge_x = y => { var x = {}; __webpack_require__.d(x, y); return x; }
1098
+ var merge_y = x => () => x
1099
+ const merge_namespaceObject = merge_x({ ["default"]: () => __WEBPACK_EXTERNAL_MODULE_lodash_merge_cf99375a__["default"] });
1097
1100
  ;// CONCATENATED MODULE: ../../packages/select/src/pinyin/dict.js
1098
1101
  /*
1099
1102
  * Tencent is pleased to support the open source community by making
@@ -1121,8 +1124,6 @@ const virtual_render_less_namespaceObject = virtual_render_less_x({ });
1121
1124
  * IN THE SOFTWARE.
1122
1125
  */
1123
1126
 
1124
- /* eslint-disable max-len */
1125
-
1126
1127
  /**
1127
1128
  * Source: <https://android.googlesource.com/platform/packages/providers/ContactsProvider/+/0c49720fb3d58e346739c2ccd56ed2b739249e07/src/com/android/providers/contacts/HanziToPinyin.java>
1128
1129
  * Updated by creeper
@@ -2036,7 +2037,6 @@ let COLLATOR;
2036
2037
  function patchDict(patchers) {
2037
2038
  if (!patchers) return;
2038
2039
  if (typeof patchers === 'function') {
2039
- // eslint-disable-next-line no-param-reassign
2040
2040
  patchers = [patchers];
2041
2041
  }
2042
2042
  if (patchers.forEach) {
@@ -2127,7 +2127,6 @@ function genToken(ch) {
2127
2127
  }
2128
2128
 
2129
2129
  if (cmp < 0) {
2130
- // eslint-disable-next-line no-plusplus
2131
2130
  offset--;
2132
2131
  }
2133
2132
 
@@ -2296,10 +2295,10 @@ if (core.isSupported() && _56l.shouldPatch(core.genToken)) {
2296
2295
 
2297
2296
  /* harmony default export */ const pinyin = (core);
2298
2297
 
2299
- ;// CONCATENATED MODULE: external "lodash/debounce"
2300
- var debounce_x = y => { var x = {}; __webpack_require__.d(x, y); return x; }
2301
- var debounce_y = x => () => x
2302
- const debounce_namespaceObject = debounce_x({ ["default"]: () => __WEBPACK_EXTERNAL_MODULE_lodash_debounce_3540babe__["default"] });
2298
+ ;// CONCATENATED MODULE: external "../overflow-title"
2299
+ var overflow_title_x = y => { var x = {}; __webpack_require__.d(x, y); return x; }
2300
+ var overflow_title_y = x => () => x
2301
+ const overflow_title_namespaceObject = overflow_title_x({ ["OverflowTitle"]: () => __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_overflow_title_051a85a5__.OverflowTitle });
2303
2302
  ;// CONCATENATED MODULE: external "../tag"
2304
2303
  var tag_x = y => { var x = {}; __webpack_require__.d(x, y); return x; }
2305
2304
  var tag_y = x => () => x
@@ -2308,6 +2307,10 @@ const tag_namespaceObject = tag_x({ ["default"]: () => __WEBPACK_EXTERNAL_MODULE
2308
2307
  var tag_less_x = y => { var x = {}; __webpack_require__.d(x, y); return x; }
2309
2308
  var tag_less_y = x => () => x
2310
2309
  const tag_less_namespaceObject = tag_less_x({ });
2310
+ ;// CONCATENATED MODULE: external "lodash/debounce"
2311
+ var debounce_x = y => { var x = {}; __webpack_require__.d(x, y); return x; }
2312
+ var debounce_y = x => () => x
2313
+ const debounce_namespaceObject = debounce_x({ ["default"]: () => __WEBPACK_EXTERNAL_MODULE_lodash_debounce_3540babe__["default"] });
2311
2314
  ;// CONCATENATED MODULE: ../../packages/select/src/selectTagInput.tsx
2312
2315
 
2313
2316
 
@@ -2344,6 +2347,7 @@ const tag_less_namespaceObject = tag_less_x({ });
2344
2347
 
2345
2348
 
2346
2349
 
2350
+
2347
2351
  /* harmony default export */ const selectTagInput = ((0,external_vue_namespaceObject.defineComponent)({
2348
2352
  name: 'SelectTagInput',
2349
2353
  directives: {
@@ -2380,7 +2384,7 @@ const tag_less_namespaceObject = tag_less_x({ });
2380
2384
  var overflowTagIndex = (0,external_vue_namespaceObject.ref)(null);
2381
2385
  var overflowContent = (0,external_vue_namespaceObject.computed)(function () {
2382
2386
  return selected.value.slice(overflowTagIndex.value, selected.value.length).map(function (item) {
2383
- return item.label;
2387
+ return select === null || select === void 0 ? void 0 : select.handleGetLabelByValue(item.value);
2384
2388
  }).join(', ');
2385
2389
  });
2386
2390
  (0,external_vue_namespaceObject.watch)(modelValue, function () {
@@ -2402,6 +2406,9 @@ const tag_less_namespaceObject = tag_less_x({ });
2402
2406
  var _inputRef$value2;
2403
2407
  (_inputRef$value2 = inputRef.value) === null || _inputRef$value2 === void 0 || _inputRef$value2.blur();
2404
2408
  };
2409
+ var updateModelValue = function updateModelValue(data) {
2410
+ emit('update:modelValue', data);
2411
+ };
2405
2412
  var handleInput = function handleInput(e) {
2406
2413
  emit('update:modelValue', e.target.value);
2407
2414
  };
@@ -2471,6 +2478,7 @@ const tag_less_namespaceObject = tag_less_x({ });
2471
2478
  handleRemoveTag: handleRemoveTag,
2472
2479
  focus: focus,
2473
2480
  blur: blur,
2481
+ updateModelValue: updateModelValue,
2474
2482
  handleInput: handleInput,
2475
2483
  handleKeydown: handleKeydown,
2476
2484
  resolveClassName: resolveClassName
@@ -2485,8 +2493,8 @@ const tag_less_namespaceObject = tag_less_x({ });
2485
2493
  _this$$slots$default2,
2486
2494
  _this$$slots3,
2487
2495
  _this = this,
2488
- _this$$slots4,
2489
- _this$$slots4$suffix;
2496
+ _this$$slots5,
2497
+ _this$$slots5$suffix;
2490
2498
  var prefix = (_this$$slots = this.$slots) === null || _this$$slots === void 0 || (_this$$slots$prefix = _this$$slots.prefix) === null || _this$$slots$prefix === void 0 ? void 0 : _this$$slots$prefix.call(_this$$slots);
2491
2499
  var selectTagClass = (0,shared_namespaceObject.classes)(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({}, this.resolveClassName('select-tag'), true), this.resolveClassName('select-tag--default'), true), 'is-disabled', this.disabled), 'collapse-tag', this.collapseTags), 'has-prefix', !!prefix), 'is-simplicity', this.behavior === 'simplicity'));
2492
2500
  var tagWrapperClass = (0,shared_namespaceObject.classes)(_defineProperty({}, this.resolveClassName('select-tag-wrapper'), true));
@@ -2494,54 +2502,62 @@ const tag_less_namespaceObject = tag_less_x({ });
2494
2502
  display: this.selected.length && !this.filterable ? 'none' : ''
2495
2503
  };
2496
2504
  return (0,external_vue_namespaceObject.createVNode)("div", {
2497
- "class": selectTagClass,
2498
- "ref": "tagWrapperRef"
2505
+ "ref": "tagWrapperRef",
2506
+ "class": selectTagClass
2499
2507
  }, [(_this$$slots2 = this.$slots) === null || _this$$slots2 === void 0 || (_this$$slots2$prefix = _this$$slots2.prefix) === null || _this$$slots2$prefix === void 0 ? void 0 : _this$$slots2$prefix.call(_this$$slots2), (0,external_vue_namespaceObject.createVNode)("div", {
2500
2508
  "class": tagWrapperClass
2501
2509
  }, [(_this$$slots$default = (_this$$slots$default2 = (_this$$slots3 = this.$slots)["default"]) === null || _this$$slots$default2 === void 0 ? void 0 : _this$$slots$default2.call(_this$$slots3)) !== null && _this$$slots$default !== void 0 ? _this$$slots$default : this.selected.map(function (item, index) {
2502
- var _this$select;
2510
+ var _this$$slots$tagRende, _this$$slots$tagRende2, _this$$slots4, _this$select;
2503
2511
  return (0,external_vue_namespaceObject.createVNode)(tag_namespaceObject["default"], {
2504
- "closable": true,
2505
- "theme": _this.tagTheme,
2506
- "style": {
2507
- display: _this.collapseTags && _this.overflowTagIndex && index >= _this.overflowTagIndex ? 'none' : ''
2508
- },
2512
+ "key": item.value,
2509
2513
  "ref": function ref(el) {
2510
2514
  return _this.tagsRefs[index] = el;
2511
2515
  },
2516
+ "style": {
2517
+ display: _this.collapseTags && _this.overflowTagIndex && index >= _this.overflowTagIndex ? 'none' : ''
2518
+ },
2519
+ "theme": _this.tagTheme,
2520
+ "closable": true,
2512
2521
  "onClose": function onClose() {
2513
2522
  return _this.handleRemoveTag(item.value);
2514
2523
  }
2515
2524
  }, {
2516
2525
  "default": function _default() {
2517
- return [(_this$select = _this.select) === null || _this$select === void 0 ? void 0 : _this$select.handleGetLabelByValue(item.value)];
2526
+ return [(_this$$slots$tagRende = (_this$$slots$tagRende2 = (_this$$slots4 = _this.$slots).tagRender) === null || _this$$slots$tagRende2 === void 0 ? void 0 : _this$$slots$tagRende2.call(_this$$slots4, item)) !== null && _this$$slots$tagRende !== void 0 ? _this$$slots$tagRende : (0,external_vue_namespaceObject.createVNode)(overflow_title_namespaceObject.OverflowTitle, {
2527
+ "type": "tips"
2528
+ }, {
2529
+ "default": function _default() {
2530
+ return [(_this$select = _this.select) === null || _this$select === void 0 ? void 0 : _this$select.handleGetLabelByValue(item.value)];
2531
+ }
2532
+ })];
2518
2533
  }
2519
2534
  });
2520
2535
  }), (0,external_vue_namespaceObject.withDirectives)((0,external_vue_namespaceObject.createVNode)(tag_namespaceObject["default"], {
2521
- "class": this.resolveClassName('select-overflow-tag'),
2536
+ "ref": "collapseTagRef",
2522
2537
  "style": {
2523
2538
  display: !!this.overflowTagIndex && this.collapseTags ? '' : 'none'
2524
2539
  },
2525
- "ref": "collapseTagRef"
2540
+ "class": this.resolveClassName('select-overflow-tag')
2526
2541
  }, {
2527
2542
  "default": function _default() {
2528
2543
  return [(0,external_vue_namespaceObject.createTextVNode)("+"), _this.selected.length - _this.overflowTagIndex];
2529
2544
  }
2530
2545
  }), [[(0,external_vue_namespaceObject.resolveDirective)("bk-tooltips"), {
2531
2546
  content: this.overflowContent,
2532
- disabled: !this.overflowTagIndex || !this.collapseTags
2547
+ disabled: !this.overflowTagIndex || !this.collapseTags,
2548
+ extCls: this.resolveClassName('select-tooltips')
2533
2549
  }]]), (0,external_vue_namespaceObject.createVNode)("input", {
2534
- "class": this.resolveClassName('select-tag-input'),
2535
2550
  "ref": "inputRef",
2536
- "type": "text",
2537
2551
  "style": inputStyle,
2552
+ "class": this.resolveClassName('select-tag-input'),
2553
+ "disabled": this.disabled,
2538
2554
  "placeholder": !this.selected.length ? this.placeholder : '',
2539
2555
  "readonly": !this.filterable,
2540
- "disabled": this.disabled,
2556
+ "type": "text",
2541
2557
  "value": !this.filterable ? '' : this.value,
2542
2558
  "onInput": this.handleInput,
2543
2559
  "onKeydown": this.handleKeydown
2544
- }, null)]), (_this$$slots4 = this.$slots) === null || _this$$slots4 === void 0 || (_this$$slots4$suffix = _this$$slots4.suffix) === null || _this$$slots4$suffix === void 0 ? void 0 : _this$$slots4$suffix.call(_this$$slots4)]);
2560
+ }, null)]), (_this$$slots5 = this.$slots) === null || _this$$slots5 === void 0 || (_this$$slots5$suffix = _this$$slots5.suffix) === null || _this$$slots5$suffix === void 0 ? void 0 : _this$$slots5$suffix.call(_this$$slots5)]);
2545
2561
  }
2546
2562
  }));
2547
2563
  ;// CONCATENATED MODULE: ../../packages/select/src/select.tsx
@@ -2554,7 +2570,6 @@ function select_unsupportedIterableToArray(o, minLen) { if (!o) return; if (type
2554
2570
  function select_arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
2555
2571
  function select_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; }
2556
2572
  function select_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? select_ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : select_ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
2557
- /* eslint-disable vue/no-reserved-component-names */
2558
2573
  /*
2559
2574
  * Tencent is pleased to support the open source community by making
2560
2575
  * 蓝鲸智云PaaS平台社区版 (BlueKing PaaS Community Edition) available.
@@ -2613,10 +2628,12 @@ function select_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { v
2613
2628
  size: shared_namespaceObject.PropTypes.size().def(shared_namespaceObject.SizeEnum.DEFAULT),
2614
2629
  clearable: shared_namespaceObject.PropTypes.bool.def(true),
2615
2630
  loading: shared_namespaceObject.PropTypes.bool.def(false),
2616
- filterable: shared_namespaceObject.PropTypes.bool.def(true),
2631
+ filterable: shared_namespaceObject.PropTypes.bool.def(false),
2617
2632
  remoteMethod: shared_namespaceObject.PropTypes.func,
2618
- scrollHeight: shared_namespaceObject.PropTypes.number.def(200),
2633
+ scrollHeight: shared_namespaceObject.PropTypes.number.def(204),
2634
+ minHeight: shared_namespaceObject.PropTypes.number,
2619
2635
  showAll: shared_namespaceObject.PropTypes.bool.def(false),
2636
+ allOptionText: shared_namespaceObject.PropTypes.string.def(''),
2620
2637
  allOptionId: shared_namespaceObject.PropTypes.oneOfType([shared_namespaceObject.PropTypes.number, shared_namespaceObject.PropTypes.string]),
2621
2638
  showSelectAll: shared_namespaceObject.PropTypes.bool.def(false),
2622
2639
  popoverMinWidth: shared_namespaceObject.PropTypes.number.def(0),
@@ -2653,7 +2670,12 @@ function select_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { v
2653
2670
  type: Function
2654
2671
  },
2655
2672
  searchWithPinyin: shared_namespaceObject.PropTypes.bool.def(true),
2656
- highlightKeyword: shared_namespaceObject.PropTypes.bool.def(false) // 搜索高亮
2673
+ highlightKeyword: shared_namespaceObject.PropTypes.bool.def(false),
2674
+ trigger: {
2675
+ type: String,
2676
+ "default": 'default'
2677
+ },
2678
+ disableScrollToSelectedOption: shared_namespaceObject.PropTypes.bool.def(false) // 是否禁用滚动到选中option的功能
2657
2679
  },
2658
2680
  emits: ['update:modelValue', 'change', 'toggle', 'clear', 'scroll-end', 'focus', 'blur', 'tag-remove', 'select', 'deselect', 'search-change'],
2659
2681
  setup: function setup(props, _ref) {
@@ -2693,7 +2715,13 @@ function select_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { v
2693
2715
  filterOption = _toRefs.filterOption,
2694
2716
  searchWithPinyin = _toRefs.searchWithPinyin,
2695
2717
  highlightKeyword = _toRefs.highlightKeyword,
2696
- disableFocusBehavior = _toRefs.disableFocusBehavior;
2718
+ disableFocusBehavior = _toRefs.disableFocusBehavior,
2719
+ trigger = _toRefs.trigger,
2720
+ disableScrollToSelectedOption = _toRefs.disableScrollToSelectedOption;
2721
+ var virtualRenderRef = (0,external_vue_namespaceObject.ref)(null);
2722
+ var displayAllText = (0,external_vue_namespaceObject.computed)(function () {
2723
+ return props.allOptionText;
2724
+ });
2697
2725
  var localNoDataText = (0,external_vue_namespaceObject.computed)(function () {
2698
2726
  if (props.noDataText === undefined) {
2699
2727
  return t.value.noData;
@@ -2735,8 +2763,8 @@ function select_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { v
2735
2763
  var triggerRef = (0,external_vue_namespaceObject.ref)();
2736
2764
  var contentRef = (0,external_vue_namespaceObject.ref)();
2737
2765
  var searchRef = (0,external_vue_namespaceObject.ref)();
2766
+ var scrollContainerRef = (0,external_vue_namespaceObject.ref)();
2738
2767
  var selectTagInputRef = (0,external_vue_namespaceObject.ref)();
2739
- var virtualRenderRef = (0,external_vue_namespaceObject.ref)();
2740
2768
  var popoverRef = (0,external_vue_namespaceObject.ref)();
2741
2769
  var optionsMap = (0,external_vue_namespaceObject.ref)(new Map());
2742
2770
  var options = (0,external_vue_namespaceObject.computed)(function () {
@@ -2746,12 +2774,13 @@ function select_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { v
2746
2774
  });
2747
2775
  var groupsMap = (0,external_vue_namespaceObject.ref)(new Map());
2748
2776
  var selected = (0,external_vue_namespaceObject.ref)([]);
2749
- var selectedMap = (0,external_vue_namespaceObject.computed)(function () {
2777
+ var selectedCacheMap = (0,external_vue_namespaceObject.computed)(function () {
2750
2778
  return selected.value.reduce(function (pre, item) {
2751
2779
  pre[item.value] = item.label;
2752
2780
  return pre;
2753
- }, {});
2781
+ }, _defineProperty({}, "".concat(allOptionId.value), t.value.all));
2754
2782
  });
2783
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2755
2784
  var activeOptionValue = (0,external_vue_namespaceObject.ref)(); // 当前悬浮的option
2756
2785
  var listMap = (0,external_vue_namespaceObject.computed)(function () {
2757
2786
  return list.value.reduce(function (pre, item) {
@@ -2775,8 +2804,8 @@ function select_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { v
2775
2804
  var _popoverRef$value;
2776
2805
  (_popoverRef$value = popoverRef.value) === null || _popoverRef$value === void 0 || _popoverRef$value.updatePopover(null, popoverConfig.value);
2777
2806
  });
2778
- // 虚拟滚动模式下搜索后的值
2779
- var virtualList = (0,external_vue_namespaceObject.computed)(function () {
2807
+ // list模式下搜索后的值
2808
+ var filterList = (0,external_vue_namespaceObject.computed)(function () {
2780
2809
  return isRemoteSearch.value ? list.value : list.value.filter(function (item) {
2781
2810
  return defaultSearchMethod(curSearchValue.value, String(item[displayKey.value]), item);
2782
2811
  });
@@ -2849,12 +2878,22 @@ function select_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { v
2849
2878
  var virtualHeight = (0,external_vue_namespaceObject.computed)(function () {
2850
2879
  return scrollHeight.value - 12 - (isShowSelectAll.value ? 32 : 0);
2851
2880
  });
2881
+ var virtualLineHeight = (0,external_vue_namespaceObject.ref)(32);
2882
+ // 是否启用虚拟滚动(如果配置了启用,但是数据小于滚动高度则不开启)
2883
+ var isEnableVirtualRender = (0,external_vue_namespaceObject.computed)(function () {
2884
+ if (enableVirtualRender.value) return filterList.value.length * virtualLineHeight.value > virtualHeight.value;
2885
+ return false;
2886
+ });
2887
+ // 预加载滚动数据
2888
+ var preloadItemCount = (0,external_vue_namespaceObject.computed)(function () {
2889
+ return Math.ceil(virtualHeight.value / virtualLineHeight.value);
2890
+ });
2852
2891
  // 当前空状态时显示文案
2853
2892
  var curContentText = (0,external_vue_namespaceObject.computed)(function () {
2854
2893
  if (searchLoading.value) {
2855
2894
  return localLoadingText.value;
2856
2895
  }
2857
- if (isSearchEmpty.value || list.value.length && !virtualList.value.length) {
2896
+ if (isSearchEmpty.value || list.value.length && !filterList.value.length) {
2858
2897
  return localNoMatchText.value;
2859
2898
  }
2860
2899
  if (isOptionsEmpty.value) {
@@ -2910,9 +2949,21 @@ function select_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { v
2910
2949
  hidePopover = _usePopover.hidePopover,
2911
2950
  showPopover = _usePopover.showPopover,
2912
2951
  togglePopover = _usePopover.togglePopover;
2952
+ var handleHidePopover = function handleHidePopover() {
2953
+ if (trigger.value === 'manual') return;
2954
+ hidePopover();
2955
+ };
2956
+ var handleShowPopover = function handleShowPopover() {
2957
+ if (trigger.value === 'manual') return;
2958
+ showPopover();
2959
+ };
2913
2960
  // 输入框是否可以输入内容
2961
+ // const isInput = computed(
2962
+ // () => ((filterable.value && inputSearch.value) || allowCreate.value) && isPopoverShow.value,
2963
+ // );
2964
+ // 自定义创建失焦后仍保留输入框内的内容
2914
2965
  var isInput = (0,external_vue_namespaceObject.computed)(function () {
2915
- return (filterable.value && inputSearch.value || allowCreate.value) && isPopoverShow.value;
2966
+ return filterable.value && inputSearch.value && isPopoverShow.value || allowCreate.value;
2916
2967
  });
2917
2968
  (0,external_vue_namespaceObject.watch)(isPopoverShow, function (isShow) {
2918
2969
  emit('toggle', isPopoverShow.value);
@@ -2933,10 +2984,10 @@ function select_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { v
2933
2984
  // 滚动到当前选中的options中
2934
2985
  var scrollActiveOptionIntoView = function scrollActiveOptionIntoView() {
2935
2986
  var _contentRef$value, _contentRef$value$que, _optionsDom$;
2987
+ if (isEnableVirtualRender.value || disableScrollToSelectedOption.value) return;
2936
2988
  var optionsDom = (_contentRef$value = contentRef.value) === null || _contentRef$value === void 0 || (_contentRef$value$que = _contentRef$value.querySelectorAll) === null || _contentRef$value$que === void 0 ? void 0 : _contentRef$value$que.call(_contentRef$value, '.is-selected');
2937
2989
  optionsDom === null || optionsDom === void 0 || (_optionsDom$ = optionsDom[0]) === null || _optionsDom$ === void 0 || _optionsDom$.scrollIntoView({
2938
2990
  block: 'center'
2939
- // behavior: 'smooth',
2940
2991
  });
2941
2992
  };
2942
2993
  // 初始化当前悬浮的option项
@@ -2953,14 +3004,17 @@ function select_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { v
2953
3004
  }
2954
3005
  };
2955
3006
  // 默认搜索方法
3007
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2956
3008
  var defaultSearchMethod = function defaultSearchMethod(searchValue, optionName) {
2957
3009
  var _toLowerCase2;
2958
3010
  var filterData = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
2959
3011
  if (hasFilterOptionFunc.value) {
3012
+ // 是否配置了单个options过滤
2960
3013
  return !!filterOption.value(searchValue, select_objectSpread({}, filterData));
2961
3014
  }
2962
3015
  if (searchWithPinyin.value) {
2963
3016
  var _toLowerCase;
3017
+ // 是否配置了拼音过滤
2964
3018
  var pinyinList = pinyin.parse(optionName).map(function (v) {
2965
3019
  if (v.type === 2) {
2966
3020
  return v.target.toLowerCase();
@@ -2994,6 +3048,7 @@ function select_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { v
2994
3048
  searchLoading = _useRemoteSearch.searchLoading;
2995
3049
  // 派发search change事件
2996
3050
  (0,external_vue_namespaceObject.watch)(searchValue, function () {
3051
+ scrollContainerRef.value.scrollTop = 0;
2997
3052
  emit('search-change', searchValue.value);
2998
3053
  });
2999
3054
  // 派发change事件
@@ -3001,10 +3056,12 @@ function select_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { v
3001
3056
  if (val === modelValue.value) return;
3002
3057
  emit('update:modelValue', val, modelValue.value);
3003
3058
  emit('change', val, modelValue.value);
3059
+ // 重置Selected 以model-value为主
3060
+ handleSetSelectedData();
3004
3061
  };
3005
3062
  // 派发toggle事件
3006
3063
  var handleTogglePopover = function handleTogglePopover() {
3007
- if (isDisabled.value) return;
3064
+ if (isDisabled.value || trigger.value === 'manual') return;
3008
3065
  handleFocus();
3009
3066
  togglePopover();
3010
3067
  };
@@ -3045,7 +3102,7 @@ function select_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { v
3045
3102
  label: value
3046
3103
  }];
3047
3104
  emitChange(value);
3048
- hidePopover();
3105
+ handleHidePopover();
3049
3106
  }
3050
3107
  customOptionName.value = '';
3051
3108
  };
@@ -3079,6 +3136,7 @@ function select_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { v
3079
3136
  return item.value;
3080
3137
  }));
3081
3138
  emit('select', option.optionID);
3139
+ clearMultipleInputValue();
3082
3140
  }
3083
3141
  focusInput();
3084
3142
  } else {
@@ -3087,12 +3145,22 @@ function select_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { v
3087
3145
  label: option.optionName || option.optionID,
3088
3146
  value: option.optionID
3089
3147
  }];
3148
+ if (filterable.value && allowCreate.value) {
3149
+ customOptionName.value = '';
3150
+ }
3090
3151
  emitChange(option.optionID);
3091
3152
  emit('select', option.optionID);
3092
- hidePopover();
3153
+ handleHidePopover();
3093
3154
  handleBlur();
3094
3155
  }
3095
3156
  };
3157
+ // 是否需要清空多选输入框内容
3158
+ var clearMultipleInputValue = function clearMultipleInputValue() {
3159
+ if (['tag'].includes(multipleMode.value) && isInput.value) {
3160
+ var _selectTagInputRef$va;
3161
+ (_selectTagInputRef$va = selectTagInputRef.value) === null || _selectTagInputRef$va === void 0 || _selectTagInputRef$va.updateModelValue('');
3162
+ }
3163
+ };
3096
3164
  // 聚焦输入框
3097
3165
  var focusInput = function focusInput() {
3098
3166
  if (disableFocusBehavior.value) return;
@@ -3102,8 +3170,8 @@ function select_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { v
3102
3170
  (_searchRef$value = searchRef.value) === null || _searchRef$value === void 0 || _searchRef$value.focus();
3103
3171
  } else {
3104
3172
  if (multipleMode.value === 'tag') {
3105
- var _selectTagInputRef$va;
3106
- (_selectTagInputRef$va = selectTagInputRef.value) === null || _selectTagInputRef$va === void 0 || _selectTagInputRef$va.focus();
3173
+ var _selectTagInputRef$va2;
3174
+ (_selectTagInputRef$va2 = selectTagInputRef.value) === null || _selectTagInputRef$va2 === void 0 || _selectTagInputRef$va2.focus();
3107
3175
  } else {
3108
3176
  var _inputRef$value;
3109
3177
  (_inputRef$value = inputRef.value) === null || _inputRef$value === void 0 || _inputRef$value.focus();
@@ -3115,8 +3183,8 @@ function select_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { v
3115
3183
  var blurInput = function blurInput() {
3116
3184
  setTimeout(function () {
3117
3185
  if (multipleMode.value === 'tag') {
3118
- var _selectTagInputRef$va2;
3119
- (_selectTagInputRef$va2 = selectTagInputRef.value) === null || _selectTagInputRef$va2 === void 0 || _selectTagInputRef$va2.blur();
3186
+ var _selectTagInputRef$va3;
3187
+ (_selectTagInputRef$va3 = selectTagInputRef.value) === null || _selectTagInputRef$va3 === void 0 || _selectTagInputRef$va3.blur();
3120
3188
  } else {
3121
3189
  var _inputRef$value2;
3122
3190
  (_inputRef$value2 = inputRef.value) === null || _inputRef$value2 === void 0 || _inputRef$value2.blur();
@@ -3127,9 +3195,10 @@ function select_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { v
3127
3195
  var handleClear = function handleClear(e) {
3128
3196
  e.stopPropagation();
3129
3197
  selected.value = [];
3198
+ clearMultipleInputValue();
3130
3199
  emitChange(multiple.value ? [] : '');
3131
3200
  emit('clear', multiple.value ? [] : '');
3132
- hidePopover();
3201
+ handleHidePopover();
3133
3202
  };
3134
3203
  var handleSelectedAllOptionMouseEnter = function handleSelectedAllOptionMouseEnter() {
3135
3204
  activeOptionValue.value = '';
@@ -3140,22 +3209,21 @@ function select_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { v
3140
3209
  selected.value = [];
3141
3210
  } else {
3142
3211
  var _list$value;
3143
- var tmpSelected = [];
3212
+ var tmpSelectedMap = new Map();
3144
3213
  options.value.forEach(function (option) {
3145
- if (option.disabled) return;
3146
- tmpSelected.push({
3147
- value: option.optionID,
3148
- label: option.optionName || option.optionID
3149
- });
3214
+ if (option.disabled || tmpSelectedMap.has(option.optionID)) return;
3215
+ tmpSelectedMap.set(option.optionID, option.optionName || option.optionID);
3150
3216
  });
3151
3217
  (_list$value = list.value) === null || _list$value === void 0 || _list$value.forEach(function (item) {
3152
- if (item.disabled) return;
3153
- tmpSelected.push({
3154
- value: item[idKey.value],
3155
- label: item[displayKey.value]
3156
- });
3218
+ if (item.disabled || tmpSelectedMap.has(item[idKey.value])) return;
3219
+ tmpSelectedMap.set(item[idKey.value], item[displayKey.value]);
3220
+ });
3221
+ selected.value = Array.from(tmpSelectedMap.keys()).map(function (key) {
3222
+ return {
3223
+ value: key,
3224
+ label: tmpSelectedMap.get(key)
3225
+ };
3157
3226
  });
3158
- selected.value = tmpSelected;
3159
3227
  }
3160
3228
  emitChange(selected.value.map(function (item) {
3161
3229
  return item.value;
@@ -3205,7 +3273,7 @@ function select_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { v
3205
3273
  emit('tag-remove', val);
3206
3274
  }
3207
3275
  };
3208
- // options存在 > 上一次选择的label > 当前值
3276
+ // 优先级: option name属性 > list模式 > 上一次选择的label > 当前值
3209
3277
  var handleGetLabelByValue = function handleGetLabelByValue(value) {
3210
3278
  var _optionsMap$value2;
3211
3279
  // 处理options value为对象类型,引用类型变更后,回显不对问题
@@ -3227,7 +3295,7 @@ function select_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { v
3227
3295
  _iterator.f();
3228
3296
  }
3229
3297
  }
3230
- return ((_optionsMap$value2 = optionsMap.value) === null || _optionsMap$value2 === void 0 || (_optionsMap$value2 = _optionsMap$value2.get(tmpValue)) === null || _optionsMap$value2 === void 0 ? void 0 : _optionsMap$value2.optionName) || listMap.value[tmpValue] || selectedMap.value[tmpValue] || tmpValue;
3298
+ return ((_optionsMap$value2 = optionsMap.value) === null || _optionsMap$value2 === void 0 || (_optionsMap$value2 = _optionsMap$value2.get(tmpValue)) === null || _optionsMap$value2 === void 0 ? void 0 : _optionsMap$value2.optionName) || listMap.value[tmpValue] || selectedCacheMap.value[tmpValue] || tmpValue;
3231
3299
  };
3232
3300
  // 设置selected选项
3233
3301
  var handleSetSelectedData = function handleSetSelectedData() {
@@ -3240,7 +3308,7 @@ function select_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { v
3240
3308
  };
3241
3309
  }));
3242
3310
  } else {
3243
- if (modelValue.value !== undefined || allowEmptyValues.value.includes(modelValue.value)) {
3311
+ if (modelValue.value || allowEmptyValues.value.includes(modelValue.value)) {
3244
3312
  selected.value = [{
3245
3313
  value: modelValue.value,
3246
3314
  label: handleGetLabelByValue(modelValue.value)
@@ -3250,9 +3318,18 @@ function select_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { v
3250
3318
  }
3251
3319
  }
3252
3320
  };
3321
+ // 手动设置selected值
3322
+ var setSelected = function setSelected(data) {
3323
+ selected.value = data.map(function (item) {
3324
+ return {
3325
+ label: item[displayKey.value],
3326
+ value: item[idKey.value]
3327
+ };
3328
+ });
3329
+ };
3253
3330
  // 处理键盘事件
3254
3331
  var handleDocumentKeydown = function handleDocumentKeydown(e) {
3255
- if (!isPopoverShow.value || enableVirtualRender.value) return;
3332
+ if (!isPopoverShow.value || isEnableVirtualRender.value) return;
3256
3333
  var availableOptions = options.value.filter(function (option) {
3257
3334
  return !option.disabled && option.visible;
3258
3335
  });
@@ -3307,16 +3384,9 @@ function select_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { v
3307
3384
  var event = _ref2.event;
3308
3385
  var target = event.target;
3309
3386
  if ((_triggerRef$value = triggerRef.value) !== null && _triggerRef$value !== void 0 && _triggerRef$value.contains(target) || triggerRef.value === target) return;
3310
- hidePopover();
3387
+ handleHidePopover();
3311
3388
  handleBlur();
3312
3389
  };
3313
- var handlePopoverShow = function handlePopoverShow() {
3314
- setTimeout(function () {
3315
- var _virtualRenderRef$val, _virtualRenderRef$val2;
3316
- // 虚拟滚动首次未更新问题
3317
- enableVirtualRender.value && ((_virtualRenderRef$val = virtualRenderRef.value) === null || _virtualRenderRef$val === void 0 || (_virtualRenderRef$val2 = _virtualRenderRef$val.reset) === null || _virtualRenderRef$val2 === void 0 ? void 0 : _virtualRenderRef$val2.call(_virtualRenderRef$val));
3318
- });
3319
- };
3320
3390
  (0,external_vue_namespaceObject.provide)(selectKey, (0,external_vue_namespaceObject.reactive)({
3321
3391
  multiple: multiple,
3322
3392
  selected: selected,
@@ -3335,10 +3405,14 @@ function select_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { v
3335
3405
  (0,external_vue_namespaceObject.onMounted)(function () {
3336
3406
  handleSetSelectedData();
3337
3407
  setTimeout(function () {
3338
- showOnInit.value && showPopover();
3408
+ showOnInit.value && handleShowPopover();
3339
3409
  autoFocus.value && focusInput();
3340
3410
  });
3341
3411
  });
3412
+ var handlePopoverShown = function handlePopoverShown() {
3413
+ var _virtualRenderRef$val;
3414
+ (_virtualRenderRef$val = virtualRenderRef.value) === null || _virtualRenderRef$val === void 0 || _virtualRenderRef$val.scrollTo(0, 1);
3415
+ };
3342
3416
  return {
3343
3417
  t: t,
3344
3418
  selected: selected,
@@ -3353,8 +3427,8 @@ function select_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { v
3353
3427
  triggerRef: triggerRef,
3354
3428
  contentRef: contentRef,
3355
3429
  searchRef: searchRef,
3430
+ scrollContainerRef: scrollContainerRef,
3356
3431
  selectTagInputRef: selectTagInputRef,
3357
- virtualRenderRef: virtualRenderRef,
3358
3432
  popoverRef: popoverRef,
3359
3433
  searchLoading: searchLoading,
3360
3434
  isOptionsEmpty: isOptionsEmpty,
@@ -3369,11 +3443,12 @@ function select_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { v
3369
3443
  isShowAll: isShowAll,
3370
3444
  isShowSelectAll: isShowSelectAll,
3371
3445
  virtualHeight: virtualHeight,
3372
- virtualList: virtualList,
3446
+ filterList: filterList,
3373
3447
  isCollapseTags: isCollapseTags,
3374
3448
  popoverConfig: popoverConfig,
3375
3449
  isAllSelected: isAllSelected,
3376
3450
  isAll: isAll,
3451
+ displayAllText: displayAllText,
3377
3452
  focusInput: focusInput,
3378
3453
  setHover: setHover,
3379
3454
  cancelHover: cancelHover,
@@ -3391,26 +3466,33 @@ function select_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { v
3391
3466
  handleDeleteTag: handleDeleteTag,
3392
3467
  handleInputChange: handleInputChange,
3393
3468
  handleSelectedAllOptionMouseEnter: handleSelectedAllOptionMouseEnter,
3394
- handlePopoverShow: handlePopoverShow,
3395
3469
  localLoadingText: localLoadingText,
3396
3470
  localPlaceholder: localPlaceholder,
3397
3471
  localSearchPlaceholder: localSearchPlaceholder,
3398
3472
  localSelectAllText: localSelectAllText,
3399
3473
  resolveClassName: resolveClassName,
3400
- handleCreateCustomOption: handleCreateCustomOption
3474
+ handleCreateCustomOption: handleCreateCustomOption,
3475
+ handlePopoverShown: handlePopoverShown,
3476
+ virtualLineHeight: virtualLineHeight,
3477
+ isEnableVirtualRender: isEnableVirtualRender,
3478
+ preloadItemCount: preloadItemCount,
3479
+ virtualRenderRef: virtualRenderRef,
3480
+ setSelected: setSelected
3401
3481
  };
3402
3482
  },
3403
3483
  render: function render() {
3404
3484
  var _this = this;
3405
3485
  var selectClass = (0,shared_namespaceObject.classes)(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({}, "".concat(this.resolveClassName('select')), true), 'popover-show', this.isPopoverShow), 'is-disabled', this.isDisabled), 'is-focus', this.isFocus), 'is-filterable', this.filterable), this.size, true), this.behavior, true));
3486
+ // 右侧ICON
3406
3487
  var suffixIcon = function suffixIcon() {
3488
+ var _this$$slots, _this$$slots2, _this$$slots2$suffix;
3407
3489
  if (_this.loading) {
3408
3490
  return (0,external_vue_namespaceObject.createVNode)(loading_namespaceObject["default"], {
3409
- "loading": true,
3410
- "theme": "primary",
3411
3491
  "class": "spinner",
3492
+ "loading": true,
3412
3493
  "mode": "spin",
3413
- "size": "mini"
3494
+ "size": "mini",
3495
+ "theme": "primary"
3414
3496
  }, null);
3415
3497
  }
3416
3498
  if (_this.clearable && _this.isHover && _this.selected.length && !_this.isDisabled) {
@@ -3419,12 +3501,14 @@ function select_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { v
3419
3501
  "onClick": _this.handleClear
3420
3502
  }, null);
3421
3503
  }
3422
- return (0,external_vue_namespaceObject.createVNode)(icon_namespaceObject.AngleUp, {
3423
- "class": "angle-up"
3504
+ return (_this$$slots = _this.$slots) !== null && _this$$slots !== void 0 && _this$$slots.suffix ? (0,external_vue_namespaceObject.createVNode)("span", {
3505
+ "class": "angle-down"
3506
+ }, [(_this$$slots2 = _this.$slots) === null || _this$$slots2 === void 0 || (_this$$slots2$suffix = _this$$slots2.suffix) === null || _this$$slots2$suffix === void 0 ? void 0 : _this$$slots2$suffix.call(_this$$slots2)]) : (0,external_vue_namespaceObject.createVNode)(icon_namespaceObject.AngleDown, {
3507
+ "class": "angle-down"
3424
3508
  }, null);
3425
3509
  };
3426
3510
  var renderPrefix = function renderPrefix() {
3427
- var _this$$slots;
3511
+ var _this$$slots3;
3428
3512
  if (_this.prefix) {
3429
3513
  return function () {
3430
3514
  return (0,external_vue_namespaceObject.createVNode)("div", {
@@ -3432,9 +3516,9 @@ function select_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { v
3432
3516
  }, [(0,external_vue_namespaceObject.createVNode)("span", null, [_this.prefix])]);
3433
3517
  };
3434
3518
  }
3435
- return (_this$$slots = _this.$slots) !== null && _this$$slots !== void 0 && _this$$slots.prefix ? function () {
3436
- var _this$$slots2, _this$$slots2$prefix;
3437
- return (_this$$slots2 = _this.$slots) === null || _this$$slots2 === void 0 || (_this$$slots2$prefix = _this$$slots2.prefix) === null || _this$$slots2$prefix === void 0 ? void 0 : _this$$slots2$prefix.call(_this$$slots2);
3519
+ return (_this$$slots3 = _this.$slots) !== null && _this$$slots3 !== void 0 && _this$$slots3.prefix ? function () {
3520
+ var _this$$slots4, _this$$slots4$prefix;
3521
+ return (_this$$slots4 = _this.$slots) === null || _this$$slots4 === void 0 || (_this$$slots4$prefix = _this$$slots4.prefix) === null || _this$$slots4$prefix === void 0 ? void 0 : _this$$slots4$prefix.call(_this$$slots4);
3438
3522
  } : undefined;
3439
3523
  };
3440
3524
  // 全选
@@ -3442,14 +3526,25 @@ function select_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { v
3442
3526
  if (!_this.isShowSelectAll) return;
3443
3527
  return (0,external_vue_namespaceObject.createVNode)("li", {
3444
3528
  "class": _this.resolveClassName('select-option'),
3445
- "onMouseenter": _this.handleSelectedAllOptionMouseEnter,
3446
- "onClick": _this.toggleSelectAll
3529
+ "onClick": _this.toggleSelectAll,
3530
+ "onMouseenter": _this.handleSelectedAllOptionMouseEnter
3447
3531
  }, [_this.selectedStyle === 'checkbox' && (0,external_vue_namespaceObject.createVNode)(checkbox_namespaceObject["default"], {
3448
3532
  "class": _this.resolveClassName('select-checkbox'),
3449
- "modelValue": _this.isAllSelected,
3450
- "indeterminate": !_this.isAllSelected && !!_this.selected.length && !_this.isAll
3533
+ "indeterminate": !_this.isAllSelected && !!_this.selected.length && !_this.isAll,
3534
+ "modelValue": _this.isAllSelected
3451
3535
  }, null), _this.t.selectAll]);
3452
3536
  };
3537
+ // 全部icon支持自定义
3538
+ var renderAllIcon = function renderAllIcon() {
3539
+ var _this$$slots5, _this$$slots5$allOpti;
3540
+ return ((_this$$slots5 = _this.$slots) === null || _this$$slots5 === void 0 || (_this$$slots5$allOpti = _this$$slots5.allOptionIcon) === null || _this$$slots5$allOpti === void 0 ? void 0 : _this$$slots5$allOpti.call(_this$$slots5)) || (0,external_vue_namespaceObject.createVNode)(icon_namespaceObject.TextAll, {
3541
+ "class": "select-all-icon"
3542
+ }, null);
3543
+ };
3544
+ // 全部选项文案支持自定义
3545
+ var renderAllText = function renderAllText() {
3546
+ return (0,external_vue_namespaceObject.createVNode)("span", null, [_this.displayAllText || _this.t.all]);
3547
+ };
3453
3548
  // 全部
3454
3549
  var renderAll = function renderAll() {
3455
3550
  var _this$selected$;
@@ -3459,37 +3554,40 @@ function select_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { v
3459
3554
  }, [(0,external_vue_namespaceObject.createVNode)("div", {
3460
3555
  "class": ['wrapper', _this.selected.length === 1 && ((_this$selected$ = _this.selected[0]) === null || _this$selected$ === void 0 ? void 0 : _this$selected$.value) === _this.allOptionId ? 'active' : ''],
3461
3556
  "onClick": _this.toggleAll
3462
- }, [(0,external_vue_namespaceObject.createVNode)(icon_namespaceObject.TextAll, {
3463
- "class": "select-all-icon"
3464
- }, null), (0,external_vue_namespaceObject.createVNode)("span", null, [_this.t.all])])]);
3557
+ }, [renderAllIcon(), renderAllText()])]);
3465
3558
  };
3559
+ // 默认trigger输入框渲染
3466
3560
  var renderTriggerInput = function renderTriggerInput() {
3467
- var _this$$slots5;
3561
+ var _this$$slots10;
3468
3562
  if (_this.multipleMode === 'tag') {
3469
- var _this$$slots3;
3563
+ var _this$$slots6, _this$$slots8;
3470
3564
  return (0,external_vue_namespaceObject.createVNode)(selectTagInput, {
3471
3565
  "ref": "selectTagInputRef",
3472
3566
  "modelValue": _this.customOptionName,
3473
3567
  "onUpdate:modelValue": function onUpdateModelValue($event) {
3474
3568
  return _this.customOptionName = $event;
3475
3569
  },
3476
- "selected": _this.selected,
3477
- "tagTheme": _this.tagTheme,
3478
- "placeholder": _this.localPlaceholder,
3479
- "filterable": _this.isInput,
3480
- "disabled": _this.isDisabled,
3481
3570
  "behavior": _this.behavior,
3482
- "onRemove": _this.handleDeleteTag,
3483
3571
  "collapseTags": _this.isCollapseTags,
3484
- "onEnter": _this.handleCreateCustomOption
3572
+ "disabled": _this.isDisabled,
3573
+ "filterable": _this.isInput,
3574
+ "placeholder": _this.localPlaceholder,
3575
+ "selected": _this.selected,
3576
+ "tagTheme": _this.tagTheme,
3577
+ "onEnter": _this.handleCreateCustomOption,
3578
+ "onRemove": _this.handleDeleteTag
3485
3579
  }, {
3486
3580
  prefix: renderPrefix(),
3487
- "default": ((_this$$slots3 = _this.$slots) === null || _this$$slots3 === void 0 ? void 0 : _this$$slots3.tag) && function () {
3488
- var _this$$slots4;
3489
- return (_this$$slots4 = _this.$slots) === null || _this$$slots4 === void 0 ? void 0 : _this$$slots4.tag({
3581
+ "default": ((_this$$slots6 = _this.$slots) === null || _this$$slots6 === void 0 ? void 0 : _this$$slots6.tag) && function () {
3582
+ var _this$$slots7;
3583
+ return (_this$$slots7 = _this.$slots) === null || _this$$slots7 === void 0 ? void 0 : _this$$slots7.tag({
3490
3584
  selected: _this.selected
3491
3585
  });
3492
3586
  },
3587
+ tagRender: ((_this$$slots8 = _this.$slots) === null || _this$$slots8 === void 0 ? void 0 : _this$$slots8.tagRender) && function (item) {
3588
+ var _this$$slots9;
3589
+ return (_this$$slots9 = _this.$slots) === null || _this$$slots9 === void 0 ? void 0 : _this$$slots9.tagRender(item);
3590
+ },
3493
3591
  suffix: function suffix() {
3494
3592
  return suffixIcon();
3495
3593
  }
@@ -3497,24 +3595,24 @@ function select_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { v
3497
3595
  }
3498
3596
  return (0,external_vue_namespaceObject.createVNode)(input_namespaceObject["default"], (0,external_vue_namespaceObject.mergeProps)({
3499
3597
  "ref": "inputRef",
3500
- "type": "text",
3598
+ "behavior": _this.behavior,
3599
+ "disabled": _this.isDisabled,
3501
3600
  "modelValue": _this.isInput ? _this.customOptionName : _this.selectedLabel.join(','),
3502
3601
  "placeholder": _this.isInput ? _this.selectedLabel.join(',') || _this.localPlaceholder : _this.localPlaceholder,
3503
3602
  "readonly": !_this.isInput,
3504
3603
  "selectReadonly": true,
3505
- "disabled": _this.isDisabled,
3506
- "behavior": _this.behavior,
3507
3604
  "size": _this.size,
3508
- "withValidate": false,
3509
3605
  "stopPropagation": false,
3510
- "onInput": _this.handleInputChange,
3511
- "onEnter": _this.handleCreateCustomOption
3606
+ "type": "text",
3607
+ "withValidate": false,
3608
+ "onEnter": _this.handleCreateCustomOption,
3609
+ "onInput": _this.handleInputChange
3512
3610
  }, _this.prefix ? {
3513
3611
  prefix: _this.prefix
3514
- } : null), select_objectSpread(select_objectSpread({}, typeof ((_this$$slots5 = _this.$slots) === null || _this$$slots5 === void 0 ? void 0 : _this$$slots5.prefix) === 'function' ? {
3612
+ } : null), select_objectSpread(select_objectSpread({}, typeof ((_this$$slots10 = _this.$slots) === null || _this$$slots10 === void 0 ? void 0 : _this$$slots10.prefix) === 'function' ? {
3515
3613
  prefix: function prefix() {
3516
- var _this$$slots6, _this$$slots6$prefix;
3517
- return (_this$$slots6 = _this.$slots) === null || _this$$slots6 === void 0 || (_this$$slots6$prefix = _this$$slots6.prefix) === null || _this$$slots6$prefix === void 0 ? void 0 : _this$$slots6$prefix.call(_this$$slots6);
3614
+ var _this$$slots11, _this$$slots11$prefix;
3615
+ return (_this$$slots11 = _this.$slots) === null || _this$$slots11 === void 0 || (_this$$slots11$prefix = _this$$slots11.prefix) === null || _this$$slots11$prefix === void 0 ? void 0 : _this$$slots11$prefix.call(_this$$slots11);
3518
3616
  }
3519
3617
  } : null), {}, {
3520
3618
  suffix: function suffix() {
@@ -3522,71 +3620,44 @@ function select_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { v
3522
3620
  }
3523
3621
  }));
3524
3622
  };
3623
+ // 渲染trigger
3525
3624
  var renderSelectTrigger = function renderSelectTrigger() {
3526
- var _this$$slots7, _this$$slots7$trigger;
3625
+ var _this$$slots12, _this$$slots12$trigge;
3527
3626
  return (0,external_vue_namespaceObject.createVNode)("div", {
3528
- "class": _this.resolveClassName('select-trigger'),
3627
+ "ref": "triggerRef",
3529
3628
  "style": {
3530
3629
  height: _this.autoHeight && _this.collapseTags ? '32px' : ''
3531
3630
  },
3532
- "ref": "triggerRef",
3631
+ "class": _this.resolveClassName('select-trigger'),
3533
3632
  "onClick": _this.handleTogglePopover,
3534
3633
  "onMouseenter": _this.setHover,
3535
3634
  "onMouseleave": _this.cancelHover
3536
- }, [((_this$$slots7 = _this.$slots) === null || _this$$slots7 === void 0 || (_this$$slots7$trigger = _this$$slots7.trigger) === null || _this$$slots7$trigger === void 0 ? void 0 : _this$$slots7$trigger.call(_this$$slots7, {
3635
+ }, [((_this$$slots12 = _this.$slots) === null || _this$$slots12 === void 0 || (_this$$slots12$trigge = _this$$slots12.trigger) === null || _this$$slots12$trigge === void 0 ? void 0 : _this$$slots12$trigge.call(_this$$slots12, {
3537
3636
  selected: _this.selected
3538
3637
  })) || renderTriggerInput()]);
3539
3638
  };
3540
- var renderSelectContent = function renderSelectContent() {
3541
- var _this$$slots12, _this$$slots12$defaul, _this$$slots13, _this$$slots14;
3542
- return (0,external_vue_namespaceObject.createVNode)("div", {
3543
- "class": _this.resolveClassName('select-content-wrapper'),
3544
- "ref": "contentRef"
3545
- }, [renderAll(), _this.filterable && !_this.inputSearch && (0,external_vue_namespaceObject.createVNode)("div", {
3546
- "class": _this.resolveClassName('select-search-wrapper')
3547
- }, [(0,external_vue_namespaceObject.createVNode)(icon_namespaceObject.Search, {
3548
- "class": "icon-search",
3549
- "width": 16,
3550
- "height": 16
3551
- }, null), (0,external_vue_namespaceObject.withDirectives)((0,external_vue_namespaceObject.createVNode)("input", {
3552
- "ref": "searchRef",
3553
- "class": _this.resolveClassName('select-search-input'),
3554
- "placeholder": _this.localSearchPlaceholder,
3555
- "onUpdate:modelValue": function onUpdateModelValue($event) {
3556
- return _this.searchValue = $event;
3557
- }
3558
- }, null), [[external_vue_namespaceObject.vModelText, _this.searchValue]])]), !_this.isShowSelectContent && (0,external_vue_namespaceObject.createVNode)("div", {
3559
- "class": _this.resolveClassName('select-empty')
3560
- }, [_this.searchLoading && (0,external_vue_namespaceObject.createVNode)(loading_namespaceObject["default"], {
3561
- "class": "mr5",
3562
- "theme": "primary",
3563
- "loading": true,
3564
- "mode": "spin",
3565
- "size": "mini"
3566
- }, null), (0,external_vue_namespaceObject.createVNode)("span", null, [_this.curContentText])]), (0,external_vue_namespaceObject.createVNode)("div", {
3567
- "class": _this.resolveClassName('select-content')
3568
- }, [(0,external_vue_namespaceObject.createVNode)("div", {
3569
- "class": _this.enableVirtualRender ? '' : _this.resolveClassName('select-dropdown'),
3570
- "style": {
3571
- maxHeight: "".concat(_this.scrollHeight, "px")
3572
- },
3573
- "onScroll": _this.handleScroll
3574
- }, [(0,external_vue_namespaceObject.withDirectives)((0,external_vue_namespaceObject.createVNode)("ul", {
3575
- "class": _this.resolveClassName('select-options')
3576
- }, [renderSelectAll(), _this.enableVirtualRender ? (0,external_vue_namespaceObject.createVNode)(virtual_render_namespaceObject["default"], {
3577
- "list": _this.virtualList,
3639
+ // 渲染列表模式
3640
+ var renderList = function renderList() {
3641
+ return _this.isEnableVirtualRender ? (0,external_vue_namespaceObject.createVNode)(virtual_render_namespaceObject["default"], {
3642
+ "ref": "virtualRenderRef",
3578
3643
  "height": _this.virtualHeight,
3579
- "lineHeight": 32,
3580
- "ref": "virtualRenderRef"
3644
+ "lineHeight": _this.virtualLineHeight,
3645
+ "list": _this.filterList,
3646
+ "preloadItemCount": _this.preloadItemCount,
3647
+ "scrollbar": {
3648
+ enabled: true,
3649
+ size: 'small'
3650
+ }
3581
3651
  }, {
3582
3652
  "default": function _default(_ref3) {
3583
- var _this$$slots8, _this$$slots9;
3653
+ var _this$$slots13, _this$$slots14;
3584
3654
  var data = _ref3.data;
3585
- var optionRender = ((_this$$slots8 = _this.$slots) === null || _this$$slots8 === void 0 ? void 0 : _this$$slots8.optionRender) || ((_this$$slots9 = _this.$slots) === null || _this$$slots9 === void 0 ? void 0 : _this$$slots9.virtualScrollRender);
3655
+ // 兼容以前slots
3656
+ var optionRender = ((_this$$slots13 = _this.$slots) === null || _this$$slots13 === void 0 ? void 0 : _this$$slots13.optionRender) || ((_this$$slots14 = _this.$slots) === null || _this$$slots14 === void 0 ? void 0 : _this$$slots14.virtualScrollRender);
3586
3657
  return data.map(function (item) {
3587
3658
  return (0,external_vue_namespaceObject.createVNode)(src_option, {
3588
- "key": item[_this.idKey],
3589
3659
  "id": item[_this.idKey],
3660
+ "key": item[_this.idKey],
3590
3661
  "name": item[_this.displayKey]
3591
3662
  }, typeof optionRender === 'function' ? {
3592
3663
  "default": function _default() {
@@ -3597,38 +3668,80 @@ function select_objectSpread(e) { for (var r = 1; r < arguments.length; r++) { v
3597
3668
  } : null);
3598
3669
  });
3599
3670
  }
3600
- }) : _this.list.map(function (item) {
3601
- var _this$$slots10;
3671
+ }) : _this.filterList.map(function (item) {
3672
+ var _this$$slots15, _this$$slots16;
3673
+ // 兼容以前slots
3674
+ var optionRender = ((_this$$slots15 = _this.$slots) === null || _this$$slots15 === void 0 ? void 0 : _this$$slots15.optionRender) || ((_this$$slots16 = _this.$slots) === null || _this$$slots16 === void 0 ? void 0 : _this$$slots16.virtualScrollRender);
3602
3675
  return (0,external_vue_namespaceObject.createVNode)(src_option, {
3603
- "key": item[_this.idKey],
3604
3676
  "id": item[_this.idKey],
3677
+ "key": item[_this.idKey],
3605
3678
  "name": item[_this.displayKey]
3606
- }, (_this$$slots10 = _this.$slots) !== null && _this$$slots10 !== void 0 && _this$$slots10.optionRender ? {
3679
+ }, typeof optionRender === 'function' ? {
3607
3680
  "default": function _default() {
3608
- var _this$$slots11, _this$$slots11$option;
3609
- return (_this$$slots11 = _this.$slots) === null || _this$$slots11 === void 0 || (_this$$slots11$option = _this$$slots11.optionRender) === null || _this$$slots11$option === void 0 ? void 0 : _this$$slots11$option.call(_this$$slots11, {
3681
+ return optionRender({
3610
3682
  item: item
3611
3683
  });
3612
3684
  }
3613
3685
  } : null);
3614
- }), (_this$$slots12 = _this.$slots) === null || _this$$slots12 === void 0 || (_this$$slots12$defaul = _this$$slots12["default"]) === null || _this$$slots12$defaul === void 0 ? void 0 : _this$$slots12$defaul.call(_this$$slots12), _this.scrollLoading && (0,external_vue_namespaceObject.createVNode)("li", {
3686
+ });
3687
+ };
3688
+ // 渲染内容
3689
+ var renderSelectContent = function renderSelectContent() {
3690
+ var _this$$slots17, _this$$slots17$defaul, _this$$slots18, _this$$slots19;
3691
+ return (0,external_vue_namespaceObject.createVNode)("div", {
3692
+ "ref": "contentRef",
3693
+ "class": _this.resolveClassName('select-content-wrapper')
3694
+ }, [renderAll(), _this.filterable && !_this.inputSearch && (0,external_vue_namespaceObject.createVNode)("div", {
3695
+ "class": _this.resolveClassName('select-search-wrapper')
3696
+ }, [(0,external_vue_namespaceObject.createVNode)(icon_namespaceObject.Search, {
3697
+ "width": 16,
3698
+ "height": 16,
3699
+ "class": "icon-search"
3700
+ }, null), (0,external_vue_namespaceObject.withDirectives)((0,external_vue_namespaceObject.createVNode)("input", {
3701
+ "ref": "searchRef",
3702
+ "class": _this.resolveClassName('select-search-input'),
3703
+ "onUpdate:modelValue": function onUpdateModelValue($event) {
3704
+ return _this.searchValue = $event;
3705
+ },
3706
+ "placeholder": _this.localSearchPlaceholder
3707
+ }, null), [[external_vue_namespaceObject.vModelText, _this.searchValue]])]), !_this.isShowSelectContent && (0,external_vue_namespaceObject.createVNode)("div", {
3708
+ "class": _this.resolveClassName('select-empty')
3709
+ }, [_this.searchLoading && (0,external_vue_namespaceObject.createVNode)(loading_namespaceObject["default"], {
3710
+ "class": "mr5",
3711
+ "loading": true,
3712
+ "mode": "spin",
3713
+ "size": "mini",
3714
+ "theme": "primary"
3715
+ }, null), (0,external_vue_namespaceObject.createVNode)("span", null, [_this.curContentText])]), (0,external_vue_namespaceObject.createVNode)("div", {
3716
+ "class": _this.resolveClassName('select-content')
3717
+ }, [(0,external_vue_namespaceObject.createVNode)("div", {
3718
+ "ref": "scrollContainerRef",
3719
+ "style": {
3720
+ maxHeight: "".concat(_this.scrollHeight, "px"),
3721
+ minHeight: "".concat(_this.minHeight, "px")
3722
+ },
3723
+ "class": _this.isEnableVirtualRender ? '' : _this.resolveClassName('select-dropdown'),
3724
+ "onScroll": _this.handleScroll
3725
+ }, [(0,external_vue_namespaceObject.createVNode)("ul", {
3726
+ "class": _this.resolveClassName('select-options')
3727
+ }, [renderSelectAll(), renderList(), (_this$$slots17 = _this.$slots) === null || _this$$slots17 === void 0 || (_this$$slots17$defaul = _this$$slots17["default"]) === null || _this$$slots17$defaul === void 0 ? void 0 : _this$$slots17$defaul.call(_this$$slots17), _this.scrollLoading && (0,external_vue_namespaceObject.createVNode)("li", {
3615
3728
  "class": _this.resolveClassName('select-options-loading')
3616
3729
  }, [(0,external_vue_namespaceObject.createVNode)(loading_namespaceObject["default"], {
3617
3730
  "class": "spinner mr5",
3618
- "theme": "primary",
3619
3731
  "loading": true,
3620
3732
  "mode": "spin",
3621
- "size": "mini"
3622
- }, null), (0,external_vue_namespaceObject.createVNode)("span", null, [_this.localLoadingText])])]), [[external_vue_namespaceObject.vShow, _this.isShowSelectContent]])]), ((_this$$slots13 = _this.$slots) === null || _this$$slots13 === void 0 ? void 0 : _this$$slots13.extension) && (0,external_vue_namespaceObject.createVNode)("div", {
3733
+ "size": "mini",
3734
+ "theme": "primary"
3735
+ }, null), (0,external_vue_namespaceObject.createVNode)("span", null, [_this.localLoadingText])])])]), ((_this$$slots18 = _this.$slots) === null || _this$$slots18 === void 0 ? void 0 : _this$$slots18.extension) && (0,external_vue_namespaceObject.createVNode)("div", {
3623
3736
  "class": _this.resolveClassName('select-extension')
3624
- }, [(_this$$slots14 = _this.$slots) === null || _this$$slots14 === void 0 ? void 0 : _this$$slots14.extension()])])]);
3737
+ }, [(_this$$slots19 = _this.$slots) === null || _this$$slots19 === void 0 ? void 0 : _this$$slots19.extension()])])]);
3625
3738
  };
3626
3739
  return (0,external_vue_namespaceObject.createVNode)("div", {
3627
3740
  "class": selectClass
3628
3741
  }, [(0,external_vue_namespaceObject.createVNode)(popover_namespaceObject["default"], (0,external_vue_namespaceObject.mergeProps)(this.popoverConfig, {
3629
- "onClickoutside": this.handleClickOutside,
3630
- "onAfterShow": this.handlePopoverShow,
3631
- "ref": "popoverRef"
3742
+ "ref": "popoverRef",
3743
+ "onAfterShow": this.handlePopoverShown,
3744
+ "onClickoutside": this.handleClickOutside
3632
3745
  }), {
3633
3746
  "default": function _default() {
3634
3747
  return renderSelectTrigger();