@se-studio/contentful-rest-api 0.0.0-next16-20260822103555
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 +2036 -0
- package/README.md +764 -0
- package/dist/api/article-type.d.ts +37 -0
- package/dist/api/article-type.d.ts.map +1 -0
- package/dist/api/article-type.js +140 -0
- package/dist/api/article-type.js.map +1 -0
- package/dist/api/article.d.ts +32 -0
- package/dist/api/article.d.ts.map +1 -0
- package/dist/api/article.js +43 -0
- package/dist/api/article.js.map +1 -0
- package/dist/api/asset.d.ts +28 -0
- package/dist/api/asset.d.ts.map +1 -0
- package/dist/api/asset.js +56 -0
- package/dist/api/asset.js.map +1 -0
- package/dist/api/banner.d.ts +8 -0
- package/dist/api/banner.d.ts.map +1 -0
- package/dist/api/banner.js +96 -0
- package/dist/api/banner.js.map +1 -0
- package/dist/api/breadcrumb.d.ts +40 -0
- package/dist/api/breadcrumb.d.ts.map +1 -0
- package/dist/api/breadcrumb.js +60 -0
- package/dist/api/breadcrumb.js.map +1 -0
- package/dist/api/componentPreview.d.ts +59 -0
- package/dist/api/componentPreview.d.ts.map +1 -0
- package/dist/api/componentPreview.js +88 -0
- package/dist/api/componentPreview.js.map +1 -0
- package/dist/api/context.d.ts +24 -0
- package/dist/api/context.d.ts.map +1 -0
- package/dist/api/context.js +73 -0
- package/dist/api/context.js.map +1 -0
- package/dist/api/custom-type.d.ts +37 -0
- package/dist/api/custom-type.d.ts.map +1 -0
- package/dist/api/custom-type.js +44 -0
- package/dist/api/custom-type.js.map +1 -0
- package/dist/api/document.d.ts +8 -0
- package/dist/api/document.d.ts.map +1 -0
- package/dist/api/document.js +84 -0
- package/dist/api/document.js.map +1 -0
- package/dist/api/helpers.d.ts +59 -0
- package/dist/api/helpers.d.ts.map +1 -0
- package/dist/api/helpers.js +313 -0
- package/dist/api/helpers.js.map +1 -0
- package/dist/api/index.d.ts +33 -0
- package/dist/api/index.d.ts.map +1 -0
- package/dist/api/index.js +37 -0
- package/dist/api/index.js.map +1 -0
- package/dist/api/links.d.ts +124 -0
- package/dist/api/links.d.ts.map +1 -0
- package/dist/api/links.js +307 -0
- package/dist/api/links.js.map +1 -0
- package/dist/api/listing-fetch-params.d.ts +70 -0
- package/dist/api/listing-fetch-params.d.ts.map +1 -0
- package/dist/api/listing-fetch-params.js +124 -0
- package/dist/api/listing-fetch-params.js.map +1 -0
- package/dist/api/media-library.d.ts +59 -0
- package/dist/api/media-library.d.ts.map +1 -0
- package/dist/api/media-library.js +315 -0
- package/dist/api/media-library.js.map +1 -0
- package/dist/api/navigation.d.ts +10 -0
- package/dist/api/navigation.d.ts.map +1 -0
- package/dist/api/navigation.js +18 -0
- package/dist/api/navigation.js.map +1 -0
- package/dist/api/page.d.ts +15 -0
- package/dist/api/page.d.ts.map +1 -0
- package/dist/api/page.js +39 -0
- package/dist/api/page.js.map +1 -0
- package/dist/api/person.d.ts +37 -0
- package/dist/api/person.d.ts.map +1 -0
- package/dist/api/person.js +135 -0
- package/dist/api/person.js.map +1 -0
- package/dist/api/preview-types.d.ts +65 -0
- package/dist/api/preview-types.d.ts.map +1 -0
- package/dist/api/preview-types.js +7 -0
- package/dist/api/preview-types.js.map +1 -0
- package/dist/api/preview.d.ts +49 -0
- package/dist/api/preview.d.ts.map +1 -0
- package/dist/api/preview.js +261 -0
- package/dist/api/preview.js.map +1 -0
- package/dist/api/redirects.d.ts +16 -0
- package/dist/api/redirects.d.ts.map +1 -0
- package/dist/api/redirects.js +110 -0
- package/dist/api/redirects.js.map +1 -0
- package/dist/api/related-articles.d.ts +28 -0
- package/dist/api/related-articles.d.ts.map +1 -0
- package/dist/api/related-articles.js +147 -0
- package/dist/api/related-articles.js.map +1 -0
- package/dist/api/server-asset.d.ts +67 -0
- package/dist/api/server-asset.d.ts.map +1 -0
- package/dist/api/server-asset.js +106 -0
- package/dist/api/server-asset.js.map +1 -0
- package/dist/api/sitemap.d.ts +131 -0
- package/dist/api/sitemap.d.ts.map +1 -0
- package/dist/api/sitemap.js +201 -0
- package/dist/api/sitemap.js.map +1 -0
- package/dist/api/tag-type.d.ts +32 -0
- package/dist/api/tag-type.d.ts.map +1 -0
- package/dist/api/tag-type.js +123 -0
- package/dist/api/tag-type.js.map +1 -0
- package/dist/api/tag.d.ts +37 -0
- package/dist/api/tag.d.ts.map +1 -0
- package/dist/api/tag.js +132 -0
- package/dist/api/tag.js.map +1 -0
- package/dist/api/template.d.ts +61 -0
- package/dist/api/template.d.ts.map +1 -0
- package/dist/api/template.js +94 -0
- package/dist/api/template.js.map +1 -0
- package/dist/api/types.d.ts +113 -0
- package/dist/api/types.d.ts.map +1 -0
- package/dist/api/types.js +2 -0
- package/dist/api/types.js.map +1 -0
- package/dist/baseTypes/baseAlternatePageContent.d.ts +32 -0
- package/dist/baseTypes/baseAlternatePageContent.d.ts.map +1 -0
- package/dist/baseTypes/baseAlternatePageContent.js +2 -0
- package/dist/baseTypes/baseAlternatePageContent.js.map +1 -0
- package/dist/baseTypes/baseArticle.d.ts +206 -0
- package/dist/baseTypes/baseArticle.d.ts.map +1 -0
- package/dist/baseTypes/baseArticle.js +2 -0
- package/dist/baseTypes/baseArticle.js.map +1 -0
- package/dist/baseTypes/baseArticleType.d.ts +177 -0
- package/dist/baseTypes/baseArticleType.d.ts.map +1 -0
- package/dist/baseTypes/baseArticleType.js +2 -0
- package/dist/baseTypes/baseArticleType.js.map +1 -0
- package/dist/baseTypes/baseBanner.d.ts +113 -0
- package/dist/baseTypes/baseBanner.d.ts.map +1 -0
- package/dist/baseTypes/baseBanner.js +2 -0
- package/dist/baseTypes/baseBanner.js.map +1 -0
- package/dist/baseTypes/baseCollection.d.ts +132 -0
- package/dist/baseTypes/baseCollection.d.ts.map +1 -0
- package/dist/baseTypes/baseCollection.js +2 -0
- package/dist/baseTypes/baseCollection.js.map +1 -0
- package/dist/baseTypes/baseComponent.d.ts +130 -0
- package/dist/baseTypes/baseComponent.d.ts.map +1 -0
- package/dist/baseTypes/baseComponent.js +2 -0
- package/dist/baseTypes/baseComponent.js.map +1 -0
- package/dist/baseTypes/baseCustomType.d.ts +147 -0
- package/dist/baseTypes/baseCustomType.d.ts.map +1 -0
- package/dist/baseTypes/baseCustomType.js +2 -0
- package/dist/baseTypes/baseCustomType.js.map +1 -0
- package/dist/baseTypes/baseDocument.d.ts +70 -0
- package/dist/baseTypes/baseDocument.d.ts.map +1 -0
- package/dist/baseTypes/baseDocument.js +2 -0
- package/dist/baseTypes/baseDocument.js.map +1 -0
- package/dist/baseTypes/baseExternalComponent.d.ts +138 -0
- package/dist/baseTypes/baseExternalComponent.d.ts.map +1 -0
- package/dist/baseTypes/baseExternalComponent.js +2 -0
- package/dist/baseTypes/baseExternalComponent.js.map +1 -0
- package/dist/baseTypes/baseExternalVideo.d.ts +86 -0
- package/dist/baseTypes/baseExternalVideo.d.ts.map +1 -0
- package/dist/baseTypes/baseExternalVideo.js +2 -0
- package/dist/baseTypes/baseExternalVideo.js.map +1 -0
- package/dist/baseTypes/baseHtmlComponent.d.ts +72 -0
- package/dist/baseTypes/baseHtmlComponent.d.ts.map +1 -0
- package/dist/baseTypes/baseHtmlComponent.js +2 -0
- package/dist/baseTypes/baseHtmlComponent.js.map +1 -0
- package/dist/baseTypes/baseLink.d.ts +115 -0
- package/dist/baseTypes/baseLink.d.ts.map +1 -0
- package/dist/baseTypes/baseLink.js +2 -0
- package/dist/baseTypes/baseLink.js.map +1 -0
- package/dist/baseTypes/baseMedia.d.ts +100 -0
- package/dist/baseTypes/baseMedia.d.ts.map +1 -0
- package/dist/baseTypes/baseMedia.js +2 -0
- package/dist/baseTypes/baseMedia.js.map +1 -0
- package/dist/baseTypes/baseNavigation.d.ts +37 -0
- package/dist/baseTypes/baseNavigation.d.ts.map +1 -0
- package/dist/baseTypes/baseNavigation.js +2 -0
- package/dist/baseTypes/baseNavigation.js.map +1 -0
- package/dist/baseTypes/baseNavigationItem.d.ts +109 -0
- package/dist/baseTypes/baseNavigationItem.d.ts.map +1 -0
- package/dist/baseTypes/baseNavigationItem.js +2 -0
- package/dist/baseTypes/baseNavigationItem.js.map +1 -0
- package/dist/baseTypes/basePage.d.ts +142 -0
- package/dist/baseTypes/basePage.d.ts.map +1 -0
- package/dist/baseTypes/basePage.js +2 -0
- package/dist/baseTypes/basePage.js.map +1 -0
- package/dist/baseTypes/basePageVariant.d.ts +145 -0
- package/dist/baseTypes/basePageVariant.d.ts.map +1 -0
- package/dist/baseTypes/basePageVariant.js +2 -0
- package/dist/baseTypes/basePageVariant.js.map +1 -0
- package/dist/baseTypes/basePerson.d.ts +160 -0
- package/dist/baseTypes/basePerson.d.ts.map +1 -0
- package/dist/baseTypes/basePerson.js +2 -0
- package/dist/baseTypes/basePerson.js.map +1 -0
- package/dist/baseTypes/baseRedirect.d.ts +69 -0
- package/dist/baseTypes/baseRedirect.d.ts.map +1 -0
- package/dist/baseTypes/baseRedirect.js +2 -0
- package/dist/baseTypes/baseRedirect.js.map +1 -0
- package/dist/baseTypes/baseSchema.d.ts +19 -0
- package/dist/baseTypes/baseSchema.d.ts.map +1 -0
- package/dist/baseTypes/baseSchema.js +2 -0
- package/dist/baseTypes/baseSchema.js.map +1 -0
- package/dist/baseTypes/baseShared.d.ts +25 -0
- package/dist/baseTypes/baseShared.d.ts.map +1 -0
- package/dist/baseTypes/baseShared.js +2 -0
- package/dist/baseTypes/baseShared.js.map +1 -0
- package/dist/baseTypes/baseTag.d.ts +129 -0
- package/dist/baseTypes/baseTag.d.ts.map +1 -0
- package/dist/baseTypes/baseTag.js +2 -0
- package/dist/baseTypes/baseTag.js.map +1 -0
- package/dist/baseTypes/baseTagType.d.ts +70 -0
- package/dist/baseTypes/baseTagType.d.ts.map +1 -0
- package/dist/baseTypes/baseTagType.js +2 -0
- package/dist/baseTypes/baseTagType.js.map +1 -0
- package/dist/baseTypes/baseTemplate.d.ts +77 -0
- package/dist/baseTypes/baseTemplate.d.ts.map +1 -0
- package/dist/baseTypes/baseTemplate.js +2 -0
- package/dist/baseTypes/baseTemplate.js.map +1 -0
- package/dist/client.d.ts +145 -0
- package/dist/client.d.ts.map +1 -0
- package/dist/client.js +322 -0
- package/dist/client.js.map +1 -0
- package/dist/cms-integrity.d.ts +10 -0
- package/dist/cms-integrity.d.ts.map +1 -0
- package/dist/cms-integrity.js +7 -0
- package/dist/cms-integrity.js.map +1 -0
- package/dist/converters/animationEnricher.d.ts +17 -0
- package/dist/converters/animationEnricher.d.ts.map +1 -0
- package/dist/converters/animationEnricher.js +177 -0
- package/dist/converters/animationEnricher.js.map +1 -0
- package/dist/converters/article.d.ts +48 -0
- package/dist/converters/article.d.ts.map +1 -0
- package/dist/converters/article.js +364 -0
- package/dist/converters/article.js.map +1 -0
- package/dist/converters/asset.d.ts +33 -0
- package/dist/converters/asset.d.ts.map +1 -0
- package/dist/converters/asset.js +340 -0
- package/dist/converters/asset.js.map +1 -0
- package/dist/converters/banner.d.ts +10 -0
- package/dist/converters/banner.d.ts.map +1 -0
- package/dist/converters/banner.js +63 -0
- package/dist/converters/banner.js.map +1 -0
- package/dist/converters/collection.d.ts +26 -0
- package/dist/converters/collection.d.ts.map +1 -0
- package/dist/converters/collection.js +52 -0
- package/dist/converters/collection.js.map +1 -0
- package/dist/converters/component.d.ts +26 -0
- package/dist/converters/component.d.ts.map +1 -0
- package/dist/converters/component.js +54 -0
- package/dist/converters/component.js.map +1 -0
- package/dist/converters/customType.d.ts +24 -0
- package/dist/converters/customType.d.ts.map +1 -0
- package/dist/converters/customType.js +93 -0
- package/dist/converters/customType.js.map +1 -0
- package/dist/converters/document.d.ts +14 -0
- package/dist/converters/document.d.ts.map +1 -0
- package/dist/converters/document.js +51 -0
- package/dist/converters/document.js.map +1 -0
- package/dist/converters/enrichAssets.d.ts +19 -0
- package/dist/converters/enrichAssets.d.ts.map +1 -0
- package/dist/converters/enrichAssets.js +36 -0
- package/dist/converters/enrichAssets.js.map +1 -0
- package/dist/converters/externalComponent.d.ts +27 -0
- package/dist/converters/externalComponent.d.ts.map +1 -0
- package/dist/converters/externalComponent.js +46 -0
- package/dist/converters/externalComponent.js.map +1 -0
- package/dist/converters/externalVideoEnricher.d.ts +12 -0
- package/dist/converters/externalVideoEnricher.d.ts.map +1 -0
- package/dist/converters/externalVideoEnricher.js +70 -0
- package/dist/converters/externalVideoEnricher.js.map +1 -0
- package/dist/converters/helpers.d.ts +173 -0
- package/dist/converters/helpers.d.ts.map +1 -0
- package/dist/converters/helpers.js +167 -0
- package/dist/converters/helpers.js.map +1 -0
- package/dist/converters/heroVideoEnricher.d.ts +9 -0
- package/dist/converters/heroVideoEnricher.d.ts.map +1 -0
- package/dist/converters/heroVideoEnricher.js +108 -0
- package/dist/converters/heroVideoEnricher.js.map +1 -0
- package/dist/converters/heroVideoEnv.d.ts +14 -0
- package/dist/converters/heroVideoEnv.d.ts.map +1 -0
- package/dist/converters/heroVideoEnv.js +28 -0
- package/dist/converters/heroVideoEnv.js.map +1 -0
- package/dist/converters/htmlComponent.d.ts +17 -0
- package/dist/converters/htmlComponent.d.ts.map +1 -0
- package/dist/converters/htmlComponent.js +33 -0
- package/dist/converters/htmlComponent.js.map +1 -0
- package/dist/converters/iconCollector.d.ts +36 -0
- package/dist/converters/iconCollector.d.ts.map +1 -0
- package/dist/converters/iconCollector.js +309 -0
- package/dist/converters/iconCollector.js.map +1 -0
- package/dist/converters/index.d.ts +26 -0
- package/dist/converters/index.d.ts.map +1 -0
- package/dist/converters/index.js +21 -0
- package/dist/converters/index.js.map +1 -0
- package/dist/converters/link.d.ts +11 -0
- package/dist/converters/link.d.ts.map +1 -0
- package/dist/converters/link.js +109 -0
- package/dist/converters/link.js.map +1 -0
- package/dist/converters/navigationItem.d.ts +17 -0
- package/dist/converters/navigationItem.d.ts.map +1 -0
- package/dist/converters/navigationItem.js +126 -0
- package/dist/converters/navigationItem.js.map +1 -0
- package/dist/converters/page.d.ts +44 -0
- package/dist/converters/page.d.ts.map +1 -0
- package/dist/converters/page.js +160 -0
- package/dist/converters/page.js.map +1 -0
- package/dist/converters/pageVariantMerge.d.ts +24 -0
- package/dist/converters/pageVariantMerge.d.ts.map +1 -0
- package/dist/converters/pageVariantMerge.js +151 -0
- package/dist/converters/pageVariantMerge.js.map +1 -0
- package/dist/converters/person.d.ts +40 -0
- package/dist/converters/person.d.ts.map +1 -0
- package/dist/converters/person.js +152 -0
- package/dist/converters/person.js.map +1 -0
- package/dist/converters/pictureBlurEnricher.d.ts +9 -0
- package/dist/converters/pictureBlurEnricher.d.ts.map +1 -0
- package/dist/converters/pictureBlurEnricher.js +79 -0
- package/dist/converters/pictureBlurEnricher.js.map +1 -0
- package/dist/converters/redirect.d.ts +20 -0
- package/dist/converters/redirect.d.ts.map +1 -0
- package/dist/converters/redirect.js +50 -0
- package/dist/converters/redirect.js.map +1 -0
- package/dist/converters/resolver.d.ts +26 -0
- package/dist/converters/resolver.d.ts.map +1 -0
- package/dist/converters/resolver.js +383 -0
- package/dist/converters/resolver.js.map +1 -0
- package/dist/converters/schema.d.ts +14 -0
- package/dist/converters/schema.d.ts.map +1 -0
- package/dist/converters/schema.js +25 -0
- package/dist/converters/schema.js.map +1 -0
- package/dist/converters/svgProcessor.d.ts +58 -0
- package/dist/converters/svgProcessor.d.ts.map +1 -0
- package/dist/converters/svgProcessor.js +225 -0
- package/dist/converters/svgProcessor.js.map +1 -0
- package/dist/converters/tag.d.ts +25 -0
- package/dist/converters/tag.d.ts.map +1 -0
- package/dist/converters/tag.js +170 -0
- package/dist/converters/tag.js.map +1 -0
- package/dist/converters/tagType.d.ts +15 -0
- package/dist/converters/tagType.d.ts.map +1 -0
- package/dist/converters/tagType.js +56 -0
- package/dist/converters/tagType.js.map +1 -0
- package/dist/converters/template.d.ts +31 -0
- package/dist/converters/template.d.ts.map +1 -0
- package/dist/converters/template.js +53 -0
- package/dist/converters/template.js.map +1 -0
- package/dist/converters/videoEnricher.d.ts +14 -0
- package/dist/converters/videoEnricher.d.ts.map +1 -0
- package/dist/converters/videoEnricher.js +85 -0
- package/dist/converters/videoEnricher.js.map +1 -0
- package/dist/icons/rebuildIconSprite.d.ts +8 -0
- package/dist/icons/rebuildIconSprite.d.ts.map +1 -0
- package/dist/icons/rebuildIconSprite.js +15 -0
- package/dist/icons/rebuildIconSprite.js.map +1 -0
- package/dist/index.d.ts +33 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +42 -0
- package/dist/index.js.map +1 -0
- package/dist/navigation/assembly.d.ts +8 -0
- package/dist/navigation/assembly.d.ts.map +1 -0
- package/dist/navigation/assembly.js +115 -0
- package/dist/navigation/assembly.js.map +1 -0
- package/dist/navigation/cacheOptions.d.ts +17 -0
- package/dist/navigation/cacheOptions.d.ts.map +1 -0
- package/dist/navigation/cacheOptions.js +45 -0
- package/dist/navigation/cacheOptions.js.map +1 -0
- package/dist/navigation/enrichModelNavigation.d.ts +17 -0
- package/dist/navigation/enrichModelNavigation.d.ts.map +1 -0
- package/dist/navigation/enrichModelNavigation.js +46 -0
- package/dist/navigation/enrichModelNavigation.js.map +1 -0
- package/dist/navigation/linkIndex.d.ts +10 -0
- package/dist/navigation/linkIndex.d.ts.map +1 -0
- package/dist/navigation/linkIndex.js +34 -0
- package/dist/navigation/linkIndex.js.map +1 -0
- package/dist/navigation/listingLinkBundle.d.ts +22 -0
- package/dist/navigation/listingLinkBundle.d.ts.map +1 -0
- package/dist/navigation/listingLinkBundle.js +88 -0
- package/dist/navigation/listingLinkBundle.js.map +1 -0
- package/dist/navigation/registry.d.ts +15 -0
- package/dist/navigation/registry.d.ts.map +1 -0
- package/dist/navigation/registry.js +130 -0
- package/dist/navigation/registry.js.map +1 -0
- package/dist/navigation/requestCache.d.ts +18 -0
- package/dist/navigation/requestCache.d.ts.map +1 -0
- package/dist/navigation/requestCache.js +66 -0
- package/dist/navigation/requestCache.js.map +1 -0
- package/dist/navigation/types.d.ts +45 -0
- package/dist/navigation/types.d.ts.map +1 -0
- package/dist/navigation/types.js +2 -0
- package/dist/navigation/types.js.map +1 -0
- package/dist/revalidation/entry-handlers.d.ts +40 -0
- package/dist/revalidation/entry-handlers.d.ts.map +1 -0
- package/dist/revalidation/entry-handlers.js +144 -0
- package/dist/revalidation/entry-handlers.js.map +1 -0
- package/dist/revalidation/handlers.d.ts +19 -0
- package/dist/revalidation/handlers.d.ts.map +1 -0
- package/dist/revalidation/handlers.js +50 -0
- package/dist/revalidation/handlers.js.map +1 -0
- package/dist/revalidation/index.d.ts +4 -0
- package/dist/revalidation/index.d.ts.map +1 -0
- package/dist/revalidation/index.js +5 -0
- package/dist/revalidation/index.js.map +1 -0
- package/dist/revalidation/nextjs-route.d.ts +38 -0
- package/dist/revalidation/nextjs-route.d.ts.map +1 -0
- package/dist/revalidation/nextjs-route.js +36 -0
- package/dist/revalidation/nextjs-route.js.map +1 -0
- package/dist/revalidation/route.d.ts +3 -0
- package/dist/revalidation/route.d.ts.map +1 -0
- package/dist/revalidation/route.js +99 -0
- package/dist/revalidation/route.js.map +1 -0
- package/dist/revalidation/server-utils.d.ts +31 -0
- package/dist/revalidation/server-utils.d.ts.map +1 -0
- package/dist/revalidation/server-utils.js +54 -0
- package/dist/revalidation/server-utils.js.map +1 -0
- package/dist/revalidation/tags.d.ts +110 -0
- package/dist/revalidation/tags.d.ts.map +1 -0
- package/dist/revalidation/tags.js +160 -0
- package/dist/revalidation/tags.js.map +1 -0
- package/dist/revalidation/utils.d.ts +21 -0
- package/dist/revalidation/utils.d.ts.map +1 -0
- package/dist/revalidation/utils.js +61 -0
- package/dist/revalidation/utils.js.map +1 -0
- package/dist/revalidation/webhook-content-types.d.ts +12 -0
- package/dist/revalidation/webhook-content-types.d.ts.map +1 -0
- package/dist/revalidation/webhook-content-types.js +28 -0
- package/dist/revalidation/webhook-content-types.js.map +1 -0
- package/dist/routing/index.d.ts +2 -0
- package/dist/routing/index.d.ts.map +1 -0
- package/dist/routing/index.js +2 -0
- package/dist/routing/index.js.map +1 -0
- package/dist/routing/marketing-site-url-calculators.d.ts +21 -0
- package/dist/routing/marketing-site-url-calculators.d.ts.map +1 -0
- package/dist/routing/marketing-site-url-calculators.js +43 -0
- package/dist/routing/marketing-site-url-calculators.js.map +1 -0
- package/dist/server.d.ts +7 -0
- package/dist/server.d.ts.map +1 -0
- package/dist/server.js +10 -0
- package/dist/server.js.map +1 -0
- package/dist/telemetry/deriveOperation.d.ts +8 -0
- package/dist/telemetry/deriveOperation.d.ts.map +1 -0
- package/dist/telemetry/deriveOperation.js +59 -0
- package/dist/telemetry/deriveOperation.js.map +1 -0
- package/dist/telemetry/queryContext.d.ts +7 -0
- package/dist/telemetry/queryContext.d.ts.map +1 -0
- package/dist/telemetry/queryContext.js +9 -0
- package/dist/telemetry/queryContext.js.map +1 -0
- package/dist/telemetry/queryLog.d.ts +17 -0
- package/dist/telemetry/queryLog.d.ts.map +1 -0
- package/dist/telemetry/queryLog.js +54 -0
- package/dist/telemetry/queryLog.js.map +1 -0
- package/dist/types.d.ts +93 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/dist/utils/arrayUtils.d.ts +3 -0
- package/dist/utils/arrayUtils.d.ts.map +1 -0
- package/dist/utils/arrayUtils.js +12 -0
- package/dist/utils/arrayUtils.js.map +1 -0
- package/dist/utils/dateUtils.d.ts +9 -0
- package/dist/utils/dateUtils.d.ts.map +1 -0
- package/dist/utils/dateUtils.js +26 -0
- package/dist/utils/dateUtils.js.map +1 -0
- package/dist/utils/errors.d.ts +56 -0
- package/dist/utils/errors.d.ts.map +1 -0
- package/dist/utils/errors.js +100 -0
- package/dist/utils/errors.js.map +1 -0
- package/dist/utils/index.d.ts +9 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +9 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/redirectMap.d.ts +40 -0
- package/dist/utils/redirectMap.d.ts.map +1 -0
- package/dist/utils/redirectMap.js +129 -0
- package/dist/utils/redirectMap.js.map +1 -0
- package/dist/utils/retry.d.ts +103 -0
- package/dist/utils/retry.d.ts.map +1 -0
- package/dist/utils/retry.js +248 -0
- package/dist/utils/retry.js.map +1 -0
- package/dist/utils/tags.d.ts +35 -0
- package/dist/utils/tags.d.ts.map +1 -0
- package/dist/utils/tags.js +37 -0
- package/dist/utils/tags.js.map +1 -0
- package/docs/llms.md +430 -0
- package/package.json +86 -0
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import type { IBaseCollection, IBaseComponent, IBaseExternalComponent, IBasePerson } from '@se-studio/core-data-types';
|
|
2
|
+
import type { BaseConverterContext } from '../converters/helpers';
|
|
3
|
+
import type { ContentfulConfig, FetchOptions } from '../types';
|
|
4
|
+
/**
|
|
5
|
+
* Fetches a single component, collection, or external component entry from Contentful
|
|
6
|
+
* by entry ID and returns it as a base-converted typed object.
|
|
7
|
+
*
|
|
8
|
+
* Intended for use in dev-only preview render routes (`/cms/preview/render?id=`).
|
|
9
|
+
* Always fetches from the Preview API to show draft content.
|
|
10
|
+
*
|
|
11
|
+
* @param context - Base converter context (URL calculators, resolvers)
|
|
12
|
+
* @param config - Contentful configuration with preview access token
|
|
13
|
+
* @param entryId - Contentful entry ID to fetch
|
|
14
|
+
* @param options - Fetch options (locale, cache settings)
|
|
15
|
+
* @returns The converted entry, or null if not found / not a supported type
|
|
16
|
+
*
|
|
17
|
+
* @example
|
|
18
|
+
* ```ts
|
|
19
|
+
* const result = await contentfulComponentRest(converterContext, config, '4xKj2abcDef');
|
|
20
|
+
* if (result?.type === 'Component') { ... }
|
|
21
|
+
* ```
|
|
22
|
+
*/
|
|
23
|
+
export type AnyEntryRestResult = IBaseComponent | IBaseCollection | IBaseExternalComponent | IBasePerson;
|
|
24
|
+
/**
|
|
25
|
+
* Fetches a single component, collection, external component, or person entry
|
|
26
|
+
* from Contentful by entry ID and returns it as a base-converted typed object.
|
|
27
|
+
*
|
|
28
|
+
* Intended for use in dev-only preview and convert API routes.
|
|
29
|
+
* Always fetches from the Preview API to show draft content.
|
|
30
|
+
*
|
|
31
|
+
* @param context - Base converter context (URL calculators, resolvers)
|
|
32
|
+
* @param config - Contentful configuration with preview access token
|
|
33
|
+
* @param entryId - Contentful entry ID to fetch
|
|
34
|
+
* @param options - Fetch options (locale, cache settings)
|
|
35
|
+
* @returns The converted entry, or null if not found / not a supported type
|
|
36
|
+
*/
|
|
37
|
+
export declare function contentfulAnyEntryRest(context: BaseConverterContext, config: ContentfulConfig, entryId: string, options?: Partial<FetchOptions>): Promise<AnyEntryRestResult | null>;
|
|
38
|
+
/**
|
|
39
|
+
* Fetches a single component, collection, or external component entry from Contentful
|
|
40
|
+
* by entry ID and returns it as a base-converted typed object.
|
|
41
|
+
*
|
|
42
|
+
* Intended for use in dev-only preview render routes (`/cms/preview/render?id=`).
|
|
43
|
+
* Always fetches from the Preview API to show draft content.
|
|
44
|
+
* For person entries use contentfulAnyEntryRest instead.
|
|
45
|
+
*
|
|
46
|
+
* @param context - Base converter context (URL calculators, resolvers)
|
|
47
|
+
* @param config - Contentful configuration with preview access token
|
|
48
|
+
* @param entryId - Contentful entry ID to fetch
|
|
49
|
+
* @param options - Fetch options (locale, cache settings)
|
|
50
|
+
* @returns The converted entry, or null if not found / not a supported type
|
|
51
|
+
*
|
|
52
|
+
* @example
|
|
53
|
+
* ```ts
|
|
54
|
+
* const result = await contentfulComponentRest(converterContext, config, '4xKj2abcDef');
|
|
55
|
+
* if (result?.type === 'Component') { ... }
|
|
56
|
+
* ```
|
|
57
|
+
*/
|
|
58
|
+
export declare function contentfulComponentRest(context: BaseConverterContext, config: ContentfulConfig, entryId: string, options?: Partial<FetchOptions>): Promise<IBaseComponent | IBaseCollection | IBaseExternalComponent | null>;
|
|
59
|
+
//# sourceMappingURL=componentPreview.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"componentPreview.d.ts","sourceRoot":"","sources":["../../src/api/componentPreview.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,cAAc,EACd,sBAAsB,EACtB,WAAW,EACZ,MAAM,4BAA4B,CAAC;AAMpC,OAAO,KAAK,EAAE,oBAAoB,EAAoB,MAAM,uBAAuB,CAAC;AAEpF,OAAO,KAAK,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAG/D;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,MAAM,kBAAkB,GAC1B,cAAc,GACd,eAAe,GACf,sBAAsB,GACtB,WAAW,CAAC;AAEhB;;;;;;;;;;;;GAYG;AACH,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,oBAAoB,EAC7B,MAAM,EAAE,gBAAgB,EACxB,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,GAC9B,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAiDpC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,oBAAoB,EAC7B,MAAM,EAAE,gBAAgB,EACxB,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,GAC9B,OAAO,CAAC,cAAc,GAAG,eAAe,GAAG,sBAAsB,GAAG,IAAI,CAAC,CAM3E"}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import { getContentfulClient } from '../client.js';
|
|
2
|
+
import { baseCollectionConverter } from '../converters/collection.js';
|
|
3
|
+
import { baseComponentConverter } from '../converters/component.js';
|
|
4
|
+
import { enrichAllAssets } from '../converters/enrichAssets.js';
|
|
5
|
+
import { baseExternalComponentConverter } from '../converters/externalComponent.js';
|
|
6
|
+
import { basePersonConverter } from '../converters/person.js';
|
|
7
|
+
import { convertAllAssets, convertAllIncludes, convertAllRawAssets } from './helpers.js';
|
|
8
|
+
/**
|
|
9
|
+
* Fetches a single component, collection, external component, or person entry
|
|
10
|
+
* from Contentful by entry ID and returns it as a base-converted typed object.
|
|
11
|
+
*
|
|
12
|
+
* Intended for use in dev-only preview and convert API routes.
|
|
13
|
+
* Always fetches from the Preview API to show draft content.
|
|
14
|
+
*
|
|
15
|
+
* @param context - Base converter context (URL calculators, resolvers)
|
|
16
|
+
* @param config - Contentful configuration with preview access token
|
|
17
|
+
* @param entryId - Contentful entry ID to fetch
|
|
18
|
+
* @param options - Fetch options (locale, cache settings)
|
|
19
|
+
* @returns The converted entry, or null if not found / not a supported type
|
|
20
|
+
*/
|
|
21
|
+
export async function contentfulAnyEntryRest(context, config, entryId, options) {
|
|
22
|
+
const client = getContentfulClient(config, true);
|
|
23
|
+
const locale = options?.locale;
|
|
24
|
+
const response = await client.getEntries({
|
|
25
|
+
'sys.id': entryId,
|
|
26
|
+
include: options?.include ?? 4,
|
|
27
|
+
...(locale ? { locale } : {}),
|
|
28
|
+
}, { preview: true, cache: 'no-store', ...options });
|
|
29
|
+
const entry = response.items[0];
|
|
30
|
+
if (!entry?.fields) {
|
|
31
|
+
return null;
|
|
32
|
+
}
|
|
33
|
+
const contentTypeId = entry.sys.contentType.sys.id;
|
|
34
|
+
const assets = convertAllAssets(response, context);
|
|
35
|
+
const rawAssets = convertAllRawAssets(response);
|
|
36
|
+
const includes = convertAllIncludes(response);
|
|
37
|
+
const externalVideoEmbeds = await enrichAllAssets(assets, includes, options);
|
|
38
|
+
const fullContext = {
|
|
39
|
+
...context,
|
|
40
|
+
includes,
|
|
41
|
+
assets,
|
|
42
|
+
rawAssets,
|
|
43
|
+
errors: [],
|
|
44
|
+
externalVideoEmbeds,
|
|
45
|
+
};
|
|
46
|
+
// biome-ignore lint/suspicious/noExplicitAny: entry types are dynamic
|
|
47
|
+
const typedEntry = entry;
|
|
48
|
+
switch (contentTypeId) {
|
|
49
|
+
case 'component':
|
|
50
|
+
return baseComponentConverter(fullContext, typedEntry);
|
|
51
|
+
case 'collection':
|
|
52
|
+
return baseCollectionConverter(fullContext, typedEntry);
|
|
53
|
+
case 'externalComponent':
|
|
54
|
+
return baseExternalComponentConverter(fullContext, typedEntry);
|
|
55
|
+
case 'person':
|
|
56
|
+
return basePersonConverter(fullContext, typedEntry);
|
|
57
|
+
default:
|
|
58
|
+
return null;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Fetches a single component, collection, or external component entry from Contentful
|
|
63
|
+
* by entry ID and returns it as a base-converted typed object.
|
|
64
|
+
*
|
|
65
|
+
* Intended for use in dev-only preview render routes (`/cms/preview/render?id=`).
|
|
66
|
+
* Always fetches from the Preview API to show draft content.
|
|
67
|
+
* For person entries use contentfulAnyEntryRest instead.
|
|
68
|
+
*
|
|
69
|
+
* @param context - Base converter context (URL calculators, resolvers)
|
|
70
|
+
* @param config - Contentful configuration with preview access token
|
|
71
|
+
* @param entryId - Contentful entry ID to fetch
|
|
72
|
+
* @param options - Fetch options (locale, cache settings)
|
|
73
|
+
* @returns The converted entry, or null if not found / not a supported type
|
|
74
|
+
*
|
|
75
|
+
* @example
|
|
76
|
+
* ```ts
|
|
77
|
+
* const result = await contentfulComponentRest(converterContext, config, '4xKj2abcDef');
|
|
78
|
+
* if (result?.type === 'Component') { ... }
|
|
79
|
+
* ```
|
|
80
|
+
*/
|
|
81
|
+
export async function contentfulComponentRest(context, config, entryId, options) {
|
|
82
|
+
const result = await contentfulAnyEntryRest(context, config, entryId, options);
|
|
83
|
+
if (result?.type === 'Person') {
|
|
84
|
+
return null;
|
|
85
|
+
}
|
|
86
|
+
return result;
|
|
87
|
+
}
|
|
88
|
+
//# sourceMappingURL=componentPreview.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"componentPreview.js","sourceRoot":"","sources":["../../src/api/componentPreview.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { BaseConverterContext, UrlCalculators } from '../converters/helpers';
|
|
2
|
+
/**
|
|
3
|
+
* Creates a base converter context with default resolvers for all content types.
|
|
4
|
+
*
|
|
5
|
+
* Sets up default converters for:
|
|
6
|
+
* - Pages, Articles, Article Types
|
|
7
|
+
* - Components, Collections, External Components
|
|
8
|
+
* - Links (pages, articles, tags, people, etc.)
|
|
9
|
+
* - Navigation items
|
|
10
|
+
*
|
|
11
|
+
* Projects can extend this context with custom resolvers for specific content types.
|
|
12
|
+
*
|
|
13
|
+
* @returns Base converter context with all default resolvers configured
|
|
14
|
+
*
|
|
15
|
+
* @example
|
|
16
|
+
* ```ts
|
|
17
|
+
* const context = createBaseConverterContext();
|
|
18
|
+
*
|
|
19
|
+
* // Use with API functions
|
|
20
|
+
* const page = await contentfulPageRest(context, config, 'home');
|
|
21
|
+
* ```
|
|
22
|
+
*/
|
|
23
|
+
export declare function createBaseConverterContext(urlCalculators: UrlCalculators): BaseConverterContext;
|
|
24
|
+
//# sourceMappingURL=context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/api/context.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EACV,oBAAoB,EAKpB,cAAc,EACf,MAAM,uBAAuB,CAAC;AAc/B;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,0BAA0B,CAAC,cAAc,EAAE,cAAc,GAAG,oBAAoB,CA2C/F"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { baseArticleConverter, baseArticleLinkConverter, baseArticleTypeConverter, baseArticleTypeLinkConverter, } from '../converters/article.js';
|
|
2
|
+
import { baseBannerConverter } from '../converters/banner.js';
|
|
3
|
+
import { baseCollectionConverter } from '../converters/collection.js';
|
|
4
|
+
import { baseComponentConverter } from '../converters/component.js';
|
|
5
|
+
import { baseCustomTypeConverter, baseCustomTypeLinkConverter } from '../converters/customType.js';
|
|
6
|
+
import { baseDocumentConverter } from '../converters/document.js';
|
|
7
|
+
import { baseExternalComponentConverter } from '../converters/externalComponent.js';
|
|
8
|
+
import { baseHtmlComponentConverter } from '../converters/htmlComponent.js';
|
|
9
|
+
import { baseLinkConverter } from '../converters/link.js';
|
|
10
|
+
import { baseNavigationItemConverter } from '../converters/navigationItem.js';
|
|
11
|
+
import { basePageConverter, basePageLinkConverter, basePageVariantLinkConverter, } from '../converters/page.js';
|
|
12
|
+
import { basePersonConverter, basePersonLinkConverter } from '../converters/person.js';
|
|
13
|
+
import { baseRedirectConverter } from '../converters/redirect.js';
|
|
14
|
+
import { baseTagConverter, baseTagLinkConverter } from '../converters/tag.js';
|
|
15
|
+
import { baseTagTypeConverter, baseTagTypeLinkConverter } from '../converters/tagType.js';
|
|
16
|
+
/**
|
|
17
|
+
* Creates a base converter context with default resolvers for all content types.
|
|
18
|
+
*
|
|
19
|
+
* Sets up default converters for:
|
|
20
|
+
* - Pages, Articles, Article Types
|
|
21
|
+
* - Components, Collections, External Components
|
|
22
|
+
* - Links (pages, articles, tags, people, etc.)
|
|
23
|
+
* - Navigation items
|
|
24
|
+
*
|
|
25
|
+
* Projects can extend this context with custom resolvers for specific content types.
|
|
26
|
+
*
|
|
27
|
+
* @returns Base converter context with all default resolvers configured
|
|
28
|
+
*
|
|
29
|
+
* @example
|
|
30
|
+
* ```ts
|
|
31
|
+
* const context = createBaseConverterContext();
|
|
32
|
+
*
|
|
33
|
+
* // Use with API functions
|
|
34
|
+
* const page = await contentfulPageRest(context, config, 'home');
|
|
35
|
+
* ```
|
|
36
|
+
*/
|
|
37
|
+
export function createBaseConverterContext(urlCalculators) {
|
|
38
|
+
const linkResolver = new Map();
|
|
39
|
+
linkResolver.set('page', basePageLinkConverter);
|
|
40
|
+
linkResolver.set('article', baseArticleLinkConverter);
|
|
41
|
+
linkResolver.set('articleType', baseArticleTypeLinkConverter);
|
|
42
|
+
linkResolver.set('tag', baseTagLinkConverter);
|
|
43
|
+
linkResolver.set('person', basePersonLinkConverter);
|
|
44
|
+
linkResolver.set('pageVariant', basePageVariantLinkConverter);
|
|
45
|
+
linkResolver.set('link', baseLinkConverter);
|
|
46
|
+
linkResolver.set('customType', baseCustomTypeLinkConverter);
|
|
47
|
+
linkResolver.set('tagType', baseTagTypeLinkConverter);
|
|
48
|
+
const contentResolver = new Map();
|
|
49
|
+
contentResolver.set('collection', baseCollectionConverter);
|
|
50
|
+
contentResolver.set('component', baseComponentConverter);
|
|
51
|
+
contentResolver.set('externalComponent', baseExternalComponentConverter);
|
|
52
|
+
contentResolver.set('htmlComponent', baseHtmlComponentConverter);
|
|
53
|
+
return {
|
|
54
|
+
pageResolver: basePageConverter,
|
|
55
|
+
navigationItemResolver: baseNavigationItemConverter,
|
|
56
|
+
articleResolver: baseArticleConverter,
|
|
57
|
+
articleTypeResolver: baseArticleTypeConverter,
|
|
58
|
+
tagResolver: baseTagConverter,
|
|
59
|
+
tagTypeResolver: baseTagTypeConverter,
|
|
60
|
+
personResolver: basePersonConverter,
|
|
61
|
+
customTypeResolver: baseCustomTypeConverter,
|
|
62
|
+
componentResolver: baseComponentConverter,
|
|
63
|
+
collectionResolver: baseCollectionConverter,
|
|
64
|
+
bannerResolver: baseBannerConverter,
|
|
65
|
+
documentResolver: baseDocumentConverter,
|
|
66
|
+
redirectResolver: baseRedirectConverter,
|
|
67
|
+
linkResolver,
|
|
68
|
+
contentResolver,
|
|
69
|
+
urlCalculators,
|
|
70
|
+
videoPrefix: '',
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
//# sourceMappingURL=context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/api/context.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import type { IBaseCustomType } from '@se-studio/core-data-types';
|
|
2
|
+
import type { BaseConverterContext } from '../converters/helpers';
|
|
3
|
+
import type { CmsResponse, ContentfulConfig, FetchOptions } from '../types';
|
|
4
|
+
/**
|
|
5
|
+
* Fetches a custom type from Contentful by slug
|
|
6
|
+
*
|
|
7
|
+
* Custom types represent index pages for categories like Topics or Resources.
|
|
8
|
+
* They provide configuration for both the main index page and potentially
|
|
9
|
+
* individual entry pages.
|
|
10
|
+
*
|
|
11
|
+
* @param context - Converter context
|
|
12
|
+
* @param config - Contentful configuration
|
|
13
|
+
* @param slug - Custom type's slug to fetch (e.g., 'topics', 'resources')
|
|
14
|
+
* @param options - Fetch options (locale, preview, caching, etc.)
|
|
15
|
+
* @returns Promise resolving to IBaseCustomType or null if not found
|
|
16
|
+
*
|
|
17
|
+
* @example
|
|
18
|
+
* ```ts
|
|
19
|
+
* const customType = await contentfulCustomTypeRest(
|
|
20
|
+
* context,
|
|
21
|
+
* {
|
|
22
|
+
* spaceId: process.env.CONTENTFUL_SPACE_ID!,
|
|
23
|
+
* accessToken: process.env.CONTENTFUL_ACCESS_TOKEN!,
|
|
24
|
+
* },
|
|
25
|
+
* 'topics',
|
|
26
|
+
* {
|
|
27
|
+
* locale: 'en-US',
|
|
28
|
+
* cache: {
|
|
29
|
+
* tags: ['topics-custom-type'],
|
|
30
|
+
* revalidate: 3600
|
|
31
|
+
* }
|
|
32
|
+
* }
|
|
33
|
+
* );
|
|
34
|
+
* ```
|
|
35
|
+
*/
|
|
36
|
+
export declare function contentfulCustomTypeRest(context: BaseConverterContext, config: ContentfulConfig, slug: string, options: FetchOptions): Promise<CmsResponse<IBaseCustomType | null>>;
|
|
37
|
+
//# sourceMappingURL=custom-type.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"custom-type.d.ts","sourceRoot":"","sources":["../../src/api/custom-type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAElE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAG5E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,wBAAsB,wBAAwB,CAC5C,OAAO,EAAE,oBAAoB,EAC7B,MAAM,EAAE,gBAAgB,EACxB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,YAAY,GACpB,OAAO,CAAC,WAAW,CAAC,eAAe,GAAG,IAAI,CAAC,CAAC,CAc9C"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { fetchSingleEntity } from './helpers.js';
|
|
2
|
+
/**
|
|
3
|
+
* Fetches a custom type from Contentful by slug
|
|
4
|
+
*
|
|
5
|
+
* Custom types represent index pages for categories like Topics or Resources.
|
|
6
|
+
* They provide configuration for both the main index page and potentially
|
|
7
|
+
* individual entry pages.
|
|
8
|
+
*
|
|
9
|
+
* @param context - Converter context
|
|
10
|
+
* @param config - Contentful configuration
|
|
11
|
+
* @param slug - Custom type's slug to fetch (e.g., 'topics', 'resources')
|
|
12
|
+
* @param options - Fetch options (locale, preview, caching, etc.)
|
|
13
|
+
* @returns Promise resolving to IBaseCustomType or null if not found
|
|
14
|
+
*
|
|
15
|
+
* @example
|
|
16
|
+
* ```ts
|
|
17
|
+
* const customType = await contentfulCustomTypeRest(
|
|
18
|
+
* context,
|
|
19
|
+
* {
|
|
20
|
+
* spaceId: process.env.CONTENTFUL_SPACE_ID!,
|
|
21
|
+
* accessToken: process.env.CONTENTFUL_ACCESS_TOKEN!,
|
|
22
|
+
* },
|
|
23
|
+
* 'topics',
|
|
24
|
+
* {
|
|
25
|
+
* locale: 'en-US',
|
|
26
|
+
* cache: {
|
|
27
|
+
* tags: ['topics-custom-type'],
|
|
28
|
+
* revalidate: 3600
|
|
29
|
+
* }
|
|
30
|
+
* }
|
|
31
|
+
* );
|
|
32
|
+
* ```
|
|
33
|
+
*/
|
|
34
|
+
export async function contentfulCustomTypeRest(context, config, slug, options) {
|
|
35
|
+
return fetchSingleEntity(context, config, {
|
|
36
|
+
contentType: 'customType',
|
|
37
|
+
cacheTagType: 'customType',
|
|
38
|
+
cacheTagIdentifier: slug,
|
|
39
|
+
query: { 'fields.slug': slug },
|
|
40
|
+
resolver: (ctx, entry) => ctx.customTypeResolver(ctx, entry),
|
|
41
|
+
errorLogContext: { slug },
|
|
42
|
+
}, options);
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=custom-type.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"custom-type.js","sourceRoot":"","sources":["../../src/api/custom-type.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAE9C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,OAA6B,EAC7B,MAAwB,EACxB,IAAY,EACZ,OAAqB;IAErB,OAAO,iBAAiB,CACtB,OAAO,EACP,MAAM,EACN;QACE,WAAW,EAAE,YAAY;QACzB,YAAY,EAAE,YAAY;QAC1B,kBAAkB,EAAE,IAAI;QACxB,KAAK,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE;QAC9B,QAAQ,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,GAAG,CAAC,kBAAkB,CAAC,GAAG,EAAE,KAAK,CAAC;QAC5D,eAAe,EAAE,EAAE,IAAI,EAAE;KAC1B,EACD,OAAO,CACR,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { IBaseDocument } from '@se-studio/core-data-types';
|
|
2
|
+
import type { BaseConverterContext } from '../converters/helpers';
|
|
3
|
+
import type { CmsResponse, ContentfulConfig, FetchOptions } from '../types';
|
|
4
|
+
/**
|
|
5
|
+
* Fetches all document entries from Contentful (fund/compliance files).
|
|
6
|
+
*/
|
|
7
|
+
export declare function contentfulDocumentsRest(context: BaseConverterContext, config: ContentfulConfig, options: FetchOptions): Promise<CmsResponse<IBaseDocument[] | null>>;
|
|
8
|
+
//# sourceMappingURL=document.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"document.d.ts","sourceRoot":"","sources":["../../src/api/document.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAIhE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAGlE,OAAO,KAAK,EAAY,WAAW,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAStF;;GAEG;AACH,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,oBAAoB,EAC7B,MAAM,EAAE,gBAAgB,EACxB,OAAO,EAAE,YAAY,GACpB,OAAO,CAAC,WAAW,CAAC,aAAa,EAAE,GAAG,IAAI,CAAC,CAAC,CA8F9C"}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import { getContentfulClient } from '../client.js';
|
|
2
|
+
import { enrichAllAssets } from '../converters/enrichAssets.js';
|
|
3
|
+
import { getCacheTags } from '../revalidation/index.js';
|
|
4
|
+
import { withCmsQueryContext } from '../telemetry/queryContext.js';
|
|
5
|
+
import { withRetry } from '../utils/index.js';
|
|
6
|
+
import { convertAllAssets, convertAllIncludes, convertAllRawAssets, createFullConverterContext, } from './helpers.js';
|
|
7
|
+
/**
|
|
8
|
+
* Fetches all document entries from Contentful (fund/compliance files).
|
|
9
|
+
*/
|
|
10
|
+
export async function contentfulDocumentsRest(context, config, options) {
|
|
11
|
+
const client = getContentfulClient(config, options.preview);
|
|
12
|
+
const documentCacheTags = getCacheTags('document', undefined, options.preview);
|
|
13
|
+
const requestOptions = {
|
|
14
|
+
...options,
|
|
15
|
+
next: {
|
|
16
|
+
...options?.next,
|
|
17
|
+
tags: documentCacheTags,
|
|
18
|
+
},
|
|
19
|
+
};
|
|
20
|
+
const allDocuments = [];
|
|
21
|
+
const errors = [];
|
|
22
|
+
const pageSize = 100;
|
|
23
|
+
let skip = 0;
|
|
24
|
+
let hasMore = true;
|
|
25
|
+
const fetchFn = async () => {
|
|
26
|
+
while (hasMore) {
|
|
27
|
+
try {
|
|
28
|
+
const page = Math.floor(skip / pageSize) + 1;
|
|
29
|
+
const operation = page > 1 ? `Reading all documents (page ${page})` : 'Reading all documents';
|
|
30
|
+
const documentResponse = await withCmsQueryContext({ operation }, () => client.getEntries({
|
|
31
|
+
content_type: 'document',
|
|
32
|
+
include: 2,
|
|
33
|
+
locale: options?.locale,
|
|
34
|
+
limit: pageSize,
|
|
35
|
+
skip,
|
|
36
|
+
order: ['-fields.publishDate', 'fields.name'],
|
|
37
|
+
}, requestOptions));
|
|
38
|
+
if (!documentResponse.items.length) {
|
|
39
|
+
hasMore = false;
|
|
40
|
+
break;
|
|
41
|
+
}
|
|
42
|
+
const includes = convertAllIncludes(documentResponse);
|
|
43
|
+
const assets = convertAllAssets(documentResponse, context);
|
|
44
|
+
const rawAssets = convertAllRawAssets(documentResponse);
|
|
45
|
+
const externalVideoEmbeds = await enrichAllAssets(assets, includes, options);
|
|
46
|
+
const fullContext = createFullConverterContext(context, includes, assets, rawAssets, externalVideoEmbeds, options);
|
|
47
|
+
for (const documentEntry of documentResponse.items) {
|
|
48
|
+
if (!documentEntry.fields)
|
|
49
|
+
continue;
|
|
50
|
+
try {
|
|
51
|
+
const converted = context.documentResolver(fullContext, documentEntry);
|
|
52
|
+
allDocuments.push(converted);
|
|
53
|
+
}
|
|
54
|
+
catch (error) {
|
|
55
|
+
const entryId = documentEntry.sys.id;
|
|
56
|
+
const entryType = documentEntry.sys.contentType?.sys?.id;
|
|
57
|
+
const errorMessage = error instanceof Error ? error.message : 'Unknown conversion error';
|
|
58
|
+
errors.push({
|
|
59
|
+
entryId,
|
|
60
|
+
entryType,
|
|
61
|
+
message: errorMessage,
|
|
62
|
+
error,
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
catch (error) {
|
|
68
|
+
errors.push({
|
|
69
|
+
entryId: 'unknown',
|
|
70
|
+
entryType: 'document',
|
|
71
|
+
message: error instanceof Error ? error.message : 'Unknown conversion error',
|
|
72
|
+
error,
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
skip += pageSize;
|
|
76
|
+
}
|
|
77
|
+
return { data: allDocuments, errors };
|
|
78
|
+
};
|
|
79
|
+
if (options.retry) {
|
|
80
|
+
return await withRetry(fetchFn, options.retry);
|
|
81
|
+
}
|
|
82
|
+
return await fetchFn();
|
|
83
|
+
}
|
|
84
|
+
//# sourceMappingURL=document.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"document.js","sourceRoot":"","sources":["../../src/api/document.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import type { IArticleLink, IInternalLink, IPersonLink, IVisual } from '@se-studio/core-data-types';
|
|
2
|
+
import type { Asset, Entry, EntrySkeletonType } from 'contentful';
|
|
3
|
+
import type { BaseArticleSkeleton } from '../baseTypes/baseArticle';
|
|
4
|
+
import type { BaseArticleTypeSkeleton } from '../baseTypes/baseArticleType';
|
|
5
|
+
import type { BasePageSkeleton } from '../baseTypes/basePage';
|
|
6
|
+
import type { BasePersonSkeleton } from '../baseTypes/basePerson';
|
|
7
|
+
import type { BaseTagSkeleton } from '../baseTypes/baseTag';
|
|
8
|
+
import { type ContentfulResponse, getContentfulClient } from '../client';
|
|
9
|
+
import type { BaseConverterContext, ConverterContext } from '../converters/helpers';
|
|
10
|
+
import type { CmsResponse, ContentfulConfig, FetchOptions } from '../types';
|
|
11
|
+
import type { DefaultChainModifier, PossibleResolvedEntry, SingleEntityFetchConfig } from './types';
|
|
12
|
+
export { allLinksOperationLabel, operationLabel } from '../telemetry/deriveOperation';
|
|
13
|
+
export { withCmsQueryContext } from '../telemetry/queryContext';
|
|
14
|
+
export type { ConverterContext };
|
|
15
|
+
/**
|
|
16
|
+
* Build fetch options with defaults.
|
|
17
|
+
*
|
|
18
|
+
* @param options - Provided fetch options
|
|
19
|
+
* @param defaultDraftOnly - Default value for preview if not specified
|
|
20
|
+
* @returns Combined fetch options
|
|
21
|
+
*/
|
|
22
|
+
export declare function buildFetchOptions(options: Partial<FetchOptions> | undefined, defaultPreview: boolean): FetchOptions;
|
|
23
|
+
/**
|
|
24
|
+
* Get Contentful configuration from environment variables.
|
|
25
|
+
*
|
|
26
|
+
* Supports CONTENTFUL_SPACE_ID, CONTENTFUL_ENVIRONMENT (or CONTENTFUL_ENVIRONMENT_NAME),
|
|
27
|
+
* and access tokens for both delivery and preview.
|
|
28
|
+
*
|
|
29
|
+
* @param preview - Whether to get the preview access token
|
|
30
|
+
* @returns Contentful configuration object
|
|
31
|
+
* @throws Error if required environment variables are missing
|
|
32
|
+
*/
|
|
33
|
+
export declare function coreGetContentfulConfig(preview: boolean): ContentfulConfig;
|
|
34
|
+
export { ARTICLE_LINK_FIELDS, ARTICLE_LISTING_FIELDS, ARTICLE_TYPE_LINK_FIELDS, CUSTOM_TYPE_LINK_FIELDS, getDefaultInclude, getListingLinkFetchParams, getResolutionScope as getFetchResolutionScope, getSingleEntityListingSelect, PAGE_BUNDLED_CUSTOM_TYPE_INCLUDE, PAGE_LINK_FIELDS, PERSON_LINK_FIELDS, resolveIncludeDepth, TAG_LINK_FIELDS, TAG_TYPE_LINK_FIELDS, } from './listing-fetch-params';
|
|
35
|
+
/** @deprecated Use ARTICLE_LISTING_FIELDS */
|
|
36
|
+
export declare const ARTICLE_LINK_FIELDS_LIGHT = "sys,fields.cmsLabel,fields.title,fields.subtitle,fields.slug,fields.breadcrumbTitle,fields.featuredImage,fields.backgroundColour,fields.textColour,fields.indexed,fields.hidden,fields.tags,fields.articleType,fields.date,fields.author,fields.authors,fields.externalLink,fields.download,fields.visuals,fields.description,fields.summary,fields.icon";
|
|
37
|
+
export declare function createFullConverterContext(base: BaseConverterContext, includes: Map<string, PossibleResolvedEntry>, assets: Map<string, IVisual>, rawAssets: Map<string, Asset>, externalVideoEmbeds: Map<string, import('@se-studio/core-data-types').IVideoEmbed>, options: FetchOptions): ConverterContext;
|
|
38
|
+
/** Merge parent `options.next.tags` with content-type tags (flat-nav passes collection tags down). */
|
|
39
|
+
export declare function mergeFetchCacheTags(options: FetchOptions | undefined, contentTags: string[]): NonNullable<FetchOptions['next']>;
|
|
40
|
+
export declare function convertAllAssets(response: ContentfulResponse<unknown>, context: BaseConverterContext): Map<string, IVisual>;
|
|
41
|
+
export declare function convertAllRawAssets(response: ContentfulResponse<unknown>): Map<string, Asset>;
|
|
42
|
+
export declare function convertAllIncludes(response: ContentfulResponse<unknown>): Map<string, PossibleResolvedEntry>;
|
|
43
|
+
/**
|
|
44
|
+
* Generic helper for fetching a single entity from Contentful.
|
|
45
|
+
* Handles caching, error handling, retry logic, and conversion consistently.
|
|
46
|
+
*
|
|
47
|
+
* @param context - Base converter context for content transformation
|
|
48
|
+
* @param config - Contentful configuration (spaceId, accessToken, environment)
|
|
49
|
+
* @param fetchConfig - Configuration for this specific fetch
|
|
50
|
+
* @param options - Optional fetch options (locale, preview, caching, retry)
|
|
51
|
+
* @returns Promise resolving to the entity or null if not found, with any conversion errors
|
|
52
|
+
*/
|
|
53
|
+
export declare function fetchSingleEntity<TEntry extends EntrySkeletonType, TResult>(context: BaseConverterContext, config: ContentfulConfig, fetchConfig: SingleEntityFetchConfig<TEntry, TResult>, options: FetchOptions): Promise<CmsResponse<TResult | null>>;
|
|
54
|
+
/**
|
|
55
|
+
* Shared helper function for paginated Contentful link fetching.
|
|
56
|
+
* Returns links with lastModified metadata from sys.updatedAt.
|
|
57
|
+
*/
|
|
58
|
+
export declare function fetchAllLinks<TEntry extends EntrySkeletonType = BasePageSkeleton | BaseArticleSkeleton | BaseArticleTypeSkeleton | BaseTagSkeleton | BasePersonSkeleton, TResult extends IInternalLink | IArticleLink | IPersonLink = IInternalLink>(contentType: string, client: ReturnType<typeof getContentfulClient>, requestOptions: FetchOptions | undefined, converter: (context: ConverterContext, entry: Entry<TEntry, DefaultChainModifier, string>) => TResult, context: BaseConverterContext, pageSize?: number, select?: string, include?: number): Promise<CmsResponse<TResult[]>>;
|
|
59
|
+
//# sourceMappingURL=helpers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/api/helpers.ts"],"names":[],"mappings":"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"}
|