@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 CHANGED
@@ -1,143 +1,38 @@
1
- # [1.5.0-cx24-1810.18](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/compare/v1.5.0-cx24-1810.17...v1.5.0-cx24-1810.18) (2022-08-10)
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
- ### New
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
- * Get Product Data from Equinox (#CX24-1810) ([8e4b094](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/commit/8e4b09404aa98e0b47c2411490268e9e0125772e)), closes [#CX24-1810](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/issues/CX24-1810)
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-1810.4](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/compare/v1.5.0-cx24-1810.3...v1.5.0-cx24-1810.4) (2022-07-21)
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
- ### New
11
+ ### Update
110
12
 
111
- * Get Product Data from Equinox (#CX24-1810) ([859bbc2](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/commit/859bbc2760e79ff6ba7e6aa13c8ef4bd88b20ada)), closes [#CX24-1810](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/issues/CX24-1810)
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-cx24-1810.3](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/compare/v1.5.0-cx24-1810.2...v1.5.0-cx24-1810.3) (2022-07-21)
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) ([a5bdbd3](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/commit/a5bdbd31df1fc38e1cdaef87e4a5304e86edb088)), closes [#CX24-1810](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/issues/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
- # [1.5.0-cx24-1810.2](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/compare/v1.5.0-cx24-1810.1...v1.5.0-cx24-1810.2) (2022-07-16)
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
- ### New
25
+ ### Fix
125
26
 
126
- * Get Product Data from Equinox (#CX24-1810) ([43fd345](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/commit/43fd3458296f7eb88f157da6665bd0fe05020f79)), closes [#CX24-1810](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/issues/CX24-1810)
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
- # [1.5.0-cx24-1810.1](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/compare/v1.4.4...v1.5.0-cx24-1810.1) (2022-07-07)
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
- ### New
32
+ ### Fix
132
33
 
133
- * Adding product data to get from different source (#CX24-1810) ([5b7f0c1](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/commit/5b7f0c1015361ff9aa6f2f21f649fea1b7174b29)), closes [#CX24-1810](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/issues/CX24-1810)
134
- * Creating EQ product data query (#CX24-1810) ([77fadd2](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/commit/77fadd25bbe26044502ef80663e1cc91625c4602)), closes [#CX24-1810](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/issues/CX24-1810)
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-1810.18",
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.103.0-cx24-1810.2",
34
- "axios": "^0.27.2",
35
- "qs": "^6.11.0"
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/"
@@ -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
- getProductData: async function (skus, runConfig, marketConfig, isEqEnabled) {
7
- let productResponse = {};
8
- let locale = `${runConfig.language}_${runConfig.country}`;
9
- if (isEqEnabled == true) {
10
- let filter = '{"filters":[{"field":"index_key_skuId","operation":"IN","value":"' +
11
- skus.toString() +
12
- '"}]}'
13
- axios.defaults.withCredentials = true;
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
- } else {
29
- let lambdaUrl = `${marketConfig.awsUrl}/productData/v1`;
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 productResponse;
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 retailStatusIsReleased = productStatusV2.status.retail === 'RELEASED_FOR_SALE';
58
+ const status = productStatusV2.status || {};
59
+ const retailStatusIsReleased = status.retail === 'RELEASED_FOR_SALE';
59
60
  const wholesaleStatusIsReleased =
60
- productStatusV2.status.wholesale === 'RELEASED_FOR_SALE';
61
- const retailNotSet = productStatusV2.status.retail === 'NOT_SET_FOR_DIST_TYPE';
62
- const wholesaleNotSet = productStatusV2.status.wholesale === 'NOT_SET_FOR_DIST_TYPE';
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 productStatusV2.status.wholesale;
73
+ return status.wholesale;
73
74
  }
74
75
  if (wholesaleNotSet) {
75
- return productStatusV2.status.retail;
76
+ return status.retail;
76
77
  }
77
78
  }
78
79
 
79
- return productStatusV2.status.retail;
80
+ return status.retail;
80
81
  }
81
82
 
82
83
  /**