@element-plus/nightly 0.0.20241117 → 0.0.20241118

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 (362) hide show
  1. package/dist/index.full.js +2 -2
  2. package/dist/index.full.min.js +2 -2
  3. package/dist/index.full.min.js.map +1 -1
  4. package/dist/index.full.min.mjs +2 -2
  5. package/dist/index.full.min.mjs.map +1 -1
  6. package/dist/index.full.mjs +2 -2
  7. package/dist/locale/af.js +1 -1
  8. package/dist/locale/af.min.js +1 -1
  9. package/dist/locale/af.min.mjs +1 -1
  10. package/dist/locale/af.mjs +1 -1
  11. package/dist/locale/ar-eg.js +1 -1
  12. package/dist/locale/ar-eg.min.js +1 -1
  13. package/dist/locale/ar-eg.min.mjs +1 -1
  14. package/dist/locale/ar-eg.mjs +1 -1
  15. package/dist/locale/ar.js +1 -1
  16. package/dist/locale/ar.min.js +1 -1
  17. package/dist/locale/ar.min.mjs +1 -1
  18. package/dist/locale/ar.mjs +1 -1
  19. package/dist/locale/az.js +1 -1
  20. package/dist/locale/az.min.js +1 -1
  21. package/dist/locale/az.min.mjs +1 -1
  22. package/dist/locale/az.mjs +1 -1
  23. package/dist/locale/bg.js +1 -1
  24. package/dist/locale/bg.min.js +1 -1
  25. package/dist/locale/bg.min.mjs +1 -1
  26. package/dist/locale/bg.mjs +1 -1
  27. package/dist/locale/bn.js +1 -1
  28. package/dist/locale/bn.min.js +1 -1
  29. package/dist/locale/bn.min.mjs +1 -1
  30. package/dist/locale/bn.mjs +1 -1
  31. package/dist/locale/ca.js +1 -1
  32. package/dist/locale/ca.min.js +1 -1
  33. package/dist/locale/ca.min.mjs +1 -1
  34. package/dist/locale/ca.mjs +1 -1
  35. package/dist/locale/ckb.js +1 -1
  36. package/dist/locale/ckb.min.js +1 -1
  37. package/dist/locale/ckb.min.mjs +1 -1
  38. package/dist/locale/ckb.mjs +1 -1
  39. package/dist/locale/cs.js +1 -1
  40. package/dist/locale/cs.min.js +1 -1
  41. package/dist/locale/cs.min.mjs +1 -1
  42. package/dist/locale/cs.mjs +1 -1
  43. package/dist/locale/da.js +1 -1
  44. package/dist/locale/da.min.js +1 -1
  45. package/dist/locale/da.min.mjs +1 -1
  46. package/dist/locale/da.mjs +1 -1
  47. package/dist/locale/de.js +1 -1
  48. package/dist/locale/de.min.js +1 -1
  49. package/dist/locale/de.min.mjs +1 -1
  50. package/dist/locale/de.mjs +1 -1
  51. package/dist/locale/el.js +1 -1
  52. package/dist/locale/el.min.js +1 -1
  53. package/dist/locale/el.min.mjs +1 -1
  54. package/dist/locale/el.mjs +1 -1
  55. package/dist/locale/en.js +1 -1
  56. package/dist/locale/en.min.js +1 -1
  57. package/dist/locale/en.min.mjs +1 -1
  58. package/dist/locale/en.mjs +1 -1
  59. package/dist/locale/eo.js +1 -1
  60. package/dist/locale/eo.min.js +1 -1
  61. package/dist/locale/eo.min.mjs +1 -1
  62. package/dist/locale/eo.mjs +1 -1
  63. package/dist/locale/es.js +1 -1
  64. package/dist/locale/es.min.js +1 -1
  65. package/dist/locale/es.min.mjs +1 -1
  66. package/dist/locale/es.mjs +1 -1
  67. package/dist/locale/et.js +1 -1
  68. package/dist/locale/et.min.js +1 -1
  69. package/dist/locale/et.min.mjs +1 -1
  70. package/dist/locale/et.mjs +1 -1
  71. package/dist/locale/eu.js +1 -1
  72. package/dist/locale/eu.min.js +1 -1
  73. package/dist/locale/eu.min.mjs +1 -1
  74. package/dist/locale/eu.mjs +1 -1
  75. package/dist/locale/fa.js +1 -1
  76. package/dist/locale/fa.min.js +1 -1
  77. package/dist/locale/fa.min.mjs +1 -1
  78. package/dist/locale/fa.mjs +1 -1
  79. package/dist/locale/fi.js +1 -1
  80. package/dist/locale/fi.min.js +1 -1
  81. package/dist/locale/fi.min.mjs +1 -1
  82. package/dist/locale/fi.mjs +1 -1
  83. package/dist/locale/fr.js +1 -1
  84. package/dist/locale/fr.min.js +1 -1
  85. package/dist/locale/fr.min.mjs +1 -1
  86. package/dist/locale/fr.mjs +1 -1
  87. package/dist/locale/he.js +1 -1
  88. package/dist/locale/he.min.js +1 -1
  89. package/dist/locale/he.min.mjs +1 -1
  90. package/dist/locale/he.mjs +1 -1
  91. package/dist/locale/hr.js +1 -1
  92. package/dist/locale/hr.min.js +1 -1
  93. package/dist/locale/hr.min.mjs +1 -1
  94. package/dist/locale/hr.mjs +1 -1
  95. package/dist/locale/hu.js +1 -1
  96. package/dist/locale/hu.min.js +1 -1
  97. package/dist/locale/hu.min.mjs +1 -1
  98. package/dist/locale/hu.mjs +1 -1
  99. package/dist/locale/hy-am.js +1 -1
  100. package/dist/locale/hy-am.min.js +1 -1
  101. package/dist/locale/hy-am.min.mjs +1 -1
  102. package/dist/locale/hy-am.mjs +1 -1
  103. package/dist/locale/id.js +1 -1
  104. package/dist/locale/id.min.js +1 -1
  105. package/dist/locale/id.min.mjs +1 -1
  106. package/dist/locale/id.mjs +1 -1
  107. package/dist/locale/it.js +1 -1
  108. package/dist/locale/it.min.js +1 -1
  109. package/dist/locale/it.min.mjs +1 -1
  110. package/dist/locale/it.mjs +1 -1
  111. package/dist/locale/ja.js +1 -1
  112. package/dist/locale/ja.min.js +1 -1
  113. package/dist/locale/ja.min.mjs +1 -1
  114. package/dist/locale/ja.mjs +1 -1
  115. package/dist/locale/kk.js +1 -1
  116. package/dist/locale/kk.min.js +1 -1
  117. package/dist/locale/kk.min.mjs +1 -1
  118. package/dist/locale/kk.mjs +1 -1
  119. package/dist/locale/km.js +1 -1
  120. package/dist/locale/km.min.js +1 -1
  121. package/dist/locale/km.min.mjs +1 -1
  122. package/dist/locale/km.mjs +1 -1
  123. package/dist/locale/ko.js +1 -1
  124. package/dist/locale/ko.min.js +1 -1
  125. package/dist/locale/ko.min.mjs +1 -1
  126. package/dist/locale/ko.mjs +1 -1
  127. package/dist/locale/ku.js +1 -1
  128. package/dist/locale/ku.min.js +1 -1
  129. package/dist/locale/ku.min.mjs +1 -1
  130. package/dist/locale/ku.mjs +1 -1
  131. package/dist/locale/ky.js +1 -1
  132. package/dist/locale/ky.min.js +1 -1
  133. package/dist/locale/ky.min.mjs +1 -1
  134. package/dist/locale/ky.mjs +1 -1
  135. package/dist/locale/lt.js +1 -1
  136. package/dist/locale/lt.min.js +1 -1
  137. package/dist/locale/lt.min.mjs +1 -1
  138. package/dist/locale/lt.mjs +1 -1
  139. package/dist/locale/lv.js +1 -1
  140. package/dist/locale/lv.min.js +1 -1
  141. package/dist/locale/lv.min.mjs +1 -1
  142. package/dist/locale/lv.mjs +1 -1
  143. package/dist/locale/mg.js +1 -1
  144. package/dist/locale/mg.min.js +1 -1
  145. package/dist/locale/mg.min.mjs +1 -1
  146. package/dist/locale/mg.mjs +1 -1
  147. package/dist/locale/mn.js +1 -1
  148. package/dist/locale/mn.min.js +1 -1
  149. package/dist/locale/mn.min.mjs +1 -1
  150. package/dist/locale/mn.mjs +1 -1
  151. package/dist/locale/my.js +1 -1
  152. package/dist/locale/my.min.js +1 -1
  153. package/dist/locale/my.min.mjs +1 -1
  154. package/dist/locale/my.mjs +1 -1
  155. package/dist/locale/nb-no.js +1 -1
  156. package/dist/locale/nb-no.min.js +1 -1
  157. package/dist/locale/nb-no.min.mjs +1 -1
  158. package/dist/locale/nb-no.mjs +1 -1
  159. package/dist/locale/nl.js +1 -1
  160. package/dist/locale/nl.min.js +1 -1
  161. package/dist/locale/nl.min.mjs +1 -1
  162. package/dist/locale/nl.mjs +1 -1
  163. package/dist/locale/pa.js +1 -1
  164. package/dist/locale/pa.min.js +1 -1
  165. package/dist/locale/pa.min.mjs +1 -1
  166. package/dist/locale/pa.mjs +1 -1
  167. package/dist/locale/pl.js +1 -1
  168. package/dist/locale/pl.min.js +1 -1
  169. package/dist/locale/pl.min.mjs +1 -1
  170. package/dist/locale/pl.mjs +1 -1
  171. package/dist/locale/pt-br.js +1 -1
  172. package/dist/locale/pt-br.min.js +1 -1
  173. package/dist/locale/pt-br.min.mjs +1 -1
  174. package/dist/locale/pt-br.mjs +1 -1
  175. package/dist/locale/pt.js +1 -1
  176. package/dist/locale/pt.min.js +1 -1
  177. package/dist/locale/pt.min.mjs +1 -1
  178. package/dist/locale/pt.mjs +1 -1
  179. package/dist/locale/ro.js +1 -1
  180. package/dist/locale/ro.min.js +1 -1
  181. package/dist/locale/ro.min.mjs +1 -1
  182. package/dist/locale/ro.mjs +1 -1
  183. package/dist/locale/ru.js +1 -1
  184. package/dist/locale/ru.min.js +1 -1
  185. package/dist/locale/ru.min.mjs +1 -1
  186. package/dist/locale/ru.mjs +1 -1
  187. package/dist/locale/sk.js +1 -1
  188. package/dist/locale/sk.min.js +1 -1
  189. package/dist/locale/sk.min.mjs +1 -1
  190. package/dist/locale/sk.mjs +1 -1
  191. package/dist/locale/sl.js +1 -1
  192. package/dist/locale/sl.min.js +1 -1
  193. package/dist/locale/sl.min.mjs +1 -1
  194. package/dist/locale/sl.mjs +1 -1
  195. package/dist/locale/sr.js +1 -1
  196. package/dist/locale/sr.min.js +1 -1
  197. package/dist/locale/sr.min.mjs +1 -1
  198. package/dist/locale/sr.mjs +1 -1
  199. package/dist/locale/sv.js +1 -1
  200. package/dist/locale/sv.min.js +1 -1
  201. package/dist/locale/sv.min.mjs +1 -1
  202. package/dist/locale/sv.mjs +1 -1
  203. package/dist/locale/sw.js +1 -1
  204. package/dist/locale/sw.min.js +1 -1
  205. package/dist/locale/sw.min.mjs +1 -1
  206. package/dist/locale/sw.mjs +1 -1
  207. package/dist/locale/ta.js +1 -1
  208. package/dist/locale/ta.min.js +1 -1
  209. package/dist/locale/ta.min.mjs +1 -1
  210. package/dist/locale/ta.mjs +1 -1
  211. package/dist/locale/th.js +1 -1
  212. package/dist/locale/th.min.js +1 -1
  213. package/dist/locale/th.min.mjs +1 -1
  214. package/dist/locale/th.mjs +1 -1
  215. package/dist/locale/tk.js +1 -1
  216. package/dist/locale/tk.min.js +1 -1
  217. package/dist/locale/tk.min.mjs +1 -1
  218. package/dist/locale/tk.mjs +1 -1
  219. package/dist/locale/tr.js +1 -1
  220. package/dist/locale/tr.min.js +1 -1
  221. package/dist/locale/tr.min.mjs +1 -1
  222. package/dist/locale/tr.mjs +1 -1
  223. package/dist/locale/ug-cn.js +1 -1
  224. package/dist/locale/ug-cn.min.js +1 -1
  225. package/dist/locale/ug-cn.min.mjs +1 -1
  226. package/dist/locale/ug-cn.mjs +1 -1
  227. package/dist/locale/uk.js +1 -1
  228. package/dist/locale/uk.min.js +1 -1
  229. package/dist/locale/uk.min.mjs +1 -1
  230. package/dist/locale/uk.mjs +1 -1
  231. package/dist/locale/uz-uz.js +1 -1
  232. package/dist/locale/uz-uz.min.js +1 -1
  233. package/dist/locale/uz-uz.min.mjs +1 -1
  234. package/dist/locale/uz-uz.mjs +1 -1
  235. package/dist/locale/vi.js +1 -1
  236. package/dist/locale/vi.min.js +1 -1
  237. package/dist/locale/vi.min.mjs +1 -1
  238. package/dist/locale/vi.mjs +1 -1
  239. package/dist/locale/zh-cn.js +1 -1
  240. package/dist/locale/zh-cn.min.js +1 -1
  241. package/dist/locale/zh-cn.min.mjs +1 -1
  242. package/dist/locale/zh-cn.mjs +1 -1
  243. package/dist/locale/zh-tw.js +1 -1
  244. package/dist/locale/zh-tw.min.js +1 -1
  245. package/dist/locale/zh-tw.min.mjs +1 -1
  246. package/dist/locale/zh-tw.mjs +1 -1
  247. package/es/components/col/index.mjs +2 -2
  248. package/es/components/col/src/col.mjs +43 -66
  249. package/es/components/col/src/col.mjs.map +1 -1
  250. package/es/components/col/src/col2.mjs +66 -43
  251. package/es/components/col/src/col2.mjs.map +1 -1
  252. package/es/components/dialog/src/dialog-content.mjs +89 -26
  253. package/es/components/dialog/src/dialog-content.mjs.map +1 -1
  254. package/es/components/dialog/src/dialog-content2.mjs +26 -89
  255. package/es/components/dialog/src/dialog-content2.mjs.map +1 -1
  256. package/es/components/dialog/src/dialog.mjs +1 -1
  257. package/es/components/dialog/src/dialog2.mjs +1 -1
  258. package/es/components/index.mjs +8 -8
  259. package/es/components/notification/index.mjs +1 -1
  260. package/es/components/notification/src/notification.mjs +64 -145
  261. package/es/components/notification/src/notification.mjs.map +1 -1
  262. package/es/components/notification/src/notification2.mjs +145 -64
  263. package/es/components/notification/src/notification2.mjs.map +1 -1
  264. package/es/components/notification/src/notify.mjs +2 -2
  265. package/es/components/popper/index.mjs +2 -2
  266. package/es/components/popper/src/trigger.mjs +31 -132
  267. package/es/components/popper/src/trigger.mjs.map +1 -1
  268. package/es/components/popper/src/trigger2.mjs +132 -31
  269. package/es/components/popper/src/trigger2.mjs.map +1 -1
  270. package/es/components/progress/index.mjs +2 -2
  271. package/es/components/progress/src/progress.mjs +53 -208
  272. package/es/components/progress/src/progress.mjs.map +1 -1
  273. package/es/components/progress/src/progress2.mjs +208 -53
  274. package/es/components/progress/src/progress2.mjs.map +1 -1
  275. package/es/components/row/index.mjs +2 -2
  276. package/es/components/row/src/row.mjs +45 -29
  277. package/es/components/row/src/row.mjs.map +1 -1
  278. package/es/components/row/src/row2.mjs +29 -45
  279. package/es/components/row/src/row2.mjs.map +1 -1
  280. package/es/components/select/index.mjs +1 -1
  281. package/es/components/select/src/select.mjs +112 -421
  282. package/es/components/select/src/select.mjs.map +1 -1
  283. package/es/components/select/src/select2.mjs +421 -112
  284. package/es/components/select/src/select2.mjs.map +1 -1
  285. package/es/components/slider/index.mjs +2 -2
  286. package/es/components/slider/src/slider.mjs +90 -240
  287. package/es/components/slider/src/slider.mjs.map +1 -1
  288. package/es/components/slider/src/slider2.mjs +240 -90
  289. package/es/components/slider/src/slider2.mjs.map +1 -1
  290. package/es/components/tooltip/src/trigger.mjs +1 -1
  291. package/es/components/tooltip/src/trigger2.mjs +1 -1
  292. package/es/components/tour/index.mjs +1 -1
  293. package/es/components/tour/src/content.mjs +44 -68
  294. package/es/components/tour/src/content.mjs.map +1 -1
  295. package/es/components/tour/src/content2.mjs +68 -44
  296. package/es/components/tour/src/content2.mjs.map +1 -1
  297. package/es/components/tour/src/step.mjs +1 -1
  298. package/es/components/tour/src/tour.mjs +1 -1
  299. package/es/components/tour/src/tour2.mjs +1 -1
  300. package/es/index.mjs +8 -8
  301. package/es/version.d.ts +1 -1
  302. package/es/version.mjs +1 -1
  303. package/es/version.mjs.map +1 -1
  304. package/lib/components/col/index.js +2 -2
  305. package/lib/components/col/src/col.js +43 -66
  306. package/lib/components/col/src/col.js.map +1 -1
  307. package/lib/components/col/src/col2.js +66 -43
  308. package/lib/components/col/src/col2.js.map +1 -1
  309. package/lib/components/dialog/src/dialog-content.js +88 -26
  310. package/lib/components/dialog/src/dialog-content.js.map +1 -1
  311. package/lib/components/dialog/src/dialog-content2.js +26 -88
  312. package/lib/components/dialog/src/dialog-content2.js.map +1 -1
  313. package/lib/components/dialog/src/dialog.js +1 -1
  314. package/lib/components/dialog/src/dialog2.js +1 -1
  315. package/lib/components/index.js +8 -8
  316. package/lib/components/notification/index.js +1 -1
  317. package/lib/components/notification/src/notification.js +65 -144
  318. package/lib/components/notification/src/notification.js.map +1 -1
  319. package/lib/components/notification/src/notification2.js +144 -65
  320. package/lib/components/notification/src/notification2.js.map +1 -1
  321. package/lib/components/notification/src/notify.js +2 -2
  322. package/lib/components/popper/index.js +2 -2
  323. package/lib/components/popper/src/trigger.js +32 -132
  324. package/lib/components/popper/src/trigger.js.map +1 -1
  325. package/lib/components/popper/src/trigger2.js +132 -32
  326. package/lib/components/popper/src/trigger2.js.map +1 -1
  327. package/lib/components/progress/index.js +2 -2
  328. package/lib/components/progress/src/progress.js +53 -208
  329. package/lib/components/progress/src/progress.js.map +1 -1
  330. package/lib/components/progress/src/progress2.js +208 -53
  331. package/lib/components/progress/src/progress2.js.map +1 -1
  332. package/lib/components/row/index.js +2 -2
  333. package/lib/components/row/src/row.js +45 -31
  334. package/lib/components/row/src/row.js.map +1 -1
  335. package/lib/components/row/src/row2.js +31 -45
  336. package/lib/components/row/src/row2.js.map +1 -1
  337. package/lib/components/select/index.js +1 -1
  338. package/lib/components/select/src/select.js +112 -421
  339. package/lib/components/select/src/select.js.map +1 -1
  340. package/lib/components/select/src/select2.js +421 -112
  341. package/lib/components/select/src/select2.js.map +1 -1
  342. package/lib/components/slider/index.js +2 -2
  343. package/lib/components/slider/src/slider.js +91 -240
  344. package/lib/components/slider/src/slider.js.map +1 -1
  345. package/lib/components/slider/src/slider2.js +240 -91
  346. package/lib/components/slider/src/slider2.js.map +1 -1
  347. package/lib/components/tooltip/src/trigger.js +1 -1
  348. package/lib/components/tooltip/src/trigger2.js +1 -1
  349. package/lib/components/tour/index.js +1 -1
  350. package/lib/components/tour/src/content.js +47 -68
  351. package/lib/components/tour/src/content.js.map +1 -1
  352. package/lib/components/tour/src/content2.js +68 -47
  353. package/lib/components/tour/src/content2.js.map +1 -1
  354. package/lib/components/tour/src/step.js +1 -1
  355. package/lib/components/tour/src/tour.js +1 -1
  356. package/lib/components/tour/src/tour2.js +1 -1
  357. package/lib/index.js +8 -8
  358. package/lib/version.d.ts +1 -1
  359. package/lib/version.js +1 -1
  360. package/lib/version.js.map +1 -1
  361. package/package.json +2 -2
  362. package/web-types.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"notification.js","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":["useGlobalComponentSettings","CloseComponents","ref","computed","TypeComponentsMap","useTimeoutFn","EVENT_CODE","onMounted","useEventListener","_openBlock","_createBlock","_Transition"],"mappings":"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"}
