@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.
Files changed (472) hide show
  1. package/CHANGELOG.md +2036 -0
  2. package/README.md +764 -0
  3. package/dist/api/article-type.d.ts +37 -0
  4. package/dist/api/article-type.d.ts.map +1 -0
  5. package/dist/api/article-type.js +140 -0
  6. package/dist/api/article-type.js.map +1 -0
  7. package/dist/api/article.d.ts +32 -0
  8. package/dist/api/article.d.ts.map +1 -0
  9. package/dist/api/article.js +43 -0
  10. package/dist/api/article.js.map +1 -0
  11. package/dist/api/asset.d.ts +28 -0
  12. package/dist/api/asset.d.ts.map +1 -0
  13. package/dist/api/asset.js +56 -0
  14. package/dist/api/asset.js.map +1 -0
  15. package/dist/api/banner.d.ts +8 -0
  16. package/dist/api/banner.d.ts.map +1 -0
  17. package/dist/api/banner.js +96 -0
  18. package/dist/api/banner.js.map +1 -0
  19. package/dist/api/breadcrumb.d.ts +40 -0
  20. package/dist/api/breadcrumb.d.ts.map +1 -0
  21. package/dist/api/breadcrumb.js +60 -0
  22. package/dist/api/breadcrumb.js.map +1 -0
  23. package/dist/api/componentPreview.d.ts +59 -0
  24. package/dist/api/componentPreview.d.ts.map +1 -0
  25. package/dist/api/componentPreview.js +88 -0
  26. package/dist/api/componentPreview.js.map +1 -0
  27. package/dist/api/context.d.ts +24 -0
  28. package/dist/api/context.d.ts.map +1 -0
  29. package/dist/api/context.js +73 -0
  30. package/dist/api/context.js.map +1 -0
  31. package/dist/api/custom-type.d.ts +37 -0
  32. package/dist/api/custom-type.d.ts.map +1 -0
  33. package/dist/api/custom-type.js +44 -0
  34. package/dist/api/custom-type.js.map +1 -0
  35. package/dist/api/document.d.ts +8 -0
  36. package/dist/api/document.d.ts.map +1 -0
  37. package/dist/api/document.js +84 -0
  38. package/dist/api/document.js.map +1 -0
  39. package/dist/api/helpers.d.ts +59 -0
  40. package/dist/api/helpers.d.ts.map +1 -0
  41. package/dist/api/helpers.js +313 -0
  42. package/dist/api/helpers.js.map +1 -0
  43. package/dist/api/index.d.ts +33 -0
  44. package/dist/api/index.d.ts.map +1 -0
  45. package/dist/api/index.js +37 -0
  46. package/dist/api/index.js.map +1 -0
  47. package/dist/api/links.d.ts +124 -0
  48. package/dist/api/links.d.ts.map +1 -0
  49. package/dist/api/links.js +307 -0
  50. package/dist/api/links.js.map +1 -0
  51. package/dist/api/listing-fetch-params.d.ts +70 -0
  52. package/dist/api/listing-fetch-params.d.ts.map +1 -0
  53. package/dist/api/listing-fetch-params.js +124 -0
  54. package/dist/api/listing-fetch-params.js.map +1 -0
  55. package/dist/api/media-library.d.ts +59 -0
  56. package/dist/api/media-library.d.ts.map +1 -0
  57. package/dist/api/media-library.js +315 -0
  58. package/dist/api/media-library.js.map +1 -0
  59. package/dist/api/navigation.d.ts +10 -0
  60. package/dist/api/navigation.d.ts.map +1 -0
  61. package/dist/api/navigation.js +18 -0
  62. package/dist/api/navigation.js.map +1 -0
  63. package/dist/api/page.d.ts +15 -0
  64. package/dist/api/page.d.ts.map +1 -0
  65. package/dist/api/page.js +39 -0
  66. package/dist/api/page.js.map +1 -0
  67. package/dist/api/person.d.ts +37 -0
  68. package/dist/api/person.d.ts.map +1 -0
  69. package/dist/api/person.js +135 -0
  70. package/dist/api/person.js.map +1 -0
  71. package/dist/api/preview-types.d.ts +65 -0
  72. package/dist/api/preview-types.d.ts.map +1 -0
  73. package/dist/api/preview-types.js +7 -0
  74. package/dist/api/preview-types.js.map +1 -0
  75. package/dist/api/preview.d.ts +49 -0
  76. package/dist/api/preview.d.ts.map +1 -0
  77. package/dist/api/preview.js +261 -0
  78. package/dist/api/preview.js.map +1 -0
  79. package/dist/api/redirects.d.ts +16 -0
  80. package/dist/api/redirects.d.ts.map +1 -0
  81. package/dist/api/redirects.js +110 -0
  82. package/dist/api/redirects.js.map +1 -0
  83. package/dist/api/related-articles.d.ts +28 -0
  84. package/dist/api/related-articles.d.ts.map +1 -0
  85. package/dist/api/related-articles.js +147 -0
  86. package/dist/api/related-articles.js.map +1 -0
  87. package/dist/api/server-asset.d.ts +67 -0
  88. package/dist/api/server-asset.d.ts.map +1 -0
  89. package/dist/api/server-asset.js +106 -0
  90. package/dist/api/server-asset.js.map +1 -0
  91. package/dist/api/sitemap.d.ts +131 -0
  92. package/dist/api/sitemap.d.ts.map +1 -0
  93. package/dist/api/sitemap.js +201 -0
  94. package/dist/api/sitemap.js.map +1 -0
  95. package/dist/api/tag-type.d.ts +32 -0
  96. package/dist/api/tag-type.d.ts.map +1 -0
  97. package/dist/api/tag-type.js +123 -0
  98. package/dist/api/tag-type.js.map +1 -0
  99. package/dist/api/tag.d.ts +37 -0
  100. package/dist/api/tag.d.ts.map +1 -0
  101. package/dist/api/tag.js +132 -0
  102. package/dist/api/tag.js.map +1 -0
  103. package/dist/api/template.d.ts +61 -0
  104. package/dist/api/template.d.ts.map +1 -0
  105. package/dist/api/template.js +94 -0
  106. package/dist/api/template.js.map +1 -0
  107. package/dist/api/types.d.ts +113 -0
  108. package/dist/api/types.d.ts.map +1 -0
  109. package/dist/api/types.js +2 -0
  110. package/dist/api/types.js.map +1 -0
  111. package/dist/baseTypes/baseAlternatePageContent.d.ts +32 -0
  112. package/dist/baseTypes/baseAlternatePageContent.d.ts.map +1 -0
  113. package/dist/baseTypes/baseAlternatePageContent.js +2 -0
  114. package/dist/baseTypes/baseAlternatePageContent.js.map +1 -0
  115. package/dist/baseTypes/baseArticle.d.ts +206 -0
  116. package/dist/baseTypes/baseArticle.d.ts.map +1 -0
  117. package/dist/baseTypes/baseArticle.js +2 -0
  118. package/dist/baseTypes/baseArticle.js.map +1 -0
  119. package/dist/baseTypes/baseArticleType.d.ts +177 -0
  120. package/dist/baseTypes/baseArticleType.d.ts.map +1 -0
  121. package/dist/baseTypes/baseArticleType.js +2 -0
  122. package/dist/baseTypes/baseArticleType.js.map +1 -0
  123. package/dist/baseTypes/baseBanner.d.ts +113 -0
  124. package/dist/baseTypes/baseBanner.d.ts.map +1 -0
  125. package/dist/baseTypes/baseBanner.js +2 -0
  126. package/dist/baseTypes/baseBanner.js.map +1 -0
  127. package/dist/baseTypes/baseCollection.d.ts +132 -0
  128. package/dist/baseTypes/baseCollection.d.ts.map +1 -0
  129. package/dist/baseTypes/baseCollection.js +2 -0
  130. package/dist/baseTypes/baseCollection.js.map +1 -0
  131. package/dist/baseTypes/baseComponent.d.ts +130 -0
  132. package/dist/baseTypes/baseComponent.d.ts.map +1 -0
  133. package/dist/baseTypes/baseComponent.js +2 -0
  134. package/dist/baseTypes/baseComponent.js.map +1 -0
  135. package/dist/baseTypes/baseCustomType.d.ts +147 -0
  136. package/dist/baseTypes/baseCustomType.d.ts.map +1 -0
  137. package/dist/baseTypes/baseCustomType.js +2 -0
  138. package/dist/baseTypes/baseCustomType.js.map +1 -0
  139. package/dist/baseTypes/baseDocument.d.ts +70 -0
  140. package/dist/baseTypes/baseDocument.d.ts.map +1 -0
  141. package/dist/baseTypes/baseDocument.js +2 -0
  142. package/dist/baseTypes/baseDocument.js.map +1 -0
  143. package/dist/baseTypes/baseExternalComponent.d.ts +138 -0
  144. package/dist/baseTypes/baseExternalComponent.d.ts.map +1 -0
  145. package/dist/baseTypes/baseExternalComponent.js +2 -0
  146. package/dist/baseTypes/baseExternalComponent.js.map +1 -0
  147. package/dist/baseTypes/baseExternalVideo.d.ts +86 -0
  148. package/dist/baseTypes/baseExternalVideo.d.ts.map +1 -0
  149. package/dist/baseTypes/baseExternalVideo.js +2 -0
  150. package/dist/baseTypes/baseExternalVideo.js.map +1 -0
  151. package/dist/baseTypes/baseHtmlComponent.d.ts +72 -0
  152. package/dist/baseTypes/baseHtmlComponent.d.ts.map +1 -0
  153. package/dist/baseTypes/baseHtmlComponent.js +2 -0
  154. package/dist/baseTypes/baseHtmlComponent.js.map +1 -0
  155. package/dist/baseTypes/baseLink.d.ts +115 -0
  156. package/dist/baseTypes/baseLink.d.ts.map +1 -0
  157. package/dist/baseTypes/baseLink.js +2 -0
  158. package/dist/baseTypes/baseLink.js.map +1 -0
  159. package/dist/baseTypes/baseMedia.d.ts +100 -0
  160. package/dist/baseTypes/baseMedia.d.ts.map +1 -0
  161. package/dist/baseTypes/baseMedia.js +2 -0
  162. package/dist/baseTypes/baseMedia.js.map +1 -0
  163. package/dist/baseTypes/baseNavigation.d.ts +37 -0
  164. package/dist/baseTypes/baseNavigation.d.ts.map +1 -0
  165. package/dist/baseTypes/baseNavigation.js +2 -0
  166. package/dist/baseTypes/baseNavigation.js.map +1 -0
  167. package/dist/baseTypes/baseNavigationItem.d.ts +109 -0
  168. package/dist/baseTypes/baseNavigationItem.d.ts.map +1 -0
  169. package/dist/baseTypes/baseNavigationItem.js +2 -0
  170. package/dist/baseTypes/baseNavigationItem.js.map +1 -0
  171. package/dist/baseTypes/basePage.d.ts +142 -0
  172. package/dist/baseTypes/basePage.d.ts.map +1 -0
  173. package/dist/baseTypes/basePage.js +2 -0
  174. package/dist/baseTypes/basePage.js.map +1 -0
  175. package/dist/baseTypes/basePageVariant.d.ts +145 -0
  176. package/dist/baseTypes/basePageVariant.d.ts.map +1 -0
  177. package/dist/baseTypes/basePageVariant.js +2 -0
  178. package/dist/baseTypes/basePageVariant.js.map +1 -0
  179. package/dist/baseTypes/basePerson.d.ts +160 -0
  180. package/dist/baseTypes/basePerson.d.ts.map +1 -0
  181. package/dist/baseTypes/basePerson.js +2 -0
  182. package/dist/baseTypes/basePerson.js.map +1 -0
  183. package/dist/baseTypes/baseRedirect.d.ts +69 -0
  184. package/dist/baseTypes/baseRedirect.d.ts.map +1 -0
  185. package/dist/baseTypes/baseRedirect.js +2 -0
  186. package/dist/baseTypes/baseRedirect.js.map +1 -0
  187. package/dist/baseTypes/baseSchema.d.ts +19 -0
  188. package/dist/baseTypes/baseSchema.d.ts.map +1 -0
  189. package/dist/baseTypes/baseSchema.js +2 -0
  190. package/dist/baseTypes/baseSchema.js.map +1 -0
  191. package/dist/baseTypes/baseShared.d.ts +25 -0
  192. package/dist/baseTypes/baseShared.d.ts.map +1 -0
  193. package/dist/baseTypes/baseShared.js +2 -0
  194. package/dist/baseTypes/baseShared.js.map +1 -0
  195. package/dist/baseTypes/baseTag.d.ts +129 -0
  196. package/dist/baseTypes/baseTag.d.ts.map +1 -0
  197. package/dist/baseTypes/baseTag.js +2 -0
  198. package/dist/baseTypes/baseTag.js.map +1 -0
  199. package/dist/baseTypes/baseTagType.d.ts +70 -0
  200. package/dist/baseTypes/baseTagType.d.ts.map +1 -0
  201. package/dist/baseTypes/baseTagType.js +2 -0
  202. package/dist/baseTypes/baseTagType.js.map +1 -0
  203. package/dist/baseTypes/baseTemplate.d.ts +77 -0
  204. package/dist/baseTypes/baseTemplate.d.ts.map +1 -0
  205. package/dist/baseTypes/baseTemplate.js +2 -0
  206. package/dist/baseTypes/baseTemplate.js.map +1 -0
  207. package/dist/client.d.ts +145 -0
  208. package/dist/client.d.ts.map +1 -0
  209. package/dist/client.js +322 -0
  210. package/dist/client.js.map +1 -0
  211. package/dist/cms-integrity.d.ts +10 -0
  212. package/dist/cms-integrity.d.ts.map +1 -0
  213. package/dist/cms-integrity.js +7 -0
  214. package/dist/cms-integrity.js.map +1 -0
  215. package/dist/converters/animationEnricher.d.ts +17 -0
  216. package/dist/converters/animationEnricher.d.ts.map +1 -0
  217. package/dist/converters/animationEnricher.js +177 -0
  218. package/dist/converters/animationEnricher.js.map +1 -0
  219. package/dist/converters/article.d.ts +48 -0
  220. package/dist/converters/article.d.ts.map +1 -0
  221. package/dist/converters/article.js +364 -0
  222. package/dist/converters/article.js.map +1 -0
  223. package/dist/converters/asset.d.ts +33 -0
  224. package/dist/converters/asset.d.ts.map +1 -0
  225. package/dist/converters/asset.js +340 -0
  226. package/dist/converters/asset.js.map +1 -0
  227. package/dist/converters/banner.d.ts +10 -0
  228. package/dist/converters/banner.d.ts.map +1 -0
  229. package/dist/converters/banner.js +63 -0
  230. package/dist/converters/banner.js.map +1 -0
  231. package/dist/converters/collection.d.ts +26 -0
  232. package/dist/converters/collection.d.ts.map +1 -0
  233. package/dist/converters/collection.js +52 -0
  234. package/dist/converters/collection.js.map +1 -0
  235. package/dist/converters/component.d.ts +26 -0
  236. package/dist/converters/component.d.ts.map +1 -0
  237. package/dist/converters/component.js +54 -0
  238. package/dist/converters/component.js.map +1 -0
  239. package/dist/converters/customType.d.ts +24 -0
  240. package/dist/converters/customType.d.ts.map +1 -0
  241. package/dist/converters/customType.js +93 -0
  242. package/dist/converters/customType.js.map +1 -0
  243. package/dist/converters/document.d.ts +14 -0
  244. package/dist/converters/document.d.ts.map +1 -0
  245. package/dist/converters/document.js +51 -0
  246. package/dist/converters/document.js.map +1 -0
  247. package/dist/converters/enrichAssets.d.ts +19 -0
  248. package/dist/converters/enrichAssets.d.ts.map +1 -0
  249. package/dist/converters/enrichAssets.js +36 -0
  250. package/dist/converters/enrichAssets.js.map +1 -0
  251. package/dist/converters/externalComponent.d.ts +27 -0
  252. package/dist/converters/externalComponent.d.ts.map +1 -0
  253. package/dist/converters/externalComponent.js +46 -0
  254. package/dist/converters/externalComponent.js.map +1 -0
  255. package/dist/converters/externalVideoEnricher.d.ts +12 -0
  256. package/dist/converters/externalVideoEnricher.d.ts.map +1 -0
  257. package/dist/converters/externalVideoEnricher.js +70 -0
  258. package/dist/converters/externalVideoEnricher.js.map +1 -0
  259. package/dist/converters/helpers.d.ts +173 -0
  260. package/dist/converters/helpers.d.ts.map +1 -0
  261. package/dist/converters/helpers.js +167 -0
  262. package/dist/converters/helpers.js.map +1 -0
  263. package/dist/converters/heroVideoEnricher.d.ts +9 -0
  264. package/dist/converters/heroVideoEnricher.d.ts.map +1 -0
  265. package/dist/converters/heroVideoEnricher.js +108 -0
  266. package/dist/converters/heroVideoEnricher.js.map +1 -0
  267. package/dist/converters/heroVideoEnv.d.ts +14 -0
  268. package/dist/converters/heroVideoEnv.d.ts.map +1 -0
  269. package/dist/converters/heroVideoEnv.js +28 -0
  270. package/dist/converters/heroVideoEnv.js.map +1 -0
  271. package/dist/converters/htmlComponent.d.ts +17 -0
  272. package/dist/converters/htmlComponent.d.ts.map +1 -0
  273. package/dist/converters/htmlComponent.js +33 -0
  274. package/dist/converters/htmlComponent.js.map +1 -0
  275. package/dist/converters/iconCollector.d.ts +36 -0
  276. package/dist/converters/iconCollector.d.ts.map +1 -0
  277. package/dist/converters/iconCollector.js +309 -0
  278. package/dist/converters/iconCollector.js.map +1 -0
  279. package/dist/converters/index.d.ts +26 -0
  280. package/dist/converters/index.d.ts.map +1 -0
  281. package/dist/converters/index.js +21 -0
  282. package/dist/converters/index.js.map +1 -0
  283. package/dist/converters/link.d.ts +11 -0
  284. package/dist/converters/link.d.ts.map +1 -0
  285. package/dist/converters/link.js +109 -0
  286. package/dist/converters/link.js.map +1 -0
  287. package/dist/converters/navigationItem.d.ts +17 -0
  288. package/dist/converters/navigationItem.d.ts.map +1 -0
  289. package/dist/converters/navigationItem.js +126 -0
  290. package/dist/converters/navigationItem.js.map +1 -0
  291. package/dist/converters/page.d.ts +44 -0
  292. package/dist/converters/page.d.ts.map +1 -0
  293. package/dist/converters/page.js +160 -0
  294. package/dist/converters/page.js.map +1 -0
  295. package/dist/converters/pageVariantMerge.d.ts +24 -0
  296. package/dist/converters/pageVariantMerge.d.ts.map +1 -0
  297. package/dist/converters/pageVariantMerge.js +151 -0
  298. package/dist/converters/pageVariantMerge.js.map +1 -0
  299. package/dist/converters/person.d.ts +40 -0
  300. package/dist/converters/person.d.ts.map +1 -0
  301. package/dist/converters/person.js +152 -0
  302. package/dist/converters/person.js.map +1 -0
  303. package/dist/converters/pictureBlurEnricher.d.ts +9 -0
  304. package/dist/converters/pictureBlurEnricher.d.ts.map +1 -0
  305. package/dist/converters/pictureBlurEnricher.js +79 -0
  306. package/dist/converters/pictureBlurEnricher.js.map +1 -0
  307. package/dist/converters/redirect.d.ts +20 -0
  308. package/dist/converters/redirect.d.ts.map +1 -0
  309. package/dist/converters/redirect.js +50 -0
  310. package/dist/converters/redirect.js.map +1 -0
  311. package/dist/converters/resolver.d.ts +26 -0
  312. package/dist/converters/resolver.d.ts.map +1 -0
  313. package/dist/converters/resolver.js +383 -0
  314. package/dist/converters/resolver.js.map +1 -0
  315. package/dist/converters/schema.d.ts +14 -0
  316. package/dist/converters/schema.d.ts.map +1 -0
  317. package/dist/converters/schema.js +25 -0
  318. package/dist/converters/schema.js.map +1 -0
  319. package/dist/converters/svgProcessor.d.ts +58 -0
  320. package/dist/converters/svgProcessor.d.ts.map +1 -0
  321. package/dist/converters/svgProcessor.js +225 -0
  322. package/dist/converters/svgProcessor.js.map +1 -0
  323. package/dist/converters/tag.d.ts +25 -0
  324. package/dist/converters/tag.d.ts.map +1 -0
  325. package/dist/converters/tag.js +170 -0
  326. package/dist/converters/tag.js.map +1 -0
  327. package/dist/converters/tagType.d.ts +15 -0
  328. package/dist/converters/tagType.d.ts.map +1 -0
  329. package/dist/converters/tagType.js +56 -0
  330. package/dist/converters/tagType.js.map +1 -0
  331. package/dist/converters/template.d.ts +31 -0
  332. package/dist/converters/template.d.ts.map +1 -0
  333. package/dist/converters/template.js +53 -0
  334. package/dist/converters/template.js.map +1 -0
  335. package/dist/converters/videoEnricher.d.ts +14 -0
  336. package/dist/converters/videoEnricher.d.ts.map +1 -0
  337. package/dist/converters/videoEnricher.js +85 -0
  338. package/dist/converters/videoEnricher.js.map +1 -0
  339. package/dist/icons/rebuildIconSprite.d.ts +8 -0
  340. package/dist/icons/rebuildIconSprite.d.ts.map +1 -0
  341. package/dist/icons/rebuildIconSprite.js +15 -0
  342. package/dist/icons/rebuildIconSprite.js.map +1 -0
  343. package/dist/index.d.ts +33 -0
  344. package/dist/index.d.ts.map +1 -0
  345. package/dist/index.js +42 -0
  346. package/dist/index.js.map +1 -0
  347. package/dist/navigation/assembly.d.ts +8 -0
  348. package/dist/navigation/assembly.d.ts.map +1 -0
  349. package/dist/navigation/assembly.js +115 -0
  350. package/dist/navigation/assembly.js.map +1 -0
  351. package/dist/navigation/cacheOptions.d.ts +17 -0
  352. package/dist/navigation/cacheOptions.d.ts.map +1 -0
  353. package/dist/navigation/cacheOptions.js +45 -0
  354. package/dist/navigation/cacheOptions.js.map +1 -0
  355. package/dist/navigation/enrichModelNavigation.d.ts +17 -0
  356. package/dist/navigation/enrichModelNavigation.d.ts.map +1 -0
  357. package/dist/navigation/enrichModelNavigation.js +46 -0
  358. package/dist/navigation/enrichModelNavigation.js.map +1 -0
  359. package/dist/navigation/linkIndex.d.ts +10 -0
  360. package/dist/navigation/linkIndex.d.ts.map +1 -0
  361. package/dist/navigation/linkIndex.js +34 -0
  362. package/dist/navigation/linkIndex.js.map +1 -0
  363. package/dist/navigation/listingLinkBundle.d.ts +22 -0
  364. package/dist/navigation/listingLinkBundle.d.ts.map +1 -0
  365. package/dist/navigation/listingLinkBundle.js +88 -0
  366. package/dist/navigation/listingLinkBundle.js.map +1 -0
  367. package/dist/navigation/registry.d.ts +15 -0
  368. package/dist/navigation/registry.d.ts.map +1 -0
  369. package/dist/navigation/registry.js +130 -0
  370. package/dist/navigation/registry.js.map +1 -0
  371. package/dist/navigation/requestCache.d.ts +18 -0
  372. package/dist/navigation/requestCache.d.ts.map +1 -0
  373. package/dist/navigation/requestCache.js +66 -0
  374. package/dist/navigation/requestCache.js.map +1 -0
  375. package/dist/navigation/types.d.ts +45 -0
  376. package/dist/navigation/types.d.ts.map +1 -0
  377. package/dist/navigation/types.js +2 -0
  378. package/dist/navigation/types.js.map +1 -0
  379. package/dist/revalidation/entry-handlers.d.ts +40 -0
  380. package/dist/revalidation/entry-handlers.d.ts.map +1 -0
  381. package/dist/revalidation/entry-handlers.js +144 -0
  382. package/dist/revalidation/entry-handlers.js.map +1 -0
  383. package/dist/revalidation/handlers.d.ts +19 -0
  384. package/dist/revalidation/handlers.d.ts.map +1 -0
  385. package/dist/revalidation/handlers.js +50 -0
  386. package/dist/revalidation/handlers.js.map +1 -0
  387. package/dist/revalidation/index.d.ts +4 -0
  388. package/dist/revalidation/index.d.ts.map +1 -0
  389. package/dist/revalidation/index.js +5 -0
  390. package/dist/revalidation/index.js.map +1 -0
  391. package/dist/revalidation/nextjs-route.d.ts +38 -0
  392. package/dist/revalidation/nextjs-route.d.ts.map +1 -0
  393. package/dist/revalidation/nextjs-route.js +36 -0
  394. package/dist/revalidation/nextjs-route.js.map +1 -0
  395. package/dist/revalidation/route.d.ts +3 -0
  396. package/dist/revalidation/route.d.ts.map +1 -0
  397. package/dist/revalidation/route.js +99 -0
  398. package/dist/revalidation/route.js.map +1 -0
  399. package/dist/revalidation/server-utils.d.ts +31 -0
  400. package/dist/revalidation/server-utils.d.ts.map +1 -0
  401. package/dist/revalidation/server-utils.js +54 -0
  402. package/dist/revalidation/server-utils.js.map +1 -0
  403. package/dist/revalidation/tags.d.ts +110 -0
  404. package/dist/revalidation/tags.d.ts.map +1 -0
  405. package/dist/revalidation/tags.js +160 -0
  406. package/dist/revalidation/tags.js.map +1 -0
  407. package/dist/revalidation/utils.d.ts +21 -0
  408. package/dist/revalidation/utils.d.ts.map +1 -0
  409. package/dist/revalidation/utils.js +61 -0
  410. package/dist/revalidation/utils.js.map +1 -0
  411. package/dist/revalidation/webhook-content-types.d.ts +12 -0
  412. package/dist/revalidation/webhook-content-types.d.ts.map +1 -0
  413. package/dist/revalidation/webhook-content-types.js +28 -0
  414. package/dist/revalidation/webhook-content-types.js.map +1 -0
  415. package/dist/routing/index.d.ts +2 -0
  416. package/dist/routing/index.d.ts.map +1 -0
  417. package/dist/routing/index.js +2 -0
  418. package/dist/routing/index.js.map +1 -0
  419. package/dist/routing/marketing-site-url-calculators.d.ts +21 -0
  420. package/dist/routing/marketing-site-url-calculators.d.ts.map +1 -0
  421. package/dist/routing/marketing-site-url-calculators.js +43 -0
  422. package/dist/routing/marketing-site-url-calculators.js.map +1 -0
  423. package/dist/server.d.ts +7 -0
  424. package/dist/server.d.ts.map +1 -0
  425. package/dist/server.js +10 -0
  426. package/dist/server.js.map +1 -0
  427. package/dist/telemetry/deriveOperation.d.ts +8 -0
  428. package/dist/telemetry/deriveOperation.d.ts.map +1 -0
  429. package/dist/telemetry/deriveOperation.js +59 -0
  430. package/dist/telemetry/deriveOperation.js.map +1 -0
  431. package/dist/telemetry/queryContext.d.ts +7 -0
  432. package/dist/telemetry/queryContext.d.ts.map +1 -0
  433. package/dist/telemetry/queryContext.js +9 -0
  434. package/dist/telemetry/queryContext.js.map +1 -0
  435. package/dist/telemetry/queryLog.d.ts +17 -0
  436. package/dist/telemetry/queryLog.d.ts.map +1 -0
  437. package/dist/telemetry/queryLog.js +54 -0
  438. package/dist/telemetry/queryLog.js.map +1 -0
  439. package/dist/types.d.ts +93 -0
  440. package/dist/types.d.ts.map +1 -0
  441. package/dist/types.js +2 -0
  442. package/dist/types.js.map +1 -0
  443. package/dist/utils/arrayUtils.d.ts +3 -0
  444. package/dist/utils/arrayUtils.d.ts.map +1 -0
  445. package/dist/utils/arrayUtils.js +12 -0
  446. package/dist/utils/arrayUtils.js.map +1 -0
  447. package/dist/utils/dateUtils.d.ts +9 -0
  448. package/dist/utils/dateUtils.d.ts.map +1 -0
  449. package/dist/utils/dateUtils.js +26 -0
  450. package/dist/utils/dateUtils.js.map +1 -0
  451. package/dist/utils/errors.d.ts +56 -0
  452. package/dist/utils/errors.d.ts.map +1 -0
  453. package/dist/utils/errors.js +100 -0
  454. package/dist/utils/errors.js.map +1 -0
  455. package/dist/utils/index.d.ts +9 -0
  456. package/dist/utils/index.d.ts.map +1 -0
  457. package/dist/utils/index.js +9 -0
  458. package/dist/utils/index.js.map +1 -0
  459. package/dist/utils/redirectMap.d.ts +40 -0
  460. package/dist/utils/redirectMap.d.ts.map +1 -0
  461. package/dist/utils/redirectMap.js +129 -0
  462. package/dist/utils/redirectMap.js.map +1 -0
  463. package/dist/utils/retry.d.ts +103 -0
  464. package/dist/utils/retry.d.ts.map +1 -0
  465. package/dist/utils/retry.js +248 -0
  466. package/dist/utils/retry.js.map +1 -0
  467. package/dist/utils/tags.d.ts +35 -0
  468. package/dist/utils/tags.d.ts.map +1 -0
  469. package/dist/utils/tags.js +37 -0
  470. package/dist/utils/tags.js.map +1 -0
  471. package/docs/llms.md +430 -0
  472. package/package.json +86 -0
