import { createBlock, createCommentVNode, createElementBlock, createElementVNode, createVNode, defineComponent, normalizeClass, openBlock, resolveDynamicComponent, useSlots } from "vue";
import { ScalarIconCheckCircle, ScalarIconInfo, ScalarIconWarning, ScalarIconWarningCircle } from "@scalar/icons";
//#region src/v2/components/callout/Callout.vue?vue&type=script&setup=true&lang.ts
var _hoisted_1 = { class: "flex w-full flex-col gap-2" };
var _hoisted_2 = { class: "flex items-start gap-2" };
var _hoisted_3 = {
	class: "callout-content__icon",
	"data-scalar-name": "callout-icon"
};
var _hoisted_4 = { class: "callout-content__text" };
var _hoisted_5 = {
	key: 0,
	class: "flex justify-end gap-2"
};
var Callout_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({
	__name: "Callout",
	props: { type: {} },
	setup(__props) {
		const slots = useSlots();
		const iconsMapping = {
			info: ScalarIconInfo,
			success: ScalarIconCheckCircle,
			warning: ScalarIconWarning,
			danger: ScalarIconWarningCircle,
			neutral: ScalarIconInfo
		};
		return (_ctx, _cache) => {
			return openBlock(), createElementBlock("div", { class: normalizeClass(`callout t-editor__callout callout__${__props.type}`) }, [createElementVNode("div", _hoisted_1, [createElementVNode("div", _hoisted_2, [createElementVNode("div", _hoisted_3, [(openBlock(), createBlock(resolveDynamicComponent(iconsMapping[__props.type]), { class: "size-5 shrink-0" }))]), createElementVNode("div", _hoisted_4, [createVNode(slots.default)])]), slots.actions ? (openBlock(), createElementBlock("div", _hoisted_5, [createVNode(slots.actions)])) : createCommentVNode("", true)])], 2);
		};
	}
});
//#endregion
export { Callout_vue_vue_type_script_setup_true_lang_default as default };

//# sourceMappingURL=Callout.vue.script.js.map