1
2
3
4
5
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
| import { defineComponent, openBlock, createBlock, resolveDynamicComponent, mergeProps, unref, withCtx, createElementBlock, Fragment, renderSlot, normalizeClass, createCommentVNode } from 'vue';
| import { ElIcon } from '../../icon/index.mjs';
| import '../../../hooks/index.mjs';
| import { useButton } from './use-button.mjs';
| import { buttonProps, buttonEmits } from './button.mjs';
| import { useButtonCustomStyle } from './button-custom.mjs';
| import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
| import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
|
| const __default__ = defineComponent({
| name: "ElButton"
| });
| const _sfc_main = /* @__PURE__ */ defineComponent({
| ...__default__,
| props: buttonProps,
| emits: buttonEmits,
| setup(__props, { expose, emit }) {
| const props = __props;
| const buttonStyle = useButtonCustomStyle(props);
| const ns = useNamespace("button");
| const { _ref, _size, _type, _disabled, _props, shouldAddSpace, handleClick } = useButton(props, emit);
| expose({
| ref: _ref,
| size: _size,
| type: _type,
| disabled: _disabled,
| shouldAddSpace
| });
| return (_ctx, _cache) => {
| return openBlock(), createBlock(resolveDynamicComponent(_ctx.tag), mergeProps({
| ref_key: "_ref",
| ref: _ref
| }, unref(_props), {
| class: [
| unref(ns).b(),
| unref(ns).m(unref(_type)),
| unref(ns).m(unref(_size)),
| unref(ns).is("disabled", unref(_disabled)),
| unref(ns).is("loading", _ctx.loading),
| unref(ns).is("plain", _ctx.plain),
| unref(ns).is("round", _ctx.round),
| unref(ns).is("circle", _ctx.circle),
| unref(ns).is("text", _ctx.text),
| unref(ns).is("link", _ctx.link),
| unref(ns).is("has-bg", _ctx.bg)
| ],
| style: unref(buttonStyle),
| onClick: unref(handleClick)
| }), {
| default: withCtx(() => [
| _ctx.loading ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [
| _ctx.$slots.loading ? renderSlot(_ctx.$slots, "loading", { key: 0 }) : (openBlock(), createBlock(unref(ElIcon), {
| key: 1,
| class: normalizeClass(unref(ns).is("loading"))
| }, {
| default: withCtx(() => [
| (openBlock(), createBlock(resolveDynamicComponent(_ctx.loadingIcon)))
| ]),
| _: 1
| }, 8, ["class"]))
| ], 64)) : _ctx.icon || _ctx.$slots.icon ? (openBlock(), createBlock(unref(ElIcon), { key: 1 }, {
| default: withCtx(() => [
| _ctx.icon ? (openBlock(), createBlock(resolveDynamicComponent(_ctx.icon), { key: 0 })) : renderSlot(_ctx.$slots, "icon", { key: 1 })
| ]),
| _: 3
| })) : createCommentVNode("v-if", true),
| _ctx.$slots.default ? (openBlock(), createElementBlock("span", {
| key: 2,
| class: normalizeClass({ [unref(ns).em("text", "expand")]: unref(shouldAddSpace) })
| }, [
| renderSlot(_ctx.$slots, "default")
| ], 2)) : createCommentVNode("v-if", true)
| ]),
| _: 3
| }, 16, ["class", "style", "onClick"]);
| };
| }
| });
| var Button = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "/home/runner/work/element-plus/element-plus/packages/components/button/src/button.vue"]]);
|
| export { Button as default };
| //# sourceMappingURL=button2.mjs.map
|
|