@element-plus/nightly 0.0.20230722 → 0.0.20230723

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 (276) hide show
  1. package/dist/index.full.js +10 -3
  2. package/dist/index.full.min.js +11 -11
  3. package/dist/index.full.min.js.map +1 -1
  4. package/dist/index.full.min.mjs +11 -11
  5. package/dist/index.full.min.mjs.map +1 -1
  6. package/dist/index.full.mjs +10 -3
  7. package/dist/locale/af.js +1 -1
  8. package/dist/locale/af.min.js +1 -1
  9. package/dist/locale/af.min.mjs +1 -1
  10. package/dist/locale/af.mjs +1 -1
  11. package/dist/locale/ar.js +1 -1
  12. package/dist/locale/ar.min.js +1 -1
  13. package/dist/locale/ar.min.mjs +1 -1
  14. package/dist/locale/ar.mjs +1 -1
  15. package/dist/locale/az.js +1 -1
  16. package/dist/locale/az.min.js +1 -1
  17. package/dist/locale/az.min.mjs +1 -1
  18. package/dist/locale/az.mjs +1 -1
  19. package/dist/locale/bg.js +1 -1
  20. package/dist/locale/bg.min.js +1 -1
  21. package/dist/locale/bg.min.mjs +1 -1
  22. package/dist/locale/bg.mjs +1 -1
  23. package/dist/locale/bn.js +1 -1
  24. package/dist/locale/bn.min.js +1 -1
  25. package/dist/locale/bn.min.mjs +1 -1
  26. package/dist/locale/bn.mjs +1 -1
  27. package/dist/locale/ca.js +1 -1
  28. package/dist/locale/ca.min.js +1 -1
  29. package/dist/locale/ca.min.mjs +1 -1
  30. package/dist/locale/ca.mjs +1 -1
  31. package/dist/locale/ckb.js +1 -1
  32. package/dist/locale/ckb.min.js +1 -1
  33. package/dist/locale/ckb.min.mjs +1 -1
  34. package/dist/locale/ckb.mjs +1 -1
  35. package/dist/locale/cs.js +1 -1
  36. package/dist/locale/cs.min.js +1 -1
  37. package/dist/locale/cs.min.mjs +1 -1
  38. package/dist/locale/cs.mjs +1 -1
  39. package/dist/locale/da.js +1 -1
  40. package/dist/locale/da.min.js +1 -1
  41. package/dist/locale/da.min.mjs +1 -1
  42. package/dist/locale/da.mjs +1 -1
  43. package/dist/locale/de.js +1 -1
  44. package/dist/locale/de.min.js +1 -1
  45. package/dist/locale/de.min.mjs +1 -1
  46. package/dist/locale/de.mjs +1 -1
  47. package/dist/locale/el.js +1 -1
  48. package/dist/locale/el.min.js +1 -1
  49. package/dist/locale/el.min.mjs +1 -1
  50. package/dist/locale/el.mjs +1 -1
  51. package/dist/locale/en.js +1 -1
  52. package/dist/locale/en.min.js +1 -1
  53. package/dist/locale/en.min.mjs +1 -1
  54. package/dist/locale/en.mjs +1 -1
  55. package/dist/locale/eo.js +1 -1
  56. package/dist/locale/eo.min.js +1 -1
  57. package/dist/locale/eo.min.mjs +1 -1
  58. package/dist/locale/eo.mjs +1 -1
  59. package/dist/locale/es.js +1 -1
  60. package/dist/locale/es.min.js +1 -1
  61. package/dist/locale/es.min.mjs +1 -1
  62. package/dist/locale/es.mjs +1 -1
  63. package/dist/locale/et.js +1 -1
  64. package/dist/locale/et.min.js +1 -1
  65. package/dist/locale/et.min.mjs +1 -1
  66. package/dist/locale/et.mjs +1 -1
  67. package/dist/locale/eu.js +1 -1
  68. package/dist/locale/eu.min.js +1 -1
  69. package/dist/locale/eu.min.mjs +1 -1
  70. package/dist/locale/eu.mjs +1 -1
  71. package/dist/locale/fa.js +1 -1
  72. package/dist/locale/fa.min.js +1 -1
  73. package/dist/locale/fa.min.mjs +1 -1
  74. package/dist/locale/fa.mjs +1 -1
  75. package/dist/locale/fi.js +1 -1
  76. package/dist/locale/fi.min.js +1 -1
  77. package/dist/locale/fi.min.mjs +1 -1
  78. package/dist/locale/fi.mjs +1 -1
  79. package/dist/locale/fr.js +1 -1
  80. package/dist/locale/fr.min.js +1 -1
  81. package/dist/locale/fr.min.mjs +1 -1
  82. package/dist/locale/fr.mjs +1 -1
  83. package/dist/locale/he.js +1 -1
  84. package/dist/locale/he.min.js +1 -1
  85. package/dist/locale/he.min.mjs +1 -1
  86. package/dist/locale/he.mjs +1 -1
  87. package/dist/locale/hr.js +1 -1
  88. package/dist/locale/hr.min.js +1 -1
  89. package/dist/locale/hr.min.mjs +1 -1
  90. package/dist/locale/hr.mjs +1 -1
  91. package/dist/locale/hu.js +1 -1
  92. package/dist/locale/hu.min.js +1 -1
  93. package/dist/locale/hu.min.mjs +1 -1
  94. package/dist/locale/hu.mjs +1 -1
  95. package/dist/locale/hy-am.js +1 -1
  96. package/dist/locale/hy-am.min.js +1 -1
  97. package/dist/locale/hy-am.min.mjs +1 -1
  98. package/dist/locale/hy-am.mjs +1 -1
  99. package/dist/locale/id.js +1 -1
  100. package/dist/locale/id.min.js +1 -1
  101. package/dist/locale/id.min.mjs +1 -1
  102. package/dist/locale/id.mjs +1 -1
  103. package/dist/locale/it.js +1 -1
  104. package/dist/locale/it.min.js +1 -1
  105. package/dist/locale/it.min.mjs +1 -1
  106. package/dist/locale/it.mjs +1 -1
  107. package/dist/locale/ja.js +1 -1
  108. package/dist/locale/ja.min.js +1 -1
  109. package/dist/locale/ja.min.mjs +1 -1
  110. package/dist/locale/ja.mjs +1 -1
  111. package/dist/locale/kk.js +1 -1
  112. package/dist/locale/kk.min.js +1 -1
  113. package/dist/locale/kk.min.mjs +1 -1
  114. package/dist/locale/kk.mjs +1 -1
  115. package/dist/locale/km.js +1 -1
  116. package/dist/locale/km.min.js +1 -1
  117. package/dist/locale/km.min.mjs +1 -1
  118. package/dist/locale/km.mjs +1 -1
  119. package/dist/locale/ko.js +1 -1
  120. package/dist/locale/ko.min.js +1 -1
  121. package/dist/locale/ko.min.mjs +1 -1
  122. package/dist/locale/ko.mjs +1 -1
  123. package/dist/locale/ku.js +1 -1
  124. package/dist/locale/ku.min.js +1 -1
  125. package/dist/locale/ku.min.mjs +1 -1
  126. package/dist/locale/ku.mjs +1 -1
  127. package/dist/locale/ky.js +1 -1
  128. package/dist/locale/ky.min.js +1 -1
  129. package/dist/locale/ky.min.mjs +1 -1
  130. package/dist/locale/ky.mjs +1 -1
  131. package/dist/locale/lt.js +1 -1
  132. package/dist/locale/lt.min.js +1 -1
  133. package/dist/locale/lt.min.mjs +1 -1
  134. package/dist/locale/lt.mjs +1 -1
  135. package/dist/locale/lv.js +1 -1
  136. package/dist/locale/lv.min.js +1 -1
  137. package/dist/locale/lv.min.mjs +1 -1
  138. package/dist/locale/lv.mjs +1 -1
  139. package/dist/locale/mg.js +1 -1
  140. package/dist/locale/mg.min.js +1 -1
  141. package/dist/locale/mg.min.mjs +1 -1
  142. package/dist/locale/mg.mjs +1 -1
  143. package/dist/locale/mn.js +1 -1
  144. package/dist/locale/mn.min.js +1 -1
  145. package/dist/locale/mn.min.mjs +1 -1
  146. package/dist/locale/mn.mjs +1 -1
  147. package/dist/locale/nb-no.js +1 -1
  148. package/dist/locale/nb-no.min.js +1 -1
  149. package/dist/locale/nb-no.min.mjs +1 -1
  150. package/dist/locale/nb-no.mjs +1 -1
  151. package/dist/locale/nl.js +1 -1
  152. package/dist/locale/nl.min.js +1 -1
  153. package/dist/locale/nl.min.mjs +1 -1
  154. package/dist/locale/nl.mjs +1 -1
  155. package/dist/locale/pa.js +1 -1
  156. package/dist/locale/pa.min.js +1 -1
  157. package/dist/locale/pa.min.mjs +1 -1
  158. package/dist/locale/pa.mjs +1 -1
  159. package/dist/locale/pl.js +1 -1
  160. package/dist/locale/pl.min.js +1 -1
  161. package/dist/locale/pl.min.mjs +1 -1
  162. package/dist/locale/pl.mjs +1 -1
  163. package/dist/locale/pt-br.js +1 -1
  164. package/dist/locale/pt-br.min.js +1 -1
  165. package/dist/locale/pt-br.min.mjs +1 -1
  166. package/dist/locale/pt-br.mjs +1 -1
  167. package/dist/locale/pt.js +1 -1
  168. package/dist/locale/pt.min.js +1 -1
  169. package/dist/locale/pt.min.mjs +1 -1
  170. package/dist/locale/pt.mjs +1 -1
  171. package/dist/locale/ro.js +1 -1
  172. package/dist/locale/ro.min.js +1 -1
  173. package/dist/locale/ro.min.mjs +1 -1
  174. package/dist/locale/ro.mjs +1 -1
  175. package/dist/locale/ru.js +1 -1
  176. package/dist/locale/ru.min.js +1 -1
  177. package/dist/locale/ru.min.mjs +1 -1
  178. package/dist/locale/ru.mjs +1 -1
  179. package/dist/locale/sk.js +1 -1
  180. package/dist/locale/sk.min.js +1 -1
  181. package/dist/locale/sk.min.mjs +1 -1
  182. package/dist/locale/sk.mjs +1 -1
  183. package/dist/locale/sl.js +1 -1
  184. package/dist/locale/sl.min.js +1 -1
  185. package/dist/locale/sl.min.mjs +1 -1
  186. package/dist/locale/sl.mjs +1 -1
  187. package/dist/locale/sr.js +1 -1
  188. package/dist/locale/sr.min.js +1 -1
  189. package/dist/locale/sr.min.mjs +1 -1
  190. package/dist/locale/sr.mjs +1 -1
  191. package/dist/locale/sv.js +1 -1
  192. package/dist/locale/sv.min.js +1 -1
  193. package/dist/locale/sv.min.mjs +1 -1
  194. package/dist/locale/sv.mjs +1 -1
  195. package/dist/locale/ta.js +1 -1
  196. package/dist/locale/ta.min.js +1 -1
  197. package/dist/locale/ta.min.mjs +1 -1
  198. package/dist/locale/ta.mjs +1 -1
  199. package/dist/locale/th.js +1 -1
  200. package/dist/locale/th.min.js +1 -1
  201. package/dist/locale/th.min.mjs +1 -1
  202. package/dist/locale/th.mjs +1 -1
  203. package/dist/locale/tk.js +1 -1
  204. package/dist/locale/tk.min.js +1 -1
  205. package/dist/locale/tk.min.mjs +1 -1
  206. package/dist/locale/tk.mjs +1 -1
  207. package/dist/locale/tr.js +1 -1
  208. package/dist/locale/tr.min.js +1 -1
  209. package/dist/locale/tr.min.mjs +1 -1
  210. package/dist/locale/tr.mjs +1 -1
  211. package/dist/locale/ug-cn.js +1 -1
  212. package/dist/locale/ug-cn.min.js +1 -1
  213. package/dist/locale/ug-cn.min.mjs +1 -1
  214. package/dist/locale/ug-cn.mjs +1 -1
  215. package/dist/locale/uk.js +1 -1
  216. package/dist/locale/uk.min.js +1 -1
  217. package/dist/locale/uk.min.mjs +1 -1
  218. package/dist/locale/uk.mjs +1 -1
  219. package/dist/locale/uz-uz.js +1 -1
  220. package/dist/locale/uz-uz.min.js +1 -1
  221. package/dist/locale/uz-uz.min.mjs +1 -1
  222. package/dist/locale/uz-uz.mjs +1 -1
  223. package/dist/locale/vi.js +1 -1
  224. package/dist/locale/vi.min.js +1 -1
  225. package/dist/locale/vi.min.mjs +1 -1
  226. package/dist/locale/vi.mjs +1 -1
  227. package/dist/locale/zh-cn.js +1 -1
  228. package/dist/locale/zh-cn.min.js +1 -1
  229. package/dist/locale/zh-cn.min.mjs +1 -1
  230. package/dist/locale/zh-cn.mjs +1 -1
  231. package/dist/locale/zh-tw.js +1 -1
  232. package/dist/locale/zh-tw.min.js +1 -1
  233. package/dist/locale/zh-tw.min.mjs +1 -1
  234. package/dist/locale/zh-tw.mjs +1 -1
  235. package/es/components/cascader/index.d.ts +2 -0
  236. package/es/components/cascader/src/cascader.vue.d.ts +1 -0
  237. package/es/components/cascader/src/cascader2.mjs +8 -1
  238. package/es/components/cascader/src/cascader2.mjs.map +1 -1
  239. package/es/components/form/index.mjs +2 -2
  240. package/es/components/form/src/form.mjs +148 -54
  241. package/es/components/form/src/form.mjs.map +1 -1
  242. package/es/components/form/src/form2.mjs +54 -148
  243. package/es/components/form/src/form2.mjs.map +1 -1
  244. package/es/components/index.mjs +2 -2
  245. package/es/components/notification/index.mjs +1 -1
  246. package/es/components/notification/src/notification.mjs +149 -67
  247. package/es/components/notification/src/notification.mjs.map +1 -1
  248. package/es/components/notification/src/notification2.mjs +67 -149
  249. package/es/components/notification/src/notification2.mjs.map +1 -1
  250. package/es/components/notification/src/notify.mjs +2 -2
  251. package/es/index.mjs +2 -2
  252. package/es/version.d.ts +1 -1
  253. package/es/version.mjs +1 -1
  254. package/es/version.mjs.map +1 -1
  255. package/lib/components/cascader/index.d.ts +2 -0
  256. package/lib/components/cascader/src/cascader.vue.d.ts +1 -0
  257. package/lib/components/cascader/src/cascader2.js +8 -1
  258. package/lib/components/cascader/src/cascader2.js.map +1 -1
  259. package/lib/components/form/index.js +2 -2
  260. package/lib/components/form/src/form.js +147 -54
  261. package/lib/components/form/src/form.js.map +1 -1
  262. package/lib/components/form/src/form2.js +54 -147
  263. package/lib/components/form/src/form2.js.map +1 -1
  264. package/lib/components/index.js +2 -2
  265. package/lib/components/notification/index.js +1 -1
  266. package/lib/components/notification/src/notification.js +148 -68
  267. package/lib/components/notification/src/notification.js.map +1 -1
  268. package/lib/components/notification/src/notification2.js +68 -148
  269. package/lib/components/notification/src/notification2.js.map +1 -1
  270. package/lib/components/notification/src/notify.js +2 -2
  271. package/lib/index.js +2 -2
  272. package/lib/version.d.ts +1 -1
  273. package/lib/version.js +1 -1
  274. package/lib/version.js.map +1 -1
  275. package/package.json +2 -2
  276. package/web-types.json +1 -1
