@nuskin/ns-product-lib 1.5.0-cx24-1810.18 → 1.5.0-cx24-2121.1.2
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 +15 -120
- package/package.json +4 -4
- package/src/productData.js +50 -36
- package/src/productStatusMapper.js +9 -8
package/CHANGELOG.md
CHANGED
@@ -1,143 +1,38 @@
|
|
1
|
-
# [1.5.0-cx24-
|
1
|
+
# [1.5.0-cx24-2121.1.2](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/compare/v1.5.0-cx24-2121.1.1...v1.5.0-cx24-2121.1.2) (2022-08-19)
|
2
2
|
|
3
3
|
|
4
|
-
###
|
5
|
-
|
6
|
-
* Get Product Data from Equinox (#CX24-1810) ([e891f07](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/commit/e891f07e19ece0b3b23f4b6dd8e4d9d9a68fbeea)), closes [#CX24-1810](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/issues/CX24-1810)
|
7
|
-
|
8
|
-
# [1.5.0-cx24-1810.17](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/compare/v1.5.0-cx24-1810.16...v1.5.0-cx24-1810.17) (2022-08-10)
|
9
|
-
|
10
|
-
|
11
|
-
### New
|
12
|
-
|
13
|
-
* Get Product Data from Equinox (#CX24-1810) ([f3c98a5](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/commit/f3c98a58fd69e157fc8c98c546f7300a0a40cba0)), closes [#CX24-1810](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/issues/CX24-1810)
|
14
|
-
* Get Product Data from Equinox (#CX24-1810) ([f219567](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/commit/f219567ab2193d1b0f5d13ff1e09e3dda8735bb4)), closes [#CX24-1810](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/issues/CX24-1810)
|
15
|
-
|
16
|
-
# [1.5.0-cx24-1810.16](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/compare/v1.5.0-cx24-1810.15...v1.5.0-cx24-1810.16) (2022-08-04)
|
17
|
-
|
18
|
-
|
19
|
-
### New
|
20
|
-
|
21
|
-
* Get Product Data from Equinox (#CX24-1810) ([70fa10c](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/commit/70fa10c66f7409adcc6ee92421904f1fd9cdc88e)), closes [#CX24-1810](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/issues/CX24-1810)
|
22
|
-
|
23
|
-
# [1.5.0-cx24-1810.15](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/compare/v1.5.0-cx24-1810.14...v1.5.0-cx24-1810.15) (2022-08-04)
|
24
|
-
|
25
|
-
|
26
|
-
### New
|
27
|
-
|
28
|
-
* Get Product Data from Equinox (#CX24-1810) ([a0979fe](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/commit/a0979feb655a99991a3bc08c3e9251c1638bd072)), closes [#CX24-1810](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/issues/CX24-1810)
|
29
|
-
|
30
|
-
# [1.5.0-cx24-1810.14](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/compare/v1.5.0-cx24-1810.13...v1.5.0-cx24-1810.14) (2022-08-01)
|
31
|
-
|
32
|
-
|
33
|
-
### New
|
34
|
-
|
35
|
-
* Get Product Data from Equinox (#CX24-1810) ([dfbed74](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/commit/dfbed7474b59aaf7f2b644fd32d7b9650f521487)), closes [#CX24-1810](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/issues/CX24-1810)
|
36
|
-
|
37
|
-
# [1.5.0-cx24-1810.13](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/compare/v1.5.0-cx24-1810.12...v1.5.0-cx24-1810.13) (2022-08-01)
|
38
|
-
|
39
|
-
|
40
|
-
### New
|
41
|
-
|
42
|
-
* Get Product Data from Equinox (#CX24-1810) ([0458758](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/commit/04587584f3236282c505fc736f4e05be3357ff84)), closes [#CX24-1810](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/issues/CX24-1810)
|
43
|
-
* Get Product Data from Equinox (#CX24-1810) ([2d3373a](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/commit/2d3373a1eb3757b92b05c455e7456611a6b57c8e)), closes [#CX24-1810](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/issues/CX24-1810)
|
44
|
-
* Get Product Data from Equinox (#CX24-1810) ([260b1f8](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/commit/260b1f8f1cb38065767f08772617b621ccf40c0f)), closes [#CX24-1810](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/issues/CX24-1810)
|
45
|
-
|
46
|
-
# [1.5.0-cx24-1810.12](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/compare/v1.5.0-cx24-1810.11...v1.5.0-cx24-1810.12) (2022-07-29)
|
47
|
-
|
48
|
-
|
49
|
-
### New
|
50
|
-
|
51
|
-
* Get Product Data from Equinox (#CX24-1810) ([650d44a](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/commit/650d44a7419f4e28ac27cc15d6f713a5bcecfb72)), closes [#CX24-1810](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/issues/CX24-1810)
|
52
|
-
* Get Product Data from Equinox (#CX24-1810) ([f5f9126](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/commit/f5f91260746a05ccb6b0a4db06c5dafc2949a300)), closes [#CX24-1810](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/issues/CX24-1810)
|
53
|
-
* Get Product Data from Equinox (#CX24-1810) ([cde96a3](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/commit/cde96a33031275b8582ae590d12e9004f89dd6e0)), closes [#CX24-1810](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/issues/CX24-1810)
|
54
|
-
|
55
|
-
# [1.5.0-cx24-1810.11](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/compare/v1.5.0-cx24-1810.10...v1.5.0-cx24-1810.11) (2022-07-28)
|
56
|
-
|
57
|
-
|
58
|
-
### New
|
59
|
-
|
60
|
-
* Get Product Data from Equinox (#CX24-1810) ([5fb16af](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/commit/5fb16af25c8e903804f56955b249b62750d2b176)), closes [#CX24-1810](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/issues/CX24-1810)
|
61
|
-
* Get Product Data from Equinox (#CX24-1810) ([fc28352](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/commit/fc283527c23dbf4d1b8861646a0617ecdac258c7)), closes [#CX24-1810](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/issues/CX24-1810)
|
62
|
-
|
63
|
-
# [1.5.0-cx24-1810.10](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/compare/v1.5.0-cx24-1810.9...v1.5.0-cx24-1810.10) (2022-07-27)
|
64
|
-
|
65
|
-
|
66
|
-
### New
|
67
|
-
|
68
|
-
* Get Product Data from Equinox (#CX24-1810) ([2c60ab4](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/commit/2c60ab4155d776df57a5e21476a8c22ee3c8876b)), closes [#CX24-1810](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/issues/CX24-1810)
|
69
|
-
|
70
|
-
# [1.5.0-cx24-1810.9](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/compare/v1.5.0-cx24-1810.8...v1.5.0-cx24-1810.9) (2022-07-27)
|
71
|
-
|
72
|
-
|
73
|
-
### New
|
74
|
-
|
75
|
-
* Get Product Data from Equinox (#CX24-1810) ([1e301bd](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/commit/1e301bdcfa7c7b7fe347326fc442908176128596)), closes [#CX24-1810](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/issues/CX24-1810)
|
76
|
-
* Get Product Data from Equinox (#CX24-1810) ([35efae3](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/commit/35efae31f0b48f2e6de445828a3cde996c38910a)), closes [#CX24-1810](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/issues/CX24-1810)
|
77
|
-
|
78
|
-
# [1.5.0-cx24-1810.8](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/compare/v1.5.0-cx24-1810.7...v1.5.0-cx24-1810.8) (2022-07-27)
|
79
|
-
|
80
|
-
|
81
|
-
### New
|
82
|
-
|
83
|
-
* Get Product Data from Equinox (#CX24-1810) ([219fb37](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/commit/219fb379cd942f0b6b11a84df5c222b25b2cdd87)), closes [#CX24-1810](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/issues/CX24-1810)
|
84
|
-
|
85
|
-
# [1.5.0-cx24-1810.7](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/compare/v1.5.0-cx24-1810.6...v1.5.0-cx24-1810.7) (2022-07-27)
|
86
|
-
|
87
|
-
|
88
|
-
### New
|
89
|
-
|
90
|
-
* Get Product Data from Equinox (#CX24-18710) ([60cff61](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/commit/60cff61f5a5c72abb45cf0b9d418555ecfce7136)), closes [#CX24-18710](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/issues/CX24-18710)
|
91
|
-
|
92
|
-
# [1.5.0-cx24-1810.6](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/compare/v1.5.0-cx24-1810.5...v1.5.0-cx24-1810.6) (2022-07-26)
|
93
|
-
|
94
|
-
|
95
|
-
### New
|
96
|
-
|
97
|
-
* Get Product Data from Equinox (#CX24-18710) ([4cf9e6e](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/commit/4cf9e6eec68f9ddd4069a87cae932650455b224d)), closes [#CX24-18710](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/issues/CX24-18710)
|
98
|
-
|
99
|
-
# [1.5.0-cx24-1810.5](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/compare/v1.5.0-cx24-1810.4...v1.5.0-cx24-1810.5) (2022-07-24)
|
100
|
-
|
101
|
-
|
102
|
-
### New
|
4
|
+
### Update
|
103
5
|
|
104
|
-
*
|
6
|
+
* remove hardcoded store ID (CX24-2121) ([3dd107e](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/commit/3dd107ee1cf12de883f6756f271fc7954f0d60f2))
|
105
7
|
|
106
|
-
# [1.5.0-cx24-
|
8
|
+
# [1.5.0-cx24-2121.1.1](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/compare/v1.5.0-CX24.1...v1.5.0-cx24-2121.1.1) (2022-08-18)
|
107
9
|
|
108
10
|
|
109
|
-
###
|
11
|
+
### Update
|
110
12
|
|
111
|
-
*
|
13
|
+
* add getMarket that returns the market name and store ID (CX24-2121) ([c3821fb](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/commit/c3821fb4722e5d5e83bff93aa735ea75741b8a32))
|
112
14
|
|
113
|
-
# [1.5.0-
|
15
|
+
# [1.5.0-CX24.1](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/compare/v1.4.5...v1.5.0-CX24.1) (2022-08-11)
|
114
16
|
|
115
17
|
|
116
18
|
### New
|
117
19
|
|
118
|
-
* Get Product Data from Equinox (#CX24-1810) ([
|
119
|
-
* Get Product Data from Equinox (#CX24-1810) ([64a68ca](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/commit/64a68ca0b099bb74574400d71e3f022e50823e6e)), closes [#CX24-1810](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/issues/CX24-1810)
|
20
|
+
* Get Product Data from Equinox (#CX24-1810) ([cdd8d7e](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/commit/cdd8d7e8eeaab866ee0cbbdf11a29215ca40ce02)), closes [#CX24-1810](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/issues/CX24-1810)
|
120
21
|
|
121
|
-
|
22
|
+
## [1.4.5](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/compare/v1.4.4...v1.4.5) (2022-07-28)
|
122
23
|
|
123
24
|
|
124
|
-
###
|
25
|
+
### Fix
|
125
26
|
|
126
|
-
*
|
27
|
+
* Check for valid productStatusV2Response before reading items (#CX12-4643) ([f4581de](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/commit/f4581dee77da944662d9eb8d064abb0f992d2354)), closes [#CX12-4643](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/issues/CX12-4643)
|
127
28
|
|
128
|
-
|
29
|
+
## [1.4.5-cx12-4643.1](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/compare/v1.4.4...v1.4.5-cx12-4643.1) (2022-07-27)
|
129
30
|
|
130
31
|
|
131
|
-
###
|
32
|
+
### Fix
|
132
33
|
|
133
|
-
*
|
134
|
-
*
|
135
|
-
* Creating EQ product data query (#CX24-1810) ([9047a30](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/commit/9047a30356d707fcf246af6a2aeb47d502f077bf)), closes [#CX24-1810](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/issues/CX24-1810)
|
136
|
-
* Creating EQ product data query (#CX24-1810) ([8d9741f](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/commit/8d9741f48bbdab5a5704ac38262bd8f56ff1d180)), closes [#CX24-1810](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/issues/CX24-1810)
|
137
|
-
* Creating EQ product data query (#CX24-1810) ([9e630e3](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/commit/9e630e33e4aee1049ddfb60af1f299d90eadee08)), closes [#CX24-1810](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/issues/CX24-1810)
|
138
|
-
* Creating EQ product data query (#CX24-1810) ([9dc067e](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/commit/9dc067e9e2dbb18aa327222339521d205d2086f8)), closes [#CX24-1810](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/issues/CX24-1810)
|
139
|
-
* Creating EQ product data query (#CX24-1810) ([a846bdc](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/commit/a846bdc2976d12d722dfca77e136e3f47e27998c)), closes [#CX24-1810](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/issues/CX24-1810)
|
140
|
-
* Creating EQ product data query (#CX24-1810) ([4be96a8](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/commit/4be96a89388dc2b226d0f02361f533fb3565b36b)), closes [#CX24-1810](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/issues/CX24-1810)
|
34
|
+
* Check for valid productStatusV2Response before reading items (#CX12-4643) ([40cb2a7](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/commit/40cb2a770e76c68da33d7322d2947323696d3781)), closes [#CX12-4643](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/issues/CX12-4643)
|
35
|
+
* sonarQube issue ([82deb06](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/commit/82deb06c84af639829394da786184031a07f4da5))
|
141
36
|
|
142
37
|
## [1.4.4](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/compare/v1.4.3...v1.4.4) (2022-06-10)
|
143
38
|
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@nuskin/ns-product-lib",
|
3
|
-
"version": "1.5.0-cx24-
|
3
|
+
"version": "1.5.0-cx24-2121.1.2",
|
4
4
|
"description": "This project contains shared Product models and code between the backend and frontend.",
|
5
5
|
"main": "src/index.js",
|
6
6
|
"scripts": {
|
@@ -30,9 +30,9 @@
|
|
30
30
|
},
|
31
31
|
"dependencies": {
|
32
32
|
"@nuskin/ns-common-lib": "1.3.0",
|
33
|
-
"@nuskin/ns-util": "3.
|
34
|
-
"axios": "
|
35
|
-
"qs": "
|
33
|
+
"@nuskin/ns-util": "3.104.0-cx24-2121.1.2",
|
34
|
+
"axios": "0.27.2",
|
35
|
+
"qs": "6.11.0"
|
36
36
|
},
|
37
37
|
"files": [
|
38
38
|
"src/"
|
package/src/productData.js
CHANGED
@@ -1,46 +1,60 @@
|
|
1
1
|
"use strict";
|
2
2
|
const axios = require("axios");
|
3
3
|
const product = require("./product")
|
4
|
-
|
4
|
+
/** @type {*} */
|
5
5
|
const ProductData = {
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
let apiURL = 'https://storefront.api.wts.nuskin.io/';
|
15
|
-
let productDataResponse = await axios.request({
|
16
|
-
method: 'get',
|
17
|
-
url: `${apiURL}/orchestrationservices/storefront/catalogs/search/`,
|
18
|
-
params: {
|
19
|
-
locale: locale,
|
20
|
-
storeId: '406',
|
21
|
-
filter: filter
|
22
|
-
},
|
23
|
-
headers: this.getProductDataRequestHeaders(marketConfig),
|
24
|
-
responseType: "json"
|
25
|
-
});
|
26
|
-
productResponse = this.eqProductMapper(productDataResponse.data.product)
|
6
|
+
/**
|
7
|
+
* @param {*} skus
|
8
|
+
* @param {*} runConfig
|
9
|
+
* @param {*} marketConfig
|
10
|
+
* @param {{ isEnabled: boolean, storeID: string }} equinoxOptions
|
11
|
+
*/
|
12
|
+
getProductData: async function (skus, runConfig, marketConfig, equinoxOptions) {
|
13
|
+
const locale = `${runConfig.language}_${runConfig.country}`;
|
27
14
|
|
28
|
-
|
29
|
-
|
30
|
-
const payload = {
|
31
|
-
locale: locale,
|
32
|
-
skus: skus
|
33
|
-
};
|
34
|
-
productResponse = await axios.request({
|
35
|
-
method: "post",
|
36
|
-
url: lambdaUrl,
|
37
|
-
data: payload,
|
38
|
-
headers: this.getProductDataRequestHeaders(marketConfig),
|
39
|
-
responseType: "json"
|
40
|
-
});
|
15
|
+
if (equinoxOptions !== undefined && equinoxOptions.isEnabled === true) {
|
16
|
+
return await this.getProductFromEquinox(skus, locale, marketConfig, equinoxOptions.storeID);
|
41
17
|
}
|
42
18
|
|
43
|
-
return
|
19
|
+
return await this.getProductFromLegacy(skus, locale, marketConfig);
|
20
|
+
},
|
21
|
+
|
22
|
+
getProductFromEquinox: async function(skus, locale, marketConfig, storeID) {
|
23
|
+
const filter = `{
|
24
|
+
"filters": [{
|
25
|
+
"fields": "index_key_skuId",
|
26
|
+
"operation": "IN",
|
27
|
+
"value": "${skus.toString()}"
|
28
|
+
}]
|
29
|
+
}`;
|
30
|
+
|
31
|
+
axios.defaults.withCredentials = true;
|
32
|
+
const productDataResponse = await axios.request({
|
33
|
+
method: 'get',
|
34
|
+
url: `https://storefront.api.wts.nuskin.io/orchestrationservices/storefront/catalogs/search/`,
|
35
|
+
params: {
|
36
|
+
locale,
|
37
|
+
storeId: storeID,
|
38
|
+
filter
|
39
|
+
},
|
40
|
+
headers: this.getProductDataRequestHeaders(marketConfig),
|
41
|
+
responseType: "json"
|
42
|
+
});
|
43
|
+
|
44
|
+
return this.eqProductMapper(productDataResponse.data.product);
|
45
|
+
},
|
46
|
+
|
47
|
+
getProductFromLegacy: async function(skus, locale, marketConfig) {
|
48
|
+
const lambdaUrl = `${marketConfig.awsUrl}/productData/v1`;
|
49
|
+
const payload = { locale, skus };
|
50
|
+
|
51
|
+
return await axios.request({
|
52
|
+
method: "post",
|
53
|
+
url: lambdaUrl,
|
54
|
+
data: payload,
|
55
|
+
headers: this.getProductDataRequestHeaders(marketConfig),
|
56
|
+
responseType: "json"
|
57
|
+
});
|
44
58
|
},
|
45
59
|
|
46
60
|
/* eqProductMapper: function(productDataResponse) {
|
@@ -13,7 +13,7 @@ const ProductStatusMapper = {
|
|
13
13
|
*/
|
14
14
|
createProductStatusesFromV2: function(productStatusV2Response) {
|
15
15
|
const productStatuses = [];
|
16
|
-
if (productStatusV2Response.items) {
|
16
|
+
if (productStatusV2Response && productStatusV2Response.items) {
|
17
17
|
for (const productStatusSku of Object.keys(productStatusV2Response.items)) {
|
18
18
|
const productStatusV2 = productStatusV2Response.items[productStatusSku];
|
19
19
|
productStatusV2.sku = productStatusSku;
|
@@ -55,11 +55,12 @@ const ProductStatusMapper = {
|
|
55
55
|
* @return {String}
|
56
56
|
*/
|
57
57
|
function getStatusPartFromV2(productStatusV2) {
|
58
|
-
const
|
58
|
+
const status = productStatusV2.status || {};
|
59
|
+
const retailStatusIsReleased = status.retail === 'RELEASED_FOR_SALE';
|
59
60
|
const wholesaleStatusIsReleased =
|
60
|
-
|
61
|
-
const retailNotSet =
|
62
|
-
const wholesaleNotSet =
|
61
|
+
status.wholesale === 'RELEASED_FOR_SALE';
|
62
|
+
const retailNotSet = status.retail === 'NOT_SET_FOR_DIST_TYPE';
|
63
|
+
const wholesaleNotSet = status.wholesale === 'NOT_SET_FOR_DIST_TYPE';
|
63
64
|
if (retailStatusIsReleased || wholesaleStatusIsReleased) {
|
64
65
|
return 'RELEASED_FOR_SALE';
|
65
66
|
}
|
@@ -69,14 +70,14 @@ function getStatusPartFromV2(productStatusV2) {
|
|
69
70
|
return 'NOT_RELEASED_FOR_SALE';
|
70
71
|
}
|
71
72
|
if (retailNotSet) {
|
72
|
-
return
|
73
|
+
return status.wholesale;
|
73
74
|
}
|
74
75
|
if (wholesaleNotSet) {
|
75
|
-
return
|
76
|
+
return status.retail;
|
76
77
|
}
|
77
78
|
}
|
78
79
|
|
79
|
-
return
|
80
|
+
return status.retail;
|
80
81
|
}
|
81
82
|
|
82
83
|
/**
|