@element-plus/nightly 0.0.20241025 → 0.0.20241026

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 (330) hide show
  1. package/dist/index.full.js +2 -2
  2. package/dist/index.full.min.js +2 -2
  3. package/dist/index.full.min.js.map +1 -1
  4. package/dist/index.full.min.mjs +2 -2
  5. package/dist/index.full.min.mjs.map +1 -1
  6. package/dist/index.full.mjs +2 -2
  7. package/dist/locale/af.js +1 -1
  8. package/dist/locale/af.min.js +1 -1
  9. package/dist/locale/af.min.mjs +1 -1
  10. package/dist/locale/af.mjs +1 -1
  11. package/dist/locale/ar-eg.js +1 -1
  12. package/dist/locale/ar-eg.min.js +1 -1
  13. package/dist/locale/ar-eg.min.mjs +1 -1
  14. package/dist/locale/ar-eg.mjs +1 -1
  15. package/dist/locale/ar.js +1 -1
  16. package/dist/locale/ar.min.js +1 -1
  17. package/dist/locale/ar.min.mjs +1 -1
  18. package/dist/locale/ar.mjs +1 -1
  19. package/dist/locale/az.js +1 -1
  20. package/dist/locale/az.min.js +1 -1
  21. package/dist/locale/az.min.mjs +1 -1
  22. package/dist/locale/az.mjs +1 -1
  23. package/dist/locale/bg.js +1 -1
  24. package/dist/locale/bg.min.js +1 -1
  25. package/dist/locale/bg.min.mjs +1 -1
  26. package/dist/locale/bg.mjs +1 -1
  27. package/dist/locale/bn.js +1 -1
  28. package/dist/locale/bn.min.js +1 -1
  29. package/dist/locale/bn.min.mjs +1 -1
  30. package/dist/locale/bn.mjs +1 -1
  31. package/dist/locale/ca.js +1 -1
  32. package/dist/locale/ca.min.js +1 -1
  33. package/dist/locale/ca.min.mjs +1 -1
  34. package/dist/locale/ca.mjs +1 -1
  35. package/dist/locale/ckb.js +1 -1
  36. package/dist/locale/ckb.min.js +1 -1
  37. package/dist/locale/ckb.min.mjs +1 -1
  38. package/dist/locale/ckb.mjs +1 -1
  39. package/dist/locale/cs.js +1 -1
  40. package/dist/locale/cs.min.js +1 -1
  41. package/dist/locale/cs.min.mjs +1 -1
  42. package/dist/locale/cs.mjs +1 -1
  43. package/dist/locale/da.js +1 -1
  44. package/dist/locale/da.min.js +1 -1
  45. package/dist/locale/da.min.mjs +1 -1
  46. package/dist/locale/da.mjs +1 -1
  47. package/dist/locale/de.js +1 -1
  48. package/dist/locale/de.min.js +1 -1
  49. package/dist/locale/de.min.mjs +1 -1
  50. package/dist/locale/de.mjs +1 -1
  51. package/dist/locale/el.js +1 -1
  52. package/dist/locale/el.min.js +1 -1
  53. package/dist/locale/el.min.mjs +1 -1
  54. package/dist/locale/el.mjs +1 -1
  55. package/dist/locale/en.js +1 -1
  56. package/dist/locale/en.min.js +1 -1
  57. package/dist/locale/en.min.mjs +1 -1
  58. package/dist/locale/en.mjs +1 -1
  59. package/dist/locale/eo.js +1 -1
  60. package/dist/locale/eo.min.js +1 -1
  61. package/dist/locale/eo.min.mjs +1 -1
  62. package/dist/locale/eo.mjs +1 -1
  63. package/dist/locale/es.js +1 -1
  64. package/dist/locale/es.min.js +1 -1
  65. package/dist/locale/es.min.mjs +1 -1
  66. package/dist/locale/es.mjs +1 -1
  67. package/dist/locale/et.js +1 -1
  68. package/dist/locale/et.min.js +1 -1
  69. package/dist/locale/et.min.mjs +1 -1
  70. package/dist/locale/et.mjs +1 -1
  71. package/dist/locale/eu.js +1 -1
  72. package/dist/locale/eu.min.js +1 -1
  73. package/dist/locale/eu.min.mjs +1 -1
  74. package/dist/locale/eu.mjs +1 -1
  75. package/dist/locale/fa.js +1 -1
  76. package/dist/locale/fa.min.js +1 -1
  77. package/dist/locale/fa.min.mjs +1 -1
  78. package/dist/locale/fa.mjs +1 -1
  79. package/dist/locale/fi.js +1 -1
  80. package/dist/locale/fi.min.js +1 -1
  81. package/dist/locale/fi.min.mjs +1 -1
  82. package/dist/locale/fi.mjs +1 -1
  83. package/dist/locale/fr.js +1 -1
  84. package/dist/locale/fr.min.js +1 -1
  85. package/dist/locale/fr.min.mjs +1 -1
  86. package/dist/locale/fr.mjs +1 -1
  87. package/dist/locale/he.js +1 -1
  88. package/dist/locale/he.min.js +1 -1
  89. package/dist/locale/he.min.mjs +1 -1
  90. package/dist/locale/he.mjs +1 -1
  91. package/dist/locale/hr.js +1 -1
  92. package/dist/locale/hr.min.js +1 -1
  93. package/dist/locale/hr.min.mjs +1 -1
  94. package/dist/locale/hr.mjs +1 -1
  95. package/dist/locale/hu.js +1 -1
  96. package/dist/locale/hu.min.js +1 -1
  97. package/dist/locale/hu.min.mjs +1 -1
  98. package/dist/locale/hu.mjs +1 -1
  99. package/dist/locale/hy-am.js +1 -1
  100. package/dist/locale/hy-am.min.js +1 -1
  101. package/dist/locale/hy-am.min.mjs +1 -1
  102. package/dist/locale/hy-am.mjs +1 -1
  103. package/dist/locale/id.js +1 -1
  104. package/dist/locale/id.min.js +1 -1
  105. package/dist/locale/id.min.mjs +1 -1
  106. package/dist/locale/id.mjs +1 -1
  107. package/dist/locale/it.js +1 -1
  108. package/dist/locale/it.min.js +1 -1
  109. package/dist/locale/it.min.mjs +1 -1
  110. package/dist/locale/it.mjs +1 -1
  111. package/dist/locale/ja.js +1 -1
  112. package/dist/locale/ja.min.js +1 -1
  113. package/dist/locale/ja.min.mjs +1 -1
  114. package/dist/locale/ja.mjs +1 -1
  115. package/dist/locale/kk.js +1 -1
  116. package/dist/locale/kk.min.js +1 -1
  117. package/dist/locale/kk.min.mjs +1 -1
  118. package/dist/locale/kk.mjs +1 -1
  119. package/dist/locale/km.js +1 -1
  120. package/dist/locale/km.min.js +1 -1
  121. package/dist/locale/km.min.mjs +1 -1
  122. package/dist/locale/km.mjs +1 -1
  123. package/dist/locale/ko.js +1 -1
  124. package/dist/locale/ko.min.js +1 -1
  125. package/dist/locale/ko.min.mjs +1 -1
  126. package/dist/locale/ko.mjs +1 -1
  127. package/dist/locale/ku.js +1 -1
  128. package/dist/locale/ku.min.js +1 -1
  129. package/dist/locale/ku.min.mjs +1 -1
  130. package/dist/locale/ku.mjs +1 -1
  131. package/dist/locale/ky.js +1 -1
  132. package/dist/locale/ky.min.js +1 -1
  133. package/dist/locale/ky.min.mjs +1 -1
  134. package/dist/locale/ky.mjs +1 -1
  135. package/dist/locale/lt.js +1 -1
  136. package/dist/locale/lt.min.js +1 -1
  137. package/dist/locale/lt.min.mjs +1 -1
  138. package/dist/locale/lt.mjs +1 -1
  139. package/dist/locale/lv.js +1 -1
  140. package/dist/locale/lv.min.js +1 -1
  141. package/dist/locale/lv.min.mjs +1 -1
  142. package/dist/locale/lv.mjs +1 -1
  143. package/dist/locale/mg.js +1 -1
  144. package/dist/locale/mg.min.js +1 -1
  145. package/dist/locale/mg.min.mjs +1 -1
  146. package/dist/locale/mg.mjs +1 -1
  147. package/dist/locale/mn.js +1 -1
  148. package/dist/locale/mn.min.js +1 -1
  149. package/dist/locale/mn.min.mjs +1 -1
  150. package/dist/locale/mn.mjs +1 -1
  151. package/dist/locale/my.js +1 -1
  152. package/dist/locale/my.min.js +1 -1
  153. package/dist/locale/my.min.mjs +1 -1
  154. package/dist/locale/my.mjs +1 -1
  155. package/dist/locale/nb-no.js +1 -1
  156. package/dist/locale/nb-no.min.js +1 -1
  157. package/dist/locale/nb-no.min.mjs +1 -1
  158. package/dist/locale/nb-no.mjs +1 -1
  159. package/dist/locale/nl.js +1 -1
  160. package/dist/locale/nl.min.js +1 -1
  161. package/dist/locale/nl.min.mjs +1 -1
  162. package/dist/locale/nl.mjs +1 -1
  163. package/dist/locale/pa.js +1 -1
  164. package/dist/locale/pa.min.js +1 -1
  165. package/dist/locale/pa.min.mjs +1 -1
  166. package/dist/locale/pa.mjs +1 -1
  167. package/dist/locale/pl.js +1 -1
  168. package/dist/locale/pl.min.js +1 -1
  169. package/dist/locale/pl.min.mjs +1 -1
  170. package/dist/locale/pl.mjs +1 -1
  171. package/dist/locale/pt-br.js +1 -1
  172. package/dist/locale/pt-br.min.js +1 -1
  173. package/dist/locale/pt-br.min.mjs +1 -1
  174. package/dist/locale/pt-br.mjs +1 -1
  175. package/dist/locale/pt.js +1 -1
  176. package/dist/locale/pt.min.js +1 -1
  177. package/dist/locale/pt.min.mjs +1 -1
  178. package/dist/locale/pt.mjs +1 -1
  179. package/dist/locale/ro.js +1 -1
  180. package/dist/locale/ro.min.js +1 -1
  181. package/dist/locale/ro.min.mjs +1 -1
  182. package/dist/locale/ro.mjs +1 -1
  183. package/dist/locale/ru.js +1 -1
  184. package/dist/locale/ru.min.js +1 -1
  185. package/dist/locale/ru.min.mjs +1 -1
  186. package/dist/locale/ru.mjs +1 -1
  187. package/dist/locale/sk.js +1 -1
  188. package/dist/locale/sk.min.js +1 -1
  189. package/dist/locale/sk.min.mjs +1 -1
  190. package/dist/locale/sk.mjs +1 -1
  191. package/dist/locale/sl.js +1 -1
  192. package/dist/locale/sl.min.js +1 -1
  193. package/dist/locale/sl.min.mjs +1 -1
  194. package/dist/locale/sl.mjs +1 -1
  195. package/dist/locale/sr.js +1 -1
  196. package/dist/locale/sr.min.js +1 -1
  197. package/dist/locale/sr.min.mjs +1 -1
  198. package/dist/locale/sr.mjs +1 -1
  199. package/dist/locale/sv.js +1 -1
  200. package/dist/locale/sv.min.js +1 -1
  201. package/dist/locale/sv.min.mjs +1 -1
  202. package/dist/locale/sv.mjs +1 -1
  203. package/dist/locale/sw.js +1 -1
  204. package/dist/locale/sw.min.js +1 -1
  205. package/dist/locale/sw.min.mjs +1 -1
  206. package/dist/locale/sw.mjs +1 -1
  207. package/dist/locale/ta.js +1 -1
  208. package/dist/locale/ta.min.js +1 -1
  209. package/dist/locale/ta.min.mjs +1 -1
  210. package/dist/locale/ta.mjs +1 -1
  211. package/dist/locale/th.js +1 -1
  212. package/dist/locale/th.min.js +1 -1
  213. package/dist/locale/th.min.mjs +1 -1
  214. package/dist/locale/th.mjs +1 -1
  215. package/dist/locale/tk.js +1 -1
  216. package/dist/locale/tk.min.js +1 -1
  217. package/dist/locale/tk.min.mjs +1 -1
  218. package/dist/locale/tk.mjs +1 -1
  219. package/dist/locale/tr.js +1 -1
  220. package/dist/locale/tr.min.js +1 -1
  221. package/dist/locale/tr.min.mjs +1 -1
  222. package/dist/locale/tr.mjs +1 -1
  223. package/dist/locale/ug-cn.js +1 -1
  224. package/dist/locale/ug-cn.min.js +1 -1
  225. package/dist/locale/ug-cn.min.mjs +1 -1
  226. package/dist/locale/ug-cn.mjs +1 -1
  227. package/dist/locale/uk.js +1 -1
  228. package/dist/locale/uk.min.js +1 -1
  229. package/dist/locale/uk.min.mjs +1 -1
  230. package/dist/locale/uk.mjs +1 -1
  231. package/dist/locale/uz-uz.js +1 -1
  232. package/dist/locale/uz-uz.min.js +1 -1
  233. package/dist/locale/uz-uz.min.mjs +1 -1
  234. package/dist/locale/uz-uz.mjs +1 -1
  235. package/dist/locale/vi.js +1 -1
  236. package/dist/locale/vi.min.js +1 -1
  237. package/dist/locale/vi.min.mjs +1 -1
  238. package/dist/locale/vi.mjs +1 -1
  239. package/dist/locale/zh-cn.js +1 -1
  240. package/dist/locale/zh-cn.min.js +1 -1
  241. package/dist/locale/zh-cn.min.mjs +1 -1
  242. package/dist/locale/zh-cn.mjs +1 -1
  243. package/dist/locale/zh-tw.js +1 -1
  244. package/dist/locale/zh-tw.min.js +1 -1
  245. package/dist/locale/zh-tw.min.mjs +1 -1
  246. package/dist/locale/zh-tw.mjs +1 -1
  247. package/es/components/carousel/index.mjs +2 -2
  248. package/es/components/carousel/src/carousel.mjs +62 -205
  249. package/es/components/carousel/src/carousel.mjs.map +1 -1
  250. package/es/components/carousel/src/carousel2.mjs +205 -62
  251. package/es/components/carousel/src/carousel2.mjs.map +1 -1
  252. package/es/components/collection/index.mjs +1 -1
  253. package/es/components/collection/src/collection.mjs +10 -62
  254. package/es/components/collection/src/collection.mjs.map +1 -1
  255. package/es/components/collection/src/collection2.mjs +62 -10
  256. package/es/components/collection/src/collection2.mjs.map +1 -1
  257. package/es/components/dropdown/src/dropdown-item-impl.mjs +1 -1
  258. package/es/components/dropdown/src/dropdown.mjs +1 -1
  259. package/es/components/index.mjs +6 -6
  260. package/es/components/popper/index.mjs +2 -2
  261. package/es/components/popper/src/content.mjs +137 -93
  262. package/es/components/popper/src/content.mjs.map +1 -1
  263. package/es/components/popper/src/content2.mjs +93 -137
  264. package/es/components/popper/src/content2.mjs.map +1 -1
  265. package/es/components/roving-focus-group/src/roving-focus-group.mjs +1 -1
  266. package/es/components/statistic/index.mjs +2 -2
  267. package/es/components/statistic/src/statistic.mjs +25 -70
  268. package/es/components/statistic/src/statistic.mjs.map +1 -1
  269. package/es/components/statistic/src/statistic2.mjs +70 -25
  270. package/es/components/statistic/src/statistic2.mjs.map +1 -1
  271. package/es/components/tooltip/src/content.mjs +1 -1
  272. package/es/components/tooltip/src/content2.mjs +1 -1
  273. package/es/components/upload/index.mjs +1 -1
  274. package/es/components/upload/src/upload-list.mjs +175 -29
  275. package/es/components/upload/src/upload-list.mjs.map +1 -1
  276. package/es/components/upload/src/upload-list2.mjs +29 -175
  277. package/es/components/upload/src/upload-list2.mjs.map +1 -1
  278. package/es/components/upload/src/upload2.mjs +1 -1
  279. package/es/components/watermark/index.mjs +2 -2
  280. package/es/components/watermark/src/watermark.mjs +209 -28
  281. package/es/components/watermark/src/watermark.mjs.map +1 -1
  282. package/es/components/watermark/src/watermark2.mjs +28 -209
  283. package/es/components/watermark/src/watermark2.mjs.map +1 -1
  284. package/es/index.mjs +6 -6
  285. package/es/version.d.ts +1 -1
  286. package/es/version.mjs +1 -1
  287. package/es/version.mjs.map +1 -1
  288. package/lib/components/carousel/index.js +2 -2
  289. package/lib/components/carousel/src/carousel.js +63 -205
  290. package/lib/components/carousel/src/carousel.js.map +1 -1
  291. package/lib/components/carousel/src/carousel2.js +205 -63
  292. package/lib/components/carousel/src/carousel2.js.map +1 -1
  293. package/lib/components/collection/index.js +1 -1
  294. package/lib/components/collection/src/collection.js +9 -62
  295. package/lib/components/collection/src/collection.js.map +1 -1
  296. package/lib/components/collection/src/collection2.js +62 -9
  297. package/lib/components/collection/src/collection2.js.map +1 -1
  298. package/lib/components/dropdown/src/dropdown-item-impl.js +1 -1
  299. package/lib/components/dropdown/src/dropdown.js +1 -1
  300. package/lib/components/index.js +6 -6
  301. package/lib/components/popper/index.js +2 -2
  302. package/lib/components/popper/src/content.js +137 -98
  303. package/lib/components/popper/src/content.js.map +1 -1
  304. package/lib/components/popper/src/content2.js +98 -137
  305. package/lib/components/popper/src/content2.js.map +1 -1
  306. package/lib/components/roving-focus-group/src/roving-focus-group.js +1 -1
  307. package/lib/components/statistic/index.js +2 -2
  308. package/lib/components/statistic/src/statistic.js +25 -70
  309. package/lib/components/statistic/src/statistic.js.map +1 -1
  310. package/lib/components/statistic/src/statistic2.js +70 -25
  311. package/lib/components/statistic/src/statistic2.js.map +1 -1
  312. package/lib/components/tooltip/src/content.js +1 -1
  313. package/lib/components/tooltip/src/content2.js +1 -1
  314. package/lib/components/upload/index.js +1 -1
  315. package/lib/components/upload/src/upload-list.js +175 -30
  316. package/lib/components/upload/src/upload-list.js.map +1 -1
  317. package/lib/components/upload/src/upload-list2.js +30 -175
  318. package/lib/components/upload/src/upload-list2.js.map +1 -1
  319. package/lib/components/upload/src/upload2.js +1 -1
  320. package/lib/components/watermark/index.js +2 -2
  321. package/lib/components/watermark/src/watermark.js +209 -28
  322. package/lib/components/watermark/src/watermark.js.map +1 -1
  323. package/lib/components/watermark/src/watermark2.js +28 -209
  324. package/lib/components/watermark/src/watermark2.js.map +1 -1
  325. package/lib/index.js +6 -6
  326. package/lib/version.d.ts +1 -1
  327. package/lib/version.js +1 -1
  328. package/lib/version.js.map +1 -1
  329. package/package.json +1 -1
  330. package/web-types.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"carousel.js","sources":["../../../../../../packages/components/carousel/src/carousel.vue"],"sourcesContent":["<template>\n <div\n ref=\"root\"\n :class=\"carouselClasses\"\n @mouseenter.stop=\"handleMouseEnter\"\n @mouseleave.stop=\"handleMouseLeave\"\n >\n <transition v-if=\"arrowDisplay\" name=\"carousel-arrow-left\">\n <button\n v-show=\"\n (arrow === 'always' || hover) && (props.loop || activeIndex > 0)\n \"\n type=\"button\"\n :class=\"[ns.e('arrow'), ns.em('arrow', 'left')]\"\n :aria-label=\"t('el.carousel.leftArrow')\"\n @mouseenter=\"handleButtonEnter('left')\"\n @mouseleave=\"handleButtonLeave\"\n @click.stop=\"throttledArrowClick(activeIndex - 1)\"\n >\n <ElIcon>\n <ArrowLeft />\n </ElIcon>\n </button>\n </transition>\n <transition v-if=\"arrowDisplay\" name=\"carousel-arrow-right\">\n <button\n v-show=\"\n (arrow === 'always' || hover) &&\n (props.loop || activeIndex < items.length - 1)\n \"\n type=\"button\"\n :class=\"[ns.e('arrow'), ns.em('arrow', 'right')]\"\n :aria-label=\"t('el.carousel.rightArrow')\"\n @mouseenter=\"handleButtonEnter('right')\"\n @mouseleave=\"handleButtonLeave\"\n @click.stop=\"throttledArrowClick(activeIndex + 1)\"\n >\n <ElIcon>\n <ArrowRight />\n </ElIcon>\n </button>\n </transition>\n <div\n :class=\"carouselContainer\"\n :style=\"containerStyle\"\n @transitionend=\"handleTransitionEnd\"\n >\n <PlaceholderItem />\n <slot />\n </div>\n <ul v-if=\"indicatorPosition !== 'none'\" :class=\"indicatorsClasses\">\n <li\n v-for=\"(item, index) in items\"\n v-show=\"isTwoLengthShow(index)\"\n :key=\"index\"\n :class=\"[\n ns.e('indicator'),\n ns.em('indicator', direction),\n ns.is('active', index === activeIndex),\n ]\"\n @mouseenter=\"throttledIndicatorHover(index)\"\n @click.stop=\"handleIndicatorClick(index)\"\n >\n <button\n :class=\"ns.e('button')\"\n :aria-label=\"t('el.carousel.indicator', { index: index + 1 })\"\n >\n <span v-if=\"hasLabel\">{{ item.props.label }}</span>\n </button>\n </li>\n </ul>\n <svg\n v-if=\"props.motionBlur\"\n xmlns=\"http://www.w3.org/2000/svg\"\n version=\"1.1\"\n style=\"display: none\"\n >\n <defs>\n <filter id=\"elCarouselHorizontal\">\n <feGaussianBlur in=\"SourceGraphic\" stdDeviation=\"12,0\" />\n </filter>\n <filter id=\"elCarouselVertical\">\n <feGaussianBlur in=\"SourceGraphic\" stdDeviation=\"0,10\" />\n </filter>\n </defs>\n </svg>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, unref } from 'vue'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { ArrowLeft, ArrowRight } from '@element-plus/icons-vue'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport { carouselEmits, carouselProps } from './carousel'\nimport { useCarousel } from './use-carousel'\n\nconst COMPONENT_NAME = 'ElCarousel'\ndefineOptions({\n name: COMPONENT_NAME,\n})\n\nconst props = defineProps(carouselProps)\nconst emit = defineEmits(carouselEmits)\nconst {\n root,\n activeIndex,\n arrowDisplay,\n hasLabel,\n hover,\n isCardType,\n items,\n isVertical,\n containerStyle,\n handleButtonEnter,\n handleButtonLeave,\n isTransitioning,\n handleIndicatorClick,\n handleMouseEnter,\n handleMouseLeave,\n handleTransitionEnd,\n setActiveItem,\n prev,\n next,\n PlaceholderItem,\n isTwoLengthShow,\n throttledArrowClick,\n throttledIndicatorHover,\n} = useCarousel(props, emit, COMPONENT_NAME)\nconst ns = useNamespace('carousel')\n\nconst { t } = useLocale()\n\nconst carouselClasses = computed(() => {\n const classes = [ns.b(), ns.m(props.direction)]\n if (unref(isCardType)) {\n classes.push(ns.m('card'))\n }\n return classes\n})\n\nconst carouselContainer = computed(() => {\n const classes = [ns.e('container')]\n if (props.motionBlur && unref(isTransitioning) && items.value.length > 1) {\n classes.push(\n unref(isVertical)\n ? `${ns.namespace.value}-transitioning-vertical`\n : `${ns.namespace.value}-transitioning`\n )\n }\n return classes\n})\n\nconst indicatorsClasses = computed(() => {\n const classes = [ns.e('indicators'), ns.em('indicators', props.direction)]\n if (unref(hasLabel)) {\n classes.push(ns.em('indicators', 'labels'))\n }\n if (props.indicatorPosition === 'outside') {\n classes.push(ns.em('indicators', 'outside'))\n }\n if (unref(isVertical)) {\n classes.push(ns.em('indicators', 'right'))\n }\n return classes\n})\n\ndefineExpose({\n /** @description active slide index */\n activeIndex,\n /** @description manually switch slide, index of the slide to be switched to, starting from 0; or the `name` of corresponding `el-carousel-item` */\n setActiveItem,\n /** @description switch to the previous slide */\n prev,\n /** @description switch to the next slide */\n next,\n})\n</script>\n"],"names":["useCarousel","useNamespace","useLocale","computed","unref","_openBlock","_createElementBlock","_normalizeClass","_unref","_withModifiers"],"mappings":"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"}
