@element-plus/nightly 0.0.20230723 → 0.0.20230724
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/dist/index.full.js +2 -2
- package/dist/index.full.min.js +2 -2
- package/dist/index.full.min.js.map +1 -1
- package/dist/index.full.min.mjs +2 -2
- package/dist/index.full.min.mjs.map +1 -1
- package/dist/index.full.mjs +2 -2
- 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/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.mjs +54 -148
- package/es/components/form/src/form.mjs.map +1 -1
- package/es/components/form/src/form2.mjs +148 -54
- package/es/components/form/src/form2.mjs.map +1 -1
- package/es/components/index.mjs +2 -2
- package/es/components/notification/index.mjs +1 -1
- package/es/components/notification/src/notification.mjs +67 -149
- package/es/components/notification/src/notification.mjs.map +1 -1
- package/es/components/notification/src/notification2.mjs +149 -67
- package/es/components/notification/src/notification2.mjs.map +1 -1
- package/es/components/notification/src/notify.mjs +2 -2
- package/es/index.mjs +2 -2
- 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.js +54 -147
- package/lib/components/form/src/form.js.map +1 -1
- package/lib/components/form/src/form2.js +147 -54
- package/lib/components/form/src/form2.js.map +1 -1
- package/lib/components/index.js +2 -2
- package/lib/components/notification/index.js +1 -1
- package/lib/components/notification/src/notification.js +68 -148
- package/lib/components/notification/src/notification.js.map +1 -1
- package/lib/components/notification/src/notification2.js +148 -68
- package/lib/components/notification/src/notification2.js.map +1 -1
- package/lib/components/notification/src/notify.js +2 -2
- package/lib/index.js +2 -2
- package/lib/version.d.ts +1 -1
- package/lib/version.js +1 -1
- package/lib/version.js.map +1 -1
- package/package.json +1 -1
- package/web-types.json +1 -1
|
@@ -1,61 +1,155 @@
|
|
|
1
|
-
import '
|
|
1
|
+
import { defineComponent, computed, watch, provide, reactive, toRefs, openBlock, createElementBlock, normalizeClass, unref, renderSlot } from 'vue';
|
|
2
2
|
import '../../../utils/index.mjs';
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
3
|
+
import '../../../hooks/index.mjs';
|
|
4
|
+
import './hooks/index.mjs';
|
|
5
|
+
import { formContextKey } from './constants.mjs';
|
|
6
|
+
import { formProps, formEmits } from './form.mjs';
|
|
7
|
+
import { filterFields, useFormLabelWidth } from './utils.mjs';
|
|
8
|
+
import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
|
|
9
|
+
import { useFormSize } from './hooks/use-form-common-props.mjs';
|
|
10
|
+
import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
|
|
11
|
+
import { debugWarn } from '../../../utils/error.mjs';
|
|
12
|
+
import { isFunction } from '@vue/shared';
|
|
7
13
|
|
|
8
|
-
const
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
values: componentSizes
|
|
12
|
-
},
|
|
13
|
-
disabled: Boolean
|
|
14
|
+
const COMPONENT_NAME = "ElForm";
|
|
15
|
+
const __default__ = defineComponent({
|
|
16
|
+
name: COMPONENT_NAME
|
|
14
17
|
});
|
|
15
|
-
const
|
|
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
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
18
|
+
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
19
|
+
...__default__,
|
|
20
|
+
props: formProps,
|
|
21
|
+
emits: formEmits,
|
|
22
|
+
setup(__props, { expose, emit }) {
|
|
23
|
+
const props = __props;
|
|
24
|
+
const fields = [];
|
|
25
|
+
const formSize = useFormSize();
|
|
26
|
+
const ns = useNamespace("form");
|
|
27
|
+
const formClasses = computed(() => {
|
|
28
|
+
const { labelPosition, inline } = props;
|
|
29
|
+
return [
|
|
30
|
+
ns.b(),
|
|
31
|
+
ns.m(formSize.value || "default"),
|
|
32
|
+
{
|
|
33
|
+
[ns.m(`label-${labelPosition}`)]: labelPosition,
|
|
34
|
+
[ns.m("inline")]: inline
|
|
35
|
+
}
|
|
36
|
+
];
|
|
37
|
+
});
|
|
38
|
+
const addField = (field) => {
|
|
39
|
+
fields.push(field);
|
|
40
|
+
};
|
|
41
|
+
const removeField = (field) => {
|
|
42
|
+
if (field.prop) {
|
|
43
|
+
fields.splice(fields.indexOf(field), 1);
|
|
44
|
+
}
|
|
45
|
+
};
|
|
46
|
+
const resetFields = (properties = []) => {
|
|
47
|
+
if (!props.model) {
|
|
48
|
+
debugWarn(COMPONENT_NAME, "model is required for resetFields to work.");
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
filterFields(fields, properties).forEach((field) => field.resetField());
|
|
52
|
+
};
|
|
53
|
+
const clearValidate = (props2 = []) => {
|
|
54
|
+
filterFields(fields, props2).forEach((field) => field.clearValidate());
|
|
55
|
+
};
|
|
56
|
+
const isValidatable = computed(() => {
|
|
57
|
+
const hasModel = !!props.model;
|
|
58
|
+
if (!hasModel) {
|
|
59
|
+
debugWarn(COMPONENT_NAME, "model is required for validate to work.");
|
|
60
|
+
}
|
|
61
|
+
return hasModel;
|
|
62
|
+
});
|
|
63
|
+
const obtainValidateFields = (props2) => {
|
|
64
|
+
if (fields.length === 0)
|
|
65
|
+
return [];
|
|
66
|
+
const filteredFields = filterFields(fields, props2);
|
|
67
|
+
if (!filteredFields.length) {
|
|
68
|
+
debugWarn(COMPONENT_NAME, "please pass correct props!");
|
|
69
|
+
return [];
|
|
70
|
+
}
|
|
71
|
+
return filteredFields;
|
|
72
|
+
};
|
|
73
|
+
const validate = async (callback) => validateField(void 0, callback);
|
|
74
|
+
const doValidateField = async (props2 = []) => {
|
|
75
|
+
if (!isValidatable.value)
|
|
76
|
+
return false;
|
|
77
|
+
const fields2 = obtainValidateFields(props2);
|
|
78
|
+
if (fields2.length === 0)
|
|
79
|
+
return true;
|
|
80
|
+
let validationErrors = {};
|
|
81
|
+
for (const field of fields2) {
|
|
82
|
+
try {
|
|
83
|
+
await field.validate("");
|
|
84
|
+
} catch (fields3) {
|
|
85
|
+
validationErrors = {
|
|
86
|
+
...validationErrors,
|
|
87
|
+
...fields3
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
if (Object.keys(validationErrors).length === 0)
|
|
92
|
+
return true;
|
|
93
|
+
return Promise.reject(validationErrors);
|
|
94
|
+
};
|
|
95
|
+
const validateField = async (modelProps = [], callback) => {
|
|
96
|
+
const shouldThrow = !isFunction(callback);
|
|
97
|
+
try {
|
|
98
|
+
const result = await doValidateField(modelProps);
|
|
99
|
+
if (result === true) {
|
|
100
|
+
callback == null ? void 0 : callback(result);
|
|
101
|
+
}
|
|
102
|
+
return result;
|
|
103
|
+
} catch (e) {
|
|
104
|
+
if (e instanceof Error)
|
|
105
|
+
throw e;
|
|
106
|
+
const invalidFields = e;
|
|
107
|
+
if (props.scrollToError) {
|
|
108
|
+
scrollToField(Object.keys(invalidFields)[0]);
|
|
109
|
+
}
|
|
110
|
+
callback == null ? void 0 : callback(false, invalidFields);
|
|
111
|
+
return shouldThrow && Promise.reject(invalidFields);
|
|
112
|
+
}
|
|
113
|
+
};
|
|
114
|
+
const scrollToField = (prop) => {
|
|
115
|
+
var _a;
|
|
116
|
+
const field = filterFields(fields, prop)[0];
|
|
117
|
+
if (field) {
|
|
118
|
+
(_a = field.$el) == null ? void 0 : _a.scrollIntoView(props.scrollIntoViewOptions);
|
|
119
|
+
}
|
|
120
|
+
};
|
|
121
|
+
watch(() => props.rules, () => {
|
|
122
|
+
if (props.validateOnRuleChange) {
|
|
123
|
+
validate().catch((err) => debugWarn(err));
|
|
124
|
+
}
|
|
125
|
+
}, { deep: true });
|
|
126
|
+
provide(formContextKey, reactive({
|
|
127
|
+
...toRefs(props),
|
|
128
|
+
emit,
|
|
129
|
+
resetFields,
|
|
130
|
+
clearValidate,
|
|
131
|
+
validateField,
|
|
132
|
+
addField,
|
|
133
|
+
removeField,
|
|
134
|
+
...useFormLabelWidth()
|
|
135
|
+
}));
|
|
136
|
+
expose({
|
|
137
|
+
validate,
|
|
138
|
+
validateField,
|
|
139
|
+
resetFields,
|
|
140
|
+
clearValidate,
|
|
141
|
+
scrollToField
|
|
142
|
+
});
|
|
143
|
+
return (_ctx, _cache) => {
|
|
144
|
+
return openBlock(), createElementBlock("form", {
|
|
145
|
+
class: normalizeClass(unref(formClasses))
|
|
146
|
+
}, [
|
|
147
|
+
renderSlot(_ctx.$slots, "default")
|
|
148
|
+
], 2);
|
|
149
|
+
};
|
|
54
150
|
}
|
|
55
151
|
});
|
|
56
|
-
|
|
57
|
-
validate: (prop, isValid, message) => (isArray(prop) || isString(prop)) && isBoolean(isValid) && isString(message)
|
|
58
|
-
};
|
|
152
|
+
var Form = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "/home/runner/work/element-plus/element-plus/packages/components/form/src/form.vue"]]);
|
|
59
153
|
|
|
60
|
-
export {
|
|
154
|
+
export { Form as default };
|
|
61
155
|
//# sourceMappingURL=form2.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"form2.mjs","sources":["../../../../../../packages/components/form/src/form.
|
|
1
|
+
{"version":3,"file":"form2.mjs","sources":["../../../../../../packages/components/form/src/form.vue"],"sourcesContent":["<template>\n <form :class=\"formClasses\">\n <slot />\n </form>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, provide, reactive, toRefs, watch } from 'vue'\nimport { debugWarn, isFunction } from '@element-plus/utils'\nimport { useNamespace } from '@element-plus/hooks'\nimport { useFormSize } from './hooks'\nimport { formContextKey } from './constants'\nimport { formEmits, formProps } from './form'\nimport { filterFields, useFormLabelWidth } from './utils'\n\nimport type { ValidateFieldsError } from 'async-validator'\nimport type { Arrayable } from '@element-plus/utils'\nimport type {\n FormContext,\n FormItemContext,\n FormValidateCallback,\n FormValidationResult,\n} from './types'\nimport type { FormItemProp } from './form-item'\n\nconst COMPONENT_NAME = 'ElForm'\ndefineOptions({\n name: COMPONENT_NAME,\n})\nconst props = defineProps(formProps)\nconst emit = defineEmits(formEmits)\n\nconst fields: FormItemContext[] = []\n\nconst formSize = useFormSize()\nconst ns = useNamespace('form')\nconst formClasses = computed(() => {\n const { labelPosition, inline } = props\n return [\n ns.b(),\n // todo: in v2.2.0, we can remove default\n // in fact, remove it doesn't affect the final style\n ns.m(formSize.value || 'default'),\n {\n [ns.m(`label-${labelPosition}`)]: labelPosition,\n [ns.m('inline')]: inline,\n },\n ]\n})\n\nconst addField: FormContext['addField'] = (field) => {\n fields.push(field)\n}\n\nconst removeField: FormContext['removeField'] = (field) => {\n if (field.prop) {\n fields.splice(fields.indexOf(field), 1)\n }\n}\n\nconst resetFields: FormContext['resetFields'] = (properties = []) => {\n if (!props.model) {\n debugWarn(COMPONENT_NAME, 'model is required for resetFields to work.')\n return\n }\n filterFields(fields, properties).forEach((field) => field.resetField())\n}\n\nconst clearValidate: FormContext['clearValidate'] = (props = []) => {\n filterFields(fields, props).forEach((field) => field.clearValidate())\n}\n\nconst isValidatable = computed(() => {\n const hasModel = !!props.model\n if (!hasModel) {\n debugWarn(COMPONENT_NAME, 'model is required for validate to work.')\n }\n return hasModel\n})\n\nconst obtainValidateFields = (props: Arrayable<FormItemProp>) => {\n if (fields.length === 0) return []\n\n const filteredFields = filterFields(fields, props)\n if (!filteredFields.length) {\n debugWarn(COMPONENT_NAME, 'please pass correct props!')\n return []\n }\n return filteredFields\n}\n\nconst validate = async (\n callback?: FormValidateCallback\n): FormValidationResult => validateField(undefined, callback)\n\nconst doValidateField = async (\n props: Arrayable<FormItemProp> = []\n): Promise<boolean> => {\n if (!isValidatable.value) return false\n\n const fields = obtainValidateFields(props)\n if (fields.length === 0) return true\n\n let validationErrors: ValidateFieldsError = {}\n for (const field of fields) {\n try {\n await field.validate('')\n } catch (fields) {\n validationErrors = {\n ...validationErrors,\n ...(fields as ValidateFieldsError),\n }\n }\n }\n\n if (Object.keys(validationErrors).length === 0) return true\n return Promise.reject(validationErrors)\n}\n\nconst validateField: FormContext['validateField'] = async (\n modelProps = [],\n callback\n) => {\n const shouldThrow = !isFunction(callback)\n try {\n const result = await doValidateField(modelProps)\n // When result is false meaning that the fields are not validatable\n if (result === true) {\n callback?.(result)\n }\n return result\n } catch (e) {\n if (e instanceof Error) throw e\n\n const invalidFields = e as ValidateFieldsError\n\n if (props.scrollToError) {\n scrollToField(Object.keys(invalidFields)[0])\n }\n callback?.(false, invalidFields)\n return shouldThrow && Promise.reject(invalidFields)\n }\n}\n\nconst scrollToField = (prop: FormItemProp) => {\n const field = filterFields(fields, prop)[0]\n if (field) {\n field.$el?.scrollIntoView(props.scrollIntoViewOptions)\n }\n}\n\nwatch(\n () => props.rules,\n () => {\n if (props.validateOnRuleChange) {\n validate().catch((err) => debugWarn(err))\n }\n },\n { deep: true }\n)\n\nprovide(\n formContextKey,\n reactive({\n ...toRefs(props),\n emit,\n\n resetFields,\n clearValidate,\n validateField,\n addField,\n removeField,\n\n ...useFormLabelWidth(),\n })\n)\n\ndefineExpose({\n /**\n * @description Validate the whole form. Receives a callback or returns `Promise`.\n */\n validate,\n /**\n * @description Validate specified fields.\n */\n validateField,\n /**\n * @description Reset specified fields and remove validation result.\n */\n resetFields,\n /**\n * @description Clear validation message for specified fields.\n */\n clearValidate,\n /**\n * @description Scroll to the specified fields.\n */\n scrollToField,\n})\n</script>\n"],"names":[],"mappings":"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"}
|
package/es/components/index.mjs
CHANGED
|
@@ -119,7 +119,7 @@ export { drawerEmits, drawerProps } from './drawer/src/drawer.mjs';
|
|
|
119
119
|
export { DROPDOWN_COLLECTION_INJECTION_KEY, DROPDOWN_COLLECTION_ITEM_INJECTION_KEY, ElCollection, ElCollectionItem, FIRST_KEYS, FIRST_LAST_KEYS, LAST_KEYS, dropdownItemProps, dropdownMenuProps, dropdownProps } from './dropdown/src/dropdown.mjs';
|
|
120
120
|
export { DROPDOWN_INJECTION_KEY } from './dropdown/src/tokens.mjs';
|
|
121
121
|
export { emptyProps } from './empty/src/empty.mjs';
|
|
122
|
-
export { formEmits, formProps } from './form/src/
|
|
122
|
+
export { formEmits, formProps } from './form/src/form.mjs';
|
|
123
123
|
export { formItemProps, formItemValidateStates } from './form/src/form-item.mjs';
|
|
124
124
|
export { formContextKey, formItemContextKey } from './form/src/constants.mjs';
|
|
125
125
|
export { useDisabled, useFormDisabled, useFormSize, useSize } from './form/src/hooks/use-form-common-props.mjs';
|
|
@@ -209,6 +209,6 @@ export { virtualizedGridProps, virtualizedListProps, virtualizedProps, virtualiz
|
|
|
209
209
|
export { vLoading as ElLoadingDirective, vLoading } from './loading/src/directive.mjs';
|
|
210
210
|
export { Loading as ElLoadingService } from './loading/src/service.mjs';
|
|
211
211
|
export { messageDefaults, messageEmits, messageProps, messageTypes } from './message/src/message.mjs';
|
|
212
|
-
export { notificationEmits, notificationProps, notificationTypes } from './notification/src/
|
|
212
|
+
export { notificationEmits, notificationProps, notificationTypes } from './notification/src/notification.mjs';
|
|
213
213
|
export { popoverEmits, popoverProps } from './popover/src/popover.mjs';
|
|
214
214
|
//# sourceMappingURL=index.mjs.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import '../../utils/index.mjs';
|
|
2
2
|
import notify from './src/notify.mjs';
|
|
3
|
-
export { notificationEmits, notificationProps, notificationTypes } from './src/
|
|
3
|
+
export { notificationEmits, notificationProps, notificationTypes } from './src/notification.mjs';
|
|
4
4
|
import { withInstallFunction } from '../../utils/vue/install.mjs';
|
|
5
5
|
|
|
6
6
|
const ElNotification = withInstallFunction(notify, "$notify");
|
|
@@ -1,154 +1,72 @@
|
|
|
1
|
-
import { defineComponent, ref, computed, onMounted, openBlock, createBlock, Transition, unref, withCtx, withDirectives, createElementVNode, normalizeClass, normalizeStyle, resolveDynamicComponent, createCommentVNode, toDisplayString, renderSlot, createElementBlock, Fragment, vShow, withModifiers, createVNode } from 'vue';
|
|
2
|
-
import { useTimeoutFn, useEventListener } from '@vueuse/core';
|
|
3
1
|
import '../../../utils/index.mjs';
|
|
4
|
-
import '../../../
|
|
5
|
-
import {
|
|
6
|
-
import '../../config-provider/index.mjs';
|
|
7
|
-
import { notificationProps, notificationEmits } from './notification2.mjs';
|
|
8
|
-
import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
|
|
9
|
-
import { useGlobalComponentSettings } from '../../config-provider/src/hooks/use-global-config.mjs';
|
|
10
|
-
import { CloseComponents, TypeComponentsMap } from '../../../utils/vue/icon.mjs';
|
|
11
|
-
import { EVENT_CODE } from '../../../constants/aria.mjs';
|
|
2
|
+
import { buildProps, definePropType } from '../../../utils/vue/props/runtime.mjs';
|
|
3
|
+
import { iconPropType } from '../../../utils/vue/icon.mjs';
|
|
12
4
|
|
|
13
|
-
const
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
5
|
+
const notificationTypes = [
|
|
6
|
+
"success",
|
|
7
|
+
"info",
|
|
8
|
+
"warning",
|
|
9
|
+
"error"
|
|
10
|
+
];
|
|
11
|
+
const notificationProps = buildProps({
|
|
12
|
+
customClass: {
|
|
13
|
+
type: String,
|
|
14
|
+
default: ""
|
|
15
|
+
},
|
|
16
|
+
dangerouslyUseHTMLString: {
|
|
17
|
+
type: Boolean,
|
|
18
|
+
default: false
|
|
19
|
+
},
|
|
20
|
+
duration: {
|
|
21
|
+
type: Number,
|
|
22
|
+
default: 4500
|
|
23
|
+
},
|
|
24
|
+
icon: {
|
|
25
|
+
type: iconPropType
|
|
26
|
+
},
|
|
27
|
+
id: {
|
|
28
|
+
type: String,
|
|
29
|
+
default: ""
|
|
30
|
+
},
|
|
31
|
+
message: {
|
|
32
|
+
type: definePropType([String, Object]),
|
|
33
|
+
default: ""
|
|
34
|
+
},
|
|
35
|
+
offset: {
|
|
36
|
+
type: Number,
|
|
37
|
+
default: 0
|
|
38
|
+
},
|
|
39
|
+
onClick: {
|
|
40
|
+
type: definePropType(Function),
|
|
41
|
+
default: () => void 0
|
|
42
|
+
},
|
|
43
|
+
onClose: {
|
|
44
|
+
type: definePropType(Function),
|
|
45
|
+
required: true
|
|
46
|
+
},
|
|
47
|
+
position: {
|
|
48
|
+
type: String,
|
|
49
|
+
values: ["top-right", "top-left", "bottom-right", "bottom-left"],
|
|
50
|
+
default: "top-right"
|
|
51
|
+
},
|
|
52
|
+
showClose: {
|
|
53
|
+
type: Boolean,
|
|
54
|
+
default: true
|
|
55
|
+
},
|
|
56
|
+
title: {
|
|
57
|
+
type: String,
|
|
58
|
+
default: ""
|
|
59
|
+
},
|
|
60
|
+
type: {
|
|
61
|
+
type: String,
|
|
62
|
+
values: [...notificationTypes, ""],
|
|
63
|
+
default: ""
|
|
64
|
+
},
|
|
65
|
+
zIndex: Number
|
|
19
66
|
});
|
|
20
|
-
const
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
emits: notificationEmits,
|
|
24
|
-
setup(__props, { expose }) {
|
|
25
|
-
const props = __props;
|
|
26
|
-
const { ns, zIndex } = useGlobalComponentSettings("notification");
|
|
27
|
-
const { nextZIndex, currentZIndex } = zIndex;
|
|
28
|
-
const { Close } = CloseComponents;
|
|
29
|
-
const visible = ref(false);
|
|
30
|
-
let timer = void 0;
|
|
31
|
-
const typeClass = computed(() => {
|
|
32
|
-
const type = props.type;
|
|
33
|
-
return type && TypeComponentsMap[props.type] ? ns.m(type) : "";
|
|
34
|
-
});
|
|
35
|
-
const iconComponent = computed(() => {
|
|
36
|
-
if (!props.type)
|
|
37
|
-
return props.icon;
|
|
38
|
-
return TypeComponentsMap[props.type] || props.icon;
|
|
39
|
-
});
|
|
40
|
-
const horizontalClass = computed(() => props.position.endsWith("right") ? "right" : "left");
|
|
41
|
-
const verticalProperty = computed(() => props.position.startsWith("top") ? "top" : "bottom");
|
|
42
|
-
const positionStyle = computed(() => {
|
|
43
|
-
var _a;
|
|
44
|
-
return {
|
|
45
|
-
[verticalProperty.value]: `${props.offset}px`,
|
|
46
|
-
zIndex: (_a = props.zIndex) != null ? _a : currentZIndex.value
|
|
47
|
-
};
|
|
48
|
-
});
|
|
49
|
-
function startTimer() {
|
|
50
|
-
if (props.duration > 0) {
|
|
51
|
-
;
|
|
52
|
-
({ stop: timer } = useTimeoutFn(() => {
|
|
53
|
-
if (visible.value)
|
|
54
|
-
close();
|
|
55
|
-
}, props.duration));
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
function clearTimer() {
|
|
59
|
-
timer == null ? void 0 : timer();
|
|
60
|
-
}
|
|
61
|
-
function close() {
|
|
62
|
-
visible.value = false;
|
|
63
|
-
}
|
|
64
|
-
function onKeydown({ code }) {
|
|
65
|
-
if (code === EVENT_CODE.delete || code === EVENT_CODE.backspace) {
|
|
66
|
-
clearTimer();
|
|
67
|
-
} else if (code === EVENT_CODE.esc) {
|
|
68
|
-
if (visible.value) {
|
|
69
|
-
close();
|
|
70
|
-
}
|
|
71
|
-
} else {
|
|
72
|
-
startTimer();
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
onMounted(() => {
|
|
76
|
-
startTimer();
|
|
77
|
-
nextZIndex();
|
|
78
|
-
visible.value = true;
|
|
79
|
-
});
|
|
80
|
-
useEventListener(document, "keydown", onKeydown);
|
|
81
|
-
expose({
|
|
82
|
-
visible,
|
|
83
|
-
close
|
|
84
|
-
});
|
|
85
|
-
return (_ctx, _cache) => {
|
|
86
|
-
return openBlock(), createBlock(Transition, {
|
|
87
|
-
name: unref(ns).b("fade"),
|
|
88
|
-
onBeforeLeave: _ctx.onClose,
|
|
89
|
-
onAfterLeave: _cache[1] || (_cache[1] = ($event) => _ctx.$emit("destroy")),
|
|
90
|
-
persisted: ""
|
|
91
|
-
}, {
|
|
92
|
-
default: withCtx(() => [
|
|
93
|
-
withDirectives(createElementVNode("div", {
|
|
94
|
-
id: _ctx.id,
|
|
95
|
-
class: normalizeClass([unref(ns).b(), _ctx.customClass, unref(horizontalClass)]),
|
|
96
|
-
style: normalizeStyle(unref(positionStyle)),
|
|
97
|
-
role: "alert",
|
|
98
|
-
onMouseenter: clearTimer,
|
|
99
|
-
onMouseleave: startTimer,
|
|
100
|
-
onClick: _cache[0] || (_cache[0] = (...args) => _ctx.onClick && _ctx.onClick(...args))
|
|
101
|
-
}, [
|
|
102
|
-
unref(iconComponent) ? (openBlock(), createBlock(unref(ElIcon), {
|
|
103
|
-
key: 0,
|
|
104
|
-
class: normalizeClass([unref(ns).e("icon"), unref(typeClass)])
|
|
105
|
-
}, {
|
|
106
|
-
default: withCtx(() => [
|
|
107
|
-
(openBlock(), createBlock(resolveDynamicComponent(unref(iconComponent))))
|
|
108
|
-
]),
|
|
109
|
-
_: 1
|
|
110
|
-
}, 8, ["class"])) : createCommentVNode("v-if", true),
|
|
111
|
-
createElementVNode("div", {
|
|
112
|
-
class: normalizeClass(unref(ns).e("group"))
|
|
113
|
-
}, [
|
|
114
|
-
createElementVNode("h2", {
|
|
115
|
-
class: normalizeClass(unref(ns).e("title")),
|
|
116
|
-
textContent: toDisplayString(_ctx.title)
|
|
117
|
-
}, null, 10, _hoisted_2),
|
|
118
|
-
withDirectives(createElementVNode("div", {
|
|
119
|
-
class: normalizeClass(unref(ns).e("content")),
|
|
120
|
-
style: normalizeStyle(!!_ctx.title ? void 0 : { margin: 0 })
|
|
121
|
-
}, [
|
|
122
|
-
renderSlot(_ctx.$slots, "default", {}, () => [
|
|
123
|
-
!_ctx.dangerouslyUseHTMLString ? (openBlock(), createElementBlock("p", _hoisted_3, toDisplayString(_ctx.message), 1)) : (openBlock(), createElementBlock(Fragment, { key: 1 }, [
|
|
124
|
-
createCommentVNode(" Caution here, message could've been compromised, never use user's input as message "),
|
|
125
|
-
createElementVNode("p", { innerHTML: _ctx.message }, null, 8, _hoisted_4)
|
|
126
|
-
], 2112))
|
|
127
|
-
])
|
|
128
|
-
], 6), [
|
|
129
|
-
[vShow, _ctx.message]
|
|
130
|
-
]),
|
|
131
|
-
_ctx.showClose ? (openBlock(), createBlock(unref(ElIcon), {
|
|
132
|
-
key: 0,
|
|
133
|
-
class: normalizeClass(unref(ns).e("closeBtn")),
|
|
134
|
-
onClick: withModifiers(close, ["stop"])
|
|
135
|
-
}, {
|
|
136
|
-
default: withCtx(() => [
|
|
137
|
-
createVNode(unref(Close))
|
|
138
|
-
]),
|
|
139
|
-
_: 1
|
|
140
|
-
}, 8, ["class", "onClick"])) : createCommentVNode("v-if", true)
|
|
141
|
-
], 2)
|
|
142
|
-
], 46, _hoisted_1), [
|
|
143
|
-
[vShow, visible.value]
|
|
144
|
-
])
|
|
145
|
-
]),
|
|
146
|
-
_: 3
|
|
147
|
-
}, 8, ["name", "onBeforeLeave"]);
|
|
148
|
-
};
|
|
149
|
-
}
|
|
150
|
-
});
|
|
151
|
-
var NotificationConstructor = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "/home/runner/work/element-plus/element-plus/packages/components/notification/src/notification.vue"]]);
|
|
67
|
+
const notificationEmits = {
|
|
68
|
+
destroy: () => true
|
|
69
|
+
};
|
|
152
70
|
|
|
153
|
-
export {
|
|
71
|
+
export { notificationEmits, notificationProps, notificationTypes };
|
|
154
72
|
//# sourceMappingURL=notification.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"notification.mjs","sources":["../../../../../../packages/components/notification/src/notification.
|
|
1
|
+
{"version":3,"file":"notification.mjs","sources":["../../../../../../packages/components/notification/src/notification.ts"],"sourcesContent":["import { buildProps, definePropType, iconPropType } from '@element-plus/utils'\n\nimport type { ExtractPropTypes, VNode } from 'vue'\nimport type Notification from './notification.vue'\n\nexport const notificationTypes = [\n 'success',\n 'info',\n 'warning',\n 'error',\n] as const\n\nexport const notificationProps = buildProps({\n /**\n * @description custom class name for Notification\n */\n customClass: {\n type: String,\n default: '',\n },\n /**\n * @description whether `message` is treated as HTML string\n */\n dangerouslyUseHTMLString: {\n type: Boolean,\n default: false,\n },\n /**\n * @description duration before close. It will not automatically close if set 0\n */\n duration: {\n type: Number,\n default: 4500,\n },\n /**\n * @description custom icon component. It will be overridden by `type`\n */\n icon: {\n type: iconPropType,\n },\n /**\n * @description notification dom id\n */\n id: {\n type: String,\n default: '',\n },\n /**\n * @description description text\n */\n message: {\n type: definePropType<string | VNode>([String, Object]),\n default: '',\n },\n /**\n * @description offset from the top edge of the screen. Every Notification instance of the same moment should have the same offset\n */\n offset: {\n type: Number,\n default: 0,\n },\n /**\n * @description callback function when notification clicked\n */\n onClick: {\n type: definePropType<() => void>(Function),\n default: () => undefined,\n },\n /**\n * @description callback function when closed\n */\n onClose: {\n type: definePropType<() => void>(Function),\n required: true,\n },\n /**\n * @description custom position\n */\n position: {\n type: String,\n values: ['top-right', 'top-left', 'bottom-right', 'bottom-left'],\n default: 'top-right',\n },\n /**\n * @description whether to show a close button\n */\n showClose: {\n type: Boolean,\n default: true,\n },\n /**\n * @description title\n */\n title: {\n type: String,\n default: '',\n },\n /**\n * @description notification type\n */\n type: {\n type: String,\n values: [...notificationTypes, ''],\n default: '',\n },\n /**\n * @description initial zIndex\n */\n zIndex: Number,\n} as const)\nexport type NotificationProps = ExtractPropTypes<typeof notificationProps>\n\nexport const notificationEmits = {\n destroy: () => true,\n}\nexport type NotificationEmits = typeof notificationEmits\n\nexport type NotificationInstance = InstanceType<typeof Notification>\n\nexport type NotificationOptions = Omit<NotificationProps, 'id'> & {\n /**\n * @description set the root element for the notification, default to `document.body`\n */\n appendTo?: HTMLElement | string\n}\nexport type NotificationOptionsTyped = Omit<NotificationOptions, 'type'>\n\nexport interface NotificationHandle {\n close: () => void\n}\n\nexport type NotificationParams = Partial<NotificationOptions> | string | VNode\nexport type NotificationParamsTyped =\n | Partial<NotificationOptionsTyped>\n | string\n | VNode\n\nexport type NotifyFn = ((\n options?: NotificationParams\n) => NotificationHandle) & { closeAll: () => void }\n\nexport type NotifyTypedFn = (\n options?: NotificationParamsTyped\n) => NotificationHandle\n\nexport interface Notify extends NotifyFn {\n success: NotifyTypedFn\n warning: NotifyTypedFn\n error: NotifyTypedFn\n info: NotifyTypedFn\n}\n\nexport interface NotificationQueueItem {\n vm: VNode\n}\n\nexport type NotificationQueue = NotificationQueueItem[]\n"],"names":[],"mappings":";;;;AACY,MAAC,iBAAiB,GAAG;AACjC,EAAE,SAAS;AACX,EAAE,MAAM;AACR,EAAE,SAAS;AACX,EAAE,OAAO;AACT,EAAE;AACU,MAAC,iBAAiB,GAAG,UAAU,CAAC;AAC5C,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,wBAAwB,EAAE;AAC5B,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,YAAY;AACtB,GAAG;AACH,EAAE,EAAE,EAAE;AACN,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,OAAO,EAAE;AACX,IAAI,IAAI,EAAE,cAAc,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAC1C,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,CAAC;AACd,GAAG;AACH,EAAE,OAAO,EAAE;AACX,IAAI,IAAI,EAAE,cAAc,CAAC,QAAQ,CAAC;AAClC,IAAI,OAAO,EAAE,MAAM,KAAK,CAAC;AACzB,GAAG;AACH,EAAE,OAAO,EAAE;AACX,IAAI,IAAI,EAAE,cAAc,CAAC,QAAQ,CAAC;AAClC,IAAI,QAAQ,EAAE,IAAI;AAClB,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,CAAC,WAAW,EAAE,UAAU,EAAE,cAAc,EAAE,aAAa,CAAC;AACpE,IAAI,OAAO,EAAE,WAAW;AACxB,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,CAAC,GAAG,iBAAiB,EAAE,EAAE,CAAC;AACtC,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,MAAM,EAAE,MAAM;AAChB,CAAC,EAAE;AACS,MAAC,iBAAiB,GAAG;AACjC,EAAE,OAAO,EAAE,MAAM,IAAI;AACrB;;;;"}
|