@unmeshed/sdk 1.1.1 → 1.1.3
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 +32 -24
- package/dist/index.d.ts +32 -24
- package/dist/index.js +89 -127
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +89 -127
- package/dist/index.mjs.map +1 -1
- package/package.json +6 -3
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts","../src/apis/unmeshedApiClient.ts","../src/utils/unmeshedCommonUtils.ts","../src/types/index.ts","../src/apis/queuedWorker.ts","../src/apis/pollerClientImpl.ts","../src/apis/processClientImpl.ts","../src/apis/registrationClientImpl.ts"],"sourcesContent":["import {\n ApiCallType,\n ProcessRequestData,\n ProcessSearchRequest,\n RenewRegistrationParams,\n UnmeshedClientConfig,\n UnmeshedWorkerConfig,\n} from \"./types\";\nimport {UnmeshedApiClient} from \"./apis/unmeshedApiClient\";\nimport {startPollingWorkers} from \"./apis/pollerClientImpl\";\nimport {\n bulkResume,\n bulkReviewed,\n bulkTerminate,\n getProcessData,\n getStepData,\n invokeApiMappingGet,\n invokeApiMappingPost,\n rerun,\n runProcessAsync,\n runProcessSync,\n searchProcessExecutions,\n} from \"./apis/processClientImpl\";\nimport {renewRegistration} from \"./apis/registrationClientImpl\";\n\n// noinspection JSUnusedGlobalSymbols\nexport class UnmeshedClient {\n private client: UnmeshedApiClient;\n\n constructor(config: UnmeshedClientConfig) {\n this.client = new UnmeshedApiClient(config);\n }\n\n startPolling(workers: UnmeshedWorkerConfig[]) {\n startPollingWorkers(this.client, workers);\n }\n\n runProcessSync(ProcessRequestData: ProcessRequestData) {\n return runProcessSync(this.client, ProcessRequestData);\n }\n\n runProcessAsync(ProcessRequestData: ProcessRequestData) {\n return runProcessAsync(this.client, ProcessRequestData);\n }\n\n getProcessData(processId: number, includeSteps: boolean) {\n return getProcessData(this.client, processId, includeSteps);\n }\n\n getStepData(stepId: number) {\n return getStepData(this.client, stepId);\n }\n\n bulkTerminate(processIds: number[], reason?: string) {\n return bulkTerminate(this.client, processIds, reason);\n }\n\n bulkResume(processIds: number[]) {\n return bulkResume(this.client, processIds);\n }\n\n bulkReviewed(processIds: number[], reason?: string) {\n return bulkReviewed(this.client, processIds, reason);\n }\n\n reRun(processId: number, version?: number) {\n return rerun(this.client, processId, version);\n }\n\n searchProcessExecution(params: ProcessSearchRequest) {\n return searchProcessExecutions(this.client, params);\n }\n\n invokeApiMappingGet(\n apiClient: UnmeshedApiClient,\n endpoint: string,\n id: string,\n correlationId: string,\n apiCallType: ApiCallType\n ) {\n return invokeApiMappingGet(\n apiClient,\n endpoint,\n id,\n correlationId,\n apiCallType\n );\n }\n\n invokeApiMappingPost(\n endpoint: string,\n input: Record<string, any>,\n id: string,\n correlationId: string,\n apiCallType: ApiCallType\n ) {\n return invokeApiMappingPost(\n this.client,\n endpoint,\n input,\n id,\n correlationId,\n apiCallType\n );\n }\n\n reNewRegistration(params: RenewRegistrationParams) {\n return renewRegistration(this.client, params);\n }\n\n}\n\nexport * from \"./types\";\n","import axios, {AxiosError, AxiosInstance, AxiosRequestConfig, AxiosResponse, RawAxiosRequestHeaders} from \"axios\";\nimport {\n ApiResponse,\n ClientRequestConfig,\n FinalUnmeshedClientConfig,\n HandleRequestConfig,\n QueryParams,\n RequestConfig,\n UnmeshedClientConfig,\n} from \"../types\";\nimport {UnmeshedCommonUtils} from \"../utils/unmeshedCommonUtils\";\n\nexport class UnmeshedApiClient {\n\n private axiosInstance: AxiosInstance | null = null;\n private clientId: string | undefined = undefined;\n private _config: FinalUnmeshedClientConfig;\n\n constructor(unmeshedClientConfig: UnmeshedClientConfig) {\n console.log(\"Initializing Unmeshed ApiClient\");\n\n this._config = createUnmeshedClientConfig(unmeshedClientConfig);\n\n console.log(this._config);\n\n this.clientId = this._config.clientId;\n\n if (!this._config.baseUrl) {\n throw new Error(\"baseUrl is required\");\n }\n\n const baseURL = this._config.port ? `${this._config.baseUrl}:${this._config.port}` : this._config.baseUrl;\n\n this.axiosInstance = axios.create({\n baseURL,\n timeout: this._config.timeout,\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer client.sdk.${this._config.clientId}.${UnmeshedCommonUtils.createSecureHash(\n this._config.authToken\n )}`,\n } as RawAxiosRequestHeaders,\n });\n }\n\n private async handleRequest<T>({\n method,\n endpoint,\n params,\n data,\n config,\n }: HandleRequestConfig): Promise<ApiResponse<T>> {\n\n if (!this.axiosInstance) {\n throw new Error(\"ApiClient must be initialized before making requests\");\n }\n\n try {\n const response: AxiosResponse<T> = await this.axiosInstance.request<T>({\n method,\n url: endpoint,\n params,\n data,\n ...config,\n } as AxiosRequestConfig);\n\n return {\n data: response.data,\n status: response.status,\n headers: response.headers as Record<string, string>,\n };\n } catch (error) {\n if (axios.isAxiosError(error)) {\n console.error(\"Request failed:\", error.message);\n throw this.handleError(error);\n }\n console.error(\"Unexpected error:\", (error as Error).message);\n throw error;\n }\n }\n\n private handleError(error: AxiosError): Error {\n console.error(\"Error details:\", {\n message: error.message,\n status: error.response?.status,\n data: error.response?.data,\n });\n\n let response = error?.response?.data as ErrorResponse;\n if (response?.errorMessage) {\n return new Error(`${response.errorMessage} [Status code: ${error.response?.status || ''}]`)\n }\n\n return new Error(error.message, {cause: error.response?.data || {}});\n }\n\n public async get<T = any>(\n endpoint: string,\n params?: QueryParams,\n config?: RequestConfig\n ): Promise<ApiResponse<T>> {\n return this.handleRequest<T>({\n method: \"get\",\n endpoint: endpoint,\n params: params,\n config: config,\n });\n }\n\n public async post<T = any>(\n endpoint: string,\n clientRequestConfig: ClientRequestConfig\n ): Promise<ApiResponse<T>> {\n return this.handleRequest<T>({\n method: \"post\",\n endpoint: endpoint,\n ...clientRequestConfig,\n });\n }\n\n public async put<T = any>(\n endpoint: string,\n clientRequestConfig: ClientRequestConfig\n ): Promise<ApiResponse<T>> {\n return this.handleRequest<T>({\n method: \"put\",\n endpoint: endpoint,\n ...clientRequestConfig,\n });\n }\n\n public async delete<T = any>(\n endpoint: string,\n clientRequestConfig: ClientRequestConfig\n ): Promise<ApiResponse<T>> {\n return this.handleRequest<T>({\n method: \"delete\",\n endpoint: endpoint,\n ...clientRequestConfig,\n });\n }\n\n public getClientId(): string | undefined {\n return this.clientId;\n }\n\n\n get config(): FinalUnmeshedClientConfig {\n return this._config;\n }\n}\n\ninterface ErrorResponse {\n errorMessage?: string;\n [key: string]: any; // To allow other unexpected properties\n}\n\nexport function createUnmeshedClientConfig(config: UnmeshedClientConfig): Required<FinalUnmeshedClientConfig> {\n return {\n baseUrl: config.baseUrl,\n clientId: config.clientId,\n authToken: config.authToken,\n port: config.port ?? 443,\n timeout: config.timeout ?? 5000,\n pollInterval: config.pollInterval ?? 100,\n apiWorkerTimeout: config.apiWorkerTimeout ?? 10000,\n pollTimeout: config.pollTimeout ?? 10000,\n responsePollInterval: config.responsePollInterval ?? 100,\n responsePollTimeout: config.responsePollTimeout ?? 10000,\n responseBatchSize: config.responseBatchSize ?? 50,\n };\n}\n","import { createHash } from \"crypto\";\n\nexport class UnmeshedCommonUtils {\n static createSecureHash(input: string): string {\n try {\n const hash = createHash(\"sha256\");\n hash.update(input, \"utf8\");\n return hash.digest(\"hex\");\n } catch (e) {\n throw new Error(\"Error creating hash\");\n }\n }\n}\n","import { AxiosRequestConfig } from \"axios\";\n\nexport enum ApiCallType {\n SYNC = \"SYNC\",\n ASYNC = \"ASYNC\",\n STREAM = \"STREAM\",\n}\n\nexport interface ApiMappingData {\n endpoint: string;\n processDefNamespace: string;\n processDefName: string;\n processDefVersion: number;\n authType: string;\n authClaims: string;\n createdBy: string;\n updatedBy: string;\n created: Date;\n updated: Date;\n}\n\nexport type ApiMappingWebhookData = {\n endpoint: string;\n name: string;\n uniqueId: string;\n urlSecret: string;\n description: string;\n userIdentifier: string;\n webhookSource: WebhookSource;\n webhookSourceConfig: Record<string, string>;\n expiryDate: Date;\n userType: SQAuthUserType;\n createdBy: string;\n updatedBy: string;\n created: Date;\n updated: Date;\n};\n\nexport enum WebhookSource {\n MS_TEAMS = \"MS_TEAMS\",\n NOT_DEFINED = \"NOT_DEFINED\",\n}\n\nexport enum SQAuthUserType {\n USER = \"USER\",\n API = \"API\",\n INTERNAL = \"INTERNAL\",\n}\n\nexport enum StepType {\n WORKER = \"WORKER\",\n HTTP = \"HTTP\",\n WAIT = \"WAIT\",\n FAIL = \"FAIL\",\n PYTHON = \"PYTHON\",\n JAVASCRIPT = \"JAVASCRIPT\",\n JQ = \"JQ\",\n MANAGED = \"MANAGED\",\n BUILTIN = \"BUILTIN\",\n NOOP = \"NOOP\",\n PERSISTED_STATE = \"PERSISTED_STATE\",\n DEPENDSON = \"DEPENDSON\",\n INTEGRATION = \"INTEGRATION\",\n EXIT = \"EXIT\",\n SUB_PROCESS = \"SUB_PROCESS\",\n LIST = \"LIST\",\n PARALLEL = \"PARALLEL\",\n FOREACH = \"FOREACH\",\n SWITCH = \"SWITCH\",\n}\n\nexport enum StepStatus {\n PENDING = \"PENDING\",\n SCHEDULED = \"SCHEDULED\",\n RUNNING = \"RUNNING\",\n PAUSED = \"PAUSED\",\n COMPLETED = \"COMPLETED\",\n FAILED = \"FAILED\",\n TIMED_OUT = \"TIMED_OUT\",\n SKIPPED = \"SKIPPED\",\n CANCELLED = \"CANCELLED\",\n}\n\nexport enum ProcessStatus {\n RUNNING = \"RUNNING\",\n COMPLETED = \"COMPLETED\",\n FAILED = \"FAILED\",\n TIMED_OUT = \"TIMED_OUT\",\n CANCELLED = \"CANCELLED\",\n TERMINATED = \"TERMINATED\",\n REVIEWED = \"REVIEWED\",\n}\n\nexport enum ProcessTriggerType {\n MANUAL = \"MANUAL\",\n SCHEDULED = \"SCHEDULED\",\n API_MAPPING = \"API_MAPPING\",\n WEBHOOK = \"WEBHOOK\",\n API = \"API\",\n SUB_PROCESS = \"SUB_PROCESS\",\n}\n\nexport enum ProcessType {\n STANDARD = \"STANDARD\",\n DYNAMIC = \"DYNAMIC\",\n API_ORCHESTRATION = \"API_ORCHESTRATION\",\n INTERNAL = \"INTERNAL\",\n}\n\nexport type ClientProfileData = {\n clientId: string;\n ipAddress: string;\n friendlyName: string;\n userIdentifier: string;\n stepQueueNames: StepQueueNameData[];\n createdBy: string;\n updatedBy: string;\n created: Date;\n updated: Date;\n expiryDate: Date;\n};\n\nexport type FullClientProfileData = {\n clientId: string;\n ipAddress: string;\n friendlyName: string;\n userIdentifier: string;\n stepQueueNames: StepQueueNameData[];\n createdBy: string;\n updatedBy: string;\n created: Date;\n updated: Date;\n expiryDate: Date;\n tokenValue: string;\n};\n\nexport type StepQueueNameData = {\n orgId: number;\n namespace: string;\n stepType: StepType;\n name: string;\n};\n\nexport type ProcessActionResponseData = {\n count: number;\n details: ProcessActionResponseDetailData[];\n};\n\nexport type ProcessActionResponseDetailData = {\n id: string;\n message: string;\n error: string;\n};\n\nexport type ProcessData = {\n processId: number;\n processType: ProcessType;\n triggerType: ProcessTriggerType;\n namespace: string;\n name: string;\n version: number | null;\n historyId: number | null;\n requestId: string;\n correlationId: string;\n status: ProcessStatus;\n input: Record<string, unknown>;\n output: Record<string, unknown>;\n authClaims: Record<string, unknown>;\n stepIdCount: number | null;\n shardName: string;\n shardInstanceId: number | null;\n steps: StepId[];\n stepRecords: StepData[];\n created: number;\n updated: number;\n createdBy: string;\n};\n\n\nexport type StepData = {\n id: number;\n processId: number;\n ref: string;\n parentId: number | null;\n parentRef: string | null;\n namespace: string;\n name: string;\n type: StepType;\n stepDefinitionHistoryId: number | null;\n status: StepStatus;\n input: Record<string, unknown>;\n output: Record<string, unknown>;\n workerId: string;\n start: number;\n schedule: number;\n priority: number;\n updated: number;\n optional: boolean;\n executionList: StepExecutionData[];\n};\n\nexport type StepExecutionData = {\n id: number;\n scheduled: number;\n polled: number;\n start: number;\n updated: number;\n executor: string;\n ref: string;\n runs: number;\n output: Record<string, unknown>;\n};\n\nexport type StepId = {\n id: number;\n processId: number;\n ref: string;\n};\n\nexport type ProcessRequestData = {\n name: string;\n namespace: string;\n version: number | null;\n requestId: string;\n correlationId: string;\n input: Record<string, unknown>;\n};\n\nexport type ProcessSearchRequest = {\n startTimeEpoch: number;\n endTimeEpoch?: number | null;\n namespace: string;\n processTypes: ProcessType[];\n triggerTypes: ProcessTriggerType[];\n names: string[];\n processIds: number[];\n correlationIds: string[];\n requestIds: string[];\n statuses: ProcessStatus[];\n limit: number;\n offset: number;\n};\n\nexport type StepSize = {\n stepQueueNameData: StepQueueNameData;\n size: number | null;\n};\n\nexport type ClientSubmitResult = {\n processId: number;\n stepId: number;\n errorMessage: string | null;\n httpStatusCode: number | null;\n};\n\nexport type WorkRequest = {\n processId: number;\n stepId: number;\n stepExecutionId: number;\n runCount: number;\n stepName: string;\n stepNamespace: string;\n stepRef: string;\n inputParam: Record<string, unknown>;\n isOptional: boolean;\n polled: number;\n scheduled: number;\n updated: number;\n priority: number;\n};\n\nexport type WorkResponse = {\n processId: number;\n stepId: number;\n stepExecutionId: number;\n runCount: number;\n output: Record<string, unknown>;\n status: StepStatus;\n rescheduleAfterSeconds: number | null;\n startedAt: number;\n};\n\nexport type WorkResult = {\n output: unknown;\n taskExecutionId: string;\n startTime: number;\n endTime: number;\n workRequest: WorkRequest;\n};\n\nexport interface FinalUnmeshedClientConfig {\n baseUrl: string;\n clientId: string;\n authToken: string;\n port: string | number;\n timeout: number;\n apiWorkerTimeout: number;\n pollTimeout: number;\n pollInterval: number;\n responsePollInterval: number;\n responsePollTimeout: number;\n responseBatchSize: number;\n}\n\nexport interface UnmeshedClientConfig {\n baseUrl: string;\n clientId: string;\n authToken: string;\n port: string | number;\n timeout?: number;\n apiWorkerTimeout?: number;\n pollTimeout?: number;\n pollInterval?: number;\n responsePollInterval?: number;\n responsePollTimeout?: number;\n responseBatchSize?: number;\n}\n\nexport interface ApiResponse<T = any> {\n data: T;\n status: number;\n headers: Record<string, string>;\n}\n\nexport interface ApiError extends Error {\n status?: number;\n response?: {\n data?: any;\n status: number;\n headers: Record<string, string>;\n };\n}\n\nexport interface QueryParams {\n [key: string]: string | number | boolean | undefined;\n}\n\nexport interface RequestConfig\n extends Omit<AxiosRequestConfig, \"baseURL\" | \"url\" | \"method\"> {\n headers?: Record<string, string>;\n}\n\nexport interface HandleRequestConfig {\n method: \"get\" | \"post\" | \"put\" | \"delete\";\n endpoint: string;\n params?: QueryParams;\n data?: Record<string, unknown>;\n config?: RequestConfig;\n}\n\nexport interface ClientRequestConfig {\n params?: QueryParams;\n data?: any;\n config?: RequestConfig;\n}\n\ninterface UnmeshedWorker {\n (input: Record<string, any>): Promise<any>;\n}\n\nexport interface UnmeshedWorkerConfig {\n worker: UnmeshedWorker;\n namespace: string;\n name: string;\n maxInProgress: number;\n}\n\nexport interface PollRequestData {\n stepQueueNameData: StepQueueNameData;\n size: number;\n}\nexport interface RenewRegistrationParams {\n friendlyName: string;\n}\n","export type WorkerFunction<T> = (items: T[]) => Promise<void>;\n\nexport class QueuedWorker<T> {\n\n private readonly queue: BlockingQueue<T>;\n private readonly pollIntervalMs: number;\n private readonly batchSize: number;\n private readonly workerFn: WorkerFunction<T>;\n private readonly timeoutMs: number;\n\n constructor(\n capacity: number,\n pollIntervalMs: number,\n batchSize: number,\n workerFn: WorkerFunction<T>,\n timeoutMs: number\n ) {\n this.queue = new BlockingQueue<T>(capacity);\n this.pollIntervalMs = pollIntervalMs;\n this.batchSize = batchSize;\n this.workerFn = workerFn;\n this.timeoutMs = timeoutMs;\n\n console.log(`Configured queued worker with ${pollIntervalMs} ms interval and batch size of ${batchSize} and a timeout of ${timeoutMs} ms`);\n // noinspection JSIgnoredPromiseFromCall\n this.start();\n }\n\n async start(): Promise<void> {\n let errorCount = 0;\n // noinspection InfiniteLoopJS\n while (true) {\n try {\n const batch = await this.queue.takeBatch(this.batchSize);\n if(batch.length > 0) {\n console.log(`Batch work ${batch.length} received`);\n await this.runWithTimeout(this.workerFn(batch), this.timeoutMs);\n }\n } catch (error) {\n errorCount++;\n console.error(`Error processing batch - error count : ${errorCount} - `, error);\n await new Promise((resolve) => setTimeout(resolve, 1000));\n }\n await new Promise((resolve) => setTimeout(resolve, this.pollIntervalMs));\n }\n }\n\n private async runWithTimeout(task: Promise<void>, timeoutMs: number): Promise<void> {\n return new Promise((resolve, reject) => {\n const timeout = setTimeout(() => reject(new Error(\"Task timed out\")), timeoutMs);\n task.then(() => {\n clearTimeout(timeout);\n resolve();\n }).catch((error) => {\n clearTimeout(timeout);\n reject(error);\n });\n });\n }\n\n async put(item: T): Promise<void> {\n await this.queue.put(item);\n }\n\n}\n\n\nclass BlockingQueue<T> {\n private queue: T[] = [];\n private readonly capacity: number;\n\n constructor(capacity: number) {\n if (capacity <= 0) {\n throw new Error(\"Capacity must be greater than 0\");\n }\n this.capacity = capacity;\n }\n\n async put(item: T): Promise<void> {\n while (this.queue.length >= this.capacity) {\n await new Promise((resolve) => setTimeout(resolve, 10));\n }\n this.queue.push(item);\n }\n\n async takeBatch(batchSize: number): Promise<T[]> {\n while (this.queue.length === 0) {\n await new Promise((resolve) => setTimeout(resolve, 10));\n }\n return this.queue.splice(0, batchSize);\n }\n\n size(): number {\n return this.queue.length;\n }\n\n isEmpty(): boolean {\n return this.queue.length === 0;\n }\n\n peek(): T | undefined {\n return this.queue[0];\n }\n}\n","import {\n ApiResponse,\n PollRequestData,\n StepQueueNameData,\n StepStatus,\n UnmeshedWorkerConfig,\n WorkRequest,\n WorkResponse,\n} from \"../types\";\nimport {UnmeshedApiClient} from \"./unmeshedApiClient\";\nimport {QueuedWorker} from \"./queuedWorker\";\n\nasync function registerPolling(\n apiClient: UnmeshedApiClient,\n data: StepQueueNameData[]\n) {\n const attempt = async (): Promise<any> => {\n try {\n const response = await apiClient.put(`/api/clients/register`, {\n data: data,\n });\n console.log(\"Successfully renewed registration for workers\", data);\n return response.data;\n } catch {\n console.error(\n \"An error occurred during polling registration. Retrying in 3 seconds...\"\n );\n await new Promise((resolve) => setTimeout(resolve, 3000));\n return attempt();\n }\n };\n\n return attempt();\n}\n\nasync function pollWorker(apiClient: UnmeshedApiClient, data: PollRequestData[]): Promise<WorkRequest[]> {\n try {\n const response: ApiResponse<WorkRequest[]> = await apiClient.post(`/api/clients/poll`, {data: data});\n if(response.data && response.data.length > 0) {\n console.log(`Received ${response.data.length} work requests`);\n }\n return response.data;\n } catch (error) {\n console.error(\"Error occurred during worker polling\", error);\n }\n}\n\nasync function postWorkerResponse(apiClient: UnmeshedApiClient, workResponses: WorkResponse[]) {\n try {\n if (workResponses.length > 0) {\n const grouped: Record<StepStatus, number[]> = workResponses.reduce((acc, response) => {\n if (!acc[response.status]) {\n acc[response.status] = [];\n }\n acc[response.status].push(response.stepId);\n return acc;\n }, {} as Record<StepStatus, number[]>);\n const resultString = Object.entries(grouped)\n .map(([status, stepIds]) => `${status}: [${stepIds.join(\", \")}]`)\n .join(\", \");\n console.log(`Posting response of size: ${workResponses.length} including ids: ${resultString}`)\n const response = await apiClient.post(`/api/clients/bulkResults`, {\n data: workResponses,\n });\n return response.data;\n }\n return {};\n } catch (error) {\n console.log(\"Error:\", error);\n }\n}\n\nasync function runPollWithTimeout(task: Promise<WorkRequest[]>, timeoutMs: number): Promise<WorkRequest[]> {\n return new Promise((resolve, reject) => {\n const timeout = setTimeout(() => reject(new Error(\"Task timed out\")), timeoutMs);\n task.then((workRequests) => {\n clearTimeout(timeout);\n resolve(workRequests);\n }).catch((error) => {\n clearTimeout(timeout);\n reject(error);\n });\n });\n}\n\nexport const continuePolling: { value: boolean } = {\n value: true,\n};\n\nexport async function pollForWorkers(\n apiClient: UnmeshedApiClient,\n workers: UnmeshedWorkerConfig[]\n) {\n\n const queuedWorker: QueuedWorker<WorkResponse> = new QueuedWorker<WorkResponse>(\n 100000,\n apiClient.config.responsePollInterval,\n apiClient.config.responseBatchSize,\n async (batchWork: WorkResponse[]) => {\n await postWorkerResponse(apiClient, batchWork);\n },\n apiClient.config.responsePollTimeout,\n );\n\n const registerPollingData = workers.map((worker) => {\n return {\n orgId: 0,\n namespace: worker.namespace,\n stepType: \"WORKER\",\n name: worker.name,\n } as StepQueueNameData;\n });\n\n await registerPolling(apiClient, registerPollingData);\n\n const pollWorkerData = workers.map((worker) => {\n return {\n stepQueueNameData: {\n orgId: 0,\n namespace: worker.namespace,\n stepType: \"WORKER\",\n name: worker.name,\n },\n size: worker.maxInProgress,\n } as PollRequestData;\n });\n\n let errorCount = 0;\n // noinspection InfiniteLoopJS\n while (continuePolling.value) {\n try {\n const workRequests: WorkRequest[] = await runPollWithTimeout(pollWorker(apiClient, pollWorkerData), apiClient.config.pollTimeout);\n for (const polledWorker of workRequests) {\n const associatedWorker: UnmeshedWorkerConfig | undefined = workers.find(\n (worker) =>\n worker.name === polledWorker.stepName &&\n worker.namespace === polledWorker.stepNamespace\n );\n\n let workerResponse: WorkResponse = {\n processId: polledWorker.processId,\n stepId: polledWorker.stepId,\n stepExecutionId: polledWorker.stepExecutionId,\n runCount: polledWorker.runCount,\n output: {},\n status: StepStatus.RUNNING,\n rescheduleAfterSeconds: null,\n startedAt: new Date().getTime(),\n };\n\n if (!associatedWorker) {\n workerResponse = {\n ...workerResponse,\n output: {\n error: `No worker found for ${polledWorker.stepName} ${polledWorker.stepNamespace}`,\n },\n status: StepStatus.TIMED_OUT,\n };\n await queuedWorker.put(workerResponse);\n continue;\n }\n\n const TIMEOUT = apiClient.config.apiWorkerTimeout;\n\n const timeoutPromise = new Promise((_, reject) => {\n setTimeout(() => reject(new Error(\"Timed out\")), TIMEOUT);\n });\n\n try {\n console.log(`Starting work ${polledWorker.processId} : ${polledWorker.stepId} : ${polledWorker.stepName} : ${polledWorker.stepRef}`);\n const result = await Promise.race([\n associatedWorker.worker(polledWorker.inputParam),\n timeoutPromise,\n ]);\n\n workerResponse = {\n ...workerResponse,\n output: {\n ...result,\n __workCompletedAt: new Date().getTime(),\n },\n status: StepStatus.COMPLETED,\n };\n } catch (error: unknown) {\n const err = error as Error;\n if (err.message && err.message === \"Timed out\") {\n workerResponse = {\n ...workerResponse,\n output: {\n error: `${err.message} based on work timeout settings in worker - ${apiClient.config.apiWorkerTimeout} ms`,\n },\n status: StepStatus.TIMED_OUT,\n };\n } else {\n workerResponse = {\n ...workerResponse,\n output: {\n error: safeStringifyError(err)\n },\n status: StepStatus.FAILED,\n };\n console.error(\"Error:\", err.message);\n }\n }\n await queuedWorker.put(workerResponse);\n }\n await new Promise((resolve) => setTimeout(resolve, apiClient.config.pollInterval));\n } catch (error) {\n errorCount++;\n console.error(`Error processing batch - error count : ${errorCount} - `, error);\n await new Promise((resolve) => setTimeout(resolve, 1000));\n }\n }\n}\n\nfunction safeStringifyError(error) {\n try {\n if (error instanceof Error) {\n const plainError = {\n name: error.name,\n message: error.message,\n stack: error.stack,\n ...error, // Include enumerable custom properties if they exist\n };\n return JSON.stringify(plainError);\n }\n return JSON.stringify(error);\n } catch (stringifyError) {\n return `Error stringification failed: ${stringifyError.message}`;\n }\n}\n\nexport async function startPollingWorkers(\n apiClient: UnmeshedApiClient,\n workers: UnmeshedWorkerConfig[],\n intervalMs: number = 5000\n) {\n async function pollCycle() {\n try {\n await pollForWorkers(apiClient, workers);\n } catch (error) {\n console.error(\"Error during worker polling:\", error);\n }\n\n setTimeout(pollCycle, intervalMs);\n }\n\n await pollCycle();\n}\n","import {\n ApiCallType,\n ProcessActionResponseData,\n ProcessData,\n ProcessRequestData,\n ProcessSearchRequest,\n StepData,\n} from \"../types\";\nimport {isAxiosError} from \"axios\";\nimport {UnmeshedApiClient} from \"./unmeshedApiClient\";\n\nconst PROCESS_PREFIX = \"api/process\";\n\nexport const runProcessSync = async (\n apiClient: UnmeshedApiClient,\n ProcessRequestData: ProcessRequestData\n): Promise<ProcessData> => {\n try {\n const response = await apiClient.post(`${PROCESS_PREFIX}/runSync`, {\n data: ProcessRequestData,\n params: {\n clientId: apiClient.getClientId(),\n },\n });\n console.log(\"Response:\", response);\n return response.data;\n } catch (error) {\n console.error(\"Some error occurred running process request : \", error);\n throw error;\n }\n};\n\nexport const runProcessAsync = async (\n apiClient: UnmeshedApiClient,\n ProcessRequestData: ProcessRequestData\n): Promise<ProcessData> => {\n try {\n const response = await apiClient.post(\n `${PROCESS_PREFIX}/runAsync`,\n {\n data: ProcessRequestData,\n params: {\n clientId: apiClient.getClientId(),\n },\n }\n );\n console.log(\"Response:\", response);\n return response.data;\n } catch (error) {\n console.error(\"Some error occurred running process request : \", error);\n throw error;\n }\n};\n\nexport const getProcessData = async (\n apiClient: UnmeshedApiClient,\n processId: number,\n includeSteps: boolean = false\n): Promise<ProcessData> => {\n if (!processId) {\n throw new Error(\"Process ID cannot be null\");\n }\n try {\n const response = await apiClient.get<ProcessData>(\n `${PROCESS_PREFIX}/context/${processId}`,\n {includeSteps}\n );\n return response.data;\n } catch (error) {\n console.error(\"Error occurred while fetching process record: \", error);\n throw error;\n }\n};\n\nexport const getStepData = async (\n apiClient: UnmeshedApiClient,\n stepId: number\n): Promise<StepData> => {\n if (!stepId) {\n throw new Error(\"Step ID cannot be null or undefined\");\n }\n try {\n const response = await apiClient.get<StepData>(\n `${PROCESS_PREFIX}/stepContext/${stepId}`\n );\n return response.data;\n } catch (error) {\n console.log(\"Error occurred while getStepData: \", error);\n throw error\n }\n};\n\nexport const bulkTerminate = async (\n apiClient: UnmeshedApiClient,\n processIds: number[],\n reason?: string\n): Promise<ProcessActionResponseData> => {\n try {\n const response = await apiClient.post(\n `${PROCESS_PREFIX}/bulkTerminate`,\n {\n params: {reason},\n data: processIds,\n }\n );\n return response.data as ProcessActionResponseData;\n } catch (error) {\n const err = error as Error;\n throw new Error(\n `Error occurred while terminating processes: ${err.message || error}`\n );\n }\n};\n\nexport const bulkResume = async (\n apiClient: UnmeshedApiClient,\n processIds: number[]\n): Promise<ProcessActionResponseData> => {\n try {\n const response = await apiClient.post(\n `${PROCESS_PREFIX}/bulkResume`,\n {\n data: processIds,\n }\n );\n return response.data as ProcessActionResponseData;\n } catch (error) {\n const err = error as Error;\n throw new Error(\n `Error occurred while resuming processes: ${err.message || error}`\n );\n }\n};\n\nexport const bulkReviewed = async (\n apiClient: UnmeshedApiClient,\n processIds: number[],\n reason?: string\n): Promise<ProcessActionResponseData> => {\n try {\n const response = await apiClient.post(\n `${PROCESS_PREFIX}/bulkReviewed`,\n {\n data: processIds,\n params: {reason},\n }\n );\n return response.data as ProcessActionResponseData;\n } catch (error) {\n const err = error as Error;\n throw new Error(\n `Error occurred while marking processes as reviewed: ${\n err.message || error\n }`\n );\n }\n};\n\nexport const rerun = async (\n apiClient: UnmeshedApiClient,\n processId: number,\n version?: number\n): Promise<ProcessData> => {\n const params: Record<string, any> = {\n processId,\n };\n\n if (version !== undefined) {\n params[\"version\"] = version;\n }\n\n try {\n const response = await apiClient.post(`${PROCESS_PREFIX}/rerun`, {\n params,\n });\n\n return response.data as ProcessData;\n } catch (error) {\n if (isAxiosError(error)) {\n throw new Error(\n `HTTP request error during rerun process: ${error.response?.status} - ${error.response?.data}`\n );\n } else {\n const err = error as Error;\n throw new Error(\n `Unexpected error during rerun process: ${err.message || err}`\n );\n }\n }\n};\n\nexport const searchProcessExecutions = async (\n apiClient: UnmeshedApiClient,\n params: ProcessSearchRequest\n) => {\n const queryParams = new URLSearchParams();\n\n if (params.startTimeEpoch !== undefined && params.startTimeEpoch !== 0)\n queryParams.set(\"startTimeEpoch\", params.startTimeEpoch.toString());\n if (params.endTimeEpoch !== undefined && params.endTimeEpoch !== 0)\n queryParams.set(\"endTimeEpoch\", (params.endTimeEpoch || 0).toString());\n if (params.namespace) queryParams.set(\"namespace\", params.namespace);\n if (params.names && params.names.length)\n queryParams.set(\"names\", params.names.join(\",\"));\n if (params.processIds && params.processIds.length)\n queryParams.set(\"processIds\", params.processIds.join(\",\"));\n if (params.correlationIds && params.correlationIds.length)\n queryParams.set(\"correlationIds\", params.correlationIds.join(\",\"));\n if (params.requestIds && params.requestIds.length)\n queryParams.set(\"requestIds\", params.requestIds.join(\",\"));\n if (params.statuses && params.statuses.length)\n queryParams.set(\"statuses\", params.statuses.join(\",\"));\n if (params.triggerTypes && params.triggerTypes.length)\n queryParams.set(\"triggerTypes\", params.triggerTypes.join(\",\"));\n\n const updatedParams = Object.fromEntries(new URLSearchParams(queryParams));\n\n try {\n const response = await apiClient.get(\n `${PROCESS_PREFIX}/api/stats/process/search`,\n updatedParams\n );\n console.log(\"Response:\", response);\n return response.data;\n } catch (error) {\n console.error(\"Error occurred while searching process executions: \", error);\n throw error;\n }\n};\n\nexport const invokeApiMappingGet = async (\n apiClient: UnmeshedApiClient,\n endpoint: string,\n id: string,\n correlationId: string,\n apiCallType: ApiCallType\n) => {\n try {\n const response = await apiClient.get(\n `${PROCESS_PREFIX}/api/call/${endpoint}`,\n {\n id: id,\n correlationId: correlationId,\n apiCallType,\n }\n );\n console.log(\"Response:\", response);\n return response.data;\n } catch (error) {\n console.error(\"Error occurred while invoking API Mapping GET: \", error);\n throw error;\n }\n};\n\nexport const invokeApiMappingPost = async (\n apiClient: UnmeshedApiClient,\n endpoint: string,\n input: Record<string, any>,\n id: string,\n correlationId: string,\n apiCallType: ApiCallType = ApiCallType.ASYNC\n): Promise<any> => {\n try {\n const response = await apiClient.post(\n `${PROCESS_PREFIX}/api/call/${endpoint}`,\n {\n data: input,\n params: {\n id: id,\n correlationId: correlationId,\n apiCallType,\n },\n }\n );\n\n return response.data;\n } catch (error) {\n console.error(\"Error occurred while invoking API Mapping POST: \", error);\n throw error;\n }\n};\n","import { RenewRegistrationParams } from \"../types\";\nimport { UnmeshedApiClient } from \"./unmeshedApiClient\";\n\nexport const renewRegistration = async (\n apiClient: UnmeshedApiClient,\n params: RenewRegistrationParams\n): Promise<string> => {\n try {\n const response = await apiClient.put(\"/api/clients/register\", {\n params: { ...params },\n });\n console.debug(\"Response from server:\", response);\n return response.data;\n } catch (error) {\n console.error(\"Error occurred during registration renewal:\", error);\n throw error;\n }\n};\n"],"mappings":"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","names":["axios","ApiCallType","WebhookSource","SQAuthUserType","StepType","StepStatus","ProcessStatus","ProcessTriggerType","ProcessType","response","import_axios","ProcessRequestData","ProcessRequestData"]}
|
|
1
|
+
{"version":3,"sources":["../src/index.ts","../src/apis/unmeshedApiClient.ts","../src/utils/unmeshedCommonUtils.ts","../src/types/index.ts","../src/apis/queuedWorker.ts","../src/apis/pollerClientImpl.ts","../src/apis/processClientImpl.ts","../src/apis/registrationClientImpl.ts"],"sourcesContent":["import {\n ApiCallType,\n ProcessRequestData,\n ProcessSearchRequest,\n RenewRegistrationParams,\n UnmeshedClientConfig,\n UnmeshedWorkerConfig,\n} from './types';\nimport { UnmeshedApiClient } from './apis/unmeshedApiClient';\nimport { startPollingWorkers } from './apis/pollerClientImpl';\nimport {\n bulkResume,\n bulkReviewed,\n bulkTerminate,\n getProcessData,\n getStepData,\n invokeApiMappingGet,\n invokeApiMappingPost,\n rerun,\n runProcessAsync,\n runProcessSync,\n searchProcessExecutions,\n} from './apis/processClientImpl';\nimport { renewRegistration } from './apis/registrationClientImpl';\n\n// noinspection JSUnusedGlobalSymbols\nexport class UnmeshedClient {\n private client: UnmeshedApiClient;\n\n constructor(config: UnmeshedClientConfig) {\n this.client = new UnmeshedApiClient(config);\n }\n\n startPolling(workers: UnmeshedWorkerConfig[]) {\n startPollingWorkers(this.client, workers);\n }\n\n runProcessSync(ProcessRequestData: ProcessRequestData) {\n return runProcessSync(this.client, ProcessRequestData);\n }\n\n runProcessAsync(ProcessRequestData: ProcessRequestData) {\n return runProcessAsync(this.client, ProcessRequestData);\n }\n\n getProcessData(processId: number, includeSteps: boolean) {\n return getProcessData(this.client, processId, includeSteps);\n }\n\n getStepData(stepId: number) {\n return getStepData(this.client, stepId);\n }\n\n bulkTerminate(processIds: number[], reason?: string) {\n return bulkTerminate(this.client, processIds, reason);\n }\n\n bulkResume(processIds: number[]) {\n return bulkResume(this.client, processIds);\n }\n\n bulkReviewed(processIds: number[], reason?: string) {\n return bulkReviewed(this.client, processIds, reason);\n }\n\n reRun(processId: number, version?: number) {\n return rerun(this.client, processId, version);\n }\n\n searchProcessExecution(params: ProcessSearchRequest) {\n return searchProcessExecutions(this.client, params);\n }\n\n invokeApiMappingGet(\n apiClient: UnmeshedApiClient,\n endpoint: string,\n id: string,\n correlationId: string,\n apiCallType: ApiCallType\n ) {\n return invokeApiMappingGet(apiClient, endpoint, id, correlationId, apiCallType);\n }\n\n invokeApiMappingPost(\n endpoint: string,\n input: Record<string, any>,\n id: string,\n correlationId: string,\n apiCallType: ApiCallType\n ) {\n return invokeApiMappingPost(this.client, endpoint, input, id, correlationId, apiCallType);\n }\n\n reNewRegistration(params: RenewRegistrationParams) {\n return renewRegistration(this.client, params);\n }\n}\n\nexport * from './types';\n","import axios, { AxiosError, AxiosInstance, AxiosRequestConfig, AxiosResponse, RawAxiosRequestHeaders } from 'axios';\nimport {\n ApiResponse,\n ClientRequestConfig,\n FinalUnmeshedClientConfig,\n HandleRequestConfig,\n QueryParams,\n RequestConfig,\n UnmeshedClientConfig,\n} from '../types';\nimport { UnmeshedCommonUtils } from '../utils/unmeshedCommonUtils';\n\nexport class UnmeshedApiClient {\n private axiosInstance: AxiosInstance | null = null;\n private clientId: string | undefined = undefined;\n private _config: FinalUnmeshedClientConfig;\n\n constructor(unmeshedClientConfig: UnmeshedClientConfig) {\n console.log('Initializing Unmeshed ApiClient');\n\n this._config = createUnmeshedClientConfig(unmeshedClientConfig);\n\n console.log(this._config);\n\n this.clientId = this._config.clientId;\n\n if (!this._config.baseUrl) {\n throw new Error('baseUrl is required');\n }\n\n const baseURL = this._config.port ? `${this._config.baseUrl}:${this._config.port}` : this._config.baseUrl;\n\n this.axiosInstance = axios.create({\n baseURL,\n timeout: this._config.timeout,\n headers: {\n 'Content-Type': 'application/json',\n Authorization: `Bearer client.sdk.${this._config.clientId}.${UnmeshedCommonUtils.createSecureHash(\n this._config.authToken\n )}`,\n } as RawAxiosRequestHeaders,\n });\n }\n\n private async handleRequest<T>({\n method,\n endpoint,\n params,\n data,\n config,\n }: HandleRequestConfig): Promise<ApiResponse<T>> {\n if (!this.axiosInstance) {\n throw new Error('ApiClient must be initialized before making requests');\n }\n\n try {\n const response: AxiosResponse<T> = await this.axiosInstance.request<T>({\n method,\n url: endpoint,\n params,\n data,\n ...config,\n } as AxiosRequestConfig);\n\n return {\n data: response.data,\n status: response.status,\n headers: response.headers as Record<string, string>,\n };\n } catch (error) {\n if (axios.isAxiosError(error)) {\n console.error('Request failed:', error.message);\n throw this.handleError(error);\n }\n console.error('Unexpected error:', (error as Error).message);\n throw error;\n }\n }\n\n private handleError(error: AxiosError): Error {\n console.error('Error details:', {\n message: error.message,\n status: error.response?.status,\n data: error.response?.data,\n });\n\n let response = error?.response?.data as ErrorResponse;\n if (response?.errorMessage) {\n return new Error(`${response.errorMessage} [Status code: ${error.response?.status || ''}]`);\n }\n\n return new Error(error.message, { cause: error.response?.data || {} });\n }\n\n public async get<T = any>(endpoint: string, params?: QueryParams, config?: RequestConfig): Promise<ApiResponse<T>> {\n return this.handleRequest<T>({\n method: 'get',\n endpoint: endpoint,\n params: params,\n config: config,\n });\n }\n\n public async post<T = any>(endpoint: string, clientRequestConfig: ClientRequestConfig): Promise<ApiResponse<T>> {\n return this.handleRequest<T>({\n method: 'post',\n endpoint: endpoint,\n ...clientRequestConfig,\n });\n }\n\n public async put<T = any>(endpoint: string, clientRequestConfig: ClientRequestConfig): Promise<ApiResponse<T>> {\n return this.handleRequest<T>({\n method: 'put',\n endpoint: endpoint,\n ...clientRequestConfig,\n });\n }\n\n public async delete<T = any>(endpoint: string, clientRequestConfig: ClientRequestConfig): Promise<ApiResponse<T>> {\n return this.handleRequest<T>({\n method: 'delete',\n endpoint: endpoint,\n ...clientRequestConfig,\n });\n }\n\n public getClientId(): string | undefined {\n return this.clientId;\n }\n\n get config(): FinalUnmeshedClientConfig {\n return this._config;\n }\n}\n\ninterface ErrorResponse {\n errorMessage?: string;\n [key: string]: any; // To allow other unexpected properties\n}\n\nexport function createUnmeshedClientConfig(config: UnmeshedClientConfig): Required<FinalUnmeshedClientConfig> {\n return {\n baseUrl: config.baseUrl,\n clientId: config.clientId,\n authToken: config.authToken,\n port: config.port ?? 443,\n timeout: config.timeout ?? 5000,\n pollInterval: config.pollInterval ?? 100,\n apiWorkerTimeout: config.apiWorkerTimeout ?? 10000,\n pollTimeout: config.pollTimeout ?? 10000,\n responsePollInterval: config.responsePollInterval ?? 100,\n responsePollTimeout: config.responsePollTimeout ?? 10000,\n responseBatchSize: config.responseBatchSize ?? 50,\n };\n}\n","import { createHash } from 'crypto';\n\nexport class UnmeshedCommonUtils {\n static createSecureHash(input: string): string {\n try {\n const hash = createHash('sha256');\n hash.update(input, 'utf8');\n return hash.digest('hex');\n } catch (e) {\n throw new Error('Error creating hash');\n }\n }\n}\n","import { AxiosRequestConfig } from 'axios';\n\nexport enum ApiCallType {\n SYNC = 'SYNC',\n ASYNC = 'ASYNC',\n STREAM = 'STREAM',\n}\n\nexport interface ApiMappingData {\n endpoint: string;\n processDefNamespace: string;\n processDefName: string;\n processDefVersion: number;\n authType: string;\n authClaims: string;\n createdBy: string;\n updatedBy: string;\n created: Date;\n updated: Date;\n}\n\nexport type ApiMappingWebhookData = {\n endpoint: string;\n name: string;\n uniqueId: string;\n urlSecret: string;\n description: string;\n userIdentifier: string;\n webhookSource: WebhookSource;\n webhookSourceConfig: Record<string, string>;\n expiryDate: Date;\n userType: SQAuthUserType;\n createdBy: string;\n updatedBy: string;\n created: Date;\n updated: Date;\n};\n\nexport enum WebhookSource {\n MS_TEAMS = 'MS_TEAMS',\n NOT_DEFINED = 'NOT_DEFINED',\n}\n\nexport enum SQAuthUserType {\n USER = 'USER',\n API = 'API',\n INTERNAL = 'INTERNAL',\n}\n\nexport enum StepType {\n LIST = 'LIST',\n HTTP = 'HTTP',\n WORKER = 'WORKER',\n SWITCH = 'SWITCH',\n PARALLEL = 'PARALLEL',\n FAIL = 'FAIL',\n PYTHON = 'PYTHON',\n JAVASCRIPT = 'JAVASCRIPT',\n JQ = 'JQ',\n SLACK = 'SLACK',\n GRAPHQL = 'GRAPHQL',\n WAIT = 'WAIT',\n BUILTIN = 'BUILTIN',\n NOOP = 'NOOP',\n AI_AGENT = 'AI_AGENT',\n EXIT = 'EXIT',\n DEPENDSON = 'DEPENDSON',\n PERSISTED_STATE = 'PERSISTED_STATE',\n UPDATE_STEP = 'UPDATE_STEP',\n INTEGRATION = 'INTEGRATION',\n FOREACH = 'FOREACH',\n WHILE = 'WHILE',\n SUB_PROCESS = 'SUB_PROCESS',\n FLOW_GATEWAY = 'FLOW_GATEWAY',\n DECISION_ENGINE = 'DECISION_ENGINE',\n SQLITE = 'SQLITE',\n MANAGED = 'MANAGED',\n}\n\nexport enum StepStatus {\n PENDING = 'PENDING',\n SCHEDULED = 'SCHEDULED',\n RUNNING = 'RUNNING',\n PAUSED = 'PAUSED',\n COMPLETED = 'COMPLETED',\n FAILED = 'FAILED',\n TIMED_OUT = 'TIMED_OUT',\n SKIPPED = 'SKIPPED',\n CANCELLED = 'CANCELLED',\n}\n\nexport enum ProcessStatus {\n RUNNING = 'RUNNING',\n COMPLETED = 'COMPLETED',\n FAILED = 'FAILED',\n TIMED_OUT = 'TIMED_OUT',\n CANCELLED = 'CANCELLED',\n TERMINATED = 'TERMINATED',\n REVIEWED = 'REVIEWED',\n}\n\nexport enum ProcessTriggerType {\n MANUAL = 'MANUAL',\n SCHEDULED = 'SCHEDULED',\n API_MAPPING = 'API_MAPPING',\n WEBHOOK = 'WEBHOOK',\n API = 'API',\n SUB_PROCESS = 'SUB_PROCESS',\n}\n\nexport enum ProcessType {\n STANDARD = 'STANDARD',\n DYNAMIC = 'DYNAMIC',\n API_ORCHESTRATION = 'API_ORCHESTRATION',\n INTERNAL = 'INTERNAL',\n}\n\nexport type ClientProfileData = {\n clientId: string;\n ipAddress: string;\n friendlyName: string;\n userIdentifier: string;\n stepQueueNames: StepQueueNameData[];\n createdBy: string;\n updatedBy: string;\n created: Date;\n updated: Date;\n expiryDate: Date;\n};\n\nexport type FullClientProfileData = {\n clientId: string;\n ipAddress: string;\n friendlyName: string;\n userIdentifier: string;\n stepQueueNames: StepQueueNameData[];\n createdBy: string;\n updatedBy: string;\n created: Date;\n updated: Date;\n expiryDate: Date;\n tokenValue: string;\n};\n\nexport type StepQueueNameData = {\n orgId: number;\n namespace: string;\n stepType: StepType;\n name: string;\n};\n\nexport type ProcessActionResponseData = {\n count: number;\n details: ProcessActionResponseDetailData[];\n};\n\nexport type ProcessActionResponseDetailData = {\n id: string;\n message: string;\n error: string;\n};\n\nexport type ProcessData = {\n processId: number;\n processType: ProcessType;\n triggerType: ProcessTriggerType;\n namespace: string;\n name: string;\n version: number | null;\n historyId: number | null;\n requestId: string;\n correlationId: string;\n status: ProcessStatus;\n input: Record<string, unknown>;\n output: Record<string, unknown>;\n authClaims: Record<string, unknown>;\n stepIdCount: number | null;\n shardName: string;\n shardInstanceId: number | null;\n steps: StepId[];\n stepRecords: StepData[];\n created: number;\n updated: number;\n createdBy: string;\n};\n\nexport type StepData = {\n id: number;\n processId: number;\n ref: string;\n parentId: number | null;\n parentRef: string | null;\n namespace: string;\n name: string;\n type: StepType;\n stepDefinitionHistoryId: number | null;\n status: StepStatus;\n input: Record<string, unknown>;\n output: Record<string, unknown>;\n workerId: string;\n start: number;\n schedule: number;\n priority: number;\n updated: number;\n optional: boolean;\n executionList: StepExecutionData[];\n};\n\nexport type StepExecutionData = {\n id: number;\n scheduled: number;\n polled: number;\n start: number;\n updated: number;\n executor: string;\n ref: string;\n runs: number;\n output: Record<string, unknown>;\n};\n\nexport type StepId = {\n id: number;\n processId: number;\n ref: string;\n};\n\nexport type ProcessRequestData = {\n name: string;\n namespace: string;\n version: number | null;\n requestId?: string;\n correlationId?: string;\n input?: Record<string, unknown>;\n};\n\nexport type ProcessSearchRequest = {\n startTimeEpoch: number;\n endTimeEpoch?: number | null;\n namespace?: string;\n processTypes?: ProcessType[];\n triggerTypes?: ProcessTriggerType[];\n names?: string[];\n processIds?: number[];\n correlationIds?: string[];\n requestIds?: string[];\n statuses?: ProcessStatus[];\n limit?: number;\n offset?: number;\n};\nexport type StepSize = {\n stepQueueNameData: StepQueueNameData;\n size: number | null;\n};\n\nexport type ClientSubmitResult = {\n processId: number;\n stepId: number;\n errorMessage: string | null;\n httpStatusCode: number | null;\n};\n\nexport type WorkRequest = {\n processId: number;\n stepId: number;\n stepExecutionId: number;\n runCount: number;\n stepName: string;\n stepNamespace: string;\n stepRef: string;\n inputParam: Record<string, unknown>;\n isOptional: boolean;\n polled: number;\n scheduled: number;\n updated: number;\n priority: number;\n};\n\nexport type WorkResponse = {\n processId: number;\n stepId: number;\n stepExecutionId: number;\n runCount: number;\n output: Record<string, unknown>;\n status: StepStatus;\n rescheduleAfterSeconds: number | null;\n startedAt: number;\n};\n\nexport type WorkResult = {\n output: unknown;\n taskExecutionId: string;\n startTime: number;\n endTime: number;\n workRequest: WorkRequest;\n};\n\nexport interface FinalUnmeshedClientConfig {\n baseUrl: string;\n clientId: string;\n authToken: string;\n port: string | number;\n timeout: number;\n apiWorkerTimeout: number;\n pollTimeout: number;\n pollInterval: number;\n responsePollInterval: number;\n responsePollTimeout: number;\n responseBatchSize: number;\n}\n\nexport interface UnmeshedClientConfig {\n baseUrl: string;\n clientId: string;\n authToken: string;\n port: string | number;\n timeout?: number;\n apiWorkerTimeout?: number;\n pollTimeout?: number;\n pollInterval?: number;\n responsePollInterval?: number;\n responsePollTimeout?: number;\n responseBatchSize?: number;\n}\n\nexport interface ApiResponse<T = any> {\n data: T;\n status: number;\n headers: Record<string, string>;\n}\n\nexport interface ApiError extends Error {\n status?: number;\n response?: {\n data?: any;\n status: number;\n headers: Record<string, string>;\n };\n}\n\nexport interface QueryParams {\n [key: string]: string | number | boolean | undefined;\n}\n\nexport interface RequestConfig extends Omit<AxiosRequestConfig, 'baseURL' | 'url' | 'method'> {\n headers?: Record<string, string>;\n}\n\nexport interface HandleRequestConfig {\n method: 'get' | 'post' | 'put' | 'delete';\n endpoint: string;\n params?: QueryParams;\n data?: Record<string, unknown>;\n config?: RequestConfig;\n}\n\nexport interface ClientRequestConfig {\n params?: QueryParams;\n data?: any;\n config?: RequestConfig;\n}\n\ninterface UnmeshedWorker {\n (input: Record<string, any>): Promise<any>;\n}\n\nexport interface UnmeshedWorkerConfig {\n worker: UnmeshedWorker;\n namespace: string;\n name: string;\n maxInProgress: number;\n}\n\nexport interface PollRequestData {\n stepQueueNameData: StepQueueNameData;\n size: number;\n}\nexport interface RenewRegistrationParams {\n friendlyName: string;\n}\n","export type WorkerFunction<T> = (items: T[]) => Promise<void>;\n\nexport class QueuedWorker<T> {\n private readonly queue: BlockingQueue<T>;\n private readonly pollIntervalMs: number;\n private readonly batchSize: number;\n private readonly workerFn: WorkerFunction<T>;\n private readonly timeoutMs: number;\n\n constructor(\n capacity: number,\n pollIntervalMs: number,\n batchSize: number,\n workerFn: WorkerFunction<T>,\n timeoutMs: number\n ) {\n this.queue = new BlockingQueue<T>(capacity);\n this.pollIntervalMs = pollIntervalMs;\n this.batchSize = batchSize;\n this.workerFn = workerFn;\n this.timeoutMs = timeoutMs;\n\n console.log(\n `Configured queued worker with ${pollIntervalMs} ms interval and batch size of ${batchSize} and a timeout of ${timeoutMs} ms`\n );\n // noinspection JSIgnoredPromiseFromCall\n this.start();\n }\n\n async start(): Promise<void> {\n let errorCount = 0;\n // noinspection InfiniteLoopJS\n while (true) {\n try {\n const batch = await this.queue.takeBatch(this.batchSize);\n if (batch.length > 0) {\n console.log(`Batch work ${batch.length} received`);\n await this.runWithTimeout(this.workerFn(batch), this.timeoutMs);\n }\n } catch (error) {\n errorCount++;\n console.error(`Error processing batch - error count : ${errorCount} - `, error);\n await new Promise((resolve) => setTimeout(resolve, 1000));\n }\n await new Promise((resolve) => setTimeout(resolve, this.pollIntervalMs));\n }\n }\n\n private async runWithTimeout(task: Promise<void>, timeoutMs: number): Promise<void> {\n return new Promise((resolve, reject) => {\n const timeout = setTimeout(() => reject(new Error('Task timed out')), timeoutMs);\n task\n .then(() => {\n clearTimeout(timeout);\n resolve();\n })\n .catch((error) => {\n clearTimeout(timeout);\n reject(error);\n });\n });\n }\n\n async put(item: T): Promise<void> {\n await this.queue.put(item);\n }\n}\n\nclass BlockingQueue<T> {\n private queue: T[] = [];\n private readonly capacity: number;\n\n constructor(capacity: number) {\n if (capacity <= 0) {\n throw new Error('Capacity must be greater than 0');\n }\n this.capacity = capacity;\n }\n\n async put(item: T): Promise<void> {\n while (this.queue.length >= this.capacity) {\n await new Promise((resolve) => setTimeout(resolve, 10));\n }\n this.queue.push(item);\n }\n\n async takeBatch(batchSize: number): Promise<T[]> {\n while (this.queue.length === 0) {\n await new Promise((resolve) => setTimeout(resolve, 10));\n }\n return this.queue.splice(0, batchSize);\n }\n\n size(): number {\n return this.queue.length;\n }\n\n isEmpty(): boolean {\n return this.queue.length === 0;\n }\n\n peek(): T | undefined {\n return this.queue[0];\n }\n}\n","import {\n ApiResponse,\n PollRequestData,\n StepQueueNameData,\n StepStatus,\n UnmeshedWorkerConfig,\n WorkRequest,\n WorkResponse,\n} from '../types';\nimport { UnmeshedApiClient } from './unmeshedApiClient';\nimport { QueuedWorker } from './queuedWorker';\n\nasync function registerPolling(apiClient: UnmeshedApiClient, data: StepQueueNameData[]) {\n const attempt = async (): Promise<any> => {\n try {\n const response = await apiClient.put(`/api/clients/register`, {\n data: data,\n });\n console.log('Successfully renewed registration for workers', data);\n return response.data;\n } catch {\n console.error('An error occurred during polling registration. Retrying in 3 seconds...');\n await new Promise((resolve) => setTimeout(resolve, 3000));\n return attempt();\n }\n };\n\n return attempt();\n}\n\nasync function pollWorker(apiClient: UnmeshedApiClient, data: PollRequestData[]): Promise<WorkRequest[]> {\n try {\n const response: ApiResponse<WorkRequest[]> = await apiClient.post(`/api/clients/poll`, { data: data });\n if (response.data && response.data.length > 0) {\n console.log(`Received ${response.data.length} work requests`);\n }\n return response.data;\n } catch (error) {\n console.error('Error occurred during worker polling', error);\n return [];\n }\n}\n\nasync function postWorkerResponse(apiClient: UnmeshedApiClient, workResponses: WorkResponse[]) {\n try {\n if (workResponses.length > 0) {\n const grouped: Record<StepStatus, number[]> = workResponses.reduce(\n (acc, response) => {\n if (!acc[response.status]) {\n acc[response.status] = [];\n }\n acc[response.status].push(response.stepId);\n return acc;\n },\n {} as Record<StepStatus, number[]>\n );\n const resultString = Object.entries(grouped)\n .map(([status, stepIds]) => `${status}: [${stepIds.join(', ')}]`)\n .join(', ');\n console.log(`Posting response of size: ${workResponses.length} including ids: ${resultString}`);\n const response = await apiClient.post(`/api/clients/bulkResults`, {\n data: workResponses,\n });\n return response.data;\n }\n return {};\n } catch (error) {\n console.log('Error:', error);\n }\n}\n\nasync function runPollWithTimeout(task: Promise<WorkRequest[]>, timeoutMs: number): Promise<WorkRequest[]> {\n return new Promise((resolve, reject) => {\n const timeout = setTimeout(() => reject(new Error('Task timed out')), timeoutMs);\n task\n .then((workRequests) => {\n clearTimeout(timeout);\n resolve(workRequests);\n })\n .catch((error) => {\n clearTimeout(timeout);\n reject(error);\n });\n });\n}\n\nexport const continuePolling: { value: boolean } = {\n value: true,\n};\n\nexport async function pollForWorkers(apiClient: UnmeshedApiClient, workers: UnmeshedWorkerConfig[]) {\n const queuedWorker: QueuedWorker<WorkResponse> = new QueuedWorker<WorkResponse>(\n 100000,\n apiClient.config.responsePollInterval,\n apiClient.config.responseBatchSize,\n async (batchWork: WorkResponse[]) => {\n await postWorkerResponse(apiClient, batchWork);\n },\n apiClient.config.responsePollTimeout\n );\n\n const registerPollingData = workers.map((worker) => {\n return {\n orgId: 0,\n namespace: worker.namespace,\n stepType: 'WORKER',\n name: worker.name,\n } as StepQueueNameData;\n });\n\n await registerPolling(apiClient, registerPollingData);\n\n const pollWorkerData = workers.map((worker) => {\n return {\n stepQueueNameData: {\n orgId: 0,\n namespace: worker.namespace,\n stepType: 'WORKER',\n name: worker.name,\n },\n size: worker.maxInProgress,\n } as PollRequestData;\n });\n\n let errorCount = 0;\n // noinspection InfiniteLoopJS\n while (continuePolling.value) {\n try {\n const workRequests: WorkRequest[] = await runPollWithTimeout(\n pollWorker(apiClient, pollWorkerData),\n apiClient.config.pollTimeout\n );\n for (const polledWorker of workRequests) {\n const associatedWorker: UnmeshedWorkerConfig | undefined = workers.find(\n (worker) => worker.name === polledWorker.stepName && worker.namespace === polledWorker.stepNamespace\n );\n\n let workerResponse: WorkResponse = {\n processId: polledWorker.processId,\n stepId: polledWorker.stepId,\n stepExecutionId: polledWorker.stepExecutionId,\n runCount: polledWorker.runCount,\n output: {},\n status: StepStatus.RUNNING,\n rescheduleAfterSeconds: null,\n startedAt: new Date().getTime(),\n };\n\n if (!associatedWorker) {\n workerResponse = {\n ...workerResponse,\n output: {\n error: `No worker found for ${polledWorker.stepName} ${polledWorker.stepNamespace}`,\n },\n status: StepStatus.TIMED_OUT,\n };\n await queuedWorker.put(workerResponse);\n continue;\n }\n\n const TIMEOUT = apiClient.config.apiWorkerTimeout;\n\n const timeoutPromise = new Promise((_, reject) => {\n setTimeout(() => reject(new Error('Timed out')), TIMEOUT);\n });\n\n try {\n console.log(\n `Starting work ${polledWorker.processId} : ${polledWorker.stepId} : ${polledWorker.stepName} : ${polledWorker.stepRef}`\n );\n const result = await Promise.race([associatedWorker.worker(polledWorker.inputParam), timeoutPromise]);\n\n workerResponse = {\n ...workerResponse,\n output: {\n ...result,\n __workCompletedAt: new Date().getTime(),\n },\n status: StepStatus.COMPLETED,\n };\n } catch (error: unknown) {\n const err = error as Error;\n if (err.message && err.message === 'Timed out') {\n workerResponse = {\n ...workerResponse,\n output: {\n error: `${err.message} based on work timeout settings in worker - ${apiClient.config.apiWorkerTimeout} ms`,\n },\n status: StepStatus.TIMED_OUT,\n };\n } else {\n workerResponse = {\n ...workerResponse,\n output: {\n error: safeStringifyError(err),\n },\n status: StepStatus.FAILED,\n };\n console.error('Error:', err.message);\n }\n }\n await queuedWorker.put(workerResponse);\n }\n await new Promise((resolve) => setTimeout(resolve, apiClient.config.pollInterval));\n } catch (error) {\n errorCount++;\n console.error(`Error processing batch - error count : ${errorCount} - `, error);\n await new Promise((resolve) => setTimeout(resolve, 1000));\n }\n }\n}\n\nfunction safeStringifyError(error: Error) {\n try {\n if (error instanceof Error) {\n const plainError = {\n ...error,\n name: error.name,\n message: error.message,\n stack: error.stack,\n };\n return JSON.stringify(plainError);\n }\n return JSON.stringify(error);\n } catch (stringifyError: unknown) {\n if (stringifyError instanceof Error) {\n return `Error stringification failed: ${stringifyError.message}`;\n }\n return 'Error stringification failed: An unknown error occurred during stringification.';\n }\n}\n\nexport async function startPollingWorkers(\n apiClient: UnmeshedApiClient,\n workers: UnmeshedWorkerConfig[],\n intervalMs: number = 5000\n) {\n async function pollCycle() {\n try {\n await pollForWorkers(apiClient, workers);\n } catch (error) {\n console.error('Error during worker polling:', error);\n }\n\n setTimeout(pollCycle, intervalMs);\n }\n\n await pollCycle();\n}\n","import {\n ApiCallType,\n ProcessActionResponseData,\n ProcessData,\n ProcessRequestData,\n ProcessSearchRequest,\n StepData,\n} from '../types';\nimport { isAxiosError } from 'axios';\nimport { UnmeshedApiClient } from './unmeshedApiClient';\n\nconst PROCESS_PREFIX = 'api/process';\n\nexport const runProcessSync = async (\n apiClient: UnmeshedApiClient,\n ProcessRequestData: ProcessRequestData\n): Promise<ProcessData> => {\n try {\n const response = await apiClient.post(`${PROCESS_PREFIX}/runSync`, {\n data: ProcessRequestData,\n params: {\n clientId: apiClient.getClientId(),\n },\n });\n console.log('Response:', response);\n return response.data;\n } catch (error) {\n console.error('Some error occurred running process request : ', error);\n throw error;\n }\n};\n\nexport const runProcessAsync = async (\n apiClient: UnmeshedApiClient,\n ProcessRequestData: ProcessRequestData\n): Promise<ProcessData> => {\n try {\n const response = await apiClient.post(`${PROCESS_PREFIX}/runAsync`, {\n data: ProcessRequestData,\n params: {\n clientId: apiClient.getClientId(),\n },\n });\n console.log('Response:', response);\n return response.data;\n } catch (error) {\n console.error('Some error occurred running process request : ', error);\n throw error;\n }\n};\n\nexport const getProcessData = async (\n apiClient: UnmeshedApiClient,\n processId: number,\n includeSteps: boolean = false\n): Promise<ProcessData> => {\n if (!processId) {\n throw new Error('Process ID cannot be null');\n }\n try {\n const response = await apiClient.get<ProcessData>(`${PROCESS_PREFIX}/context/${processId}`, { includeSteps });\n return response.data;\n } catch (error) {\n console.error('Error occurred while fetching process record: ', error);\n throw error;\n }\n};\n\nexport const getStepData = async (apiClient: UnmeshedApiClient, stepId: number): Promise<StepData> => {\n if (!stepId) {\n throw new Error('Step ID cannot be null or undefined');\n }\n try {\n const response = await apiClient.get<StepData>(`${PROCESS_PREFIX}/stepContext/${stepId}`);\n return response.data;\n } catch (error) {\n console.log('Error occurred while getStepData: ', error);\n throw error;\n }\n};\n\nexport const bulkTerminate = async (\n apiClient: UnmeshedApiClient,\n processIds: number[],\n reason?: string\n): Promise<ProcessActionResponseData> => {\n try {\n const response = await apiClient.post(`${PROCESS_PREFIX}/bulkTerminate`, {\n params: { reason },\n data: processIds,\n });\n return response.data as ProcessActionResponseData;\n } catch (error) {\n const err = error as Error;\n throw new Error(`Error occurred while terminating processes: ${err.message || error}`);\n }\n};\n\nexport const bulkResume = async (\n apiClient: UnmeshedApiClient,\n processIds: number[]\n): Promise<ProcessActionResponseData> => {\n try {\n const response = await apiClient.post(`${PROCESS_PREFIX}/bulkResume`, {\n data: processIds,\n });\n return response.data as ProcessActionResponseData;\n } catch (error) {\n const err = error as Error;\n throw new Error(`Error occurred while resuming processes: ${err.message || error}`);\n }\n};\n\nexport const bulkReviewed = async (\n apiClient: UnmeshedApiClient,\n processIds: number[],\n reason?: string\n): Promise<ProcessActionResponseData> => {\n try {\n const response = await apiClient.post(`${PROCESS_PREFIX}/bulkReviewed`, {\n data: processIds,\n params: { reason },\n });\n return response.data as ProcessActionResponseData;\n } catch (error) {\n const err = error as Error;\n throw new Error(`Error occurred while marking processes as reviewed: ${err.message || error}`);\n }\n};\n\nexport const rerun = async (\n apiClient: UnmeshedApiClient,\n processId: number,\n version?: number\n): Promise<ProcessData> => {\n const params: Record<string, any> = {\n processId,\n };\n\n if (version !== undefined) {\n params['version'] = version;\n }\n\n try {\n const response = await apiClient.post(`${PROCESS_PREFIX}/rerun`, {\n params,\n });\n\n return response.data as ProcessData;\n } catch (error) {\n if (isAxiosError(error)) {\n throw new Error(`HTTP request error during rerun process: ${error.response?.status} - ${error.response?.data}`);\n } else {\n const err = error as Error;\n throw new Error(`Unexpected error during rerun process: ${err.message || err}`);\n }\n }\n};\n\nexport const searchProcessExecutions = async (apiClient: UnmeshedApiClient, params: ProcessSearchRequest) => {\n const queryParams = new URLSearchParams();\n\n if (params.startTimeEpoch !== undefined && params.startTimeEpoch !== 0)\n queryParams.set('startTimeEpoch', params.startTimeEpoch.toString());\n if (params.endTimeEpoch !== undefined && params.endTimeEpoch !== 0)\n queryParams.set('endTimeEpoch', (params.endTimeEpoch || 0).toString());\n if (params.namespace) queryParams.set('namespace', params.namespace);\n if (params.names && params.names.length) queryParams.set('names', params.names.join(','));\n if (params.processIds && params.processIds.length) queryParams.set('processIds', params.processIds.join(','));\n if (params.correlationIds && params.correlationIds.length)\n queryParams.set('correlationIds', params.correlationIds.join(','));\n if (params.requestIds && params.requestIds.length) queryParams.set('requestIds', params.requestIds.join(','));\n if (params.statuses && params.statuses.length) queryParams.set('statuses', params.statuses.join(','));\n if (params.triggerTypes && params.triggerTypes.length) queryParams.set('triggerTypes', params.triggerTypes.join(','));\n\n const updatedParams = Object.fromEntries(new URLSearchParams(queryParams));\n\n try {\n const response = await apiClient.get(`api/stats/process/search`, updatedParams);\n console.log('Response:', response);\n return response.data;\n } catch (error) {\n console.error('Error occurred while searching process executions: ', error);\n throw error;\n }\n};\n\nexport const invokeApiMappingGet = async (\n apiClient: UnmeshedApiClient,\n endpoint: string,\n id: string,\n correlationId: string,\n apiCallType: ApiCallType\n) => {\n try {\n const response = await apiClient.get(`${PROCESS_PREFIX}/api/call/${endpoint}`, {\n id: id,\n correlationId: correlationId,\n apiCallType,\n });\n console.log('Response:', response);\n return response.data;\n } catch (error) {\n console.error('Error occurred while invoking API Mapping GET: ', error);\n throw error;\n }\n};\n\nexport const invokeApiMappingPost = async (\n apiClient: UnmeshedApiClient,\n endpoint: string,\n input: Record<string, any>,\n id: string,\n correlationId: string,\n apiCallType: ApiCallType = ApiCallType.ASYNC\n): Promise<any> => {\n try {\n const response = await apiClient.post(`${PROCESS_PREFIX}/api/call/${endpoint}`, {\n data: input,\n params: {\n id: id,\n correlationId: correlationId,\n apiCallType,\n },\n });\n\n return response.data;\n } catch (error) {\n console.error('Error occurred while invoking API Mapping POST: ', error);\n throw error;\n }\n};\n","import { RenewRegistrationParams } from '../types';\nimport { UnmeshedApiClient } from './unmeshedApiClient';\n\nexport const renewRegistration = async (\n apiClient: UnmeshedApiClient,\n params: RenewRegistrationParams\n): Promise<string> => {\n try {\n const response = await apiClient.put('/api/clients/register', {\n params: { ...params },\n });\n console.debug('Response from server:', response);\n return response.data;\n } catch (error) {\n console.error('Error occurred during registration renewal:', error);\n throw error;\n }\n};\n"],"mappings":"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","names":["axios","ApiCallType","WebhookSource","SQAuthUserType","StepType","StepStatus","ProcessStatus","ProcessTriggerType","ProcessType","response","import_axios","ProcessRequestData","ProcessRequestData"]}
|
package/dist/index.mjs
CHANGED
|
@@ -155,25 +155,33 @@ var SQAuthUserType = /* @__PURE__ */ ((SQAuthUserType2) => {
|
|
|
155
155
|
return SQAuthUserType2;
|
|
156
156
|
})(SQAuthUserType || {});
|
|
157
157
|
var StepType = /* @__PURE__ */ ((StepType2) => {
|
|
158
|
-
StepType2["
|
|
158
|
+
StepType2["LIST"] = "LIST";
|
|
159
159
|
StepType2["HTTP"] = "HTTP";
|
|
160
|
-
StepType2["
|
|
160
|
+
StepType2["WORKER"] = "WORKER";
|
|
161
|
+
StepType2["SWITCH"] = "SWITCH";
|
|
162
|
+
StepType2["PARALLEL"] = "PARALLEL";
|
|
161
163
|
StepType2["FAIL"] = "FAIL";
|
|
162
164
|
StepType2["PYTHON"] = "PYTHON";
|
|
163
165
|
StepType2["JAVASCRIPT"] = "JAVASCRIPT";
|
|
164
166
|
StepType2["JQ"] = "JQ";
|
|
165
|
-
StepType2["
|
|
167
|
+
StepType2["SLACK"] = "SLACK";
|
|
168
|
+
StepType2["GRAPHQL"] = "GRAPHQL";
|
|
169
|
+
StepType2["WAIT"] = "WAIT";
|
|
166
170
|
StepType2["BUILTIN"] = "BUILTIN";
|
|
167
171
|
StepType2["NOOP"] = "NOOP";
|
|
168
|
-
StepType2["
|
|
172
|
+
StepType2["AI_AGENT"] = "AI_AGENT";
|
|
173
|
+
StepType2["EXIT"] = "EXIT";
|
|
169
174
|
StepType2["DEPENDSON"] = "DEPENDSON";
|
|
175
|
+
StepType2["PERSISTED_STATE"] = "PERSISTED_STATE";
|
|
176
|
+
StepType2["UPDATE_STEP"] = "UPDATE_STEP";
|
|
170
177
|
StepType2["INTEGRATION"] = "INTEGRATION";
|
|
171
|
-
StepType2["EXIT"] = "EXIT";
|
|
172
|
-
StepType2["SUB_PROCESS"] = "SUB_PROCESS";
|
|
173
|
-
StepType2["LIST"] = "LIST";
|
|
174
|
-
StepType2["PARALLEL"] = "PARALLEL";
|
|
175
178
|
StepType2["FOREACH"] = "FOREACH";
|
|
176
|
-
StepType2["
|
|
179
|
+
StepType2["WHILE"] = "WHILE";
|
|
180
|
+
StepType2["SUB_PROCESS"] = "SUB_PROCESS";
|
|
181
|
+
StepType2["FLOW_GATEWAY"] = "FLOW_GATEWAY";
|
|
182
|
+
StepType2["DECISION_ENGINE"] = "DECISION_ENGINE";
|
|
183
|
+
StepType2["SQLITE"] = "SQLITE";
|
|
184
|
+
StepType2["MANAGED"] = "MANAGED";
|
|
177
185
|
return StepType2;
|
|
178
186
|
})(StepType || {});
|
|
179
187
|
var StepStatus = /* @__PURE__ */ ((StepStatus2) => {
|
|
@@ -228,7 +236,9 @@ var QueuedWorker = class {
|
|
|
228
236
|
this.batchSize = batchSize;
|
|
229
237
|
this.workerFn = workerFn;
|
|
230
238
|
this.timeoutMs = timeoutMs;
|
|
231
|
-
console.log(
|
|
239
|
+
console.log(
|
|
240
|
+
`Configured queued worker with ${pollIntervalMs} ms interval and batch size of ${batchSize} and a timeout of ${timeoutMs} ms`
|
|
241
|
+
);
|
|
232
242
|
this.start();
|
|
233
243
|
}
|
|
234
244
|
async start() {
|
|
@@ -306,9 +316,7 @@ async function registerPolling(apiClient, data) {
|
|
|
306
316
|
console.log("Successfully renewed registration for workers", data);
|
|
307
317
|
return response.data;
|
|
308
318
|
} catch {
|
|
309
|
-
console.error(
|
|
310
|
-
"An error occurred during polling registration. Retrying in 3 seconds..."
|
|
311
|
-
);
|
|
319
|
+
console.error("An error occurred during polling registration. Retrying in 3 seconds...");
|
|
312
320
|
await new Promise((resolve) => setTimeout(resolve, 3e3));
|
|
313
321
|
return attempt();
|
|
314
322
|
}
|
|
@@ -324,18 +332,22 @@ async function pollWorker(apiClient, data) {
|
|
|
324
332
|
return response.data;
|
|
325
333
|
} catch (error) {
|
|
326
334
|
console.error("Error occurred during worker polling", error);
|
|
335
|
+
return [];
|
|
327
336
|
}
|
|
328
337
|
}
|
|
329
338
|
async function postWorkerResponse(apiClient, workResponses) {
|
|
330
339
|
try {
|
|
331
340
|
if (workResponses.length > 0) {
|
|
332
|
-
const grouped = workResponses.reduce(
|
|
333
|
-
|
|
334
|
-
acc[response2.status]
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
341
|
+
const grouped = workResponses.reduce(
|
|
342
|
+
(acc, response2) => {
|
|
343
|
+
if (!acc[response2.status]) {
|
|
344
|
+
acc[response2.status] = [];
|
|
345
|
+
}
|
|
346
|
+
acc[response2.status].push(response2.stepId);
|
|
347
|
+
return acc;
|
|
348
|
+
},
|
|
349
|
+
{}
|
|
350
|
+
);
|
|
339
351
|
const resultString = Object.entries(grouped).map(([status, stepIds]) => `${status}: [${stepIds.join(", ")}]`).join(", ");
|
|
340
352
|
console.log(`Posting response of size: ${workResponses.length} including ids: ${resultString}`);
|
|
341
353
|
const response = await apiClient.post(`/api/clients/bulkResults`, {
|
|
@@ -396,7 +408,10 @@ async function pollForWorkers(apiClient, workers) {
|
|
|
396
408
|
let errorCount = 0;
|
|
397
409
|
while (continuePolling.value) {
|
|
398
410
|
try {
|
|
399
|
-
const workRequests = await runPollWithTimeout(
|
|
411
|
+
const workRequests = await runPollWithTimeout(
|
|
412
|
+
pollWorker(apiClient, pollWorkerData),
|
|
413
|
+
apiClient.config.pollTimeout
|
|
414
|
+
);
|
|
400
415
|
for (const polledWorker of workRequests) {
|
|
401
416
|
const associatedWorker = workers.find(
|
|
402
417
|
(worker) => worker.name === polledWorker.stepName && worker.namespace === polledWorker.stepNamespace
|
|
@@ -427,11 +442,10 @@ async function pollForWorkers(apiClient, workers) {
|
|
|
427
442
|
setTimeout(() => reject(new Error("Timed out")), TIMEOUT);
|
|
428
443
|
});
|
|
429
444
|
try {
|
|
430
|
-
console.log(
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
]);
|
|
445
|
+
console.log(
|
|
446
|
+
`Starting work ${polledWorker.processId} : ${polledWorker.stepId} : ${polledWorker.stepName} : ${polledWorker.stepRef}`
|
|
447
|
+
);
|
|
448
|
+
const result = await Promise.race([associatedWorker.worker(polledWorker.inputParam), timeoutPromise]);
|
|
435
449
|
workerResponse = {
|
|
436
450
|
...workerResponse,
|
|
437
451
|
output: {
|
|
@@ -475,17 +489,19 @@ function safeStringifyError(error) {
|
|
|
475
489
|
try {
|
|
476
490
|
if (error instanceof Error) {
|
|
477
491
|
const plainError = {
|
|
492
|
+
...error,
|
|
478
493
|
name: error.name,
|
|
479
494
|
message: error.message,
|
|
480
|
-
stack: error.stack
|
|
481
|
-
...error
|
|
482
|
-
// Include enumerable custom properties if they exist
|
|
495
|
+
stack: error.stack
|
|
483
496
|
};
|
|
484
497
|
return JSON.stringify(plainError);
|
|
485
498
|
}
|
|
486
499
|
return JSON.stringify(error);
|
|
487
500
|
} catch (stringifyError) {
|
|
488
|
-
|
|
501
|
+
if (stringifyError instanceof Error) {
|
|
502
|
+
return `Error stringification failed: ${stringifyError.message}`;
|
|
503
|
+
}
|
|
504
|
+
return "Error stringification failed: An unknown error occurred during stringification.";
|
|
489
505
|
}
|
|
490
506
|
}
|
|
491
507
|
async function startPollingWorkers(apiClient, workers, intervalMs = 5e3) {
|
|
@@ -520,15 +536,12 @@ var runProcessSync = async (apiClient, ProcessRequestData2) => {
|
|
|
520
536
|
};
|
|
521
537
|
var runProcessAsync = async (apiClient, ProcessRequestData2) => {
|
|
522
538
|
try {
|
|
523
|
-
const response = await apiClient.post(
|
|
524
|
-
|
|
525
|
-
{
|
|
526
|
-
|
|
527
|
-
params: {
|
|
528
|
-
clientId: apiClient.getClientId()
|
|
529
|
-
}
|
|
539
|
+
const response = await apiClient.post(`${PROCESS_PREFIX}/runAsync`, {
|
|
540
|
+
data: ProcessRequestData2,
|
|
541
|
+
params: {
|
|
542
|
+
clientId: apiClient.getClientId()
|
|
530
543
|
}
|
|
531
|
-
);
|
|
544
|
+
});
|
|
532
545
|
console.log("Response:", response);
|
|
533
546
|
return response.data;
|
|
534
547
|
} catch (error) {
|
|
@@ -541,10 +554,7 @@ var getProcessData = async (apiClient, processId, includeSteps = false) => {
|
|
|
541
554
|
throw new Error("Process ID cannot be null");
|
|
542
555
|
}
|
|
543
556
|
try {
|
|
544
|
-
const response = await apiClient.get(
|
|
545
|
-
`${PROCESS_PREFIX}/context/${processId}`,
|
|
546
|
-
{ includeSteps }
|
|
547
|
-
);
|
|
557
|
+
const response = await apiClient.get(`${PROCESS_PREFIX}/context/${processId}`, { includeSteps });
|
|
548
558
|
return response.data;
|
|
549
559
|
} catch (error) {
|
|
550
560
|
console.error("Error occurred while fetching process record: ", error);
|
|
@@ -556,9 +566,7 @@ var getStepData = async (apiClient, stepId) => {
|
|
|
556
566
|
throw new Error("Step ID cannot be null or undefined");
|
|
557
567
|
}
|
|
558
568
|
try {
|
|
559
|
-
const response = await apiClient.get(
|
|
560
|
-
`${PROCESS_PREFIX}/stepContext/${stepId}`
|
|
561
|
-
);
|
|
569
|
+
const response = await apiClient.get(`${PROCESS_PREFIX}/stepContext/${stepId}`);
|
|
562
570
|
return response.data;
|
|
563
571
|
} catch (error) {
|
|
564
572
|
console.log("Error occurred while getStepData: ", error);
|
|
@@ -567,52 +575,37 @@ var getStepData = async (apiClient, stepId) => {
|
|
|
567
575
|
};
|
|
568
576
|
var bulkTerminate = async (apiClient, processIds, reason) => {
|
|
569
577
|
try {
|
|
570
|
-
const response = await apiClient.post(
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
data: processIds
|
|
575
|
-
}
|
|
576
|
-
);
|
|
578
|
+
const response = await apiClient.post(`${PROCESS_PREFIX}/bulkTerminate`, {
|
|
579
|
+
params: { reason },
|
|
580
|
+
data: processIds
|
|
581
|
+
});
|
|
577
582
|
return response.data;
|
|
578
583
|
} catch (error) {
|
|
579
584
|
const err = error;
|
|
580
|
-
throw new Error(
|
|
581
|
-
`Error occurred while terminating processes: ${err.message || error}`
|
|
582
|
-
);
|
|
585
|
+
throw new Error(`Error occurred while terminating processes: ${err.message || error}`);
|
|
583
586
|
}
|
|
584
587
|
};
|
|
585
588
|
var bulkResume = async (apiClient, processIds) => {
|
|
586
589
|
try {
|
|
587
|
-
const response = await apiClient.post(
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
data: processIds
|
|
591
|
-
}
|
|
592
|
-
);
|
|
590
|
+
const response = await apiClient.post(`${PROCESS_PREFIX}/bulkResume`, {
|
|
591
|
+
data: processIds
|
|
592
|
+
});
|
|
593
593
|
return response.data;
|
|
594
594
|
} catch (error) {
|
|
595
595
|
const err = error;
|
|
596
|
-
throw new Error(
|
|
597
|
-
`Error occurred while resuming processes: ${err.message || error}`
|
|
598
|
-
);
|
|
596
|
+
throw new Error(`Error occurred while resuming processes: ${err.message || error}`);
|
|
599
597
|
}
|
|
600
598
|
};
|
|
601
599
|
var bulkReviewed = async (apiClient, processIds, reason) => {
|
|
602
600
|
try {
|
|
603
|
-
const response = await apiClient.post(
|
|
604
|
-
|
|
605
|
-
{
|
|
606
|
-
|
|
607
|
-
params: { reason }
|
|
608
|
-
}
|
|
609
|
-
);
|
|
601
|
+
const response = await apiClient.post(`${PROCESS_PREFIX}/bulkReviewed`, {
|
|
602
|
+
data: processIds,
|
|
603
|
+
params: { reason }
|
|
604
|
+
});
|
|
610
605
|
return response.data;
|
|
611
606
|
} catch (error) {
|
|
612
607
|
const err = error;
|
|
613
|
-
throw new Error(
|
|
614
|
-
`Error occurred while marking processes as reviewed: ${err.message || error}`
|
|
615
|
-
);
|
|
608
|
+
throw new Error(`Error occurred while marking processes as reviewed: ${err.message || error}`);
|
|
616
609
|
}
|
|
617
610
|
};
|
|
618
611
|
var rerun = async (apiClient, processId, version) => {
|
|
@@ -629,14 +622,10 @@ var rerun = async (apiClient, processId, version) => {
|
|
|
629
622
|
return response.data;
|
|
630
623
|
} catch (error) {
|
|
631
624
|
if (isAxiosError(error)) {
|
|
632
|
-
throw new Error(
|
|
633
|
-
`HTTP request error during rerun process: ${error.response?.status} - ${error.response?.data}`
|
|
634
|
-
);
|
|
625
|
+
throw new Error(`HTTP request error during rerun process: ${error.response?.status} - ${error.response?.data}`);
|
|
635
626
|
} else {
|
|
636
627
|
const err = error;
|
|
637
|
-
throw new Error(
|
|
638
|
-
`Unexpected error during rerun process: ${err.message || err}`
|
|
639
|
-
);
|
|
628
|
+
throw new Error(`Unexpected error during rerun process: ${err.message || err}`);
|
|
640
629
|
}
|
|
641
630
|
}
|
|
642
631
|
};
|
|
@@ -647,24 +636,16 @@ var searchProcessExecutions = async (apiClient, params) => {
|
|
|
647
636
|
if (params.endTimeEpoch !== void 0 && params.endTimeEpoch !== 0)
|
|
648
637
|
queryParams.set("endTimeEpoch", (params.endTimeEpoch || 0).toString());
|
|
649
638
|
if (params.namespace) queryParams.set("namespace", params.namespace);
|
|
650
|
-
if (params.names && params.names.length)
|
|
651
|
-
|
|
652
|
-
if (params.processIds && params.processIds.length)
|
|
653
|
-
queryParams.set("processIds", params.processIds.join(","));
|
|
639
|
+
if (params.names && params.names.length) queryParams.set("names", params.names.join(","));
|
|
640
|
+
if (params.processIds && params.processIds.length) queryParams.set("processIds", params.processIds.join(","));
|
|
654
641
|
if (params.correlationIds && params.correlationIds.length)
|
|
655
642
|
queryParams.set("correlationIds", params.correlationIds.join(","));
|
|
656
|
-
if (params.requestIds && params.requestIds.length)
|
|
657
|
-
|
|
658
|
-
if (params.
|
|
659
|
-
queryParams.set("statuses", params.statuses.join(","));
|
|
660
|
-
if (params.triggerTypes && params.triggerTypes.length)
|
|
661
|
-
queryParams.set("triggerTypes", params.triggerTypes.join(","));
|
|
643
|
+
if (params.requestIds && params.requestIds.length) queryParams.set("requestIds", params.requestIds.join(","));
|
|
644
|
+
if (params.statuses && params.statuses.length) queryParams.set("statuses", params.statuses.join(","));
|
|
645
|
+
if (params.triggerTypes && params.triggerTypes.length) queryParams.set("triggerTypes", params.triggerTypes.join(","));
|
|
662
646
|
const updatedParams = Object.fromEntries(new URLSearchParams(queryParams));
|
|
663
647
|
try {
|
|
664
|
-
const response = await apiClient.get(
|
|
665
|
-
`${PROCESS_PREFIX}/api/stats/process/search`,
|
|
666
|
-
updatedParams
|
|
667
|
-
);
|
|
648
|
+
const response = await apiClient.get(`api/stats/process/search`, updatedParams);
|
|
668
649
|
console.log("Response:", response);
|
|
669
650
|
return response.data;
|
|
670
651
|
} catch (error) {
|
|
@@ -674,14 +655,11 @@ var searchProcessExecutions = async (apiClient, params) => {
|
|
|
674
655
|
};
|
|
675
656
|
var invokeApiMappingGet = async (apiClient, endpoint, id, correlationId, apiCallType) => {
|
|
676
657
|
try {
|
|
677
|
-
const response = await apiClient.get(
|
|
678
|
-
|
|
679
|
-
|
|
680
|
-
|
|
681
|
-
|
|
682
|
-
apiCallType
|
|
683
|
-
}
|
|
684
|
-
);
|
|
658
|
+
const response = await apiClient.get(`${PROCESS_PREFIX}/api/call/${endpoint}`, {
|
|
659
|
+
id,
|
|
660
|
+
correlationId,
|
|
661
|
+
apiCallType
|
|
662
|
+
});
|
|
685
663
|
console.log("Response:", response);
|
|
686
664
|
return response.data;
|
|
687
665
|
} catch (error) {
|
|
@@ -691,17 +669,14 @@ var invokeApiMappingGet = async (apiClient, endpoint, id, correlationId, apiCall
|
|
|
691
669
|
};
|
|
692
670
|
var invokeApiMappingPost = async (apiClient, endpoint, input, id, correlationId, apiCallType = "ASYNC" /* ASYNC */) => {
|
|
693
671
|
try {
|
|
694
|
-
const response = await apiClient.post(
|
|
695
|
-
|
|
696
|
-
{
|
|
697
|
-
|
|
698
|
-
|
|
699
|
-
|
|
700
|
-
correlationId,
|
|
701
|
-
apiCallType
|
|
702
|
-
}
|
|
672
|
+
const response = await apiClient.post(`${PROCESS_PREFIX}/api/call/${endpoint}`, {
|
|
673
|
+
data: input,
|
|
674
|
+
params: {
|
|
675
|
+
id,
|
|
676
|
+
correlationId,
|
|
677
|
+
apiCallType
|
|
703
678
|
}
|
|
704
|
-
);
|
|
679
|
+
});
|
|
705
680
|
return response.data;
|
|
706
681
|
} catch (error) {
|
|
707
682
|
console.error("Error occurred while invoking API Mapping POST: ", error);
|
|
@@ -760,23 +735,10 @@ var UnmeshedClient = class {
|
|
|
760
735
|
return searchProcessExecutions(this.client, params);
|
|
761
736
|
}
|
|
762
737
|
invokeApiMappingGet(apiClient, endpoint, id, correlationId, apiCallType) {
|
|
763
|
-
return invokeApiMappingGet(
|
|
764
|
-
apiClient,
|
|
765
|
-
endpoint,
|
|
766
|
-
id,
|
|
767
|
-
correlationId,
|
|
768
|
-
apiCallType
|
|
769
|
-
);
|
|
738
|
+
return invokeApiMappingGet(apiClient, endpoint, id, correlationId, apiCallType);
|
|
770
739
|
}
|
|
771
740
|
invokeApiMappingPost(endpoint, input, id, correlationId, apiCallType) {
|
|
772
|
-
return invokeApiMappingPost(
|
|
773
|
-
this.client,
|
|
774
|
-
endpoint,
|
|
775
|
-
input,
|
|
776
|
-
id,
|
|
777
|
-
correlationId,
|
|
778
|
-
apiCallType
|
|
779
|
-
);
|
|
741
|
+
return invokeApiMappingPost(this.client, endpoint, input, id, correlationId, apiCallType);
|
|
780
742
|
}
|
|
781
743
|
reNewRegistration(params) {
|
|
782
744
|
return renewRegistration(this.client, params);
|