1
+ {"version":3,"file":"carousel.js","sources":["../../../../../../packages/components/carousel/src/carousel.ts"],"sourcesContent":["import { buildProps, isNumber } from '@element-plus/utils'\nimport type { ExtractPropTypes } from 'vue'\n\nexport const carouselProps = buildProps({\n /**\n * @description index of the initially active slide (starting from 0)\n */\n initialIndex: {\n type: Number,\n default: 0,\n },\n /**\n * @description height of the carousel\n */\n height: {\n type: String,\n default: '',\n },\n /**\n * @description how indicators are triggered\n */\n trigger: {\n type: String,\n values: ['hover', 'click'],\n default: 'hover',\n },\n /**\n * @description whether automatically loop the slides\n */\n autoplay: {\n type: Boolean,\n default: true,\n },\n /**\n * @description interval of the auto loop, in milliseconds\n */\n interval: {\n type: Number,\n default: 3000,\n },\n /**\n * @description position of the indicators\n */\n indicatorPosition: {\n type: String,\n values: ['', 'none', 'outside'],\n default: '',\n },\n /**\n * @description when arrows are shown\n */\n arrow: {\n type: String,\n values: ['always', 'hover', 'never'],\n default: 'hover',\n },\n /**\n * @description type of the Carousel\n */\n type: {\n type: String,\n values: ['', 'card'],\n default: '',\n },\n /**\n * @description when type is card, scaled size of secondary cards\n */\n cardScale: {\n type: Number,\n default: 0.83,\n },\n /**\n * @description display the items in loop\n */\n loop: {\n type: Boolean,\n default: true,\n },\n /**\n * @description display direction\n */\n direction: {\n type: String,\n values: ['horizontal', 'vertical'],\n default: 'horizontal',\n },\n /**\n * @description pause autoplay when hover\n */\n pauseOnHover: {\n type: Boolean,\n default: true,\n },\n /**\n * @description infuse dynamism and smoothness into the carousel\n */\n motionBlur: Boolean,\n} as const)\n\nexport const carouselEmits = {\n /**\n * @description triggers when the active slide switches\n * @param current index of the new active slide\n * @param prev index of the old active slide\n */\n change: (current: number, prev: number) => [current, prev].every(isNumber),\n}\n\nexport type CarouselProps = ExtractPropTypes<typeof carouselProps>\nexport type CarouselEmits = typeof carouselEmits\n"],"names":["buildProps","isNumber"],"mappings":";;;;;;;;AACY,MAAC,aAAa,GAAGA,kBAAU,CAAC;AACxC,EAAE,YAAY,EAAE;AAChB,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,CAAC;AACd,GAAG;AACH,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,OAAO,EAAE;AACX,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;AAC9B,IAAI,OAAO,EAAE,OAAO;AACpB,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,GAAG;AAChB,GAAG;AACH,EAAE,iBAAiB,EAAE;AACrB,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,CAAC;AACnC,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC;AACxC,IAAI,OAAO,EAAE,OAAO;AACpB,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,CAAC;AACxB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,CAAC,YAAY,EAAE,UAAU,CAAC;AACtC,IAAI,OAAO,EAAE,YAAY;AACzB,GAAG;AACH,EAAE,YAAY,EAAE;AAChB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,UAAU,EAAE,OAAO;AACrB,CAAC,EAAE;AACS,MAAC,aAAa,GAAG;AAC7B,EAAE,MAAM,EAAE,CAAC,OAAO,EAAE,IAAI,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,KAAK,CAACC,cAAQ,CAAC;AAC5D;;;;;"}
@@ -2,70 +2,212 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- require('../../../utils/index.js');
6
- var runtime = require('../../../utils/vue/props/runtime.js');
7
- var types = require('../../../utils/types.js');
5
+ var vue = require('vue');
6
+ var index$2 = require('../../icon/index.js');
7
+ var iconsVue = require('@element-plus/icons-vue');
8
+ require('../../../hooks/index.js');
9
+ var carousel = require('./carousel.js');
10
+ var useCarousel = require('./use-carousel.js');
11
+ var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
12
+ var index = require('../../../hooks/use-namespace/index.js');
13
+ var index$1 = require('../../../hooks/use-locale/index.js');
8
14
 
