io.try jsdocs

This commit is contained in:
Matt Aitken
2023-07-04 16:14:31 +01:00
parent 33a928a9ea
commit 01cf5f3bdc
2 changed files with 11 additions and 0 deletions
+5
View File
@@ -0,0 +1,5 @@
---
"@trigger.dev/sdk": patch
---
io.try jsdocs
+6
View File
@@ -617,6 +617,12 @@ export class IO {
return this._taskStorage.run({ taskId: task.id }, executeTask);
}
/** `io.try()` allows you to run Tasks and catch any errors that are thrown, it's similar to a normal `try/catch` block but works with [io.runTask()](/sdk/io/runtask).
* A regular `try/catch` block on its own won't work as expected with Tasks. Internally `runTask()` throws some special errors to control flow execution. This is necessary to deal with resumability, serverless timeouts, and retrying Tasks.
* @param tryCallback The callback that will be called when the Task is run. The callback receives the Task and the IO as parameters.
* @param catchCallback The callback that will be called when the Task fails. The callback receives the error
* @returns A Promise that resolves with the returned value or the error
*/
async try<TResult, TCatchResult>(
tryCallback: () => Promise<TResult>,
catchCallback: (error: unknown) => Promise<TCatchResult>