parent
b83580fa05
commit
5f10bce64f
@ -1,17 +1,42 @@
|
||||
import React from "react";
|
||||
import React, { useState } from "react";
|
||||
import { noop } from "../state";
|
||||
import EditableNoteArea from "./EditableNoteArea/EditableNoteArea";
|
||||
|
||||
import "./NoteContent.css";
|
||||
|
||||
export default function NoteContent({ note = null, onSave = noop }) {
|
||||
const [renderMarkdown, setRenderMarkdown] = useState(false);
|
||||
const { content, title } = note || {};
|
||||
|
||||
return (
|
||||
<div className="NoteContent">
|
||||
<header>
|
||||
<h2>{title}</h2>
|
||||
<header className="controls">
|
||||
<Checkbox
|
||||
label="Preview Markdown"
|
||||
onChange={checked => setRenderMarkdown(checked)}
|
||||
/>
|
||||
</header>
|
||||
<EditableNoteArea content={content} onSave={onSave} />
|
||||
<EditableNoteArea
|
||||
content={content}
|
||||
onSave={onSave}
|
||||
preview={renderMarkdown}
|
||||
/>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
||||
const Checkbox = ({
|
||||
className = "",
|
||||
onChange = noop,
|
||||
label = "checkbox",
|
||||
defaultChecked = false
|
||||
}) => (
|
||||
<div className={className}>
|
||||
<label>{label}:</label>
|
||||
<input
|
||||
type="checkbox"
|
||||
defaultChecked={defaultChecked}
|
||||
onChange={({ target }) => onChange(target.checked)}
|
||||
/>
|
||||
</div>
|
||||
);
|
||||
|
Loading…
Reference in new issue