@element-plus/nightly 0.0.20220404 → 0.0.20220407

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 (296) hide show
  1. package/dist/index.full.js +8 -3
  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 +8 -3
  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.js +1 -1
  12. package/dist/locale/ar.min.js +1 -1
  13. package/dist/locale/ar.min.mjs +1 -1
  14. package/dist/locale/ar.mjs +1 -1
  15. package/dist/locale/az.js +1 -1
  16. package/dist/locale/az.min.js +1 -1
  17. package/dist/locale/az.min.mjs +1 -1
  18. package/dist/locale/az.mjs +1 -1
  19. package/dist/locale/bg.js +1 -1
  20. package/dist/locale/bg.min.js +1 -1
  21. package/dist/locale/bg.min.mjs +1 -1
  22. package/dist/locale/bg.mjs +1 -1
  23. package/dist/locale/bn.js +1 -1
  24. package/dist/locale/bn.min.js +1 -1
  25. package/dist/locale/bn.min.mjs +1 -1
  26. package/dist/locale/bn.mjs +1 -1
  27. package/dist/locale/ca.js +1 -1
  28. package/dist/locale/ca.min.js +1 -1
  29. package/dist/locale/ca.min.mjs +1 -1
  30. package/dist/locale/ca.mjs +1 -1
  31. package/dist/locale/cs.js +1 -1
  32. package/dist/locale/cs.min.js +1 -1
  33. package/dist/locale/cs.min.mjs +1 -1
  34. package/dist/locale/cs.mjs +1 -1
  35. package/dist/locale/da.js +1 -1
  36. package/dist/locale/da.min.js +1 -1
  37. package/dist/locale/da.min.mjs +1 -1
  38. package/dist/locale/da.mjs +1 -1
  39. package/dist/locale/de.js +1 -1
  40. package/dist/locale/de.min.js +1 -1
  41. package/dist/locale/de.min.mjs +1 -1
  42. package/dist/locale/de.mjs +1 -1
  43. package/dist/locale/el.js +1 -1
  44. package/dist/locale/el.min.js +1 -1
  45. package/dist/locale/el.min.mjs +1 -1
  46. package/dist/locale/el.mjs +1 -1
  47. package/dist/locale/en.js +1 -1
  48. package/dist/locale/en.min.js +1 -1
  49. package/dist/locale/en.min.mjs +1 -1
  50. package/dist/locale/en.mjs +1 -1
  51. package/dist/locale/eo.js +1 -1
  52. package/dist/locale/eo.min.js +1 -1
  53. package/dist/locale/eo.min.mjs +1 -1
  54. package/dist/locale/eo.mjs +1 -1
  55. package/dist/locale/es.js +1 -1
  56. package/dist/locale/es.min.js +1 -1
  57. package/dist/locale/es.min.mjs +1 -1
  58. package/dist/locale/es.mjs +1 -1
  59. package/dist/locale/et.js +1 -1
  60. package/dist/locale/et.min.js +1 -1
  61. package/dist/locale/et.min.mjs +1 -1
  62. package/dist/locale/et.mjs +1 -1
  63. package/dist/locale/eu.js +1 -1
  64. package/dist/locale/eu.min.js +1 -1
  65. package/dist/locale/eu.min.mjs +1 -1
  66. package/dist/locale/eu.mjs +1 -1
  67. package/dist/locale/fa.js +1 -1
  68. package/dist/locale/fa.min.js +1 -1
  69. package/dist/locale/fa.min.mjs +1 -1
  70. package/dist/locale/fa.mjs +1 -1
  71. package/dist/locale/fi.js +1 -1
  72. package/dist/locale/fi.min.js +1 -1
  73. package/dist/locale/fi.min.mjs +1 -1
  74. package/dist/locale/fi.mjs +1 -1
  75. package/dist/locale/fr.js +1 -1
  76. package/dist/locale/fr.min.js +1 -1
  77. package/dist/locale/fr.min.mjs +1 -1
  78. package/dist/locale/fr.mjs +1 -1
  79. package/dist/locale/he.js +1 -1
  80. package/dist/locale/he.min.js +1 -1
  81. package/dist/locale/he.min.mjs +1 -1
  82. package/dist/locale/he.mjs +1 -1
  83. package/dist/locale/hr.js +1 -1
  84. package/dist/locale/hr.min.js +1 -1
  85. package/dist/locale/hr.min.mjs +1 -1
  86. package/dist/locale/hr.mjs +1 -1
  87. package/dist/locale/hu.js +1 -1
  88. package/dist/locale/hu.min.js +1 -1
  89. package/dist/locale/hu.min.mjs +1 -1
  90. package/dist/locale/hu.mjs +1 -1
  91. package/dist/locale/hy-am.js +1 -1
  92. package/dist/locale/hy-am.min.js +1 -1
  93. package/dist/locale/hy-am.min.mjs +1 -1
  94. package/dist/locale/hy-am.mjs +1 -1
  95. package/dist/locale/id.js +1 -1
  96. package/dist/locale/id.min.js +1 -1
  97. package/dist/locale/id.min.mjs +1 -1
  98. package/dist/locale/id.mjs +1 -1
  99. package/dist/locale/it.js +1 -1
  100. package/dist/locale/it.min.js +1 -1
  101. package/dist/locale/it.min.mjs +1 -1
  102. package/dist/locale/it.mjs +1 -1
  103. package/dist/locale/ja.js +1 -1
  104. package/dist/locale/ja.min.js +1 -1
  105. package/dist/locale/ja.min.mjs +1 -1
  106. package/dist/locale/ja.mjs +1 -1
  107. package/dist/locale/kk.js +1 -1
  108. package/dist/locale/kk.min.js +1 -1
  109. package/dist/locale/kk.min.mjs +1 -1
  110. package/dist/locale/kk.mjs +1 -1
  111. package/dist/locale/km.js +1 -1
  112. package/dist/locale/km.min.js +1 -1
  113. package/dist/locale/km.min.mjs +1 -1
  114. package/dist/locale/km.mjs +1 -1
  115. package/dist/locale/ko.js +1 -1
  116. package/dist/locale/ko.min.js +1 -1
  117. package/dist/locale/ko.min.mjs +1 -1
  118. package/dist/locale/ko.mjs +1 -1
  119. package/dist/locale/ku.js +1 -1
  120. package/dist/locale/ku.min.js +1 -1
  121. package/dist/locale/ku.min.mjs +1 -1
  122. package/dist/locale/ku.mjs +1 -1
  123. package/dist/locale/ky.js +1 -1
  124. package/dist/locale/ky.min.js +1 -1
  125. package/dist/locale/ky.min.mjs +1 -1
  126. package/dist/locale/ky.mjs +1 -1
  127. package/dist/locale/lt.js +1 -1
  128. package/dist/locale/lt.min.js +1 -1
  129. package/dist/locale/lt.min.mjs +1 -1
  130. package/dist/locale/lt.mjs +1 -1
  131. package/dist/locale/lv.js +1 -1
  132. package/dist/locale/lv.min.js +1 -1
  133. package/dist/locale/lv.min.mjs +1 -1
  134. package/dist/locale/lv.mjs +1 -1
  135. package/dist/locale/mg.js +1 -1
  136. package/dist/locale/mg.min.js +1 -1
  137. package/dist/locale/mg.min.mjs +1 -1
  138. package/dist/locale/mg.mjs +1 -1
  139. package/dist/locale/mn.js +1 -1
  140. package/dist/locale/mn.min.js +1 -1
  141. package/dist/locale/mn.min.mjs +1 -1
  142. package/dist/locale/mn.mjs +1 -1
  143. package/dist/locale/nb-no.js +1 -1
  144. package/dist/locale/nb-no.min.js +1 -1
  145. package/dist/locale/nb-no.min.mjs +1 -1
  146. package/dist/locale/nb-no.mjs +1 -1
  147. package/dist/locale/nl.js +1 -1
  148. package/dist/locale/nl.min.js +1 -1
  149. package/dist/locale/nl.min.mjs +1 -1
  150. package/dist/locale/nl.mjs +1 -1
  151. package/dist/locale/pa.js +1 -1
  152. package/dist/locale/pa.min.js +1 -1
  153. package/dist/locale/pa.min.mjs +1 -1
  154. package/dist/locale/pa.mjs +1 -1
  155. package/dist/locale/pl.js +1 -1
  156. package/dist/locale/pl.min.js +1 -1
  157. package/dist/locale/pl.min.mjs +1 -1
  158. package/dist/locale/pl.mjs +1 -1
  159. package/dist/locale/pt-br.js +1 -1
  160. package/dist/locale/pt-br.min.js +1 -1
  161. package/dist/locale/pt-br.min.mjs +1 -1
  162. package/dist/locale/pt-br.mjs +1 -1
  163. package/dist/locale/pt.js +1 -1
  164. package/dist/locale/pt.min.js +1 -1
  165. package/dist/locale/pt.min.mjs +1 -1
  166. package/dist/locale/pt.mjs +1 -1
  167. package/dist/locale/ro.js +1 -1
  168. package/dist/locale/ro.min.js +1 -1
  169. package/dist/locale/ro.min.mjs +1 -1
  170. package/dist/locale/ro.mjs +1 -1
  171. package/dist/locale/ru.js +1 -1
  172. package/dist/locale/ru.min.js +1 -1
  173. package/dist/locale/ru.min.mjs +1 -1
  174. package/dist/locale/ru.mjs +1 -1
  175. package/dist/locale/sk.js +1 -1
  176. package/dist/locale/sk.min.js +1 -1
  177. package/dist/locale/sk.min.mjs +1 -1
  178. package/dist/locale/sk.mjs +1 -1
  179. package/dist/locale/sl.js +1 -1
  180. package/dist/locale/sl.min.js +1 -1
  181. package/dist/locale/sl.min.mjs +1 -1
  182. package/dist/locale/sl.mjs +1 -1
  183. package/dist/locale/sr.js +1 -1
  184. package/dist/locale/sr.min.js +1 -1
  185. package/dist/locale/sr.min.mjs +1 -1
  186. package/dist/locale/sr.mjs +1 -1
  187. package/dist/locale/sv.js +1 -1
  188. package/dist/locale/sv.min.js +1 -1
  189. package/dist/locale/sv.min.mjs +1 -1
  190. package/dist/locale/sv.mjs +1 -1
  191. package/dist/locale/ta.js +1 -1
  192. package/dist/locale/ta.min.js +1 -1
  193. package/dist/locale/ta.min.mjs +1 -1
  194. package/dist/locale/ta.mjs +1 -1
  195. package/dist/locale/th.js +1 -1
  196. package/dist/locale/th.min.js +1 -1
  197. package/dist/locale/th.min.mjs +1 -1
  198. package/dist/locale/th.mjs +1 -1
  199. package/dist/locale/tk.js +1 -1
  200. package/dist/locale/tk.min.js +1 -1
  201. package/dist/locale/tk.min.mjs +1 -1
  202. package/dist/locale/tk.mjs +1 -1
  203. package/dist/locale/tr.js +1 -1
  204. package/dist/locale/tr.min.js +1 -1
  205. package/dist/locale/tr.min.mjs +1 -1
  206. package/dist/locale/tr.mjs +1 -1
  207. package/dist/locale/ug-cn.js +1 -1
  208. package/dist/locale/ug-cn.min.js +1 -1
  209. package/dist/locale/ug-cn.min.mjs +1 -1
  210. package/dist/locale/ug-cn.mjs +1 -1
  211. package/dist/locale/uk.js +1 -1
  212. package/dist/locale/uk.min.js +1 -1
  213. package/dist/locale/uk.min.mjs +1 -1
  214. package/dist/locale/uk.mjs +1 -1
  215. package/dist/locale/uz-uz.js +1 -1
  216. package/dist/locale/uz-uz.min.js +1 -1
  217. package/dist/locale/uz-uz.min.mjs +1 -1
  218. package/dist/locale/uz-uz.mjs +1 -1
  219. package/dist/locale/vi.js +1 -1
  220. package/dist/locale/vi.min.js +1 -1
  221. package/dist/locale/vi.min.mjs +1 -1
  222. package/dist/locale/vi.mjs +1 -1
  223. package/dist/locale/zh-cn.js +1 -1
  224. package/dist/locale/zh-cn.min.js +1 -1
  225. package/dist/locale/zh-cn.min.mjs +1 -1
  226. package/dist/locale/zh-cn.mjs +1 -1
  227. package/dist/locale/zh-tw.js +1 -1
  228. package/dist/locale/zh-tw.min.js +1 -1
  229. package/dist/locale/zh-tw.min.mjs +1 -1
  230. package/dist/locale/zh-tw.mjs +1 -1
  231. package/es/components/carousel/index.mjs +2 -2
  232. package/es/components/carousel/src/carousel-item.mjs +155 -7
  233. package/es/components/carousel/src/carousel-item.mjs.map +1 -1
  234. package/es/components/carousel/src/carousel-item2.mjs +7 -155
  235. package/es/components/carousel/src/carousel-item2.mjs.map +1 -1
  236. package/es/components/image/index.d.ts +4 -0
  237. package/es/components/image/src/image.d.ts +1 -0
  238. package/es/components/image/src/image.mjs +4 -0
  239. package/es/components/image/src/image.mjs.map +1 -1
  240. package/es/components/image/src/image.vue.d.ts +4 -0
  241. package/es/components/image/src/image2.mjs +2 -1
  242. package/es/components/image/src/image2.mjs.map +1 -1
  243. package/es/components/index.mjs +1 -1
  244. package/es/components/table-v2/index.d.ts +0 -0
  245. package/es/components/table-v2/index.mjs +2 -0
  246. package/es/components/table-v2/index.mjs.map +1 -0
  247. package/es/components/table-v2/src/column.d.ts +21 -0
  248. package/es/components/table-v2/src/column.mjs +45 -0
  249. package/es/components/table-v2/src/column.mjs.map +1 -0
  250. package/es/components/table-v2/src/constants.d.ts +1 -0
  251. package/es/components/table-v2/src/constants.mjs +4 -0
  252. package/es/components/table-v2/src/constants.mjs.map +1 -0
  253. package/es/components/table-v2/src/table.d.ts +80 -0
  254. package/es/components/table-v2/src/table.mjs +80 -0
  255. package/es/components/table-v2/src/table.mjs.map +1 -0
  256. package/es/components/table-v2/src/types.d.ts +70 -0
  257. package/es/components/table-v2/src/types.mjs +2 -0
  258. package/es/components/table-v2/src/types.mjs.map +1 -0
  259. package/es/index.mjs +1 -1
  260. package/es/version.d.ts +1 -1
  261. package/es/version.mjs +1 -1
  262. package/es/version.mjs.map +1 -1
  263. package/lib/components/carousel/index.js +2 -2
  264. package/lib/components/carousel/src/carousel-item.js +155 -7
  265. package/lib/components/carousel/src/carousel-item.js.map +1 -1
  266. package/lib/components/carousel/src/carousel-item2.js +7 -155
  267. package/lib/components/carousel/src/carousel-item2.js.map +1 -1
  268. package/lib/components/image/index.d.ts +4 -0
  269. package/lib/components/image/src/image.d.ts +1 -0
  270. package/lib/components/image/src/image.js +4 -0
  271. package/lib/components/image/src/image.js.map +1 -1
  272. package/lib/components/image/src/image.vue.d.ts +4 -0
  273. package/lib/components/image/src/image2.js +2 -1
  274. package/lib/components/image/src/image2.js.map +1 -1
  275. package/lib/components/index.js +1 -1
  276. package/lib/components/table-v2/index.d.ts +0 -0
  277. package/lib/components/table-v2/index.js +3 -0
  278. package/lib/components/table-v2/index.js.map +1 -0
  279. package/lib/components/table-v2/src/column.d.ts +21 -0
  280. package/lib/components/table-v2/src/column.js +49 -0
  281. package/lib/components/table-v2/src/column.js.map +1 -0
  282. package/lib/components/table-v2/src/constants.d.ts +1 -0
  283. package/lib/components/table-v2/src/constants.js +8 -0
  284. package/lib/components/table-v2/src/constants.js.map +1 -0
  285. package/lib/components/table-v2/src/table.d.ts +80 -0
  286. package/lib/components/table-v2/src/table.js +84 -0
  287. package/lib/components/table-v2/src/table.js.map +1 -0
  288. package/lib/components/table-v2/src/types.d.ts +70 -0
  289. package/lib/components/table-v2/src/types.js +3 -0
  290. package/lib/components/table-v2/src/types.js.map +1 -0
  291. package/lib/index.js +1 -1
  292. package/lib/version.d.ts +1 -1
  293. package/lib/version.js +1 -1
  294. package/lib/version.js.map +1 -1
  295. package/package.json +2 -2
  296. package/web-types.json +1 -1
