n8n-nodes-amazon-selling-partner-dnangelx 0.0.3 → 0.0.7

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.
Files changed (104) hide show
  1. package/dist/credentials/AmazonSpApi.credentials.d.ts +9 -0
  2. package/dist/credentials/AmazonSpApi.credentials.js +231 -0
  3. package/dist/credentials/AmazonSpApi.credentials.js.map +1 -0
  4. package/dist/nodes/AmazonSellingPartner/AmazonSellingPartner.node.d.ts +1 -1
  5. package/dist/nodes/AmazonSellingPartner/AmazonSellingPartner.node.js +142 -33
  6. package/dist/nodes/AmazonSellingPartner/AmazonSellingPartner.node.js.map +1 -1
  7. package/dist/nodes/AmazonSellingPartner/AmazonSellingPartner.node.json +1 -1
  8. package/dist/nodes/AmazonSellingPartner/amazonSpApi.svg +25 -0
  9. package/dist/nodes/AmazonSellingPartner/core/AuditLogger.d.ts +67 -0
  10. package/dist/nodes/AmazonSellingPartner/core/AuditLogger.js +296 -0
  11. package/dist/nodes/AmazonSellingPartner/core/AuditLogger.js.map +1 -0
  12. package/dist/nodes/AmazonSellingPartner/core/ErrorHandler.d.ts +6 -0
  13. package/dist/nodes/AmazonSellingPartner/core/ErrorHandler.js +82 -0
  14. package/dist/nodes/AmazonSellingPartner/core/ErrorHandler.js.map +1 -0
  15. package/dist/nodes/AmazonSellingPartner/core/MetricsCollector.d.ts +48 -0
  16. package/dist/nodes/AmazonSellingPartner/core/MetricsCollector.js +181 -0
  17. package/dist/nodes/AmazonSellingPartner/core/MetricsCollector.js.map +1 -0
  18. package/dist/nodes/AmazonSellingPartner/core/RateLimiter.d.ts +43 -0
  19. package/dist/nodes/AmazonSellingPartner/core/RateLimiter.js +260 -0
  20. package/dist/nodes/AmazonSellingPartner/core/RateLimiter.js.map +1 -0
  21. package/dist/nodes/AmazonSellingPartner/core/SecurityValidator.d.ts +35 -0
  22. package/dist/nodes/AmazonSellingPartner/core/SecurityValidator.js +383 -0
  23. package/dist/nodes/AmazonSellingPartner/core/SecurityValidator.js.map +1 -0
  24. package/dist/nodes/AmazonSellingPartner/core/rateLimitConfig.d.ts +14 -0
  25. package/dist/nodes/AmazonSellingPartner/core/rateLimitConfig.js +93 -0
  26. package/dist/nodes/AmazonSellingPartner/core/rateLimitConfig.js.map +1 -0
  27. package/dist/nodes/AmazonSellingPartner/descriptions/Analytics.description.d.ts +3 -0
  28. package/dist/nodes/AmazonSellingPartner/descriptions/Analytics.description.js +27 -0
  29. package/dist/nodes/AmazonSellingPartner/descriptions/Analytics.description.js.map +1 -0
  30. package/dist/nodes/AmazonSellingPartner/descriptions/DataKiosk.description.d.ts +3 -0
  31. package/dist/nodes/AmazonSellingPartner/descriptions/DataKiosk.description.js +196 -0
  32. package/dist/nodes/AmazonSellingPartner/descriptions/DataKiosk.description.js.map +1 -0
  33. package/dist/nodes/AmazonSellingPartner/descriptions/Finance.description.d.ts +3 -0
  34. package/dist/nodes/AmazonSellingPartner/descriptions/Finance.description.js +341 -0
  35. package/dist/nodes/AmazonSellingPartner/descriptions/Finance.description.js.map +1 -0
  36. package/dist/nodes/AmazonSellingPartner/descriptions/Invoices.description.d.ts +3 -0
  37. package/dist/nodes/AmazonSellingPartner/descriptions/Invoices.description.js +312 -0
  38. package/dist/nodes/AmazonSellingPartner/descriptions/Invoices.description.js.map +1 -0
  39. package/dist/nodes/AmazonSellingPartner/descriptions/Listings.description.d.ts +3 -0
  40. package/dist/nodes/AmazonSellingPartner/descriptions/Listings.description.js +292 -0
  41. package/dist/nodes/AmazonSellingPartner/descriptions/Listings.description.js.map +1 -0
  42. package/dist/nodes/AmazonSellingPartner/descriptions/Orders.description.d.ts +3 -0
  43. package/dist/nodes/AmazonSellingPartner/descriptions/Orders.description.js +202 -0
  44. package/dist/nodes/AmazonSellingPartner/descriptions/Orders.description.js.map +1 -0
  45. package/dist/nodes/AmazonSellingPartner/descriptions/Reports.description.d.ts +3 -0
  46. package/dist/nodes/AmazonSellingPartner/descriptions/Reports.description.js +289 -0
  47. package/dist/nodes/AmazonSellingPartner/descriptions/Reports.description.js.map +1 -0
  48. package/dist/nodes/AmazonSellingPartner/descriptions/Shipments.description.d.ts +3 -0
  49. package/dist/nodes/AmazonSellingPartner/descriptions/Shipments.description.js +181 -0
  50. package/dist/nodes/AmazonSellingPartner/descriptions/Shipments.description.js.map +1 -0
  51. package/dist/nodes/AmazonSellingPartner/helpers/LwaClient.d.ts +10 -0
  52. package/dist/nodes/AmazonSellingPartner/helpers/LwaClient.js +79 -0
  53. package/dist/nodes/AmazonSellingPartner/helpers/LwaClient.js.map +1 -0
  54. package/dist/nodes/AmazonSellingPartner/helpers/RdtClient.d.ts +11 -0
  55. package/dist/nodes/AmazonSellingPartner/helpers/RdtClient.js +66 -0
  56. package/dist/nodes/AmazonSellingPartner/helpers/RdtClient.js.map +1 -0
  57. package/dist/nodes/AmazonSellingPartner/helpers/ReportDownloader.d.ts +16 -0
  58. package/dist/nodes/AmazonSellingPartner/helpers/ReportDownloader.js +65 -0
  59. package/dist/nodes/AmazonSellingPartner/helpers/ReportDownloader.js.map +1 -0
  60. package/dist/nodes/AmazonSellingPartner/helpers/SigV4Signer.d.ts +4 -0
  61. package/dist/nodes/AmazonSellingPartner/helpers/SigV4Signer.js +76 -0
  62. package/dist/nodes/AmazonSellingPartner/helpers/SigV4Signer.js.map +1 -0
  63. package/dist/nodes/AmazonSellingPartner/helpers/SpApiRequest.d.ts +23 -0
  64. package/dist/nodes/AmazonSellingPartner/helpers/SpApiRequest.js +208 -0
  65. package/dist/nodes/AmazonSellingPartner/helpers/SpApiRequest.js.map +1 -0
  66. package/dist/nodes/AmazonSellingPartner/helpers/downloadPresigned.d.ts +4 -0
  67. package/dist/nodes/AmazonSellingPartner/helpers/downloadPresigned.js +16 -0
  68. package/dist/nodes/AmazonSellingPartner/helpers/downloadPresigned.js.map +1 -0
  69. package/dist/nodes/AmazonSellingPartner/helpers/graphql.d.ts +1 -0
  70. package/dist/nodes/AmazonSellingPartner/helpers/graphql.js +13 -0
  71. package/dist/nodes/AmazonSellingPartner/helpers/graphql.js.map +1 -0
  72. package/dist/nodes/AmazonSellingPartner/operations/Analytics.operations.d.ts +2 -0
  73. package/dist/nodes/AmazonSellingPartner/operations/Analytics.operations.js +66 -0
  74. package/dist/nodes/AmazonSellingPartner/operations/Analytics.operations.js.map +1 -0
  75. package/dist/nodes/AmazonSellingPartner/operations/DataKiosk.operations.d.ts +2 -0
  76. package/dist/nodes/AmazonSellingPartner/operations/DataKiosk.operations.js +249 -0
  77. package/dist/nodes/AmazonSellingPartner/operations/DataKiosk.operations.js.map +1 -0
  78. package/dist/nodes/AmazonSellingPartner/operations/Finance.operations.d.ts +2 -0
  79. package/dist/nodes/AmazonSellingPartner/operations/Finance.operations.js +444 -0
  80. package/dist/nodes/AmazonSellingPartner/operations/Finance.operations.js.map +1 -0
  81. package/dist/nodes/AmazonSellingPartner/operations/Invoices.operations.d.ts +4 -0
  82. package/dist/nodes/AmazonSellingPartner/operations/Invoices.operations.js +224 -0
  83. package/dist/nodes/AmazonSellingPartner/operations/Invoices.operations.js.map +1 -0
  84. package/dist/nodes/AmazonSellingPartner/operations/Listings.operations.d.ts +2 -0
  85. package/dist/nodes/AmazonSellingPartner/operations/Listings.operations.js +426 -0
  86. package/dist/nodes/AmazonSellingPartner/operations/Listings.operations.js.map +1 -0
  87. package/dist/nodes/AmazonSellingPartner/operations/Orders.operations.d.ts +2 -0
  88. package/dist/nodes/AmazonSellingPartner/operations/Orders.operations.js +169 -0
  89. package/dist/nodes/AmazonSellingPartner/operations/Orders.operations.js.map +1 -0
  90. package/dist/nodes/AmazonSellingPartner/operations/Reports.operations.d.ts +2 -0
  91. package/dist/nodes/AmazonSellingPartner/operations/Reports.operations.js +434 -0
  92. package/dist/nodes/AmazonSellingPartner/operations/Reports.operations.js.map +1 -0
  93. package/dist/nodes/AmazonSellingPartner/operations/Shipments.operations.d.ts +2 -0
  94. package/dist/nodes/AmazonSellingPartner/operations/Shipments.operations.js +78 -0
  95. package/dist/nodes/AmazonSellingPartner/operations/Shipments.operations.js.map +1 -0
  96. package/dist/nodes/AmazonSellingPartner/operations/analytics/constants.d.ts +126 -0
  97. package/dist/nodes/AmazonSellingPartner/operations/analytics/constants.js +213 -0
  98. package/dist/nodes/AmazonSellingPartner/operations/analytics/constants.js.map +1 -0
  99. package/dist/package.json +10 -2
  100. package/dist/tsconfig.tsbuildinfo +1 -1
  101. package/package.json +10 -2
  102. package/dist/credentials/AmazonSellingPartnerApi.credentials.d.ts +0 -16
  103. package/dist/credentials/AmazonSellingPartnerApi.credentials.js +0 -145
  104. package/dist/credentials/AmazonSellingPartnerApi.credentials.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Listings.operations.js","sourceRoot":"","sources":["../../../../nodes/AmazonSellingPartner/operations/Listings.operations.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import { IExecuteFunctions, INodeExecutionData } from 'n8n-workflow';
