@se-studio/contentful-rest-api 1.17.2 → 1.18.0

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 (38) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/api/index.d.ts +1 -1
  3. package/dist/api/index.d.ts.map +1 -1
  4. package/dist/api/index.js +1 -1
  5. package/dist/api/index.js.map +1 -1
  6. package/dist/api/preview-types.d.ts +65 -0
  7. package/dist/api/preview-types.d.ts.map +1 -0
  8. package/dist/api/preview-types.js +7 -0
  9. package/dist/api/preview-types.js.map +1 -0
  10. package/dist/api/preview.d.ts +12 -18
  11. package/dist/api/preview.d.ts.map +1 -1
  12. package/dist/api/preview.js +86 -28
  13. package/dist/api/preview.js.map +1 -1
  14. package/dist/converters/helpers.d.ts +7 -0
  15. package/dist/converters/helpers.d.ts.map +1 -1
  16. package/dist/converters/helpers.js.map +1 -1
  17. package/dist/index.d.ts +1 -1
  18. package/dist/index.d.ts.map +1 -1
  19. package/dist/index.js +1 -1
  20. package/dist/index.js.map +1 -1
  21. package/dist/revalidation/entry-handlers.d.ts +2 -10
  22. package/dist/revalidation/entry-handlers.d.ts.map +1 -1
  23. package/dist/revalidation/entry-handlers.js +46 -17
  24. package/dist/revalidation/entry-handlers.js.map +1 -1
  25. package/dist/revalidation/nextjs-route.d.ts +8 -1
  26. package/dist/revalidation/nextjs-route.d.ts.map +1 -1
  27. package/dist/revalidation/nextjs-route.js +4 -2
  28. package/dist/revalidation/nextjs-route.js.map +1 -1
  29. package/dist/revalidation/route.d.ts +1 -1
  30. package/dist/revalidation/route.d.ts.map +1 -1
  31. package/dist/revalidation/route.js +9 -11
  32. package/dist/revalidation/route.js.map +1 -1
  33. package/dist/revalidation/tags.d.ts +6 -0
  34. package/dist/revalidation/tags.d.ts.map +1 -1
  35. package/dist/revalidation/tags.js +8 -0
  36. package/dist/revalidation/tags.js.map +1 -1
  37. package/docs/llms.md +32 -6
  38. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # @se-studio/contentful-rest-api
2
2
 
3
+ ## 1.18.0
4
+
5
+ ### Minor Changes
6
+
7
+ - eb81656: Revalidate-all always clears `global` + `AllTags` (+ optional site `extraTags`, deduped) regardless of preview mode. Tag preview-by-id fetches with `global`. Old+new slug tags on publish are opt-in when the webhook payload includes `previousFields.slug` (not sent by standard Contentful Entry webhooks). Preserve HtmlComponent markdownContent newlines.
8
+
9
+ ## 1.17.3
10
+
11
+ ### Patch Changes
12
+
13
+ - Add `previewEntryResolvers` extension point and `slugPreviewResolver` so sites can register custom page-like Contentful types for Live Preview URL resolution without hardcoding customer types in core.
14
+
3
15
  ## 1.17.2
4
16
 
5
17
  ### Patch Changes
