From 8492c5afad5002f072f3bd9eb18e8df326c90637 Mon Sep 17 00:00:00 2001 From: James M Snell Date: Thu, 12 Sep 2024 14:25:54 -0700 Subject: [PATCH] Make EventSource extend EventTarget Fixes: https://github.com/cloudflare/workerd/issues/2698 --- src/workerd/api/eventsource.h | 1 + src/workerd/api/tests/eventsource-test.js | 1 + 2 files changed, 2 insertions(+) diff --git a/src/workerd/api/eventsource.h b/src/workerd/api/eventsource.h index e08726fb49d..931d41fa329 100644 --- a/src/workerd/api/eventsource.h +++ b/src/workerd/api/eventsource.h @@ -163,6 +163,7 @@ class EventSource: public EventTarget { } JSG_RESOURCE_TYPE(EventSource) { + JSG_INHERIT(EventTarget); JSG_METHOD(close); JSG_READONLY_PROTOTYPE_PROPERTY(url, getUrl); JSG_READONLY_PROTOTYPE_PROPERTY(withCredentials, getWithCredentials); diff --git a/src/workerd/api/tests/eventsource-test.js b/src/workerd/api/tests/eventsource-test.js index e92199c550a..cf614472721 100644 --- a/src/workerd/api/tests/eventsource-test.js +++ b/src/workerd/api/tests/eventsource-test.js @@ -9,6 +9,7 @@ export const acceptEventStreamTest = { 'http://example.org/accept-event-stream', { fetcher: env.subrequest } ); + ok(eventsource instanceof EventTarget); strictEqual(eventsource.readyState, EventSource.CONNECTING); const { promise, resolve } = Promise.withResolvers(); let opened = false;