Commit 4656011
introduce ValidatedExecutionArgs (#4210)
to safely export buildExecutionContext() as validateExecutionArgs()
motivation: this will allow us to:
1. export `executeOperation()` and `executeSubscription()` for those who would like to use directly.
2. add a `perEventExecutor` option to `ExecutionArgs` that allows one to pass a custom context for execution of each execution event, with the opportunity to clean up the context on return, a la #2485 and #3071, addressing #894, which would not require re-coercion of variables.
The signature of the `perEventExecutor` option would be:
```ts
type SubscriptionEventExecutor = ( validatedExecutionArgs: ValidatedExecutionArgs): PromiseOrValue<ExecutionResult>
```
rather than:
```ts
type SubscriptionEventExecutor = ( executionArgs: ExecutionArgs): PromiseOrValue<ExecutionResult>
```
This might be a first step to integrating `subscribe()` completely into `execute()` (see: #3644) but is also a reasonable stopping place.1 parent 51dd470 commit 4656011
3 files changed
Lines changed: 95 additions & 77 deletions
0 commit comments