@king-design/vue 2.1.4 → 2.1.6

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 (521) hide show
  1. package/components/affix/index.d.ts +2 -2
  2. package/components/affix/index.js +5 -0
  3. package/components/affix/index.spec.js +108 -84
  4. package/components/affix/index.vdt.js +8 -5
  5. package/components/affix/useStyle.js +19 -8
  6. package/components/badge/index.js +2 -0
  7. package/components/badge/index.vdt.js +9 -5
  8. package/components/badge/styles.js +2 -0
  9. package/components/breadcrumb/index.js +4 -0
  10. package/components/breadcrumb/index.spec.js +6 -6
  11. package/components/breadcrumb/index.vdt.js +14 -5
  12. package/components/breadcrumb/item.js +8 -0
  13. package/components/breadcrumb/item.vdt.js +6 -3
  14. package/components/breadcrumb/styles.js +3 -0
  15. package/components/button/dynamicButton.d.ts +1 -1
  16. package/components/button/dynamicButton.js +5 -2
  17. package/components/button/group.js +10 -2
  18. package/components/button/group.vdt.js +7 -4
  19. package/components/button/index.js +27 -3
  20. package/components/button/index.spec.js +96 -74
  21. package/components/button/index.vdt.js +29 -19
  22. package/components/button/styles.d.ts +2 -2
  23. package/components/button/styles.js +48 -4
  24. package/components/card/column.js +2 -0
  25. package/components/card/column.vdt.js +10 -5
  26. package/components/card/index.js +4 -0
  27. package/components/card/index.vdt.js +16 -4
  28. package/components/carousel/index.js +19 -1
  29. package/components/carousel/index.spec.js +163 -127
  30. package/components/carousel/index.vdt.js +15 -12
  31. package/components/carousel/item.js +2 -0
  32. package/components/carousel/item.vdt.js +7 -4
  33. package/components/carousel/styles.js +1 -0
  34. package/components/carousel/useAutoplay.js +4 -0
  35. package/components/carousel/useItems.js +20 -4
  36. package/components/carousel/useSlide.js +89 -57
  37. package/components/cascader/index.d.ts +45 -0
  38. package/components/cascader/index.js +18 -3
  39. package/components/cascader/index.spec.js +445 -354
  40. package/components/cascader/index.vdt.js +31 -14
  41. package/components/cascader/styles.js +6 -0
  42. package/components/cascader/useFields.js +4 -1
  43. package/components/cascader/useFilterable.js +19 -2
  44. package/components/cascader/useLabel.js +9 -1
  45. package/components/cascader/useLoad.js +35 -22
  46. package/components/cascader/useValue.d.ts +2 -2
  47. package/components/cascader/useValue.js +26 -5
  48. package/components/checkbox/index.js +27 -5
  49. package/components/checkbox/index.spec.js +171 -129
  50. package/components/checkbox/index.vdt.js +16 -12
  51. package/components/checkbox/styles.js +10 -0
  52. package/components/code/crossDomain.js +9 -2
  53. package/components/code/index.js +9 -0
  54. package/components/code/index.spec.js +55 -46
  55. package/components/code/index.vdt.js +14 -6
  56. package/components/code/styles.js +1 -0
  57. package/components/code/useEditor.js +10 -5
  58. package/components/collapse/index.d.ts +1 -1
  59. package/components/collapse/index.js +14 -3
  60. package/components/collapse/index.spec.js +60 -47
  61. package/components/collapse/index.vdt.js +12 -4
  62. package/components/collapse/item.js +10 -0
  63. package/components/collapse/item.vdt.js +14 -7
  64. package/components/collapse/styles.js +1 -0
  65. package/components/colorpicker/drag.js +5 -0
  66. package/components/colorpicker/index.js +4 -0
  67. package/components/colorpicker/index.spec.js +259 -211
  68. package/components/colorpicker/index.vdt.js +11 -8
  69. package/components/colorpicker/panel.js +5 -0
  70. package/components/colorpicker/panel.vdt.js +26 -21
  71. package/components/colorpicker/styles.js +13 -2
  72. package/components/colorpicker/useDrag.js +26 -22
  73. package/components/colorpicker/useInput.js +16 -0
  74. package/components/colorpicker/usePointer.js +18 -15
  75. package/components/colorpicker/useValue.js +7 -2
  76. package/components/context.d.ts +2 -2
  77. package/components/context.js +19 -2
  78. package/components/datepicker/basepicker.d.ts +8 -8
  79. package/components/datepicker/basepicker.js +90 -20
  80. package/components/datepicker/calendar.js +11 -0
  81. package/components/datepicker/calendar.vdt.js +14 -11
  82. package/components/datepicker/constants.js +1 -0
  83. package/components/datepicker/dayjs.js +1 -1
  84. package/components/datepicker/helpers.js +15 -3
  85. package/components/datepicker/index.d.ts +63 -0
  86. package/components/datepicker/index.js +32 -6
  87. package/components/datepicker/index.spec.js +1448 -1141
  88. package/components/datepicker/index.vdt.js +34 -20
  89. package/components/datepicker/shortcuts.d.ts +1 -1
  90. package/components/datepicker/shortcuts.js +4 -0
  91. package/components/datepicker/styles.js +8 -0
  92. package/components/datepicker/time.d.ts +1 -1
  93. package/components/datepicker/time.js +23 -3
  94. package/components/datepicker/time.vdt.js +5 -4
  95. package/components/datepicker/useDays.js +9 -2
  96. package/components/datepicker/useDisabled.js +23 -6
  97. package/components/datepicker/useFocusDate.js +2 -0
  98. package/components/datepicker/useFormats.js +15 -6
  99. package/components/datepicker/useKeyboards.js +36 -20
  100. package/components/datepicker/useMonths.js +6 -0
  101. package/components/datepicker/usePanel.js +10 -0
  102. package/components/datepicker/useShowDate.js +37 -10
  103. package/components/datepicker/useStatus.js +15 -3
  104. package/components/datepicker/useValue.js +35 -22
  105. package/components/datepicker/useYears.js +15 -4
  106. package/components/diagram/diagram.js +43 -17
  107. package/components/diagram/diagram.vdt.js +5 -2
  108. package/components/diagram/graph.js +6 -6
  109. package/components/diagram/index.d.ts +1 -1
  110. package/components/diagram/index.js +7 -7
  111. package/components/diagram/index.spec.js +495 -369
  112. package/components/diagram/layouts/circle.js +14 -6
  113. package/components/diagram/layouts/flow.js +15 -7
  114. package/components/diagram/layouts/layout.js +28 -6
  115. package/components/diagram/layouts/organic.js +11 -3
  116. package/components/diagram/layouts/partition.js +12 -4
  117. package/components/diagram/layouts/radial.js +18 -6
  118. package/components/diagram/layouts/stack.js +14 -6
  119. package/components/diagram/layouts/tree.js +21 -11
  120. package/components/diagram/mxgraph/handler/mxConnectionHandler.js +22 -15
  121. package/components/diagram/mxgraph/handler/mxConstraintHandler.js +4 -4
  122. package/components/diagram/mxgraph/handler/mxEdgeHandler.js +15 -11
  123. package/components/diagram/mxgraph/handler/mxGraphHandler.js +9 -6
  124. package/components/diagram/mxgraph/handler/mxRubberband.js +4 -4
  125. package/components/diagram/mxgraph/handler/mxVertexHandler.js +10 -7
  126. package/components/diagram/mxgraph/index.js +2 -0
  127. package/components/diagram/mxgraph/mx.js +3 -3
  128. package/components/diagram/mxgraph/shape/mxCloud.js +2 -2
  129. package/components/diagram/mxgraph/shape/mxCylinder.js +9 -4
  130. package/components/diagram/mxgraph/shape/mxEllipse.js +2 -2
  131. package/components/diagram/mxgraph/shape/mxHexagon.js +2 -2
  132. package/components/diagram/mxgraph/shape/mxLine.js +2 -2
  133. package/components/diagram/mxgraph/shape/mxRectangleShape.js +2 -2
  134. package/components/diagram/mxgraph/shape/mxRhombus.js +12 -6
  135. package/components/diagram/mxgraph/shape/mxShape.js +1 -0
  136. package/components/diagram/mxgraph/shape/mxTriangle.js +2 -2
  137. package/components/diagram/mxgraph/util/mxConstants.js +2 -2
  138. package/components/diagram/mxgraph/util/mxGuide.js +7 -5
  139. package/components/diagram/mxgraph/view/mxCellEditor.js +29 -16
  140. package/components/diagram/mxgraph/view/mxCellRenderer.js +2 -0
  141. package/components/diagram/mxgraph/view/mxGraph.js +32 -14
  142. package/components/diagram/shapes/base.d.ts +1 -1
  143. package/components/diagram/shapes/base.js +39 -9
  144. package/components/diagram/shapes/callout.js +23 -10
  145. package/components/diagram/shapes/circle.js +10 -3
  146. package/components/diagram/shapes/document.js +16 -5
  147. package/components/diagram/shapes/ellipse.js +5 -0
  148. package/components/diagram/shapes/generateShapes.d.ts +1 -1
  149. package/components/diagram/shapes/generateShapes.js +9 -0
  150. package/components/diagram/shapes/hexagon.js +26 -9
  151. package/components/diagram/shapes/image.js +9 -1
  152. package/components/diagram/shapes/line.d.ts +2 -2
  153. package/components/diagram/shapes/line.js +48 -13
  154. package/components/diagram/shapes/parallelogram.js +26 -9
  155. package/components/diagram/shapes/rectangle.js +9 -1
  156. package/components/diagram/shapes/shape.js +35 -6
  157. package/components/diagram/shapes/square.js +11 -3
  158. package/components/diagram/shapes/text.js +5 -0
  159. package/components/diagram/styles.js +1 -0
  160. package/components/dialog/alert.vdt.js +19 -9
  161. package/components/dialog/base.js +29 -1
  162. package/components/dialog/base.vdt.js +29 -14
  163. package/components/dialog/index.js +31 -6
  164. package/components/dialog/index.spec.js +554 -406
  165. package/components/dialog/staticMethods.d.ts +1 -1
  166. package/components/dialog/staticMethods.js +13 -2
  167. package/components/dialog/styles.js +11 -0
  168. package/components/dialog/useDraggable.js +6 -0
  169. package/components/dialog/useEscClosable.js +12 -4
  170. package/components/dialog/useFixBody.d.ts +1 -1
  171. package/components/dialog/useFixBody.js +11 -0
  172. package/components/dialog/usePosition.js +5 -0
  173. package/components/drawer/index.js +5 -0
  174. package/components/drawer/index.spec.js +168 -126
  175. package/components/drawer/index.vdt.js +9 -3
  176. package/components/drawer/styles.d.ts +2 -2
  177. package/components/drawer/styles.js +4 -0
  178. package/components/dropdown/dropdown.d.ts +2 -2
  179. package/components/dropdown/dropdown.js +89 -33
  180. package/components/dropdown/index.js +6 -2
  181. package/components/dropdown/index.spec.js +496 -388
  182. package/components/dropdown/item.js +25 -4
  183. package/components/dropdown/item.vdt.js +8 -5
  184. package/components/dropdown/menu.js +29 -12
  185. package/components/dropdown/menu.vdt.js +13 -5
  186. package/components/dropdown/styles.js +9 -0
  187. package/components/dropdown/useKeyboard.d.ts +2 -2
  188. package/components/dropdown/useKeyboard.js +30 -8
  189. package/components/dropdown/usePosition.d.ts +1 -1
  190. package/components/dropdown/usePosition.js +22 -12
  191. package/components/dropdown/useTransition.js +8 -0
  192. package/components/editable/index.d.ts +1 -1
  193. package/components/editable/index.js +28 -4
  194. package/components/editable/index.spec.js +189 -152
  195. package/components/editable/index.vdt.js +11 -8
  196. package/components/editable/styles.js +1 -0
  197. package/components/form/form.js +18 -0
  198. package/components/form/form.vdt.js +7 -4
  199. package/components/form/index.spec.js +1280 -1057
  200. package/components/form/item.d.ts +1 -1
  201. package/components/form/item.js +12 -0
  202. package/components/form/item.vdt.js +31 -17
  203. package/components/form/methods.d.ts +5 -5
  204. package/components/form/methods.js +12 -2
  205. package/components/form/styles.js +8 -0
  206. package/components/form/useDirty.js +7 -2
  207. package/components/form/useError.js +10 -2
  208. package/components/form/useValidate.d.ts +1 -1
  209. package/components/form/useValidate.js +24 -8
  210. package/components/grid/col.d.ts +3 -3
  211. package/components/grid/col.js +7 -0
  212. package/components/grid/col.vdt.js +13 -8
  213. package/components/grid/constants.d.ts +6 -6
  214. package/components/grid/row.js +5 -0
  215. package/components/grid/row.vdt.js +8 -5
  216. package/components/grid/styles.js +7 -0
  217. package/components/grid/useBreakpoints.js +5 -0
  218. package/components/grid/useGutter.js +25 -5
  219. package/components/icon/index.js +10 -0
  220. package/components/icon/index.vdt.js +13 -7
  221. package/components/icon/styles.js +1 -0
  222. package/components/input/index.d.ts +3 -3
  223. package/components/input/index.js +14 -0
  224. package/components/input/index.spec.js +239 -185
  225. package/components/input/index.vdt.js +49 -39
  226. package/components/input/search.js +20 -0
  227. package/components/input/search.vdt.js +9 -6
  228. package/components/input/styles.js +26 -0
  229. package/components/input/useAutoRows.js +18 -6
  230. package/components/input/useAutoWidth.js +5 -0
  231. package/components/input/useFrozen.js +6 -0
  232. package/components/input/useShowPassword.js +5 -2
  233. package/components/layout/aside.js +17 -5
  234. package/components/layout/aside.vdt.js +9 -5
  235. package/components/layout/body.js +17 -5
  236. package/components/layout/footer.js +7 -1
  237. package/components/layout/header.js +21 -7
  238. package/components/layout/layout.js +24 -9
  239. package/components/layout/styles.js +13 -2
  240. package/components/layout/template.vdt.js +4 -2
  241. package/components/layout/useParse.js +7 -0
  242. package/components/menu/index.spec.js +242 -189
  243. package/components/menu/item.js +16 -3
  244. package/components/menu/item.vdt.js +32 -20
  245. package/components/menu/menu.js +11 -2
  246. package/components/menu/menu.vdt.js +12 -6
  247. package/components/menu/styles.js +18 -0
  248. package/components/menu/useDropdown.js +9 -4
  249. package/components/menu/useExpanded.js +14 -0
  250. package/components/menu/useHighlight.js +36 -26
  251. package/components/message/index.spec.js +73 -58
  252. package/components/message/message.js +19 -0
  253. package/components/message/message.vdt.js +8 -5
  254. package/components/message/messages.js +12 -0
  255. package/components/message/messages.vdt.js +1 -0
  256. package/components/message/styles.js +9 -0
  257. package/components/pagination/index.d.ts +1 -1
  258. package/components/pagination/index.js +46 -10
  259. package/components/pagination/index.spec.js +173 -133
  260. package/components/pagination/index.vdt.js +34 -14
  261. package/components/pagination/styles.js +4 -0
  262. package/components/portal.d.ts +1 -1
  263. package/components/portal.js +29 -2
  264. package/components/position.d.ts +12 -12
  265. package/components/position.js +88 -32
  266. package/components/progress/index.d.ts +6 -6
  267. package/components/progress/index.js +12 -0
  268. package/components/progress/index.spec.js +191 -143
  269. package/components/progress/index.vdt.js +11 -8
  270. package/components/progress/styles.js +6 -0
  271. package/components/progress/useColor.js +7 -2
  272. package/components/progress/useStatus.d.ts +1 -1
  273. package/components/progress/useStatus.js +5 -2
  274. package/components/radio/index.js +18 -3
  275. package/components/radio/index.spec.js +149 -111
  276. package/components/radio/index.vdt.js +17 -14
  277. package/components/radio/styles.js +10 -0
  278. package/components/rate/index.js +7 -0
  279. package/components/rate/index.spec.js +79 -64
  280. package/components/rate/index.vdt.js +21 -8
  281. package/components/rate/styles.js +3 -0
  282. package/components/rate/useActiveValue.js +7 -2
  283. package/components/scrollSelect/index.d.ts +2 -2
  284. package/components/scrollSelect/index.js +7 -0
  285. package/components/scrollSelect/index.spec.js +131 -100
  286. package/components/scrollSelect/index.vdt.js +11 -6
  287. package/components/scrollSelect/styles.js +7 -0
  288. package/components/scrollSelect/useList.js +17 -3
  289. package/components/scrollSelect/useMouseEvents.js +49 -31
  290. package/components/scrollSelect/useTranslate.js +11 -1
  291. package/components/select/base.js +35 -5
  292. package/components/select/base.vdt.js +38 -23
  293. package/components/select/group.js +5 -0
  294. package/components/select/group.vdt.js +10 -4
  295. package/components/select/index.spec.js +452 -361
  296. package/components/select/menu.js +5 -0
  297. package/components/select/menu.vdt.js +33 -18
  298. package/components/select/option.js +16 -2
  299. package/components/select/option.vdt.js +14 -7
  300. package/components/select/select.d.ts +33 -0
  301. package/components/select/select.js +20 -3
  302. package/components/select/select.vdt.js +17 -9
  303. package/components/select/styles.js +33 -0
  304. package/components/select/useBaseLabel.d.ts +1 -1
  305. package/components/select/useBaseLabel.js +17 -4
  306. package/components/select/useCard.js +4 -0
  307. package/components/select/useEqualWidth.js +1 -0
  308. package/components/select/useFilterable.js +27 -5
  309. package/components/select/useFocusout.js +8 -0
  310. package/components/select/useInput.js +10 -6
  311. package/components/select/useLabel.js +13 -3
  312. package/components/select/useSearchable.js +10 -0
  313. package/components/skeleton/item.d.ts +1 -1
  314. package/components/skeleton/item.js +4 -0
  315. package/components/skeleton/item.vdt.js +6 -1
  316. package/components/skeleton/skeleton.js +4 -0
  317. package/components/skeleton/skeleton.vdt.js +12 -6
  318. package/components/skeleton/style.d.ts +1 -1
  319. package/components/skeleton/style.js +1 -0
  320. package/components/slider/index.d.ts +1 -1
  321. package/components/slider/index.js +7 -0
  322. package/components/slider/index.spec.js +585 -467
  323. package/components/slider/index.vdt.js +45 -32
  324. package/components/slider/styles.js +14 -0
  325. package/components/slider/useClick.js +11 -2
  326. package/components/slider/useDraggable.js +34 -23
  327. package/components/slider/useKeyboard.js +18 -7
  328. package/components/slider/useMarks.d.ts +5 -5
  329. package/components/slider/useMarks.js +13 -5
  330. package/components/slider/usePoints.d.ts +2 -2
  331. package/components/slider/usePoints.js +21 -7
  332. package/components/slider/useStyles.d.ts +1 -1
  333. package/components/slider/useStyles.js +10 -5
  334. package/components/slider/useTooltip.js +10 -2
  335. package/components/slider/useValue.d.ts +1 -1
  336. package/components/slider/useValue.js +22 -7
  337. package/components/spin/index.js +4 -0
  338. package/components/spin/index.vdt.js +11 -4
  339. package/components/spin/styles.js +2 -0
  340. package/components/spinner/index.d.ts +4 -4
  341. package/components/spinner/index.js +24 -9
  342. package/components/spinner/index.spec.js +460 -359
  343. package/components/spinner/index.vdt.js +13 -10
  344. package/components/spinner/styles.js +3 -0
  345. package/components/spinner/useChange.js +16 -4
  346. package/components/spinner/useFormatter.js +16 -6
  347. package/components/spinner/useStep.d.ts +3 -3
  348. package/components/spinner/useStep.js +20 -2
  349. package/components/spinner/useValue.js +26 -11
  350. package/components/split/index.js +7 -0
  351. package/components/split/index.spec.js +267 -223
  352. package/components/split/index.vdt.js +17 -8
  353. package/components/split/style.d.ts +1 -1
  354. package/components/split/style.js +8 -0
  355. package/components/split/useDraggable.js +35 -11
  356. package/components/split/useSize.js +5 -2
  357. package/components/steps/context.d.ts +2 -2
  358. package/components/steps/index.js +10 -2
  359. package/components/steps/index.spec.js +27 -21
  360. package/components/steps/index.vdt.js +10 -8
  361. package/components/steps/step.js +2 -0
  362. package/components/steps/step.vdt.js +12 -8
  363. package/components/steps/styles.js +27 -0
  364. package/components/switch/index.js +23 -2
  365. package/components/switch/index.spec.js +224 -188
  366. package/components/switch/index.vdt.js +32 -16
  367. package/components/switch/styles.js +14 -3
  368. package/components/switch/useDraggable.js +18 -10
  369. package/components/table/cell.js +6 -0
  370. package/components/table/cell.vdt.js +21 -14
  371. package/components/table/column.d.ts +1 -1
  372. package/components/table/column.js +5 -0
  373. package/components/table/column.vdt.js +30 -19
  374. package/components/table/exportTable.js +56 -45
  375. package/components/table/index.spec.js +984 -780
  376. package/components/table/row.d.ts +1 -1
  377. package/components/table/row.js +41 -12
  378. package/components/table/row.vdt.js +39 -27
  379. package/components/table/styles.js +11 -0
  380. package/components/table/table.d.ts +5 -5
  381. package/components/table/table.js +50 -18
  382. package/components/table/table.vdt.js +85 -61
  383. package/components/table/useChecked.d.ts +1 -1
  384. package/components/table/useChecked.js +61 -20
  385. package/components/table/useColumns.js +16 -3
  386. package/components/table/useDisableRow.js +12 -2
  387. package/components/table/useDraggable.js +12 -4
  388. package/components/table/useExpandable.js +5 -2
  389. package/components/table/useFixedColumns.d.ts +1 -1
  390. package/components/table/useFixedColumns.js +23 -4
  391. package/components/table/useGroup.d.ts +1 -1
  392. package/components/table/useGroup.js +24 -7
  393. package/components/table/useMerge.d.ts +4 -4
  394. package/components/table/useMerge.js +14 -2
  395. package/components/table/usePagination.js +18 -4
  396. package/components/table/useResizable.js +10 -2
  397. package/components/table/useRestRowStatus.js +6 -2
  398. package/components/table/useScroll.d.ts +1 -1
  399. package/components/table/useScroll.js +3 -0
  400. package/components/table/useSelected.js +5 -2
  401. package/components/table/useSortable.js +8 -2
  402. package/components/table/useStickyHeader.js +7 -3
  403. package/components/table/useStickyScrollbar.js +16 -6
  404. package/components/table/useTree.js +12 -1
  405. package/components/table/useWidth.js +30 -14
  406. package/components/tabs/index.js +51 -29
  407. package/components/tabs/index.spec.js +74 -56
  408. package/components/tabs/index.vdt.js +16 -13
  409. package/components/tabs/styles.js +16 -0
  410. package/components/tabs/tab.js +10 -0
  411. package/components/tabs/tab.vdt.js +10 -6
  412. package/components/tabs/useActiveBar.js +11 -2
  413. package/components/tabs/useScroll.js +20 -4
  414. package/components/tag/base.js +8 -0
  415. package/components/tag/index.js +4 -2
  416. package/components/tag/index.spec.js +25 -19
  417. package/components/tag/index.vdt.js +15 -8
  418. package/components/tag/styles.js +9 -0
  419. package/components/timeline/item.js +4 -0
  420. package/components/timeline/item.vdt.js +9 -4
  421. package/components/timeline/styles.d.ts +2 -2
  422. package/components/timeline/styles.js +4 -0
  423. package/components/timeline/timeline.js +2 -0
  424. package/components/timeline/timeline.vdt.js +5 -2
  425. package/components/timepicker/index.js +7 -2
  426. package/components/timepicker/index.spec.js +368 -293
  427. package/components/timepicker/panelPicker.d.ts +54 -0
  428. package/components/timepicker/panelPicker.js +11 -2
  429. package/components/timepicker/panelPicker.vdt.js +24 -14
  430. package/components/timepicker/selectPicker.js +5 -0
  431. package/components/timepicker/selectPicker.vdt.js +10 -5
  432. package/components/timepicker/styles.js +1 -0
  433. package/components/timepicker/useDisabled.js +4 -2
  434. package/components/timepicker/useFormats.js +13 -4
  435. package/components/timepicker/useStep.d.ts +1 -1
  436. package/components/timepicker/useStep.js +17 -8
  437. package/components/timepicker/useValue.js +21 -16
  438. package/components/tip/index.js +2 -0
  439. package/components/tip/index.vdt.js +17 -5
  440. package/components/tip/styles.js +3 -0
  441. package/components/tooltip/content.js +28 -0
  442. package/components/tooltip/content.vdt.js +25 -15
  443. package/components/tooltip/index.js +7 -3
  444. package/components/tooltip/index.spec.js +572 -434
  445. package/components/tooltip/styles.d.ts +1 -1
  446. package/components/tooltip/styles.js +10 -2
  447. package/components/tooltip/tooltip.js +15 -2
  448. package/components/tooltip/useArrow.js +14 -11
  449. package/components/transfer/index.d.ts +1 -1
  450. package/components/transfer/index.js +13 -1
  451. package/components/transfer/index.spec.js +194 -159
  452. package/components/transfer/index.vdt.js +34 -16
  453. package/components/transfer/styles.js +10 -0
  454. package/components/transfer/useCheck.d.ts +1 -1
  455. package/components/transfer/useCheck.js +15 -1
  456. package/components/transfer/useFilter.d.ts +1 -1
  457. package/components/transfer/useFilter.js +30 -9
  458. package/components/transfer/useTransfer.js +26 -10
  459. package/components/tree/index.d.ts +3 -3
  460. package/components/tree/index.js +22 -4
  461. package/components/tree/index.spec.js +355 -285
  462. package/components/tree/index.vdt.js +23 -12
  463. package/components/tree/styles.js +16 -2
  464. package/components/tree/useChecked.js +26 -3
  465. package/components/tree/useDraggable.js +42 -12
  466. package/components/tree/useExpanded.js +43 -26
  467. package/components/tree/useFilter.js +10 -3
  468. package/components/tree/useNodes.d.ts +1 -1
  469. package/components/tree/useNodes.js +4 -0
  470. package/components/tree/useSelected.js +38 -21
  471. package/components/tree/useTransitionEvent.js +5 -3
  472. package/components/treeSelect/index.d.ts +27 -0
  473. package/components/treeSelect/index.js +36 -9
  474. package/components/treeSelect/index.spec.js +160 -123
  475. package/components/treeSelect/index.vdt.js +20 -14
  476. package/components/treeSelect/styles.js +1 -0
  477. package/components/treeSelect/useValue.js +11 -0
  478. package/components/types.d.ts +3 -3
  479. package/components/upload/ajaxUploader.d.ts +1 -1
  480. package/components/upload/ajaxUploader.js +17 -0
  481. package/components/upload/index.d.ts +4 -4
  482. package/components/upload/index.js +14 -0
  483. package/components/upload/index.spec.js +249 -142
  484. package/components/upload/index.vdt.js +27 -12
  485. package/components/upload/styles.js +30 -0
  486. package/components/upload/useAccept.js +10 -2
  487. package/components/upload/useDrag.js +7 -0
  488. package/components/upload/useFiles.js +145 -103
  489. package/components/upload/useShowImage.js +3 -0
  490. package/components/upload/useUpload.js +69 -47
  491. package/components/utils.d.ts +3 -3
  492. package/components/utils.js +47 -12
  493. package/components/virtual.js +37 -9
  494. package/components/wave/index.js +31 -5
  495. package/hooks/useDelayClose.js +6 -2
  496. package/hooks/useDocumentClick.js +16 -8
  497. package/hooks/useDraggable.d.ts +1 -1
  498. package/hooks/useDraggable.js +9 -0
  499. package/hooks/useKeyboard.d.ts +3 -3
  500. package/hooks/useKeyboard.js +10 -0
  501. package/hooks/useMouseOutsidable.js +8 -0
  502. package/hooks/useReceive.d.ts +1 -1
  503. package/hooks/useReceive.js +4 -0
  504. package/hooks/useRecordComponent.js +6 -0
  505. package/hooks/useRouter.js +18 -7
  506. package/hooks/useShowHideEvents.js +3 -0
  507. package/hooks/useState.d.ts +2 -2
  508. package/hooks/useState.js +6 -2
  509. package/i18n/en-US.js +1 -0
  510. package/i18n/index.d.ts +1 -1
  511. package/i18n/index.js +7 -0
  512. package/index.d.ts +2 -2
  513. package/index.js +3 -2
  514. package/package.json +2 -2
  515. package/styles/global.js +3 -2
  516. package/styles/keyframes.js +1 -0
  517. package/styles/theme.d.ts +1 -1
  518. package/styles/theme.js +7 -4
  519. package/styles/utils.d.ts +1 -1
  520. package/styles/utils.js +17 -3
  521. package/yarn-error.log +0 -1013
