From 2eeda6fc5c06378a626a98b7273b5fad860d8d33 Mon Sep 17 00:00:00 2001 From: dhain Date: Tue, 4 Oct 2022 10:51:59 +0200 Subject: [PATCH] delete note do be working --- frontend/svelte/src/models/NoteRepository.ts | 2 +- .../svelte/src/models/StrapiNoteRepository.ts | 4 +-- frontend/svelte/src/models/types.ts | 4 --- frontend/svelte/src/routes/+page.svelte | 31 +++++++++---------- 4 files changed, 18 insertions(+), 23 deletions(-) diff --git a/frontend/svelte/src/models/NoteRepository.ts b/frontend/svelte/src/models/NoteRepository.ts index 421ffce..1cae27d 100644 --- a/frontend/svelte/src/models/NoteRepository.ts +++ b/frontend/svelte/src/models/NoteRepository.ts @@ -1,4 +1,4 @@ -import type {Note} from "../types"; +import type {Note} from "./types"; export interface NoteRepository { getNotes(): Promise; diff --git a/frontend/svelte/src/models/StrapiNoteRepository.ts b/frontend/svelte/src/models/StrapiNoteRepository.ts index 86fb1a7..f167ce1 100644 --- a/frontend/svelte/src/models/StrapiNoteRepository.ts +++ b/frontend/svelte/src/models/StrapiNoteRepository.ts @@ -1,4 +1,4 @@ -import type {Note} from "../types"; +import type {Note} from "./types"; import {parseCookies} from "nookies"; import type {NoteRepository} from "./NoteRepository"; @@ -53,7 +53,7 @@ export class StrapiNoteRepository implements NoteRepository { let requestInit: RequestInit = { method: method, headers: { - authorization: StrapiNoteRepository.mockedGetAuthorizationHeader() + authorization: StrapiNoteRepository.getAuthorizationHeader() } }; if (body) { diff --git a/frontend/svelte/src/models/types.ts b/frontend/svelte/src/models/types.ts index 5ded795..5cb5ca9 100644 --- a/frontend/svelte/src/models/types.ts +++ b/frontend/svelte/src/models/types.ts @@ -1,9 +1,5 @@ export interface Note { id: number; - attributes: Attribute; -} - -export interface Attribute { title: string; content: string; diff --git a/frontend/svelte/src/routes/+page.svelte b/frontend/svelte/src/routes/+page.svelte index f52d418..0914a6c 100644 --- a/frontend/svelte/src/routes/+page.svelte +++ b/frontend/svelte/src/routes/+page.svelte @@ -2,8 +2,11 @@ import type {Note} from "../models/types"; import {onMount} from "svelte"; import {bearerFetch, jwt} from "../models/PomeloUtils"; + import type {NoteRepository} from "../models/NoteRepository"; + import {StrapiNoteRepository} from "../models/StrapiNoteRepository"; const endpoint = "/notes"; + const noteRepo: NoteRepository = StrapiNoteRepository.getInstance(); // // //:TODO TEMP!!! @@ -14,11 +17,9 @@ let notes: Note[]; onMount(async () => { - const response = await bearerFetch(endpoint, jwt); - let data = await response.json(); - notes = data.data; + notes = await noteRepo.getNotes(); notes.forEach(note => { - note.attributes.lastViewed = new Date(note.attributes.lastViewed); + note.lastViewed = new Date(note.lastViewed); }); console.log(notes); }); @@ -53,16 +54,13 @@ */ function addNote(title: string) { const date = new Date(); - const newNoteId: number = (notes.length == 0) ? 0 : notes[notes.length - 1].id + 1 - const note: Note = { - id: newNoteId, - attributes: { - title: title, - content: "", - lastViewed: date - } + const note: Partial = { + title: title, + lastViewed: date }; - notes.push(note); + + // notes.push(note); + // noteRepo.createNote(note); } /** @@ -82,6 +80,7 @@ */ function deleteNote(note) { notes = notes.filter(i => i !== note); + noteRepo.deleteNote(note.id); } /** @@ -106,7 +105,7 @@ */ function onNoteLiClick(note) { window.location = "/editor"; - note.attributes.lastViewed = new Date(); + note.lastViewed = new Date(); } @@ -141,10 +140,10 @@
onNoteLiClick(note)}>
- {note.attributes.title} + {note.title}
- {note.attributes.lastViewed.toLocaleDateString()} + {note.lastViewed.toLocaleDateString()}