@element-plus/nightly 0.0.20220225 → 0.0.20220228

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 (304) hide show
  1. package/README.md +8 -0
  2. package/dist/index.full.js +238 -243
  3. package/dist/index.full.min.js +6 -6
  4. package/dist/index.full.min.js.map +1 -1
  5. package/dist/index.full.min.mjs +6 -6
  6. package/dist/index.full.min.mjs.map +1 -1
  7. package/dist/index.full.mjs +238 -243
  8. package/dist/locale/af.js +1 -1
  9. package/dist/locale/af.min.js +1 -1
  10. package/dist/locale/af.min.mjs +1 -1
  11. package/dist/locale/af.mjs +1 -1
  12. package/dist/locale/ar.js +1 -1
  13. package/dist/locale/ar.min.js +1 -1
  14. package/dist/locale/ar.min.mjs +1 -1
  15. package/dist/locale/ar.mjs +1 -1
  16. package/dist/locale/bg.js +1 -1
  17. package/dist/locale/bg.min.js +1 -1
  18. package/dist/locale/bg.min.mjs +1 -1
  19. package/dist/locale/bg.mjs +1 -1
  20. package/dist/locale/bn.js +1 -1
  21. package/dist/locale/bn.min.js +1 -1
  22. package/dist/locale/bn.min.mjs +1 -1
  23. package/dist/locale/bn.mjs +1 -1
  24. package/dist/locale/ca.js +1 -1
  25. package/dist/locale/ca.min.js +1 -1
  26. package/dist/locale/ca.min.mjs +1 -1
  27. package/dist/locale/ca.mjs +1 -1
  28. package/dist/locale/cs.js +1 -1
  29. package/dist/locale/cs.min.js +1 -1
  30. package/dist/locale/cs.min.mjs +1 -1
  31. package/dist/locale/cs.mjs +1 -1
  32. package/dist/locale/da.js +1 -1
  33. package/dist/locale/da.min.js +1 -1
  34. package/dist/locale/da.min.mjs +1 -1
  35. package/dist/locale/da.mjs +1 -1
  36. package/dist/locale/de.js +1 -1
  37. package/dist/locale/de.min.js +1 -1
  38. package/dist/locale/de.min.mjs +1 -1
  39. package/dist/locale/de.mjs +1 -1
  40. package/dist/locale/el.js +1 -1
  41. package/dist/locale/el.min.js +1 -1
  42. package/dist/locale/el.min.mjs +1 -1
  43. package/dist/locale/el.mjs +1 -1
  44. package/dist/locale/en.js +1 -1
  45. package/dist/locale/en.min.js +1 -1
  46. package/dist/locale/en.min.mjs +1 -1
  47. package/dist/locale/en.mjs +1 -1
  48. package/dist/locale/eo.js +1 -1
  49. package/dist/locale/eo.min.js +1 -1
  50. package/dist/locale/eo.min.mjs +1 -1
  51. package/dist/locale/eo.mjs +1 -1
  52. package/dist/locale/es.js +1 -1
  53. package/dist/locale/es.min.js +1 -1
  54. package/dist/locale/es.min.mjs +1 -1
  55. package/dist/locale/es.mjs +1 -1
  56. package/dist/locale/et.js +1 -1
  57. package/dist/locale/et.min.js +1 -1
  58. package/dist/locale/et.min.mjs +1 -1
  59. package/dist/locale/et.mjs +1 -1
  60. package/dist/locale/eu.js +1 -1
  61. package/dist/locale/eu.min.js +1 -1
  62. package/dist/locale/eu.min.mjs +1 -1
  63. package/dist/locale/eu.mjs +1 -1
  64. package/dist/locale/fa.js +1 -1
  65. package/dist/locale/fa.min.js +1 -1
  66. package/dist/locale/fa.min.mjs +1 -1
  67. package/dist/locale/fa.mjs +1 -1
  68. package/dist/locale/fi.js +1 -1
  69. package/dist/locale/fi.min.js +1 -1
  70. package/dist/locale/fi.min.mjs +1 -1
  71. package/dist/locale/fi.mjs +1 -1
  72. package/dist/locale/fr.js +1 -1
  73. package/dist/locale/fr.min.js +1 -1
  74. package/dist/locale/fr.min.mjs +1 -1
  75. package/dist/locale/fr.mjs +1 -1
  76. package/dist/locale/he.js +1 -1
  77. package/dist/locale/he.min.js +1 -1
  78. package/dist/locale/he.min.mjs +1 -1
  79. package/dist/locale/he.mjs +1 -1
  80. package/dist/locale/hr.js +1 -1
  81. package/dist/locale/hr.min.js +1 -1
  82. package/dist/locale/hr.min.mjs +1 -1
  83. package/dist/locale/hr.mjs +1 -1
  84. package/dist/locale/hu.js +1 -1
  85. package/dist/locale/hu.min.js +1 -1
  86. package/dist/locale/hu.min.mjs +1 -1
  87. package/dist/locale/hu.mjs +1 -1
  88. package/dist/locale/hy-am.js +1 -1
  89. package/dist/locale/hy-am.min.js +1 -1
  90. package/dist/locale/hy-am.min.mjs +1 -1
  91. package/dist/locale/hy-am.mjs +1 -1
  92. package/dist/locale/id.js +1 -1
  93. package/dist/locale/id.min.js +1 -1
  94. package/dist/locale/id.min.mjs +1 -1
  95. package/dist/locale/id.mjs +1 -1
  96. package/dist/locale/it.js +1 -1
  97. package/dist/locale/it.min.js +1 -1
  98. package/dist/locale/it.min.mjs +1 -1
  99. package/dist/locale/it.mjs +1 -1
  100. package/dist/locale/ja.js +1 -1
  101. package/dist/locale/ja.min.js +1 -1
  102. package/dist/locale/ja.min.mjs +1 -1
  103. package/dist/locale/ja.mjs +1 -1
  104. package/dist/locale/kk.js +1 -1
  105. package/dist/locale/kk.min.js +1 -1
  106. package/dist/locale/kk.min.mjs +1 -1
  107. package/dist/locale/kk.mjs +1 -1
  108. package/dist/locale/km.js +1 -1
  109. package/dist/locale/km.min.js +1 -1
  110. package/dist/locale/km.min.mjs +1 -1
  111. package/dist/locale/km.mjs +1 -1
  112. package/dist/locale/ko.js +1 -1
  113. package/dist/locale/ko.min.js +1 -1
  114. package/dist/locale/ko.min.mjs +1 -1
  115. package/dist/locale/ko.mjs +1 -1
  116. package/dist/locale/ku.js +1 -1
  117. package/dist/locale/ku.min.js +1 -1
  118. package/dist/locale/ku.min.mjs +1 -1
  119. package/dist/locale/ku.mjs +1 -1
  120. package/dist/locale/ky.js +1 -1
  121. package/dist/locale/ky.min.js +1 -1
  122. package/dist/locale/ky.min.mjs +1 -1
  123. package/dist/locale/ky.mjs +1 -1
  124. package/dist/locale/lt.js +1 -1
  125. package/dist/locale/lt.min.js +1 -1
  126. package/dist/locale/lt.min.mjs +1 -1
  127. package/dist/locale/lt.mjs +1 -1
  128. package/dist/locale/lv.js +1 -1
  129. package/dist/locale/lv.min.js +1 -1
  130. package/dist/locale/lv.min.mjs +1 -1
  131. package/dist/locale/lv.mjs +1 -1
  132. package/dist/locale/mg.js +1 -1
  133. package/dist/locale/mg.min.js +1 -1
  134. package/dist/locale/mg.min.mjs +1 -1
  135. package/dist/locale/mg.mjs +1 -1
  136. package/dist/locale/mn.js +1 -1
  137. package/dist/locale/mn.min.js +1 -1
  138. package/dist/locale/mn.min.mjs +1 -1
  139. package/dist/locale/mn.mjs +1 -1
  140. package/dist/locale/nb-no.js +1 -1
  141. package/dist/locale/nb-no.min.js +1 -1
  142. package/dist/locale/nb-no.min.mjs +1 -1
  143. package/dist/locale/nb-no.mjs +1 -1
  144. package/dist/locale/nl.js +1 -1
  145. package/dist/locale/nl.min.js +1 -1
  146. package/dist/locale/nl.min.mjs +1 -1
  147. package/dist/locale/nl.mjs +1 -1
  148. package/dist/locale/pa.js +1 -1
  149. package/dist/locale/pa.min.js +1 -1
  150. package/dist/locale/pa.min.mjs +1 -1
  151. package/dist/locale/pa.mjs +1 -1
  152. package/dist/locale/pl.js +1 -1
  153. package/dist/locale/pl.min.js +1 -1
  154. package/dist/locale/pl.min.mjs +1 -1
  155. package/dist/locale/pl.mjs +1 -1
  156. package/dist/locale/pt-br.js +1 -1
  157. package/dist/locale/pt-br.min.js +1 -1
  158. package/dist/locale/pt-br.min.mjs +1 -1
  159. package/dist/locale/pt-br.mjs +1 -1
  160. package/dist/locale/pt.js +1 -1
  161. package/dist/locale/pt.min.js +1 -1
  162. package/dist/locale/pt.min.mjs +1 -1
  163. package/dist/locale/pt.mjs +1 -1
  164. package/dist/locale/ro.js +1 -1
  165. package/dist/locale/ro.min.js +1 -1
  166. package/dist/locale/ro.min.mjs +1 -1
  167. package/dist/locale/ro.mjs +1 -1
  168. package/dist/locale/ru.js +1 -1
  169. package/dist/locale/ru.min.js +1 -1
  170. package/dist/locale/ru.min.mjs +1 -1
  171. package/dist/locale/ru.mjs +1 -1
  172. package/dist/locale/sk.js +1 -1
  173. package/dist/locale/sk.min.js +1 -1
  174. package/dist/locale/sk.min.mjs +1 -1
  175. package/dist/locale/sk.mjs +1 -1
  176. package/dist/locale/sl.js +1 -1
  177. package/dist/locale/sl.min.js +1 -1
  178. package/dist/locale/sl.min.mjs +1 -1
  179. package/dist/locale/sl.mjs +1 -1
  180. package/dist/locale/sr.js +1 -1
  181. package/dist/locale/sr.min.js +1 -1
  182. package/dist/locale/sr.min.mjs +1 -1
  183. package/dist/locale/sr.mjs +1 -1
  184. package/dist/locale/sv.js +1 -1
  185. package/dist/locale/sv.min.js +1 -1
  186. package/dist/locale/sv.min.mjs +1 -1
  187. package/dist/locale/sv.mjs +1 -1
  188. package/dist/locale/ta.js +1 -1
  189. package/dist/locale/ta.min.js +1 -1
  190. package/dist/locale/ta.min.mjs +1 -1
  191. package/dist/locale/ta.mjs +1 -1
  192. package/dist/locale/th.js +1 -1
  193. package/dist/locale/th.min.js +1 -1
  194. package/dist/locale/th.min.mjs +1 -1
  195. package/dist/locale/th.mjs +1 -1
  196. package/dist/locale/tk.js +1 -1
  197. package/dist/locale/tk.min.js +1 -1
  198. package/dist/locale/tk.min.mjs +1 -1
  199. package/dist/locale/tk.mjs +1 -1
  200. package/dist/locale/tr.js +1 -1
  201. package/dist/locale/tr.min.js +1 -1
  202. package/dist/locale/tr.min.mjs +1 -1
  203. package/dist/locale/tr.mjs +1 -1
  204. package/dist/locale/ug-cn.js +1 -1
  205. package/dist/locale/ug-cn.min.js +1 -1
  206. package/dist/locale/ug-cn.min.mjs +1 -1
  207. package/dist/locale/ug-cn.mjs +1 -1
  208. package/dist/locale/uk.js +1 -1
  209. package/dist/locale/uk.min.js +1 -1
  210. package/dist/locale/uk.min.mjs +1 -1
  211. package/dist/locale/uk.mjs +1 -1
  212. package/dist/locale/uz-uz.js +1 -1
  213. package/dist/locale/uz-uz.min.js +1 -1
  214. package/dist/locale/uz-uz.min.mjs +1 -1
  215. package/dist/locale/uz-uz.mjs +1 -1
  216. package/dist/locale/vi.js +1 -1
  217. package/dist/locale/vi.min.js +1 -1
  218. package/dist/locale/vi.min.mjs +1 -1
  219. package/dist/locale/vi.mjs +1 -1
  220. package/dist/locale/zh-cn.js +1 -1
  221. package/dist/locale/zh-cn.min.js +1 -1
  222. package/dist/locale/zh-cn.min.mjs +1 -1
  223. package/dist/locale/zh-cn.mjs +1 -1
  224. package/dist/locale/zh-tw.js +1 -1
  225. package/dist/locale/zh-tw.min.js +1 -1
  226. package/dist/locale/zh-tw.min.mjs +1 -1
  227. package/dist/locale/zh-tw.mjs +1 -1
  228. package/es/components/button/src/button2.mjs +3 -3
  229. package/es/components/button/src/button2.mjs.map +1 -1
  230. package/es/components/icon/index.mjs +2 -2
  231. package/es/components/icon/src/icon.mjs +8 -33
  232. package/es/components/icon/src/icon.mjs.map +1 -1
  233. package/es/components/icon/src/icon2.mjs +33 -8
  234. package/es/components/icon/src/icon2.mjs.map +1 -1
  235. package/es/components/image/src/image2.mjs +2 -2
  236. package/es/components/image/src/image2.mjs.map +1 -1
  237. package/es/components/index.mjs +1 -1
  238. package/es/components/message/src/message-method.mjs +3 -2
  239. package/es/components/message/src/message-method.mjs.map +1 -1
  240. package/es/components/notification/src/notify.mjs +5 -3
  241. package/es/components/notification/src/notify.mjs.map +1 -1
  242. package/es/components/popper/src/trigger.mjs +3 -1
  243. package/es/components/popper/src/trigger.mjs.map +1 -1
  244. package/es/components/popper/src/trigger.vue.d.ts +5 -5
  245. package/es/components/popper/src/utils.d.ts +2 -2
  246. package/es/components/popper/src/utils.mjs +4 -1
  247. package/es/components/popper/src/utils.mjs.map +1 -1
  248. package/es/components/tag/index.d.ts +47 -0
  249. package/es/components/tag/index.mjs +2 -2
  250. package/es/components/tag/index.mjs.map +1 -1
  251. package/es/components/tag/src/tag.d.ts +2 -0
  252. package/es/components/tag/src/tag.mjs.map +1 -1
  253. package/es/components/tag/src/tag.vue.d.ts +47 -0
  254. package/es/components/tag/src/tag2.mjs +52 -59
  255. package/es/components/tag/src/tag2.mjs.map +1 -1
  256. package/es/directives/click-outside/index.mjs +4 -4
  257. package/es/directives/click-outside/index.mjs.map +1 -1
  258. package/es/index.mjs +1 -1
  259. package/es/utils/index.mjs +1 -1
  260. package/es/utils/types.d.ts +1 -0
  261. package/es/utils/types.mjs +2 -1
  262. package/es/utils/types.mjs.map +1 -1
  263. package/es/version.d.ts +1 -1
  264. package/es/version.mjs +1 -1
  265. package/es/version.mjs.map +1 -1
  266. package/lib/components/button/src/button2.js +3 -3
  267. package/lib/components/button/src/button2.js.map +1 -1
  268. package/lib/components/icon/index.js +2 -2
  269. package/lib/components/icon/src/icon.js +8 -33
  270. package/lib/components/icon/src/icon.js.map +1 -1
  271. package/lib/components/icon/src/icon2.js +33 -8
  272. package/lib/components/icon/src/icon2.js.map +1 -1
  273. package/lib/components/image/src/image2.js +2 -2
  274. package/lib/components/image/src/image2.js.map +1 -1
  275. package/lib/components/index.js +1 -1
  276. package/lib/components/message/src/message-method.js +3 -2
  277. package/lib/components/message/src/message-method.js.map +1 -1
  278. package/lib/components/notification/src/notify.js +5 -3
  279. package/lib/components/notification/src/notify.js.map +1 -1
  280. package/lib/components/popper/src/trigger.js +3 -1
  281. package/lib/components/popper/src/trigger.js.map +1 -1
  282. package/lib/components/popper/src/trigger.vue.d.ts +5 -5
  283. package/lib/components/popper/src/utils.d.ts +2 -2
  284. package/lib/components/popper/src/utils.js +4 -1
  285. package/lib/components/popper/src/utils.js.map +1 -1
  286. package/lib/components/tag/index.d.ts +47 -0
  287. package/lib/components/tag/src/tag.d.ts +2 -0
  288. package/lib/components/tag/src/tag.js.map +1 -1
  289. package/lib/components/tag/src/tag.vue.d.ts +47 -0
  290. package/lib/components/tag/src/tag2.js +56 -63
  291. package/lib/components/tag/src/tag2.js.map +1 -1
  292. package/lib/directives/click-outside/index.js +4 -4
  293. package/lib/directives/click-outside/index.js.map +1 -1
  294. package/lib/index.js +1 -1
  295. package/lib/utils/index.js +1 -0
  296. package/lib/utils/index.js.map +1 -1
  297. package/lib/utils/types.d.ts +1 -0
  298. package/lib/utils/types.js +2 -0
  299. package/lib/utils/types.js.map +1 -1
  300. package/lib/version.d.ts +1 -1
  301. package/lib/version.js +1 -1
  302. package/lib/version.js.map +1 -1
  303. package/package.json +5 -5
  304. package/web-types.json +1 -1
