@element-plus/nightly 0.0.20221009 → 0.0.20221010

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 (274) hide show
  1. package/dist/index.full.js +9 -5
  2. package/dist/index.full.min.js +3 -3
  3. package/dist/index.full.min.js.map +1 -1
  4. package/dist/index.full.min.mjs +3 -3
  5. package/dist/index.full.min.mjs.map +1 -1
  6. package/dist/index.full.mjs +9 -5
  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 +5 -5
  60. package/dist/locale/et.min.js +1 -1
  61. package/dist/locale/et.min.js.map +1 -1
  62. package/dist/locale/et.min.mjs +1 -1
  63. package/dist/locale/et.min.mjs.map +1 -1
  64. package/dist/locale/et.mjs +5 -5
  65. package/dist/locale/eu.js +1 -1
  66. package/dist/locale/eu.min.js +1 -1
  67. package/dist/locale/eu.min.mjs +1 -1
  68. package/dist/locale/eu.mjs +1 -1
  69. package/dist/locale/fa.js +1 -1
  70. package/dist/locale/fa.min.js +1 -1
  71. package/dist/locale/fa.min.mjs +1 -1
  72. package/dist/locale/fa.mjs +1 -1
  73. package/dist/locale/fi.js +1 -1
  74. package/dist/locale/fi.min.js +1 -1
  75. package/dist/locale/fi.min.mjs +1 -1
  76. package/dist/locale/fi.mjs +1 -1
  77. package/dist/locale/fr.js +1 -1
  78. package/dist/locale/fr.min.js +1 -1
  79. package/dist/locale/fr.min.mjs +1 -1
  80. package/dist/locale/fr.mjs +1 -1
  81. package/dist/locale/he.js +1 -1
  82. package/dist/locale/he.min.js +1 -1
  83. package/dist/locale/he.min.mjs +1 -1
  84. package/dist/locale/he.mjs +1 -1
  85. package/dist/locale/hr.js +1 -1
  86. package/dist/locale/hr.min.js +1 -1
  87. package/dist/locale/hr.min.mjs +1 -1
  88. package/dist/locale/hr.mjs +1 -1
  89. package/dist/locale/hu.js +1 -1
  90. package/dist/locale/hu.min.js +1 -1
  91. package/dist/locale/hu.min.mjs +1 -1
  92. package/dist/locale/hu.mjs +1 -1
  93. package/dist/locale/hy-am.js +1 -1
  94. package/dist/locale/hy-am.min.js +1 -1
  95. package/dist/locale/hy-am.min.mjs +1 -1
  96. package/dist/locale/hy-am.mjs +1 -1
  97. package/dist/locale/id.js +1 -1
  98. package/dist/locale/id.min.js +1 -1
  99. package/dist/locale/id.min.mjs +1 -1
  100. package/dist/locale/id.mjs +1 -1
  101. package/dist/locale/it.js +1 -1
  102. package/dist/locale/it.min.js +1 -1
  103. package/dist/locale/it.min.mjs +1 -1
  104. package/dist/locale/it.mjs +1 -1
  105. package/dist/locale/ja.js +1 -1
  106. package/dist/locale/ja.min.js +1 -1
  107. package/dist/locale/ja.min.mjs +1 -1
  108. package/dist/locale/ja.mjs +1 -1
  109. package/dist/locale/kk.js +1 -1
  110. package/dist/locale/kk.min.js +1 -1
  111. package/dist/locale/kk.min.mjs +1 -1
  112. package/dist/locale/kk.mjs +1 -1
  113. package/dist/locale/km.js +1 -1
  114. package/dist/locale/km.min.js +1 -1
  115. package/dist/locale/km.min.mjs +1 -1
  116. package/dist/locale/km.mjs +1 -1
  117. package/dist/locale/ko.js +1 -1
  118. package/dist/locale/ko.min.js +1 -1
  119. package/dist/locale/ko.min.mjs +1 -1
  120. package/dist/locale/ko.mjs +1 -1
  121. package/dist/locale/ku.js +1 -1
  122. package/dist/locale/ku.min.js +1 -1
  123. package/dist/locale/ku.min.mjs +1 -1
  124. package/dist/locale/ku.mjs +1 -1
  125. package/dist/locale/ky.js +1 -1
  126. package/dist/locale/ky.min.js +1 -1
  127. package/dist/locale/ky.min.mjs +1 -1
  128. package/dist/locale/ky.mjs +1 -1
  129. package/dist/locale/lt.js +1 -1
  130. package/dist/locale/lt.min.js +1 -1
  131. package/dist/locale/lt.min.mjs +1 -1
  132. package/dist/locale/lt.mjs +1 -1
  133. package/dist/locale/lv.js +1 -1
  134. package/dist/locale/lv.min.js +1 -1
  135. package/dist/locale/lv.min.mjs +1 -1
  136. package/dist/locale/lv.mjs +1 -1
  137. package/dist/locale/mg.js +1 -1
  138. package/dist/locale/mg.min.js +1 -1
  139. package/dist/locale/mg.min.mjs +1 -1
  140. package/dist/locale/mg.mjs +1 -1
  141. package/dist/locale/mn.js +1 -1
  142. package/dist/locale/mn.min.js +1 -1
  143. package/dist/locale/mn.min.mjs +1 -1
  144. package/dist/locale/mn.mjs +1 -1
  145. package/dist/locale/nb-no.js +1 -1
  146. package/dist/locale/nb-no.min.js +1 -1
  147. package/dist/locale/nb-no.min.mjs +1 -1
  148. package/dist/locale/nb-no.mjs +1 -1
  149. package/dist/locale/nl.js +1 -1
  150. package/dist/locale/nl.min.js +1 -1
  151. package/dist/locale/nl.min.mjs +1 -1
  152. package/dist/locale/nl.mjs +1 -1
  153. package/dist/locale/pa.js +1 -1
  154. package/dist/locale/pa.min.js +1 -1
  155. package/dist/locale/pa.min.mjs +1 -1
  156. package/dist/locale/pa.mjs +1 -1
  157. package/dist/locale/pl.js +1 -1
  158. package/dist/locale/pl.min.js +1 -1
  159. package/dist/locale/pl.min.mjs +1 -1
  160. package/dist/locale/pl.mjs +1 -1
  161. package/dist/locale/pt-br.js +1 -1
  162. package/dist/locale/pt-br.min.js +1 -1
  163. package/dist/locale/pt-br.min.mjs +1 -1
  164. package/dist/locale/pt-br.mjs +1 -1
  165. package/dist/locale/pt.js +1 -1
  166. package/dist/locale/pt.min.js +1 -1
  167. package/dist/locale/pt.min.mjs +1 -1
  168. package/dist/locale/pt.mjs +1 -1
  169. package/dist/locale/ro.js +1 -1
  170. package/dist/locale/ro.min.js +1 -1
  171. package/dist/locale/ro.min.mjs +1 -1
  172. package/dist/locale/ro.mjs +1 -1
  173. package/dist/locale/ru.js +1 -1
  174. package/dist/locale/ru.min.js +1 -1
  175. package/dist/locale/ru.min.mjs +1 -1
  176. package/dist/locale/ru.mjs +1 -1
  177. package/dist/locale/sk.js +1 -1
  178. package/dist/locale/sk.min.js +1 -1
  179. package/dist/locale/sk.min.mjs +1 -1
  180. package/dist/locale/sk.mjs +1 -1
  181. package/dist/locale/sl.js +1 -1
  182. package/dist/locale/sl.min.js +1 -1
  183. package/dist/locale/sl.min.mjs +1 -1
  184. package/dist/locale/sl.mjs +1 -1
  185. package/dist/locale/sr.js +1 -1
  186. package/dist/locale/sr.min.js +1 -1
  187. package/dist/locale/sr.min.mjs +1 -1
  188. package/dist/locale/sr.mjs +1 -1
  189. package/dist/locale/sv.js +1 -1
  190. package/dist/locale/sv.min.js +1 -1
  191. package/dist/locale/sv.min.mjs +1 -1
  192. package/dist/locale/sv.mjs +1 -1
  193. package/dist/locale/ta.js +1 -1
  194. package/dist/locale/ta.min.js +1 -1
  195. package/dist/locale/ta.min.mjs +1 -1
  196. package/dist/locale/ta.mjs +1 -1
  197. package/dist/locale/th.js +1 -1
  198. package/dist/locale/th.min.js +1 -1
  199. package/dist/locale/th.min.mjs +1 -1
  200. package/dist/locale/th.mjs +1 -1
  201. package/dist/locale/tk.js +1 -1
  202. package/dist/locale/tk.min.js +1 -1
  203. package/dist/locale/tk.min.mjs +1 -1
  204. package/dist/locale/tk.mjs +1 -1
  205. package/dist/locale/tr.js +1 -1
  206. package/dist/locale/tr.min.js +1 -1
  207. package/dist/locale/tr.min.mjs +1 -1
  208. package/dist/locale/tr.mjs +1 -1
  209. package/dist/locale/ug-cn.js +1 -1
  210. package/dist/locale/ug-cn.min.js +1 -1
  211. package/dist/locale/ug-cn.min.mjs +1 -1
  212. package/dist/locale/ug-cn.mjs +1 -1
  213. package/dist/locale/uk.js +1 -1
  214. package/dist/locale/uk.min.js +1 -1
  215. package/dist/locale/uk.min.mjs +1 -1
  216. package/dist/locale/uk.mjs +1 -1
  217. package/dist/locale/uz-uz.js +1 -1
  218. package/dist/locale/uz-uz.min.js +1 -1
  219. package/dist/locale/uz-uz.min.mjs +1 -1
  220. package/dist/locale/uz-uz.mjs +1 -1
  221. package/dist/locale/vi.js +1 -1
  222. package/dist/locale/vi.min.js +1 -1
  223. package/dist/locale/vi.min.mjs +1 -1
  224. package/dist/locale/vi.mjs +1 -1
  225. package/dist/locale/zh-cn.js +1 -1
  226. package/dist/locale/zh-cn.min.js +1 -1
  227. package/dist/locale/zh-cn.min.mjs +1 -1
  228. package/dist/locale/zh-cn.mjs +1 -1
  229. package/dist/locale/zh-tw.js +1 -1
  230. package/dist/locale/zh-tw.min.js +1 -1
  231. package/dist/locale/zh-tw.min.mjs +1 -1
  232. package/dist/locale/zh-tw.mjs +1 -1
  233. package/es/components/checkbox/src/composables/use-checkbox-event.mjs +7 -3
  234. package/es/components/checkbox/src/composables/use-checkbox-event.mjs.map +1 -1
  235. package/es/components/drawer/index.mjs +2 -2
  236. package/es/components/drawer/src/drawer.mjs +22 -165
  237. package/es/components/drawer/src/drawer.mjs.map +1 -1
  238. package/es/components/drawer/src/drawer2.mjs +165 -22
  239. package/es/components/drawer/src/drawer2.mjs.map +1 -1
  240. package/es/components/index.mjs +2 -2
  241. package/es/components/message/index.mjs +1 -1
  242. package/es/components/message/src/message.mjs +86 -146
  243. package/es/components/message/src/message.mjs.map +1 -1
  244. package/es/components/message/src/message2.mjs +146 -86
  245. package/es/components/message/src/message2.mjs.map +1 -1
  246. package/es/components/message/src/method.mjs +2 -2
  247. package/es/index.mjs +2 -2
  248. package/es/locale/lang/et.mjs +4 -4
  249. package/es/locale/lang/et.mjs.map +1 -1
  250. package/es/version.d.ts +1 -1
  251. package/es/version.mjs +1 -1
  252. package/es/version.mjs.map +1 -1
  253. package/lib/components/checkbox/src/composables/use-checkbox-event.js +7 -3
  254. package/lib/components/checkbox/src/composables/use-checkbox-event.js.map +1 -1
  255. package/lib/components/drawer/index.js +2 -2
  256. package/lib/components/drawer/src/drawer.js +23 -165
  257. package/lib/components/drawer/src/drawer.js.map +1 -1
  258. package/lib/components/drawer/src/drawer2.js +165 -23
  259. package/lib/components/drawer/src/drawer2.js.map +1 -1
  260. package/lib/components/index.js +2 -2
  261. package/lib/components/message/index.js +1 -1
  262. package/lib/components/message/src/message.js +87 -144
  263. package/lib/components/message/src/message.js.map +1 -1
  264. package/lib/components/message/src/message2.js +144 -87
  265. package/lib/components/message/src/message2.js.map +1 -1
  266. package/lib/components/message/src/method.js +2 -2
  267. package/lib/index.js +2 -2
  268. package/lib/locale/lang/et.js +4 -4
  269. package/lib/locale/lang/et.js.map +1 -1
  270. package/lib/version.d.ts +1 -1
  271. package/lib/version.js +1 -1
  272. package/lib/version.js.map +1 -1
  273. package/package.json +2 -2
  274. package/web-types.json +1 -1
