aboutsummaryrefslogtreecommitdiff
path: root/src/javascript/jsc/bindings/ZigGlobalObject.cpp
diff options
context:
space:
mode:
authorGravatar Jarred Sumner <jarred@jarredsumner.com> 2022-04-03 00:09:45 -0700
committerGravatar Jarred Sumner <jarred@jarredsumner.com> 2022-04-03 00:09:45 -0700
commite62c7dc9e5709b1ce54838aee30668a4c358a528 (patch)
treef95b37ab17181b438632ec7a52f697d84b9ceb14 /src/javascript/jsc/bindings/ZigGlobalObject.cpp
parent4d718931be688333dccfc2bbe80de6faa26a0ce1 (diff)
downloadbun-e62c7dc9e5709b1ce54838aee30668a4c358a528.tar.gz
bun-e62c7dc9e5709b1ce54838aee30668a4c358a528.tar.zst
bun-e62c7dc9e5709b1ce54838aee30668a4c358a528.zip
[bun.js] Expose `ImageData` globally
Diffstat (limited to '')
-rw-r--r--src/javascript/jsc/bindings/ZigGlobalObject.cpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/javascript/jsc/bindings/ZigGlobalObject.cpp b/src/javascript/jsc/bindings/ZigGlobalObject.cpp
index 5fbf97fc9..ce73975c8 100644
--- a/src/javascript/jsc/bindings/ZigGlobalObject.cpp
+++ b/src/javascript/jsc/bindings/ZigGlobalObject.cpp
@@ -88,6 +88,7 @@
#include "JSEvent.h"
#include "JSErrorEvent.h"
#include "JSFetchHeaders.h"
+#include "JSImageData.h"
#include "Process.h"
@@ -396,6 +397,17 @@ JSC_DEFINE_CUSTOM_GETTER(JSFetchHeaders_getter,
WebCore::JSFetchHeaders::getConstructor(JSC::getVM(lexicalGlobalObject), thisObject));
}
+JSC_DECLARE_CUSTOM_GETTER(JSImageData_getter);
+
+JSC_DEFINE_CUSTOM_GETTER(JSImageData_getter,
+ (JSC::JSGlobalObject * lexicalGlobalObject, JSC::EncodedJSValue thisValue,
+ JSC::PropertyName))
+{
+ Zig::GlobalObject* thisObject = JSC::jsCast<Zig::GlobalObject*>(lexicalGlobalObject);
+ return JSC::JSValue::encode(
+ WebCore::JSImageData::getConstructor(JSC::getVM(lexicalGlobalObject), thisObject));
+}
+
JSC_DECLARE_CUSTOM_GETTER(JSEventTarget_getter);
JSC_DEFINE_CUSTOM_GETTER(JSEventTarget_getter,
@@ -879,6 +891,9 @@ void GlobalObject::installAPIGlobals(JSClassRef* globals, int count, JSC::VM& vm
putDirectCustomAccessor(vm, JSC::Identifier::fromString(vm, "ErrorEvent"_s), JSC::CustomGetterSetter::create(vm, JSErrorEvent_getter, nullptr),
JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ReadOnly);
+ putDirectCustomAccessor(vm, JSC::Identifier::fromString(vm, "ImageData"_s), JSC::CustomGetterSetter::create(vm, JSImageData_getter, nullptr),
+ JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ReadOnly);
+
extraStaticGlobals.releaseBuffer();
this->setRemoteDebuggingEnabled(true);