@@ -1,72 +1,154 @@
1
+ import { defineComponent, ref, computed, onMounted, openBlock, createBlock, Transition, unref, withCtx, withDirectives, createElementVNode, normalizeClass, normalizeStyle, resolveDynamicComponent, createCommentVNode, toDisplayString, renderSlot, createElementBlock, Fragment, vShow, withModifiers, createVNode } from 'vue';
2
+ import { useTimeoutFn, useEventListener } from '@vueuse/core';
1
3
  import '../../../utils/index.mjs';
2
- import { buildProps, definePropType } from '../../../utils/vue/props/runtime.mjs';
3
- import { iconPropType } from '../../../utils/vue/icon.mjs';
4
+ import '../../../constants/index.mjs';
5
+ import { ElIcon } from '../../icon/index.mjs';
6
+ import '../../config-provider/index.mjs';
7
+ import { notificationProps, notificationEmits } from './notification2.mjs';
8
+ import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
9
+ import { useGlobalComponentSettings } from '../../config-provider/src/hooks/use-global-config.mjs';
10
+ import { CloseComponents, TypeComponentsMap } from '../../../utils/vue/icon.mjs';
11
+ import { EVENT_CODE } from '../../../constants/aria.mjs';
4
12
 
5
- const notificationTypes = [
6
- "success",
7
- "info",
8
- "warning",
9
- "error"
10
- ];
11
- const notificationProps = buildProps({
12
- customClass: {
13
- type: String,
14
- default: ""
15
- },
16
- dangerouslyUseHTMLString: {
17
- type: Boolean,
18
- default: false
19
- },
20
- duration: {
21
- type: Number,
22
- default: 4500
23
- },
24
- icon: {
25
- type: iconPropType
26
- },
27
- id: {
28
- type: String,
29
- default: ""
30
- },
31
- message: {
32
- type: definePropType([String, Object]),
33
- default: ""
34
- },
35
- offset: {
36
- type: Number,
37
- default: 0
38
- },
39
- onClick: {
40
- type: definePropType(Function),
41
- default: () => void 0
42
- },
43
- onClose: {
44
- type: definePropType(Function),
45
- required: true
46
- },
47
- position: {
48
- type: String,
49
- values: ["top-right", "top-left", "bottom-right", "bottom-left"],
50
- default: "top-right"
51
- },
52
- showClose: {
53
- type: Boolean,
54
- default: true
55
- },
56
- title: {
57
- type: String,
58
- default: ""
59
- },
60
- type: {
61
- type: String,
62
- values: [...notificationTypes, ""],
63
- default: ""
64
- },
65
- zIndex: Number
13
+ const _hoisted_1 = ["id"];
14
+ const _hoisted_2 = ["textContent"];
15
+ const _hoisted_3 = { key: 0 };
16
+ const _hoisted_4 = ["innerHTML"];
17
+ const __default__ = defineComponent({
18
+ name: "ElNotification"
66
19
  });
67
- const notificationEmits = {
68
- destroy: () => true
69
- };
20
+ const _sfc_main = /* @__PURE__ */ defineComponent({
21
+ ...__default__,
22
+ props: notificationProps,
23
+ emits: notificationEmits,
24
+ setup(__props, { expose }) {
25
+ const props = __props;
26
+ const { ns, zIndex } = useGlobalComponentSettings("notification");
27
+ const { nextZIndex, currentZIndex } = zIndex;
28
+ const { Close } = CloseComponents;
29
+ const visible = ref(false);
30
+ let timer = void 0;
31
+ const typeClass = computed(() => {
32
+ const type = props.type;
33
+ return type && TypeComponentsMap[props.type] ? ns.m(type) : "";
34
+ });
35
+ const iconComponent = computed(() => {
36
+ if (!props.type)
37
+ return props.icon;
38
+ return TypeComponentsMap[props.type] || props.icon;
39
+ });
40
+ const horizontalClass = computed(() => props.position.endsWith("right") ? "right" : "left");
41
+ const verticalProperty = computed(() => props.position.startsWith("top") ? "top" : "bottom");
42
+ const positionStyle = computed(() => {
43
+ var _a;
44
+ return {
45
+ [verticalProperty.value]: `${props.offset}px`,
46
+ zIndex: (_a = props.zIndex) != null ? _a : currentZIndex.value
47
+ };
48
+ });
49
+ function startTimer() {
50
+ if (props.duration > 0) {
51
+ ;
52
+ ({ stop: timer } = useTimeoutFn(() => {
53
+ if (visible.value)
54
+ close();
55
+ }, props.duration));
56
+ }
57
+ }
58
+ function clearTimer() {
59
+ timer == null ? void 0 : timer();
60
+ }
61
+ function close() {
62
+ visible.value = false;
63
+ }
64
+ function onKeydown({ code }) {
65
+ if (code === EVENT_CODE.delete || code === EVENT_CODE.backspace) {
66
+ clearTimer();
67
+ } else if (code === EVENT_CODE.esc) {
68
+ if (visible.value) {
69
+ close();
70
+ }
71
+ } else {
72
+ startTimer();
73
+ }
74
+ }
75
+ onMounted(() => {
76
+ startTimer();
77
+ nextZIndex();
78
+ visible.value = true;
79
+ });
80
+ useEventListener(document, "keydown", onKeydown);
81
+ expose({
82
+ visible,
83
+ close
84
+ });
85
+ return (_ctx, _cache) => {
86
+ return openBlock(), createBlock(Transition, {
87
+ name: unref(ns).b("fade"),
88
+ onBeforeLeave: _ctx.onClose,
89
+ onAfterLeave: _cache[1] || (_cache[1] = ($event) => _ctx.$emit("destroy")),
90
+ persisted: ""
91
+ }, {
92
+ default: withCtx(() => [
93
+ withDirectives(createElementVNode("div", {
94
+ id: _ctx.id,
95
+ class: normalizeClass([unref(ns).b(), _ctx.customClass, unref(horizontalClass)]),
96
+ style: normalizeStyle(unref(positionStyle)),
97
+ role: "alert",
98
+ onMouseenter: clearTimer,
99
+ onMouseleave: startTimer,
100
+ onClick: _cache[0] || (_cache[0] = (...args) => _ctx.onClick && _ctx.onClick(...args))
101
+ }, [
102
+ unref(iconComponent) ? (openBlock(), createBlock(unref(ElIcon), {
103
+ key: 0,
104
+ class: normalizeClass([unref(ns).e("icon"), unref(typeClass)])
105
+ }, {
106
+ default: withCtx(() => [
107
+ (openBlock(), createBlock(resolveDynamicComponent(unref(iconComponent))))
108
+ ]),
109
+ _: 1
110
+ }, 8, ["class"])) : createCommentVNode("v-if", true),
111
+ createElementVNode("div", {
112
+ class: normalizeClass(unref(ns).e("group"))
113
+ }, [
114
+ createElementVNode("h2", {
115
+ class: normalizeClass(unref(ns).e("title")),
116
+ textContent: toDisplayString(_ctx.title)
117
+ }, null, 10, _hoisted_2),
118
+ withDirectives(createElementVNode("div", {
119
+ class: normalizeClass(unref(ns).e("content")),
120
+ style: normalizeStyle(!!_ctx.title ? void 0 : { margin: 0 })
121
+ }, [
122
+ renderSlot(_ctx.$slots, "default", {}, () => [
123
+ !_ctx.dangerouslyUseHTMLString ? (openBlock(), createElementBlock("p", _hoisted_3, toDisplayString(_ctx.message), 1)) : (openBlock(), createElementBlock(Fragment, { key: 1 }, [
124
+ createCommentVNode(" Caution here, message could've been compromised, never use user's input as message "),
125
+ createElementVNode("p", { innerHTML: _ctx.message }, null, 8, _hoisted_4)
126
+ ], 2112))
127
+ ])
128
+ ], 6), [
129
+ [vShow, _ctx.message]
130
+ ]),
131
+ _ctx.showClose ? (openBlock(), createBlock(unref(ElIcon), {
132
+ key: 0,
133
+ class: normalizeClass(unref(ns).e("closeBtn")),
134
+ onClick: withModifiers(close, ["stop"])
135
+ }, {
136
+ default: withCtx(() => [
137
+ createVNode(unref(Close))
138
+ ]),
139
+ _: 1
140
+ }, 8, ["class", "onClick"])) : createCommentVNode("v-if", true)
141
+ ], 2)
142
+ ], 46, _hoisted_1), [
143
+ [vShow, visible.value]
144
+ ])
145
+ ]),
146
+ _: 3
147
+ }, 8, ["name", "onBeforeLeave"]);
148
+ };
149
+ }
150
+ });
151
+ var NotificationConstructor = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "/home/runner/work/element-plus/element-plus/packages/components/notification/src/notification.vue"]]);
70
152
 