@@ -2,156 +2,99 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var vue = require('vue');
6
5
  var core = require('@vueuse/core');
7
6
  require('../../../utils/index.js');
8
- require('../../../constants/index.js');
9
- var index$1 = require('../../badge/index.js');
10
- var index$2 = require('../../icon/index.js');
11
- require('../../../hooks/index.js');
12
- var message = require('./message2.js');
13
- var instance = require('./instance.js');
14
- var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
7
+ var typescript = require('../../../utils/typescript.js');
8
+ var runtime = require('../../../utils/vue/props/runtime.js');
15
9
  var icon = require('../../../utils/vue/icon.js');
16
- var index = require('../../../hooks/use-namespace/index.js');
17
- var aria = require('../../../constants/aria.js');
18
10
 
19
- const _hoisted_1 = ["id"];
20
- const _hoisted_2 = ["innerHTML"];
21
- const __default__ = vue.defineComponent({
22
- name: "ElMessage"
11
+ const messageTypes = ["success", "info", "warning", "error"];
12
+ const messageDefaults = typescript.mutable({
13
+ customClass: "",
14
+ center: false,
15
+ dangerouslyUseHTMLString: false,
16
+ duration: 3e3,
17
+ icon: void 0,
18
+ id: "",
19
+ message: "",
20
+ onClose: void 0,
21
+ showClose: false,
22
+ type: "info",
23
+ offset: 16,
24
+ zIndex: 0,
25
+ grouping: false,
26
+ repeatNum: 1,
27
+ appendTo: core.isClient ? document.body : void 0
23
28
  });
24
- const _sfc_main = /* @__PURE__ */ vue.defineComponent({
25
- ...__default__,
26
- props: message.messageProps,
27
- emits: message.messageEmits,
28
- setup(__props, { expose }) {
29
- const props = __props;
30
- const { Close } = icon.TypeComponents;
31
- const ns = index.useNamespace("message");
32
- const messageRef = vue.ref();
33
- const visible = vue.ref(false);
34
- const height = vue.ref(0);
35
- let stopTimer = void 0;
36
- const badgeType = vue.computed(() => props.type ? props.type === "error" ? "danger" : props.type : "info");
37
- const typeClass = vue.computed(() => {
38
- const type = props.type;
39
- return { [ns.bm("icon", type)]: type && icon.TypeComponentsMap[type] };
40
- });
41
- const iconComponent = vue.computed(() => props.icon || icon.TypeComponentsMap[props.type] || "");
42
- const lastOffset = vue.computed(() => instance.getLastOffset(props.id));
43
- const offset = vue.computed(() => props.offset + lastOffset.value);
44
- const bottom = vue.computed(() => height.value + offset.value);
45
- const customStyle = vue.computed(() => ({
46
- top: `${offset.value}px`,
47
- zIndex: props.zIndex
48
- }));
49
- function startTimer() {
50
- if (props.duration === 0)
51
- return;
52
- ({ stop: stopTimer } = core.useTimeoutFn(() => {
53
- close();
54
- }, props.duration));
55
- }
56
- function clearTimer() {
57
- stopTimer == null ? void 0 : stopTimer();
58
- }
59
- function close() {
60
- visible.value = false;
61
- }
62
- function keydown({ code }) {
63
- if (code === aria.EVENT_CODE.esc) {
64
- close();
65
- }
66
- }
67
- vue.onMounted(() => {
68
- startTimer();
69
- visible.value = true;
70
- });
71
- vue.watch(() => props.repeatNum, () => {
72
- clearTimer();
73
- startTimer();
74
- });
75
- core.useEventListener(document, "keydown", keydown);
76
- core.useResizeObserver(messageRef, () => {
77
- height.value = messageRef.value.getBoundingClientRect().height;
78
- });
79
- expose({
80
- visible,
81
- bottom,
82
- close
83
- });
84
- return (_ctx, _cache) => {
85
- return vue.openBlock(), vue.createBlock(vue.Transition, {
86
- name: vue.unref(ns).b("fade"),
87
- onBeforeLeave: _ctx.onClose,
88
- onAfterLeave: _cache[0] || (_cache[0] = ($event) => _ctx.$emit("destroy")),
89
- persisted: ""
90
- }, {
91
- default: vue.withCtx(() => [
92
- vue.withDirectives(vue.createElementVNode("div", {
93
- id: _ctx.id,
94
- ref_key: "messageRef",
95
- ref: messageRef,
96
- class: vue.normalizeClass([
97
- vue.unref(ns).b(),
98
- { [vue.unref(ns).m(_ctx.type)]: _ctx.type && !_ctx.icon },
99
- vue.unref(ns).is("center", _ctx.center),
100
- vue.unref(ns).is("closable", _ctx.showClose),
101
- _ctx.customClass
102
- ]),
103
- style: vue.normalizeStyle(vue.unref(customStyle)),
104
- role: "alert",
105
- onMouseenter: clearTimer,
106
- onMouseleave: startTimer
107
- }, [
108
- _ctx.repeatNum > 1 ? (vue.openBlock(), vue.createBlock(vue.unref(index$1.ElBadge), {
109
- key: 0,
110
- value: _ctx.repeatNum,
111
- type: vue.unref(badgeType),
112
- class: vue.normalizeClass(vue.unref(ns).e("badge"))
113
- }, null, 8, ["value", "type", "class"])) : vue.createCommentVNode("v-if", true),
114
- vue.unref(iconComponent) ? (vue.openBlock(), vue.createBlock(vue.unref(index$2.ElIcon), {
115
- key: 1,
116
- class: vue.normalizeClass([vue.unref(ns).e("icon"), vue.unref(typeClass)])
117
- }, {
118
- default: vue.withCtx(() => [
119
- (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(vue.unref(iconComponent))))
120
- ]),
121
- _: 1
122
- }, 8, ["class"])) : vue.createCommentVNode("v-if", true),
123
- vue.renderSlot(_ctx.$slots, "default", {}, () => [
124
- !_ctx.dangerouslyUseHTMLString ? (vue.openBlock(), vue.createElementBlock("p", {
125
- key: 0,
126
- class: vue.normalizeClass(vue.unref(ns).e("content"))
127
- }, vue.toDisplayString(_ctx.message), 3)) : (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 1 }, [
128
- vue.createCommentVNode(" Caution here, message could've been compromised, never use user's input as message "),
129
- vue.createElementVNode("p", {
130
- class: vue.normalizeClass(vue.unref(ns).e("content")),
131
- innerHTML: _ctx.message
132
- }, null, 10, _hoisted_2)
133
- ], 2112))
134
- ]),
135
- _ctx.showClose ? (vue.openBlock(), vue.createBlock(vue.unref(index$2.ElIcon), {
136
- key: 2,
137
- class: vue.normalizeClass(vue.unref(ns).e("closeBtn")),
138
- onClick: vue.withModifiers(close, ["stop"])
139
- }, {
140
- default: vue.withCtx(() => [
141
- vue.createVNode(vue.unref(Close))
142
- ]),
143
- _: 1
144
- }, 8, ["class", "onClick"])) : vue.createCommentVNode("v-if", true)
145
- ], 46, _hoisted_1), [
146
- [vue.vShow, visible.value]
147
- ])
148
- ]),
149
- _: 3
150
- }, 8, ["name", "onBeforeLeave"]);
151
- };
29
+ const messageProps = runtime.buildProps({
30
+ customClass: {
31
+ type: String,
32
+ default: messageDefaults.customClass
33
+ },
34
+ center: {
35
+ type: Boolean,
36
+ default: messageDefaults.center
37
+ },
38
+ dangerouslyUseHTMLString: {
39
+ type: Boolean,
40
+ default: messageDefaults.dangerouslyUseHTMLString
41
+ },
42
+ duration: {
43
+ type: Number,
44
+ default: messageDefaults.duration
45
+ },
46
+ icon: {
47
+ type: icon.iconPropType,
48
+ default: messageDefaults.icon
49
+ },
50
+ id: {
51
+ type: String,
52
+ default: messageDefaults.id
53
+ },
54
+ message: {
55
+ type: runtime.definePropType([
56
+ String,
57
+ Object,
58
+ Function
59
+ ]),
60
+ default: messageDefaults.message
61
+ },
62
+ onClose: {
63
+ type: runtime.definePropType(Function),
64
+ required: false
65
+ },
66
+ showClose: {
67
+ type: Boolean,
68
+ default: messageDefaults.showClose
69
+ },
70
+ type: {
71
+ type: String,
72
+ values: messageTypes,
73
+ default: messageDefaults.type
74
+ },
75
+ offset: {
76
+ type: Number,
77
+ default: messageDefaults.offset
78
+ },
79
+ zIndex: {
80
+ type: Number,
81
+ default: messageDefaults.zIndex
82
+ },
83
+ grouping: {
84
+ type: Boolean,
85
+ default: messageDefaults.grouping
86
+ },
87
+ repeatNum: {
88
+ type: Number,
89
+ default: messageDefaults.repeatNum
152
90
  }
153
91
  });
154
- var MessageConstructor = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "/home/runner/work/element-plus/element-plus/packages/components/message/src/message.vue"]]);
92
+ const messageEmits = {
93
+ destroy: () => true
94
+ };
155
95
 