@@ -2,164 +2,16 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var vue = require('vue');
6
5
  require('../../../utils/index.js');
7
- require('../../../hooks/index.js');
8
- require('../../../tokens/index.js');
9
- var carouselItem = require('./carousel-item.js');
10
- var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
11
- var index = require('../../../hooks/use-namespace/index.js');
12
- var carousel = require('../../../tokens/carousel.js');
13
- var error = require('../../../utils/error.js');
14
- var types = require('../../../utils/types.js');
6
+ var props = require('../../../utils/vue/props.js');
15
7
 
16
- const __default__ = {
17
- name: "ElCarouselItem"
18
- };
19
- const _sfc_main = /* @__PURE__ */ vue.defineComponent({
20
- ...__default__,
21
- props: carouselItem.carouselItemProps,
22
- setup(__props) {
23
- const props = __props;
24
- const ns = index.useNamespace("carousel");
25
- const COMPONENT_NAME = "ElCarouselItem";
26
- const carouselContext = vue.inject(carousel.carouselContextKey);
27
- const instance = vue.getCurrentInstance();
28
- if (!carouselContext) {
29
- error.debugWarn(COMPONENT_NAME, "usage: <el-carousel></el-carousel-item></el-carousel>");
30
- }
31
- if (!instance) {
32
- error.debugWarn(COMPONENT_NAME, "compositional hook can only be invoked inside setups");
33
- }
34
- const CARD_SCALE = 0.83;
35
- const hover = vue.ref(false);
36
- const translate = vue.ref(0);
37
- const scale = vue.ref(1);
38
- const active = vue.ref(false);
39
- const ready = vue.ref(false);
40
- const inStage = vue.ref(false);
41
- const animating = vue.ref(false);
42
- const { isCardType, isVertical } = carouselContext;
43
- const itemStyle = vue.computed(() => {
44
- const translateType = `translate${vue.unref(isVertical) ? "Y" : "X"}`;
45
- const _translate = `${translateType}(${vue.unref(translate)}px)`;
46
- const _scale = `scale(${vue.unref(scale)})`;
47
- const transform = [_translate, _scale].join(" ");
48
- return {
49
- transform
50
- };
51
- });
52
- function processIndex(index, activeIndex, length) {
53
- const lastItemIndex = length - 1;
54
- const prevItemIndex = activeIndex - 1;
55
- const nextItemIndex = activeIndex + 1;
56
- const halfItemIndex = length / 2;
57
- if (activeIndex === 0 && index === lastItemIndex) {
58
- return -1;
59
- } else if (activeIndex === lastItemIndex && index === 0) {
60
- return length;
61
- } else if (index < prevItemIndex && activeIndex - index >= halfItemIndex) {
62
- return length + 1;
63
- } else if (index > nextItemIndex && index - activeIndex >= halfItemIndex) {
64
- return -2;
65
- }
66
- return index;
67
- }
68
- function calcCardTranslate(index, activeIndex) {
69
- var _a;
70
- const parentWidth = ((_a = carouselContext.root.value) == null ? void 0 : _a.offsetWidth) || 0;
71
- if (inStage.value) {
72
- return parentWidth * ((2 - CARD_SCALE) * (index - activeIndex) + 1) / 4;
73
- } else if (index < activeIndex) {
74
- return -(1 + CARD_SCALE) * parentWidth / 4;
75
- } else {
76
- return (3 + CARD_SCALE) * parentWidth / 4;
77
- }
78
- }
79
- function calcTranslate(index, activeIndex, isVertical2) {
80
- const rootEl = carouselContext.root.value;
81
- if (!rootEl)
82
- return 0;
83
- const distance = (isVertical2 ? rootEl.offsetHeight : rootEl.offsetWidth) || 0;
84
- return distance * (index - activeIndex);
85
- }
86
- const translateItem = (index, activeIndex, oldIndex) => {
87
- var _a;
88
- const _isCardType = vue.unref(isCardType);
89
- const carouselItemLength = (_a = carouselContext.items.value.length) != null ? _a : Number.NaN;
90
- const isActive = index === activeIndex;
91
- if (!_isCardType && !types.isUndefined(oldIndex)) {
92
- animating.value = isActive || index === oldIndex;
93
- }
94
- if (!isActive && carouselItemLength > 2 && carouselContext.loop) {
95
- index = processIndex(index, activeIndex, carouselItemLength);
96
- }
97
- const _isVertical = vue.unref(isVertical);
98
- active.value = isActive;
99
- if (_isCardType) {
100
- if (_isVertical) {
101
- error.debugWarn("Carousel", "vertical direction is not supported for card mode");
102
- }
103
- inStage.value = Math.round(Math.abs(index - activeIndex)) <= 1;
104
- translate.value = calcCardTranslate(index, activeIndex);
105
- scale.value = vue.unref(active) ? 1 : CARD_SCALE;
106
- } else {
107
- translate.value = calcTranslate(index, activeIndex, _isVertical);
108
- }
109
- ready.value = true;
110
- };
111
- function handleItemClick() {
112
- if (carouselContext && vue.unref(isCardType)) {
113
- const index = carouselContext.items.value.findIndex(({ uid }) => uid === instance.uid);
114
- carouselContext.setActiveItem(index);
115
- }
116
- }
117
- vue.onMounted(() => {
118
- carouselContext.addItem({
119
- props,
120
- states: vue.reactive({
121
- hover,
122
- translate,
123
- scale,
124
- active,
125
- ready,
126
- inStage,
127
- animating
128
- }),
129
- uid: instance.uid,
130
- translateItem
131
- });
132
- });
133
- vue.onUnmounted(() => {
134
- carouselContext.removeItem(instance.uid);
135
- });
136
- return (_ctx, _cache) => {
137
- return vue.withDirectives((vue.openBlock(), vue.createElementBlock("div", {
138
- class: vue.normalizeClass([
139
- vue.unref(ns).e("item"),
140
- vue.unref(ns).is("active", active.value),
141
- vue.unref(ns).is("in-stage", inStage.value),
142
- vue.unref(ns).is("hover", hover.value),
143
- vue.unref(ns).is("animating", animating.value),
144
- { [vue.unref(ns).em("item", "card")]: vue.unref(isCardType) }
145
- ]),
146
- style: vue.normalizeStyle(vue.unref(itemStyle)),
147
- onClick: handleItemClick
148
- }, [
149
- vue.unref(isCardType) ? vue.withDirectives((vue.openBlock(), vue.createElementBlock("div", {
150
- key: 0,
151
- class: vue.normalizeClass(vue.unref(ns).e("mask"))
152
- }, null, 2)), [
153
- [vue.vShow, !active.value]
154
- ]) : vue.createCommentVNode("v-if", true),
155
- vue.renderSlot(_ctx.$slots, "default")
156
- ], 6)), [
157
- [vue.vShow, ready.value]
158
- ]);
159
- };
8
+ const carouselItemProps = props.buildProps({
9
+ name: { type: String, default: "" },
10
+ label: {
11
+ type: [String, Number],
12
+ default: ""
160
13
  }
161
14
  });
162
- var CarouselItem = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "/home/runner/work/element-plus/element-plus/packages/components/carousel/src/carousel-item.vue"]]);
163
15
 
