@sp-api-sdk/product-type-definitions-api-2020-09-01 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
  /**
@@ -80,9 +80,9 @@ export declare const ProductTypeDefinitionRequirementsEnum: {
80
80
  readonly ListingProductOnly: "LISTING_PRODUCT_ONLY";
81
81
  readonly ListingOfferOnly: "LISTING_OFFER_ONLY";
82
82
  };
83
- export declare type ProductTypeDefinitionRequirementsEnum = typeof ProductTypeDefinitionRequirementsEnum[keyof typeof ProductTypeDefinitionRequirementsEnum];
83
+ export type ProductTypeDefinitionRequirementsEnum = typeof ProductTypeDefinitionRequirementsEnum[keyof typeof ProductTypeDefinitionRequirementsEnum];
84
84
  export declare const ProductTypeDefinitionRequirementsEnforcedEnum: {
85
85
  readonly Enforced: "ENFORCED";
86
86
  readonly NotEnforced: "NOT_ENFORCED";
87
87
  };
88
- export declare type ProductTypeDefinitionRequirementsEnforcedEnum = typeof ProductTypeDefinitionRequirementsEnforcedEnum[keyof typeof ProductTypeDefinitionRequirementsEnforcedEnum];
88
+ export type ProductTypeDefinitionRequirementsEnforcedEnum = typeof ProductTypeDefinitionRequirementsEnforcedEnum[keyof typeof ProductTypeDefinitionRequirementsEnforcedEnum];
@@ -31,4 +31,4 @@ export interface SchemaLinkLink {
31
31
  export declare const SchemaLinkLinkVerbEnum: {
32
32
  readonly Get: "GET";
33
33
  };
34
- export declare type SchemaLinkLinkVerbEnum = typeof SchemaLinkLinkVerbEnum[keyof typeof SchemaLinkLinkVerbEnum];
34
+ export type SchemaLinkLinkVerbEnum = typeof SchemaLinkLinkVerbEnum[keyof typeof SchemaLinkLinkVerbEnum];
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@sp-api-sdk/product-type-definitions-api-2020-09-01",
3
3
  "author": "Vincent Mesquita <vincent.mesquita@bizon.solutions>",
4
4
  "description": "The Selling Partner API for Product Type Definitions provides programmatic access to attribute and data requirements for product types in the Amazon catalog. Use this API to return the JSON Schema for a product type that you can then use with other Selling Partner APIs, such as the Selling Partner API for Listings Items, the Selling Partner API for Catalog Items, and the Selling Partner API for Feeds (for JSON-based listing feeds). For more information, see the Product Type Definitions API Use Case Guide.",
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
  }