Working sync engine!

This commit is contained in:
2026-04-23 03:10:09 -05:00
parent f17f64f82c
commit 3504f8c16d
6 changed files with 62 additions and 29 deletions
+2 -2
View File
@@ -4,8 +4,8 @@ import { createInterface } from "node:readline/promises";
const client = new TetherClient();
client.connect("ws://localhost:8080/tether");
client.subscribe("messages", { room: "1" }, (message) => {
console.log("Received message", message);
client.subscribe("getMessages", { room: "1" }, (messages) => {
console.log("Received messages", messages);
});
const rl = createInterface({
+6 -8
View File
@@ -35,15 +35,13 @@ func main() {
engine.CreateTable("users", &User{})
engine.CreateTable("messages", &Messages{})
engine.RegisterMutation("createUser", func(ctx *tether.MutationCtx) error {
return nil
})
engine.RegisterQuery("getMessages", func(ctx *tether.QueryCtx) interface{} {
var messages []Messages
ctx.DB.Where("room_id = ?", ctx.Params["room"].(string)).Find(&messages)
return messages
}, []string{"messages"})
engine.RegisterQuery("getUser", func(ctx *tether.QueryCtx) error {
return nil
}, []string{"users"})
engine.RegisterMutation("createMessage", func(ctx *tether.MutationCtx) error {
engine.RegisterMutation("createMessage", func(ctx *tether.MutationCtx) interface{} {
ctx.DB.Create(&Messages{ID: uuid.NewString(), Message: ctx.Params["message"].(string), SenderID: ctx.AuthCtx.UserID, RoomID: ctx.Params["room"].(string)})
return nil
})