164
- exports["default"] = CarouselItem;
16
+ exports.carouselItemProps = carouselItemProps;
165
17
  //# sourceMappingURL=carousel-item2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"carousel-item2.js","sources":["../../../../../../packages/components/carousel/src/carousel-item.vue"],"sourcesContent":["<template>\n <div\n v-show=\"ready\"\n :class=\"[\n ns.e('item'),\n ns.is('active', active),\n ns.is('in-stage', inStage),\n ns.is('hover', hover),\n ns.is('animating', animating),\n { [ns.em('item', 'card')]: isCardType },\n ]\"\n :style=\"itemStyle\"\n @click=\"handleItemClick\"\n >\n <div v-if=\"isCardType\" v-show=\"!active\" :class=\"ns.e('mask')\" />\n <slot />\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport {\n computed,\n getCurrentInstance,\n inject,\n onMounted,\n onUnmounted,\n reactive,\n ref,\n unref,\n} from 'vue'\nimport { debugWarn, isUndefined } from '@element-plus/utils'\nimport { useNamespace } from '@element-plus/hooks'\nimport { carouselContextKey } from '@element-plus/tokens'\nimport { carouselItemProps } from './carousel-item'\n\nimport type { CSSProperties } from 'vue'\n\ndefineOptions({\n name: 'ElCarouselItem',\n})\n\nconst props = defineProps(carouselItemProps)\nconst ns = useNamespace('carousel')\nconst COMPONENT_NAME = 'ElCarouselItem'\n// inject\nconst carouselContext = inject(carouselContextKey)!\n// instance\nconst instance = getCurrentInstance()!\nif (!carouselContext) {\n debugWarn(\n COMPONENT_NAME,\n 'usage: <el-carousel></el-carousel-item></el-carousel>'\n )\n}\n\nif (!instance) {\n debugWarn(\n COMPONENT_NAME,\n 'compositional hook can only be invoked inside setups'\n )\n}\n\nconst CARD_SCALE = 0.83\n\nconst hover = ref(false)\nconst translate = ref(0)\nconst scale = ref(1)\nconst active = ref(false)\nconst ready = ref(false)\nconst inStage = ref(false)\nconst animating = ref(false)\n\n// computed\nconst { isCardType, isVertical } = carouselContext\n\nconst itemStyle = computed<CSSProperties>(() => {\n const translateType = `translate${unref(isVertical) ? 'Y' : 'X'}`\n const _translate = `${translateType}(${unref(translate)}px)`\n const _scale = `scale(${unref(scale)})`\n const transform = [_translate, _scale].join(' ')\n\n return {\n transform,\n }\n})\n\n// methods\n\nfunction processIndex(index: number, activeIndex: number, length: number) {\n const lastItemIndex = length - 1\n const prevItemIndex = activeIndex - 1\n const nextItemIndex = activeIndex + 1\n const halfItemIndex = length / 2\n\n if (activeIndex === 0 && index === lastItemIndex) {\n return -1\n } else if (activeIndex === lastItemIndex && index === 0) {\n return length\n } else if (index < prevItemIndex && activeIndex - index >= halfItemIndex) {\n return length + 1\n } else if (index > nextItemIndex && index - activeIndex >= halfItemIndex) {\n return -2\n }\n return index\n}\n\nfunction calcCardTranslate(index: number, activeIndex: number) {\n const parentWidth = carouselContext.root.value?.offsetWidth || 0\n if (inStage.value) {\n return (parentWidth * ((2 - CARD_SCALE) * (index - activeIndex) + 1)) / 4\n } else if (index < activeIndex) {\n return (-(1 + CARD_SCALE) * parentWidth) / 4\n } else {\n return ((3 + CARD_SCALE) * parentWidth) / 4\n }\n}\n\nfunction calcTranslate(\n index: number,\n activeIndex: number,\n isVertical: boolean\n) {\n const rootEl = carouselContext.root.value\n if (!rootEl) return 0\n\n const distance = (isVertical ? rootEl.offsetHeight : rootEl.offsetWidth) || 0\n return distance * (index - activeIndex)\n}\n\nconst translateItem = (\n index: number,\n activeIndex: number,\n oldIndex?: number\n) => {\n const _isCardType = unref(isCardType)\n const carouselItemLength = carouselContext.items.value.length ?? Number.NaN\n\n const isActive = index === activeIndex\n if (!_isCardType && !isUndefined(oldIndex)) {\n animating.value = isActive || index === oldIndex\n }\n\n if (!isActive && carouselItemLength > 2 && carouselContext.loop) {\n index = processIndex(index, activeIndex, carouselItemLength)\n }\n\n const _isVertical = unref(isVertical)\n active.value = isActive\n\n if (_isCardType) {\n if (_isVertical) {\n debugWarn('Carousel', 'vertical direction is not supported for card mode')\n }\n inStage.value = Math.round(Math.abs(index - activeIndex)) <= 1\n translate.value = calcCardTranslate(index, activeIndex)\n scale.value = unref(active) ? 1 : CARD_SCALE\n } else {\n translate.value = calcTranslate(index, activeIndex, _isVertical)\n }\n\n ready.value = true\n}\n\nfunction handleItemClick() {\n if (carouselContext && unref(isCardType)) {\n const index = carouselContext.items.value.findIndex(\n ({ uid }) => uid === instance.uid\n )\n carouselContext.setActiveItem(index)\n }\n}\n\n// lifecycle\nonMounted(() => {\n carouselContext.addItem({\n props,\n states: reactive({\n hover,\n translate,\n scale,\n active,\n ready,\n inStage,\n animating,\n }),\n uid: instance.uid,\n translateItem,\n })\n})\n\nonUnmounted(() => {\n carouselContext.removeItem(instance.uid)\n})\n</script>\n"],"names":["useNamespace","inject","carouselContextKey","getCurrentInstance","debugWarn","ref","computed","unref","isUndefined","onMounted","reactive","onUnmounted"],"mappings":"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"}
