@element-plus/nightly 0.0.20251202 → 0.0.20251203

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 (576) hide show
  1. package/dist/index.css +1 -1
  2. package/dist/index.full.js +14 -2
  3. package/dist/index.full.min.js +9 -9
  4. package/dist/index.full.min.js.map +1 -1
  5. package/dist/index.full.min.mjs +9 -9
  6. package/dist/index.full.min.mjs.map +1 -1
  7. package/dist/index.full.mjs +14 -2
  8. package/dist/locale/af.js +1 -1
  9. package/dist/locale/af.min.js +1 -1
  10. package/dist/locale/af.min.mjs +1 -1
  11. package/dist/locale/af.mjs +1 -1
  12. package/dist/locale/ar-eg.js +1 -1
  13. package/dist/locale/ar-eg.min.js +1 -1
  14. package/dist/locale/ar-eg.min.mjs +1 -1
  15. package/dist/locale/ar-eg.mjs +1 -1
  16. package/dist/locale/ar.js +1 -1
  17. package/dist/locale/ar.min.js +1 -1
  18. package/dist/locale/ar.min.mjs +1 -1
  19. package/dist/locale/ar.mjs +1 -1
  20. package/dist/locale/az.js +1 -1
  21. package/dist/locale/az.min.js +1 -1
  22. package/dist/locale/az.min.mjs +1 -1
  23. package/dist/locale/az.mjs +1 -1
  24. package/dist/locale/bg.js +1 -1
  25. package/dist/locale/bg.min.js +1 -1
  26. package/dist/locale/bg.min.mjs +1 -1
  27. package/dist/locale/bg.mjs +1 -1
  28. package/dist/locale/bn.js +1 -1
  29. package/dist/locale/bn.min.js +1 -1
  30. package/dist/locale/bn.min.mjs +1 -1
  31. package/dist/locale/bn.mjs +1 -1
  32. package/dist/locale/ca.js +1 -1
  33. package/dist/locale/ca.min.js +1 -1
  34. package/dist/locale/ca.min.mjs +1 -1
  35. package/dist/locale/ca.mjs +1 -1
  36. package/dist/locale/ckb.js +1 -1
  37. package/dist/locale/ckb.min.js +1 -1
  38. package/dist/locale/ckb.min.mjs +1 -1
  39. package/dist/locale/ckb.mjs +1 -1
  40. package/dist/locale/cs.js +1 -1
  41. package/dist/locale/cs.min.js +1 -1
  42. package/dist/locale/cs.min.mjs +1 -1
  43. package/dist/locale/cs.mjs +1 -1
  44. package/dist/locale/da.js +1 -1
  45. package/dist/locale/da.min.js +1 -1
  46. package/dist/locale/da.min.mjs +1 -1
  47. package/dist/locale/da.mjs +1 -1
  48. package/dist/locale/de.js +1 -1
  49. package/dist/locale/de.min.js +1 -1
  50. package/dist/locale/de.min.mjs +1 -1
  51. package/dist/locale/de.mjs +1 -1
  52. package/dist/locale/el.js +1 -1
  53. package/dist/locale/el.min.js +1 -1
  54. package/dist/locale/el.min.mjs +1 -1
  55. package/dist/locale/el.mjs +1 -1
  56. package/dist/locale/en.js +1 -1
  57. package/dist/locale/en.min.js +1 -1
  58. package/dist/locale/en.min.mjs +1 -1
  59. package/dist/locale/en.mjs +1 -1
  60. package/dist/locale/eo.js +1 -1
  61. package/dist/locale/eo.min.js +1 -1
  62. package/dist/locale/eo.min.mjs +1 -1
  63. package/dist/locale/eo.mjs +1 -1
  64. package/dist/locale/es.js +1 -1
  65. package/dist/locale/es.min.js +1 -1
  66. package/dist/locale/es.min.mjs +1 -1
  67. package/dist/locale/es.mjs +1 -1
  68. package/dist/locale/et.js +1 -1
  69. package/dist/locale/et.min.js +1 -1
  70. package/dist/locale/et.min.mjs +1 -1
  71. package/dist/locale/et.mjs +1 -1
  72. package/dist/locale/eu.js +1 -1
  73. package/dist/locale/eu.min.js +1 -1
  74. package/dist/locale/eu.min.mjs +1 -1
  75. package/dist/locale/eu.mjs +1 -1
  76. package/dist/locale/fa.js +1 -1
  77. package/dist/locale/fa.min.js +1 -1
  78. package/dist/locale/fa.min.mjs +1 -1
  79. package/dist/locale/fa.mjs +1 -1
  80. package/dist/locale/fi.js +1 -1
  81. package/dist/locale/fi.min.js +1 -1
  82. package/dist/locale/fi.min.mjs +1 -1
  83. package/dist/locale/fi.mjs +1 -1
  84. package/dist/locale/fr.js +1 -1
  85. package/dist/locale/fr.min.js +1 -1
  86. package/dist/locale/fr.min.mjs +1 -1
  87. package/dist/locale/fr.mjs +1 -1
  88. package/dist/locale/he.js +1 -1
  89. package/dist/locale/he.min.js +1 -1
  90. package/dist/locale/he.min.mjs +1 -1
  91. package/dist/locale/he.mjs +1 -1
  92. package/dist/locale/hi.js +1 -1
  93. package/dist/locale/hi.min.js +1 -1
  94. package/dist/locale/hi.min.mjs +1 -1
  95. package/dist/locale/hi.mjs +1 -1
  96. package/dist/locale/hr.js +1 -1
  97. package/dist/locale/hr.min.js +1 -1
  98. package/dist/locale/hr.min.mjs +1 -1
  99. package/dist/locale/hr.mjs +1 -1
  100. package/dist/locale/hu.js +1 -1
  101. package/dist/locale/hu.min.js +1 -1
  102. package/dist/locale/hu.min.mjs +1 -1
  103. package/dist/locale/hu.mjs +1 -1
  104. package/dist/locale/hy-am.js +1 -1
  105. package/dist/locale/hy-am.min.js +1 -1
  106. package/dist/locale/hy-am.min.mjs +1 -1
  107. package/dist/locale/hy-am.mjs +1 -1
  108. package/dist/locale/id.js +1 -1
  109. package/dist/locale/id.min.js +1 -1
  110. package/dist/locale/id.min.mjs +1 -1
  111. package/dist/locale/id.mjs +1 -1
  112. package/dist/locale/it.js +1 -1
  113. package/dist/locale/it.min.js +1 -1
  114. package/dist/locale/it.min.mjs +1 -1
  115. package/dist/locale/it.mjs +1 -1
  116. package/dist/locale/ja.js +1 -1
  117. package/dist/locale/ja.min.js +1 -1
  118. package/dist/locale/ja.min.mjs +1 -1
  119. package/dist/locale/ja.mjs +1 -1
  120. package/dist/locale/kk.js +1 -1
  121. package/dist/locale/kk.min.js +1 -1
  122. package/dist/locale/kk.min.mjs +1 -1
  123. package/dist/locale/kk.mjs +1 -1
  124. package/dist/locale/km.js +1 -1
  125. package/dist/locale/km.min.js +1 -1
  126. package/dist/locale/km.min.mjs +1 -1
  127. package/dist/locale/km.mjs +1 -1
  128. package/dist/locale/ko.js +1 -1
  129. package/dist/locale/ko.min.js +1 -1
  130. package/dist/locale/ko.min.mjs +1 -1
  131. package/dist/locale/ko.mjs +1 -1
  132. package/dist/locale/ku.js +1 -1
  133. package/dist/locale/ku.min.js +1 -1
  134. package/dist/locale/ku.min.mjs +1 -1
  135. package/dist/locale/ku.mjs +1 -1
  136. package/dist/locale/ky.js +1 -1
  137. package/dist/locale/ky.min.js +1 -1
  138. package/dist/locale/ky.min.mjs +1 -1
  139. package/dist/locale/ky.mjs +1 -1
  140. package/dist/locale/lo.js +1 -1
  141. package/dist/locale/lo.min.js +1 -1
  142. package/dist/locale/lo.min.mjs +1 -1
  143. package/dist/locale/lo.mjs +1 -1
  144. package/dist/locale/lt.js +1 -1
  145. package/dist/locale/lt.min.js +1 -1
  146. package/dist/locale/lt.min.mjs +1 -1
  147. package/dist/locale/lt.mjs +1 -1
  148. package/dist/locale/lv.js +1 -1
  149. package/dist/locale/lv.min.js +1 -1
  150. package/dist/locale/lv.min.mjs +1 -1
  151. package/dist/locale/lv.mjs +1 -1
  152. package/dist/locale/mg.js +1 -1
  153. package/dist/locale/mg.min.js +1 -1
  154. package/dist/locale/mg.min.mjs +1 -1
  155. package/dist/locale/mg.mjs +1 -1
  156. package/dist/locale/mn.js +1 -1
  157. package/dist/locale/mn.min.js +1 -1
  158. package/dist/locale/mn.min.mjs +1 -1
  159. package/dist/locale/mn.mjs +1 -1
  160. package/dist/locale/ms.js +1 -1
  161. package/dist/locale/ms.min.js +1 -1
  162. package/dist/locale/ms.min.mjs +1 -1
  163. package/dist/locale/ms.mjs +1 -1
  164. package/dist/locale/my.js +1 -1
  165. package/dist/locale/my.min.js +1 -1
  166. package/dist/locale/my.min.mjs +1 -1
  167. package/dist/locale/my.mjs +1 -1
  168. package/dist/locale/nb-no.js +1 -1
  169. package/dist/locale/nb-no.min.js +1 -1
  170. package/dist/locale/nb-no.min.mjs +1 -1
  171. package/dist/locale/nb-no.mjs +1 -1
  172. package/dist/locale/nl.js +1 -1
  173. package/dist/locale/nl.min.js +1 -1
  174. package/dist/locale/nl.min.mjs +1 -1
  175. package/dist/locale/nl.mjs +1 -1
  176. package/dist/locale/no.js +1 -1
  177. package/dist/locale/no.min.js +1 -1
  178. package/dist/locale/no.min.mjs +1 -1
  179. package/dist/locale/no.mjs +1 -1
  180. package/dist/locale/pa.js +1 -1
  181. package/dist/locale/pa.min.js +1 -1
  182. package/dist/locale/pa.min.mjs +1 -1
  183. package/dist/locale/pa.mjs +1 -1
  184. package/dist/locale/pl.js +1 -1
  185. package/dist/locale/pl.min.js +1 -1
  186. package/dist/locale/pl.min.mjs +1 -1
  187. package/dist/locale/pl.mjs +1 -1
  188. package/dist/locale/pt-br.js +1 -1
  189. package/dist/locale/pt-br.min.js +1 -1
  190. package/dist/locale/pt-br.min.mjs +1 -1
  191. package/dist/locale/pt-br.mjs +1 -1
  192. package/dist/locale/pt.js +1 -1
  193. package/dist/locale/pt.min.js +1 -1
  194. package/dist/locale/pt.min.mjs +1 -1
  195. package/dist/locale/pt.mjs +1 -1
  196. package/dist/locale/ro.js +1 -1
  197. package/dist/locale/ro.min.js +1 -1
  198. package/dist/locale/ro.min.mjs +1 -1
  199. package/dist/locale/ro.mjs +1 -1
  200. package/dist/locale/ru.js +1 -1
  201. package/dist/locale/ru.min.js +1 -1
  202. package/dist/locale/ru.min.mjs +1 -1
  203. package/dist/locale/ru.mjs +1 -1
  204. package/dist/locale/sk.js +1 -1
  205. package/dist/locale/sk.min.js +1 -1
  206. package/dist/locale/sk.min.mjs +1 -1
  207. package/dist/locale/sk.mjs +1 -1
  208. package/dist/locale/sl.js +1 -1
  209. package/dist/locale/sl.min.js +1 -1
  210. package/dist/locale/sl.min.mjs +1 -1
  211. package/dist/locale/sl.mjs +1 -1
  212. package/dist/locale/sr.js +1 -1
  213. package/dist/locale/sr.min.js +1 -1
  214. package/dist/locale/sr.min.mjs +1 -1
  215. package/dist/locale/sr.mjs +1 -1
  216. package/dist/locale/sv.js +1 -1
  217. package/dist/locale/sv.min.js +1 -1
  218. package/dist/locale/sv.min.mjs +1 -1
  219. package/dist/locale/sv.mjs +1 -1
  220. package/dist/locale/sw.js +1 -1
  221. package/dist/locale/sw.min.js +1 -1
  222. package/dist/locale/sw.min.mjs +1 -1
  223. package/dist/locale/sw.mjs +1 -1
  224. package/dist/locale/ta.js +1 -1
  225. package/dist/locale/ta.min.js +1 -1
  226. package/dist/locale/ta.min.mjs +1 -1
  227. package/dist/locale/ta.mjs +1 -1
  228. package/dist/locale/te.js +1 -1
  229. package/dist/locale/te.min.js +1 -1
  230. package/dist/locale/te.min.mjs +1 -1
  231. package/dist/locale/te.mjs +1 -1
  232. package/dist/locale/th.js +1 -1
  233. package/dist/locale/th.min.js +1 -1
  234. package/dist/locale/th.min.mjs +1 -1
  235. package/dist/locale/th.mjs +1 -1
  236. package/dist/locale/tk.js +1 -1
  237. package/dist/locale/tk.min.js +1 -1
  238. package/dist/locale/tk.min.mjs +1 -1
  239. package/dist/locale/tk.mjs +1 -1
  240. package/dist/locale/tr.js +1 -1
  241. package/dist/locale/tr.min.js +1 -1
  242. package/dist/locale/tr.min.mjs +1 -1
  243. package/dist/locale/tr.mjs +1 -1
  244. package/dist/locale/ug-cn.js +1 -1
  245. package/dist/locale/ug-cn.min.js +1 -1
  246. package/dist/locale/ug-cn.min.mjs +1 -1
  247. package/dist/locale/ug-cn.mjs +1 -1
  248. package/dist/locale/uk.js +1 -1
  249. package/dist/locale/uk.min.js +1 -1
  250. package/dist/locale/uk.min.mjs +1 -1
  251. package/dist/locale/uk.mjs +1 -1
  252. package/dist/locale/uz-uz.js +1 -1
  253. package/dist/locale/uz-uz.min.js +1 -1
  254. package/dist/locale/uz-uz.min.mjs +1 -1
  255. package/dist/locale/uz-uz.mjs +1 -1
  256. package/dist/locale/vi.js +1 -1
  257. package/dist/locale/vi.min.js +1 -1
  258. package/dist/locale/vi.min.mjs +1 -1
  259. package/dist/locale/vi.mjs +1 -1
  260. package/dist/locale/zh-cn.js +1 -1
  261. package/dist/locale/zh-cn.min.js +1 -1
  262. package/dist/locale/zh-cn.min.mjs +1 -1
  263. package/dist/locale/zh-cn.mjs +1 -1
  264. package/dist/locale/zh-hk.js +1 -1
  265. package/dist/locale/zh-hk.min.js +1 -1
  266. package/dist/locale/zh-hk.min.mjs +1 -1
  267. package/dist/locale/zh-hk.mjs +1 -1
  268. package/dist/locale/zh-mo.js +1 -1
  269. package/dist/locale/zh-mo.min.js +1 -1
  270. package/dist/locale/zh-mo.min.mjs +1 -1
  271. package/dist/locale/zh-mo.mjs +1 -1
  272. package/dist/locale/zh-tw.js +1 -1
  273. package/dist/locale/zh-tw.min.js +1 -1
  274. package/dist/locale/zh-tw.min.mjs +1 -1
  275. package/dist/locale/zh-tw.mjs +1 -1
  276. package/es/components/autocomplete/index.mjs +2 -2
  277. package/es/components/autocomplete/src/autocomplete.mjs +445 -61
  278. package/es/components/autocomplete/src/autocomplete.mjs.map +1 -1
  279. package/es/components/autocomplete/src/autocomplete2.mjs +61 -445
  280. package/es/components/autocomplete/src/autocomplete2.mjs.map +1 -1
  281. package/es/components/badge/index.mjs +2 -2
  282. package/es/components/badge/src/badge.mjs +71 -32
  283. package/es/components/badge/src/badge.mjs.map +1 -1
  284. package/es/components/badge/src/badge2.mjs +32 -71
  285. package/es/components/badge/src/badge2.mjs.map +1 -1
  286. package/es/components/breadcrumb/index.mjs +2 -2
  287. package/es/components/breadcrumb/src/breadcrumb-item.mjs +56 -8
  288. package/es/components/breadcrumb/src/breadcrumb-item.mjs.map +1 -1
  289. package/es/components/breadcrumb/src/breadcrumb-item2.mjs +8 -56
  290. package/es/components/breadcrumb/src/breadcrumb-item2.mjs.map +1 -1
  291. package/es/components/card/index.mjs +2 -2
  292. package/es/components/card/src/card.mjs +48 -23
  293. package/es/components/card/src/card.mjs.map +1 -1
  294. package/es/components/card/src/card2.mjs +23 -48
  295. package/es/components/card/src/card2.mjs.map +1 -1
  296. package/es/components/carousel/index.mjs +2 -2
  297. package/es/components/carousel/src/carousel-item.mjs +69 -7
  298. package/es/components/carousel/src/carousel-item.mjs.map +1 -1
  299. package/es/components/carousel/src/carousel-item2.mjs +7 -69
  300. package/es/components/carousel/src/carousel-item2.mjs.map +1 -1
  301. package/es/components/cascader-panel/src/index.mjs +1 -1
  302. package/es/components/cascader-panel/src/menu.mjs +1 -1
  303. package/es/components/cascader-panel/src/node.mjs +177 -115
  304. package/es/components/cascader-panel/src/node.mjs.map +1 -1
  305. package/es/components/cascader-panel/src/node2.mjs +115 -177
  306. package/es/components/cascader-panel/src/node2.mjs.map +1 -1
  307. package/es/components/cascader-panel/src/store.mjs +1 -1
  308. package/es/components/checkbox/index.mjs +2 -2
  309. package/es/components/checkbox/src/checkbox-button.mjs +1 -1
  310. package/es/components/checkbox/src/checkbox-group2.mjs +1 -1
  311. package/es/components/checkbox/src/checkbox.mjs +63 -111
  312. package/es/components/checkbox/src/checkbox.mjs.map +1 -1
  313. package/es/components/checkbox/src/checkbox2.mjs +111 -63
  314. package/es/components/checkbox/src/checkbox2.mjs.map +1 -1
  315. package/es/components/collection/index.mjs +1 -1
  316. package/es/components/collection/src/collection.mjs +10 -62
  317. package/es/components/collection/src/collection.mjs.map +1 -1
  318. package/es/components/collection/src/collection2.mjs +62 -10
  319. package/es/components/collection/src/collection2.mjs.map +1 -1
  320. package/es/components/dialog/src/dialog-content.mjs +38 -89
  321. package/es/components/dialog/src/dialog-content.mjs.map +1 -1
  322. package/es/components/dialog/src/dialog-content2.mjs +89 -38
  323. package/es/components/dialog/src/dialog-content2.mjs.map +1 -1
  324. package/es/components/dialog/src/dialog.mjs +1 -1
  325. package/es/components/dialog/src/dialog2.mjs +1 -1
  326. package/es/components/dropdown/src/dropdown-item-impl.mjs +1 -1
  327. package/es/components/dropdown/src/dropdown.mjs +2 -2
  328. package/es/components/focus-trap/src/focus-trap.mjs +2 -0
  329. package/es/components/focus-trap/src/focus-trap.mjs.map +1 -1
  330. package/es/components/icon/index.mjs +2 -2
  331. package/es/components/icon/src/icon.mjs +8 -35
  332. package/es/components/icon/src/icon.mjs.map +1 -1
  333. package/es/components/icon/src/icon2.mjs +35 -8
  334. package/es/components/icon/src/icon2.mjs.map +1 -1
  335. package/es/components/index.mjs +19 -19
  336. package/es/components/input/index.mjs +2 -2
  337. package/es/components/input/src/input.mjs +484 -125
  338. package/es/components/input/src/input.mjs.map +1 -1
  339. package/es/components/input/src/input2.mjs +125 -484
  340. package/es/components/input/src/input2.mjs.map +1 -1
  341. package/es/components/mention/src/mention.mjs +1 -1
  342. package/es/components/mention/src/mention2.mjs +1 -1
  343. package/es/components/page-header/index.mjs +2 -2
  344. package/es/components/page-header/src/page-header.mjs +16 -97
  345. package/es/components/page-header/src/page-header.mjs.map +1 -1
  346. package/es/components/page-header/src/page-header2.mjs +97 -16
  347. package/es/components/page-header/src/page-header2.mjs.map +1 -1
  348. package/es/components/popconfirm/index.mjs +2 -2
  349. package/es/components/popconfirm/src/popconfirm.mjs +135 -50
  350. package/es/components/popconfirm/src/popconfirm.mjs.map +1 -1
  351. package/es/components/popconfirm/src/popconfirm2.mjs +50 -135
  352. package/es/components/popconfirm/src/popconfirm2.mjs.map +1 -1
  353. package/es/components/popover/src/popover.mjs +1 -1
  354. package/es/components/popper/index.mjs +2 -2
  355. package/es/components/popper/src/composables/use-content.mjs +4 -1
  356. package/es/components/popper/src/composables/use-content.mjs.map +1 -1
  357. package/es/components/popper/src/composables/use-focus-trap.mjs +4 -1
  358. package/es/components/popper/src/composables/use-focus-trap.mjs.map +1 -1
  359. package/es/components/popper/src/content2.mjs +1 -0
  360. package/es/components/popper/src/content2.mjs.map +1 -1
  361. package/es/components/popper/src/popper.mjs +32 -22
  362. package/es/components/popper/src/popper.mjs.map +1 -1
  363. package/es/components/popper/src/popper2.mjs +22 -32
  364. package/es/components/popper/src/popper2.mjs.map +1 -1
  365. package/es/components/radio/index.mjs +2 -2
  366. package/es/components/radio/src/radio-button.mjs +1 -1
  367. package/es/components/radio/src/radio-group.mjs +1 -1
  368. package/es/components/radio/src/radio-group2.mjs +1 -1
  369. package/es/components/radio/src/radio.mjs +74 -35
  370. package/es/components/radio/src/radio.mjs.map +1 -1
  371. package/es/components/radio/src/radio2.mjs +35 -74
  372. package/es/components/radio/src/radio2.mjs.map +1 -1
  373. package/es/components/result/index.mjs +2 -2
  374. package/es/components/result/src/result.mjs +30 -62
  375. package/es/components/result/src/result.mjs.map +1 -1
  376. package/es/components/result/src/result2.mjs +62 -30
  377. package/es/components/result/src/result2.mjs.map +1 -1
  378. package/es/components/roving-focus-group/src/roving-focus-group.mjs +1 -1
  379. package/es/components/row/index.mjs +2 -2
  380. package/es/components/row/src/row.mjs +28 -44
  381. package/es/components/row/src/row.mjs.map +1 -1
  382. package/es/components/row/src/row2.mjs +44 -28
  383. package/es/components/row/src/row2.mjs.map +1 -1
  384. package/es/components/scrollbar/index.mjs +1 -1
  385. package/es/components/scrollbar/src/bar2.mjs +1 -1
  386. package/es/components/scrollbar/src/thumb.mjs +139 -11
  387. package/es/components/scrollbar/src/thumb.mjs.map +1 -1
  388. package/es/components/scrollbar/src/thumb2.mjs +11 -139
  389. package/es/components/scrollbar/src/thumb2.mjs.map +1 -1
  390. package/es/components/select/index.mjs +2 -2
  391. package/es/components/select/src/select.mjs +553 -152
  392. package/es/components/select/src/select.mjs.map +1 -1
  393. package/es/components/select/src/select2.mjs +152 -553
  394. package/es/components/select/src/select2.mjs.map +1 -1
  395. package/es/components/steps/index.mjs +2 -2
  396. package/es/components/steps/src/steps.mjs +41 -35
  397. package/es/components/steps/src/steps.mjs.map +1 -1
  398. package/es/components/steps/src/steps2.mjs +35 -41
  399. package/es/components/steps/src/steps2.mjs.map +1 -1
  400. package/es/components/tabs/index.mjs +1 -1
  401. package/es/components/tabs/src/tab-bar.mjs +11 -92
  402. package/es/components/tabs/src/tab-bar.mjs.map +1 -1
  403. package/es/components/tabs/src/tab-bar2.mjs +92 -11
  404. package/es/components/tabs/src/tab-bar2.mjs.map +1 -1
  405. package/es/components/tabs/src/tab-nav.mjs +1 -1
  406. package/es/components/tooltip/index.mjs +1 -1
  407. package/es/components/tooltip/src/tooltip.mjs +2 -2
  408. package/es/components/tooltip/src/tooltip2.mjs +5 -2
  409. package/es/components/tooltip/src/tooltip2.mjs.map +1 -1
  410. package/es/components/tooltip/src/trigger.mjs +81 -16
  411. package/es/components/tooltip/src/trigger.mjs.map +1 -1
  412. package/es/components/tooltip/src/trigger2.mjs +16 -81
  413. package/es/components/tooltip/src/trigger2.mjs.map +1 -1
  414. package/es/components/transfer/src/composables/use-check.mjs +1 -1
  415. package/es/components/transfer/src/transfer-panel.mjs +130 -19
  416. package/es/components/transfer/src/transfer-panel.mjs.map +1 -1
  417. package/es/components/transfer/src/transfer-panel2.mjs +19 -130
  418. package/es/components/transfer/src/transfer-panel2.mjs.map +1 -1
  419. package/es/components/transfer/src/transfer2.mjs +1 -1
  420. package/es/index.mjs +19 -19
  421. package/es/version.d.ts +1 -1
  422. package/es/version.mjs +1 -1
  423. package/es/version.mjs.map +1 -1
  424. package/lib/components/autocomplete/index.js +2 -2
  425. package/lib/components/autocomplete/src/autocomplete.js +443 -60
  426. package/lib/components/autocomplete/src/autocomplete.js.map +1 -1
  427. package/lib/components/autocomplete/src/autocomplete2.js +60 -443
  428. package/lib/components/autocomplete/src/autocomplete2.js.map +1 -1
  429. package/lib/components/badge/index.js +2 -2
  430. package/lib/components/badge/src/badge.js +71 -32
  431. package/lib/components/badge/src/badge.js.map +1 -1
  432. package/lib/components/badge/src/badge2.js +32 -71
  433. package/lib/components/badge/src/badge2.js.map +1 -1
  434. package/lib/components/breadcrumb/index.js +2 -2
  435. package/lib/components/breadcrumb/src/breadcrumb-item.js +56 -8
  436. package/lib/components/breadcrumb/src/breadcrumb-item.js.map +1 -1
  437. package/lib/components/breadcrumb/src/breadcrumb-item2.js +8 -56
  438. package/lib/components/breadcrumb/src/breadcrumb-item2.js.map +1 -1
  439. package/lib/components/card/index.js +2 -2
  440. package/lib/components/card/src/card.js +48 -24
  441. package/lib/components/card/src/card.js.map +1 -1
  442. package/lib/components/card/src/card2.js +24 -48
  443. package/lib/components/card/src/card2.js.map +1 -1
  444. package/lib/components/carousel/index.js +2 -2
  445. package/lib/components/carousel/src/carousel-item.js +69 -7
  446. package/lib/components/carousel/src/carousel-item.js.map +1 -1
  447. package/lib/components/carousel/src/carousel-item2.js +7 -69
  448. package/lib/components/carousel/src/carousel-item2.js.map +1 -1
  449. package/lib/components/cascader-panel/src/index.js +1 -1
  450. package/lib/components/cascader-panel/src/menu.js +1 -1
  451. package/lib/components/cascader-panel/src/node.js +177 -115
  452. package/lib/components/cascader-panel/src/node.js.map +1 -1
  453. package/lib/components/cascader-panel/src/node2.js +115 -177
  454. package/lib/components/cascader-panel/src/node2.js.map +1 -1
  455. package/lib/components/cascader-panel/src/store.js +1 -1
  456. package/lib/components/checkbox/index.js +2 -2
  457. package/lib/components/checkbox/src/checkbox-button.js +1 -1
  458. package/lib/components/checkbox/src/checkbox-group2.js +1 -1
  459. package/lib/components/checkbox/src/checkbox.js +64 -111
  460. package/lib/components/checkbox/src/checkbox.js.map +1 -1
  461. package/lib/components/checkbox/src/checkbox2.js +111 -64
  462. package/lib/components/checkbox/src/checkbox2.js.map +1 -1
  463. package/lib/components/collection/index.js +1 -1
  464. package/lib/components/collection/src/collection.js +9 -62
  465. package/lib/components/collection/src/collection.js.map +1 -1
  466. package/lib/components/collection/src/collection2.js +62 -9
  467. package/lib/components/collection/src/collection2.js.map +1 -1
  468. package/lib/components/dialog/src/dialog-content.js +38 -88
  469. package/lib/components/dialog/src/dialog-content.js.map +1 -1
  470. package/lib/components/dialog/src/dialog-content2.js +88 -38
  471. package/lib/components/dialog/src/dialog-content2.js.map +1 -1
  472. package/lib/components/dialog/src/dialog.js +1 -1
  473. package/lib/components/dialog/src/dialog2.js +1 -1
  474. package/lib/components/dropdown/src/dropdown-item-impl.js +1 -1
  475. package/lib/components/dropdown/src/dropdown.js +2 -2
  476. package/lib/components/focus-trap/src/focus-trap.js +2 -0
  477. package/lib/components/focus-trap/src/focus-trap.js.map +1 -1
  478. package/lib/components/icon/index.js +2 -2
  479. package/lib/components/icon/src/icon.js +8 -35
  480. package/lib/components/icon/src/icon.js.map +1 -1
  481. package/lib/components/icon/src/icon2.js +35 -8
  482. package/lib/components/icon/src/icon2.js.map +1 -1
  483. package/lib/components/index.js +19 -19
  484. package/lib/components/input/index.js +2 -2
  485. package/lib/components/input/src/input.js +480 -122
  486. package/lib/components/input/src/input.js.map +1 -1
  487. package/lib/components/input/src/input2.js +122 -480
  488. package/lib/components/input/src/input2.js.map +1 -1
  489. package/lib/components/mention/src/mention.js +1 -1
  490. package/lib/components/mention/src/mention2.js +1 -1
  491. package/lib/components/page-header/index.js +2 -2
  492. package/lib/components/page-header/src/page-header.js +17 -97
  493. package/lib/components/page-header/src/page-header.js.map +1 -1
  494. package/lib/components/page-header/src/page-header2.js +97 -17
  495. package/lib/components/page-header/src/page-header2.js.map +1 -1
  496. package/lib/components/popconfirm/index.js +2 -2
  497. package/lib/components/popconfirm/src/popconfirm.js +135 -51
  498. package/lib/components/popconfirm/src/popconfirm.js.map +1 -1
  499. package/lib/components/popconfirm/src/popconfirm2.js +51 -135
  500. package/lib/components/popconfirm/src/popconfirm2.js.map +1 -1
  501. package/lib/components/popover/src/popover.js +1 -1
  502. package/lib/components/popper/index.js +2 -2
  503. package/lib/components/popper/src/composables/use-content.js +3 -0
  504. package/lib/components/popper/src/composables/use-content.js.map +1 -1
  505. package/lib/components/popper/src/composables/use-focus-trap.js +3 -0
  506. package/lib/components/popper/src/composables/use-focus-trap.js.map +1 -1
  507. package/lib/components/popper/src/content2.js +1 -0
  508. package/lib/components/popper/src/content2.js.map +1 -1
  509. package/lib/components/popper/src/popper.js +32 -25
  510. package/lib/components/popper/src/popper.js.map +1 -1
  511. package/lib/components/popper/src/popper2.js +25 -32
  512. package/lib/components/popper/src/popper2.js.map +1 -1
  513. package/lib/components/radio/index.js +2 -2
  514. package/lib/components/radio/src/radio-button.js +1 -1
  515. package/lib/components/radio/src/radio-group.js +1 -1
  516. package/lib/components/radio/src/radio-group2.js +1 -1
  517. package/lib/components/radio/src/radio.js +73 -36
  518. package/lib/components/radio/src/radio.js.map +1 -1
  519. package/lib/components/radio/src/radio2.js +36 -73
  520. package/lib/components/radio/src/radio2.js.map +1 -1
  521. package/lib/components/result/index.js +2 -2
  522. package/lib/components/result/src/result.js +32 -62
  523. package/lib/components/result/src/result.js.map +1 -1
  524. package/lib/components/result/src/result2.js +62 -32
  525. package/lib/components/result/src/result2.js.map +1 -1
  526. package/lib/components/roving-focus-group/src/roving-focus-group.js +1 -1
  527. package/lib/components/row/index.js +2 -2
  528. package/lib/components/row/src/row.js +30 -44
  529. package/lib/components/row/src/row.js.map +1 -1
  530. package/lib/components/row/src/row2.js +44 -30
  531. package/lib/components/row/src/row2.js.map +1 -1
  532. package/lib/components/scrollbar/index.js +1 -1
  533. package/lib/components/scrollbar/src/bar2.js +1 -1
  534. package/lib/components/scrollbar/src/thumb.js +139 -11
  535. package/lib/components/scrollbar/src/thumb.js.map +1 -1
  536. package/lib/components/scrollbar/src/thumb2.js +11 -139
  537. package/lib/components/scrollbar/src/thumb2.js.map +1 -1
  538. package/lib/components/select/index.js +2 -2
  539. package/lib/components/select/src/select.js +552 -152
  540. package/lib/components/select/src/select.js.map +1 -1
  541. package/lib/components/select/src/select2.js +152 -552
  542. package/lib/components/select/src/select2.js.map +1 -1
  543. package/lib/components/steps/index.js +2 -2
  544. package/lib/components/steps/src/steps.js +41 -36
  545. package/lib/components/steps/src/steps.js.map +1 -1
  546. package/lib/components/steps/src/steps2.js +36 -41
  547. package/lib/components/steps/src/steps2.js.map +1 -1
  548. package/lib/components/tabs/index.js +1 -1
  549. package/lib/components/tabs/src/tab-bar.js +11 -92
  550. package/lib/components/tabs/src/tab-bar.js.map +1 -1
  551. package/lib/components/tabs/src/tab-bar2.js +92 -11
  552. package/lib/components/tabs/src/tab-bar2.js.map +1 -1
  553. package/lib/components/tabs/src/tab-nav.js +1 -1
  554. package/lib/components/tooltip/index.js +1 -1
  555. package/lib/components/tooltip/src/tooltip.js +2 -2
  556. package/lib/components/tooltip/src/tooltip2.js +4 -1
  557. package/lib/components/tooltip/src/tooltip2.js.map +1 -1
  558. package/lib/components/tooltip/src/trigger.js +81 -16
  559. package/lib/components/tooltip/src/trigger.js.map +1 -1
  560. package/lib/components/tooltip/src/trigger2.js +16 -81
  561. package/lib/components/tooltip/src/trigger2.js.map +1 -1
  562. package/lib/components/transfer/src/composables/use-check.js +1 -1
  563. package/lib/components/transfer/src/transfer-panel.js +130 -21
  564. package/lib/components/transfer/src/transfer-panel.js.map +1 -1
  565. package/lib/components/transfer/src/transfer-panel2.js +21 -130
  566. package/lib/components/transfer/src/transfer-panel2.js.map +1 -1
  567. package/lib/components/transfer/src/transfer2.js +1 -1
  568. package/lib/index.js +19 -19
  569. package/lib/version.d.ts +1 -1
  570. package/lib/version.js +1 -1
  571. package/lib/version.js.map +1 -1
  572. package/package.json +2 -2
  573. package/theme-chalk/el-tabs.css +1 -1
  574. package/theme-chalk/index.css +1 -1
  575. package/theme-chalk/src/tabs.scss +8 -0
  576. package/web-types.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"select2.mjs","sources":["../../../../../../packages/components/select/src/select.vue"],"sourcesContent":["<template>\n <div\n ref=\"selectRef\"\n v-click-outside:[popperRef]=\"handleClickOutside\"\n :class=\"[nsSelect.b(), nsSelect.m(selectSize)]\"\n @[mouseEnterEventName]=\"states.inputHovering = true\"\n @mouseleave=\"states.inputHovering = false\"\n >\n <el-tooltip\n ref=\"tooltipRef\"\n :visible=\"dropdownMenuVisible\"\n :placement=\"placement\"\n :teleported=\"teleported\"\n :popper-class=\"[nsSelect.e('popper'), popperClass]\"\n :popper-style=\"popperStyle\"\n :popper-options=\"popperOptions\"\n :fallback-placements=\"fallbackPlacements\"\n :effect=\"effect\"\n pure\n trigger=\"click\"\n :transition=\"`${nsSelect.namespace.value}-zoom-in-top`\"\n :stop-popper-mouse-event=\"false\"\n :gpu-acceleration=\"false\"\n :persistent=\"persistent\"\n :append-to=\"appendTo\"\n :show-arrow=\"showArrow\"\n :offset=\"offset\"\n @before-show=\"handleMenuEnter\"\n @hide=\"states.isBeforeHide = false\"\n >\n <template #default>\n <div\n ref=\"wrapperRef\"\n :class=\"[\n nsSelect.e('wrapper'),\n nsSelect.is('focused', isFocused),\n nsSelect.is('hovering', states.inputHovering),\n nsSelect.is('filterable', filterable),\n nsSelect.is('disabled', selectDisabled),\n ]\"\n @click.prevent=\"toggleMenu\"\n >\n <div\n v-if=\"$slots.prefix\"\n ref=\"prefixRef\"\n :class=\"nsSelect.e('prefix')\"\n >\n <slot name=\"prefix\" />\n </div>\n <div\n ref=\"selectionRef\"\n :class=\"[\n nsSelect.e('selection'),\n nsSelect.is(\n 'near',\n multiple && !$slots.prefix && !!states.selected.length\n ),\n ]\"\n >\n <slot\n v-if=\"multiple\"\n name=\"tag\"\n :data=\"states.selected\"\n :delete-tag=\"deleteTag\"\n :select-disabled=\"selectDisabled\"\n >\n <div\n v-for=\"item in showTagList\"\n :key=\"getValueKey(item)\"\n :class=\"nsSelect.e('selected-item')\"\n >\n <el-tag\n :closable=\"!selectDisabled && !item.isDisabled\"\n :size=\"collapseTagSize\"\n :type=\"tagType\"\n :effect=\"tagEffect\"\n disable-transitions\n :style=\"tagStyle\"\n @close=\"deleteTag($event, item)\"\n >\n <span :class=\"nsSelect.e('tags-text')\">\n <slot\n name=\"label\"\n :index=\"item.index\"\n :label=\"item.currentLabel\"\n :value=\"item.value\"\n >\n {{ item.currentLabel }}\n </slot>\n </span>\n </el-tag>\n </div>\n\n <el-tooltip\n v-if=\"collapseTags && states.selected.length > maxCollapseTags\"\n ref=\"tagTooltipRef\"\n :disabled=\"dropdownMenuVisible || !collapseTagsTooltip\"\n :fallback-placements=\"['bottom', 'top', 'right', 'left']\"\n :effect=\"effect\"\n placement=\"bottom\"\n :popper-class=\"popperClass\"\n :popper-style=\"popperStyle\"\n :teleported=\"teleported\"\n >\n <template #default>\n <div\n ref=\"collapseItemRef\"\n :class=\"nsSelect.e('selected-item')\"\n >\n <el-tag\n :closable=\"false\"\n :size=\"collapseTagSize\"\n :type=\"tagType\"\n :effect=\"tagEffect\"\n disable-transitions\n :style=\"collapseTagStyle\"\n >\n <span :class=\"nsSelect.e('tags-text')\">\n + {{ states.selected.length - maxCollapseTags }}\n </span>\n </el-tag>\n </div>\n </template>\n <template #content>\n <div ref=\"tagMenuRef\" :class=\"nsSelect.e('selection')\">\n <div\n v-for=\"item in collapseTagList\"\n :key=\"getValueKey(item)\"\n :class=\"nsSelect.e('selected-item')\"\n >\n <el-tag\n class=\"in-tooltip\"\n :closable=\"!selectDisabled && !item.isDisabled\"\n :size=\"collapseTagSize\"\n :type=\"tagType\"\n :effect=\"tagEffect\"\n disable-transitions\n @close=\"deleteTag($event, item)\"\n >\n <span :class=\"nsSelect.e('tags-text')\">\n <slot\n name=\"label\"\n :index=\"item.index\"\n :label=\"item.currentLabel\"\n :value=\"item.value\"\n >\n {{ item.currentLabel }}\n </slot>\n </span>\n </el-tag>\n </div>\n </div>\n </template>\n </el-tooltip>\n </slot>\n <div\n :class=\"[\n nsSelect.e('selected-item'),\n nsSelect.e('input-wrapper'),\n nsSelect.is('hidden', !filterable || selectDisabled),\n ]\"\n >\n <input\n :id=\"inputId\"\n ref=\"inputRef\"\n v-model=\"states.inputValue\"\n type=\"text\"\n :name=\"name\"\n :class=\"[nsSelect.e('input'), nsSelect.is(selectSize)]\"\n :disabled=\"selectDisabled\"\n :autocomplete=\"autocomplete\"\n :style=\"inputStyle\"\n :tabindex=\"tabindex\"\n role=\"combobox\"\n :readonly=\"!filterable\"\n spellcheck=\"false\"\n :aria-activedescendant=\"hoverOption?.id || ''\"\n :aria-controls=\"contentId\"\n :aria-expanded=\"dropdownMenuVisible\"\n :aria-label=\"ariaLabel\"\n aria-autocomplete=\"none\"\n aria-haspopup=\"listbox\"\n @keydown=\"handleKeydown\"\n @compositionstart=\"handleCompositionStart\"\n @compositionupdate=\"handleCompositionUpdate\"\n @compositionend=\"handleCompositionEnd\"\n @input=\"onInput\"\n @click.stop=\"toggleMenu\"\n />\n <span\n v-if=\"filterable\"\n ref=\"calculatorRef\"\n aria-hidden=\"true\"\n :class=\"nsSelect.e('input-calculator')\"\n v-text=\"states.inputValue\"\n />\n </div>\n <div\n v-if=\"shouldShowPlaceholder\"\n :class=\"[\n nsSelect.e('selected-item'),\n nsSelect.e('placeholder'),\n nsSelect.is(\n 'transparent',\n !hasModelValue || (expanded && !states.inputValue)\n ),\n ]\"\n >\n <slot\n v-if=\"hasModelValue\"\n name=\"label\"\n :index=\"getOption(modelValue!).index\"\n :label=\"currentPlaceholder\"\n :value=\"modelValue\"\n >\n <span>{{ currentPlaceholder }}</span>\n </slot>\n <span v-else>{{ currentPlaceholder }}</span>\n </div>\n </div>\n <div ref=\"suffixRef\" :class=\"nsSelect.e('suffix')\">\n <el-icon\n v-if=\"iconComponent && !showClearBtn\"\n :class=\"[nsSelect.e('caret'), nsSelect.e('icon'), iconReverse]\"\n >\n <component :is=\"iconComponent\" />\n </el-icon>\n <el-icon\n v-if=\"showClearBtn && clearIcon\"\n :class=\"[\n nsSelect.e('caret'),\n nsSelect.e('icon'),\n nsSelect.e('clear'),\n ]\"\n @click=\"handleClearClick\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n <el-icon\n v-if=\"validateState && validateIcon && needStatusIcon\"\n :class=\"[\n nsInput.e('icon'),\n nsInput.e('validateIcon'),\n nsInput.is('loading', validateState === 'validating'),\n ]\"\n >\n <component :is=\"validateIcon\" />\n </el-icon>\n </div>\n </div>\n </template>\n <template #content>\n <el-select-menu ref=\"menuRef\">\n <div\n v-if=\"$slots.header\"\n :class=\"nsSelect.be('dropdown', 'header')\"\n @click.stop\n >\n <slot name=\"header\" />\n </div>\n <el-scrollbar\n v-show=\"states.options.size > 0 && !loading\"\n :id=\"contentId\"\n ref=\"scrollbarRef\"\n tag=\"ul\"\n :wrap-class=\"nsSelect.be('dropdown', 'wrap')\"\n :view-class=\"nsSelect.be('dropdown', 'list')\"\n :class=\"[nsSelect.is('empty', filteredOptionsCount === 0)]\"\n role=\"listbox\"\n :aria-label=\"ariaLabel\"\n aria-orientation=\"vertical\"\n @scroll=\"popupScroll\"\n >\n <el-option\n v-if=\"showNewOption\"\n :value=\"states.inputValue\"\n :created=\"true\"\n />\n <el-options>\n <slot>\n <template v-for=\"(option, index) in options\" :key=\"index\">\n <el-option-group\n v-if=\"getOptions(option)?.length\"\n :label=\"getLabel(option)\"\n :disabled=\"getDisabled(option)\"\n >\n <el-option\n v-for=\"item in getOptions(option)\"\n :key=\"getValue(item)\"\n v-bind=\"getOptionProps(item)\"\n />\n </el-option-group>\n <el-option v-else v-bind=\"getOptionProps(option)\" />\n </template>\n </slot>\n </el-options>\n </el-scrollbar>\n <div\n v-if=\"$slots.loading && loading\"\n :class=\"nsSelect.be('dropdown', 'loading')\"\n >\n <slot name=\"loading\" />\n </div>\n <div\n v-else-if=\"loading || filteredOptionsCount === 0\"\n :class=\"nsSelect.be('dropdown', 'empty')\"\n >\n <slot name=\"empty\">\n <span>{{ emptyText }}</span>\n </slot>\n </div>\n <div\n v-if=\"$slots.footer\"\n :class=\"nsSelect.be('dropdown', 'footer')\"\n @click.stop\n >\n <slot name=\"footer\" />\n </div>\n </el-select-menu>\n </template>\n </el-tooltip>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport {\n computed,\n defineComponent,\n getCurrentInstance,\n onBeforeUnmount,\n provide,\n reactive,\n toRefs,\n watch,\n} from 'vue'\nimport { ClickOutside } from '@element-plus/directives'\nimport ElTooltip from '@element-plus/components/tooltip'\nimport ElScrollbar from '@element-plus/components/scrollbar'\nimport ElTag from '@element-plus/components/tag'\nimport ElIcon from '@element-plus/components/icon'\nimport { CHANGE_EVENT, UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport { flattedChildren, isArray, isObject } from '@element-plus/utils'\nimport { useCalcInputWidth } from '@element-plus/hooks'\nimport { useProps } from '@element-plus/components/select-v2/src/useProps'\nimport ElOption from './option.vue'\nimport ElSelectMenu from './select-dropdown.vue'\nimport { useSelect } from './useSelect'\nimport { selectKey } from './token'\nimport ElOptions from './options'\nimport { selectProps } from './select'\nimport ElOptionGroup from './option-group.vue'\n\nimport type { AppConfig, AppContext, VNode } from 'vue'\nimport type { SelectContext } from './type'\n\nconst COMPONENT_NAME = 'ElSelect'\n\ntype WarnHandler = AppConfig['warnHandler']\n\ninterface WarnHandlerRecord {\n originalWarnHandler: WarnHandler\n handler: WarnHandler\n count: number\n}\n\nconst warnHandlerMap = new WeakMap<AppContext, WarnHandlerRecord>()\n\nconst createSelectWarnHandler = (appContext: AppContext): WarnHandler => {\n return (...args) => {\n // Overrides warnings about slots not being executable outside of a render function.\n // We call slot below just to simulate data when persist is false, this warning message should be ignored\n const message = args[0]\n if (\n !message ||\n (message.includes(\n 'Slot \"default\" invoked outside of the render function'\n ) &&\n args[2]?.includes('ElTreeSelect'))\n )\n return\n const original = warnHandlerMap.get(appContext)?.originalWarnHandler\n if (original) {\n original(...args)\n return\n }\n // eslint-disable-next-line no-console\n console.warn(...args)\n }\n}\n\nconst getWarnHandlerRecord = (appContext: AppContext): WarnHandlerRecord => {\n let record = warnHandlerMap.get(appContext)\n if (!record) {\n record = {\n originalWarnHandler: appContext.config.warnHandler,\n handler: createSelectWarnHandler(appContext),\n count: 0,\n }\n warnHandlerMap.set(appContext, record)\n }\n return record\n}\nexport default defineComponent({\n name: COMPONENT_NAME,\n componentName: COMPONENT_NAME,\n components: {\n ElSelectMenu,\n ElOption,\n ElOptions,\n ElOptionGroup,\n ElTag,\n ElScrollbar,\n ElTooltip,\n ElIcon,\n },\n directives: { ClickOutside },\n props: selectProps,\n emits: [\n UPDATE_MODEL_EVENT,\n CHANGE_EVENT,\n 'remove-tag',\n 'clear',\n 'visible-change',\n 'focus',\n 'blur',\n 'popup-scroll',\n ],\n\n setup(props, { emit, slots }) {\n const instance = getCurrentInstance()!\n const warnRecord = getWarnHandlerRecord(instance.appContext)\n warnRecord.count += 1\n instance.appContext.config.warnHandler = warnRecord.handler\n const modelValue = computed(() => {\n const { modelValue: rawModelValue, multiple } = props\n const fallback = multiple ? [] : undefined\n // When it is array, we check if this is multi-select.\n // Based on the result we get\n if (isArray(rawModelValue)) {\n return multiple ? rawModelValue : fallback\n }\n\n return multiple ? fallback : rawModelValue\n })\n\n const _props = reactive({\n ...toRefs(props),\n modelValue,\n })\n\n const API = useSelect(_props, emit)\n const { calculatorRef, inputStyle } = useCalcInputWidth()\n const { getLabel, getValue, getOptions, getDisabled } = useProps(props)\n\n const getOptionProps = (option: Record<string, any>) => ({\n label: getLabel(option),\n value: getValue(option),\n disabled: getDisabled(option),\n })\n\n const flatTreeSelectData = (data: any[]) => {\n return data.reduce((acc, item) => {\n acc.push(item)\n if (item.children && item.children.length > 0) {\n acc.push(...flatTreeSelectData(item.children))\n }\n return acc\n }, [])\n }\n\n const manuallyRenderSlots = (vnodes: VNode[] | undefined) => {\n // After option rendering is completed, the useSelect internal state can collect the value of each option.\n // If the persistent value is false, option will not be rendered by default, so in this case,\n // manually render and load option data here.\n const children = flattedChildren(vnodes || []) as VNode[]\n children.forEach((item) => {\n if (\n isObject(item) &&\n // @ts-expect-error\n (item.type.name === 'ElOption' || item.type.name === 'ElTree')\n ) {\n // @ts-expect-error\n const _name = item.type.name\n if (_name === 'ElTree') {\n // tree-select component is a special case.\n // So we need to handle it separately.\n const treeData = item.props?.data || []\n const flatData = flatTreeSelectData(treeData)\n flatData.forEach((treeItem: any) => {\n treeItem.currentLabel =\n treeItem.label ||\n (isObject(treeItem.value) ? '' : treeItem.value)\n API.onOptionCreate(treeItem)\n })\n } else if (_name === 'ElOption') {\n const obj = { ...item.props } as any\n obj.currentLabel =\n obj.label || (isObject(obj.value) ? '' : obj.value)\n API.onOptionCreate(obj)\n }\n }\n })\n }\n watch(\n () => [slots.default?.(), modelValue.value],\n () => {\n // When persistent is false and the dropdown is closed, the menu is unmounted.\n // We should always re-hydrate option data from slots so labels stay in sync\n // with dynamic option list updates. Skip only when persistent is true or\n // when the dropdown is currently expanded (mounted options will manage themselves).\n if (props.persistent || API.expanded.value) {\n // If persistent is true, we don't need to manually render slots.\n return\n }\n // Reset current options snapshot before re-collecting from slots.\n API.states.options.clear()\n manuallyRenderSlots(slots.default?.())\n },\n {\n immediate: true,\n }\n )\n\n provide(\n selectKey,\n reactive({\n props: _props,\n states: API.states,\n selectRef: API.selectRef,\n optionsArray: API.optionsArray,\n setSelected: API.setSelected,\n handleOptionSelect: API.handleOptionSelect,\n onOptionCreate: API.onOptionCreate,\n onOptionDestroy: API.onOptionDestroy,\n }) satisfies SelectContext\n )\n\n const selectedLabel = computed(() => {\n if (!props.multiple) {\n return API.states.selectedLabel\n }\n return API.states.selected.map((i) => i.currentLabel as string)\n })\n\n onBeforeUnmount(() => {\n // https://github.com/element-plus/element-plus/issues/21279\n const record = warnHandlerMap.get(instance.appContext)\n if (!record) return\n record.count -= 1\n if (record.count <= 0) {\n instance.appContext.config.warnHandler = record.originalWarnHandler\n warnHandlerMap.delete(instance.appContext)\n }\n })\n\n return {\n ...API,\n modelValue,\n selectedLabel,\n calculatorRef,\n inputStyle,\n getLabel,\n getValue,\n getOptions,\n getDisabled,\n getOptionProps,\n }\n },\n})\n</script>\n"],"names":["ElOption","ElOptionGroup","_resolveComponent","_createVNode","_withCtx","_createElementVNode","_normalizeClass","_withModifiers","_openBlock","_createElementBlock","_renderSlot","_createCommentVNode","_Fragment","_renderList","_normalizeStyle","_createBlock","_toDisplayString","_vModelText","_resolveDynamicComponent","_withDirectives","_mergeProps","_normalizeProps"],"mappings":"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"}
