From f3e3707593b3954f91a68635ca1efbb09b514448 Mon Sep 17 00:00:00 2001 From: dab Date: Fri, 15 Aug 2025 18:29:50 +0000 Subject: [PATCH] standardized transport API on frontend (added on_error hook, on_message now receives full event) --- README.md | 5 ++--- frontend/index.js | 11 ++++++----- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index 8d94d93..017b26e 100644 --- a/README.md +++ b/README.md @@ -13,8 +13,8 @@ const on_open = function () { FRAMEROCK_UTILS.transport_send_bytes(new TextEncoder().encode('Hello from client!')) return } -const on_message = function (data) { - console.log(['Client received message:', new TextDecoder().decode(data)]) +const on_message = function (event) { + console.log(['Client received message:', new TextDecoder().decode(event.data)]) return } FRAMEROCK_UTILS.setup_transport({ on_open, on_message }) @@ -35,4 +35,3 @@ const config = { async_run({ config, jsbuild_app_frontend, handle_transport_bytes }).then(()=>{}).catch(console.error) ``` - diff --git a/frontend/index.js b/frontend/index.js index 354482c..368fbdd 100644 --- a/frontend/index.js +++ b/frontend/index.js @@ -30,7 +30,7 @@ class FramerockUtils { return } - _setup_transport ({ on_open, on_close, on_message }) { + _setup_transport ({ on_open, on_close, on_message, on_error }) { console.debug('SETUP TRANSPORT') @@ -38,9 +38,9 @@ class FramerockUtils { const ws = this._ws ws.binaryType = 'arraybuffer' - const func_on_open = () => { + const func_on_open = (event) => { console.debug('WS OPEN') - on_open && on_open() + on_open && on_open(event) return } const func_on_close = (event) => { @@ -51,15 +51,16 @@ class FramerockUtils { const func_on_message = (event) => { console.debug('WS MESSAGE', event) if (on_message !== undefined) { - on_message(event.data) + on_message(event) } else { console.warn(['Unhandled message', event]) } return } - const func_on_error = () => { + const func_on_error = (event) => { console.debug('WS ERROR') + on_error && on_error(event) return }