import { w as withInstall } from "../badge/index2.js"; import { defineComponent, computed, openBlock, createElementBlock, normalizeClass, unref, normalizeStyle, createCommentVNode, renderSlot } from "vue"; var index = /* @__PURE__ */ (() => ":root{--button-primary-text-color: #fff;--button-primary-background-color: var(--global-primary-color);--button-primary-border-color: var(--global-primary-color);--button-normal-text-color: #fff;--button-normal-background-color: var(--global-normal-color);--button-normal-border-color: var(--global-normal-color);--button-warm-text-color: #fff;--button-warm-background-color: var(--global-warm-color);--button-warm-border-color: var(--global-warm-color);--button-danger-text-color: #fff;--button-danger-background-color: var(--global-danger-color);--button-danger-border-color: var(--global-danger-color);--button-border-radius: var(--global-border-radius);--button-border-color: var(--global-neutral-color-6);--button-background-color: 0 0;--button-text-color: #666}.layui-btn{height:38px;line-height:36px;padding:0 18px;font-size:14px;text-align:center;white-space:nowrap;color:var(--button-text-color);background:var(--button-background-color);border-radius:var(--button-border-radius);border-color:var(--button-border-color);border-width:1px;border-style:solid;cursor:pointer}.layui-btn-primary{color:var(--button-primary-text-color);background-color:var(--button-primary-background-color);border-color:var(--button-primary-border-color)}.layui-btn-normal{color:var(--button-normal-text-color);background-color:var(--button-normal-background-color);border-color:var(--button-normal-border-color)}.layui-btn-warm{color:var(--button-warm-text-color);background-color:var(--button-warm-background-color);border-color:var(--button-warm-border-color)}.layui-btn-danger{color:var(--button-danger-text-color);background-color:var(--button-danger-background-color);border-color:var(--button-danger-border-color)}.layui-btn:hover{opacity:.8;filter:alpha(opacity=80)}.layui-btn:active{opacity:1;filter:alpha(opacity=100)}.layui-btn-lg{height:44px;line-height:44px;padding:0 25px;font-size:16px}.layui-btn-sm{height:30px;line-height:30px;padding:0 10px;font-size:12px}.layui-btn-xs{height:22px;line-height:22px;padding:0 5px;font-size:12px}.layui-btn-xs i{font-size:12px!important}.layui-btn-fluid{width:100%}.layui-btn-radius{border-radius:100px}.layui-btn-disabled,.layui-btn-disabled:active,.layui-btn-disabled:hover{border-color:#eee!important;background-color:#fbfbfb!important;color:#d2d2d2!important;cursor:not-allowed!important;opacity:1}.layui-btn+.layui-btn{margin-left:10px}.layui-btn .layui-icon{padding:0 2px;vertical-align:middle\\ ;vertical-align:bottom}\n")(); const ButtonEmits = { click: (evt) => evt instanceof MouseEvent }; const _hoisted_1 = ["type"]; const __default__ = { name: "LayButton" }; const _sfc_main = defineComponent({ ...__default__, props: { type: null, size: null, prefixIcon: null, suffixIcon: null, loadingIcon: { default: "layui-icon-loading-one" }, borderStyle: { default: "soild" }, border: null, fluid: { type: Boolean, default: false }, radius: { type: Boolean, default: false }, loading: { type: Boolean, default: false }, disabled: { type: Boolean }, nativeType: { default: "button" } }, emits: ButtonEmits, setup(__props, { emit: emits }) { const props = __props; const onClick = (event) => { if (!props.disabled) { emits("click", event); } }; const styles = computed(() => { return { border: `1px ${props.borderStyle}` }; }); const classes = computed(() => { return [ { "layui-btn-fluid": props.fluid, "layui-btn-radius": props.radius, "layui-btn-disabled": props.disabled }, props.type ? `layui-btn-${props.type}` : "", props.size ? `layui-btn-${props.size}` : "", props.border ? `layui-border-${props.border}` : "" ]; }); return (_ctx, _cache) => { return openBlock(), createElementBlock("button", { class: normalizeClass(["layui-btn", unref(classes)]), style: normalizeStyle(unref(styles)), type: __props.nativeType, onClick }, [ __props.prefixIcon ? (openBlock(), createElementBlock("i", { key: 0, class: normalizeClass(`layui-icon ${__props.prefixIcon}`) }, null, 2)) : createCommentVNode("", true), __props.loading ? (openBlock(), createElementBlock("i", { key: 1, class: normalizeClass([__props.loadingIcon, "layui-icon layui-anim layui-anim-rotate layui-anim-loop"]) }, null, 2)) : renderSlot(_ctx.$slots, "default", { key: 2 }), __props.suffixIcon ? (openBlock(), createElementBlock("i", { key: 3, class: normalizeClass(`layui-icon ${__props.suffixIcon}`) }, null, 2)) : createCommentVNode("", true) ], 14, _hoisted_1); }; } }); const component = withInstall(_sfc_main); export { _sfc_main as _, component as c };