@nuskin/ns-product-lib 1.5.0-cx24-1810.19 → 1.5.0-cx24-2121.1.3

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,150 +1,45 @@
1
- # [1.5.0-cx24-1810.19](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/compare/v1.5.0-cx24-1810.18...v1.5.0-cx24-1810.19) (2022-08-10)
1
+ # [1.5.0-cx24-2121.1.3](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/compare/v1.5.0-cx24-2121.1.2...v1.5.0-cx24-2121.1.3) (2022-08-19)
2
2
 
3
3
 
4
- ### New
5
-
6
- * Get Product Data from Equinox (#CX24-1810) ([4fb495c](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/commit/4fb495c36ef972e6c76f832ee3426982b02bc152)), 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.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)
9
-
10
-
11
- ### New
12
-
13
- * 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)
14
-
15
- # [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)
16
-
17
-
18
- ### New
19
-
20
- * 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)
21
- * 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)
22
-
23
- # [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)
24
-
25
-
26
- ### New
27
-
28
- * 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)
29
-
30
- # [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)
31
-
32
-
33
- ### New
34
-
35
- * 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)
36
-
37
- # [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)
38
-
39
-
40
- ### New
41
-
42
- * 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)
43
-
44
- # [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)
45
-
46
-
47
- ### New
48
-
49
- * 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)
50
- * 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)
51
- * 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)
52
-
53
- # [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)
54
-
55
-
56
- ### New
57
-
58
- * 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)
59
- * 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)
60
- * 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)
61
-
62
- # [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)
63
-
64
-
65
- ### New
66
-
67
- * 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)
68
- * 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)
69
-
70
- # [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)
71
-
72
-
73
- ### New
74
-
75
- * 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)
76
-
77
- # [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)
78
-
79
-
80
- ### New
81
-
82
- * 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)
83
- * 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)
84
-
85
- # [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)
86
-
87
-
88
- ### New
89
-
90
- * 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)
91
-
92
- # [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)
93
-
94
-
95
- ### New
96
-
97
- * 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)
98
-
99
- # [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)
100
-
101
-
102
- ### New
4
+ ### Update
103
5
 
104
- * 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)
6
+ * pass the store ID to getProductData (CX24-2121) ([8bb39fb](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/commit/8bb39fb1179514ed02a5efd35ed86e1f75b53ff7))
105
7
 
106
- # [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)
8
+ # [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)
107
9
 
108
10
 
109
- ### New
11
+ ### Update
110
12
 
111
- * 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)
13
+ * remove hardcoded store ID (CX24-2121) ([3dd107e](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/commit/3dd107ee1cf12de883f6756f271fc7954f0d60f2))
112
14
 
113
- # [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)
15
+ # [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)
114
16
 
115
17
 
116
- ### New
18
+ ### Update
117
19
 
118
- * 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)
20
+ * 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))
119
21
 
120
- # [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)
22
+ # [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)
121
23
 
122
24
 
123
25
  ### New
124
26
 
125
- * 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)
126
- * 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)
27
+ * 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)
127
28
 
128
- # [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)
29
+ ## [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)
129
30
 
130
31
 
131
- ### New
32
+ ### Fix
132
33
 
133
- * 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)
34
+ * 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)
134
35
 
135
- # [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)
36
+ ## [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)
136
37
 
137
38
 
138
- ### New
39
+ ### Fix
139
40
 
140
- * 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)
141
- * 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)
142
- * 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)
143
- * 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)
144
- * 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)
145
- * 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)
146
- * 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)
147
- * 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)
41
+ * 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)
42
+ * sonarQube issue ([82deb06](https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/commit/82deb06c84af639829394da786184031a07f4da5))
148
43
 
149
44
  ## [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)
150
45
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nuskin/ns-product-lib",
3
- "version": "1.5.0-cx24-1810.19",
3
+ "version": "1.5.0-cx24-2121.1.3",
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,45 +1,53 @@
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 productDataResponse = await axios.request({
15
- method: 'get',
16
- url: `https://storefront.api.wts.nuskin.io/orchestrationservices/storefront/catalogs/search/`,
17
- params: {
18
- locale: locale,
19
- storeId: '406',
20
- filter: filter
21
- },
22
- headers: this.getProductDataRequestHeaders(marketConfig),
23
- responseType: "json"
24
- });
25
- 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}`;
26
14
 
27
- } else {
28
- let lambdaUrl = `${marketConfig.awsUrl}/productData/v1`;
29
- const payload = {
30
- locale: locale,
31
- skus: skus
32
- };
33
- productResponse = await axios.request({
34
- method: "post",
35
- url: lambdaUrl,
36
- data: payload,
37
- headers: this.getProductDataRequestHeaders(marketConfig),
38
- responseType: "json"
39
- });
15
+ if (equinoxOptions !== undefined && equinoxOptions.isEnabled === true) {
16
+ return await this.getProductFromEquinox(skus, locale, marketConfig, equinoxOptions.storeID);
40
17
  }
41
18
 
42
- return productResponse;
19
+ return await this.getProductFromLegacy(skus, locale, marketConfig);
20
+ },
21
+
22
+ getProductFromEquinox: async function(skus, locale, marketConfig, storeID) {
23
+ const filter = `{"filters": [{"fields": "index_key_skuId","operation": "IN","value": "${skus.toString()}"}]}`;
24
+ axios.defaults.withCredentials = true;
25
+ const productDataResponse = await axios.request({
26
+ method: 'get',
27
+ url: `https://storefront.api.wts.nuskin.io/orchestrationservices/storefront/catalogs/search/`,
28
+ params: {
29
+ locale,
30
+ storeId: storeID,
31
+ filter
32
+ },
33
+ headers: this.getProductDataRequestHeaders(marketConfig),
34
+ responseType: "json"
35
+ });
36
+
37
+ return this.eqProductMapper(productDataResponse.data.product);
38
+ },
39
+
40
+ getProductFromLegacy: async function(skus, locale, marketConfig) {
41
+ const lambdaUrl = `${marketConfig.awsUrl}/productData/v1`;
42
+ const payload = { locale, skus };
43
+
44
+ return await axios.request({
45
+ method: "post",
46
+ url: lambdaUrl,
47
+ data: payload,
48
+ headers: this.getProductDataRequestHeaders(marketConfig),
49
+ responseType: "json"
50
+ });
43
51
  },
44
52
 
45
53
  /* 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
  /**