71
- export { notificationEmits, notificationProps, notificationTypes };
153
+ export { NotificationConstructor as default };
72
154
  //# sourceMappingURL=notification.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"notification.mjs","sources":["../../../../../../packages/components/notification/src/notification.ts"],"sourcesContent":["import { buildProps, definePropType, iconPropType } from '@element-plus/utils'\n\nimport type { ExtractPropTypes, VNode } from 'vue'\nimport type Notification from './notification.vue'\n\nexport const notificationTypes = [\n 'success',\n 'info',\n 'warning',\n 'error',\n] as const\n\nexport const notificationProps = buildProps({\n /**\n * @description custom class name for Notification\n */\n customClass: {\n type: String,\n default: '',\n },\n /**\n * @description whether `message` is treated as HTML string\n */\n dangerouslyUseHTMLString: {\n type: Boolean,\n default: false,\n },\n /**\n * @description duration before close. It will not automatically close if set 0\n */\n duration: {\n type: Number,\n default: 4500,\n },\n /**\n * @description custom icon component. It will be overridden by `type`\n */\n icon: {\n type: iconPropType,\n },\n /**\n * @description notification dom id\n */\n id: {\n type: String,\n default: '',\n },\n /**\n * @description description text\n */\n message: {\n type: definePropType<string | VNode>([String, Object]),\n default: '',\n },\n /**\n * @description offset from the top edge of the screen. Every Notification instance of the same moment should have the same offset\n */\n offset: {\n type: Number,\n default: 0,\n },\n /**\n * @description callback function when notification clicked\n */\n onClick: {\n type: definePropType<() => void>(Function),\n default: () => undefined,\n },\n /**\n * @description callback function when closed\n */\n onClose: {\n type: definePropType<() => void>(Function),\n required: true,\n },\n /**\n * @description custom position\n */\n position: {\n type: String,\n values: ['top-right', 'top-left', 'bottom-right', 'bottom-left'],\n default: 'top-right',\n },\n /**\n * @description whether to show a close button\n */\n showClose: {\n type: Boolean,\n default: true,\n },\n /**\n * @description title\n */\n title: {\n type: String,\n default: '',\n },\n /**\n * @description notification type\n */\n type: {\n type: String,\n values: [...notificationTypes, ''],\n default: '',\n },\n /**\n * @description initial zIndex\n */\n zIndex: Number,\n} as const)\nexport type NotificationProps = ExtractPropTypes<typeof notificationProps>\n\nexport const notificationEmits = {\n destroy: () => true,\n}\nexport type NotificationEmits = typeof notificationEmits\n\nexport type NotificationInstance = InstanceType<typeof Notification>\n\nexport type NotificationOptions = Omit<NotificationProps, 'id'> & {\n /**\n * @description set the root element for the notification, default to `document.body`\n */\n appendTo?: HTMLElement | string\n}\nexport type NotificationOptionsTyped = Omit<NotificationOptions, 'type'>\n\nexport interface NotificationHandle {\n close: () => void\n}\n\nexport type NotificationParams = Partial<NotificationOptions> | string | VNode\nexport type NotificationParamsTyped =\n | Partial<NotificationOptionsTyped>\n | string\n | VNode\n\nexport type NotifyFn = ((\n options?: NotificationParams\n) => NotificationHandle) & { closeAll: () => void }\n\nexport type NotifyTypedFn = (\n options?: NotificationParamsTyped\n) => NotificationHandle\n\nexport interface Notify extends NotifyFn {\n success: NotifyTypedFn\n warning: NotifyTypedFn\n error: NotifyTypedFn\n info: NotifyTypedFn\n}\n\nexport interface NotificationQueueItem {\n vm: VNode\n}\n\nexport type NotificationQueue = NotificationQueueItem[]\n"],"names":[],"mappings":";;;;AACY,MAAC,iBAAiB,GAAG;AACjC,EAAE,SAAS;AACX,EAAE,MAAM;AACR,EAAE,SAAS;AACX,EAAE,OAAO;AACT,EAAE;AACU,MAAC,iBAAiB,GAAG,UAAU,CAAC;AAC5C,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,wBAAwB,EAAE;AAC5B,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,YAAY;AACtB,GAAG;AACH,EAAE,EAAE,EAAE;AACN,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,OAAO,EAAE;AACX,IAAI,IAAI,EAAE,cAAc,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAC1C,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,CAAC;AACd,GAAG;AACH,EAAE,OAAO,EAAE;AACX,IAAI,IAAI,EAAE,cAAc,CAAC,QAAQ,CAAC;AAClC,IAAI,OAAO,EAAE,MAAM,KAAK,CAAC;AACzB,GAAG;AACH,EAAE,OAAO,EAAE;AACX,IAAI,IAAI,EAAE,cAAc,CAAC,QAAQ,CAAC;AAClC,IAAI,QAAQ,EAAE,IAAI;AAClB,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,CAAC,WAAW,EAAE,UAAU,EAAE,cAAc,EAAE,aAAa,CAAC;AACpE,IAAI,OAAO,EAAE,WAAW;AACxB,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,CAAC,GAAG,iBAAiB,EAAE,EAAE,CAAC;AACtC,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,MAAM,EAAE,MAAM;AAChB,CAAC,EAAE;AACS,MAAC,iBAAiB,GAAG;AACjC,EAAE,OAAO,EAAE,MAAM,IAAI;AACrB;;;;"}
