From 80e5f038778fddd420fdcaa8a9c1d5cdc0311e53 Mon Sep 17 00:00:00 2001 From: Triston Armstrong Date: Tue, 8 Oct 2024 01:34:29 -0400 Subject: [PATCH 1/4] get markdown working with existing notes cards --- bun.lockb | Bin 113992 -> 114724 bytes index.html | 5 ++++ package.json | 3 ++- .../MarkDownEditor/MarkDownEditor.tsx | 22 +++++++++++++++ src/components/MarkDownEditor/md.css | 3 +++ src/components/NoteCard.tsx | 25 +++++++----------- 6 files changed, 42 insertions(+), 16 deletions(-) create mode 100644 src/components/MarkDownEditor/MarkDownEditor.tsx create mode 100644 src/components/MarkDownEditor/md.css diff --git a/bun.lockb b/bun.lockb index 45ccfd5c794e664bebed3d86a92e3c84deb21978..dbb1abe2df37987ad8f701e3bb754fcfe37797d7 100755 GIT binary patch delta 20177 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 delta 19854 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 Kslab + diff --git a/package.json b/package.json index 079fc03..728dbae 100644 --- a/package.json +++ b/package.json @@ -13,7 +13,8 @@ "dependencies": { "@tauri-apps/api": "^1", "caniuse-lite": "^1.0.30001667", - "kaioken": "^0.32.1" + "kaioken": "^0.32.1", + "tiny-markdown-editor": "^0.1.26" }, "devDependencies": { "@tauri-apps/cli": "^1", diff --git a/src/components/MarkDownEditor/MarkDownEditor.tsx b/src/components/MarkDownEditor/MarkDownEditor.tsx new file mode 100644 index 0000000..95a9bc5 --- /dev/null +++ b/src/components/MarkDownEditor/MarkDownEditor.tsx @@ -0,0 +1,22 @@ +import { Editor } from 'tiny-markdown-editor' +import './md.css' +import { useEffect, useRef } from "kaioken" + +export function MarkDownEditor({ initial }: { initial: string }) { + const elRef = useRef(null) + + useEffect(() => { + if (!elRef.current) return + const editor = new Editor({ + element: elRef.current, + content: initial + }) + }, []) + + return ( +
+ ) +} diff --git a/src/components/MarkDownEditor/md.css b/src/components/MarkDownEditor/md.css new file mode 100644 index 0000000..c730965 --- /dev/null +++ b/src/components/MarkDownEditor/md.css @@ -0,0 +1,3 @@ +.TinyMDE { + @apply h-full bg-transparent overflow-y-scroll; +} diff --git a/src/components/NoteCard.tsx b/src/components/NoteCard.tsx index ab019ff..75eb98f 100644 --- a/src/components/NoteCard.tsx +++ b/src/components/NoteCard.tsx @@ -1,9 +1,12 @@ -import { signal, useRef } from "kaioken" + +import { signal, useEffect, useRef } from "kaioken" import { NotesSigal, focusedItem } from "../signals" import { useDebounce } from "../utils/useDebounce" import notes, { NoteCardType } from "../signals/notes" import { LayerEnum } from "../utils/enums" import { useThemeDetector } from "../utils/useThemeDetector" +import TinyMDE, { Editor } from 'tiny-markdown-editor' +import { MarkDownEditor } from "./MarkDownEditor/MarkDownEditor" namespace NoteCard { export interface NoteCardProps { @@ -21,6 +24,7 @@ export function NoteCard({ key: itemKey, data: item }: NoteCard.NoteCardProps) { const offsetY = useRef(0) const initialResizeX = useRef(0) const initialResizeY = useRef(0) + const el = useRef(null) const { debounce } = useDebounce() @@ -89,7 +93,7 @@ export function NoteCard({ key: itemKey, data: item }: NoteCard.NoteCardProps) { return (
focusedItem.value = itemKey} - className="text-[#333] dark:bg-[#111] dark:border-[#1c1c1c] bg-[#eee] select-none transition flex flex-col justify-stretch shadow-md rounded border border-[#ddd] absolute" + className="overflow-hidden text-[#333] dark:bg-[#111] dark:border-[#1c1c1c] bg-[#eee] select-none transition flex flex-col justify-stretch shadow-md rounded border border-[#ddd] absolute" style={{ zIndex: `${focusedItem.value == itemKey ? LayerEnum.CARD_ELEVATED : LayerEnum.CARD}`, width: `${item.dimensions.w}px`, @@ -98,7 +102,7 @@ export function NoteCard({ key: itemKey, data: item }: NoteCard.NoteCardProps) { left: `${item.position.x}px`, }} > -
+
x

-