cy-element-ui 1.1.13 → 1.1.15

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 (523) hide show
  1. package/README.md +35 -5
  2. package/lib/alert.js +68 -68
  3. package/lib/aside.js +11 -11
  4. package/lib/autocomplete.js +287 -287
  5. package/lib/avatar.js +121 -121
  6. package/lib/backtop.js +91 -91
  7. package/lib/badge.js +32 -32
  8. package/lib/breadcrumb-item.js +33 -33
  9. package/lib/breadcrumb.js +27 -27
  10. package/lib/button-group.js +4 -4
  11. package/lib/button.js +53 -53
  12. package/lib/calendar.js +426 -426
  13. package/lib/card.js +11 -11
  14. package/lib/carousel-item.js +108 -108
  15. package/lib/carousel.js +244 -244
  16. package/lib/cascader-panel.js +1045 -1045
  17. package/lib/cascader.js +577 -577
  18. package/lib/checkbox-button.js +137 -137
  19. package/lib/checkbox-group.js +39 -39
  20. package/lib/checkbox.js +151 -151
  21. package/lib/col.js +64 -64
  22. package/lib/collapse-item.js +66 -66
  23. package/lib/collapse.js +63 -63
  24. package/lib/color-picker.js +944 -944
  25. package/lib/container.js +24 -24
  26. package/lib/date-picker.js +2968 -2967
  27. package/lib/descriptions-item.js +29 -29
  28. package/lib/descriptions.js +324 -324
  29. package/lib/dialog.js +170 -170
  30. package/lib/directives/mousewheel.js +9 -9
  31. package/lib/directives/repeat-click.js +22 -22
  32. package/lib/divider.js +20 -20
  33. package/lib/drawer.js +156 -156
  34. package/lib/dropdown-item.js +19 -19
  35. package/lib/dropdown-menu.js +56 -56
  36. package/lib/dropdown.js +329 -329
  37. package/lib/element-ui.common.js +44918 -0
  38. package/lib/empty.js +39 -39
  39. package/lib/footer.js +11 -11
  40. package/lib/form-item.js +369 -369
  41. package/lib/form.js +181 -181
  42. package/lib/header.js +11 -11
  43. package/lib/icon.js +7 -7
  44. package/lib/image.js +520 -520
  45. package/lib/index.js +1 -1
  46. package/lib/infinite-scroll.js +127 -127
  47. package/lib/input-number.js +260 -260
  48. package/lib/input.js +370 -370
  49. package/lib/link.js +28 -28
  50. package/lib/loading.js +219 -219
  51. package/lib/locale/format.js +25 -26
  52. package/lib/locale/index.js +24 -24
  53. package/lib/locale/lang/en.js +121 -121
  54. package/lib/locale/lang/zh-CN.js +121 -121
  55. package/lib/locale/lang/zh-TW.js +121 -121
  56. package/lib/main.js +5 -5
  57. package/lib/menu-item-group.js +33 -33
  58. package/lib/menu-item.js +116 -116
  59. package/lib/menu.js +490 -490
  60. package/lib/message-box.js +421 -421
  61. package/lib/message.js +150 -150
  62. package/lib/mixins/emitter.js +26 -26
  63. package/lib/mixins/focus.js +7 -7
  64. package/lib/mixins/locale.js +8 -8
  65. package/lib/mixins/migrating.js +34 -34
  66. package/lib/notification.js +184 -184
  67. package/lib/option-group.js +46 -46
  68. package/lib/option.js +145 -145
  69. package/lib/page-header.js +14 -14
  70. package/lib/pagination.js +530 -530
  71. package/lib/popconfirm.js +68 -68
  72. package/lib/popover.js +225 -225
  73. package/lib/progress.js +183 -183
  74. package/lib/radio-button.js +78 -78
  75. package/lib/radio-group.js +103 -103
  76. package/lib/radio.js +86 -86
  77. package/lib/rate.js +283 -283
  78. package/lib/result.js +61 -61
  79. package/lib/row.js +32 -32
  80. package/lib/scrollbar.js +247 -247
  81. package/lib/select.js +999 -999
  82. package/lib/selectDisplayInput.js +61 -61
  83. package/lib/skeleton-item.js +19 -19
  84. package/lib/skeleton.js +53 -53
  85. package/lib/slider.js +550 -550
  86. package/lib/spinner.js +19 -19
  87. package/lib/statistic.js +198 -198
  88. package/lib/step.js +125 -125
  89. package/lib/steps.js +54 -54
  90. package/lib/subTitle.js +24 -24
  91. package/lib/submenu.js +405 -406
  92. package/lib/switch.js +135 -135
  93. package/lib/tab-pane.js +43 -43
  94. package/lib/tabDialog.js +508 -508
  95. package/lib/table-column.js +713 -713
  96. package/lib/table.js +3432 -3432
  97. package/lib/tabs.js +578 -578
  98. package/lib/tag.js +60 -60
  99. package/lib/time-picker.js +1350 -1350
  100. package/lib/time-select.js +949 -949
  101. package/lib/timeline-item.js +25 -25
  102. package/lib/timeline.js +30 -30
  103. package/lib/tooltip.js +255 -255
  104. package/lib/transfer.js +385 -385
  105. package/lib/transitions/collapse-transition.js +76 -76
  106. package/lib/tree.js +1547 -1547
  107. package/lib/treeSelect.js +2618 -2618
  108. package/lib/umd/locale/en.js +137 -137
  109. package/lib/umd/locale/zh-CN.js +137 -137
  110. package/lib/umd/locale/zh-TW.js +137 -137
  111. package/lib/upload.js +738 -738
  112. package/lib/utils/after-leave.js +19 -19
  113. package/lib/utils/aria-dialog.js +56 -56
  114. package/lib/utils/aria-utils.js +66 -66
  115. package/lib/utils/clickoutside.js +39 -39
  116. package/lib/utils/date-util.js +177 -177
  117. package/lib/utils/dom.js +161 -161
  118. package/lib/utils/menu/aria-menubar.js +8 -8
  119. package/lib/utils/menu/aria-menuitem.js +38 -38
  120. package/lib/utils/menu/aria-submenu.js +45 -45
  121. package/lib/utils/merge.js +12 -12
  122. package/lib/utils/popup/index.js +201 -201
  123. package/lib/utils/popup/popup-manager.js +171 -171
  124. package/lib/utils/resize-event.js +33 -33
  125. package/lib/utils/scroll-into-view.js +25 -25
  126. package/lib/utils/scrollbar-width.js +18 -18
  127. package/lib/utils/shared.js +3 -3
  128. package/lib/utils/types.js +10 -10
  129. package/lib/utils/util.js +170 -170
  130. package/lib/utils/vdom.js +1 -1
  131. package/lib/utils/vue-popper.js +176 -176
  132. package/package.json +9 -7
  133. package/packages/alert/index.js +1 -1
  134. package/packages/alert/src/main.vue +82 -82
  135. package/packages/aside/index.js +1 -1
  136. package/packages/aside/src/main.vue +13 -13
  137. package/packages/autocomplete/index.js +1 -1
  138. package/packages/autocomplete/src/autocomplete-suggestions.vue +64 -64
  139. package/packages/autocomplete/src/autocomplete.vue +272 -272
  140. package/packages/avatar/index.js +1 -1
  141. package/packages/avatar/src/main.vue +88 -88
  142. package/packages/backtop/index.js +1 -1
  143. package/packages/backtop/src/main.vue +92 -92
  144. package/packages/badge/index.js +1 -1
  145. package/packages/badge/src/main.vue +41 -41
  146. package/packages/breadcrumb/index.js +1 -1
  147. package/packages/breadcrumb/src/breadcrumb-item.vue +35 -35
  148. package/packages/breadcrumb/src/breadcrumb.vue +27 -27
  149. package/packages/breadcrumb-item/index.js +1 -1
  150. package/packages/button/index.js +1 -1
  151. package/packages/button/src/button-group.vue +6 -6
  152. package/packages/button/src/button.vue +70 -70
  153. package/packages/button-group/index.js +1 -1
  154. package/packages/calendar/index.js +1 -1
  155. package/packages/calendar/src/date-table.vue +193 -193
  156. package/packages/calendar/src/main.vue +242 -242
  157. package/packages/card/index.js +1 -1
  158. package/packages/card/src/main.vue +18 -18
  159. package/packages/carousel/index.js +1 -1
  160. package/packages/carousel/src/item.vue +122 -122
  161. package/packages/carousel/src/main.vue +305 -305
  162. package/packages/carousel-item/index.js +1 -1
  163. package/packages/cascader/index.js +1 -1
  164. package/packages/cascader/src/cascader.vue +626 -626
  165. package/packages/cascader-panel/index.js +1 -1
  166. package/packages/cascader-panel/src/cascader-menu.vue +128 -128
  167. package/packages/cascader-panel/src/cascader-node.vue +244 -244
  168. package/packages/cascader-panel/src/cascader-panel.vue +334 -334
  169. package/packages/cascader-panel/src/node.js +157 -158
  170. package/packages/cascader-panel/src/store.js +49 -50
  171. package/packages/checkbox/index.js +1 -1
  172. package/packages/checkbox/src/checkbox-button.vue +195 -195
  173. package/packages/checkbox/src/checkbox-group.vue +43 -43
  174. package/packages/checkbox/src/checkbox.vue +218 -218
  175. package/packages/checkbox-button/index.js +1 -1
  176. package/packages/checkbox-group/index.js +1 -1
  177. package/packages/col/index.js +1 -1
  178. package/packages/col/src/col.js +63 -63
  179. package/packages/collapse/index.js +1 -1
  180. package/packages/collapse/src/collapse-item.vue +101 -101
  181. package/packages/collapse/src/collapse.vue +61 -61
  182. package/packages/collapse-item/index.js +1 -1
  183. package/packages/color-picker/index.js +1 -1
  184. package/packages/color-picker/src/color.js +263 -263
  185. package/packages/color-picker/src/components/alpha-slider.vue +127 -127
  186. package/packages/color-picker/src/components/hue-slider.vue +118 -118
  187. package/packages/color-picker/src/components/picker-dropdown.vue +105 -105
  188. package/packages/color-picker/src/components/predefine.vue +55 -55
  189. package/packages/color-picker/src/components/sv-panel.vue +95 -95
  190. package/packages/color-picker/src/draggable.js +27 -27
  191. package/packages/color-picker/src/main.vue +183 -183
  192. package/packages/container/index.js +1 -1
  193. package/packages/container/src/main.vue +25 -25
  194. package/packages/date-picker/index.js +1 -1
  195. package/packages/date-picker/src/basic/date-table.vue +435 -435
  196. package/packages/date-picker/src/basic/month-table.vue +239 -240
  197. package/packages/date-picker/src/basic/time-spinner.vue +279 -279
  198. package/packages/date-picker/src/basic/year-table.vue +99 -99
  199. package/packages/date-picker/src/panel/date-range.vue +675 -675
  200. package/packages/date-picker/src/panel/date.vue +604 -604
  201. package/packages/date-picker/src/panel/month-range.vue +260 -260
  202. package/packages/date-picker/src/panel/time-range.vue +242 -242
  203. package/packages/date-picker/src/panel/time-select.vue +173 -173
  204. package/packages/date-picker/src/panel/time.vue +181 -181
  205. package/packages/date-picker/src/picker/date-picker.js +29 -29
  206. package/packages/date-picker/src/picker/time-picker.js +28 -28
  207. package/packages/date-picker/src/picker/time-select.js +12 -12
  208. package/packages/date-picker/src/picker.vue +900 -900
  209. package/packages/descriptions/index.js +1 -1
  210. package/packages/descriptions/src/descriptions-item.js +28 -28
  211. package/packages/descriptions/src/descriptions-row.js +114 -114
  212. package/packages/descriptions/src/index.js +168 -168
  213. package/packages/descriptions-item/index.js +1 -1
  214. package/packages/dialog/index.js +1 -1
  215. package/packages/dialog/src/component.vue +207 -207
  216. package/packages/divider/index.js +1 -1
  217. package/packages/divider/src/main.vue +29 -29
  218. package/packages/drawer/index.js +1 -1
  219. package/packages/drawer/src/main.vue +195 -195
  220. package/packages/dropdown/index.js +1 -1
  221. package/packages/dropdown/src/dropdown-item.vue +29 -29
  222. package/packages/dropdown/src/dropdown-menu.vue +59 -59
  223. package/packages/dropdown/src/dropdown.vue +271 -271
  224. package/packages/dropdown-item/index.js +1 -1
  225. package/packages/dropdown-menu/index.js +1 -1
  226. package/packages/empty/index.js +1 -1
  227. package/packages/empty/src/img-empty.vue +124 -124
  228. package/packages/empty/src/index.vue +40 -40
  229. package/packages/footer/index.js +1 -1
  230. package/packages/footer/src/main.vue +13 -13
  231. package/packages/form/index.js +1 -1
  232. package/packages/form/src/form-item.vue +294 -294
  233. package/packages/form/src/form.vue +169 -169
  234. package/packages/form/src/label-wrap.vue +65 -65
  235. package/packages/form-item/index.js +1 -1
  236. package/packages/header/index.js +1 -1
  237. package/packages/header/src/main.vue +13 -13
  238. package/packages/icon/index.js +1 -1
  239. package/packages/icon/src/icon.vue +7 -7
  240. package/packages/image/index.js +1 -1
  241. package/packages/image/src/image-viewer.vue +309 -309
  242. package/packages/image/src/main.vue +242 -242
  243. package/packages/infinite-scroll/index.js +1 -1
  244. package/packages/infinite-scroll/src/main.js +113 -114
  245. package/packages/input/index.js +1 -1
  246. package/packages/input/src/calcTextareaHeight.js +70 -70
  247. package/packages/input/src/input.vue +416 -416
  248. package/packages/input-number/index.js +1 -1
  249. package/packages/input-number/src/input-number.vue +272 -272
  250. package/packages/link/index.js +1 -1
  251. package/packages/link/src/main.vue +40 -40
  252. package/packages/loading/index.js +6 -6
  253. package/packages/loading/src/directive.js +105 -105
  254. package/packages/loading/src/index.js +74 -74
  255. package/packages/loading/src/loading.vue +35 -35
  256. package/packages/main/index.js +1 -1
  257. package/packages/main/src/main.vue +7 -7
  258. package/packages/menu/index.js +1 -1
  259. package/packages/menu/src/menu-item-group.vue +38 -38
  260. package/packages/menu/src/menu-item.vue +103 -103
  261. package/packages/menu/src/menu-mixin.js +39 -39
  262. package/packages/menu/src/menu.vue +298 -298
  263. package/packages/menu/src/submenu.vue +330 -331
  264. package/packages/menu-item/index.js +1 -1
  265. package/packages/menu-item-group/index.js +1 -1
  266. package/packages/message/src/main.js +65 -65
  267. package/packages/message/src/main.vue +105 -105
  268. package/packages/message-box/src/main.js +172 -172
  269. package/packages/message-box/src/main.vue +309 -309
  270. package/packages/notification/src/main.js +63 -63
  271. package/packages/notification/src/main.vue +135 -135
  272. package/packages/option/index.js +1 -1
  273. package/packages/option-group/index.js +1 -1
  274. package/packages/page-header/index.js +1 -1
  275. package/packages/page-header/src/main.vue +21 -21
  276. package/packages/pagination/index.js +1 -1
  277. package/packages/pagination/src/pager.vue +158 -158
  278. package/packages/pagination/src/pagination.js +377 -377
  279. package/packages/popconfirm/index.js +1 -1
  280. package/packages/popconfirm/src/main.vue +94 -94
  281. package/packages/popover/index.js +2 -2
  282. package/packages/popover/src/directive.js +15 -15
  283. package/packages/popover/src/main.vue +214 -214
  284. package/packages/progress/index.js +1 -1
  285. package/packages/progress/src/progress.vue +228 -228
  286. package/packages/radio/index.js +1 -1
  287. package/packages/radio/src/radio-button.vue +106 -106
  288. package/packages/radio/src/radio-group.vue +101 -101
  289. package/packages/radio/src/radio.vue +122 -122
  290. package/packages/radio-button/index.js +1 -1
  291. package/packages/radio-group/index.js +1 -1
  292. package/packages/rate/index.js +1 -1
  293. package/packages/rate/src/main.vue +316 -316
  294. package/packages/result/index.js +1 -1
  295. package/packages/result/src/icon-error.vue +6 -6
  296. package/packages/result/src/icon-info.vue +6 -6
  297. package/packages/result/src/icon-success.vue +6 -6
  298. package/packages/result/src/icon-warning.vue +6 -6
  299. package/packages/result/src/index.vue +51 -51
  300. package/packages/row/index.js +1 -1
  301. package/packages/row/src/row.js +36 -36
  302. package/packages/scrollbar/index.js +1 -1
  303. package/packages/scrollbar/src/bar.js +86 -86
  304. package/packages/scrollbar/src/main.js +120 -120
  305. package/packages/scrollbar/src/util.js +27 -27
  306. package/packages/select/index.js +1 -1
  307. package/packages/select/src/navigation-mixin.js +47 -47
  308. package/packages/select/src/option-group.vue +55 -55
  309. package/packages/select/src/option.vue +163 -163
  310. package/packages/select/src/select-dropdown.vue +57 -57
  311. package/packages/select/src/select.vue +895 -895
  312. package/packages/selectDisplayInput/index.js +1 -1
  313. package/packages/selectDisplayInput/src/main.vue +61 -61
  314. package/packages/skeleton/index.js +1 -1
  315. package/packages/skeleton/src/img-placeholder.vue +9 -9
  316. package/packages/skeleton/src/index.vue +70 -70
  317. package/packages/skeleton/src/item.vue +17 -17
  318. package/packages/skeleton-item/index.js +1 -1
  319. package/packages/slider/index.js +1 -1
  320. package/packages/slider/src/button.vue +230 -230
  321. package/packages/slider/src/main.vue +422 -422
  322. package/packages/slider/src/marker.js +14 -14
  323. package/packages/spinner/index.js +1 -1
  324. package/packages/spinner/src/spinner.vue +23 -23
  325. package/packages/statistic/index.js +1 -1
  326. package/packages/statistic/src/main.vue +196 -197
  327. package/packages/step/index.js +1 -1
  328. package/packages/steps/index.js +1 -1
  329. package/packages/steps/src/step.vue +177 -177
  330. package/packages/steps/src/steps.vue +53 -53
  331. package/packages/subTitle/index.js +1 -1
  332. package/packages/subTitle/src/main.vue +29 -29
  333. package/packages/submenu/index.js +1 -1
  334. package/packages/switch/index.js +1 -1
  335. package/packages/switch/src/component.vue +169 -169
  336. package/packages/tab-pane/index.js +1 -1
  337. package/packages/tabDialog/index.js +10 -10
  338. package/packages/tabDialog/src/dialog/drag.js +50 -50
  339. package/packages/tabDialog/src/dialog/dragHeight.js +27 -27
  340. package/packages/tabDialog/src/dialog/dragWidth.js +23 -23
  341. package/packages/tabDialog/src/main.vue +257 -257
  342. package/packages/table/index.js +1 -1
  343. package/packages/table/src/config.js +108 -108
  344. package/packages/table/src/dropdown.js +19 -19
  345. package/packages/table/src/filter-panel.vue +189 -189
  346. package/packages/table/src/layout-observer.js +60 -60
  347. package/packages/table/src/store/current.js +65 -65
  348. package/packages/table/src/store/expand.js +57 -57
  349. package/packages/table/src/store/helper.js +32 -32
  350. package/packages/table/src/store/index.js +133 -133
  351. package/packages/table/src/store/tree.js +194 -194
  352. package/packages/table/src/store/watcher.js +366 -366
  353. package/packages/table/src/table-body.js +456 -456
  354. package/packages/table/src/table-column.js +311 -311
  355. package/packages/table/src/table-footer.js +139 -139
  356. package/packages/table/src/table-header.js +496 -496
  357. package/packages/table/src/table-layout.js +241 -241
  358. package/packages/table/src/table-row.js +97 -97
  359. package/packages/table/src/table.vue +666 -666
  360. package/packages/table/src/util.js +214 -214
  361. package/packages/table-column/index.js +1 -1
  362. package/packages/tabs/index.js +1 -1
  363. package/packages/tabs/src/tab-bar.vue +47 -47
  364. package/packages/tabs/src/tab-nav.vue +268 -268
  365. package/packages/tabs/src/tab-pane.vue +47 -47
  366. package/packages/tabs/src/tabs.vue +174 -174
  367. package/packages/tag/index.js +1 -1
  368. package/packages/tag/src/tag.vue +55 -55
  369. package/packages/theme-chalk/gulpfile.js +11 -11
  370. package/packages/theme-chalk/src/alert.scss +138 -138
  371. package/packages/theme-chalk/src/aside.scss +3 -3
  372. package/packages/theme-chalk/src/autocomplete.scss +58 -58
  373. package/packages/theme-chalk/src/avatar.scss +46 -46
  374. package/packages/theme-chalk/src/backtop.scss +16 -16
  375. package/packages/theme-chalk/src/badge.scss +47 -47
  376. package/packages/theme-chalk/src/breadcrumb.scss +49 -49
  377. package/packages/theme-chalk/src/button.scss +229 -229
  378. package/packages/theme-chalk/src/calendar.scss +57 -57
  379. package/packages/theme-chalk/src/card.scss +23 -23
  380. package/packages/theme-chalk/src/carousel-item.scss +41 -41
  381. package/packages/theme-chalk/src/carousel.scss +148 -148
  382. package/packages/theme-chalk/src/cascader-panel.scss +106 -106
  383. package/packages/theme-chalk/src/cascader.scss +173 -173
  384. package/packages/theme-chalk/src/checkbox.scss +346 -346
  385. package/packages/theme-chalk/src/col.scss +130 -130
  386. package/packages/theme-chalk/src/collapse.scss +52 -52
  387. package/packages/theme-chalk/src/color-picker.scss +364 -364
  388. package/packages/theme-chalk/src/common/popup.scss +22 -22
  389. package/packages/theme-chalk/src/common/transition.scss +33 -33
  390. package/packages/theme-chalk/src/common/var.scss +16 -16
  391. package/packages/theme-chalk/src/container.scss +9 -9
  392. package/packages/theme-chalk/src/cy/base.scss +1 -1
  393. package/packages/theme-chalk/src/date-picker/date-picker.scss +91 -91
  394. package/packages/theme-chalk/src/date-picker/date-range-picker.scss +97 -97
  395. package/packages/theme-chalk/src/date-picker/date-table.scss +146 -146
  396. package/packages/theme-chalk/src/date-picker/month-table.scss +69 -69
  397. package/packages/theme-chalk/src/date-picker/picker-panel.scss +105 -105
  398. package/packages/theme-chalk/src/date-picker/picker.scss +188 -188
  399. package/packages/theme-chalk/src/date-picker/time-picker.scss +72 -72
  400. package/packages/theme-chalk/src/date-picker/time-range-picker.scss +23 -23
  401. package/packages/theme-chalk/src/date-picker/time-spinner.scss +106 -106
  402. package/packages/theme-chalk/src/date-picker/year-table.scss +47 -47
  403. package/packages/theme-chalk/src/descriptions-item.scss +33 -33
  404. package/packages/theme-chalk/src/descriptions.scss +105 -105
  405. package/packages/theme-chalk/src/dialog.scss +104 -104
  406. package/packages/theme-chalk/src/display.scss +7 -7
  407. package/packages/theme-chalk/src/divider.scss +36 -36
  408. package/packages/theme-chalk/src/drawer.scss +185 -185
  409. package/packages/theme-chalk/src/dropdown.scss +172 -172
  410. package/packages/theme-chalk/src/empty.scss +34 -34
  411. package/packages/theme-chalk/src/footer.scss +3 -3
  412. package/packages/theme-chalk/src/form.scss +149 -149
  413. package/packages/theme-chalk/src/header.scss +3 -3
  414. package/packages/theme-chalk/src/icon.scss +309 -309
  415. package/packages/theme-chalk/src/image.scss +153 -153
  416. package/packages/theme-chalk/src/input-number.scss +255 -255
  417. package/packages/theme-chalk/src/input.scss +345 -345
  418. package/packages/theme-chalk/src/link.scss +67 -67
  419. package/packages/theme-chalk/src/loading.scss +67 -67
  420. package/packages/theme-chalk/src/main.scss +7 -7
  421. package/packages/theme-chalk/src/menu.scss +248 -248
  422. package/packages/theme-chalk/src/message-box.scss +205 -205
  423. package/packages/theme-chalk/src/message.scss +111 -111
  424. package/packages/theme-chalk/src/mixins/_button.scss +64 -64
  425. package/packages/theme-chalk/src/mixins/function.scss +18 -18
  426. package/packages/theme-chalk/src/mixins/mixins.scss +126 -126
  427. package/packages/theme-chalk/src/mixins/utils.scss +26 -26
  428. package/packages/theme-chalk/src/notification.scss +88 -88
  429. package/packages/theme-chalk/src/option-group.scss +31 -31
  430. package/packages/theme-chalk/src/option.scss +27 -27
  431. package/packages/theme-chalk/src/page-header.scss +31 -31
  432. package/packages/theme-chalk/src/pagination.scss +284 -284
  433. package/packages/theme-chalk/src/popconfirm.scss +11 -11
  434. package/packages/theme-chalk/src/popover.scss +30 -30
  435. package/packages/theme-chalk/src/popper.scss +82 -82
  436. package/packages/theme-chalk/src/progress.scss +128 -128
  437. package/packages/theme-chalk/src/radio-button.scss +94 -94
  438. package/packages/theme-chalk/src/radio-group.scss +4 -4
  439. package/packages/theme-chalk/src/radio.scss +192 -192
  440. package/packages/theme-chalk/src/rate.scss +38 -38
  441. package/packages/theme-chalk/src/reset.scss +39 -39
  442. package/packages/theme-chalk/src/result.scss +56 -56
  443. package/packages/theme-chalk/src/row.scss +31 -31
  444. package/packages/theme-chalk/src/scrollbar.scss +57 -57
  445. package/packages/theme-chalk/src/select-dropdown.scss +47 -47
  446. package/packages/theme-chalk/src/select.scss +140 -140
  447. package/packages/theme-chalk/src/skeleton-item.scss +75 -75
  448. package/packages/theme-chalk/src/skeleton.scss +27 -27
  449. package/packages/theme-chalk/src/slider.scss +238 -238
  450. package/packages/theme-chalk/src/spinner.scss +27 -27
  451. package/packages/theme-chalk/src/statistic.scss +32 -32
  452. package/packages/theme-chalk/src/step.scss +312 -312
  453. package/packages/theme-chalk/src/steps.scss +13 -13
  454. package/packages/theme-chalk/src/switch.scss +101 -101
  455. package/packages/theme-chalk/src/table-column.scss +87 -87
  456. package/packages/theme-chalk/src/table.scss +556 -556
  457. package/packages/theme-chalk/src/tabs.scss +576 -576
  458. package/packages/theme-chalk/src/tag.scss +155 -155
  459. package/packages/theme-chalk/src/time-select.scss +14 -14
  460. package/packages/theme-chalk/src/timeline-item.scss +71 -71
  461. package/packages/theme-chalk/src/timeline.scss +8 -8
  462. package/packages/theme-chalk/src/tooltip.scss +136 -136
  463. package/packages/theme-chalk/src/transfer.scss +214 -214
  464. package/packages/theme-chalk/src/tree.scss +110 -110
  465. package/packages/theme-chalk/src/upload.scss +587 -587
  466. package/packages/time-picker/index.js +1 -1
  467. package/packages/time-select/index.js +1 -1
  468. package/packages/timeline/index.js +1 -1
  469. package/packages/timeline/src/item.vue +56 -56
  470. package/packages/timeline/src/main.vue +28 -28
  471. package/packages/timeline-item/index.js +1 -1
  472. package/packages/tooltip/index.js +1 -1
  473. package/packages/tooltip/src/main.js +234 -234
  474. package/packages/transfer/index.js +1 -1
  475. package/packages/transfer/src/main.vue +225 -225
  476. package/packages/transfer/src/transfer-panel.vue +245 -245
  477. package/packages/tree/index.js +1 -1
  478. package/packages/tree/src/model/node.js +467 -467
  479. package/packages/tree/src/model/tree-store.js +335 -335
  480. package/packages/tree/src/model/util.js +17 -17
  481. package/packages/tree/src/tree-node.vue +247 -247
  482. package/packages/tree/src/tree.vue +491 -491
  483. package/packages/treeSelect/index.js +1 -1
  484. package/packages/treeSelect/src/main.vue +275 -275
  485. package/packages/upload/index.js +1 -1
  486. package/packages/upload/src/ajax.js +77 -77
  487. package/packages/upload/src/index.vue +304 -304
  488. package/packages/upload/src/upload-dragger.vue +65 -65
  489. package/packages/upload/src/upload-list.vue +96 -96
  490. package/packages/upload/src/upload.vue +194 -194
  491. package/src/directives/mousewheel.js +9 -9
  492. package/src/directives/repeat-click.js +20 -20
  493. package/src/index.js +209 -210
  494. package/src/locale/format.js +24 -25
  495. package/src/locale/index.js +25 -25
  496. package/src/locale/lang/en.js +121 -121
  497. package/src/locale/lang/zh-CN.js +121 -121
  498. package/src/locale/lang/zh-TW.js +121 -121
  499. package/src/mixins/emitter.js +26 -26
  500. package/src/mixins/focus.js +7 -7
  501. package/src/mixins/locale.js +5 -5
  502. package/src/mixins/migrating.js +28 -28
  503. package/src/transitions/collapse-transition.js +60 -60
  504. package/src/utils/after-leave.js +17 -17
  505. package/src/utils/aria-dialog.js +48 -48
  506. package/src/utils/aria-utils.js +64 -64
  507. package/src/utils/clickoutside.js +34 -34
  508. package/src/utils/date-util.js +163 -163
  509. package/src/utils/dom.js +165 -165
  510. package/src/utils/menu/aria-menubar.js +5 -5
  511. package/src/utils/menu/aria-menuitem.js +36 -36
  512. package/src/utils/menu/aria-submenu.js +44 -44
  513. package/src/utils/merge.js +12 -12
  514. package/src/utils/popup/index.js +203 -203
  515. package/src/utils/popup/popup-manager.js +169 -169
  516. package/src/utils/resize-event.js +20 -20
  517. package/src/utils/scroll-into-view.js +20 -20
  518. package/src/utils/scrollbar-width.js +18 -18
  519. package/src/utils/shared.js +3 -3
  520. package/src/utils/types.js +12 -12
  521. package/src/utils/util.js +157 -157
  522. package/src/utils/vdom.js +1 -1
  523. package/src/utils/vue-popper.js +179 -179
