mirror of
https://github.com/zoriya/v10.git
synced 2026-08-16 02:45:09 +00:00
refactor(store): use undefined instead of null for void-input placeholder (#322)
This commit is contained in:
@@ -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:
|
||||
|
||||
@@ -105,8 +105,8 @@ export type ResolveRequestMap<Requests> = {
|
||||
|
||||
export type ResolveRequestHandler<R>
|
||||
= R extends Request<infer I, infer O>
|
||||
? [I] extends [void]
|
||||
? (input?: null, meta?: RequestMetaInit) => Promise<O>
|
||||
? [I] extends [void | undefined]
|
||||
? (input?: undefined, meta?: RequestMetaInit) => Promise<O>
|
||||
: (input: I, meta?: RequestMetaInit) => Promise<O>
|
||||
: never;
|
||||
|
||||
|
||||
@@ -252,7 +252,7 @@ describe('store', () => {
|
||||
|
||||
store.attach(new MockMedia());
|
||||
|
||||
await store.request.action(null, {
|
||||
await store.request.action(undefined, {
|
||||
source: 'user',
|
||||
reason: 'test',
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user