156
- exports["default"] = MessageConstructor;
96
+ exports.messageDefaults = messageDefaults;
97
+ exports.messageEmits = messageEmits;
98
+ exports.messageProps = messageProps;
99
+ exports.messageTypes = messageTypes;
157
100
  //# sourceMappingURL=message.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"message.js","sources":["../../../../../../packages/components/message/src/message.vue"],"sourcesContent":["<template>\n <transition\n :name=\"ns.b('fade')\"\n @before-leave=\"onClose\"\n @after-leave=\"$emit('destroy')\"\n >\n <div\n v-show=\"visible\"\n :id=\"id\"\n ref=\"messageRef\"\n :class=\"[\n ns.b(),\n { [ns.m(type)]: type && !icon },\n ns.is('center', center),\n ns.is('closable', showClose),\n customClass,\n ]\"\n :style=\"customStyle\"\n role=\"alert\"\n @mouseenter=\"clearTimer\"\n @mouseleave=\"startTimer\"\n >\n <el-badge\n v-if=\"repeatNum > 1\"\n :value=\"repeatNum\"\n :type=\"badgeType\"\n :class=\"ns.e('badge')\"\n />\n <el-icon v-if=\"iconComponent\" :class=\"[ns.e('icon'), typeClass]\">\n <component :is=\"iconComponent\" />\n </el-icon>\n <slot>\n <p v-if=\"!dangerouslyUseHTMLString\" :class=\"ns.e('content')\">\n {{ message }}\n </p>\n <!-- Caution here, message could've been compromised, never use user's input as message -->\n <p v-else :class=\"ns.e('content')\" v-html=\"message\" />\n </slot>\n <el-icon v-if=\"showClose\" :class=\"ns.e('closeBtn')\" @click.stop=\"close\">\n <Close />\n </el-icon>\n </div>\n </transition>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, onMounted, ref, watch } from 'vue'\nimport { useEventListener, useResizeObserver, useTimeoutFn } from '@vueuse/core'\nimport { TypeComponents, TypeComponentsMap } from '@element-plus/utils'\nimport { EVENT_CODE } from '@element-plus/constants'\nimport ElBadge from '@element-plus/components/badge'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { useNamespace } from '@element-plus/hooks'\nimport { messageEmits, messageProps } from './message'\nimport { getLastOffset } from './instance'\nimport type { BadgeProps } from '@element-plus/components/badge'\nimport type { CSSProperties } from 'vue'\n\nconst { Close } = TypeComponents\n\ndefineOptions({\n name: 'ElMessage',\n})\n\nconst props = defineProps(messageProps)\ndefineEmits(messageEmits)\n\nconst ns = useNamespace('message')\n\nconst messageRef = ref<HTMLDivElement>()\nconst visible = ref(false)\nconst height = ref(0)\n\nlet stopTimer: (() => void) | undefined = undefined\n\nconst badgeType = computed<BadgeProps['type']>(() =>\n props.type ? (props.type === 'error' ? 'danger' : props.type) : 'info'\n)\nconst typeClass = computed(() => {\n const type = props.type\n return { [ns.bm('icon', type)]: type && TypeComponentsMap[type] }\n})\nconst iconComponent = computed(\n () => props.icon || TypeComponentsMap[props.type] || ''\n)\n\nconst lastOffset = computed(() => getLastOffset(props.id))\nconst offset = computed(() => props.offset + lastOffset.value)\nconst bottom = computed((): number => height.value + offset.value)\nconst customStyle = computed<CSSProperties>(() => ({\n top: `${offset.value}px`,\n zIndex: props.zIndex,\n}))\n\nfunction startTimer() {\n if (props.duration === 0) return\n ;({ stop: stopTimer } = useTimeoutFn(() => {\n close()\n }, props.duration))\n}\n\nfunction clearTimer() {\n stopTimer?.()\n}\n\nfunction close() {\n visible.value = false\n}\n\nfunction keydown({ code }: KeyboardEvent) {\n if (code === EVENT_CODE.esc) {\n // press esc to close the message\n close()\n }\n}\n\nonMounted(() => {\n startTimer()\n visible.value = true\n})\n\nwatch(\n () => props.repeatNum,\n () => {\n clearTimer()\n startTimer()\n }\n)\n\nuseEventListener(document, 'keydown', keydown)\n\nuseResizeObserver(messageRef, () => {\n height.value = messageRef.value!.getBoundingClientRect().height\n})\n\ndefineExpose({\n visible,\n bottom,\n close,\n})\n</script>\n"],"names":["TypeComponents","useNamespace","ref","computed","TypeComponentsMap","getLastOffset","useTimeoutFn","EVENT_CODE","onMounted","watch","useEventListener","useResizeObserver"],"mappings":"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"}
