UNPKG

@ilijanl/temporalio-utils

Version:

A set of utils around temporalio typescript sdk

26 lines (25 loc) 839 B
// src/activity/index.ts import { ApplicationFailure } from "@temporalio/common"; var manualActivityRetryType = "ManualActivityRetry"; var isManualActivityRetry = (error) => typeof error === "object" && error !== null && "type" in error && error.type === manualActivityRetryType; var retry = (options) => { const error = ApplicationFailure.create({ // this type is can be used in logs and alerts to filter out manual retries type: manualActivityRetryType, nonRetryable: false, ...options }); throw error; }; var createActivity = (definition, executeFn) => ({ definition, executeFn }); var getActivityIdempotencyKey = (input) => `${input.info.workflowExecution.runId}_${input.info.activityId}`; export { createActivity, getActivityIdempotencyKey, isManualActivityRetry, manualActivityRetryType, retry };