@element-plus/nightly 0.0.20231230 → 0.0.20231231

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 (316) hide show
  1. package/dist/index.full.js +7 -2
  2. package/dist/index.full.min.js +21 -21
  3. package/dist/index.full.min.js.map +1 -1
  4. package/dist/index.full.min.mjs +21 -21
  5. package/dist/index.full.min.mjs.map +1 -1
  6. package/dist/index.full.mjs +7 -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/nb-no.js +1 -1
  152. package/dist/locale/nb-no.min.js +1 -1
  153. package/dist/locale/nb-no.min.mjs +1 -1
  154. package/dist/locale/nb-no.mjs +1 -1
  155. package/dist/locale/nl.js +1 -1
  156. package/dist/locale/nl.min.js +1 -1
  157. package/dist/locale/nl.min.mjs +1 -1
  158. package/dist/locale/nl.mjs +1 -1
  159. package/dist/locale/pa.js +1 -1
  160. package/dist/locale/pa.min.js +1 -1
  161. package/dist/locale/pa.min.mjs +1 -1
  162. package/dist/locale/pa.mjs +1 -1
  163. package/dist/locale/pl.js +1 -1
  164. package/dist/locale/pl.min.js +1 -1
  165. package/dist/locale/pl.min.mjs +1 -1
  166. package/dist/locale/pl.mjs +1 -1
  167. package/dist/locale/pt-br.js +1 -1
  168. package/dist/locale/pt-br.min.js +1 -1
  169. package/dist/locale/pt-br.min.mjs +1 -1
  170. package/dist/locale/pt-br.mjs +1 -1
  171. package/dist/locale/pt.js +1 -1
  172. package/dist/locale/pt.min.js +1 -1
  173. package/dist/locale/pt.min.mjs +1 -1
  174. package/dist/locale/pt.mjs +1 -1
  175. package/dist/locale/ro.js +1 -1
  176. package/dist/locale/ro.min.js +1 -1
  177. package/dist/locale/ro.min.mjs +1 -1
  178. package/dist/locale/ro.mjs +1 -1
  179. package/dist/locale/ru.js +1 -1
  180. package/dist/locale/ru.min.js +1 -1
  181. package/dist/locale/ru.min.mjs +1 -1
  182. package/dist/locale/ru.mjs +1 -1
  183. package/dist/locale/sk.js +1 -1
  184. package/dist/locale/sk.min.js +1 -1
  185. package/dist/locale/sk.min.mjs +1 -1
  186. package/dist/locale/sk.mjs +1 -1
  187. package/dist/locale/sl.js +1 -1
  188. package/dist/locale/sl.min.js +1 -1
  189. package/dist/locale/sl.min.mjs +1 -1
  190. package/dist/locale/sl.mjs +1 -1
  191. package/dist/locale/sr.js +1 -1
  192. package/dist/locale/sr.min.js +1 -1
  193. package/dist/locale/sr.min.mjs +1 -1
  194. package/dist/locale/sr.mjs +1 -1
  195. package/dist/locale/sv.js +1 -1
  196. package/dist/locale/sv.min.js +1 -1
  197. package/dist/locale/sv.min.mjs +1 -1
  198. package/dist/locale/sv.mjs +1 -1
  199. package/dist/locale/sw.js +1 -1
  200. package/dist/locale/sw.min.js +1 -1
  201. package/dist/locale/sw.min.mjs +1 -1
  202. package/dist/locale/sw.mjs +1 -1
  203. package/dist/locale/ta.js +1 -1
  204. package/dist/locale/ta.min.js +1 -1
  205. package/dist/locale/ta.min.mjs +1 -1
  206. package/dist/locale/ta.mjs +1 -1
  207. package/dist/locale/th.js +1 -1
  208. package/dist/locale/th.min.js +1 -1
  209. package/dist/locale/th.min.mjs +1 -1
  210. package/dist/locale/th.mjs +1 -1
  211. package/dist/locale/tk.js +1 -1
  212. package/dist/locale/tk.min.js +1 -1
  213. package/dist/locale/tk.min.mjs +1 -1
  214. package/dist/locale/tk.mjs +1 -1
  215. package/dist/locale/tr.js +1 -1
  216. package/dist/locale/tr.min.js +1 -1
  217. package/dist/locale/tr.min.mjs +1 -1
  218. package/dist/locale/tr.mjs +1 -1
  219. package/dist/locale/ug-cn.js +1 -1
  220. package/dist/locale/ug-cn.min.js +1 -1
  221. package/dist/locale/ug-cn.min.mjs +1 -1
  222. package/dist/locale/ug-cn.mjs +1 -1
  223. package/dist/locale/uk.js +1 -1
  224. package/dist/locale/uk.min.js +1 -1
  225. package/dist/locale/uk.min.mjs +1 -1
  226. package/dist/locale/uk.mjs +1 -1
  227. package/dist/locale/uz-uz.js +1 -1
  228. package/dist/locale/uz-uz.min.js +1 -1
  229. package/dist/locale/uz-uz.min.mjs +1 -1
  230. package/dist/locale/uz-uz.mjs +1 -1
  231. package/dist/locale/vi.js +1 -1
  232. package/dist/locale/vi.min.js +1 -1
  233. package/dist/locale/vi.min.mjs +1 -1
  234. package/dist/locale/vi.mjs +1 -1
  235. package/dist/locale/zh-cn.js +1 -1
  236. package/dist/locale/zh-cn.min.js +1 -1
  237. package/dist/locale/zh-cn.min.mjs +1 -1
  238. package/dist/locale/zh-cn.mjs +1 -1
  239. package/dist/locale/zh-tw.js +1 -1
  240. package/dist/locale/zh-tw.min.js +1 -1
  241. package/dist/locale/zh-tw.min.mjs +1 -1
  242. package/dist/locale/zh-tw.mjs +1 -1
  243. package/es/components/breadcrumb/index.mjs +2 -2
  244. package/es/components/breadcrumb/src/breadcrumb-item.mjs +11 -56
  245. package/es/components/breadcrumb/src/breadcrumb-item.mjs.map +1 -1
  246. package/es/components/breadcrumb/src/breadcrumb-item2.mjs +56 -11
  247. package/es/components/breadcrumb/src/breadcrumb-item2.mjs.map +1 -1
  248. package/es/components/drawer/index.mjs +2 -2
  249. package/es/components/drawer/src/drawer.mjs +26 -176
  250. package/es/components/drawer/src/drawer.mjs.map +1 -1
  251. package/es/components/drawer/src/drawer2.mjs +176 -26
  252. package/es/components/drawer/src/drawer2.mjs.map +1 -1
  253. package/es/components/form/index.d.ts +1 -0
  254. package/es/components/form/src/form-item2.mjs +1 -0
  255. package/es/components/form/src/form-item2.mjs.map +1 -1
  256. package/es/components/form/src/form.vue.d.ts +1 -0
  257. package/es/components/form/src/form2.mjs +4 -0
  258. package/es/components/form/src/form2.mjs.map +1 -1
  259. package/es/components/form/src/types.d.ts +2 -0
  260. package/es/components/index.mjs +2 -2
  261. package/es/components/pagination/src/components/next.mjs +19 -38
  262. package/es/components/pagination/src/components/next.mjs.map +1 -1
  263. package/es/components/pagination/src/components/next2.mjs +38 -19
  264. package/es/components/pagination/src/components/next2.mjs.map +1 -1
  265. package/es/components/pagination/src/components/sizes.mjs +23 -69
  266. package/es/components/pagination/src/components/sizes.mjs.map +1 -1
  267. package/es/components/pagination/src/components/sizes2.mjs +69 -23
  268. package/es/components/pagination/src/components/sizes2.mjs.map +1 -1
  269. package/es/components/pagination/src/pagination.mjs +2 -2
  270. package/es/components/tour/src/mask.mjs +112 -19
  271. package/es/components/tour/src/mask.mjs.map +1 -1
  272. package/es/components/tour/src/mask2.mjs +19 -112
  273. package/es/components/tour/src/mask2.mjs.map +1 -1
  274. package/es/components/tour/src/tour2.mjs +1 -1
  275. package/es/index.mjs +2 -2
  276. package/es/version.d.ts +1 -1
  277. package/es/version.mjs +1 -1
  278. package/es/version.mjs.map +1 -1
  279. package/lib/components/breadcrumb/index.js +2 -2
  280. package/lib/components/breadcrumb/src/breadcrumb-item.js +11 -56
  281. package/lib/components/breadcrumb/src/breadcrumb-item.js.map +1 -1
  282. package/lib/components/breadcrumb/src/breadcrumb-item2.js +56 -11
  283. package/lib/components/breadcrumb/src/breadcrumb-item2.js.map +1 -1
  284. package/lib/components/drawer/index.js +2 -2
  285. package/lib/components/drawer/src/drawer.js +27 -176
  286. package/lib/components/drawer/src/drawer.js.map +1 -1
  287. package/lib/components/drawer/src/drawer2.js +176 -27
  288. package/lib/components/drawer/src/drawer2.js.map +1 -1
  289. package/lib/components/form/index.d.ts +1 -0
  290. package/lib/components/form/src/form-item2.js +1 -0
  291. package/lib/components/form/src/form-item2.js.map +1 -1
  292. package/lib/components/form/src/form.vue.d.ts +1 -0
  293. package/lib/components/form/src/form2.js +4 -0
  294. package/lib/components/form/src/form2.js.map +1 -1
  295. package/lib/components/form/src/types.d.ts +2 -0
  296. package/lib/components/index.js +2 -2
  297. package/lib/components/pagination/src/components/next.js +19 -38
  298. package/lib/components/pagination/src/components/next.js.map +1 -1
  299. package/lib/components/pagination/src/components/next2.js +38 -19
  300. package/lib/components/pagination/src/components/next2.js.map +1 -1
  301. package/lib/components/pagination/src/components/sizes.js +23 -69
  302. package/lib/components/pagination/src/components/sizes.js.map +1 -1
  303. package/lib/components/pagination/src/components/sizes2.js +69 -23
  304. package/lib/components/pagination/src/components/sizes2.js.map +1 -1
  305. package/lib/components/pagination/src/pagination.js +2 -2
  306. package/lib/components/tour/src/mask.js +112 -19
  307. package/lib/components/tour/src/mask.js.map +1 -1
  308. package/lib/components/tour/src/mask2.js +19 -112
  309. package/lib/components/tour/src/mask2.js.map +1 -1
  310. package/lib/components/tour/src/tour2.js +1 -1
  311. package/lib/index.js +2 -2
  312. package/lib/version.d.ts +1 -1
  313. package/lib/version.js +1 -1
  314. package/lib/version.js.map +1 -1
  315. package/package.json +2 -2
  316. package/web-types.json +1 -1
