@io-orkes/conductor-javascript 2.0.1-alpha → 2.1.1-alpha

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.mts CHANGED
@@ -204,6 +204,8 @@ declare type SubWorkflowParams = {
204
204
  version?: number;
205
205
  taskToDomain?: Record<string, string>;
206
206
  workflowDefinition?: WorkflowDef$1;
207
+ idempotencyKey?: string;
208
+ idempotencyStrategy?: 'FAIL' | 'RETURN_EXISTING';
207
209
  };
208
210
 
209
211
  declare type WorkflowTask = {
@@ -366,6 +368,8 @@ declare type StartWorkflowRequest = {
366
368
  taskToDomain?: Record<string, string>;
367
369
  workflowDef?: WorkflowDef$1;
368
370
  externalInputPayloadStoragePath?: string;
371
+ idempotencyKey?: string;
372
+ idempotencyStrategy?: 'FAIL' | 'RETURN_EXISTING';
369
373
  priority?: number;
370
374
  createdBy?: string;
371
375
  };
@@ -856,7 +860,7 @@ declare type WorkflowSummary = {
856
860
 
857
861
  declare type ScrollableSearchResultWorkflowSummary = {
858
862
  results?: Array<WorkflowSummary>;
859
- queryId?: string;
863
+ totalHits?: number;
860
864
  };
861
865
 
862
866
  declare type Workflow = {
@@ -866,6 +870,7 @@ declare type Workflow = {
866
870
  createdBy?: string;
867
871
  updatedBy?: string;
868
872
  status?: 'RUNNING' | 'COMPLETED' | 'FAILED' | 'TIMED_OUT' | 'TERMINATED' | 'PAUSED';
873
+ idempotencyKey?: string;
869
874
  endTime?: number;
870
875
  workflowId?: string;
871
876
  parentWorkflowId?: string;
@@ -1210,6 +1215,7 @@ declare type HumanTaskEntry = {
1210
1215
  createdBy?: string;
1211
1216
  createdOn?: number;
1212
1217
  definitionName?: string;
1218
+ displayName?: string;
1213
1219
  humanTaskDef?: HumanTaskDefinition;
1214
1220
  input?: Record<string, any>;
1215
1221
  output?: Record<string, any>;
@@ -1673,8 +1679,10 @@ interface RunnerArgs {
1673
1679
  logger?: ConductorLogger;
1674
1680
  onError?: TaskErrorHandler;
1675
1681
  concurrency?: number;
1682
+ maxRetries?: number;
1676
1683
  }
1677
1684
 
1685
+ declare const MAX_RETRIES = 3;
1678
1686
  declare const noopErrorHandler: TaskErrorHandler;
1679
1687
  /**
1680
1688
  * Responsible for polling and executing tasks from a queue.
@@ -1692,7 +1700,8 @@ declare class TaskRunner {
1692
1700
  private options;
1693
1701
  errorHandler: TaskErrorHandler;
1694
1702
  private poller;
1695
- constructor({ worker, taskResource, options, logger, onError: errorHandler, }: RunnerArgs);
1703
+ private maxRetries;
1704
+ constructor({ worker, taskResource, options, logger, onError: errorHandler, maxRetries, }: RunnerArgs);
1696
1705
  get isPolling(): boolean;
1697
1706
  /**
1698
1707
  * Starts polling for work
@@ -1715,6 +1724,7 @@ interface TaskManagerConfig {
1715
1724
  logger?: ConductorLogger;
1716
1725
  options?: Partial<TaskManagerOptions>;
1717
1726
  onError?: TaskErrorHandler;
1727
+ maxRetries?: number;
1718
1728
  }
1719
1729
  /**
1720
1730
  * Responsible for initializing and managing the runners that poll and work different task queues.
@@ -1727,6 +1737,7 @@ declare class TaskManager {
1727
1737
  private workers;
1728
1738
  readonly options: Required<TaskManagerOptions>;
1729
1739
  private polling;
1740
+ private maxRetries;
1730
1741
  constructor(client: ConductorClient, workers: Array<ConductorWorker>, config?: TaskManagerConfig);
1731
1742
  private workerManagerWorkerOptions;
1732
1743
  get isPolling(): boolean;
@@ -2028,6 +2039,8 @@ declare const subWorkflowTask: (taskReferenceName: string, workflowName: string,
2028
2039
 
2029
2040
  declare const switchTask: (taskReferenceName: string, expression: string, decisionCases?: Record<string, TaskDefTypes[]>, defaultCase?: TaskDefTypes[]) => SwitchTaskDef;
2030
2041
 
2042
+ declare const taskDefinition: ({ name, ownerApp, description, retryCount, timeoutSeconds, inputKeys, outputKeys, timeoutPolicy, retryLogic, retryDelaySeconds, responseTimeoutSeconds, concurrentExecLimit, inputTemplate, rateLimitPerFrequency, rateLimitFrequencyInSeconds, ownerEmail, pollTimeoutSeconds, backoffScaleFactor, }: TaskDef) => TaskDef;
2043
+
2031
2044
  declare const terminateTask: (taskReferenceName: string, status: "COMPLETED" | "FAILED", terminationReason?: string | undefined) => TerminateTaskDef;
2032
2045
 
2033
2046
  declare const waitTaskDuration: (taskReferenceName: string, duration: string) => WaitTaskDef;
@@ -2274,6 +2287,77 @@ declare class SchedulerClient {
2274
2287
  resumeAllSchedules(): Promise<void>;
2275
2288
  }
2276
2289
 
2290
+ declare class TaskClient {
2291
+ readonly _client: ConductorClient;
2292
+ constructor(client: ConductorClient);
2293
+ /**
2294
+ * Searches for existing scheduler execution based on below parameters
2295
+ *
2296
+ * @param start
2297
+ * @param size
2298
+ * @param sort
2299
+ * @param freeText
2300
+ * @param query
2301
+ * @returns SearchResultWorkflowScheduleExecutionModel
2302
+ */
2303
+ search(start: number, size: number, sort: string | undefined, freeText: string, query: string): Promise<SearchResultTask>;
2304
+ /**
2305
+ * Get an existing schedule by Id
2306
+ * @param taskId
2307
+ * @returns Task
2308
+ */
2309
+ getTask(taskId: string): Promise<Task>;
2310
+ /**
2311
+ * Update task result status
2312
+ *
2313
+ * @param workflowId
2314
+ * @param taskReferenceName
2315
+ * @param status
2316
+ * @param outputData
2317
+ * @param workerId
2318
+ * @returns
2319
+ */
2320
+ updateTaskResult(workflowId: string, taskReferenceName: string, status: TaskResultStatus, outputData: Record<string, unknown>): Promise<TaskResult>;
2321
+ }
2322
+
2323
+ declare class TemplateClient {
2324
+ readonly _client: ConductorClient;
2325
+ constructor(client: ConductorClient);
2326
+ /**
2327
+ * Register a new human task template
2328
+ *
2329
+ * @param template
2330
+ * @returns
2331
+ */
2332
+ registerTemplate(template: HumanTaskTemplate, asNewVersion?: boolean): Promise<HumanTaskTemplate>;
2333
+ }
2334
+
2335
+ declare class MetadataClient {
2336
+ readonly _client: ConductorClient;
2337
+ constructor(client: ConductorClient);
2338
+ /**
2339
+ * Unregisters an existing task definition by name
2340
+ *
2341
+ * @param name
2342
+ * @returns
2343
+ */
2344
+ unregisterTask(name: string): Promise<void>;
2345
+ /**
2346
+ * Registers a new task definition
2347
+ *
2348
+ * @param taskDef
2349
+ * @returns
2350
+ */
2351
+ registerTask(taskDef: TaskDef): Promise<void>;
2352
+ /**
2353
+ * Update an existing task definition
2354
+ *
2355
+ * @param taskDef
2356
+ * @returns
2357
+ */
2358
+ updateTask(taskDef: TaskDef): Promise<void>;
2359
+ }
2360
+
2277
2361
  declare type FetchFn<T = RequestInit, R extends {
2278
2362
  json: () => Promise<any>;
2279
2363
  } = Response> = (input: RequestInfo, init?: T) => Promise<R>;
@@ -2309,4 +2393,4 @@ declare const baseOrkesConductorClient: <T = RequestInit, R extends {
2309
2393
  */
2310
2394
  declare const request: <T>(config: OpenAPIConfig, options: ApiRequestOptions, fetchFn?: FetchFn) => CancelablePromise<T>;
2311
2395
 
2312
- export { Action, ApiError, ApiRequestOptions, ApiResult, AuthConductorClient, BaseHttpRequest, CancelError, CancelablePromise, CommonTaskDef, ConductorClient, ConductorClientAPIConfig, ConductorError, ConductorHttpRequest, ConductorLogLevel, ConductorLogger, ConductorWorker, DefaultLogger, DefaultLoggerConfig, DoWhileTaskDef, EventHandler, EventResourceService, EventTaskDef, ExternalStorageLocation, FetchFn, ForkJoinDynamicDef, ForkJoinTaskDef, GenerateTokenRequest, HTScrollableSearchResultHumanTaskEntry, HealthCheckResourceService, HttpInputParameters, HttpTaskDef, HumanExecutor, HumanTaskAssignment, HumanTaskDefinition, HumanTaskEntry, HumanTaskSearch, HumanTaskSearchResult, HumanTaskTemplate, HumanTaskTrigger, HumanTaskUser, InlineTaskDef, InlineTaskInputParameters, JoinTaskDef, JsonJQTransformTaskDef, KafkaPublishInputParameters, KafkaPublishTaskDef, MetadataResourceService, OnCancel, OpenAPIConfig, OrkesApiConfig, PollData, RequestType, RerunWorkflowRequest, Response$1 as Response, RunnerArgs, SaveScheduleRequest, SchedulerClient, SchedulerResourceService, ScrollableSearchResultWorkflowSummary, SearchResultTask, SearchResultTaskSummary, SearchResultWorkflow, SearchResultWorkflowScheduleExecutionModel, SearchResultWorkflowSummary, SetVariableTaskDef, SimpleTaskDef, SkipTaskRequest, StartWorkflow, StartWorkflowRequest, SubWorkflowParams, SubWorkflowTaskDef, SwitchTaskDef, Task, TaskDef, TaskDefTypes, TaskDetails, TaskErrorHandler, TaskExecLog, TaskFinderPredicate, TaskManager, TaskManagerConfig, TaskManagerOptions, TaskResourceService, TaskResult, TaskResultStatus, TaskRunner, TaskRunnerOptions, TaskSummary, TaskType, Terminate, TerminateTaskDef, TimeoutPolicy, TokenResourceService, UserFormTemplate, WaitTaskDef, Workflow, WorkflowBulkResourceService, WorkflowDef, WorkflowExecutor, WorkflowResourceService, WorkflowSchedule, WorkflowScheduleExecutionModel, WorkflowStatus, WorkflowSummary, WorkflowTask, baseOrkesConductorClient, completedTaskMatchingType, conductorEventTask, doWhileTask, dynamicForkTask, eventTask, forkTask, forkTaskJoin, generate, generateDoWhileTask, generateEventTask, generateForkJoinTask, generateHTTPTask, generateInlineTask, generateJQTransformTask, generateJoinTask, generateKafkaPublishTask, generateSetVariableTask, generateSimpleTask, generateSubWorkflowTask, generateSwitchTask, generateTerminateTask, generateWaitTask, httpTask, inlineTask, joinTask, jsonJqTask, kafkaPublishTask, newLoopTask, noopErrorHandler, noopLogger, orkesConductorClient, request, setVariableTask, simpleTask, sqsEventTask, subWorkflowTask, switchTask, taskGenMapper, terminateTask, waitTaskDuration, waitTaskUntil, workflow };
2396
+ export { Action, ApiError, ApiRequestOptions, ApiResult, AuthConductorClient, BaseHttpRequest, CancelError, CancelablePromise, CommonTaskDef, ConductorClient, ConductorClientAPIConfig, ConductorError, ConductorHttpRequest, ConductorLogLevel, ConductorLogger, ConductorWorker, DefaultLogger, DefaultLoggerConfig, DoWhileTaskDef, EventHandler, EventResourceService, EventTaskDef, ExternalStorageLocation, FetchFn, ForkJoinDynamicDef, ForkJoinTaskDef, GenerateTokenRequest, HTScrollableSearchResultHumanTaskEntry, HealthCheckResourceService, HttpInputParameters, HttpTaskDef, HumanExecutor, HumanTaskAssignment, HumanTaskDefinition, HumanTaskEntry, HumanTaskSearch, HumanTaskSearchResult, HumanTaskTemplate, HumanTaskTrigger, HumanTaskUser, InlineTaskDef, InlineTaskInputParameters, JoinTaskDef, JsonJQTransformTaskDef, KafkaPublishInputParameters, KafkaPublishTaskDef, MAX_RETRIES, MetadataClient, MetadataResourceService, OnCancel, OpenAPIConfig, OrkesApiConfig, PollData, RequestType, RerunWorkflowRequest, Response$1 as Response, RunnerArgs, SaveScheduleRequest, SchedulerClient, SchedulerResourceService, ScrollableSearchResultWorkflowSummary, SearchResultTask, SearchResultTaskSummary, SearchResultWorkflow, SearchResultWorkflowScheduleExecutionModel, SearchResultWorkflowSummary, SetVariableTaskDef, SimpleTaskDef, SkipTaskRequest, StartWorkflow, StartWorkflowRequest, SubWorkflowParams, SubWorkflowTaskDef, SwitchTaskDef, Task, TaskClient, TaskDef, TaskDefTypes, TaskDetails, TaskErrorHandler, TaskExecLog, TaskFinderPredicate, TaskManager, TaskManagerConfig, TaskManagerOptions, TaskResourceService, TaskResult, TaskResultStatus, TaskRunner, TaskRunnerOptions, TaskSummary, TaskType, TemplateClient, Terminate, TerminateTaskDef, TimeoutPolicy, TokenResourceService, UserFormTemplate, WaitTaskDef, Workflow, WorkflowBulkResourceService, WorkflowDef, WorkflowExecutor, WorkflowResourceService, WorkflowSchedule, WorkflowScheduleExecutionModel, WorkflowStatus, WorkflowSummary, WorkflowTask, baseOrkesConductorClient, completedTaskMatchingType, conductorEventTask, doWhileTask, dynamicForkTask, eventTask, forkTask, forkTaskJoin, generate, generateDoWhileTask, generateEventTask, generateForkJoinTask, generateHTTPTask, generateInlineTask, generateJQTransformTask, generateJoinTask, generateKafkaPublishTask, generateSetVariableTask, generateSimpleTask, generateSubWorkflowTask, generateSwitchTask, generateTerminateTask, generateWaitTask, httpTask, inlineTask, joinTask, jsonJqTask, kafkaPublishTask, newLoopTask, noopErrorHandler, noopLogger, orkesConductorClient, request, setVariableTask, simpleTask, sqsEventTask, subWorkflowTask, switchTask, taskDefinition, taskGenMapper, terminateTask, waitTaskDuration, waitTaskUntil, workflow };
package/dist/index.d.ts CHANGED
@@ -204,6 +204,8 @@ declare type SubWorkflowParams = {
204
204
  version?: number;
205
205
  taskToDomain?: Record<string, string>;
206
206
  workflowDefinition?: WorkflowDef$1;
207
+ idempotencyKey?: string;
208
+ idempotencyStrategy?: 'FAIL' | 'RETURN_EXISTING';
207
209
  };
208
210
 
209
211
  declare type WorkflowTask = {
@@ -366,6 +368,8 @@ declare type StartWorkflowRequest = {
366
368
  taskToDomain?: Record<string, string>;
367
369
  workflowDef?: WorkflowDef$1;
368
370
  externalInputPayloadStoragePath?: string;
371
+ idempotencyKey?: string;
372
+ idempotencyStrategy?: 'FAIL' | 'RETURN_EXISTING';
369
373
  priority?: number;
370
374
  createdBy?: string;
371
375
  };
@@ -856,7 +860,7 @@ declare type WorkflowSummary = {
856
860
 
857
861
  declare type ScrollableSearchResultWorkflowSummary = {
858
862
  results?: Array<WorkflowSummary>;
859
- queryId?: string;
863
+ totalHits?: number;
860
864
  };
861
865
 
862
866
  declare type Workflow = {
@@ -866,6 +870,7 @@ declare type Workflow = {
866
870
  createdBy?: string;
867
871
  updatedBy?: string;
868
872
  status?: 'RUNNING' | 'COMPLETED' | 'FAILED' | 'TIMED_OUT' | 'TERMINATED' | 'PAUSED';
873
+ idempotencyKey?: string;
869
874
  endTime?: number;
870
875
  workflowId?: string;
871
876
  parentWorkflowId?: string;
@@ -1210,6 +1215,7 @@ declare type HumanTaskEntry = {
1210
1215
  createdBy?: string;
1211
1216
  createdOn?: number;
1212
1217
  definitionName?: string;
1218
+ displayName?: string;
1213
1219
  humanTaskDef?: HumanTaskDefinition;
1214
1220
  input?: Record<string, any>;
1215
1221
  output?: Record<string, any>;
@@ -1673,8 +1679,10 @@ interface RunnerArgs {
1673
1679
  logger?: ConductorLogger;
1674
1680
  onError?: TaskErrorHandler;
1675
1681
  concurrency?: number;
1682
+ maxRetries?: number;
1676
1683
  }
1677
1684
 
1685
+ declare const MAX_RETRIES = 3;
1678
1686
  declare const noopErrorHandler: TaskErrorHandler;
1679
1687
  /**
1680
1688
  * Responsible for polling and executing tasks from a queue.
@@ -1692,7 +1700,8 @@ declare class TaskRunner {
1692
1700
  private options;
1693
1701
  errorHandler: TaskErrorHandler;
1694
1702
  private poller;
1695
- constructor({ worker, taskResource, options, logger, onError: errorHandler, }: RunnerArgs);
1703
+ private maxRetries;
1704
+ constructor({ worker, taskResource, options, logger, onError: errorHandler, maxRetries, }: RunnerArgs);
1696
1705
  get isPolling(): boolean;
1697
1706
  /**
1698
1707
  * Starts polling for work
@@ -1715,6 +1724,7 @@ interface TaskManagerConfig {
1715
1724
  logger?: ConductorLogger;
1716
1725
  options?: Partial<TaskManagerOptions>;
1717
1726
  onError?: TaskErrorHandler;
1727
+ maxRetries?: number;
1718
1728
  }
1719
1729
  /**
1720
1730
  * Responsible for initializing and managing the runners that poll and work different task queues.
@@ -1727,6 +1737,7 @@ declare class TaskManager {
1727
1737
  private workers;
1728
1738
  readonly options: Required<TaskManagerOptions>;
1729
1739
  private polling;
1740
+ private maxRetries;
1730
1741
  constructor(client: ConductorClient, workers: Array<ConductorWorker>, config?: TaskManagerConfig);
1731
1742
  private workerManagerWorkerOptions;
1732
1743
  get isPolling(): boolean;
@@ -2028,6 +2039,8 @@ declare const subWorkflowTask: (taskReferenceName: string, workflowName: string,
2028
2039
 
2029
2040
  declare const switchTask: (taskReferenceName: string, expression: string, decisionCases?: Record<string, TaskDefTypes[]>, defaultCase?: TaskDefTypes[]) => SwitchTaskDef;
2030
2041
 
2042
+ declare const taskDefinition: ({ name, ownerApp, description, retryCount, timeoutSeconds, inputKeys, outputKeys, timeoutPolicy, retryLogic, retryDelaySeconds, responseTimeoutSeconds, concurrentExecLimit, inputTemplate, rateLimitPerFrequency, rateLimitFrequencyInSeconds, ownerEmail, pollTimeoutSeconds, backoffScaleFactor, }: TaskDef) => TaskDef;
2043
+
2031
2044
  declare const terminateTask: (taskReferenceName: string, status: "COMPLETED" | "FAILED", terminationReason?: string | undefined) => TerminateTaskDef;
2032
2045
 
2033
2046
  declare const waitTaskDuration: (taskReferenceName: string, duration: string) => WaitTaskDef;
@@ -2274,6 +2287,77 @@ declare class SchedulerClient {
2274
2287
  resumeAllSchedules(): Promise<void>;
2275
2288
  }
2276
2289
 
2290
+ declare class TaskClient {
2291
+ readonly _client: ConductorClient;
2292
+ constructor(client: ConductorClient);
2293
+ /**
2294
+ * Searches for existing scheduler execution based on below parameters
2295
+ *
2296
+ * @param start
2297
+ * @param size
2298
+ * @param sort
2299
+ * @param freeText
2300
+ * @param query
2301
+ * @returns SearchResultWorkflowScheduleExecutionModel
2302
+ */
2303
+ search(start: number, size: number, sort: string | undefined, freeText: string, query: string): Promise<SearchResultTask>;
2304
+ /**
2305
+ * Get an existing schedule by Id
2306
+ * @param taskId
2307
+ * @returns Task
2308
+ */
2309
+ getTask(taskId: string): Promise<Task>;
2310
+ /**
2311
+ * Update task result status
2312
+ *
2313
+ * @param workflowId
2314
+ * @param taskReferenceName
2315
+ * @param status
2316
+ * @param outputData
2317
+ * @param workerId
2318
+ * @returns
2319
+ */
2320
+ updateTaskResult(workflowId: string, taskReferenceName: string, status: TaskResultStatus, outputData: Record<string, unknown>): Promise<TaskResult>;
2321
+ }
2322
+
2323
+ declare class TemplateClient {
2324
+ readonly _client: ConductorClient;
2325
+ constructor(client: ConductorClient);
2326
+ /**
2327
+ * Register a new human task template
2328
+ *
2329
+ * @param template
2330
+ * @returns
2331
+ */
2332
+ registerTemplate(template: HumanTaskTemplate, asNewVersion?: boolean): Promise<HumanTaskTemplate>;
2333
+ }
2334
+
2335
+ declare class MetadataClient {
2336
+ readonly _client: ConductorClient;
2337
+ constructor(client: ConductorClient);
2338
+ /**
2339
+ * Unregisters an existing task definition by name
2340
+ *
2341
+ * @param name
2342
+ * @returns
2343
+ */
2344
+ unregisterTask(name: string): Promise<void>;
2345
+ /**
2346
+ * Registers a new task definition
2347
+ *
2348
+ * @param taskDef
2349
+ * @returns
2350
+ */
2351
+ registerTask(taskDef: TaskDef): Promise<void>;
2352
+ /**
2353
+ * Update an existing task definition
2354
+ *
2355
+ * @param taskDef
2356
+ * @returns
2357
+ */
2358
+ updateTask(taskDef: TaskDef): Promise<void>;
2359
+ }
2360
+
2277
2361
  declare type FetchFn<T = RequestInit, R extends {
2278
2362
  json: () => Promise<any>;
2279
2363
  } = Response> = (input: RequestInfo, init?: T) => Promise<R>;
@@ -2309,4 +2393,4 @@ declare const baseOrkesConductorClient: <T = RequestInit, R extends {
2309
2393
  */
2310
2394
  declare const request: <T>(config: OpenAPIConfig, options: ApiRequestOptions, fetchFn?: FetchFn) => CancelablePromise<T>;
2311
2395
 
2312
- export { Action, ApiError, ApiRequestOptions, ApiResult, AuthConductorClient, BaseHttpRequest, CancelError, CancelablePromise, CommonTaskDef, ConductorClient, ConductorClientAPIConfig, ConductorError, ConductorHttpRequest, ConductorLogLevel, ConductorLogger, ConductorWorker, DefaultLogger, DefaultLoggerConfig, DoWhileTaskDef, EventHandler, EventResourceService, EventTaskDef, ExternalStorageLocation, FetchFn, ForkJoinDynamicDef, ForkJoinTaskDef, GenerateTokenRequest, HTScrollableSearchResultHumanTaskEntry, HealthCheckResourceService, HttpInputParameters, HttpTaskDef, HumanExecutor, HumanTaskAssignment, HumanTaskDefinition, HumanTaskEntry, HumanTaskSearch, HumanTaskSearchResult, HumanTaskTemplate, HumanTaskTrigger, HumanTaskUser, InlineTaskDef, InlineTaskInputParameters, JoinTaskDef, JsonJQTransformTaskDef, KafkaPublishInputParameters, KafkaPublishTaskDef, MetadataResourceService, OnCancel, OpenAPIConfig, OrkesApiConfig, PollData, RequestType, RerunWorkflowRequest, Response$1 as Response, RunnerArgs, SaveScheduleRequest, SchedulerClient, SchedulerResourceService, ScrollableSearchResultWorkflowSummary, SearchResultTask, SearchResultTaskSummary, SearchResultWorkflow, SearchResultWorkflowScheduleExecutionModel, SearchResultWorkflowSummary, SetVariableTaskDef, SimpleTaskDef, SkipTaskRequest, StartWorkflow, StartWorkflowRequest, SubWorkflowParams, SubWorkflowTaskDef, SwitchTaskDef, Task, TaskDef, TaskDefTypes, TaskDetails, TaskErrorHandler, TaskExecLog, TaskFinderPredicate, TaskManager, TaskManagerConfig, TaskManagerOptions, TaskResourceService, TaskResult, TaskResultStatus, TaskRunner, TaskRunnerOptions, TaskSummary, TaskType, Terminate, TerminateTaskDef, TimeoutPolicy, TokenResourceService, UserFormTemplate, WaitTaskDef, Workflow, WorkflowBulkResourceService, WorkflowDef, WorkflowExecutor, WorkflowResourceService, WorkflowSchedule, WorkflowScheduleExecutionModel, WorkflowStatus, WorkflowSummary, WorkflowTask, baseOrkesConductorClient, completedTaskMatchingType, conductorEventTask, doWhileTask, dynamicForkTask, eventTask, forkTask, forkTaskJoin, generate, generateDoWhileTask, generateEventTask, generateForkJoinTask, generateHTTPTask, generateInlineTask, generateJQTransformTask, generateJoinTask, generateKafkaPublishTask, generateSetVariableTask, generateSimpleTask, generateSubWorkflowTask, generateSwitchTask, generateTerminateTask, generateWaitTask, httpTask, inlineTask, joinTask, jsonJqTask, kafkaPublishTask, newLoopTask, noopErrorHandler, noopLogger, orkesConductorClient, request, setVariableTask, simpleTask, sqsEventTask, subWorkflowTask, switchTask, taskGenMapper, terminateTask, waitTaskDuration, waitTaskUntil, workflow };
2396
+ export { Action, ApiError, ApiRequestOptions, ApiResult, AuthConductorClient, BaseHttpRequest, CancelError, CancelablePromise, CommonTaskDef, ConductorClient, ConductorClientAPIConfig, ConductorError, ConductorHttpRequest, ConductorLogLevel, ConductorLogger, ConductorWorker, DefaultLogger, DefaultLoggerConfig, DoWhileTaskDef, EventHandler, EventResourceService, EventTaskDef, ExternalStorageLocation, FetchFn, ForkJoinDynamicDef, ForkJoinTaskDef, GenerateTokenRequest, HTScrollableSearchResultHumanTaskEntry, HealthCheckResourceService, HttpInputParameters, HttpTaskDef, HumanExecutor, HumanTaskAssignment, HumanTaskDefinition, HumanTaskEntry, HumanTaskSearch, HumanTaskSearchResult, HumanTaskTemplate, HumanTaskTrigger, HumanTaskUser, InlineTaskDef, InlineTaskInputParameters, JoinTaskDef, JsonJQTransformTaskDef, KafkaPublishInputParameters, KafkaPublishTaskDef, MAX_RETRIES, MetadataClient, MetadataResourceService, OnCancel, OpenAPIConfig, OrkesApiConfig, PollData, RequestType, RerunWorkflowRequest, Response$1 as Response, RunnerArgs, SaveScheduleRequest, SchedulerClient, SchedulerResourceService, ScrollableSearchResultWorkflowSummary, SearchResultTask, SearchResultTaskSummary, SearchResultWorkflow, SearchResultWorkflowScheduleExecutionModel, SearchResultWorkflowSummary, SetVariableTaskDef, SimpleTaskDef, SkipTaskRequest, StartWorkflow, StartWorkflowRequest, SubWorkflowParams, SubWorkflowTaskDef, SwitchTaskDef, Task, TaskClient, TaskDef, TaskDefTypes, TaskDetails, TaskErrorHandler, TaskExecLog, TaskFinderPredicate, TaskManager, TaskManagerConfig, TaskManagerOptions, TaskResourceService, TaskResult, TaskResultStatus, TaskRunner, TaskRunnerOptions, TaskSummary, TaskType, TemplateClient, Terminate, TerminateTaskDef, TimeoutPolicy, TokenResourceService, UserFormTemplate, WaitTaskDef, Workflow, WorkflowBulkResourceService, WorkflowDef, WorkflowExecutor, WorkflowResourceService, WorkflowSchedule, WorkflowScheduleExecutionModel, WorkflowStatus, WorkflowSummary, WorkflowTask, baseOrkesConductorClient, completedTaskMatchingType, conductorEventTask, doWhileTask, dynamicForkTask, eventTask, forkTask, forkTaskJoin, generate, generateDoWhileTask, generateEventTask, generateForkJoinTask, generateHTTPTask, generateInlineTask, generateJQTransformTask, generateJoinTask, generateKafkaPublishTask, generateSetVariableTask, generateSimpleTask, generateSubWorkflowTask, generateSwitchTask, generateTerminateTask, generateWaitTask, httpTask, inlineTask, joinTask, jsonJqTask, kafkaPublishTask, newLoopTask, noopErrorHandler, noopLogger, orkesConductorClient, request, setVariableTask, simpleTask, sqsEventTask, subWorkflowTask, switchTask, taskDefinition, taskGenMapper, terminateTask, waitTaskDuration, waitTaskUntil, workflow };
package/dist/index.js CHANGED
@@ -41,13 +41,17 @@ __export(conductor_javascript_exports, {
41
41
  EventResourceService: () => EventResourceService,
42
42
  HealthCheckResourceService: () => HealthCheckResourceService,
43
43
  HumanExecutor: () => HumanExecutor,
44
+ MAX_RETRIES: () => MAX_RETRIES,
45
+ MetadataClient: () => MetadataClient,
44
46
  MetadataResourceService: () => MetadataResourceService,
45
47
  SchedulerClient: () => SchedulerClient,
46
48
  SchedulerResourceService: () => SchedulerResourceService,
49
+ TaskClient: () => TaskClient,
47
50
  TaskManager: () => TaskManager,
48
51
  TaskResourceService: () => TaskResourceService,
49
52
  TaskRunner: () => TaskRunner,
50
53
  TaskType: () => TaskType,
54
+ TemplateClient: () => TemplateClient,
51
55
  TokenResourceService: () => TokenResourceService,
52
56
  WorkflowBulkResourceService: () => WorkflowBulkResourceService,
53
57
  WorkflowExecutor: () => WorkflowExecutor,
@@ -90,6 +94,7 @@ __export(conductor_javascript_exports, {
90
94
  sqsEventTask: () => sqsEventTask,
91
95
  subWorkflowTask: () => subWorkflowTask,
92
96
  switchTask: () => switchTask,
97
+ taskDefinition: () => taskDefinition,
93
98
  taskGenMapper: () => taskGenMapper,
94
99
  terminateTask: () => terminateTask,
95
100
  waitTaskDuration: () => waitTaskDuration,
@@ -2441,14 +2446,17 @@ var TaskRunner = class {
2441
2446
  options;
2442
2447
  errorHandler;
2443
2448
  poller;
2449
+ maxRetries;
2444
2450
  constructor({
2445
2451
  worker,
2446
2452
  taskResource,
2447
2453
  options,
2448
2454
  logger = noopLogger,
2449
- onError: errorHandler = noopErrorHandler
2455
+ onError: errorHandler = noopErrorHandler,
2456
+ maxRetries = MAX_RETRIES
2450
2457
  }) {
2451
2458
  this.taskResource = taskResource;
2459
+ this.maxRetries = maxRetries;
2452
2460
  this.logger = logger;
2453
2461
  this.worker = worker;
2454
2462
  this.options = { ...defaultRunnerOptions, ...options };
@@ -2514,7 +2522,7 @@ var TaskRunner = class {
2514
2522
  updateTaskWithRetry = async (task, taskResult) => {
2515
2523
  const { workerID } = this.options;
2516
2524
  let retryCount = 0;
2517
- while (retryCount < MAX_RETRIES) {
2525
+ while (retryCount < this.maxRetries) {
2518
2526
  try {
2519
2527
  await this.taskResource.updateTask1({
2520
2528
  ...taskResult,
@@ -2591,6 +2599,7 @@ var TaskManager = class {
2591
2599
  workers;
2592
2600
  options;
2593
2601
  polling = false;
2602
+ maxRetries = MAX_RETRIES;
2594
2603
  constructor(client, workers, config = {}) {
2595
2604
  if (!workers) {
2596
2605
  throw new Error(
@@ -2599,6 +2608,7 @@ var TaskManager = class {
2599
2608
  }
2600
2609
  this.client = client;
2601
2610
  this.logger = config.logger ?? new DefaultLogger();
2611
+ this.maxRetries = config.maxRetries ?? MAX_RETRIES;
2602
2612
  this.errorHandler = config.onError ?? noopErrorHandler;
2603
2613
  this.workers = workers;
2604
2614
  const providedOptions = config.options ?? {};
@@ -2668,7 +2678,8 @@ var TaskManager = class {
2668
2678
  options,
2669
2679
  taskResource: this.client.taskResource,
2670
2680
  logger: this.logger,
2671
- onError: this.errorHandler
2681
+ onError: this.errorHandler,
2682
+ maxRetries: this.maxRetries
2672
2683
  });
2673
2684
  runner.startPolling();
2674
2685
  this.workerRunners.set(worker.taskDefName, runner);
@@ -3639,6 +3650,47 @@ var switchTask = (taskReferenceName, expression, decisionCases = {}, defaultCase
3639
3650
  type: "SWITCH" /* SWITCH */
3640
3651
  });
3641
3652
 
3653
+ // src/core/sdk/taskDefinition.ts
3654
+ var taskDefinition = ({
3655
+ name,
3656
+ ownerApp = "",
3657
+ description = "",
3658
+ retryCount = 3,
3659
+ timeoutSeconds = 3600,
3660
+ inputKeys = [],
3661
+ outputKeys = [],
3662
+ timeoutPolicy = "TIME_OUT_WF",
3663
+ retryLogic = "FIXED",
3664
+ retryDelaySeconds = 60,
3665
+ responseTimeoutSeconds = 600,
3666
+ concurrentExecLimit = 0,
3667
+ inputTemplate = {},
3668
+ rateLimitPerFrequency = 0,
3669
+ rateLimitFrequencyInSeconds = 1,
3670
+ ownerEmail = "",
3671
+ pollTimeoutSeconds = 3600,
3672
+ backoffScaleFactor = 1
3673
+ }) => ({
3674
+ name,
3675
+ ownerApp,
3676
+ description,
3677
+ retryCount,
3678
+ timeoutSeconds,
3679
+ inputKeys,
3680
+ outputKeys,
3681
+ timeoutPolicy,
3682
+ retryLogic,
3683
+ retryDelaySeconds,
3684
+ responseTimeoutSeconds,
3685
+ concurrentExecLimit,
3686
+ inputTemplate,
3687
+ rateLimitPerFrequency,
3688
+ rateLimitFrequencyInSeconds,
3689
+ ownerEmail,
3690
+ pollTimeoutSeconds,
3691
+ backoffScaleFactor
3692
+ });
3693
+
3642
3694
  // src/core/sdk/terminate.ts
3643
3695
  var terminateTask = (taskReferenceName, status, terminationReason) => ({
3644
3696
  name: taskReferenceName,
@@ -3817,6 +3869,125 @@ var SchedulerClient = class {
3817
3869
  }
3818
3870
  };
3819
3871
 
3872
+ // src/core/taskClient.ts
3873
+ var TaskClient = class {
3874
+ _client;
3875
+ constructor(client) {
3876
+ this._client = client;
3877
+ }
3878
+ /**
3879
+ * Searches for existing scheduler execution based on below parameters
3880
+ *
3881
+ * @param start
3882
+ * @param size
3883
+ * @param sort
3884
+ * @param freeText
3885
+ * @param query
3886
+ * @returns SearchResultWorkflowScheduleExecutionModel
3887
+ */
3888
+ search(start, size, sort = "", freeText, query) {
3889
+ return tryCatchReThrow(
3890
+ () => this._client.taskResource.search(
3891
+ start,
3892
+ size,
3893
+ sort,
3894
+ freeText,
3895
+ query
3896
+ )
3897
+ );
3898
+ }
3899
+ /**
3900
+ * Get an existing schedule by Id
3901
+ * @param taskId
3902
+ * @returns Task
3903
+ */
3904
+ getTask(taskId) {
3905
+ return tryCatchReThrow(
3906
+ () => this._client.taskResource.getTask(taskId)
3907
+ );
3908
+ }
3909
+ /**
3910
+ * Update task result status
3911
+ *
3912
+ * @param workflowId
3913
+ * @param taskReferenceName
3914
+ * @param status
3915
+ * @param outputData
3916
+ * @param workerId
3917
+ * @returns
3918
+ */
3919
+ updateTaskResult(workflowId, taskReferenceName, status, outputData) {
3920
+ return tryCatchReThrow(
3921
+ () => this._client.taskResource.updateTask(
3922
+ workflowId,
3923
+ taskReferenceName,
3924
+ status,
3925
+ outputData
3926
+ )
3927
+ );
3928
+ }
3929
+ };
3930
+
3931
+ // src/core/templateClient.ts
3932
+ var TemplateClient = class {
3933
+ _client;
3934
+ constructor(client) {
3935
+ this._client = client;
3936
+ }
3937
+ /**
3938
+ * Register a new human task template
3939
+ *
3940
+ * @param template
3941
+ * @returns
3942
+ */
3943
+ async registerTemplate(template, asNewVersion = false) {
3944
+ return tryCatchReThrow(
3945
+ () => this._client.humanTask.saveTemplate(template, asNewVersion)
3946
+ );
3947
+ }
3948
+ };
3949
+
3950
+ // src/core/metadataClient.ts
3951
+ var MetadataClient = class {
3952
+ _client;
3953
+ constructor(client) {
3954
+ this._client = client;
3955
+ }
3956
+ /**
3957
+ * Unregisters an existing task definition by name
3958
+ *
3959
+ * @param name
3960
+ * @returns
3961
+ */
3962
+ unregisterTask(name) {
3963
+ return tryCatchReThrow(
3964
+ () => this._client.metadataResource.unregisterTaskDef(name)
3965
+ );
3966
+ }
3967
+ /**
3968
+ * Registers a new task definition
3969
+ *
3970
+ * @param taskDef
3971
+ * @returns
3972
+ */
3973
+ registerTask(taskDef) {
3974
+ return tryCatchReThrow(
3975
+ () => this._client.metadataResource.registerTaskDef([taskDef])
3976
+ );
3977
+ }
3978
+ /**
3979
+ * Update an existing task definition
3980
+ *
3981
+ * @param taskDef
3982
+ * @returns
3983
+ */
3984
+ updateTask(taskDef) {
3985
+ return tryCatchReThrow(
3986
+ () => this._client.metadataResource.updateTaskDef(taskDef)
3987
+ );
3988
+ }
3989
+ };
3990
+
3820
3991
  // src/orkes/BaseOrkesConductorClient.ts
3821
3992
  var defaultRequestHandler2 = (request3, config, options) => request3(config, options);
3822
3993
  var REFRESH_TOKEN_IN_MILLISECONDS = 30 * 60 * 1e3;
@@ -4131,13 +4302,17 @@ var request2 = (config, options, fetchFn = fetch) => {
4131
4302
  EventResourceService,
4132
4303
  HealthCheckResourceService,
4133
4304
  HumanExecutor,
4305
+ MAX_RETRIES,
4306
+ MetadataClient,
4134
4307
  MetadataResourceService,
4135
4308
  SchedulerClient,
4136
4309
  SchedulerResourceService,
4310
+ TaskClient,
4137
4311
  TaskManager,
4138
4312
  TaskResourceService,
4139
4313
  TaskRunner,
4140
4314
  TaskType,
4315
+ TemplateClient,
4141
4316
  TokenResourceService,
4142
4317
  WorkflowBulkResourceService,
4143
4318
  WorkflowExecutor,
@@ -4180,6 +4355,7 @@ var request2 = (config, options, fetchFn = fetch) => {
4180
4355
  sqsEventTask,
4181
4356
  subWorkflowTask,
4182
4357
  switchTask,
4358
+ taskDefinition,
4183
4359
  taskGenMapper,
4184
4360
  terminateTask,
4185
4361
  waitTaskDuration,