import { t as e } from "./wt-icon-y89gRcOs.js";
import { t } from "./_plugin-vue_export-helper-B3ysoDQm.js";
import { computed as n, createBlock as r, createCommentVNode as i, createElementBlock as a, createElementVNode as o, createVNode as s, defineComponent as c, guardReactiveProps as l, mergeModels as u, mergeProps as d, normalizeClass as f, normalizeProps as p, openBlock as m, renderSlot as h, resolveComponent as g, toDisplayString as _, useModel as v, useSlots as y, withCtx as b } from "vue";
//#region src/components/wt-checkbox/wt-checkbox.vue?vue&type=script&setup=true&lang.ts
var x = { class: "wt-checkbox" }, S = { class: "wt-checkbox__checkmark" }, C = {
	key: 0,
	class: "wt-checkbox__label"
}, w = /*#__PURE__*/ t(/* @__PURE__ */ c({
	__name: "wt-checkbox",
	props: /*@__PURE__*/ u({
		value: {
			type: [String, Boolean],
			default: ""
		},
		label: { default: "" },
		disabled: {
			type: Boolean,
			default: !1
		},
		modelValue: {},
		defaultValue: {},
		name: {},
		binary: { type: Boolean },
		indeterminate: { type: Boolean },
		size: {},
		invalid: { type: Boolean },
		variant: {},
		readonly: { type: Boolean },
		required: { type: Boolean },
		tabindex: {},
		trueValue: {},
		falseValue: {},
		inputId: {},
		inputClass: {},
		inputStyle: {},
		ariaLabelledby: {},
		ariaLabel: {},
		formControl: {},
		dt: {},
		pt: {},
		ptOptions: {},
		unstyled: { type: Boolean }
	}, {
		selected: {
			type: [Boolean, Array],
			required: !0
		},
		selectedModifiers: {}
	}),
	emits: ["update:selected"],
	setup(e) {
		let t = e, c = v(e, "selected"), u = `checkbox-${Math.random().toString(36).slice(2, 11)}`, d = y(), f = n(() => t.label || d.label), w = n(() => !Array.isArray(c.value)), T = n(() => w.value ? c.value : c.value.includes(t.value)), E = n(() => T.value ? "checkbox-tick" : ""), D = n(() => t.disabled ? "disabled" : T.value ? "active" : null);
		return (t, n) => {
			let d = g("wt-icon"), v = g("p-checkbox"), y = g("wt-label");
			return m(), a("div", x, [s(v, {
				modelValue: c.value,
				"onUpdate:modelValue": n[0] ||= (e) => c.value = e,
				binary: w.value,
				disabled: e.disabled,
				"input-id": u,
				value: e.value
			}, {
				icon: b(() => [o("span", S, [s(d, {
					color: D.value,
					icon: E.value
				}, null, 8, ["color", "icon"])])]),
				_: 1
			}, 8, [
				"modelValue",
				"binary",
				"disabled",
				"value"
			]), f.value ? (m(), r(y, {
				key: 0,
				disabled: e.disabled
			}, {
				default: b(() => [h(t.$slots, "label", p(l({
					label: e.label,
					isChecked: T.value,
					disabled: e.disabled
				})), () => [e.label ? (m(), a("div", C, _(e.label), 1)) : i("", !0)], !0)], void 0, !0),
				_: 3
			}, 8, ["disabled"])) : i("", !0)]);
		};
	}
}), [["__scopeId", "data-v-6e4969d8"]]), T = /*#__PURE__*/ t(/* @__PURE__ */ c({
	__name: "wt-icon-btn",
	props: { disabled: {
		type: Boolean,
		default: !1
	} },
	emits: ["click", "mousedown"],
	setup(t, { emit: n }) {
		let r = n;
		return (n, i) => (m(), a("button", {
			class: f([{ "wt-icon-btn--disabled": t.disabled }, "wt-icon-btn"]),
			type: "button",
			onClick: i[0] ||= (e) => r("click", e),
			onMousedown: i[1] ||= (e) => r("mousedown", e)
		}, [s(e, d({
			...n.$attrs,
			class: ""
		}, { disabled: t.disabled }), null, 16, ["disabled"])], 34));
	}
}), [["__scopeId", "data-v-40408333"]]);
//#endregion
export { w as n, T as t };