1
+ {"version":3,"file":"message.js","sources":["../../../../../../packages/components/message/src/message.ts"],"sourcesContent":["import { isClient } from '@vueuse/core'\nimport {\n buildProps,\n definePropType,\n iconPropType,\n mutable,\n} from '@element-plus/utils'\nimport type { AppContext, ExtractPropTypes, VNode } from 'vue'\nimport type { Mutable } from '@element-plus/utils'\nimport type MessageConstructor from './message.vue'\n\nexport const messageTypes = ['success', 'info', 'warning', 'error'] as const\n\nexport type messageType = typeof messageTypes[number]\n\nexport interface MessageConfigContext {\n max?: number\n}\n\nexport const messageDefaults = mutable({\n customClass: '',\n center: false,\n dangerouslyUseHTMLString: false,\n duration: 3000,\n icon: undefined,\n id: '',\n message: '',\n onClose: undefined,\n showClose: false,\n type: 'info',\n offset: 16,\n zIndex: 0,\n grouping: false,\n repeatNum: 1,\n appendTo: isClient ? document.body : (undefined as never),\n} as const)\n\nexport const messageProps = buildProps({\n customClass: {\n type: String,\n default: messageDefaults.customClass,\n },\n center: {\n type: Boolean,\n default: messageDefaults.center,\n },\n dangerouslyUseHTMLString: {\n type: Boolean,\n default: messageDefaults.dangerouslyUseHTMLString,\n },\n duration: {\n type: Number,\n default: messageDefaults.duration,\n },\n icon: {\n type: iconPropType,\n default: messageDefaults.icon,\n },\n id: {\n type: String,\n default: messageDefaults.id,\n },\n message: {\n type: definePropType<string | VNode | (() => VNode)>([\n String,\n Object,\n Function,\n ]),\n default: messageDefaults.message,\n },\n onClose: {\n type: definePropType<() => void>(Function),\n required: false,\n },\n showClose: {\n type: Boolean,\n default: messageDefaults.showClose,\n },\n type: {\n type: String,\n values: messageTypes,\n default: messageDefaults.type,\n },\n offset: {\n type: Number,\n default: messageDefaults.offset,\n },\n zIndex: {\n type: Number,\n default: messageDefaults.zIndex,\n },\n grouping: {\n type: Boolean,\n default: messageDefaults.grouping,\n },\n repeatNum: {\n type: Number,\n default: messageDefaults.repeatNum,\n },\n} as const)\nexport type MessageProps = ExtractPropTypes<typeof messageProps>\n\nexport const messageEmits = {\n destroy: () => true,\n}\nexport type MessageEmits = typeof messageEmits\n\nexport type MessageInstance = InstanceType<typeof MessageConstructor>\n\nexport type MessageOptions = Partial<\n Mutable<\n Omit<MessageProps, 'id'> & {\n appendTo?: HTMLElement | string\n }\n >\n>\nexport type MessageParams = MessageOptions | MessageOptions['message']\nexport type MessageParamsNormalized = Omit<MessageProps, 'id'> & {\n appendTo: HTMLElement\n}\nexport type MessageOptionsWithType = Omit<MessageOptions, 'type'>\nexport type MessageParamsWithType =\n | MessageOptionsWithType\n | MessageOptions['message']\n\nexport interface MessageHandler {\n close: () => void\n}\n\nexport type MessageFn = {\n (options?: MessageParams, appContext?: null | AppContext): MessageHandler\n closeAll(type?: messageType): void\n}\nexport type MessageTypedFn = (\n options?: MessageParamsWithType,\n appContext?: null | AppContext\n) => MessageHandler\n\nexport interface Message extends MessageFn {\n success: MessageTypedFn\n warning: MessageTypedFn\n info: MessageTypedFn\n error: MessageTypedFn\n}\n"],"names":["mutable","isClient","buildProps","iconPropType","definePropType"],"mappings":"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"}
@@ -2,99 +2,156 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
+ var vue = require('vue');
5
6
  var core = require('@vueuse/core');