@@ -1,18 +1,20 @@
1
- import { defineComponent, computed, resolveComponent, openBlock, createElementBlock, normalizeClass, normalizeStyle, createElementVNode, renderSlot, createBlock, withCtx, createVNode, createCommentVNode, Transition } from 'vue';
1
+ import { defineComponent, computed, openBlock, createElementBlock, normalizeClass, unref, normalizeStyle, createElementVNode, renderSlot, createBlock, withCtx, createVNode, createCommentVNode, Transition } from 'vue';
2
2
  import { ElIcon } from '../../icon/index.mjs';
3
3
  import { Close } from '@element-plus/icons-vue';
4
4
  import '../../../hooks/index.mjs';
5
5
  import { tagProps, tagEmits } from './tag.mjs';
6
- import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
7
6
  import { useSize } from '../../../hooks/use-common-props/index.mjs';
8
7
  import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
9
8
 
10
- const _sfc_main = defineComponent({
11
- name: "ElTag",
12
- components: { ElIcon, Close },
9
+ const __default__ = {
10
+ name: "ElTag"
11
+ };
12
+ const _sfc_main = /* @__PURE__ */ defineComponent({
13
+ ...__default__,
13
14
  props: tagProps,
14
15
  emits: tagEmits,
15
- setup(props, { emit }) {
16
+ setup(__props, { emit }) {
17
+ const props = __props;
16
18
  const tagSize = useSize();
17
19
  const ns = useNamespace("tag");
18
20
  const classes = computed(() => {
@@ -33,69 +35,60 @@ const _sfc_main = defineComponent({
33
35
  const handleClick = (event) => {
34
36
  emit("click", event);
35
37
  };
36
- return {
37
- ns,
38
- classes,
39
- handleClose,
40
- handleClick
41
- };
42
- }
43
- });
44
- function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
45
- const _component_close = resolveComponent("close");
46
- const _component_el_icon = resolveComponent("el-icon");
47
- return !_ctx.disableTransitions ? (openBlock(), createElementBlock("span", {
48
- key: 0,
49
- class: normalizeClass(_ctx.classes),
50
- style: normalizeStyle({ backgroundColor: _ctx.color }),
51
- onClick: _cache[0] || (_cache[0] = (...args) => _ctx.handleClick && _ctx.handleClick(...args))
52
- }, [
53
- createElementVNode("span", {
54
- class: normalizeClass(_ctx.ns.e("content"))
55
- }, [
56
- renderSlot(_ctx.$slots, "default")
57
- ], 2),
58
- _ctx.closable ? (openBlock(), createBlock(_component_el_icon, {
59
- key: 0,
60
- class: normalizeClass(_ctx.ns.e("close")),
61
- onClick: _ctx.handleClose
62
- }, {
63
- default: withCtx(() => [
64
- createVNode(_component_close)
65
- ]),
66
- _: 1
67
- }, 8, ["class", "onClick"])) : createCommentVNode("v-if", true)
68
- ], 6)) : (openBlock(), createBlock(Transition, {
69
- key: 1,
70
- name: `${_ctx.ns.namespace.value}-zoom-in-center`
71
- }, {
72
- default: withCtx(() => [
73
- createElementVNode("span", {
74
- class: normalizeClass(_ctx.classes),
38
+ return (_ctx, _cache) => {
39
+ return !_ctx.disableTransitions ? (openBlock(), createElementBlock("span", {
40
+ key: 0,
41
+ class: normalizeClass(unref(classes)),
75
42
  style: normalizeStyle({ backgroundColor: _ctx.color }),
76
- onClick: _cache[1] || (_cache[1] = (...args) => _ctx.handleClick && _ctx.handleClick(...args))
43
+ onClick: handleClick
77
44
  }, [
78
45
  createElementVNode("span", {
79
- class: normalizeClass(_ctx.ns.e("content"))
46
+ class: normalizeClass(unref(ns).e("content"))
80
47
  }, [
81
48
  renderSlot(_ctx.$slots, "default")
82
49
  ], 2),
83
- _ctx.closable ? (openBlock(), createBlock(_component_el_icon, {
50
+ _ctx.closable ? (openBlock(), createBlock(unref(ElIcon), {
84
51
  key: 0,
85
- class: normalizeClass(_ctx.ns.e("close")),
86
- onClick: _ctx.handleClose
52
+ class: normalizeClass(unref(ns).e("close")),
53
+ onClick: handleClose
87
54
  }, {
88
55
  default: withCtx(() => [
89
- createVNode(_component_close)
56
+ createVNode(unref(Close))
90
57
  ]),
91
58
  _: 1
92
- }, 8, ["class", "onClick"])) : createCommentVNode("v-if", true)
93
- ], 6)
94
- ]),
95
- _: 3
96
- }, 8, ["name"]));
97
- }
98
- var Tag = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render]]);
59
+ }, 8, ["class"])) : createCommentVNode("v-if", true)
60
+ ], 6)) : (openBlock(), createBlock(Transition, {
61
+ key: 1,
62
+ name: `${unref(ns).namespace.value}-zoom-in-center`
63
+ }, {
64
+ default: withCtx(() => [
65
+ createElementVNode("span", {
66
+ class: normalizeClass(unref(classes)),
67
+ style: normalizeStyle({ backgroundColor: _ctx.color }),
68
+ onClick: handleClick
69
+ }, [
70
+ createElementVNode("span", {
71
+ class: normalizeClass(unref(ns).e("content"))
72
+ }, [
73
+ renderSlot(_ctx.$slots, "default")
74
+ ], 2),
75
+ _ctx.closable ? (openBlock(), createBlock(unref(ElIcon), {
76
+ key: 0,
77
+ class: normalizeClass(unref(ns).e("close")),
78
+ onClick: handleClose
79
+ }, {
80
+ default: withCtx(() => [
81
+ createVNode(unref(Close))
82
+ ]),
83
+ _: 1
84
+ }, 8, ["class"])) : createCommentVNode("v-if", true)
85
+ ], 6)
86
+ ]),
87
+ _: 3
88
+ }, 8, ["name"]));
89
+ };
90
+ }
91
+ });
99
92
 