1
+ {"version":3,"file":"notification.js","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: Boolean,\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":["buildProps","iconPropType","definePropType"],"mappings":";;;;;;;;AACY,MAAC,iBAAiB,GAAG;AACjC,EAAE,SAAS;AACX,EAAE,MAAM;AACR,EAAE,SAAS;AACX,EAAE,OAAO;AACT,EAAE;AACU,MAAC,iBAAiB,GAAGA,kBAAU,CAAC;AAC5C,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,wBAAwB,EAAE,OAAO;AACnC,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAEC,iBAAY;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,EAAEC,sBAAc,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,EAAEA,sBAAc,CAAC,QAAQ,CAAC;AAClC,IAAI,OAAO,EAAE,MAAM,KAAK,CAAC;AACzB,GAAG;AACH,EAAE,OAAO,EAAE;AACX,IAAI,IAAI,EAAEA,sBAAc,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;;;;;;"}
@@ -2,74 +2,153 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
+ var vue = require('vue');
6
+ var core = require('@vueuse/core');
5
7
  require('../../../utils/index.js');
6
- var runtime = require('../../../utils/vue/props/runtime.js');
8
+ require('../../../constants/index.js');
9
+ var index = require('../../icon/index.js');
10
+ require('../../config-provider/index.js');
11
+ var notification = require('./notification.js');
12
+ var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
13
+ var useGlobalConfig = require('../../config-provider/src/hooks/use-global-config.js');
7
14
  var icon = require('../../../utils/vue/icon.js');
