@io-orkes/conductor-javascript 2.2.1 → 2.3.0

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.js CHANGED
@@ -22474,6 +22474,7 @@ __export(index_exports, {
22474
22474
  ConductorSdkError: () => ConductorSdkError,
22475
22475
  Consistency: () => Consistency,
22476
22476
  DefaultLogger: () => DefaultLogger,
22477
+ EventClient: () => EventClient,
22477
22478
  HumanExecutor: () => HumanExecutor,
22478
22479
  MAX_RETRIES: () => MAX_RETRIES,
22479
22480
  MetadataClient: () => MetadataClient,
@@ -23827,6 +23828,70 @@ var EventResource = class {
23827
23828
  });
23828
23829
  }
23829
23830
  };
23831
+ var EventExecutionResource = class {
23832
+ /**
23833
+ * Get All active Event Handlers
23834
+ */
23835
+ static getEventHandlersForEvent1(options) {
23836
+ return (options?.client ?? client).get({
23837
+ security: [
23838
+ {
23839
+ name: "X-Authorization",
23840
+ type: "apiKey"
23841
+ }
23842
+ ],
23843
+ url: "/api/event/execution",
23844
+ ...options
23845
+ });
23846
+ }
23847
+ /**
23848
+ * Get event handlers for a given event
23849
+ */
23850
+ static getEventHandlersForEvent2(options) {
23851
+ return (options.client ?? client).get({
23852
+ security: [
23853
+ {
23854
+ name: "X-Authorization",
23855
+ type: "apiKey"
23856
+ }
23857
+ ],
23858
+ url: "/api/event/execution/{eventHandlerName}",
23859
+ ...options
23860
+ });
23861
+ }
23862
+ };
23863
+ var EventMessageResource = class {
23864
+ /**
23865
+ * Get all event handlers with statistics
23866
+ */
23867
+ static getEvents(options) {
23868
+ return (options?.client ?? client).get({
23869
+ security: [
23870
+ {
23871
+ name: "X-Authorization",
23872
+ type: "apiKey"
23873
+ }
23874
+ ],
23875
+ url: "/api/event/message",
23876
+ ...options
23877
+ });
23878
+ }
23879
+ /**
23880
+ * Get event messages for a given event
23881
+ */
23882
+ static getMessages(options) {
23883
+ return (options.client ?? client).get({
23884
+ security: [
23885
+ {
23886
+ name: "X-Authorization",
23887
+ type: "apiKey"
23888
+ }
23889
+ ],
23890
+ url: "/api/event/message/{event}",
23891
+ ...options
23892
+ });
23893
+ }
23894
+ };
23830
23895
  var HumanTask = class {
23831
23896
  /**
23832
23897
  * API for backpopulating index data
@@ -28218,6 +28283,434 @@ var MetadataClient = class {
28218
28283
  }
28219
28284
  };
28220
28285
 
28286
+ // src/core/eventClient.ts
28287
+ var EventClient = class {
28288
+ _client;
28289
+ constructor(client2) {
28290
+ this._client = client2;
28291
+ }
28292
+ /**
28293
+ * Get all the event handlers
28294
+ * @returns {Promise<EventHandler[]>}
28295
+ * @throws {ConductorSdkError}
28296
+ */
28297
+ async getAllEventHandlers() {
28298
+ try {
28299
+ const { data } = await EventResource.getEventHandlers({
28300
+ client: this._client,
28301
+ throwOnError: true
28302
+ });
28303
+ return data;
28304
+ } catch (error) {
28305
+ handleSdkError(error, `Failed to get all event handlers`);
28306
+ }
28307
+ }
28308
+ /**
28309
+ * Add event handlers
28310
+ * @param {EventHandler[]} eventHandlers
28311
+ * @returns {Promise<void>}
28312
+ * @throws {ConductorSdkError}
28313
+ */
28314
+ async addEventHandlers(eventHandlers) {
28315
+ try {
28316
+ await EventResource.addEventHandler({
28317
+ body: eventHandlers,
28318
+ client: this._client,
28319
+ throwOnError: true
28320
+ });
28321
+ } catch (error) {
28322
+ handleSdkError(error, `Failed to add event handlers`);
28323
+ }
28324
+ }
28325
+ /**
28326
+ * Add an event handler
28327
+ * @param {EventHandler} eventHandler
28328
+ * @returns {Promise<void>}
28329
+ * @throws {ConductorSdkError}
28330
+ */
28331
+ async addEventHandler(eventHandler) {
28332
+ try {
28333
+ await EventResource.addEventHandler({
28334
+ body: [eventHandler],
28335
+ client: this._client,
28336
+ throwOnError: true
28337
+ });
28338
+ } catch (error) {
28339
+ handleSdkError(error, `Failed to add event handler`);
28340
+ }
28341
+ }
28342
+ /**
28343
+ * Update an event handler
28344
+ * @param {EventHandler} eventHandler
28345
+ * @returns {Promise<void>}
28346
+ * @throws {ConductorSdkError}
28347
+ */
28348
+ async updateEventHandler(eventHandler) {
28349
+ try {
28350
+ await EventResource.updateEventHandler({
28351
+ body: eventHandler,
28352
+ client: this._client,
28353
+ throwOnError: true
28354
+ });
28355
+ } catch (error) {
28356
+ handleSdkError(error, `Failed to update event handler`);
28357
+ }
28358
+ }
28359
+ /**
28360
+ * Handle an incoming event
28361
+ * @param {Record<string, string>} data
28362
+ * @returns {Promise<void>}
28363
+ * @throws {ConductorSdkError}
28364
+ */
28365
+ async handleIncomingEvent(data) {
28366
+ try {
28367
+ await EventResource.handleIncomingEvent({
28368
+ body: data,
28369
+ client: this._client,
28370
+ throwOnError: true
28371
+ });
28372
+ } catch (error) {
28373
+ handleSdkError(error, `Failed to handle incoming event`);
28374
+ }
28375
+ }
28376
+ /**
28377
+ * Get an event handler by name
28378
+ * @param {string} eventHandlerName
28379
+ * @returns {Promise<EventHandler>}
28380
+ * @throws {ConductorSdkError}
28381
+ */
28382
+ async getEventHandlerByName(eventHandlerName) {
28383
+ try {
28384
+ const { response, data } = await EventResource.getEventHandlerByName({
28385
+ client: this._client,
28386
+ throwOnError: true,
28387
+ path: { name: eventHandlerName }
28388
+ });
28389
+ if (response.headers.get("content-length") === "0") {
28390
+ throw new Error("Response is empty");
28391
+ }
28392
+ return data;
28393
+ } catch (error) {
28394
+ handleSdkError(
28395
+ error,
28396
+ `Failed to get event handler by name ${eventHandlerName}`
28397
+ );
28398
+ }
28399
+ }
28400
+ /**
28401
+ * Get all queue configs
28402
+ * @returns {Promise<Record<string, string>>}
28403
+ * @throws {ConductorSdkError}
28404
+ */
28405
+ async getAllQueueConfigs() {
28406
+ try {
28407
+ const { data } = await EventResource.getQueueNames({
28408
+ client: this._client,
28409
+ throwOnError: true
28410
+ });
28411
+ return data;
28412
+ } catch (error) {
28413
+ handleSdkError(error, `Failed to get all queue configs`);
28414
+ }
28415
+ }
28416
+ /**
28417
+ * Delete queue config
28418
+ * @param {string} queueType
28419
+ * @param {string} queueName
28420
+ * @returns {Promise<void>}
28421
+ * @throws {ConductorSdkError}
28422
+ */
28423
+ async deleteQueueConfig(queueType, queueName) {
28424
+ try {
28425
+ await EventResource.deleteQueueConfig({
28426
+ path: { queueType, queueName },
28427
+ client: this._client,
28428
+ throwOnError: true
28429
+ });
28430
+ } catch (error) {
28431
+ handleSdkError(
28432
+ error,
28433
+ `Failed to delete queue config ${queueType} ${queueName}`
28434
+ );
28435
+ }
28436
+ }
28437
+ /**
28438
+ * Get queue config
28439
+ * @param {string} queueType
28440
+ * @param {string} queueName
28441
+ * @returns {Promise<Record<string, unknown>>}
28442
+ * @throws {ConductorSdkError}
28443
+ */
28444
+ async getQueueConfig(queueType, queueName) {
28445
+ try {
28446
+ const { data } = await EventResource.getQueueConfig({
28447
+ path: { queueType, queueName },
28448
+ client: this._client,
28449
+ throwOnError: true
28450
+ });
28451
+ if (Object.keys(data).length === 0) {
28452
+ throw new Error("Response is empty");
28453
+ }
28454
+ return data;
28455
+ } catch (error) {
28456
+ handleSdkError(error, `Failed to get queue config`);
28457
+ }
28458
+ }
28459
+ /**
28460
+ * Get event handlers for a given event
28461
+ * @param {string} event
28462
+ * @param {boolean} [activeOnly=false] Only return active handlers.
28463
+ * @returns {Promise<EventHandler[]>}
28464
+ * @throws {ConductorSdkError}
28465
+ */
28466
+ async getEventHandlersForEvent(event, activeOnly = false) {
28467
+ try {
28468
+ const { data } = await EventResource.getEventHandlersForEvent({
28469
+ client: this._client,
28470
+ throwOnError: true,
28471
+ path: { event },
28472
+ query: { activeOnly }
28473
+ });
28474
+ return data;
28475
+ } catch (error) {
28476
+ handleSdkError(error, `Failed to get event handlers for event: ${event}`);
28477
+ }
28478
+ }
28479
+ /**
28480
+ * Remove an event handler by name
28481
+ * @param {string} name
28482
+ * @returns {Promise<void>}
28483
+ * @throws {ConductorSdkError}
28484
+ */
28485
+ async removeEventHandler(name) {
28486
+ try {
28487
+ await EventResource.removeEventHandlerStatus({
28488
+ client: this._client,
28489
+ throwOnError: true,
28490
+ path: { name }
28491
+ });
28492
+ } catch (error) {
28493
+ handleSdkError(error, `Failed to remove event handler: ${name}`);
28494
+ }
28495
+ }
28496
+ /**
28497
+ * Get tags for an event handler
28498
+ * @param {string} name
28499
+ * @returns {Promise<Tag[]>}
28500
+ * @throws {ConductorSdkError}
28501
+ */
28502
+ async getTagsForEventHandler(name) {
28503
+ try {
28504
+ const { data } = await EventResource.getTagsForEventHandler({
28505
+ client: this._client,
28506
+ throwOnError: true,
28507
+ path: { name }
28508
+ });
28509
+ return data;
28510
+ } catch (error) {
28511
+ handleSdkError(error, `Failed to get tags for event handler: ${name}`);
28512
+ }
28513
+ }
28514
+ /**
28515
+ * Put tags for an event handler
28516
+ * @param {string} name
28517
+ * @param {Tag[]} tags
28518
+ * @returns {Promise<void>}
28519
+ * @throws {ConductorSdkError}
28520
+ */
28521
+ async putTagForEventHandler(name, tags) {
28522
+ try {
28523
+ await EventResource.putTagForEventHandler({
28524
+ client: this._client,
28525
+ throwOnError: true,
28526
+ path: { name },
28527
+ body: tags
28528
+ });
28529
+ } catch (error) {
28530
+ handleSdkError(error, `Failed to put tags for event handler: ${name}`);
28531
+ }
28532
+ }
28533
+ /**
28534
+ * Delete tags for an event handler
28535
+ * @param {string} name
28536
+ * @param {Tag[]} tags
28537
+ * @returns {Promise<void>}
28538
+ * @throws {ConductorSdkError}
28539
+ */
28540
+ async deleteTagsForEventHandler(name, tags) {
28541
+ try {
28542
+ await EventResource.deleteTagForEventHandler({
28543
+ client: this._client,
28544
+ throwOnError: true,
28545
+ path: { name },
28546
+ body: tags
28547
+ });
28548
+ } catch (error) {
28549
+ handleSdkError(
28550
+ error,
28551
+ `Failed to delete tags for an event handler: ${name}`
28552
+ );
28553
+ }
28554
+ }
28555
+ /**
28556
+ * Delete a tag for an event handler
28557
+ * @param {string} name
28558
+ * @param {Tag} tag
28559
+ * @returns {Promise<void>}
28560
+ * @throws {ConductorSdkError}
28561
+ */
28562
+ async deleteTagForEventHandler(name, tag) {
28563
+ try {
28564
+ await EventResource.deleteTagForEventHandler({
28565
+ client: this._client,
28566
+ throwOnError: true,
28567
+ path: { name },
28568
+ body: [tag]
28569
+ });
28570
+ } catch (error) {
28571
+ handleSdkError(
28572
+ error,
28573
+ `Failed to delete a tag for an event handler: ${name}`
28574
+ );
28575
+ }
28576
+ }
28577
+ /**
28578
+ * Test connectivity for a given queue using a workflow with EVENT task and an EventHandler
28579
+ * @param {ConnectivityTestInput} input
28580
+ * @returns {Promise<ConnectivityTestResult>}
28581
+ * @throws {ConductorSdkError}
28582
+ */
28583
+ async testConnectivity(input) {
28584
+ try {
28585
+ const { data } = await EventResource.testConnectivity({
28586
+ client: this._client,
28587
+ throwOnError: true,
28588
+ body: input
28589
+ });
28590
+ return data;
28591
+ } catch (error) {
28592
+ handleSdkError(error, `Failed to test connectivity`);
28593
+ }
28594
+ }
28595
+ /**
28596
+ * Create or update queue config by name
28597
+ * @deprecated Prefer server's newer endpoints if available
28598
+ * @param {string} queueType
28599
+ * @param {string} queueName
28600
+ * @param {string} config
28601
+ * @returns {Promise<void>}
28602
+ * @throws {ConductorSdkError}
28603
+ */
28604
+ async putQueueConfig(queueType, queueName, config) {
28605
+ try {
28606
+ await EventResource.putQueueConfig({
28607
+ client: this._client,
28608
+ throwOnError: true,
28609
+ path: { queueType, queueName },
28610
+ body: config
28611
+ });
28612
+ } catch (error) {
28613
+ handleSdkError(error, `Failed to put queue config`);
28614
+ }
28615
+ }
28616
+ /**
28617
+ * Test endpoint (as exposed by API)
28618
+ * @returns {Promise<EventHandler>}
28619
+ * @throws {ConductorSdkError}
28620
+ */
28621
+ async test() {
28622
+ try {
28623
+ const { data } = await EventResource.test({
28624
+ client: this._client,
28625
+ throwOnError: true
28626
+ });
28627
+ return data;
28628
+ } catch (error) {
28629
+ handleSdkError(error, `Failed to call test endpoint`);
28630
+ }
28631
+ }
28632
+ /**
28633
+ * Get all active event handlers (execution view)
28634
+ * @returns {Promise<SearchResultHandledEventResponse>}
28635
+ * @throws {ConductorSdkError}
28636
+ */
28637
+ async getAllActiveEventHandlers() {
28638
+ try {
28639
+ const { data } = await EventExecutionResource.getEventHandlersForEvent1({
28640
+ client: this._client,
28641
+ throwOnError: true
28642
+ });
28643
+ return data;
28644
+ } catch (error) {
28645
+ handleSdkError(
28646
+ error,
28647
+ `Failed to get all active event handlers (execution view)`
28648
+ );
28649
+ }
28650
+ }
28651
+ /**
28652
+ * Get event executions for a specific handler
28653
+ * @param {string} eventHandlerName
28654
+ * @param {number} [from] Pagination cursor
28655
+ * @returns {Promise<ExtendedEventExecution[]>}
28656
+ * @throws {ConductorSdkError}
28657
+ */
28658
+ async getEventExecutions(eventHandlerName, from) {
28659
+ try {
28660
+ const { data } = await EventExecutionResource.getEventHandlersForEvent2({
28661
+ client: this._client,
28662
+ throwOnError: true,
28663
+ path: { eventHandlerName },
28664
+ query: { from }
28665
+ });
28666
+ return data;
28667
+ } catch (error) {
28668
+ handleSdkError(
28669
+ error,
28670
+ `Failed to get event executions for handler: ${eventHandlerName}`
28671
+ );
28672
+ }
28673
+ }
28674
+ /**
28675
+ * Get all event handlers with statistics (messages view)
28676
+ * @param {number} [from] Pagination cursor
28677
+ * @returns {Promise<SearchResultHandledEventResponse>}
28678
+ * @throws {ConductorSdkError}
28679
+ */
28680
+ async getEventHandlersWithStats(from) {
28681
+ try {
28682
+ const { data } = await EventMessageResource.getEvents({
28683
+ client: this._client,
28684
+ throwOnError: true,
28685
+ query: { from }
28686
+ });
28687
+ return data;
28688
+ } catch (error) {
28689
+ handleSdkError(error, `Failed to get event handlers statistics`);
28690
+ }
28691
+ }
28692
+ /**
28693
+ * Get event messages for a given event
28694
+ * @param {string} event
28695
+ * @param {number} [from] Pagination cursor
28696
+ * @returns {Promise<EventMessage[]>}
28697
+ * @throws {ConductorSdkError}
28698
+ */
28699
+ async getEventMessages(event, from) {
28700
+ try {
28701
+ const { data } = await EventMessageResource.getMessages({
28702
+ client: this._client,
28703
+ throwOnError: true,
28704
+ path: { event },
28705
+ query: { from }
28706
+ });
28707
+ return data;
28708
+ } catch (error) {
28709
+ handleSdkError(error, `Failed to get event messages for event: ${event}`);
28710
+ }
28711
+ }
28712
+ };
28713
+
28221
28714
  // src/orkes/constants.ts
28222
28715
  var REFRESH_TOKEN_IN_MILLISECONDS = 30 * 60 * 1e3;
28223
28716
  var MAX_HTTP2_CONNECTIONS = 1;
@@ -29818,6 +30311,7 @@ var orkesConductorClient = async (config, customFetch) => {
29818
30311
  ConductorSdkError,
29819
30312
  Consistency,
29820
30313
  DefaultLogger,
30314
+ EventClient,
29821
30315
  HumanExecutor,
29822
30316
  MAX_RETRIES,
29823
30317
  MetadataClient,