summaryrefslogtreecommitdiff
path: root/src/apps/edit_rich.tsx
blob: 0b61178a799baf82bfef51cda3f0c88f78747a24 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
import { Signal, useSignalEffect } from "@preact/signals"
import { Source, VirtualFile, VirtualTextFile } from "$/apps/source";
import { memo, useEffect } from "preact/compat";

export const Edit = memo(function Edit(props: Edit.Props) {
    const source = props.source as Signal<VirtualFile>;
    const title = props.title;

    useEffect(() => {
        props.contentReady.value = true
    }, [])
    
    useSignalEffect(() => {
        title.value = `${source.value.name} - moed`;
    })

    return <div class="text_content">
        {(source.value as VirtualTextFile).content}
    </div>
})

namespace Edit {
    export type Props = {
        source: Signal<Source>,
        title: Signal<string | undefined>,
        contentReady: Signal<boolean>
    }
}