9
- const carouselProps = runtime.buildProps({
10
- initialIndex: {
11
- type: Number,
12
- default: 0
13
- },
14
- height: {
15
- type: String,
16
- default: ""
17
- },
18
- trigger: {
19
- type: String,
20
- values: ["hover", "click"],
21
- default: "hover"
22
- },
23
- autoplay: {
24
- type: Boolean,
25
- default: true
26
- },
27
- interval: {
28
- type: Number,
29
- default: 3e3
30
- },
31
- indicatorPosition: {
32
- type: String,
33
- values: ["", "none", "outside"],
34
- default: ""
35
- },
36
- arrow: {
37
- type: String,
38
- values: ["always", "hover", "never"],
39
- default: "hover"
40
- },
41
- type: {
42
- type: String,
43
- values: ["", "card"],
44
- default: ""
45
- },
46
- cardScale: {
47
- type: Number,
48
- default: 0.83
49
- },
50
- loop: {
51
- type: Boolean,
52
- default: true
53
- },
54
- direction: {
55
- type: String,
56
- values: ["horizontal", "vertical"],
57
- default: "horizontal"
58
- },
59
- pauseOnHover: {
60
- type: Boolean,
61
- default: true
62
- },
63
- motionBlur: Boolean
15
+ const COMPONENT_NAME = "ElCarousel";
16
+ const __default__ = vue.defineComponent({
17
+ name: COMPONENT_NAME
64
18
  });
65
- const carouselEmits = {
66
- change: (current, prev) => [current, prev].every(types.isNumber)
67
- };
19
+ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
20
+ ...__default__,
21
+ props: carousel.carouselProps,
22
+ emits: carousel.carouselEmits,
23
+ setup(__props, { expose, emit }) {
24
+ const props = __props;
25
+ const {
26
+ root,
27
+ activeIndex,
28
+ arrowDisplay,
29
+ hasLabel,
30
+ hover,
31
+ isCardType,
32
+ items,
33
+ isVertical,
34
+ containerStyle,
35
+ handleButtonEnter,
36
+ handleButtonLeave,
37
+ isTransitioning,
38
+ handleIndicatorClick,
39
+ handleMouseEnter,
40
+ handleMouseLeave,
41
+ handleTransitionEnd,
42
+ setActiveItem,
43
+ prev,
44
+ next,
45
+ PlaceholderItem,
46
+ isTwoLengthShow,
47
+ throttledArrowClick,
48
+ throttledIndicatorHover
49
+ } = useCarousel.useCarousel(props, emit, COMPONENT_NAME);
50
+ const ns = index.useNamespace("carousel");
51
+ const { t } = index$1.useLocale();
52
+ const carouselClasses = vue.computed(() => {
53
+ const classes = [ns.b(), ns.m(props.direction)];
54
+ if (vue.unref(isCardType)) {
55
+ classes.push(ns.m("card"));
56
+ }
57
+ return classes;
58
+ });
59
+ const carouselContainer = vue.computed(() => {
60
+ const classes = [ns.e("container")];
61
+ if (props.motionBlur && vue.unref(isTransitioning) && items.value.length > 1) {
62
+ classes.push(vue.unref(isVertical) ? `${ns.namespace.value}-transitioning-vertical` : `${ns.namespace.value}-transitioning`);
63
+ }
64
+ return classes;
65
+ });
66
+ const indicatorsClasses = vue.computed(() => {
67
+ const classes = [ns.e("indicators"), ns.em("indicators", props.direction)];
68
+ if (vue.unref(hasLabel)) {
69
+ classes.push(ns.em("indicators", "labels"));
70
+ }
71
+ if (props.indicatorPosition === "outside") {
72
+ classes.push(ns.em("indicators", "outside"));
73
+ }
74
+ if (vue.unref(isVertical)) {
75
+ classes.push(ns.em("indicators", "right"));
76
+ }
77
+ return classes;
78
+ });
79
+ expose({
80
+ activeIndex,
81
+ setActiveItem,
82
+ prev,
83
+ next
84
+ });
85
+ return (_ctx, _cache) => {
86
+ return vue.openBlock(), vue.createElementBlock("div", {
87
+ ref_key: "root",
88
+ ref: root,
89
+ class: vue.normalizeClass(vue.unref(carouselClasses)),
90
+ onMouseenter: vue.withModifiers(vue.unref(handleMouseEnter), ["stop"]),
91
+ onMouseleave: vue.withModifiers(vue.unref(handleMouseLeave), ["stop"])
92
+ }, [
93
+ vue.unref(arrowDisplay) ? (vue.openBlock(), vue.createBlock(vue.Transition, {
94
+ key: 0,
95
+ name: "carousel-arrow-left",
96
+ persisted: ""
97
+ }, {
98
+ default: vue.withCtx(() => [
99
+ vue.withDirectives(vue.createElementVNode("button", {
100
+ type: "button",
101
+ class: vue.normalizeClass([vue.unref(ns).e("arrow"), vue.unref(ns).em("arrow", "left")]),
102
+ "aria-label": vue.unref(t)("el.carousel.leftArrow"),
103
+ onMouseenter: ($event) => vue.unref(handleButtonEnter)("left"),
104
+ onMouseleave: vue.unref(handleButtonLeave),
105
+ onClick: vue.withModifiers(($event) => vue.unref(throttledArrowClick)(vue.unref(activeIndex) - 1), ["stop"])
106
+ }, [
107
+ vue.createVNode(vue.unref(index$2.ElIcon), null, {
108
+ default: vue.withCtx(() => [
109
+ vue.createVNode(vue.unref(iconsVue.ArrowLeft))
110
+ ]),
111
+ _: 1
112
+ })
113
+ ], 42, ["aria-label", "onMouseenter", "onMouseleave", "onClick"]), [
114
+ [
115
+ vue.vShow,
116
+ (_ctx.arrow === "always" || vue.unref(hover)) && (props.loop || vue.unref(activeIndex) > 0)
117
+ ]
118
+ ])
119
+ ]),
120
+ _: 1
121
+ })) : vue.createCommentVNode("v-if", true),
122
+ vue.unref(arrowDisplay) ? (vue.openBlock(), vue.createBlock(vue.Transition, {
123
+ key: 1,
124
+ name: "carousel-arrow-right",
125
+ persisted: ""
126
+ }, {
127
+ default: vue.withCtx(() => [
128
+ vue.withDirectives(vue.createElementVNode("button", {
129
+ type: "button",
130
+ class: vue.normalizeClass([vue.unref(ns).e("arrow"), vue.unref(ns).em("arrow", "right")]),
131
+ "aria-label": vue.unref(t)("el.carousel.rightArrow"),
132
+ onMouseenter: ($event) => vue.unref(handleButtonEnter)("right"),
133
+ onMouseleave: vue.unref(handleButtonLeave),
134
+ onClick: vue.withModifiers(($event) => vue.unref(throttledArrowClick)(vue.unref(activeIndex) + 1), ["stop"])
135
+ }, [
136
+ vue.createVNode(vue.unref(index$2.ElIcon), null, {
137
+ default: vue.withCtx(() => [
138
+ vue.createVNode(vue.unref(iconsVue.ArrowRight))
139
+ ]),
140
+ _: 1
141
+ })
142
+ ], 42, ["aria-label", "onMouseenter", "onMouseleave", "onClick"]), [
143
+ [
144
+ vue.vShow,
145
+ (_ctx.arrow === "always" || vue.unref(hover)) && (props.loop || vue.unref(activeIndex) < vue.unref(items).length - 1)
146
+ ]
147
+ ])
148
+ ]),
149
+ _: 1
150
+ })) : vue.createCommentVNode("v-if", true),
151
+ vue.createElementVNode("div", {
152
+ class: vue.normalizeClass(vue.unref(carouselContainer)),
153
+ style: vue.normalizeStyle(vue.unref(containerStyle)),
154
+ onTransitionend: vue.unref(handleTransitionEnd)
155
+ }, [
156
+ vue.createVNode(vue.unref(PlaceholderItem)),
157
+ vue.renderSlot(_ctx.$slots, "default")
158
+ ], 46, ["onTransitionend"]),
159
+ _ctx.indicatorPosition !== "none" ? (vue.openBlock(), vue.createElementBlock("ul", {
160
+ key: 2,
161
+ class: vue.normalizeClass(vue.unref(indicatorsClasses))
162
+ }, [
163
+ (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(vue.unref(items), (item, index) => {
164
+ return vue.withDirectives((vue.openBlock(), vue.createElementBlock("li", {
165
+ key: index,
166
+ class: vue.normalizeClass([
167
+ vue.unref(ns).e("indicator"),
168
+ vue.unref(ns).em("indicator", _ctx.direction),
169
+ vue.unref(ns).is("active", index === vue.unref(activeIndex))
170
+ ]),
171
+ onMouseenter: ($event) => vue.unref(throttledIndicatorHover)(index),
172
+ onClick: vue.withModifiers(($event) => vue.unref(handleIndicatorClick)(index), ["stop"])
173
+ }, [
174
+ vue.createElementVNode("button", {
175
+ class: vue.normalizeClass(vue.unref(ns).e("button")),
176
+ "aria-label": vue.unref(t)("el.carousel.indicator", { index: index + 1 })
177
+ }, [
178
+ vue.unref(hasLabel) ? (vue.openBlock(), vue.createElementBlock("span", { key: 0 }, vue.toDisplayString(item.props.label), 1)) : vue.createCommentVNode("v-if", true)
179
+ ], 10, ["aria-label"])
180
+ ], 42, ["onMouseenter", "onClick"])), [
181
+ [vue.vShow, vue.unref(isTwoLengthShow)(index)]
182
+ ]);
183
+ }), 128))
184
+ ], 2)) : vue.createCommentVNode("v-if", true),
185
+ props.motionBlur ? (vue.openBlock(), vue.createElementBlock("svg", {
186
+ key: 3,
187
+ xmlns: "http://www.w3.org/2000/svg",
188
+ version: "1.1",
189
+ style: { "display": "none" }
190
+ }, [
191
+ vue.createElementVNode("defs", null, [
192
+ vue.createElementVNode("filter", { id: "elCarouselHorizontal" }, [
193
+ vue.createElementVNode("feGaussianBlur", {
194
+ in: "SourceGraphic",
195
+ stdDeviation: "12,0"
196
+ })
197
+ ]),
198
+ vue.createElementVNode("filter", { id: "elCarouselVertical" }, [
199
+ vue.createElementVNode("feGaussianBlur", {
200
+ in: "SourceGraphic",
201
+ stdDeviation: "0,10"
202
+ })
203
+ ])
204
+ ])
205
+ ])) : vue.createCommentVNode("v-if", true)
206
+ ], 42, ["onMouseenter", "onMouseleave"]);
207
+ };
208
+ }
209
+ });
210
+ var Carousel = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "carousel.vue"]]);
68
211
 
