2023-01-08 15:21:09 +09:00
|
|
|
import type { mastodon } from 'masto'
|
2022-11-25 16:12:49 +09:00
|
|
|
|
|
|
|
defineOptions({
|
|
|
|
name: 'ContentRich',
|
|
|
|
})
|
|
|
|
|
2023-01-07 18:31:48 +09:00
|
|
|
const {
|
|
|
|
content,
|
|
|
|
emojis,
|
2023-02-05 22:00:25 +09:00
|
|
|
hideEmojis = false,
|
2023-01-07 18:31:48 +09:00
|
|
|
markdown = true,
|
|
|
|
} = defineProps<{
|
2022-11-25 16:12:49 +09:00
|
|
|
content: string
|
2023-01-08 15:21:09 +09:00
|
|
|
emojis?: mastodon.v1.CustomEmoji[]
|
2023-02-05 22:00:25 +09:00
|
|
|
hideEmojis?: boolean
|
2023-01-07 18:31:48 +09:00
|
|
|
markdown?: boolean
|
2022-11-25 16:12:49 +09:00
|
|
|
}>()
|
|
|
|
|
2023-01-07 18:31:48 +09:00
|
|
|
const emojisObject = useEmojisFallback(() => emojis)
|
2022-12-28 03:38:57 +09:00
|
|
|
|
2022-11-25 16:12:49 +09:00
|
|
|
export default () => h(
|
2022-11-27 09:19:45 +09:00
|
|
|
'span',
|
2023-01-01 23:29:11 +09:00
|
|
|
{ class: 'content-rich', dir: 'auto' },
|
2022-12-18 06:01:20 +09:00
|
|
|
contentToVNode(content, {
|
2023-01-07 18:31:48 +09:00
|
|
|
emojis: emojisObject.value,
|
2023-02-05 22:00:25 +09:00
|
|
|
hideEmojis,
|
2022-12-18 06:01:20 +09:00
|
|
|
markdown,
|
|
|
|
}),
|
2022-11-25 16:12:49 +09:00
|
|
|
)
|