1
+ {"version":3,"file":"carousel-item2.js","sources":["../../../../../../packages/components/carousel/src/carousel-item.ts"],"sourcesContent":["import { buildProps } from '@element-plus/utils'\nimport type { ExtractPropTypes } from 'vue'\nimport type CarouselItem from './carousel-item.vue'\n\nexport const carouselItemProps = buildProps({\n name: { type: String, default: '' },\n label: {\n type: [String, Number],\n default: '',\n },\n} as const)\n\nexport type CarouselItemProps = ExtractPropTypes<typeof carouselItemProps>\n\nexport type CarouselItemInstance = InstanceType<typeof CarouselItem>\n"],"names":["buildProps"],"mappings":";;;;;;;AACY,MAAC,iBAAiB,GAAGA,gBAAU,CAAC;AAC5C,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE;AACrC,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;AAC1B,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,CAAC;;;;"}
@@ -9,6 +9,7 @@ export declare const ElImage: import("element-plus/es/utils").SFCWithInstall<imp
9
9
  readonly previewTeleported: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, false, unknown, unknown, unknown>;
10
10
  readonly zIndex: import("element-plus/es/utils").BuildPropReturn<NumberConstructor, unknown, unknown, unknown, unknown>;
11
11
  readonly initialIndex: import("element-plus/es/utils").BuildPropReturn<NumberConstructor, 0, unknown, unknown, unknown>;