69
- exports.carouselEmits = carouselEmits;
70
- exports.carouselProps = carouselProps;
212
+ exports["default"] = Carousel;
71
213
  //# sourceMappingURL=carousel2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"carousel2.js","sources":["../../../../../../packages/components/carousel/src/carousel.ts"],"sourcesContent":["import { buildProps, isNumber } from '@element-plus/utils'\nimport type { ExtractPropTypes } from 'vue'\n\nexport const carouselProps = buildProps({\n /**\n * @description index of the initially active slide (starting from 0)\n */\n initialIndex: {\n type: Number,\n default: 0,\n },\n /**\n * @description height of the carousel\n */\n height: {\n type: String,\n default: '',\n },\n /**\n * @description how indicators are triggered\n */\n trigger: {\n type: String,\n values: ['hover', 'click'],\n default: 'hover',\n },\n /**\n * @description whether automatically loop the slides\n */\n autoplay: {\n type: Boolean,\n default: true,\n },\n /**\n * @description interval of the auto loop, in milliseconds\n */\n interval: {\n type: Number,\n default: 3000,\n },\n /**\n * @description position of the indicators\n */\n indicatorPosition: {\n type: String,\n values: ['', 'none', 'outside'],\n default: '',\n },\n /**\n * @description when arrows are shown\n */\n arrow: {\n type: String,\n values: ['always', 'hover', 'never'],\n default: 'hover',\n },\n /**\n * @description type of the Carousel\n */\n type: {\n type: String,\n values: ['', 'card'],\n default: '',\n },\n /**\n * @description when type is card, scaled size of secondary cards\n */\n cardScale: {\n type: Number,\n default: 0.83,\n },\n /**\n * @description display the items in loop\n */\n loop: {\n type: Boolean,\n default: true,\n },\n /**\n * @description display direction\n */\n direction: {\n type: String,\n values: ['horizontal', 'vertical'],\n default: 'horizontal',\n },\n /**\n * @description pause autoplay when hover\n */\n pauseOnHover: {\n type: Boolean,\n default: true,\n },\n /**\n * @description infuse dynamism and smoothness into the carousel\n */\n motionBlur: Boolean,\n} as const)\n\nexport const carouselEmits = {\n /**\n * @description triggers when the active slide switches\n * @param current index of the new active slide\n * @param prev index of the old active slide\n */\n change: (current: number, prev: number) => [current, prev].every(isNumber),\n}\n\nexport type CarouselProps = ExtractPropTypes<typeof carouselProps>\nexport type CarouselEmits = typeof carouselEmits\n"],"names":["buildProps","isNumber"],"mappings":";;;;;;;;AACY,MAAC,aAAa,GAAGA,kBAAU,CAAC;AACxC,EAAE,YAAY,EAAE;AAChB,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,CAAC;AACd,GAAG;AACH,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,OAAO,EAAE;AACX,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;AAC9B,IAAI,OAAO,EAAE,OAAO;AACpB,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,GAAG;AAChB,GAAG;AACH,EAAE,iBAAiB,EAAE;AACrB,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,CAAC;AACnC,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC;AACxC,IAAI,OAAO,EAAE,OAAO;AACpB,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,CAAC;AACxB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,CAAC,YAAY,EAAE,UAAU,CAAC;AACtC,IAAI,OAAO,EAAE,YAAY;AACzB,GAAG;AACH,EAAE,YAAY,EAAE;AAChB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,UAAU,EAAE,OAAO;AACrB,CAAC,EAAE;AACS,MAAC,aAAa,GAAG;AAC7B,EAAE,MAAM,EAAE,CAAC,OAAO,EAAE,IAAI,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,KAAK,CAACC,cAAQ,CAAC;AAC5D;;;;;"}
