n8n-nodes-amazon-selling-partner-marketplace 0.0.14

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 (69) hide show
  1. package/LICENSE.md +19 -0
  2. package/README.md +125 -0
  3. package/dist/credentials/AmazonSpApi.credentials.d.ts +10 -0
  4. package/dist/credentials/AmazonSpApi.credentials.js +267 -0
  5. package/dist/credentials/AmazonSpApi.credentials.js.map +1 -0
  6. package/dist/icons/amazon-sp.dark.svg +13 -0
  7. package/dist/icons/amazon-sp.svg +13 -0
  8. package/dist/nodes/AmazonSellingPartner/AmazonSellingPartner.node.d.ts +5 -0
  9. package/dist/nodes/AmazonSellingPartner/AmazonSellingPartner.node.js +93 -0
  10. package/dist/nodes/AmazonSellingPartner/AmazonSellingPartner.node.js.map +1 -0
  11. package/dist/nodes/AmazonSellingPartner/AmazonSellingPartner.node.json +18 -0
  12. package/dist/nodes/AmazonSellingPartner/amazonSpApi.svg +25 -0
  13. package/dist/nodes/AmazonSellingPartner/core/AuditLogger.d.ts +67 -0
  14. package/dist/nodes/AmazonSellingPartner/core/AuditLogger.js +296 -0
  15. package/dist/nodes/AmazonSellingPartner/core/AuditLogger.js.map +1 -0
  16. package/dist/nodes/AmazonSellingPartner/core/ErrorHandler.d.ts +6 -0
  17. package/dist/nodes/AmazonSellingPartner/core/ErrorHandler.js +82 -0
  18. package/dist/nodes/AmazonSellingPartner/core/ErrorHandler.js.map +1 -0
  19. package/dist/nodes/AmazonSellingPartner/core/MetricsCollector.d.ts +48 -0
  20. package/dist/nodes/AmazonSellingPartner/core/MetricsCollector.js +181 -0
  21. package/dist/nodes/AmazonSellingPartner/core/MetricsCollector.js.map +1 -0
  22. package/dist/nodes/AmazonSellingPartner/core/RateLimiter.d.ts +43 -0
  23. package/dist/nodes/AmazonSellingPartner/core/RateLimiter.js +260 -0
  24. package/dist/nodes/AmazonSellingPartner/core/RateLimiter.js.map +1 -0
  25. package/dist/nodes/AmazonSellingPartner/core/SecurityValidator.d.ts +35 -0
  26. package/dist/nodes/AmazonSellingPartner/core/SecurityValidator.js +383 -0
  27. package/dist/nodes/AmazonSellingPartner/core/SecurityValidator.js.map +1 -0
  28. package/dist/nodes/AmazonSellingPartner/core/rateLimitConfig.d.ts +14 -0
  29. package/dist/nodes/AmazonSellingPartner/core/rateLimitConfig.js +93 -0
  30. package/dist/nodes/AmazonSellingPartner/core/rateLimitConfig.js.map +1 -0
  31. package/dist/nodes/AmazonSellingPartner/descriptions/Custom.description.d.ts +3 -0
  32. package/dist/nodes/AmazonSellingPartner/descriptions/Custom.description.js +147 -0
  33. package/dist/nodes/AmazonSellingPartner/descriptions/Custom.description.js.map +1 -0
  34. package/dist/nodes/AmazonSellingPartner/generated/Generated.description.d.ts +4977 -0
  35. package/dist/nodes/AmazonSellingPartner/generated/Generated.description.js +40893 -0
  36. package/dist/nodes/AmazonSellingPartner/generated/Generated.description.js.map +1 -0
  37. package/dist/nodes/AmazonSellingPartner/helpers/LwaClient.d.ts +10 -0
  38. package/dist/nodes/AmazonSellingPartner/helpers/LwaClient.js +79 -0
  39. package/dist/nodes/AmazonSellingPartner/helpers/LwaClient.js.map +1 -0
  40. package/dist/nodes/AmazonSellingPartner/helpers/RdtClient.d.ts +11 -0
  41. package/dist/nodes/AmazonSellingPartner/helpers/RdtClient.js +66 -0
  42. package/dist/nodes/AmazonSellingPartner/helpers/RdtClient.js.map +1 -0
  43. package/dist/nodes/AmazonSellingPartner/helpers/ReportDownloader.d.ts +16 -0
  44. package/dist/nodes/AmazonSellingPartner/helpers/ReportDownloader.js +65 -0
  45. package/dist/nodes/AmazonSellingPartner/helpers/ReportDownloader.js.map +1 -0
  46. package/dist/nodes/AmazonSellingPartner/helpers/SigV4Signer.d.ts +4 -0
  47. package/dist/nodes/AmazonSellingPartner/helpers/SigV4Signer.js +76 -0
  48. package/dist/nodes/AmazonSellingPartner/helpers/SigV4Signer.js.map +1 -0
  49. package/dist/nodes/AmazonSellingPartner/helpers/SpApiRequest.d.ts +23 -0
  50. package/dist/nodes/AmazonSellingPartner/helpers/SpApiRequest.js +220 -0
  51. package/dist/nodes/AmazonSellingPartner/helpers/SpApiRequest.js.map +1 -0
  52. package/dist/nodes/AmazonSellingPartner/helpers/downloadPresigned.d.ts +4 -0
  53. package/dist/nodes/AmazonSellingPartner/helpers/downloadPresigned.js +16 -0
  54. package/dist/nodes/AmazonSellingPartner/helpers/downloadPresigned.js.map +1 -0
  55. package/dist/nodes/AmazonSellingPartner/helpers/graphql.d.ts +1 -0
  56. package/dist/nodes/AmazonSellingPartner/helpers/graphql.js +13 -0
  57. package/dist/nodes/AmazonSellingPartner/helpers/graphql.js.map +1 -0
  58. package/dist/nodes/AmazonSellingPartner/operations/Custom.operations.d.ts +2 -0
  59. package/dist/nodes/AmazonSellingPartner/operations/Custom.operations.js +232 -0
  60. package/dist/nodes/AmazonSellingPartner/operations/Custom.operations.js.map +1 -0
  61. package/dist/nodes/AmazonSellingPartner/operations/Generated.operations.d.ts +2 -0
  62. package/dist/nodes/AmazonSellingPartner/operations/Generated.operations.js +186 -0
  63. package/dist/nodes/AmazonSellingPartner/operations/Generated.operations.js.map +1 -0
  64. package/dist/nodes/AmazonSellingPartner/operations/analytics/constants.d.ts +126 -0
  65. package/dist/nodes/AmazonSellingPartner/operations/analytics/constants.js +213 -0
  66. package/dist/nodes/AmazonSellingPartner/operations/analytics/constants.js.map +1 -0
  67. package/dist/package.json +63 -0
  68. package/dist/tsconfig.tsbuildinfo +1 -0
  69. package/package.json +63 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"downloadPresigned.js","sourceRoot":"","sources":["../../../../nodes/AmazonSellingPartner/helpers/downloadPresigned.ts"],"names":[],"mappings":";;;;;AAEA,8CAOC;AATD,kDAA0B;AAEnB,KAAK,UAAU,iBAAiB,CAAC,GAAW;IAClD,MAAM,GAAG,GAAG,MAAM,eAAK,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC;IAChG,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,qCAAqC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;IACpE,CAAC;IACD,MAAM,WAAW,GAAG,GAAG,CAAC,OAAO,CAAC,cAAc,CAAuB,CAAC;IACtE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,CAAC;AACvD,CAAC"}