15
+ var aria = require('../../../constants/aria.js');
8
16
 
9
- const notificationTypes = [
10
- "success",
11
- "info",
12
- "warning",
13
- "error"
14
- ];
15
- const notificationProps = runtime.buildProps({
16
- customClass: {
17
- type: String,
18
- default: ""
19
- },
20
- dangerouslyUseHTMLString: Boolean,
21
- duration: {
22
- type: Number,
23
- default: 4500
24
- },
25
- icon: {
26
- type: icon.iconPropType
27
- },
28
- id: {
29
- type: String,
30
- default: ""
31
- },
32
- message: {
33
- type: runtime.definePropType([String, Object]),
34
- default: ""
35
- },
36
- offset: {
37
- type: Number,
38
- default: 0
39
- },
40
- onClick: {
41
- type: runtime.definePropType(Function),
42
- default: () => void 0
43
- },
44
- onClose: {
45
- type: runtime.definePropType(Function),
46
- required: true
47
- },
48
- position: {
49
- type: String,
50
- values: ["top-right", "top-left", "bottom-right", "bottom-left"],
51
- default: "top-right"
52
- },
53
- showClose: {
54
- type: Boolean,
55
- default: true
56
- },
57
- title: {
58
- type: String,
59
- default: ""
60
- },
61
- type: {
62
- type: String,
63
- values: [...notificationTypes, ""],
64
- default: ""
65
- },
66
- zIndex: Number
17
+ const __default__ = vue.defineComponent({
18
+ name: "ElNotification"
67
19
  });
68
- const notificationEmits = {
69
- destroy: () => true
70
- };
20
+ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
21
+ ...__default__,
22
+ props: notification.notificationProps,
23
+ emits: notification.notificationEmits,
24
+ setup(__props, { expose }) {
25
+ const props = __props;
26
+ const { ns, zIndex } = useGlobalConfig.useGlobalComponentSettings("notification");
27
+ const { nextZIndex, currentZIndex } = zIndex;
28
+ const { Close } = icon.CloseComponents;
29
+ const visible = vue.ref(false);
30
+ let timer = void 0;
31
+ const typeClass = vue.computed(() => {
32
+ const type = props.type;
33
+ return type && icon.TypeComponentsMap[props.type] ? ns.m(type) : "";
34
+ });
35
+ const iconComponent = vue.computed(() => {
36
+ if (!props.type)
37
+ return props.icon;
38
+ return icon.TypeComponentsMap[props.type] || props.icon;
39
+ });
40
+ const horizontalClass = vue.computed(() => props.position.endsWith("right") ? "right" : "left");
41
+ const verticalProperty = vue.computed(() => props.position.startsWith("top") ? "top" : "bottom");
42
+ const positionStyle = vue.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 } = core.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 === aria.EVENT_CODE.delete || code === aria.EVENT_CODE.backspace) {
66
+ clearTimer();
67
+ } else if (code === aria.EVENT_CODE.esc) {
68
+ if (visible.value) {
69
+ close();
70
+ }
71
+ } else {
72
+ startTimer();
73
+ }
74
+ }
75
+ vue.onMounted(() => {
76
+ startTimer();
77
+ nextZIndex();
78
+ visible.value = true;
79
+ });
80
+ core.useEventListener(document, "keydown", onKeydown);
81
+ expose({
82
+ visible,
83
+ close
84
+ });
85
+ return (_ctx, _cache) => {
86
+ return vue.openBlock(), vue.createBlock(vue.Transition, {
87
+ name: vue.unref(ns).b("fade"),
88
+ onBeforeLeave: _ctx.onClose,
89
+ onAfterLeave: ($event) => _ctx.$emit("destroy"),
90
+ persisted: ""
91
+ }, {
92
+ default: vue.withCtx(() => [
93
+ vue.withDirectives(vue.createElementVNode("div", {
94
+ id: _ctx.id,
95
+ class: vue.normalizeClass([vue.unref(ns).b(), _ctx.customClass, vue.unref(horizontalClass)]),
96
+ style: vue.normalizeStyle(vue.unref(positionStyle)),
97
+ role: "alert",
98
+ onMouseenter: clearTimer,
99
+ onMouseleave: startTimer,
100
+ onClick: _ctx.onClick
101
+ }, [
102
+ vue.unref(iconComponent) ? (vue.openBlock(), vue.createBlock(vue.unref(index.ElIcon), {
103
+ key: 0,
104
+ class: vue.normalizeClass([vue.unref(ns).e("icon"), vue.unref(typeClass)])
105
+ }, {
106
+ default: vue.withCtx(() => [
107
+ (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(vue.unref(iconComponent))))
108
+ ]),
109
+ _: 1
110
+ }, 8, ["class"])) : vue.createCommentVNode("v-if", true),
111
+ vue.createElementVNode("div", {
112
+ class: vue.normalizeClass(vue.unref(ns).e("group"))
113
+ }, [
114
+ vue.createElementVNode("h2", {
115
+ class: vue.normalizeClass(vue.unref(ns).e("title")),
116
+ textContent: vue.toDisplayString(_ctx.title)
117
+ }, null, 10, ["textContent"]),
118
+ vue.withDirectives(vue.createElementVNode("div", {
119
+ class: vue.normalizeClass(vue.unref(ns).e("content")),
120
+ style: vue.normalizeStyle(!!_ctx.title ? void 0 : { margin: 0 })
121
+ }, [
122
+ vue.renderSlot(_ctx.$slots, "default", {}, () => [
123
+ !_ctx.dangerouslyUseHTMLString ? (vue.openBlock(), vue.createElementBlock("p", { key: 0 }, vue.toDisplayString(_ctx.message), 1)) : (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 1 }, [
124
+ vue.createCommentVNode(" Caution here, message could've been compromised, never use user's input as message "),
125
+ vue.createElementVNode("p", { innerHTML: _ctx.message }, null, 8, ["innerHTML"])
126
+ ], 2112))
127
+ ])
128
+ ], 6), [
129
+ [vue.vShow, _ctx.message]
130
+ ]),
131
+ _ctx.showClose ? (vue.openBlock(), vue.createBlock(vue.unref(index.ElIcon), {
132
+ key: 0,
133
+ class: vue.normalizeClass(vue.unref(ns).e("closeBtn")),
134
+ onClick: vue.withModifiers(close, ["stop"])
135
+ }, {
136
+ default: vue.withCtx(() => [
137
+ vue.createVNode(vue.unref(Close))
138
+ ]),
139
+ _: 1
140
+ }, 8, ["class", "onClick"])) : vue.createCommentVNode("v-if", true)
141
+ ], 2)
142
+ ], 46, ["id", "onClick"]), [
143
+ [vue.vShow, visible.value]
144
+ ])
145
+ ]),
146
+ _: 3
147
+ }, 8, ["name", "onBeforeLeave", "onAfterLeave"]);
148
+ };
149
+ }
150
+ });
151
+ var NotificationConstructor = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "notification.vue"]]);
71
152
 