6
7
  require('../../../utils/index.js');
7
- var typescript = require('../../../utils/typescript.js');
8
- var runtime = require('../../../utils/vue/props/runtime.js');
8
+ require('../../../constants/index.js');
9
+ var index$1 = require('../../badge/index.js');
10
+ var index$2 = require('../../icon/index.js');
11
+ require('../../../hooks/index.js');
12
+ var message = require('./message.js');
13
+ var instance = require('./instance.js');
14
+ var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
9
15
  var icon = require('../../../utils/vue/icon.js');
16
+ var index = require('../../../hooks/use-namespace/index.js');
17
+ var aria = require('../../../constants/aria.js');
10
18
 
11
- const messageTypes = ["success", "info", "warning", "error"];
12
- const messageDefaults = typescript.mutable({
13
- customClass: "",
14
- center: false,
15
- dangerouslyUseHTMLString: false,
16
- duration: 3e3,
17
- icon: void 0,
18
- id: "",
19
- message: "",
20
- onClose: void 0,
21
- showClose: false,
22
- type: "info",
23
- offset: 16,
24
- zIndex: 0,
25
- grouping: false,
26
- repeatNum: 1,
27
- appendTo: core.isClient ? document.body : void 0
19
+ const _hoisted_1 = ["id"];
20
+ const _hoisted_2 = ["innerHTML"];
21
+ const __default__ = vue.defineComponent({
22
+ name: "ElMessage"
28
23
  });
29
- const messageProps = runtime.buildProps({
30
- customClass: {
31
- type: String,
32
- default: messageDefaults.customClass
33
- },
34
- center: {
35
- type: Boolean,
36
- default: messageDefaults.center
37
- },
38
- dangerouslyUseHTMLString: {
39
- type: Boolean,
40
- default: messageDefaults.dangerouslyUseHTMLString
41
- },
42
- duration: {
43
- type: Number,
44
- default: messageDefaults.duration
45
- },
46
- icon: {
47
- type: icon.iconPropType,
48
- default: messageDefaults.icon
49
- },
50
- id: {
51
- type: String,
52
- default: messageDefaults.id
53
- },
54
- message: {
55
- type: runtime.definePropType([
56
- String,
57
- Object,
58
- Function
59
- ]),
60
- default: messageDefaults.message
61
- },
62
- onClose: {
63
- type: runtime.definePropType(Function),
64
- required: false
65
- },
66
- showClose: {
67
- type: Boolean,
68
- default: messageDefaults.showClose
69
- },
70
- type: {
71
- type: String,
72
- values: messageTypes,
73
- default: messageDefaults.type
74
- },
75
- offset: {
76
- type: Number,
77
- default: messageDefaults.offset
78
- },
79
- zIndex: {
80
- type: Number,
81
- default: messageDefaults.zIndex
82
- },
83
- grouping: {
84
- type: Boolean,
85
- default: messageDefaults.grouping
86
- },
87
- repeatNum: {
88
- type: Number,
89
- default: messageDefaults.repeatNum
24
+ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
25
+ ...__default__,
26
+ props: message.messageProps,
27
+ emits: message.messageEmits,
28
+ setup(__props, { expose }) {
29
+ const props = __props;
30
+ const { Close } = icon.TypeComponents;
31
+ const ns = index.useNamespace("message");
32
+ const messageRef = vue.ref();
33
+ const visible = vue.ref(false);
34
+ const height = vue.ref(0);
35
+ let stopTimer = void 0;
36
+ const badgeType = vue.computed(() => props.type ? props.type === "error" ? "danger" : props.type : "info");
37
+ const typeClass = vue.computed(() => {
38
+ const type = props.type;
39
+ return { [ns.bm("icon", type)]: type && icon.TypeComponentsMap[type] };
40
+ });
41
+ const iconComponent = vue.computed(() => props.icon || icon.TypeComponentsMap[props.type] || "");
42
+ const lastOffset = vue.computed(() => instance.getLastOffset(props.id));
43
+ const offset = vue.computed(() => props.offset + lastOffset.value);
44
+ const bottom = vue.computed(() => height.value + offset.value);
45
+ const customStyle = vue.computed(() => ({
46
+ top: `${offset.value}px`,
47
+ zIndex: props.zIndex
48
+ }));
49
+ function startTimer() {
50
+ if (props.duration === 0)
51
+ return;
52
+ ({ stop: stopTimer } = core.useTimeoutFn(() => {
53
+ close();
54
+ }, props.duration));
55
+ }
56
+ function clearTimer() {
57
+ stopTimer == null ? void 0 : stopTimer();
58
+ }
59
+ function close() {
60
+ visible.value = false;
61
+ }
62
+ function keydown({ code }) {
63
+ if (code === aria.EVENT_CODE.esc) {
64
+ close();
65
+ }
66
+ }
67
+ vue.onMounted(() => {
68
+ startTimer();
69
+ visible.value = true;
70
+ });
71
+ vue.watch(() => props.repeatNum, () => {
72
+ clearTimer();
73
+ startTimer();
74
+ });
75
+ core.useEventListener(document, "keydown", keydown);
76
+ core.useResizeObserver(messageRef, () => {
77
+ height.value = messageRef.value.getBoundingClientRect().height;
78
+ });
79
+ expose({
80
+ visible,
81
+ bottom,
82
+ close
83
+ });
84
+ return (_ctx, _cache) => {
85
+ return vue.openBlock(), vue.createBlock(vue.Transition, {
86
+ name: vue.unref(ns).b("fade"),
87
+ onBeforeLeave: _ctx.onClose,
88
+ onAfterLeave: _cache[0] || (_cache[0] = ($event) => _ctx.$emit("destroy")),
89
+ persisted: ""
90
+ }, {
91
+ default: vue.withCtx(() => [
92
+ vue.withDirectives(vue.createElementVNode("div", {
93
+ id: _ctx.id,
94
+ ref_key: "messageRef",
95
+ ref: messageRef,
96
+ class: vue.normalizeClass([
97
+ vue.unref(ns).b(),
98
+ { [vue.unref(ns).m(_ctx.type)]: _ctx.type && !_ctx.icon },
99
+ vue.unref(ns).is("center", _ctx.center),
100
+ vue.unref(ns).is("closable", _ctx.showClose),
101
+ _ctx.customClass
102
+ ]),
103
+ style: vue.normalizeStyle(vue.unref(customStyle)),
104
+ role: "alert",
105
+ onMouseenter: clearTimer,
106
+ onMouseleave: startTimer
107
+ }, [
108
+ _ctx.repeatNum > 1 ? (vue.openBlock(), vue.createBlock(vue.unref(index$1.ElBadge), {
109
+ key: 0,
110
+ value: _ctx.repeatNum,
111
+ type: vue.unref(badgeType),
112
+ class: vue.normalizeClass(vue.unref(ns).e("badge"))
113
+ }, null, 8, ["value", "type", "class"])) : vue.createCommentVNode("v-if", true),
114
+ vue.unref(iconComponent) ? (vue.openBlock(), vue.createBlock(vue.unref(index$2.ElIcon), {
115
+ key: 1,
116
+ class: vue.normalizeClass([vue.unref(ns).e("icon"), vue.unref(typeClass)])
117
+ }, {
118
+ default: vue.withCtx(() => [
119
+ (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(vue.unref(iconComponent))))
120
+ ]),
121
+ _: 1
122
+ }, 8, ["class"])) : vue.createCommentVNode("v-if", true),
123
+ vue.renderSlot(_ctx.$slots, "default", {}, () => [
124
+ !_ctx.dangerouslyUseHTMLString ? (vue.openBlock(), vue.createElementBlock("p", {
125
+ key: 0,
126
+ class: vue.normalizeClass(vue.unref(ns).e("content"))
127
+ }, vue.toDisplayString(_ctx.message), 3)) : (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 1 }, [
128
+ vue.createCommentVNode(" Caution here, message could've been compromised, never use user's input as message "),
129
+ vue.createElementVNode("p", {
130
+ class: vue.normalizeClass(vue.unref(ns).e("content")),
131
+ innerHTML: _ctx.message
132
+ }, null, 10, _hoisted_2)
133
+ ], 2112))
134
+ ]),
135
+ _ctx.showClose ? (vue.openBlock(), vue.createBlock(vue.unref(index$2.ElIcon), {
136
+ key: 2,
137
+ class: vue.normalizeClass(vue.unref(ns).e("closeBtn")),
138
+ onClick: vue.withModifiers(close, ["stop"])
139
+ }, {
140
+ default: vue.withCtx(() => [
141
+ vue.createVNode(vue.unref(Close))
142
+ ]),
143
+ _: 1
144
+ }, 8, ["class", "onClick"])) : vue.createCommentVNode("v-if", true)
145
+ ], 46, _hoisted_1), [
146
+ [vue.vShow, visible.value]
147
+ ])
148
+ ]),
149
+ _: 3
150
+ }, 8, ["name", "onBeforeLeave"]);
151
+ };
90
152
  }
91
153
  });
