diff --git a/src/lib/assets/delete.svg b/src/lib/assets/delete.svg new file mode 100644 index 0000000..2ddf863 --- /dev/null +++ b/src/lib/assets/delete.svg @@ -0,0 +1,6 @@ + + + + + diff --git a/src/lib/components/Canvas.svelte b/src/lib/components/Canvas.svelte new file mode 100644 index 0000000..edb1ec7 --- /dev/null +++ b/src/lib/components/Canvas.svelte @@ -0,0 +1,147 @@ + + +
+
+
+ {@render children()} +
+
+
diff --git a/src/lib/components/CanvasDragger.svelte b/src/lib/components/CanvasDragger.svelte new file mode 100644 index 0000000..a1f5525 --- /dev/null +++ b/src/lib/components/CanvasDragger.svelte @@ -0,0 +1,32 @@ + + + diff --git a/src/lib/components/Line.svelte b/src/lib/components/Line.svelte index cbbfa30..dc04e7c 100644 --- a/src/lib/components/Line.svelte +++ b/src/lib/components/Line.svelte @@ -1,29 +1,38 @@ -
- + {@html deleteIcon}
diff --git a/src/lib/components/Note.svelte b/src/lib/components/Note.svelte index 3e9821c..a23a32f 100644 --- a/src/lib/components/Note.svelte +++ b/src/lib/components/Note.svelte @@ -1,87 +1,53 @@ -
- + + localStorage.setItem('notes', JSON.stringify(messages.export()))} + /> + - +
-
{messageContent}
+
+
+ +
+
- + + diff --git a/src/lib/index.svelte.ts b/src/lib/index.svelte.ts index e7054a0..8148dcc 100644 --- a/src/lib/index.svelte.ts +++ b/src/lib/index.svelte.ts @@ -19,17 +19,17 @@ class IncrementProvider implements IdProvider { } const INCREMENT_PROVIDER: IdProvider = new IncrementProvider() +export type Transform = { + x: number + y: number + width: number + height: number +} + export type MessageData = { content: string createdAt: number - transform: { - position: { - x: number - y: number - } - width: number - height: number - } + transform: Transform } export type Message = { @@ -40,11 +40,12 @@ export type Message = { children: Set } -export function createMessage(text: string): MessageData { +export function createMessage(text: string, x: number, y: number): MessageData { // TODO: Choose transform for a new message return { content: text, createdAt: Date.now(), + transform: { x: x, y: y, width: 100, height: 40 }, } } @@ -171,20 +172,6 @@ class Messages { } } - updateTransform( - id: Id, - position: { x: number; y: number }, - width: number, - height: number - ) { - const message = this.inner[id] - if (message) { - message.data.transform = { position, width, height } - } else { - console.error(`Message with id ${id} does not exist.`) - } - } - clear() { this.inner = {} } diff --git a/src/routes/+layout.svelte b/src/routes/+layout.svelte index 2a379d9..bd57f55 100644 --- a/src/routes/+layout.svelte +++ b/src/routes/+layout.svelte @@ -21,7 +21,7 @@
    { + let message = messages.get(id); + if(message?.data.transform.y === y + 100){ + x = message?.data.transform.x + 150; + } + + }); + + // let parentChildren = parentMessage?.children || [] + // if (parentChildren.size > 0) { + // let arrayChildren = Array.from(parentChildren) + // let lastChildId = arrayChildren[arrayChildren.length - 1] + // let lastChild = messages.get(lastChildId) + // x = lastChild!.data.transform.x + 150 + // } + + let message = createMessage(textInput, x, y + 100) leafId = messages.add(leafId, message) textInput = '' @@ -57,11 +79,14 @@ messages.delete(value.id) localStorage.setItem('notes', JSON.stringify(messages.export())) } + + let inputHeight = $state(0) + $inspect(inputHeight) -
    -
    +
    +
    {#if currentChat} {#each currentChat as message} -
    -
    - - -
    -
    +
    + +
    +
    + + +
    +
    diff --git a/src/routes/graph/+page.svelte b/src/routes/graph/+page.svelte index 3f2a439..82fe5e7 100644 --- a/src/routes/graph/+page.svelte +++ b/src/routes/graph/+page.svelte @@ -1,91 +1,21 @@ -
    -
    - {#each Object.keys(links) as index} - - {/each} - {#each Object.keys(messages) as index} - onMouseDown(event, index)} - /> - {/each} -
    -
    + + {#each Object.values(messages.inner) as message} + {#if message.parent} + + {/if} + {/each} + {#each Object.values(messages.inner) as message} + + {/each} + diff --git a/src/routes/settings/+page.svelte b/src/routes/settings/+page.svelte index 6057703..c7d3382 100644 --- a/src/routes/settings/+page.svelte +++ b/src/routes/settings/+page.svelte @@ -10,6 +10,7 @@ function importGraph() { messages.import(JSON.parse(raw)) + localStorage.setItem('notes', JSON.stringify(messages.export())) } function deleteGraph() {