diff --git a/components/user.vue b/components/user.vue index 345b371..5223449 100644 --- a/components/user.vue +++ b/components/user.vue @@ -1,35 +1,34 @@ \ No newline at end of file + diff --git a/netcode/handlers/word.handler.ts b/netcode/handlers/word.handler.ts new file mode 100644 index 0000000..5bb3d76 --- /dev/null +++ b/netcode/handlers/word.handler.ts @@ -0,0 +1,33 @@ +import { useWordStore } from "~/store/word.store"; +import { + WordCreateEvent, + WordDeleteEvent, + WordDisableEvent, + WordEditEvent, + WordEnableEvent, +} from "../events/word.events"; + + + +export const handlers = { + create: (event: WordCreateEvent) => { + const wordStore = useWordStore(); + wordStore.words[event.word.id] = event.word + }, + edit: (event: WordEditEvent) => { + const wordStore = useWordStore(); + wordStore.words[event.word.id].value = event.word.value + }, + delete: (event: WordDeleteEvent) => { + const wordStore = useWordStore(); + delete wordStore.words[event.id] + }, + enable: (event: WordEnableEvent) => { + const wordStore = useWordStore(); + wordStore.words[event.id].enabled = true + }, + disable: (event: WordDisableEvent) => { + const wordStore = useWordStore(); + wordStore.words[event.id].enabled = false + }, +}; diff --git a/pages/index.vue b/pages/index.vue index c22f420..eb3d181 100644 --- a/pages/index.vue +++ b/pages/index.vue @@ -1,7 +1,26 @@ diff --git a/pages/words.vue b/pages/words.vue index c5aacb8..7c90638 100644 --- a/pages/words.vue +++ b/pages/words.vue @@ -1,4 +1,6 @@