@treely/strapi-slices 7.5.1 → 7.5.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/dist/strapi-slices.cjs.development.js +74 -86
- package/dist/strapi-slices.cjs.development.js.map +1 -1
- package/dist/strapi-slices.cjs.production.min.js +1 -1
- package/dist/strapi-slices.cjs.production.min.js.map +1 -1
- package/dist/strapi-slices.esm.js +74 -86
- package/dist/strapi-slices.esm.js.map +1 -1
- package/package.json +1 -1
- package/src/integrations/strapi/getAllSlugsFromStrapi.test.ts +8 -21
- package/src/integrations/strapi/getAllSlugsFromStrapi.ts +24 -22
- package/src/integrations/strapi/getStrapiCollectionType.test.ts +3 -21
- package/src/integrations/strapi/getStrapiCollectionType.ts +41 -36
- package/dist/integrations/strapi/getAvailableLocalesFromStrapi.d.ts +0 -2
- package/src/integrations/strapi/getAvailableLocalesFromStrapi.test.ts +0 -22
- package/src/integrations/strapi/getAvailableLocalesFromStrapi.ts +0 -8
|
@@ -407,66 +407,44 @@ var strapiClient = /*#__PURE__*/axiosCacheInterceptor.setupCache(/*#__PURE__*/ax
|
|
|
407
407
|
ttl: /*#__PURE__*/STRAPI_URI.includes('127.0.0.1') || /*#__PURE__*/STRAPI_URI.includes('localhost') ? 0 : 10 * 60 * 1000 // 10 minutes
|
|
408
408
|
});
|
|
409
409
|
|
|
410
|
-
var getAvailableLocalesFromStrapi = /*#__PURE__*/function () {
|
|
411
|
-
var _ref = /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
|
|
412
|
-
var _yield$strapiClient$g, data;
|
|
413
|
-
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
|
414
|
-
while (1) switch (_context.prev = _context.next) {
|
|
415
|
-
case 0:
|
|
416
|
-
_context.next = 2;
|
|
417
|
-
return strapiClient.get('/i18n/locales');
|
|
418
|
-
case 2:
|
|
419
|
-
_yield$strapiClient$g = _context.sent;
|
|
420
|
-
data = _yield$strapiClient$g.data;
|
|
421
|
-
return _context.abrupt("return", data.map(function (locale) {
|
|
422
|
-
return locale.code;
|
|
423
|
-
}));
|
|
424
|
-
case 5:
|
|
425
|
-
case "end":
|
|
426
|
-
return _context.stop();
|
|
427
|
-
}
|
|
428
|
-
}, _callee);
|
|
429
|
-
}));
|
|
430
|
-
return function getAvailableLocalesFromStrapi() {
|
|
431
|
-
return _ref.apply(this, arguments);
|
|
432
|
-
};
|
|
433
|
-
}();
|
|
434
|
-
|
|
435
410
|
var getAllSlugsFromStrapi = /*#__PURE__*/function () {
|
|
436
411
|
var _ref = /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee(path, locales, _temp) {
|
|
437
|
-
var _ref2, _ref2$filters, filters,
|
|
412
|
+
var _ref2, _ref2$filters, filters, slugPromises, slugResults, allSlugs, missingLocales;
|
|
438
413
|
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
|
439
414
|
while (1) switch (_context.prev = _context.next) {
|
|
440
415
|
case 0:
|
|
441
416
|
_ref2 = _temp === void 0 ? {
|
|
442
417
|
filters: {}
|
|
443
418
|
} : _temp, _ref2$filters = _ref2.filters, filters = _ref2$filters === void 0 ? {} : _ref2$filters;
|
|
444
|
-
|
|
445
|
-
return getAvailableLocalesFromStrapi();
|
|
446
|
-
case 3:
|
|
447
|
-
allLocales = _context.sent;
|
|
448
|
-
slugPromises = allLocales.map(function (locale) {
|
|
449
|
-
var params = {
|
|
450
|
-
locale: locale,
|
|
451
|
-
'pagination[pageSize]': STRAPI_DEFAULT_PAGE_SIZE,
|
|
452
|
-
filters: filters
|
|
453
|
-
};
|
|
419
|
+
slugPromises = locales.map(function (locale) {
|
|
454
420
|
return strapiClient.get(path, {
|
|
455
|
-
params:
|
|
421
|
+
params: {
|
|
422
|
+
locale: locale,
|
|
423
|
+
'pagination[pageSize]': STRAPI_DEFAULT_PAGE_SIZE,
|
|
424
|
+
filters: filters
|
|
425
|
+
}
|
|
426
|
+
}).then(function (response) {
|
|
427
|
+
return response.data.data.map(function (page) {
|
|
428
|
+
return {
|
|
429
|
+
slug: page.attributes.slug,
|
|
430
|
+
locale: page.attributes.locale
|
|
431
|
+
};
|
|
432
|
+
});
|
|
433
|
+
})
|
|
434
|
+
// when a collection type for a requested locale does not exist, Strapi returns a 404. In this case, we return an empty array instead of throwing an error
|
|
435
|
+
["catch"](function (error) {
|
|
436
|
+
var _error$response;
|
|
437
|
+
if (((_error$response = error.response) == null ? void 0 : _error$response.status) === 404) {
|
|
438
|
+
return [];
|
|
439
|
+
}
|
|
440
|
+
throw error;
|
|
456
441
|
});
|
|
457
442
|
});
|
|
458
|
-
_context.next =
|
|
443
|
+
_context.next = 4;
|
|
459
444
|
return Promise.all(slugPromises);
|
|
460
|
-
case
|
|
445
|
+
case 4:
|
|
461
446
|
slugResults = _context.sent;
|
|
462
|
-
allSlugs = slugResults.
|
|
463
|
-
return result.data.data.map(function (page) {
|
|
464
|
-
return {
|
|
465
|
-
slug: page.attributes.slug,
|
|
466
|
-
locale: page.attributes.locale
|
|
467
|
-
};
|
|
468
|
-
});
|
|
469
|
-
}).flat(); // Identify missing locales for each slug
|
|
447
|
+
allSlugs = slugResults.flat(); // Identify missing locales for each slug
|
|
470
448
|
missingLocales = locales.flatMap(function (locale) {
|
|
471
449
|
return allSlugs.filter(function (slug) {
|
|
472
450
|
return slug.locale === STRAPI_FALLBACK_LOCALE;
|
|
@@ -481,7 +459,7 @@ var getAllSlugsFromStrapi = /*#__PURE__*/function () {
|
|
|
481
459
|
}); // Clone only for missing locales
|
|
482
460
|
});
|
|
483
461
|
return _context.abrupt("return", [].concat(allSlugs, missingLocales));
|
|
484
|
-
case
|
|
462
|
+
case 8:
|
|
485
463
|
case "end":
|
|
486
464
|
return _context.stop();
|
|
487
465
|
}
|
|
@@ -582,55 +560,65 @@ var getPortfolioProjects = /*#__PURE__*/function () {
|
|
|
582
560
|
|
|
583
561
|
var getStrapiCollectionType = /*#__PURE__*/function () {
|
|
584
562
|
var _ref2 = /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee(path, key, _ref) {
|
|
585
|
-
var _ref$locale, locale, _ref$preview, preview, _ref$filters, filters, cache,
|
|
563
|
+
var _ref$locale, locale, _ref$preview, preview, _ref$filters, filters, cache, sharedParams, requestedLocaleData, fallbackLocaleData, results;
|
|
586
564
|
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
|
587
565
|
while (1) switch (_context.prev = _context.next) {
|
|
588
566
|
case 0:
|
|
589
567
|
_ref$locale = _ref.locale, locale = _ref$locale === void 0 ? 'en' : _ref$locale, _ref$preview = _ref.preview, preview = _ref$preview === void 0 ? false : _ref$preview, _ref$filters = _ref.filters, filters = _ref$filters === void 0 ? {} : _ref$filters;
|
|
590
568
|
cache = preview ? false : undefined;
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
}
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
locale:
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
569
|
+
sharedParams = _extends({
|
|
570
|
+
pLevel: '6',
|
|
571
|
+
'pagination[pageSize]': STRAPI_DEFAULT_PAGE_SIZE,
|
|
572
|
+
filters: filters
|
|
573
|
+
}, preview ? {
|
|
574
|
+
publicationState: 'preview'
|
|
575
|
+
} : {});
|
|
576
|
+
_context.next = 5;
|
|
577
|
+
return strapiClient.get(path, {
|
|
578
|
+
params: _extends({}, sharedParams, {
|
|
579
|
+
locale: locale
|
|
580
|
+
}),
|
|
581
|
+
cache: cache
|
|
582
|
+
}).then(function (response) {
|
|
583
|
+
return response.data.data;
|
|
584
|
+
})
|
|
585
|
+
// when a collection type for a requested locale does not exist, Strapi returns a 404. In this case, we return an empty array instead of throwing an error
|
|
586
|
+
["catch"](function (error) {
|
|
587
|
+
var _error$response;
|
|
588
|
+
if (((_error$response = error.response) == null ? void 0 : _error$response.status) === 404) {
|
|
589
|
+
return [];
|
|
607
590
|
}
|
|
608
|
-
|
|
609
|
-
params: params,
|
|
610
|
-
cache: cache
|
|
611
|
-
});
|
|
591
|
+
throw error;
|
|
612
592
|
});
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
593
|
+
case 5:
|
|
594
|
+
requestedLocaleData = _context.sent;
|
|
595
|
+
_context.next = 8;
|
|
596
|
+
return strapiClient.get(path, {
|
|
597
|
+
params: _extends({}, sharedParams, {
|
|
598
|
+
locale: STRAPI_FALLBACK_LOCALE
|
|
599
|
+
}),
|
|
600
|
+
cache: cache
|
|
601
|
+
}).then(function (response) {
|
|
618
602
|
return response.data.data;
|
|
603
|
+
})
|
|
604
|
+
// when a collection type for a requested locale does not exist, Strapi returns a 404. In this case, we return an empty array instead of throwing an error
|
|
605
|
+
["catch"](function (error) {
|
|
606
|
+
var _error$response2;
|
|
607
|
+
if (((_error$response2 = error.response) == null ? void 0 : _error$response2.status) === 404) {
|
|
608
|
+
return [];
|
|
609
|
+
}
|
|
610
|
+
throw error;
|
|
619
611
|
});
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
|
|
625
|
-
});
|
|
626
|
-
result = fallbackResponses.map(function (fallbackResponse) {
|
|
627
|
-
var localizedResponse = localizedResponses.find(function (localized) {
|
|
628
|
-
return localized.attributes[key] === fallbackResponse.attributes[key];
|
|
612
|
+
case 8:
|
|
613
|
+
fallbackLocaleData = _context.sent;
|
|
614
|
+
results = fallbackLocaleData.map(function (fallbackLocaleDataEntry) {
|
|
615
|
+
var requestedLocale = requestedLocaleData.find(function (localized) {
|
|
616
|
+
return localized.attributes[key] === fallbackLocaleDataEntry.attributes[key];
|
|
629
617
|
});
|
|
630
|
-
return
|
|
618
|
+
return requestedLocale || fallbackLocaleDataEntry;
|
|
631
619
|
});
|
|
632
|
-
return _context.abrupt("return",
|
|
633
|
-
case
|
|
620
|
+
return _context.abrupt("return", results);
|
|
621
|
+
case 11:
|
|
634
622
|
case "end":
|
|
635
623
|
return _context.stop();
|
|
636
624
|
}
|