@element-plus/nightly 0.0.20231205 → 0.0.20231207
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.
- package/attributes.json +1 -1
- package/dist/index.full.js +53 -18
- package/dist/index.full.min.js +11 -11
- package/dist/index.full.min.js.map +1 -1
- package/dist/index.full.min.mjs +11 -11
- package/dist/index.full.min.mjs.map +1 -1
- package/dist/index.full.mjs +53 -18
- package/dist/locale/af.js +1 -1
- package/dist/locale/af.min.js +1 -1
- package/dist/locale/af.min.mjs +1 -1
- package/dist/locale/af.mjs +1 -1
- package/dist/locale/ar.js +1 -1
- package/dist/locale/ar.min.js +1 -1
- package/dist/locale/ar.min.mjs +1 -1
- package/dist/locale/ar.mjs +1 -1
- package/dist/locale/az.js +1 -1
- package/dist/locale/az.min.js +1 -1
- package/dist/locale/az.min.mjs +1 -1
- package/dist/locale/az.mjs +1 -1
- package/dist/locale/bg.js +1 -1
- package/dist/locale/bg.min.js +1 -1
- package/dist/locale/bg.min.mjs +1 -1
- package/dist/locale/bg.mjs +1 -1
- package/dist/locale/bn.js +1 -1
- package/dist/locale/bn.min.js +1 -1
- package/dist/locale/bn.min.mjs +1 -1
- package/dist/locale/bn.mjs +1 -1
- package/dist/locale/ca.js +1 -1
- package/dist/locale/ca.min.js +1 -1
- package/dist/locale/ca.min.mjs +1 -1
- package/dist/locale/ca.mjs +1 -1
- package/dist/locale/ckb.js +1 -1
- package/dist/locale/ckb.min.js +1 -1
- package/dist/locale/ckb.min.mjs +1 -1
- package/dist/locale/ckb.mjs +1 -1
- package/dist/locale/cs.js +1 -1
- package/dist/locale/cs.min.js +1 -1
- package/dist/locale/cs.min.mjs +1 -1
- package/dist/locale/cs.mjs +1 -1
- package/dist/locale/da.js +1 -1
- package/dist/locale/da.min.js +1 -1
- package/dist/locale/da.min.mjs +1 -1
- package/dist/locale/da.mjs +1 -1
- package/dist/locale/de.js +1 -1
- package/dist/locale/de.min.js +1 -1
- package/dist/locale/de.min.mjs +1 -1
- package/dist/locale/de.mjs +1 -1
- package/dist/locale/el.js +1 -1
- package/dist/locale/el.min.js +1 -1
- package/dist/locale/el.min.mjs +1 -1
- package/dist/locale/el.mjs +1 -1
- package/dist/locale/en.js +1 -1
- package/dist/locale/en.min.js +1 -1
- package/dist/locale/en.min.mjs +1 -1
- package/dist/locale/en.mjs +1 -1
- package/dist/locale/eo.js +1 -1
- package/dist/locale/eo.min.js +1 -1
- package/dist/locale/eo.min.mjs +1 -1
- package/dist/locale/eo.mjs +1 -1
- package/dist/locale/es.js +1 -1
- package/dist/locale/es.min.js +1 -1
- package/dist/locale/es.min.mjs +1 -1
- package/dist/locale/es.mjs +1 -1
- package/dist/locale/et.js +1 -1
- package/dist/locale/et.min.js +1 -1
- package/dist/locale/et.min.mjs +1 -1
- package/dist/locale/et.mjs +1 -1
- package/dist/locale/eu.js +1 -1
- package/dist/locale/eu.min.js +1 -1
- package/dist/locale/eu.min.mjs +1 -1
- package/dist/locale/eu.mjs +1 -1
- package/dist/locale/fa.js +1 -1
- package/dist/locale/fa.min.js +1 -1
- package/dist/locale/fa.min.mjs +1 -1
- package/dist/locale/fa.mjs +1 -1
- package/dist/locale/fi.js +1 -1
- package/dist/locale/fi.min.js +1 -1
- package/dist/locale/fi.min.mjs +1 -1
- package/dist/locale/fi.mjs +1 -1
- package/dist/locale/fr.js +1 -1
- package/dist/locale/fr.min.js +1 -1
- package/dist/locale/fr.min.mjs +1 -1
- package/dist/locale/fr.mjs +1 -1
- package/dist/locale/he.js +1 -1
- package/dist/locale/he.min.js +1 -1
- package/dist/locale/he.min.mjs +1 -1
- package/dist/locale/he.mjs +1 -1
- package/dist/locale/hr.js +1 -1
- package/dist/locale/hr.min.js +1 -1
- package/dist/locale/hr.min.mjs +1 -1
- package/dist/locale/hr.mjs +1 -1
- package/dist/locale/hu.js +1 -1
- package/dist/locale/hu.min.js +1 -1
- package/dist/locale/hu.min.mjs +1 -1
- package/dist/locale/hu.mjs +1 -1
- package/dist/locale/hy-am.js +1 -1
- package/dist/locale/hy-am.min.js +1 -1
- package/dist/locale/hy-am.min.mjs +1 -1
- package/dist/locale/hy-am.mjs +1 -1
- package/dist/locale/id.js +1 -1
- package/dist/locale/id.min.js +1 -1
- package/dist/locale/id.min.mjs +1 -1
- package/dist/locale/id.mjs +1 -1
- package/dist/locale/it.js +1 -1
- package/dist/locale/it.min.js +1 -1
- package/dist/locale/it.min.mjs +1 -1
- package/dist/locale/it.mjs +1 -1
- package/dist/locale/ja.js +1 -1
- package/dist/locale/ja.min.js +1 -1
- package/dist/locale/ja.min.mjs +1 -1
- package/dist/locale/ja.mjs +1 -1
- package/dist/locale/kk.js +1 -1
- package/dist/locale/kk.min.js +1 -1
- package/dist/locale/kk.min.mjs +1 -1
- package/dist/locale/kk.mjs +1 -1
- package/dist/locale/km.js +1 -1
- package/dist/locale/km.min.js +1 -1
- package/dist/locale/km.min.mjs +1 -1
- package/dist/locale/km.mjs +1 -1
- package/dist/locale/ko.js +1 -1
- package/dist/locale/ko.min.js +1 -1
- package/dist/locale/ko.min.mjs +1 -1
- package/dist/locale/ko.mjs +1 -1
- package/dist/locale/ku.js +1 -1
- package/dist/locale/ku.min.js +1 -1
- package/dist/locale/ku.min.mjs +1 -1
- package/dist/locale/ku.mjs +1 -1
- package/dist/locale/ky.js +1 -1
- package/dist/locale/ky.min.js +1 -1
- package/dist/locale/ky.min.mjs +1 -1
- package/dist/locale/ky.mjs +1 -1
- package/dist/locale/lt.js +1 -1
- package/dist/locale/lt.min.js +1 -1
- package/dist/locale/lt.min.mjs +1 -1
- package/dist/locale/lt.mjs +1 -1
- package/dist/locale/lv.js +1 -1
- package/dist/locale/lv.min.js +1 -1
- package/dist/locale/lv.min.mjs +1 -1
- package/dist/locale/lv.mjs +1 -1
- package/dist/locale/mg.js +1 -1
- package/dist/locale/mg.min.js +1 -1
- package/dist/locale/mg.min.mjs +1 -1
- package/dist/locale/mg.mjs +1 -1
- package/dist/locale/mn.js +1 -1
- package/dist/locale/mn.min.js +1 -1
- package/dist/locale/mn.min.mjs +1 -1
- package/dist/locale/mn.mjs +1 -1
- package/dist/locale/nb-no.js +1 -1
- package/dist/locale/nb-no.min.js +1 -1
- package/dist/locale/nb-no.min.mjs +1 -1
- package/dist/locale/nb-no.mjs +1 -1
- package/dist/locale/nl.js +1 -1
- package/dist/locale/nl.min.js +1 -1
- package/dist/locale/nl.min.mjs +1 -1
- package/dist/locale/nl.mjs +1 -1
- package/dist/locale/pa.js +1 -1
- package/dist/locale/pa.min.js +1 -1
- package/dist/locale/pa.min.mjs +1 -1
- package/dist/locale/pa.mjs +1 -1
- package/dist/locale/pl.js +1 -1
- package/dist/locale/pl.min.js +1 -1
- package/dist/locale/pl.min.mjs +1 -1
- package/dist/locale/pl.mjs +1 -1
- package/dist/locale/pt-br.js +1 -1
- package/dist/locale/pt-br.min.js +1 -1
- package/dist/locale/pt-br.min.mjs +1 -1
- package/dist/locale/pt-br.mjs +1 -1
- package/dist/locale/pt.js +1 -1
- package/dist/locale/pt.min.js +1 -1
- package/dist/locale/pt.min.mjs +1 -1
- package/dist/locale/pt.mjs +1 -1
- package/dist/locale/ro.js +1 -1
- package/dist/locale/ro.min.js +1 -1
- package/dist/locale/ro.min.mjs +1 -1
- package/dist/locale/ro.mjs +1 -1
- package/dist/locale/ru.js +1 -1
- package/dist/locale/ru.min.js +1 -1
- package/dist/locale/ru.min.mjs +1 -1
- package/dist/locale/ru.mjs +1 -1
- package/dist/locale/sk.js +1 -1
- package/dist/locale/sk.min.js +1 -1
- package/dist/locale/sk.min.mjs +1 -1
- package/dist/locale/sk.mjs +1 -1
- package/dist/locale/sl.js +1 -1
- package/dist/locale/sl.min.js +1 -1
- package/dist/locale/sl.min.mjs +1 -1
- package/dist/locale/sl.mjs +1 -1
- package/dist/locale/sr.js +1 -1
- package/dist/locale/sr.min.js +1 -1
- package/dist/locale/sr.min.mjs +1 -1
- package/dist/locale/sr.mjs +1 -1
- package/dist/locale/sv.js +1 -1
- package/dist/locale/sv.min.js +1 -1
- package/dist/locale/sv.min.mjs +1 -1
- package/dist/locale/sv.mjs +1 -1
- package/dist/locale/sw.js +1 -1
- package/dist/locale/sw.min.js +1 -1
- package/dist/locale/sw.min.mjs +1 -1
- package/dist/locale/sw.mjs +1 -1
- package/dist/locale/ta.js +1 -1
- package/dist/locale/ta.min.js +1 -1
- package/dist/locale/ta.min.mjs +1 -1
- package/dist/locale/ta.mjs +1 -1
- package/dist/locale/th.js +1 -1
- package/dist/locale/th.min.js +1 -1
- package/dist/locale/th.min.mjs +1 -1
- package/dist/locale/th.mjs +1 -1
- package/dist/locale/tk.js +1 -1
- package/dist/locale/tk.min.js +1 -1
- package/dist/locale/tk.min.mjs +1 -1
- package/dist/locale/tk.mjs +1 -1
- package/dist/locale/tr.js +1 -1
- package/dist/locale/tr.min.js +1 -1
- package/dist/locale/tr.min.mjs +1 -1
- package/dist/locale/tr.mjs +1 -1
- package/dist/locale/ug-cn.js +1 -1
- package/dist/locale/ug-cn.min.js +1 -1
- package/dist/locale/ug-cn.min.mjs +1 -1
- package/dist/locale/ug-cn.mjs +1 -1
- package/dist/locale/uk.js +1 -1
- package/dist/locale/uk.min.js +1 -1
- package/dist/locale/uk.min.mjs +1 -1
- package/dist/locale/uk.mjs +1 -1
- package/dist/locale/uz-uz.js +1 -1
- package/dist/locale/uz-uz.min.js +1 -1
- package/dist/locale/uz-uz.min.mjs +1 -1
- package/dist/locale/uz-uz.mjs +1 -1
- package/dist/locale/vi.js +1 -1
- package/dist/locale/vi.min.js +1 -1
- package/dist/locale/vi.min.mjs +1 -1
- package/dist/locale/vi.mjs +1 -1
- package/dist/locale/zh-cn.js +1 -1
- package/dist/locale/zh-cn.min.js +1 -1
- package/dist/locale/zh-cn.min.mjs +1 -1
- package/dist/locale/zh-cn.mjs +1 -1
- package/dist/locale/zh-tw.js +1 -1
- package/dist/locale/zh-tw.min.js +1 -1
- package/dist/locale/zh-tw.min.mjs +1 -1
- package/dist/locale/zh-tw.mjs +1 -1
- package/es/components/form/index.mjs +2 -2
- package/es/components/form/src/form-item.mjs +43 -317
- package/es/components/form/src/form-item.mjs.map +1 -1
- package/es/components/form/src/form-item2.mjs +317 -43
- package/es/components/form/src/form-item2.mjs.map +1 -1
- package/es/components/index.mjs +4 -4
- package/es/components/menu/index.d.ts +12 -6
- package/es/components/menu/src/menu.d.ts +9 -1
- package/es/components/menu/src/menu.mjs +14 -2
- package/es/components/menu/src/menu.mjs.map +1 -1
- package/es/components/menu/src/sub-menu.d.ts +4 -4
- package/es/components/menu/src/sub-menu.mjs +6 -2
- package/es/components/menu/src/sub-menu.mjs.map +1 -1
- package/es/components/page-header/index.mjs +2 -2
- package/es/components/page-header/src/page-header.mjs +17 -103
- package/es/components/page-header/src/page-header.mjs.map +1 -1
- package/es/components/page-header/src/page-header2.mjs +103 -17
- package/es/components/page-header/src/page-header2.mjs.map +1 -1
- package/es/components/rate/index.mjs +2 -2
- package/es/components/rate/src/rate.mjs +87 -260
- package/es/components/rate/src/rate.mjs.map +1 -1
- package/es/components/rate/src/rate2.mjs +260 -87
- package/es/components/rate/src/rate2.mjs.map +1 -1
- package/es/components/scrollbar/index.mjs +1 -1
- package/es/components/scrollbar/src/bar2.mjs +1 -1
- package/es/components/scrollbar/src/thumb.mjs +11 -130
- package/es/components/scrollbar/src/thumb.mjs.map +1 -1
- package/es/components/scrollbar/src/thumb2.mjs +130 -11
- package/es/components/scrollbar/src/thumb2.mjs.map +1 -1
- package/es/components/table/src/util.mjs +32 -13
- package/es/components/table/src/util.mjs.map +1 -1
- package/es/components/tooltip-v2/index.mjs +1 -1
- package/es/components/tooltip-v2/src/arrow.mjs +37 -22
- package/es/components/tooltip-v2/src/arrow.mjs.map +1 -1
- package/es/components/tooltip-v2/src/arrow2.mjs +22 -37
- package/es/components/tooltip-v2/src/arrow2.mjs.map +1 -1
- package/es/components/tooltip-v2/src/tooltip.mjs +1 -1
- package/es/components/tooltip-v2/src/tooltip2.mjs +2 -2
- package/es/index.mjs +4 -4
- package/es/version.d.ts +1 -1
- package/es/version.mjs +1 -1
- package/es/version.mjs.map +1 -1
- package/lib/components/form/index.js +2 -2
- package/lib/components/form/src/form-item.js +44 -321
- package/lib/components/form/src/form-item.js.map +1 -1
- package/lib/components/form/src/form-item2.js +321 -44
- package/lib/components/form/src/form-item2.js.map +1 -1
- package/lib/components/index.js +4 -4
- package/lib/components/menu/index.d.ts +12 -6
- package/lib/components/menu/src/menu.d.ts +9 -1
- package/lib/components/menu/src/menu.js +14 -2
- package/lib/components/menu/src/menu.js.map +1 -1
- package/lib/components/menu/src/sub-menu.d.ts +4 -4
- package/lib/components/menu/src/sub-menu.js +6 -2
- package/lib/components/menu/src/sub-menu.js.map +1 -1
- package/lib/components/page-header/index.js +2 -2
- package/lib/components/page-header/src/page-header.js +18 -103
- package/lib/components/page-header/src/page-header.js.map +1 -1
- package/lib/components/page-header/src/page-header2.js +103 -18
- package/lib/components/page-header/src/page-header2.js.map +1 -1
- package/lib/components/rate/index.js +2 -2
- package/lib/components/rate/src/rate.js +87 -259
- package/lib/components/rate/src/rate.js.map +1 -1
- package/lib/components/rate/src/rate2.js +259 -87
- package/lib/components/rate/src/rate2.js.map +1 -1
- package/lib/components/scrollbar/index.js +1 -1
- package/lib/components/scrollbar/src/bar2.js +1 -1
- package/lib/components/scrollbar/src/thumb.js +11 -130
- package/lib/components/scrollbar/src/thumb.js.map +1 -1
- package/lib/components/scrollbar/src/thumb2.js +130 -11
- package/lib/components/scrollbar/src/thumb2.js.map +1 -1
- package/lib/components/table/src/util.js +32 -13
- package/lib/components/table/src/util.js.map +1 -1
- package/lib/components/tooltip-v2/index.js +1 -1
- package/lib/components/tooltip-v2/src/arrow.js +37 -23
- package/lib/components/tooltip-v2/src/arrow.js.map +1 -1
- package/lib/components/tooltip-v2/src/arrow2.js +23 -37
- package/lib/components/tooltip-v2/src/arrow2.js.map +1 -1
- package/lib/components/tooltip-v2/src/tooltip.js +1 -1
- package/lib/components/tooltip-v2/src/tooltip2.js +2 -2
- package/lib/index.js +4 -4
- package/lib/version.d.ts +1 -1
- package/lib/version.js +1 -1
- package/lib/version.js.map +1 -1
- package/package.json +2 -2
- package/tags.json +1 -1
- package/web-types.json +1 -1
|
@@ -1,49 +1,323 @@
|
|
|
1
|
-
import '
|
|
1
|
+
import { defineComponent, useSlots, inject, ref, computed, nextTick, watch, reactive, toRefs, provide, onMounted, onBeforeUnmount, openBlock, createElementBlock, normalizeClass, unref, createVNode, withCtx, createBlock, resolveDynamicComponent, normalizeStyle, renderSlot, createTextVNode, toDisplayString, createCommentVNode, createElementVNode, TransitionGroup } from 'vue';
|
|
2
|
+
import AsyncValidator from 'async-validator';
|
|
3
|
+
import { castArray, clone } from 'lodash-unified';
|
|
4
|
+
import { refDebounced } from '@vueuse/core';
|
|
2
5
|
import '../../../utils/index.mjs';
|
|
3
|
-
import
|
|
4
|
-
import
|
|
6
|
+
import '../../../hooks/index.mjs';
|
|
7
|
+
import './hooks/index.mjs';
|
|
8
|
+
import { formItemProps } from './form-item.mjs';
|
|
9
|
+
import FormLabelWrap from './form-label-wrap.mjs';
|
|
10
|
+
import { formContextKey, formItemContextKey } from './constants.mjs';
|
|
11
|
+
import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
|
|
12
|
+
import { useFormSize } from './hooks/use-form-common-props.mjs';
|
|
13
|
+
import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
|
|
14
|
+
import { useId } from '../../../hooks/use-id/index.mjs';
|
|
15
|
+
import { addUnit } from '../../../utils/dom/style.mjs';
|
|
16
|
+
import { isBoolean } from '../../../utils/types.mjs';
|
|
17
|
+
import { isString, isFunction } from '@vue/shared';
|
|
18
|
+
import { getProp } from '../../../utils/objects.mjs';
|
|
5
19
|
|
|
6
|
-
const
|
|
7
|
-
|
|
8
|
-
"
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
20
|
+
const _hoisted_1 = ["role", "aria-labelledby"];
|
|
21
|
+
const __default__ = defineComponent({
|
|
22
|
+
name: "ElFormItem"
|
|
23
|
+
});
|
|
24
|
+
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
25
|
+
...__default__,
|
|
26
|
+
props: formItemProps,
|
|
27
|
+
setup(__props, { expose }) {
|
|
28
|
+
const props = __props;
|
|
29
|
+
const slots = useSlots();
|
|
30
|
+
const formContext = inject(formContextKey, void 0);
|
|
31
|
+
const parentFormItemContext = inject(formItemContextKey, void 0);
|
|
32
|
+
const _size = useFormSize(void 0, { formItem: false });
|
|
33
|
+
const ns = useNamespace("form-item");
|
|
34
|
+
const labelId = useId().value;
|
|
35
|
+
const inputIds = ref([]);
|
|
36
|
+
const validateState = ref("");
|
|
37
|
+
const validateStateDebounced = refDebounced(validateState, 100);
|
|
38
|
+
const validateMessage = ref("");
|
|
39
|
+
const formItemRef = ref();
|
|
40
|
+
let initialValue = void 0;
|
|
41
|
+
let isResettingField = false;
|
|
42
|
+
const labelStyle = computed(() => {
|
|
43
|
+
if ((formContext == null ? void 0 : formContext.labelPosition) === "top") {
|
|
44
|
+
return {};
|
|
45
|
+
}
|
|
46
|
+
const labelWidth = addUnit(props.labelWidth || (formContext == null ? void 0 : formContext.labelWidth) || "");
|
|
47
|
+
if (labelWidth)
|
|
48
|
+
return { width: labelWidth };
|
|
49
|
+
return {};
|
|
50
|
+
});
|
|
51
|
+
const contentStyle = computed(() => {
|
|
52
|
+
if ((formContext == null ? void 0 : formContext.labelPosition) === "top" || (formContext == null ? void 0 : formContext.inline)) {
|
|
53
|
+
return {};
|
|
54
|
+
}
|
|
55
|
+
if (!props.label && !props.labelWidth && isNested) {
|
|
56
|
+
return {};
|
|
57
|
+
}
|
|
58
|
+
const labelWidth = addUnit(props.labelWidth || (formContext == null ? void 0 : formContext.labelWidth) || "");
|
|
59
|
+
if (!props.label && !slots.label) {
|
|
60
|
+
return { marginLeft: labelWidth };
|
|
61
|
+
}
|
|
62
|
+
return {};
|
|
63
|
+
});
|
|
64
|
+
const formItemClasses = computed(() => [
|
|
65
|
+
ns.b(),
|
|
66
|
+
ns.m(_size.value),
|
|
67
|
+
ns.is("error", validateState.value === "error"),
|
|
68
|
+
ns.is("validating", validateState.value === "validating"),
|
|
69
|
+
ns.is("success", validateState.value === "success"),
|
|
70
|
+
ns.is("required", isRequired.value || props.required),
|
|
71
|
+
ns.is("no-asterisk", formContext == null ? void 0 : formContext.hideRequiredAsterisk),
|
|
72
|
+
(formContext == null ? void 0 : formContext.requireAsteriskPosition) === "right" ? "asterisk-right" : "asterisk-left",
|
|
73
|
+
{ [ns.m("feedback")]: formContext == null ? void 0 : formContext.statusIcon }
|
|
74
|
+
]);
|
|
75
|
+
const _inlineMessage = computed(() => isBoolean(props.inlineMessage) ? props.inlineMessage : (formContext == null ? void 0 : formContext.inlineMessage) || false);
|
|
76
|
+
const validateClasses = computed(() => [
|
|
77
|
+
ns.e("error"),
|
|
78
|
+
{ [ns.em("error", "inline")]: _inlineMessage.value }
|
|
79
|
+
]);
|
|
80
|
+
const propString = computed(() => {
|
|
81
|
+
if (!props.prop)
|
|
82
|
+
return "";
|
|
83
|
+
return isString(props.prop) ? props.prop : props.prop.join(".");
|
|
84
|
+
});
|
|
85
|
+
const hasLabel = computed(() => {
|
|
86
|
+
return !!(props.label || slots.label);
|
|
87
|
+
});
|
|
88
|
+
const labelFor = computed(() => {
|
|
89
|
+
return props.for || (inputIds.value.length === 1 ? inputIds.value[0] : void 0);
|
|
90
|
+
});
|
|
91
|
+
const isGroup = computed(() => {
|
|
92
|
+
return !labelFor.value && hasLabel.value;
|
|
93
|
+
});
|
|
94
|
+
const isNested = !!parentFormItemContext;
|
|
95
|
+
const fieldValue = computed(() => {
|
|
96
|
+
const model = formContext == null ? void 0 : formContext.model;
|
|
97
|
+
if (!model || !props.prop) {
|
|
98
|
+
return;
|
|
99
|
+
}
|
|
100
|
+
return getProp(model, props.prop).value;
|
|
101
|
+
});
|
|
102
|
+
const normalizedRules = computed(() => {
|
|
103
|
+
const { required } = props;
|
|
104
|
+
const rules = [];
|
|
105
|
+
if (props.rules) {
|
|
106
|
+
rules.push(...castArray(props.rules));
|
|
107
|
+
}
|
|
108
|
+
const formRules = formContext == null ? void 0 : formContext.rules;
|
|
109
|
+
if (formRules && props.prop) {
|
|
110
|
+
const _rules = getProp(formRules, props.prop).value;
|
|
111
|
+
if (_rules) {
|
|
112
|
+
rules.push(...castArray(_rules));
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
if (required !== void 0) {
|
|
116
|
+
const requiredRules = rules.map((rule, i) => [rule, i]).filter(([rule]) => Object.keys(rule).includes("required"));
|
|
117
|
+
if (requiredRules.length > 0) {
|
|
118
|
+
for (const [rule, i] of requiredRules) {
|
|
119
|
+
if (rule.required === required)
|
|
120
|
+
continue;
|
|
121
|
+
rules[i] = { ...rule, required };
|
|
122
|
+
}
|
|
123
|
+
} else {
|
|
124
|
+
rules.push({ required });
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
return rules;
|
|
128
|
+
});
|
|
129
|
+
const validateEnabled = computed(() => normalizedRules.value.length > 0);
|
|
130
|
+
const getFilteredRule = (trigger) => {
|
|
131
|
+
const rules = normalizedRules.value;
|
|
132
|
+
return rules.filter((rule) => {
|
|
133
|
+
if (!rule.trigger || !trigger)
|
|
134
|
+
return true;
|
|
135
|
+
if (Array.isArray(rule.trigger)) {
|
|
136
|
+
return rule.trigger.includes(trigger);
|
|
137
|
+
} else {
|
|
138
|
+
return rule.trigger === trigger;
|
|
139
|
+
}
|
|
140
|
+
}).map(({ trigger: trigger2, ...rule }) => rule);
|
|
141
|
+
};
|
|
142
|
+
const isRequired = computed(() => normalizedRules.value.some((rule) => rule.required));
|
|
143
|
+
const shouldShowError = computed(() => {
|
|
144
|
+
var _a;
|
|
145
|
+
return validateStateDebounced.value === "error" && props.showMessage && ((_a = formContext == null ? void 0 : formContext.showMessage) != null ? _a : true);
|
|
146
|
+
});
|
|
147
|
+
const currentLabel = computed(() => `${props.label || ""}${(formContext == null ? void 0 : formContext.labelSuffix) || ""}`);
|
|
148
|
+
const setValidationState = (state) => {
|
|
149
|
+
validateState.value = state;
|
|
150
|
+
};
|
|
151
|
+
const onValidationFailed = (error) => {
|
|
152
|
+
var _a, _b;
|
|
153
|
+
const { errors, fields } = error;
|
|
154
|
+
if (!errors || !fields) {
|
|
155
|
+
console.error(error);
|
|
156
|
+
}
|
|
157
|
+
setValidationState("error");
|
|
158
|
+
validateMessage.value = errors ? (_b = (_a = errors == null ? void 0 : errors[0]) == null ? void 0 : _a.message) != null ? _b : `${props.prop} is required` : "";
|
|
159
|
+
formContext == null ? void 0 : formContext.emit("validate", props.prop, false, validateMessage.value);
|
|
160
|
+
};
|
|
161
|
+
const onValidationSucceeded = () => {
|
|
162
|
+
setValidationState("success");
|
|
163
|
+
formContext == null ? void 0 : formContext.emit("validate", props.prop, true, "");
|
|
164
|
+
};
|
|
165
|
+
const doValidate = async (rules) => {
|
|
166
|
+
const modelName = propString.value;
|
|
167
|
+
const validator = new AsyncValidator({
|
|
168
|
+
[modelName]: rules
|
|
169
|
+
});
|
|
170
|
+
return validator.validate({ [modelName]: fieldValue.value }, { firstFields: true }).then(() => {
|
|
171
|
+
onValidationSucceeded();
|
|
172
|
+
return true;
|
|
173
|
+
}).catch((err) => {
|
|
174
|
+
onValidationFailed(err);
|
|
175
|
+
return Promise.reject(err);
|
|
176
|
+
});
|
|
177
|
+
};
|
|
178
|
+
const validate = async (trigger, callback) => {
|
|
179
|
+
if (isResettingField || !props.prop) {
|
|
180
|
+
return false;
|
|
181
|
+
}
|
|
182
|
+
const hasCallback = isFunction(callback);
|
|
183
|
+
if (!validateEnabled.value) {
|
|
184
|
+
callback == null ? void 0 : callback(false);
|
|
185
|
+
return false;
|
|
186
|
+
}
|
|
187
|
+
const rules = getFilteredRule(trigger);
|
|
188
|
+
if (rules.length === 0) {
|
|
189
|
+
callback == null ? void 0 : callback(true);
|
|
190
|
+
return true;
|
|
191
|
+
}
|
|
192
|
+
setValidationState("validating");
|
|
193
|
+
return doValidate(rules).then(() => {
|
|
194
|
+
callback == null ? void 0 : callback(true);
|
|
195
|
+
return true;
|
|
196
|
+
}).catch((err) => {
|
|
197
|
+
const { fields } = err;
|
|
198
|
+
callback == null ? void 0 : callback(false, fields);
|
|
199
|
+
return hasCallback ? false : Promise.reject(fields);
|
|
200
|
+
});
|
|
201
|
+
};
|
|
202
|
+
const clearValidate = () => {
|
|
203
|
+
setValidationState("");
|
|
204
|
+
validateMessage.value = "";
|
|
205
|
+
isResettingField = false;
|
|
206
|
+
};
|
|
207
|
+
const resetField = async () => {
|
|
208
|
+
const model = formContext == null ? void 0 : formContext.model;
|
|
209
|
+
if (!model || !props.prop)
|
|
210
|
+
return;
|
|
211
|
+
const computedValue = getProp(model, props.prop);
|
|
212
|
+
isResettingField = true;
|
|
213
|
+
computedValue.value = clone(initialValue);
|
|
214
|
+
await nextTick();
|
|
215
|
+
clearValidate();
|
|
216
|
+
isResettingField = false;
|
|
217
|
+
};
|
|
218
|
+
const addInputId = (id) => {
|
|
219
|
+
if (!inputIds.value.includes(id)) {
|
|
220
|
+
inputIds.value.push(id);
|
|
221
|
+
}
|
|
222
|
+
};
|
|
223
|
+
const removeInputId = (id) => {
|
|
224
|
+
inputIds.value = inputIds.value.filter((listId) => listId !== id);
|
|
225
|
+
};
|
|
226
|
+
watch(() => props.error, (val) => {
|
|
227
|
+
validateMessage.value = val || "";
|
|
228
|
+
setValidationState(val ? "error" : "");
|
|
229
|
+
}, { immediate: true });
|
|
230
|
+
watch(() => props.validateStatus, (val) => setValidationState(val || ""));
|
|
231
|
+
const context = reactive({
|
|
232
|
+
...toRefs(props),
|
|
233
|
+
$el: formItemRef,
|
|
234
|
+
size: _size,
|
|
235
|
+
validateState,
|
|
236
|
+
labelId,
|
|
237
|
+
inputIds,
|
|
238
|
+
isGroup,
|
|
239
|
+
hasLabel,
|
|
240
|
+
addInputId,
|
|
241
|
+
removeInputId,
|
|
242
|
+
resetField,
|
|
243
|
+
clearValidate,
|
|
244
|
+
validate
|
|
245
|
+
});
|
|
246
|
+
provide(formItemContextKey, context);
|
|
247
|
+
onMounted(() => {
|
|
248
|
+
if (props.prop) {
|
|
249
|
+
formContext == null ? void 0 : formContext.addField(context);
|
|
250
|
+
initialValue = clone(fieldValue.value);
|
|
251
|
+
}
|
|
252
|
+
});
|
|
253
|
+
onBeforeUnmount(() => {
|
|
254
|
+
formContext == null ? void 0 : formContext.removeField(context);
|
|
255
|
+
});
|
|
256
|
+
expose({
|
|
257
|
+
size: _size,
|
|
258
|
+
validateMessage,
|
|
259
|
+
validateState,
|
|
260
|
+
validate,
|
|
261
|
+
clearValidate,
|
|
262
|
+
resetField
|
|
263
|
+
});
|
|
264
|
+
return (_ctx, _cache) => {
|
|
265
|
+
var _a;
|
|
266
|
+
return openBlock(), createElementBlock("div", {
|
|
267
|
+
ref_key: "formItemRef",
|
|
268
|
+
ref: formItemRef,
|
|
269
|
+
class: normalizeClass(unref(formItemClasses)),
|
|
270
|
+
role: unref(isGroup) ? "group" : void 0,
|
|
271
|
+
"aria-labelledby": unref(isGroup) ? unref(labelId) : void 0
|
|
272
|
+
}, [
|
|
273
|
+
createVNode(unref(FormLabelWrap), {
|
|
274
|
+
"is-auto-width": unref(labelStyle).width === "auto",
|
|
275
|
+
"update-all": ((_a = unref(formContext)) == null ? void 0 : _a.labelWidth) === "auto"
|
|
276
|
+
}, {
|
|
277
|
+
default: withCtx(() => [
|
|
278
|
+
unref(hasLabel) ? (openBlock(), createBlock(resolveDynamicComponent(unref(labelFor) ? "label" : "div"), {
|
|
279
|
+
key: 0,
|
|
280
|
+
id: unref(labelId),
|
|
281
|
+
for: unref(labelFor),
|
|
282
|
+
class: normalizeClass(unref(ns).e("label")),
|
|
283
|
+
style: normalizeStyle(unref(labelStyle))
|
|
284
|
+
}, {
|
|
285
|
+
default: withCtx(() => [
|
|
286
|
+
renderSlot(_ctx.$slots, "label", { label: unref(currentLabel) }, () => [
|
|
287
|
+
createTextVNode(toDisplayString(unref(currentLabel)), 1)
|
|
288
|
+
])
|
|
289
|
+
]),
|
|
290
|
+
_: 3
|
|
291
|
+
}, 8, ["id", "for", "class", "style"])) : createCommentVNode("v-if", true)
|
|
292
|
+
]),
|
|
293
|
+
_: 3
|
|
294
|
+
}, 8, ["is-auto-width", "update-all"]),
|
|
295
|
+
createElementVNode("div", {
|
|
296
|
+
class: normalizeClass(unref(ns).e("content")),
|
|
297
|
+
style: normalizeStyle(unref(contentStyle))
|
|
298
|
+
}, [
|
|
299
|
+
renderSlot(_ctx.$slots, "default"),
|
|
300
|
+
createVNode(TransitionGroup, {
|
|
301
|
+
name: `${unref(ns).namespace.value}-zoom-in-top`
|
|
302
|
+
}, {
|
|
303
|
+
default: withCtx(() => [
|
|
304
|
+
unref(shouldShowError) ? renderSlot(_ctx.$slots, "error", {
|
|
305
|
+
key: 0,
|
|
306
|
+
error: validateMessage.value
|
|
307
|
+
}, () => [
|
|
308
|
+
createElementVNode("div", {
|
|
309
|
+
class: normalizeClass(unref(validateClasses))
|
|
310
|
+
}, toDisplayString(validateMessage.value), 3)
|
|
311
|
+
]) : createCommentVNode("v-if", true)
|
|
312
|
+
]),
|
|
313
|
+
_: 3
|
|
314
|
+
}, 8, ["name"])
|
|
315
|
+
], 6)
|
|
316
|
+
], 10, _hoisted_1);
|
|
317
|
+
};
|
|
45
318
|
}
|
|
46
319
|
});
|
|
320
|
+
var FormItem = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "/home/runner/work/element-plus/element-plus/packages/components/form/src/form-item.vue"]]);
|
|
47
321
|
|
|
48
|
-
export {
|
|
322
|
+
export { FormItem as default };
|
|
49
323
|
//# sourceMappingURL=form-item2.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"form-item2.mjs","sources":["../../../../../../packages/components/form/src/form-item.ts"],"sourcesContent":["import { componentSizes } from '@element-plus/constants'\nimport { buildProps, definePropType } from '@element-plus/utils'\n\nimport type { ExtractPropTypes } from 'vue'\nimport type { Arrayable } from '@element-plus/utils'\nimport type { FormItemRule } from './types'\n\nexport const formItemValidateStates = [\n '',\n 'error',\n 'validating',\n 'success',\n] as const\nexport type FormItemValidateState = typeof formItemValidateStates[number]\n\nexport type FormItemProp = Arrayable<string>\n\nexport const formItemProps = buildProps({\n /**\n * @description Label text.\n */\n label: String,\n /**\n * @description Width of label, e.g. `'50px'`. `'auto'` is supported.\n */\n labelWidth: {\n type: [String, Number],\n default: '',\n },\n /**\n * @description A key of `model`. It could be an array of property paths (e.g `['a', 'b', '0']`). In the use of `validate` and `resetFields` method, the attribute is required.\n */\n prop: {\n type: definePropType<FormItemProp>([String, Array]),\n },\n /**\n * @description Whether the field is required or not, will be determined by validation rules if omitted.\n */\n required: {\n type: Boolean,\n default: undefined,\n },\n /**\n * @description Validation rules of form, see the [following table](#formitemrule), more advanced usage at [async-validator](https://github.com/yiminghe/async-validator).\n */\n rules: {\n type: definePropType<Arrayable<FormItemRule>>([Object, Array]),\n },\n /**\n * @description Field error message, set its value and the field will validate error and show this message immediately.\n */\n error: String,\n /**\n * @description Validation state of formItem.\n */\n validateStatus: {\n type: String,\n values: formItemValidateStates,\n },\n /**\n * @description Same as for in native label.\n */\n for: String,\n /**\n * @description Inline style validate message.\n */\n inlineMessage: {\n type: [String, Boolean],\n default: '',\n },\n /**\n * @description Whether to show the error message.\n */\n showMessage: {\n type: Boolean,\n default: true,\n },\n /**\n * @description Control the size of components in this form-item.\n */\n size: {\n type: String,\n values: componentSizes,\n },\n} as const)\nexport type FormItemProps = ExtractPropTypes<typeof formItemProps>\n"],"names":[],"mappings":";;;;;AAEY,MAAC,sBAAsB,GAAG;AACtC,EAAE,EAAE;AACJ,EAAE,OAAO;AACT,EAAE,YAAY;AACd,EAAE,SAAS;AACX,EAAE;AACU,MAAC,aAAa,GAAG,UAAU,CAAC;AACxC,EAAE,KAAK,EAAE,MAAM;AACf,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;AAC1B,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,cAAc,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AACzC,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK,CAAC;AACnB,GAAG;AACH,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,cAAc,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AACzC,GAAG;AACH,EAAE,KAAK,EAAE,MAAM;AACf,EAAE,cAAc,EAAE;AAClB,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,sBAAsB;AAClC,GAAG;AACH,EAAE,GAAG,EAAE,MAAM;AACb,EAAE,aAAa,EAAE;AACjB,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;AAC3B,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,cAAc;AAC1B,GAAG;AACH,CAAC;;;;"}
|
|
1
|
+
{"version":3,"file":"form-item2.mjs","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":["ensureArray"],"mappings":"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"}
|
package/es/components/index.mjs
CHANGED
|
@@ -121,7 +121,7 @@ export { DROPDOWN_COLLECTION_INJECTION_KEY, DROPDOWN_COLLECTION_ITEM_INJECTION_K
|
|
|
121
121
|
export { DROPDOWN_INJECTION_KEY } from './dropdown/src/tokens.mjs';
|
|
122
122
|
export { emptyProps } from './empty/src/empty.mjs';
|
|
123
123
|
export { formEmits, formProps } from './form/src/form.mjs';
|
|
124
|
-
export { formItemProps, formItemValidateStates } from './form/src/form-
|
|
124
|
+
export { formItemProps, formItemValidateStates } from './form/src/form-item.mjs';
|
|
125
125
|
export { formContextKey, formItemContextKey } from './form/src/constants.mjs';
|
|
126
126
|
export { useDisabled, useFormDisabled, useFormSize, useSize } from './form/src/hooks/use-form-common-props.mjs';
|
|
127
127
|
export { useFormItem, useFormItemInputId } from './form/src/hooks/use-form-item.mjs';
|
|
@@ -136,7 +136,7 @@ export { menuItemEmits, menuItemProps } from './menu/src/menu-item.mjs';
|
|
|
136
136
|
export { menuItemGroupProps } from './menu/src/menu-item-group.mjs';
|
|
137
137
|
export { subMenuProps } from './menu/src/sub-menu.mjs';
|
|
138
138
|
export { overlayEmits, overlayProps } from './overlay/src/overlay.mjs';
|
|
139
|
-
export { pageHeaderEmits, pageHeaderProps } from './page-header/src/page-
|
|
139
|
+
export { pageHeaderEmits, pageHeaderProps } from './page-header/src/page-header.mjs';
|
|
140
140
|
export { paginationEmits, paginationProps } from './pagination/src/pagination.mjs';
|
|
141
141
|
export { elPaginationKey } from './pagination/src/constants.mjs';
|
|
142
142
|
export { popconfirmEmits, popconfirmProps } from './popconfirm/src/popconfirm.mjs';
|
|
@@ -153,13 +153,13 @@ export { radioEmits, radioProps, radioPropsBase } from './radio/src/radio.mjs';
|
|
|
153
153
|
export { radioGroupEmits, radioGroupProps } from './radio/src/radio-group.mjs';
|
|
154
154
|
export { radioButtonProps } from './radio/src/radio-button.mjs';
|
|
155
155
|
export { radioGroupKey } from './radio/src/constants.mjs';
|
|
156
|
-
export { rateEmits, rateProps } from './rate/src/
|
|
156
|
+
export { rateEmits, rateProps } from './rate/src/rate.mjs';
|
|
157
157
|
export { IconComponentMap, IconMap, resultProps } from './result/src/result.mjs';
|
|
158
158
|
export { RowAlign, RowJustify, rowProps } from './row/src/row.mjs';
|
|
159
159
|
export { rowContextKey } from './row/src/constants.mjs';
|
|
160
160
|
export { BAR_MAP, GAP, renderThumbStyle } from './scrollbar/src/util.mjs';
|
|
161
161
|
export { scrollbarEmits, scrollbarProps } from './scrollbar/src/scrollbar.mjs';
|
|
162
|
-
export { thumbProps } from './scrollbar/src/
|
|
162
|
+
export { thumbProps } from './scrollbar/src/thumb.mjs';
|
|
163
163
|
export { scrollbarContextKey } from './scrollbar/src/constants.mjs';
|
|
164
164
|
export { selectGroupKey, selectKey } from './select/src/token.mjs';
|
|
165
165
|
export { selectV2InjectionKey } from './select-v2/src/token.mjs';
|
|
@@ -11,6 +11,8 @@ export declare const ElMenu: import("@element-plus/nightly/es/utils").SFCWithIns
|
|
|
11
11
|
readonly activeTextColor: StringConstructor;
|
|
12
12
|
readonly collapseTransition: import("@element-plus/nightly/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
13
13
|
readonly ellipsis: import("@element-plus/nightly/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
14
|
+
readonly popperOffset: import("@element-plus/nightly/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, 6, boolean>;
|
|
15
|
+
readonly ellipsisIcon: import("@element-plus/nightly/es/utils").EpPropFinalized<(new (...args: any[]) => (string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) & {}) | (() => string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) | ((new (...args: any[]) => (string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) & {}) | (() => string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>))[], unknown, unknown, () => any, boolean>;
|
|
14
16
|
readonly popperEffect: import("@element-plus/nightly/es/utils").EpPropFinalized<StringConstructor, "light" | "dark", unknown, "dark", boolean>;
|
|
15
17
|
}, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
|
|
16
18
|
[key: string]: any;
|
|
@@ -31,6 +33,8 @@ export declare const ElMenu: import("@element-plus/nightly/es/utils").SFCWithIns
|
|
|
31
33
|
readonly activeTextColor: StringConstructor;
|
|
32
34
|
readonly collapseTransition: import("@element-plus/nightly/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
33
35
|
readonly ellipsis: import("@element-plus/nightly/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
36
|
+
readonly popperOffset: import("@element-plus/nightly/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, 6, boolean>;
|
|
37
|
+
readonly ellipsisIcon: import("@element-plus/nightly/es/utils").EpPropFinalized<(new (...args: any[]) => (string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) & {}) | (() => string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) | ((new (...args: any[]) => (string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) & {}) | (() => string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>))[], unknown, unknown, () => any, boolean>;
|
|
34
38
|
readonly popperEffect: import("@element-plus/nightly/es/utils").EpPropFinalized<StringConstructor, "light" | "dark", unknown, "dark", boolean>;
|
|
35
39
|
}>> & {
|
|
36
40
|
onClose?: ((index: string, indexPath: string[]) => any) | undefined;
|
|
@@ -44,6 +48,8 @@ export declare const ElMenu: import("@element-plus/nightly/es/utils").SFCWithIns
|
|
|
44
48
|
readonly defaultOpeneds: string[];
|
|
45
49
|
readonly menuTrigger: import("@element-plus/nightly/es/utils").EpPropMergeType<StringConstructor, "click" | "hover", unknown>;
|
|
46
50
|
readonly collapseTransition: import("@element-plus/nightly/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
51
|
+
readonly popperOffset: number;
|
|
52
|
+
readonly ellipsisIcon: import("@element-plus/nightly/es/utils").EpPropMergeType<(new (...args: any[]) => (string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) & {}) | (() => string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) | ((new (...args: any[]) => (string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) & {}) | (() => string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>))[], unknown, unknown>;
|
|
47
53
|
readonly popperEffect: import("@element-plus/nightly/es/utils").EpPropMergeType<StringConstructor, "light" | "dark", unknown>;
|
|
48
54
|
readonly uniqueOpened: boolean;
|
|
49
55
|
readonly router: boolean;
|
|
@@ -152,7 +158,7 @@ export declare const ElMenu: import("@element-plus/nightly/es/utils").SFCWithIns
|
|
|
152
158
|
readonly disabled: BooleanConstructor;
|
|
153
159
|
readonly popperAppendToBody: import("@element-plus/nightly/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, undefined, boolean>;
|
|
154
160
|
readonly teleported: import("@element-plus/nightly/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, undefined, boolean>;
|
|
155
|
-
readonly popperOffset: import("@element-plus/nightly/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown,
|
|
161
|
+
readonly popperOffset: import("@element-plus/nightly/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, undefined, boolean>;
|
|
156
162
|
readonly expandCloseIcon: {
|
|
157
163
|
readonly type: import("vue").PropType<import("@element-plus/nightly/es/utils").EpPropMergeType<(new (...args: any[]) => (string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) & {}) | (() => string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) | ((new (...args: any[]) => (string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) & {}) | (() => string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>))[], unknown, unknown>>;
|
|
158
164
|
readonly required: false;
|
|
@@ -192,7 +198,7 @@ export declare const ElMenu: import("@element-plus/nightly/es/utils").SFCWithIns
|
|
|
192
198
|
readonly disabled: BooleanConstructor;
|
|
193
199
|
readonly popperAppendToBody: import("@element-plus/nightly/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, undefined, boolean>;
|
|
194
200
|
readonly teleported: import("@element-plus/nightly/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, undefined, boolean>;
|
|
195
|
-
readonly popperOffset: import("@element-plus/nightly/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown,
|
|
201
|
+
readonly popperOffset: import("@element-plus/nightly/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, undefined, boolean>;
|
|
196
202
|
readonly expandCloseIcon: {
|
|
197
203
|
readonly type: import("vue").PropType<import("@element-plus/nightly/es/utils").EpPropMergeType<(new (...args: any[]) => (string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) & {}) | (() => string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) | ((new (...args: any[]) => (string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) & {}) | (() => string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>))[], unknown, unknown>>;
|
|
198
204
|
readonly required: false;
|
|
@@ -222,8 +228,8 @@ export declare const ElMenu: import("@element-plus/nightly/es/utils").SFCWithIns
|
|
|
222
228
|
readonly disabled: boolean;
|
|
223
229
|
readonly showTimeout: number;
|
|
224
230
|
readonly hideTimeout: number;
|
|
225
|
-
readonly popperAppendToBody: import("@element-plus/nightly/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
226
231
|
readonly popperOffset: number;
|
|
232
|
+
readonly popperAppendToBody: import("@element-plus/nightly/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
227
233
|
}>;
|
|
228
234
|
};
|
|
229
235
|
export default ElMenu;
|
|
@@ -331,7 +337,7 @@ export declare const ElSubMenu: import("@element-plus/nightly/es/utils").SFCWith
|
|
|
331
337
|
readonly disabled: BooleanConstructor;
|
|
332
338
|
readonly popperAppendToBody: import("@element-plus/nightly/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, undefined, boolean>;
|
|
333
339
|
readonly teleported: import("@element-plus/nightly/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, undefined, boolean>;
|
|
334
|
-
readonly popperOffset: import("@element-plus/nightly/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown,
|
|
340
|
+
readonly popperOffset: import("@element-plus/nightly/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, undefined, boolean>;
|
|
335
341
|
readonly expandCloseIcon: {
|
|
336
342
|
readonly type: import("vue").PropType<import("@element-plus/nightly/es/utils").EpPropMergeType<(new (...args: any[]) => (string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) & {}) | (() => string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) | ((new (...args: any[]) => (string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) & {}) | (() => string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>))[], unknown, unknown>>;
|
|
337
343
|
readonly required: false;
|
|
@@ -371,7 +377,7 @@ export declare const ElSubMenu: import("@element-plus/nightly/es/utils").SFCWith
|
|
|
371
377
|
readonly disabled: BooleanConstructor;
|
|
372
378
|
readonly popperAppendToBody: import("@element-plus/nightly/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, undefined, boolean>;
|
|
373
379
|
readonly teleported: import("@element-plus/nightly/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, undefined, boolean>;
|
|
374
|
-
readonly popperOffset: import("@element-plus/nightly/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown,
|
|
380
|
+
readonly popperOffset: import("@element-plus/nightly/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, undefined, boolean>;
|
|
375
381
|
readonly expandCloseIcon: {
|
|
376
382
|
readonly type: import("vue").PropType<import("@element-plus/nightly/es/utils").EpPropMergeType<(new (...args: any[]) => (string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) & {}) | (() => string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) | ((new (...args: any[]) => (string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) & {}) | (() => string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>))[], unknown, unknown>>;
|
|
377
383
|
readonly required: false;
|
|
@@ -401,8 +407,8 @@ export declare const ElSubMenu: import("@element-plus/nightly/es/utils").SFCWith
|
|
|
401
407
|
readonly disabled: boolean;
|
|
402
408
|
readonly showTimeout: number;
|
|
403
409
|
readonly hideTimeout: number;
|
|
404
|
-
readonly popperAppendToBody: import("@element-plus/nightly/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
405
410
|
readonly popperOffset: number;
|
|
411
|
+
readonly popperAppendToBody: import("@element-plus/nightly/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
406
412
|
}>>;
|
|
407
413
|
export * from './src/menu';
|
|
408
414
|
export * from './src/menu-item';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { MenuItemClicked } from './types';
|
|
2
2
|
import type { NavigationFailure } from 'vue-router';
|
|
3
|
-
import type { ExtractPropTypes, VNode } from 'vue';
|
|
3
|
+
import type { Component, ExtractPropTypes, VNode } from 'vue';
|
|
4
4
|
export declare const menuProps: {
|
|
5
5
|
readonly mode: import("@element-plus/nightly/es/utils").EpPropFinalized<StringConstructor, "horizontal" | "vertical", unknown, "vertical", boolean>;
|
|
6
6
|
readonly defaultActive: import("@element-plus/nightly/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
|
|
@@ -14,6 +14,8 @@ export declare const menuProps: {
|
|
|
14
14
|
readonly activeTextColor: StringConstructor;
|
|
15
15
|
readonly collapseTransition: import("@element-plus/nightly/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
16
16
|
readonly ellipsis: import("@element-plus/nightly/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
17
|
+
readonly popperOffset: import("@element-plus/nightly/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, 6, boolean>;
|
|
18
|
+
readonly ellipsisIcon: import("@element-plus/nightly/es/utils").EpPropFinalized<(new (...args: any[]) => (string | Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) & {}) | (() => string | Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) | ((new (...args: any[]) => (string | Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) & {}) | (() => string | Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>))[], unknown, unknown, () => any, boolean>;
|
|
17
19
|
readonly popperEffect: import("@element-plus/nightly/es/utils").EpPropFinalized<StringConstructor, "light" | "dark", unknown, "dark", boolean>;
|
|
18
20
|
};
|
|
19
21
|
export declare type MenuProps = ExtractPropTypes<typeof menuProps>;
|
|
@@ -36,6 +38,8 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
36
38
|
readonly activeTextColor: StringConstructor;
|
|
37
39
|
readonly collapseTransition: import("@element-plus/nightly/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
38
40
|
readonly ellipsis: import("@element-plus/nightly/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
41
|
+
readonly popperOffset: import("@element-plus/nightly/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, 6, boolean>;
|
|
42
|
+
readonly ellipsisIcon: import("@element-plus/nightly/es/utils").EpPropFinalized<(new (...args: any[]) => (string | Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) & {}) | (() => string | Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) | ((new (...args: any[]) => (string | Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) & {}) | (() => string | Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>))[], unknown, unknown, () => any, boolean>;
|
|
39
43
|
readonly popperEffect: import("@element-plus/nightly/es/utils").EpPropFinalized<StringConstructor, "light" | "dark", unknown, "dark", boolean>;
|
|
40
44
|
}, () => VNode<import("vue").RendererNode, import("vue").RendererElement, {
|
|
41
45
|
[key: string]: any;
|
|
@@ -56,6 +60,8 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
56
60
|
readonly activeTextColor: StringConstructor;
|
|
57
61
|
readonly collapseTransition: import("@element-plus/nightly/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
58
62
|
readonly ellipsis: import("@element-plus/nightly/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
63
|
+
readonly popperOffset: import("@element-plus/nightly/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, 6, boolean>;
|
|
64
|
+
readonly ellipsisIcon: import("@element-plus/nightly/es/utils").EpPropFinalized<(new (...args: any[]) => (string | Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) & {}) | (() => string | Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) | ((new (...args: any[]) => (string | Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) & {}) | (() => string | Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>))[], unknown, unknown, () => any, boolean>;
|
|
59
65
|
readonly popperEffect: import("@element-plus/nightly/es/utils").EpPropFinalized<StringConstructor, "light" | "dark", unknown, "dark", boolean>;
|
|
60
66
|
}>> & {
|
|
61
67
|
onClose?: ((index: string, indexPath: string[]) => any) | undefined;
|
|
@@ -69,6 +75,8 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
69
75
|
readonly defaultOpeneds: string[];
|
|
70
76
|
readonly menuTrigger: import("@element-plus/nightly/es/utils").EpPropMergeType<StringConstructor, "click" | "hover", unknown>;
|
|
71
77
|
readonly collapseTransition: import("@element-plus/nightly/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
78
|
+
readonly popperOffset: number;
|
|
79
|
+
readonly ellipsisIcon: import("@element-plus/nightly/es/utils").EpPropMergeType<(new (...args: any[]) => (string | Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) & {}) | (() => string | Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) | ((new (...args: any[]) => (string | Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) & {}) | (() => string | Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>))[], unknown, unknown>;
|
|
72
80
|
readonly popperEffect: import("@element-plus/nightly/es/utils").EpPropMergeType<StringConstructor, "light" | "dark", unknown>;
|
|
73
81
|
readonly uniqueOpened: boolean;
|
|
74
82
|
readonly router: boolean;
|