From 831ec5d31413138ae27e92d91868ecdfec28e6d2 Mon Sep 17 00:00:00 2001 From: "Alex C. Huber" <91097647+alexchuber@users.noreply.github.com> Date: Wed, 5 Nov 2025 16:42:31 -0500 Subject: [PATCH 1/2] Revert "Blob: Add factory function (#120)" This reverts commit 8b9f88b64db8222497d88a82d53ddd154f8a70e3. --- .../Blob/Include/Babylon/Polyfills/Blob.h | 8 ----- Polyfills/Blob/Source/Blob.cpp | 30 ++----------------- Polyfills/Blob/Source/Blob.h | 5 ---- 3 files changed, 2 insertions(+), 41 deletions(-) diff --git a/Polyfills/Blob/Include/Babylon/Polyfills/Blob.h b/Polyfills/Blob/Include/Babylon/Polyfills/Blob.h index f8b8f9fd..744b90e5 100644 --- a/Polyfills/Blob/Include/Babylon/Polyfills/Blob.h +++ b/Polyfills/Blob/Include/Babylon/Polyfills/Blob.h @@ -1,17 +1,9 @@ #pragma once #include -#include #include -#include -#include namespace Babylon::Polyfills::Blob { void BABYLON_API Initialize(Napi::Env env); - - Napi::Value BABYLON_API CreateInstance( - Napi::Env env, - std::vector data, - std::string type); } diff --git a/Polyfills/Blob/Source/Blob.cpp b/Polyfills/Blob/Source/Blob.cpp index e29930c1..fde4704b 100644 --- a/Polyfills/Blob/Source/Blob.cpp +++ b/Polyfills/Blob/Source/Blob.cpp @@ -4,10 +4,9 @@ namespace Babylon::Polyfills::Internal { - static constexpr auto JS_BLOB_CONSTRUCTOR_NAME = "Blob"; - void Blob::Initialize(Napi::Env env) { + static constexpr auto JS_BLOB_CONSTRUCTOR_NAME = "Blob"; if (env.Global().Get(JS_BLOB_CONSTRUCTOR_NAME).IsUndefined()) { Napi::Function func = DefineClass( @@ -18,30 +17,13 @@ namespace Babylon::Polyfills::Internal InstanceAccessor("type", &Blob::GetType, nullptr), InstanceMethod("text", &Blob::Text), InstanceMethod("arrayBuffer", &Blob::ArrayBuffer), - InstanceMethod("bytes", &Blob::Bytes), + InstanceMethod("bytes", &Blob::Bytes) }); env.Global().Set(JS_BLOB_CONSTRUCTOR_NAME, func); } } - Napi::Value Blob::CreateInstance( - Napi::Env env, - std::vector data, - std::string type) - { - Initialize(env); - - auto ctor{env.Global().Get(JS_BLOB_CONSTRUCTOR_NAME).As()}; - auto jsBlob{ctor.New({})}; - - auto blob{Blob::Unwrap(jsBlob)}; - blob->m_data = std::move(data); - blob->m_type = std::move(type); - - return jsBlob; - } - Blob::Blob(const Napi::CallbackInfo& info) : Napi::ObjectWrap(info) { @@ -151,12 +133,4 @@ namespace Babylon::Polyfills::Blob { Internal::Blob::Initialize(env); } - - Napi::Value BABYLON_API CreateInstance( - Napi::Env env, - std::vector data, - std::string type) - { - return Internal::Blob::CreateInstance(env, std::move(data), std::move(type)); - } } diff --git a/Polyfills/Blob/Source/Blob.h b/Polyfills/Blob/Source/Blob.h index e91fa49c..df04e834 100644 --- a/Polyfills/Blob/Source/Blob.h +++ b/Polyfills/Blob/Source/Blob.h @@ -12,11 +12,6 @@ namespace Babylon::Polyfills::Internal public: static void Initialize(Napi::Env env); - static Napi::Value CreateInstance( - Napi::Env env, - std::vector data, - std::string type); - explicit Blob(const Napi::CallbackInfo& info); private: From 3b1a77f2d91170e9310123afbcad86eb153cb6b6 Mon Sep 17 00:00:00 2001 From: "Alex C. Huber" <91097647+alexchuber@users.noreply.github.com> Date: Wed, 5 Nov 2025 16:43:28 -0500 Subject: [PATCH 2/2] Update Polyfills/Blob/Source/Blob.cpp --- Polyfills/Blob/Source/Blob.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Polyfills/Blob/Source/Blob.cpp b/Polyfills/Blob/Source/Blob.cpp index fde4704b..9bf5ec12 100644 --- a/Polyfills/Blob/Source/Blob.cpp +++ b/Polyfills/Blob/Source/Blob.cpp @@ -17,7 +17,7 @@ namespace Babylon::Polyfills::Internal InstanceAccessor("type", &Blob::GetType, nullptr), InstanceMethod("text", &Blob::Text), InstanceMethod("arrayBuffer", &Blob::ArrayBuffer), - InstanceMethod("bytes", &Blob::Bytes) + InstanceMethod("bytes", &Blob::Bytes), }); env.Global().Set(JS_BLOB_CONSTRUCTOR_NAME, func);