92
- const messageEmits = {
93
- destroy: () => true
94
- };
154
+ var MessageConstructor = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "/home/runner/work/element-plus/element-plus/packages/components/message/src/message.vue"]]);
95
155
 
96
- exports.messageDefaults = messageDefaults;
97
- exports.messageEmits = messageEmits;
98
- exports.messageProps = messageProps;
99
- exports.messageTypes = messageTypes;
156
+ exports["default"] = MessageConstructor;
100
157
  //# sourceMappingURL=message2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"message2.js","sources":["../../../../../../packages/components/message/src/message.ts"],"sourcesContent":["import { isClient } from '@vueuse/core'\nimport {\n buildProps,\n definePropType,\n iconPropType,\n mutable,\n} from '@element-plus/utils'\nimport type { AppContext, ExtractPropTypes, VNode } from 'vue'\nimport type { Mutable } from '@element-plus/utils'\nimport type MessageConstructor from './message.vue'\n\nexport const messageTypes = ['success', 'info', 'warning', 'error'] as const\n\nexport type messageType = typeof messageTypes[number]\n\nexport interface MessageConfigContext {\n max?: number\n}\n\nexport const messageDefaults = mutable({\n customClass: '',\n center: false,\n dangerouslyUseHTMLString: false,\n duration: 3000,\n icon: undefined,\n id: '',\n message: '',\n onClose: undefined,\n showClose: false,\n type: 'info',\n offset: 16,\n zIndex: 0,\n grouping: false,\n repeatNum: 1,\n appendTo: isClient ? document.body : (undefined as never),\n} as const)\n\nexport const messageProps = buildProps({\n customClass: {\n type: String,\n default: messageDefaults.customClass,\n },\n center: {\n type: Boolean,\n default: messageDefaults.center,\n },\n dangerouslyUseHTMLString: {\n type: Boolean,\n default: messageDefaults.dangerouslyUseHTMLString,\n },\n duration: {\n type: Number,\n default: messageDefaults.duration,\n },\n icon: {\n type: iconPropType,\n default: messageDefaults.icon,\n },\n id: {\n type: String,\n default: messageDefaults.id,\n },\n message: {\n type: definePropType<string | VNode | (() => VNode)>([\n String,\n Object,\n Function,\n ]),\n default: messageDefaults.message,\n },\n onClose: {\n type: definePropType<() => void>(Function),\n required: false,\n },\n showClose: {\n type: Boolean,\n default: messageDefaults.showClose,\n },\n type: {\n type: String,\n values: messageTypes,\n default: messageDefaults.type,\n },\n offset: {\n type: Number,\n default: messageDefaults.offset,\n },\n zIndex: {\n type: Number,\n default: messageDefaults.zIndex,\n },\n grouping: {\n type: Boolean,\n default: messageDefaults.grouping,\n },\n repeatNum: {\n type: Number,\n default: messageDefaults.repeatNum,\n },\n} as const)\nexport type MessageProps = ExtractPropTypes<typeof messageProps>\n\nexport const messageEmits = {\n destroy: () => true,\n}\nexport type MessageEmits = typeof messageEmits\n\nexport type MessageInstance = InstanceType<typeof MessageConstructor>\n\nexport type MessageOptions = Partial<\n Mutable<\n Omit<MessageProps, 'id'> & {\n appendTo?: HTMLElement | string\n }\n >\n>\nexport type MessageParams = MessageOptions | MessageOptions['message']\nexport type MessageParamsNormalized = Omit<MessageProps, 'id'> & {\n appendTo: HTMLElement\n}\nexport type MessageOptionsWithType = Omit<MessageOptions, 'type'>\nexport type MessageParamsWithType =\n | MessageOptionsWithType\n | MessageOptions['message']\n\nexport interface MessageHandler {\n close: () => void\n}\n\nexport type MessageFn = {\n (options?: MessageParams, appContext?: null | AppContext): MessageHandler\n closeAll(type?: messageType): void\n}\nexport type MessageTypedFn = (\n options?: MessageParamsWithType,\n appContext?: null | AppContext\n) => MessageHandler\n\nexport interface Message extends MessageFn {\n success: MessageTypedFn\n warning: MessageTypedFn\n info: MessageTypedFn\n error: MessageTypedFn\n}\n"],"names":["mutable","isClient","buildProps","iconPropType","definePropType"],"mappings":"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"}
