30 lines
826 B
Vue
Raw Normal View History

2025-09-05 14:59:21 +08:00
<script>
import ContentSlot from "./ContentSlot.vue";
import { defineComponent, getCurrentInstance, useSlots, computed } from "#imports";
let showDeprecatedMessage = true;
export default defineComponent({
name: "Markdown",
extends: ContentSlot,
setup(props) {
if (import.meta.dev && showDeprecatedMessage) {
console.warn("[deprecation] <Markdown> component is deprecated. Please use <ContentSlot> instead.");
showDeprecatedMessage = false;
}
const { parent } = getCurrentInstance();
const { between, default: fallbackSlot } = useSlots();
const tags = computed(() => {
if (typeof props.unwrap === "string") {
return props.unwrap.split(" ");
}
return ["*"];
});
return {
fallbackSlot,
tags,
between,
parent
};
}
});
</script>