72
- exports.notificationEmits = notificationEmits;
73
- exports.notificationProps = notificationProps;
74
- exports.notificationTypes = notificationTypes;
153
+ exports["default"] = NotificationConstructor;
75
154
  //# sourceMappingURL=notification2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"notification2.js","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: Boolean,\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":["buildProps","iconPropType","definePropType"],"mappings":";;;;;;;;AACY,MAAC,iBAAiB,GAAG;AACjC,EAAE,SAAS;AACX,EAAE,MAAM;AACR,EAAE,SAAS;AACX,EAAE,OAAO;AACT,EAAE;AACU,MAAC,iBAAiB,GAAGA,kBAAU,CAAC;AAC5C,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,wBAAwB,EAAE,OAAO;AACnC,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAEC,iBAAY;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,EAAEC,sBAAc,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,EAAEA,sBAAc,CAAC,QAAQ,CAAC;AAClC,IAAI,OAAO,EAAE,MAAM,KAAK,CAAC;AACzB,GAAG;AACH,EAAE,OAAO,EAAE;AACX,IAAI,IAAI,EAAEA,sBAAc,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":"notification2.js","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":["useGlobalComponentSettings","CloseComponents","ref","computed","TypeComponentsMap","useTimeoutFn","EVENT_CODE","onMounted","useEventListener","_openBlock","_createBlock","_Transition"],"mappings":";;;;;;;;;;;;;;;;uCAkDc,CAAA;AAAA,EACZ,IAAM,EAAA,gBAAA;AACR,CAAA,CAAA,CAAA;;;;;;;AAKA,IAAA,MAAM,EAAE,EAAA,EAAI,MAAO,EAAA,GAAIA,2CAA2B,cAAc,CAAA,CAAA;AAChE,IAAM,MAAA,EAAE,UAAY,EAAA,aAAA,EAAkB,GAAA,MAAA,CAAA;AAEtC,IAAM,MAAA,EAAE,OAAU,GAAAC,oBAAA,CAAA;AAElB,IAAM,MAAA,OAAA,GAAUC,QAAI,KAAK,CAAA,CAAA;AACzB,IAAA,IAAI,KAAkC,GAAA,KAAA,CAAA,CAAA;AAEtC,IAAM,MAAA,SAAA,GAAYC,aAAS,MAAM;AAC/B,MAAA,MAAM,OAAO,KAAM,CAAA,IAAA,CAAA;AACnB,MAAO,OAAA,IAAA,IAAQC,uBAAkB,KAAM,CAAA,IAAI,IAAI,EAAG,CAAA,CAAA,CAAE,IAAI,CAAI,GAAA,EAAA,CAAA;AAAA,KAC7D,CAAA,CAAA;AAED,IAAM,MAAA,aAAA,GAAgBD,aAAS,MAAM;AACnC,MAAA,IAAI,CAAC,KAAA,CAAM,IAAM;AACjB,QAAA,OAAyB,KAAA,CAAA,IAAA,CAAA;AAAqB,MAC/C,OAAAC,sBAAA,CAAA,KAAA,CAAA,IAAA,CAAA,IAAA,KAAA,CAAA,IAAA,CAAA;AAED,KAAA,CAAA,CAAA;AAAwB,IAAA,qBAChB,GAAkBD,YAAA,CAAA,MAAO,KAAc,CAAA,QAAA,CAAA,QAAA,CAAA,OAAA,CAAA,GAAA,OAAA,GAAA,MAAA,CAAA,CAAA;AAAA,IAC/C,MAAA,gBAAA,GAAAA,YAAA,CAAA,MAAA,KAAA,CAAA,QAAA,CAAA,UAAA,CAAA,KAAA,CAAA,GAAA,KAAA,GAAA,QAAA,CAAA,CAAA;AAEA,IAAA,MAAM,aAAmB,GAAAA,YAAA,CAAA,MAAA;AAAA,MAAS,MAChC,CAAM;AAAqC,MAC7C,OAAA;AAEA,QAAM,CAAA,gBAAA,CAAgB,SAAwB,EAAM,KAAA,CAAA,MAAA,CAAA,EAAA,CAAA;AAClD,QAAO,MAAA,EAAA,CAAA,EAAA,GAAA,KAAA,CAAA,MAAA,KAAA,IAAA,GAAA,EAAA,GAAA,aAAA,CAAA,KAAA;AAAA,OAAA,CACL;AAAyC,KACzC,CAAA,CAAA;AAAsC,IACxC,SAAA,UAAA,GAAA;AAAA,MACD,IAAA,KAAA,CAAA,QAAA,GAAA,CAAA,EAAA;AAED,QAAA,CAAA;AACE,QAAI,CAAA,EAAA,IAAA,YAAiBE,iBAAG,CAAA,MAAA;AACtB,UAAA,IAAA,OAAA,CAAA,KAAA;AAAC,YAAG,KAAM,EAAM,CAAA;AACd,SAAI,EAAA,KAAA,CAAA,WAAe;AAAM,OAC3B;AAAiB,KACnB;AAAA,IACF,SAAA,UAAA,GAAA;AAEA,MAAA,KAAA,IAAsB,IAAA,GAAA,KAAA,CAAA,GAAA,KAAA,EAAA,CAAA;AACpB,KAAQ;AAAA,IACV,SAAA,KAAA,GAAA;AAEA,MAAA,OAAS,CAAQ,KAAA,GAAA,KAAA,CAAA;AACf,KAAA;AAAgB,IAClB,SAAA,SAAA,CAAA,EAAA,IAAA,EAAA,EAAA;AAEA,MAAS,IAAA,IAAA,KAAAC,eAAY,CAAK,MAAkB,IAAA,IAAA,KAAAA,eAAA,CAAA,SAAA,EAAA;AAC1C,QAAA,UAAa,EAAA,CAAA;AACX,OAAW,MAAA,IAAA,IAAA,KAAAA,eAAA,CAAA,GAAA,EAAA;AAAA,QACb,IAAA,OAAoB,CAAA,KAAA,EAAA;AAElB,UAAA;AACE,SAAM;AAAA,OACR,MAAA;AAAA,QACK,UAAA,EAAA,CAAA;AACL,OAAW;AAAA,KACb;AAAA,IACFC,aAAA,CAAA,MAAA;AAGA,MAAA,UAAgB,EAAA,CAAA;AACd,MAAW,UAAA,EAAA,CAAA;AACX,MAAW,OAAA,CAAA,KAAA,GAAA,IAAA,CAAA;AACX,KAAA,CAAA,CAAA;AAAgB,IAClBC,qBAAC,CAAA,QAAA,EAAA,SAAA,EAAA,SAAA,CAAA,CAAA;AAED,IAAiB,MAAA,CAAA;AAEjB,MAAa,OAAA;AAAA,MACX,KAAA;AAAA,KAAA,CAAA,CAAA;AAAA,IAEA,OAAA,CAAA,IAAA,EAAA,MAAA,KAAA;AAAA,MACD,OAAAC,aAAA,EAAA,EAAAC,eAAA,CAAAC,cAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -4,8 +4,8 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var vue = require('vue');
