import { t as e } from "../chunks/clsx.js";
import { getBgColor as t, getBorderColor as n, getTextColor as r } from "./helpers/colors/colors.js";
import { twMerge as i } from "./helpers/twMerge.js";
import { Icon as a } from "@clubmed/trident-icons";
import { jsx as o, jsxs as s } from "react/jsx-runtime";
//#region lib/ui/Tag.tsx
var c = ({ className: c, backgroundColor: l = "saffron", border: u = l, color: d = "black", icon: f, label: p = "", theme: m = "both", iconClassName: h, labelClassName: g, iconWidth: _, ...v }) => {
	if (!p && !f) return null;
	let y = n(u), b = t(l), x = r(d), S = !!f, C = m === "both" && !S ? "label" : m, w = C === "both" || C === "swap" || C === "unfold" || C === "none", T = S && (C === "icon" || w), E = C === "label" || C === "pill" || w;
	return /* @__PURE__ */ s("span", {
		role: "note",
		...v,
		"data-name": "Tag",
		className: i(e("box-border inline-flex items-center justify-center gap-x-4 whitespace-nowrap rounded-pill border align-middle font-sans font-semibold", {
			"text-b4": C !== "pill",
			"text-b5": C === "pill"
		}, {
			"p-4": C !== "label" && C !== "both",
			"px-16 py-6": C === "label",
			"py-4 pe-16 ps-12": C === "both",
			"px-8 py-4": C === "pill",
			"sm:px-16": C === "swap",
			"sm:pe-16 sm:ps-12": C === "unfold"
		}, y, b, x), c),
		title: p,
		children: [
			C === "monogram" && /* @__PURE__ */ o("span", {
				className: "size-24 text-center leading-[1.5rem]",
				children: p
			}),
			T && /* @__PURE__ */ o(a, {
				width: _ ?? "1.5rem",
				name: f,
				className: e({ "sm:hidden": C === "swap" }, h)
			}),
			E && /* @__PURE__ */ o("span", {
				className: e({ "hidden sm:block": C === "swap" || C === "unfold" }, g),
				children: p
			})
		]
	});
};
//#endregion
export { c as Tag };

//# sourceMappingURL=Tag.js.map