12
+ readonly infinite: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, true, unknown, unknown, unknown>;
12
13
  }, {
13
14
  props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
14
15
  readonly appendToBody: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, undefined, unknown, unknown, unknown>;
@@ -21,6 +22,7 @@ export declare const ElImage: import("element-plus/es/utils").SFCWithInstall<imp
21
22
  readonly previewTeleported: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, false, unknown, unknown, unknown>;
22
23
  readonly zIndex: import("element-plus/es/utils").BuildPropReturn<NumberConstructor, unknown, unknown, unknown, unknown>;
23
24
  readonly initialIndex: import("element-plus/es/utils").BuildPropReturn<NumberConstructor, 0, unknown, unknown, unknown>;
25
+ readonly infinite: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, true, unknown, unknown, unknown>;
24
26
  }>> & {
25
27
  onClose?: (() => any) | undefined;
26
28
  onError?: ((evt: Event) => any) | undefined;
@@ -224,6 +226,7 @@ export declare const ElImage: import("element-plus/es/utils").SFCWithInstall<imp
224
226
  readonly previewTeleported: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, false, unknown, unknown, unknown>;
225
227
  readonly zIndex: import("element-plus/es/utils").BuildPropReturn<NumberConstructor, unknown, unknown, unknown, unknown>;
226
228
  readonly initialIndex: import("element-plus/es/utils").BuildPropReturn<NumberConstructor, 0, unknown, unknown, unknown>;
229
+ readonly infinite: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, true, unknown, unknown, unknown>;
227
230
  }>> & {
228
231
  onClose?: (() => any) | undefined;
229
232
  onError?: ((evt: Event) => any) | undefined;
@@ -231,6 +234,7 @@ export declare const ElImage: import("element-plus/es/utils").SFCWithInstall<imp
231
234
  }, {
232
235
  zIndex: number;
233
236
  lazy: import("element-plus/es/utils").BuildPropType<BooleanConstructor, unknown, unknown>;
237
+ infinite: import("element-plus/es/utils").BuildPropType<BooleanConstructor, unknown, unknown>;
234
238
  src: string;
235
239
  fit: import("element-plus/es/utils").BuildPropType<StringConstructor, "" | "fill" | "none" | "contain" | "cover" | "scale-down", unknown>;
236
240
  initialIndex: number;
@@ -10,6 +10,7 @@ export declare const imageProps: {
10
10
  readonly previewTeleported: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, false, unknown, unknown, unknown>;
11
11
  readonly zIndex: import("element-plus/es/utils").BuildPropReturn<NumberConstructor, unknown, unknown, unknown, unknown>;
12
12
  readonly initialIndex: import("element-plus/es/utils").BuildPropReturn<NumberConstructor, 0, unknown, unknown, unknown>;
13
+ readonly infinite: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, true, unknown, unknown, unknown>;
13
14
  };
14
15
  export declare type ImageProps = ExtractPropTypes<typeof imageProps>;
15
16
  export declare const imageEmits: {
@@ -46,6 +46,10 @@ const imageProps = props.buildProps({
46
46
  initialIndex: {
47
47
  type: Number,
48
48
  default: 0
49
+ },
50
+ infinite: {
51
+ type: Boolean,
52
+ default: true
49
53
  }
50
54
  });
51
55
  const imageEmits = {
@@ -1 +1 @@
1
- {"version":3,"file":"image.js","sources":["../../../../../../packages/components/image/src/image.ts"],"sourcesContent":["import {\n buildProps,\n definePropType,\n isNumber,\n mutable,\n} from '@element-plus/utils'\n\nimport type { ExtractPropTypes } from 'vue'\n\nexport const imageProps = buildProps({\n appendToBody: {\n type: Boolean,\n default: undefined,\n },\n hideOnClickModal: {\n type: Boolean,\n default: false,\n },\n src: {\n type: String,\n default: '',\n },\n fit: {\n type: String,\n values: ['', 'contain', 'cover', 'fill', 'none', 'scale-down'],\n default: '',\n },\n lazy: {\n type: Boolean,\n default: false,\n },\n scrollContainer: {\n type: definePropType<string | HTMLElement | undefined>([String, Object]),\n },\n previewSrcList: {\n type: definePropType<string[]>(Array),\n default: () => mutable([] as const),\n },\n previewTeleported: {\n type: Boolean,\n default: false,\n },\n zIndex: {\n type: Number,\n },\n initialIndex: {\n type: Number,\n default: 0,\n },\n} as const)\nexport type ImageProps = ExtractPropTypes<typeof imageProps>\n\nexport const imageEmits = {\n error: (evt: Event) => evt instanceof Event,\n switch: (val: number) => isNumber(val),\n close: () => true,\n}\nexport type ImageEmits = typeof imageEmits\n"],"names":["buildProps","definePropType","mutable","isNumber"],"mappings":";;;;;;;;;AAMY,MAAC,UAAU,GAAGA,gBAAU,CAAC;AACrC,EAAE,YAAY,EAAE;AAChB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK,CAAC;AACnB,GAAG;AACH,EAAE,gBAAgB,EAAE;AACpB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,GAAG,EAAE;AACP,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,GAAG,EAAE;AACP,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,CAAC,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,CAAC;AAClE,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,eAAe,EAAE;AACnB,IAAI,IAAI,EAAEC,oBAAc,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAC1C,GAAG;AACH,EAAE,cAAc,EAAE;AAClB,IAAI,IAAI,EAAEA,oBAAc,CAAC,KAAK,CAAC;AAC/B,IAAI,OAAO,EAAE,MAAMC,kBAAO,CAAC,EAAE,CAAC;AAC9B,GAAG;AACH,EAAE,iBAAiB,EAAE;AACrB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,EAAE,YAAY,EAAE;AAChB,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,CAAC;AACd,GAAG;AACH,CAAC,EAAE;AACS,MAAC,UAAU,GAAG;AAC1B,EAAE,KAAK,EAAE,CAAC,GAAG,KAAK,GAAG,YAAY,KAAK;AACtC,EAAE,MAAM,EAAE,CAAC,GAAG,KAAKC,aAAQ,CAAC,GAAG,CAAC;AAChC,EAAE,KAAK,EAAE,MAAM,IAAI;AACnB;;;;;"}
1
+ {"version":3,"file":"image.js","sources":["../../../../../../packages/components/image/src/image.ts"],"sourcesContent":["import {\n buildProps,\n definePropType,\n isNumber,\n mutable,\n} from '@element-plus/utils'\n\nimport type { ExtractPropTypes } from 'vue'\n\nexport const imageProps = buildProps({\n appendToBody: {\n type: Boolean,\n default: undefined,\n },\n hideOnClickModal: {\n type: Boolean,\n default: false,\n },\n src: {\n type: String,\n default: '',\n },\n fit: {\n type: String,\n values: ['', 'contain', 'cover', 'fill', 'none', 'scale-down'],\n default: '',\n },\n lazy: {\n type: Boolean,\n default: false,\n },\n scrollContainer: {\n type: definePropType<string | HTMLElement | undefined>([String, Object]),\n },\n previewSrcList: {\n type: definePropType<string[]>(Array),\n default: () => mutable([] as const),\n },\n previewTeleported: {\n type: Boolean,\n default: false,\n },\n zIndex: {\n type: Number,\n },\n initialIndex: {\n type: Number,\n default: 0,\n },\n infinite: {\n type: Boolean,\n default: true,\n },\n} as const)\nexport type ImageProps = ExtractPropTypes<typeof imageProps>\n\nexport const imageEmits = {\n error: (evt: Event) => evt instanceof Event,\n switch: (val: number) => isNumber(val),\n close: () => true,\n}\nexport type ImageEmits = typeof imageEmits\n"],"names":["buildProps","definePropType","mutable","isNumber"],"mappings":";;;;;;;;;AAMY,MAAC,UAAU,GAAGA,gBAAU,CAAC;AACrC,EAAE,YAAY,EAAE;AAChB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK,CAAC;AACnB,GAAG;AACH,EAAE,gBAAgB,EAAE;AACpB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,GAAG,EAAE;AACP,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,GAAG,EAAE;AACP,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,CAAC,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,CAAC;AAClE,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,eAAe,EAAE;AACnB,IAAI,IAAI,EAAEC,oBAAc,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAC1C,GAAG;AACH,EAAE,cAAc,EAAE;AAClB,IAAI,IAAI,EAAEA,oBAAc,CAAC,KAAK,CAAC;AAC/B,IAAI,OAAO,EAAE,MAAMC,kBAAO,CAAC,EAAE,CAAC;AAC9B,GAAG;AACH,EAAE,iBAAiB,EAAE;AACrB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,EAAE,YAAY,EAAE;AAChB,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,CAAC;AACd,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,CAAC,EAAE;AACS,MAAC,UAAU,GAAG;AAC1B,EAAE,KAAK,EAAE,CAAC,GAAG,KAAK,GAAG,YAAY,KAAK;AACtC,EAAE,MAAM,EAAE,CAAC,GAAG,KAAKC,aAAQ,CAAC,GAAG,CAAC;AAChC,EAAE,KAAK,EAAE,MAAM,IAAI;AACnB;;;;;"}
@@ -10,6 +10,7 @@ declare const _default: import("vue").DefineComponent<{
10
10
  readonly previewTeleported: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, false, unknown, unknown, unknown>;
11
11
  readonly zIndex: import("element-plus/es/utils").BuildPropReturn<NumberConstructor, unknown, unknown, unknown, unknown>;
12
12
  readonly initialIndex: import("element-plus/es/utils").BuildPropReturn<NumberConstructor, 0, unknown, unknown, unknown>;
13
+ readonly infinite: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, true, unknown, unknown, unknown>;
13
14
  }, {
14
15
  props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
15
16
  readonly appendToBody: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, undefined, unknown, unknown, unknown>;
@@ -22,6 +23,7 @@ declare const _default: import("vue").DefineComponent<{
22
23
  readonly previewTeleported: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, false, unknown, unknown, unknown>;
23
24
  readonly zIndex: import("element-plus/es/utils").BuildPropReturn<NumberConstructor, unknown, unknown, unknown, unknown>;
24
25
  readonly initialIndex: import("element-plus/es/utils").BuildPropReturn<NumberConstructor, 0, unknown, unknown, unknown>;
26
+ readonly infinite: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, true, unknown, unknown, unknown>;
25
27
  }>> & {
26
28
  onClose?: (() => any) | undefined;
27
29
  onError?: ((evt: Event) => any) | undefined;
@@ -225,6 +227,7 @@ declare const _default: import("vue").DefineComponent<{
225
227
  readonly previewTeleported: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, false, unknown, unknown, unknown>;
226
228
  readonly zIndex: import("element-plus/es/utils").BuildPropReturn<NumberConstructor, unknown, unknown, unknown, unknown>;
227
229
  readonly initialIndex: import("element-plus/es/utils").BuildPropReturn<NumberConstructor, 0, unknown, unknown, unknown>;
230
+ readonly infinite: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, true, unknown, unknown, unknown>;
228
231
  }>> & {
229
232
  onClose?: (() => any) | undefined;
230
233
  onError?: ((evt: Event) => any) | undefined;
@@ -232,6 +235,7 @@ declare const _default: import("vue").DefineComponent<{
232
235
  }, {
233
236
  zIndex: number;
234
237
  lazy: import("element-plus/es/utils").BuildPropType<BooleanConstructor, unknown, unknown>;
238
+ infinite: import("element-plus/es/utils").BuildPropType<BooleanConstructor, unknown, unknown>;
235
239
  src: string;
236
240
  fit: import("element-plus/es/utils").BuildPropType<StringConstructor, "" | "fill" | "none" | "contain" | "cover" | "scale-down", unknown>;
237
241
  initialIndex: number;
@@ -213,6 +213,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
213
213
  key: 0,
214
214
  "z-index": _ctx.zIndex,
215
215
  "initial-index": vue.unref(imageIndex),
216
+ infinite: _ctx.infinite,
216
217
  "url-list": _ctx.previewSrcList,
217
218
  "hide-on-click-modal": _ctx.hideOnClickModal,
218
219
  teleported: vue.unref(teleported),
@@ -225,7 +226,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
225
226
  ])) : vue.createCommentVNode("v-if", true)
226
227
  ]),
227
228
  _: 3
228
- }, 8, ["z-index", "initial-index", "url-list", "hide-on-click-modal", "teleported"])) : vue.createCommentVNode("v-if", true)
229
+ }, 8, ["z-index", "initial-index", "infinite", "url-list", "hide-on-click-modal", "teleported"])) : vue.createCommentVNode("v-if", true)
229
230
  ], 2112)) : vue.createCommentVNode("v-if", true)
230
231
  ], 6);
231
232
  };
