@nuskin/ns-product-lib 2.19.8-td-1017.1 → 2.20.0-td-1000.1

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nuskin/ns-product-lib",
3
- "version": "2.19.8-td-1017.1",
3
+ "version": "2.20.0-td-1000.1",
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": {
@@ -20,10 +20,10 @@
20
20
  "homepage": "https://code.tls.nuskin.io/ns-am/product/js-libs/ns-product-lib/blob/master/README.md",
21
21
  "devDependencies": {
22
22
  "@nuskin/configuration-sdk": "3.0.0",
23
- "@nuskin/ns-common-lib": "1.4.7",
24
- "@nuskin/ns-util": "4.5.4",
25
- "@nuskin/product-lib": "2.3.1-td-1017.1",
26
- "axios": "1.6.7",
23
+ "@nuskin/ns-common-lib": "1.4.8",
24
+ "@nuskin/ns-util": "4.7.2",
25
+ "@nuskin/product-lib": "2.4.0-td-1000.1",
26
+ "axios": "1.8.3",
27
27
  "axios-mock-adapter": "1.21.2",
28
28
  "eslint": "^8.56.0",
29
29
  "eslint-config-google": "^0.14.0",
@@ -39,7 +39,7 @@
39
39
  "@nuskin/configuration-sdk": "3.x",
40
40
  "@nuskin/ns-common-lib": "1.x",
41
41
  "@nuskin/ns-util": "4.x",
42
- "axios": "1.6.7"
42
+ "axios": "1.8.3"
43
43
  },
44
44
  "dependencies": {
45
45
  "qs": "6.11.0"
@@ -2,15 +2,15 @@ const { getEnvironmentFromUrl } = require('@nuskin/ns-common-lib');
2
2
 
3
3
  const config = {
4
4
  dev: {
5
- url: 'https://product.api.dev.nuskin.com/graphql',
5
+ url: 'https://apis.dev.nuskin.com/product/graphql',
6
6
  env: 'dev'
7
7
  },
8
8
  test: {
9
- url: 'https://product.api.test.nuskin.com/graphql',
9
+ url: 'https://apis.test.nuskin.com/product/graphql',
10
10
  env: 'test'
11
11
  },
12
12
  prod: {
13
- url: 'https://product.api.nuskin.com/graphql',
13
+ url: 'https://apis.nuskin.com/product/graphql',
14
14
  env: 'public'
15
15
  }
16
16
  };
@@ -248,16 +248,16 @@ function mapPricingJson(productDetail, kitOrVariant, isContentStack) {
248
248
  // eslint-disable-next-line no-unused-vars
249
249
  function mapProduct(product, market, locale, config) {
250
250
  const kitBundleProducts = product.bundle;
251
+
251
252
  //serves as parent
252
253
  const defaultVariant = !kitBundleProducts ? product.variants.find(v => v.sku === config.sku) : null
253
- const productImages = mapProductImages(product)
254
254
  const kitOrVariant = !kitBundleProducts ? defaultVariant : kitBundleProducts
255
255
  const productOrVariant = !kitBundleProducts ? defaultVariant : product
256
+ const productImages = mapProductImages(productOrVariant)
256
257
  const pricing = kitOrVariant.price
257
258
  const points = kitOrVariant.points
258
259
  const isBackOrdered = kitOrVariant.status.inventory === 'backordered'
259
260
  const promoData = mapPromos(kitOrVariant)
260
- const productionBom = product.bundle && product.bundle.isProductionBom ? product.bundle.isProductionBom : false;
261
261
 
262
262
  const productDetail = {
263
263
  "sku": !kitBundleProducts ? defaultVariant.sku : product.id,
@@ -328,8 +328,7 @@ function mapProduct(product, market, locale, config) {
328
328
  "properties": {
329
329
  isBackOrdered: isBackOrdered,
330
330
  inventoryStatus: isBackOrdered ? 'BACKORDER' : 'IN STOCK',
331
- productStatus: mapProductStatus(kitOrVariant.status.status),
332
- productionBom: productionBom
331
+ productStatus: mapProductStatus(kitOrVariant.status.status)
333
332
  }
334
333
  }
335
334
 
package/src/product.js CHANGED
@@ -321,7 +321,7 @@ const Product = function (productData) {
321
321
  this.globalProductID = productStatus.globalProductID;
322
322
  this.status = productStatus.status;
323
323
  this.availableQuantity = productStatus.availableQuantity;
324
- this.maxQuantity = productStatus.maxQuantity || 999;
324
+ this.maxQuantity = typeof(productStatus.maxQuantity) === 'number' ? productStatus.maxQuantity : 999;
325
325
  this.locallyProduced = productStatus.locallyProduced || false;
326
326
  if (productStatus.backordered) {
327
327
  this.backOrderDate = productStatus.backorderedAvailableDate;
@@ -74,7 +74,10 @@ const ProductData = {
74
74
 
75
75
  const filter = skuFilter.join(" OR ")
76
76
 
77
- const url = `${config.API_Base_URLs}/orchestrationservices/storefront/catalogs/search/`;
77
+ let url = `${config.API_Base_URLs}/orchestrationservices/storefront/catalogs/search/`;
78
+ if (config.API_Base_URLs && config.API_Base_URLs.indexOf('apis') > -1) {
79
+ url = `${config.API_Base_URLs}/catalogs/search/`;
80
+ }
78
81
  const href = `${url}?filter='\\\\''${encodeURI(filter)}'\\''`;
79
82
  axios.interceptors.response.use((res) => res, productNotFoundInterceptor);
80
83
  const response = await axios.request({