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/tabs.js CHANGED
@@ -213,7 +213,7 @@ module.exports = require("element-ui/lib/utils/util");
213
213
  // ESM COMPAT FLAG
214
214
  __webpack_require__.r(__webpack_exports__);
215
215
 
216
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/tabs/src/tab-bar.vue?vue&type=template&id=0fe87a9a
216
+ // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/tabs/src/tab-bar.vue?vue&type=template&id=126554d3
217
217
  var render = function () {
218
218
  var _vm = this
219
219
  var _h = _vm.$createElement
@@ -228,7 +228,7 @@ var staticRenderFns = []
228
228
  render._withStripped = true
229
229
 
230
230
 
231
- // CONCATENATED MODULE: ./packages/tabs/src/tab-bar.vue?vue&type=template&id=0fe87a9a
231
+ // CONCATENATED MODULE: ./packages/tabs/src/tab-bar.vue?vue&type=template&id=126554d3
232
232
 
233
233
  // EXTERNAL MODULE: external "element-ui/lib/utils/util"
234
234
  var util_ = __webpack_require__(3);
@@ -240,63 +240,63 @@ var util_ = __webpack_require__(3);
240
240
 
241
241
 
242
242
  /* harmony default export */ var tab_barvue_type_script_lang_js = ({
243
- name: 'TabBar',
244
-
245
- props: {
246
- tabs: Array
247
- },
248
-
249
- inject: ['rootTabs'],
250
-
251
- computed: {
252
- barStyle: {
253
- get: function get() {
254
- var _this = this;
255
-
256
- var style = {};
257
- var offset = 0;
258
- var tabSize = 0;
259
- var sizeName = ['top', 'bottom'].indexOf(this.rootTabs.tabPosition) !== -1 ? 'width' : 'height';
260
- var sizeDir = sizeName === 'width' ? 'x' : 'y';
261
- var firstUpperCase = function firstUpperCase(str) {
262
- return str.toLowerCase().replace(/( |^)[a-z]/g, function (L) {
263
- return L.toUpperCase();
264
- });
265
- };
266
- this.tabs.every(function (tab, index) {
267
- var $el = Object(util_["arrayFind"])(_this.$parent.$refs.tabs || [], function (t) {
268
- return t.id.replace('tab-', '') === tab.paneName;
269
- });
270
- if (!$el) {
271
- return false;
272
- }
273
-
274
- if (!tab.active) {
275
- offset += $el['client' + firstUpperCase(sizeName)];
276
- return true;
277
- } else {
278
- tabSize = $el['client' + firstUpperCase(sizeName)];
279
- var tabStyles = window.getComputedStyle($el);
280
- if (sizeName === 'width' && _this.tabs.length > 1) {
281
- tabSize -= parseFloat(tabStyles.paddingLeft) + parseFloat(tabStyles.paddingRight);
282
- }
283
- if (sizeName === 'width') {
284
- offset += parseFloat(tabStyles.paddingLeft);
285
- }
286
- return false;
287
- }
288
- });
289
-
290
- var transform = 'translate' + firstUpperCase(sizeDir) + '(' + offset + 'px)';
291
- style[sizeName] = tabSize + 'px';
292
- style.transform = transform;
293
- style.msTransform = transform;
294
- style.webkitTransform = transform;
295
-
296
- return style;
297
- }
298
- }
299
- }
243
+ name: 'TabBar',
244
+
245
+ props: {
246
+ tabs: Array
247
+ },
248
+
249
+ inject: ['rootTabs'],
250
+
251
+ computed: {
252
+ barStyle: {
253
+ get: function get() {
254
+ var _this = this;
255
+
256
+ var style = {};
257
+ var offset = 0;
258
+ var tabSize = 0;
259
+ var sizeName = ['top', 'bottom'].indexOf(this.rootTabs.tabPosition) !== -1 ? 'width' : 'height';
260
+ var sizeDir = sizeName === 'width' ? 'x' : 'y';
261
+ var firstUpperCase = function firstUpperCase(str) {
262
+ return str.toLowerCase().replace(/( |^)[a-z]/g, function (L) {
263
+ return L.toUpperCase();
264
+ });
265
+ };
266
+ this.tabs.every(function (tab, index) {
267
+ var $el = Object(util_["arrayFind"])(_this.$parent.$refs.tabs || [], function (t) {
268
+ return t.id.replace('tab-', '') === tab.paneName;
269
+ });
270
+ if (!$el) {
271
+ return false;
272
+ }
273
+
274
+ if (!tab.active) {
275
+ offset += $el['client' + firstUpperCase(sizeName)];
276
+ return true;
277
+ } else {
278
+ tabSize = $el['client' + firstUpperCase(sizeName)];
279
+ var tabStyles = window.getComputedStyle($el);
280
+ if (sizeName === 'width' && _this.tabs.length > 1) {
281
+ tabSize -= parseFloat(tabStyles.paddingLeft) + parseFloat(tabStyles.paddingRight);
282
+ }
283
+ if (sizeName === 'width') {
284
+ offset += parseFloat(tabStyles.paddingLeft);
285
+ }
286
+ return false;
287
+ }
288
+ });
289
+
290
+ var transform = 'translate' + firstUpperCase(sizeDir) + '(' + offset + 'px)';
291
+ style[sizeName] = tabSize + 'px';
292
+ style.transform = transform;
293
+ style.msTransform = transform;
294
+ style.webkitTransform = transform;
295
+
296
+ return style;
297
+ }
298
+ }
299
+ }
300
300
  });
301
301
  // CONCATENATED MODULE: ./packages/tabs/src/tab-bar.vue?vue&type=script&lang=js
302
302
  /* harmony default export */ var src_tab_barvue_type_script_lang_js = (tab_barvue_type_script_lang_js);
@@ -333,328 +333,328 @@ var resize_event_ = __webpack_require__(17);
333
333
 
334
334
  function noop() {}
335
335
  var tab_navvue_type_script_lang_js_firstUpperCase = function firstUpperCase(str) {
336
- return str.toLowerCase().replace(/( |^)[a-z]/g, function (L) {
337
- return L.toUpperCase();
338
- });
336
+ return str.toLowerCase().replace(/( |^)[a-z]/g, function (L) {
337
+ return L.toUpperCase();
338
+ });
339
339
  };
340
340
 
341
341
  /* harmony default export */ var tab_navvue_type_script_lang_js = ({
342
- name: 'TabNav',
343
-
344
- components: {
345
- TabBar: tab_bar
346
- },
347
-
348
- inject: ['rootTabs'],
349
-
350
- props: {
351
- panes: Array,
352
- currentName: String,
353
- editable: Boolean,
354
- onTabClick: {
355
- type: Function,
356
- default: noop
357
- },
358
- onTabRemove: {
359
- type: Function,
360
- default: noop
361
- },
362
- type: String,
363
- stretch: Boolean
364
- },
365
-
366
- data: function data() {
367
- return {
368
- scrollable: false,
369
- navOffset: 0,
370
- isFocus: false,
371
- focusable: true
372
- };
373
- },
374
-
375
-
376
- computed: {
377
- navStyle: function navStyle() {
378
- var dir = ['top', 'bottom'].indexOf(this.rootTabs.tabPosition) !== -1 ? 'X' : 'Y';
379
- return {
380
- transform: 'translate' + dir + '(-' + this.navOffset + 'px)'
381
- };
382
- },
383
- sizeName: function sizeName() {
384
- return ['top', 'bottom'].indexOf(this.rootTabs.tabPosition) !== -1 ? 'width' : 'height';
385
- }
386
- },
387
-
388
- methods: {
389
- scrollPrev: function scrollPrev() {
390
- var containerSize = this.$refs.navScroll['offset' + tab_navvue_type_script_lang_js_firstUpperCase(this.sizeName)];
391
- var currentOffset = this.navOffset;
392
-
393
- if (!currentOffset) return;
394
-
395
- var newOffset = currentOffset > containerSize ? currentOffset - containerSize : 0;
396
-
397
- this.navOffset = newOffset;
398
- },
399
- scrollNext: function scrollNext() {
400
- var navSize = this.$refs.nav['offset' + tab_navvue_type_script_lang_js_firstUpperCase(this.sizeName)];
401
- var containerSize = this.$refs.navScroll['offset' + tab_navvue_type_script_lang_js_firstUpperCase(this.sizeName)];
402
- var currentOffset = this.navOffset;
403
-
404
- if (navSize - currentOffset <= containerSize) return;
405
-
406
- var newOffset = navSize - currentOffset > containerSize * 2 ? currentOffset + containerSize : navSize - containerSize;
407
-
408
- this.navOffset = newOffset;
409
- },
410
- scrollToActiveTab: function scrollToActiveTab() {
411
- if (!this.scrollable) return;
412
- var nav = this.$refs.nav;
413
- var activeTab = this.$el.querySelector('.is-active');
414
- if (!activeTab) return;
415
- var navScroll = this.$refs.navScroll;
416
- var isHorizontal = ['top', 'bottom'].indexOf(this.rootTabs.tabPosition) !== -1;
417
- var activeTabBounding = activeTab.getBoundingClientRect();
418
- var navScrollBounding = navScroll.getBoundingClientRect();
419
- var maxOffset = isHorizontal ? nav.offsetWidth - navScrollBounding.width : nav.offsetHeight - navScrollBounding.height;
420
- var currentOffset = this.navOffset;
421
- var newOffset = currentOffset;
422
-
423
- if (isHorizontal) {
424
- if (activeTabBounding.left < navScrollBounding.left) {
425
- newOffset = currentOffset - (navScrollBounding.left - activeTabBounding.left);
426
- }
427
- if (activeTabBounding.right > navScrollBounding.right) {
428
- newOffset = currentOffset + activeTabBounding.right - navScrollBounding.right;
429
- }
430
- } else {
431
- if (activeTabBounding.top < navScrollBounding.top) {
432
- newOffset = currentOffset - (navScrollBounding.top - activeTabBounding.top);
433
- }
434
- if (activeTabBounding.bottom > navScrollBounding.bottom) {
435
- newOffset = currentOffset + (activeTabBounding.bottom - navScrollBounding.bottom);
436
- }
437
- }
438
- newOffset = Math.max(newOffset, 0);
439
- this.navOffset = Math.min(newOffset, maxOffset);
440
- },
441
- update: function update() {
442
- if (!this.$refs.nav) return;
443
- var sizeName = this.sizeName;
444
- var navSize = this.$refs.nav['offset' + tab_navvue_type_script_lang_js_firstUpperCase(sizeName)];
445
- var containerSize = this.$refs.navScroll['offset' + tab_navvue_type_script_lang_js_firstUpperCase(sizeName)];
446
- var currentOffset = this.navOffset;
447
-
448
- if (containerSize < navSize) {
449
- var _currentOffset = this.navOffset;
450
- this.scrollable = this.scrollable || {};
451
- this.scrollable.prev = _currentOffset;
452
- this.scrollable.next = _currentOffset + containerSize < navSize;
453
- if (navSize - _currentOffset < containerSize) {
454
- this.navOffset = navSize - containerSize;
455
- }
456
- } else {
457
- this.scrollable = false;
458
- if (currentOffset > 0) {
459
- this.navOffset = 0;
460
- }
461
- }
462
- },
463
- changeTab: function changeTab(e) {
464
- var keyCode = e.keyCode;
465
- var nextIndex = void 0;
466
- var currentIndex = void 0,
467
- tabList = void 0;
468
- if ([37, 38, 39, 40].indexOf(keyCode) !== -1) {
469
- // 左右上下键更换tab
470
- tabList = e.currentTarget.querySelectorAll('[role=tab]');
471
- currentIndex = Array.prototype.indexOf.call(tabList, e.target);
472
- } else {
473
- return;
474
- }
475
- if (keyCode === 37 || keyCode === 38) {
476
- // left
477
- if (currentIndex === 0) {
478
- // first
479
- nextIndex = tabList.length - 1;
480
- } else {
481
- nextIndex = currentIndex - 1;
482
- }
483
- } else {
484
- // right
485
- if (currentIndex < tabList.length - 1) {
486
- // not last
487
- nextIndex = currentIndex + 1;
488
- } else {
489
- nextIndex = 0;
490
- }
491
- }
492
- tabList[nextIndex].focus(); // 改变焦点元素
493
- tabList[nextIndex].click(); // 选中下一个tab
494
- this.setFocus();
495
- },
496
- setFocus: function setFocus() {
497
- if (this.focusable) {
498
- this.isFocus = true;
499
- }
500
- },
501
- removeFocus: function removeFocus() {
502
- this.isFocus = false;
503
- },
504
- visibilityChangeHandler: function visibilityChangeHandler() {
505
- var _this = this;
506
-
507
- var visibility = document.visibilityState;
508
- if (visibility === 'hidden') {
509
- this.focusable = false;
510
- } else if (visibility === 'visible') {
511
- setTimeout(function () {
512
- _this.focusable = true;
513
- }, 50);
514
- }
515
- },
516
- windowBlurHandler: function windowBlurHandler() {
517
- this.focusable = false;
518
- },
519
- windowFocusHandler: function windowFocusHandler() {
520
- var _this2 = this;
521
-
522
- setTimeout(function () {
523
- _this2.focusable = true;
524
- }, 50);
525
- }
526
- },
527
-
528
- updated: function updated() {
529
- this.update();
530
- },
531
- render: function render(h) {
532
- var _this3 = this;
533
-
534
- var type = this.type,
535
- panes = this.panes,
536
- editable = this.editable,
537
- stretch = this.stretch,
538
- onTabClick = this.onTabClick,
539
- onTabRemove = this.onTabRemove,
540
- navStyle = this.navStyle,
541
- scrollable = this.scrollable,
542
- scrollNext = this.scrollNext,
543
- scrollPrev = this.scrollPrev,
544
- changeTab = this.changeTab,
545
- setFocus = this.setFocus,
546
- removeFocus = this.removeFocus;
547
-
548
- var scrollBtn = scrollable ? [h(
549
- 'span',
550
- { 'class': ['el-tabs__nav-prev', scrollable.prev ? '' : 'is-disabled'], on: {
551
- 'click': scrollPrev
552
- }
553
- },
554
- [h('i', { 'class': 'el-icon-arrow-left' })]
555
- ), h(
556
- 'span',
557
- { 'class': ['el-tabs__nav-next', scrollable.next ? '' : 'is-disabled'], on: {
558
- 'click': scrollNext
559
- }
560
- },
561
- [h('i', { 'class': 'el-icon-arrow-right' })]
562
- )] : null;
563
-
564
- var tabs = this._l(panes, function (pane, index) {
565
- var _ref;
566
-
567
- var tabName = pane.name || pane.index || index;
568
- var closable = pane.isClosable || editable;
569
-
570
- pane.index = '' + index;
571
-
572
- var btnClose = closable ? h('span', { 'class': 'el-icon-close', on: {
573
- 'click': function click(ev) {
574
- onTabRemove(pane, ev);
575
- }
576
- }
577
- }) : null;
578
-
579
- var tabLabelContent = pane.$slots.label || pane.label;
580
- var tabindex = pane.active ? 0 : -1;
581
- return h(
582
- 'div',
583
- {
584
- 'class': (_ref = {
585
- 'el-tabs__item': true
586
- }, _ref['is-' + _this3.rootTabs.tabPosition] = true, _ref['is-active'] = pane.active, _ref['is-disabled'] = pane.disabled, _ref['is-closable'] = closable, _ref['is-focus'] = _this3.isFocus, _ref),
587
- attrs: { id: 'tab-' + tabName,
588
-
589
- 'aria-controls': 'pane-' + tabName,
590
- role: 'tab',
591
- 'aria-selected': pane.active,
592
-
593
- tabindex: tabindex
594
- },
595
- key: 'tab-' + tabName, ref: 'tabs', refInFor: true,
596
- on: {
597
- 'focus': function focus() {
598
- setFocus();
599
- },
600
- 'blur': function blur() {
601
- removeFocus();
602
- },
603
- 'click': function click(ev) {
604
- removeFocus();onTabClick(pane, tabName, ev);
605
- },
606
- 'keydown': function keydown(ev) {
607
- if (closable && (ev.keyCode === 46 || ev.keyCode === 8)) {
608
- onTabRemove(pane, ev);
609
- }
610
- }
611
- }
612
- },
613
- [tabLabelContent, btnClose]
614
- );
615
- });
616
- return h(
617
- 'div',
618
- { 'class': ['el-tabs__nav-wrap', scrollable ? 'is-scrollable' : '', 'is-' + this.rootTabs.tabPosition] },
619
- [scrollBtn, h(
620
- 'div',
621
- { 'class': ['el-tabs__nav-scroll'], ref: 'navScroll' },
622
- [h(
623
- 'div',
624
- {
625
- 'class': ['el-tabs__nav', 'is-' + this.rootTabs.tabPosition, stretch && ['top', 'bottom'].indexOf(this.rootTabs.tabPosition) !== -1 ? 'is-stretch' : ''],
626
- ref: 'nav',
627
- style: navStyle,
628
- attrs: { role: 'tablist'
629
- },
630
- on: {
631
- 'keydown': changeTab
632
- }
633
- },
634
- [!type ? h('tab-bar', {
635
- attrs: { tabs: panes }
636
- }) : null, tabs]
637
- )]
638
- )]
639
- );
640
- },
641
- mounted: function mounted() {
642
- var _this4 = this;
643
-
644
- Object(resize_event_["addResizeListener"])(this.$el, this.update);
645
- document.addEventListener('visibilitychange', this.visibilityChangeHandler);
646
- window.addEventListener('blur', this.windowBlurHandler);
647
- window.addEventListener('focus', this.windowFocusHandler);
648
- setTimeout(function () {
649
- _this4.scrollToActiveTab();
650
- }, 0);
651
- },
652
- beforeDestroy: function beforeDestroy() {
653
- if (this.$el && this.update) Object(resize_event_["removeResizeListener"])(this.$el, this.update);
654
- document.removeEventListener('visibilitychange', this.visibilityChangeHandler);
655
- window.removeEventListener('blur', this.windowBlurHandler);
656
- window.removeEventListener('focus', this.windowFocusHandler);
657
- }
342
+ name: 'TabNav',
343
+
344
+ components: {
345
+ TabBar: tab_bar
346
+ },
347
+
348
+ inject: ['rootTabs'],
349
+
350
+ props: {
351
+ panes: Array,
352
+ currentName: String,
353
+ editable: Boolean,
354
+ onTabClick: {
355
+ type: Function,
356
+ default: noop
357
+ },
358
+ onTabRemove: {
359
+ type: Function,
360
+ default: noop
361
+ },
362
+ type: String,
363
+ stretch: Boolean
364
+ },
365
+
366
+ data: function data() {
367
+ return {
368
+ scrollable: false,
369
+ navOffset: 0,
370
+ isFocus: false,
371
+ focusable: true
372
+ };
373
+ },
374
+
375
+
376
+ computed: {
377
+ navStyle: function navStyle() {
378
+ var dir = ['top', 'bottom'].indexOf(this.rootTabs.tabPosition) !== -1 ? 'X' : 'Y';
379
+ return {
380
+ transform: 'translate' + dir + '(-' + this.navOffset + 'px)'
381
+ };
382
+ },
383
+ sizeName: function sizeName() {
384
+ return ['top', 'bottom'].indexOf(this.rootTabs.tabPosition) !== -1 ? 'width' : 'height';
385
+ }
386
+ },
387
+
388
+ methods: {
389
+ scrollPrev: function scrollPrev() {
390
+ var containerSize = this.$refs.navScroll['offset' + tab_navvue_type_script_lang_js_firstUpperCase(this.sizeName)];
391
+ var currentOffset = this.navOffset;
392
+
393
+ if (!currentOffset) return;
394
+
395
+ var newOffset = currentOffset > containerSize ? currentOffset - containerSize : 0;
396
+
397
+ this.navOffset = newOffset;
398
+ },
399
+ scrollNext: function scrollNext() {
400
+ var navSize = this.$refs.nav['offset' + tab_navvue_type_script_lang_js_firstUpperCase(this.sizeName)];
401
+ var containerSize = this.$refs.navScroll['offset' + tab_navvue_type_script_lang_js_firstUpperCase(this.sizeName)];
402
+ var currentOffset = this.navOffset;
403
+
404
+ if (navSize - currentOffset <= containerSize) return;
405
+
406
+ var newOffset = navSize - currentOffset > containerSize * 2 ? currentOffset + containerSize : navSize - containerSize;
407
+
408
+ this.navOffset = newOffset;
409
+ },
410
+ scrollToActiveTab: function scrollToActiveTab() {
411
+ if (!this.scrollable) return;
412
+ var nav = this.$refs.nav;
413
+ var activeTab = this.$el.querySelector('.is-active');
414
+ if (!activeTab) return;
415
+ var navScroll = this.$refs.navScroll;
416
+ var isHorizontal = ['top', 'bottom'].indexOf(this.rootTabs.tabPosition) !== -1;
417
+ var activeTabBounding = activeTab.getBoundingClientRect();
418
+ var navScrollBounding = navScroll.getBoundingClientRect();
419
+ var maxOffset = isHorizontal ? nav.offsetWidth - navScrollBounding.width : nav.offsetHeight - navScrollBounding.height;
420
+ var currentOffset = this.navOffset;
421
+ var newOffset = currentOffset;
422
+
423
+ if (isHorizontal) {
424
+ if (activeTabBounding.left < navScrollBounding.left) {
425
+ newOffset = currentOffset - (navScrollBounding.left - activeTabBounding.left);
426
+ }
427
+ if (activeTabBounding.right > navScrollBounding.right) {
428
+ newOffset = currentOffset + activeTabBounding.right - navScrollBounding.right;
429
+ }
430
+ } else {
431
+ if (activeTabBounding.top < navScrollBounding.top) {
432
+ newOffset = currentOffset - (navScrollBounding.top - activeTabBounding.top);
433
+ }
434
+ if (activeTabBounding.bottom > navScrollBounding.bottom) {
435
+ newOffset = currentOffset + (activeTabBounding.bottom - navScrollBounding.bottom);
436
+ }
437
+ }
438
+ newOffset = Math.max(newOffset, 0);
439
+ this.navOffset = Math.min(newOffset, maxOffset);
440
+ },
441
+ update: function update() {
442
+ if (!this.$refs.nav) return;
443
+ var sizeName = this.sizeName;
444
+ var navSize = this.$refs.nav['offset' + tab_navvue_type_script_lang_js_firstUpperCase(sizeName)];
445
+ var containerSize = this.$refs.navScroll['offset' + tab_navvue_type_script_lang_js_firstUpperCase(sizeName)];
446
+ var currentOffset = this.navOffset;
447
+
448
+ if (containerSize < navSize) {
449
+ var _currentOffset = this.navOffset;
450
+ this.scrollable = this.scrollable || {};
451
+ this.scrollable.prev = _currentOffset;
452
+ this.scrollable.next = _currentOffset + containerSize < navSize;
453
+ if (navSize - _currentOffset < containerSize) {
454
+ this.navOffset = navSize - containerSize;
455
+ }
456
+ } else {
457
+ this.scrollable = false;
458
+ if (currentOffset > 0) {
459
+ this.navOffset = 0;
460
+ }
461
+ }
462
+ },
463
+ changeTab: function changeTab(e) {
464
+ var keyCode = e.keyCode;
465
+ var nextIndex = void 0;
466
+ var currentIndex = void 0,
467
+ tabList = void 0;
468
+ if ([37, 38, 39, 40].indexOf(keyCode) !== -1) {
469
+ // 左右上下键更换tab
470
+ tabList = e.currentTarget.querySelectorAll('[role=tab]');
471
+ currentIndex = Array.prototype.indexOf.call(tabList, e.target);
472
+ } else {
473
+ return;
474
+ }
475
+ if (keyCode === 37 || keyCode === 38) {
476
+ // left
477
+ if (currentIndex === 0) {
478
+ // first
479
+ nextIndex = tabList.length - 1;
480
+ } else {
481
+ nextIndex = currentIndex - 1;
482
+ }
483
+ } else {
484
+ // right
485
+ if (currentIndex < tabList.length - 1) {
486
+ // not last
487
+ nextIndex = currentIndex + 1;
488
+ } else {
489
+ nextIndex = 0;
490
+ }
491
+ }
492
+ tabList[nextIndex].focus(); // 改变焦点元素
493
+ tabList[nextIndex].click(); // 选中下一个tab
494
+ this.setFocus();
495
+ },
496
+ setFocus: function setFocus() {
497
+ if (this.focusable) {
498
+ this.isFocus = true;
499
+ }
500
+ },
501
+ removeFocus: function removeFocus() {
502
+ this.isFocus = false;
503
+ },
504
+ visibilityChangeHandler: function visibilityChangeHandler() {
505
+ var _this = this;
506
+
507
+ var visibility = document.visibilityState;
508
+ if (visibility === 'hidden') {
509
+ this.focusable = false;
510
+ } else if (visibility === 'visible') {
511
+ setTimeout(function () {
512
+ _this.focusable = true;
513
+ }, 50);
514
+ }
515
+ },
516
+ windowBlurHandler: function windowBlurHandler() {
517
+ this.focusable = false;
518
+ },
519
+ windowFocusHandler: function windowFocusHandler() {
520
+ var _this2 = this;
521
+
522
+ setTimeout(function () {
523
+ _this2.focusable = true;
524
+ }, 50);
525
+ }
526
+ },
527
+
528
+ updated: function updated() {
529
+ this.update();
530
+ },
531
+ render: function render(h) {
532
+ var _this3 = this;
533
+
534
+ var type = this.type,
535
+ panes = this.panes,
536
+ editable = this.editable,
537
+ stretch = this.stretch,
538
+ onTabClick = this.onTabClick,
539
+ onTabRemove = this.onTabRemove,
540
+ navStyle = this.navStyle,
541
+ scrollable = this.scrollable,
542
+ scrollNext = this.scrollNext,
543
+ scrollPrev = this.scrollPrev,
544
+ changeTab = this.changeTab,
545
+ setFocus = this.setFocus,
546
+ removeFocus = this.removeFocus;
547
+
548
+ var scrollBtn = scrollable ? [h(
549
+ 'span',
550
+ { 'class': ['el-tabs__nav-prev', scrollable.prev ? '' : 'is-disabled'], on: {
551
+ 'click': scrollPrev
552
+ }
553
+ },
554
+ [h('i', { 'class': 'el-icon-arrow-left' })]
555
+ ), h(
556
+ 'span',
557
+ { 'class': ['el-tabs__nav-next', scrollable.next ? '' : 'is-disabled'], on: {
558
+ 'click': scrollNext
559
+ }
560
+ },
561
+ [h('i', { 'class': 'el-icon-arrow-right' })]
562
+ )] : null;
563
+
564
+ var tabs = this._l(panes, function (pane, index) {
565
+ var _ref;
566
+
567
+ var tabName = pane.name || pane.index || index;
568
+ var closable = pane.isClosable || editable;
569
+
570
+ pane.index = '' + index;
571
+
572
+ var btnClose = closable ? h('span', { 'class': 'el-icon-close', on: {
573
+ 'click': function click(ev) {
574
+ onTabRemove(pane, ev);
575
+ }
576
+ }
577
+ }) : null;
578
+
579
+ var tabLabelContent = pane.$slots.label || pane.label;
580
+ var tabindex = pane.active ? 0 : -1;
581
+ return h(
582
+ 'div',
583
+ {
584
+ 'class': (_ref = {
585
+ 'el-tabs__item': true
586
+ }, _ref['is-' + _this3.rootTabs.tabPosition] = true, _ref['is-active'] = pane.active, _ref['is-disabled'] = pane.disabled, _ref['is-closable'] = closable, _ref['is-focus'] = _this3.isFocus, _ref),
587
+ attrs: { id: 'tab-' + tabName,
588
+
589
+ 'aria-controls': 'pane-' + tabName,
590
+ role: 'tab',
591
+ 'aria-selected': pane.active,
592
+
593
+ tabindex: tabindex
594
+ },
595
+ key: 'tab-' + tabName, ref: 'tabs', refInFor: true,
596
+ on: {
597
+ 'focus': function focus() {
598
+ setFocus();
599
+ },
600
+ 'blur': function blur() {
601
+ removeFocus();
602
+ },
603
+ 'click': function click(ev) {
604
+ removeFocus();onTabClick(pane, tabName, ev);
605
+ },
606
+ 'keydown': function keydown(ev) {
607
+ if (closable && (ev.keyCode === 46 || ev.keyCode === 8)) {
608
+ onTabRemove(pane, ev);
609
+ }
610
+ }
611
+ }
612
+ },
613
+ [tabLabelContent, btnClose]
614
+ );
615
+ });
616
+ return h(
617
+ 'div',
618
+ { 'class': ['el-tabs__nav-wrap', scrollable ? 'is-scrollable' : '', 'is-' + this.rootTabs.tabPosition] },
619
+ [scrollBtn, h(
620
+ 'div',
621
+ { 'class': ['el-tabs__nav-scroll'], ref: 'navScroll' },
622
+ [h(
623
+ 'div',
624
+ {
625
+ 'class': ['el-tabs__nav', 'is-' + this.rootTabs.tabPosition, stretch && ['top', 'bottom'].indexOf(this.rootTabs.tabPosition) !== -1 ? 'is-stretch' : ''],
626
+ ref: 'nav',
627
+ style: navStyle,
628
+ attrs: { role: 'tablist'
629
+ },
630
+ on: {
631
+ 'keydown': changeTab
632
+ }
633
+ },
634
+ [!type ? h('tab-bar', {
635
+ attrs: { tabs: panes }
636
+ }) : null, tabs]
637
+ )]
638
+ )]
639
+ );
640
+ },
641
+ mounted: function mounted() {
642
+ var _this4 = this;
643
+
644
+ Object(resize_event_["addResizeListener"])(this.$el, this.update);
645
+ document.addEventListener('visibilitychange', this.visibilityChangeHandler);
646
+ window.addEventListener('blur', this.windowBlurHandler);
647
+ window.addEventListener('focus', this.windowFocusHandler);
648
+ setTimeout(function () {
649
+ _this4.scrollToActiveTab();
650
+ }, 0);
651
+ },
652
+ beforeDestroy: function beforeDestroy() {
653
+ if (this.$el && this.update) Object(resize_event_["removeResizeListener"])(this.$el, this.update);
654
+ document.removeEventListener('visibilitychange', this.visibilityChangeHandler);
655
+ window.removeEventListener('blur', this.windowBlurHandler);
656
+ window.removeEventListener('focus', this.windowFocusHandler);
657
+ }
658
658
  });
659
659
  // CONCATENATED MODULE: ./packages/tabs/src/tab-nav.vue?vue&type=script&lang=js
660
660
  /* harmony default export */ var src_tab_navvue_type_script_lang_js = (tab_navvue_type_script_lang_js);
@@ -683,205 +683,205 @@ var tab_nav_component = Object(componentNormalizer["a" /* default */])(
683
683
 
684
684
 
685
685
  /* harmony default export */ var tabsvue_type_script_lang_js = ({
686
- name: 'ElTabs',
687
-
688
- components: {
689
- TabNav: tab_nav
690
- },
691
-
692
- props: {
693
- type: String,
694
- activeName: String,
695
- closable: Boolean,
696
- addable: Boolean,
697
- value: {},
698
- editable: Boolean,
699
- tabPosition: {
700
- type: String,
701
- default: 'top'
702
- },
703
- beforeLeave: Function,
704
- stretch: Boolean
705
- },
706
-
707
- provide: function provide() {
708
- return {
709
- rootTabs: this
710
- };
711
- },
712
- data: function data() {
713
- return {
714
- currentName: this.value || this.activeName,
715
- panes: []
716
- };
717
- },
718
-
719
-
720
- watch: {
721
- activeName: function activeName(value) {
722
- this.setCurrentName(value);
723
- },
724
- value: function value(_value) {
725
- this.setCurrentName(_value);
726
- },
727
- currentName: function currentName(value) {
728
- var _this = this;
729
-
730
- if (this.$refs.nav) {
731
- this.$nextTick(function () {
732
- _this.$refs.nav.$nextTick(function (_) {
733
- _this.$refs.nav.scrollToActiveTab();
734
- });
735
- });
736
- }
737
- }
738
- },
739
-
740
- methods: {
741
- calcPaneInstances: function calcPaneInstances() {
742
- var _this2 = this;
743
-
744
- var isForceUpdate = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
745
-
746
- if (this.$slots.default) {
747
- var paneSlots = this.$slots.default.filter(function (vnode) {
748
- return vnode.tag && vnode.componentOptions && vnode.componentOptions.Ctor.options.name === 'ElTabPane';
749
- });
750
- // update indeed
751
- var panes = paneSlots.map(function (_ref) {
752
- var componentInstance = _ref.componentInstance;
753
- return componentInstance;
754
- });
755
- var panesChanged = !(panes.length === this.panes.length && panes.every(function (pane, index) {
756
- return pane === _this2.panes[index];
757
- }));
758
- if (isForceUpdate || panesChanged) {
759
- this.panes = panes;
760
- }
761
- } else if (this.panes.length !== 0) {
762
- this.panes = [];
763
- }
764
- },
765
- handleTabClick: function handleTabClick(tab, tabName, event) {
766
- if (tab.disabled) return;
767
- this.setCurrentName(tabName);
768
- this.$emit('tab-click', tab, event);
769
- },
770
- handleTabRemove: function handleTabRemove(pane, ev) {
771
- if (pane.disabled) return;
772
- ev.stopPropagation();
773
- this.$emit('edit', pane.name, 'remove');
774
- this.$emit('tab-remove', pane.name);
775
- },
776
- handleTabAdd: function handleTabAdd() {
777
- this.$emit('edit', null, 'add');
778
- this.$emit('tab-add');
779
- },
780
- setCurrentName: function setCurrentName(value) {
781
- var _this3 = this;
782
-
783
- var changeCurrentName = function changeCurrentName() {
784
- _this3.currentName = value;
785
- _this3.$emit('input', value);
786
- };
787
- if (this.currentName !== value && this.beforeLeave) {
788
- var before = this.beforeLeave(value, this.currentName);
789
- if (before && before.then) {
790
- before.then(function () {
791
- changeCurrentName();
792
- _this3.$refs.nav && _this3.$refs.nav.removeFocus();
793
- }, function () {
794
- // https://github.com/ElemeFE/element/pull/14816
795
- // ignore promise rejection in `before-leave` hook
796
- });
797
- } else if (before !== false) {
798
- changeCurrentName();
799
- }
800
- } else {
801
- changeCurrentName();
802
- }
803
- }
804
- },
805
-
806
- render: function render(h) {
807
- var _ref2;
808
-
809
- var type = this.type,
810
- handleTabClick = this.handleTabClick,
811
- handleTabRemove = this.handleTabRemove,
812
- handleTabAdd = this.handleTabAdd,
813
- currentName = this.currentName,
814
- panes = this.panes,
815
- editable = this.editable,
816
- addable = this.addable,
817
- tabPosition = this.tabPosition,
818
- stretch = this.stretch;
819
-
820
-
821
- var newButton = editable || addable ? h(
822
- 'span',
823
- {
824
- 'class': 'el-tabs__new-tab',
825
- on: {
826
- 'click': handleTabAdd,
827
- 'keydown': function keydown(ev) {
828
- if (ev.keyCode === 13) {
829
- handleTabAdd();
830
- }
831
- }
832
- },
833
- attrs: {
834
- tabindex: '0'
835
- }
836
- },
837
- [h('i', { 'class': 'el-icon-plus' })]
838
- ) : null;
839
-
840
- var navData = {
841
- props: {
842
- currentName: currentName,
843
- onTabClick: handleTabClick,
844
- onTabRemove: handleTabRemove,
845
- editable: editable,
846
- type: type,
847
- panes: panes,
848
- stretch: stretch
849
- },
850
- ref: 'nav'
851
- };
852
- var header = h(
853
- 'div',
854
- { 'class': ['el-tabs__header', 'is-' + tabPosition] },
855
- [newButton, h('tab-nav', navData)]
856
- );
857
- var panels = h(
858
- 'div',
859
- { 'class': 'el-tabs__content' },
860
- [this.$slots.default]
861
- );
862
-
863
- return h(
864
- 'div',
865
- { 'class': (_ref2 = {
866
- 'el-tabs': true,
867
- 'el-tabs--card': type === 'card'
868
- }, _ref2['el-tabs--' + tabPosition] = true, _ref2['el-tabs--border-card'] = type === 'border-card', _ref2) },
869
- [tabPosition !== 'bottom' ? [header, panels] : [panels, header]]
870
- );
871
- },
872
- created: function created() {
873
- if (!this.currentName) {
874
- this.setCurrentName('0');
875
- }
876
-
877
- this.$on('tab-nav-update', this.calcPaneInstances.bind(null, true));
878
- },
879
- mounted: function mounted() {
880
- this.calcPaneInstances();
881
- },
882
- updated: function updated() {
883
- this.calcPaneInstances();
884
- }
686
+ name: 'ElTabs',
687
+
688
+ components: {
689
+ TabNav: tab_nav
690
+ },
691
+
692
+ props: {
693
+ type: String,
694
+ activeName: String,
695
+ closable: Boolean,
696
+ addable: Boolean,
697
+ value: {},
698
+ editable: Boolean,
699
+ tabPosition: {
700
+ type: String,
701
+ default: 'top'
702
+ },
703
+ beforeLeave: Function,
704
+ stretch: Boolean
705
+ },
706
+
707
+ provide: function provide() {
708
+ return {
709
+ rootTabs: this
710
+ };
711
+ },
712
+ data: function data() {
713
+ return {
714
+ currentName: this.value || this.activeName,
715
+ panes: []
716
+ };
717
+ },
718
+
719
+
720
+ watch: {
721
+ activeName: function activeName(value) {
722
+ this.setCurrentName(value);
723
+ },
724
+ value: function value(_value) {
725
+ this.setCurrentName(_value);
726
+ },
727
+ currentName: function currentName(value) {
728
+ var _this = this;
729
+
730
+ if (this.$refs.nav) {
731
+ this.$nextTick(function () {
732
+ _this.$refs.nav.$nextTick(function (_) {
733
+ _this.$refs.nav.scrollToActiveTab();
734
+ });
735
+ });
736
+ }
737
+ }
738
+ },
739
+
740
+ methods: {
741
+ calcPaneInstances: function calcPaneInstances() {
742
+ var _this2 = this;
743
+
744
+ var isForceUpdate = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
745
+
746
+ if (this.$slots.default) {
747
+ var paneSlots = this.$slots.default.filter(function (vnode) {
748
+ return vnode.tag && vnode.componentOptions && vnode.componentOptions.Ctor.options.name === 'ElTabPane';
749
+ });
750
+ // update indeed
751
+ var panes = paneSlots.map(function (_ref) {
752
+ var componentInstance = _ref.componentInstance;
753
+ return componentInstance;
754
+ });
755
+ var panesChanged = !(panes.length === this.panes.length && panes.every(function (pane, index) {
756
+ return pane === _this2.panes[index];
757
+ }));
758
+ if (isForceUpdate || panesChanged) {
759
+ this.panes = panes;
760
+ }
761
+ } else if (this.panes.length !== 0) {
762
+ this.panes = [];
763
+ }
764
+ },
765
+ handleTabClick: function handleTabClick(tab, tabName, event) {
766
+ if (tab.disabled) return;
767
+ this.setCurrentName(tabName);
768
+ this.$emit('tab-click', tab, event);
769
+ },
770
+ handleTabRemove: function handleTabRemove(pane, ev) {
771
+ if (pane.disabled) return;
772
+ ev.stopPropagation();
773
+ this.$emit('edit', pane.name, 'remove');
774
+ this.$emit('tab-remove', pane.name);
775
+ },
776
+ handleTabAdd: function handleTabAdd() {
777
+ this.$emit('edit', null, 'add');
778
+ this.$emit('tab-add');
779
+ },
780
+ setCurrentName: function setCurrentName(value) {
781
+ var _this3 = this;
782
+
783
+ var changeCurrentName = function changeCurrentName() {
784
+ _this3.currentName = value;
785
+ _this3.$emit('input', value);
786
+ };
787
+ if (this.currentName !== value && this.beforeLeave) {
788
+ var before = this.beforeLeave(value, this.currentName);
789
+ if (before && before.then) {
790
+ before.then(function () {
791
+ changeCurrentName();
792
+ _this3.$refs.nav && _this3.$refs.nav.removeFocus();
793
+ }, function () {
794
+ // https://github.com/ElemeFE/element/pull/14816
795
+ // ignore promise rejection in `before-leave` hook
796
+ });
797
+ } else if (before !== false) {
798
+ changeCurrentName();
799
+ }
800
+ } else {
801
+ changeCurrentName();
802
+ }
803
+ }
804
+ },
805
+
806
+ render: function render(h) {
807
+ var _ref2;
808
+
809
+ var type = this.type,
810
+ handleTabClick = this.handleTabClick,
811
+ handleTabRemove = this.handleTabRemove,
812
+ handleTabAdd = this.handleTabAdd,
813
+ currentName = this.currentName,
814
+ panes = this.panes,
815
+ editable = this.editable,
816
+ addable = this.addable,
817
+ tabPosition = this.tabPosition,
818
+ stretch = this.stretch;
819
+
820
+
821
+ var newButton = editable || addable ? h(
822
+ 'span',
823
+ {
824
+ 'class': 'el-tabs__new-tab',
825
+ on: {
826
+ 'click': handleTabAdd,
827
+ 'keydown': function keydown(ev) {
828
+ if (ev.keyCode === 13) {
829
+ handleTabAdd();
830
+ }
831
+ }
832
+ },
833
+ attrs: {
834
+ tabindex: '0'
835
+ }
836
+ },
837
+ [h('i', { 'class': 'el-icon-plus' })]
838
+ ) : null;
839
+
840
+ var navData = {
841
+ props: {
842
+ currentName: currentName,
843
+ onTabClick: handleTabClick,
844
+ onTabRemove: handleTabRemove,
845
+ editable: editable,
846
+ type: type,
847
+ panes: panes,
848
+ stretch: stretch
849
+ },
850
+ ref: 'nav'
851
+ };
852
+ var header = h(
853
+ 'div',
854
+ { 'class': ['el-tabs__header', 'is-' + tabPosition] },
855
+ [newButton, h('tab-nav', navData)]
856
+ );
857
+ var panels = h(
858
+ 'div',
859
+ { 'class': 'el-tabs__content' },
860
+ [this.$slots.default]
861
+ );
862
+
863
+ return h(
864
+ 'div',
865
+ { 'class': (_ref2 = {
866
+ 'el-tabs': true,
867
+ 'el-tabs--card': type === 'card'
868
+ }, _ref2['el-tabs--' + tabPosition] = true, _ref2['el-tabs--border-card'] = type === 'border-card', _ref2) },
869
+ [tabPosition !== 'bottom' ? [header, panels] : [panels, header]]
870
+ );
871
+ },
872
+ created: function created() {
873
+ if (!this.currentName) {
874
+ this.setCurrentName('0');
875
+ }
876
+
877
+ this.$on('tab-nav-update', this.calcPaneInstances.bind(null, true));
878
+ },
879
+ mounted: function mounted() {
880
+ this.calcPaneInstances();
881
+ },
882
+ updated: function updated() {
883
+ this.calcPaneInstances();
884
+ }
885
885
  });
886
886
  // CONCATENATED MODULE: ./packages/tabs/src/tabs.vue?vue&type=script&lang=js
887
887
  /* harmony default export */ var src_tabsvue_type_script_lang_js = (tabsvue_type_script_lang_js);
@@ -910,7 +910,7 @@ var tabs_component = Object(componentNormalizer["a" /* default */])(
910
910
 
911
911
  /* istanbul ignore next */
912
912
  tabs.install = function (Vue) {
913
- Vue.component(tabs.name, tabs);
913
+ Vue.component(tabs.name, tabs);
914
914
  };
915
915
 
916
916
  /* harmony default export */ var packages_tabs = __webpack_exports__["default"] = (tabs);