100
- export { Tag as default };
93
+ export { _sfc_main as default };
101
94
  //# sourceMappingURL=tag2.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"tag2.mjs","sources":["../../../../../../packages/components/tag/src/tag.vue"],"sourcesContent":["<template>\n <span\n v-if=\"!disableTransitions\"\n :class=\"classes\"\n :style=\"{ backgroundColor: color }\"\n @click=\"handleClick\"\n >\n <span :class=\"ns.e('content')\">\n <slot></slot>\n </span>\n <el-icon v-if=\"closable\" :class=\"ns.e('close')\" @click=\"handleClose\">\n <close />\n </el-icon>\n </span>\n <transition v-else :name=\"`${ns.namespace.value}-zoom-in-center`\">\n <span\n :class=\"classes\"\n :style=\"{ backgroundColor: color }\"\n @click=\"handleClick\"\n >\n <span :class=\"ns.e('content')\">\n <slot></slot>\n </span>\n <el-icon v-if=\"closable\" :class=\"ns.e('close')\" @click=\"handleClose\">\n <close />\n </el-icon>\n </span>\n </transition>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent } from 'vue'\nimport ElIcon from '@element-plus/components/icon'\nimport { Close } from '@element-plus/icons-vue'\n\nimport { useSize, useNamespace } from '@element-plus/hooks'\nimport { tagProps, tagEmits } from './tag'\n\nexport default defineComponent({\n name: 'ElTag',\n\n components: { ElIcon, Close },\n\n props: tagProps,\n emits: tagEmits,\n\n setup(props, { emit }) {\n const tagSize = useSize()\n const ns = useNamespace('tag')\n const classes = computed(() => {\n const { type, hit, effect, closable } = props\n return [\n ns.b(),\n ns.is('closable', closable),\n ns.m(type),\n ns.m(tagSize.value),\n ns.m(effect),\n ns.is('hit', hit),\n ]\n })\n\n // methods\n const handleClose = (event: MouseEvent) => {\n event.stopPropagation()\n emit('close', event)\n }\n\n const handleClick = (event: MouseEvent) => {\n emit('click', event)\n }\n\n return {\n ns,\n classes,\n handleClose,\n handleClick,\n }\n },\n})\n</script>\n"],"names":["_createElementBlock","_normalizeClass","_normalizeStyle","_createElementVNode","_renderSlot","_createBlock","_createVNode","_Transition"],"mappings":";;;;;;;;;AAsCA,MAAK,YAAa,gBAAa;AAAA,EAC7B,MAAM;AAAA,EAEN,YAAY,EAAE,QAAQ;AAAA,EAEtB,OAAO;AAAA,EACP,OAAO;AAAA,EAEP,MAAM,OAAO,EAAE,QAAQ;AACrB,UAAM,UAAU;AAChB,UAAM,KAAK,aAAa;AACxB,UAAM,UAAU,SAAS,MAAM;AAC7B,YAAM,EAAE,MAAM,KAAK,QAAQ,aAAa;AACxC,aAAO;AAAA,QACL,GAAG;AAAA,QACH,GAAG,GAAG,YAAY;AAAA,QAClB,GAAG,EAAE;AAAA,QACL,GAAG,EAAE,QAAQ;AAAA,QACb,GAAG,EAAE;AAAA,QACL,GAAG,GAAG,OAAO;AAAA;AAAA;AAKjB,UAAM,cAAc,CAAC,UAAsB;AACzC,YAAM;AACN,WAAK,SAAS;AAAA;AAGhB,UAAM,cAAc,CAAC,UAAsB;AACzC,WAAK,SAAS;AAAA;AAGhB,WAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAAA;AAAA;;;;UAzEK,wCADTA,mBAYO;AAAA;IAVJ,OAAKC,eAAE;AAAA,IACP,OAAKC,kCAAqB;AAAA,IAC1B,SAAK,uCAAE;AAAA;IAERC,mBAEO;AAAA,MAFA,OAAKF,eAAE,QAAG,EAAC;AAAA;MAChBG,WAAa;AAAA;IAEA,8BAAfC,YAEU;AAAA;MAFgB,OAAKJ,eAAE,QAAG,EAAC;AAAA,MAAY,SAAO;AAAA;uBACtD,MAAS;AAAA,QAATK,YAAS;AAAA;AAAA;;yBAGbD,YAaaE;AAAA;IAbO,MAAI,GAAK,QAAG,UAAU;AAAA;qBACxC,MAWO;AAAA,MAXPJ,mBAWO;AAAA,QAVJ,OAAKF,eAAE;AAAA,QACP,OAAKC,kCAAqB;AAAA,QAC1B,SAAK,uCAAE;AAAA;QAERC,mBAEO;AAAA,UAFA,OAAKF,eAAE,QAAG,EAAC;AAAA;UAChBG,WAAa;AAAA;QAEA,8BAAfC,YAEU;AAAA;UAFgB,OAAKJ,eAAE,QAAG,EAAC;AAAA,UAAY,SAAO;AAAA;2BACtD,MAAS;AAAA,YAATK,YAAS;AAAA;AAAA;;;;;;;;;;;"}
