@element-plus/nightly 0.0.20241129 → 0.0.20241130
Sign up to get free protection for your applications and to get access to all the features.
- 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-eg.js +1 -1
- package/dist/locale/ar-eg.min.js +1 -1
- package/dist/locale/ar-eg.min.mjs +1 -1
- package/dist/locale/ar-eg.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/ms.js +1 -1
- package/dist/locale/ms.min.js +1 -1
- package/dist/locale/ms.min.mjs +1 -1
- package/dist/locale/ms.mjs +1 -1
- package/dist/locale/my.js +1 -1
- package/dist/locale/my.min.js +1 -1
- package/dist/locale/my.min.mjs +1 -1
- package/dist/locale/my.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/affix/index.mjs +2 -2
- package/es/components/affix/src/affix.mjs +25 -118
- package/es/components/affix/src/affix.mjs.map +1 -1
- package/es/components/affix/src/affix2.mjs +118 -25
- package/es/components/affix/src/affix2.mjs.map +1 -1
- package/es/components/carousel/index.mjs +2 -2
- package/es/components/carousel/src/carousel-item.mjs +69 -7
- package/es/components/carousel/src/carousel-item.mjs.map +1 -1
- package/es/components/carousel/src/carousel-item2.mjs +7 -69
- package/es/components/carousel/src/carousel-item2.mjs.map +1 -1
- package/es/components/index.mjs +4 -4
- package/es/components/input-tag/index.mjs +2 -2
- package/es/components/input-tag/src/input-tag.mjs +215 -65
- package/es/components/input-tag/src/input-tag.mjs.map +1 -1
- package/es/components/input-tag/src/input-tag2.mjs +65 -215
- package/es/components/input-tag/src/input-tag2.mjs.map +1 -1
- package/es/components/tour/index.mjs +2 -2
- package/es/components/tour/src/step.mjs +168 -44
- package/es/components/tour/src/step.mjs.map +1 -1
- package/es/components/tour/src/step2.mjs +44 -168
- package/es/components/tour/src/step2.mjs.map +1 -1
- 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/affix/index.js +2 -2
- package/lib/components/affix/src/affix.js +26 -118
- package/lib/components/affix/src/affix.js.map +1 -1
- package/lib/components/affix/src/affix2.js +118 -26
- package/lib/components/affix/src/affix2.js.map +1 -1
- package/lib/components/carousel/index.js +2 -2
- package/lib/components/carousel/src/carousel-item.js +69 -7
- package/lib/components/carousel/src/carousel-item.js.map +1 -1
- package/lib/components/carousel/src/carousel-item2.js +7 -69
- package/lib/components/carousel/src/carousel-item2.js.map +1 -1
- package/lib/components/index.js +4 -4
- package/lib/components/input-tag/index.js +2 -2
- package/lib/components/input-tag/src/input-tag.js +214 -65
- package/lib/components/input-tag/src/input-tag.js.map +1 -1
- package/lib/components/input-tag/src/input-tag2.js +65 -214
- package/lib/components/input-tag/src/input-tag2.js.map +1 -1
- package/lib/components/tour/index.js +2 -2
- package/lib/components/tour/src/step.js +167 -44
- package/lib/components/tour/src/step.js.map +1 -1
- package/lib/components/tour/src/step2.js +44 -167
- package/lib/components/tour/src/step2.js.map +1 -1
- 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 +1 -1
- package/web-types.json +1 -1
@@ -1,219 +1,69 @@
|
|
1
|
-
import {
|
2
|
-
import {
|
3
|
-
import {
|
4
|
-
import {
|
5
|
-
import {
|
6
|
-
import
|
7
|
-
import {
|
8
|
-
import { useHovering } from './composables/use-hovering.mjs';
|
9
|
-
import { useCalcInputWidth } from '../../../hooks/use-calc-input-width/index.mjs';
|
10
|
-
import { useDragTag } from './composables/use-drag-tag.mjs';
|
11
|
-
import { useInputTagDom } from './composables/use-input-tag-dom.mjs';
|
12
|
-
import { useAttrs } from '../../../hooks/use-attrs/index.mjs';
|
13
|
-
import { useFormItem, useFormItemInputId } from '../../form/src/hooks/use-form-item.mjs';
|
14
|
-
import { ValidateComponentsMap } from '../../../utils/vue/icon.mjs';
|
15
|
-
import { NOOP } from '@vue/shared';
|
1
|
+
import { tagProps } from '../../tag/src/tag.mjs';
|
2
|
+
import { buildProps, definePropType } from '../../../utils/vue/props/runtime.mjs';
|
3
|
+
import { EVENT_CODE } from '../../../constants/aria.mjs';
|
4
|
+
import { useSizeProp } from '../../../hooks/use-size/index.mjs';
|
5
|
+
import { UPDATE_MODEL_EVENT, CHANGE_EVENT, INPUT_EVENT } from '../../../constants/event.mjs';
|
6
|
+
import { isArray, isString } from '@vue/shared';
|
7
|
+
import { isUndefined } from '../../../utils/types.mjs';
|
16
8
|
|
17
|
-
const
|
18
|
-
|
19
|
-
|
9
|
+
const inputTagProps = buildProps({
|
10
|
+
modelValue: {
|
11
|
+
type: definePropType(Array)
|
12
|
+
},
|
13
|
+
max: Number,
|
14
|
+
tagType: { ...tagProps.type, default: "info" },
|
15
|
+
tagEffect: tagProps.effect,
|
16
|
+
trigger: {
|
17
|
+
type: definePropType(String),
|
18
|
+
default: EVENT_CODE.enter
|
19
|
+
},
|
20
|
+
draggable: {
|
21
|
+
type: Boolean,
|
22
|
+
default: false
|
23
|
+
},
|
24
|
+
size: useSizeProp,
|
25
|
+
clearable: Boolean,
|
26
|
+
disabled: {
|
27
|
+
type: Boolean,
|
28
|
+
default: void 0
|
29
|
+
},
|
30
|
+
validateEvent: {
|
31
|
+
type: Boolean,
|
32
|
+
default: true
|
33
|
+
},
|
34
|
+
readonly: Boolean,
|
35
|
+
autofocus: Boolean,
|
36
|
+
id: {
|
37
|
+
type: String,
|
38
|
+
default: void 0
|
39
|
+
},
|
40
|
+
tabindex: {
|
41
|
+
type: [String, Number],
|
42
|
+
default: 0
|
43
|
+
},
|
44
|
+
maxlength: {
|
45
|
+
type: [String, Number]
|
46
|
+
},
|
47
|
+
minlength: {
|
48
|
+
type: [String, Number]
|
49
|
+
},
|
50
|
+
placeholder: String,
|
51
|
+
autocomplete: {
|
52
|
+
type: String,
|
53
|
+
default: "off"
|
54
|
+
},
|
55
|
+
ariaLabel: String
|
20
56
|
});
|
21
|
-
const
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
const needStatusIcon = computed(() => {
|
32
|
-
var _a;
|
33
|
-
return (_a = form == null ? void 0 : form.statusIcon) != null ? _a : false;
|
34
|
-
});
|
35
|
-
const validateState = computed(() => (formItem == null ? void 0 : formItem.validateState) || "");
|
36
|
-
const validateIcon = computed(() => {
|
37
|
-
return validateState.value && ValidateComponentsMap[validateState.value];
|
38
|
-
});
|
39
|
-
const {
|
40
|
-
inputRef,
|
41
|
-
wrapperRef,
|
42
|
-
isFocused,
|
43
|
-
inputValue,
|
44
|
-
size,
|
45
|
-
tagSize,
|
46
|
-
placeholder,
|
47
|
-
closable,
|
48
|
-
disabled,
|
49
|
-
handleDragged,
|
50
|
-
handleInput,
|
51
|
-
handleKeydown,
|
52
|
-
handleRemoveTag,
|
53
|
-
handleClear,
|
54
|
-
handleCompositionStart,
|
55
|
-
handleCompositionUpdate,
|
56
|
-
handleCompositionEnd,
|
57
|
-
focus,
|
58
|
-
blur
|
59
|
-
} = useInputTag({ props, emit, formItem });
|
60
|
-
const { hovering, handleMouseEnter, handleMouseLeave } = useHovering();
|
61
|
-
const { calculatorRef, inputStyle } = useCalcInputWidth();
|
62
|
-
const {
|
63
|
-
dropIndicatorRef,
|
64
|
-
showDropIndicator,
|
65
|
-
handleDragStart,
|
66
|
-
handleDragOver,
|
67
|
-
handleDragEnd
|
68
|
-
} = useDragTag({ wrapperRef, handleDragged, afterDragged: focus });
|
69
|
-
const {
|
70
|
-
ns,
|
71
|
-
nsInput,
|
72
|
-
containerKls,
|
73
|
-
containerStyle,
|
74
|
-
innerKls,
|
75
|
-
showClear,
|
76
|
-
showSuffix
|
77
|
-
} = useInputTagDom({
|
78
|
-
props,
|
79
|
-
hovering,
|
80
|
-
isFocused,
|
81
|
-
inputValue,
|
82
|
-
disabled,
|
83
|
-
size,
|
84
|
-
validateState,
|
85
|
-
validateIcon,
|
86
|
-
needStatusIcon
|
87
|
-
});
|
88
|
-
expose({
|
89
|
-
focus,
|
90
|
-
blur
|
91
|
-
});
|
92
|
-
return (_ctx, _cache) => {
|
93
|
-
return openBlock(), createElementBlock("div", {
|
94
|
-
ref_key: "wrapperRef",
|
95
|
-
ref: wrapperRef,
|
96
|
-
class: normalizeClass(unref(containerKls)),
|
97
|
-
style: normalizeStyle(unref(containerStyle)),
|
98
|
-
onMouseenter: unref(handleMouseEnter),
|
99
|
-
onMouseleave: unref(handleMouseLeave)
|
100
|
-
}, [
|
101
|
-
unref(slots).prefix ? (openBlock(), createElementBlock("div", {
|
102
|
-
key: 0,
|
103
|
-
class: normalizeClass(unref(ns).e("prefix"))
|
104
|
-
}, [
|
105
|
-
renderSlot(_ctx.$slots, "prefix")
|
106
|
-
], 2)) : createCommentVNode("v-if", true),
|
107
|
-
createElementVNode("div", {
|
108
|
-
class: normalizeClass(unref(innerKls))
|
109
|
-
}, [
|
110
|
-
(openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.modelValue, (item, index) => {
|
111
|
-
return openBlock(), createBlock(unref(ElTag), {
|
112
|
-
key: index,
|
113
|
-
size: unref(tagSize),
|
114
|
-
closable: unref(closable),
|
115
|
-
type: _ctx.tagType,
|
116
|
-
effect: _ctx.tagEffect,
|
117
|
-
draggable: unref(closable) && _ctx.draggable,
|
118
|
-
"disable-transitions": "",
|
119
|
-
onClose: ($event) => unref(handleRemoveTag)(index),
|
120
|
-
onDragstart: (event) => unref(handleDragStart)(event, index),
|
121
|
-
onDragover: (event) => unref(handleDragOver)(event, index),
|
122
|
-
onDragend: unref(handleDragEnd),
|
123
|
-
onDrop: withModifiers(() => {
|
124
|
-
}, ["stop"])
|
125
|
-
}, {
|
126
|
-
default: withCtx(() => [
|
127
|
-
renderSlot(_ctx.$slots, "tag", {
|
128
|
-
value: item,
|
129
|
-
index
|
130
|
-
}, () => [
|
131
|
-
createTextVNode(toDisplayString(item), 1)
|
132
|
-
])
|
133
|
-
]),
|
134
|
-
_: 2
|
135
|
-
}, 1032, ["size", "closable", "type", "effect", "draggable", "onClose", "onDragstart", "onDragover", "onDragend", "onDrop"]);
|
136
|
-
}), 128)),
|
137
|
-
createElementVNode("div", {
|
138
|
-
class: normalizeClass(unref(ns).e("input-wrapper"))
|
139
|
-
}, [
|
140
|
-
withDirectives(createElementVNode("input", mergeProps({
|
141
|
-
id: unref(inputId),
|
142
|
-
ref_key: "inputRef",
|
143
|
-
ref: inputRef,
|
144
|
-
"onUpdate:modelValue": ($event) => isRef(inputValue) ? inputValue.value = $event : null
|
145
|
-
}, unref(attrs), {
|
146
|
-
type: "text",
|
147
|
-
minlength: _ctx.minlength,
|
148
|
-
maxlength: _ctx.maxlength,
|
149
|
-
disabled: unref(disabled),
|
150
|
-
readonly: _ctx.readonly,
|
151
|
-
autocomplete: _ctx.autocomplete,
|
152
|
-
tabindex: _ctx.tabindex,
|
153
|
-
placeholder: unref(placeholder),
|
154
|
-
autofocus: _ctx.autofocus,
|
155
|
-
ariaLabel: _ctx.ariaLabel,
|
156
|
-
class: unref(ns).e("input"),
|
157
|
-
style: unref(inputStyle),
|
158
|
-
onCompositionstart: unref(handleCompositionStart),
|
159
|
-
onCompositionupdate: unref(handleCompositionUpdate),
|
160
|
-
onCompositionend: unref(handleCompositionEnd),
|
161
|
-
onInput: unref(handleInput),
|
162
|
-
onKeydown: unref(handleKeydown)
|
163
|
-
}), null, 16, ["id", "onUpdate:modelValue", "minlength", "maxlength", "disabled", "readonly", "autocomplete", "tabindex", "placeholder", "autofocus", "ariaLabel", "onCompositionstart", "onCompositionupdate", "onCompositionend", "onInput", "onKeydown"]), [
|
164
|
-
[vModelText, unref(inputValue)]
|
165
|
-
]),
|
166
|
-
createElementVNode("span", {
|
167
|
-
ref_key: "calculatorRef",
|
168
|
-
ref: calculatorRef,
|
169
|
-
"aria-hidden": "true",
|
170
|
-
class: normalizeClass(unref(ns).e("input-calculator")),
|
171
|
-
textContent: toDisplayString(unref(inputValue))
|
172
|
-
}, null, 10, ["textContent"])
|
173
|
-
], 2),
|
174
|
-
withDirectives(createElementVNode("div", {
|
175
|
-
ref_key: "dropIndicatorRef",
|
176
|
-
ref: dropIndicatorRef,
|
177
|
-
class: normalizeClass(unref(ns).e("drop-indicator"))
|
178
|
-
}, null, 2), [
|
179
|
-
[vShow, unref(showDropIndicator)]
|
180
|
-
])
|
181
|
-
], 2),
|
182
|
-
unref(showSuffix) ? (openBlock(), createElementBlock("div", {
|
183
|
-
key: 1,
|
184
|
-
class: normalizeClass(unref(ns).e("suffix"))
|
185
|
-
}, [
|
186
|
-
renderSlot(_ctx.$slots, "suffix"),
|
187
|
-
unref(showClear) ? (openBlock(), createBlock(unref(ElIcon), {
|
188
|
-
key: 0,
|
189
|
-
class: normalizeClass([unref(ns).e("icon"), unref(ns).e("clear")]),
|
190
|
-
onMousedown: withModifiers(unref(NOOP), ["prevent"]),
|
191
|
-
onClick: unref(handleClear)
|
192
|
-
}, {
|
193
|
-
default: withCtx(() => [
|
194
|
-
createVNode(unref(CircleClose))
|
195
|
-
]),
|
196
|
-
_: 1
|
197
|
-
}, 8, ["class", "onMousedown", "onClick"])) : createCommentVNode("v-if", true),
|
198
|
-
unref(validateState) && unref(validateIcon) && unref(needStatusIcon) ? (openBlock(), createBlock(unref(ElIcon), {
|
199
|
-
key: 1,
|
200
|
-
class: normalizeClass([
|
201
|
-
unref(nsInput).e("icon"),
|
202
|
-
unref(nsInput).e("validateIcon"),
|
203
|
-
unref(nsInput).is("loading", unref(validateState) === "validating")
|
204
|
-
])
|
205
|
-
}, {
|
206
|
-
default: withCtx(() => [
|
207
|
-
(openBlock(), createBlock(resolveDynamicComponent(unref(validateIcon))))
|
208
|
-
]),
|
209
|
-
_: 1
|
210
|
-
}, 8, ["class"])) : createCommentVNode("v-if", true)
|
211
|
-
], 2)) : createCommentVNode("v-if", true)
|
212
|
-
], 46, ["onMouseenter", "onMouseleave"]);
|
213
|
-
};
|
214
|
-
}
|
215
|
-
});
|
216
|
-
var InputTag = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "input-tag.vue"]]);
|
57
|
+
const inputTagEmits = {
|
58
|
+
[UPDATE_MODEL_EVENT]: (value) => isArray(value) || isUndefined(value),
|
59
|
+
[CHANGE_EVENT]: (value) => isArray(value) || isUndefined(value),
|
60
|
+
[INPUT_EVENT]: (value) => isString(value),
|
61
|
+
"add-tag": (value) => isString(value),
|
62
|
+
"remove-tag": (value) => isString(value),
|
63
|
+
focus: (evt) => evt instanceof FocusEvent,
|
64
|
+
blur: (evt) => evt instanceof FocusEvent,
|
65
|
+
clear: () => true
|
66
|
+
};
|
217
67
|
|
218
|
-
export {
|
68
|
+
export { inputTagEmits, inputTagProps };
|
219
69
|
//# sourceMappingURL=input-tag2.mjs.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"input-tag2.mjs","sources":["../../../../../../packages/components/input-tag/src/input-tag.
|
1
|
+
{"version":3,"file":"input-tag2.mjs","sources":["../../../../../../packages/components/input-tag/src/input-tag.ts"],"sourcesContent":["import {\n buildProps,\n definePropType,\n isArray,\n isString,\n isUndefined,\n} from '@element-plus/utils'\nimport { useSizeProp } from '@element-plus/hooks'\nimport {\n CHANGE_EVENT,\n EVENT_CODE,\n INPUT_EVENT,\n UPDATE_MODEL_EVENT,\n} from '@element-plus/constants'\nimport { tagProps } from '@element-plus/components/tag/src/tag'\n\nimport type { ExtractPropTypes } from 'vue'\n\nexport const inputTagProps = buildProps({\n /**\n * @description binding value\n */\n modelValue: {\n type: definePropType<string[]>(Array),\n },\n /**\n * @description max number tags that can be enter\n */\n max: Number,\n /**\n * @description tag type\n */\n tagType: { ...tagProps.type, default: 'info' },\n /**\n * @description tag effect\n */\n tagEffect: tagProps.effect,\n /**\n * @description the key to trigger input tag\n */\n trigger: {\n type: definePropType<'Enter' | 'Space'>(String),\n default: EVENT_CODE.enter,\n },\n /**\n * @description whether tags can be dragged\n */\n draggable: {\n type: Boolean,\n default: false,\n },\n /**\n * @description input box size\n */\n size: useSizeProp,\n /**\n * @description whether to show clear button\n */\n clearable: Boolean,\n /**\n * @description whether to disable input-tag\n */\n disabled: {\n type: Boolean,\n default: undefined,\n },\n /**\n * @description whether to trigger form validation\n */\n validateEvent: {\n type: Boolean,\n default: true,\n },\n /**\n * @description native input readonly\n */\n readonly: Boolean,\n /**\n * @description native input autofocus\n */\n autofocus: Boolean,\n /**\n * @description same as `id` in native input\n */\n id: {\n type: String,\n default: undefined,\n },\n /**\n * @description same as `tabindex` in native input\n */\n tabindex: {\n type: [String, Number],\n default: 0,\n },\n /**\n * @description same as `maxlength` in native input\n */\n maxlength: {\n type: [String, Number],\n },\n /**\n * @description same as `minlength` in native input\n */\n minlength: {\n type: [String, Number],\n },\n /**\n * @description placeholder of input\n */\n placeholder: String,\n /**\n * @description native input autocomplete\n */\n autocomplete: {\n type: String,\n default: 'off',\n },\n /**\n * @description native `aria-label` attribute\n */\n ariaLabel: String,\n} as const)\nexport type InputTagProps = ExtractPropTypes<typeof inputTagProps>\n\nexport const inputTagEmits = {\n [UPDATE_MODEL_EVENT]: (value?: string[]) =>\n isArray(value) || isUndefined(value),\n [CHANGE_EVENT]: (value?: string[]) => isArray(value) || isUndefined(value),\n [INPUT_EVENT]: (value: string) => isString(value),\n 'add-tag': (value: string) => isString(value),\n 'remove-tag': (value: string) => isString(value),\n focus: (evt: FocusEvent) => evt instanceof FocusEvent,\n blur: (evt: FocusEvent) => evt instanceof FocusEvent,\n clear: () => true,\n}\nexport type InputTagEmits = typeof inputTagEmits\n"],"names":[],"mappings":";;;;;;;;AAeY,MAAC,aAAa,GAAG,UAAU,CAAC;AACxC,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,cAAc,CAAC,KAAK,CAAC;AAC/B,GAAG;AACH,EAAE,GAAG,EAAE,MAAM;AACb,EAAE,OAAO,EAAE,EAAE,GAAG,QAAQ,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE;AAChD,EAAE,SAAS,EAAE,QAAQ,CAAC,MAAM;AAC5B,EAAE,OAAO,EAAE;AACX,IAAI,IAAI,EAAE,cAAc,CAAC,MAAM,CAAC;AAChC,IAAI,OAAO,EAAE,UAAU,CAAC,KAAK;AAC7B,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,IAAI,EAAE,WAAW;AACnB,EAAE,SAAS,EAAE,OAAO;AACpB,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK,CAAC;AACnB,GAAG;AACH,EAAE,aAAa,EAAE;AACjB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,SAAS,EAAE,OAAO;AACpB,EAAE,EAAE,EAAE;AACN,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,KAAK,CAAC;AACnB,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;AAC1B,IAAI,OAAO,EAAE,CAAC;AACd,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;AAC1B,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;AAC1B,GAAG;AACH,EAAE,WAAW,EAAE,MAAM;AACrB,EAAE,YAAY,EAAE;AAChB,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,SAAS,EAAE,MAAM;AACnB,CAAC,EAAE;AACS,MAAC,aAAa,GAAG;AAC7B,EAAE,CAAC,kBAAkB,GAAG,CAAC,KAAK,KAAK,OAAO,CAAC,KAAK,CAAC,IAAI,WAAW,CAAC,KAAK,CAAC;AACvE,EAAE,CAAC,YAAY,GAAG,CAAC,KAAK,KAAK,OAAO,CAAC,KAAK,CAAC,IAAI,WAAW,CAAC,KAAK,CAAC;AACjE,EAAE,CAAC,WAAW,GAAG,CAAC,KAAK,KAAK,QAAQ,CAAC,KAAK,CAAC;AAC3C,EAAE,SAAS,EAAE,CAAC,KAAK,KAAK,QAAQ,CAAC,KAAK,CAAC;AACvC,EAAE,YAAY,EAAE,CAAC,KAAK,KAAK,QAAQ,CAAC,KAAK,CAAC;AAC1C,EAAE,KAAK,EAAE,CAAC,GAAG,KAAK,GAAG,YAAY,UAAU;AAC3C,EAAE,IAAI,EAAE,CAAC,GAAG,KAAK,GAAG,YAAY,UAAU;AAC1C,EAAE,KAAK,EAAE,MAAM,IAAI;AACnB;;;;"}
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import Tour from './src/tour2.mjs';
|
2
|
-
import TourStep from './src/
|
2
|
+
import TourStep from './src/step.mjs';
|
3
3
|
export { tourEmits, tourProps } from './src/tour.mjs';
|
4
|
-
export { tourStepEmits, tourStepProps } from './src/
|
4
|
+
export { tourStepEmits, tourStepProps } from './src/step2.mjs';
|
5
5
|
export { tourContentEmits, tourContentProps, tourPlacements, tourStrategies } from './src/content.mjs';
|
6
6
|
import { withInstall, withNoopInstall } from '../../utils/vue/install.mjs';
|
7
7
|
|
@@ -1,49 +1,173 @@
|
|
1
|
-
import {
|
2
|
-
import {
|
3
|
-
import {
|
1
|
+
import { defineComponent, inject, watch, computed, openBlock, createElementBlock, Fragment, unref, normalizeClass, createVNode, withCtx, createBlock, resolveDynamicComponent, createCommentVNode, createElementVNode, renderSlot, toDisplayString, renderList, mergeProps, createTextVNode } from 'vue';
|
2
|
+
import { omit } from 'lodash-unified';
|
3
|
+
import { ElButton } from '../../button/index.mjs';
|
4
|
+
import { ElIcon } from '../../icon/index.mjs';
|
5
|
+
import { tourStepProps, tourStepEmits } from './step2.mjs';
|
6
|
+
import { tourKey } from './helper.mjs';
|
7
|
+
import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
|
8
|
+
import { useLocale } from '../../../hooks/use-locale/index.mjs';
|
9
|
+
import { CloseComponents } from '../../../utils/vue/icon.mjs';
|
4
10
|
|
5
|
-
const
|
6
|
-
|
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
|
-
|
11
|
+
const __default__ = defineComponent({
|
12
|
+
name: "ElTourStep"
|
13
|
+
});
|
14
|
+
const _sfc_main = /* @__PURE__ */ defineComponent({
|
15
|
+
...__default__,
|
16
|
+
props: tourStepProps,
|
17
|
+
emits: tourStepEmits,
|
18
|
+
setup(__props, { emit }) {
|
19
|
+
const props = __props;
|
20
|
+
const { Close } = CloseComponents;
|
21
|
+
const { t } = useLocale();
|
22
|
+
const {
|
23
|
+
currentStep,
|
24
|
+
current,
|
25
|
+
total,
|
26
|
+
showClose,
|
27
|
+
closeIcon,
|
28
|
+
mergedType,
|
29
|
+
ns,
|
30
|
+
slots: tourSlots,
|
31
|
+
updateModelValue,
|
32
|
+
onClose: tourOnClose,
|
33
|
+
onFinish: tourOnFinish,
|
34
|
+
onChange
|
35
|
+
} = inject(tourKey);
|
36
|
+
watch(props, (val) => {
|
37
|
+
currentStep.value = val;
|
38
|
+
}, {
|
39
|
+
immediate: true
|
40
|
+
});
|
41
|
+
const mergedShowClose = computed(() => {
|
42
|
+
var _a;
|
43
|
+
return (_a = props.showClose) != null ? _a : showClose.value;
|
44
|
+
});
|
45
|
+
const mergedCloseIcon = computed(() => {
|
46
|
+
var _a, _b;
|
47
|
+
return (_b = (_a = props.closeIcon) != null ? _a : closeIcon.value) != null ? _b : Close;
|
48
|
+
});
|
49
|
+
const filterButtonProps = (btnProps) => {
|
50
|
+
if (!btnProps)
|
51
|
+
return;
|
52
|
+
return omit(btnProps, ["children", "onClick"]);
|
53
|
+
};
|
54
|
+
const onPrev = () => {
|
55
|
+
var _a, _b;
|
56
|
+
current.value -= 1;
|
57
|
+
if ((_a = props.prevButtonProps) == null ? void 0 : _a.onClick) {
|
58
|
+
(_b = props.prevButtonProps) == null ? void 0 : _b.onClick();
|
59
|
+
}
|
60
|
+
onChange();
|
61
|
+
};
|
62
|
+
const onNext = () => {
|
63
|
+
var _a;
|
64
|
+
if (current.value >= total.value - 1) {
|
65
|
+
onFinish();
|
66
|
+
} else {
|
67
|
+
current.value += 1;
|
68
|
+
}
|
69
|
+
if ((_a = props.nextButtonProps) == null ? void 0 : _a.onClick) {
|
70
|
+
props.nextButtonProps.onClick();
|
71
|
+
}
|
72
|
+
onChange();
|
73
|
+
};
|
74
|
+
const onFinish = () => {
|
75
|
+
onClose();
|
76
|
+
tourOnFinish();
|
77
|
+
};
|
78
|
+
const onClose = () => {
|
79
|
+
updateModelValue(false);
|
80
|
+
tourOnClose();
|
81
|
+
emit("close");
|
82
|
+
};
|
83
|
+
return (_ctx, _cache) => {
|
84
|
+
return openBlock(), createElementBlock(Fragment, null, [
|
85
|
+
unref(mergedShowClose) ? (openBlock(), createElementBlock("button", {
|
86
|
+
key: 0,
|
87
|
+
"aria-label": "Close",
|
88
|
+
class: normalizeClass(unref(ns).e("closebtn")),
|
89
|
+
type: "button",
|
90
|
+
onClick: onClose
|
91
|
+
}, [
|
92
|
+
createVNode(unref(ElIcon), {
|
93
|
+
class: normalizeClass(unref(ns).e("close"))
|
94
|
+
}, {
|
95
|
+
default: withCtx(() => [
|
96
|
+
(openBlock(), createBlock(resolveDynamicComponent(unref(mergedCloseIcon))))
|
97
|
+
]),
|
98
|
+
_: 1
|
99
|
+
}, 8, ["class"])
|
100
|
+
], 2)) : createCommentVNode("v-if", true),
|
101
|
+
createElementVNode("header", {
|
102
|
+
class: normalizeClass([unref(ns).e("header"), { "show-close": unref(showClose) }])
|
103
|
+
}, [
|
104
|
+
renderSlot(_ctx.$slots, "header", {}, () => [
|
105
|
+
createElementVNode("span", {
|
106
|
+
role: "heading",
|
107
|
+
class: normalizeClass(unref(ns).e("title"))
|
108
|
+
}, toDisplayString(_ctx.title), 3)
|
109
|
+
])
|
110
|
+
], 2),
|
111
|
+
createElementVNode("div", {
|
112
|
+
class: normalizeClass(unref(ns).e("body"))
|
113
|
+
}, [
|
114
|
+
renderSlot(_ctx.$slots, "default", {}, () => [
|
115
|
+
createElementVNode("span", null, toDisplayString(_ctx.description), 1)
|
116
|
+
])
|
117
|
+
], 2),
|
118
|
+
createElementVNode("footer", {
|
119
|
+
class: normalizeClass(unref(ns).e("footer"))
|
120
|
+
}, [
|
121
|
+
createElementVNode("div", {
|
122
|
+
class: normalizeClass(unref(ns).b("indicators"))
|
123
|
+
}, [
|
124
|
+
unref(tourSlots).indicators ? (openBlock(), createBlock(resolveDynamicComponent(unref(tourSlots).indicators), {
|
125
|
+
key: 0,
|
126
|
+
current: unref(current),
|
127
|
+
total: unref(total)
|
128
|
+
}, null, 8, ["current", "total"])) : (openBlock(true), createElementBlock(Fragment, { key: 1 }, renderList(unref(total), (item, index) => {
|
129
|
+
return openBlock(), createElementBlock("span", {
|
130
|
+
key: item,
|
131
|
+
class: normalizeClass([unref(ns).b("indicator"), index === unref(current) ? "is-active" : ""])
|
132
|
+
}, null, 2);
|
133
|
+
}), 128))
|
134
|
+
], 2),
|
135
|
+
createElementVNode("div", {
|
136
|
+
class: normalizeClass(unref(ns).b("buttons"))
|
137
|
+
}, [
|
138
|
+
unref(current) > 0 ? (openBlock(), createBlock(unref(ElButton), mergeProps({
|
139
|
+
key: 0,
|
140
|
+
size: "small",
|
141
|
+
type: unref(mergedType)
|
142
|
+
}, filterButtonProps(_ctx.prevButtonProps), { onClick: onPrev }), {
|
143
|
+
default: withCtx(() => {
|
144
|
+
var _a, _b;
|
145
|
+
return [
|
146
|
+
createTextVNode(toDisplayString((_b = (_a = _ctx.prevButtonProps) == null ? void 0 : _a.children) != null ? _b : unref(t)("el.tour.previous")), 1)
|
147
|
+
];
|
148
|
+
}),
|
149
|
+
_: 1
|
150
|
+
}, 16, ["type"])) : createCommentVNode("v-if", true),
|
151
|
+
unref(current) <= unref(total) - 1 ? (openBlock(), createBlock(unref(ElButton), mergeProps({
|
152
|
+
key: 1,
|
153
|
+
size: "small",
|
154
|
+
type: unref(mergedType) === "primary" ? "default" : "primary"
|
155
|
+
}, filterButtonProps(_ctx.nextButtonProps), { onClick: onNext }), {
|
156
|
+
default: withCtx(() => {
|
157
|
+
var _a, _b;
|
158
|
+
return [
|
159
|
+
createTextVNode(toDisplayString((_b = (_a = _ctx.nextButtonProps) == null ? void 0 : _a.children) != null ? _b : unref(current) === unref(total) - 1 ? unref(t)("el.tour.finish") : unref(t)("el.tour.next")), 1)
|
160
|
+
];
|
161
|
+
}),
|
162
|
+
_: 1
|
163
|
+
}, 16, ["type"])) : createCommentVNode("v-if", true)
|
164
|
+
], 2)
|
165
|
+
], 2)
|
166
|
+
], 64);
|
167
|
+
};
|
42
168
|
}
|
43
169
|
});
|
44
|
-
|
45
|
-
close: () => true
|
46
|
-
};
|
170
|
+
var TourStep = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "step.vue"]]);
|
47
171
|
|
48
|
-
export {
|
172
|
+
export { TourStep as default };
|
49
173
|
//# sourceMappingURL=step.mjs.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"step.mjs","sources":["../../../../../../packages/components/tour/src/step.
|
1
|
+
{"version":3,"file":"step.mjs","sources":["../../../../../../packages/components/tour/src/step.vue"],"sourcesContent":["<template>\n <button\n v-if=\"mergedShowClose\"\n aria-label=\"Close\"\n :class=\"ns.e('closebtn')\"\n type=\"button\"\n @click=\"onClose\"\n >\n <el-icon :class=\"ns.e('close')\">\n <component :is=\"mergedCloseIcon\" />\n </el-icon>\n </button>\n <header :class=\"[ns.e('header'), { 'show-close': showClose }]\">\n <slot name=\"header\">\n <span role=\"heading\" :class=\"ns.e('title')\">\n {{ title }}\n </span>\n </slot>\n </header>\n <div :class=\"ns.e('body')\">\n <slot>\n <span>{{ description }}</span>\n </slot>\n </div>\n <footer :class=\"ns.e('footer')\">\n <div :class=\"ns.b('indicators')\">\n <component\n :is=\"tourSlots.indicators\"\n v-if=\"tourSlots.indicators\"\n :current=\"current\"\n :total=\"total\"\n />\n <template v-else>\n <span\n v-for=\"(item, index) in total\"\n :key=\"item\"\n :class=\"[ns.b('indicator'), index === current ? 'is-active' : '']\"\n />\n </template>\n </div>\n <div :class=\"ns.b('buttons')\">\n <el-button\n v-if=\"current > 0\"\n size=\"small\"\n :type=\"mergedType\"\n v-bind=\"filterButtonProps(prevButtonProps)\"\n @click=\"onPrev\"\n >\n {{ prevButtonProps?.children ?? t('el.tour.previous') }}\n </el-button>\n <el-button\n v-if=\"current <= total - 1\"\n size=\"small\"\n :type=\"mergedType === 'primary' ? 'default' : 'primary'\"\n v-bind=\"filterButtonProps(nextButtonProps)\"\n @click=\"onNext\"\n >\n {{\n nextButtonProps?.children ??\n (current === total - 1 ? t('el.tour.finish') : t('el.tour.next'))\n }}\n </el-button>\n </div>\n </footer>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, inject, watch } from 'vue'\nimport { omit } from 'lodash-unified'\nimport { ElButton } from '@element-plus/components/button'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { CloseComponents } from '@element-plus/utils'\nimport { useLocale } from '@element-plus/hooks'\nimport { tourStepEmits, tourStepProps } from './step'\nimport { tourKey } from './helper'\n\nimport type { TourBtnProps } from './types'\n\ndefineOptions({\n name: 'ElTourStep',\n})\n\nconst props = defineProps(tourStepProps)\nconst emit = defineEmits(tourStepEmits)\n\nconst { Close } = CloseComponents\n\nconst { t } = useLocale()\n\nconst {\n currentStep,\n current,\n total,\n showClose,\n closeIcon,\n mergedType,\n ns,\n slots: tourSlots,\n updateModelValue,\n onClose: tourOnClose,\n onFinish: tourOnFinish,\n onChange,\n} = inject(tourKey)!\n\nwatch(\n props,\n (val) => {\n currentStep.value = val\n },\n {\n immediate: true,\n }\n)\n\nconst mergedShowClose = computed(() => props.showClose ?? showClose.value)\nconst mergedCloseIcon = computed(\n () => props.closeIcon ?? closeIcon.value ?? Close\n)\n\nconst filterButtonProps = (btnProps?: TourBtnProps) => {\n if (!btnProps) return\n return omit(btnProps, ['children', 'onClick'])\n}\n\nconst onPrev = () => {\n current.value -= 1\n if (props.prevButtonProps?.onClick) {\n props.prevButtonProps?.onClick()\n }\n onChange()\n}\n\nconst onNext = () => {\n if (current.value >= total.value - 1) {\n onFinish()\n } else {\n current.value += 1\n }\n if (props.nextButtonProps?.onClick) {\n props.nextButtonProps.onClick()\n }\n onChange()\n}\n\nconst onFinish = () => {\n onClose()\n tourOnFinish()\n}\n\nconst onClose = () => {\n updateModelValue(false)\n tourOnClose()\n emit('close')\n}\n</script>\n"],"names":[],"mappings":"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"}
|