6
6
  require('../../../utils/index.js');
7
- var notification = require('./notification.js');
8
- var notification$1 = require('./notification2.js');
7
+ var notification = require('./notification2.js');
8
+ var notification$1 = require('./notification.js');
9
9
  var core = require('@vueuse/core');
10
10
  var shared = require('@vue/shared');
11
11
  var types = require('../../../utils/types.js');
@@ -5,10 +5,10 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  require('../../utils/index.js');
6
6
  var popper$1 = require('./src/popper2.js');
7
7
  var arrow = require('./src/arrow2.js');
8
- var trigger = require('./src/trigger.js');
8
+ var trigger = require('./src/trigger2.js');
9
9
  var content = require('./src/content2.js');
10
10
  var popper = require('./src/popper.js');
11
- var trigger$1 = require('./src/trigger2.js');
11
+ var trigger$1 = require('./src/trigger.js');
12
12
  var content$1 = require('./src/content.js');
13
13
  var arrow$1 = require('./src/arrow.js');
14
14
  var constants = require('./src/constants.js');
@@ -2,140 +2,40 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var vue = require('vue');
6
- var lodashUnified = require('lodash-unified');
7
- var core = require('@vueuse/core');
8
- require('../../slot/index.js');
9
- require('../../../hooks/index.js');
10
5
  require('../../../utils/index.js');