package/lib/submenu.js CHANGED
@@ -222,375 +222,374 @@ var vue_popper_default = /*#__PURE__*/__webpack_require__.n(vue_popper_);
222
222
 
223
223
 
224
224
  var poperMixins = {
225
- props: {
226
- transformOrigin: {
227
- type: [Boolean, String],
228
- default: false
229
- },
230
- offset: vue_popper_default.a.props.offset,
231
- boundariesPadding: vue_popper_default.a.props.boundariesPadding,
232
- popperOptions: vue_popper_default.a.props.popperOptions
233
- },
234
- data: vue_popper_default.a.data,
235
- methods: vue_popper_default.a.methods,
236
- beforeDestroy: vue_popper_default.a.beforeDestroy,
237
- deactivated: vue_popper_default.a.deactivated
225
+ props: {
226
+ transformOrigin: {
227
+ type: [Boolean, String],
228
+ default: false
229
+ },
230
+ offset: vue_popper_default.a.props.offset,
231
+ boundariesPadding: vue_popper_default.a.props.boundariesPadding,
232
+ popperOptions: vue_popper_default.a.props.popperOptions
233
+ },
234
+ data: vue_popper_default.a.data,
235
+ methods: vue_popper_default.a.methods,
236
+ beforeDestroy: vue_popper_default.a.beforeDestroy,
237
+ deactivated: vue_popper_default.a.deactivated
238
238
  };
