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
@@ -214,12 +214,30 @@ export declare const treeProps: {
214
214
  } & {
215
215
  default: boolean;
216
216
  };
217
+ /**
218
+ * 在显示复选框的情况下,是否严格的遵循父子互相关联的做法
219
+ */
220
+ checkStrictly: import("vue-types").VueTypeValidableDef<boolean> & {
221
+ default: boolean;
222
+ } & {
223
+ default: boolean;
224
+ };
225
+ /**
226
+ * 是否开启监听Tree节点进入Tree容器可视区域
227
+ */
228
+ intersectionObserver: import("vue-types").VueTypeDef<boolean | IIntersectionObserver> & {
229
+ default: boolean | (() => IIntersectionObserver);
230
+ };
217
231
  };
218
232
  type AsyncOption = {
219
233
  callback: (item: any, cb: any) => Promise<any>;
220
234
  cache: Boolean;
221
235
  deepAutoOpen?: string;
222
236
  };
237
+ export type IIntersectionObserver = {
238
+ enabled: boolean;
239
+ callback: (node: any, level: number, index: number) => void;
240
+ };
223
241
  export type SearchOption = {
224
242
  value: string | number | boolean;
225
243
  match?: `${TreeSearchMatchEnum}` | Function;
package/lib/tree/tree.css CHANGED
@@ -15,11 +15,85 @@
15
15
  .bk-F-scroll-y::-webkit-scrollbar-thumb {
16
16
  border-radius: 4px;
17
17
  }
18
+ .bk-scrollbar-wrapper {
19
+ position: relative;
20
+ overflow: hidden;
21
+ }
22
+ .bk-scrollbar-wrapper .bk-scrollbar-content-el {
23
+ display: inline-flex;
24
+ flex-direction: column;
25
+ width: 100%;
26
+ }
27
+ .bk-scrollbar-wrapper .bk-scrollbar-track {
28
+ z-index: 1;
29
+ position: absolute;
30
+ right: 0;
31
+ bottom: 0;
32
+ pointer-events: none;
33
+ overflow: hidden;
34
+ }
35
+ .bk-scrollbar-wrapper .bk-scrollbar-track.bk-scrollbar-hover {
36
+ background-color: #F0F1F5;
37
+ cursor: pointer;
38
+ }
39
+ .bk-scrollbar-wrapper .bk-scrollbar-track.bk-scrollbar-hover .bk-scrollbar::before {
40
+ background-color: #979BA5;
41
+ }
42
+ .bk-scrollbar-wrapper .bk-scrollbar-track.bk-scrollbar-vertical {
43
+ top: 0;
44
+ width: 8px;
45
+ transform: translate(var(--scroll-offset-x), var(--scroll-offset-y));
46
+ }
47
+ .bk-scrollbar-wrapper .bk-scrollbar-track.bk-scrollbar-horizontal {
48
+ left: 0;
49
+ height: 8px;
50
+ transform: translate(var(--scroll-offset-x), var(--scroll-offset-y));
51
+ }
52
+ .bk-scrollbar-wrapper .bk-scrollbar-track.bk-scrollbar-horizontal.bk-scrollbar {
53
+ right: auto;
54
+ left: 0;
55
+ top: 0;
56
+ bottom: 0;
57
+ min-height: 0;
58
+ min-width: 8px;
59
+ width: auto;
60
+ }
61
+ .bk-scrollbar-wrapper .bk-scrollbar-dragging {
62
+ pointer-events: none;
63
+ -webkit-touch-callout: none;
64
+ -webkit-user-select: none;
65
+ -khtml-user-select: none;
66
+ -moz-user-select: none;
67
+ -ms-user-select: none;
68
+ user-select: none;
69
+ }
70
+ .bk-scrollbar-wrapper .bk-scrollbar {
71
+ position: absolute;
72
+ left: 0;
73
+ right: 0;
74
+ min-height: 8px;
75
+ }
76
+ .bk-scrollbar-wrapper .bk-scrollbar::before {
77
+ position: absolute;
78
+ content: '';
79
+ background: #DCDEE5;
80
+ border-radius: 6px;
81
+ left: 1px;
82
+ right: 1px;
83
+ top: 1px;
84
+ bottom: 1px;
85
+ opacity: 0;
86
+ transition: opacity 0.2s 0.9s linear;
87
+ }
88
+ .bk-scrollbar-wrapper .bk-scrollbar.bk-scrollbar-visible::before {
89
+ opacity: 0.9;
90
+ transition-delay: 0s;
91
+ transition-duration: 0s;
92
+ }
18
93
  .bk-virtual-render {
19
94
  position: relative;
20
95
  }
21
- .bk-virtual-render .bk-virtual-content,
22
- .bk-virtual-render.bk-virtual-content {
96
+ .bk-virtual-render .bk-virtual-content {
23
97
  position: absolute;
24
98
  top: 0;
25
99
  bottom: 0;
@@ -60,7 +60,10 @@ declare const _default: import("vue").DefineComponent<{
60
60
  default: string;
61
61
  } & {
62
62
  default: string;
63
- };
63
+ }; /**
64
+ * 将制定元素滚动到顶部
65
+ * @param option
66
+ */
64
67
  draggable: import("vue-types").VueTypeValidableDef<boolean> & {
65
68
  default: boolean;
66
69
  } & {
@@ -120,6 +123,14 @@ declare const _default: import("vue").DefineComponent<{
120
123
  } & {
121
124
  default: boolean;
122
125
  };
126
+ checkStrictly: import("vue-types").VueTypeValidableDef<boolean> & {
127
+ default: boolean;
128
+ } & {
129
+ default: boolean;
130
+ };
131
+ intersectionObserver: import("vue-types").VueTypeDef<boolean | import("./props").IIntersectionObserver> & {
132
+ default: boolean | (() => import("./props").IIntersectionObserver);
133
+ };
123
134
  }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
124
135
  nodeClick: (..._args: any[]) => boolean;
125
136
  nodeCollapse: (..._args: any[]) => boolean;
@@ -129,6 +140,7 @@ declare const _default: import("vue").DefineComponent<{
129
140
  nodeDragOver: (..._args: any[]) => boolean;
130
141
  nodeDragLeave: (..._args: any[]) => boolean;
131
142
  nodeDrop: (..._args: any[]) => boolean;
143
+ nodeEnterView: (..._args: any[]) => boolean;
132
144
  }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
133
145
  data: import("vue-types").VueTypeDef<any[]> & {
134
146
  default: () => any[];
@@ -185,7 +197,10 @@ declare const _default: import("vue").DefineComponent<{
185
197
  default: string;
186
198
  } & {
187
199
  default: string;
188
- };
200
+ }; /**
201
+ * 将制定元素滚动到顶部
202
+ * @param option
203
+ */
189
204
  draggable: import("vue-types").VueTypeValidableDef<boolean> & {
190
205
  default: boolean;
191
206
  } & {
@@ -245,6 +260,14 @@ declare const _default: import("vue").DefineComponent<{
245
260
  } & {
246
261
  default: boolean;
247
262
  };
263
+ checkStrictly: import("vue-types").VueTypeValidableDef<boolean> & {
264
+ default: boolean;
265
+ } & {
266
+ default: boolean;
267
+ };
268
+ intersectionObserver: import("vue-types").VueTypeDef<boolean | import("./props").IIntersectionObserver> & {
269
+ default: boolean | (() => import("./props").IIntersectionObserver);
270
+ };
248
271
  }>> & {
249
272
  onNodeClick?: (...args: any[]) => any;
250
273
  onNodeCollapse?: (...args: any[]) => any;
@@ -254,6 +277,7 @@ declare const _default: import("vue").DefineComponent<{
254
277
  onNodeDragOver?: (...args: any[]) => any;
255
278
  onNodeDragLeave?: (...args: any[]) => any;
256
279
  onNodeDrop?: (...args: any[]) => any;
280
+ onNodeEnterView?: (...args: any[]) => any;
257
281
  }, {
258
282
  data: any[];
259
283
  height: number;
@@ -281,5 +305,7 @@ declare const _default: import("vue").DefineComponent<{
281
305
  expandAll: boolean;
282
306
  nodeContentAction: any;
283
307
  keepSlotData: boolean;
308
+ checkStrictly: boolean;
309
+ intersectionObserver: boolean | import("./props").IIntersectionObserver;
284
310
  }, {}>;
285
311
  export default _default;
@@ -12,6 +12,7 @@
12
12
  --whitesmoke-color: #fafbfd;
13
13
  --disable-color: #dcdee5;
14
14
  --disable-bg-color: #f9fafd;
15
+ --border-color: #dcdee5;
15
16
  --font-size-base: 12px;
16
17
  --font-size-medium: 14px;
17
18
  --font-size-large: 16px;
@@ -123,6 +124,8 @@
123
124
  --search-select-placeholder-color: var(--light-gray);
124
125
  --search-select-message-color: var(--danger-color);
125
126
  --search-select-menu-border-color: var(--disable-color);
127
+ --select-active-color: #e1ecff;
128
+ --select-hover-color: #f5f7fa;
126
129
  }
127
130
  .bk-F-scroll-x {
128
131
  overflow-x: auto;
@@ -141,11 +144,85 @@
141
144
  .bk-F-scroll-y::-webkit-scrollbar-thumb {
142
145
  border-radius: 4px;
143
146
  }
147
+ .bk-scrollbar-wrapper {
148
+ position: relative;
149
+ overflow: hidden;
150
+ }
151
+ .bk-scrollbar-wrapper .bk-scrollbar-content-el {
152
+ display: inline-flex;
153
+ flex-direction: column;
154
+ width: 100%;
155
+ }
156
+ .bk-scrollbar-wrapper .bk-scrollbar-track {
157
+ z-index: 1;
158
+ position: absolute;
159
+ right: 0;
160
+ bottom: 0;
161
+ pointer-events: none;
162
+ overflow: hidden;
163
+ }
164
+ .bk-scrollbar-wrapper .bk-scrollbar-track.bk-scrollbar-hover {
165
+ background-color: #F0F1F5;
166
+ cursor: pointer;
167
+ }
168
+ .bk-scrollbar-wrapper .bk-scrollbar-track.bk-scrollbar-hover .bk-scrollbar::before {
169
+ background-color: #979BA5;
170
+ }
171
+ .bk-scrollbar-wrapper .bk-scrollbar-track.bk-scrollbar-vertical {
172
+ top: 0;
173
+ width: 8px;
174
+ transform: translate(var(--scroll-offset-x), var(--scroll-offset-y));
175
+ }
176
+ .bk-scrollbar-wrapper .bk-scrollbar-track.bk-scrollbar-horizontal {
177
+ left: 0;
178
+ height: 8px;
179
+ transform: translate(var(--scroll-offset-x), var(--scroll-offset-y));
180
+ }
181
+ .bk-scrollbar-wrapper .bk-scrollbar-track.bk-scrollbar-horizontal.bk-scrollbar {
182
+ right: auto;
183
+ left: 0;
184
+ top: 0;
185
+ bottom: 0;
186
+ min-height: 0;
187
+ min-width: 8px;
188
+ width: auto;
189
+ }
190
+ .bk-scrollbar-wrapper .bk-scrollbar-dragging {
191
+ pointer-events: none;
192
+ -webkit-touch-callout: none;
193
+ -webkit-user-select: none;
194
+ -khtml-user-select: none;
195
+ -moz-user-select: none;
196
+ -ms-user-select: none;
197
+ user-select: none;
198
+ }
199
+ .bk-scrollbar-wrapper .bk-scrollbar {
200
+ position: absolute;
201
+ left: 0;
202
+ right: 0;
203
+ min-height: 8px;
204
+ }
205
+ .bk-scrollbar-wrapper .bk-scrollbar::before {
206
+ position: absolute;
207
+ content: '';
208
+ background: #DCDEE5;
209
+ border-radius: 6px;
210
+ left: 1px;
211
+ right: 1px;
212
+ top: 1px;
213
+ bottom: 1px;
214
+ opacity: 0;
215
+ transition: opacity 0.2s 0.9s linear;
216
+ }
217
+ .bk-scrollbar-wrapper .bk-scrollbar.bk-scrollbar-visible::before {
218
+ opacity: 0.9;
219
+ transition-delay: 0s;
220
+ transition-duration: 0s;
221
+ }
144
222
  .bk-virtual-render {
145
223
  position: relative;
146
224
  }
147
- .bk-virtual-render .bk-virtual-content,
148
- .bk-virtual-render.bk-virtual-content {
225
+ .bk-virtual-render .bk-virtual-content {
149
226
  position: absolute;
150
227
  top: 0;
151
228
  bottom: 0;
@@ -0,0 +1,27 @@
1
+ import { IIntersectionObserver, TreePropTypes } from './props';
2
+ type IntersectionObserverOptions = {
3
+ rootMargin?: string;
4
+ threshold?: number | number[];
5
+ root?: Element | null;
6
+ };
7
+ type IntersectionObserverResponseValue = {
8
+ level: number;
9
+ node: Record<string, any>;
10
+ index: number;
11
+ entry: IntersectionObserverEntry;
12
+ };
13
+ type IntersectionObserverResponse = {
14
+ beforeResponse?: (entry: IntersectionObserverEntry) => IntersectionObserverResponseValue;
15
+ };
16
+ declare const _default: (props: TreePropTypes) => {
17
+ unobserveAll: () => void;
18
+ intersectionObserver: import("vue").ComputedRef<{
19
+ enabled: boolean | IIntersectionObserver;
20
+ once: boolean;
21
+ callback: any;
22
+ }>;
23
+ initIntersectionObserver: (target: Element | Element[] | Node | Node[], options: IntersectionObserverOptions, resp?: IntersectionObserverResponse) => void;
24
+ initRootMutationObserver: (root: Element, callback: any) => void;
25
+ getLastVisibleElement: (offsetY: number, root: HTMLElement) => HTMLElement[];
26
+ };
27
+ export default _default;
@@ -6,6 +6,7 @@ declare const _default: (flatData: {
6
6
  getSchemaVal: (node: any) => any;
7
7
  getNodeAttr: (node: any, attr: string) => any;
8
8
  getNodeId: (node: any) => any;
9
+ getNodeById: (id: any) => any;
9
10
  getNodeParentId: (node: any) => any;
10
11
  getParentNodeData: (node: any) => any;
11
12
  getNodePathById: (id: string) => any;
@@ -47,5 +48,13 @@ declare const _default: (flatData: {
47
48
  parentId: any;
48
49
  };
49
50
  };
51
+ getIntersectionResponse: (target: HTMLElement | Record<string, any>) => {
52
+ level: any;
53
+ target: HTMLElement | Record<string, any>;
54
+ index: any;
55
+ parent: any;
56
+ node: HTMLElement | Record<string, any>;
57
+ isRoot: any;
58
+ };
50
59
  };
51
60
  export default _default;
@@ -84,6 +84,9 @@ declare const Upload: {
84
84
  default: string;
85
85
  };
86
86
  customRequest: import("vue").PropType<import("./upload.type").UploadRequestHandler>;
87
+ selectChange: {
88
+ type: import("vue").PropType<(event: Event) => boolean | void>;
89
+ };
87
90
  beforeUpload: {
88
91
  type: import("vue").PropType<(file: import("./upload.type").UploadRawFile) => boolean | Promise<boolean>>;
89
92
  };
@@ -198,6 +201,9 @@ declare const Upload: {
198
201
  default: string;
199
202
  };
200
203
  customRequest: import("vue").PropType<import("./upload.type").UploadRequestHandler>;
204
+ selectChange: {
205
+ type: import("vue").PropType<(event: Event) => boolean | void>;
206
+ };
201
207
  beforeUpload: {
202
208
  type: import("vue").PropType<(file: import("./upload.type").UploadRawFile) => boolean | Promise<boolean>>;
203
209
  };
@@ -341,6 +347,9 @@ declare const Upload: {
341
347
  default: string;
342
348
  };
343
349
  customRequest: import("vue").PropType<import("./upload.type").UploadRequestHandler>;
350
+ selectChange: {
351
+ type: import("vue").PropType<(event: Event) => boolean | void>;
352
+ };
344
353
  beforeUpload: {
345
354
  type: import("vue").PropType<(file: import("./upload.type").UploadRawFile) => boolean | Promise<boolean>>;
346
355
  };
@@ -481,6 +490,9 @@ declare const Upload: {
481
490
  default: string;
482
491
  };
483
492
  customRequest: import("vue").PropType<import("./upload.type").UploadRequestHandler>;
493
+ selectChange: {
494
+ type: import("vue").PropType<(event: Event) => boolean | void>;
495
+ };
484
496
  beforeUpload: {
485
497
  type: import("vue").PropType<(file: import("./upload.type").UploadRawFile) => boolean | Promise<boolean>>;
486
498
  };
@@ -1431,6 +1431,9 @@ var themes = [EThemes.BUTTON, EThemes.DRAGGABLE, EThemes.PICTURE];
1431
1431
  "default": ''
1432
1432
  },
1433
1433
  customRequest: Function,
1434
+ selectChange: {
1435
+ type: Function
1436
+ },
1434
1437
  beforeUpload: {
1435
1438
  type: Function
1436
1439
  },
@@ -1796,7 +1799,8 @@ const button_less_namespaceObject = button_less_x({ });
1796
1799
  accept: props.accept,
1797
1800
  file: {
1798
1801
  type: Object
1799
- }
1802
+ },
1803
+ selectChange: props.selectChange
1800
1804
  },
1801
1805
  emits: ['change', 'remove'],
1802
1806
  setup: function setup(props, _ref) {
@@ -1835,6 +1839,10 @@ const button_less_namespaceObject = button_less_x({ });
1835
1839
  inputEl.value.click();
1836
1840
  };
1837
1841
  var handleFileChange = function handleFileChange(e) {
1842
+ var _props$selectChange;
1843
+ if (props.selectChange && ((_props$selectChange = props.selectChange) === null || _props$selectChange === void 0 ? void 0 : _props$selectChange.call(props, e)) === false) {
1844
+ return false;
1845
+ }
1838
1846
  var files = e.target.files;
1839
1847
  emit('change', Array.from(files));
1840
1848
  };
@@ -1861,39 +1869,17 @@ const button_less_namespaceObject = button_less_x({ });
1861
1869
  var dragover = (0,external_vue_namespaceObject.ref)(false);
1862
1870
  var Dragger = function Dragger() {
1863
1871
  var handleDrop = function handleDrop(e) {
1872
+ var _props$selectChange2;
1864
1873
  if (disabled.value) {
1865
1874
  return;
1866
1875
  }
1867
1876
  e.preventDefault();
1868
1877
  dragover.value = false;
1869
- var files = Array.from(e.dataTransfer.files);
1870
- if (!acceptTypes.value) {
1871
- emit('change', files);
1872
- return;
1878
+ if (props.selectChange && ((_props$selectChange2 = props.selectChange) === null || _props$selectChange2 === void 0 ? void 0 : _props$selectChange2.call(props, e)) === false) {
1879
+ return false;
1873
1880
  }
1874
- var filesFiltered = files.filter(function (file) {
1875
- var type = file.type,
1876
- name = file.name;
1877
- var extension = name.includes('.') ? ".".concat(name.split('.').pop()) : '';
1878
- var baseType = type.replace(/\/.*$/, '');
1879
- return acceptTypes.value.split(',').map(function (type) {
1880
- return type.trim();
1881
- }).filter(function (type) {
1882
- return type;
1883
- }).some(function (acceptedType) {
1884
- if (acceptedType.startsWith('.')) {
1885
- return extension === acceptedType;
1886
- }
1887
- if (/\/\*$/.test(acceptedType)) {
1888
- return baseType === acceptedType.replace(/\/\*$/, '');
1889
- }
1890
- if (/^[^/]+\/[^/]+$/.test(acceptedType)) {
1891
- return type === acceptedType;
1892
- }
1893
- return false;
1894
- });
1895
- });
1896
- emit('change', filesFiltered);
1881
+ var files = Array.from(e.dataTransfer.files);
1882
+ emit('change', files);
1897
1883
  };
1898
1884
  var handleDragover = function handleDragover(e) {
1899
1885
  e.preventDefault();
@@ -2639,7 +2625,8 @@ function upload_arrayLikeToArray(arr, len) { if (len == null || len > arr.length
2639
2625
  theme: props.theme,
2640
2626
  multiple: props.multiple,
2641
2627
  disabled: props.disabled,
2642
- accept: props.accept
2628
+ accept: props.accept,
2629
+ selectChange: props.selectChange
2643
2630
  };
2644
2631
  });
2645
2632
  function onRemove(file, fileList) {
@@ -2660,10 +2647,14 @@ function upload_arrayLikeToArray(arr, len) { if (len == null || len > arr.length
2660
2647
  return;
2661
2648
  }
2662
2649
  // limit检查
2663
- if (props.limit && fileList.value.length + files.length > props.limit) {
2650
+ if (props.limit > 1 && fileList.value.length + files.length > props.limit) {
2664
2651
  emit('exceed', files, fileList.value);
2665
2652
  return;
2666
2653
  }
2654
+ // 限制1个时使用替换方式,将之前的列表清空
2655
+ if (!props.multiple && props.limit === 1) {
2656
+ fileList.value = [];
2657
+ }
2667
2658
  var sendFiles = files;
2668
2659
  if (!props.multiple || props.limit === 1) {
2669
2660
  sendFiles = files.slice(0, 1);
@@ -85,6 +85,9 @@ declare const _default: {
85
85
  default: string;
86
86
  };
87
87
  customRequest: PropType<UploadRequestHandler>;
88
+ selectChange: {
89
+ type: PropType<(event: Event) => boolean | void>;
90
+ };
88
91
  beforeUpload: {
89
92
  type: PropType<(file: UploadRawFile) => Promise<boolean> | boolean>;
90
93
  };
@@ -20,6 +20,9 @@ declare const _default: import("vue").DefineComponent<{
20
20
  file: {
21
21
  type: PropType<UploadFile>;
22
22
  };
23
+ selectChange: {
24
+ type: PropType<(event: Event) => boolean | void>;
25
+ };
23
26
  }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("change" | "remove")[], "change" | "remove", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
24
27
  theme: {
25
28
  type: PropType<"button" | "picture" | "draggable">;
@@ -40,6 +43,9 @@ declare const _default: import("vue").DefineComponent<{
40
43
  file: {
41
44
  type: PropType<UploadFile>;
42
45
  };
46
+ selectChange: {
47
+ type: PropType<(event: Event) => boolean | void>;
48
+ };
43
49
  }>> & {
44
50
  onChange?: (...args: any[]) => any;
45
51
  onRemove?: (...args: any[]) => any;
@@ -84,6 +84,9 @@ declare const _default: import("vue").DefineComponent<{
84
84
  default: string;
85
85
  };
86
86
  customRequest: import("vue").PropType<import("./upload.type").UploadRequestHandler>;
87
+ selectChange: {
88
+ type: import("vue").PropType<(event: Event) => boolean | void>;
89
+ };
87
90
  beforeUpload: {
88
91
  type: import("vue").PropType<(file: UploadRawFile) => boolean | Promise<boolean>>;
89
92
  };
@@ -191,6 +194,9 @@ declare const _default: import("vue").DefineComponent<{
191
194
  default: string;
192
195
  };
193
196
  customRequest: import("vue").PropType<import("./upload.type").UploadRequestHandler>;
197
+ selectChange: {
198
+ type: import("vue").PropType<(event: Event) => boolean | void>;
199
+ };
194
200
  beforeUpload: {
195
201
  type: import("vue").PropType<(file: UploadRawFile) => boolean | Promise<boolean>>;
196
202
  };
@@ -12,6 +12,7 @@
12
12
  --whitesmoke-color: #fafbfd;
13
13
  --disable-color: #dcdee5;
14
14
  --disable-bg-color: #f9fafd;
15
+ --border-color: #dcdee5;
15
16
  --font-size-base: 12px;
16
17
  --font-size-medium: 14px;
17
18
  --font-size-large: 16px;
@@ -123,6 +124,8 @@
123
124
  --search-select-placeholder-color: var(--light-gray);
124
125
  --search-select-message-color: var(--danger-color);
125
126
  --search-select-menu-border-color: var(--disable-color);
127
+ --select-active-color: #e1ecff;
128
+ --select-hover-color: #f5f7fa;
126
129
  }
127
130
  @keyframes loading-scale-animate {
128
131
  0% {