11
- var constants = require('./constants.js');
12
- var trigger = require('./trigger2.js');
13
- var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
14
- var index = require('../../../hooks/use-forward-ref/index.js');
15
- var types = require('../../../utils/types.js');
16
- var aria = require('../../../utils/dom/aria.js');
17
- var onlyChild = require('../../slot/src/only-child.js');
6
+ var runtime = require('../../../utils/vue/props/runtime.js');
18
7
 
19
- const __default__ = vue.defineComponent({
20
- name: "ElPopperTrigger",
21
- inheritAttrs: false
8
+ const popperTriggerProps = runtime.buildProps({
9
+ virtualRef: {
10
+ type: runtime.definePropType(Object)
11
+ },
12
+ virtualTriggering: Boolean,
13
+ onMouseenter: {
14
+ type: runtime.definePropType(Function)
15
+ },
16
+ onMouseleave: {
17
+ type: runtime.definePropType(Function)
18
+ },
19
+ onClick: {
20
+ type: runtime.definePropType(Function)
21
+ },
22
+ onKeydown: {
23
+ type: runtime.definePropType(Function)
24
+ },
25
+ onFocus: {
26
+ type: runtime.definePropType(Function)
27
+ },
28
+ onBlur: {
29
+ type: runtime.definePropType(Function)
30
+ },
31
+ onContextmenu: {
32
+ type: runtime.definePropType(Function)
33
+ },
34
+ id: String,
35
+ open: Boolean
22
36
  });
23
- const _sfc_main = /* @__PURE__ */ vue.defineComponent({
24
- ...__default__,
25
- props: trigger.popperTriggerProps,
26
- setup(__props, { expose }) {
27
- const props = __props;
28
- const { role, triggerRef } = vue.inject(constants.POPPER_INJECTION_KEY, void 0);
29
- index.useForwardRef(triggerRef);
30
- const ariaControls = vue.computed(() => {
31
- return ariaHaspopup.value ? props.id : void 0;
32
- });
33
- const ariaDescribedby = vue.computed(() => {
34
- if (role && role.value === "tooltip") {
35
- return props.open && props.id ? props.id : void 0;
36
- }
37
- return void 0;
38
- });
39
- const ariaHaspopup = vue.computed(() => {
40
- if (role && role.value !== "tooltip") {
41
- return role.value;
42
- }
43
- return void 0;
44
- });
45
- const ariaExpanded = vue.computed(() => {
46
- return ariaHaspopup.value ? `${props.open}` : void 0;
47
- });
48
- let virtualTriggerAriaStopWatch = void 0;
49
- const TRIGGER_ELE_EVENTS = [
50
- "onMouseenter",
51
- "onMouseleave",
52
- "onClick",
53
- "onKeydown",
54
- "onFocus",
55
- "onBlur",
56
- "onContextmenu"
57
- ];
58
- vue.onMounted(() => {
59
- vue.watch(() => props.virtualRef, (virtualEl) => {
60
- if (virtualEl) {
61
- triggerRef.value = core.unrefElement(virtualEl);
62
- }
63
- }, {
64
- immediate: true
65
- });
66
- vue.watch(triggerRef, (el, prevEl) => {
67
- virtualTriggerAriaStopWatch == null ? void 0 : virtualTriggerAriaStopWatch();
68
- virtualTriggerAriaStopWatch = void 0;
69
- if (types.isElement(el)) {
70
- TRIGGER_ELE_EVENTS.forEach((eventName) => {
71
- var _a;
72
- const handler = props[eventName];
73
- if (handler) {
74
- ;
75
- el.addEventListener(eventName.slice(2).toLowerCase(), handler);
76
- (_a = prevEl == null ? void 0 : prevEl.removeEventListener) == null ? void 0 : _a.call(prevEl, eventName.slice(2).toLowerCase(), handler);
77
- }
78
- });
79
- if (aria.isFocusable(el)) {
80
- virtualTriggerAriaStopWatch = vue.watch([ariaControls, ariaDescribedby, ariaHaspopup, ariaExpanded], (watches) => {
81
- ;
82
- [
83
- "aria-controls",
84
- "aria-describedby",
85
- "aria-haspopup",
86
- "aria-expanded"
87
- ].forEach((key, idx) => {
88
- lodashUnified.isNil(watches[idx]) ? el.removeAttribute(key) : el.setAttribute(key, watches[idx]);
89
- });
90
- }, { immediate: true });
91
- }
92
- }
93
- if (types.isElement(prevEl) && aria.isFocusable(prevEl)) {
94
- ;
95
- [
96
- "aria-controls",
97
- "aria-describedby",
98
- "aria-haspopup",
99
- "aria-expanded"
100
- ].forEach((key) => prevEl.removeAttribute(key));
101
- }
102
- }, {
103
- immediate: true
104
- });
105
- });
106
- vue.onBeforeUnmount(() => {
107
- virtualTriggerAriaStopWatch == null ? void 0 : virtualTriggerAriaStopWatch();
108
- virtualTriggerAriaStopWatch = void 0;
109
- if (triggerRef.value && types.isElement(triggerRef.value)) {
110
- const el = triggerRef.value;
111
- TRIGGER_ELE_EVENTS.forEach((eventName) => {
112
- const handler = props[eventName];
113
- if (handler) {
114
- el.removeEventListener(eventName.slice(2).toLowerCase(), handler);
115
- }
116
- });
117
- triggerRef.value = void 0;
118
- }
119
- });
120
- expose({
121
- triggerRef
122
- });
123
- return (_ctx, _cache) => {
124
- return !_ctx.virtualTriggering ? (vue.openBlock(), vue.createBlock(vue.unref(onlyChild.OnlyChild), vue.mergeProps({ key: 0 }, _ctx.$attrs, {
125
- "aria-controls": vue.unref(ariaControls),
126
- "aria-describedby": vue.unref(ariaDescribedby),
127
- "aria-expanded": vue.unref(ariaExpanded),
128
- "aria-haspopup": vue.unref(ariaHaspopup)
129
- }), {
130
- default: vue.withCtx(() => [
131
- vue.renderSlot(_ctx.$slots, "default")
132
- ]),
133
- _: 3
134
- }, 16, ["aria-controls", "aria-describedby", "aria-expanded", "aria-haspopup"])) : vue.createCommentVNode("v-if", true);
135
- };
136
- }
137
- });
138
- var ElPopperTrigger = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "trigger.vue"]]);
37
+ const usePopperTriggerProps = popperTriggerProps;
139
38
 
