@avaprotocol/sdk-js 2.5.0 → 2.5.2-dev.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/CHANGELOG.md CHANGED
@@ -1,5 +1,13 @@
1
1
  # @avaprotocol/sdk-js
2
2
 
3
+ ## 2.5.1
4
+
5
+ ### Patch Changes
6
+
7
+ - 6a3d621: Standardize input format of Manual Trigger headers
8
+ - Updated dependencies [6a3d621]
9
+ - @avaprotocol/types@2.3.1
10
+
3
11
  ## 2.5.0
4
12
 
5
13
  ### Minor Changes
package/dist/index.js CHANGED
@@ -17458,8 +17458,8 @@ var ManualTrigger2 = class _ManualTrigger extends Trigger {
17458
17458
  data: props.data,
17459
17459
  input: props.input
17460
17460
  });
17461
- this.headersMap = props.headersMap;
17462
- this.pathParamsMap = props.pathParamsMap;
17461
+ this.headers = props.headers;
17462
+ this.pathParams = props.pathParams;
17463
17463
  }
17464
17464
  toRequest() {
17465
17465
  const trigger = new avs_pb6.TaskTrigger();
@@ -17475,15 +17475,15 @@ var ManualTrigger2 = class _ManualTrigger extends Trigger {
17475
17475
  config.setData(inputValue);
17476
17476
  }
17477
17477
  }