@@ -0,0 +1,201 @@
1
+ import { contentfulAllArticleLinks, contentfulAllArticleTypeLinks, contentfulAllPageLinks, contentfulAllPersonLinks, contentfulAllTagLinks, } from './links.js';
2
+ // ============================================================================
3
+ // Sitemap Entry Helpers
4
+ // ============================================================================
5
+ /**
6
+ * Helper function to convert internal links to sitemap entries.
7
+ * Filters to only include indexed and non-hidden entries.
8
+ *
9
+ * The .href values already incorporate the project's UrlCalculators (called during link conversion).
10
+ *
11
+ * @param links - Array of internal links with metadata
12
+ * @param sitemapConfig - Configuration for priority and change frequency
13
+ * @returns Array of sitemap entries
14
+ */
15
+ function linksToSitemapEntries(links, sitemapConfig) {
16
+ return links
17
+ .filter((link) => link.indexed !== false && link.hidden !== true && link.href)
18
+ .map((link) => ({
19
+ url: link.href,
20
+ lastModified: link.lastModified,
21
+ changeFrequency: sitemapConfig?.changeFrequency,
22
+ priority: sitemapConfig?.priority,
23
+ }));
24
+ }
25
+ // ============================================================================
26
+ // Sitemap Entry Fetchers
27
+ // ============================================================================
28
+ /**
29
+ * Fetches all page sitemap entries from Contentful.
30
+ * Only includes pages that are indexed and not hidden.
31
+ *
32
+ * @param context - Converter context
33
+ * @param config - Contentful configuration
34
+ * @param sitemapConfig - Optional sitemap configuration (priority, changeFrequency)
35
+ * @param options - Fetch options (locale, preview, caching, etc.)
36
+ * @returns Promise resolving to CmsResponse with array of sitemap entries
37
+ *
38
+ * @example
39
+ * ```ts
40
+ * const { data: entries } = await contentfulPageSitemapEntries(
41
+ * context,
42
+ * config,
43
+ * { priority: 0.8, changeFrequency: 'weekly' },
44
+ * { next: { revalidate: 3600 } }
45
+ * );
46
+ * ```
47
+ */
48
+ export async function contentfulPageSitemapEntries(context, config, sitemapConfig, options) {
49
+ const response = await contentfulAllPageLinks(context, config, options);
50
+ return {
51
+ data: linksToSitemapEntries(response.data, sitemapConfig),
52
+ errors: response.errors,
53
+ };
54
+ }
55
+ /**
56
+ * Fetches all article sitemap entries from Contentful.
57
+ * Only includes articles that are indexed and not hidden.
58
+ *
59
+ * @param context - Converter context
60
+ * @param config - Contentful configuration
61
+ * @param sitemapConfig - Optional sitemap configuration (priority, changeFrequency)
62
+ * @param options - Fetch options (locale, preview, caching, etc.)
63
+ * @returns Promise resolving to CmsResponse with array of sitemap entries
64
+ *
65
+ * @example
66
+ * ```ts
67
+ * const { data: entries } = await contentfulArticleSitemapEntries(
68
+ * context,
69
+ * config,
70
+ * { priority: 0.6, changeFrequency: 'monthly' },
71
+ * { next: { revalidate: 3600 } }
72
+ * );
73
+ * ```
74
+ */
75
+ export async function contentfulArticleSitemapEntries(context, config, sitemapConfig, options) {
76
+ const response = await contentfulAllArticleLinks(context, config, options);
77
+ return {
78
+ data: linksToSitemapEntries(response.data, sitemapConfig),
79
+ errors: response.errors,
80
+ };
81
+ }
82
+ /**
83
+ * Fetches all article type sitemap entries from Contentful.
84
+ * Only includes article types that are indexed and not hidden.
85
+ *
86
+ * @param context - Converter context
87
+ * @param config - Contentful configuration
88
+ * @param sitemapConfig - Optional sitemap configuration (priority, changeFrequency)
89
+ * @param options - Fetch options (locale, preview, caching, etc.)
90
+ * @returns Promise resolving to CmsResponse with array of sitemap entries
91
+ */
92
+ export async function contentfulArticleTypeSitemapEntries(context, config, sitemapConfig, options) {
93
+ const response = await contentfulAllArticleTypeLinks(context, config, options);
94
+ return {
95
+ data: linksToSitemapEntries(response.data, sitemapConfig),
96
+ errors: response.errors,
97
+ };
98
+ }
99
+ /**
100
+ * Fetches all tag sitemap entries from Contentful.
101
+ * Only includes tags that are indexed and not hidden.
102
+ *
103
+ * @param context - Converter context
104
+ * @param config - Contentful configuration
105
+ * @param sitemapConfig - Optional sitemap configuration (priority, changeFrequency)
106
+ * @param options - Fetch options (locale, preview, caching, etc.)
107
+ * @returns Promise resolving to CmsResponse with array of sitemap entries
108
+ */
109
+ export async function contentfulTagSitemapEntries(context, config, sitemapConfig, options) {
110
+ const response = await contentfulAllTagLinks(context, config, options);
111
+ return {
112
+ data: linksToSitemapEntries(response.data, sitemapConfig),
113
+ errors: response.errors,
114
+ };
115
+ }
116
+ /**
117
+ * Fetches all person sitemap entries from Contentful.
118
+ * Only includes people that are indexed and not hidden.
119
+ *
120
+ * @param context - Converter context
121
+ * @param config - Contentful configuration
122
+ * @param sitemapConfig - Optional sitemap configuration (priority, changeFrequency)
123
+ * @param options - Fetch options (locale, preview, caching, etc.)
124
+ * @returns Promise resolving to CmsResponse with array of sitemap entries
125
+ */
126
+ export async function contentfulPersonSitemapEntries(context, config, sitemapConfig, options) {
127
+ const response = await contentfulAllPersonLinks(context, config, options);
128
+ return {
129
+ data: linksToSitemapEntries(response.data, sitemapConfig),
130
+ errors: response.errors,
131
+ };
132
+ }
133
+ // ============================================================================
134
+ // Sitemap Registry Functions
135
+ // ============================================================================
136
+ /**
137
+ * Collects sitemap entries from multiple providers.
138
+ * This allows projects to register custom content types for sitemap generation.
139
+ *
140
+ * @param context - Converter context
141
+ * @param config - Contentful configuration
142
+ * @param sitemapConfig - Configuration with array of provider functions
143
+ * @param options - Fetch options (locale, preview, caching, etc.)
144
+ * @returns Promise resolving to CmsResponse with all sitemap entries combined
145
+ *
146
+ * @example
147
+ * ```ts
148
+ * const { data: entries, errors } = await getAllSitemapEntries(
149
+ * context,
150
+ * config,
151
+ * {
152
+ * providers: [
153
+ * (ctx, cfg, opts) => contentfulPageSitemapEntries(ctx, cfg, { priority: 0.8 }, opts),
154
+ * (ctx, cfg, opts) => contentfulArticleSitemapEntries(ctx, cfg, { priority: 0.6 }, opts),
155
+ * // Custom content type provider
156
+ * async (ctx, cfg, opts) => {
157
+ * const links = await fetchCustomContentLinks(ctx, cfg, opts);
158
+ * return { data: links.map(l => ({ url: l.href, lastModified: l.lastModified })), errors: [] };
159
+ * },
160
+ * ],
161
+ * },
162
+ * { next: { revalidate: 3600 } }
163
+ * );
164
+ * ```
165
+ */
166
+ export async function getAllSitemapEntries(context, config, sitemapConfig, options) {
167
+ const allEntries = [];
168
+ const allErrors = [];
169
+ // Fetch from all providers in parallel for better performance
170
+ const results = await Promise.all(sitemapConfig.providers.map((provider) => provider(context, config, options)));
171
+ // Combine all results
172
+ for (const result of results) {
173
+ allEntries.push(...result.data);
174
+ allErrors.push(...result.errors);
175
+ }
176
+ return { data: allEntries, errors: allErrors };
177
+ }
178
+ /**
179
+ * Creates a sitemap entry provider with pre-configured options.
180
+ * Useful for creating providers with specific priority and changeFrequency settings.
181
+ *
182
+ * @param fetcher - The sitemap entry fetcher function to wrap
183
+ * @param sitemapConfig - Configuration for priority and change frequency
184
+ * @returns A sitemap entry provider function
185
+ *
186
+ * @example
187
+ * ```ts
188
+ * const pageProvider = createSitemapProvider(
189
+ * contentfulPageSitemapEntries,
190
+ * { priority: 0.8, changeFrequency: 'weekly' }
191
+ * );
192
+ *
193
+ * const { data: entries } = await getAllSitemapEntries(context, config, {
194
+ * providers: [pageProvider, articleProvider],
195
+ * });
196
+ * ```
197
+ */
198
+ export function createSitemapProvider(fetcher, sitemapConfig) {
199
+ return (context, config, options) => fetcher(context, config, sitemapConfig, options);
200
+ }
201
+ //# sourceMappingURL=sitemap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sitemap.js","sourceRoot":"","sources":["../../src/api/sitemap.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,32 @@
1
+ import type { IBaseTagType } from '@se-studio/core-data-types';
2
+ import type { BaseConverterContext } from '../converters/helpers';
3
+ import type { CmsResponse, ContentfulConfig, FetchOptions } from '../types';
4
+ export interface TagTypeFetchOptions extends FetchOptions {
5
+ customType?: string;
6
+ }
7
+ /**
8
+ * Fetches a tag type from Contentful by slug
9
+ *
10
+ * @param context - Converter context
11
+ * @param config - Contentful configuration
12
+ * @param slug - Tag type slug to fetch
13
+ * @param options - Fetch options (locale, preview, caching, etc.)
14
+ * @returns Promise resolving to IBaseTagType or null if not found
15
+ *
16
+ * @example
17
+ * ```ts
18
+ * const tagType = await contentfulTagTypeRest(
19
+ * context,
20
+ * {
21
+ * spaceId: process.env.CONTENTFUL_SPACE_ID!,
22
+ * accessToken: process.env.CONTENTFUL_ACCESS_TOKEN!,
23
+ * },
24
+ * 'category',
25
+ * {
26
+ * customType: 'topics',
27
+ * }
28
+ * );
29
+ * ```
30
+ */
31
+ export declare function contentfulTagTypeRest(context: BaseConverterContext, config: ContentfulConfig, slug: string, options: TagTypeFetchOptions): Promise<CmsResponse<IBaseTagType | null>>;
32
+ //# sourceMappingURL=tag-type.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tag-type.d.ts","sourceRoot":"","sources":["../../src/api/tag-type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAM/D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAGlE,OAAO,KAAK,EAAY,WAAW,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AActF,MAAM,WAAW,mBAAoB,SAAQ,YAAY;IACvD,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,oBAAoB,EAC7B,MAAM,EAAE,gBAAgB,EACxB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,WAAW,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC,CA0I3C"}
@@ -0,0 +1,123 @@
1
+ import { getContentfulClient } from '../client.js';
2
+ import { enrichAllAssets } from '../converters/enrichAssets.js';
3
+ import { getCacheTags } from '../revalidation/utils.js';
4
+ import { withCmsQueryContext } from '../telemetry/queryContext.js';
5
+ import { withRetry } from '../utils/index.js';
6
+ import { convertAllAssets, convertAllIncludes, convertAllRawAssets, createFullConverterContext, operationLabel, PAGE_BUNDLED_CUSTOM_TYPE_INCLUDE, resolveIncludeDepth, } from './helpers.js';
7
+ import { getSingleEntityListingSelect } from './listing-fetch-params.js';
8
+ /**
9
+ * Fetches a tag type from Contentful by slug
10
+ *
11
+ * @param context - Converter context
12
+ * @param config - Contentful configuration
13
+ * @param slug - Tag type slug to fetch
14
+ * @param options - Fetch options (locale, preview, caching, etc.)
15
+ * @returns Promise resolving to IBaseTagType or null if not found
16
+ *
17
+ * @example
18
+ * ```ts
19
+ * const tagType = await contentfulTagTypeRest(
20
+ * context,
21
+ * {
22
+ * spaceId: process.env.CONTENTFUL_SPACE_ID!,
23
+ * accessToken: process.env.CONTENTFUL_ACCESS_TOKEN!,
24
+ * },
25
+ * 'category',
26
+ * {
27
+ * customType: 'topics',
28
+ * }
29
+ * );
30
+ * ```
31
+ */
32
+ export async function contentfulTagTypeRest(context, config, slug, options) {
33
+ const client = getContentfulClient(config, options.preview);
34
+ const tagTypeCacheTags = getCacheTags('tagType', slug, options?.preview);
35
+ const customTypeCacheTags = options?.customType
36
+ ? getCacheTags('customType', options.customType, options?.preview)
37
+ : [];
38
+ const requestOptions = {
39
+ ...options,
40
+ next: {
41
+ ...options?.next,
42
+ tags: [...tagTypeCacheTags, ...customTypeCacheTags],
43
+ },
44
+ };
45
+ const fetchFn = async () => {
46
+ const fetchProfile = options.fetchProfile ?? 'page';
47
+ const bundleCustomType = fetchProfile === 'page' && !!options?.customType;
48
+ const tagTypeInclude = resolveIncludeDepth('tagType', options);
49
+ const listingSelect = fetchProfile === 'listing' ? getSingleEntityListingSelect('tagType') : undefined;
50
+ const tagTypePromise = withCmsQueryContext({ operation: operationLabel('tagType'), identifier: slug }, () => client.getEntries({
51
+ content_type: 'tagType',
52
+ 'fields.slug': slug,
53
+ include: tagTypeInclude,
54
+ locale: options?.locale,
55
+ limit: 1,
56
+ ...(listingSelect && { select: listingSelect }),
57
+ }, requestOptions));
58
+ const customTypePromise = bundleCustomType
59
+ ? withCmsQueryContext({ operation: operationLabel('customType'), identifier: options.customType }, () => client.getEntries({
60
+ content_type: 'customType',
61
+ 'fields.slug': options.customType,
62
+ include: options.include ?? PAGE_BUNDLED_CUSTOM_TYPE_INCLUDE,
63
+ locale: options?.locale,
64
+ limit: 1,
65
+ }, requestOptions))
66
+ : Promise.resolve(null);
67
+ const [tagTypeResponse, customTypeResponse] = await Promise.all([
68
+ tagTypePromise,
69
+ customTypePromise,
70
+ ]);
71
+ const tagTypeEntry = tagTypeResponse.items[0];
72
+ if (!tagTypeEntry?.fields) {
73
+ return { data: null, errors: [] };
74
+ }
75
+ const customTypeEntry = customTypeResponse?.items[0];
76
+ try {
77
+ const assets = convertAllAssets(tagTypeResponse, context);
78
+ const rawAssets = convertAllRawAssets(tagTypeResponse);
79
+ const includes = convertAllIncludes(tagTypeResponse);
80
+ if (customTypeResponse) {
81
+ const customAssets = convertAllAssets(customTypeResponse, context);
82
+ const customRawAssets = convertAllRawAssets(customTypeResponse);
83
+ const customIncludes = convertAllIncludes(customTypeResponse);
84
+ for (const [key, value] of customAssets)
85
+ assets.set(key, value);
86
+ for (const [key, value] of customRawAssets)
87
+ rawAssets.set(key, value);
88
+ for (const [key, value] of customIncludes)
89
+ includes.set(key, value);
90
+ }
91
+ const externalVideoEmbeds = await enrichAllAssets(assets, includes, options);
92
+ const fullContext = createFullConverterContext(context, includes, assets, rawAssets, externalVideoEmbeds, options);
93
+ const converted = context.tagTypeResolver(fullContext, tagTypeEntry, bundleCustomType ? customTypeEntry : undefined);
94
+ if (fullContext.errors.length > 0 &&
95
+ typeof process !== 'undefined' &&
96
+ process.env?.NODE_ENV === 'production') {
97
+ console.error(`CMS conversion errors for tagType:`, {
98
+ entryId: tagTypeEntry.sys.id,
99
+ slug,
100
+ errors: fullContext.errors,
101
+ });
102
+ }
103
+ return { data: converted, errors: fullContext.errors };
104
+ }
105
+ catch (error) {
106
+ const entryId = tagTypeEntry?.sys.id || 'unknown';
107
+ const entryType = tagTypeEntry?.sys.contentType?.sys?.id;
108
+ const errorMessage = error instanceof Error ? error.message : 'Unknown conversion error';
109
+ const cmsError = {
110
+ entryId,
111
+ entryType,
112
+ message: errorMessage,
113
+ error,
114
+ };
115
+ return { data: null, errors: [cmsError] };
116
+ }
117
+ };
118
+ if (options?.retry) {
119
+ return await withRetry(fetchFn, options.retry);
120
+ }
121
+ return await fetchFn();
122
+ }
123
+ //# sourceMappingURL=tag-type.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tag-type.js","sourceRoot":"","sources":["../../src/api/tag-type.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,37 @@
1
+ import type { IBaseTag } from '@se-studio/core-data-types';
2
+ import type { BaseConverterContext } from '../converters/helpers';
3
+ import type { CmsResponse, ContentfulConfig, FetchOptions } from '../types';
4
+ export interface TagFetchOptions extends FetchOptions {
5
+ customType?: string;
6
+ }
7
+ /**
8
+ * Fetches a tag from Contentful by slug
9
+ *
10
+ * @param context - Converter context
11
+ * @param config - Contentful configuration
12
+ * @param slug - Tag slug to fetch
13
+ * @param options - Fetch options (locale, preview, caching, etc.)
14
+ * @returns Promise resolving to IBaseTag or null if not found
15
+ *
16
+ * @example
17
+ * ```ts
18
+ * const tag = await contentfulTagRest(
19
+ * context,
20
+ * {
21
+ * spaceId: process.env.CONTENTFUL_SPACE_ID!,
22
+ * accessToken: process.env.CONTENTFUL_ACCESS_TOKEN!,
23
+ * },
24
+ * 'my-tag',
25
+ * {
26
+ * locale: 'en-US',
27
+ * cache: {
28
+ * tags: ['my-tag'],
29
+ * revalidate: 3600
30
+ * },
31
+ * customType: 'topics' // Optional custom type
32
+ * }
33
+ * );
34
+ * ```
35
+ */
36
+ export declare function contentfulTagRest(context: BaseConverterContext, config: ContentfulConfig, slug: string, options: TagFetchOptions): Promise<CmsResponse<IBaseTag | null>>;
37
+ //# sourceMappingURL=tag.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tag.d.ts","sourceRoot":"","sources":["../../src/api/tag.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAM3D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAIlE,OAAO,KAAK,EAAY,WAAW,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AActF,MAAM,WAAW,eAAgB,SAAQ,YAAY;IACnD,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,oBAAoB,EAC7B,MAAM,EAAE,gBAAgB,EACxB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,WAAW,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC,CA8IvC"}
@@ -0,0 +1,132 @@
1
+ import { getContentfulClient } from '../client.js';
2
+ import { enrichAllAssets } from '../converters/enrichAssets.js';
3
+ import { finalizeModelIconsAndNavigation } from '../navigation/enrichModelNavigation.js';
4
+ import { getCacheTags } from '../revalidation/utils.js';
5
+ import { withCmsQueryContext } from '../telemetry/queryContext.js';
6
+ import { withRetry } from '../utils/index.js';
7
+ import { convertAllAssets, convertAllIncludes, convertAllRawAssets, createFullConverterContext, operationLabel, PAGE_BUNDLED_CUSTOM_TYPE_INCLUDE, resolveIncludeDepth, } from './helpers.js';
8
+ import { getSingleEntityListingSelect } from './listing-fetch-params.js';
9
+ /**
10
+ * Fetches a tag from Contentful by slug
11
+ *
12
+ * @param context - Converter context
13
+ * @param config - Contentful configuration
14
+ * @param slug - Tag slug to fetch
15
+ * @param options - Fetch options (locale, preview, caching, etc.)
16
+ * @returns Promise resolving to IBaseTag or null if not found
17
+ *
18
+ * @example
19
+ * ```ts
20
+ * const tag = await contentfulTagRest(
21
+ * context,
22
+ * {
23
+ * spaceId: process.env.CONTENTFUL_SPACE_ID!,
24
+ * accessToken: process.env.CONTENTFUL_ACCESS_TOKEN!,
25
+ * },
26
+ * 'my-tag',
27
+ * {
28
+ * locale: 'en-US',
29
+ * cache: {
30
+ * tags: ['my-tag'],
31
+ * revalidate: 3600
32
+ * },
33
+ * customType: 'topics' // Optional custom type
34
+ * }
35
+ * );
36
+ * ```
37
+ */
38
+ export async function contentfulTagRest(context, config, slug, options) {
39
+ const client = getContentfulClient(config, options.preview);
40
+ // Set cache tags for this request
41
+ const tagCacheTags = getCacheTags('tag', slug, options?.preview);
42
+ const customTypeCacheTags = options?.customType
43
+ ? getCacheTags('customType', options.customType, options?.preview)
44
+ : [];
45
+ const requestOptions = {
46
+ ...options,
47
+ next: {
48
+ ...options?.next,
49
+ tags: [...tagCacheTags, ...customTypeCacheTags],
50
+ },
51
+ };
52
+ const fetchFn = async () => {
53
+ const fetchProfile = options.fetchProfile ?? 'page';
54
+ const bundleCustomType = fetchProfile === 'page' && !!options?.customType;
55
+ const tagInclude = resolveIncludeDepth('tag', options);
56
+ const listingSelect = fetchProfile === 'listing' ? getSingleEntityListingSelect('tag') : undefined;
57
+ const tagPromise = withCmsQueryContext({ operation: operationLabel('tag'), identifier: slug }, () => client.getEntries({
58
+ content_type: 'tag',
59
+ 'fields.slug': slug,
60
+ include: tagInclude,
61
+ locale: options?.locale,
62
+ limit: 1,
63
+ ...(listingSelect && { select: listingSelect }),
64
+ }, requestOptions));
65
+ const customTypePromise = bundleCustomType
66
+ ? withCmsQueryContext({ operation: operationLabel('customType'), identifier: options.customType }, () => client.getEntries({
67
+ content_type: 'customType',
68
+ 'fields.slug': options.customType,
69
+ include: options.include ?? PAGE_BUNDLED_CUSTOM_TYPE_INCLUDE,
70
+ locale: options?.locale,
71
+ limit: 1,
72
+ }, requestOptions))
73
+ : Promise.resolve(null);
74
+ const [tagResponse, customTypeResponse] = await Promise.all([tagPromise, customTypePromise]);
75
+ const tagEntry = tagResponse.items[0];
76
+ if (!tagEntry?.fields) {
77
+ return { data: null, errors: [] };
78
+ }
79
+ const customTypeEntry = customTypeResponse?.items[0];
80
+ try {
81
+ const assets = convertAllAssets(tagResponse, context);
82
+ const rawAssets = convertAllRawAssets(tagResponse);
83
+ const includes = convertAllIncludes(tagResponse);
84
+ if (customTypeResponse) {
85
+ const customAssets = convertAllAssets(customTypeResponse, context);
86
+ const customRawAssets = convertAllRawAssets(customTypeResponse);
87
+ const customIncludes = convertAllIncludes(customTypeResponse);
88
+ for (const [key, value] of customAssets)
89
+ assets.set(key, value);
90
+ for (const [key, value] of customRawAssets)
91
+ rawAssets.set(key, value);
92
+ for (const [key, value] of customIncludes)
93
+ includes.set(key, value);
94
+ }
95
+ const externalVideoEmbeds = await enrichAllAssets(assets, includes, options);
96
+ const fullContext = createFullConverterContext(context, includes, assets, rawAssets, externalVideoEmbeds, options);
97
+ let converted = context.tagResolver(fullContext, tagEntry, bundleCustomType ? customTypeEntry : undefined);
98
+ if (converted) {
99
+ converted = await finalizeModelIconsAndNavigation(converted, context, config, options);
100
+ }
101
+ // Log errors in production
102
+ if (fullContext.errors.length > 0 &&
103
+ typeof process !== 'undefined' &&
104
+ process.env?.NODE_ENV === 'production') {
105
+ console.error(`CMS conversion errors for tag:`, {
106
+ entryId: tagEntry.sys.id,
107
+ slug,
108
+ errors: fullContext.errors,
109
+ });
110
+ }
111
+ return { data: converted, errors: fullContext.errors };
112
+ }
113
+ catch (error) {
114
+ const entryId = tagEntry?.sys.id || 'unknown';
115
+ const entryType = tagEntry?.sys.contentType?.sys?.id;
116
+ const errorMessage = error instanceof Error ? error.message : 'Unknown conversion error';
117
+ const cmsError = {
118
+ entryId,
119
+ entryType,
120
+ message: errorMessage,
121
+ error,
122
+ };
123
+ return { data: null, errors: [cmsError] };
124
+ }
125
+ };
126
+ // Apply retry logic if configured
127
+ if (options?.retry) {
128
+ return await withRetry(fetchFn, options.retry);
129
+ }
130
+ return await fetchFn();
131
+ }
132
+ //# sourceMappingURL=tag.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tag.js","sourceRoot":"","sources":["../../src/api/tag.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,61 @@
1
+ import type { EntryMeta, INavigation, ISchema, ISvgImage, ITyped } from '@se-studio/core-data-types';
2
+ import type { Entry } from 'contentful';
3
+ import type { BaseTemplateSkeleton } from '../baseTypes/baseTemplate';
4
+ import type { BaseConverterContext, ConverterContext } from '../converters/helpers';
5
+ import type { CmsResponse, ContentfulConfig, FetchOptions } from '../types';
6
+ import type { DefaultChainModifier } from './types';
7
+ /**
8
+ * Fetched template data structure
9
+ * Extends the resolved template with id and label for direct fetching
10
+ */
11
+ export interface IFetchedTemplate {
12
+ id: string;
13
+ cmsLabel: string;
14
+ preContent: ReadonlyArray<ITyped>;
15
+ postContent: ReadonlyArray<ITyped>;
16
+ menu?: INavigation;
17
+ footer?: INavigation;
18
+ backgroundColour?: string;
19
+ textColour?: string;
20
+ stickyNav: boolean;
21
+ icons?: ReadonlyArray<ISvgImage>;
22
+ /** Schema.org Mustache templates linked on the template (parity with page resolveTemplate). */
23
+ structuredData: ReadonlyArray<ISchema>;
24
+ /** Parsed template `meta` JSON (defaults for pages using this template). */
25
+ meta?: EntryMeta;
26
+ }
27
+ /**
28
+ * Converts a template entry to IFetchedTemplate (includes resolved structuredData).
29
+ * Exported for unit tests; used by {@link contentfulTemplateRest}.
30
+ */
31
+ export declare function convertTemplateEntry(context: ConverterContext, entry: Entry<BaseTemplateSkeleton, DefaultChainModifier, string>): IFetchedTemplate;
32
+ /**
33
+ * Fetches a template from Contentful by cmsLabel
34
+ *
35
+ * @param context - Converter context
36
+ * @param config - Contentful configuration
37
+ * @param cmsLabel - Template cmsLabel to fetch (e.g., '404')
38
+ * @param options - Fetch options (locale, preview, caching, etc.)
39
+ * @returns Promise resolving to IFetchedTemplate or null if not found
40
+ *
41
+ * @example
42
+ * ```ts
43
+ * const template = await contentfulTemplateRest(
44
+ * context,
45
+ * {
46
+ * spaceId: process.env.CONTENTFUL_SPACE_ID!,
47
+ * accessToken: process.env.CONTENTFUL_ACCESS_TOKEN!,
48
+ * },
49
+ * '404',
50
+ * {
51
+ * locale: 'en-US',
52
+ * cache: {
53
+ * tags: ['template#404'],
54
+ * revalidate: 3600
55
+ * }
56
+ * }
57
+ * );
58
+ * ```
59
+ */
60
+ export declare function contentfulTemplateRest(context: BaseConverterContext, config: ContentfulConfig, cmsLabel: string, options: FetchOptions): Promise<CmsResponse<IFetchedTemplate | null>>;
61
+ //# sourceMappingURL=template.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"template.d.ts","sourceRoot":"","sources":["../../src/api/template.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EACT,WAAW,EACX,OAAO,EACP,SAAS,EACT,MAAM,EACP,MAAM,4BAA4B,CAAC;AAEpC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,KAAK,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAIpF,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAE5E,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAEpD;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAClC,WAAW,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACnC,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC;IACjC,+FAA+F;IAC/F,cAAc,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;IACvC,4EAA4E;IAC5E,IAAI,CAAC,EAAE,SAAS,CAAC;CAClB;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,gBAAgB,EACzB,KAAK,EAAE,KAAK,CAAC,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,CAAC,GAC/D,gBAAgB,CAwDlB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,oBAAoB,EAC7B,MAAM,EAAE,gBAAgB,EACxB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,YAAY,GACpB,OAAO,CAAC,WAAW,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAC,CAc/C"}