@@ -1 +1 @@
1
- {"version":3,"file":"image2.js","sources":["../../../../../../packages/components/image/src/image.vue"],"sourcesContent":["<template>\n <div ref=\"container\" :class=\"[ns.b(), $attrs.class]\" :style=\"containerStyle\">\n <slot v-if=\"loading\" name=\"placeholder\">\n <div :class=\"ns.e('placeholder')\" />\n </slot>\n <slot v-else-if=\"hasLoadError\" name=\"error\">\n <div :class=\"ns.e('error')\">{{ t('el.image.error') }}</div>\n </slot>\n <img\n v-else\n v-bind=\"attrs\"\n :src=\"src\"\n :style=\"imageStyle\"\n :class=\"[ns.e('inner'), preview ? ns.e('preview') : '']\"\n @click=\"clickHandler\"\n />\n <template v-if=\"preview\">\n <image-viewer\n v-if=\"showViewer\"\n :z-index=\"zIndex\"\n :initial-index=\"imageIndex\"\n :url-list=\"previewSrcList\"\n :hide-on-click-modal=\"hideOnClickModal\"\n :teleported=\"teleported\"\n @close=\"closeViewer\"\n @switch=\"switchViewer\"\n >\n <div v-if=\"$slots.viewer\">\n <slot name=\"viewer\" />\n </div>\n </image-viewer>\n </template>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, nextTick, onMounted, ref, watch } from 'vue'\nimport {\n isBoolean,\n isClient,\n useEventListener,\n useThrottleFn,\n} from '@vueuse/core'\nimport {\n useAttrs,\n useDeprecated,\n useLocale,\n useNamespace,\n} from '@element-plus/hooks'\nimport ImageViewer from '@element-plus/components/image-viewer'\nimport {\n getScrollContainer,\n isElement,\n isInContainer,\n isString,\n} from '@element-plus/utils'\nimport { imageEmits, imageProps } from './image'\n\nimport type { CSSProperties, StyleValue } from 'vue'\n\ndefineOptions({\n name: 'ElImage',\n})\n\nconst props = defineProps(imageProps)\nconst emit = defineEmits(imageEmits)\n\nlet prevOverflow = ''\n\nuseDeprecated(\n {\n scope: 'el-image',\n from: 'append-to-body',\n replacement: 'preview-teleported',\n version: '2.2.0',\n ref: 'https://element-plus.org/en-US/component/image.html#image-attributess',\n },\n computed(() => isBoolean(props.appendToBody))\n)\n\nconst { t } = useLocale()\nconst ns = useNamespace('image')\n\nconst attrs = useAttrs()\nconst hasLoadError = ref(false)\nconst loading = ref(true)\nconst imgWidth = ref(0)\nconst imgHeight = ref(0)\nconst showViewer = ref(false)\nconst container = ref<HTMLElement>()\n\nconst _scrollContainer = ref<HTMLElement | Window>()\nlet stopScrollListener: () => void\nlet stopWheelListener: () => void\n\nconst containerStyle = computed(() => attrs.value.style as StyleValue)\n\nconst imageStyle = computed<CSSProperties>(() => {\n const { fit } = props\n if (isClient && fit) {\n return { objectFit: fit }\n }\n return {}\n})\n\nconst preview = computed(() => {\n const { previewSrcList } = props\n return Array.isArray(previewSrcList) && previewSrcList.length > 0\n})\n\nconst teleported = computed(() => {\n return props.appendToBody || props.previewTeleported\n})\n\nconst imageIndex = computed(() => {\n const { previewSrcList, initialIndex } = props\n let previewIndex = initialIndex\n if (initialIndex > previewSrcList.length - 1) {\n previewIndex = 0\n }\n return previewIndex\n})\n\nconst loadImage = () => {\n if (!isClient) return\n\n // reset status\n loading.value = true\n hasLoadError.value = false\n\n const img = new Image()\n const currentImageSrc = props.src\n\n // load & error callbacks are only responsible for currentImageSrc\n img.addEventListener('load', (e) => {\n if (currentImageSrc !== props.src) {\n return\n }\n handleLoad(e, img)\n })\n img.addEventListener('error', (e) => {\n if (currentImageSrc !== props.src) {\n return\n }\n handleError(e)\n })\n\n // bind html attrs\n // so it can behave consistently\n Object.entries(attrs.value).forEach(([key, value]) => {\n // avoid onload to be overwritten\n if (key.toLowerCase() === 'onload') return\n img.setAttribute(key, value as string)\n })\n img.src = currentImageSrc\n}\n\nfunction handleLoad(e: Event, img: HTMLImageElement) {\n imgWidth.value = img.width\n imgHeight.value = img.height\n loading.value = false\n hasLoadError.value = false\n}\n\nfunction handleError(event: Event) {\n loading.value = false\n hasLoadError.value = true\n emit('error', event)\n}\n\nfunction handleLazyLoad() {\n if (isInContainer(container.value, _scrollContainer.value)) {\n loadImage()\n removeLazyLoadListener()\n }\n}\n\nconst lazyLoadHandler = useThrottleFn(handleLazyLoad, 200)\n\nasync function addLazyLoadListener() {\n if (!isClient) return\n\n await nextTick()\n\n const { scrollContainer } = props\n if (isElement(scrollContainer)) {\n _scrollContainer.value = scrollContainer\n } else if (isString(scrollContainer) && scrollContainer !== '') {\n _scrollContainer.value =\n document.querySelector<HTMLElement>(scrollContainer) ?? undefined\n } else if (container.value) {\n _scrollContainer.value = getScrollContainer(container.value)\n }\n\n if (_scrollContainer.value) {\n stopScrollListener = useEventListener(\n _scrollContainer,\n 'scroll',\n lazyLoadHandler\n )\n setTimeout(() => handleLazyLoad(), 100)\n }\n}\n\nfunction removeLazyLoadListener() {\n if (!isClient || !_scrollContainer.value || !lazyLoadHandler) return\n\n stopScrollListener()\n _scrollContainer.value = undefined\n}\n\nfunction wheelHandler(e: WheelEvent) {\n if (!e.ctrlKey) return\n\n if (e.deltaY < 0) {\n e.preventDefault()\n return false\n } else if (e.deltaY > 0) {\n e.preventDefault()\n return false\n }\n}\n\nfunction clickHandler() {\n // don't show viewer when preview is false\n if (!preview.value) return\n\n stopWheelListener = useEventListener('wheel', wheelHandler, {\n passive: false,\n })\n\n // prevent body scroll\n prevOverflow = document.body.style.overflow\n document.body.style.overflow = 'hidden'\n showViewer.value = true\n}\n\nfunction closeViewer() {\n stopWheelListener?.()\n document.body.style.overflow = prevOverflow\n showViewer.value = false\n emit('close')\n}\n\nfunction switchViewer(val: number) {\n emit('switch', val)\n}\n\nwatch(\n () => props.src,\n () => {\n if (props.lazy) {\n // reset status\n loading.value = true\n hasLoadError.value = false\n removeLazyLoadListener()\n addLazyLoadListener()\n } else {\n loadImage()\n }\n }\n)\n\nonMounted(() => {\n if (props.lazy) {\n addLazyLoadListener()\n } else {\n loadImage()\n }\n})\n</script>\n"],"names":["useDeprecated","computed","isBoolean","useLocale","useNamespace","useAttrs","ref","isClient","isInContainer","useThrottleFn","nextTick","isElement","isString","getScrollContainer","useEventListener","watch","onMounted"],"mappings":"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"}
1
+ {"version":3,"file":"image2.js","sources":["../../../../../../packages/components/image/src/image.vue"],"sourcesContent":["<template>\n <div ref=\"container\" :class=\"[ns.b(), $attrs.class]\" :style=\"containerStyle\">\n <slot v-if=\"loading\" name=\"placeholder\">\n <div :class=\"ns.e('placeholder')\" />\n </slot>\n <slot v-else-if=\"hasLoadError\" name=\"error\">\n <div :class=\"ns.e('error')\">{{ t('el.image.error') }}</div>\n </slot>\n <img\n v-else\n v-bind=\"attrs\"\n :src=\"src\"\n :style=\"imageStyle\"\n :class=\"[ns.e('inner'), preview ? ns.e('preview') : '']\"\n @click=\"clickHandler\"\n />\n <template v-if=\"preview\">\n <image-viewer\n v-if=\"showViewer\"\n :z-index=\"zIndex\"\n :initial-index=\"imageIndex\"\n :infinite=\"infinite\"\n :url-list=\"previewSrcList\"\n :hide-on-click-modal=\"hideOnClickModal\"\n :teleported=\"teleported\"\n @close=\"closeViewer\"\n @switch=\"switchViewer\"\n >\n <div v-if=\"$slots.viewer\">\n <slot name=\"viewer\" />\n </div>\n </image-viewer>\n </template>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, nextTick, onMounted, ref, watch } from 'vue'\nimport {\n isBoolean,\n isClient,\n useEventListener,\n useThrottleFn,\n} from '@vueuse/core'\nimport {\n useAttrs,\n useDeprecated,\n useLocale,\n useNamespace,\n} from '@element-plus/hooks'\nimport ImageViewer from '@element-plus/components/image-viewer'\nimport {\n getScrollContainer,\n isElement,\n isInContainer,\n isString,\n} from '@element-plus/utils'\nimport { imageEmits, imageProps } from './image'\n\nimport type { CSSProperties, StyleValue } from 'vue'\n\ndefineOptions({\n name: 'ElImage',\n})\n\nconst props = defineProps(imageProps)\nconst emit = defineEmits(imageEmits)\n\nlet prevOverflow = ''\n\nuseDeprecated(\n {\n scope: 'el-image',\n from: 'append-to-body',\n replacement: 'preview-teleported',\n version: '2.2.0',\n ref: 'https://element-plus.org/en-US/component/image.html#image-attributess',\n },\n computed(() => isBoolean(props.appendToBody))\n)\n\nconst { t } = useLocale()\nconst ns = useNamespace('image')\n\nconst attrs = useAttrs()\nconst hasLoadError = ref(false)\nconst loading = ref(true)\nconst imgWidth = ref(0)\nconst imgHeight = ref(0)\nconst showViewer = ref(false)\nconst container = ref<HTMLElement>()\n\nconst _scrollContainer = ref<HTMLElement | Window>()\nlet stopScrollListener: () => void\nlet stopWheelListener: () => void\n\nconst containerStyle = computed(() => attrs.value.style as StyleValue)\n\nconst imageStyle = computed<CSSProperties>(() => {\n const { fit } = props\n if (isClient && fit) {\n return { objectFit: fit }\n }\n return {}\n})\n\nconst preview = computed(() => {\n const { previewSrcList } = props\n return Array.isArray(previewSrcList) && previewSrcList.length > 0\n})\n\nconst teleported = computed(() => {\n return props.appendToBody || props.previewTeleported\n})\n\nconst imageIndex = computed(() => {\n const { previewSrcList, initialIndex } = props\n let previewIndex = initialIndex\n if (initialIndex > previewSrcList.length - 1) {\n previewIndex = 0\n }\n return previewIndex\n})\n\nconst loadImage = () => {\n if (!isClient) return\n\n // reset status\n loading.value = true\n hasLoadError.value = false\n\n const img = new Image()\n const currentImageSrc = props.src\n\n // load & error callbacks are only responsible for currentImageSrc\n img.addEventListener('load', (e) => {\n if (currentImageSrc !== props.src) {\n return\n }\n handleLoad(e, img)\n })\n img.addEventListener('error', (e) => {\n if (currentImageSrc !== props.src) {\n return\n }\n handleError(e)\n })\n\n // bind html attrs\n // so it can behave consistently\n Object.entries(attrs.value).forEach(([key, value]) => {\n // avoid onload to be overwritten\n if (key.toLowerCase() === 'onload') return\n img.setAttribute(key, value as string)\n })\n img.src = currentImageSrc\n}\n\nfunction handleLoad(e: Event, img: HTMLImageElement) {\n imgWidth.value = img.width\n imgHeight.value = img.height\n loading.value = false\n hasLoadError.value = false\n}\n\nfunction handleError(event: Event) {\n loading.value = false\n hasLoadError.value = true\n emit('error', event)\n}\n\nfunction handleLazyLoad() {\n if (isInContainer(container.value, _scrollContainer.value)) {\n loadImage()\n removeLazyLoadListener()\n }\n}\n\nconst lazyLoadHandler = useThrottleFn(handleLazyLoad, 200)\n\nasync function addLazyLoadListener() {\n if (!isClient) return\n\n await nextTick()\n\n const { scrollContainer } = props\n if (isElement(scrollContainer)) {\n _scrollContainer.value = scrollContainer\n } else if (isString(scrollContainer) && scrollContainer !== '') {\n _scrollContainer.value =\n document.querySelector<HTMLElement>(scrollContainer) ?? undefined\n } else if (container.value) {\n _scrollContainer.value = getScrollContainer(container.value)\n }\n\n if (_scrollContainer.value) {\n stopScrollListener = useEventListener(\n _scrollContainer,\n 'scroll',\n lazyLoadHandler\n )\n setTimeout(() => handleLazyLoad(), 100)\n }\n}\n\nfunction removeLazyLoadListener() {\n if (!isClient || !_scrollContainer.value || !lazyLoadHandler) return\n\n stopScrollListener()\n _scrollContainer.value = undefined\n}\n\nfunction wheelHandler(e: WheelEvent) {\n if (!e.ctrlKey) return\n\n if (e.deltaY < 0) {\n e.preventDefault()\n return false\n } else if (e.deltaY > 0) {\n e.preventDefault()\n return false\n }\n}\n\nfunction clickHandler() {\n // don't show viewer when preview is false\n if (!preview.value) return\n\n stopWheelListener = useEventListener('wheel', wheelHandler, {\n passive: false,\n })\n\n // prevent body scroll\n prevOverflow = document.body.style.overflow\n document.body.style.overflow = 'hidden'\n showViewer.value = true\n}\n\nfunction closeViewer() {\n stopWheelListener?.()\n document.body.style.overflow = prevOverflow\n showViewer.value = false\n emit('close')\n}\n\nfunction switchViewer(val: number) {\n emit('switch', val)\n}\n\nwatch(\n () => props.src,\n () => {\n if (props.lazy) {\n // reset status\n loading.value = true\n hasLoadError.value = false\n removeLazyLoadListener()\n addLazyLoadListener()\n } else {\n loadImage()\n }\n }\n)\n\nonMounted(() => {\n if (props.lazy) {\n addLazyLoadListener()\n } else {\n loadImage()\n }\n})\n</script>\n"],"names":["useDeprecated","computed","isBoolean","useLocale","useNamespace","useAttrs","ref","isClient","isInContainer","useThrottleFn","nextTick","isElement","isString","getScrollContainer","useEventListener","watch","onMounted"],"mappings":"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"}
@@ -87,7 +87,7 @@ var button = require('./button/src/button.js');
87
87
  var calendar = require('./calendar/src/calendar.js');