1
+ {"version":3,"file":"carousel2.js","sources":["../../../../../../packages/components/carousel/src/carousel.vue"],"sourcesContent":["<template>\n <div\n ref=\"root\"\n :class=\"carouselClasses\"\n @mouseenter.stop=\"handleMouseEnter\"\n @mouseleave.stop=\"handleMouseLeave\"\n >\n <transition v-if=\"arrowDisplay\" name=\"carousel-arrow-left\">\n <button\n v-show=\"\n (arrow === 'always' || hover) && (props.loop || activeIndex > 0)\n \"\n type=\"button\"\n :class=\"[ns.e('arrow'), ns.em('arrow', 'left')]\"\n :aria-label=\"t('el.carousel.leftArrow')\"\n @mouseenter=\"handleButtonEnter('left')\"\n @mouseleave=\"handleButtonLeave\"\n @click.stop=\"throttledArrowClick(activeIndex - 1)\"\n >\n <ElIcon>\n <ArrowLeft />\n </ElIcon>\n </button>\n </transition>\n <transition v-if=\"arrowDisplay\" name=\"carousel-arrow-right\">\n <button\n v-show=\"\n (arrow === 'always' || hover) &&\n (props.loop || activeIndex < items.length - 1)\n \"\n type=\"button\"\n :class=\"[ns.e('arrow'), ns.em('arrow', 'right')]\"\n :aria-label=\"t('el.carousel.rightArrow')\"\n @mouseenter=\"handleButtonEnter('right')\"\n @mouseleave=\"handleButtonLeave\"\n @click.stop=\"throttledArrowClick(activeIndex + 1)\"\n >\n <ElIcon>\n <ArrowRight />\n </ElIcon>\n </button>\n </transition>\n <div\n :class=\"carouselContainer\"\n :style=\"containerStyle\"\n @transitionend=\"handleTransitionEnd\"\n >\n <PlaceholderItem />\n <slot />\n </div>\n <ul v-if=\"indicatorPosition !== 'none'\" :class=\"indicatorsClasses\">\n <li\n v-for=\"(item, index) in items\"\n v-show=\"isTwoLengthShow(index)\"\n :key=\"index\"\n :class=\"[\n ns.e('indicator'),\n ns.em('indicator', direction),\n ns.is('active', index === activeIndex),\n ]\"\n @mouseenter=\"throttledIndicatorHover(index)\"\n @click.stop=\"handleIndicatorClick(index)\"\n >\n <button\n :class=\"ns.e('button')\"\n :aria-label=\"t('el.carousel.indicator', { index: index + 1 })\"\n >\n <span v-if=\"hasLabel\">{{ item.props.label }}</span>\n </button>\n </li>\n </ul>\n <svg\n v-if=\"props.motionBlur\"\n xmlns=\"http://www.w3.org/2000/svg\"\n version=\"1.1\"\n style=\"display: none\"\n >\n <defs>\n <filter id=\"elCarouselHorizontal\">\n <feGaussianBlur in=\"SourceGraphic\" stdDeviation=\"12,0\" />\n </filter>\n <filter id=\"elCarouselVertical\">\n <feGaussianBlur in=\"SourceGraphic\" stdDeviation=\"0,10\" />\n </filter>\n </defs>\n </svg>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, unref } from 'vue'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { ArrowLeft, ArrowRight } from '@element-plus/icons-vue'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport { carouselEmits, carouselProps } from './carousel'\nimport { useCarousel } from './use-carousel'\n\nconst COMPONENT_NAME = 'ElCarousel'\ndefineOptions({\n name: COMPONENT_NAME,\n})\n\nconst props = defineProps(carouselProps)\nconst emit = defineEmits(carouselEmits)\nconst {\n root,\n activeIndex,\n arrowDisplay,\n hasLabel,\n hover,\n isCardType,\n items,\n isVertical,\n containerStyle,\n handleButtonEnter,\n handleButtonLeave,\n isTransitioning,\n handleIndicatorClick,\n handleMouseEnter,\n handleMouseLeave,\n handleTransitionEnd,\n setActiveItem,\n prev,\n next,\n PlaceholderItem,\n isTwoLengthShow,\n throttledArrowClick,\n throttledIndicatorHover,\n} = useCarousel(props, emit, COMPONENT_NAME)\nconst ns = useNamespace('carousel')\n\nconst { t } = useLocale()\n\nconst carouselClasses = computed(() => {\n const classes = [ns.b(), ns.m(props.direction)]\n if (unref(isCardType)) {\n classes.push(ns.m('card'))\n }\n return classes\n})\n\nconst carouselContainer = computed(() => {\n const classes = [ns.e('container')]\n if (props.motionBlur && unref(isTransitioning) && items.value.length > 1) {\n classes.push(\n unref(isVertical)\n ? `${ns.namespace.value}-transitioning-vertical`\n : `${ns.namespace.value}-transitioning`\n )\n }\n return classes\n})\n\nconst indicatorsClasses = computed(() => {\n const classes = [ns.e('indicators'), ns.em('indicators', props.direction)]\n if (unref(hasLabel)) {\n classes.push(ns.em('indicators', 'labels'))\n }\n if (props.indicatorPosition === 'outside') {\n classes.push(ns.em('indicators', 'outside'))\n }\n if (unref(isVertical)) {\n classes.push(ns.em('indicators', 'right'))\n }\n return classes\n})\n\ndefineExpose({\n /** @description active slide index */\n activeIndex,\n /** @description manually switch slide, index of the slide to be switched to, starting from 0; or the `name` of corresponding `el-carousel-item` */\n setActiveItem,\n /** @description switch to the previous slide */\n prev,\n /** @description switch to the next slide */\n next,\n})\n</script>\n"],"names":["useCarousel","useNamespace","useLocale","computed","unref","_openBlock","_createElementBlock","_normalizeClass","_unref","_withModifiers"],"mappings":"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"}
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var collection = require('./src/collection.js');
5
+ var collection = require('./src/collection2.js');
6
6
  require('./src/tokens.js');