1
+ {"version":3,"file":"message2.js","sources":["../../../../../../packages/components/message/src/message.vue"],"sourcesContent":["<template>\n <transition\n :name=\"ns.b('fade')\"\n @before-leave=\"onClose\"\n @after-leave=\"$emit('destroy')\"\n >\n <div\n v-show=\"visible\"\n :id=\"id\"\n ref=\"messageRef\"\n :class=\"[\n ns.b(),\n { [ns.m(type)]: type && !icon },\n ns.is('center', center),\n ns.is('closable', showClose),\n customClass,\n ]\"\n :style=\"customStyle\"\n role=\"alert\"\n @mouseenter=\"clearTimer\"\n @mouseleave=\"startTimer\"\n >\n <el-badge\n v-if=\"repeatNum > 1\"\n :value=\"repeatNum\"\n :type=\"badgeType\"\n :class=\"ns.e('badge')\"\n />\n <el-icon v-if=\"iconComponent\" :class=\"[ns.e('icon'), typeClass]\">\n <component :is=\"iconComponent\" />\n </el-icon>\n <slot>\n <p v-if=\"!dangerouslyUseHTMLString\" :class=\"ns.e('content')\">\n {{ message }}\n </p>\n <!-- Caution here, message could've been compromised, never use user's input as message -->\n <p v-else :class=\"ns.e('content')\" v-html=\"message\" />\n </slot>\n <el-icon v-if=\"showClose\" :class=\"ns.e('closeBtn')\" @click.stop=\"close\">\n <Close />\n </el-icon>\n </div>\n </transition>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, onMounted, ref, watch } from 'vue'\nimport { useEventListener, useResizeObserver, useTimeoutFn } from '@vueuse/core'\nimport { TypeComponents, TypeComponentsMap } from '@element-plus/utils'\nimport { EVENT_CODE } from '@element-plus/constants'\nimport ElBadge from '@element-plus/components/badge'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { useNamespace } from '@element-plus/hooks'\nimport { messageEmits, messageProps } from './message'\nimport { getLastOffset } from './instance'\nimport type { BadgeProps } from '@element-plus/components/badge'\nimport type { CSSProperties } from 'vue'\n\nconst { Close } = TypeComponents\n\ndefineOptions({\n name: 'ElMessage',\n})\n\nconst props = defineProps(messageProps)\ndefineEmits(messageEmits)\n\nconst ns = useNamespace('message')\n\nconst messageRef = ref<HTMLDivElement>()\nconst visible = ref(false)\nconst height = ref(0)\n\nlet stopTimer: (() => void) | undefined = undefined\n\nconst badgeType = computed<BadgeProps['type']>(() =>\n props.type ? (props.type === 'error' ? 'danger' : props.type) : 'info'\n)\nconst typeClass = computed(() => {\n const type = props.type\n return { [ns.bm('icon', type)]: type && TypeComponentsMap[type] }\n})\nconst iconComponent = computed(\n () => props.icon || TypeComponentsMap[props.type] || ''\n)\n\nconst lastOffset = computed(() => getLastOffset(props.id))\nconst offset = computed(() => props.offset + lastOffset.value)\nconst bottom = computed((): number => height.value + offset.value)\nconst customStyle = computed<CSSProperties>(() => ({\n top: `${offset.value}px`,\n zIndex: props.zIndex,\n}))\n\nfunction startTimer() {\n if (props.duration === 0) return\n ;({ stop: stopTimer } = useTimeoutFn(() => {\n close()\n }, props.duration))\n}\n\nfunction clearTimer() {\n stopTimer?.()\n}\n\nfunction close() {\n visible.value = false\n}\n\nfunction keydown({ code }: KeyboardEvent) {\n if (code === EVENT_CODE.esc) {\n // press esc to close the message\n close()\n }\n}\n\nonMounted(() => {\n startTimer()\n visible.value = true\n})\n\nwatch(\n () => props.repeatNum,\n () => {\n clearTimer()\n startTimer()\n }\n)\n\nuseEventListener(document, 'keydown', keydown)\n\nuseResizeObserver(messageRef, () => {\n height.value = messageRef.value!.getBoundingClientRect().height\n})\n\ndefineExpose({\n visible,\n bottom,\n close,\n})\n</script>\n"],"names":["TypeComponents","useNamespace","ref","computed","TypeComponentsMap","getLastOffset","useTimeoutFn","EVENT_CODE","onMounted","watch","useEventListener","useResizeObserver"],"mappings":"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"}
@@ -7,8 +7,8 @@ var core = require('@vueuse/core');
7
7
  require('../../../utils/index.js');
