aboutsummaryrefslogtreecommitdiff
path: root/src/javascript/jsc/bindings/ZigGlobalObject.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/javascript/jsc/bindings/ZigGlobalObject.cpp')
-rw-r--r--src/javascript/jsc/bindings/ZigGlobalObject.cpp30
1 files changed, 20 insertions, 10 deletions
diff --git a/src/javascript/jsc/bindings/ZigGlobalObject.cpp b/src/javascript/jsc/bindings/ZigGlobalObject.cpp
index 2a26e44cb..fbe3c22ae 100644
--- a/src/javascript/jsc/bindings/ZigGlobalObject.cpp
+++ b/src/javascript/jsc/bindings/ZigGlobalObject.cpp
@@ -290,16 +290,26 @@ JSC::JSObject *GlobalObject::moduleLoaderCreateImportMetaProperties(JSGlobalObje
JSValue key,
JSModuleRecord *record,
JSValue val) {
- return nullptr;
- // auto res = Zig__GlobalObject__createImportMetaProperties(
- // globalObject,
- // loader,
- // JSValue::encode(key),
- // record,
- // JSValue::encode(val)
- // );
-
- // return JSValue::decode(res).getObject();
+
+ ZigString specifier = Zig::toZigString(key, globalObject);
+ JSC::VM &vm = globalObject->vm();
+ auto scope = DECLARE_THROW_SCOPE(vm);
+
+ JSC::JSObject *metaProperties =
+ JSC::constructEmptyObject(vm, globalObject->nullPrototypeObjectStructure());
+ RETURN_IF_EXCEPTION(scope, nullptr);
+
+ metaProperties->putDirect(vm, Identifier::fromString(vm, "filePath"), key);
+ RETURN_IF_EXCEPTION(scope, nullptr);
+
+ // metaProperties->putDirect(vm, Identifier::fromString(vm, "resolve"),
+ // globalObject->globalThis()
+ // ->get(vm, Identifier::fromString("Wundle"))
+ // .getObject()
+ // ->get(vm, Identifier::fromString("resolve"))); );
+ // RETURN_IF_EXCEPTION(scope, nullptr);
+
+ return metaProperties;
}
JSC::JSValue GlobalObject::moduleLoaderEvaluate(JSGlobalObject *globalObject,