1
+ {"version":3,"file":"notification.mjs","sources":["../../../../../../packages/components/notification/src/notification.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 :class=\"[ns.b(), customClass, horizontalClass]\"\n :style=\"positionStyle\"\n role=\"alert\"\n @mouseenter=\"clearTimer\"\n @mouseleave=\"startTimer\"\n @click=\"onClick\"\n >\n <el-icon v-if=\"iconComponent\" :class=\"[ns.e('icon'), typeClass]\">\n <component :is=\"iconComponent\" />\n </el-icon>\n <div :class=\"ns.e('group')\">\n <h2 :class=\"ns.e('title')\" v-text=\"title\" />\n <div\n v-show=\"message\"\n :class=\"ns.e('content')\"\n :style=\"!!title ? undefined : { margin: 0 }\"\n >\n <slot>\n <p v-if=\"!dangerouslyUseHTMLString\">{{ message }}</p>\n <!-- Caution here, message could've been compromised, never use user's input as message -->\n <p v-else v-html=\"message\" />\n </slot>\n </div>\n <el-icon v-if=\"showClose\" :class=\"ns.e('closeBtn')\" @click.stop=\"close\">\n <Close />\n </el-icon>\n </div>\n </div>\n </transition>\n</template>\n<script lang=\"ts\" setup>\nimport { computed, onMounted, ref } from 'vue'\nimport { useEventListener, useTimeoutFn } from '@vueuse/core'\nimport { CloseComponents, TypeComponentsMap } from '@element-plus/utils'\nimport { EVENT_CODE } from '@element-plus/constants'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { useGlobalComponentSettings } from '@element-plus/components/config-provider'\nimport { notificationEmits, notificationProps } from './notification'\n\nimport type { CSSProperties } from 'vue'\n\ndefineOptions({\n name: 'ElNotification',\n})\n\nconst props = defineProps(notificationProps)\ndefineEmits(notificationEmits)\n\nconst { ns, zIndex } = useGlobalComponentSettings('notification')\nconst { nextZIndex, currentZIndex } = zIndex\n\nconst { Close } = CloseComponents\n\nconst visible = ref(false)\nlet timer: (() => void) | undefined = undefined\n\nconst typeClass = computed(() => {\n const type = props.type\n return type && TypeComponentsMap[props.type] ? ns.m(type) : ''\n})\n\nconst iconComponent = computed(() => {\n if (!props.type) return props.icon\n return TypeComponentsMap[props.type] || props.icon\n})\n\nconst horizontalClass = computed(() =>\n props.position.endsWith('right') ? 'right' : 'left'\n)\n\nconst verticalProperty = computed(() =>\n props.position.startsWith('top') ? 'top' : 'bottom'\n)\n\nconst positionStyle = computed<CSSProperties>(() => {\n return {\n [verticalProperty.value]: `${props.offset}px`,\n zIndex: props.zIndex ?? currentZIndex.value,\n }\n})\n\nfunction startTimer() {\n if (props.duration > 0) {\n ;({ stop: timer } = useTimeoutFn(() => {\n if (visible.value) close()\n }, props.duration))\n }\n}\n\nfunction clearTimer() {\n timer?.()\n}\n\nfunction close() {\n visible.value = false\n}\n\nfunction onKeydown({ code }: KeyboardEvent) {\n if (code === EVENT_CODE.delete || code === EVENT_CODE.backspace) {\n clearTimer() // press delete/backspace clear timer\n } else if (code === EVENT_CODE.esc) {\n // press esc to close the notification\n if (visible.value) {\n close()\n }\n } else {\n startTimer() // resume timer\n }\n}\n\n// lifecycle\nonMounted(() => {\n startTimer()\n nextZIndex()\n visible.value = true\n})\n\nuseEventListener(document, 'keydown', onKeydown)\n\ndefineExpose({\n visible,\n /** @description close notification */\n close,\n})\n</script>\n"],"names":[],"mappings":"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"}
@@ -1,154 +1,72 @@
1
- import { defineComponent, ref, computed, onMounted, openBlock, createBlock, Transition, unref, withCtx, withDirectives, createElementVNode, normalizeClass, normalizeStyle, resolveDynamicComponent, createCommentVNode, toDisplayString, renderSlot, createElementBlock, Fragment, vShow, withModifiers, createVNode } from 'vue';
2
- import { useTimeoutFn, useEventListener } from '@vueuse/core';
3
1
  import '../../../utils/index.mjs';