140
- exports["default"] = ElPopperTrigger;
39
+ exports.popperTriggerProps = popperTriggerProps;
40
+ exports.usePopperTriggerProps = usePopperTriggerProps;
141
41
  //# sourceMappingURL=trigger.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"trigger.js","sources":["../../../../../../packages/components/popper/src/trigger.vue"],"sourcesContent":["<template>\n <el-only-child\n v-if=\"!virtualTriggering\"\n v-bind=\"$attrs\"\n :aria-controls=\"ariaControls\"\n :aria-describedby=\"ariaDescribedby\"\n :aria-expanded=\"ariaExpanded\"\n :aria-haspopup=\"ariaHaspopup\"\n >\n <slot />\n </el-only-child>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, inject, onBeforeUnmount, onMounted, watch } from 'vue'\nimport { isNil } from 'lodash-unified'\nimport { unrefElement } from '@vueuse/core'\nimport { ElOnlyChild } from '@element-plus/components/slot'\nimport { useForwardRef } from '@element-plus/hooks'\nimport { isElement, isFocusable } from '@element-plus/utils'\nimport { POPPER_INJECTION_KEY } from './constants'\nimport { popperTriggerProps } from './trigger'\n\nimport type { WatchStopHandle } from 'vue'\n\ndefineOptions({\n name: 'ElPopperTrigger',\n inheritAttrs: false,\n})\n\nconst props = defineProps(popperTriggerProps)\n\nconst { role, triggerRef } = inject(POPPER_INJECTION_KEY, undefined)!\n\nuseForwardRef(triggerRef)\n\nconst ariaControls = computed<string | undefined>(() => {\n return ariaHaspopup.value ? props.id : undefined\n})\n\nconst ariaDescribedby = computed<string | undefined>(() => {\n if (role && role.value === 'tooltip') {\n return props.open && props.id ? props.id : undefined\n }\n return undefined\n})\n\nconst ariaHaspopup = computed<string | undefined>(() => {\n if (role && role.value !== 'tooltip') {\n return role.value\n }\n return undefined\n})\n\nconst ariaExpanded = computed<string | undefined>(() => {\n return ariaHaspopup.value ? `${props.open}` : undefined\n})\n\nlet virtualTriggerAriaStopWatch: WatchStopHandle | undefined = undefined\n\nconst TRIGGER_ELE_EVENTS = [\n 'onMouseenter',\n 'onMouseleave',\n 'onClick',\n 'onKeydown',\n 'onFocus',\n 'onBlur',\n 'onContextmenu',\n] as const\n\nonMounted(() => {\n watch(\n () => props.virtualRef,\n (virtualEl) => {\n if (virtualEl) {\n triggerRef.value = unrefElement(virtualEl as HTMLElement)\n }\n },\n {\n immediate: true,\n }\n )\n\n watch(\n triggerRef,\n (el, prevEl) => {\n virtualTriggerAriaStopWatch?.()\n virtualTriggerAriaStopWatch = undefined\n if (isElement(el)) {\n TRIGGER_ELE_EVENTS.forEach((eventName) => {\n const handler = props[eventName]\n if (handler) {\n ;(el as HTMLElement).addEventListener(\n eventName.slice(2).toLowerCase(),\n handler\n )\n ;(prevEl as HTMLElement)?.removeEventListener?.(\n eventName.slice(2).toLowerCase(),\n handler\n )\n }\n })\n if (isFocusable(el as HTMLElement)) {\n virtualTriggerAriaStopWatch = watch(\n [ariaControls, ariaDescribedby, ariaHaspopup, ariaExpanded],\n (watches) => {\n ;[\n 'aria-controls',\n 'aria-describedby',\n 'aria-haspopup',\n 'aria-expanded',\n ].forEach((key, idx) => {\n isNil(watches[idx])\n ? el.removeAttribute(key)\n : el.setAttribute(key, watches[idx]!)\n })\n },\n { immediate: true }\n )\n }\n }\n if (isElement(prevEl) && isFocusable(prevEl as HTMLElement)) {\n ;[\n 'aria-controls',\n 'aria-describedby',\n 'aria-haspopup',\n 'aria-expanded',\n ].forEach((key) => prevEl.removeAttribute(key))\n }\n },\n {\n immediate: true,\n }\n )\n})\n\nonBeforeUnmount(() => {\n virtualTriggerAriaStopWatch?.()\n virtualTriggerAriaStopWatch = undefined\n if (triggerRef.value && isElement(triggerRef.value)) {\n const el = triggerRef.value as HTMLElement\n TRIGGER_ELE_EVENTS.forEach((eventName) => {\n const handler = props[eventName]\n if (handler) {\n el.removeEventListener(eventName.slice(2).toLowerCase(), handler)\n }\n })\n triggerRef.value = undefined\n }\n})\n\ndefineExpose({\n /**\n * @description trigger element\n */\n triggerRef,\n})\n</script>\n"],"names":["inject","POPPER_INJECTION_KEY","useForwardRef","computed","onMounted","watch","unrefElement","isElement","isFocusable","isNil","onBeforeUnmount","_openBlock","_createBlock","_unref","ElOnlyChild","_mergeProps","_withCtx","_renderSlot","_createCommentVNode","_export_sfc"],"mappings":"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"}