8
8
  require('../../../hooks/index.js');
9
9
  var configProvider = require('../../config-provider/src/config-provider.js');
10
- var message$2 = require('./message.js');
11
- var message$1 = require('./message2.js');
10
+ var message$2 = require('./message2.js');
11
+ var message$1 = require('./message.js');
12
12
  var instance = require('./instance.js');
13
13
  var shared = require('@vue/shared');
14
14
  var types = require('../../../utils/types.js');
package/lib/index.js CHANGED
@@ -62,7 +62,7 @@ var dialog = require('./components/dialog/src/dialog.js');
62
62
  var index$n = require('./components/dialog/index.js');
63
63
  var divider = require('./components/divider/src/divider.js');
64
64
  var index$o = require('./components/divider/index.js');
65
- var drawer = require('./components/drawer/src/drawer2.js');
65
+ var drawer = require('./components/drawer/src/drawer.js');
66
66
  var index$p = require('./components/drawer/index.js');
67
67
  var dropdown = require('./components/dropdown/src/dropdown.js');
68
68
  var tokens = require('./components/dropdown/src/tokens.js');
@@ -185,7 +185,7 @@ var index$13 = require('./components/infinite-scroll/index.js');
185
185
  var index$14 = require('./components/loading/index.js');
186
186
  var directive = require('./components/loading/src/directive.js');
187
187
  var service = require('./components/loading/src/service.js');
188
- var message = require('./components/message/src/message2.js');
188
+ var message = require('./components/message/src/message.js');
189
189
  var index$15 = require('./components/message/index.js');
190
190
  var index$16 = require('./components/message-box/index.js');
191
191
  var notification = require('./components/notification/src/notification.js');