import e from "../PlIcon24/PlIcon24.js";
import "../PlMaskIcon24/index.js";
import { useRipple as t } from "../../composition/useRipple.js";
import './pl-btn-ghost.css';/* empty css             */
import { computed as n, createBlock as r, createCommentVNode as i, createElementBlock as a, defineComponent as o, mergeProps as s, openBlock as c, ref as l, renderSlot as u, unref as d, useSlots as f } from "vue";
var p = { key: 0 }, m = /* @__PURE__ */ o({
	name: "PlBtnGhost",
	props: {
		loading: { type: Boolean },
		size: { default: void 0 },
		round: { type: Boolean },
		icon: { default: void 0 },
		reverse: { type: Boolean },
		justifyCenter: {
			type: Boolean,
			default: !1
		}
	},
	setup(o) {
		let m = o, h = n(() => m.size === "small"), g = n(() => m.size === "large"), _ = l(), v = f();
		return t(_), (t, n) => (c(), a("button", s({
			ref_key: "btnRef",
			ref: _,
			tabindex: "0",
			class: ["pl-btn-ghost", {
				loading: o.loading,
				small: h.value,
				large: g.value,
				round: o.round,
				reverse: o.reverse,
				justifyCenter: o.justifyCenter,
				[t.$attrs.class + ""]: !0
			}]
		}, {
			...t.$attrs,
			disabled: !!t.$attrs.disabled || o.loading
		}), [
			d(v).default && !o.round ? (c(), a("span", p, [u(t.$slots, "default")])) : i("", !0),
			u(t.$slots, "icon", {}, () => [o.loading ? (c(), r(d(e), {
				key: 0,
				name: "loading",
				size: o.size
			}, null, 8, ["size"])) : o.icon ? (c(), r(d(e), {
				key: 1,
				name: o.icon,
				size: o.size
			}, null, 8, ["name", "size"])) : i("", !0)]),
			u(t.$slots, "append")
		], 16));
	}
});
export { m as default };

//# sourceMappingURL=PlBtnGhost.vue2.js.map