2
+ export declare function executeOrdersOperation(this: IExecuteFunctions, operation: string, itemIndex: number): Promise<INodeExecutionData[]>;
@@ -0,0 +1,169 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.executeOrdersOperation = executeOrdersOperation;
4
+ const n8n_workflow_1 = require("n8n-workflow");
5
+ const SpApiRequest_1 = require("../helpers/SpApiRequest");
6
+ const SecurityValidator_1 = require("../core/SecurityValidator");
7
+ async function executeOrdersOperation(operation, itemIndex) {
8
+ var _a, _b, _c;
9
+ const returnData = [];
10
+ const nodeId = this.getNode().id;
11
+ if (operation === 'getOrders') {
12
+ const marketplaceIds = this.getNodeParameter('marketplaceIds', itemIndex);
13
+ const createdAfter = this.getNodeParameter('createdAfter', itemIndex);
14
+ const createdBefore = this.getNodeParameter('createdBefore', itemIndex);
15
+ const additionalOptions = this.getNodeParameter('additionalOptions', itemIndex, {});
16
+ const marketplaceValidation = SecurityValidator_1.securityValidator.validateMarketplaceIds(marketplaceIds, nodeId);
17
+ if (!marketplaceValidation.isValid) {
18
+ throw new n8n_workflow_1.NodeOperationError(this.getNode(), marketplaceValidation.errors.join(', '));
19
+ }
20
+ const dateValidation = SecurityValidator_1.securityValidator.validateDateRange(createdAfter, createdBefore, nodeId);
21
+ if (!dateValidation.isValid) {
22
+ throw new n8n_workflow_1.NodeOperationError(this.getNode(), dateValidation.errors.join(', '));
23
+ }
24
+ const queryParams = {
25
+ MarketplaceIds: marketplaceIds,
26
+ CreatedAfter: createdAfter,
27
+ CreatedBefore: createdBefore,
28
+ };
29
+ if (((_a = additionalOptions.orderStatuses) === null || _a === void 0 ? void 0 : _a.length) > 0) {
30
+ queryParams.OrderStatuses = additionalOptions.orderStatuses;
31
+ }
32
+ if (((_b = additionalOptions.fulfillmentChannels) === null || _b === void 0 ? void 0 : _b.length) > 0) {
33
+ queryParams.FulfillmentChannels = additionalOptions.fulfillmentChannels;
34
+ }
35
+ if (((_c = additionalOptions.paymentMethods) === null || _c === void 0 ? void 0 : _c.length) > 0) {
36
+ queryParams.PaymentMethods = additionalOptions.paymentMethods;
37
+ }
38
+ if (additionalOptions.maxResultsPerPage !== undefined && additionalOptions.maxResultsPerPage !== null) {
39
+ const maxResults = additionalOptions.maxResultsPerPage;
40
+ if (maxResults < 1 || maxResults > 100) {
41
+ throw new n8n_workflow_1.NodeOperationError(this.getNode(), 'MaxResultsPerPage must be between 1 and 100');
42
+ }
43
+ queryParams.MaxResultsPerPage = maxResults;
44
+ }
45
+ const returnAll = additionalOptions.returnAll !== false;
46
+ let nextToken;
47
+ let allOrders = [];
48
+ do {
49
+ if (nextToken) {
50
+ queryParams.NextToken = nextToken;
51
+ }
52
+ try {
53
+ const response = await SpApiRequest_1.SpApiRequest.makeRequest(this, {
54
+ method: 'GET',
55
+ endpoint: '/orders/v0/orders',
56
+ query: queryParams,
57
+ });
58
+ const orders = response.data.payload.Orders || [];
59
+ allOrders = allOrders.concat(orders);
60
+ nextToken = response.data.payload.NextToken;
61
+ if (!returnAll) {
62
+ break;
63
+ }
64
+ }
65
+ catch (error) {
66
+ if (error instanceof n8n_workflow_1.NodeOperationError) {
67
+ throw error;
68
+ }
69
+ const errorMessage = error instanceof Error ? error.message : 'Unknown error occurred';
70
+ throw new n8n_workflow_1.NodeOperationError(this.getNode(), `Failed to retrieve orders: ${errorMessage}`);
71
+ }
72
+ } while (nextToken && returnAll);
73
+ for (const order of allOrders) {
74
+ returnData.push({
75
+ json: order,
76
+ pairedItem: {
77
+ item: itemIndex,
78
+ },
79
+ });
80
+ }
81
+ if (allOrders.length === 0) {
82
+ returnData.push({
83
+ json: {
84
+ message: 'No orders found for the specified criteria',
85
+ searchCriteria: {
86
+ marketplaceIds,
87
+ createdAfter,
88
+ createdBefore,
89
+ ...additionalOptions,
90
+ },
91
+ },
92
+ pairedItem: {
93
+ item: itemIndex,
94
+ },
95
+ });
96
+ }
97
+ }
98
+ if (operation === 'getOrder') {
99
+ const orderId = this.getNodeParameter('orderId', itemIndex);
100
+ if (!/^\d{3}-\d{7}-\d{7}$/.test(orderId)) {
101
+ throw new n8n_workflow_1.NodeOperationError(this.getNode(), 'Invalid Order ID format');
102
+ }
103
+ try {
104
+ const response = await SpApiRequest_1.SpApiRequest.makeRequest(this, {
105
+ method: 'GET',
106
+ endpoint: `/orders/v0/orders/${orderId}`,
107
+ });
108
+ returnData.push({
109
+ json: response.data.payload,
110
+ pairedItem: { item: itemIndex },
111
+ });
112
+ }
113
+ catch (error) {
114
+ const errorMessage = error instanceof Error ? error.message : 'Unknown error occurred';
115
+ throw new n8n_workflow_1.NodeOperationError(this.getNode(), `Failed to retrieve order details: ${errorMessage}`);
116
+ }
117
+ }
118
+ if (operation === 'getOrderItems') {
119
+ const orderId = this.getNodeParameter('orderId', itemIndex);
120
+ const returnAll = this.getNodeParameter('returnAll', itemIndex, true);
121
+ if (!/^\d{3}-\d{7}-\d{7}$/.test(orderId)) {
122
+ throw new n8n_workflow_1.NodeOperationError(this.getNode(), 'Invalid Order ID format');
123
+ }
124
+ let nextToken;
125
+ let allItems = [];
126
+ let pageCount = 0;
127
+ const maxPages = 30;
128
+ do {
129
+ const query = {};
130
+ if (nextToken)
131
+ query.NextToken = nextToken;
132
+ try {
133
+ const response = await SpApiRequest_1.SpApiRequest.makeRequest(this, {
134
+ method: 'GET',
135
+ endpoint: `/orders/v0/orders/${orderId}/orderItems`,
136
+ query,
137
+ });
138
+ const items = response.data.payload.OrderItems || [];
139
+ allItems = allItems.concat(items);
140
+ nextToken = response.data.payload.NextToken;
141
+ pageCount++;
142
+ if (!returnAll || !nextToken || pageCount >= maxPages) {
143
+ break;
144
+ }
145
+ }
146
+ catch (error) {
147
+ const errorMessage = error instanceof Error ? error.message : 'Unknown error occurred';
148
+ throw new n8n_workflow_1.NodeOperationError(this.getNode(), `Failed to retrieve order items: ${errorMessage}`);
149
+ }
150
+ } while (nextToken);
151
+ for (const item of allItems) {
152
+ returnData.push({
153
+ json: item,
154
+ pairedItem: { item: itemIndex },
155
+ });
156
+ }
157
+ if (allItems.length === 0) {
158
+ returnData.push({
159
+ json: {
160
+ message: 'No order items found for the specified order',
161
+ orderId,
162
+ },
163
+ pairedItem: { item: itemIndex },
164
+ });
165
+ }
166
+ }
167
+ return returnData;
168
+ }
169
+ //# sourceMappingURL=Orders.operations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Orders.operations.js","sourceRoot":"","sources":["../../../../nodes/AmazonSellingPartner/operations/Orders.operations.ts"],"names":[],"mappings":";;AA2LA,wDAkNC;AA7YD,+CAIsB;AACtB,0DAAuD;AACvD,iEAA8D;AAqLvD,KAAK,UAAU,sBAAsB,CAE3C,SAAiB,EACjB,SAAiB;;IAEjB,MAAM,UAAU,GAAyB,EAAE,CAAC;IAC5C,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC;IAEjC,IAAI,SAAS,KAAK,WAAW,EAAE,CAAC;QAE/B,MAAM,cAAc,GAAG,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,SAAS,CAAa,CAAC;QACtF,MAAM,YAAY,GAAG,IAAI,CAAC,gBAAgB,CAAC,cAAc,EAAE,SAAS,CAAW,CAAC;QAChF,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,CAAC,eAAe,EAAE,SAAS,CAAW,CAAC;QAClF,MAAM,iBAAiB,GAAG,IAAI,CAAC,gBAAgB,CAAC,mBAAmB,EAAE,SAAS,EAAE,EAAE,CAAQ,CAAC;QAG3F,MAAM,qBAAqB,GAAG,qCAAiB,CAAC,sBAAsB,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC;QAC/F,IAAI,CAAC,qBAAqB,CAAC,OAAO,EAAE,CAAC;YACpC,MAAM,IAAI,iCAAkB,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,qBAAqB,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACvF,CAAC;QAED,MAAM,cAAc,GAAG,qCAAiB,CAAC,iBAAiB,CAAC,YAAY,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC;QAChG,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC;YAC7B,MAAM,IAAI,iCAAkB,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,cAAc,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAChF,CAAC;QAGD,MAAM,WAAW,GAAwB;YACxC,cAAc,EAAE,cAAc;YAC9B,YAAY,EAAE,YAAY;YAC1B,aAAa,EAAE,aAAa;SAC5B,CAAC;QAGF,IAAI,CAAA,MAAA,iBAAiB,CAAC,aAAa,0CAAE,MAAM,IAAG,CAAC,EAAE,CAAC;YACjD,WAAW,CAAC,aAAa,GAAG,iBAAiB,CAAC,aAAa,CAAC;QAC7D,CAAC;QAED,IAAI,CAAA,MAAA,iBAAiB,CAAC,mBAAmB,0CAAE,MAAM,IAAG,CAAC,EAAE,CAAC;YACvD,WAAW,CAAC,mBAAmB,GAAG,iBAAiB,CAAC,mBAAmB,CAAC;QACzE,CAAC;QAED,IAAI,CAAA,MAAA,iBAAiB,CAAC,cAAc,0CAAE,MAAM,IAAG,CAAC,EAAE,CAAC;YAClD,WAAW,CAAC,cAAc,GAAG,iBAAiB,CAAC,cAAc,CAAC;QAC/D,CAAC;QAED,IAAI,iBAAiB,CAAC,iBAAiB,KAAK,SAAS,IAAI,iBAAiB,CAAC,iBAAiB,KAAK,IAAI,EAAE,CAAC;YACvG,MAAM,UAAU,GAAG,iBAAiB,CAAC,iBAAiB,CAAC;YACvD,IAAI,UAAU,GAAG,CAAC,IAAI,UAAU,GAAG,GAAG,EAAE,CAAC;gBACxC,MAAM,IAAI,iCAAkB,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,6CAA6C,CAAC,CAAC;YAC7F,CAAC;YACD,WAAW,CAAC,iBAAiB,GAAG,UAAU,CAAC;QAC5C,CAAC;QAED,MAAM,SAAS,GAAG,iBAAiB,CAAC,SAAS,KAAK,KAAK,CAAC;QACxD,IAAI,SAA6B,CAAC;QAClC,IAAI,SAAS,GAAY,EAAE,CAAC;QAG5B,GAAG,CAAC;YACH,IAAI,SAAS,EAAE,CAAC;gBACf,WAAW,CAAC,SAAS,GAAG,SAAS,CAAC;YACnC,CAAC;YAED,IAAI,CAAC;gBACJ,MAAM,QAAQ,GAAG,MAAM,2BAAY,CAAC,WAAW,CAAoB,IAAI,EAAE;oBACxE,MAAM,EAAE,KAAK;oBACb,QAAQ,EAAE,mBAAmB;oBAC7B,KAAK,EAAE,WAAW;iBAClB,CAAC,CAAC;gBAEH,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC;gBAClD,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAErC,SAAS,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;gBAG5C,IAAI,CAAC,SAAS,EAAE,CAAC;oBAChB,MAAM;gBACP,CAAC;YAEF,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAChB,IAAI,KAAK,YAAY,iCAAkB,EAAE,CAAC;oBACzC,MAAM,KAAK,CAAC;gBACb,CAAC;gBACD,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,wBAAwB,CAAC;gBACvF,MAAM,IAAI,iCAAkB,CAC3B,IAAI,CAAC,OAAO,EAAE,EACd,8BAA8B,YAAY,EAAE,CAC5C,CAAC;YACH,CAAC;QACF,CAAC,QAAQ,SAAS,IAAI,SAAS,EAAE;QAGjC,KAAK,MAAM,KAAK,IAAI,SAAS,EAAE,CAAC;YAC/B,UAAU,CAAC,IAAI,CAAC;gBACf,IAAI,EAAE,KAAY;gBAClB,UAAU,EAAE;oBACX,IAAI,EAAE,SAAS;iBACf;aACD,CAAC,CAAC;QACJ,CAAC;QAGD,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5B,UAAU,CAAC,IAAI,CAAC;gBACf,IAAI,EAAE;oBACL,OAAO,EAAE,4CAA4C;oBACrD,cAAc,EAAE;wBACf,cAAc;wBACd,YAAY;wBACZ,aAAa;wBACb,GAAG,iBAAiB;qBACpB;iBACD;gBACD,UAAU,EAAE;oBACX,IAAI,EAAE,SAAS;iBACf;aACD,CAAC,CAAC;QACJ,CAAC;IACF,CAAC;IAGD,IAAI,SAAS,KAAK,UAAU,EAAE,CAAC;QAC9B,MAAM,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,SAAS,CAAW,CAAC;QAEtE,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YAC1C,MAAM,IAAI,iCAAkB,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,yBAAyB,CAAC,CAAC;QACzE,CAAC;QAED,IAAI,CAAC;YACJ,MAAM,QAAQ,GAAG,MAAM,2BAAY,CAAC,WAAW,CAAmB,IAAI,EAAE;gBACvE,MAAM,EAAE,KAAK;gBACb,QAAQ,EAAE,qBAAqB,OAAO,EAAE;aACxC,CAAC,CAAC;YAEH,UAAU,CAAC,IAAI,CAAC;gBACf,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,OAAc;gBAClC,UAAU,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;aAC/B,CAAC,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,wBAAwB,CAAC;YACvF,MAAM,IAAI,iCAAkB,CAC3B,IAAI,CAAC,OAAO,EAAE,EACd,qCAAqC,YAAY,EAAE,CACnD,CAAC;QACH,CAAC;IACF,CAAC;IAGD,IAAI,SAAS,KAAK,eAAe,EAAE,CAAC;QACnC,MAAM,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,SAAS,CAAW,CAAC;QACtE,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,SAAS,EAAE,IAAI,CAAY,CAAC;QAEjF,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YAC1C,MAAM,IAAI,iCAAkB,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,yBAAyB,CAAC,CAAC;QACzE,CAAC;QAED,IAAI,SAA6B,CAAC;QAClC,IAAI,QAAQ,GAAgB,EAAE,CAAC;QAC/B,IAAI,SAAS,GAAG,CAAC,CAAC;QAClB,MAAM,QAAQ,GAAG,EAAE,CAAC;QAEpB,GAAG,CAAC;YACH,MAAM,KAAK,GAAwB,EAAE,CAAC;YACtC,IAAI,SAAS;gBAAE,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC;YAE3C,IAAI,CAAC;gBACJ,MAAM,QAAQ,GAAG,MAAM,2BAAY,CAAC,WAAW,CAAwB,IAAI,EAAE;oBAC5E,MAAM,EAAE,KAAK;oBACb,QAAQ,EAAE,qBAAqB,OAAO,aAAa;oBACnD,KAAK;iBACL,CAAC,CAAC;gBAEH,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,IAAI,EAAE,CAAC;gBACrD,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAClC,SAAS,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;gBAC5C,SAAS,EAAE,CAAC;gBAEZ,IAAI,CAAC,SAAS,IAAI,CAAC,SAAS,IAAI,SAAS,IAAI,QAAQ,EAAE,CAAC;oBACvD,MAAM;gBACP,CAAC;YACF,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAChB,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,wBAAwB,CAAC;gBACvF,MAAM,IAAI,iCAAkB,CAC3B,IAAI,CAAC,OAAO,EAAE,EACd,mCAAmC,YAAY,EAAE,CACjD,CAAC;YACH,CAAC;QACF,CAAC,QAAQ,SAAS,EAAE;QAEpB,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;YAC7B,UAAU,CAAC,IAAI,CAAC;gBACf,IAAI,EAAE,IAAW;gBACjB,UAAU,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;aAC/B,CAAC,CAAC;QACJ,CAAC;QAED,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC3B,UAAU,CAAC,IAAI,CAAC;gBACf,IAAI,EAAE;oBACL,OAAO,EAAE,8CAA8C;oBACvD,OAAO;iBACP;gBACD,UAAU,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;aAC/B,CAAC,CAAC;QACJ,CAAC;IACF,CAAC;IAED,OAAO,UAAU,CAAC;AACnB,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { IExecuteFunctions, INodeExecutionData } from 'n8n-workflow';
2
+ export declare function executeReportsOperation(this: IExecuteFunctions, operation: string, itemIndex: number): Promise<INodeExecutionData[]>;
@@ -0,0 +1,434 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.executeReportsOperation = executeReportsOperation;
7
+ const axios_1 = __importDefault(require("axios"));
8
+ const n8n_workflow_1 = require("n8n-workflow");
9
+ const sync_1 = require("csv-parse/sync");
10
+ const zlib_1 = require("zlib");
11
+ const util_1 = require("util");
12
+ const SpApiRequest_1 = require("../helpers/SpApiRequest");
13
+ const SecurityValidator_1 = require("../core/SecurityValidator");
14
+ const AuditLogger_1 = require("../core/AuditLogger");
15
+ const REPORT_TYPE_MAP = {
16
+ salesTrafficByAsin: 'GET_SALES_AND_TRAFFIC_REPORT',
17
+ returnsByAsinFba: 'GET_FBA_FULFILLMENT_CUSTOMER_RETURNS_DATA',
18
+ returnsByAsinMfn: 'GET_FLAT_FILE_RETURNS_DATA_BY_RETURN_DATE',
19
+ };
20
+ const gunzipAsync = (0, util_1.promisify)(zlib_1.gunzip);
21
+ function normalizeDate(dateStr) {
22
+ if (!dateStr) {
23
+ return undefined;
24
+ }
25
+ const parsed = new Date(dateStr);
26
+ if (Number.isNaN(parsed.getTime())) {
27
+ return undefined;
28
+ }
29
+ return parsed.toISOString();
30
+ }
31
+ function mapSalesTrafficRow(row) {
32
+ var _a, _b;
33
+ const isoDate = normalizeDate(row['date'] || row['detailed-page-sales-dataset.date']);
34
+ return {
35
+ date: (_b = (_a = isoDate !== null && isoDate !== void 0 ? isoDate : row['date']) !== null && _a !== void 0 ? _a : row['detailed-page-sales-dataset.date']) !== null && _b !== void 0 ? _b : '',
36
+ asin: row['asin'] || row['child-asins.asin'] || row['sku-child.asin'],
37
+ sku: row['sku'] || row['child-asins.sku'] || row['sku-child.sku'],
38
+ parentAsin: row['parent-asins.parent-asin'],
39
+ marketplaceId: row['marketplace'] || row['marketplace-name'],
40
+ orderedUnits: Number(row['units'] || row['ordered-units'] || row['ordered']) || 0,
41
+ orderedProductSales: {
42
+ amount: Number(row['ordered-product-sales'] || row['ordered-revenue']) || 0,
43
+ currencyCode: row['ordered-product-sales-currency-code'] || row['currency-code'] || 'USD',
44
+ },
45
+ sessions: row['sessions'] ? Number(row['sessions']) : undefined,
46
+ pageViews: row['page-views'] ? Number(row['page-views']) : undefined,
47
+ buyBoxPercentage: row['buy-box-percentage'] ? Number(row['buy-box-percentage']) : undefined,
48
+ };
49
+ }
50
+ function mapReturnsRow(row, channel) {
51
+ var _a, _b, _c, _d, _e;
52
+ return {
53
+ date: (_e = (_d = (_c = (_b = (_a = normalizeDate(row['return-date'] ||
54
+ row['return_datetime'] ||
55
+ row['posted-date'] ||
56
+ row['return-date-time'])) !== null && _a !== void 0 ? _a : row['return-date']) !== null && _b !== void 0 ? _b : row['return_datetime']) !== null && _c !== void 0 ? _c : row['posted-date']) !== null && _d !== void 0 ? _d : row['return-date-time']) !== null && _e !== void 0 ? _e : '',
57
+ asin: row['asin'] || row['child-asins.asin'] || row['seller-sku'],
58
+ sku: row['seller-sku'] || row['sku'],
59
+ marketplaceId: row['marketplace-id'] || row['marketplace'],
60
+ returnedUnits: Number(row['quantity'] || row['quantity-returned'] || row['number-of-returned-units']) || 0,
61
+ fulfillmentChannel: channel,
62
+ reason: row['return-reason'] || row['reason'] || row['return-reason-description'],
63
+ reimbursementType: row['reimbursement-type'],
64
+ };
65
+ }
66
+ function sumRefundEvents(events) {
67
+ const totals = {};
68
+ events.forEach(event => {
69
+ const chargeTransactions = event.refundChargeTransactions || [];
70
+ chargeTransactions.forEach(charge => {
71
+ const marketplaceId = event.marketplaceId || 'UNKNOWN';
72
+ if (!totals[marketplaceId]) {
73
+ totals[marketplaceId] = {
74
+ amount: 0,
75
+ currencyCode: charge.amount.currencyCode,
76
+ };
77
+ }
78
+ totals[marketplaceId].amount += Number(charge.amount.amount || 0);
79
+ });
80
+ });
81
+ return totals;
82
+ }
83
+ async function downloadReportDocument(executeFunctions, reportDocumentId, returnRaw, binaryPropertyName) {
84
+ const response = await SpApiRequest_1.SpApiRequest.makeRequest(executeFunctions, {
85
+ method: 'GET',
86
+ endpoint: `/reports/2021-06-30/documents/${reportDocumentId}`,
87
+ });
88
+ const { url, compressionAlgorithm } = response.data;
89
+ const documentResponse = await axios_1.default.get(url, { responseType: 'arraybuffer' });
90
+ let dataBuffer = Buffer.from(documentResponse.data);
91
+ if (compressionAlgorithm === 'GZIP') {
92
+ dataBuffer = await gunzipAsync(dataBuffer);
93
+ }
94
+ if (!dataBuffer || dataBuffer.length === 0) {
95
+ throw new n8n_workflow_1.NodeOperationError(executeFunctions.getNode(), 'Failed to download report document');
96
+ }
97
+ return {
98
+ buffer: dataBuffer,
99
+ binaryData: returnRaw
100
+ ? {
101
+ propertyName: binaryPropertyName,
102
+ data: dataBuffer.toString('base64'),
103
+ mimeType: compressionAlgorithm === 'GZIP' ? 'application/gzip' : 'text/plain',
104
+ fileName: `${reportDocumentId}.${compressionAlgorithm === 'GZIP' ? 'gz' : 'txt'}`,
105
+ }
106
+ : undefined,
107
+ };
108
+ }
109
+ async function createReportAndPoll(executeFunctions, reportType, dataStartTime, dataEndTime, marketplaceIds, advancedOptions, options) {
110
+ var _a, _b, _c;
111
+ const node = executeFunctions.getNode();
112
+ const createResponse = await SpApiRequest_1.SpApiRequest.makeRequest(executeFunctions, {
113
+ method: 'POST',
114
+ endpoint: '/reports/2021-06-30/reports',
115
+ body: {
116
+ reportType,
117
+ dataStartTime,
118
+ dataEndTime,
119
+ marketplaceIds,
120
+ reportOptions: options,
121
+ },
122
+ });
123
+ const reportId = createResponse.data.reportId;
124
+ const maxPollTimeMs = ((_a = advancedOptions === null || advancedOptions === void 0 ? void 0 : advancedOptions.maxPollTimeMinutes) !== null && _a !== void 0 ? _a : 10) * 60 * 1000;
125
+ const pollIntervalMs = ((_b = advancedOptions === null || advancedOptions === void 0 ? void 0 : advancedOptions.pollIntervalSeconds) !== null && _b !== void 0 ? _b : 30) * 1000;
126
+ const start = Date.now();
127
+ while (Date.now() - start < maxPollTimeMs) {
128
+ await new Promise(resolve => setTimeout(resolve, pollIntervalMs));
129
+ const statusResponse = await SpApiRequest_1.SpApiRequest.makeRequest(executeFunctions, {
130
+ method: 'GET',
131
+ endpoint: `/reports/2021-06-30/reports/${reportId}`,
132
+ });
133
+ const status = statusResponse.data;
134
+ switch (status.processingStatus) {
135
+ case 'DONE':
136
+ case 'DONE_NO_DATA':
137
+ return status.reportDocumentId;
138
+ case 'CANCELLED':
139
+ case 'FATAL':
140
+ throw new n8n_workflow_1.NodeOperationError(node, `Report ${reportType} failed with status ${status.processingStatus}`);
141
+ }
142
+ }
143
+ throw new n8n_workflow_1.NodeOperationError(node, `Report ${reportType} timed out after ${(_c = advancedOptions === null || advancedOptions === void 0 ? void 0 : advancedOptions.maxPollTimeMinutes) !== null && _c !== void 0 ? _c : 10} minutes`);
144
+ }
145
+ function parseReport(buffer) {
146
+ try {
147
+ const content = buffer.toString('utf8').trim();
148
+ if (content.startsWith('{') || content.startsWith('[')) {
149
+ try {
150
+ const jsonData = JSON.parse(content);
151
+ if (Array.isArray(jsonData)) {
152
+ return jsonData;
153
+ }
154
+ return [jsonData];
155
+ }
156
+ catch (jsonError) {
157
+ }
158
+ }
159
+ const firstLineEnd = content.indexOf('\n');
160
+ const firstLine = firstLineEnd > 0 ? content.substring(0, firstLineEnd) : content;
161
+ const tabCount = (firstLine.match(/\t/g) || []).length;
162
+ const commaCount = (firstLine.match(/,/g) || []).length;
163
+ const delimiter = tabCount >= commaCount ? '\t' : ',';
164
+ return (0, sync_1.parse)(content, {
165
+ columns: true,
166
+ skip_empty_lines: true,
167
+ delimiter: delimiter,
168
+ relax_column_count: true,
169
+ });
170
+ }
171
+ catch (error) {
172
+ throw new Error(`Failed to parse report: ${error instanceof Error ? error.message : 'Unknown error'}`);
173
+ }
174
+ }
175
+ function validateDateRange(start, end, nodeId) {
176
+ const validation = SecurityValidator_1.securityValidator.validateDateRange(start, end, nodeId);
177
+ if (!validation.isValid) {
178
+ throw new Error(validation.errors.join(', '));
179
+ }
180
+ }
181
+ async function executeReportsOperation(operation, itemIndex) {
182
+ const nodeId = this.getNode().id;
183
+ const dateFrom = this.getNodeParameter('dateFrom', itemIndex);
184
+ const dateTo = this.getNodeParameter('dateTo', itemIndex);
185
+ const marketplaceIds = this.getNodeParameter('marketplaceIds', itemIndex);
186
+ const granularity = this.getNodeParameter('granularity', itemIndex);
187
+ AuditLogger_1.auditLogger.logEvent({
188
+ nodeId,
189
+ action: 'operation_start',
190
+ resource: 'reports',
191
+ details: { operation, itemIndex },
192
+ severity: 'low',
193
+ source: 'user',
194
+ outcome: 'success',
195
+ });
196
+ const marketplaceValidation = SecurityValidator_1.securityValidator.validateMarketplaceIds(marketplaceIds, nodeId);
197
+ if (!marketplaceValidation.isValid) {
198
+ throw new n8n_workflow_1.NodeOperationError(this.getNode(), marketplaceValidation.errors.join(', '));
199
+ }
200
+ try {
201
+ validateDateRange(dateFrom, dateTo, nodeId);
202
+ }
203
+ catch (error) {
204
+ throw new n8n_workflow_1.NodeOperationError(this.getNode(), error instanceof Error ? error.message : String(error));
205
+ }
206
+ switch (operation) {
207
+ case 'salesTrafficByAsin':
208
+ return await handleSalesTraffic.call(this, itemIndex, {
209
+ reportType: REPORT_TYPE_MAP.salesTrafficByAsin,
210
+ reportOptions: buildSalesTrafficOptions.call(this, itemIndex, granularity),
211
+ });
212
+ case 'returnsByAsinFba':
213
+ return await handleReturns.call(this, itemIndex, REPORT_TYPE_MAP.returnsByAsinFba, 'FBA');
214
+ case 'returnsByAsinMfn':
215
+ return await handleReturns.call(this, itemIndex, REPORT_TYPE_MAP.returnsByAsinMfn, 'MFN');
216
+ case 'consolidatedSalesAndReturnsByAsin':
217
+ return await handleConsolidated.call(this, itemIndex);
218
+ case 'refundsByAsin':
219
+ return await handleRefunds.call(this, itemIndex);
220
+ default:
221
+ throw new n8n_workflow_1.NodeOperationError(this.getNode(), `Unknown reports operation: ${operation}`);
222
+ }
223
+ }
224
+ function buildSalesTrafficOptions(itemIndex, granularity) {
225
+ const aggregationLevel = this.getNodeParameter('aggregationLevel', itemIndex, 'CHILD');
226
+ const includeSessions = this.getNodeParameter('includeSessions', itemIndex, true);
227
+ return {
228
+ 'asinGranularity': aggregationLevel,
229
+ 'dateGranularity': granularity,
230
+ 'includeASIN': 'true',
231
+ 'includeChildASIN': aggregationLevel === 'PARENT' ? 'false' : 'true',
232
+ 'includeSessions': includeSessions ? 'true' : 'false',
233
+ };
234
+ }
235
+ async function handleSalesTraffic(itemIndex, options) {
236
+ const dateFrom = this.getNodeParameter('dateFrom', itemIndex);
237
+ const dateTo = this.getNodeParameter('dateTo', itemIndex);
238
+ const marketplaceIds = this.getNodeParameter('marketplaceIds', itemIndex);
239
+ const advancedOptions = this.getNodeParameter('advancedOptions', itemIndex, {});
240
+ const reportDocumentId = await createReportAndPoll(this, options.reportType, dateFrom, dateTo, marketplaceIds, this.getNodeParameter('advancedOptions', itemIndex, {}), options.reportOptions);
241
+ const { buffer, binaryData } = await downloadReportDocument(this, reportDocumentId, Boolean(advancedOptions === null || advancedOptions === void 0 ? void 0 : advancedOptions.returnRawDocument), (advancedOptions === null || advancedOptions === void 0 ? void 0 : advancedOptions.binaryPropertyName) || 'data');
242
+ const rows = parseReport(buffer);
243
+ const mapped = rows.map((row) => mapSalesTrafficRow(row));
244
+ return mapped.map(row => {
245
+ const item = {
246
+ json: row,
247
+ pairedItem: { item: itemIndex },
248
+ };
249
+ if (binaryData) {
250
+ item.binary = {
251
+ [binaryData.propertyName]: {
252
+ data: binaryData.data,
253
+ fileName: binaryData.fileName,
254
+ mimeType: binaryData.mimeType,
255
+ },
256
+ };
257
+ }
258
+ return item;
259
+ });
260
+ }
261
+ async function handleReturns(itemIndex, reportType, channel) {
262
+ const dateFrom = this.getNodeParameter('dateFrom', itemIndex);
263
+ const dateTo = this.getNodeParameter('dateTo', itemIndex);
264
+ const marketplaceIds = this.getNodeParameter('marketplaceIds', itemIndex);
265
+ const advancedOptions = this.getNodeParameter('advancedOptions', itemIndex, {});
266
+ const reportDocumentId = await createReportAndPoll(this, reportType, dateFrom, dateTo, marketplaceIds, this.getNodeParameter('advancedOptions', itemIndex, {}));
267
+ const { buffer, binaryData } = await downloadReportDocument(this, reportDocumentId, Boolean(advancedOptions === null || advancedOptions === void 0 ? void 0 : advancedOptions.returnRawDocument), (advancedOptions === null || advancedOptions === void 0 ? void 0 : advancedOptions.binaryPropertyName) || 'data');
268
+ const rows = parseReport(buffer);
269
+ const mapped = rows.map(row => mapReturnsRow(row, channel));
270
+ return mapped.map(row => {
271
+ const item = {
272
+ json: row,
273
+ pairedItem: { item: itemIndex },
274
+ };
275
+ if (binaryData) {
276
+ item.binary = {
277
+ [binaryData.propertyName]: {
278
+ data: binaryData.data,
279
+ fileName: binaryData.fileName,
280
+ mimeType: binaryData.mimeType,
281
+ },
282
+ };
283
+ }
284
+ return item;
285
+ });
286
+ }
287
+ async function handleConsolidated(itemIndex) {
288
+ const includeRefunds = this.getNodeParameter('includeRefunds', itemIndex, false);
289
+ const emitRawSubdatasets = this.getNodeParameter('emitRawSubdatasets', itemIndex, false);
290
+ const operations = [
291
+ handleSalesTraffic.call(this, itemIndex, {
292
+ reportType: REPORT_TYPE_MAP.salesTrafficByAsin,
293
+ reportOptions: buildSalesTrafficOptions.call(this, itemIndex, this.getNodeParameter('granularity', itemIndex)),
294
+ }),
295
+ handleReturns.call(this, itemIndex, REPORT_TYPE_MAP.returnsByAsinFba, 'FBA'),
296
+ handleReturns.call(this, itemIndex, REPORT_TYPE_MAP.returnsByAsinMfn, 'MFN'),
297
+ ];
298
+ if (includeRefunds) {
299
+ operations.push(handleRefunds.call(this, itemIndex));
300
+ }
301
+ const [sales, fbaReturns, mfnReturns, refunds] = await Promise.all(operations);
302
+ const consolidatedMap = new Map();
303
+ const keyFn = (row) => `${row.date}|${row.marketplaceId}|${row.asin || row.sku || ''}`;
304
+ sales.forEach(item => {
305
+ const salesRow = item.json;
306
+ const asphaltUnits = Number(salesRow.orderedUnits || 0);
307
+ const productSales = salesRow.orderedProductSales;
308
+ const key = keyFn(salesRow);
309
+ consolidatedMap.set(key, {
310
+ date: salesRow.date,
311
+ marketplaceId: salesRow.marketplaceId,
312
+ asin: salesRow.asin,
313
+ sku: salesRow.sku,
314
+ orderedUnits: asphaltUnits,
315
+ orderedProductSales: {
316
+ amount: Number((productSales === null || productSales === void 0 ? void 0 : productSales.amount) || 0),
317
+ currencyCode: (productSales === null || productSales === void 0 ? void 0 : productSales.currencyCode) || 'USD',
318
+ },
319
+ fbaReturnedUnits: 0,
320
+ mfnReturnedUnits: 0,
321
+ refundsAmount: undefined,
322
+ currencyCode: (productSales === null || productSales === void 0 ? void 0 : productSales.currencyCode) || 'USD',
323
+ });
324
+ });
325
+ [fbaReturns, mfnReturns].forEach((dataset, index) => {
326
+ dataset.forEach(item => {
327
+ const returnsRow = item.json;
328
+ if (!returnsRow.date || (!returnsRow.asin && !returnsRow.sku)) {
329
+ return;
330
+ }
331
+ const returnedUnits = Number(returnsRow.returnedUnits || 0);
332
+ if (returnedUnits === 0) {
333
+ return;
334
+ }
335
+ const key = keyFn(returnsRow);
336
+ const existing = consolidatedMap.get(key) || {
337
+ date: returnsRow.date,
338
+ marketplaceId: returnsRow.marketplaceId,
339
+ asin: returnsRow.asin,
340
+ sku: returnsRow.sku,
341
+ orderedUnits: 0,
342
+ orderedProductSales: { amount: 0, currencyCode: 'USD' },
343
+ fbaReturnedUnits: 0,
344
+ mfnReturnedUnits: 0,
345
+ refundsAmount: undefined,
346
+ currencyCode: 'USD',
347
+ };
348
+ const field = index === 0 ? 'fbaReturnedUnits' : 'mfnReturnedUnits';
349
+ existing[field] += returnedUnits;
350
+ consolidatedMap.set(key, existing);
351
+ });
352
+ });
353
+ if (includeRefunds && refunds) {
354
+ refunds.forEach(item => {
355
+ const refundRow = item.json;
356
+ const key = keyFn(refundRow);
357
+ const existing = consolidatedMap.get(key);
358
+ if (!existing) {
359
+ consolidatedMap.set(key, {
360
+ date: refundRow.date,
361
+ marketplaceId: refundRow.marketplaceId,
362
+ asin: undefined,
363
+ sku: undefined,
364
+ orderedUnits: 0,
365
+ orderedProductSales: { amount: 0, currencyCode: refundRow.currencyCode || 'USD' },
366
+ fbaReturnedUnits: 0,
367
+ mfnReturnedUnits: 0,
368
+ refundsAmount: Number(refundRow.refundsAmount || 0),
369
+ currencyCode: refundRow.currencyCode || 'USD',
370
+ });
371
+ }
372
+ else {
373
+ existing.refundsAmount = Number(refundRow.refundsAmount || 0);
374
+ existing.currencyCode = refundRow.currencyCode || existing.currencyCode || 'USD';
375
+ }
376
+ });
377
+ }
378
+ const consolidatedItems = Array.from(consolidatedMap.values()).map(value => ({
379
+ json: value,
380
+ pairedItem: { item: itemIndex },
381
+ }));
382
+ if (emitRawSubdatasets) {
383
+ const filterValidEntries = (items) => {
384
+ return items.filter(item => {
385
+ const row = item.json;
386
+ return (row.date && (row.asin || row.sku)) ||
387
+ Number(row.orderedUnits || 0) > 0 ||
388
+ Number(row.returnedUnits || 0) > 0 ||
389
+ Number(row.refundsAmount || 0) > 0;
390
+ });
391
+ };
392
+ return [
393
+ ...consolidatedItems,
394
+ ...filterValidEntries(sales),
395
+ ...filterValidEntries(fbaReturns),
396
+ ...filterValidEntries(mfnReturns),
397
+ ...(refunds ? filterValidEntries(refunds) : []),
398
+ ];
399
+ }
400
+ return consolidatedItems;
401
+ }
402
+ async function handleRefunds(itemIndex) {
403
+ var _a;
404
+ const dateFrom = this.getNodeParameter('dateFrom', itemIndex);
405
+ const dateTo = this.getNodeParameter('dateTo', itemIndex);
406
+ const marketplaceIds = this.getNodeParameter('marketplaceIds', itemIndex);
407
+ const response = await SpApiRequest_1.SpApiRequest.makeRequest(this, {
408
+ method: 'GET',
409
+ endpoint: '/finances/v0/refunds',
410
+ query: {
411
+ postedAfter: dateFrom,
412
+ postedBefore: dateTo,
413
+ },
414
+ });
415
+ const refundEvents = ((_a = response.data.payload) === null || _a === void 0 ? void 0 : _a.RefundEventList) || [];
416
+ const totalsByMarketplace = sumRefundEvents(refundEvents);
417
+ const items = [];
418
+ Object.entries(totalsByMarketplace).forEach(([marketplaceId, totals]) => {
419
+ if (!marketplaceIds.includes(marketplaceId)) {
420
+ return;
421
+ }
422
+ items.push({
423
+ json: {
424
+ date: dateTo,
425
+ marketplaceId,
426
+ refundsAmount: totals.amount,
427
+ currencyCode: totals.currencyCode,
428
+ },
429
+ pairedItem: { item: itemIndex },
430
+ });
431
+ });
432
+ return items;
433
+ }
434
+ //# sourceMappingURL=Reports.operations.js.map