88
88
  var card = require('./card/src/card.js');
89
89
  var carousel = require('./carousel/src/carousel.js');
90
- var carouselItem = require('./carousel/src/carousel-item.js');
90
+ var carouselItem = require('./carousel/src/carousel-item2.js');
91
91
  var types = require('./cascader-panel/src/types.js');
92
92
  var config = require('./cascader-panel/src/config.js');
93
93
  var checkTag = require('./check-tag/src/check-tag.js');
File without changes
@@ -0,0 +1,3 @@
1
+ 'use strict';
2
+
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;"}
@@ -0,0 +1,21 @@
1
+ import type { ExtractPropTypes, StyleValue } from 'vue';
2
+ import type { Alignment, CellRenderer, DataGetter, FixedDirection, HeaderRenderer } from './types';
3
+ export declare const tableV2ColumnProps: {
4
+ readonly align: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<Alignment>, "left", unknown, unknown, unknown>;
5
+ readonly class: StringConstructor;
6
+ readonly dataKey: StringConstructor;
7
+ readonly fixed: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<boolean | FixedDirection>, false, unknown, unknown, unknown>;
8
+ readonly headerClass: StringConstructor;
9
+ readonly hidden: BooleanConstructor;
10
+ readonly resizable: BooleanConstructor;
11
+ readonly style: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<StyleValue>, unknown, unknown, unknown, unknown>;
12
+ readonly sortable: BooleanConstructor;
13
+ readonly title: StringConstructor;
14
+ readonly maxWidth: import("element-plus/es/utils").BuildPropReturn<NumberConstructor, undefined, unknown, unknown, unknown>;
15
+ readonly minWidth: import("element-plus/es/utils").BuildPropReturn<NumberConstructor, undefined, unknown, unknown, unknown>;
16
+ readonly width: import("element-plus/es/utils").BuildPropReturn<NumberConstructor, unknown, true, unknown, unknown>;
17
+ readonly cellRenderer: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<CellRenderer<any>>, unknown, unknown, unknown, unknown>;
18
+ readonly dataGetter: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<DataGetter<any>>, unknown, unknown, unknown, unknown>;
19
+ readonly headerRenderer: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<HeaderRenderer<any>>, unknown, unknown, unknown, unknown>;
20
+ };
21
+ export declare type TableV2ColumnProps = ExtractPropTypes<typeof tableV2ColumnProps>;
@@ -0,0 +1,49 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ require('../../../utils/index.js');
6
+ var props = require('../../../utils/vue/props.js');
7
+
8
+ const widthType = {
9
+ type: Number,
10
+ default: void 0
11
+ };
12
+ const tableV2ColumnProps = props.buildProps({
13
+ align: {
14
+ type: props.definePropType(String),
15
+ default: "left"
16
+ },
17
+ class: String,
18
+ dataKey: String,
19
+ fixed: {
20
+ type: props.definePropType([String, Boolean]),
21
+ default: false
22
+ },
23
+ headerClass: String,
24
+ hidden: Boolean,
25
+ resizable: Boolean,
26
+ style: {
27
+ type: props.definePropType(Object)
28
+ },
29
+ sortable: Boolean,
30
+ title: String,
31
+ maxWidth: widthType,
32
+ minWidth: widthType,
33
+ width: {
34
+ type: Number,
35
+ required: true
36
+ },
37
+ cellRenderer: {
38
+ type: props.definePropType(Function)
39
+ },
40
+ dataGetter: {
41
+ type: props.definePropType(Function)
42
+ },
43
+ headerRenderer: {
44
+ type: props.definePropType(Function)
45
+ }
46
+ });
47
+
48
+ exports.tableV2ColumnProps = tableV2ColumnProps;
49
+ //# sourceMappingURL=column.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"column.js","sources":["../../../../../../packages/components/table-v2/src/column.ts"],"sourcesContent":["import { buildProps, definePropType } from '@element-plus/utils'\n\nimport type { ExtractPropTypes, StyleValue } from 'vue'\nimport type {\n Alignment,\n CellRenderer,\n DataGetter,\n FixedDirection,\n HeaderRenderer,\n} from './types'\n\nconst widthType = {\n type: Number,\n default: undefined,\n} as const\n\nexport const tableV2ColumnProps = buildProps({\n /**\n * Attributes\n */\n align: {\n type: definePropType<Alignment>(String),\n default: 'left',\n },\n class: String,\n dataKey: String,\n fixed: {\n type: definePropType<boolean | FixedDirection>([String, Boolean]),\n default: false,\n },\n headerClass: String,\n hidden: Boolean,\n resizable: Boolean,\n style: {\n type: definePropType<StyleValue>(Object),\n },\n sortable: Boolean,\n title: String,\n\n maxWidth: widthType,\n minWidth: widthType,\n width: {\n type: Number,\n required: true,\n },\n\n // getters & renderers\n cellRenderer: {\n type: definePropType<CellRenderer<any>>(Function),\n },\n dataGetter: {\n type: definePropType<DataGetter<any>>(Function),\n },\n headerRenderer: {\n type: definePropType<HeaderRenderer<any>>(Function),\n },\n} as const)\n\nexport type TableV2ColumnProps = ExtractPropTypes<typeof tableV2ColumnProps>\n"],"names":["buildProps","definePropType"],"mappings":";;;;;;;AACA,MAAM,SAAS,GAAG;AAClB,EAAE,IAAI,EAAE,MAAM;AACd,EAAE,OAAO,EAAE,KAAK,CAAC;AACjB,CAAC,CAAC;AACU,MAAC,kBAAkB,GAAGA,gBAAU,CAAC;AAC7C,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAEC,oBAAc,CAAC,MAAM,CAAC;AAChC,IAAI,OAAO,EAAE,MAAM;AACnB,GAAG;AACH,EAAE,KAAK,EAAE,MAAM;AACf,EAAE,OAAO,EAAE,MAAM;AACjB,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAEA,oBAAc,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAC3C,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,WAAW,EAAE,MAAM;AACrB,EAAE,MAAM,EAAE,OAAO;AACjB,EAAE,SAAS,EAAE,OAAO;AACpB,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAEA,oBAAc,CAAC,MAAM,CAAC;AAChC,GAAG;AACH,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,KAAK,EAAE,MAAM;AACf,EAAE,QAAQ,EAAE,SAAS;AACrB,EAAE,QAAQ,EAAE,SAAS;AACrB,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,QAAQ,EAAE,IAAI;AAClB,GAAG;AACH,EAAE,YAAY,EAAE;AAChB,IAAI,IAAI,EAAEA,oBAAc,CAAC,QAAQ,CAAC;AAClC,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAEA,oBAAc,CAAC,QAAQ,CAAC;AAClC,GAAG;AACH,EAAE,cAAc,EAAE;AAClB,IAAI,IAAI,EAAEA,oBAAc,CAAC,QAAQ,CAAC;AAClC,GAAG;AACH,CAAC;;;;"}
@@ -0,0 +1 @@
1
+ export declare const sortOrders: readonly ["asc", "desc"];
@@ -0,0 +1,8 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ const sortOrders = ["asc", "desc"];
6
+
7
+ exports.sortOrders = sortOrders;
8
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sources":["../../../../../../packages/components/table-v2/src/constants.ts"],"sourcesContent":["export const sortOrders = ['asc', 'desc'] as const\n"],"names":[],"mappings":";;;;AAAY,MAAC,UAAU,GAAG,CAAC,KAAK,EAAE,MAAM;;;;"}
@@ -0,0 +1,80 @@
1
+ import type { ExtractPropTypes, StyleValue } from 'vue';
2
+ import type { Column, ColumnCommonParams, RowCommonParams, SortOrder } from './types';
3
+ /**
4
+ * Param types
5
+ */
6
+ export declare type ColumnSortParams<T> = {
7
+ column: Column<T>;
8
+ key: KeyType;
9
+ order: SortOrder;
10
+ };
11
+ export declare type RowExpandParams<T> = {
12
+ expanded: boolean;
13
+ rowKey: KeyType;
14
+ } & RowCommonParams<T>;
15
+ export declare type RowEventHandlerParams<T> = {
16
+ rowKey: KeyType;
17
+ event: Event;
18
+ } & RowCommonParams<T>;
19
+ /**
20
+ * Renderer/Getter types
21
+ */
22
+ export declare type ExtraCellPropGetter<T> = (params: ColumnCommonParams<T> & RowCommonParams<T>) => any;
23
+ export declare type ExtractHeaderPropGetter<T> = (params: {
24
+ columns: Column<T>[];
25
+ headerIndex: number;
26
+ }) => any;
27
+ export declare type ExtractHeaderCellPropGetter<T> = (params: ColumnCommonParams<T> & {
28
+ headerIndex: number;
29
+ }) => any;
30
+ export declare type ExtractRowPropGetter<T> = (params: {
31
+ columns: Column<T>[];
32
+ } & RowCommonParams<T>) => any;
33
+ export declare type HeaderClassNameGetter<T> = (params: {
34
+ columns: Column<T>[];
35
+ headerIndex: number;
36
+ }) => string;
37
+ export declare type RowClassNameGetter<T> = (params: {
38
+ columns: Column<T>[];
39
+ } & RowCommonParams<T>) => string;
40
+ /**
41
+ * Handler types
42
+ */
43
+ export declare type ColumnSortHandler<T> = (params: ColumnSortParams<T>) => void;
44
+ export declare type RowExpandHandler<T> = (params: RowExpandParams<T>) => void;
45
+ export declare type RowEventHandler<T> = (params: RowEventHandlerParams<T>) => void;
46
+ export declare type RowEventHandlers<T> = {
47
+ click?: RowEventHandler<T>;
48
+ contextmenu?: RowEventHandler<T>;
49
+ dblclick?: RowEventHandler<T>;
50
+ mouseenter?: RowEventHandler<T>;
51
+ mouseleave?: RowEventHandler<T>;
52
+ };
53
+ export declare const tableV2Props: {
54
+ readonly rowKey: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<KeyType>, unknown, unknown, unknown, unknown>;
55
+ readonly cellProps: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<any>, unknown, unknown, unknown, unknown>;
56
+ readonly headerClassName: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<string | HeaderClassNameGetter<any>>, unknown, unknown, unknown, unknown>;
57
+ readonly headerProps: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<any>, unknown, unknown, unknown, unknown>;
58
+ readonly headerCellProps: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<any>, unknown, unknown, unknown, unknown>;
59
+ readonly rowClassName: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<string | RowClassNameGetter<any>>, unknown, unknown, unknown, unknown>;
60
+ readonly rowProps: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<any>, unknown, unknown, unknown, unknown>;
61
+ readonly columns: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<Column<any>[]>, unknown, true, unknown, unknown>;
62
+ readonly fixedData: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<any[]>, unknown, unknown, unknown, unknown>;
63
+ readonly data: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<any[]>, unknown, unknown, unknown, unknown>;
64
+ readonly expandColumnKey: StringConstructor;
65
+ readonly expandedRowKeys: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<KeyType[]>, unknown, unknown, unknown, unknown>;
66
+ readonly defaultExpandedRowKeys: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<KeyType[]>, unknown, unknown, unknown, unknown>;
67
+ readonly classNames: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<string | string[]>, unknown, unknown, unknown, unknown>;
68
+ readonly disabled: BooleanConstructor;
69
+ readonly footerHeight: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<number | number[]>, unknown, unknown, unknown, unknown>;
70
+ readonly headerHeight: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<number | number[]>, unknown, unknown, unknown, unknown>;
71
+ readonly style: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<StyleValue>, unknown, unknown, unknown, unknown>;
72
+ readonly sortBy: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<{
73
+ key: KeyType;
74
+ order: readonly ["asc", "desc"];
75
+ }>, unknown, unknown, unknown, unknown>;
76
+ readonly onColumnSort: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<ColumnSortParams<any>>, unknown, unknown, unknown, unknown>;
77
+ readonly onRowExpanded: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<RowExpandHandler<any>>, unknown, unknown, unknown, unknown>;
78
+ readonly rowEventHandlers: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<RowEventHandlers<any>>, unknown, unknown, unknown, unknown>;
79
+ };
80
+ export declare type TableV2Props = ExtractPropTypes<typeof tableV2Props>;