1
+ {"version":3,"file":"select2.mjs","sources":["../../../../../../packages/components/select/src/select.ts"],"sourcesContent":["import { placements } from '@popperjs/core'\nimport { scrollbarEmits } from '@element-plus/components/scrollbar'\nimport {\n useAriaProps,\n useEmptyValuesProps,\n useSizeProp,\n} from '@element-plus/hooks'\nimport { buildProps, definePropType, iconPropType } from '@element-plus/utils'\nimport { useTooltipContentProps } from '@element-plus/components/tooltip'\nimport { ArrowDown, CircleClose } from '@element-plus/icons-vue'\nimport { tagProps } from '@element-plus/components/tag'\nimport { CHANGE_EVENT, UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport { defaultProps } from '@element-plus/components/select-v2/src/useProps'\n\nimport type { EmitFn } from '@element-plus/utils'\nimport type {\n CSSProperties,\n ExtractPropTypes,\n __ExtractPublicPropTypes,\n} from 'vue'\nimport type Select from './select.vue'\nimport type {\n Options,\n Placement,\n PopperEffect,\n} from '@element-plus/components/popper'\nimport type { OptionValue } from './type'\nimport type { Props } from '@element-plus/components/select-v2/src/useProps'\n\nexport const selectProps = buildProps({\n /**\n * @description the name attribute of select input\n */\n name: String,\n /**\n * @description native input id\n */\n id: String,\n /**\n * @description binding value\n */\n modelValue: {\n type: definePropType<OptionValue | OptionValue[] | null>([\n Array,\n String,\n Number,\n Boolean,\n Object,\n ]),\n default: undefined,\n },\n /**\n * @description the autocomplete attribute of select input\n */\n autocomplete: {\n type: String,\n default: 'off',\n },\n /**\n * @description for non-filterable Select, this prop decides if the option menu pops up when the input is focused\n */\n automaticDropdown: Boolean,\n /**\n * @description size of Input\n */\n size: useSizeProp,\n /**\n * @description tooltip theme, built-in theme: `dark` / `light`\n */\n effect: {\n type: definePropType<PopperEffect>(String),\n default: 'light',\n },\n /**\n * @description whether Select is disabled\n */\n disabled: {\n type: Boolean,\n default: undefined,\n },\n /**\n * @description whether select can be cleared\n */\n clearable: Boolean,\n /**\n * @description whether Select is filterable\n */\n filterable: Boolean,\n /**\n * @description whether creating new items is allowed. To use this, `filterable` must be true\n */\n allowCreate: Boolean,\n /**\n * @description whether Select is loading data from server\n */\n loading: Boolean,\n /**\n * @description custom class name for Select's dropdown\n */\n popperClass: {\n type: String,\n default: '',\n },\n /**\n * @description custom style for Select's dropdown\n */\n popperStyle: {\n type: definePropType<string | CSSProperties>([String, Object]),\n },\n /**\n * @description [popper.js](https://popper.js.org/docs/v2/) parameters\n */\n popperOptions: {\n type: definePropType<Partial<Options>>(Object),\n default: () => ({}) as Partial<Options>,\n },\n /**\n * @description whether options are loaded from server\n */\n remote: Boolean,\n /**\n * @description debounce delay during remote search, in milliseconds\n */\n debounce: {\n type: Number,\n default: 300,\n },\n /**\n * @description displayed text while loading data from server, default is 'Loading'\n */\n loadingText: String,\n /**\n * @description displayed text when no data matches the filtering query, you can also use slot `empty`, default is 'No matching data'\n */\n noMatchText: String,\n /**\n * @description displayed text when there is no options, you can also use slot `empty`, default is 'No data'\n */\n noDataText: String,\n /**\n * @description function that gets called when the input value changes. Its parameter is the current input value. To use this, `filterable` must be true\n */\n remoteMethod: {\n type: definePropType<(query: string) => void>(Function),\n },\n /**\n * @description custom filter method, the first parameter is the current input value. To use this, `filterable` must be true\n */\n filterMethod: {\n type: definePropType<(query: string) => void>(Function),\n },\n /**\n * @description whether multiple-select is activated\n */\n multiple: Boolean,\n /**\n * @description maximum number of options user can select when `multiple` is `true`. No limit when set to 0\n */\n multipleLimit: {\n type: Number,\n default: 0,\n },\n /**\n * @description placeholder, default is 'Select'\n */\n placeholder: {\n type: String,\n },\n /**\n * @description select first matching option on enter key. Use with `filterable` or `remote`\n */\n defaultFirstOption: Boolean,\n /**\n * @description when `multiple` and `filter` is true, whether to reserve current keyword after selecting an option\n */\n reserveKeyword: {\n type: Boolean,\n default: true,\n },\n /**\n * @description unique identity key name for value, required when value is an object\n */\n valueKey: {\n type: String,\n default: 'value',\n },\n /**\n * @description whether to collapse tags to a text when multiple selecting\n */\n collapseTags: Boolean,\n /**\n * @description whether show all selected tags when mouse hover text of collapse-tags. To use this, `collapse-tags` must be true\n */\n collapseTagsTooltip: Boolean,\n /**\n * @description the max tags number to be shown. To use this, `collapse-tags` must be true\n */\n maxCollapseTags: {\n type: Number,\n default: 1,\n },\n /**\n * @description whether select dropdown is teleported, if `true` it will be teleported to where `append-to` sets\n */\n teleported: useTooltipContentProps.teleported,\n /**\n * @description when select dropdown is inactive and `persistent` is `false`, select dropdown will be destroyed\n */\n persistent: {\n type: Boolean,\n default: true,\n },\n /**\n * @description custom clear icon component\n */\n clearIcon: {\n type: iconPropType,\n default: CircleClose,\n },\n /**\n * @description whether the width of the dropdown is the same as the input\n */\n fitInputWidth: Boolean,\n /**\n * @description custom suffix icon component\n */\n suffixIcon: {\n type: iconPropType,\n default: ArrowDown,\n },\n /**\n * @description tag type\n */\n\n tagType: { ...tagProps.type, default: 'info' },\n /**\n * @description tag effect\n */\n tagEffect: { ...tagProps.effect, default: 'light' },\n /**\n * @description whether to trigger form validation\n */\n validateEvent: {\n type: Boolean,\n default: true,\n },\n /**\n * @description in remote search method show suffix icon\n */\n remoteShowSuffix: Boolean,\n /**\n * @description determines whether the arrow is displayed\n */\n showArrow: {\n type: Boolean,\n default: true,\n },\n /**\n * @description offset of the dropdown\n */\n offset: {\n type: Number,\n default: 12,\n },\n /**\n * @description position of dropdown\n */\n placement: {\n type: definePropType<Placement>(String),\n values: placements,\n default: 'bottom-start',\n },\n /**\n * @description list of possible positions for dropdown\n */\n fallbackPlacements: {\n type: definePropType<Placement[]>(Array),\n default: ['bottom-start', 'top-start', 'right', 'left'],\n },\n /**\n * @description tabindex for input\n */\n tabindex: {\n type: [String, Number],\n default: 0,\n },\n /**\n * @description which element the selection dropdown appends to\n */\n appendTo: useTooltipContentProps.appendTo,\n options: {\n type: definePropType<Record<string, any>[]>(Array),\n },\n props: {\n type: definePropType<SelectOptionProps>(Object),\n default: () => defaultProps,\n },\n ...useEmptyValuesProps,\n ...useAriaProps(['ariaLabel']),\n})\n/* eslint-disable @typescript-eslint/no-unused-vars */\nexport const selectEmits = {\n [UPDATE_MODEL_EVENT]: (val: SelectProps['modelValue']) => true,\n [CHANGE_EVENT]: (val: SelectProps['modelValue']) => true,\n 'popup-scroll': scrollbarEmits.scroll,\n 'remove-tag': (val: unknown) => true,\n 'visible-change': (visible: boolean) => true,\n focus: (evt: FocusEvent) => evt instanceof FocusEvent,\n blur: (evt: FocusEvent) => evt instanceof FocusEvent,\n clear: () => true,\n}\n/* eslint-enable @typescript-eslint/no-unused-vars */\n\nexport type SelectProps = ExtractPropTypes<typeof selectProps>\nexport type SelectPropsPublic = __ExtractPublicPropTypes<typeof selectProps>\nexport type SelectEmits = EmitFn<typeof selectEmits>\nexport type SelectInstance = InstanceType<typeof Select> & unknown\nexport type SelectOptionProps = Props\n"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
- import Steps from './src/steps2.mjs';
1
+ import Steps from './src/steps.mjs';
2
2
  import Step from './src/item2.mjs';
3
3
  export { stepProps } from './src/item.mjs';
4
- export { stepsEmits, stepsProps } from './src/steps.mjs';
4
+ export { stepsEmits, stepsProps } from './src/steps2.mjs';
5
5
  export { STEPS_INJECTION_KEY } from './src/tokens.mjs';
6
6
  import { withInstall, withNoopInstall } from '../../utils/vue/install.mjs';
7
7
 
@@ -1,41 +1,47 @@
1
- import { buildProps } from '../../../utils/vue/props/runtime.mjs';
1
+ import { defineComponent, getCurrentInstance, watch, provide, openBlock, createElementBlock, normalizeClass, unref, renderSlot, createVNode } from 'vue';
2
+ import { stepsProps, stepsEmits } from './steps2.mjs';
3
+ import { STEPS_INJECTION_KEY } from './tokens.mjs';
4
+ import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
5
+ import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
6
+ import { useOrderedChildren } from '../../../hooks/use-ordered-children/index.mjs';
2
7
  import { CHANGE_EVENT } from '../../../constants/event.mjs';
3
- import { isNumber } from '../../../utils/types.mjs';
4
8
 
5
- const stepsProps = buildProps({
6
- space: {
7
- type: [Number, String],
8
- default: ""
9
- },
10
- active: {
11
- type: Number,
12
- default: 0
13
- },
14
- direction: {
15
- type: String,
16
- default: "horizontal",
17
- values: ["horizontal", "vertical"]
18
- },
19
- alignCenter: {
20
- type: Boolean
21
- },
22
- simple: {
23
- type: Boolean
24
- },
25
- finishStatus: {
26
- type: String,
27
- values: ["wait", "process", "finish", "error", "success"],
28
- default: "finish"
29
- },
30
- processStatus: {
31
- type: String,
32
- values: ["wait", "process", "finish", "error", "success"],
33
- default: "process"
9
+ const __default__ = defineComponent({
10
+ name: "ElSteps"
11
+ });
12
+ const _sfc_main = /* @__PURE__ */ defineComponent({
13
+ ...__default__,
14
+ props: stepsProps,
15
+ emits: stepsEmits,
16
+ setup(__props, { emit }) {
17
+ const props = __props;
18
+ const ns = useNamespace("steps");
19
+ const {
20
+ children: steps,
21
+ addChild: addStep,
22
+ removeChild: removeStep,
23
+ ChildrenSorter: StepsSorter
24
+ } = useOrderedChildren(getCurrentInstance(), "ElStep");
25
+ watch(steps, () => {
26
+ steps.value.forEach((instance, index) => {
27
+ instance.setIndex(index);
28
+ });
29
+ });
30
+ provide(STEPS_INJECTION_KEY, { props, steps, addStep, removeStep });
31
+ watch(() => props.active, (newVal, oldVal) => {
32
+ emit(CHANGE_EVENT, newVal, oldVal);
33
+ });
34
+ return (_ctx, _cache) => {
35
+ return openBlock(), createElementBlock("div", {
36
+ class: normalizeClass([unref(ns).b(), unref(ns).m(_ctx.simple ? "simple" : _ctx.direction)])
37
+ }, [
38
+ renderSlot(_ctx.$slots, "default"),
39
+ createVNode(unref(StepsSorter))
40
+ ], 2);
41
+ };
34
42
  }
35
43
  });
36
- const stepsEmits = {
37
- [CHANGE_EVENT]: (newVal, oldVal) => [newVal, oldVal].every(isNumber)
38
- };
44
+ var Steps = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "steps.vue"]]);
39
45
 
40
- export { stepsEmits, stepsProps };
46
+ export { Steps as default };
41
47
  //# sourceMappingURL=steps.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"steps.mjs","sources":["../../../../../../packages/components/steps/src/steps.ts"],"sourcesContent":["import { CHANGE_EVENT } from '@element-plus/constants'\nimport { buildProps, isNumber } from '@element-plus/utils'\n\nimport type Steps from './steps.vue'\nimport type { ExtractPropTypes, __ExtractPublicPropTypes } from 'vue'\n\nexport const stepsProps = buildProps({\n /**\n * @description the spacing of each step, will be responsive if omitted. Supports percentage.\n */\n space: {\n type: [Number, String],\n default: '',\n },\n /**\n * @description current activation step\n */\n active: {\n type: Number,\n default: 0,\n },\n /**\n * @description display direction\n */\n direction: {\n type: String,\n default: 'horizontal',\n values: ['horizontal', 'vertical'],\n },\n /**\n * @description center title and description\n */\n alignCenter: {\n type: Boolean,\n },\n /**\n * @description whether to apply simple theme\n */\n simple: {\n type: Boolean,\n },\n /**\n * @description status of end step\n */\n finishStatus: {\n type: String,\n values: ['wait', 'process', 'finish', 'error', 'success'],\n default: 'finish',\n },\n /**\n * @description status of current step\n */\n processStatus: {\n type: String,\n values: ['wait', 'process', 'finish', 'error', 'success'],\n default: 'process',\n },\n} as const)\nexport type StepsProps = ExtractPropTypes<typeof stepsProps>\nexport type StepsPropsPublic = __ExtractPublicPropTypes<typeof stepsProps>\n\nexport const stepsEmits = {\n [CHANGE_EVENT]: (newVal: number, oldVal: number) =>\n [newVal, oldVal].every(isNumber),\n}\nexport type StepsEmits = typeof stepsEmits\n\nexport type StepsInstance = InstanceType<typeof Steps> & unknown\n"],"names":[],"mappings":";;;;AAEY,MAAC,UAAU,GAAG,UAAU,CAAC;AACrC,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;AAC1B,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,CAAC;AACd,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,YAAY;AACzB,IAAI,MAAM,EAAE,CAAC,YAAY,EAAE,UAAU,CAAC;AACtC,GAAG;AACH,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,OAAO;AACjB,GAAG;AACH,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,OAAO;AACjB,GAAG;AACH,EAAE,YAAY,EAAE;AAChB,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,CAAC;AAC7D,IAAI,OAAO,EAAE,QAAQ;AACrB,GAAG;AACH,EAAE,aAAa,EAAE;AACjB,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,CAAC;AAC7D,IAAI,OAAO,EAAE,SAAS;AACtB,GAAG;AACH,CAAC,EAAE;AACS,MAAC,UAAU,GAAG;AAC1B,EAAE,CAAC,YAAY,GAAG,CAAC,MAAM,EAAE,MAAM,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC;AACtE;;;;"}
1
+ {"version":3,"file":"steps.mjs","sources":["../../../../../../packages/components/steps/src/steps.vue"],"sourcesContent":["<template>\n <div :class=\"[ns.b(), ns.m(simple ? 'simple' : direction)]\">\n <slot />\n <steps-sorter />\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { getCurrentInstance, provide, watch } from 'vue'\nimport { CHANGE_EVENT } from '@element-plus/constants'\nimport { useNamespace, useOrderedChildren } from '@element-plus/hooks'\nimport { stepsEmits, stepsProps } from './steps'\nimport { STEPS_INJECTION_KEY } from './tokens'\n\nimport type { StepItemState } from './item.vue'\n\ndefineOptions({\n name: 'ElSteps',\n})\n\nconst props = defineProps(stepsProps)\nconst emit = defineEmits(stepsEmits)\n\nconst ns = useNamespace('steps')\nconst {\n children: steps,\n addChild: addStep,\n removeChild: removeStep,\n ChildrenSorter: StepsSorter,\n} = useOrderedChildren<StepItemState>(getCurrentInstance()!, 'ElStep')\n\nwatch(steps, () => {\n steps.value.forEach((instance: StepItemState, index: number) => {\n instance.setIndex(index)\n })\n})\n\nprovide(STEPS_INJECTION_KEY, { props, steps, addStep, removeStep })\n\nwatch(\n () => props.active,\n (newVal: number, oldVal: number) => {\n emit(CHANGE_EVENT, newVal, oldVal)\n }\n)\n</script>\n"],"names":["_openBlock","_createElementBlock","_normalizeClass","_unref"],"mappings":";;;;;;;;mCAgBc,CAAA;AAAA,EACZ,IAAM,EAAA,SAAA;AACR,CAAA,CAAA,CAAA;;;;;;;AAKA,IAAM,MAAA,EAAA,GAAK,aAAa,OAAO,CAAA,CAAA;AAC/B,IAAM,MAAA;AAAA,MACJ,QAAU,EAAA,KAAA;AAAA,MACV,QAAU,EAAA,OAAA;AAAA,MACV,WAAa,EAAA,UAAA;AAAA,MACb,cAAgB,EAAA,WAAA;AAAA,KACd,GAAA,kBAAA,CAAkC,kBAAmB,EAAA,EAAI,QAAQ,CAAA,CAAA;AAErE,IAAA,KAAA,CAAM,OAAO,MAAM;AACjB,MAAA,KAAA,CAAM,KAAM,CAAA,OAAA,CAAQ,CAAC,QAAA,EAAyB,KAAkB,KAAA;AAC9D,QAAA,QAAA,CAAS,SAAS,KAAK,CAAA,CAAA;AAAA,OACxB,CAAA,CAAA;AAAA,KACF,CAAA,CAAA;AAED,IAAA,OAAA,CAAQ,qBAAqB,EAAE,KAAA,EAAO,KAAO,EAAA,OAAA,EAAS,YAAY,CAAA,CAAA;AAElE,IAAA,KAAA,CAAA,MAAA,KAAA,CAAA,MAAA,EAAA,CAAA,MAAA,EAAA,MAAA,KAAA;AAAA,MACE,iBAAY,EAAA,MAAA,EAAA,MAAA,CAAA,CAAA;AAAA,KACZ,CAAA,CAAC;AACC,IAAK,OAAA,CAAA,IAAA,EAAA,MAAA;AAA4B,MACnC,OAAAA,SAAA,EAAA,EAAAC,kBAAA,CAAA,KAAA,EAAA;AAAA,QACF,KAAA,EAAAC,cAAA,CAAA,CAAAC,KAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,EAAAA,KAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,IAAA,CAAA,MAAA,GAAA,QAAA,GAAA,IAAA,CAAA,SAAA,CAAA,CAAA,CAAA;;;;;;;;;;;;"}
@@ -1,47 +1,41 @@
1
- import { defineComponent, getCurrentInstance, watch, provide, openBlock, createElementBlock, normalizeClass, unref, renderSlot, createVNode } from 'vue';
2
- import { stepsProps, stepsEmits } from './steps.mjs';
3
- import { STEPS_INJECTION_KEY } from './tokens.mjs';
4
- import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
5
- import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
6
- import { useOrderedChildren } from '../../../hooks/use-ordered-children/index.mjs';
1
+ import { buildProps } from '../../../utils/vue/props/runtime.mjs';
7
2
  import { CHANGE_EVENT } from '../../../constants/event.mjs';
3
+ import { isNumber } from '../../../utils/types.mjs';
8
4
 
9
- const __default__ = defineComponent({
10
- name: "ElSteps"
11
- });
12
- const _sfc_main = /* @__PURE__ */ defineComponent({
13
- ...__default__,
14
- props: stepsProps,
15
- emits: stepsEmits,
16
- setup(__props, { emit }) {
17
- const props = __props;
18
- const ns = useNamespace("steps");
19
- const {
20
- children: steps,
21
- addChild: addStep,
22
- removeChild: removeStep,
23
- ChildrenSorter: StepsSorter
24
- } = useOrderedChildren(getCurrentInstance(), "ElStep");
25
- watch(steps, () => {
26
- steps.value.forEach((instance, index) => {
27
- instance.setIndex(index);
28
- });
29
- });
30
- provide(STEPS_INJECTION_KEY, { props, steps, addStep, removeStep });
31
- watch(() => props.active, (newVal, oldVal) => {
32
- emit(CHANGE_EVENT, newVal, oldVal);
33
- });
34
- return (_ctx, _cache) => {
35
- return openBlock(), createElementBlock("div", {
36
- class: normalizeClass([unref(ns).b(), unref(ns).m(_ctx.simple ? "simple" : _ctx.direction)])
37
- }, [
38
- renderSlot(_ctx.$slots, "default"),
39
- createVNode(unref(StepsSorter))
40
- ], 2);
41
- };
5
+ const stepsProps = buildProps({
6
+ space: {
7
+ type: [Number, String],
8
+ default: ""
9
+ },
10
+ active: {
11
+ type: Number,
12
+ default: 0
13
+ },
14
+ direction: {
15
+ type: String,
16
+ default: "horizontal",
17
+ values: ["horizontal", "vertical"]
18
+ },
19
+ alignCenter: {
20
+ type: Boolean
21
+ },
22
+ simple: {
23
+ type: Boolean
24
+ },
25
+ finishStatus: {
26
+ type: String,
27
+ values: ["wait", "process", "finish", "error", "success"],
28
+ default: "finish"
29
+ },
30
+ processStatus: {
31
+ type: String,
32
+ values: ["wait", "process", "finish", "error", "success"],
33
+ default: "process"
42
34
  }
43
35
  });
44
- var Steps = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "steps.vue"]]);
36
+ const stepsEmits = {
37
+ [CHANGE_EVENT]: (newVal, oldVal) => [newVal, oldVal].every(isNumber)
38
+ };
45
39
 
46
- export { Steps as default };
40
+ export { stepsEmits, stepsProps };
47
41
  //# sourceMappingURL=steps2.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"steps2.mjs","sources":["../../../../../../packages/components/steps/src/steps.vue"],"sourcesContent":["<template>\n <div :class=\"[ns.b(), ns.m(simple ? 'simple' : direction)]\">\n <slot />\n <steps-sorter />\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { getCurrentInstance, provide, watch } from 'vue'\nimport { CHANGE_EVENT } from '@element-plus/constants'\nimport { useNamespace, useOrderedChildren } from '@element-plus/hooks'\nimport { stepsEmits, stepsProps } from './steps'\nimport { STEPS_INJECTION_KEY } from './tokens'\n\nimport type { StepItemState } from './item.vue'\n\ndefineOptions({\n name: 'ElSteps',\n})\n\nconst props = defineProps(stepsProps)\nconst emit = defineEmits(stepsEmits)\n\nconst ns = useNamespace('steps')\nconst {\n children: steps,\n addChild: addStep,\n removeChild: removeStep,\n ChildrenSorter: StepsSorter,\n} = useOrderedChildren<StepItemState>(getCurrentInstance()!, 'ElStep')\n\nwatch(steps, () => {\n steps.value.forEach((instance: StepItemState, index: number) => {\n instance.setIndex(index)\n })\n})\n\nprovide(STEPS_INJECTION_KEY, { props, steps, addStep, removeStep })\n\nwatch(\n () => props.active,\n (newVal: number, oldVal: number) => {\n emit(CHANGE_EVENT, newVal, oldVal)\n }\n)\n</script>\n"],"names":["_openBlock","_createElementBlock","_normalizeClass","_unref"],"mappings":";;;;;;;;mCAgBc,CAAA;AAAA,EACZ,IAAM,EAAA,SAAA;AACR,CAAA,CAAA,CAAA;;;;;;;AAKA,IAAM,MAAA,EAAA,GAAK,aAAa,OAAO,CAAA,CAAA;AAC/B,IAAM,MAAA;AAAA,MACJ,QAAU,EAAA,KAAA;AAAA,MACV,QAAU,EAAA,OAAA;AAAA,MACV,WAAa,EAAA,UAAA;AAAA,MACb,cAAgB,EAAA,WAAA;AAAA,KACd,GAAA,kBAAA,CAAkC,kBAAmB,EAAA,EAAI,QAAQ,CAAA,CAAA;AAErE,IAAA,KAAA,CAAM,OAAO,MAAM;AACjB,MAAA,KAAA,CAAM,KAAM,CAAA,OAAA,CAAQ,CAAC,QAAA,EAAyB,KAAkB,KAAA;AAC9D,QAAA,QAAA,CAAS,SAAS,KAAK,CAAA,CAAA;AAAA,OACxB,CAAA,CAAA;AAAA,KACF,CAAA,CAAA;AAED,IAAA,OAAA,CAAQ,qBAAqB,EAAE,KAAA,EAAO,KAAO,EAAA,OAAA,EAAS,YAAY,CAAA,CAAA;AAElE,IAAA,KAAA,CAAA,MAAA,KAAA,CAAA,MAAA,EAAA,CAAA,MAAA,EAAA,MAAA,KAAA;AAAA,MACE,iBAAY,EAAA,MAAA,EAAA,MAAA,CAAA,CAAA;AAAA,KACZ,CAAA,CAAC;AACC,IAAK,OAAA,CAAA,IAAA,EAAA,MAAA;AAA4B,MACnC,OAAAA,SAAA,EAAA,EAAAC,kBAAA,CAAA,KAAA,EAAA;AAAA,QACF,KAAA,EAAAC,cAAA,CAAA,CAAAC,KAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,EAAAA,KAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,IAAA,CAAA,MAAA,GAAA,QAAA,GAAA,IAAA,CAAA,SAAA,CAAA,CAAA,CAAA;;;;;;;;;;;;"}
1
+ {"version":3,"file":"steps2.mjs","sources":["../../../../../../packages/components/steps/src/steps.ts"],"sourcesContent":["import { CHANGE_EVENT } from '@element-plus/constants'\nimport { buildProps, isNumber } from '@element-plus/utils'\n\nimport type Steps from './steps.vue'\nimport type { ExtractPropTypes, __ExtractPublicPropTypes } from 'vue'\n\nexport const stepsProps = buildProps({\n /**\n * @description the spacing of each step, will be responsive if omitted. Supports percentage.\n */\n space: {\n type: [Number, String],\n default: '',\n },\n /**\n * @description current activation step\n */\n active: {\n type: Number,\n default: 0,\n },\n /**\n * @description display direction\n */\n direction: {\n type: String,\n default: 'horizontal',\n values: ['horizontal', 'vertical'],\n },\n /**\n * @description center title and description\n */\n alignCenter: {\n type: Boolean,\n },\n /**\n * @description whether to apply simple theme\n */\n simple: {\n type: Boolean,\n },\n /**\n * @description status of end step\n */\n finishStatus: {\n type: String,\n values: ['wait', 'process', 'finish', 'error', 'success'],\n default: 'finish',\n },\n /**\n * @description status of current step\n */\n processStatus: {\n type: String,\n values: ['wait', 'process', 'finish', 'error', 'success'],\n default: 'process',\n },\n} as const)\nexport type StepsProps = ExtractPropTypes<typeof stepsProps>\nexport type StepsPropsPublic = __ExtractPublicPropTypes<typeof stepsProps>\n\nexport const stepsEmits = {\n [CHANGE_EVENT]: (newVal: number, oldVal: number) =>\n [newVal, oldVal].every(isNumber),\n}\nexport type StepsEmits = typeof stepsEmits\n\nexport type StepsInstance = InstanceType<typeof Steps> & unknown\n"],"names":[],"mappings":";;;;AAEY,MAAC,UAAU,GAAG,UAAU,CAAC;AACrC,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;AAC1B,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,CAAC;AACd,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,YAAY;AACzB,IAAI,MAAM,EAAE,CAAC,YAAY,EAAE,UAAU,CAAC;AACtC,GAAG;AACH,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,OAAO;AACjB,GAAG;AACH,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,OAAO;AACjB,GAAG;AACH,EAAE,YAAY,EAAE;AAChB,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,CAAC;AAC7D,IAAI,OAAO,EAAE,QAAQ;AACrB,GAAG;AACH,EAAE,aAAa,EAAE;AACjB,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,CAAC;AAC7D,IAAI,OAAO,EAAE,SAAS;AACtB,GAAG;AACH,CAAC,EAAE;AACS,MAAC,UAAU,GAAG;AAC1B,EAAE,CAAC,YAAY,GAAG,CAAC,MAAM,EAAE,MAAM,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC;AACtE;;;;"}
@@ -1,7 +1,7 @@
1
1
  import Tabs from './src/tabs.mjs';
2
2
  export { tabsEmits, tabsProps } from './src/tabs.mjs';
3
3
  import TabPane from './src/tab-pane.mjs';
4
- export { tabBarProps } from './src/tab-bar2.mjs';
4
+ export { tabBarProps } from './src/tab-bar.mjs';
5
5
  export { tabNavEmits, tabNavProps } from './src/tab-nav.mjs';
6
6
  export { tabPaneProps } from './src/tab-pane2.mjs';
7
7
  export { tabsRootContextKey } from './src/constants.mjs';
@@ -1,97 +1,16 @@
1
- import { defineComponent, inject, ref, computed, watch, nextTick, onBeforeUnmount, unref, openBlock, createElementBlock, normalizeClass, normalizeStyle, createCommentVNode } from 'vue';
2
- import { useResizeObserver } from '@vueuse/core';
3
- import { tabsRootContextKey } from './constants.mjs';
4
- import { tabBarProps } from './tab-bar2.mjs';
5
- import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
6
- import { capitalize } from '../../../utils/strings.mjs';
7
- import { throwError } from '../../../utils/error.mjs';
8
- import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
9
- import { isUndefined } from '../../../utils/types.mjs';
1
+ import { buildProps, definePropType } from '../../../utils/vue/props/runtime.mjs';
2
+ import { mutable } from '../../../utils/typescript.mjs';
10
3
 
11
- const COMPONENT_NAME = "ElTabBar";
12
- const __default__ = defineComponent({
13
- name: COMPONENT_NAME
14
- });
15
- const _sfc_main = /* @__PURE__ */ defineComponent({
16
- ...__default__,
17
- props: tabBarProps,
18
- setup(__props, { expose }) {
19
- const props = __props;
20
- const rootTabs = inject(tabsRootContextKey);
21
- if (!rootTabs)
22
- throwError(COMPONENT_NAME, "<el-tabs><el-tab-bar /></el-tabs>");
23
- const ns = useNamespace("tabs");
24
- const barRef = ref();
25
- const barStyle = ref();
26
- const renderActiveBar = computed(() => {
27
- var _a;
28
- return isUndefined(rootTabs.props.defaultValue) || Boolean((_a = barStyle.value) == null ? void 0 : _a.transform);
29
- });
30
- const getBarStyle = () => {
31
- let offset = 0;
32
- let tabSize = 0;
33
- const sizeName = ["top", "bottom"].includes(rootTabs.props.tabPosition) ? "width" : "height";
34
- const sizeDir = sizeName === "width" ? "x" : "y";
35
- const position = sizeDir === "x" ? "left" : "top";
36
- props.tabs.every((tab) => {
37
- if (isUndefined(tab.paneName))
38
- return false;
39
- const $el = props.tabRefs[tab.paneName];
40
- if (!$el)
41
- return false;
42
- if (!tab.active) {
43
- return true;
44
- }
45
- offset = $el[`offset${capitalize(position)}`];
46
- tabSize = $el[`client${capitalize(sizeName)}`];
47
- const tabStyles = window.getComputedStyle($el);
48
- if (sizeName === "width") {
49
- tabSize -= Number.parseFloat(tabStyles.paddingLeft) + Number.parseFloat(tabStyles.paddingRight);
50
- offset += Number.parseFloat(tabStyles.paddingLeft);
51
- }
52
- return false;
53
- });
54
- return {
55
- [sizeName]: `${tabSize}px`,
56
- transform: `translate${capitalize(sizeDir)}(${offset}px)`
57
- };
58
- };
59
- const update = () => barStyle.value = getBarStyle();
60
- const tabObservers = [];
61
- const observerTabs = () => {
62
- tabObservers.forEach((observer) => observer.stop());
63
- tabObservers.length = 0;
64
- Object.values(props.tabRefs).forEach((tab) => {
65
- tabObservers.push(useResizeObserver(tab, update));
66
- });
67
- };
68
- watch(() => props.tabs, async () => {
69
- await nextTick();
70
- update();
71
- observerTabs();
72
- }, { immediate: true });
73
- const barObserver = useResizeObserver(barRef, () => update());
74
- onBeforeUnmount(() => {
75
- tabObservers.forEach((observer) => observer.stop());
76
- tabObservers.length = 0;
77
- barObserver.stop();
78
- });
79
- expose({
80
- ref: barRef,
81
- update
82
- });
83
- return (_ctx, _cache) => {
84
- return unref(renderActiveBar) ? (openBlock(), createElementBlock("div", {
85
- key: 0,
86
- ref_key: "barRef",
87
- ref: barRef,
88
- class: normalizeClass([unref(ns).e("active-bar"), unref(ns).is(unref(rootTabs).props.tabPosition)]),
89
- style: normalizeStyle(barStyle.value)
90
- }, null, 6)) : createCommentVNode("v-if", true);
91
- };
4
+ const tabBarProps = buildProps({
5
+ tabs: {
6
+ type: definePropType(Array),
7
+ default: () => mutable([])
8
+ },
9
+ tabRefs: {
10
+ type: definePropType(Object),
11
+ default: () => mutable({})
92
12
  }
93
13
  });
94
- var TabBar = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "tab-bar.vue"]]);
95
14
 
96
- export { TabBar as default };
15
+ export { tabBarProps };
97
16
  //# sourceMappingURL=tab-bar.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"tab-bar.mjs","sources":["../../../../../../packages/components/tabs/src/tab-bar.vue"],"sourcesContent":["<template>\n <div\n v-if=\"renderActiveBar\"\n ref=\"barRef\"\n :class=\"[ns.e('active-bar'), ns.is(rootTabs!.props.tabPosition)]\"\n :style=\"barStyle\"\n />\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, inject, nextTick, onBeforeUnmount, ref, watch } from 'vue'\nimport { useResizeObserver } from '@vueuse/core'\nimport { capitalize, isUndefined, throwError } from '@element-plus/utils'\nimport { useNamespace } from '@element-plus/hooks'\nimport { tabsRootContextKey } from './constants'\nimport { tabBarProps } from './tab-bar'\n\nimport type { CSSProperties } from 'vue'\n\nconst COMPONENT_NAME = 'ElTabBar'\ndefineOptions({\n name: COMPONENT_NAME,\n})\nconst props = defineProps(tabBarProps)\n\nconst rootTabs = inject(tabsRootContextKey)\nif (!rootTabs) throwError(COMPONENT_NAME, '<el-tabs><el-tab-bar /></el-tabs>')\n\nconst ns = useNamespace('tabs')\n\nconst barRef = ref<HTMLDivElement>()\nconst barStyle = ref<CSSProperties>()\n/**\n * when defaultValue is not set, the bar is always shown.\n *\n * when defaultValue is set, the bar will be hidden until style is calculated\n * to avoid the bar showing in the wrong position on initial render.\n */\nconst renderActiveBar = computed(\n () =>\n isUndefined(rootTabs.props.defaultValue) ||\n Boolean(barStyle.value?.transform)\n)\n\nconst getBarStyle = (): CSSProperties => {\n let offset = 0\n let tabSize = 0\n\n const sizeName = ['top', 'bottom'].includes(rootTabs.props.tabPosition)\n ? 'width'\n : 'height'\n const sizeDir = sizeName === 'width' ? 'x' : 'y'\n const position = sizeDir === 'x' ? 'left' : 'top'\n\n props.tabs.every((tab) => {\n if (isUndefined(tab.paneName)) return false\n const $el = props.tabRefs[tab.paneName]\n if (!$el) return false\n\n if (!tab.active) {\n return true\n }\n\n offset = $el[`offset${capitalize(position)}`]\n tabSize = $el[`client${capitalize(sizeName)}`]\n\n const tabStyles = window.getComputedStyle($el)\n\n if (sizeName === 'width') {\n tabSize -=\n Number.parseFloat(tabStyles.paddingLeft) +\n Number.parseFloat(tabStyles.paddingRight)\n offset += Number.parseFloat(tabStyles.paddingLeft)\n }\n return false\n })\n\n return {\n [sizeName]: `${tabSize}px`,\n transform: `translate${capitalize(sizeDir)}(${offset}px)`,\n }\n}\n\nconst update = () => (barStyle.value = getBarStyle())\n\nconst tabObservers = [] as ReturnType<typeof useResizeObserver>[]\nconst observerTabs = () => {\n tabObservers.forEach((observer) => observer.stop())\n tabObservers.length = 0\n\n Object.values(props.tabRefs).forEach((tab) => {\n tabObservers.push(useResizeObserver(tab, update))\n })\n}\n\nwatch(\n () => props.tabs,\n async () => {\n await nextTick()\n update()\n\n observerTabs()\n },\n { immediate: true }\n)\nconst barObserver = useResizeObserver(barRef, () => update())\n\nonBeforeUnmount(() => {\n tabObservers.forEach((observer) => observer.stop())\n tabObservers.length = 0\n barObserver.stop()\n})\n\ndefineExpose({\n /** @description tab root html element */\n ref: barRef,\n /** @description method to manually update tab bar style */\n update,\n})\n</script>\n"],"names":["_unref","_openBlock","_createElementBlock"],"mappings":"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"}
1
+ {"version":3,"file":"tab-bar.mjs","sources":["../../../../../../packages/components/tabs/src/tab-bar.ts"],"sourcesContent":["import { buildProps, definePropType, mutable } from '@element-plus/utils'\n\nimport type { ExtractPropTypes, __ExtractPublicPropTypes } from 'vue'\nimport type { TabPaneName, TabsPaneContext } from './constants'\nimport type TabBar from './tab-bar.vue'\n\nexport const tabBarProps = buildProps({\n tabs: {\n type: definePropType<TabsPaneContext[]>(Array),\n default: () => mutable([] as const),\n },\n tabRefs: {\n type: definePropType<{ [key: TabPaneName]: HTMLDivElement }>(Object),\n default: () => mutable({} as const),\n },\n} as const)\n\nexport type TabBarProps = ExtractPropTypes<typeof tabBarProps>\nexport type TabBarPropsPublic = __ExtractPublicPropTypes<typeof tabBarProps>\nexport type TabBarInstance = InstanceType<typeof TabBar> & unknown\n"],"names":[],"mappings":";;;AACY,MAAC,WAAW,GAAG,UAAU,CAAC;AACtC,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,cAAc,CAAC,KAAK,CAAC;AAC/B,IAAI,OAAO,EAAE,MAAM,OAAO,CAAC,EAAE,CAAC;AAC9B,GAAG;AACH,EAAE,OAAO,EAAE;AACX,IAAI,IAAI,EAAE,cAAc,CAAC,MAAM,CAAC;AAChC,IAAI,OAAO,EAAE,MAAM,OAAO,CAAC,EAAE,CAAC;AAC9B,GAAG;AACH,CAAC;;;;"}
@@ -1,16 +1,97 @@
1
- import { buildProps, definePropType } from '../../../utils/vue/props/runtime.mjs';
2
- import { mutable } from '../../../utils/typescript.mjs';
1
+ import { defineComponent, inject, ref, computed, watch, nextTick, onBeforeUnmount, unref, openBlock, createElementBlock, normalizeClass, normalizeStyle, createCommentVNode } from 'vue';
2
+ import { useResizeObserver } from '@vueuse/core';
3
+ import { tabsRootContextKey } from './constants.mjs';
4
+ import { tabBarProps } from './tab-bar.mjs';
5
+ import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
6
+ import { capitalize } from '../../../utils/strings.mjs';
7
+ import { throwError } from '../../../utils/error.mjs';
8
+ import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
9
+ import { isUndefined } from '../../../utils/types.mjs';
3
10
 
4
- const tabBarProps = buildProps({
5
- tabs: {
6
- type: definePropType(Array),
7
- default: () => mutable([])
8
- },
9
- tabRefs: {
10
- type: definePropType(Object),
11
- default: () => mutable({})
11
+ const COMPONENT_NAME = "ElTabBar";
12
+ const __default__ = defineComponent({
13
+ name: COMPONENT_NAME
14
+ });
15
+ const _sfc_main = /* @__PURE__ */ defineComponent({
16
+ ...__default__,
17
+ props: tabBarProps,
18
+ setup(__props, { expose }) {
19
+ const props = __props;
20
+ const rootTabs = inject(tabsRootContextKey);
21
+ if (!rootTabs)
22
+ throwError(COMPONENT_NAME, "<el-tabs><el-tab-bar /></el-tabs>");
23
+ const ns = useNamespace("tabs");
24
+ const barRef = ref();
25
+ const barStyle = ref();
26
+ const renderActiveBar = computed(() => {
27
+ var _a;
28
+ return isUndefined(rootTabs.props.defaultValue) || Boolean((_a = barStyle.value) == null ? void 0 : _a.transform);
29
+ });
30
+ const getBarStyle = () => {
31
+ let offset = 0;
32
+ let tabSize = 0;
33
+ const sizeName = ["top", "bottom"].includes(rootTabs.props.tabPosition) ? "width" : "height";
34
+ const sizeDir = sizeName === "width" ? "x" : "y";
35
+ const position = sizeDir === "x" ? "left" : "top";
36
+ props.tabs.every((tab) => {
37
+ if (isUndefined(tab.paneName))
38
+ return false;
39
+ const $el = props.tabRefs[tab.paneName];
40
+ if (!$el)
41
+ return false;
42
+ if (!tab.active) {
43
+ return true;
44
+ }
45
+ offset = $el[`offset${capitalize(position)}`];
46
+ tabSize = $el[`client${capitalize(sizeName)}`];
47
+ const tabStyles = window.getComputedStyle($el);
48
+ if (sizeName === "width") {
49
+ tabSize -= Number.parseFloat(tabStyles.paddingLeft) + Number.parseFloat(tabStyles.paddingRight);
50
+ offset += Number.parseFloat(tabStyles.paddingLeft);
51
+ }
52
+ return false;
53
+ });
54
+ return {
55
+ [sizeName]: `${tabSize}px`,
56
+ transform: `translate${capitalize(sizeDir)}(${offset}px)`
57
+ };
58
+ };
59
+ const update = () => barStyle.value = getBarStyle();
60
+ const tabObservers = [];
61
+ const observerTabs = () => {
62
+ tabObservers.forEach((observer) => observer.stop());
63
+ tabObservers.length = 0;
64
+ Object.values(props.tabRefs).forEach((tab) => {
65
+ tabObservers.push(useResizeObserver(tab, update));
66
+ });
67
+ };
68
+ watch(() => props.tabs, async () => {
69
+ await nextTick();
70
+ update();
71
+ observerTabs();
72
+ }, { immediate: true });
73
+ const barObserver = useResizeObserver(barRef, () => update());
74
+ onBeforeUnmount(() => {
75
+ tabObservers.forEach((observer) => observer.stop());
76
+ tabObservers.length = 0;
77
+ barObserver.stop();
78
+ });
79
+ expose({
80
+ ref: barRef,
81
+ update
82
+ });
83
+ return (_ctx, _cache) => {
84
+ return unref(renderActiveBar) ? (openBlock(), createElementBlock("div", {
85
+ key: 0,
86
+ ref_key: "barRef",
87
+ ref: barRef,
88
+ class: normalizeClass([unref(ns).e("active-bar"), unref(ns).is(unref(rootTabs).props.tabPosition)]),
89
+ style: normalizeStyle(barStyle.value)
90
+ }, null, 6)) : createCommentVNode("v-if", true);
91
+ };
12
92
  }
13
93
  });
94
+ var TabBar = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "tab-bar.vue"]]);
14
95
 
15
- export { tabBarProps };
96
+ export { TabBar as default };
16
97
  //# sourceMappingURL=tab-bar2.mjs.map