"use client"; import { Copy, Plus } from "lucide-react"; import { v4 as uuidv4 } from "uuid"; import { IBlock, INote } from "@/lib/db/schema"; import { createBlock } from "@/app/actions/blocks"; import IconOnlyButton from "../ui/IconOnlyButton"; import Block from "./Block"; const defaultNoteId = uuidv4(); const defaultNote: INote = { id: defaultNoteId, title: "Untitled", creationTime: new Date(), lastEdited: new Date(), authorId: uuidv4(), }; const defaultBlocks: IBlock[] = [ { id: uuidv4(), tag: "", lines: ["", "", "", ""], isLocked: false, order: 1, noteId: defaultNoteId, }, ]; export default function Editor({ note = defaultNote, blocks = defaultBlocks, }: { note?: INote; blocks?: IBlock[]; }) { const copyHandler = () => { let copyText = ""; blocks.forEach((block) => { if (block.tag !== "") { copyText += `[${block.tag}]`; } copyText += block.lines.join("\n"); }); navigator.clipboard.writeText(copyText); } return (
{blocks.map((block) => )}
} type="submit" /> } onClick={copyHandler} title="Copy note to clipboard" />
); }