7
7
 
8
8
 
@@ -3,68 +3,15 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var vue = require('vue');
6
- var collection = require('./collection2.js');
7
- var collectionItem = require('./collection-item.js');
6
+ var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
8
7
 
9
- const COLLECTION_ITEM_SIGN = `data-el-collection-item`;
10
- const createCollectionWithScope = (name) => {
11
- const COLLECTION_NAME = `El${name}Collection`;
12
- const COLLECTION_ITEM_NAME = `${COLLECTION_NAME}Item`;
13
- const COLLECTION_INJECTION_KEY = Symbol(COLLECTION_NAME);
14
- const COLLECTION_ITEM_INJECTION_KEY = Symbol(COLLECTION_ITEM_NAME);
15
- const ElCollection = {
16
- ...collection["default"],
17
- name: COLLECTION_NAME,
18
- setup() {
19
- const collectionRef = vue.ref(null);
20
- const itemMap = /* @__PURE__ */ new Map();
21
- const getItems = () => {
22
- const collectionEl = vue.unref(collectionRef);
23
- if (!collectionEl)
24
- return [];
25
- const orderedNodes = Array.from(collectionEl.querySelectorAll(`[${COLLECTION_ITEM_SIGN}]`));
26
- const items = [...itemMap.values()];
27
- return items.sort((a, b) => orderedNodes.indexOf(a.ref) - orderedNodes.indexOf(b.ref));
28
- };
29
- vue.provide(COLLECTION_INJECTION_KEY, {
30
- itemMap,
31
- getItems,
32
- collectionRef
33
- });
34
- }
35
- };
36
- const ElCollectionItem = {
37
- ...collectionItem["default"],
38
- name: COLLECTION_ITEM_NAME,
39
- setup(_, { attrs }) {
40
- const collectionItemRef = vue.ref(null);
41
- const collectionInjection = vue.inject(COLLECTION_INJECTION_KEY, void 0);
42
- vue.provide(COLLECTION_ITEM_INJECTION_KEY, {
43
- collectionItemRef
44
- });
45
- vue.onMounted(() => {
46
- const collectionItemEl = vue.unref(collectionItemRef);
47
- if (collectionItemEl) {
48
- collectionInjection.itemMap.set(collectionItemEl, {
49
- ref: collectionItemEl,
50
- ...attrs
51
- });
52
- }
53
- });
54
- vue.onBeforeUnmount(() => {
55
- const collectionItemEl = vue.unref(collectionItemRef);
56
- collectionInjection.itemMap.delete(collectionItemEl);
57
- });
58
- }
59
- };
60
- return {
61
- COLLECTION_INJECTION_KEY,
62
- COLLECTION_ITEM_INJECTION_KEY,
63
- ElCollection,
64
- ElCollectionItem
65
- };
66
- };
8
+ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
9
+ inheritAttrs: false
10
+ });
11
+ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
12
+ return vue.renderSlot(_ctx.$slots, "default");
13
+ }
14
+ var Collection = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["render", _sfc_render], ["__file", "collection.vue"]]);
67
15
 
