about summary refs log tree commit diff
path: root/assets/src/network/channel/connection.ts
diff options
context:
space:
mode:
Diffstat (limited to 'assets/src/network/channel/connection.ts')
-rw-r--r--assets/src/network/channel/connection.ts15
1 files changed, 8 insertions, 7 deletions
diff --git a/assets/src/network/channel/connection.ts b/assets/src/network/channel/connection.ts
index a26f624..97866f0 100644
--- a/assets/src/network/channel/connection.ts
+++ b/assets/src/network/channel/connection.ts
@@ -2,7 +2,7 @@ import { Channel, Push, Socket } from "phoenix";
 import { get, Readable, writable, Writable } from "svelte/store";
 import { RookType } from "../../models/rook_type";
 import getShareToken from "../../utils/getShareToken";
-import type { AnyMessage } from "./messages/messages";
+import { AnyMessage, eventNames } from "./messages/messages";
 import {
     MessageHandler,
     routeEventToHandler,
@@ -70,12 +70,13 @@ export class Connection {
 
         this.updateState(ConnectionState.CONNECTED);
 
-        // Setup up event handler.
-        this.channel.onMessage = (event, payload) => {
-            const payloadWithEvent = { ...payload, event_name: event };
-            routeEventToHandler(event, payloadWithEvent, this.handler);
-            return payload;
-        };
+        // Setup up event handlers.
+        eventNames.forEach(event => {
+            this.channel.on(event, payload => {
+                const payloadWithEvent = { ...payload, event_name: event };
+                routeEventToHandler(event, payloadWithEvent, this.handler);
+            });
+        });
     }
 
     send(event: string, data: any): Push {