@sp-api-sdk/feeds-api-2021-06-30 1.10.4 → 1.10.6

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.
@@ -80,25 +80,31 @@ const setOAuthToObject = async function (object, name, scopes, configuration) {
80
80
  }
81
81
  };
82
82
  exports.setOAuthToObject = setOAuthToObject;
83
+ function setFlattenedQueryParams(urlSearchParams, parameter, key = "") {
84
+ if (typeof parameter === "object") {
85
+ if (Array.isArray(parameter)) {
86
+ parameter.forEach(item => setFlattenedQueryParams(urlSearchParams, item, key));
87
+ }
88
+ else {
89
+ Object.keys(parameter).forEach(currentKey => setFlattenedQueryParams(urlSearchParams, parameter[currentKey], `${key}${key !== '' ? '.' : ''}${currentKey}`));
90
+ }
91
+ }
92
+ else {
93
+ if (urlSearchParams.has(key)) {
94
+ urlSearchParams.append(key, parameter);
95
+ }
96
+ else {
97
+ urlSearchParams.set(key, parameter);
98
+ }
99
+ }
100
+ }
83
101
  /**
84
102
  *
85
103
  * @export
86
104
  */
87
105
  const setSearchParams = function (url, ...objects) {
88
106
  const searchParams = new URLSearchParams(url.search);
89
- for (const object of objects) {
90
- for (const key in object) {
91
- if (Array.isArray(object[key])) {
92
- searchParams.delete(key);
93
- for (const item of object[key]) {
94
- searchParams.append(key, item);
95
- }
96
- }
97
- else {
98
- searchParams.set(key, object[key]);
99
- }
100
- }
101
- }
107
+ setFlattenedQueryParams(searchParams, objects);
102
108
  url.search = searchParams.toString();
103
109
  };
104
110
  exports.setSearchParams = setSearchParams;
@@ -72,25 +72,31 @@ export const setOAuthToObject = async function (object, name, scopes, configurat
72
72
  object["Authorization"] = "Bearer " + localVarAccessTokenValue;
73
73
  }
74
74
  };
75
+ function setFlattenedQueryParams(urlSearchParams, parameter, key = "") {
76
+ if (typeof parameter === "object") {
77
+ if (Array.isArray(parameter)) {
78
+ parameter.forEach(item => setFlattenedQueryParams(urlSearchParams, item, key));
79
+ }
80
+ else {
81
+ Object.keys(parameter).forEach(currentKey => setFlattenedQueryParams(urlSearchParams, parameter[currentKey], `${key}${key !== '' ? '.' : ''}${currentKey}`));
82
+ }
83
+ }
84
+ else {
85
+ if (urlSearchParams.has(key)) {
86
+ urlSearchParams.append(key, parameter);
87
+ }
88
+ else {
89
+ urlSearchParams.set(key, parameter);
90
+ }
91
+ }
92
+ }
75
93
  /**
76
94
  *
77
95
  * @export
78
96
  */
79
97
  export const setSearchParams = function (url, ...objects) {
80
98
  const searchParams = new URLSearchParams(url.search);
81
- for (const object of objects) {
82
- for (const key in object) {
83
- if (Array.isArray(object[key])) {
84
- searchParams.delete(key);
85
- for (const item of object[key]) {
86
- searchParams.append(key, item);
87
- }
88
- }
89
- else {
90
- searchParams.set(key, object[key]);
91
- }
92
- }
93
- }
99
+ setFlattenedQueryParams(searchParams, objects);
94
100
  url.search = searchParams.toString();
95
101
  };
96
102
  /**
@@ -22,13 +22,13 @@ export interface FeedDocument {
22
22
  */
23
23
  'feedDocumentId': string;
24
24
  /**
25
- * A presigned URL for the feed document. This URL expires after 5 minutes.
25
+ * A presigned URL for the feed document. If `compressionAlgorithm` is not returned, you can download the feed directly from this URL. This URL expires after 5 minutes.
26
26
  * @type {string}
27
27
  * @memberof FeedDocument
28
28
  */
29
29
  'url': string;
30
30
  /**
31
- * If present, the feed document contents are compressed using the indicated algorithm.
31
+ * If the feed document contents have been compressed, the compression algorithm used is returned in this property and you must decompress the feed when you download. Otherwise, you can download the feed directly. Refer to [Step 7. Download the feed processing report](https://developer-docs.amazon.com/sp-api/docs/feeds-api-v2021-06-30-use-case-guide#step-7-download-the-feed-processing-report) in the use case guide, where sample code is provided.
32
32
  * @type {string}
33
33
  * @memberof FeedDocument
34
34
  */
@@ -37,4 +37,4 @@ export interface FeedDocument {
37
37
  export declare const FeedDocumentCompressionAlgorithmEnum: {
38
38
  readonly Gzip: "GZIP";
39
39
  };
40
- export declare type FeedDocumentCompressionAlgorithmEnum = typeof FeedDocumentCompressionAlgorithmEnum[keyof typeof FeedDocumentCompressionAlgorithmEnum];
40
+ export type FeedDocumentCompressionAlgorithmEnum = typeof FeedDocumentCompressionAlgorithmEnum[keyof typeof FeedDocumentCompressionAlgorithmEnum];
@@ -71,4 +71,4 @@ export declare const FeedProcessingStatusEnum: {
71
71
  readonly InProgress: "IN_PROGRESS";
72
72
  readonly InQueue: "IN_QUEUE";
73
73
  };
74
- export declare type FeedProcessingStatusEnum = typeof FeedProcessingStatusEnum[keyof typeof FeedProcessingStatusEnum];
74
+ export type FeedProcessingStatusEnum = typeof FeedProcessingStatusEnum[keyof typeof FeedProcessingStatusEnum];
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@sp-api-sdk/feeds-api-2021-06-30",
3
3
  "author": "Vincent Mesquita <vincent.mesquita@bizon.solutions>",
4
4
  "description": "The Selling Partner API for Feeds lets you upload data to Amazon on behalf of a selling partner.",
5
- "version": "1.10.4",
5
+ "version": "1.10.6",
6
6
  "main": "dist/cjs/index.js",
7
7
  "module": "dist/es/index.js",
8
8
  "types": "dist/types/index.d.ts",
@@ -26,7 +26,7 @@
26
26
  "test": "jest"
27
27
  },
28
28
  "dependencies": {
29
- "@sp-api-sdk/common": "^1.9.16",
29
+ "@sp-api-sdk/common": "^1.9.18",
30
30
  "axios": "^0.27.2"
31
31
  },
32
32
  "repository": {
@@ -51,5 +51,5 @@
51
51
  "typedoc": {
52
52
  "entryPoint": "./index.ts"
53
53
  },
54
- "gitHead": "e5aa87a6384048c9f49b97db7d5d7aca34927853"
54
+ "gitHead": "59d4ae523f7261bbee380ef3bd43a368266a55a6"
55
55
  }