239
239
 
240
240
  /* harmony default export */ var submenuvue_type_script_lang_js = ({
241
- name: 'ElSubmenu',
242
-
243
- componentName: 'ElSubmenu',
244
-
245
- mixins: [menu_mixin["a" /* default */], emitter_default.a, poperMixins],
246
-
247
- components: { ElCollapseTransition: collapse_transition_default.a },
248
-
249
- props: {
250
- index: {
251
- type: String,
252
- required: true
253
- },
254
- showTimeout: {
255
- type: Number,
256
- default: 300
257
- },
258
- hideTimeout: {
259
- type: Number,
260
- default: 300
261
- },
262
- popperClass: String,
263
- disabled: Boolean,
264
- popperAppendToBody: {
265
- type: Boolean,
266
- default: undefined
267
- }
268
- },
269
-
270
- data: function data() {
271
- return {
272
- popperJS: null,
273
- timeout: null,
274
- items: {},
275
- submenus: {},
276
- mouseInChild: false
277
- };
278
- },
279
-
280
- watch: {
281
- opened: function opened(val) {
282
- var _this = this;
283
-
284
- if (this.isMenuPopup) {
285
- this.$nextTick(function (_) {
286
- _this.updatePopper();
287
- });
288
- }
289
- }
290
- },
291
- computed: {
292
- // popper option
293
- appendToBody: function appendToBody() {
294
- return this.popperAppendToBody === undefined ? this.isFirstLevel : this.popperAppendToBody;
295
- },
296
- menuTransitionName: function menuTransitionName() {
297
- return this.rootMenu.collapse ? 'el-zoom-in-left' : 'el-zoom-in-top';
298
- },
299
- opened: function opened() {
300
- return this.rootMenu.openedMenus.indexOf(this.index) > -1;
301
- },
302
- active: function active() {
303
- var isActive = false;
304
- var submenus = this.submenus;
305
- var items = this.items;
306
-
307
- Object.keys(items).forEach(function (index) {
308
- if (items[index].active) {
309
- isActive = true;
310
- }
311
- });
312
-
313
- Object.keys(submenus).forEach(function (index) {
314
- if (submenus[index].active) {
315
- isActive = true;
316
- }
317
- });
318
-
319
- return isActive;
320
- },
321
- hoverBackground: function hoverBackground() {
322
- return this.rootMenu.hoverBackground;
323
- },
324
- backgroundColor: function backgroundColor() {
325
- return this.rootMenu.backgroundColor || '';
326
- },
327
- activeTextColor: function activeTextColor() {
328
- return this.rootMenu.activeTextColor || '';
329
- },
330
- textColor: function textColor() {
331
- return this.rootMenu.textColor || '';
332
- },
333
- mode: function mode() {
334
- return this.rootMenu.mode;
335
- },
336
- isMenuPopup: function isMenuPopup() {
337
- return this.rootMenu.isMenuPopup;
338
- },
339
- titleStyle: function titleStyle() {
340
- if (this.mode !== 'horizontal') {
341
- return {
342
- color: this.textColor
343
- };
344
- }
345
- return {
346
- borderBottomColor: this.active ? this.rootMenu.activeTextColor ? this.activeTextColor : '' : 'transparent',
347
- color: this.active ? this.activeTextColor : this.textColor
348
- };
349
- },
350
- isFirstLevel: function isFirstLevel() {
351
- var isFirstLevel = true;
352
- var parent = this.$parent;
353
- while (parent && parent !== this.rootMenu) {
354
- if (['ElSubmenu', 'ElMenuItemGroup'].indexOf(parent.$options.componentName) > -1) {
355
- isFirstLevel = false;
356
- break;
357
- } else {
358
- parent = parent.$parent;
359
- }
360
- }
361
- return isFirstLevel;
362
- }
363
- },
364
- methods: {
365
- handleCollapseToggle: function handleCollapseToggle(value) {
366
- if (value) {
367
- this.initPopper();
368
- } else {
369
- this.doDestroy();
370
- }
371
- },
372
- addItem: function addItem(item) {
373
- this.$set(this.items, item.index, item);
374
- },
375
- removeItem: function removeItem(item) {
376
- delete this.items[item.index];
377
- },
378
- addSubmenu: function addSubmenu(item) {
379
- this.$set(this.submenus, item.index, item);
380
- },
381
- removeSubmenu: function removeSubmenu(item) {
382
- delete this.submenus[item.index];
383
- },
384
- handleClick: function handleClick() {
385
- var rootMenu = this.rootMenu,
386
- disabled = this.disabled;
387
-
388
- if (rootMenu.menuTrigger === 'hover' && rootMenu.mode === 'horizontal' || rootMenu.collapse && rootMenu.mode === 'vertical' || disabled) {
389
- return;
390
- }
391
- this.dispatch('ElMenu', 'submenu-click', this);
392
- },
393
- handleMouseenter: function handleMouseenter(event) {
394
- var _this2 = this;
395
-
396
- var showTimeout = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.showTimeout;
397
-
398
-
399
- if (!('ActiveXObject' in window) && event.type === 'focus' && !event.relatedTarget) {
400
- return;
401
- }
402
- var rootMenu = this.rootMenu,
403
- disabled = this.disabled;
404
-
405
- if (rootMenu.menuTrigger === 'click' && rootMenu.mode === 'horizontal' || !rootMenu.collapse && rootMenu.mode === 'vertical' || disabled) {
406
- return;
407
- }
408
- this.dispatch('ElSubmenu', 'mouse-enter-child');
409
- clearTimeout(this.timeout);
410
- this.timeout = setTimeout(function () {
411
- _this2.rootMenu.openMenu(_this2.index, _this2.indexPath);
412
- }, showTimeout);
413
-
414
- if (this.appendToBody) {
415
- this.$parent.$el.dispatchEvent(new MouseEvent('mouseenter'));
416
- }
417
- },
418
- handleMouseleave: function handleMouseleave() {
419
- var _this3 = this;
420
-
421
- var deepDispatch = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
422
- var rootMenu = this.rootMenu;
423
-
424
- if (rootMenu.menuTrigger === 'click' && rootMenu.mode === 'horizontal' || !rootMenu.collapse && rootMenu.mode === 'vertical') {
425
- return;
426
- }
427
- this.dispatch('ElSubmenu', 'mouse-leave-child');
428
- clearTimeout(this.timeout);
429
- this.timeout = setTimeout(function () {
430
- !_this3.mouseInChild && _this3.rootMenu.closeMenu(_this3.index);
431
- }, this.hideTimeout);
432
-
433
- if (this.appendToBody && deepDispatch) {
434
- if (this.$parent.$options.name === 'ElSubmenu') {
435
- this.$parent.handleMouseleave(true);
436
- }
437
- }
438
- },
439
- handleTitleMouseenter: function handleTitleMouseenter() {
440
- if (this.mode === 'horizontal' && !this.rootMenu.backgroundColor) return;
441
- var title = this.$refs['submenu-title'];
442
- title && (title.style.backgroundColor = this.rootMenu.hoverBackground);
443
- },
444
- handleTitleMouseleave: function handleTitleMouseleave() {
445
- if (this.mode === 'horizontal' && !this.rootMenu.backgroundColor) return;
446
- var title = this.$refs['submenu-title'];
447
- title && (title.style.backgroundColor = this.rootMenu.backgroundColor || '');
448
- },
449
- updatePlacement: function updatePlacement() {
450
- this.currentPlacement = this.mode === 'horizontal' && this.isFirstLevel ? 'bottom-start' : 'right-start';
451
- },
452
- initPopper: function initPopper() {
453
- this.referenceElm = this.$el;
454
- this.popperElm = this.$refs.menu;
455
- this.updatePlacement();
456
- }
457
- },
458
- created: function created() {
459
- var _this4 = this;
460
-
461
- this.$on('toggle-collapse', this.handleCollapseToggle);
462
- this.$on('mouse-enter-child', function () {
463
- _this4.mouseInChild = true;
464
- clearTimeout(_this4.timeout);
465
- });
466
- this.$on('mouse-leave-child', function () {
467
- _this4.mouseInChild = false;
468
- clearTimeout(_this4.timeout);
469
- });
470
- },
471
- mounted: function mounted() {
472
- this.parentMenu.addSubmenu(this);
473
- this.rootMenu.addSubmenu(this);
474
- this.initPopper();
475
- },
476
- beforeDestroy: function beforeDestroy() {
477
- this.parentMenu.removeSubmenu(this);
478
- this.rootMenu.removeSubmenu(this);
479
- },
480
- render: function render(h) {
481
- var _this5 = this;
482
-
483
- var active = this.active,
484
- opened = this.opened,
485
- paddingStyle = this.paddingStyle,
486
- titleStyle = this.titleStyle,
487
- backgroundColor = this.backgroundColor,
488
- rootMenu = this.rootMenu,
489
- currentPlacement = this.currentPlacement,
490
- menuTransitionName = this.menuTransitionName,
491
- mode = this.mode,
492
- disabled = this.disabled,
493
- popperClass = this.popperClass,
494
- $slots = this.$slots,
495
- isFirstLevel = this.isFirstLevel;
496
-
497
-
498
- var popupMenu = h(
499
- 'transition',
500
- {
501
- attrs: { name: menuTransitionName }
502
- },
503
- [h(
504
- 'div',
505
- {
506
- ref: 'menu',
507
- directives: [{
508
- name: 'show',
509
- value: opened
510
- }],
511
-
512
- 'class': ['el-menu--' + mode, popperClass],
513
- on: {
514
- 'mouseenter': function mouseenter($event) {
515
- return _this5.handleMouseenter($event, 100);
516
- },
517
- 'mouseleave': function mouseleave() {
518
- return _this5.handleMouseleave(true);
519
- },
520
- 'focus': function focus($event) {
521
- return _this5.handleMouseenter($event, 100);
522
- }
523
- }
524
- },
525
- [h(
526
- 'ul',
527
- {
528
- attrs: {
529
- role: 'menu'
530
- },
531
- 'class': ['el-menu el-menu--popup', 'el-menu--popup-' + currentPlacement],
532
- style: { backgroundColor: rootMenu.backgroundColor || '' } },
533
- [$slots.default]
534
- )]
535
- )]
536
- );
537
-
538
- var inlineMenu = h('el-collapse-transition', [h(
539
- 'ul',
540
- {
541
- attrs: {
542
- role: 'menu'
543
- },
544
- 'class': 'el-menu el-menu--inline',
545
- directives: [{
546
- name: 'show',
547
- value: opened
548
- }],
549
-
550
- style: { backgroundColor: rootMenu.backgroundColor || '' } },
551
- [$slots.default]
552
- )]);
553
-
554
- var submenuTitleIcon = rootMenu.mode === 'horizontal' && isFirstLevel || rootMenu.mode === 'vertical' && !rootMenu.collapse ? 'el-icon-arrow-down' : 'el-icon-arrow-right';
555
-
556
- return h(
557
- 'li',
558
- {
559
- 'class': {
560
- 'el-submenu': true,
561
- 'is-active': active,
562
- 'is-opened': opened,
563
- 'is-disabled': disabled
564
- },
565
- attrs: { role: 'menuitem',
566
- 'aria-haspopup': 'true',
567
- 'aria-expanded': opened
568
- },
569
- on: {
570
- 'mouseenter': this.handleMouseenter,
571
- 'mouseleave': function mouseleave() {
572
- return _this5.handleMouseleave(false);
573
- },
574
- 'focus': this.handleMouseenter
575
- }
576
- },
577
- [h(
578
- 'div',
579
- {
580
- 'class': 'el-submenu__title',
581
- ref: 'submenu-title',
582
- on: {
583
- 'click': this.handleClick,
584
- 'mouseenter': this.handleTitleMouseenter,
585
- 'mouseleave': this.handleTitleMouseleave
586
- },
587
-
588
- style: [paddingStyle, titleStyle, { backgroundColor: backgroundColor }]
589
- },
590
- [$slots.title, h('i', { 'class': ['el-submenu__icon-arrow', submenuTitleIcon] })]
591
- ), this.isMenuPopup ? popupMenu : inlineMenu]
592
- );
593
- }
241
+ name: 'ElSubmenu',
242
+
243
+ componentName: 'ElSubmenu',
244
+
245
+ mixins: [menu_mixin["a" /* default */], emitter_default.a, poperMixins],
246
+
247
+ components: { ElCollapseTransition: collapse_transition_default.a },
248
+
249
+ props: {
250
+ index: {
251
+ type: String,
252
+ required: true
253
+ },
254
+ showTimeout: {
255
+ type: Number,
256
+ default: 300
257
+ },
258
+ hideTimeout: {
259
+ type: Number,
260
+ default: 300
261
+ },
262
+ popperClass: String,
263
+ disabled: Boolean,
264
+ popperAppendToBody: {
265
+ type: Boolean,
266
+ default: undefined
267
+ }
268
+ },
269
+
270
+ data: function data() {
271
+ return {
272
+ popperJS: null,
273
+ timeout: null,
274
+ items: {},
275
+ submenus: {},
276
+ mouseInChild: false
277
+ };
278
+ },
279
+
280
+ watch: {
281
+ opened: function opened(val) {
282
+ var _this = this;
283
+
284
+ if (this.isMenuPopup) {
285
+ this.$nextTick(function (_) {
286
+ _this.updatePopper();
287
+ });
288
+ }
289
+ }
290
+ },
291
+ computed: {
292
+ // popper option
293
+ appendToBody: function appendToBody() {
294
+ return this.popperAppendToBody === undefined ? this.isFirstLevel : this.popperAppendToBody;
295
+ },
296
+ menuTransitionName: function menuTransitionName() {
297
+ return this.rootMenu.collapse ? 'el-zoom-in-left' : 'el-zoom-in-top';
298
+ },
299
+ opened: function opened() {
300
+ return this.rootMenu.openedMenus.indexOf(this.index) > -1;
301
+ },
302
+ active: function active() {
303
+ var isActive = false;
304
+ var submenus = this.submenus;
305
+ var items = this.items;
306
+
307
+ Object.keys(items).forEach(function (index) {
308
+ if (items[index].active) {
309
+ isActive = true;
310
+ }
311
+ });
312
+
313
+ Object.keys(submenus).forEach(function (index) {
314
+ if (submenus[index].active) {
315
+ isActive = true;
316
+ }
317
+ });
318
+
319
+ return isActive;
320
+ },
321
+ hoverBackground: function hoverBackground() {
322
+ return this.rootMenu.hoverBackground;
323
+ },
324
+ backgroundColor: function backgroundColor() {
325
+ return this.rootMenu.backgroundColor || '';
326
+ },
327
+ activeTextColor: function activeTextColor() {
328
+ return this.rootMenu.activeTextColor || '';
329
+ },
330
+ textColor: function textColor() {
331
+ return this.rootMenu.textColor || '';
332
+ },
333
+ mode: function mode() {
334
+ return this.rootMenu.mode;
335
+ },
336
+ isMenuPopup: function isMenuPopup() {
337
+ return this.rootMenu.isMenuPopup;
338
+ },
339
+ titleStyle: function titleStyle() {
340
+ if (this.mode !== 'horizontal') {
341
+ return {
342
+ color: this.textColor
343
+ };
344
+ }
345
+ return {
346
+ borderBottomColor: this.active ? this.rootMenu.activeTextColor ? this.activeTextColor : '' : 'transparent',
347
+ color: this.active ? this.activeTextColor : this.textColor
348
+ };
349
+ },
350
+ isFirstLevel: function isFirstLevel() {
351
+ var isFirstLevel = true;
352
+ var parent = this.$parent;
353
+ while (parent && parent !== this.rootMenu) {
354
+ if (['ElSubmenu', 'ElMenuItemGroup'].indexOf(parent.$options.componentName) > -1) {
355
+ isFirstLevel = false;
356
+ break;
357
+ } else {
358
+ parent = parent.$parent;
359
+ }
360
+ }
361
+ return isFirstLevel;
362
+ }
363
+ },
364
+ methods: {
365
+ handleCollapseToggle: function handleCollapseToggle(value) {
366
+ if (value) {
367
+ this.initPopper();
368
+ } else {
369
+ this.doDestroy();
370
+ }
371
+ },
372
+ addItem: function addItem(item) {
373
+ this.$set(this.items, item.index, item);
374
+ },
375
+ removeItem: function removeItem(item) {
376
+ delete this.items[item.index];
377
+ },
378
+ addSubmenu: function addSubmenu(item) {
379
+ this.$set(this.submenus, item.index, item);
380
+ },
381
+ removeSubmenu: function removeSubmenu(item) {
382
+ delete this.submenus[item.index];
383
+ },
384
+ handleClick: function handleClick() {
385
+ var rootMenu = this.rootMenu,
386
+ disabled = this.disabled;
387
+
388
+ if (rootMenu.menuTrigger === 'hover' && rootMenu.mode === 'horizontal' || rootMenu.collapse && rootMenu.mode === 'vertical' || disabled) {
389
+ return;
390
+ }
391
+ this.dispatch('ElMenu', 'submenu-click', this);
392
+ },
393
+ handleMouseenter: function handleMouseenter(event) {
394
+ var _this2 = this;
395
+
396
+ var showTimeout = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.showTimeout;
397
+
398
+ if (!('ActiveXObject' in window) && event.type === 'focus' && !event.relatedTarget) {
399
+ return;
400
+ }
401
+ var rootMenu = this.rootMenu,
402
+ disabled = this.disabled;
403
+
404
+ if (rootMenu.menuTrigger === 'click' && rootMenu.mode === 'horizontal' || !rootMenu.collapse && rootMenu.mode === 'vertical' || disabled) {
405
+ return;
406
+ }
407
+ this.dispatch('ElSubmenu', 'mouse-enter-child');
408
+ clearTimeout(this.timeout);
409
+ this.timeout = setTimeout(function () {
410
+ _this2.rootMenu.openMenu(_this2.index, _this2.indexPath);
411
+ }, showTimeout);
412
+
413
+ if (this.appendToBody) {
414
+ this.$parent.$el.dispatchEvent(new MouseEvent('mouseenter'));
415
+ }
416
+ },
417
+ handleMouseleave: function handleMouseleave() {
418
+ var _this3 = this;
419
+
420
+ var deepDispatch = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
421
+ var rootMenu = this.rootMenu;
422
+
423
+ if (rootMenu.menuTrigger === 'click' && rootMenu.mode === 'horizontal' || !rootMenu.collapse && rootMenu.mode === 'vertical') {
424
+ return;
425
+ }
426
+ this.dispatch('ElSubmenu', 'mouse-leave-child');
427
+ clearTimeout(this.timeout);
428
+ this.timeout = setTimeout(function () {
429
+ !_this3.mouseInChild && _this3.rootMenu.closeMenu(_this3.index);
430
+ }, this.hideTimeout);
431
+
432
+ if (this.appendToBody && deepDispatch) {
433
+ if (this.$parent.$options.name === 'ElSubmenu') {
434
+ this.$parent.handleMouseleave(true);
435
+ }
436
+ }
437
+ },
438
+ handleTitleMouseenter: function handleTitleMouseenter() {
439
+ if (this.mode === 'horizontal' && !this.rootMenu.backgroundColor) return;
440
+ var title = this.$refs['submenu-title'];
441
+ title && (title.style.backgroundColor = this.rootMenu.hoverBackground);
442
+ },
443
+ handleTitleMouseleave: function handleTitleMouseleave() {
444
+ if (this.mode === 'horizontal' && !this.rootMenu.backgroundColor) return;
445
+ var title = this.$refs['submenu-title'];
446
+ title && (title.style.backgroundColor = this.rootMenu.backgroundColor || '');
447
+ },
448
+ updatePlacement: function updatePlacement() {
449
+ this.currentPlacement = this.mode === 'horizontal' && this.isFirstLevel ? 'bottom-start' : 'right-start';
450
+ },
451
+ initPopper: function initPopper() {
452
+ this.referenceElm = this.$el;
453
+ this.popperElm = this.$refs.menu;
454
+ this.updatePlacement();
455
+ }
456
+ },
457
+ created: function created() {
458
+ var _this4 = this;
459
+
460
+ this.$on('toggle-collapse', this.handleCollapseToggle);
461
+ this.$on('mouse-enter-child', function () {
462
+ _this4.mouseInChild = true;
463
+ clearTimeout(_this4.timeout);
464
+ });
465
+ this.$on('mouse-leave-child', function () {
466
+ _this4.mouseInChild = false;
467
+ clearTimeout(_this4.timeout);
468
+ });
469
+ },
470
+ mounted: function mounted() {
471
+ this.parentMenu.addSubmenu(this);
472
+ this.rootMenu.addSubmenu(this);
473
+ this.initPopper();
474
+ },
475
+ beforeDestroy: function beforeDestroy() {
476
+ this.parentMenu.removeSubmenu(this);
477
+ this.rootMenu.removeSubmenu(this);
478
+ },
479
+ render: function render(h) {
480
+ var _this5 = this;
481
+
482
+ var active = this.active,
483
+ opened = this.opened,
484
+ paddingStyle = this.paddingStyle,
485
+ titleStyle = this.titleStyle,
486
+ backgroundColor = this.backgroundColor,
487
+ rootMenu = this.rootMenu,
488
+ currentPlacement = this.currentPlacement,
489
+ menuTransitionName = this.menuTransitionName,
490
+ mode = this.mode,
491
+ disabled = this.disabled,
492
+ popperClass = this.popperClass,
493
+ $slots = this.$slots,
494
+ isFirstLevel = this.isFirstLevel;
495
+
496
+
497
+ var popupMenu = h(
498
+ 'transition',
499
+ {
500
+ attrs: { name: menuTransitionName }
501
+ },
502
+ [h(
503
+ 'div',
504
+ {
505
+ ref: 'menu',
506
+ directives: [{
507
+ name: 'show',
508
+ value: opened
509
+ }],
510
+
511
+ 'class': ['el-menu--' + mode, popperClass],
512
+ on: {
513
+ 'mouseenter': function mouseenter($event) {
514
+ return _this5.handleMouseenter($event, 100);
515
+ },
516
+ 'mouseleave': function mouseleave() {
517
+ return _this5.handleMouseleave(true);
518
+ },
519
+ 'focus': function focus($event) {
520
+ return _this5.handleMouseenter($event, 100);
521
+ }
522
+ }
523
+ },
524
+ [h(
525
+ 'ul',
526
+ {
527
+ attrs: {
528
+ role: 'menu'
529
+ },
530
+ 'class': ['el-menu el-menu--popup', 'el-menu--popup-' + currentPlacement],
531
+ style: { backgroundColor: rootMenu.backgroundColor || '' } },
532
+ [$slots.default]
533
+ )]
534
+ )]
535
+ );
536
+
537
+ var inlineMenu = h('el-collapse-transition', [h(
538
+ 'ul',
539
+ {
540
+ attrs: {
541
+ role: 'menu'
542
+ },
543
+ 'class': 'el-menu el-menu--inline',
544
+ directives: [{
545
+ name: 'show',
546
+ value: opened
547
+ }],
548
+
549
+ style: { backgroundColor: rootMenu.backgroundColor || '' } },
550
+ [$slots.default]
551
+ )]);
552
+
553
+ var submenuTitleIcon = rootMenu.mode === 'horizontal' && isFirstLevel || rootMenu.mode === 'vertical' && !rootMenu.collapse ? 'el-icon-arrow-down' : 'el-icon-arrow-right';
554
+
555
+ return h(
556
+ 'li',
557
+ {
558
+ 'class': {
559
+ 'el-submenu': true,
560
+ 'is-active': active,
561
+ 'is-opened': opened,
562
+ 'is-disabled': disabled
563
+ },
564
+ attrs: { role: 'menuitem',
565
+ 'aria-haspopup': 'true',
566
+ 'aria-expanded': opened
567
+ },
568
+ on: {
569
+ 'mouseenter': this.handleMouseenter,
570
+ 'mouseleave': function mouseleave() {
571
+ return _this5.handleMouseleave(false);
572
+ },
573
+ 'focus': this.handleMouseenter
574
+ }
575
+ },
576
+ [h(
577
+ 'div',
578
+ {
579
+ 'class': 'el-submenu__title',
580
+ ref: 'submenu-title',
581
+ on: {
582
+ 'click': this.handleClick,
583
+ 'mouseenter': this.handleTitleMouseenter,
584
+ 'mouseleave': this.handleTitleMouseleave
585
+ },
586
+
587
+ style: [paddingStyle, titleStyle, { backgroundColor: backgroundColor }]
588
+ },
589
+ [$slots.title, h('i', { 'class': ['el-submenu__icon-arrow', submenuTitleIcon] })]
590
+ ), this.isMenuPopup ? popupMenu : inlineMenu]
591
+ );
592
+ }
594
593
  });