1
+ {"version":3,"file":"trigger.js","sources":["../../../../../../packages/components/popper/src/trigger.ts"],"sourcesContent":["import { buildProps, definePropType } from '@element-plus/utils'\n\nimport type { Measurable } from './constants'\nimport type Trigger from './trigger.vue'\n\nexport const popperTriggerProps = buildProps({\n virtualRef: {\n type: definePropType<Measurable>(Object),\n },\n virtualTriggering: Boolean,\n onMouseenter: {\n type: definePropType<(e: Event) => void>(Function),\n },\n onMouseleave: {\n type: definePropType<(e: Event) => void>(Function),\n },\n onClick: {\n type: definePropType<(e: Event) => void>(Function),\n },\n onKeydown: {\n type: definePropType<(e: Event) => void>(Function),\n },\n onFocus: {\n type: definePropType<(e: Event) => void>(Function),\n },\n onBlur: {\n type: definePropType<(e: Event) => void>(Function),\n },\n onContextmenu: {\n type: definePropType<(e: Event) => void>(Function),\n },\n id: String,\n open: Boolean,\n} as const)\n\nexport type PopperTriggerProps = typeof popperTriggerProps\n\nexport type PopperTriggerInstance = InstanceType<typeof Trigger>\n\n/** @deprecated use `popperTriggerProps` instead, and it will be deprecated in the next major version */\nexport const usePopperTriggerProps = popperTriggerProps\n\n/** @deprecated use `PopperTriggerInstance` instead, and it will be deprecated in the next major version */\nexport type ElPopperArrowTrigger = PopperTriggerInstance\n"],"names":["buildProps","definePropType"],"mappings":";;;;;;;AACY,MAAC,kBAAkB,GAAGA,kBAAU,CAAC;AAC7C,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAEC,sBAAc,CAAC,MAAM,CAAC;AAChC,GAAG;AACH,EAAE,iBAAiB,EAAE,OAAO;AAC5B,EAAE,YAAY,EAAE;AAChB,IAAI,IAAI,EAAEA,sBAAc,CAAC,QAAQ,CAAC;AAClC,GAAG;AACH,EAAE,YAAY,EAAE;AAChB,IAAI,IAAI,EAAEA,sBAAc,CAAC,QAAQ,CAAC;AAClC,GAAG;AACH,EAAE,OAAO,EAAE;AACX,IAAI,IAAI,EAAEA,sBAAc,CAAC,QAAQ,CAAC;AAClC,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAEA,sBAAc,CAAC,QAAQ,CAAC;AAClC,GAAG;AACH,EAAE,OAAO,EAAE;AACX,IAAI,IAAI,EAAEA,sBAAc,CAAC,QAAQ,CAAC;AAClC,GAAG;AACH,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAEA,sBAAc,CAAC,QAAQ,CAAC;AAClC,GAAG;AACH,EAAE,aAAa,EAAE;AACjB,IAAI,IAAI,EAAEA,sBAAc,CAAC,QAAQ,CAAC;AAClC,GAAG;AACH,EAAE,EAAE,EAAE,MAAM;AACZ,EAAE,IAAI,EAAE,OAAO;AACf,CAAC,EAAE;AACS,MAAC,qBAAqB,GAAG;;;;;"}