@faststore/api 1.12.48 → 1.12.50

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.
@@ -22,7 +22,7 @@ var api = require('@opentelemetry/api');
22
22
  var apiLogs = require('@opentelemetry/api-logs');
23
23
 
24
24
  var name = "@faststore/api";
25
- var version = "1.12.47";
25
+ var version = "1.12.49";
26
26
  var license = "MIT";
27
27
  var main = "dist/index.js";
28
28
  var typings = "dist/index.d.ts";
@@ -58,7 +58,7 @@ var dependencies = {
58
58
  };
59
59
  var devDependencies = {
60
60
  "@envelop/core": "^2.6.0",
61
- "@faststore/shared": "^1.12.43",
61
+ "@faststore/shared": "^1.12.48",
62
62
  "@graphql-codegen/cli": "2.2.0",
63
63
  "@graphql-codegen/typescript": "2.2.2",
64
64
  concurrently: "^6.2.1",
@@ -280,22 +280,23 @@ const IntelligentSearch = ({
280
280
  };
281
281
  };
282
282
 
283
- const getRegionFacet = () => {
283
+ const getRegionFacet = regionIdFromQuery => {
284
284
  const {
285
285
  regionId
286
286
  } = ctx.storage.channel;
287
+ const facet = regionIdFromQuery != null ? regionIdFromQuery : regionId;
287
288
 
288
- if (!regionId) {
289
+ if (!facet) {
289
290
  return null;
290
291
  }
291
292
 
292
293
  return {
293
294
  key: REGION_KEY,
294
- value: regionId
295
+ value: facet
295
296
  };
296
297
  };
297
298
 
298
- const addDefaultFacets = facets => {
299
+ const addDefaultFacets = (facets, regionIdFromQuery) => {
299
300
  var _facets$find, _facets$find2;
300
301
 
301
302
  const withDefaltFacets = facets.filter(({
@@ -306,7 +307,7 @@ const IntelligentSearch = ({
306
307
  }) => key === POLICY_KEY)) != null ? _facets$find : getPolicyFacet();
307
308
  const regionFacet = (_facets$find2 = facets.find(({
308
309
  key
309
- }) => key === REGION_KEY)) != null ? _facets$find2 : getRegionFacet();
310
+ }) => key === REGION_KEY)) != null ? _facets$find2 : getRegionFacet(regionIdFromQuery);
310
311
 
311
312
  if (policyFacet !== null) {
312
313
  withDefaltFacets.push(policyFacet);
@@ -326,7 +327,9 @@ const IntelligentSearch = ({
326
327
  sort = '',
327
328
  selectedFacets = [],
328
329
  type,
329
- fuzzy = 'auto'
330
+ fuzzy = 'auto',
331
+ showInvisibleItems,
332
+ regionId
330
333
  }) => {
331
334
  const params = new URLSearchParams({
332
335
  page: (page + 1).toString(),
@@ -337,11 +340,15 @@ const IntelligentSearch = ({
337
340
  locale: ctx.storage.locale
338
341
  });
339
342
 
343
+ if (showInvisibleItems) {
344
+ params.append('show-invisible-items', 'true');
345
+ }
346
+
340
347
  if (hideUnavailableItems !== undefined) {
341
348
  params.append('hideUnavailableItems', hideUnavailableItems.toString());
342
349
  }
343
350
 
344
- const pathname = addDefaultFacets(selectedFacets).map(({
351
+ const pathname = addDefaultFacets(selectedFacets, regionId).map(({
345
352
  key,
346
353
  value
347
354
  }) => `${key}/${value}`).join('/');
@@ -534,13 +541,16 @@ const isBadRequestError = error => {
534
541
  };
535
542
 
536
543
  const getSkuLoader = (_, clients) => {
537
- const loader = async skuIds => {
544
+ const loader = async keys => {
545
+ const skuIds = keys.map(key => key.split('-')[0]);
546
+ const showInvisibleItems = keys.some(key => key.split('-')[1] === 'invisibleItems');
538
547
  const {
539
548
  products
540
549
  } = await clients.search.products({
541
550
  query: `sku:${skuIds.join(';')}`,
542
551
  page: 0,
543
- count: skuIds.length
552
+ count: skuIds.length,
553
+ showInvisibleItems
544
554
  });
545
555
  const skuBySkuId = products.reduce((acc, product) => {
546
556
  for (const sku of product.items) {
@@ -920,6 +930,11 @@ const findChannel = facets => {
920
930
 
921
931
  return (_facets$find$value4 = facets == null ? void 0 : (_facets$find4 = facets.find(facet => facet.key === 'channel')) == null ? void 0 : _facets$find4.value) != null ? _facets$find$value4 : null;
922
932
  };
933
+ const findRegionId = facets => {
934
+ var _facets$find$value5, _facets$find5;
935
+
936
+ return (_facets$find$value5 = facets == null ? void 0 : (_facets$find5 = facets.find(facet => facet.key === 'regionId')) == null ? void 0 : _facets$find5.value) != null ? _facets$find$value5 : undefined;
937
+ };
923
938
 
924
939
  /**
925
940
  * More info at: https://en.wikipedia.org/wiki/Order_statistic
@@ -1158,7 +1173,7 @@ const orderFormToCart = async (form, skuLoader) => {
1158
1173
  order: {
1159
1174
  orderNumber: form.orderFormId,
1160
1175
  acceptedOffer: form.items.map(async item => ({ ...item,
1161
- product: await skuLoader.load(item.id)
1176
+ product: await skuLoader.load(`${item.id}-invisibleItems`)
1162
1177
  }))
1163
1178
  },
1164
1179
  messages: form.messages.map(({
@@ -1797,6 +1812,7 @@ const Query = {
1797
1812
  // Insert channel in context for later usage
1798
1813
  const channel = findChannel(locator);
1799
1814
  const locale = findLocale(locator);
1815
+ const regionId = findRegionId(locator);
1800
1816
  const id = findSkuId(locator);
1801
1817
  const slug = findSlug(locator);
1802
1818
 
@@ -1857,7 +1873,8 @@ const Query = {
1857
1873
  } = await search.products({
1858
1874
  page: 0,
1859
1875
  count: 1,
1860
- query: `product:${route.id}`
1876
+ query: `product:${route.id}`,
1877
+ regionId
1861
1878
  });
1862
1879
 
1863
1880
  if (!product) {