summaryrefslogtreecommitdiff
path: root/src/apps/edit_rich.tsx
diff options
context:
space:
mode:
Diffstat (limited to 'src/apps/edit_rich.tsx')
-rw-r--r--src/apps/edit_rich.tsx28
1 files changed, 28 insertions, 0 deletions
diff --git a/src/apps/edit_rich.tsx b/src/apps/edit_rich.tsx
new file mode 100644
index 0000000..0b61178
--- /dev/null
+++ b/src/apps/edit_rich.tsx
@@ -0,0 +1,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>
+ }
+}