kepler-chat/src/lib/utils/markdown.svelte.ts
2025-06-18 06:32:57 -07:00

18 lines
350 B
TypeScript

import type { Getter } from 'runed';
import { md } from './markdown-it';
export class Markdown {
highlighted = $state<string | null>(null);
constructor(readonly code: Getter<string>) {
$effect(() => {
md.renderAsync(this.code()).then((html) => {
this.highlighted = html;
});
});
}
get current() {
return this.highlighted;
}
}