4
- import '../../../constants/index.mjs';
5
- import { ElIcon } from '../../icon/index.mjs';
6
- import '../../config-provider/index.mjs';
7
- import { notificationProps, notificationEmits } from './notification.mjs';
8
- import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
9
- import { useGlobalComponentSettings } from '../../config-provider/src/hooks/use-global-config.mjs';
10
- import { CloseComponents, TypeComponentsMap } from '../../../utils/vue/icon.mjs';
11
- import { EVENT_CODE } from '../../../constants/aria.mjs';
2
+ import { buildProps, definePropType } from '../../../utils/vue/props/runtime.mjs';
3
+ import { iconPropType } from '../../../utils/vue/icon.mjs';
12
4
 
13
- const _hoisted_1 = ["id"];
14
- const _hoisted_2 = ["textContent"];
15
- const _hoisted_3 = { key: 0 };
16
- const _hoisted_4 = ["innerHTML"];
17
- const __default__ = defineComponent({
18
- name: "ElNotification"
5
+ const notificationTypes = [
6
+ "success",
7
+ "info",
8
+ "warning",
9
+ "error"
10
+ ];
11
+ const notificationProps = buildProps({
12
+ customClass: {
13
+ type: String,
14
+ default: ""
15
+ },
16
+ dangerouslyUseHTMLString: {
17
+ type: Boolean,
18
+ default: false
19
+ },
20
+ duration: {
21
+ type: Number,
22
+ default: 4500
23
+ },
24
+ icon: {
25
+ type: iconPropType
26
+ },
27
+ id: {
28
+ type: String,
29
+ default: ""
30
+ },
31
+ message: {
32
+ type: definePropType([String, Object]),
33
+ default: ""
34
+ },
35
+ offset: {
36
+ type: Number,
37
+ default: 0
38
+ },
39
+ onClick: {
40
+ type: definePropType(Function),
41
+ default: () => void 0
42
+ },
43
+ onClose: {
44
+ type: definePropType(Function),
45
+ required: true
46
+ },
47
+ position: {
48
+ type: String,
49
+ values: ["top-right", "top-left", "bottom-right", "bottom-left"],
50
+ default: "top-right"
51
+ },
52
+ showClose: {
53
+ type: Boolean,
54
+ default: true
55
+ },
56
+ title: {
57
+ type: String,
58
+ default: ""
59
+ },
60
+ type: {
61
+ type: String,
62
+ values: [...notificationTypes, ""],
63
+ default: ""
64
+ },
65
+ zIndex: Number
19
66
  });
20
- const _sfc_main = /* @__PURE__ */ defineComponent({
21
- ...__default__,
22
- props: notificationProps,
23
- emits: notificationEmits,
24
- setup(__props, { expose }) {
25
- const props = __props;
26
- const { ns, zIndex } = useGlobalComponentSettings("notification");
27
- const { nextZIndex, currentZIndex } = zIndex;
28
- const { Close } = CloseComponents;
29
- const visible = ref(false);
30
- let timer = void 0;
31
- const typeClass = computed(() => {
32
- const type = props.type;
33
- return type && TypeComponentsMap[props.type] ? ns.m(type) : "";
34
- });
35
- const iconComponent = computed(() => {
36
- if (!props.type)
37
- return props.icon;
38
- return TypeComponentsMap[props.type] || props.icon;
39
- });
40
- const horizontalClass = computed(() => props.position.endsWith("right") ? "right" : "left");
41
- const verticalProperty = computed(() => props.position.startsWith("top") ? "top" : "bottom");
42
- const positionStyle = computed(() => {
43
- var _a;
44
- return {
45
- [verticalProperty.value]: `${props.offset}px`,
46
- zIndex: (_a = props.zIndex) != null ? _a : currentZIndex.value
47
- };
48
- });
49
- function startTimer() {
50
- if (props.duration > 0) {
51
- ;
52
- ({ stop: timer } = useTimeoutFn(() => {
53
- if (visible.value)
54
- close();
55
- }, props.duration));
56
- }
57
- }
58
- function clearTimer() {
59
- timer == null ? void 0 : timer();
60
- }
61
- function close() {
62
- visible.value = false;
63
- }
64
- function onKeydown({ code }) {
65
- if (code === EVENT_CODE.delete || code === EVENT_CODE.backspace) {
66
- clearTimer();
67
- } else if (code === EVENT_CODE.esc) {
68
- if (visible.value) {
69
- close();
70
- }
71
- } else {
72
- startTimer();
73
- }
74
- }
75
- onMounted(() => {
76
- startTimer();
77
- nextZIndex();
78
- visible.value = true;
79
- });
80
- useEventListener(document, "keydown", onKeydown);
81
- expose({
82
- visible,
83
- close
84
- });
85
- return (_ctx, _cache) => {
86
- return openBlock(), createBlock(Transition, {
87
- name: unref(ns).b("fade"),
88
- onBeforeLeave: _ctx.onClose,
89
- onAfterLeave: _cache[1] || (_cache[1] = ($event) => _ctx.$emit("destroy")),
90
- persisted: ""
91
- }, {
92
- default: withCtx(() => [
93
- withDirectives(createElementVNode("div", {
94
- id: _ctx.id,
95
- class: normalizeClass([unref(ns).b(), _ctx.customClass, unref(horizontalClass)]),
96
- style: normalizeStyle(unref(positionStyle)),
97
- role: "alert",
98
- onMouseenter: clearTimer,
99
- onMouseleave: startTimer,
100
- onClick: _cache[0] || (_cache[0] = (...args) => _ctx.onClick && _ctx.onClick(...args))
101
- }, [
102
- unref(iconComponent) ? (openBlock(), createBlock(unref(ElIcon), {
103
- key: 0,
104
- class: normalizeClass([unref(ns).e("icon"), unref(typeClass)])
105
- }, {
106
- default: withCtx(() => [
107
- (openBlock(), createBlock(resolveDynamicComponent(unref(iconComponent))))
108
- ]),
109
- _: 1
110
- }, 8, ["class"])) : createCommentVNode("v-if", true),
111
- createElementVNode("div", {
112
- class: normalizeClass(unref(ns).e("group"))
113
- }, [
114
- createElementVNode("h2", {
115
- class: normalizeClass(unref(ns).e("title")),
116
- textContent: toDisplayString(_ctx.title)
117
- }, null, 10, _hoisted_2),
118
- withDirectives(createElementVNode("div", {
119
- class: normalizeClass(unref(ns).e("content")),
120
- style: normalizeStyle(!!_ctx.title ? void 0 : { margin: 0 })
121
- }, [
122
- renderSlot(_ctx.$slots, "default", {}, () => [
123
- !_ctx.dangerouslyUseHTMLString ? (openBlock(), createElementBlock("p", _hoisted_3, toDisplayString(_ctx.message), 1)) : (openBlock(), createElementBlock(Fragment, { key: 1 }, [
124
- createCommentVNode(" Caution here, message could've been compromised, never use user's input as message "),
125
- createElementVNode("p", { innerHTML: _ctx.message }, null, 8, _hoisted_4)
126
- ], 2112))
127
- ])
128
- ], 6), [
129
- [vShow, _ctx.message]
130
- ]),
131
- _ctx.showClose ? (openBlock(), createBlock(unref(ElIcon), {
132
- key: 0,
133
- class: normalizeClass(unref(ns).e("closeBtn")),
134
- onClick: withModifiers(close, ["stop"])
135
- }, {
136
- default: withCtx(() => [
137
- createVNode(unref(Close))
138
- ]),
139
- _: 1
140
- }, 8, ["class", "onClick"])) : createCommentVNode("v-if", true)
141
- ], 2)
142
- ], 46, _hoisted_1), [
143
- [vShow, visible.value]
144
- ])
145
- ]),
146
- _: 3
147
- }, 8, ["name", "onBeforeLeave"]);
148
- };
149
- }
150
- });
151
- var NotificationConstructor = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "/home/runner/work/element-plus/element-plus/packages/components/notification/src/notification.vue"]]);
67
+ const notificationEmits = {
68
+ destroy: () => true
69
+ };
152
70
 