@@ -0,0 +1 @@
1
+ export declare function minifyGraphql(query: string): string;
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.minifyGraphql = minifyGraphql;
4
+ function minifyGraphql(query) {
5
+ if (!query)
6
+ return '';
7
+ let q = query;
8
+ q = q.replace(/\/\*[\s\S]*?\*\//g, '');
9
+ q = q.replace(/(^|\s)#[^\n]*/g, '$1');
10
+ q = q.replace(/\s+/g, ' ').trim();
11
+ return q;
12
+ }
13
+ //# sourceMappingURL=graphql.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"graphql.js","sourceRoot":"","sources":["../../../../nodes/AmazonSellingPartner/helpers/graphql.ts"],"names":[],"mappings":";;AAAA,sCAUC;AAVD,SAAgB,aAAa,CAAC,KAAa;IAC1C,IAAI,CAAC,KAAK;QAAE,OAAO,EAAE,CAAC;IACtB,IAAI,CAAC,GAAG,KAAK,CAAC;IAEd,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,mBAAmB,EAAE,EAAE,CAAC,CAAC;IAEvC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC;IAEtC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;IAClC,OAAO,CAAC,CAAC;AACV,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { IExecuteFunctions, INodeExecutionData } from 'n8n-workflow';
2
+ export declare function executeCustomOperation(this: IExecuteFunctions, operation: string, itemIndex: number): Promise<INodeExecutionData[]>;
@@ -0,0 +1,232 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.executeCustomOperation = executeCustomOperation;
4
+ const n8n_workflow_1 = require("n8n-workflow");
5
+ const SpApiRequest_1 = require("../helpers/SpApiRequest");
6
+ const parseJsonParameter = (value, fieldName) => {
7
+ var _a;
8
+ if (value === null || value === undefined || value === '') {
9
+ return undefined;
10
+ }
11
+ if (typeof value === 'string') {
12
+ const trimmed = value.trim();
13
+ if (!trimmed) {
14
+ return undefined;
15
+ }
16
+ try {
17
+ return JSON.parse(trimmed);
18
+ }
19
+ catch (error) {
20
+ throw new n8n_workflow_1.NodeOperationError({}, `Invalid JSON provided for "${fieldName}": ${(_a = error.message) !== null && _a !== void 0 ? _a : error}`);
21
+ }
22
+ }
23
+ return value;
24
+ };
25
+ const ensureObject = (value, fieldName) => {
26
+ const parsed = parseJsonParameter(value, fieldName);
27
+ if (parsed === undefined) {
28
+ return undefined;
29
+ }
30
+ if (typeof parsed === 'object' && parsed !== null && !Array.isArray(parsed)) {
31
+ return parsed;
32
+ }
33
+ throw new n8n_workflow_1.NodeOperationError({}, `"${fieldName}" must be a JSON object.`);
34
+ };
35
+ const ensureObjectOrArray = (value, fieldName) => {
36
+ const parsed = parseJsonParameter(value, fieldName);
37
+ if (parsed === undefined) {
38
+ return undefined;
39
+ }
40
+ if (typeof parsed === 'object' && parsed !== null) {
41
+ return parsed;
42
+ }
43
+ throw new n8n_workflow_1.NodeOperationError({}, `"${fieldName}" must be a JSON object or array.`);
44
+ };
45
+ const hasBodyContent = (value) => {
46
+ if (value === undefined) {
47
+ return false;
48
+ }
49
+ if (Array.isArray(value)) {
50
+ return value.length > 0;
51
+ }
52
+ return Object.keys(value).length > 0;
53
+ };
54
+ const mergeQueryObjects = (target, additions) => {
55
+ if (!additions || !Object.keys(additions).length) {
56
+ return target;
57
+ }
58
+ const aggregated = {};
59
+ const pushValue = (key, value) => {
60
+ if (value === undefined || value === null) {
61
+ return;
62
+ }
63
+ if (!aggregated[key]) {
64
+ aggregated[key] = [];
65
+ }
66
+ aggregated[key].push(String(value));
67
+ };
68
+ const addFromSource = (source) => {
69
+ if (!source)
70
+ return;
71
+ for (const [key, value] of Object.entries(source)) {
72
+ if (Array.isArray(value)) {
73
+ value.forEach((item) => pushValue(key, item));
74
+ }
75
+ else {
76
+ pushValue(key, value);
77
+ }
78
+ }
79
+ };
80
+ addFromSource(target);
81
+ addFromSource(additions);
82
+ const result = {};
83
+ for (const [key, values] of Object.entries(aggregated)) {
84
+ result[key] = values.length === 1 ? values[0] : values;
85
+ }
86
+ return result;
87
+ };
88
+ const bodyToQueryParams = (input) => {
89
+ if (Array.isArray(input)) {
90
+ throw new n8n_workflow_1.NodeOperationError({}, 'For GET/HEAD requests the body must be a JSON object.');
91
+ }
92
+ const entries = {};
93
+ const appendValue = (key, value) => {
94
+ if (value === undefined || value === null || value === '') {
95
+ return;
96
+ }
97
+ if (Array.isArray(value)) {
98
+ value.forEach((item) => appendValue(`${key}[]`, item));
99
+ return;
100
+ }
101
+ if (typeof value === 'object') {
102
+ for (const [childKey, childValue] of Object.entries(value)) {
103
+ const nextKey = key ? `${key}[${childKey}]` : childKey;
104
+ appendValue(nextKey, childValue);
105
+ }
106
+ return;
107
+ }
108
+ const stringValue = String(value);
109
+ if (!entries[key]) {
110
+ entries[key] = [];
111
+ }
112
+ entries[key].push(stringValue);
113
+ };
114
+ for (const [key, value] of Object.entries(input)) {
115
+ appendValue(key, value);
116
+ }
117
+ const queryObject = {};
118
+ for (const [key, values] of Object.entries(entries)) {
119
+ queryObject[key] = values.length === 1 ? values[0] : values;
120
+ }
121
+ return queryObject;
122
+ };
123
+ const normalizeEndpoint = (endpoint) => {
124
+ if (/^https?:\/\//i.test(endpoint)) {
125
+ return endpoint;
126
+ }
127
+ return endpoint.startsWith('/') ? endpoint : `/${endpoint}`;
128
+ };
129
+ const sanitizeHeaders = (headers) => {
130
+ if (!headers || !Object.keys(headers).length) {
131
+ return undefined;
132
+ }
133
+ const blocked = new Set(['x-amz-access-token', 'authorization', 'host', 'content-length']);
134
+ const output = {};
135
+ for (const [key, value] of Object.entries(headers)) {
136
+ const lowerKey = key.toLowerCase();
137
+ if (blocked.has(lowerKey) || value === undefined || value === null) {
138
+ continue;
139
+ }
140
+ output[key] = String(value);
141
+ }
142
+ return Object.keys(output).length ? output : undefined;
143
+ };
144
+ const toReturnItem = (result, includeMetadata) => {
145
+ if (!includeMetadata) {
146
+ return typeof result.data === 'object' && result.data !== null
147
+ ? result.data
148
+ : { data: result.data };
149
+ }
150
+ return {
151
+ data: result.data,
152
+ status: result.status,
153
+ headers: result.headers,
154
+ };
155
+ };
156
+ async function executeCustomOperation(operation, itemIndex) {
157
+ const returnData = [];
158
+ const executeSingle = async (definition) => {
159
+ var _a, _b, _c;
160
+ const method = ((_a = definition.method) !== null && _a !== void 0 ? _a : 'GET').toUpperCase();
161
+ const endpoint = definition.endpoint;
162
+ if (!endpoint) {
163
+ throw new n8n_workflow_1.NodeOperationError(this.getNode(), 'Endpoint is required.');
164
+ }
165
+ const query = (_b = definition.query) !== null && _b !== void 0 ? _b : undefined;
166
+ const body = (_c = definition.body) !== null && _c !== void 0 ? _c : undefined;
167
+ const headers = sanitizeHeaders(definition.headers);
168
+ let finalQuery = query;
169
+ let finalBody = body;
170
+ if (hasBodyContent(body) && ['GET', 'HEAD'].includes(method)) {
171
+ const bodyQuery = bodyToQueryParams(body);
172
+ finalQuery = mergeQueryObjects(finalQuery, bodyQuery);
173
+ finalBody = undefined;
174
+ }
175
+ const responseType = definition.responseType === 'text' ? 'text' : 'json';
176
+ const result = await SpApiRequest_1.SpApiRequest.makeRequest(this, {
177
+ method: method,
178
+ endpoint: normalizeEndpoint(endpoint),
179
+ query: finalQuery,
180
+ body: finalBody,
181
+ headers,
182
+ responseType,
183
+ });
184
+ const output = toReturnItem(result, Boolean(definition.includeMetadata));
185
+ returnData.push({ json: output, pairedItem: { item: itemIndex } });
186
+ };
187
+ if (operation === 'customRequest') {
188
+ const method = this.getNodeParameter('method', itemIndex);
189
+ const endpoint = this.getNodeParameter('endpoint', itemIndex);
190
+ const query = ensureObject(this.getNodeParameter('queryJson', itemIndex, {}), 'Query (JSON)');
191
+ const body = ensureObjectOrArray(this.getNodeParameter('bodyJson', itemIndex, {}), 'Body (JSON)');
192
+ const headers = ensureObject(this.getNodeParameter('headersJson', itemIndex, {}), 'Headers (JSON)');
193
+ const responseType = this.getNodeParameter('responseType', itemIndex, 'json');
194
+ const includeMetadata = this.getNodeParameter('includeMetadata', itemIndex, false);
195
+ await executeSingle({
196
+ method,
197
+ endpoint,
198
+ query,
199
+ body,
200
+ headers,
201
+ responseType,
202
+ includeMetadata,
203
+ });
204
+ return returnData;
205
+ }
206
+ if (operation === 'jsonDefinition') {
207
+ const requestJsonRaw = this.getNodeParameter('requestJson', itemIndex, {});
208
+ const parsedRequestJson = parseJsonParameter(requestJsonRaw, 'Request Definition (JSON)');
209
+ if (parsedRequestJson === undefined ||
210
+ (typeof parsedRequestJson !== 'object' && !Array.isArray(parsedRequestJson))) {
211
+ throw new n8n_workflow_1.NodeOperationError(this.getNode(), 'Request definition must be a JSON object or array.');
212
+ }
213
+ const requests = Array.isArray(parsedRequestJson)
214
+ ? parsedRequestJson
215
+ : [parsedRequestJson];
216
+ for (const requestDef of requests) {
217
+ const definition = {
218
+ method: requestDef.method,
219
+ endpoint: requestDef.endpoint,
220
+ query: ensureObject(requestDef.query, 'query'),
221
+ body: ensureObjectOrArray(requestDef.body, 'body'),
222
+ headers: ensureObject(requestDef.headers, 'headers'),
223
+ responseType: requestDef.responseType,
224
+ includeMetadata: Boolean(requestDef.includeMetadata),
225
+ };
226
+ await executeSingle(definition);
227
+ }
228
+ return returnData;
229
+ }
230
+ throw new n8n_workflow_1.NodeOperationError(this.getNode(), `Unknown custom operation: ${operation}`);
231
+ }
232
+ //# sourceMappingURL=Custom.operations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Custom.operations.js","sourceRoot":"","sources":["../../../../nodes/AmazonSellingPartner/operations/Custom.operations.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import { IExecuteFunctions, INodeExecutionData } from 'n8n-workflow';
2
+ export declare function executeGeneratedOperation(this: IExecuteFunctions, resource: string, operation: string, itemIndex: number): Promise<INodeExecutionData[]>;
@@ -0,0 +1,186 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.executeGeneratedOperation = executeGeneratedOperation;
4
+ const n8n_workflow_1 = require("n8n-workflow");
5
+ const SpApiRequest_1 = require("../helpers/SpApiRequest");
6
+ const Generated_description_1 = require("../generated/Generated.description");
7
+ const parseJsonParameter = (value, fieldName) => {
8
+ var _a;
9
+ if (value === null || value === undefined || value === '') {
10
+ return undefined;
11
+ }
12
+ if (typeof value === 'string') {
13
+ const trimmed = value.trim();
14
+ if (!trimmed) {
15
+ return undefined;
16
+ }
17
+ try {
18
+ return JSON.parse(trimmed);
19
+ }
20
+ catch (error) {
21
+ throw new n8n_workflow_1.NodeOperationError({}, `Invalid JSON provided for "${fieldName}": ${(_a = error.message) !== null && _a !== void 0 ? _a : error}`);
22
+ }
23
+ }
24
+ return value;
25
+ };
26
+ const ensureObjectOrArray = (value, fieldName) => {
27
+ const parsed = parseJsonParameter(value, fieldName);
28
+ if (parsed === undefined) {
29
+ return undefined;
30
+ }
31
+ if (typeof parsed === 'object' && parsed !== null) {
32
+ return parsed;
33
+ }
34
+ throw new n8n_workflow_1.NodeOperationError({}, `"${fieldName}" must be a JSON object or array.`);
35
+ };
36
+ const extractSellerIdFromPayload = (data) => {
37
+ if (!data)
38
+ return undefined;
39
+ if (Array.isArray(data)) {
40
+ for (const entry of data) {
41
+ const found = extractSellerIdFromPayload(entry);
42
+ if (found)
43
+ return found;
44
+ }
45
+ return undefined;
46
+ }
47
+ if (typeof data !== 'object')
48
+ return undefined;
49
+ const record = data;
50
+ if (typeof record.sellerId === 'string')
51
+ return record.sellerId;
52
+ if (record.payload) {
53
+ const found = extractSellerIdFromPayload(record.payload);
54
+ if (found)
55
+ return found;
56
+ }
57
+ if (Array.isArray(record.participations)) {
58
+ for (const part of record.participations) {
59
+ const found = extractSellerIdFromPayload(part);
60
+ if (found)
61
+ return found;
62
+ }
63
+ }
64
+ return undefined;
65
+ };
66
+ const resolveSellerId = async (executeFunctions) => {
67
+ const credentials = await executeFunctions.getCredentials('amazonSpApi');
68
+ if (credentials.sellerId && typeof credentials.sellerId === 'string') {
69
+ return credentials.sellerId;
70
+ }
71
+ const response = await SpApiRequest_1.SpApiRequest.makeRequest(executeFunctions, {
72
+ method: 'GET',
73
+ endpoint: '/sellers/v1/marketplaceParticipations',
74
+ });
75
+ const sellerId = extractSellerIdFromPayload(response.data);
76
+ if (!sellerId) {
77
+ throw new n8n_workflow_1.NodeOperationError(executeFunctions.getNode(), 'Could not auto-extract seller ID. Provide Seller ID in credentials or ensure marketplace participations are accessible.');
78
+ }
79
+ return sellerId;
80
+ };
81
+ const splitCommaSeparated = (value) => value
82
+ .split(',')
83
+ .map((entry) => entry.trim())
84
+ .filter((entry) => entry.length > 0);
85
+ const normalizeQueryValue = (param, value) => {
86
+ if (value === null || value === undefined || value === '') {
87
+ return undefined;
88
+ }
89
+ if (param.isArray) {
90
+ if (Array.isArray(value)) {
91
+ return value.length ? value : undefined;
92
+ }
93
+ if (typeof value === 'string') {
94
+ const parsed = splitCommaSeparated(value);
95
+ return parsed.length ? parsed : undefined;
96
+ }
97
+ return [value];
98
+ }
99
+ if (param.type === 'boolean' && typeof value === 'string') {
100
+ const lowered = value.toLowerCase();
101
+ if (lowered === 'true')
102
+ return true;
103
+ if (lowered === 'false')
104
+ return false;
105
+ }
106
+ if ((param.type === 'integer' || param.type === 'number') && typeof value === 'string') {
107
+ const parsed = Number(value);
108
+ if (Number.isNaN(parsed)) {
109
+ throw new n8n_workflow_1.NodeOperationError({}, `Invalid number provided for "${param.name}".`);
110
+ }
111
+ return parsed;
112
+ }
113
+ return value;
114
+ };
115
+ const normalizeEndpoint = (endpoint, pathParams) => {
116
+ let resolved = endpoint;
117
+ for (const [key, value] of Object.entries(pathParams)) {
118
+ resolved = resolved.replace(new RegExp(`\\{${key}\\}`, 'g'), encodeURIComponent(value));
119
+ }
120
+ return resolved;
121
+ };
122
+ const toReturnItem = (result) => {
123
+ if (typeof result.data === 'object' && result.data !== null) {
124
+ return result.data;
125
+ }
126
+ return { data: result.data };
127
+ };
128
+ async function executeGeneratedOperation(resource, operation, itemIndex) {
129
+ const operationMap = Generated_description_1.generatedOperationMap;
130
+ const resourceOperations = operationMap[resource];
131
+ if (!resourceOperations || !resourceOperations[operation]) {
132
+ throw new n8n_workflow_1.NodeOperationError(this.getNode(), `Unknown operation: ${resource}.${operation}`);
133
+ }
134
+ const operationMeta = resourceOperations[operation];
135
+ const credentials = await this.getCredentials('amazonSpApi');
136
+ const query = {};
137
+ const pathParams = {};
138
+ let body;
139
+ for (const param of operationMeta.params) {
140
+ if (param.in === 'body') {
141
+ continue;
142
+ }
143
+ let value = this.getNodeParameter(param.name, itemIndex, undefined);
144
+ if ((value === '' || value === undefined || value === null) && param.name === 'sellerId') {
145
+ value = await resolveSellerId(this);
146
+ }
147
+ if ((value === '' || value === undefined || value === null) && param.name === 'marketplaceId') {
148
+ value = credentials.primaryMarketplace;
149
+ }
150
+ if ((value === '' || value === undefined || value === null) && param.name === 'marketplaceIds') {
151
+ value = [credentials.primaryMarketplace];
152
+ }
153
+ const normalized = normalizeQueryValue(param, value);
154
+ if (normalized === undefined || normalized === null || normalized === '') {
155
+ if (param.required && param.in === 'path') {
156
+ throw new n8n_workflow_1.NodeOperationError(this.getNode(), `Missing required path parameter: ${param.name}`);
157
+ }
158
+ continue;
159
+ }
160
+ if (param.in === 'path') {
161
+ pathParams[param.name] = String(normalized);
162
+ }
163
+ else if (param.in === 'query') {
164
+ query[param.name] = normalized;
165
+ }
166
+ }
167
+ if (operationMeta.hasBody) {
168
+ body = ensureObjectOrArray(this.getNodeParameter('bodyJson', itemIndex, undefined), 'bodyJson');
169
+ }
170
+ const endpoint = normalizeEndpoint(operationMeta.endpoint, pathParams);
171
+ const responseType = this.getNodeParameter('responseType', itemIndex, 'json');
172
+ const response = await SpApiRequest_1.SpApiRequest.makeRequest(this, {
173
+ method: operationMeta.method,
174
+ endpoint,
175
+ query,
176
+ body,
177
+ responseType,
178
+ });
179
+ return [
180
+ {
181
+ json: toReturnItem(response),
182
+ pairedItem: { item: itemIndex },
183
+ },
184
+ ];
185
+ }
186
+ //# sourceMappingURL=Generated.operations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Generated.operations.js","sourceRoot":"","sources":["../../../../nodes/AmazonSellingPartner/operations/Generated.operations.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,126 @@
1
+ export interface AnalyticsMetric {
2
+ id: string;
3
+ displayName: string;
4
+ description: string;
5
+ category: 'traffic' | 'sales' | 'conversion' | 'buybox' | 'computed';
6
+ dataType: 'number' | 'percentage' | 'currency';
7
+ computedFormula?: string;
8
+ }
9
+ export interface SchemaVersion {
10
+ version: string;
11
+ displayName: string;
12
+ description: string;
13
+ supportedMetrics: string[];
14
+ supportedDimensions: string[];
15
+ maxDateRange: number;
16
+ }
17
+ export declare const SCHEMA_VERSIONS: Record<string, SchemaVersion>;
18
+ export declare const ANALYTICS_METRICS: Record<string, AnalyticsMetric>;
19
+ export declare const METRIC_CATEGORIES: {
20
+ traffic: {
21
+ displayName: string;
22
+ description: string;
23
+ metrics: string[];
24
+ };
25
+ sales: {
26
+ displayName: string;
27
+ description: string;
28
+ metrics: string[];
29
+ };
30
+ conversion: {
31
+ displayName: string;
32
+ description: string;
33
+ metrics: string[];
34
+ };
35
+ buybox: {
36
+ displayName: string;
37
+ description: string;
38
+ metrics: string[];
39
+ };
40
+ computed: {
41
+ displayName: string;
42
+ description: string;
43
+ metrics: string[];
44
+ };
45
+ };
46
+ export declare const DATE_PRESETS: {
47
+ today: {
48
+ displayName: string;
49
+ days: number;
50
+ offset: number;
51
+ };
52
+ yesterday: {
53
+ displayName: string;
54
+ days: number;
55
+ offset: number;
56
+ };
57
+ last7days: {
58
+ displayName: string;
59
+ days: number;
60
+ offset: number;
61
+ };
62
+ last30days: {
63
+ displayName: string;
64
+ days: number;
65
+ offset: number;
66
+ };
67
+ last90days: {
68
+ displayName: string;
69
+ days: number;
70
+ offset: number;
71
+ };
72
+ mtd: {
73
+ displayName: string;
74
+ days: string;
75
+ offset: number;
76
+ };
77
+ qtd: {
78
+ displayName: string;
79
+ days: string;
80
+ offset: number;
81
+ };
82
+ ytd: {
83
+ displayName: string;
84
+ days: string;
85
+ offset: number;
86
+ };
87
+ };
88
+ export declare const ANALYTICS_MODES: {
89
+ dataKiosk: {
90
+ value: string;
91
+ displayName: string;
92
+ description: string;
93
+ };
94
+ reports: {
95
+ value: string;
96
+ displayName: string;
97
+ description: string;
98
+ };
99
+ auto: {
100
+ value: string;
101
+ displayName: string;
102
+ description: string;
103
+ };
104
+ };
105
+ export declare function buildDataKioskEndpoint(schemaVersion: string, resource: string): string;
106
+ export declare function buildAnalyticsEndpoint(schemaVersion: string, resource: string): string;
107
+ export declare const REPORTS_FALLBACK_MAPPING: {
108
+ salesAndTrafficByAsin: {
109
+ reportType: string;
110
+ description: string;
111
+ supportedMetrics: string[];
112
+ };
113
+ };
114
+ export declare const SUPPORTED_CURRENCIES: string[];
115
+ export declare const DEFAULT_SETTINGS: {
116
+ schemaVersion: string;
117
+ analyticsMode: string;
118
+ granularity: string;
119
+ pageSize: number;
120
+ maxResults: number;
121
+ includeZeroActivity: boolean;
122
+ outputFormat: string;
123
+ csvDelimiter: string;
124
+ csvDecimalSeparator: string;
125
+ timezone: string;
126
+ };