@@ -13,19 +13,25 @@ var typeDefs = {
13
13
  hideOnSelect: Boolean,
14
14
  _isFocus: null
15
15
  };
16
+
16
17
  var defaults = function defaults() {
17
18
  return {
18
19
  hideOnSelect: true
19
20
  };
20
21
  };
22
+
21
23
  export var DropdownItem = /*#__PURE__*/function (_Component) {
22
24
  _inheritsLoose(DropdownItem, _Component);
25
+
23
26
  function DropdownItem() {
24
27
  var _context;
28
+
25
29
  var _this;
30
+
26
31
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
27
32
  args[_key] = arguments[_key];
28
33
  }
34
+
29
35
  _this = _Component.call.apply(_Component, _concatInstanceProperty(_context = [this]).call(_context, args)) || this;
30
36
  _this.parentDropdown = void 0;
31
37
  _this.dropdown = null;
@@ -33,28 +39,35 @@ export var DropdownItem = /*#__PURE__*/function (_Component) {
33
39
  _this.dropdownMenu = null;
34
40
  return _this;
35
41
  }
42
+
36
43
  var _proto = DropdownItem.prototype;
44
+
37
45
  _proto.init = function init() {
38
46
  this.dropdown = inject(DROPDOWN);
39
47
  this.parentDropdown = this.hasSubMenu();
40
48
  this.dropdownMenu = inject(DROPDOWN_MENU);
41
49
  this.keyboard = useKeyboardForDropdownItem(this);
42
50
  };
51
+
43
52
  _proto.select = function select() {
44
- if (this.parentDropdown) return;
45
- // trigger select event firstly for Cascader update values
53
+ if (this.parentDropdown) return; // trigger select event firstly for Cascader update values
54
+
46
55
  this.trigger('select');
56
+
47
57
  if (this.get('hideOnSelect')) {
48
58
  // hide all dropdowns
49
59
  var dropdown = this.dropdown;
60
+
50
61
  do {
51
62
  dropdown.hide(true);
52
63
  } while (dropdown = dropdown.dropdown);
53
64
  }
54
65
  };
66
+
55
67
  _proto.hasSubMenu = function hasSubMenu() {
56
68
  // wrapped by Dropdown rather than DropdownMenu
57
69
  var parent = this.$senior;
70
+
58
71
  while (parent) {
59
72
  // Tooltip extends Dropdown, it's also a instance of Dropdown
60
73
  // so use constructor to detect
@@ -62,37 +75,45 @@ export var DropdownItem = /*#__PURE__*/function (_Component) {
62
75
  if (parent.constructor === ExportDropdownMenu) {
63
76
  return;
64
77
  }
78
+
65
79
  if (parent.constructor === ExportDropdown) {
66
80
  return parent;
67
81
  }
82
+
68
83
  parent = parent.$senior;
69
84
  }
70
85
  };
86
+
71
87
  _proto.onClick = function onClick(e) {
72
- if (this.get('disabled')) return;
73
- // Some cases, the item may been removed after click immediately
88
+ if (this.get('disabled')) return; // Some cases, the item may been removed after click immediately
74
89
  // and the menu will hide, because it can't detect it contains
75
90
  // the removed item.
76
91
  // Set the ignore flag to prevent menu from hidding
77
92
  //
78
93
  // @Change Cascader need click item to toggle show an hide
79
94
  // (e as IgnoreClickEvent)._ignore = true;
95
+
80
96
  this.trigger('click', e);
81
97
  this.select();
82
98
  };
99
+
83
100
  return DropdownItem;
84
101
  }(Component);
85
102
  DropdownItem.template = template;
86
103
  DropdownItem.typeDefs = typeDefs;
87
104
  DropdownItem.defaults = defaults;
105
+
88
106
  __decorate([bind], DropdownItem.prototype, "onClick", null);
107
+
89
108
  function useKeyboardForDropdownItem(instance) {
90
109
  var dropdownMenu = inject(DROPDOWN_MENU);
110
+
91
111
  var showMenu = function showMenu() {
92
112
  if (instance.parentDropdown) {
93
113
  instance.parentDropdown.show(true);
94
114
  }
95
115
  };
116
+
96
117
  return useItemKeyboard({
97
118
  onShowMenu: showMenu,
98
119
  onHideMenu: function onHideMenu() {
@@ -4,15 +4,18 @@ import { getRestProps } from '../utils';
4
4
  import { makeItemStyles } from './styles';
5
5
  export default function ($props, $blocks, $__proto__) {
6
6
  var _classNameObj;
7
+
7
8
  $blocks || ($blocks = {});
8
9
  $props || ($props = {});
9
10
  var $this = this;
11
+
10
12
  var _this$get = this.get(),
11
- children = _this$get.children,
12
- disabled = _this$get.disabled,
13
- className = _this$get.className,
14
- hideOnSelect = _this$get.hideOnSelect,
15
- _isFocus = _this$get._isFocus;
13
+ children = _this$get.children,
14
+ disabled = _this$get.disabled,
15
+ className = _this$get.className,
16
+ hideOnSelect = _this$get.hideOnSelect,
17
+ _isFocus = _this$get._isFocus;
18
+
16
19
  var classNameObj = (_classNameObj = {
17
20
  'k-dropdown-item': true,
18
21
  'k-disabled': disabled
@@ -12,12 +12,16 @@ import { usePositionForDropdownMenu } from './usePosition';
12
12
  export var DROPDOWN_MENU = 'DropdownMenu';
13
13
  export var DropdownMenu = /*#__PURE__*/function (_Component) {
14
14
  _inheritsLoose(DropdownMenu, _Component);
15
+
15
16
  function DropdownMenu() {
16
17
  var _context;
18
+
17
19
  var _this;
20
+
18
21
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
19
22
  args[_key] = arguments[_key];
20
23
  }
24
+
21
25
  _this = _Component.call.apply(_Component, _concatInstanceProperty(_context = [this]).call(_context, args)) || this;
22
26
  _this.elementRef = createRef();
23
27
  _this.dropdown = inject(DROPDOWN);
@@ -27,56 +31,69 @@ export var DropdownMenu = /*#__PURE__*/function (_Component) {
27
31
  });
28
32
  return _this;
29
33
  }
34
+
30
35
  var _proto = DropdownMenu.prototype;
36
+
31
37
  _proto.init = function init() {
32
38
  provide(DROPDOWN_MENU, this);
33
39
  useMouseOutsidable(this.elementRef);
34
40
  usePositionForDropdownMenu();
35
- }
36
- // no matter what the trigger is, we should show menu when enter into it.
41
+ } // no matter what the trigger is, we should show menu when enter into it.
37
42
  ;
43
+
38
44
  _proto.onMouseEnter = function onMouseEnter(e) {
39
45
  var dropdown = this.dropdown;
40
46
  dropdown.show();
41
47
  dropdown.trigger('mouseenter', e);
42
48
  };
49
+
43
50
  _proto.onMouseLeave = function onMouseLeave(e) {
44
51
  var dropdown = this.dropdown;
45
52
  dropdown.hide();
46
53
  dropdown.trigger('mouseleave', e);
47
54
  };
55
+
48
56
  return DropdownMenu;
49
57
  }(Component);
50
58
  DropdownMenu.template = template;
59
+
51
60
  __decorate([bind], DropdownMenu.prototype, "onMouseEnter", null);
61
+
52
62
  __decorate([bind], DropdownMenu.prototype, "onMouseLeave", null);
63
+
53
64
  function useKeyboardForDropdownMenu(dropdown) {
54
65
  var parentDropdownMenu = inject(DROPDOWN_MENU, null);
66
+
55
67
  var _useMenuKeyboard = useMenuKeyboard(),
56
- _useMenuKeyboard$ = _useMenuKeyboard[0],
57
- addKeydown = _useMenuKeyboard$[0],
58
- removeKeydown = _useMenuKeyboard$[1],
59
- lock = _useMenuKeyboard$[2],
60
- focusByIndex = _useMenuKeyboard[1],
61
- reset = _useMenuKeyboard[2];
68
+ _useMenuKeyboard$ = _useMenuKeyboard[0],
69
+ addKeydown = _useMenuKeyboard$[0],
70
+ removeKeydown = _useMenuKeyboard$[1],
71
+ lock = _useMenuKeyboard$[2],
72
+ focusByIndex = _useMenuKeyboard[1],
73
+ reset = _useMenuKeyboard[2];
74
+
62
75
  var onShow = function onShow() {
63
- addKeydown();
64
- // lock parent dropdown menu, prevent it from operating by keyboard
76
+ addKeydown(); // lock parent dropdown menu, prevent it from operating by keyboard
77
+
65
78
  parentDropdownMenu && parentDropdownMenu.keyboard.lock(true);
66
79
  };
80
+
67
81
  var onHide = function onHide() {
68
82
  reset();
69
83
  removeKeydown();
70
84
  parentDropdownMenu && parentDropdownMenu.keyboard.lock(false);
71
85
  };
86
+
72
87
  var focus = function focus() {
73
88
  return focusByIndex(0);
74
- };
75
- // In Cascader the menu may have been replaced by another menu, in this case,
89
+ }; // In Cascader the menu may have been replaced by another menu, in this case,
76
90
  // if the dropdown has showed while we mounted the menu, add keydown listener
91
+
92
+
77
93
  if (dropdown.get('value')) {
78
94
  onShow();
79
95
  }
96
+
80
97
  dropdown.on('show', onShow);
81
98
  dropdown.on('hide', onHide);
82
99
  dropdown.on('shouldFocus', focus);
@@ -4,24 +4,30 @@ import { Transition } from 'intact';
4
4
  import { makeMenuStyles } from './styles';
5
5
  export default function ($props, $blocks, $__proto__) {
6
6
  var _classNameObj;
7
+
7
8
  $blocks || ($blocks = {});
8
9
  $props || ($props = {});
9
10
  var $this = this;
10
11
  var _$blocks = {};
11
12
  var __$blocks = {};
13
+
12
14
  var _this$dropdown$get = this.dropdown.get(),
13
- value = _this$dropdown$get.value,
14
- trigger = _this$dropdown$get.trigger,
15
- container = _this$dropdown$get.container;
15
+ value = _this$dropdown$get.value,
16
+ trigger = _this$dropdown$get.trigger,
17
+ container = _this$dropdown$get.container;
18
+
16
19
  var _this$get = this.get(),
17
- children = _this$get.children,
18
- className = _this$get.className;
20
+ children = _this$get.children,
21
+ className = _this$get.className;
22
+
19
23
  var classNameObj = (_classNameObj = {
20
24
  'k-dropdown-menu': true
21
25
  }, _classNameObj[className] = className, _classNameObj[$props.className] = $props.className, _classNameObj[makeMenuStyles()] = true, _classNameObj);
26
+
22
27
  var transition = $props.transition || _extends({
23
28
  css: false
24
29
  }, this.transition);
30
+
25
31
  return _$cc(Transition, _extends({
26
32
  'show': 'value' in $props ? $props.value : !!value,
27
33
  'appear': true
@@ -30,9 +36,11 @@ export default function ($props, $blocks, $__proto__) {
30
36
  return children;
31
37
  }, __$blocks['children'] = function ($super, data) {
32
38
  var block = $blocks['children'];
39
+
33
40
  var callBlock = function callBlock() {
34
41
  return _$blocks['children'].call($this, $super, data);
35
42
  };
43
+
36
44
  return block ? block.call($this, callBlock, data) : callBlock();
37
45
  }, __$blocks['children'](_$no)), 0, _$cn(classNameObj), {
38
46
  'ev-mouseenter': this.onMouseEnter,
@@ -7,30 +7,39 @@ var defaults = {
7
7
  get height() {
8
8
  return theme.default.height;
9
9
  },
10
+
10
11
  get padding() {
11
12
  return "0 " + theme.default.padding;
12
13
  },
14
+
13
15
  get hoverBgColor() {
14
16
  return theme.color.bg;
15
17
  },
18
+
16
19
  // disabled
17
20
  get disabledBgColor() {
18
21
  return theme.color.disabledBg;
19
22
  },
23
+
20
24
  get disabledColor() {
21
25
  return theme.color.disabled;
22
26
  }
27
+
23
28
  },
24
29
  menu: {
25
30
  minWidth: '100px',
26
31
  bgColor: '#fff',
32
+
27
33
  get borderRadius() {
28
34
  return theme.borderRadius;
29
35
  },
36
+
30
37
  fontSize: '12px',
38
+
31
39
  get zIndex() {
32
40
  return theme.midZIndex;
33
41
  }
42
+
34
43
  }
35
44
  };
36
45
  var dropdown;
@@ -10,11 +10,11 @@ export declare enum Direction {
10
10
  Up = 0,
11
11
  Down = 1
12
12
  }
13
- export type MenuKeyboardMethods = {
13
+ export declare type MenuKeyboardMethods = {
14
14
  reset: () => void;
15
15
  focus: (item: DropdownItem) => void;
16
16
  };
17
- export declare function useMenuKeyboard(): readonly [readonly [() => void, () => void, (v: boolean) => boolean], (index: number, direction?: Direction) => void, () => void];
17
+ export declare function useMenuKeyboard(): readonly [readonly [() => void, () => void, (v: boolean) => boolean], (index: number, direction?: Direction | undefined) => void, () => void];
18
18
  export declare function useItemKeyboard(itemEvents: Omit<ItemEvents, 'onFocusin' | 'onFocusout'>): {
19
19
  onMouseEnter(e: MouseEvent): void;
20
20
  onMouseLeave(e: MouseEvent): void;
@@ -4,34 +4,39 @@ import { useRecordParent, useRecordItem } from '../../hooks/useRecordComponent';
4
4
  import { useKeyboard } from '../../hooks/useKeyboard';
5
5
  import { useState } from '../../hooks/useState';
6
6
  import { isComponentVNode } from '../utils';
7
- import { DropdownItem } from './item';
8
- // can not import DropdownMenu from index.ts, otherwise it will cause circle reference
7
+ import { DropdownItem } from './item'; // can not import DropdownMenu from index.ts, otherwise it will cause circle reference
9
8
  // import {DropdownMenu} from './';
9
+
10
10
  import { DropdownMenu } from './menu';
11
11
  export var Direction;
12
+
12
13
  (function (Direction) {
13
14
  Direction[Direction["Up"] = 0] = "Up";
14
15
  Direction[Direction["Down"] = 1] = "Down";
15
16
  })(Direction || (Direction = {}));
17
+
16
18
  var ITEM_EVENTS = 'ItemEvents';
17
19
  var MENU_KEYBOARD = 'MenuKeyboard';
18
20
  export function useMenuKeyboard() {
19
21
  var items = [];
20
22
  var itemEvents = useRecordParent(ITEM_EVENTS, true);
21
23
  var instance = useInstance();
22
- var focusIndex = -1;
23
- // we can't use the way that DropdownItem push itself to DropdownMenu to collect the items
24
+ var focusIndex = -1; // we can't use the way that DropdownItem push itself to DropdownMenu to collect the items
24
25
  // because it can't guarantee the order
26
+
25
27
  function collect() {
26
28
  items.length = 0;
27
29
  var children = instance.$lastInput;
30
+
28
31
  var loop = function loop(vNode) {
29
32
  if (isComponentVNode(vNode, DropdownItem)) {
30
33
  items.push(vNode.children);
31
34
  } else {
32
35
  var _children = vNode.children;
36
+
33
37
  if (isComponentClass(vNode)) {
34
38
  var tag = vNode.tag;
39
+
35
40
  if (tag !== DropdownMenu && !(tag.prototype instanceof DropdownMenu)) {
36
41
  loop(_children.$lastInput);
37
42
  }
@@ -44,9 +49,11 @@ export function useMenuKeyboard() {
44
49
  }
45
50
  }
46
51
  };
52
+
47
53
  loop(children);
48
54
  return children;
49
55
  }
56
+
50
57
  onMounted(collect);
51
58
  var oldFocusIndex;
52
59
  onBeforeUpdate(function () {
@@ -58,43 +65,52 @@ export function useMenuKeyboard() {
58
65
  if (oldFocusIndex < 0) return;
59
66
  focusByIndex(oldFocusIndex, Direction.Up);
60
67
  });
68
+
61
69
  function next(e) {
62
70
  e.preventDefault();
63
71
  focusByIndex(focusIndex + 1, Direction.Down);
64
72
  }
73
+
65
74
  function prev(e) {
66
75
  e.preventDefault();
67
76
  focusByIndex(focusIndex - 1, Direction.Up);
68
77
  }
78
+
69
79
  function focusByIndex(index, direction) {
70
80
  var max = items.length - 1;
71
81
  index = fixIndex(index, max);
72
82
  reset();
73
83
  var item = items[index];
74
84
  var i = 0;
85
+
75
86
  while (i <= max && item && item.get('disabled')) {
76
87
  index = fixIndex(direction === Direction.Down ? index + 1 : index - 1, max);
77
88
  item = items[index];
78
89
  i++;
79
- }
80
- // all items are disabled
90
+ } // all items are disabled
91
+
92
+
81
93
  if (i > max) return;
82
94
  focusIndex = index;
83
95
  focusItem(item);
84
96
  }
97
+
85
98
  function focusItem(item) {
86
99
  itemEvents.get(item).onFocusin();
87
100
  var el = findDomFromVNode(item.$lastInput, true);
88
101
  var menuEl = findDomFromVNode(instance.$vNode, false);
89
102
  scrollToView(el, menuEl);
90
103
  }
104
+
91
105
  function reset() {
92
106
  var item = items[focusIndex];
107
+
93
108
  if (focusIndex > -1 && item) {
94
109
  itemEvents.get(item).onFocusout();
95
110
  focusIndex = -1;
96
111
  }
97
112
  }
113
+
98
114
  function makeEventCall(name) {
99
115
  return function (e) {
100
116
  if (focusIndex < 0) return;
@@ -102,12 +118,13 @@ export function useMenuKeyboard() {
102
118
  itemEvents.get(items[focusIndex])[name]();
103
119
  };
104
120
  }
121
+
105
122
  provide(MENU_KEYBOARD, {
106
123
  reset: reset,
107
124
  focus: function focus(item) {
108
125
  // reset();
109
- var index = items.indexOf(item);
110
- // if (index === -1) debugger
126
+ var index = items.indexOf(item); // if (index === -1) debugger
127
+
111
128
  focusIndex = index;
112
129
  focusItem(item);
113
130
  }
@@ -145,26 +162,31 @@ export function useItemKeyboard(itemEvents) {
145
162
  isFocus: isFocus
146
163
  };
147
164
  }
165
+
148
166
  function fixIndex(index, max) {
149
167
  if (index > max) {
150
168
  index = 0;
151
169
  } else if (index < 0) {
152
170
  index = max;
153
171
  }
172
+
154
173
  return index;
155
174
  }
175
+
156
176
  function scrollToView(el, menuEl) {
157
177
  var elRect = el.getBoundingClientRect();
158
178
  var pEl = getScrollParent(el.parentElement, menuEl);
159
179
  var pElRect = pEl.getBoundingClientRect();
160
180
  var bottomOverflowDistance = elRect.bottom - pElRect.bottom;
161
181
  var topOverflowDistance = elRect.top - pElRect.top;
182
+
162
183
  if (bottomOverflowDistance > 0) {
163
184
  pEl.scrollTop += bottomOverflowDistance;
164
185
  } else if (topOverflowDistance < 0) {
165
186
  pEl.scrollTop += topOverflowDistance;
166
187
  }
167
188
  }
189
+
168
190
  function getScrollParent(node, breakEl) {
169
191
  if (node === breakEl || node.scrollHeight > node.clientHeight) return node;
170
192
  return getScrollParent(node.parentElement, breakEl);
@@ -1,5 +1,5 @@
1
1
  import { Feedback } from '../position';
2
- export type FeedbackCallback = (feedback: Feedback) => void;
2
+ export declare type FeedbackCallback = (feedback: Feedback) => void;
3
3
  export declare function usePosition(): {
4
4
  handle: (callback: FeedbackCallback) => void;
5
5
  positioned: {
@@ -15,31 +15,29 @@ export function usePosition() {
15
15
  });
16
16
  ['of', 'position'].forEach(function (item) {
17
17
  instance.watch(item, function (newValue, oldValue) {
18
- if (!instance.get('value') ||
19
- // return if object is the same
20
- isObject(newValue) && isObject(oldValue) &&
21
- // is not event object
18
+ if (!instance.get('value') || // return if object is the same
19
+ isObject(newValue) && isObject(oldValue) && // is not event object
22
20
  !(newValue instanceof Event) && isEqualObject(newValue, oldValue)) return;
23
21
  handle(noop);
24
22
  }, {
25
23
  presented: true,
26
24
  inited: true
27
25
  });
28
- });
29
- // watch container, it is not commonly used
26
+ }); // watch container, it is not commonly used
27
+
30
28
  instance.watch('container', function (newValue, oldValue) {
31
- if (!instance.get('value') ||
32
- // return if function is the same. Not rigorous!
29
+ if (!instance.get('value') || // return if function is the same. Not rigorous!
33
30
  isFunction(newValue) && isFunction(oldValue) && newValue.toString() === oldValue.toString()) return;
34
31
  handle(noop);
35
32
  }, {
36
33
  presented: true,
37
34
  inited: true
38
- });
39
- // if the dropdown is nested, we must show child after parent has positioned
35
+ }); // if the dropdown is nested, we must show child after parent has positioned
36
+
40
37
  function p(ofElement, parentFeedback) {
41
38
  var feedback;
42
39
  var pos = instance.get('position');
40
+
43
41
  switch (pos) {
44
42
  case 'left':
45
43
  case 'left':
@@ -48,18 +46,21 @@ export function usePosition() {
48
46
  at: 'left center'
49
47
  };
50
48
  break;
49
+
51
50
  case 'bottom':
52
51
  pos = {
53
52
  my: 'center top+10',
54
53
  at: 'center bottom'
55
54
  };
56
55
  break;
56
+
57
57
  case 'right':
58
58
  pos = {
59
59
  my: 'left+10 center',
60
60
  at: 'right center'
61
61
  };
62
62
  break;
63
+
63
64
  case 'top':
64
65
  pos = {
65
66
  my: 'center bottom-10',
@@ -67,6 +68,7 @@ export function usePosition() {
67
68
  };
68
69
  break;
69
70
  }
71
+
70
72
  position(findDomFromVNode(instance.menuVNode, true), _extends({
71
73
  my: 'left top+8',
72
74
  at: 'left bottom',
@@ -81,26 +83,32 @@ export function usePosition() {
81
83
  instance.trigger('positioned', parentFeedback || feedback);
82
84
  return parentFeedback || feedback;
83
85
  }
86
+
84
87
  function handle(callback) {
85
88
  var _of = instance.get('of');
89
+
86
90
  if (_of === 'parent') {
87
91
  var parent = instance.dropdown;
92
+
88
93
  if (process.env.NODE_ENV !== 'production') {
89
94
  if (!parent) {
90
95
  throw new Error('The dropdown has not parent, so you can not use `parent` as `of`.');
91
96
  }
92
97
  }
98
+
93
99
  var ofElement = findDomFromVNode(parent.menuVNode, true);
100
+
94
101
  if (parent.positionHook.positioned.value) {
95
102
  callback(p(ofElement, null));
96
103
  } else {
97
104
  // wait the parent has positioned
98
105
  var fn = function fn(feedback) {
99
- parent.off('positioned', fn);
100
- // let the child menu has the same transtion with parent menu,
106
+ parent.off('positioned', fn); // let the child menu has the same transtion with parent menu,
101
107
  // when them show together
108
+
102
109
  callback(p(ofElement, feedback));
103
110
  };
111
+
104
112
  parent.on('positioned', fn);
105
113
  }
106
114
  } else if (_of === 'self') {
@@ -109,6 +117,7 @@ export function usePosition() {
109
117
  callback(p(_of, null));
110
118
  }
111
119
  }
120
+
112
121
  return {
113
122
  handle: handle,
114
123
  positioned: positioned
@@ -121,6 +130,7 @@ export function usePositionForDropdownMenu() {
121
130
  * so, we must reset the positioned.value beforeUnmount
122
131
  * #956
123
132
  */
133
+
124
134
  onBeforeUnmount(function () {
125
135
  instance.dropdown.positionHook.positioned.value = false;
126
136
  });
@@ -1,6 +1,7 @@
1
1
  import { addTransitionClass, removeTransitionClass, whenTransitionEnds } from 'intact-vue-next';
2
2
  export function useTransition(getFeedback) {
3
3
  var transition = 'k-slidedown';
4
+
4
5
  function onEnter(el, done) {
5
6
  getFeedback(function (feedback) {
6
7
  transition = getTransition(feedback);
@@ -16,9 +17,11 @@ export function useTransition(getFeedback) {
16
17
  });
17
18
  });
18
19
  }
20
+
19
21
  function onEnterCancelled(el) {
20
22
  removeTransitionClass(el, transition + "-enter-active");
21
23
  }
24
+
22
25
  function onLeave(el, done) {
23
26
  // maybe the position has changed, so we re-get it
24
27
  getFeedback(function (feedback) {
@@ -31,10 +34,12 @@ export function useTransition(getFeedback) {
31
34
  });
32
35
  });
33
36
  }
37
+
34
38
  function onLeaveCancelled(el) {
35
39
  removeTransitionClass(el, transition + "-leave-to");
36
40
  removeTransitionClass(el, transition + "-leave-active");
37
41
  }
42
+
38
43
  return {
39
44
  onEnter: onEnter,
40
45
  onEnterCancelled: onEnterCancelled,
@@ -42,9 +47,11 @@ export function useTransition(getFeedback) {
42
47
  onLeaveCancelled: onLeaveCancelled
43
48
  };
44
49
  }
50
+
45
51
  function getTransition(feedback) {
46
52
  var horizontal = feedback.horizontal;
47
53
  var vertical = feedback.vertical;
54
+
48
55
  if (feedback.important === 'horizontal') {
49
56
  if (horizontal === 'left') {
50
57
  return 'k-slideright';
@@ -66,5 +73,6 @@ function getTransition(feedback) {
66
73
  return 'k-slideleft';
67
74
  }
68
75
  }
76
+
69
77
  return 'k-slidedown';
70
78
  }
@@ -1,6 +1,6 @@
1
1
  import { Component, TypeDefs } from 'intact-vue-next';
2
2
  import type { Events } from '../types';
3
- type Value = string | number;
3
+ declare type Value = string | number;
4
4
  export interface EditableProps<V extends Value = Value> {
5
5
  editing?: boolean;
6
6
  value?: V;