153
- export { NotificationConstructor as default };
71
+ export { notificationEmits, notificationProps, notificationTypes };
154
72
  //# sourceMappingURL=notification2.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"notification2.mjs","sources":["../../../../../../packages/components/notification/src/notification.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 :class=\"[ns.b(), customClass, horizontalClass]\"\n :style=\"positionStyle\"\n role=\"alert\"\n @mouseenter=\"clearTimer\"\n @mouseleave=\"startTimer\"\n @click=\"onClick\"\n >\n <el-icon v-if=\"iconComponent\" :class=\"[ns.e('icon'), typeClass]\">\n <component :is=\"iconComponent\" />\n </el-icon>\n <div :class=\"ns.e('group')\">\n <h2 :class=\"ns.e('title')\" v-text=\"title\" />\n <div\n v-show=\"message\"\n :class=\"ns.e('content')\"\n :style=\"!!title ? undefined : { margin: 0 }\"\n >\n <slot>\n <p v-if=\"!dangerouslyUseHTMLString\">{{ message }}</p>\n <!-- Caution here, message could've been compromised, never use user's input as message -->\n <p v-else v-html=\"message\" />\n </slot>\n </div>\n <el-icon v-if=\"showClose\" :class=\"ns.e('closeBtn')\" @click.stop=\"close\">\n <Close />\n </el-icon>\n </div>\n </div>\n </transition>\n</template>\n<script lang=\"ts\" setup>\nimport { computed, onMounted, ref } from 'vue'\nimport { useEventListener, useTimeoutFn } from '@vueuse/core'\nimport { CloseComponents, TypeComponentsMap } from '@element-plus/utils'\nimport { EVENT_CODE } from '@element-plus/constants'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { useGlobalComponentSettings } from '@element-plus/components/config-provider'\nimport { notificationEmits, notificationProps } from './notification'\n\nimport type { CSSProperties } from 'vue'\n\ndefineOptions({\n name: 'ElNotification',\n})\n\nconst props = defineProps(notificationProps)\ndefineEmits(notificationEmits)\n\nconst { ns, zIndex } = useGlobalComponentSettings('notification')\nconst { nextZIndex, currentZIndex } = zIndex\n\nconst { Close } = CloseComponents\n\nconst visible = ref(false)\nlet timer: (() => void) | undefined = undefined\n\nconst typeClass = computed(() => {\n const type = props.type\n return type && TypeComponentsMap[props.type] ? ns.m(type) : ''\n})\n\nconst iconComponent = computed(() => {\n if (!props.type) return props.icon\n return TypeComponentsMap[props.type] || props.icon\n})\n\nconst horizontalClass = computed(() =>\n props.position.endsWith('right') ? 'right' : 'left'\n)\n\nconst verticalProperty = computed(() =>\n props.position.startsWith('top') ? 'top' : 'bottom'\n)\n\nconst positionStyle = computed<CSSProperties>(() => {\n return {\n [verticalProperty.value]: `${props.offset}px`,\n zIndex: props.zIndex ?? currentZIndex.value,\n }\n})\n\nfunction startTimer() {\n if (props.duration > 0) {\n ;({ stop: timer } = useTimeoutFn(() => {\n if (visible.value) close()\n }, props.duration))\n }\n}\n\nfunction clearTimer() {\n timer?.()\n}\n\nfunction close() {\n visible.value = false\n}\n\nfunction onKeydown({ code }: KeyboardEvent) {\n if (code === EVENT_CODE.delete || code === EVENT_CODE.backspace) {\n clearTimer() // press delete/backspace clear timer\n } else if (code === EVENT_CODE.esc) {\n // press esc to close the notification\n if (visible.value) {\n close()\n }\n } else {\n startTimer() // resume timer\n }\n}\n\n// lifecycle\nonMounted(() => {\n startTimer()\n nextZIndex()\n visible.value = true\n})\n\nuseEventListener(document, 'keydown', onKeydown)\n\ndefineExpose({\n visible,\n /** @description close notification */\n close,\n})\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;mCAkDc,CAAA;AAAA,EACZ,IAAM,EAAA,gBAAA;AACR,CAAA,CAAA,CAAA;;;;;;;AAKA,IAAA,MAAM,EAAE,EAAA,EAAI,MAAW,EAAA,GAAA,0BAAA,CAA2B,cAAc,CAAA,CAAA;AAChE,IAAM,MAAA,EAAE,YAAY,aAAkB,EAAA,GAAA,MAAA,CAAA;AAEtC,IAAA,MAAM,EAAE,KAAU,EAAA,GAAA,eAAA,CAAA;AAElB,IAAM,MAAA,OAAA,GAAU,IAAI,KAAK,CAAA,CAAA;AACzB,IAAA,IAAI,KAAkC,GAAA,KAAA,CAAA,CAAA;AAEtC,IAAM,MAAA,SAAA,GAAY,SAAS,MAAM;AAC/B,MAAA,MAAM,OAAO,KAAM,CAAA,IAAA,CAAA;AACnB,MAAA,OAAO,QAAQ,iBAAkB,CAAA,KAAA,CAAM,QAAQ,EAAG,CAAA,CAAA,CAAE,IAAI,CAAI,GAAA,EAAA,CAAA;AAAA,KAC7D,CAAA,CAAA;AAED,IAAM,MAAA,aAAA,GAAgB,SAAS,MAAM;AACnC,MAAA,IAAI,CAAC,KAAM,CAAA,IAAA;AAAM,QAAA,OAAO,KAAM,CAAA,IAAA,CAAA;AAC9B,MAAO,OAAA,iBAAA,CAAkB,KAAM,CAAA,IAAA,CAAA,IAAS,KAAM,CAAA,IAAA,CAAA;AAAA,KAC/C,CAAA,CAAA;AAED,IAAM,MAAA,eAAA,GAAkB,SAAS,MAC/B,KAAA,CAAM,SAAS,QAAS,CAAA,OAAO,CAAI,GAAA,OAAA,GAAU,MAC/C,CAAA,CAAA;AAEA,IAAM,MAAA,gBAAA,GAAmB,SAAS,MAChC,KAAA,CAAM,SAAS,UAAW,CAAA,KAAK,CAAI,GAAA,KAAA,GAAQ,QAC7C,CAAA,CAAA;AAEA,IAAM,MAAA,aAAA,GAAgB,SAAwB,MAAM;AAClD,MAAO,IAAA,EAAA,CAAA;AAAA,MAAA,OACJ;AAAkC,QACnC,CAAA,gBAAc,CAAA,KAAA,GAAwB,CAAA,EAAA,KAAA,CAAA,MAAA,CAAA,EAAA,CAAA;AAAA,QACxC,MAAA,EAAA,CAAA,EAAA,GAAA,KAAA,CAAA,MAAA,KAAA,IAAA,GAAA,EAAA,GAAA,aAAA,CAAA,KAAA;AAAA,OACD,CAAA;AAED,KAAsB,CAAA,CAAA;AACpB,IAAI,SAAA;AACF,MAAA,IAAA,KAAA,CAAA,QAAA,GAAA,CAAA,EAAA;AAAC,QAAC,CAAE;AACF,QAAA,CAAA,EAAA,IAAY,EAAA,KAAA,EAAA,GAAA,YAAA,CAAA,MAAA;AAAO,UAAM,IAAA,OAAA,CAAA,KAAA;AAAA,iBAClB,EAAQ,CAAA;AAAA,SACnB,EAAA,KAAA,CAAA,QAAA,CAAA,EAAA;AAAA,OACF;AAEA,KAAsB;AACpB,IAAQ,SAAA,UAAA,GAAA;AAAA,MACV,KAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,KAAA,EAAA,CAAA;AAEA,KAAiB;AACf,IAAA,SAAA,KAAgB,GAAA;AAAA,MAClB,OAAA,CAAA,KAAA,GAAA,KAAA,CAAA;AAEA,KAAA;AACE,IAAA,SAAa,SAAA,CAAA,EAAA,IAAA,EAAqB,EAAA;AAChC,MAAW,IAAA,IAAA,KAAA,UAAA,CAAA,MAAA,IAAA,IAAA,KAAA,UAAA,CAAA,SAAA,EAAA;AAAA,QACb,UAAoB,EAAA,CAAA;AAElB,OAAA,cAAmB,KAAA,UAAA,CAAA,GAAA,EAAA;AACjB,QAAM,IAAA,OAAA,CAAA,KAAA,EAAA;AAAA,UACR,KAAA,EAAA,CAAA;AAAA,SACK;AACL,OAAW,MAAA;AAAA,QACb,UAAA,EAAA,CAAA;AAAA,OACF;AAGA,KAAA;AACE,IAAW,SAAA,CAAA,MAAA;AACX,MAAW,UAAA,EAAA,CAAA;AACX,MAAA,UAAgB,EAAA,CAAA;AAAA,MACjB,OAAA,CAAA,KAAA,GAAA,IAAA,CAAA;AAED,KAAiB,CAAA,CAAA;AAEjB,IAAa,gBAAA,CAAA,QAAA,EAAA,SAAA,EAAA,SAAA,CAAA,CAAA;AAAA,IACX,MAAA,CAAA;AAAA,MAEA,OAAA;AAAA,MACD,KAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"notification2.mjs","sources":["../../../../../../packages/components/notification/src/notification.ts"],"sourcesContent":["import { buildProps, definePropType, iconPropType } from '@element-plus/utils'\n\nimport type { ExtractPropTypes, VNode } from 'vue'\nimport type Notification from './notification.vue'\n\nexport const notificationTypes = [\n 'success',\n 'info',\n 'warning',\n 'error',\n] as const\n\nexport const notificationProps = buildProps({\n /**\n * @description custom class name for Notification\n */\n customClass: {\n type: String,\n default: '',\n },\n /**\n * @description whether `message` is treated as HTML string\n */\n dangerouslyUseHTMLString: {\n type: Boolean,\n default: false,\n },\n /**\n * @description duration before close. It will not automatically close if set 0\n */\n duration: {\n type: Number,\n default: 4500,\n },\n /**\n * @description custom icon component. It will be overridden by `type`\n */\n icon: {\n type: iconPropType,\n },\n /**\n * @description notification dom id\n */\n id: {\n type: String,\n default: '',\n },\n /**\n * @description description text\n */\n message: {\n type: definePropType<string | VNode>([String, Object]),\n default: '',\n },\n /**\n * @description offset from the top edge of the screen. Every Notification instance of the same moment should have the same offset\n */\n offset: {\n type: Number,\n default: 0,\n },\n /**\n * @description callback function when notification clicked\n */\n onClick: {\n type: definePropType<() => void>(Function),\n default: () => undefined,\n },\n /**\n * @description callback function when closed\n */\n onClose: {\n type: definePropType<() => void>(Function),\n required: true,\n },\n /**\n * @description custom position\n */\n position: {\n type: String,\n values: ['top-right', 'top-left', 'bottom-right', 'bottom-left'],\n default: 'top-right',\n },\n /**\n * @description whether to show a close button\n */\n showClose: {\n type: Boolean,\n default: true,\n },\n /**\n * @description title\n */\n title: {\n type: String,\n default: '',\n },\n /**\n * @description notification type\n */\n type: {\n type: String,\n values: [...notificationTypes, ''],\n default: '',\n },\n /**\n * @description initial zIndex\n */\n zIndex: Number,\n} as const)\nexport type NotificationProps = ExtractPropTypes<typeof notificationProps>\n\nexport const notificationEmits = {\n destroy: () => true,\n}\nexport type NotificationEmits = typeof notificationEmits\n\nexport type NotificationInstance = InstanceType<typeof Notification>\n\nexport type NotificationOptions = Omit<NotificationProps, 'id'> & {\n /**\n * @description set the root element for the notification, default to `document.body`\n */\n appendTo?: HTMLElement | string\n}\nexport type NotificationOptionsTyped = Omit<NotificationOptions, 'type'>\n\nexport interface NotificationHandle {\n close: () => void\n}\n\nexport type NotificationParams = Partial<NotificationOptions> | string | VNode\nexport type NotificationParamsTyped =\n | Partial<NotificationOptionsTyped>\n | string\n | VNode\n\nexport type NotifyFn = ((\n options?: NotificationParams\n) => NotificationHandle) & { closeAll: () => void }\n\nexport type NotifyTypedFn = (\n options?: NotificationParamsTyped\n) => NotificationHandle\n\nexport interface Notify extends NotifyFn {\n success: NotifyTypedFn\n warning: NotifyTypedFn\n error: NotifyTypedFn\n info: NotifyTypedFn\n}\n\nexport interface NotificationQueueItem {\n vm: VNode\n}\n\nexport type NotificationQueue = NotificationQueueItem[]\n"],"names":[],"mappings":";;;;AACY,MAAC,iBAAiB,GAAG;AACjC,EAAE,SAAS;AACX,EAAE,MAAM;AACR,EAAE,SAAS;AACX,EAAE,OAAO;AACT,EAAE;AACU,MAAC,iBAAiB,GAAG,UAAU,CAAC;AAC5C,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,wBAAwB,EAAE;AAC5B,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,YAAY;AACtB,GAAG;AACH,EAAE,EAAE,EAAE;AACN,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,OAAO,EAAE;AACX,IAAI,IAAI,EAAE,cAAc,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAC1C,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,CAAC;AACd,GAAG;AACH,EAAE,OAAO,EAAE;AACX,IAAI,IAAI,EAAE,cAAc,CAAC,QAAQ,CAAC;AAClC,IAAI,OAAO,EAAE,MAAM,KAAK,CAAC;AACzB,GAAG;AACH,EAAE,OAAO,EAAE;AACX,IAAI,IAAI,EAAE,cAAc,CAAC,QAAQ,CAAC;AAClC,IAAI,QAAQ,EAAE,IAAI;AAClB,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,CAAC,WAAW,EAAE,UAAU,EAAE,cAAc,EAAE,aAAa,CAAC;AACpE,IAAI,OAAO,EAAE,WAAW;AACxB,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,CAAC,GAAG,iBAAiB,EAAE,EAAE,CAAC;AACtC,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,MAAM,EAAE,MAAM;AAChB,CAAC,EAAE;AACS,MAAC,iBAAiB,GAAG;AACjC,EAAE,OAAO,EAAE,MAAM,IAAI;AACrB;;;;"}