@@ -2,186 +2,37 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var vue = require('vue');
6
- var iconsVue = require('@element-plus/icons-vue');
7
- var index = require('../../overlay/index.js');
8
- require('../../focus-trap/index.js');
9
- require('../../dialog/index.js');
10
5
  require('../../../utils/index.js');
11
- var index$1 = require('../../icon/index.js');
12
- require('../../../hooks/index.js');
13
- var drawer = require('./drawer2.js');
14
- var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
15
- var focusTrap = require('../../focus-trap/src/focus-trap.js');
16
- var index$2 = require('../../../hooks/use-deprecated/index.js');
17
- var index$3 = require('../../../hooks/use-namespace/index.js');
18
- var index$4 = require('../../../hooks/use-locale/index.js');
19
- var style = require('../../../utils/dom/style.js');
20
- var useDialog = require('../../dialog/src/use-dialog.js');
6
+ require('../../dialog/index.js');
7
+ var runtime = require('../../../utils/vue/props/runtime.js');
8
+ var dialog = require('../../dialog/src/dialog.js');
21
9
 
22
- const _sfc_main = vue.defineComponent({
23
- name: "ElDrawer",
24
- components: {
25
- ElOverlay: index.ElOverlay,
26
- ElFocusTrap: focusTrap["default"],
27
- ElIcon: index$1.ElIcon,
28
- Close: iconsVue.Close
10
+ const drawerProps = runtime.buildProps({
11
+ ...dialog.dialogProps,
12
+ direction: {
13
+ type: String,
14
+ default: "rtl",
15
+ values: ["ltr", "rtl", "ttb", "btt"]
16
+ },
17
+ size: {
18
+ type: [String, Number],
19
+ default: "30%"
20
+ },
21
+ withHeader: {
22
+ type: Boolean,
23
+ default: true
24
+ },
25
+ modalFade: {
26
+ type: Boolean,
27
+ default: true
29
28
  },
30
- inheritAttrs: false,
31
- props: drawer.drawerProps,
32
- emits: drawer.drawerEmits,
33
- setup(props, { slots }) {
34
- index$2.useDeprecated({
35
- scope: "el-drawer",
36
- from: "the title slot",
37
- replacement: "the header slot",
38
- version: "3.0.0",
39
- ref: "https://element-plus.org/en-US/component/drawer.html#slots"
40
- }, vue.computed(() => !!slots.title));
41
- index$2.useDeprecated({
42
- scope: "el-drawer",
43
- from: "custom-class",
44
- replacement: "class",
45
- version: "2.3.0",
46
- ref: "https://element-plus.org/en-US/component/drawer.html#attributes",
47
- type: "Attribute"
48
- }, vue.computed(() => !!props.customClass));
49
- const drawerRef = vue.ref();
50
- const focusStartRef = vue.ref();
51
- const ns = index$3.useNamespace("drawer");
52
- const { t } = index$4.useLocale();
53
- const isHorizontal = vue.computed(() => props.direction === "rtl" || props.direction === "ltr");
54
- const drawerSize = vue.computed(() => style.addUnit(props.size));
55
- return {
56
- ...useDialog.useDialog(props, drawerRef),
57
- drawerRef,
58
- focusStartRef,
59
- isHorizontal,
60
- drawerSize,
61
- ns,
62
- t
63
- };
29
+ headerAriaLevel: {
30
+ type: String,
31
+ default: "2"
64
32
  }
65
33
  });
66
- const _hoisted_1 = ["aria-label", "aria-labelledby", "aria-describedby"];
67
- const _hoisted_2 = ["id", "aria-level"];
68
- const _hoisted_3 = ["aria-label"];
69
- const _hoisted_4 = ["id"];
70
- function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
71
- const _component_close = vue.resolveComponent("close");
72
- const _component_el_icon = vue.resolveComponent("el-icon");
73
- const _component_el_focus_trap = vue.resolveComponent("el-focus-trap");
74
- const _component_el_overlay = vue.resolveComponent("el-overlay");
75
- return vue.openBlock(), vue.createBlock(vue.Teleport, {
76
- to: "body",
77
- disabled: !_ctx.appendToBody
78
- }, [
79
- vue.createVNode(vue.Transition, {
80
- name: _ctx.ns.b("fade"),
81
- onAfterEnter: _ctx.afterEnter,
82
- onAfterLeave: _ctx.afterLeave,
83
- onBeforeLeave: _ctx.beforeLeave,
84
- persisted: ""
85
- }, {
86
- default: vue.withCtx(() => [
87
- vue.withDirectives(vue.createVNode(_component_el_overlay, {
88
- mask: _ctx.modal,
89
- "overlay-class": _ctx.modalClass,
90
- "z-index": _ctx.zIndex,
91
- onClick: _ctx.onModalClick
92
- }, {
93
- default: vue.withCtx(() => [
94
- vue.createVNode(_component_el_focus_trap, {
95
- loop: "",
96
- trapped: _ctx.visible,
97
- "focus-trap-el": _ctx.drawerRef,
98
- "focus-start-el": _ctx.focusStartRef,
99
- onReleaseRequested: _ctx.onCloseRequested
100
- }, {
101
- default: vue.withCtx(() => [
102
- vue.createElementVNode("div", vue.mergeProps({
103
- ref: "drawerRef",
104
- "aria-modal": "true",
105
- "aria-label": _ctx.title || void 0,
106
- "aria-labelledby": !_ctx.title ? _ctx.titleId : void 0,
107
- "aria-describedby": _ctx.bodyId
108
- }, _ctx.$attrs, {
109
- class: [_ctx.ns.b(), _ctx.direction, _ctx.visible && "open", _ctx.customClass],
110
- style: _ctx.isHorizontal ? "width: " + _ctx.drawerSize : "height: " + _ctx.drawerSize,
111
- role: "dialog",
112
- onClick: _cache[1] || (_cache[1] = vue.withModifiers(() => {
113
- }, ["stop"]))
114
- }), [
115
- vue.createElementVNode("span", {
116
- ref: "focusStartRef",
117
- class: vue.normalizeClass(_ctx.ns.e("sr-focus")),
118
- tabindex: "-1"
119
- }, null, 2),
120
- _ctx.withHeader ? (vue.openBlock(), vue.createElementBlock("header", {
121
- key: 0,
122
- class: vue.normalizeClass(_ctx.ns.e("header"))
123
- }, [
124
- !_ctx.$slots.title ? vue.renderSlot(_ctx.$slots, "header", {
125
- key: 0,
126
- close: _ctx.handleClose,
127
- titleId: _ctx.titleId,
128
- titleClass: _ctx.ns.e("title")
129
- }, () => [
130
- !_ctx.$slots.title ? (vue.openBlock(), vue.createElementBlock("span", {
131
- key: 0,
132
- id: _ctx.titleId,
133
- role: "heading",
134
- "aria-level": _ctx.headerAriaLevel,
135
- class: vue.normalizeClass(_ctx.ns.e("title"))
136
- }, vue.toDisplayString(_ctx.title), 11, _hoisted_2)) : vue.createCommentVNode("v-if", true)
137
- ]) : vue.renderSlot(_ctx.$slots, "title", { key: 1 }, () => [
138
- vue.createCommentVNode(" DEPRECATED SLOT ")
139
- ]),
140
- _ctx.showClose ? (vue.openBlock(), vue.createElementBlock("button", {
141
- key: 2,
142
- "aria-label": _ctx.t("el.drawer.close"),
143
- class: vue.normalizeClass(_ctx.ns.e("close-btn")),
144
- type: "button",
145
- onClick: _cache[0] || (_cache[0] = (...args) => _ctx.handleClose && _ctx.handleClose(...args))
146
- }, [
147
- vue.createVNode(_component_el_icon, {
148
- class: vue.normalizeClass(_ctx.ns.e("close"))
149
- }, {
150
- default: vue.withCtx(() => [
151
- vue.createVNode(_component_close)
152
- ]),
153
- _: 1
154
- }, 8, ["class"])
155
- ], 10, _hoisted_3)) : vue.createCommentVNode("v-if", true)
156
- ], 2)) : vue.createCommentVNode("v-if", true),
157
- _ctx.rendered ? (vue.openBlock(), vue.createElementBlock("div", {
158
- key: 1,
159
- id: _ctx.bodyId,
160
- class: vue.normalizeClass(_ctx.ns.e("body"))
161
- }, [
162
- vue.renderSlot(_ctx.$slots, "default")
163
- ], 10, _hoisted_4)) : vue.createCommentVNode("v-if", true),
164
- _ctx.$slots.footer ? (vue.openBlock(), vue.createElementBlock("div", {
165
- key: 2,
166
- class: vue.normalizeClass(_ctx.ns.e("footer"))
167
- }, [
168
- vue.renderSlot(_ctx.$slots, "footer")
169
- ], 2)) : vue.createCommentVNode("v-if", true)
170
- ], 16, _hoisted_1)
171
- ]),
172
- _: 3
173
- }, 8, ["trapped", "focus-trap-el", "focus-start-el", "onReleaseRequested"])
174
- ]),
175
- _: 3
176
- }, 8, ["mask", "overlay-class", "z-index", "onClick"]), [
177
- [vue.vShow, _ctx.visible]
178
- ])
179
- ]),
180
- _: 3
181
- }, 8, ["name", "onAfterEnter", "onAfterLeave", "onBeforeLeave"])
182
- ], 8, ["disabled"]);
183
- }
184
- var Drawer = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["render", _sfc_render], ["__file", "drawer.vue"]]);
34
+ const drawerEmits = dialog.dialogEmits;
185
35
 
186
- exports["default"] = Drawer;
36
+ exports.drawerEmits = drawerEmits;
37
+ exports.drawerProps = drawerProps;
187
38
  //# sourceMappingURL=drawer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"drawer.js","sources":["../../../../../../packages/components/drawer/src/drawer.vue"],"sourcesContent":["<template>\n <teleport to=\"body\" :disabled=\"!appendToBody\">\n <transition\n :name=\"ns.b('fade')\"\n @after-enter=\"afterEnter\"\n @after-leave=\"afterLeave\"\n @before-leave=\"beforeLeave\"\n >\n <el-overlay\n v-show=\"visible\"\n :mask=\"modal\"\n :overlay-class=\"modalClass\"\n :z-index=\"zIndex\"\n @click=\"onModalClick\"\n >\n <el-focus-trap\n loop\n :trapped=\"visible\"\n :focus-trap-el=\"drawerRef\"\n :focus-start-el=\"focusStartRef\"\n @release-requested=\"onCloseRequested\"\n >\n <div\n ref=\"drawerRef\"\n aria-modal=\"true\"\n :aria-label=\"title || undefined\"\n :aria-labelledby=\"!title ? titleId : undefined\"\n :aria-describedby=\"bodyId\"\n v-bind=\"$attrs\"\n :class=\"[ns.b(), direction, visible && 'open', customClass]\"\n :style=\"\n isHorizontal ? 'width: ' + drawerSize : 'height: ' + drawerSize\n \"\n role=\"dialog\"\n @click.stop\n >\n <span ref=\"focusStartRef\" :class=\"ns.e('sr-focus')\" tabindex=\"-1\" />\n <header v-if=\"withHeader\" :class=\"ns.e('header')\">\n <slot\n v-if=\"!$slots.title\"\n name=\"header\"\n :close=\"handleClose\"\n :title-id=\"titleId\"\n :title-class=\"ns.e('title')\"\n >\n <span\n v-if=\"!$slots.title\"\n :id=\"titleId\"\n role=\"heading\"\n :aria-level=\"headerAriaLevel\"\n :class=\"ns.e('title')\"\n >\n {{ title }}\n </span>\n </slot>\n <slot v-else name=\"title\">\n <!-- DEPRECATED SLOT -->\n </slot>\n <button\n v-if=\"showClose\"\n :aria-label=\"t('el.drawer.close')\"\n :class=\"ns.e('close-btn')\"\n type=\"button\"\n @click=\"handleClose\"\n >\n <el-icon :class=\"ns.e('close')\"><close /></el-icon>\n </button>\n </header>\n <template v-if=\"rendered\">\n <div :id=\"bodyId\" :class=\"ns.e('body')\">\n <slot />\n </div>\n </template>\n <div v-if=\"$slots.footer\" :class=\"ns.e('footer')\">\n <slot name=\"footer\" />\n </div>\n </div>\n </el-focus-trap>\n </el-overlay>\n </transition>\n </teleport>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, ref } from 'vue'\nimport { Close } from '@element-plus/icons-vue'\n\nimport { ElOverlay } from '@element-plus/components/overlay'\nimport ElFocusTrap from '@element-plus/components/focus-trap'\nimport { useDialog } from '@element-plus/components/dialog'\nimport { addUnit } from '@element-plus/utils'\nimport ElIcon from '@element-plus/components/icon'\nimport { useDeprecated, useLocale, useNamespace } from '@element-plus/hooks'\nimport { drawerEmits, drawerProps } from './drawer'\n\nexport default defineComponent({\n name: 'ElDrawer',\n components: {\n ElOverlay,\n ElFocusTrap,\n ElIcon,\n Close,\n },\n inheritAttrs: false,\n props: drawerProps,\n emits: drawerEmits,\n\n setup(props, { slots }) {\n useDeprecated(\n {\n scope: 'el-drawer',\n from: 'the title slot',\n replacement: 'the header slot',\n version: '3.0.0',\n ref: 'https://element-plus.org/en-US/component/drawer.html#slots',\n },\n computed(() => !!slots.title)\n )\n useDeprecated(\n {\n scope: 'el-drawer',\n from: 'custom-class',\n replacement: 'class',\n version: '2.3.0',\n ref: 'https://element-plus.org/en-US/component/drawer.html#attributes',\n type: 'Attribute',\n },\n computed(() => !!props.customClass)\n )\n\n const drawerRef = ref<HTMLElement>()\n const focusStartRef = ref<HTMLElement>()\n const ns = useNamespace('drawer')\n const { t } = useLocale()\n\n const isHorizontal = computed(\n () => props.direction === 'rtl' || props.direction === 'ltr'\n )\n const drawerSize = computed(() => addUnit(props.size))\n\n return {\n ...useDialog(props, drawerRef),\n drawerRef,\n focusStartRef,\n isHorizontal,\n drawerSize,\n ns,\n t,\n }\n },\n})\n</script>\n"],"names":["defineComponent","ElOverlay","ElFocusTrap","ElIcon","Close","drawerProps","drawerEmits","useDeprecated","computed","ref","useNamespace","useLocale","addUnit","useDialog","_createBlock","_Teleport","_createVNode","_Transition","_withDirectives","_createElementVNode","_mergeProps","_withModifiers","_normalizeClass","_openBlock","_createElementBlock","_renderSlot","_toDisplayString","_createCommentVNode"],"mappings":"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"}
1
+ {"version":3,"file":"drawer.js","sources":["../../../../../../packages/components/drawer/src/drawer.ts"],"sourcesContent":["import { buildProps } from '@element-plus/utils'\nimport { dialogEmits, dialogProps } from '@element-plus/components/dialog'\nimport type { ExtractPropTypes } from 'vue'\n\nexport const drawerProps = buildProps({\n ...dialogProps,\n direction: {\n type: String,\n default: 'rtl',\n values: ['ltr', 'rtl', 'ttb', 'btt'],\n },\n size: {\n type: [String, Number],\n default: '30%',\n },\n withHeader: {\n type: Boolean,\n default: true,\n },\n modalFade: {\n type: Boolean,\n default: true,\n },\n headerAriaLevel: {\n type: String,\n default: '2',\n },\n} as const)\n\nexport type DrawerProps = ExtractPropTypes<typeof drawerProps>\n\nexport const drawerEmits = dialogEmits\n"],"names":["buildProps","dialogProps","dialogEmits"],"mappings":";;;;;;;;;AAEY,MAAC,WAAW,GAAGA,kBAAU,CAAC;AACtC,EAAE,GAAGC,kBAAW;AAChB,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,KAAK;AAClB,IAAI,MAAM,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC;AACxC,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;AAC1B,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,eAAe,EAAE;AACnB,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,GAAG;AAChB,GAAG;AACH,CAAC,EAAE;AACS,MAAC,WAAW,GAAGC;;;;;"}
@@ -2,37 +2,186 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- require('../../../utils/index.js');
5
+ var vue = require('vue');
6
+ var iconsVue = require('@element-plus/icons-vue');
7
+ var index = require('../../overlay/index.js');
8
+ require('../../focus-trap/index.js');
6
9
  require('../../dialog/index.js');
7
- var runtime = require('../../../utils/vue/props/runtime.js');
8
- var dialog = require('../../dialog/src/dialog.js');
10
+ require('../../../utils/index.js');
11
+ var index$1 = require('../../icon/index.js');
12
+ require('../../../hooks/index.js');
13
+ var drawer = require('./drawer.js');
14
+ var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
15
+ var focusTrap = require('../../focus-trap/src/focus-trap.js');
16
+ var index$2 = require('../../../hooks/use-deprecated/index.js');
17
+ var index$3 = require('../../../hooks/use-namespace/index.js');
18
+ var index$4 = require('../../../hooks/use-locale/index.js');
19
+ var style = require('../../../utils/dom/style.js');
20
+ var useDialog = require('../../dialog/src/use-dialog.js');
9
21
 
10
- const drawerProps = runtime.buildProps({
11
- ...dialog.dialogProps,
12
- direction: {
13
- type: String,
14
- default: "rtl",
15
- values: ["ltr", "rtl", "ttb", "btt"]
16
- },
17
- size: {
18
- type: [String, Number],
19
- default: "30%"
20
- },
21
- withHeader: {
22
- type: Boolean,
23
- default: true
24
- },
25
- modalFade: {
26
- type: Boolean,
27
- default: true
22
+ const _sfc_main = vue.defineComponent({
23
+ name: "ElDrawer",
24
+ components: {
25
+ ElOverlay: index.ElOverlay,
26
+ ElFocusTrap: focusTrap["default"],
27
+ ElIcon: index$1.ElIcon,
28
+ Close: iconsVue.Close
28
29
  },
29
- headerAriaLevel: {
30
- type: String,
31
- default: "2"
30
+ inheritAttrs: false,
31
+ props: drawer.drawerProps,
32
+ emits: drawer.drawerEmits,
33
+ setup(props, { slots }) {
34
+ index$2.useDeprecated({
35
+ scope: "el-drawer",
36
+ from: "the title slot",
37
+ replacement: "the header slot",
38
+ version: "3.0.0",
39
+ ref: "https://element-plus.org/en-US/component/drawer.html#slots"
40
+ }, vue.computed(() => !!slots.title));
41
+ index$2.useDeprecated({
42
+ scope: "el-drawer",
43
+ from: "custom-class",
44
+ replacement: "class",
45
+ version: "2.3.0",
46
+ ref: "https://element-plus.org/en-US/component/drawer.html#attributes",
47
+ type: "Attribute"
48
+ }, vue.computed(() => !!props.customClass));
49
+ const drawerRef = vue.ref();
50
+ const focusStartRef = vue.ref();
51
+ const ns = index$3.useNamespace("drawer");
52
+ const { t } = index$4.useLocale();
53
+ const isHorizontal = vue.computed(() => props.direction === "rtl" || props.direction === "ltr");
54
+ const drawerSize = vue.computed(() => style.addUnit(props.size));
55
+ return {
56
+ ...useDialog.useDialog(props, drawerRef),
57
+ drawerRef,
58
+ focusStartRef,
59
+ isHorizontal,
60
+ drawerSize,
61
+ ns,
62
+ t
63
+ };
32
64
  }
33
65
  });
34
- const drawerEmits = dialog.dialogEmits;
66
+ const _hoisted_1 = ["aria-label", "aria-labelledby", "aria-describedby"];
67
+ const _hoisted_2 = ["id", "aria-level"];
68
+ const _hoisted_3 = ["aria-label"];
69
+ const _hoisted_4 = ["id"];
70
+ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
71
+ const _component_close = vue.resolveComponent("close");
72
+ const _component_el_icon = vue.resolveComponent("el-icon");
73
+ const _component_el_focus_trap = vue.resolveComponent("el-focus-trap");
74
+ const _component_el_overlay = vue.resolveComponent("el-overlay");
75
+ return vue.openBlock(), vue.createBlock(vue.Teleport, {
76
+ to: "body",
77
+ disabled: !_ctx.appendToBody
78
+ }, [
79
+ vue.createVNode(vue.Transition, {
80
+ name: _ctx.ns.b("fade"),
81
+ onAfterEnter: _ctx.afterEnter,
82
+ onAfterLeave: _ctx.afterLeave,
83
+ onBeforeLeave: _ctx.beforeLeave,
84
+ persisted: ""
85
+ }, {
86
+ default: vue.withCtx(() => [
87
+ vue.withDirectives(vue.createVNode(_component_el_overlay, {
88
+ mask: _ctx.modal,
89
+ "overlay-class": _ctx.modalClass,
90
+ "z-index": _ctx.zIndex,
91
+ onClick: _ctx.onModalClick
92
+ }, {
93
+ default: vue.withCtx(() => [
94
+ vue.createVNode(_component_el_focus_trap, {
95
+ loop: "",
96
+ trapped: _ctx.visible,
97
+ "focus-trap-el": _ctx.drawerRef,
98
+ "focus-start-el": _ctx.focusStartRef,
99
+ onReleaseRequested: _ctx.onCloseRequested
100
+ }, {
101
+ default: vue.withCtx(() => [
102
+ vue.createElementVNode("div", vue.mergeProps({
103
+ ref: "drawerRef",
104
+ "aria-modal": "true",
105
+ "aria-label": _ctx.title || void 0,
106
+ "aria-labelledby": !_ctx.title ? _ctx.titleId : void 0,
107
+ "aria-describedby": _ctx.bodyId
108
+ }, _ctx.$attrs, {
109
+ class: [_ctx.ns.b(), _ctx.direction, _ctx.visible && "open", _ctx.customClass],
110
+ style: _ctx.isHorizontal ? "width: " + _ctx.drawerSize : "height: " + _ctx.drawerSize,
111
+ role: "dialog",
112
+ onClick: _cache[1] || (_cache[1] = vue.withModifiers(() => {
113
+ }, ["stop"]))
114
+ }), [
115
+ vue.createElementVNode("span", {
116
+ ref: "focusStartRef",
117
+ class: vue.normalizeClass(_ctx.ns.e("sr-focus")),
118
+ tabindex: "-1"
119
+ }, null, 2),
120
+ _ctx.withHeader ? (vue.openBlock(), vue.createElementBlock("header", {
121
+ key: 0,
122
+ class: vue.normalizeClass(_ctx.ns.e("header"))
123
+ }, [
124
+ !_ctx.$slots.title ? vue.renderSlot(_ctx.$slots, "header", {
125
+ key: 0,
126
+ close: _ctx.handleClose,
127
+ titleId: _ctx.titleId,
128
+ titleClass: _ctx.ns.e("title")
129
+ }, () => [
130
+ !_ctx.$slots.title ? (vue.openBlock(), vue.createElementBlock("span", {
131
+ key: 0,
132
+ id: _ctx.titleId,
133
+ role: "heading",
134
+ "aria-level": _ctx.headerAriaLevel,
135
+ class: vue.normalizeClass(_ctx.ns.e("title"))
136
+ }, vue.toDisplayString(_ctx.title), 11, _hoisted_2)) : vue.createCommentVNode("v-if", true)
137
+ ]) : vue.renderSlot(_ctx.$slots, "title", { key: 1 }, () => [
138
+ vue.createCommentVNode(" DEPRECATED SLOT ")
139
+ ]),
140
+ _ctx.showClose ? (vue.openBlock(), vue.createElementBlock("button", {
141
+ key: 2,
142
+ "aria-label": _ctx.t("el.drawer.close"),
143
+ class: vue.normalizeClass(_ctx.ns.e("close-btn")),
144
+ type: "button",
145
+ onClick: _cache[0] || (_cache[0] = (...args) => _ctx.handleClose && _ctx.handleClose(...args))
146
+ }, [
147
+ vue.createVNode(_component_el_icon, {
148
+ class: vue.normalizeClass(_ctx.ns.e("close"))
149
+ }, {
150
+ default: vue.withCtx(() => [
151
+ vue.createVNode(_component_close)
152
+ ]),
153
+ _: 1
154
+ }, 8, ["class"])
155
+ ], 10, _hoisted_3)) : vue.createCommentVNode("v-if", true)
156
+ ], 2)) : vue.createCommentVNode("v-if", true),
157
+ _ctx.rendered ? (vue.openBlock(), vue.createElementBlock("div", {
158
+ key: 1,
159
+ id: _ctx.bodyId,
160
+ class: vue.normalizeClass(_ctx.ns.e("body"))
161
+ }, [
162
+ vue.renderSlot(_ctx.$slots, "default")
163
+ ], 10, _hoisted_4)) : vue.createCommentVNode("v-if", true),
164
+ _ctx.$slots.footer ? (vue.openBlock(), vue.createElementBlock("div", {
165
+ key: 2,
166
+ class: vue.normalizeClass(_ctx.ns.e("footer"))
167
+ }, [
168
+ vue.renderSlot(_ctx.$slots, "footer")
169
+ ], 2)) : vue.createCommentVNode("v-if", true)
170
+ ], 16, _hoisted_1)
171
+ ]),
172
+ _: 3
173
+ }, 8, ["trapped", "focus-trap-el", "focus-start-el", "onReleaseRequested"])
174
+ ]),
175
+ _: 3
176
+ }, 8, ["mask", "overlay-class", "z-index", "onClick"]), [
177
+ [vue.vShow, _ctx.visible]
178
+ ])
179
+ ]),
180
+ _: 3
181
+ }, 8, ["name", "onAfterEnter", "onAfterLeave", "onBeforeLeave"])
182
+ ], 8, ["disabled"]);
183
+ }
184
+ var Drawer = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["render", _sfc_render], ["__file", "drawer.vue"]]);
35
185
 
36
- exports.drawerEmits = drawerEmits;
37
- exports.drawerProps = drawerProps;
186
+ exports["default"] = Drawer;
38
187
  //# sourceMappingURL=drawer2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"drawer2.js","sources":["../../../../../../packages/components/drawer/src/drawer.ts"],"sourcesContent":["import { buildProps } from '@element-plus/utils'\nimport { dialogEmits, dialogProps } from '@element-plus/components/dialog'\nimport type { ExtractPropTypes } from 'vue'\n\nexport const drawerProps = buildProps({\n ...dialogProps,\n direction: {\n type: String,\n default: 'rtl',\n values: ['ltr', 'rtl', 'ttb', 'btt'],\n },\n size: {\n type: [String, Number],\n default: '30%',\n },\n withHeader: {\n type: Boolean,\n default: true,\n },\n modalFade: {\n type: Boolean,\n default: true,\n },\n headerAriaLevel: {\n type: String,\n default: '2',\n },\n} as const)\n\nexport type DrawerProps = ExtractPropTypes<typeof drawerProps>\n\nexport const drawerEmits = dialogEmits\n"],"names":["buildProps","dialogProps","dialogEmits"],"mappings":";;;;;;;;;AAEY,MAAC,WAAW,GAAGA,kBAAU,CAAC;AACtC,EAAE,GAAGC,kBAAW;AAChB,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,KAAK;AAClB,IAAI,MAAM,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC;AACxC,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;AAC1B,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,eAAe,EAAE;AACnB,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,GAAG;AAChB,GAAG;AACH,CAAC,EAAE;AACS,MAAC,WAAW,GAAGC;;;;;"}
1
+ {"version":3,"file":"drawer2.js","sources":["../../../../../../packages/components/drawer/src/drawer.vue"],"sourcesContent":["<template>\n <teleport to=\"body\" :disabled=\"!appendToBody\">\n <transition\n :name=\"ns.b('fade')\"\n @after-enter=\"afterEnter\"\n @after-leave=\"afterLeave\"\n @before-leave=\"beforeLeave\"\n >\n <el-overlay\n v-show=\"visible\"\n :mask=\"modal\"\n :overlay-class=\"modalClass\"\n :z-index=\"zIndex\"\n @click=\"onModalClick\"\n >\n <el-focus-trap\n loop\n :trapped=\"visible\"\n :focus-trap-el=\"drawerRef\"\n :focus-start-el=\"focusStartRef\"\n @release-requested=\"onCloseRequested\"\n >\n <div\n ref=\"drawerRef\"\n aria-modal=\"true\"\n :aria-label=\"title || undefined\"\n :aria-labelledby=\"!title ? titleId : undefined\"\n :aria-describedby=\"bodyId\"\n v-bind=\"$attrs\"\n :class=\"[ns.b(), direction, visible && 'open', customClass]\"\n :style=\"\n isHorizontal ? 'width: ' + drawerSize : 'height: ' + drawerSize\n \"\n role=\"dialog\"\n @click.stop\n >\n <span ref=\"focusStartRef\" :class=\"ns.e('sr-focus')\" tabindex=\"-1\" />\n <header v-if=\"withHeader\" :class=\"ns.e('header')\">\n <slot\n v-if=\"!$slots.title\"\n name=\"header\"\n :close=\"handleClose\"\n :title-id=\"titleId\"\n :title-class=\"ns.e('title')\"\n >\n <span\n v-if=\"!$slots.title\"\n :id=\"titleId\"\n role=\"heading\"\n :aria-level=\"headerAriaLevel\"\n :class=\"ns.e('title')\"\n >\n {{ title }}\n </span>\n </slot>\n <slot v-else name=\"title\">\n <!-- DEPRECATED SLOT -->\n </slot>\n <button\n v-if=\"showClose\"\n :aria-label=\"t('el.drawer.close')\"\n :class=\"ns.e('close-btn')\"\n type=\"button\"\n @click=\"handleClose\"\n >\n <el-icon :class=\"ns.e('close')\"><close /></el-icon>\n </button>\n </header>\n <template v-if=\"rendered\">\n <div :id=\"bodyId\" :class=\"ns.e('body')\">\n <slot />\n </div>\n </template>\n <div v-if=\"$slots.footer\" :class=\"ns.e('footer')\">\n <slot name=\"footer\" />\n </div>\n </div>\n </el-focus-trap>\n </el-overlay>\n </transition>\n </teleport>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, ref } from 'vue'\nimport { Close } from '@element-plus/icons-vue'\n\nimport { ElOverlay } from '@element-plus/components/overlay'\nimport ElFocusTrap from '@element-plus/components/focus-trap'\nimport { useDialog } from '@element-plus/components/dialog'\nimport { addUnit } from '@element-plus/utils'\nimport ElIcon from '@element-plus/components/icon'\nimport { useDeprecated, useLocale, useNamespace } from '@element-plus/hooks'\nimport { drawerEmits, drawerProps } from './drawer'\n\nexport default defineComponent({\n name: 'ElDrawer',\n components: {\n ElOverlay,\n ElFocusTrap,\n ElIcon,\n Close,\n },\n inheritAttrs: false,\n props: drawerProps,\n emits: drawerEmits,\n\n setup(props, { slots }) {\n useDeprecated(\n {\n scope: 'el-drawer',\n from: 'the title slot',\n replacement: 'the header slot',\n version: '3.0.0',\n ref: 'https://element-plus.org/en-US/component/drawer.html#slots',\n },\n computed(() => !!slots.title)\n )\n useDeprecated(\n {\n scope: 'el-drawer',\n from: 'custom-class',\n replacement: 'class',\n version: '2.3.0',\n ref: 'https://element-plus.org/en-US/component/drawer.html#attributes',\n type: 'Attribute',\n },\n computed(() => !!props.customClass)\n )\n\n const drawerRef = ref<HTMLElement>()\n const focusStartRef = ref<HTMLElement>()\n const ns = useNamespace('drawer')\n const { t } = useLocale()\n\n const isHorizontal = computed(\n () => props.direction === 'rtl' || props.direction === 'ltr'\n )\n const drawerSize = computed(() => addUnit(props.size))\n\n return {\n ...useDialog(props, drawerRef),\n drawerRef,\n focusStartRef,\n isHorizontal,\n drawerSize,\n ns,\n t,\n }\n },\n})\n</script>\n"],"names":["defineComponent","ElOverlay","ElFocusTrap","ElIcon","Close","drawerProps","drawerEmits","useDeprecated","computed","ref","useNamespace","useLocale","addUnit","useDialog","_createBlock","_Teleport","_createVNode","_Transition","_withDirectives","_createElementVNode","_mergeProps","_withModifiers","_normalizeClass","_openBlock","_createElementBlock","_renderSlot","_toDisplayString","_createCommentVNode"],"mappings":"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"}
@@ -93,6 +93,7 @@ export declare const ElForm: import("@element-plus/nightly/es/utils").SFCWithIns
93
93
  formClasses: import("vue").ComputedRef<(string | {
94
94
  [x: string]: boolean | import("@element-plus/nightly/es/utils").EpPropMergeType<StringConstructor, "top" | "right" | "left", unknown>;
95
95
  })[]>;
96
+ getField: (prop: string) => import("./src/types").FormItemContext | undefined;
96
97
  addField: (field: import("./src/types").FormItemContext) => void;
97
98
  removeField: (field: import("./src/types").FormItemContext) => void;
98
99
  resetFields: (props?: import("@element-plus/nightly/es/utils").Arrayable<import("./src/form-item").FormItemProp> | undefined) => void;
@@ -245,6 +245,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
245
245
  inputIds,
246
246
  isGroup,
247
247
  hasLabel,
248
+ fieldValue,
248
249
  addInputId,
249
250
  removeInputId,
250
251
  resetField,
@@ -1 +1 @@
1
- {"version":3,"file":"form-item2.js","sources":["../../../../../../packages/components/form/src/form-item.vue"],"sourcesContent":["<template>\n <div\n ref=\"formItemRef\"\n :class=\"formItemClasses\"\n :role=\"isGroup ? 'group' : undefined\"\n :aria-labelledby=\"isGroup ? labelId : undefined\"\n >\n <form-label-wrap\n :is-auto-width=\"labelStyle.width === 'auto'\"\n :update-all=\"formContext?.labelWidth === 'auto'\"\n >\n <component\n :is=\"labelFor ? 'label' : 'div'\"\n v-if=\"hasLabel\"\n :id=\"labelId\"\n :for=\"labelFor\"\n :class=\"ns.e('label')\"\n :style=\"labelStyle\"\n >\n <slot name=\"label\" :label=\"currentLabel\">\n {{ currentLabel }}\n </slot>\n </component>\n </form-label-wrap>\n\n <div :class=\"ns.e('content')\" :style=\"contentStyle\">\n <slot />\n <transition-group :name=\"`${ns.namespace.value}-zoom-in-top`\">\n <slot v-if=\"shouldShowError\" name=\"error\" :error=\"validateMessage\">\n <div :class=\"validateClasses\">\n {{ validateMessage }}\n </div>\n </slot>\n </transition-group>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport {\n computed,\n inject,\n nextTick,\n onBeforeUnmount,\n onMounted,\n provide,\n reactive,\n ref,\n toRefs,\n useSlots,\n watch,\n} from 'vue'\nimport AsyncValidator from 'async-validator'\nimport { clone } from 'lodash-unified'\nimport { refDebounced } from '@vueuse/core'\nimport {\n addUnit,\n ensureArray,\n getProp,\n isBoolean,\n isFunction,\n isString,\n} from '@element-plus/utils'\nimport { useId, useNamespace } from '@element-plus/hooks'\nimport { useFormSize } from './hooks'\nimport { formItemProps } from './form-item'\nimport FormLabelWrap from './form-label-wrap'\nimport { formContextKey, formItemContextKey } from './constants'\n\nimport type { CSSProperties } from 'vue'\nimport type { RuleItem } from 'async-validator'\nimport type { Arrayable } from '@element-plus/utils'\nimport type {\n FormItemContext,\n FormItemRule,\n FormValidateFailure,\n} from './types'\nimport type { FormItemValidateState } from './form-item'\n\ndefineOptions({\n name: 'ElFormItem',\n})\nconst props = defineProps(formItemProps)\nconst slots = useSlots()\n\nconst formContext = inject(formContextKey, undefined)\nconst parentFormItemContext = inject(formItemContextKey, undefined)\n\nconst _size = useFormSize(undefined, { formItem: false })\nconst ns = useNamespace('form-item')\n\nconst labelId = useId().value\nconst inputIds = ref<string[]>([])\n\nconst validateState = ref<FormItemValidateState>('')\nconst validateStateDebounced = refDebounced(validateState, 100)\nconst validateMessage = ref('')\nconst formItemRef = ref<HTMLDivElement>()\n// special inline value.\nlet initialValue: any = undefined\nlet isResettingField = false\n\nconst labelStyle = computed<CSSProperties>(() => {\n if (formContext?.labelPosition === 'top') {\n return {}\n }\n\n const labelWidth = addUnit(props.labelWidth || formContext?.labelWidth || '')\n if (labelWidth) return { width: labelWidth }\n return {}\n})\n\nconst contentStyle = computed<CSSProperties>(() => {\n if (formContext?.labelPosition === 'top' || formContext?.inline) {\n return {}\n }\n if (!props.label && !props.labelWidth && isNested) {\n return {}\n }\n const labelWidth = addUnit(props.labelWidth || formContext?.labelWidth || '')\n if (!props.label && !slots.label) {\n return { marginLeft: labelWidth }\n }\n return {}\n})\n\nconst formItemClasses = computed(() => [\n ns.b(),\n ns.m(_size.value),\n ns.is('error', validateState.value === 'error'),\n ns.is('validating', validateState.value === 'validating'),\n ns.is('success', validateState.value === 'success'),\n ns.is('required', isRequired.value || props.required),\n ns.is('no-asterisk', formContext?.hideRequiredAsterisk),\n formContext?.requireAsteriskPosition === 'right'\n ? 'asterisk-right'\n : 'asterisk-left',\n { [ns.m('feedback')]: formContext?.statusIcon },\n])\n\nconst _inlineMessage = computed(() =>\n isBoolean(props.inlineMessage)\n ? props.inlineMessage\n : formContext?.inlineMessage || false\n)\n\nconst validateClasses = computed(() => [\n ns.e('error'),\n { [ns.em('error', 'inline')]: _inlineMessage.value },\n])\n\nconst propString = computed(() => {\n if (!props.prop) return ''\n return isString(props.prop) ? props.prop : props.prop.join('.')\n})\n\nconst hasLabel = computed<boolean>(() => {\n return !!(props.label || slots.label)\n})\n\nconst labelFor = computed<string | undefined>(() => {\n return (\n props.for || (inputIds.value.length === 1 ? inputIds.value[0] : undefined)\n )\n})\n\nconst isGroup = computed<boolean>(() => {\n return !labelFor.value && hasLabel.value\n})\n\nconst isNested = !!parentFormItemContext\n\nconst fieldValue = computed(() => {\n const model = formContext?.model\n if (!model || !props.prop) {\n return\n }\n return getProp(model, props.prop).value\n})\n\nconst normalizedRules = computed(() => {\n const { required } = props\n\n const rules: FormItemRule[] = []\n\n if (props.rules) {\n rules.push(...ensureArray(props.rules))\n }\n\n const formRules = formContext?.rules\n if (formRules && props.prop) {\n const _rules = getProp<Arrayable<FormItemRule> | undefined>(\n formRules,\n props.prop\n ).value\n if (_rules) {\n rules.push(...ensureArray(_rules))\n }\n }\n\n if (required !== undefined) {\n const requiredRules = rules\n .map((rule, i) => [rule, i] as const)\n .filter(([rule]) => Object.keys(rule).includes('required'))\n\n if (requiredRules.length > 0) {\n for (const [rule, i] of requiredRules) {\n if (rule.required === required) continue\n rules[i] = { ...rule, required }\n }\n } else {\n rules.push({ required })\n }\n }\n\n return rules\n})\n\nconst validateEnabled = computed(() => normalizedRules.value.length > 0)\n\nconst getFilteredRule = (trigger: string) => {\n const rules = normalizedRules.value\n return (\n rules\n .filter((rule) => {\n if (!rule.trigger || !trigger) return true\n if (Array.isArray(rule.trigger)) {\n return rule.trigger.includes(trigger)\n } else {\n return rule.trigger === trigger\n }\n })\n // exclude trigger\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n .map(({ trigger, ...rule }): RuleItem => rule)\n )\n}\n\nconst isRequired = computed(() =>\n normalizedRules.value.some((rule) => rule.required)\n)\n\nconst shouldShowError = computed(\n () =>\n validateStateDebounced.value === 'error' &&\n props.showMessage &&\n (formContext?.showMessage ?? true)\n)\n\nconst currentLabel = computed(\n () => `${props.label || ''}${formContext?.labelSuffix || ''}`\n)\n\nconst setValidationState = (state: FormItemValidateState) => {\n validateState.value = state\n}\n\nconst onValidationFailed = (error: FormValidateFailure) => {\n const { errors, fields } = error\n if (!errors || !fields) {\n console.error(error)\n }\n\n setValidationState('error')\n validateMessage.value = errors\n ? errors?.[0]?.message ?? `${props.prop} is required`\n : ''\n\n formContext?.emit('validate', props.prop!, false, validateMessage.value)\n}\n\nconst onValidationSucceeded = () => {\n setValidationState('success')\n formContext?.emit('validate', props.prop!, true, '')\n}\n\nconst doValidate = async (rules: RuleItem[]): Promise<true> => {\n const modelName = propString.value\n const validator = new AsyncValidator({\n [modelName]: rules,\n })\n return validator\n .validate({ [modelName]: fieldValue.value }, { firstFields: true })\n .then(() => {\n onValidationSucceeded()\n return true as const\n })\n .catch((err: FormValidateFailure) => {\n onValidationFailed(err as FormValidateFailure)\n return Promise.reject(err)\n })\n}\n\nconst validate: FormItemContext['validate'] = async (trigger, callback) => {\n // skip validation if its resetting\n if (isResettingField || !props.prop) {\n return false\n }\n\n const hasCallback = isFunction(callback)\n if (!validateEnabled.value) {\n callback?.(false)\n return false\n }\n\n const rules = getFilteredRule(trigger)\n if (rules.length === 0) {\n callback?.(true)\n return true\n }\n\n setValidationState('validating')\n\n return doValidate(rules)\n .then(() => {\n callback?.(true)\n return true as const\n })\n .catch((err: FormValidateFailure) => {\n const { fields } = err\n callback?.(false, fields)\n return hasCallback ? false : Promise.reject(fields)\n })\n}\n\nconst clearValidate: FormItemContext['clearValidate'] = () => {\n setValidationState('')\n validateMessage.value = ''\n isResettingField = false\n}\n\nconst resetField: FormItemContext['resetField'] = async () => {\n const model = formContext?.model\n if (!model || !props.prop) return\n\n const computedValue = getProp(model, props.prop)\n\n // prevent validation from being triggered\n isResettingField = true\n\n computedValue.value = clone(initialValue)\n\n await nextTick()\n clearValidate()\n\n isResettingField = false\n}\n\nconst addInputId: FormItemContext['addInputId'] = (id: string) => {\n if (!inputIds.value.includes(id)) {\n inputIds.value.push(id)\n }\n}\n\nconst removeInputId: FormItemContext['removeInputId'] = (id: string) => {\n inputIds.value = inputIds.value.filter((listId) => listId !== id)\n}\n\nwatch(\n () => props.error,\n (val) => {\n validateMessage.value = val || ''\n setValidationState(val ? 'error' : '')\n },\n { immediate: true }\n)\n\nwatch(\n () => props.validateStatus,\n (val) => setValidationState(val || '')\n)\n\nconst context: FormItemContext = reactive({\n ...toRefs(props),\n $el: formItemRef,\n size: _size,\n validateState,\n labelId,\n inputIds,\n isGroup,\n hasLabel,\n addInputId,\n removeInputId,\n resetField,\n clearValidate,\n validate,\n})\n\nprovide(formItemContextKey, context)\n\nonMounted(() => {\n if (props.prop) {\n formContext?.addField(context)\n initialValue = clone(fieldValue.value)\n }\n})\n\nonBeforeUnmount(() => {\n formContext?.removeField(context)\n})\n\ndefineExpose({\n /**\n * @description Form item size.\n */\n size: _size,\n /**\n * @description Validation message.\n */\n validateMessage,\n /**\n * @description Validation state.\n */\n validateState,\n /**\n * @description Validate form item.\n */\n validate,\n /**\n * @description Remove validation status of the field.\n */\n clearValidate,\n /**\n * @description Reset current field and remove validation result.\n */\n resetField,\n})\n</script>\n"],"names":["useSlots","inject","formContextKey","formItemContextKey","useFormSize","useNamespace","useId","ref","refDebounced","computed","addUnit","isBoolean","isString","getProp","ensureArray","AsyncValidator","isFunction","clone","nextTick","watch","reactive","toRefs","provide","onMounted","onBeforeUnmount"],"mappings":"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"}
1
+ {"version":3,"file":"form-item2.js","sources":["../../../../../../packages/components/form/src/form-item.vue"],"sourcesContent":["<template>\n <div\n ref=\"formItemRef\"\n :class=\"formItemClasses\"\n :role=\"isGroup ? 'group' : undefined\"\n :aria-labelledby=\"isGroup ? labelId : undefined\"\n >\n <form-label-wrap\n :is-auto-width=\"labelStyle.width === 'auto'\"\n :update-all=\"formContext?.labelWidth === 'auto'\"\n >\n <component\n :is=\"labelFor ? 'label' : 'div'\"\n v-if=\"hasLabel\"\n :id=\"labelId\"\n :for=\"labelFor\"\n :class=\"ns.e('label')\"\n :style=\"labelStyle\"\n >\n <slot name=\"label\" :label=\"currentLabel\">\n {{ currentLabel }}\n </slot>\n </component>\n </form-label-wrap>\n\n <div :class=\"ns.e('content')\" :style=\"contentStyle\">\n <slot />\n <transition-group :name=\"`${ns.namespace.value}-zoom-in-top`\">\n <slot v-if=\"shouldShowError\" name=\"error\" :error=\"validateMessage\">\n <div :class=\"validateClasses\">\n {{ validateMessage }}\n </div>\n </slot>\n </transition-group>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport {\n computed,\n inject,\n nextTick,\n onBeforeUnmount,\n onMounted,\n provide,\n reactive,\n ref,\n toRefs,\n useSlots,\n watch,\n} from 'vue'\nimport AsyncValidator from 'async-validator'\nimport { clone } from 'lodash-unified'\nimport { refDebounced } from '@vueuse/core'\nimport {\n addUnit,\n ensureArray,\n getProp,\n isBoolean,\n isFunction,\n isString,\n} from '@element-plus/utils'\nimport { useId, useNamespace } from '@element-plus/hooks'\nimport { useFormSize } from './hooks'\nimport { formItemProps } from './form-item'\nimport FormLabelWrap from './form-label-wrap'\nimport { formContextKey, formItemContextKey } from './constants'\n\nimport type { CSSProperties } from 'vue'\nimport type { RuleItem } from 'async-validator'\nimport type { Arrayable } from '@element-plus/utils'\nimport type {\n FormItemContext,\n FormItemRule,\n FormValidateFailure,\n} from './types'\nimport type { FormItemValidateState } from './form-item'\n\ndefineOptions({\n name: 'ElFormItem',\n})\nconst props = defineProps(formItemProps)\nconst slots = useSlots()\n\nconst formContext = inject(formContextKey, undefined)\nconst parentFormItemContext = inject(formItemContextKey, undefined)\n\nconst _size = useFormSize(undefined, { formItem: false })\nconst ns = useNamespace('form-item')\n\nconst labelId = useId().value\nconst inputIds = ref<string[]>([])\n\nconst validateState = ref<FormItemValidateState>('')\nconst validateStateDebounced = refDebounced(validateState, 100)\nconst validateMessage = ref('')\nconst formItemRef = ref<HTMLDivElement>()\n// special inline value.\nlet initialValue: any = undefined\nlet isResettingField = false\n\nconst labelStyle = computed<CSSProperties>(() => {\n if (formContext?.labelPosition === 'top') {\n return {}\n }\n\n const labelWidth = addUnit(props.labelWidth || formContext?.labelWidth || '')\n if (labelWidth) return { width: labelWidth }\n return {}\n})\n\nconst contentStyle = computed<CSSProperties>(() => {\n if (formContext?.labelPosition === 'top' || formContext?.inline) {\n return {}\n }\n if (!props.label && !props.labelWidth && isNested) {\n return {}\n }\n const labelWidth = addUnit(props.labelWidth || formContext?.labelWidth || '')\n if (!props.label && !slots.label) {\n return { marginLeft: labelWidth }\n }\n return {}\n})\n\nconst formItemClasses = computed(() => [\n ns.b(),\n ns.m(_size.value),\n ns.is('error', validateState.value === 'error'),\n ns.is('validating', validateState.value === 'validating'),\n ns.is('success', validateState.value === 'success'),\n ns.is('required', isRequired.value || props.required),\n ns.is('no-asterisk', formContext?.hideRequiredAsterisk),\n formContext?.requireAsteriskPosition === 'right'\n ? 'asterisk-right'\n : 'asterisk-left',\n { [ns.m('feedback')]: formContext?.statusIcon },\n])\n\nconst _inlineMessage = computed(() =>\n isBoolean(props.inlineMessage)\n ? props.inlineMessage\n : formContext?.inlineMessage || false\n)\n\nconst validateClasses = computed(() => [\n ns.e('error'),\n { [ns.em('error', 'inline')]: _inlineMessage.value },\n])\n\nconst propString = computed(() => {\n if (!props.prop) return ''\n return isString(props.prop) ? props.prop : props.prop.join('.')\n})\n\nconst hasLabel = computed<boolean>(() => {\n return !!(props.label || slots.label)\n})\n\nconst labelFor = computed<string | undefined>(() => {\n return (\n props.for || (inputIds.value.length === 1 ? inputIds.value[0] : undefined)\n )\n})\n\nconst isGroup = computed<boolean>(() => {\n return !labelFor.value && hasLabel.value\n})\n\nconst isNested = !!parentFormItemContext\n\nconst fieldValue = computed(() => {\n const model = formContext?.model\n if (!model || !props.prop) {\n return\n }\n return getProp(model, props.prop).value\n})\n\nconst normalizedRules = computed(() => {\n const { required } = props\n\n const rules: FormItemRule[] = []\n\n if (props.rules) {\n rules.push(...ensureArray(props.rules))\n }\n\n const formRules = formContext?.rules\n if (formRules && props.prop) {\n const _rules = getProp<Arrayable<FormItemRule> | undefined>(\n formRules,\n props.prop\n ).value\n if (_rules) {\n rules.push(...ensureArray(_rules))\n }\n }\n\n if (required !== undefined) {\n const requiredRules = rules\n .map((rule, i) => [rule, i] as const)\n .filter(([rule]) => Object.keys(rule).includes('required'))\n\n if (requiredRules.length > 0) {\n for (const [rule, i] of requiredRules) {\n if (rule.required === required) continue\n rules[i] = { ...rule, required }\n }\n } else {\n rules.push({ required })\n }\n }\n\n return rules\n})\n\nconst validateEnabled = computed(() => normalizedRules.value.length > 0)\n\nconst getFilteredRule = (trigger: string) => {\n const rules = normalizedRules.value\n return (\n rules\n .filter((rule) => {\n if (!rule.trigger || !trigger) return true\n if (Array.isArray(rule.trigger)) {\n return rule.trigger.includes(trigger)\n } else {\n return rule.trigger === trigger\n }\n })\n // exclude trigger\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n .map(({ trigger, ...rule }): RuleItem => rule)\n )\n}\n\nconst isRequired = computed(() =>\n normalizedRules.value.some((rule) => rule.required)\n)\n\nconst shouldShowError = computed(\n () =>\n validateStateDebounced.value === 'error' &&\n props.showMessage &&\n (formContext?.showMessage ?? true)\n)\n\nconst currentLabel = computed(\n () => `${props.label || ''}${formContext?.labelSuffix || ''}`\n)\n\nconst setValidationState = (state: FormItemValidateState) => {\n validateState.value = state\n}\n\nconst onValidationFailed = (error: FormValidateFailure) => {\n const { errors, fields } = error\n if (!errors || !fields) {\n console.error(error)\n }\n\n setValidationState('error')\n validateMessage.value = errors\n ? errors?.[0]?.message ?? `${props.prop} is required`\n : ''\n\n formContext?.emit('validate', props.prop!, false, validateMessage.value)\n}\n\nconst onValidationSucceeded = () => {\n setValidationState('success')\n formContext?.emit('validate', props.prop!, true, '')\n}\n\nconst doValidate = async (rules: RuleItem[]): Promise<true> => {\n const modelName = propString.value\n const validator = new AsyncValidator({\n [modelName]: rules,\n })\n return validator\n .validate({ [modelName]: fieldValue.value }, { firstFields: true })\n .then(() => {\n onValidationSucceeded()\n return true as const\n })\n .catch((err: FormValidateFailure) => {\n onValidationFailed(err as FormValidateFailure)\n return Promise.reject(err)\n })\n}\n\nconst validate: FormItemContext['validate'] = async (trigger, callback) => {\n // skip validation if its resetting\n if (isResettingField || !props.prop) {\n return false\n }\n\n const hasCallback = isFunction(callback)\n if (!validateEnabled.value) {\n callback?.(false)\n return false\n }\n\n const rules = getFilteredRule(trigger)\n if (rules.length === 0) {\n callback?.(true)\n return true\n }\n\n setValidationState('validating')\n\n return doValidate(rules)\n .then(() => {\n callback?.(true)\n return true as const\n })\n .catch((err: FormValidateFailure) => {\n const { fields } = err\n callback?.(false, fields)\n return hasCallback ? false : Promise.reject(fields)\n })\n}\n\nconst clearValidate: FormItemContext['clearValidate'] = () => {\n setValidationState('')\n validateMessage.value = ''\n isResettingField = false\n}\n\nconst resetField: FormItemContext['resetField'] = async () => {\n const model = formContext?.model\n if (!model || !props.prop) return\n\n const computedValue = getProp(model, props.prop)\n\n // prevent validation from being triggered\n isResettingField = true\n\n computedValue.value = clone(initialValue)\n\n await nextTick()\n clearValidate()\n\n isResettingField = false\n}\n\nconst addInputId: FormItemContext['addInputId'] = (id: string) => {\n if (!inputIds.value.includes(id)) {\n inputIds.value.push(id)\n }\n}\n\nconst removeInputId: FormItemContext['removeInputId'] = (id: string) => {\n inputIds.value = inputIds.value.filter((listId) => listId !== id)\n}\n\nwatch(\n () => props.error,\n (val) => {\n validateMessage.value = val || ''\n setValidationState(val ? 'error' : '')\n },\n { immediate: true }\n)\n\nwatch(\n () => props.validateStatus,\n (val) => setValidationState(val || '')\n)\n\nconst context: FormItemContext = reactive({\n ...toRefs(props),\n $el: formItemRef,\n size: _size,\n validateState,\n labelId,\n inputIds,\n isGroup,\n hasLabel,\n fieldValue,\n addInputId,\n removeInputId,\n resetField,\n clearValidate,\n validate,\n})\n\nprovide(formItemContextKey, context)\n\nonMounted(() => {\n if (props.prop) {\n formContext?.addField(context)\n initialValue = clone(fieldValue.value)\n }\n})\n\nonBeforeUnmount(() => {\n formContext?.removeField(context)\n})\n\ndefineExpose({\n /**\n * @description Form item size.\n */\n size: _size,\n /**\n * @description Validation message.\n */\n validateMessage,\n /**\n * @description Validation state.\n */\n validateState,\n /**\n * @description Validate form item.\n */\n validate,\n /**\n * @description Remove validation status of the field.\n */\n clearValidate,\n /**\n * @description Reset current field and remove validation result.\n */\n resetField,\n})\n</script>\n"],"names":["useSlots","inject","formContextKey","formItemContextKey","useFormSize","useNamespace","useId","ref","refDebounced","computed","addUnit","isBoolean","isString","getProp","ensureArray","AsyncValidator","isFunction","clone","nextTick","watch","reactive","toRefs","provide","onMounted","onBeforeUnmount"],"mappings":"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"}
@@ -94,6 +94,7 @@ declare const _default: import("vue").DefineComponent<{
94
94
  formClasses: import("vue").ComputedRef<(string | {
95
95
  [x: string]: boolean | import("@element-plus/nightly/es/utils").EpPropMergeType<StringConstructor, "top" | "right" | "left", unknown>;
96
96
  })[]>;
97
+ getField: (prop: string) => FormItemContext | undefined;
97
98
  addField: (field: FormItemContext) => void;
98
99
  removeField: (field: FormItemContext) => void;
99
100
  resetFields: (props?: Arrayable<FormItemProp> | undefined) => void;