68
- exports.COLLECTION_ITEM_SIGN = COLLECTION_ITEM_SIGN;
69
- exports.createCollectionWithScope = createCollectionWithScope;
16
+ exports["default"] = Collection;
70
17
  //# sourceMappingURL=collection.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"collection.js","sources":["../../../../../../packages/components/collection/src/collection.ts"],"sourcesContent":["import { inject, onBeforeUnmount, onMounted, provide, ref, unref } from 'vue'\nimport Collection from './collection.vue'\nimport CollectionItem from './collection-item.vue'\n\nimport type { InjectionKey } from 'vue'\nimport type { SetupContext } from '@vue/runtime-core'\nimport type {\n ElCollectionInjectionContext,\n ElCollectionItemInjectionContext,\n} from './tokens'\n\nexport const COLLECTION_ITEM_SIGN = `data-el-collection-item`\n\n// Make sure the first letter of name is capitalized\nexport const createCollectionWithScope = (name: string) => {\n const COLLECTION_NAME = `El${name}Collection`\n const COLLECTION_ITEM_NAME = `${COLLECTION_NAME}Item`\n const COLLECTION_INJECTION_KEY: InjectionKey<ElCollectionInjectionContext> =\n Symbol(COLLECTION_NAME)\n const COLLECTION_ITEM_INJECTION_KEY: InjectionKey<ElCollectionItemInjectionContext> =\n Symbol(COLLECTION_ITEM_NAME)\n\n const ElCollection = {\n ...Collection,\n name: COLLECTION_NAME,\n setup() {\n const collectionRef = ref<HTMLElement | null>(null)\n const itemMap: ElCollectionInjectionContext['itemMap'] = new Map()\n const getItems = () => {\n const collectionEl = unref(collectionRef)\n\n if (!collectionEl) return []\n const orderedNodes = Array.from(\n collectionEl.querySelectorAll(`[${COLLECTION_ITEM_SIGN}]`)\n )\n\n const items = [...itemMap.values()]\n\n return items.sort(\n (a, b) => orderedNodes.indexOf(a.ref!) - orderedNodes.indexOf(b.ref!)\n )\n }\n\n provide(COLLECTION_INJECTION_KEY, {\n itemMap,\n getItems,\n collectionRef,\n })\n },\n }\n\n const ElCollectionItem = {\n ...CollectionItem,\n name: COLLECTION_ITEM_NAME,\n setup(_: unknown, { attrs }: SetupContext) {\n const collectionItemRef = ref<HTMLElement | null>(null)\n const collectionInjection = inject(COLLECTION_INJECTION_KEY, undefined)!\n\n provide(COLLECTION_ITEM_INJECTION_KEY, {\n collectionItemRef,\n })\n\n onMounted(() => {\n const collectionItemEl = unref(collectionItemRef)\n if (collectionItemEl) {\n collectionInjection.itemMap.set(collectionItemEl, {\n ref: collectionItemEl,\n ...attrs,\n })\n }\n })\n\n onBeforeUnmount(() => {\n const collectionItemEl = unref(collectionItemRef)!\n collectionInjection.itemMap.delete(collectionItemEl)\n })\n },\n }\n\n return {\n COLLECTION_INJECTION_KEY,\n COLLECTION_ITEM_INJECTION_KEY,\n ElCollection,\n ElCollectionItem,\n }\n}\n"],"names":["Collection","ref","unref","provide","CollectionItem","inject","onMounted","onBeforeUnmount"],"mappings":"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"}
1
+ {"version":3,"file":"collection.js","sources":["../../../../../../packages/components/collection/src/collection.vue"],"sourcesContent":["<template>\n <slot />\n</template>\n\n<script lang=\"ts\" setup>\ndefineOptions({\n inheritAttrs: false,\n})\n</script>\n"],"names":["DO_defineComponent","_renderSlot"],"mappings":";;;;;;;kCAKcA,mBAAA,CAAA;AAAA,EACZ,YAAc,EAAA,KAAA;AAChB,CAAA,CAAA,CAAA;;SANEC,cAAQ,CAAA,IAAA,CAAA,MAAA,EAAA,SAAA,CAAA,CAAA;;;;;;"}
@@ -3,15 +3,68 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var vue = require('vue');
6
- var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
6
+ var collection = require('./collection.js');
7
+ var collectionItem = require('./collection-item.js');
7
8
 