@@ -1,7 +1,7 @@
1
1
  import { isVNode, createVNode, render } from 'vue';
2
2
  import '../../../utils/index.mjs';
3
- import NotificationConstructor from './notification2.mjs';
4
- import { notificationTypes } from './notification.mjs';
3
+ import NotificationConstructor from './notification.mjs';
4
+ import { notificationTypes } from './notification2.mjs';
5
5
  import { isClient } from '@vueuse/core';
6
6
  import { isElement } from '../../../utils/types.mjs';
7
7
  import { isString } from '@vue/shared';
package/es/index.mjs CHANGED
@@ -79,7 +79,7 @@ export { DROPDOWN_INJECTION_KEY } from './components/dropdown/src/tokens.mjs';
79
79
  export { ElDropdown, ElDropdownItem, ElDropdownMenu } from './components/dropdown/index.mjs';
80
80
  export { emptyProps } from './components/empty/src/empty.mjs';
81
81
  export { ElEmpty } from './components/empty/index.mjs';
82
- export { formEmits, formProps } from './components/form/src/form.mjs';
82
+ export { formEmits, formProps } from './components/form/src/form2.mjs';
83
83
  export { formItemProps, formItemValidateStates } from './components/form/src/form-item.mjs';
84
84
  export { formContextKey, formItemContextKey } from './components/form/src/constants.mjs';