@@ -22,7 +22,7 @@ export { getResolutionScope, getResolutionScopeFromOptions, LISTING_RESOLUTION_S
22
22
  export { buildFlatNavigationCacheOptions, FLAT_NAV_CACHE_TAGS, FLAT_NAV_TIME_REVALIDATE_SECONDS, getNavigation, withFlatNavRequestCache, } from './navigation';
23
23
  export { contentfulPageRest } from './page';
24
24
  export { contentfulPersonRest, type PersonFetchOptions } from './person';
25
- export { getPreviewEntryInfo, type PreviewContentType, type PreviewEntryInfo } from './preview';
25
+ export { type BuiltinPreviewContentType, getPreviewEntryInfo, type PreviewContentType, type PreviewEntryInclude, type PreviewEntryInfo, type PreviewEntryResolveInput, type PreviewEntryResolver, slugPreviewResolver, } from './preview';
26
26
  export { contentfulRedirectsRest } from './redirects';
27
27
  export { filterRelatedArticles } from './related-articles';
28
28
  export { contentfulArticleSitemapEntries, contentfulArticleTypeSitemapEntries, contentfulPageSitemapEntries, contentfulPersonSitemapEntries, contentfulTagSitemapEntries, createSitemapProvider, getAllSitemapEntries, } from './sitemap';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,YAAY,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAChD,OAAO,EACL,gBAAgB,EAChB,sCAAsC,EACtC,KAAK,WAAW,EAChB,KAAK,gBAAgB,GACtB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAClD,OAAO,EAAE,KAAK,uBAAuB,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AACzF,OAAO,EACL,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAChD,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,qBAAqB,EAC1B,mBAAmB,GACpB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,KAAK,kBAAkB,EACvB,sBAAsB,EACtB,uBAAuB,GACxB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,0BAA0B,EAAE,MAAM,WAAW,CAAC;AACvD,OAAO,EAAE,wBAAwB,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAErD,OAAO,EACL,mBAAmB,EACnB,yBAAyB,EACzB,sBAAsB,EACtB,iBAAiB,EACjB,uBAAuB,EACvB,iBAAiB,EACjB,yBAAyB,EACzB,mBAAmB,GACpB,MAAM,WAAW,CAAC;AAEnB,OAAO,EACL,yBAAyB,EACzB,qCAAqC,EACrC,6BAA6B,EAC7B,4BAA4B,EAC5B,sBAAsB,EACtB,wBAAwB,EACxB,qBAAqB,EACrB,yBAAyB,GAC1B,MAAM,SAAS,CAAC;AACjB,YAAY,EAAE,cAAc,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AACvF,OAAO,EACL,kBAAkB,EAClB,6BAA6B,EAC7B,wBAAwB,EACxB,kBAAkB,EAClB,qBAAqB,GACtB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,+BAA+B,EAC/B,mBAAmB,EACnB,gCAAgC,EAChC,aAAa,EACb,uBAAuB,GACxB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAC;AAC5C,OAAO,EAAE,oBAAoB,EAAE,KAAK,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAEzE,OAAO,EAAE,mBAAmB,EAAE,KAAK,kBAAkB,EAAE,KAAK,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAChG,OAAO,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAEtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAE3D,OAAO,EACL,+BAA+B,EAC/B,mCAAmC,EACnC,4BAA4B,EAC5B,8BAA8B,EAC9B,2BAA2B,EAC3B,qBAAqB,EACrB,oBAAoB,GACrB,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,iBAAiB,EAAE,KAAK,eAAe,EAAE,MAAM,OAAO,CAAC;AAChE,OAAO,EAAE,qBAAqB,EAAE,KAAK,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAC7E,OAAO,EAAE,sBAAsB,EAAE,KAAK,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC3E,YAAY,EACV,oBAAoB,EACpB,mBAAmB,EACnB,aAAa,EACb,qBAAqB,EACrB,sBAAsB,EACtB,sBAAsB,EACtB,aAAa,EACb,wBAAwB,EACxB,oBAAoB,GACrB,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,YAAY,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAChD,OAAO,EACL,gBAAgB,EAChB,sCAAsC,EACtC,KAAK,WAAW,EAChB,KAAK,gBAAgB,GACtB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAClD,OAAO,EAAE,KAAK,uBAAuB,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AACzF,OAAO,EACL,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAChD,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,qBAAqB,EAC1B,mBAAmB,GACpB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,KAAK,kBAAkB,EACvB,sBAAsB,EACtB,uBAAuB,GACxB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,0BAA0B,EAAE,MAAM,WAAW,CAAC;AACvD,OAAO,EAAE,wBAAwB,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAErD,OAAO,EACL,mBAAmB,EACnB,yBAAyB,EACzB,sBAAsB,EACtB,iBAAiB,EACjB,uBAAuB,EACvB,iBAAiB,EACjB,yBAAyB,EACzB,mBAAmB,GACpB,MAAM,WAAW,CAAC;AAEnB,OAAO,EACL,yBAAyB,EACzB,qCAAqC,EACrC,6BAA6B,EAC7B,4BAA4B,EAC5B,sBAAsB,EACtB,wBAAwB,EACxB,qBAAqB,EACrB,yBAAyB,GAC1B,MAAM,SAAS,CAAC;AACjB,YAAY,EAAE,cAAc,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AACvF,OAAO,EACL,kBAAkB,EAClB,6BAA6B,EAC7B,wBAAwB,EACxB,kBAAkB,EAClB,qBAAqB,GACtB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,+BAA+B,EAC/B,mBAAmB,EACnB,gCAAgC,EAChC,aAAa,EACb,uBAAuB,GACxB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAC;AAC5C,OAAO,EAAE,oBAAoB,EAAE,KAAK,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAEzE,OAAO,EACL,KAAK,yBAAyB,EAC9B,mBAAmB,EACnB,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,wBAAwB,EAC7B,KAAK,oBAAoB,EACzB,mBAAmB,GACpB,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAEtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAE3D,OAAO,EACL,+BAA+B,EAC/B,mCAAmC,EACnC,4BAA4B,EAC5B,8BAA8B,EAC9B,2BAA2B,EAC3B,qBAAqB,EACrB,oBAAoB,GACrB,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,iBAAiB,EAAE,KAAK,eAAe,EAAE,MAAM,OAAO,CAAC;AAChE,OAAO,EAAE,qBAAqB,EAAE,KAAK,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAC7E,OAAO,EAAE,sBAAsB,EAAE,KAAK,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC3E,YAAY,EACV,oBAAoB,EACpB,mBAAmB,EACnB,aAAa,EACb,qBAAqB,EACrB,sBAAsB,EACtB,sBAAsB,EACtB,aAAa,EACb,wBAAwB,EACxB,oBAAoB,GACrB,MAAM,SAAS,CAAC"}
package/dist/api/index.js CHANGED
@@ -25,7 +25,7 @@ export { buildFlatNavigationCacheOptions, FLAT_NAV_CACHE_TAGS, FLAT_NAV_TIME_REV
25
25
  export { contentfulPageRest } from './page.js';
26
26
  export { contentfulPersonRest } from './person.js';
27
27
  // Preview
28
- export { getPreviewEntryInfo } from './preview.js';
28
+ export { getPreviewEntryInfo, slugPreviewResolver, } from './preview.js';
29
29
  export { contentfulRedirectsRest } from './redirects.js';
30
30
  // Related articles
31
31
  export { filterRelatedArticles } from './related-articles.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EACL,gBAAgB,EAChB,sCAAsC,GAGvC,MAAM,sBAAsB,CAAC;AAC9B,yBAAyB;AACzB,OAAO,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAClD,OAAO,EAAgC,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AACzF,OAAO,EACL,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAChD,OAAO,EAGL,mBAAmB,GACpB,MAAM,cAAc,CAAC;AACtB,OAAO,EAEL,sBAAsB,EACtB,uBAAuB,GACxB,MAAM,oBAAoB,CAAC;AAC5B,UAAU;AACV,OAAO,EAAE,0BAA0B,EAAE,MAAM,WAAW,CAAC;AACvD,OAAO,EAAE,wBAAwB,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AACrD,wDAAwD;AACxD,OAAO,EACL,mBAAmB,EACnB,yBAAyB,EACzB,sBAAsB,EACtB,iBAAiB,EACjB,uBAAuB,EACvB,iBAAiB,EACjB,yBAAyB,EACzB,mBAAmB,GACpB,MAAM,WAAW,CAAC;AACnB,qBAAqB;AACrB,OAAO,EACL,yBAAyB,EACzB,qCAAqC,EACrC,6BAA6B,EAC7B,4BAA4B,EAC5B,sBAAsB,EACtB,wBAAwB,EACxB,qBAAqB,EACrB,yBAAyB,GAC1B,MAAM,SAAS,CAAC;AAEjB,OAAO,EACL,kBAAkB,EAClB,6BAA6B,EAC7B,wBAAwB,EACxB,kBAAkB,EAClB,qBAAqB,GACtB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,+BAA+B,EAC/B,mBAAmB,EACnB,gCAAgC,EAChC,aAAa,EACb,uBAAuB,GACxB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAC;AAC5C,OAAO,EAAE,oBAAoB,EAA2B,MAAM,UAAU,CAAC;AACzE,UAAU;AACV,OAAO,EAAE,mBAAmB,EAAkD,MAAM,WAAW,CAAC;AAChG,OAAO,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AACtD,mBAAmB;AACnB,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,UAAU;AACV,OAAO,EACL,+BAA+B,EAC/B,mCAAmC,EACnC,4BAA4B,EAC5B,8BAA8B,EAC9B,2BAA2B,EAC3B,qBAAqB,EACrB,oBAAoB,GACrB,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,iBAAiB,EAAwB,MAAM,OAAO,CAAC;AAChE,OAAO,EAAE,qBAAqB,EAA4B,MAAM,YAAY,CAAC;AAC7E,OAAO,EAAE,sBAAsB,EAAyB,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EACL,gBAAgB,EAChB,sCAAsC,GAGvC,MAAM,sBAAsB,CAAC;AAC9B,yBAAyB;AACzB,OAAO,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAClD,OAAO,EAAgC,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AACzF,OAAO,EACL,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAChD,OAAO,EAGL,mBAAmB,GACpB,MAAM,cAAc,CAAC;AACtB,OAAO,EAEL,sBAAsB,EACtB,uBAAuB,GACxB,MAAM,oBAAoB,CAAC;AAC5B,UAAU;AACV,OAAO,EAAE,0BAA0B,EAAE,MAAM,WAAW,CAAC;AACvD,OAAO,EAAE,wBAAwB,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AACrD,wDAAwD;AACxD,OAAO,EACL,mBAAmB,EACnB,yBAAyB,EACzB,sBAAsB,EACtB,iBAAiB,EACjB,uBAAuB,EACvB,iBAAiB,EACjB,yBAAyB,EACzB,mBAAmB,GACpB,MAAM,WAAW,CAAC;AACnB,qBAAqB;AACrB,OAAO,EACL,yBAAyB,EACzB,qCAAqC,EACrC,6BAA6B,EAC7B,4BAA4B,EAC5B,sBAAsB,EACtB,wBAAwB,EACxB,qBAAqB,EACrB,yBAAyB,GAC1B,MAAM,SAAS,CAAC;AAEjB,OAAO,EACL,kBAAkB,EAClB,6BAA6B,EAC7B,wBAAwB,EACxB,kBAAkB,EAClB,qBAAqB,GACtB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,+BAA+B,EAC/B,mBAAmB,EACnB,gCAAgC,EAChC,aAAa,EACb,uBAAuB,GACxB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAC;AAC5C,OAAO,EAAE,oBAAoB,EAA2B,MAAM,UAAU,CAAC;AACzE,UAAU;AACV,OAAO,EAEL,mBAAmB,EAMnB,mBAAmB,GACpB,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AACtD,mBAAmB;AACnB,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,UAAU;AACV,OAAO,EACL,+BAA+B,EAC/B,mCAAmC,EACnC,4BAA4B,EAC5B,8BAA8B,EAC9B,2BAA2B,EAC3B,qBAAqB,EACrB,oBAAoB,GACrB,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,iBAAiB,EAAwB,MAAM,OAAO,CAAC;AAChE,OAAO,EAAE,qBAAqB,EAA4B,MAAM,YAAY,CAAC;AAC7E,OAAO,EAAE,sBAAsB,EAAyB,MAAM,YAAY,CAAC"}
@@ -0,0 +1,65 @@
1
+ /**
2
+ * Shared types for Contentful Live Preview entry → URL resolution.
3
+ * Kept separate from preview.ts / helpers.ts to avoid circular imports and
4
+ * so {@link PreviewEntryResolver} can return {@link PreviewEntryInfo} cleanly.
5
+ */
6
+ import type { UrlCalculators } from '../converters/helpers';
7
+ /**
8
+ * Built-in content types handled by {@link getPreviewEntryInfo} without project resolvers.
9
+ */
10
+ export type BuiltinPreviewContentType = 'page' | 'pageVariant' | 'pageTest' | 'article' | 'articleType' | 'tag' | 'person' | 'customType';
11
+ /**
12
+ * Content type id for a preview entry.
13
+ * Built-ins plus customer-specific types registered via {@link PreviewEntryResolver}
14
+ * (e.g. HSD `location`).
15
+ */
16
+ export type PreviewContentType = BuiltinPreviewContentType | (string & {});
17
+ /**
18
+ * Information about an entry for preview purposes
19
+ */
20
+ export interface PreviewEntryInfo {
21
+ /** The content type of the entry */
22
+ contentType: PreviewContentType;
23
+ /** The Contentful entry ID */
24
+ entryId: string;
25
+ /** The slug of the entry */
26
+ slug: string;
27
+ /** For articles, the article type's slug (needed for URL calculation) */
28
+ articleTypeSlug?: string;
29
+ /** The calculated URL for this entry */
30
+ href: string;
31
+ }
32
+ /**
33
+ * Linked entry shape passed to project preview resolvers (include depth 1).
34
+ * Compatible with Contentful include entries used by getPreviewEntryInfo.
35
+ */
36
+ export interface PreviewEntryInclude {
37
+ sys: {
38
+ id: string;
39
+ contentType?: {
40
+ sys: {
41
+ id: string;
42
+ };
43
+ };
44
+ };
45
+ fields?: Record<string, unknown>;
46
+ }
47
+ /**
48
+ * Input for a project {@link PreviewEntryResolver}.
49
+ */
50
+ export interface PreviewEntryResolveInput {
51
+ contentTypeId: string;
52
+ entryId: string;
53
+ /** Entry fields from the preview API (slug, links, …). */
54
+ fields: Record<string, unknown>;
55
+ /** Linked entries from include: 1. */
56
+ includes: PreviewEntryInclude[] | undefined;
57
+ urlCalculators: UrlCalculators;
58
+ }
59
+ /**
60
+ * Project-supplied resolver for page-like content types not handled by core
61
+ * {@link getPreviewEntryInfo}. Return preview info, or null if unhandled.
62
+ * Built-in switch runs first; extensions are only consulted on unknown types.
63
+ */
64
+ export type PreviewEntryResolver = (input: PreviewEntryResolveInput) => PreviewEntryInfo | null;
65
+ //# sourceMappingURL=preview-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"preview-types.d.ts","sourceRoot":"","sources":["../../src/api/preview-types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAE5D;;GAEG;AACH,MAAM,MAAM,yBAAyB,GACjC,MAAM,GACN,aAAa,GACb,UAAU,GACV,SAAS,GACT,aAAa,GACb,KAAK,GACL,QAAQ,GACR,YAAY,CAAC;AAEjB;;;;GAIG;AACH,MAAM,MAAM,kBAAkB,GAAG,yBAAyB,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;AAE3E;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,oCAAoC;IACpC,WAAW,EAAE,kBAAkB,CAAC;IAChC,8BAA8B;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,4BAA4B;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,yEAAyE;IACzE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,wCAAwC;IACxC,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,GAAG,EAAE;QACH,EAAE,EAAE,MAAM,CAAC;QACX,WAAW,CAAC,EAAE;YACZ,GAAG,EAAE;gBACH,EAAE,EAAE,MAAM,CAAC;aACZ,CAAC;SACH,CAAC;KACH,CAAC;IACF,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,0DAA0D;IAC1D,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,sCAAsC;IACtC,QAAQ,EAAE,mBAAmB,EAAE,GAAG,SAAS,CAAC;IAC5C,cAAc,EAAE,cAAc,CAAC;CAChC;AAED;;;;GAIG;AACH,MAAM,MAAM,oBAAoB,GAAG,CAAC,KAAK,EAAE,wBAAwB,KAAK,gBAAgB,GAAG,IAAI,CAAC"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Shared types for Contentful Live Preview entry → URL resolution.
3
+ * Kept separate from preview.ts / helpers.ts to avoid circular imports and
4
+ * so {@link PreviewEntryResolver} can return {@link PreviewEntryInfo} cleanly.
5
+ */
6
+ export {};
7
+ //# sourceMappingURL=preview-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"preview-types.js","sourceRoot":"","sources":["../../src/api/preview-types.ts"],"names":[],"mappings":"AAAA;;;;GAIG"}
@@ -6,25 +6,19 @@
6
6
  */
7
7
  import type { BaseConverterContext } from '../converters/helpers';
8
8
  import type { ContentfulConfig, FetchOptions } from '../types';
9
+ import type { PreviewEntryInfo, PreviewEntryResolver } from './preview-types';
10
+ export type { BuiltinPreviewContentType, PreviewContentType, PreviewEntryInclude, PreviewEntryInfo, PreviewEntryResolveInput, PreviewEntryResolver, } from './preview-types';
9
11
  /**
10
- * Supported content types for preview lookup
11
- */
12
- export type PreviewContentType = 'page' | 'pageVariant' | 'pageTest' | 'article' | 'articleType' | 'tag' | 'person' | 'customType';
13
- /**
14
- * Information about an entry for preview purposes
12
+ * Convenience resolver for content types that only need `fields.slug` → href.
13
+ *
14
+ * @example
15
+ * ```ts
16
+ * previewEntryResolvers: {
17
+ * location: slugPreviewResolver('location', (slug) => `/drive/${slug}/`),
18
+ * }
19
+ * ```
15
20
  */
16
- export interface PreviewEntryInfo {
17
- /** The content type of the entry */
18
- contentType: PreviewContentType;
19
- /** The Contentful entry ID */
20
- entryId: string;
21
- /** The slug of the entry */
22
- slug: string;
23
- /** For articles, the article type's slug (needed for URL calculation) */
24
- articleTypeSlug?: string;
25
- /** The calculated URL for this entry */
26
- href: string;
27
- }
21
+ export declare function slugPreviewResolver(contentType: string, toHref: (slug: string) => string): PreviewEntryResolver;
28
22
  /**
29
23
  * Looks up a Contentful entry by ID and returns information needed for preview redirect.
30
24
  *
@@ -40,7 +34,7 @@ export interface PreviewEntryInfo {
40
34
  *
41
35
  * @example
42
36
  * ```ts
43
- * const context = createBaseConverterContext();
37
+ * const context = createBaseConverterContext(urlCalculators);
44
38
  * const info = await getPreviewEntryInfo(
45
39
  * context,
46
40
  * { spaceId: '...', accessToken: '...' },
@@ -1 +1 @@
1
- {"version":3,"file":"preview.d.ts","sourceRoot":"","sources":["../../src/api/preview.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,KAAK,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAE/D;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAC1B,MAAM,GACN,aAAa,GACb,UAAU,GACV,SAAS,GACT,aAAa,GACb,KAAK,GACL,QAAQ,GACR,YAAY,CAAC;AAEjB;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,oCAAoC;IACpC,WAAW,EAAE,kBAAkB,CAAC;IAChC,8BAA8B;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,4BAA4B;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,yEAAyE;IACzE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,wCAAwC;IACxC,IAAI,EAAE,MAAM,CAAC;CACd;AA0CD;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,oBAAoB,EAC7B,MAAM,EAAE,gBAAgB,EACxB,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,IAAI,CAAC,YAAY,EAAE,SAAS,CAAC,GACtC,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CA2IlC"}
1
+ {"version":3,"file":"preview.d.ts","sourceRoot":"","sources":["../../src/api/preview.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAElE,OAAO,KAAK,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAC/D,OAAO,KAAK,EAAuB,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAEnG,YAAY,EACV,yBAAyB,EACzB,kBAAkB,EAClB,mBAAmB,EACnB,gBAAgB,EAChB,wBAAwB,EACxB,oBAAoB,GACrB,MAAM,iBAAiB,CAAC;AAEzB;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,GAC/B,oBAAoB,CAatB;AAwCD;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,oBAAoB,EAC7B,MAAM,EAAE,gBAAgB,EACxB,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,IAAI,CAAC,YAAY,EAAE,SAAS,CAAC,GACtC,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CA6JlC"}
@@ -5,6 +5,48 @@
5
5
  * appropriate URL for preview redirects.
6
6
  */
7
7
  import { getContentfulClient } from '../client.js';
8
+ import { GlobalTag } from '../revalidation/tags.js';
9
+ /**
10
+ * Convenience resolver for content types that only need `fields.slug` → href.
11
+ *
12
+ * @example
13
+ * ```ts
14
+ * previewEntryResolvers: {
15
+ * location: slugPreviewResolver('location', (slug) => `/drive/${slug}/`),
16
+ * }
17
+ * ```
18
+ */
19
+ export function slugPreviewResolver(contentType, toHref) {
20
+ return ({ entryId, fields }) => {
21
+ const slug = readStringField(fields, 'slug');
22
+ if (!slug) {
23
+ return null;
24
+ }
25
+ return {
26
+ contentType,
27
+ entryId,
28
+ slug,
29
+ href: toHref(slug),
30
+ };
31
+ };
32
+ }
33
+ function readStringField(fields, key) {
34
+ if (!fields) {
35
+ return undefined;
36
+ }
37
+ const value = fields[key];
38
+ return typeof value === 'string' ? value : undefined;
39
+ }
40
+ function asEntryLink(value) {
41
+ if (!value || typeof value !== 'object') {
42
+ return undefined;
43
+ }
44
+ const link = value;
45
+ if (!link.sys?.id) {
46
+ return undefined;
47
+ }
48
+ return link;
49
+ }
8
50
  /**
9
51
  * Looks up a Contentful entry by ID and returns information needed for preview redirect.
10
52
  *
@@ -20,7 +62,7 @@ import { getContentfulClient } from '../client.js';
20
62
  *
21
63
  * @example
22
64
  * ```ts
23
- * const context = createBaseConverterContext();
65
+ * const context = createBaseConverterContext(urlCalculators);
24
66
  * const info = await getPreviewEntryInfo(
25
67
  * context,
26
68
  * { spaceId: '...', accessToken: '...' },
@@ -34,24 +76,32 @@ import { getContentfulClient } from '../client.js';
34
76
  export async function getPreviewEntryInfo(context, config, entryId, options) {
35
77
  // Always use preview API for preview lookups
36
78
  const client = getContentfulClient(config, true);
79
+ // Tag with GlobalTag so DRAFT_ONLY / revalidate-all can clear stale entry-id → slug maps
80
+ // (force-cache without tags cannot be invalidated).
37
81
  const response = await client.getEntries({
38
82
  'sys.id': entryId,
39
83
  include: 1, // Resolve linked entries: Article → ArticleType, pageTest → control
40
84
  }, {
85
+ cache: 'force-cache',
41
86
  ...options,
42
87
  preview: true,
88
+ next: {
89
+ ...options?.next,
90
+ tags: [...(options?.next?.tags ?? []), GlobalTag],
91
+ },
43
92
  });
44
93
  const entry = response.items[0];
45
94
  if (!entry) {
46
95
  return null;
47
96
  }
48
97
  const contentTypeId = entry.sys.contentType.sys.id;
49
- const { fields } = entry;
98
+ const fields = entry.fields;
99
+ const includes = response.includes?.Entry;
50
100
  // Map Contentful content type ID to our PreviewContentType
51
101
  // and extract the relevant slug and calculate href
52
102
  switch (contentTypeId) {
53
103
  case 'page': {
54
- const slug = fields.slug;
104
+ const slug = readStringField(fields, 'slug');
55
105
  if (!slug)
56
106
  return null;
57
107
  return {
@@ -62,7 +112,7 @@ export async function getPreviewEntryInfo(context, config, entryId, options) {
62
112
  };
63
113
  }
64
114
  case 'pageVariant': {
65
- const slug = fields.slug;
115
+ const slug = readStringField(fields, 'slug');
66
116
  if (!slug)
67
117
  return null;
68
118
  return {
@@ -73,9 +123,9 @@ export async function getPreviewEntryInfo(context, config, entryId, options) {
73
123
  };
74
124
  }
75
125
  case 'article': {
76
- const slug = fields.slug;
126
+ const slug = readStringField(fields, 'slug');
77
127
  // For articles, we need the articleType's slug from the included entry
78
- const articleTypeSlug = getArticleTypeSlug(entry, response.includes?.Entry);
128
+ const articleTypeSlug = getArticleTypeSlug(fields, includes);
79
129
  if (!slug || !articleTypeSlug)
80
130
  return null;
81
131
  return {
@@ -87,7 +137,7 @@ export async function getPreviewEntryInfo(context, config, entryId, options) {
87
137
  };
88
138
  }
89
139
  case 'articleType': {
90
- const slug = fields.slug;
140
+ const slug = readStringField(fields, 'slug');
91
141
  if (!slug)
92
142
  return null;
93
143
  return {
@@ -98,7 +148,7 @@ export async function getPreviewEntryInfo(context, config, entryId, options) {
98
148
  };
99
149
  }
100
150
  case 'tag': {
101
- const slug = fields.slug;
151
+ const slug = readStringField(fields, 'slug');
102
152
  if (!slug)
103
153
  return null;
104
154
  return {
@@ -109,7 +159,7 @@ export async function getPreviewEntryInfo(context, config, entryId, options) {
109
159
  };
110
160
  }
111
161
  case 'person': {
112
- const slug = fields.slug;
162
+ const slug = readStringField(fields, 'slug');
113
163
  if (!slug)
114
164
  return null;
115
165
  return {
@@ -120,7 +170,7 @@ export async function getPreviewEntryInfo(context, config, entryId, options) {
120
170
  };
121
171
  }
122
172
  case 'customType': {
123
- const slug = fields.slug;
173
+ const slug = readStringField(fields, 'slug');
124
174
  if (!slug)
125
175
  return null;
126
176
  return {
@@ -131,11 +181,11 @@ export async function getPreviewEntryInfo(context, config, entryId, options) {
131
181
  };
132
182
  }
133
183
  case 'pageTest': {
134
- const controlEntry = getPageTestControlEntry(entry, response.includes?.Entry);
184
+ const controlEntry = getPageTestControlEntry(fields, includes);
135
185
  if (!controlEntry)
136
186
  return null;
137
- const controlContentType = controlEntry.sys.contentType.sys.id;
138
- const slug = controlEntry.fields.slug;
187
+ const controlContentType = controlEntry.sys.contentType?.sys.id;
188
+ const slug = readStringField(controlEntry.fields, 'slug');
139
189
  if (!slug)
140
190
  return null;
141
191
  if (controlContentType === 'page') {
@@ -156,20 +206,30 @@ export async function getPreviewEntryInfo(context, config, entryId, options) {
156
206
  }
157
207
  return null;
158
208
  }
159
- default:
160
- // Unknown content type - not supported for preview
161
- return null;
209
+ default: {
210
+ const resolver = context.previewEntryResolvers?.[contentTypeId];
211
+ if (!resolver) {
212
+ return null;
213
+ }
214
+ return resolver({
215
+ contentTypeId,
216
+ entryId,
217
+ fields,
218
+ includes,
219
+ urlCalculators: context.urlCalculators,
220
+ });
221
+ }
162
222
  }
163
223
  }
164
224
  /**
165
225
  * Resolves the control page entry linked from a pageTest entry.
166
226
  */
167
- function getPageTestControlEntry(entry, includes) {
168
- const controlField = entry.fields.control;
227
+ function getPageTestControlEntry(fields, includes) {
228
+ const controlField = asEntryLink(fields.control);
169
229
  if (!controlField) {
170
230
  return undefined;
171
231
  }
172
- if (controlField.sys.contentType?.sys.id && controlField.fields?.slug) {
232
+ if (controlField.sys.contentType?.sys.id && readStringField(controlField.fields, 'slug')) {
173
233
  return controlField;
174
234
  }
175
235
  const controlId = controlField.sys.id;
@@ -182,22 +242,20 @@ function getPageTestControlEntry(entry, includes) {
182
242
  * Extracts the article type slug from an article entry.
183
243
  * Looks in the entry's articleType field, falling back to includes if needed.
184
244
  */
185
- function getArticleTypeSlug(entry, includes) {
186
- // First, check if articleType is resolved in the entry
187
- const articleTypeField = entry.fields.articleType;
245
+ function getArticleTypeSlug(fields, includes) {
246
+ const articleTypeField = asEntryLink(fields.articleType);
188
247
  if (!articleTypeField) {
189
248
  return undefined;
190
249
  }
191
- // If the articleType has fields (resolved), get slug from there
192
- if (articleTypeField.fields?.slug) {
193
- return articleTypeField.fields.slug;
250
+ const resolvedSlug = readStringField(articleTypeField.fields, 'slug');
251
+ if (resolvedSlug) {
252
+ return resolvedSlug;
194
253
  }
195
- // Otherwise, look it up in includes
196
- const articleTypeId = articleTypeField.sys?.id;
254
+ const articleTypeId = articleTypeField.sys.id;
197
255
  if (!articleTypeId || !includes) {
198
256
  return undefined;
199
257
  }
200
258
  const articleTypeEntry = includes.find((inc) => inc.sys.id === articleTypeId);
201
- return articleTypeEntry?.fields?.slug;
259
+ return readStringField(articleTypeEntry?.fields, 'slug');
202
260
  }
203
261
  //# sourceMappingURL=preview.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"preview.js","sourceRoot":"","sources":["../../src/api/preview.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"preview.js","sourceRoot":"","sources":["../../src/api/preview.ts"],"names":[],"mappings":"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"}
@@ -112,6 +112,13 @@ export type BaseConverterContext = {
112
112
  * Apps can override these to customize URL patterns for links, sitemaps, and preview.
113
113
  */
114
114
  urlCalculators: UrlCalculators;
115
+ /**
116
+ * Optional project resolvers for Contentful Live Preview entry → URL lookup.
117
+ * Keys are Contentful content type ids (e.g. `location`). Used by
118
+ * getPreviewEntryInfo when the content type is not a built-in type.
119
+ * See {@link import('../api/preview-types').PreviewEntryResolver}.
120
+ */
121
+ previewEntryResolvers?: Readonly<Record<string, import('../api/preview-types').PreviewEntryResolver>>;
115
122
  linkResolver: LinkResolverMap;
116
123
  contentResolver: Map<string, (context: ConverterContext, entry: Entry<BaseContent, DefaultChainModifier, string>) => unknown>;
117
124
  navigationItemResolver: typeof baseNavigationItemConverter;
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/converters/helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/converters/helpers.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/converters/helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/converters/helpers.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -17,7 +17,7 @@
17
17
  * );
18
18
  * ```
19
19
  */
20
- export { type AnyEntryRestResult, type ArticleTypeFetchOptions, type BreadcrumbLookup, type BreadcrumbLookupEntry, buildFetchOptions, buildFlatNavigationCacheOptions, type CmsContentType, type CmsFetchProfile, type ConverterResolutionScope, contentfulAllArticleLinks, contentfulAllArticleLinksForIntegrity, contentfulAllArticleTypeLinks, contentfulAllCustomTypeLinks, contentfulAllPageLinks, contentfulAllPersonLinks, contentfulAllTagLinks, contentfulAllTagTypeLinks, contentfulAnyEntryRest, contentfulArticleRest, contentfulArticleSitemapEntries, contentfulArticleTypeRest, contentfulArticleTypeSitemapEntries, contentfulAssetRest, contentfulBannerRest, contentfulComponentRest, contentfulCustomTypeRest, contentfulDocumentsRest, contentfulPageRest, contentfulPageSitemapEntries, contentfulPersonRest, contentfulPersonSitemapEntries, contentfulRedirectsRest, contentfulTagRest, contentfulTagSitemapEntries, contentfulTagTypeRest, contentfulTemplateRest, coreGetContentfulConfig, createBaseConverterContext, createSitemapProvider, type DefaultChainModifier, FLAT_NAV_CACHE_TAGS, FLAT_NAV_TIME_REVALIDATE_SECONDS, filterRelatedArticles, getAllSitemapEntries, getBreadcrumbLookup, getDefaultInclude, getListingLinkFetchParams, getNavigation, getPreviewEntryInfo, getResolutionScope, getResolutionScopeFromOptions, type IContentfulRichText, type IFetchedTemplate, type ISitemapEntry, isBrowserViewable, LISTING_RESOLUTION_SCOPE, PAGE_CONTENT_SCOPE, PAGE_RESOLUTION_SCOPE, type PersonFetchOptions, type PreviewContentType, type PreviewEntryInfo, type RelatedArticlesOptions, resolveIncludeDepth, type SitemapChangeFrequency, type SitemapConfig, type SitemapContentTypeConfig, type SitemapEntryProvider, type TagFetchOptions, type TagTypeFetchOptions, withFlatNavRequestCache, } from './api';
20
+ export { type AnyEntryRestResult, type ArticleTypeFetchOptions, type BreadcrumbLookup, type BreadcrumbLookupEntry, type BuiltinPreviewContentType, buildFetchOptions, buildFlatNavigationCacheOptions, type CmsContentType, type CmsFetchProfile, type ConverterResolutionScope, contentfulAllArticleLinks, contentfulAllArticleLinksForIntegrity, contentfulAllArticleTypeLinks, contentfulAllCustomTypeLinks, contentfulAllPageLinks, contentfulAllPersonLinks, contentfulAllTagLinks, contentfulAllTagTypeLinks, contentfulAnyEntryRest, contentfulArticleRest, contentfulArticleSitemapEntries, contentfulArticleTypeRest, contentfulArticleTypeSitemapEntries, contentfulAssetRest, contentfulBannerRest, contentfulComponentRest, contentfulCustomTypeRest, contentfulDocumentsRest, contentfulPageRest, contentfulPageSitemapEntries, contentfulPersonRest, contentfulPersonSitemapEntries, contentfulRedirectsRest, contentfulTagRest, contentfulTagSitemapEntries, contentfulTagTypeRest, contentfulTemplateRest, coreGetContentfulConfig, createBaseConverterContext, createSitemapProvider, type DefaultChainModifier, FLAT_NAV_CACHE_TAGS, FLAT_NAV_TIME_REVALIDATE_SECONDS, filterRelatedArticles, getAllSitemapEntries, getBreadcrumbLookup, getDefaultInclude, getListingLinkFetchParams, getNavigation, getPreviewEntryInfo, getResolutionScope, getResolutionScopeFromOptions, type IContentfulRichText, type IFetchedTemplate, type ISitemapEntry, isBrowserViewable, LISTING_RESOLUTION_SCOPE, PAGE_CONTENT_SCOPE, PAGE_RESOLUTION_SCOPE, type PersonFetchOptions, type PreviewContentType, type PreviewEntryInclude, type PreviewEntryInfo, type PreviewEntryResolveInput, type PreviewEntryResolver, type RelatedArticlesOptions, resolveIncludeDepth, type SitemapChangeFrequency, type SitemapConfig, type SitemapContentTypeConfig, type SitemapEntryProvider, slugPreviewResolver, type TagFetchOptions, type TagTypeFetchOptions, withFlatNavRequestCache, } from './api';
21
21
  export type { ContentfulFetchClient as ContentfulClient } from './client';
22
22
  export { type ContentfulFetchClient, createContentfulClient, createContentfulPreviewClient, getContentfulClient, } from './client';
23
23
  export type { ContentResolverFunction } from './converters';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -22,7 +22,7 @@ export { buildFetchOptions, buildFlatNavigationCacheOptions, contentfulAllArticl
22
22
  // Asset/download functions
23
23
  contentfulAssetRest, contentfulBannerRest, contentfulComponentRest, contentfulCustomTypeRest, contentfulDocumentsRest, contentfulPageRest, contentfulPageSitemapEntries, contentfulPersonRest, contentfulPersonSitemapEntries, contentfulRedirectsRest, contentfulTagRest, contentfulTagSitemapEntries, contentfulTagTypeRest, contentfulTemplateRest, coreGetContentfulConfig, createBaseConverterContext, createSitemapProvider, FLAT_NAV_CACHE_TAGS, FLAT_NAV_TIME_REVALIDATE_SECONDS, filterRelatedArticles, getAllSitemapEntries, getBreadcrumbLookup, getDefaultInclude, getListingLinkFetchParams, getNavigation,
24
24
  // Preview
25
- getPreviewEntryInfo, getResolutionScope, getResolutionScopeFromOptions, isBrowserViewable, LISTING_RESOLUTION_SCOPE, PAGE_CONTENT_SCOPE, PAGE_RESOLUTION_SCOPE, resolveIncludeDepth, withFlatNavRequestCache, } from './api/index.js';
25
+ getPreviewEntryInfo, getResolutionScope, getResolutionScopeFromOptions, isBrowserViewable, LISTING_RESOLUTION_SCOPE, PAGE_CONTENT_SCOPE, PAGE_RESOLUTION_SCOPE, resolveIncludeDepth, slugPreviewResolver, withFlatNavRequestCache, } from './api/index.js';
26
26
  // Client exports
27
27
  export { createContentfulClient, createContentfulPreviewClient, getContentfulClient, } from './client.js';
28
28
  // Converter exports
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,gBAAgB;AAChB,OAAO,EAKL,iBAAiB,EACjB,+BAA+B,EAI/B,yBAAyB,EACzB,qCAAqC,EACrC,6BAA6B,EAC7B,4BAA4B,EAC5B,sBAAsB,EACtB,wBAAwB,EACxB,qBAAqB,EACrB,yBAAyB,EACzB,sBAAsB,EACtB,qBAAqB,EACrB,+BAA+B,EAC/B,yBAAyB,EACzB,mCAAmC;AACnC,2BAA2B;AAC3B,mBAAmB,EACnB,oBAAoB,EACpB,uBAAuB,EACvB,wBAAwB,EACxB,uBAAuB,EACvB,kBAAkB,EAClB,4BAA4B,EAC5B,oBAAoB,EACpB,8BAA8B,EAC9B,uBAAuB,EACvB,iBAAiB,EACjB,2BAA2B,EAC3B,qBAAqB,EACrB,sBAAsB,EACtB,uBAAuB,EACvB,0BAA0B,EAC1B,qBAAqB,EAErB,mBAAmB,EACnB,gCAAgC,EAChC,qBAAqB,EACrB,oBAAoB,EACpB,mBAAmB,EACnB,iBAAiB,EACjB,yBAAyB,EACzB,aAAa;AACb,UAAU;AACV,mBAAmB,EACnB,kBAAkB,EAClB,6BAA6B,EAK7B,iBAAiB,EACjB,wBAAwB,EACxB,kBAAkB,EAClB,qBAAqB,EAMrB,mBAAmB,EAOnB,uBAAuB,GACxB,MAAM,OAAO,CAAC;AAGf,iBAAiB;AACjB,OAAO,EAEL,sBAAsB,EACtB,6BAA6B,EAC7B,mBAAmB,GACpB,MAAM,UAAU,CAAC;AAElB,oBAAoB;AACpB,OAAO,EAEL,uBAAuB,EACvB,sBAAsB,EACtB,qBAAqB,EACrB,8BAA8B,EAC9B,2BAA2B,EAC3B,iBAAiB,EAEjB,iBAAiB,EACjB,wBAAwB,EACxB,sBAAsB,EAOtB,WAAW,EACX,gCAAgC,EAChC,sBAAsB,EACtB,4BAA4B,EAC5B,WAAW,EACX,YAAY,EACZ,iBAAiB,EACjB,uBAAuB,EACvB,uBAAuB,GAExB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,uBAAuB,EACvB,0BAA0B,EAC1B,gBAAgB,EAChB,qBAAqB,EACrB,2BAA2B,GAC5B,MAAM,2BAA2B,CAAC;AACnC,yBAAyB;AACzB,OAAO,EACL,OAAO,EACP,UAAU,EACV,cAAc,EACd,QAAQ,EACR,UAAU,EACV,mBAAmB,EACnB,cAAc,EACd,QAAQ,EACR,SAAS,EACT,aAAa,EACb,aAAa,EACb,WAAW,EACX,SAAS,EACT,YAAY;AACZ,oBAAoB;AACpB,sBAAsB,EACtB,yBAAyB,EACzB,OAAO,EACP,WAAW,EACX,WAAW,EACX,iBAAiB,EACjB,aAAa;AACb,8BAA8B;AAC9B,OAAO,EACP,cAAc,EACd,SAAS,EACT,OAAO,EACP,cAAc,EACd,SAAS,EACT,wCAAwC,EACxC,4CAA4C,EAC5C,MAAM,EACN,UAAU,EACV,WAAW,EACX,MAAM,EACN,WAAW,GACZ,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,iCAAiC,GAElC,MAAM,WAAW,CAAC;AAUnB,qCAAqC;AACrC,OAAO,EAEL,mBAAmB,EACnB,gBAAgB,EAChB,eAAe,EACf,qBAAqB,EACrB,kBAAkB,EAClB,iBAAiB,EACjB,aAAa,EACb,aAAa,EACb,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,YAAY,EACZ,WAAW,EACX,QAAQ,EAER,cAAc,EACd,WAAW,EACX,QAAQ,EAER,eAAe,EACf,SAAS,GACV,MAAM,SAAS,CAAC;AACjB,OAAO,EACL,gBAAgB,EAChB,sCAAsC,GAGvC,MAAM,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,gBAAgB;AAChB,OAAO,EAOL,iBAAiB,EACjB,+BAA+B,EAI/B,yBAAyB,EACzB,qCAAqC,EACrC,6BAA6B,EAC7B,4BAA4B,EAC5B,sBAAsB,EACtB,wBAAwB,EACxB,qBAAqB,EACrB,yBAAyB,EACzB,sBAAsB,EACtB,qBAAqB,EACrB,+BAA+B,EAC/B,yBAAyB,EACzB,mCAAmC;AACnC,2BAA2B;AAC3B,mBAAmB,EACnB,oBAAoB,EACpB,uBAAuB,EACvB,wBAAwB,EACxB,uBAAuB,EACvB,kBAAkB,EAClB,4BAA4B,EAC5B,oBAAoB,EACpB,8BAA8B,EAC9B,uBAAuB,EACvB,iBAAiB,EACjB,2BAA2B,EAC3B,qBAAqB,EACrB,sBAAsB,EACtB,uBAAuB,EACvB,0BAA0B,EAC1B,qBAAqB,EAErB,mBAAmB,EACnB,gCAAgC,EAChC,qBAAqB,EACrB,oBAAoB,EACpB,mBAAmB,EACnB,iBAAiB,EACjB,yBAAyB,EACzB,aAAa;AACb,UAAU;AACV,mBAAmB,EACnB,kBAAkB,EAClB,6BAA6B,EAK7B,iBAAiB,EACjB,wBAAwB,EACxB,kBAAkB,EAClB,qBAAqB,EAQrB,mBAAmB,EAKnB,mBAAmB,EAGnB,uBAAuB,GACxB,MAAM,OAAO,CAAC;AAGf,iBAAiB;AACjB,OAAO,EAEL,sBAAsB,EACtB,6BAA6B,EAC7B,mBAAmB,GACpB,MAAM,UAAU,CAAC;AAElB,oBAAoB;AACpB,OAAO,EAEL,uBAAuB,EACvB,sBAAsB,EACtB,qBAAqB,EACrB,8BAA8B,EAC9B,2BAA2B,EAC3B,iBAAiB,EAEjB,iBAAiB,EACjB,wBAAwB,EACxB,sBAAsB,EAOtB,WAAW,EACX,gCAAgC,EAChC,sBAAsB,EACtB,4BAA4B,EAC5B,WAAW,EACX,YAAY,EACZ,iBAAiB,EACjB,uBAAuB,EACvB,uBAAuB,GAExB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,uBAAuB,EACvB,0BAA0B,EAC1B,gBAAgB,EAChB,qBAAqB,EACrB,2BAA2B,GAC5B,MAAM,2BAA2B,CAAC;AACnC,yBAAyB;AACzB,OAAO,EACL,OAAO,EACP,UAAU,EACV,cAAc,EACd,QAAQ,EACR,UAAU,EACV,mBAAmB,EACnB,cAAc,EACd,QAAQ,EACR,SAAS,EACT,aAAa,EACb,aAAa,EACb,WAAW,EACX,SAAS,EACT,YAAY;AACZ,oBAAoB;AACpB,sBAAsB,EACtB,yBAAyB,EACzB,OAAO,EACP,WAAW,EACX,WAAW,EACX,iBAAiB,EACjB,aAAa;AACb,8BAA8B;AAC9B,OAAO,EACP,cAAc,EACd,SAAS,EACT,OAAO,EACP,cAAc,EACd,SAAS,EACT,wCAAwC,EACxC,4CAA4C,EAC5C,MAAM,EACN,UAAU,EACV,WAAW,EACX,MAAM,EACN,WAAW,GACZ,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,iCAAiC,GAElC,MAAM,WAAW,CAAC;AAUnB,qCAAqC;AACrC,OAAO,EAEL,mBAAmB,EACnB,gBAAgB,EAChB,eAAe,EACf,qBAAqB,EACrB,kBAAkB,EAClB,iBAAiB,EACjB,aAAa,EACb,aAAa,EACb,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,YAAY,EACZ,WAAW,EACX,QAAQ,EAER,cAAc,EACd,WAAW,EACX,QAAQ,EAER,eAAe,EACf,SAAS,GACV,MAAM,SAAS,CAAC;AACjB,OAAO,EACL,gBAAgB,EAChB,sCAAsC,GAGvC,MAAM,qBAAqB,CAAC"}
@@ -19,13 +19,6 @@ export interface BaseData {
19
19
  };
20
20
  };
21
21
  }
22
- interface SlugData extends BaseData {
23
- fields?: {
24
- slug?: {
25
- 'en-US': string;
26
- };
27
- };
28
- }
29
22
  export interface IContentTypeHandler<TData extends BaseData, TExtracted> {
30
23
  extract(data: TData): TExtracted | Promise<TExtracted>;
31
24
  makeTags(extracted: TExtracted): (string | undefined)[] | undefined;
@@ -39,10 +32,9 @@ export interface IContentTypeHandler<TData extends BaseData, TExtracted> {
39
32
  getCascadeTags?(): string[];
40
33
  rebuildSearch?: boolean;
41
34
  }
42
- export declare const contentTypeHandlers: Record<string, IContentTypeHandler<SlugData, string | null | undefined>>;
35
+ export declare const contentTypeHandlers: Record<string, IContentTypeHandler<any, any>>;
43
36
  /** Merge individual, collection, and coarse cascade tags for publish revalidation. */
44
- export declare function collectPublishTagsForHandler(handler: IContentTypeHandler<BaseData, string | null | undefined>, extracted: string | null | undefined): string[];
37
+ export declare function collectPublishTagsForHandler(handler: IContentTypeHandler<any, any>, extracted: any): string[];
45
38
  /** Tags revalidated when an entry is published (production mode). */
46
39
  export declare function getPublishTagsForEntry(content: BaseData): Promise<string[]>;
47
- export {};
48
40
  //# sourceMappingURL=entry-handlers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"entry-handlers.d.ts","sourceRoot":"","sources":["../../src/revalidation/entry-handlers.ts"],"names":[],"mappings":"AA6BA,MAAM,WAAW,QAAQ;IACvB,GAAG,EAAE;QACH,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,OAAO,GAAG,cAAc,GAAG,OAAO,GAAG,cAAc,CAAC;QAC1D,KAAK,EAAE;YAAE,GAAG,EAAE;gBAAE,EAAE,EAAE,MAAM,CAAA;aAAE,CAAA;SAAE,CAAC;QAC/B,WAAW,EAAE;YAAE,GAAG,EAAE;gBAAE,EAAE,EAAE,MAAM,CAAA;aAAE,CAAA;SAAE,CAAC;QACrC,WAAW,EAAE;YAAE,GAAG,EAAE;gBAAE,EAAE,EAAE,MAAM,CAAA;aAAE,CAAA;SAAE,CAAC;KACtC,CAAC;CACH;AAED,UAAU,QAAS,SAAQ,QAAQ;IACjC,MAAM,CAAC,EAAE;QACP,IAAI,CAAC,EAAE;YACL,OAAO,EAAE,MAAM,CAAC;SACjB,CAAC;KACH,CAAC;CACH;AAgDD,MAAM,WAAW,mBAAmB,CAAC,KAAK,SAAS,QAAQ,EAAE,UAAU;IACrE,OAAO,CAAC,IAAI,EAAE,KAAK,GAAG,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IACvD,QAAQ,CAAC,SAAS,EAAE,UAAU,GAAG,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE,GAAG,SAAS,CAAC;IACpE,aAAa,IAAI,MAAM,EAAE,CAAC;IAC1B;;;;;OAKG;IACH,cAAc,CAAC,IAAI,MAAM,EAAE,CAAC;IAC5B,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAsCD,eAAO,MAAM,mBAAmB,EAAE,MAAM,CACtC,MAAM,EACN,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,CAsEzD,CAAC;AAEF,sFAAsF;AACtF,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,EACjE,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GACnC,MAAM,EAAE,CAKV;AAED,qEAAqE;AACrE,wBAAsB,sBAAsB,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAMjF"}
1
+ {"version":3,"file":"entry-handlers.d.ts","sourceRoot":"","sources":["../../src/revalidation/entry-handlers.ts"],"names":[],"mappings":"AA6BA,MAAM,WAAW,QAAQ;IACvB,GAAG,EAAE;QACH,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,OAAO,GAAG,cAAc,GAAG,OAAO,GAAG,cAAc,CAAC;QAC1D,KAAK,EAAE;YAAE,GAAG,EAAE;gBAAE,EAAE,EAAE,MAAM,CAAA;aAAE,CAAA;SAAE,CAAC;QAC/B,WAAW,EAAE;YAAE,GAAG,EAAE;gBAAE,EAAE,EAAE,MAAM,CAAA;aAAE,CAAA;SAAE,CAAC;QACrC,WAAW,EAAE;YAAE,GAAG,EAAE;gBAAE,EAAE,EAAE,MAAM,CAAA;aAAE,CAAA;SAAE,CAAC;KACtC,CAAC;CACH;AAkFD,MAAM,WAAW,mBAAmB,CAAC,KAAK,SAAS,QAAQ,EAAE,UAAU;IACrE,OAAO,CAAC,IAAI,EAAE,KAAK,GAAG,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IACvD,QAAQ,CAAC,SAAS,EAAE,UAAU,GAAG,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE,GAAG,SAAS,CAAC;IACpE,aAAa,IAAI,MAAM,EAAE,CAAC;IAC1B;;;;;OAKG;IACH,cAAc,CAAC,IAAI,MAAM,EAAE,CAAC;IAC5B,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAgED,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,GAAG,EAAE,GAAG,CAAC,CA2E7E,CAAC;AAEF,sFAAsF;AACtF,wBAAgB,4BAA4B,CAE1C,OAAO,EAAE,mBAAmB,CAAC,GAAG,EAAE,GAAG,CAAC,EAEtC,SAAS,EAAE,GAAG,GACb,MAAM,EAAE,CAOV;AAED,qEAAqE;AACrE,wBAAsB,sBAAsB,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAMjF"}
@@ -8,31 +8,46 @@ const articleTypeHandler = {
8
8
  getGlobalTags: () => [ArticleTypeTag, ArticleTypeIndexTag],
9
9
  getCascadeTags: () => [ArticleTag],
10
10
  };
11
- const articleHandler = {
12
- extract: (data) => ({
11
+ function extractSlugWithPrevious(data) {
12
+ return {
13
13
  slug: data.fields?.slug?.[defaultLocale],
14
- }),
15
- makeTags: (extracted) => [extracted?.slug ? articleTag(extracted.slug) : undefined],
14
+ previousSlug: data.previousFields?.slug?.[defaultLocale],
15
+ };
16
+ }
17
+ function slugChangeTags(extracted, tagFor) {
18
+ const tags = [extracted.slug ? tagFor(extracted.slug) : undefined];
19
+ if (extracted.previousSlug && extracted.previousSlug !== extracted.slug) {
20
+ tags.push(tagFor(extracted.previousSlug));
21
+ }
22
+ return tags;
23
+ }
24
+ const articleHandler = {
25
+ extract: extractSlugWithPrevious,
26
+ makeTags: (extracted) => slugChangeTags(extracted, articleTag),
16
27
  getGlobalTags: () => [ArticleTag],
17
28
  rebuildSearch: true,
18
29
  };
19
30
  const pageVariantHandler = {
20
- extract: (data) => data.fields?.slug?.[defaultLocale],
21
- makeTags: (extracted) => [extracted ? pageVariantTag(extracted) : undefined],
31
+ extract: extractSlugWithPrevious,
32
+ makeTags: (extracted) => slugChangeTags(extracted, pageVariantTag),
22
33
  getGlobalTags: () => [PageVariantTag],
23
34
  };
35
+ const pageHandler = {
36
+ extract: extractSlugWithPrevious,
37
+ makeTags: (extracted) => slugChangeTags(extracted, pageTag),
38
+ getGlobalTags: () => [PageTag],
39
+ };
24
40
  const templateHandler = {
25
41
  extract: (data) => data.fields?.cmsLabel?.[defaultLocale],
26
42
  makeTags: (extracted) => [extracted ? templateTag(extracted) : undefined],
27
43
  getGlobalTags: () => [TemplateTag],
28
44
  getCascadeTags: () => [PageTag, ArticleTag],
29
45
  };
46
+ // biome-ignore lint/suspicious/noExplicitAny: handlers use heterogeneous extract shapes
30
47
  export const contentTypeHandlers = {
31
- page: {
32
- extract: (data) => data.fields?.slug?.[defaultLocale],
33
- makeTags: (extracted) => [extracted ? pageTag(extracted) : undefined],
34
- getGlobalTags: () => [PageTag],
35
- },
48
+ // biome-ignore lint/suspicious/noExplicitAny: page extract is SlugExtract
49
+ page: pageHandler,
50
+ // biome-ignore lint/suspicious/noExplicitAny: pageVariant extract is SlugExtract
36
51
  pageVariant: pageVariantHandler,
37
52
  // biome-ignore lint/suspicious/noExplicitAny: Any is ok for handlers with different types
38
53
  article: articleHandler,
@@ -40,7 +55,9 @@ export const contentTypeHandlers = {
40
55
  articleType: articleTypeHandler,
41
56
  person: {
42
57
  extract: (data) => data.fields?.slug?.[defaultLocale],
43
- makeTags: (extracted) => [extracted ? personTag(extracted) : undefined],
58
+ makeTags: (extracted) => [
59
+ extracted ? personTag(extracted) : undefined,
60
+ ],
44
61
  getGlobalTags: () => [PersonTag],
45
62
  },
46
63
  tag: {
@@ -50,7 +67,9 @@ export const contentTypeHandlers = {
50
67
  },
51
68
  tagType: {
52
69
  extract: (data) => data.fields?.slug?.[defaultLocale],
53
- makeTags: (extracted) => [extracted ? tagTypeTag(extracted) : undefined],
70
+ makeTags: (extracted) => [
71
+ extracted ? tagTypeTag(extracted) : undefined,
72
+ ],
54
73
  getGlobalTags: () => [TagTypeTag],
55
74
  },
56
75
  link: {
@@ -83,7 +102,9 @@ export const contentTypeHandlers = {
83
102
  },
84
103
  document: {
85
104
  extract: (data) => data.fields?.slug?.[defaultLocale],
86
- makeTags: (extracted) => [extracted ? `document#${extracted}` : undefined],
105
+ makeTags: (extracted) => [
106
+ extracted ? `document#${extracted}` : undefined,
107
+ ],
87
108
  getGlobalTags: () => [DocumentTag],
88
109
  },
89
110
  redirect: {
@@ -93,13 +114,21 @@ export const contentTypeHandlers = {
93
114
  },
94
115
  location: {
95
116
  extract: (data) => data.fields?.slug?.[defaultLocale],
96
- makeTags: (extracted) => [extracted ? locationTag(extracted) : undefined],
117
+ makeTags: (extracted) => [
118
+ extracted ? locationTag(extracted) : undefined,
119
+ ],
97
120
  getGlobalTags: () => [LocationTag],
98
121
  },
99
122
  };
100
123
  /** Merge individual, collection, and coarse cascade tags for publish revalidation. */
101
- export function collectPublishTagsForHandler(handler, extracted) {
102
- const individual = handler.makeTags(extracted)?.filter((tag) => tag !== undefined) ?? [];
124
+ export function collectPublishTagsForHandler(
125
+ // biome-ignore lint/suspicious/noExplicitAny: heterogeneous extract shapes across handlers
126
+ handler,
127
+ // biome-ignore lint/suspicious/noExplicitAny: string | SlugExtract | objects
128
+ extracted) {
129
+ const individual = handler
130
+ .makeTags(extracted)
131
+ ?.filter((tag) => tag !== undefined) ?? [];
103
132
  const cascade = handler.getCascadeTags?.() ?? [];
104
133
  return [...new Set([...individual, ...handler.getGlobalTags(), ...cascade])];
105
134
  }
@@ -1 +1 @@
1
- {"version":3,"file":"entry-handlers.js","sourceRoot":"","sources":["../../src/revalidation/entry-handlers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"entry-handlers.js","sourceRoot":"","sources":["../../src/revalidation/entry-handlers.ts"],"names":[],"mappings":"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"}
@@ -7,8 +7,13 @@ export interface RevalidationConfig {
7
7
  secret?: string;
8
8
  /** Whether to validate the secret */
9
9
  validateSecret?: boolean;
10
- /** Whether to run in preview mode */
10
+ /** Whether to run in preview mode (DRAFT_ONLY / always-preview deploys) */
11
11
  preview?: boolean;
12
+ /**
13
+ * Site-only cache tags revalidated on REVALIDATE_ALL (after GlobalTag + AllTags).
14
+ * Prefer core AllTags for shared tags (e.g. hubspot-forms is already included).
15
+ */
16
+ extraTags?: string[];
12
17
  }
13
18
  /**
14
19
  * Create a Next.js API route handler for Contentful revalidation
@@ -24,6 +29,8 @@ export interface RevalidationConfig {
24
29
  * export const POST = createRevalidationHandler({
25
30
  * secret: process.env.REVALIDATION_SECRET,
26
31
  * validateSecret: true,
32
+ * preview: process.env.DRAFT_ONLY === 'true',
33
+ * // extraTags: ['my-site-only-tag'],
27
34
  * });
28
35
  * ```
29
36
  */
@@ -1 +1 @@
1
- {"version":3,"file":"nextjs-route.d.ts","sourceRoot":"","sources":["../../src/revalidation/nextjs-route.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,WAAW,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAG7D;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,6CAA6C;IAC7C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,qCAAqC;IACrC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,qCAAqC;IACrC,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,yBAAyB,CACvC,MAAM,GAAE,kBAAuB,GAC9B,CAAC,OAAO,EAAE,WAAW,KAAK,OAAO,CAAC,YAAY,CAAC,CAejD"}
1
+ {"version":3,"file":"nextjs-route.d.ts","sourceRoot":"","sources":["../../src/revalidation/nextjs-route.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,WAAW,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAG7D;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,6CAA6C;IAC7C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,qCAAqC;IACrC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,2EAA2E;IAC3E,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;CACtB;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,yBAAyB,CACvC,MAAM,GAAE,kBAAuB,GAC9B,CAAC,OAAO,EAAE,WAAW,KAAK,OAAO,CAAC,YAAY,CAAC,CAejD"}
@@ -14,12 +14,14 @@ import { handleRevalidation } from './route.js';
14
14
  * export const POST = createRevalidationHandler({
15
15
  * secret: process.env.REVALIDATION_SECRET,
16
16
  * validateSecret: true,
17
+ * preview: process.env.DRAFT_ONLY === 'true',
18
+ * // extraTags: ['my-site-only-tag'],
17
19
  * });
18
20
  * ```
19
21
  */
20
22
  export function createRevalidationHandler(config = {}) {
21
23
  return async function POST(request) {
22
- const { secret, validateSecret = true, preview = false } = config;
24
+ const { secret, validateSecret = true, preview = false, extraTags = [] } = config;
23
25
  // Validate secret if required
24
26
  if (validateSecret && secret) {
25
27
  const requestSecret = request.headers.get('REVALIDATION_SECRET');
@@ -28,7 +30,7 @@ export function createRevalidationHandler(config = {}) {
28
30
  }
29
31
  }
30
32
  // Handle the revalidation
31
- return await handleRevalidation(request, preview);
33
+ return await handleRevalidation(request, preview, extraTags);
32
34
  };
33
35
  }
34
36
  //# sourceMappingURL=nextjs-route.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"nextjs-route.js","sourceRoot":"","sources":["../../src/revalidation/nextjs-route.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,YAAY,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAc7C;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,yBAAyB,CACvC,SAA6B,EAAE;IAE/B,OAAO,KAAK,UAAU,IAAI,CAAC,OAAoB;QAC7C,MAAM,EAAE,MAAM,EAAE,cAAc,GAAG,IAAI,EAAE,OAAO,GAAG,KAAK,EAAE,GAAG,MAAM,CAAC;QAElE,8BAA8B;QAC9B,IAAI,cAAc,IAAI,MAAM,EAAE,CAAC;YAC7B,MAAM,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;YACjE,IAAI,aAAa,KAAK,MAAM,EAAE,CAAC;gBAC7B,OAAO,YAAY,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;YAC3E,CAAC;QACH,CAAC;QAED,0BAA0B;QAC1B,OAAO,MAAM,kBAAkB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACpD,CAAC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"nextjs-route.js","sourceRoot":"","sources":["../../src/revalidation/nextjs-route.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,YAAY,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAmB7C;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,yBAAyB,CACvC,SAA6B,EAAE;IAE/B,OAAO,KAAK,UAAU,IAAI,CAAC,OAAoB;QAC7C,MAAM,EAAE,MAAM,EAAE,cAAc,GAAG,IAAI,EAAE,OAAO,GAAG,KAAK,EAAE,SAAS,GAAG,EAAE,EAAE,GAAG,MAAM,CAAC;QAElF,8BAA8B;QAC9B,IAAI,cAAc,IAAI,MAAM,EAAE,CAAC;YAC7B,MAAM,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;YACjE,IAAI,aAAa,KAAK,MAAM,EAAE,CAAC;gBAC7B,OAAO,YAAY,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;YAC3E,CAAC;QACH,CAAC;QAED,0BAA0B;QAC1B,OAAO,MAAM,kBAAkB,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;IAC/D,CAAC,CAAC;AACJ,CAAC"}
@@ -1,3 +1,3 @@
1
1
  import { NextResponse } from 'next/server';
2
- export declare function handleRevalidation(request: Request, preview?: boolean): Promise<NextResponse>;
2
+ export declare function handleRevalidation(request: Request, preview?: boolean, extraTags?: string[]): Promise<NextResponse>;
3
3
  //# sourceMappingURL=route.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../src/revalidation/route.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAkE3C,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,OAAO,EAChB,OAAO,GAAE,OAAe,GACvB,OAAO,CAAC,YAAY,CAAC,CAgDvB"}
1
+ {"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../src/revalidation/route.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAiE3C,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,OAAO,EAChB,OAAO,GAAE,OAAe,EACxB,SAAS,GAAE,MAAM,EAAO,GACvB,OAAO,CAAC,YAAY,CAAC,CAgDvB"}
@@ -3,7 +3,7 @@
3
3
  import { NextResponse } from 'next/server';
4
4
  import { contentTypeHandlers, revalidateAsset, revalidateDeletedAsset, revalidateDeletedEntry, revalidateEntry, } from './handlers.js';
5
5
  import { revalidateSingleTag } from './server-utils.js';
6
- import { AllTags, GlobalTag } from './tags.js';
6
+ import { collectRevalidateAllTags } from './tags.js';
7
7
  // Handle asset publishing
8
8
  async function publishAsset(content, preview) {
9
9
  return await revalidateAsset(content, 'publish asset', preview);
@@ -33,17 +33,15 @@ async function deleteEntry(content, preview) {
33
33
  return success;
34
34
  }
35
35
  // Revalidate all tags (for global revalidation)
36
- async function revalidateAll(preview) {
36
+ async function revalidateAll(extraTags = []) {
37
37
  if (process.env.LOG_CMS)
38
38
  console.log('Revalidating all tags');
39
39
  await delay(500);
40
- if (preview) {
41
- await revalidateSingleTag(GlobalTag, 'global revalidation');
42
- }
43
- else {
44
- for (const tag of AllTags) {
45
- await revalidateSingleTag(tag, 'global revalidation');
46
- }
40
+ // Always clear draft/preview Data Cache (`global`) and every collection tag,
41
+ // plus any site-only extras (deduped). Independent of preview flag so DRAFT_ONLY
42
+ // and production bulk revalidate the same known set.
43
+ for (const tag of collectRevalidateAllTags(extraTags)) {
44
+ await revalidateSingleTag(tag, 'global revalidation');
47
45
  }
48
46
  // Note: Search rebuild logic would go here if needed
49
47
  return true;
@@ -53,13 +51,13 @@ function delay(ms) {
53
51
  return new Promise((resolve) => setTimeout(resolve, ms));
54
52
  }
55
53
  // Main revalidation handler function
56
- export async function handleRevalidation(request, preview = false) {
54
+ export async function handleRevalidation(request, preview = false, extraTags = []) {
57
55
  try {
58
56
  // Check for global revalidation header
59
57
  const all = request.headers.get('REVALIDATE_ALL');
60
58
  const single = request.headers.get('REVALIDATION_TAG');
61
59
  if (all) {
62
- const success = await revalidateAll(preview);
60
+ const success = await revalidateAll(extraTags);
63
61
  return NextResponse.json({ revalidated: success, now: Date.now() }, { status: 200 });
64
62
  }
65
63
  if (single) {
@@ -1 +1 @@
1
- {"version":3,"file":"route.js","sourceRoot":"","sources":["../../src/revalidation/route.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"route.js","sourceRoot":"","sources":["../../src/revalidation/route.ts"],"names":[],"mappings":"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"}
@@ -101,4 +101,10 @@ export declare function redirectTag(): string;
101
101
  * All collection-level cache tags for global revalidation
102
102
  */
103
103
  export declare const AllTags: string[];
104
+ /**
105
+ * Ordered unique tags for REVALIDATE_ALL:
106
+ * draft/preview Data Cache (`global`), every collection tag, then site-only extras.
107
+ * Dedupe so callers can pass tags already in {@link AllTags} without double work.
108
+ */
109
+ export declare function collectRevalidateAllTags(extraTags?: string[]): string[];
104
110
  //# sourceMappingURL=tags.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tags.d.ts","sourceRoot":"","sources":["../../src/revalidation/tags.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,eAAO,MAAM,OAAO,SAAS,CAAC;AAC9B,eAAO,MAAM,UAAU,YAAY,CAAC;AACpC,eAAO,MAAM,cAAc,gBAAgB,CAAC;AAC5C,eAAO,MAAM,mBAAmB,qBAAqB,CAAC;AACtD,eAAO,MAAM,aAAa,eAAe,CAAC;AAC1C,eAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,eAAO,MAAM,UAAU,YAAY,CAAC;AACpC,eAAO,MAAM,OAAO,SAAS,CAAC;AAC9B,eAAO,MAAM,SAAS,WAAW,CAAC;AAClC,eAAO,MAAM,QAAQ,UAAU,CAAC;AAChC,eAAO,MAAM,WAAW,aAAa,CAAC;AACtC,eAAO,MAAM,aAAa,eAAe,CAAC;AAC1C,eAAO,MAAM,iBAAiB,mBAAmB,CAAC;AAClD,eAAO,MAAM,SAAS,WAAW,CAAC;AAClC,eAAO,MAAM,WAAW,aAAa,CAAC;AACtC,eAAO,MAAM,WAAW,aAAa,CAAC;AACtC,eAAO,MAAM,WAAW,aAAa,CAAC;AACtC,eAAO,MAAM,cAAc,gBAAgB,CAAC;AAG5C,eAAO,MAAM,SAAS,WAAW,CAAC;AAElC;;;;GAIG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE5C;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEnD;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE/C;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEnD;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAExD;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAElD;AAED;;;;GAIG;AACH,wBAAgB,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE3C;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE/C;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE9C;AAED;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAEhD;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEjD;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEhD;AAED;;;GAGG;AACH,wBAAgB,WAAW,IAAI,MAAM,CAEpC;AAED;;GAEG;AACH,eAAO,MAAM,OAAO,UAoBnB,CAAC"}
1
+ {"version":3,"file":"tags.d.ts","sourceRoot":"","sources":["../../src/revalidation/tags.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,eAAO,MAAM,OAAO,SAAS,CAAC;AAC9B,eAAO,MAAM,UAAU,YAAY,CAAC;AACpC,eAAO,MAAM,cAAc,gBAAgB,CAAC;AAC5C,eAAO,MAAM,mBAAmB,qBAAqB,CAAC;AACtD,eAAO,MAAM,aAAa,eAAe,CAAC;AAC1C,eAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,eAAO,MAAM,UAAU,YAAY,CAAC;AACpC,eAAO,MAAM,OAAO,SAAS,CAAC;AAC9B,eAAO,MAAM,SAAS,WAAW,CAAC;AAClC,eAAO,MAAM,QAAQ,UAAU,CAAC;AAChC,eAAO,MAAM,WAAW,aAAa,CAAC;AACtC,eAAO,MAAM,aAAa,eAAe,CAAC;AAC1C,eAAO,MAAM,iBAAiB,mBAAmB,CAAC;AAClD,eAAO,MAAM,SAAS,WAAW,CAAC;AAClC,eAAO,MAAM,WAAW,aAAa,CAAC;AACtC,eAAO,MAAM,WAAW,aAAa,CAAC;AACtC,eAAO,MAAM,WAAW,aAAa,CAAC;AACtC,eAAO,MAAM,cAAc,gBAAgB,CAAC;AAG5C,eAAO,MAAM,SAAS,WAAW,CAAC;AAElC;;;;GAIG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE5C;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEnD;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE/C;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEnD;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAExD;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAElD;AAED;;;;GAIG;AACH,wBAAgB,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE3C;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE/C;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE9C;AAED;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAEhD;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEjD;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEhD;AAED;;;GAGG;AACH,wBAAgB,WAAW,IAAI,MAAM,CAEpC;AAED;;GAEG;AACH,eAAO,MAAM,OAAO,UAoBnB,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,SAAS,GAAE,MAAM,EAAO,GAAG,MAAM,EAAE,CAE3E"}
@@ -149,4 +149,12 @@ export const AllTags = [
149
149
  LocationTag,
150
150
  'hubspot-forms', // Legacy bulk tag; prefer hubspot-form#{formId} from @se-studio/hubspot
151
151
  ];
152
+ /**
153
+ * Ordered unique tags for REVALIDATE_ALL:
154
+ * draft/preview Data Cache (`global`), every collection tag, then site-only extras.
155
+ * Dedupe so callers can pass tags already in {@link AllTags} without double work.
156
+ */
157
+ export function collectRevalidateAllTags(extraTags = []) {
158
+ return [...new Set([GlobalTag, ...AllTags, ...extraTags])];
159
+ }
152
160
  //# sourceMappingURL=tags.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tags.js","sourceRoot":"","sources":["../../src/revalidation/tags.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tags.js","sourceRoot":"","sources":["../../src/revalidation/tags.ts"],"names":[],"mappings":"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"}
package/docs/llms.md CHANGED
@@ -223,27 +223,53 @@ Base converters available:
223
223
 
224
224
  ### Context extension points
225
225
 
226
- `BaseConverterContext` has two optional resolver hooks for project-specific visual features:
226
+ `BaseConverterContext` has optional resolver hooks for project-specific behaviour:
227
227
 
228
228
  - `maskResolver?: (maskName: string) => string | undefined` — maps a CMS mask dropdown value to a CSS mask URL or Tailwind class string, stored as `IVisual.mask`
229
229
  - `gradientResolver?: (gradientName: string) => string | undefined` — maps a CMS gradient dropdown value to a CSS gradient string (e.g. `linear-gradient(...)`), stored as `IVisual.gradient` and rendered as an overlay div on top of the visual
230
+ - `previewEntryResolvers?: Readonly<Record<string, PreviewEntryResolver>>` — maps Contentful content type ids to Live Preview URL resolvers for **customer page-like types** not built into core (e.g. HSD `location` → `/drive/{slug}/`). Built-in types always win; extensions only run on unknown content types.
230
231
 
231
232
  ```ts
232
- const context = createBaseConverterContext();
233
+ const context = createBaseConverterContext(urlCalculators);
233
234
  context.maskResolver = (name) => maskMap[name];
234
235
  context.gradientResolver = (name) => gradientMap[name];
236
+ context.previewEntryResolvers = {
237
+ location: slugPreviewResolver('location', (slug) => `/drive/${slug}/`),
238
+ };
235
239
  ```
236
240
 
237
241
  ## Preview
238
242
 
239
243
  ```ts
240
- import { getPreviewEntryInfo } from '@se-studio/contentful-rest-api';
244
+ import {
245
+ createBaseConverterContext,
246
+ getPreviewEntryInfo,
247
+ slugPreviewResolver,
248
+ type PreviewEntryResolver,
249
+ } from '@se-studio/contentful-rest-api';
241
250
 
242
- // Returns entry ID, content type, and field info for Contentful live preview
243
- const info = await getPreviewEntryInfo(config, entryId);
251
+ const context = createBaseConverterContext(urlCalculators);
252
+
253
+ // Built-in: page, pageVariant, pageTest, article, articleType, tag, person, customType
254
+ const info = await getPreviewEntryInfo(context, config, entryId);
255
+ // info: { contentType, entryId, slug, href, articleTypeSlug? } | null
256
+
257
+ // Custom page-like types (do not hardcode customer types in core):
258
+ context.previewEntryResolvers = {
259
+ location: slugPreviewResolver('location', (slug) => `/drive/${slug}/`),
260
+ // Or full control — receives fields, includes (include: 1), urlCalculators:
261
+ locationShell: ({ entryId, fields, includes, urlCalculators }) => {
262
+ /* resolve linked entry, return PreviewEntryInfo | null */
263
+ return null;
264
+ },
265
+ };
266
+
267
+ const locationInfo = await getPreviewEntryInfo(context, config, locationEntryId);
244
268
  ```
245
269
 
246
- Supported types: `page`, `pageVariant`, `pageTest` (redirects to linked control `page` or `pageVariant`), `article`, `articleType`, `tag`, `person`, `customType`.
270
+ **Built-in content types:** `page`, `pageVariant`, `pageTest` (redirects to linked control `page` or `pageVariant`), `article`, `articleType`, `tag`, `person`, `customType`.
271
+
272
+ **Custom types:** register via `context.previewEntryResolvers[contentTypeId]`. Prefer `slugPreviewResolver(contentType, toHref)` when only `fields.slug` is needed. Return type is always `PreviewEntryInfo | null`.
247
273
 
248
274
  ## Error Handling
249
275
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@se-studio/contentful-rest-api",
3
- "version": "1.17.2",
3
+ "version": "1.18.0",
4
4
  "description": "Type-safe Contentful REST API client with caching and rate limiting for Next.js applications",
5
5
  "repository": {
6
6
  "type": "git",