8
- const _sfc_main = /* @__PURE__ */ vue.defineComponent({
9
- inheritAttrs: false
10
- });
11
- function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
12
- return vue.renderSlot(_ctx.$slots, "default");
13
- }
14
- var Collection = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["render", _sfc_render], ["__file", "collection.vue"]]);
9
+ const COLLECTION_ITEM_SIGN = `data-el-collection-item`;
10
+ const createCollectionWithScope = (name) => {
11
+ const COLLECTION_NAME = `El${name}Collection`;
12
+ const COLLECTION_ITEM_NAME = `${COLLECTION_NAME}Item`;
13
+ const COLLECTION_INJECTION_KEY = Symbol(COLLECTION_NAME);
14
+ const COLLECTION_ITEM_INJECTION_KEY = Symbol(COLLECTION_ITEM_NAME);
15
+ const ElCollection = {
16
+ ...collection["default"],
17
+ name: COLLECTION_NAME,
18
+ setup() {
19
+ const collectionRef = vue.ref(null);
20
+ const itemMap = /* @__PURE__ */ new Map();
21
+ const getItems = () => {
22
+ const collectionEl = vue.unref(collectionRef);
23
+ if (!collectionEl)
24
+ return [];
25
+ const orderedNodes = Array.from(collectionEl.querySelectorAll(`[${COLLECTION_ITEM_SIGN}]`));
26
+ const items = [...itemMap.values()];
27
+ return items.sort((a, b) => orderedNodes.indexOf(a.ref) - orderedNodes.indexOf(b.ref));
28
+ };
29
+ vue.provide(COLLECTION_INJECTION_KEY, {
30
+ itemMap,
31
+ getItems,
32
+ collectionRef
33
+ });
34
+ }
35
+ };
36
+ const ElCollectionItem = {
37
+ ...collectionItem["default"],
38
+ name: COLLECTION_ITEM_NAME,
39
+ setup(_, { attrs }) {
40
+ const collectionItemRef = vue.ref(null);
41
+ const collectionInjection = vue.inject(COLLECTION_INJECTION_KEY, void 0);
42
+ vue.provide(COLLECTION_ITEM_INJECTION_KEY, {
43
+ collectionItemRef
44
+ });
45
+ vue.onMounted(() => {
46
+ const collectionItemEl = vue.unref(collectionItemRef);
47
+ if (collectionItemEl) {
48
+ collectionInjection.itemMap.set(collectionItemEl, {
49
+ ref: collectionItemEl,
50
+ ...attrs
51
+ });
52
+ }
53
+ });
54
+ vue.onBeforeUnmount(() => {
55
+ const collectionItemEl = vue.unref(collectionItemRef);
56
+ collectionInjection.itemMap.delete(collectionItemEl);
57
+ });
58
+ }
59
+ };
60
+ return {
61
+ COLLECTION_INJECTION_KEY,
62
+ COLLECTION_ITEM_INJECTION_KEY,
63
+ ElCollection,
64
+ ElCollectionItem
65
+ };
66
+ };
15
67
 
16
- exports["default"] = Collection;
68
+ exports.COLLECTION_ITEM_SIGN = COLLECTION_ITEM_SIGN;
69
+ exports.createCollectionWithScope = createCollectionWithScope;
17
70
  //# sourceMappingURL=collection2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"collection2.js","sources":["../../../../../../packages/components/collection/src/collection.vue"],"sourcesContent":["<template>\n <slot />\n</template>\n\n<script lang=\"ts\" setup>\ndefineOptions({\n inheritAttrs: false,\n})\n</script>\n"],"names":["DO_defineComponent","_renderSlot"],"mappings":";;;;;;;kCAKcA,mBAAA,CAAA;AAAA,EACZ,YAAc,EAAA,KAAA;AAChB,CAAA,CAAA,CAAA;;SANEC,cAAQ,CAAA,IAAA,CAAA,MAAA,EAAA,SAAA,CAAA,CAAA;;;;;;"}
1
+ {"version":3,"file":"collection2.js","sources":["../../../../../../packages/components/collection/src/collection.ts"],"sourcesContent":["import { inject, onBeforeUnmount, onMounted, provide, ref, unref } from 'vue'\nimport Collection from './collection.vue'\nimport CollectionItem from './collection-item.vue'\n\nimport type { InjectionKey } from 'vue'\nimport type { SetupContext } from '@vue/runtime-core'\nimport type {\n ElCollectionInjectionContext,\n ElCollectionItemInjectionContext,\n} from './tokens'\n\nexport const COLLECTION_ITEM_SIGN = `data-el-collection-item`\n\n// Make sure the first letter of name is capitalized\nexport const createCollectionWithScope = (name: string) => {\n const COLLECTION_NAME = `El${name}Collection`\n const COLLECTION_ITEM_NAME = `${COLLECTION_NAME}Item`\n const COLLECTION_INJECTION_KEY: InjectionKey<ElCollectionInjectionContext> =\n Symbol(COLLECTION_NAME)\n const COLLECTION_ITEM_INJECTION_KEY: InjectionKey<ElCollectionItemInjectionContext> =\n Symbol(COLLECTION_ITEM_NAME)\n\n const ElCollection = {\n ...Collection,\n name: COLLECTION_NAME,\n setup() {\n const collectionRef = ref<HTMLElement | null>(null)\n const itemMap: ElCollectionInjectionContext['itemMap'] = new Map()\n const getItems = () => {\n const collectionEl = unref(collectionRef)\n\n if (!collectionEl) return []\n const orderedNodes = Array.from(\n collectionEl.querySelectorAll(`[${COLLECTION_ITEM_SIGN}]`)\n )\n\n const items = [...itemMap.values()]\n\n return items.sort(\n (a, b) => orderedNodes.indexOf(a.ref!) - orderedNodes.indexOf(b.ref!)\n )\n }\n\n provide(COLLECTION_INJECTION_KEY, {\n itemMap,\n getItems,\n collectionRef,\n })\n },\n }\n\n const ElCollectionItem = {\n ...CollectionItem,\n name: COLLECTION_ITEM_NAME,\n setup(_: unknown, { attrs }: SetupContext) {\n const collectionItemRef = ref<HTMLElement | null>(null)\n const collectionInjection = inject(COLLECTION_INJECTION_KEY, undefined)!\n\n provide(COLLECTION_ITEM_INJECTION_KEY, {\n collectionItemRef,\n })\n\n onMounted(() => {\n const collectionItemEl = unref(collectionItemRef)\n if (collectionItemEl) {\n collectionInjection.itemMap.set(collectionItemEl, {\n ref: collectionItemEl,\n ...attrs,\n })\n }\n })\n\n onBeforeUnmount(() => {\n const collectionItemEl = unref(collectionItemRef)!\n collectionInjection.itemMap.delete(collectionItemEl)\n })\n },\n }\n\n return {\n COLLECTION_INJECTION_KEY,\n COLLECTION_ITEM_INJECTION_KEY,\n ElCollection,\n ElCollectionItem,\n }\n}\n"],"names":["Collection","ref","unref","provide","CollectionItem","inject","onMounted","onBeforeUnmount"],"mappings":"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"}
@@ -18,7 +18,7 @@ var tokens$1 = require('../../roving-focus-group/src/tokens.js');
18
18
  var refs = require('../../../utils/vue/refs.js');
19
19
  var event = require('../../../utils/dom/event.js');
20
20
  var aria = require('../../../constants/aria.js');
21
- var collection = require('../../collection/src/collection.js');
21
+ var collection = require('../../collection/src/collection2.js');
22
22
 
23
23
  const _sfc_main = vue.defineComponent({
24
24
  name: "DropdownItemImpl",
@@ -11,7 +11,7 @@ var trigger = require('../../tooltip/src/trigger.js');
11
11
  var content = require('../../tooltip/src/content.js');
12
12
  var icon = require('../../../utils/vue/icon.js');
13
13
  var aria = require('../../../constants/aria.js');
14
- var collection = require('../../collection/src/collection.js');
14
+ var collection = require('../../collection/src/collection2.js');
15
15
 
16
16
  const dropdownProps = runtime.buildProps({
17
17
  trigger: trigger.useTooltipTriggerProps.trigger,