diff options
author | 2024-09-06 13:26:51 +0200 | |
---|---|---|
committer | 2024-09-06 13:26:51 +0200 | |
commit | 4a44e82bbdf0572190618d8c5882c63a6525a198 (patch) | |
tree | afa793ddf691207a86ed8345ce6cb50797461903 /packages/integrations/preact/src | |
parent | c58193a691775af5c568e461c63040a42e2471f7 (diff) | |
download | astro-4a44e82bbdf0572190618d8c5882c63a6525a198.tar.gz astro-4a44e82bbdf0572190618d8c5882c63a6525a198.tar.zst astro-4a44e82bbdf0572190618d8c5882c63a6525a198.zip |
fix: explicitly check for null props in `serializeSignals` (#11930)
* fix: explicitly check for null props in `serializeSignals`
* chore: add changeset
Diffstat (limited to 'packages/integrations/preact/src')
-rw-r--r-- | packages/integrations/preact/src/signals.ts | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/packages/integrations/preact/src/signals.ts b/packages/integrations/preact/src/signals.ts index 7b797f385..a1f63acdd 100644 --- a/packages/integrations/preact/src/signals.ts +++ b/packages/integrations/preact/src/signals.ts @@ -38,7 +38,8 @@ export function serializeSignals( const signals: Signals = {}; for (const [key, value] of Object.entries(props)) { const isPropArray = Array.isArray(value); - const isPropObject = !isSignal(value) && typeof props[key] === 'object' && !isPropArray; + // `typeof null` is 'object' in JS, so we need to check for `null` specifically + const isPropObject = !isSignal(value) && typeof props[key] === 'object' && props[key] !== null && !isPropArray; if (isPropObject || isPropArray) { const values = isPropObject ? Object.keys(props[key]) : value; |