From a6ad9a5340d611cb843e1e2cca6b78f5841e1da7 Mon Sep 17 00:00:00 2001 From: Mark Lawlor Date: Fri, 1 Aug 2025 06:50:22 +1000 Subject: [PATCH] fix: ensure injection is run before rendering --- src/metro/injection-code.ts | 4 +++- src/runtime/native/index.ts | 3 +-- src/runtime/native/reactivity.ts | 4 ++-- 3 files changed, 6 insertions(+), 5 deletions(-) diff --git a/src/metro/injection-code.ts b/src/metro/injection-code.ts index f64ef08..e050c7f 100644 --- a/src/metro/injection-code.ts +++ b/src/metro/injection-code.ts @@ -32,5 +32,7 @@ export function getNativeInjectionCode( .map((value) => `StyleCollection.inject(${JSON.stringify(value)});`) .join("\n"); - return Buffer.from(`${importStatements}\n${importPath}\n${contents}`); + return Buffer.from( + `${importStatements}\n${importPath}\n${contents};export {};`, + ); } diff --git a/src/runtime/native/index.ts b/src/runtime/native/index.ts index cc76427..56e3149 100644 --- a/src/runtime/native/index.ts +++ b/src/runtime/native/index.ts @@ -1,5 +1,4 @@ -// Import this file for Metro to override -import "./metro"; +export * from "./metro"; export * from "./api"; export type * from "../runtime.types"; diff --git a/src/runtime/native/reactivity.ts b/src/runtime/native/reactivity.ts index 54f0cf3..9ed16fb 100644 --- a/src/runtime/native/reactivity.ts +++ b/src/runtime/native/reactivity.ts @@ -29,7 +29,7 @@ export const observableBatch: { export function observable( init: Value | Read, - equality = Object.is, + equality: (value1: Value, value2: Value) => boolean = Object.is, ) { let value: Value; let isStatic = typeof init !== "function"; @@ -72,7 +72,7 @@ export function observable( function set(arg: Arg) { if (isStatic) { - if (equality(value, arg)) { + if (equality(value, arg as unknown as Value)) { return; } value = arg as unknown as Value;