1
+ {"version":3,"file":"tag2.mjs","sources":["../../../../../../packages/components/tag/src/tag.vue"],"sourcesContent":["<template>\n <span\n v-if=\"!disableTransitions\"\n :class=\"classes\"\n :style=\"{ backgroundColor: color }\"\n @click=\"handleClick\"\n >\n <span :class=\"ns.e('content')\">\n <slot></slot>\n </span>\n <el-icon v-if=\"closable\" :class=\"ns.e('close')\" @click=\"handleClose\">\n <Close />\n </el-icon>\n </span>\n <transition v-else :name=\"`${ns.namespace.value}-zoom-in-center`\">\n <span\n :class=\"classes\"\n :style=\"{ backgroundColor: color }\"\n @click=\"handleClick\"\n >\n <span :class=\"ns.e('content')\">\n <slot></slot>\n </span>\n <el-icon v-if=\"closable\" :class=\"ns.e('close')\" @click=\"handleClose\">\n <Close />\n </el-icon>\n </span>\n </transition>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed } from 'vue'\nimport ElIcon from '@element-plus/components/icon'\nimport { Close } from '@element-plus/icons-vue'\n\nimport { useSize, useNamespace } from '@element-plus/hooks'\nimport { tagProps, tagEmits } from './tag'\n\ndefineOptions({\n name: 'ElTag',\n})\nconst props = defineProps(tagProps)\nconst emit = defineEmits(tagEmits)\n\nconst tagSize = useSize()\nconst ns = useNamespace('tag')\nconst classes = computed(() => {\n const { type, hit, effect, closable } = props\n return [\n ns.b(),\n ns.is('closable', closable),\n ns.m(type),\n ns.m(tagSize.value),\n ns.m(effect),\n ns.is('hit', hit),\n ]\n})\n\n// methods\nconst handleClose = (event: MouseEvent) => {\n event.stopPropagation()\n emit('close', event)\n}\n\nconst handleClick = (event: MouseEvent) => {\n emit('click', event)\n}\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AA4CA;AACA;AACA;;;;;;;;;;;AAaA;;;;AAKA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,12 +1,12 @@
1
1
  import { isClient } from '@vueuse/core';
2
2
  import '../../utils/index.mjs';
3
- import { on } from '../../utils/dom/event.mjs';
3
+ import { isElement } from '../../utils/types.mjs';
4
4
 
5
5
  const nodeList = /* @__PURE__ */ new Map();
6
6
  let startClick;
7
7
  if (isClient) {
8
- on(document, "mousedown", (e) => startClick = e);
9
- on(document, "mouseup", (e) => {
8
+ document.addEventListener("mousedown", (e) => startClick = e);
9
+ document.addEventListener("mouseup", (e) => {
10
10
  for (const handlers of nodeList.values()) {
11
11
  for (const { documentHandler } of handlers) {
12
12
  documentHandler(e, startClick);
@@ -18,7 +18,7 @@ function createDocumentHandler(el, binding) {
18
18
  let excludes = [];
19
19
  if (Array.isArray(binding.arg)) {
20
20
  excludes = binding.arg;
21
- } else if (binding.arg instanceof HTMLElement) {
21
+ } else if (isElement(binding.arg)) {
22
22
  excludes.push(binding.arg);
23
23
  }
24
24
  return function(mouseup, mousedown) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../../packages/directives/click-outside/index.ts"],"sourcesContent":["import { isClient } from '@vueuse/core'\nimport { on } from '@element-plus/utils'\n\nimport type {\n ComponentPublicInstance,\n DirectiveBinding,\n ObjectDirective,\n} from 'vue'\nimport type { Nullable } from '@element-plus/utils'\n\ntype DocumentHandler = <T extends MouseEvent>(mouseup: T, mousedown: T) => void\ntype FlushList = Map<\n HTMLElement,\n {\n documentHandler: DocumentHandler\n bindingFn: (...args: unknown[]) => unknown\n }[]\n>\n\nconst nodeList: FlushList = new Map()\n\nlet startClick: MouseEvent\n\nif (isClient) {\n on(document, 'mousedown', (e: MouseEvent) => (startClick = e))\n on(document, 'mouseup', (e: MouseEvent) => {\n for (const handlers of nodeList.values()) {\n for (const { documentHandler } of handlers) {\n documentHandler(e as MouseEvent, startClick)\n }\n }\n })\n}\n\nfunction createDocumentHandler(\n el: HTMLElement,\n binding: DirectiveBinding\n): DocumentHandler {\n let excludes: HTMLElement[] = []\n if (Array.isArray(binding.arg)) {\n excludes = binding.arg\n } else if ((binding.arg as unknown) instanceof HTMLElement) {\n // due to current implementation on binding type is wrong the type casting is necessary here\n excludes.push(binding.arg as unknown as HTMLElement)\n }\n return function (mouseup, mousedown) {\n const popperRef = (\n binding.instance as ComponentPublicInstance<{\n popperRef: Nullable<HTMLElement>\n }>\n ).popperRef\n const mouseUpTarget = mouseup.target as Node\n const mouseDownTarget = mousedown?.target as Node\n const isBound = !binding || !binding.instance\n const isTargetExists = !mouseUpTarget || !mouseDownTarget\n const isContainedByEl =\n el.contains(mouseUpTarget) || el.contains(mouseDownTarget)\n const isSelf = el === mouseUpTarget\n\n const isTargetExcluded =\n (excludes.length &&\n excludes.some((item) => item?.contains(mouseUpTarget))) ||\n (excludes.length && excludes.includes(mouseDownTarget as HTMLElement))\n const isContainedByPopper =\n popperRef &&\n (popperRef.contains(mouseUpTarget) || popperRef.contains(mouseDownTarget))\n if (\n isBound ||\n isTargetExists ||\n isContainedByEl ||\n isSelf ||\n isTargetExcluded ||\n isContainedByPopper\n ) {\n return\n }\n binding.value(mouseup, mousedown)\n }\n}\n\nconst ClickOutside: ObjectDirective = {\n beforeMount(el: HTMLElement, binding: DirectiveBinding) {\n // there could be multiple handlers on the element\n if (!nodeList.has(el)) {\n nodeList.set(el, [])\n }\n\n nodeList.get(el).push({\n documentHandler: createDocumentHandler(el, binding),\n bindingFn: binding.value,\n })\n },\n updated(el: HTMLElement, binding: DirectiveBinding) {\n if (!nodeList.has(el)) {\n nodeList.set(el, [])\n }\n\n const handlers = nodeList.get(el)\n const oldHandlerIndex = handlers.findIndex(\n (item) => item.bindingFn === binding.oldValue\n )\n const newHandler = {\n documentHandler: createDocumentHandler(el, binding),\n bindingFn: binding.value,\n }\n\n if (oldHandlerIndex >= 0) {\n // replace the old handler to the new handler\n handlers.splice(oldHandlerIndex, 1, newHandler)\n } else {\n handlers.push(newHandler)\n }\n },\n unmounted(el: HTMLElement) {\n // remove all listeners when a component unmounted\n nodeList.delete(el)\n },\n}\n\nexport default ClickOutside\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../packages/directives/click-outside/index.ts"],"sourcesContent":["import { isClient } from '@vueuse/core'\nimport { isElement } from '@element-plus/utils'\n\nimport type {\n ComponentPublicInstance,\n DirectiveBinding,\n ObjectDirective,\n} from 'vue'\nimport type { Nullable } from '@element-plus/utils'\n\ntype DocumentHandler = <T extends MouseEvent>(mouseup: T, mousedown: T) => void\ntype FlushList = Map<\n HTMLElement,\n {\n documentHandler: DocumentHandler\n bindingFn: (...args: unknown[]) => unknown\n }[]\n>\n\nconst nodeList: FlushList = new Map()\n\nlet startClick: MouseEvent\n\nif (isClient) {\n document.addEventListener('mousedown', (e: MouseEvent) => (startClick = e))\n document.addEventListener('mouseup', (e: MouseEvent) => {\n for (const handlers of nodeList.values()) {\n for (const { documentHandler } of handlers) {\n documentHandler(e as MouseEvent, startClick)\n }\n }\n })\n}\n\nfunction createDocumentHandler(\n el: HTMLElement,\n binding: DirectiveBinding\n): DocumentHandler {\n let excludes: HTMLElement[] = []\n if (Array.isArray(binding.arg)) {\n excludes = binding.arg\n } else if (isElement(binding.arg)) {\n // due to current implementation on binding type is wrong the type casting is necessary here\n excludes.push(binding.arg as unknown as HTMLElement)\n }\n return function (mouseup, mousedown) {\n const popperRef = (\n binding.instance as ComponentPublicInstance<{\n popperRef: Nullable<HTMLElement>\n }>\n ).popperRef\n const mouseUpTarget = mouseup.target as Node\n const mouseDownTarget = mousedown?.target as Node\n const isBound = !binding || !binding.instance\n const isTargetExists = !mouseUpTarget || !mouseDownTarget\n const isContainedByEl =\n el.contains(mouseUpTarget) || el.contains(mouseDownTarget)\n const isSelf = el === mouseUpTarget\n\n const isTargetExcluded =\n (excludes.length &&\n excludes.some((item) => item?.contains(mouseUpTarget))) ||\n (excludes.length && excludes.includes(mouseDownTarget as HTMLElement))\n const isContainedByPopper =\n popperRef &&\n (popperRef.contains(mouseUpTarget) || popperRef.contains(mouseDownTarget))\n if (\n isBound ||\n isTargetExists ||\n isContainedByEl ||\n isSelf ||\n isTargetExcluded ||\n isContainedByPopper\n ) {\n return\n }\n binding.value(mouseup, mousedown)\n }\n}\n\nconst ClickOutside: ObjectDirective = {\n beforeMount(el: HTMLElement, binding: DirectiveBinding) {\n // there could be multiple handlers on the element\n if (!nodeList.has(el)) {\n nodeList.set(el, [])\n }\n\n nodeList.get(el).push({\n documentHandler: createDocumentHandler(el, binding),\n bindingFn: binding.value,\n })\n },\n updated(el: HTMLElement, binding: DirectiveBinding) {\n if (!nodeList.has(el)) {\n nodeList.set(el, [])\n }\n\n const handlers = nodeList.get(el)\n const oldHandlerIndex = handlers.findIndex(\n (item) => item.bindingFn === binding.oldValue\n )\n const newHandler = {\n documentHandler: createDocumentHandler(el, binding),\n bindingFn: binding.value,\n }\n\n if (oldHandlerIndex >= 0) {\n // replace the old handler to the new handler\n handlers.splice(oldHandlerIndex, 1, newHandler)\n } else {\n handlers.push(newHandler)\n }\n },\n unmounted(el: HTMLElement) {\n // remove all listeners when a component unmounted\n nodeList.delete(el)\n },\n}\n\nexport default ClickOutside\n"],"names":[],"mappings":"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"}
package/es/index.mjs CHANGED
@@ -56,7 +56,7 @@ export { ElDropdown, ElDropdownItem, ElDropdownMenu } from './components/dropdow
56
56
  export { emptyProps } from './components/empty/src/empty.mjs';
57
57
  export { ElEmpty } from './components/empty/index.mjs';
58
58
  export { ElForm, ElFormItem } from './components/form/index.mjs';
59
- export { iconProps } from './components/icon/src/icon2.mjs';
59
+ export { iconProps } from './components/icon/src/icon.mjs';
60
60
  export { ElIcon } from './components/icon/index.mjs';
61
61
  export { imageEmits, imageProps } from './components/image/src/image.mjs';
62
62
  export { ElImage } from './components/image/index.mjs';
@@ -9,7 +9,7 @@ export { entriesOf, getPropByPath, keysOf } from './objects.mjs';
9
9
  export { cAF, rAF } from './raf.mjs';
10
10
  export { generateId, getRandomInt } from './rand.mjs';
11
11
  export { escapeStringRegexp } from './strings.mjs';
12
- export { isEmpty, isUndefined } from './types.mjs';
12
+ export { isElement, isEmpty, isUndefined } from './types.mjs';
13
13
  export { mutable } from './typescript.mjs';
14
14
  export { attemptFocus, focusNode, getSibling, isFocusable, isLeaf, isVisible, obtainAllFocusableElements, triggerEvent } from './dom/aria.mjs';
15
15
  export { composeEventHandlers, off, on, once, whenMouse } from './dom/event.mjs';
@@ -3,3 +3,4 @@ export { isBoolean, isNumber } from '@vueuse/core';
3
3
  export { isVNode } from 'vue';
4
4
  export declare const isUndefined: (val: any) => val is undefined;
5
5
  export declare const isEmpty: (val: unknown) => boolean;
6
+ export declare const isElement: (e: unknown) => e is Element;
@@ -5,6 +5,7 @@ export { isVNode } from 'vue';
5
5
 
6
6
  const isUndefined = (val) => val === void 0;
7
7
  const isEmpty = (val) => !val && val !== 0 || isArray(val) && val.length === 0 || isObject(val) && !Object.keys(val).length;
8
+ const isElement = (e) => e instanceof Element;
8
9
 
9
- export { isEmpty, isUndefined };
10
+ export { isElement, isEmpty, isUndefined };
10
11
  //# sourceMappingURL=types.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.mjs","sources":["../../../../packages/utils/types.ts"],"sourcesContent":["import { isArray, isObject } from '@vue/shared'\n\nexport {\n isArray,\n isFunction,\n isObject,\n isString,\n isDate,\n isPromise,\n isSymbol,\n} from '@vue/shared'\nexport { isBoolean, isNumber } from '@vueuse/core'\nexport { isVNode } from 'vue'\n\nexport const isUndefined = (val: any): val is undefined => val === undefined\n\nexport const isEmpty = (val: unknown) =>\n (!val && val !== 0) ||\n (isArray(val) && val.length === 0) ||\n (isObject(val) && !Object.keys(val).length)\n"],"names":[],"mappings":";;;;;AAYY,MAAC,WAAW,GAAG,CAAC,GAAG,KAAK,GAAG,KAAK,KAAK,EAAE;AACvC,MAAC,OAAO,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,IAAI,GAAG,KAAK,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,IAAI,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;;;;"}
1
+ {"version":3,"file":"types.mjs","sources":["../../../../packages/utils/types.ts"],"sourcesContent":["import { isArray, isObject } from '@vue/shared'\n\nexport {\n isArray,\n isFunction,\n isObject,\n isString,\n isDate,\n isPromise,\n isSymbol,\n} from '@vue/shared'\nexport { isBoolean, isNumber } from '@vueuse/core'\nexport { isVNode } from 'vue'\n\nexport const isUndefined = (val: any): val is undefined => val === undefined\n\nexport const isEmpty = (val: unknown) =>\n (!val && val !== 0) ||\n (isArray(val) && val.length === 0) ||\n (isObject(val) && !Object.keys(val).length)\n\nexport const isElement = (e: unknown): e is Element => e instanceof Element\n"],"names":[],"mappings":";;;;;AAYY,MAAC,WAAW,GAAG,CAAC,GAAG,KAAK,GAAG,KAAK,KAAK,EAAE;AACvC,MAAC,OAAO,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,IAAI,GAAG,KAAK,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,IAAI,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO;AACvH,MAAC,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,YAAY;;;;"}
package/es/version.d.ts CHANGED
@@ -1 +1 @@
1
- export declare const version = "0.0.20220225";
1
+ export declare const version = "0.0.20220228";
package/es/version.mjs CHANGED
@@ -1,4 +1,4 @@
1
- const version = "0.0.20220225";
1
+ const version = "0.0.20220228";
2
2
 
3
3
  export { version };
4
4
  //# sourceMappingURL=version.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.mjs","sources":["../../../packages/element-plus/version.ts"],"sourcesContent":["export const version = '0.0.20220225'\n"],"names":[],"mappings":"AAAY,MAAC,OAAO,GAAG;;;;"}
1
+ {"version":3,"file":"version.mjs","sources":["../../../packages/element-plus/version.ts"],"sourcesContent":["export const version = '0.0.20220228'\n"],"names":[],"mappings":"AAAY,MAAC,OAAO,GAAG;;;;"}
@@ -128,11 +128,11 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
128
128
  ]),
129
129
  _: 1
130
130
  }, 8, ["class"]))
131
- ], 2112)) : _ctx.icon ? (vue.openBlock(), vue.createBlock(vue.unref(index$4.ElIcon), { key: 1 }, {
131
+ ], 2112)) : _ctx.icon || _ctx.$slots.icon ? (vue.openBlock(), vue.createBlock(vue.unref(index$4.ElIcon), { key: 1 }, {
132
132
  default: vue.withCtx(() => [
133
- (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(_ctx.icon)))
133
+ _ctx.icon ? (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(_ctx.icon), { key: 0 })) : vue.renderSlot(_ctx.$slots, "icon", { key: 1 })
134
134
  ]),
135
- _: 1
135
+ _: 3
136
136
  })) : vue.createCommentVNode("v-if", true),
137
137
  _ctx.$slots.default ? (vue.openBlock(), vue.createElementBlock("span", {
138
138
  key: 2,
@@ -1 +1 @@
1
- {"version":3,"file":"button2.js","sources":["../../../../../../packages/components/button/src/button.vue"],"sourcesContent":["<template>\n <button\n ref=\"_ref\"\n :class=\"[\n ns.b(),\n ns.m(_type),\n ns.m(_size),\n ns.is('disabled', _disabled),\n ns.is('loading', loading),\n ns.is('plain', plain),\n ns.is('round', round),\n ns.is('circle', circle),\n ]\"\n :disabled=\"_disabled || loading\"\n :autofocus=\"autofocus\"\n :type=\"nativeType\"\n :style=\"buttonStyle\"\n @click=\"handleClick\"\n >\n <template v-if=\"loading\">\n <slot v-if=\"$slots.loading\" name=\"loading\"></slot>\n <el-icon v-else :class=\"ns.is('loading')\">\n <component :is=\"loadingIcon\" />\n </el-icon>\n </template>\n <el-icon v-else-if=\"icon\">\n <component :is=\"icon\" />\n </el-icon>\n <span\n v-if=\"$slots.default\"\n :class=\"{ [ns.em('text', 'expand')]: shouldAddSpace }\"\n >\n <slot></slot>\n </span>\n </button>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, inject, Text, ref, useSlots } from 'vue'\nimport { TinyColor } from '@ctrl/tinycolor'\nimport { ElIcon } from '@element-plus/components/icon'\nimport {\n useDisabled,\n useFormItem,\n useGlobalConfig,\n useNamespace,\n useSize,\n} from '@element-plus/hooks'\nimport { buttonGroupContextKey } from '@element-plus/tokens'\nimport { buttonEmits, buttonProps } from './button'\n\ndefineOptions({\n name: 'ElButton',\n})\n\nconst props = defineProps(buttonProps)\nconst emit = defineEmits(buttonEmits)\nconst slots = useSlots()\n\nconst buttonGroupContext = inject(buttonGroupContextKey, undefined)\nconst globalConfig = useGlobalConfig('button')\nconst ns = useNamespace('button')\nconst { form } = useFormItem()\nconst _size = useSize(computed(() => buttonGroupContext?.size))\nconst _disabled = useDisabled()\nconst _ref = ref<HTMLButtonElement>()\n\nconst _type = computed(() => props.type || buttonGroupContext?.type || '')\nconst autoInsertSpace = computed(\n () => props.autoInsertSpace ?? globalConfig.value?.autoInsertSpace ?? false\n)\n\n// add space between two characters in Chinese\nconst shouldAddSpace = computed(() => {\n const defaultSlot = slots.default?.()\n if (autoInsertSpace.value && defaultSlot?.length === 1) {\n const slot = defaultSlot[0]\n if (slot?.type === Text) {\n const text = slot.children\n return /^\\p{Unified_Ideograph}{2}$/u.test(text as string)\n }\n }\n return false\n})\n\n// calculate hover & active color by custom color\n// only work when custom color\nconst buttonStyle = computed(() => {\n let styles: Record<string, string> = {}\n\n const buttonColor = props.color\n\n if (buttonColor) {\n const color = new TinyColor(buttonColor)\n const shadeBgColor = color.shade(20).toString()\n if (props.plain) {\n styles = {\n '--el-button-bg-color': color.tint(90).toString(),\n '--el-button-text-color': buttonColor,\n '--el-button-hover-text-color': 'var(--el-color-white)',\n '--el-button-hover-bg-color': buttonColor,\n '--el-button-hover-border-color': buttonColor,\n '--el-button-active-bg-color': shadeBgColor,\n '--el-button-active-text-color': 'var(--el-color-white)',\n '--el-button-active-border-color': shadeBgColor,\n }\n } else {\n const tintBgColor = color.tint(30).toString()\n styles = {\n '--el-button-bg-color': buttonColor,\n '--el-button-border-color': buttonColor,\n '--el-button-hover-bg-color': tintBgColor,\n '--el-button-hover-border-color': tintBgColor,\n '--el-button-active-bg-color': shadeBgColor,\n '--el-button-active-border-color': shadeBgColor,\n }\n }\n\n if (_disabled.value) {\n const disabledButtonColor = color.tint(50).toString()\n styles['--el-button-disabled-bg-color'] = disabledButtonColor\n styles['--el-button-disabled-border-color'] = disabledButtonColor\n }\n }\n\n return styles\n})\n\nconst handleClick = (evt: MouseEvent) => {\n if (props.nativeType === 'reset') {\n form?.resetFields()\n }\n emit('click', evt)\n}\n\ndefineExpose({\n /** @description button html element */\n ref: _ref,\n /** @description button size */\n size: _size,\n /** @description button type */\n type: _type,\n /** @description button disabled */\n disabled: _disabled,\n /** @description whether adding space */\n shouldAddSpace,\n})\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAyDA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AAKA;;;;;;;;;;;AAcA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyCA;;;;;;AAOA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"button2.js","sources":["../../../../../../packages/components/button/src/button.vue"],"sourcesContent":["<template>\n <button\n ref=\"_ref\"\n :class=\"[\n ns.b(),\n ns.m(_type),\n ns.m(_size),\n ns.is('disabled', _disabled),\n ns.is('loading', loading),\n ns.is('plain', plain),\n ns.is('round', round),\n ns.is('circle', circle),\n ]\"\n :disabled=\"_disabled || loading\"\n :autofocus=\"autofocus\"\n :type=\"nativeType\"\n :style=\"buttonStyle\"\n @click=\"handleClick\"\n >\n <template v-if=\"loading\">\n <slot v-if=\"$slots.loading\" name=\"loading\"></slot>\n <el-icon v-else :class=\"ns.is('loading')\">\n <component :is=\"loadingIcon\" />\n </el-icon>\n </template>\n <el-icon v-else-if=\"icon || $slots.icon\">\n <component :is=\"icon\" v-if=\"icon\" />\n <slot v-else name=\"icon\" />\n </el-icon>\n <span\n v-if=\"$slots.default\"\n :class=\"{ [ns.em('text', 'expand')]: shouldAddSpace }\"\n >\n <slot></slot>\n </span>\n </button>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, inject, Text, ref, useSlots } from 'vue'\nimport { TinyColor } from '@ctrl/tinycolor'\nimport { ElIcon } from '@element-plus/components/icon'\nimport {\n useDisabled,\n useFormItem,\n useGlobalConfig,\n useNamespace,\n useSize,\n} from '@element-plus/hooks'\nimport { buttonGroupContextKey } from '@element-plus/tokens'\nimport { buttonEmits, buttonProps } from './button'\n\ndefineOptions({\n name: 'ElButton',\n})\n\nconst props = defineProps(buttonProps)\nconst emit = defineEmits(buttonEmits)\nconst slots = useSlots()\n\nconst buttonGroupContext = inject(buttonGroupContextKey, undefined)\nconst globalConfig = useGlobalConfig('button')\nconst ns = useNamespace('button')\nconst { form } = useFormItem()\nconst _size = useSize(computed(() => buttonGroupContext?.size))\nconst _disabled = useDisabled()\nconst _ref = ref<HTMLButtonElement>()\n\nconst _type = computed(() => props.type || buttonGroupContext?.type || '')\nconst autoInsertSpace = computed(\n () => props.autoInsertSpace ?? globalConfig.value?.autoInsertSpace ?? false\n)\n\n// add space between two characters in Chinese\nconst shouldAddSpace = computed(() => {\n const defaultSlot = slots.default?.()\n if (autoInsertSpace.value && defaultSlot?.length === 1) {\n const slot = defaultSlot[0]\n if (slot?.type === Text) {\n const text = slot.children\n return /^\\p{Unified_Ideograph}{2}$/u.test(text as string)\n }\n }\n return false\n})\n\n// calculate hover & active color by custom color\n// only work when custom color\nconst buttonStyle = computed(() => {\n let styles: Record<string, string> = {}\n\n const buttonColor = props.color\n\n if (buttonColor) {\n const color = new TinyColor(buttonColor)\n const shadeBgColor = color.shade(20).toString()\n if (props.plain) {\n styles = {\n '--el-button-bg-color': color.tint(90).toString(),\n '--el-button-text-color': buttonColor,\n '--el-button-hover-text-color': 'var(--el-color-white)',\n '--el-button-hover-bg-color': buttonColor,\n '--el-button-hover-border-color': buttonColor,\n '--el-button-active-bg-color': shadeBgColor,\n '--el-button-active-text-color': 'var(--el-color-white)',\n '--el-button-active-border-color': shadeBgColor,\n }\n } else {\n const tintBgColor = color.tint(30).toString()\n styles = {\n '--el-button-bg-color': buttonColor,\n '--el-button-border-color': buttonColor,\n '--el-button-hover-bg-color': tintBgColor,\n '--el-button-hover-border-color': tintBgColor,\n '--el-button-active-bg-color': shadeBgColor,\n '--el-button-active-border-color': shadeBgColor,\n }\n }\n\n if (_disabled.value) {\n const disabledButtonColor = color.tint(50).toString()\n styles['--el-button-disabled-bg-color'] = disabledButtonColor\n styles['--el-button-disabled-border-color'] = disabledButtonColor\n }\n }\n\n return styles\n})\n\nconst handleClick = (evt: MouseEvent) => {\n if (props.nativeType === 'reset') {\n form?.resetFields()\n }\n emit('click', evt)\n}\n\ndefineExpose({\n /** @description button html element */\n ref: _ref,\n /** @description button size */\n size: _size,\n /** @description button type */\n type: _type,\n /** @description button disabled */\n disabled: _disabled,\n /** @description whether adding space */\n shouldAddSpace,\n})\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AA0DA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AAKA;;;;;;;;;;;AAcA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyCA;;;;;;AAOA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -3,8 +3,8 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  require('../../utils/index.js');
6
- var icon$1 = require('./src/icon.js');
7
- var icon = require('./src/icon2.js');
6
+ var icon$1 = require('./src/icon2.js');
7
+ var icon = require('./src/icon.js');
8
8
  var install = require('../../utils/vue/install.js');
9
9
 
10
10
  const ElIcon = install.withInstall(icon$1["default"]);
@@ -2,42 +2,17 @@
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
- var icon = require('./icon2.js');
9
- var index = require('../../../hooks/use-namespace/index.js');
10
- var types = require('../../../utils/types.js');
11
- var style = require('../../../utils/vue/style.js');
6
+ var props = require('../../../utils/vue/props.js');
12
7
 
13
- const __default__ = {
14
- name: "ElIcon",
15
- inheritAttrs: false
16
- };
17
- const _sfc_main = /* @__PURE__ */ vue.defineComponent({
18
- ...__default__,
19
- props: icon.iconProps,
20
- setup(__props) {
21
- const props = __props;
22
- const ns = index.useNamespace("icon");
23
- const style$1 = vue.computed(() => {
24
- if (!props.size && !props.color)
25
- return {};
26
- return {
27
- fontSize: types.isUndefined(props.size) ? void 0 : style.addUnit(props.size),
28
- "--color": props.color
29
- };
30
- });
31
- return (_ctx, _cache) => {
32
- return vue.openBlock(), vue.createElementBlock("i", vue.mergeProps({
33
- class: vue.unref(ns).b(),
34
- style: vue.unref(style$1)
35
- }, _ctx.$attrs), [
36
- vue.renderSlot(_ctx.$slots, "default")
37
- ], 16);
38
- };
8
+ const iconProps = props.buildProps({
9
+ size: {
10
+ type: props.definePropType([Number, String])
11
+ },
12
+ color: {
13
+ type: String
39
14
  }
40
15
  });
41
16
 
42
- exports["default"] = _sfc_main;
17
+ exports.iconProps = iconProps;
43
18
  //# sourceMappingURL=icon.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"icon.js","sources":["../../../../../../packages/components/icon/src/icon.vue"],"sourcesContent":["<template>\n <i :class=\"ns.b()\" :style=\"style\" v-bind=\"$attrs\">\n <slot></slot>\n </i>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed } from 'vue'\nimport { isUndefined, addUnit } from '@element-plus/utils'\nimport { useNamespace } from '@element-plus/hooks'\nimport { iconProps } from './icon'\nimport type { CSSProperties } from 'vue'\n\ndefineOptions({\n name: 'ElIcon',\n inheritAttrs: false,\n})\nconst props = defineProps(iconProps)\nconst ns = useNamespace('icon')\n\nconst style = computed<CSSProperties>(() => {\n if (!props.size && !props.color) return {}\n\n return {\n fontSize: isUndefined(props.size) ? undefined : addUnit(props.size),\n '--color': props.color,\n }\n})\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAkBA;AAEA;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"icon.js","sources":["../../../../../../packages/components/icon/src/icon.ts"],"sourcesContent":["import { definePropType, buildProps } from '@element-plus/utils'\nimport type { ExtractPropTypes } from 'vue'\nimport type Icon from './icon.vue'\n\nexport const iconProps = buildProps({\n size: {\n type: definePropType<number | string>([Number, String]),\n },\n color: {\n type: String,\n },\n} as const)\nexport type IconProps = ExtractPropTypes<typeof iconProps>\nexport type IconInstance = InstanceType<typeof Icon>\n"],"names":["buildProps","definePropType"],"mappings":";;;;;;;AACY,MAAC,SAAS,GAAGA,gBAAU,CAAC;AACpC,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAEC,oBAAc,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAC1C,GAAG;AACH,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,CAAC;;;;"}
@@ -2,17 +2,42 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
+ var vue = require('vue');
5
6
  require('../../../utils/index.js');
6
- var props = require('../../../utils/vue/props.js');
7
+ require('../../../hooks/index.js');
8
+ var icon = require('./icon.js');
9
+ var index = require('../../../hooks/use-namespace/index.js');
10
+ var types = require('../../../utils/types.js');
11
+ var style = require('../../../utils/vue/style.js');
7
12
 
8
- const iconProps = props.buildProps({
9
- size: {
10
- type: props.definePropType([Number, String])
11
- },
12
- color: {
13
- type: String
13
+ const __default__ = {
14
+ name: "ElIcon",
15
+ inheritAttrs: false
16
+ };
17
+ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
18
+ ...__default__,
19
+ props: icon.iconProps,
20
+ setup(__props) {
21
+ const props = __props;
22
+ const ns = index.useNamespace("icon");
23
+ const style$1 = vue.computed(() => {
24
+ if (!props.size && !props.color)
25
+ return {};
26
+ return {
27
+ fontSize: types.isUndefined(props.size) ? void 0 : style.addUnit(props.size),
28
+ "--color": props.color
29
+ };
30
+ });
31
+ return (_ctx, _cache) => {
32
+ return vue.openBlock(), vue.createElementBlock("i", vue.mergeProps({
33
+ class: vue.unref(ns).b(),
34
+ style: vue.unref(style$1)
35
+ }, _ctx.$attrs), [
36
+ vue.renderSlot(_ctx.$slots, "default")
37
+ ], 16);
38
+ };
14
39
  }
15
40
  });
16
41
 
17
- exports.iconProps = iconProps;
42
+ exports["default"] = _sfc_main;
18
43
  //# sourceMappingURL=icon2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"icon2.js","sources":["../../../../../../packages/components/icon/src/icon.ts"],"sourcesContent":["import { definePropType, buildProps } from '@element-plus/utils'\nimport type { ExtractPropTypes } from 'vue'\nimport type Icon from './icon.vue'\n\nexport const iconProps = buildProps({\n size: {\n type: definePropType<number | string>([Number, String]),\n },\n color: {\n type: String,\n },\n} as const)\nexport type IconProps = ExtractPropTypes<typeof iconProps>\nexport type IconInstance = InstanceType<typeof Icon>\n"],"names":["buildProps","definePropType"],"mappings":";;;;;;;AACY,MAAC,SAAS,GAAGA,gBAAU,CAAC;AACpC,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAEC,oBAAc,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAC1C,GAAG;AACH,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,CAAC;;;;"}
1
+ {"version":3,"file":"icon2.js","sources":["../../../../../../packages/components/icon/src/icon.vue"],"sourcesContent":["<template>\n <i :class=\"ns.b()\" :style=\"style\" v-bind=\"$attrs\">\n <slot></slot>\n </i>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed } from 'vue'\nimport { isUndefined, addUnit } from '@element-plus/utils'\nimport { useNamespace } from '@element-plus/hooks'\nimport { iconProps } from './icon'\nimport type { CSSProperties } from 'vue'\n\ndefineOptions({\n name: 'ElIcon',\n inheritAttrs: false,\n})\nconst props = defineProps(iconProps)\nconst ns = useNamespace('icon')\n\nconst style = computed<CSSProperties>(() => {\n if (!props.size && !props.color) return {}\n\n return {\n fontSize: isUndefined(props.size) ? undefined : addUnit(props.size),\n '--color': props.color,\n }\n})\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAkBA;AAEA;;;;;;;;;;;;;;;;;;;;;"}
@@ -15,9 +15,9 @@ var index$2 = require('../../../hooks/use-locale/index.js');
15
15
  var index$3 = require('../../../hooks/use-namespace/index.js');
16
16
  var index$4 = require('../../../hooks/use-attrs/index.js');
17
17
  var position = require('../../../utils/dom/position.js');
18
+ var types = require('../../../utils/types.js');
18
19
  var scroll = require('../../../utils/dom/scroll.js');
19
20
 
20
- const isHtmlElement = (e) => e && e.nodeType === Node.ELEMENT_NODE;
21
21
  let prevOverflow = "";
22
22
  const _sfc_main = vue.defineComponent({
23
23
  name: "ElImage",
@@ -120,7 +120,7 @@ const _sfc_main = vue.defineComponent({
120
120
  return;
121
121
  await vue.nextTick();
122
122
  const { scrollContainer } = props;
123
- if (isHtmlElement(scrollContainer)) {
123
+ if (types.isElement(scrollContainer)) {
124
124
  _scrollContainer.value = scrollContainer;
125
125
  } else if (shared.isString(scrollContainer) && scrollContainer !== "") {
126
126
  _scrollContainer.value = (_a = document.querySelector(scrollContainer)) != null ? _a : void 0;
@@ -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')\"></div>\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\">\nimport { defineComponent, computed, ref, onMounted, watch, nextTick } from 'vue'\nimport { isString } from '@vue/shared'\nimport {\n useEventListener,\n useThrottleFn,\n isClient,\n isBoolean,\n} from '@vueuse/core'\nimport {\n useAttrs,\n useLocale,\n useNamespace,\n useDeprecated,\n} from '@element-plus/hooks'\nimport ImageViewer from '@element-plus/components/image-viewer'\nimport { getScrollContainer, isInContainer } from '@element-plus/utils'\nimport { imageEmits, imageProps } from './image'\n\nimport type { CSSProperties, StyleValue } from 'vue'\n\nconst isHtmlElement = (e: any): e is Element =>\n e && e.nodeType === Node.ELEMENT_NODE\n\nlet prevOverflow = ''\n\nexport default defineComponent({\n name: 'ElImage',\n components: {\n ImageViewer,\n },\n inheritAttrs: false,\n\n props: imageProps,\n emits: imageEmits,\n\n setup(props, { emit, attrs: rawAttrs }) {\n useDeprecated(\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\n const { t } = useLocale()\n const ns = useNamespace('image')\n\n const attrs = useAttrs()\n const hasLoadError = ref(false)\n const loading = ref(true)\n const imgWidth = ref(0)\n const imgHeight = ref(0)\n const showViewer = ref(false)\n const container = ref<HTMLElement>()\n\n const _scrollContainer = ref<HTMLElement | Window>()\n let stopScrollListener: () => void\n let stopWheelListener: () => void\n\n const containerStyle = computed(() => rawAttrs.style as StyleValue)\n\n const imageStyle = computed<CSSProperties>(() => {\n const { fit } = props\n if (isClient && fit) {\n return { objectFit: fit }\n }\n return {}\n })\n\n const preview = computed(() => {\n const { previewSrcList } = props\n return Array.isArray(previewSrcList) && previewSrcList.length > 0\n })\n\n const teleported = computed(() => {\n return props.appendToBody || props.previewTeleported\n })\n\n const 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\n const 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\n function 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\n function handleError(event: Event) {\n loading.value = false\n hasLoadError.value = true\n emit('error', event)\n }\n\n function handleLazyLoad() {\n if (isInContainer(container.value, _scrollContainer.value)) {\n loadImage()\n removeLazyLoadListener()\n }\n }\n\n const lazyLoadHandler = useThrottleFn(handleLazyLoad, 200)\n\n async function addLazyLoadListener() {\n if (!isClient) return\n\n await nextTick()\n\n const { scrollContainer } = props\n if (isHtmlElement(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\n function removeLazyLoadListener() {\n if (!isClient || !_scrollContainer.value || !lazyLoadHandler) return\n\n stopScrollListener()\n _scrollContainer.value = undefined\n }\n\n function 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\n function 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\n function closeViewer() {\n stopWheelListener?.()\n document.body.style.overflow = prevOverflow\n showViewer.value = false\n emit('close')\n }\n\n function switchViewer(val: number) {\n emit('switch', val)\n }\n\n watch(\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\n onMounted(() => {\n if (props.lazy) {\n addLazyLoadListener()\n } else {\n loadImage()\n }\n })\n\n return {\n attrs,\n loading,\n hasLoadError,\n showViewer,\n containerStyle,\n imageStyle,\n preview,\n imageIndex,\n container,\n ns,\n teleported,\n\n clickHandler,\n closeViewer,\n switchViewer,\n t,\n }\n },\n})\n</script>\n"],"names":["defineComponent","ImageViewer","imageProps","imageEmits","computed","isBoolean","useLocale","useNamespace","useAttrs","ref","isClient","isInContainer","useThrottleFn","nextTick","_openBlock","_normalizeClass"],"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')\"></div>\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\">\nimport { defineComponent, computed, ref, onMounted, watch, nextTick } from 'vue'\nimport { isString } from '@vue/shared'\nimport {\n useEventListener,\n useThrottleFn,\n isClient,\n isBoolean,\n} from '@vueuse/core'\nimport {\n useAttrs,\n useLocale,\n useNamespace,\n useDeprecated,\n} from '@element-plus/hooks'\nimport ImageViewer from '@element-plus/components/image-viewer'\nimport {\n getScrollContainer,\n isInContainer,\n isElement,\n} from '@element-plus/utils'\nimport { imageEmits, imageProps } from './image'\n\nimport type { CSSProperties, StyleValue } from 'vue'\n\nlet prevOverflow = ''\n\nexport default defineComponent({\n name: 'ElImage',\n components: {\n ImageViewer,\n },\n inheritAttrs: false,\n\n props: imageProps,\n emits: imageEmits,\n\n setup(props, { emit, attrs: rawAttrs }) {\n useDeprecated(\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\n const { t } = useLocale()\n const ns = useNamespace('image')\n\n const attrs = useAttrs()\n const hasLoadError = ref(false)\n const loading = ref(true)\n const imgWidth = ref(0)\n const imgHeight = ref(0)\n const showViewer = ref(false)\n const container = ref<HTMLElement>()\n\n const _scrollContainer = ref<HTMLElement | Window>()\n let stopScrollListener: () => void\n let stopWheelListener: () => void\n\n const containerStyle = computed(() => rawAttrs.style as StyleValue)\n\n const imageStyle = computed<CSSProperties>(() => {\n const { fit } = props\n if (isClient && fit) {\n return { objectFit: fit }\n }\n return {}\n })\n\n const preview = computed(() => {\n const { previewSrcList } = props\n return Array.isArray(previewSrcList) && previewSrcList.length > 0\n })\n\n const teleported = computed(() => {\n return props.appendToBody || props.previewTeleported\n })\n\n const 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\n const 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\n function 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\n function handleError(event: Event) {\n loading.value = false\n hasLoadError.value = true\n emit('error', event)\n }\n\n function handleLazyLoad() {\n if (isInContainer(container.value, _scrollContainer.value)) {\n loadImage()\n removeLazyLoadListener()\n }\n }\n\n const lazyLoadHandler = useThrottleFn(handleLazyLoad, 200)\n\n async 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\n function removeLazyLoadListener() {\n if (!isClient || !_scrollContainer.value || !lazyLoadHandler) return\n\n stopScrollListener()\n _scrollContainer.value = undefined\n }\n\n function 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\n function 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\n function closeViewer() {\n stopWheelListener?.()\n document.body.style.overflow = prevOverflow\n showViewer.value = false\n emit('close')\n }\n\n function switchViewer(val: number) {\n emit('switch', val)\n }\n\n watch(\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\n onMounted(() => {\n if (props.lazy) {\n addLazyLoadListener()\n } else {\n loadImage()\n }\n })\n\n return {\n attrs,\n loading,\n hasLoadError,\n showViewer,\n containerStyle,\n imageStyle,\n preview,\n imageIndex,\n container,\n ns,\n teleported,\n\n clickHandler,\n closeViewer,\n switchViewer,\n t,\n }\n },\n})\n</script>\n"],"names":["defineComponent","ImageViewer","imageProps","imageEmits","computed","isBoolean","useLocale","useNamespace","useAttrs","ref","isClient","isInContainer","useThrottleFn","nextTick","_openBlock","_normalizeClass"],"mappings":"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"}
@@ -96,7 +96,7 @@ var drawer = require('./drawer/src/drawer.js');
96
96
  var dropdown = require('./dropdown/src/dropdown.js');
97
97
  var tokens = require('./dropdown/src/tokens.js');
98
98
  var empty = require('./empty/src/empty.js');
99
- var icon = require('./icon/src/icon2.js');
99
+ var icon = require('./icon/src/icon.js');
100
100
  var image = require('./image/src/image.js');
101
101
  var imageViewer = require('./image-viewer/src/image-viewer.js');
102
102
  var input = require('./input/src/input.js');
@@ -11,6 +11,7 @@ var message$1 = require('./message2.js');
11
11
  var message$2 = require('./message.js');
12
12
  var shared = require('@vue/shared');
13
13
  var index = require('../../../hooks/use-z-index/index.js');
14
+ var types = require('../../../utils/types.js');
14
15
  var error = require('../../../utils/error.js');
15
16
 
16
17
  const instances = [];
@@ -56,12 +57,12 @@ const message = function(options = {}, context) {
56
57
  }
57
58
  };
58
59
  let appendTo = document.body;
59
- if (options.appendTo instanceof HTMLElement) {
60
+ if (types.isElement(options.appendTo)) {
60
61
  appendTo = options.appendTo;
61
62
  } else if (shared.isString(options.appendTo)) {
62
63
  appendTo = document.querySelector(options.appendTo);
63
64
  }
64
- if (!(appendTo instanceof HTMLElement)) {
65
+ if (!types.isElement(appendTo)) {
65
66
  error.debugWarn("ElMessage", "the appendTo option is not an HTMLElement. Falling back to document.body.");
66
67
  appendTo = document.body;
67
68
  }