85
85
  export { useDisabled, useFormDisabled, useFormSize, useSize } from './components/form/src/hooks/use-form-common-props.mjs';
@@ -214,7 +214,7 @@ export { Loading as ElLoadingService } from './components/loading/src/service.mj
214
214
  export { messageDefaults, messageEmits, messageProps, messageTypes } from './components/message/src/message.mjs';
215
215
  export { ElMessage } from './components/message/index.mjs';
216
216
  export { ElMessageBox } from './components/message-box/index.mjs';
217
- export { notificationEmits, notificationProps, notificationTypes } from './components/notification/src/notification.mjs';
217
+ export { notificationEmits, notificationProps, notificationTypes } from './components/notification/src/notification2.mjs';
218
218
  export { ElNotification } from './components/notification/index.mjs';
219
219
  export { popoverEmits, popoverProps } from './components/popover/src/popover.mjs';
220
220
  export { ElPopover, ElPopoverDirective } from './components/popover/index.mjs';
package/es/version.d.ts CHANGED
@@ -1 +1 @@
1
- export declare const version = "0.0.20230722";
1
+ export declare const version = "0.0.20230723";
package/es/version.mjs CHANGED
@@ -1,4 +1,4 @@
1
- const version = "0.0.20230722";
1
+ const version = "0.0.20230723";
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.20230722'\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.20230723'\n"],"names":[],"mappings":"AAAY,MAAC,OAAO,GAAG;;;;"}
@@ -8704,6 +8704,7 @@ declare const _Cascader: SFCWithInstall<import("vue").DefineComponent<{
8704
8704
  handleBlur: (e: FocusEvent) => void;
8705
8705
  handleFilter: import("lodash").DebouncedFunc<() => void>;
8706
8706
  handleInput: (val: string, e?: KeyboardEvent | undefined) => void;
8707
+ getInputInnerHeight: (inputInner: HTMLElement) => number;
8707
8708
  ElCascaderPanel: SFCWithInstall<import("vue").DefineComponent<{
8708
8709
  border: {
8709
8710
  type: BooleanConstructor;
@@ -22074,6 +22075,7 @@ export declare const ElCascader: SFCWithInstall<import("vue").DefineComponent<{
22074
22075
  handleBlur: (e: FocusEvent) => void;
22075
22076
  handleFilter: import("lodash").DebouncedFunc<() => void>;
22076
22077
  handleInput: (val: string, e?: KeyboardEvent | undefined) => void;
22078
+ getInputInnerHeight: (inputInner: HTMLElement) => number;
22077
22079
  ElCascaderPanel: SFCWithInstall<import("vue").DefineComponent<{
22078
22080
  border: {
22079
22081
  type: BooleanConstructor;
@@ -8707,6 +8707,7 @@ declare const _default: import("vue").DefineComponent<{
8707
8707
  handleBlur: (e: FocusEvent) => void;
8708
8708
  handleFilter: import("lodash").DebouncedFunc<() => void>;
8709
8709
  handleInput: (val: string, e?: KeyboardEvent | undefined) => void;
8710
+ getInputInnerHeight: (inputInner: HTMLElement) => number;
8710
8711
  ElCascaderPanel: import("element-plus/es/utils").SFCWithInstall<import("vue").DefineComponent<{
8711
8712
  border: {
8712
8713
  type: BooleanConstructor;