From 730dd435a8f44b27252ddf0d624cf2c58bd3916c Mon Sep 17 00:00:00 2001 From: rahim Date: Thu, 22 Jan 2026 22:20:39 +1100 Subject: [PATCH] refactor(store): use undefined instead of null for void-input placeholder (#322) --- packages/store/README.md | 6 +++--- packages/store/src/core/request.ts | 4 ++-- packages/store/src/core/tests/store.test.ts | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/store/README.md b/packages/store/README.md index fb26dcdd..5589ab84 100644 --- a/packages/store/README.md +++ b/packages/store/README.md @@ -177,12 +177,12 @@ await store.request.seek(30); Every request accepts optional metadata as the last argument. ```ts -store.request.play(null, { source: 'user', reason: 'play-button' }); +store.request.play(undefined, { source: 'user', reason: 'play-button' }); store.request.seek(30, { source: 'user', reason: 'slider-scrub' }); -store.request.pause(null, { source: 'system', reason: 'ad-start' }); +store.request.pause(undefined, { source: 'system', reason: 'ad-start' }); // Infer metadata from DOM event -store.request.play(null, createRequestMetaFromEvent(clickEvent)); // MouseEvent +store.request.play(undefined, createRequestMetaFromEvent(clickEvent)); // MouseEvent ``` Handlers receive metadata: diff --git a/packages/store/src/core/request.ts b/packages/store/src/core/request.ts index 69e914e8..b7241aaa 100644 --- a/packages/store/src/core/request.ts +++ b/packages/store/src/core/request.ts @@ -105,8 +105,8 @@ export type ResolveRequestMap = { export type ResolveRequestHandler = R extends Request - ? [I] extends [void] - ? (input?: null, meta?: RequestMetaInit) => Promise + ? [I] extends [void | undefined] + ? (input?: undefined, meta?: RequestMetaInit) => Promise : (input: I, meta?: RequestMetaInit) => Promise : never; diff --git a/packages/store/src/core/tests/store.test.ts b/packages/store/src/core/tests/store.test.ts index ab742118..12ef3938 100644 --- a/packages/store/src/core/tests/store.test.ts +++ b/packages/store/src/core/tests/store.test.ts @@ -252,7 +252,7 @@ describe('store', () => { store.attach(new MockMedia()); - await store.request.action(null, { + await store.request.action(undefined, { source: 'user', reason: 'test', });