595
594
  // CONCATENATED MODULE: ./packages/menu/src/submenu.vue?vue&type=script&lang=js
596
595
  /* harmony default export */ var src_submenuvue_type_script_lang_js = (submenuvue_type_script_lang_js);
@@ -622,7 +621,7 @@ var component = Object(componentNormalizer["a" /* default */])(
622
621
 
623
622
  /* istanbul ignore next */
624
623
  submenu.install = function (Vue) {
625
- Vue.component(submenu.name, submenu);
624
+ Vue.component(submenu.name, submenu);
626
625
  };
627
626
 
628
627
  /* harmony default export */ var packages_submenu = __webpack_exports__["default"] = (submenu);
@@ -641,45 +640,45 @@ module.exports = require("element-ui/lib/transitions/collapse-transition");
641
640
 
642
641
  "use strict";
643
642
  /* harmony default export */ __webpack_exports__["a"] = ({
644
- inject: ['rootMenu'],
645
- computed: {
646
- indexPath: function indexPath() {
647
- var path = [this.index];
648
- var parent = this.$parent;
649
- while (parent.$options.componentName !== 'ElMenu') {
650
- if (parent.index) {
651
- path.unshift(parent.index);
652
- }
653
- parent = parent.$parent;
654
- }
655
- return path;
656
- },
657
- parentMenu: function parentMenu() {
658
- var parent = this.$parent;
659
- while (parent && ['ElMenu', 'ElSubmenu'].indexOf(parent.$options.componentName) === -1) {
660
- parent = parent.$parent;
661
- }
662
- return parent;
663
- },
664
- paddingStyle: function paddingStyle() {
665
- if (this.rootMenu.mode !== 'vertical') return {};
666
-
667
- var padding = 20;
668
- var parent = this.$parent;
669
-
670
- if (this.rootMenu.collapse) {
671
- padding = 20;
672
- } else {
673
- while (parent && parent.$options.componentName !== 'ElMenu') {
674
- if (parent.$options.componentName === 'ElSubmenu') {
675
- padding += 20;
676
- }
677
- parent = parent.$parent;
678
- }
679
- }
680
- return { paddingLeft: padding + 'px' };
681
- }
682
- }
643
+ inject: ['rootMenu'],
644
+ computed: {
645
+ indexPath: function indexPath() {
646
+ var path = [this.index];
647
+ var parent = this.$parent;
648
+ while (parent.$options.componentName !== 'ElMenu') {
649
+ if (parent.index) {
650
+ path.unshift(parent.index);
651
+ }
652
+ parent = parent.$parent;
653
+ }
654
+ return path;
655
+ },
656
+ parentMenu: function parentMenu() {
657
+ var parent = this.$parent;
658
+ while (parent && ['ElMenu', 'ElSubmenu'].indexOf(parent.$options.componentName) === -1) {
659
+ parent = parent.$parent;
660
+ }
661
+ return parent;
662
+ },
663
+ paddingStyle: function paddingStyle() {
664
+ if (this.rootMenu.mode !== 'vertical') return {};
665
+
666
+ var padding = 20;
667
+ var parent = this.$parent;
668
+
669
+ if (this.rootMenu.collapse) {
670
+ padding = 20;
671
+ } else {
672
+ while (parent && parent.$options.componentName !== 'ElMenu') {
673
+ if (parent.$options.componentName === 'ElSubmenu') {
674
+ padding += 20;
675
+ }
676
+ parent = parent.$parent;
677
+ }
678
+ }
679
+ return { paddingLeft: padding + 'px' };
680
+ }
681
+ }
683
682
  });
684
683
 
685
684
  /***/ }),