17478
- if (this.headersMap && this.headersMap.length > 0) {
17478
+ if (this.headers && Object.keys(this.headers).length > 0) {
17479
17479
  const headersMap = config.getHeadersMap();
17480
- this.headersMap.forEach(([key, value]) => {
17480
+ Object.entries(this.headers).forEach(([key, value]) => {
17481
17481
  headersMap.set(key, value);
17482
17482
  });
17483
17483
  }
17484
- if (this.pathParamsMap && this.pathParamsMap.length > 0) {
17484
+ if (this.pathParams && Object.keys(this.pathParams).length > 0) {
17485
17485
  const pathParamsMap = config.getPathparamsMap();
17486
- this.pathParamsMap.forEach(([key, value]) => {
17486
+ Object.entries(this.pathParams).forEach(([key, value]) => {
17487
17487
  pathParamsMap.set(key, value);
17488
17488
  });
17489
17489
  }
@@ -17495,8 +17495,8 @@ var ManualTrigger2 = class _ManualTrigger extends Trigger {
17495
17495
  const obj = raw.toObject();
17496
17496
  let data = null;
17497
17497
  const input = void 0;
17498
- let headersMap = void 0;
17499
- let pathParamsMap = void 0;
17498
+ let headers = void 0;
17499
+ let pathParams = void 0;
17500
17500
  const manualTrigger = raw.getManual();
17501
17501
  if (manualTrigger) {
17502
17502
  const config = manualTrigger.getConfig();
@@ -17506,16 +17506,16 @@ var ManualTrigger2 = class _ManualTrigger extends Trigger {
17506
17506
  }
17507
17507
  const headersMapProto = config.getHeadersMap();
17508
17508
  if (headersMapProto && headersMapProto.getLength() > 0) {
17509
- headersMap = [];
17509
+ headers = {};
17510
17510
  headersMapProto.forEach((value, key) => {
17511
- headersMap.push([key, value]);
17511
+ headers[key] = value;
17512
17512
  });
17513
17513
  }
17514
17514
  const pathParamsMapProto = config.getPathparamsMap();
17515
17515
  if (pathParamsMapProto && pathParamsMapProto.getLength() > 0) {
17516
- pathParamsMap = [];
17516
+ pathParams = {};
17517
17517
  pathParamsMapProto.forEach((value, key) => {
17518
- pathParamsMap.push([key, value]);
17518
+ pathParams[key] = value;
17519
17519
  });
17520
17520
  }
17521
17521
  }
@@ -17525,8 +17525,8 @@ var ManualTrigger2 = class _ManualTrigger extends Trigger {
17525
17525
  type: import_types6.TriggerType.Manual,
17526
17526
  data,
17527
17527
  input,
17528
- headersMap,
17529
- pathParamsMap
17528
+ headers,
17529
+ pathParams
17530
17530
  });
17531
17531
  }
17532
17532
  getInputVariables() {
@@ -17535,45 +17535,26 @@ var ManualTrigger2 = class _ManualTrigger extends Trigger {
17535
17535
  /**
17536
17536
  * Extract output data from RunTriggerResp for manual triggers
17537
17537
  * @param outputData - The RunTriggerResp containing manual trigger output
17538
- * @returns Plain JavaScript object with manual trigger data in standard structure
17538
+ * @returns The parsed JSON data directly (similar to CustomCode output)
17539
17539
  */
17540
17540
  static fromOutputData(outputData) {
17541
17541
  const manualOutput = outputData.getManualTrigger();
17542
17542
  if (!manualOutput) {
17543
17543
  return null;
17544
17544
  }
17545
- const result = {};
17546
17545
  const dataValue = manualOutput.getData();
17547
17546
  if (dataValue) {
17548
17547
  try {
17549
- result.data = convertProtobufValueToJs(dataValue);
17548
+ return convertProtobufValueToJs(dataValue);
17550
17549
  } catch (error) {
17551
17550
  console.warn(
17552
17551
  "Failed to convert manual trigger data from protobuf Value:",
17553
17552
  error
17554
17553
  );
17555
- result.data = dataValue;
17554
+ return null;
17556
17555
  }
17557
- } else {
17558
- result.data = null;
17559
- }
17560
- const headersMapProto = manualOutput.getHeadersMap();
17561
- if (headersMapProto && headersMapProto.getLength() > 0) {
17562
- const headersArray = [];
17563
- headersMapProto.forEach((value, key) => {
17564
- headersArray.push([key, value]);
17565
- });
17566
- result.headers = headersArray;
17567
- }
17568
- const pathParamsMapProto = manualOutput.getPathparamsMap();
17569
- if (pathParamsMapProto && pathParamsMapProto.getLength() > 0) {
17570
- const pathParamsArray = [];
17571
- pathParamsMapProto.forEach((value, key) => {
17572
- pathParamsArray.push([key, value]);
17573
- });
17574
- result.pathParams = pathParamsArray;
17575
17556
  }
17576
- return result;
17557
+ return null;
17577
17558
  }
17578
17559
  };
17579
17560
  var manual_default = ManualTrigger2;
@@ -17904,9 +17885,9 @@ var RestAPINode2 = class _RestAPINode extends Node {
17904
17885
  config.setUrl(configData.url);
17905
17886
  config.setMethod(configData.method);
17906
17887
  config.setBody(configData.body || "");
17907
- if (configData.headersMap && configData.headersMap.length > 0) {
17888
+ if (configData.headers && Object.keys(configData.headers).length > 0) {
17908
17889
  const headersMap = config.getHeadersMap();
17909
- configData.headersMap.forEach(([key, value]) => {
17890
+ Object.entries(configData.headers).forEach(([key, value]) => {
17910
17891
  headersMap.set(key, value);
17911
17892
  });
17912
17893
  }
@@ -17922,7 +17903,19 @@ var RestAPINode2 = class _RestAPINode extends Node {
17922
17903
  return new _RestAPINode({
17923
17904
  ...obj,
17924
17905
  type: import_types12.NodeType.RestAPI,
17925
- data: raw.getRestApi().getConfig().toObject(),
17906
+ data: {
17907
+ url: raw.getRestApi().getConfig().getUrl(),
17908
+ method: raw.getRestApi().getConfig().getMethod(),
17909
+ body: raw.getRestApi().getConfig().getBody(),
17910
+ headers: (() => {
17911
+ const headersMap = raw.getRestApi().getConfig().getHeadersMap();
17912
+ const headers = {};
17913
+ headersMap.forEach((value, key) => {
17914
+ headers[key] = value;
17915
+ });
17916
+ return headers;
17917
+ })()
17918
+ },
17926
17919
  input
17927
17920
  // Include input data from top-level TaskNode
17928
17921
  });
@@ -18280,9 +18273,9 @@ var LoopNode2 = class _LoopNode extends Node {
18280
18273
  }
18281
18274
  if (typeof executionMode === "string") {
18282
18275
  switch (executionMode.toLowerCase()) {
18283
- case "parallel":
18276
+ case import_types17.ExecutionMode.Parallel:
18284
18277
  return 1;
18285
- case "sequential":
18278
+ case import_types17.ExecutionMode.Sequential:
18286
18279
  default:
18287
18280
  return 0;
18288
18281
  }
@@ -18384,7 +18377,7 @@ var LoopNode2 = class _LoopNode extends Node {
18384
18377
  url: apiConfig.url,
18385
18378
  method: apiConfig.method,
18386
18379
  body: apiConfig.body || "",
18387
- headersMap: apiConfig.headersMap
18380
+ headers: apiConfig.headers
18388
18381
  });
18389
18382
  loopNode.setRestApi(restApi);
18390
18383
  }
@@ -18793,159 +18786,21 @@ var Step = class _Step {
18793
18786
  case avs_pb20.Execution.Step.OutputDataCase.MANUAL_TRIGGER: {
18794
18787
  const manualTrigger = typeof step.getManualTrigger === "function" ? step.getManualTrigger() : step.manualTrigger;
18795
18788
  if (manualTrigger) {
18796
- const result = {};
18797
18789
  if (typeof manualTrigger.hasData === "function" && manualTrigger.hasData()) {
18798
18790
  try {
18799
- const userData = convertProtobufValueToJs(
18800
- manualTrigger.getData()
18801
- );
18802
- if (userData && typeof userData === "object" && userData.data !== void 0 && (userData.headers !== void 0 || userData.pathParams !== void 0)) {
18803
- result.data = userData.data;
18804
- if (userData.headers) {
18805
- if (Array.isArray(userData.headers)) {
18806
- if (userData.headers.length > 0 && Array.isArray(userData.headers[0])) {
18807
- result.headers = userData.headers;
18808
- } else {
18809
- const headersArray = [];
18810
- for (const header of userData.headers) {
18811
- for (const [key, value] of Object.entries(header)) {
18812
- headersArray.push([key, value]);
18813
- }
18814
- }
18815
- result.headers = headersArray;
18816
- }
18817
- } else {
18818
- const headersArray = [];
18819
- for (const [key, value] of Object.entries(userData.headers)) {
18820
- headersArray.push([key, value]);
18821
- }
18822
- result.headers = headersArray;
18823
- }
18824
- }
18825
- if (userData.pathParams) {
18826
- if (Array.isArray(userData.pathParams)) {
18827
- if (userData.pathParams.length > 0 && Array.isArray(userData.pathParams[0])) {
18828
- result.pathParams = userData.pathParams;
18829
- } else {
18830
- const pathParamsArray = [];
18831
- for (const pathParam of userData.pathParams) {
18832
- for (const [key, value] of Object.entries(pathParam)) {
18833
- pathParamsArray.push([key, value]);
18834
- }
18835
- }
18836
- result.pathParams = pathParamsArray;
18837
- }
18838
- } else {
18839
- const pathParamsArray = [];
18840
- for (const [key, value] of Object.entries(userData.pathParams)) {
18841
- pathParamsArray.push([key, value]);
18842
- }
18843
- result.pathParams = pathParamsArray;
18844
- }
18845
- }
18846
- } else {
18847
- result.data = userData;
18848
- }
18791
+ return convertProtobufValueToJs(manualTrigger.getData());
18849
18792
  } catch (error) {
18850
18793
  console.warn(
18851
18794
  "Failed to convert manual trigger data from protobuf Value:",
18852
18795
  error
18853
18796
  );
18854
- result.data = manualTrigger.getData();
18797
+ return manualTrigger.getData();
18855
18798
  }
18856
18799
  } else if (manualTrigger.data) {
18857
- const userData = typeof manualTrigger.data.getKindCase === "function" ? convertProtobufValueToJs(manualTrigger.data) : manualTrigger.data;
18858
- if (userData && typeof userData === "object" && userData.data !== void 0 && (userData.headers !== void 0 || userData.pathParams !== void 0)) {
18859
- result.data = userData.data;
18860
- if (userData.headers) {
18861
- if (Array.isArray(userData.headers)) {
18862
- if (userData.headers.length > 0 && Array.isArray(userData.headers[0])) {
18863
- result.headers = userData.headers;
18864
- } else {
18865
- const headersArray = [];
18866
- for (const header of userData.headers) {
18867
- for (const [key, value] of Object.entries(header)) {
18868
- headersArray.push([key, value]);
18869
- }
18870
- }
18871
- result.headers = headersArray;
18872
- }
18873
- } else {
18874
- const headersArray = [];
18875
- for (const [key, value] of Object.entries(userData.headers)) {
18876
- headersArray.push([key, value]);
18877
- }
18878
- result.headers = headersArray;
18879
- }
18880
- }
18881
- if (userData.pathParams) {
18882
- if (Array.isArray(userData.pathParams)) {
18883
- if (userData.pathParams.length > 0 && Array.isArray(userData.pathParams[0])) {
18884
- result.pathParams = userData.pathParams;
18885
- } else {
18886
- const pathParamsArray = [];
18887
- for (const pathParam of userData.pathParams) {
18888
- for (const [key, value] of Object.entries(pathParam)) {
18889
- pathParamsArray.push([key, value]);
18890
- }
18891
- }
18892
- result.pathParams = pathParamsArray;
18893
- }
18894
- } else {
18895
- const pathParamsArray = [];
18896
- for (const [key, value] of Object.entries(userData.pathParams)) {
18897
- pathParamsArray.push([key, value]);
18898
- }
18899
- result.pathParams = pathParamsArray;
18900
- }
18901
- }
18902
- } else {
18903
- result.data = userData;
18904
- }
18905
- }
18906
- if (typeof manualTrigger.getHeadersMap === "function") {
18907
- const headersMap = manualTrigger.getHeadersMap();
18908
- if (headersMap && headersMap.getLength() > 0) {
18909
- const headersArray = [];
18910
- headersMap.forEach((value, key) => {
18911
- headersArray.push([key, value]);
18912
- });
18913
- result.headers = headersArray;
18914
- }
18915
- } else if (manualTrigger.headers) {
18916
- const headersArray = [];
18917
- for (const [key, value] of Object.entries(manualTrigger.headers)) {
18918
- headersArray.push([key, value]);
18919
- }
18920
- result.headers = headersArray;
18800
+ return typeof manualTrigger.data.getKindCase === "function" ? convertProtobufValueToJs(manualTrigger.data) : manualTrigger.data;
18921
18801
  }
18922
- if (typeof manualTrigger.getPathparamsMap === "function") {
18923
- const pathParamsMap = manualTrigger.getPathparamsMap();
18924
- if (pathParamsMap && pathParamsMap.getLength() > 0) {
18925
- const pathParamsArray = [];
18926
- pathParamsMap.forEach((value, key) => {
18927
- pathParamsArray.push([key, value]);
18928
- });
18929
- result.pathParams = pathParamsArray;
18930
- }
18931
- } else if (manualTrigger.pathparams) {
18932
- const pathParamsArray = [];
18933
- for (const [key, value] of Object.entries(manualTrigger.pathparams)) {
18934
- pathParamsArray.push([key, value]);
18935
- }
18936
- result.pathParams = pathParamsArray;
18937
- }
18938
- if (Object.keys(result).length === 0) {
18939
- const objData = manualTrigger.toObject?.() || manualTrigger;
18940
- if (objData && objData.data === void 0) {
18941
- result.data = null;
18942
- } else {
18943
- return { data: objData };
18944
- }
18945
- }
18946
- return result;
18947
18802
  }
18948
- return { data: null };
18803
+ return null;
18949
18804
  }
18950
18805
  // Node outputs - RESTORE MISSING CASES
18951
18806
  case avs_pb20.Execution.Step.OutputDataCase.ETH_TRANSFER:
@@ -19810,15 +19665,15 @@ var Client = class extends BaseClient {
19810
19665
  const protobufValue = convertJSValueToProtobuf(manualData.data);
19811
19666
  manualOutput.setData(protobufValue);
19812
19667
  }
19813
- if (manualData.headersMap) {
19668
+ if (manualData.headers) {
19814
19669
  const headersMap = manualOutput.getHeadersMap();
19815
- manualData.headersMap.forEach(([key, value]) => {
19670
+ Object.entries(manualData.headers).forEach(([key, value]) => {
19816
19671
  headersMap.set(key, value);
19817
19672
  });
19818
19673
  }
19819
- if (manualData.pathParamsMap) {
19674
+ if (manualData.pathParams) {
19820
19675
  const pathParamsMap = manualOutput.getPathparamsMap();
19821
- manualData.pathParamsMap.forEach(([key, value]) => {
19676
+ Object.entries(manualData.pathParams).forEach(([key, value]) => {
19822
19677
  pathParamsMap.set(key, value);
19823
19678
  });
19824
19679
  }
package/dist/index.mjs CHANGED
@@ -17436,8 +17436,8 @@ var ManualTrigger2 = class _ManualTrigger extends Trigger {
17436
17436
  data: props.data,
17437
17437
  input: props.input
17438
17438
  });
17439
- this.headersMap = props.headersMap;
17440
- this.pathParamsMap = props.pathParamsMap;
17439
+ this.headers = props.headers;
17440
+ this.pathParams = props.pathParams;
17441
17441
  }
17442
17442
  toRequest() {
17443
17443
  const trigger = new avs_pb6.TaskTrigger();
@@ -17453,15 +17453,15 @@ var ManualTrigger2 = class _ManualTrigger extends Trigger {
17453
17453
  config.setData(inputValue);
17454
17454
  }
17455
17455
  }
17456
- if (this.headersMap && this.headersMap.length > 0) {
17456
+ if (this.headers && Object.keys(this.headers).length > 0) {
17457
17457
  const headersMap = config.getHeadersMap();
17458
- this.headersMap.forEach(([key, value]) => {
17458
+ Object.entries(this.headers).forEach(([key, value]) => {
17459
17459
  headersMap.set(key, value);
17460
17460
  });
17461
17461
  }
17462
- if (this.pathParamsMap && this.pathParamsMap.length > 0) {
17462
+ if (this.pathParams && Object.keys(this.pathParams).length > 0) {
17463
17463
  const pathParamsMap = config.getPathparamsMap();
17464
- this.pathParamsMap.forEach(([key, value]) => {
17464
+ Object.entries(this.pathParams).forEach(([key, value]) => {
17465
17465
  pathParamsMap.set(key, value);
17466
17466
  });
17467
17467
  }
@@ -17473,8 +17473,8 @@ var ManualTrigger2 = class _ManualTrigger extends Trigger {
17473
17473
  const obj = raw.toObject();
17474
17474
  let data = null;
17475
17475
  const input = void 0;
17476
- let headersMap = void 0;
17477
- let pathParamsMap = void 0;
17476
+ let headers = void 0;
17477
+ let pathParams = void 0;
17478
17478
  const manualTrigger = raw.getManual();
17479
17479
  if (manualTrigger) {
17480
17480
  const config = manualTrigger.getConfig();
@@ -17484,16 +17484,16 @@ var ManualTrigger2 = class _ManualTrigger extends Trigger {
17484
17484
  }
17485
17485
  const headersMapProto = config.getHeadersMap();
17486
17486
  if (headersMapProto && headersMapProto.getLength() > 0) {
17487
- headersMap = [];
17487
+ headers = {};
17488
17488
  headersMapProto.forEach((value, key) => {
17489
- headersMap.push([key, value]);
17489
+ headers[key] = value;
17490
17490
  });
17491
17491
  }
17492
17492
  const pathParamsMapProto = config.getPathparamsMap();
17493
17493
  if (pathParamsMapProto && pathParamsMapProto.getLength() > 0) {
17494
- pathParamsMap = [];
17494
+ pathParams = {};
17495
17495
  pathParamsMapProto.forEach((value, key) => {
17496
- pathParamsMap.push([key, value]);
17496
+ pathParams[key] = value;
17497
17497
  });
17498
17498
  }
17499
17499
  }
@@ -17503,8 +17503,8 @@ var ManualTrigger2 = class _ManualTrigger extends Trigger {
17503
17503
  type: TriggerType11.Manual,
17504
17504
  data,
17505
17505
  input,
17506
- headersMap,
17507
- pathParamsMap
17506
+ headers,
17507
+ pathParams
17508
17508
  });
17509
17509
  }
17510
17510
  getInputVariables() {
@@ -17513,45 +17513,26 @@ var ManualTrigger2 = class _ManualTrigger extends Trigger {
17513
17513
  /**
17514
17514
  * Extract output data from RunTriggerResp for manual triggers
17515
17515
  * @param outputData - The RunTriggerResp containing manual trigger output
17516
- * @returns Plain JavaScript object with manual trigger data in standard structure
17516
+ * @returns The parsed JSON data directly (similar to CustomCode output)
17517
17517
  */
17518
17518
  static fromOutputData(outputData) {
17519
17519
  const manualOutput = outputData.getManualTrigger();
17520
17520
  if (!manualOutput) {
17521
17521
  return null;
17522
17522
  }
17523
- const result = {};
17524
17523
  const dataValue = manualOutput.getData();
17525
17524
  if (dataValue) {
17526
17525
  try {
17527
- result.data = convertProtobufValueToJs(dataValue);
17526
+ return convertProtobufValueToJs(dataValue);
17528
17527
  } catch (error) {
17529
17528
  console.warn(
17530
17529
  "Failed to convert manual trigger data from protobuf Value:",
17531
17530
  error
17532
17531
  );
17533
- result.data = dataValue;
17532
+ return null;
17534
17533
  }
17535
- } else {
17536
- result.data = null;
17537
- }
17538
- const headersMapProto = manualOutput.getHeadersMap();
17539
- if (headersMapProto && headersMapProto.getLength() > 0) {
17540
- const headersArray = [];
17541
- headersMapProto.forEach((value, key) => {
17542
- headersArray.push([key, value]);
17543
- });
17544
- result.headers = headersArray;
17545
- }
17546
- const pathParamsMapProto = manualOutput.getPathparamsMap();
17547
- if (pathParamsMapProto && pathParamsMapProto.getLength() > 0) {
17548
- const pathParamsArray = [];
17549
- pathParamsMapProto.forEach((value, key) => {
17550
- pathParamsArray.push([key, value]);
17551
- });
17552
- result.pathParams = pathParamsArray;
17553
17534
  }
17554
- return result;
17535
+ return null;
17555
17536
  }
17556
17537
  };
17557
17538
  var manual_default = ManualTrigger2;
@@ -17890,9 +17871,9 @@ var RestAPINode2 = class _RestAPINode extends Node {
17890
17871
  config.setUrl(configData.url);
17891
17872
  config.setMethod(configData.method);
17892
17873
  config.setBody(configData.body || "");
17893
- if (configData.headersMap && configData.headersMap.length > 0) {
17874
+ if (configData.headers && Object.keys(configData.headers).length > 0) {
17894
17875
  const headersMap = config.getHeadersMap();
17895
- configData.headersMap.forEach(([key, value]) => {
17876
+ Object.entries(configData.headers).forEach(([key, value]) => {
17896
17877
  headersMap.set(key, value);
17897
17878
  });
17898
17879
  }
@@ -17908,7 +17889,19 @@ var RestAPINode2 = class _RestAPINode extends Node {
17908
17889
  return new _RestAPINode({
17909
17890
  ...obj,
17910
17891
  type: NodeType6.RestAPI,
17911
- data: raw.getRestApi().getConfig().toObject(),
17892
+ data: {
17893
+ url: raw.getRestApi().getConfig().getUrl(),
17894
+ method: raw.getRestApi().getConfig().getMethod(),
17895
+ body: raw.getRestApi().getConfig().getBody(),
17896
+ headers: (() => {
17897
+ const headersMap = raw.getRestApi().getConfig().getHeadersMap();
17898
+ const headers = {};
17899
+ headersMap.forEach((value, key) => {
17900
+ headers[key] = value;
17901
+ });
17902
+ return headers;
17903
+ })()
17904
+ },
17912
17905
  input
17913
17906
  // Include input data from top-level TaskNode
17914
17907
  });
@@ -18273,9 +18266,9 @@ var LoopNode2 = class _LoopNode extends Node {
18273
18266
  }
18274
18267
  if (typeof executionMode === "string") {
18275
18268
  switch (executionMode.toLowerCase()) {
18276
- case "parallel":
18269
+ case ExecutionMode.Parallel:
18277
18270
  return 1;
18278
- case "sequential":
18271
+ case ExecutionMode.Sequential:
18279
18272
  default:
18280
18273
  return 0;
18281
18274
  }
@@ -18377,7 +18370,7 @@ var LoopNode2 = class _LoopNode extends Node {
18377
18370
  url: apiConfig.url,
18378
18371
  method: apiConfig.method,
18379
18372
  body: apiConfig.body || "",
18380
- headersMap: apiConfig.headersMap
18373
+ headers: apiConfig.headers
18381
18374
  });
18382
18375
  loopNode.setRestApi(restApi);
18383
18376
  }
@@ -18788,159 +18781,21 @@ var Step = class _Step {
18788
18781
  case avs_pb20.Execution.Step.OutputDataCase.MANUAL_TRIGGER: {
18789
18782
  const manualTrigger = typeof step.getManualTrigger === "function" ? step.getManualTrigger() : step.manualTrigger;
18790
18783
  if (manualTrigger) {
18791
- const result = {};
18792
18784
  if (typeof manualTrigger.hasData === "function" && manualTrigger.hasData()) {
18793
18785
  try {
18794
- const userData = convertProtobufValueToJs(
18795
- manualTrigger.getData()
18796
- );
18797
- if (userData && typeof userData === "object" && userData.data !== void 0 && (userData.headers !== void 0 || userData.pathParams !== void 0)) {
18798
- result.data = userData.data;
18799
- if (userData.headers) {
18800
- if (Array.isArray(userData.headers)) {
18801
- if (userData.headers.length > 0 && Array.isArray(userData.headers[0])) {
18802
- result.headers = userData.headers;
18803
- } else {
18804
- const headersArray = [];
18805
- for (const header of userData.headers) {
18806
- for (const [key, value] of Object.entries(header)) {
18807
- headersArray.push([key, value]);
18808
- }
18809
- }
18810
- result.headers = headersArray;
18811
- }
18812
- } else {
18813
- const headersArray = [];
18814
- for (const [key, value] of Object.entries(userData.headers)) {
18815
- headersArray.push([key, value]);
18816
- }
18817
- result.headers = headersArray;
18818
- }
18819
- }
18820
- if (userData.pathParams) {
18821
- if (Array.isArray(userData.pathParams)) {
18822
- if (userData.pathParams.length > 0 && Array.isArray(userData.pathParams[0])) {
18823
- result.pathParams = userData.pathParams;
18824
- } else {
18825
- const pathParamsArray = [];
18826
- for (const pathParam of userData.pathParams) {
18827
- for (const [key, value] of Object.entries(pathParam)) {
18828
- pathParamsArray.push([key, value]);
18829
- }
18830
- }
18831
- result.pathParams = pathParamsArray;
18832
- }
18833
- } else {
18834
- const pathParamsArray = [];
18835
- for (const [key, value] of Object.entries(userData.pathParams)) {
18836
- pathParamsArray.push([key, value]);
18837
- }
18838
- result.pathParams = pathParamsArray;
18839
- }
18840
- }
18841
- } else {
18842
- result.data = userData;
18843
- }
18786
+ return convertProtobufValueToJs(manualTrigger.getData());
18844
18787
  } catch (error) {
18845
18788
  console.warn(
18846
18789
  "Failed to convert manual trigger data from protobuf Value:",
18847
18790
  error
18848
18791
  );
18849
- result.data = manualTrigger.getData();
18792
+ return manualTrigger.getData();
18850
18793
  }
18851
18794
  } else if (manualTrigger.data) {
18852
- const userData = typeof manualTrigger.data.getKindCase === "function" ? convertProtobufValueToJs(manualTrigger.data) : manualTrigger.data;
18853
- if (userData && typeof userData === "object" && userData.data !== void 0 && (userData.headers !== void 0 || userData.pathParams !== void 0)) {
18854
- result.data = userData.data;
18855
- if (userData.headers) {
18856
- if (Array.isArray(userData.headers)) {
18857
- if (userData.headers.length > 0 && Array.isArray(userData.headers[0])) {
18858
- result.headers = userData.headers;
18859
- } else {
18860
- const headersArray = [];
18861
- for (const header of userData.headers) {
18862
- for (const [key, value] of Object.entries(header)) {
18863
- headersArray.push([key, value]);
18864
- }
18865
- }
18866
- result.headers = headersArray;
18867
- }
18868
- } else {
18869
- const headersArray = [];
18870
- for (const [key, value] of Object.entries(userData.headers)) {
18871
- headersArray.push([key, value]);
18872
- }
18873
- result.headers = headersArray;
18874
- }
18875
- }
18876
- if (userData.pathParams) {
18877
- if (Array.isArray(userData.pathParams)) {
18878
- if (userData.pathParams.length > 0 && Array.isArray(userData.pathParams[0])) {
18879
- result.pathParams = userData.pathParams;
18880
- } else {
18881
- const pathParamsArray = [];
18882
- for (const pathParam of userData.pathParams) {
18883
- for (const [key, value] of Object.entries(pathParam)) {
18884
- pathParamsArray.push([key, value]);
18885
- }
18886
- }
18887
- result.pathParams = pathParamsArray;
18888
- }
18889
- } else {
18890
- const pathParamsArray = [];
18891
- for (const [key, value] of Object.entries(userData.pathParams)) {
18892
- pathParamsArray.push([key, value]);
18893
- }
18894
- result.pathParams = pathParamsArray;
18895
- }
18896
- }
18897
- } else {
18898
- result.data = userData;
18899
- }
18900
- }
18901
- if (typeof manualTrigger.getHeadersMap === "function") {
18902
- const headersMap = manualTrigger.getHeadersMap();
18903
- if (headersMap && headersMap.getLength() > 0) {
18904
- const headersArray = [];
18905
- headersMap.forEach((value, key) => {
18906
- headersArray.push([key, value]);
18907
- });
18908
- result.headers = headersArray;
18909
- }
18910
- } else if (manualTrigger.headers) {
18911
- const headersArray = [];
18912
- for (const [key, value] of Object.entries(manualTrigger.headers)) {
18913
- headersArray.push([key, value]);
18914
- }
18915
- result.headers = headersArray;
18795
+ return typeof manualTrigger.data.getKindCase === "function" ? convertProtobufValueToJs(manualTrigger.data) : manualTrigger.data;
18916
18796
  }
18917
- if (typeof manualTrigger.getPathparamsMap === "function") {
18918
- const pathParamsMap = manualTrigger.getPathparamsMap();
18919
- if (pathParamsMap && pathParamsMap.getLength() > 0) {
18920
- const pathParamsArray = [];
18921
- pathParamsMap.forEach((value, key) => {
18922
- pathParamsArray.push([key, value]);
18923
- });
18924
- result.pathParams = pathParamsArray;
18925
- }
18926
- } else if (manualTrigger.pathparams) {
18927
- const pathParamsArray = [];
18928
- for (const [key, value] of Object.entries(manualTrigger.pathparams)) {
18929
- pathParamsArray.push([key, value]);
18930
- }
18931
- result.pathParams = pathParamsArray;
18932
- }
18933
- if (Object.keys(result).length === 0) {
18934
- const objData = manualTrigger.toObject?.() || manualTrigger;
18935
- if (objData && objData.data === void 0) {
18936
- result.data = null;
18937
- } else {
18938
- return { data: objData };
18939
- }
18940
- }
18941
- return result;
18942
18797
  }
18943
- return { data: null };
18798
+ return null;
18944
18799
  }
18945
18800
  // Node outputs - RESTORE MISSING CASES
18946
18801
  case avs_pb20.Execution.Step.OutputDataCase.ETH_TRANSFER:
@@ -19815,15 +19670,15 @@ var Client = class extends BaseClient {
19815
19670
  const protobufValue = convertJSValueToProtobuf(manualData.data);
19816
19671
  manualOutput.setData(protobufValue);
19817
19672
  }
19818
- if (manualData.headersMap) {
19673
+ if (manualData.headers) {
19819
19674
  const headersMap = manualOutput.getHeadersMap();
19820
- manualData.headersMap.forEach(([key, value]) => {
19675
+ Object.entries(manualData.headers).forEach(([key, value]) => {
19821
19676
  headersMap.set(key, value);
19822
19677
  });
19823
19678
  }
19824
- if (manualData.pathParamsMap) {
19679
+ if (manualData.pathParams) {
19825
19680
  const pathParamsMap = manualOutput.getPathparamsMap();
19826
- manualData.pathParamsMap.forEach(([key, value]) => {
19681
+ Object.entries(manualData.pathParams).forEach(([key, value]) => {
19827
19682
  pathParamsMap.set(key, value);
19828
19683
  });
19829
19684
  }
@@ -81,9 +81,9 @@ class LoopNode extends Node {
81
81
  }
82
82
  if (typeof executionMode === "string") {
83
83
  switch (executionMode.toLowerCase()) {
84
- case "parallel":
84
+ case ExecutionMode.Parallel:
85
85
  return 1;
86
- case "sequential":
86
+ case ExecutionMode.Sequential:
87
87
  default:
88
88
  return 0; // Default to sequential for safety
89
89
  }
@@ -191,7 +191,7 @@ class LoopNode extends Node {
191
191
  url: apiConfig.url,
192
192
  method: apiConfig.method,
193
193
  body: apiConfig.body || "",
194
- headersMap: apiConfig.headersMap,
194
+ headers: apiConfig.headers,
195
195
  });
196
196
  loopNode.setRestApi(restApi);
197
197
  }
@@ -12,11 +12,11 @@ declare class RestAPINode extends Node {
12
12
  url: string;
13
13
  method: string;
14
14
  body?: string;
15
- headersMap?: Array<[string, string]>;
15
+ headers?: Record<string, string>;
16
16
  }): avs_pb.RestAPINode;
17
17
  static fromResponse(raw: avs_pb.TaskNode): RestAPINode;
18
18
  toRequest(): avs_pb.TaskNode;
19
- static fromOutputData(outputData: avs_pb.RunNodeWithInputsResp): any;
19
+ static fromOutputData(outputData: avs_pb.RunNodeWithInputsResp): Record<string, unknown> | null;
20
20
  }
21
21
  export default RestAPINode;
22
22
  //# sourceMappingURL=restApi.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"restApi.d.ts","sourceRoot":"","sources":["../../../src/models/node/restApi.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,aAAa,CAAC;AAC/B,OAAO,KAAK,MAAM,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAGL,gBAAgB,EAEjB,MAAM,oBAAoB,CAAC;AAS5B,cAAM,WAAY,SAAQ,IAAI;gBAChB,KAAK,EAAE,gBAAgB;IAInC;;;;OAIG;IACH,MAAM,CAAC,kBAAkB,CAAC,UAAU,EAAE;QACpC,GAAG,EAAE,MAAM,CAAC;QACZ,MAAM,EAAE,MAAM,CAAC;QACf,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,UAAU,CAAC,EAAE,KAAK,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;KACtC,GAAG,MAAM,CAAC,WAAW;IAmBtB,MAAM,CAAC,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,QAAQ,GAAG,WAAW;IAmBtD,SAAS,IAAI,MAAM,CAAC,QAAQ;IAwB5B,MAAM,CAAC,cAAc,CAAC,UAAU,EAAE,MAAM,CAAC,qBAAqB,GAAG,GAAG;CAerE;AAED,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"restApi.d.ts","sourceRoot":"","sources":["../../../src/models/node/restApi.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,aAAa,CAAC;AAC/B,OAAO,KAAK,MAAM,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAGL,gBAAgB,EAEjB,MAAM,oBAAoB,CAAC;AAS5B,cAAM,WAAY,SAAQ,IAAI;gBAChB,KAAK,EAAE,gBAAgB;IAInC;;;;OAIG;IACH,MAAM,CAAC,kBAAkB,CAAC,UAAU,EAAE;QACpC,GAAG,EAAE,MAAM,CAAC;QACZ,MAAM,EAAE,MAAM,CAAC;QACf,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KAClC,GAAG,MAAM,CAAC,WAAW;IAmBtB,MAAM,CAAC,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,QAAQ,GAAG,WAAW;IA+BtD,SAAS,IAAI,MAAM,CAAC,QAAQ;IAwB5B,MAAM,CAAC,cAAc,CAAC,UAAU,EAAE,MAAM,CAAC,qBAAqB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;CAehG;AAED,eAAe,WAAW,CAAC"}
@@ -18,9 +18,9 @@ class RestAPINode extends Node {
18
18
  config.setUrl(configData.url);
19
19
  config.setMethod(configData.method);
20
20
  config.setBody(configData.body || "");
21
- if (configData.headersMap && configData.headersMap.length > 0) {
21
+ if (configData.headers && Object.keys(configData.headers).length > 0) {
22
22
  const headersMap = config.getHeadersMap();
23
- configData.headersMap.forEach(([key, value]) => {
23
+ Object.entries(configData.headers).forEach(([key, value]) => {
24
24
  headersMap.set(key, value);
25
25
  });
26
26
  }
@@ -39,7 +39,19 @@ class RestAPINode extends Node {
39
39
  return new RestAPINode({
40
40
  ...obj,
41
41
  type: NodeType.RestAPI,
42
- data: raw.getRestApi().getConfig().toObject(),
42
+ data: {
43
+ url: raw.getRestApi().getConfig().getUrl(),
44
+ method: raw.getRestApi().getConfig().getMethod(),
45
+ body: raw.getRestApi().getConfig().getBody(),
46
+ headers: (() => {
47
+ const headersMap = raw.getRestApi().getConfig().getHeadersMap();
48
+ const headers = {};
49
+ headersMap.forEach((value, key) => {
50
+ headers[key] = value;
51
+ });
52
+ return headers;
53
+ })(),
54
+ },
43
55
  input: input, // Include input data from top-level TaskNode
44
56
  });
45
57
  }
@@ -1 +1 @@
1
- {"version":3,"file":"step.d.ts","sourceRoot":"","sources":["../../src/models/step.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,uBAAuB,CAAC;AAMhD,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAEhE,cAAM,IAAK,YAAW,SAAS;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,KAAK,CAAC,EAAE,GAAG,CAAC;IACZ,MAAM,EAAE,eAAe,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;gBAEF,KAAK,EAAE,SAAS;IAc5B;;;OAGG;IACH,MAAM,IAAI,SAAS;IAgBnB,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,MAAM,CAAC,SAAS,CAAC,IAAI,GAAG,eAAe;IAslB9D,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,SAAS,CAAC,IAAI,GAAG,IAAI;CAqFvD;AAED,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"step.d.ts","sourceRoot":"","sources":["../../src/models/step.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,uBAAuB,CAAC;AAMhD,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAEhE,cAAM,IAAK,YAAW,SAAS;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,KAAK,CAAC,EAAE,GAAG,CAAC;IACZ,MAAM,EAAE,eAAe,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;gBAEF,KAAK,EAAE,SAAS;IAc5B;;;OAGG;IACH,MAAM,IAAI,SAAS;IAgBnB,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,MAAM,CAAC,SAAS,CAAC,IAAI,GAAG,eAAe;IA8Z9D,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,SAAS,CAAC,IAAI,GAAG,IAAI;CAqFvD;AAED,eAAe,IAAI,CAAC"}
@@ -136,210 +136,26 @@ class Step {
136
136
  ? step.getManualTrigger()
137
137
  : step.manualTrigger;
138
138
  if (manualTrigger) {
139
- const result = {};
140
- // Check for the new data field structure
139
+ // For manual triggers, return the data content directly (similar to CustomCode)
140
+ // Headers and pathParams are config-only fields, not output fields
141
141
  if (typeof manualTrigger.hasData === "function" &&
142
142
  manualTrigger.hasData()) {
143
143
  try {
144
- const userData = convertProtobufValueToJs(manualTrigger.getData());
145
- // Check if the userData is the new format with nested structure
146
- if (userData && typeof userData === 'object' &&
147
- userData.data !== undefined &&
148
- (userData.headers !== undefined || userData.pathParams !== undefined)) {
149
- // This is the new format where the entire structure is in the data field
150
- // Flatten it by extracting the nested data
151
- result.data = userData.data;
152
- if (userData.headers) {
153
- // Convert headers to consistent Array<[string, string]> format
154
- if (Array.isArray(userData.headers)) {
155
- // Check if it's already in Array<[string, string]> format
156
- if (userData.headers.length > 0 && Array.isArray(userData.headers[0])) {
157
- result.headers = userData.headers;
158
- }
159
- else {
160
- // Convert from Array<{key: value}> to Array<[string, string]>
161
- const headersArray = [];
162
- for (const header of userData.headers) {
163
- for (const [key, value] of Object.entries(header)) {
164
- headersArray.push([key, value]);
165
- }
166
- }
167
- result.headers = headersArray;
168
- }
169
- }
170
- else {
171
- // Convert object to Array<[string, string]> format
172
- const headersArray = [];
173
- for (const [key, value] of Object.entries(userData.headers)) {
174
- headersArray.push([key, value]);
175
- }
176
- result.headers = headersArray;
177
- }
178
- }
179
- if (userData.pathParams) {
180
- // Convert pathParams to consistent Array<[string, string]> format
181
- if (Array.isArray(userData.pathParams)) {
182
- // Check if it's already in Array<[string, string]> format
183
- if (userData.pathParams.length > 0 && Array.isArray(userData.pathParams[0])) {
184
- result.pathParams = userData.pathParams;
185
- }
186
- else {
187
- // Convert from Array<{key: value}> to Array<[string, string]>
188
- const pathParamsArray = [];
189
- for (const pathParam of userData.pathParams) {
190
- for (const [key, value] of Object.entries(pathParam)) {
191
- pathParamsArray.push([key, value]);
192
- }
193
- }
194
- result.pathParams = pathParamsArray;
195
- }
196
- }
197
- else {
198
- // Convert object to Array<[string, string]> format
199
- const pathParamsArray = [];
200
- for (const [key, value] of Object.entries(userData.pathParams)) {
201
- pathParamsArray.push([key, value]);
202
- }
203
- result.pathParams = pathParamsArray;
204
- }
205
- }
206
- }
207
- else {
208
- // This is the old format with just user data
209
- result.data = userData;
210
- }
144
+ return convertProtobufValueToJs(manualTrigger.getData());
211
145
  }
212
146
  catch (error) {
213
147
  console.warn("Failed to convert manual trigger data from protobuf Value:", error);
214
- result.data = manualTrigger.getData();
148
+ return manualTrigger.getData();
215
149
  }
216
150
  }
217
151
  else if (manualTrigger.data) {
218
152
  // For plain objects, try to convert or use directly
219
- const userData = typeof manualTrigger.data.getKindCase === "function"
153
+ return typeof manualTrigger.data.getKindCase === "function"
220
154
  ? convertProtobufValueToJs(manualTrigger.data)
221
155
  : manualTrigger.data;
222
- // Check if the userData is the new format with nested structure
223
- if (userData && typeof userData === 'object' &&
224
- userData.data !== undefined &&
225
- (userData.headers !== undefined || userData.pathParams !== undefined)) {
226
- // This is the new format where the entire structure is in the data field
227
- // Flatten it by extracting the nested data
228
- result.data = userData.data;
229
- if (userData.headers) {
230
- // Convert headers to consistent Array<[string, string]> format
231
- if (Array.isArray(userData.headers)) {
232
- // Check if it's already in Array<[string, string]> format
233
- if (userData.headers.length > 0 && Array.isArray(userData.headers[0])) {
234
- result.headers = userData.headers;
235
- }
236
- else {
237
- // Convert from Array<{key: value}> to Array<[string, string]>
238
- const headersArray = [];
239
- for (const header of userData.headers) {
240
- for (const [key, value] of Object.entries(header)) {
241
- headersArray.push([key, value]);
242
- }
243
- }
244
- result.headers = headersArray;
245
- }
246
- }
247
- else {
248
- // Convert object to Array<[string, string]> format
249
- const headersArray = [];
250
- for (const [key, value] of Object.entries(userData.headers)) {
251
- headersArray.push([key, value]);
252
- }
253
- result.headers = headersArray;
254
- }
255
- }
256
- if (userData.pathParams) {
257
- // Convert pathParams to consistent Array<[string, string]> format
258
- if (Array.isArray(userData.pathParams)) {
259
- // Check if it's already in Array<[string, string]> format
260
- if (userData.pathParams.length > 0 && Array.isArray(userData.pathParams[0])) {
261
- result.pathParams = userData.pathParams;
262
- }
263
- else {
264
- // Convert from Array<{key: value}> to Array<[string, string]>
265
- const pathParamsArray = [];
266
- for (const pathParam of userData.pathParams) {
267
- for (const [key, value] of Object.entries(pathParam)) {
268
- pathParamsArray.push([key, value]);
269
- }
270
- }
271
- result.pathParams = pathParamsArray;
272
- }
273
- }
274
- else {
275
- // Convert object to Array<[string, string]> format
276
- const pathParamsArray = [];
277
- for (const [key, value] of Object.entries(userData.pathParams)) {
278
- pathParamsArray.push([key, value]);
279
- }
280
- result.pathParams = pathParamsArray;
281
- }
282
- }
283
- }
284
- else {
285
- // This is the old format with just user data
286
- result.data = userData;
287
- }
288
- }
289
- // Include headers for webhook testing - use consistent Array<[string, string]> format
290
- if (typeof manualTrigger.getHeadersMap === "function") {
291
- const headersMap = manualTrigger.getHeadersMap();
292
- if (headersMap && headersMap.getLength() > 0) {
293
- const headersArray = [];
294
- headersMap.forEach((value, key) => {
295
- headersArray.push([key, value]);
296
- });
297
- result.headers = headersArray;
298
- }
299
- }
300
- else if (manualTrigger.headers) {
301
- // For plain objects, convert to consistent Array<[string, string]> format
302
- const headersArray = [];
303
- for (const [key, value] of Object.entries(manualTrigger.headers)) {
304
- headersArray.push([key, value]);
305
- }
306
- result.headers = headersArray;
307
- }
308
- // Include pathParams for webhook testing - use consistent Array<[string, string]> format
309
- if (typeof manualTrigger.getPathparamsMap === "function") {
310
- const pathParamsMap = manualTrigger.getPathparamsMap();
311
- if (pathParamsMap && pathParamsMap.getLength() > 0) {
312
- const pathParamsArray = [];
313
- pathParamsMap.forEach((value, key) => {
314
- pathParamsArray.push([key, value]);
315
- });
316
- result.pathParams = pathParamsArray;
317
- }
318
- }
319
- else if (manualTrigger.pathparams) {
320
- // For plain objects, convert to consistent Array<[string, string]> format
321
- const pathParamsArray = [];
322
- for (const [key, value] of Object.entries(manualTrigger.pathparams)) {
323
- pathParamsArray.push([key, value]);
324
- }
325
- result.pathParams = pathParamsArray;
326
- }
327
- // Check if this is the new format with no data field or null data
328
- if (Object.keys(result).length === 0) {
329
- const objData = manualTrigger.toObject?.() || manualTrigger;
330
- if (objData && objData.data === undefined) {
331
- // No data was provided, return null
332
- result.data = null;
333
- }
334
- else {
335
- // Fallback to old structure for backward compatibility
336
- return { data: objData };
337
- }
338
156
  }
339
- // For manual triggers, return the flat structure
340
- return result;
341
157
  }
342
- return { data: null };
158
+ return null;
343
159
  }
344
160
  // Node outputs - RESTORE MISSING CASES
345
161
  case avs_pb.Execution.Step.OutputDataCase.ETH_TRANSFER:
@@ -2,8 +2,8 @@ import * as avs_pb from "@/grpc_codegen/avs_pb";
2
2
  import Trigger from "./interface";
3
3
  import { ManualTriggerProps } from "@avaprotocol/types";
4
4
  declare class ManualTrigger extends Trigger {
5
- headersMap?: Array<[string, string]>;
6
- pathParamsMap?: Array<[string, string]>;
5
+ headers?: Record<string, string>;
6
+ pathParams?: Record<string, string>;
7
7
  constructor(props: ManualTriggerProps);
8
8
  toRequest(): avs_pb.TaskTrigger;
9
9
  static fromResponse(raw: avs_pb.TaskTrigger): ManualTrigger;
@@ -11,9 +11,9 @@ declare class ManualTrigger extends Trigger {
11
11
  /**
12
12
  * Extract output data from RunTriggerResp for manual triggers
13
13
  * @param outputData - The RunTriggerResp containing manual trigger output
14
- * @returns Plain JavaScript object with manual trigger data in standard structure
14
+ * @returns The parsed JSON data directly (similar to CustomCode output)
15
15
  */
16
- static fromOutputData(outputData: avs_pb.RunTriggerResp): Record<string, unknown> | null;
16
+ static fromOutputData(outputData: avs_pb.RunTriggerResp): unknown;
17
17
  }
18
18
  export default ManualTrigger;
19
19
  //# sourceMappingURL=manual.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"manual.d.ts","sourceRoot":"","sources":["../../../src/models/trigger/manual.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,uBAAuB,CAAC;AAChD,OAAO,OAAO,MAAM,aAAa,CAAC;AAMlC,OAAO,EAEL,kBAAkB,EAEnB,MAAM,oBAAoB,CAAC;AAE5B,cAAM,aAAc,SAAQ,OAAO;IAC1B,UAAU,CAAC,EAAE,KAAK,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACrC,aAAa,CAAC,EAAE,KAAK,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;gBAEnC,KAAK,EAAE,kBAAkB;IAWrC,SAAS,IAAI,MAAM,CAAC,WAAW;IAyC/B,MAAM,CAAC,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,WAAW,GAAG,aAAa;IA+C3D,iBAAiB,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAKnD;;;;OAIG;IACH,MAAM,CAAC,cAAc,CACnB,UAAU,EAAE,MAAM,CAAC,cAAc,GAChC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;CA6ClC;AAED,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"manual.d.ts","sourceRoot":"","sources":["../../../src/models/trigger/manual.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,uBAAuB,CAAC;AAChD,OAAO,OAAO,MAAM,aAAa,CAAC;AAMlC,OAAO,EAEL,kBAAkB,EAEnB,MAAM,oBAAoB,CAAC;AAE5B,cAAM,aAAc,SAAQ,OAAO;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;gBAE/B,KAAK,EAAE,kBAAkB;IAWrC,SAAS,IAAI,MAAM,CAAC,WAAW;IAyC/B,MAAM,CAAC,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,WAAW,GAAG,aAAa;IA+C3D,iBAAiB,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAKnD;;;;OAIG;IACH,MAAM,CAAC,cAAc,CACnB,UAAU,EAAE,MAAM,CAAC,cAAc,GAChC,OAAO;CAuBX;AAED,eAAe,aAAa,CAAC"}
@@ -10,8 +10,8 @@ class ManualTrigger extends Trigger {
10
10
  data: props.data,
11
11
  input: props.input,
12
12
  });
13
- this.headersMap = props.headersMap;
14
- this.pathParamsMap = props.pathParamsMap;
13
+ this.headers = props.headers;
14
+ this.pathParams = props.pathParams;
15
15
  }
16
16
  toRequest() {
17
17
  const trigger = new avs_pb.TaskTrigger();
@@ -29,17 +29,17 @@ class ManualTrigger extends Trigger {
29
29
  config.setData(inputValue);
30
30
  }
31
31
  }
32
- // Set headers if provided - use map format consistent with REST API nodes
33
- if (this.headersMap && this.headersMap.length > 0) {
32
+ // Set headers if provided - direct object to protobuf map mapping
33
+ if (this.headers && Object.keys(this.headers).length > 0) {
34
34
  const headersMap = config.getHeadersMap();
35
- this.headersMap.forEach(([key, value]) => {
35
+ Object.entries(this.headers).forEach(([key, value]) => {
36
36
  headersMap.set(key, value);
37
37
  });
38
38
  }
39
- // Set pathParams if provided - use map format consistent with REST API nodes
40
- if (this.pathParamsMap && this.pathParamsMap.length > 0) {
39
+ // Set pathParams if provided - direct object to protobuf map mapping
40
+ if (this.pathParams && Object.keys(this.pathParams).length > 0) {
41
41
  const pathParamsMap = config.getPathparamsMap();
42
- this.pathParamsMap.forEach(([key, value]) => {
42
+ Object.entries(this.pathParams).forEach(([key, value]) => {
43
43
  pathParamsMap.set(key, value);
44
44
  });
45
45
  }
@@ -51,8 +51,8 @@ class ManualTrigger extends Trigger {
51
51
  const obj = raw.toObject();
52
52
  let data = null;
53
53
  const input = undefined;
54
- let headersMap = undefined;
55
- let pathParamsMap = undefined;
54
+ let headers = undefined;
55
+ let pathParams = undefined;
56
56
  const manualTrigger = raw.getManual();
57
57
  if (manualTrigger) {
58
58
  const config = manualTrigger.getConfig();
@@ -61,20 +61,20 @@ class ManualTrigger extends Trigger {
61
61
  if (config.hasData()) {
62
62
  data = extractInputFromProtobuf(config.getData());
63
63
  }
64
- // Extract headers - convert map to array format
64
+ // Extract headers - direct protobuf map to object mapping
65
65
  const headersMapProto = config.getHeadersMap();
66
66
  if (headersMapProto && headersMapProto.getLength() > 0) {
67
- headersMap = [];
67
+ headers = {};
68
68
  headersMapProto.forEach((value, key) => {
69
- headersMap.push([key, value]);
69
+ headers[key] = value;
70
70
  });
71
71
  }
72
- // Extract pathParams - convert map to array format
72
+ // Extract pathParams - direct protobuf map to object mapping
73
73
  const pathParamsMapProto = config.getPathparamsMap();
74
74
  if (pathParamsMapProto && pathParamsMapProto.getLength() > 0) {
75
- pathParamsMap = [];
75
+ pathParams = {};
76
76
  pathParamsMapProto.forEach((value, key) => {
77
- pathParamsMap.push([key, value]);
77
+ pathParams[key] = value;
78
78
  });
79
79
  }
80
80
  }
@@ -84,8 +84,8 @@ class ManualTrigger extends Trigger {
84
84
  type: TriggerType.Manual,
85
85
  data: data,
86
86
  input: input,
87
- headersMap: headersMap,
88
- pathParamsMap: pathParamsMap,
87
+ headers: headers,
88
+ pathParams: pathParams,
89
89
  });
90
90
  }
91
91
  getInputVariables() {
@@ -95,47 +95,26 @@ class ManualTrigger extends Trigger {
95
95
  /**
96
96
  * Extract output data from RunTriggerResp for manual triggers
97
97
  * @param outputData - The RunTriggerResp containing manual trigger output
98
- * @returns Plain JavaScript object with manual trigger data in standard structure
98
+ * @returns The parsed JSON data directly (similar to CustomCode output)
99
99
  */
100
100
  static fromOutputData(outputData) {
101
101
  const manualOutput = outputData.getManualTrigger();
102
102
  if (!manualOutput) {
103
103
  return null;
104
104
  }
105
- const result = {};
106
- // Extract data
105
+ // Extract only the data - headers and pathParams are config-only fields
107
106
  const dataValue = manualOutput.getData();
108
107
  if (dataValue) {
109
108
  try {
110
- result.data = convertProtobufValueToJs(dataValue);
109
+ // ManualTrigger data can be any valid JSON (objects, arrays, primitives)
110
+ return convertProtobufValueToJs(dataValue);
111
111
  }
112
112
  catch (error) {
113
113
  console.warn("Failed to convert manual trigger data from protobuf Value:", error);
114
- result.data = dataValue;
114
+ return null;
115
115
  }
116
116
  }
117
- else {
118
- result.data = null;
119
- }
120
- // Extract headers - convert map to array format for consistency
121
- const headersMapProto = manualOutput.getHeadersMap();
122
- if (headersMapProto && headersMapProto.getLength() > 0) {
123
- const headersArray = [];
124
- headersMapProto.forEach((value, key) => {
125
- headersArray.push([key, value]);
126
- });
127
- result.headers = headersArray;
128
- }
129
- // Extract pathParams - convert map to array format for consistency
130
- const pathParamsMapProto = manualOutput.getPathparamsMap();
131
- if (pathParamsMapProto && pathParamsMapProto.getLength() > 0) {
132
- const pathParamsArray = [];
133
- pathParamsMapProto.forEach((value, key) => {
134
- pathParamsArray.push([key, value]);
135
- });
136
- result.pathParams = pathParamsArray;
137
- }
138
- return result;
117
+ return null;
139
118
  }
140
119
  }
141
120
  export default ManualTrigger;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@avaprotocol/sdk-js",
3
- "version": "2.5.0",
3
+ "version": "2.5.2-dev.0",
4
4
  "description": "A JavaScript/TypeScript SDK designed to simplify integration with Ava Protocol's AVS",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -31,7 +31,7 @@
31
31
  "prepare": "node ../../scripts/prepare-package.js"
32
32
  },
33
33
  "dependencies": {
34
- "@avaprotocol/types": "^2.3.0",
34
+ "@avaprotocol/types": "^2.3.1",
35
35
  "@grpc/grpc-js": "^1.11.3",
36
36
  "@grpc/proto-loader": "^0.7.13",
37
37
  "dotenv": "^16.4.5",