@se-studio/contentful-rest-api 1.23.0 → 1.25.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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,22 @@
1
1
  # @se-studio/contentful-rest-api
2
2
 
3
+ ## 1.25.0
4
+
5
+ ### Minor Changes
6
+
7
+ - 8e94be2: Support Next.js 16.3 while remaining compatible with Next.js 15.5 (peer `>=15.5.0 <17`). CMS webhooks call `revalidateTag(tag, { expire: 0 })` so published content is not served stale. Template apps use `proxy.ts` on Next 16. Not-found metadata uses `title.absolute` so layout `title.template` does not produce duplicated site names.
8
+
9
+ ## 1.24.0
10
+
11
+ ### Minor Changes
12
+
13
+ - f6a7b89: Add Person profile fields for author/expert pages: quote, website, expertise (Tag links), and publishedIn (rich text). Migration 27 also adds twitter and alumniOf on spaces that still lack them.
14
+
15
+ ### Patch Changes
16
+
17
+ - Updated dependencies [f6a7b89]
18
+ - @se-studio/core-data-types@1.12.0
19
+
3
20
  ## 1.23.0
4
21
 
5
22
  ### Minor Changes
@@ -48,7 +48,7 @@ export declare const ARTICLE_LISTING_FIELDS = "sys,fields.cmsLabel,fields.title,
48
48
  export declare const ARTICLE_LINK_FIELDS = "sys,fields.cmsLabel,fields.title,fields.subtitle,fields.slug,fields.breadcrumbTitle,fields.featuredImage,fields.backgroundColour,fields.textColour,fields.indexed,fields.hidden,fields.tags,fields.articleType,fields.date,fields.author,fields.authors,fields.externalLink,fields.download,fields.visuals,fields.description,fields.summary,fields.icon,fields.topContent,fields.content,fields.bottomContent";
49
49
  export declare const ARTICLE_TYPE_LINK_FIELDS = "sys,fields.name,fields.slug,fields.breadcrumbTitle,fields.featuredImage,fields.backgroundColour,fields.textColour,fields.indexed,fields.hidden";
50
50
  export declare const TAG_LINK_FIELDS = "sys,fields.cmsLabel,fields.name,fields.slug,fields.breadcrumbTitle,fields.featuredImage,fields.backgroundColour,fields.textColour,fields.indexed,fields.hidden,fields.show,fields.tagType";
51
- export declare const PERSON_LINK_FIELDS = "sys,fields.name,fields.slug,fields.media,fields.bio,fields.jobTitle,fields.phoneNumber,fields.emailAddress,fields.location,fields.linkedIn,fields.backgroundColour,fields.textColour,fields.indexed,fields.hidden";
51
+ export declare const PERSON_LINK_FIELDS = "sys,fields.name,fields.slug,fields.media,fields.bio,fields.jobTitle,fields.phoneNumber,fields.emailAddress,fields.location,fields.linkedIn,fields.twitter,fields.website,fields.quote,fields.backgroundColour,fields.textColour,fields.indexed,fields.hidden";
52
52
  export declare const CUSTOM_TYPE_LINK_FIELDS = "sys,fields.name,fields.slug,fields.breadcrumbTitle,fields.featuredImage,fields.backgroundColour,fields.textColour,fields.indexed,fields.hidden,fields.indexPageName";
53
53
  /** Fields present on every tagType schema (see BaseTagTypeSkeleton). */
54
54
  export declare const TAG_TYPE_MINIMAL_FIELDS = "sys,fields.name,fields.show";
@@ -1 +1 @@
1
- {"version":3,"file":"listing-fetch-params.d.ts","sourceRoot":"","sources":["../../src/api/listing-fetch-params.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAEpF;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,kFAAkF;AAClF,MAAM,MAAM,cAAc,GACtB,MAAM,GACN,SAAS,GACT,aAAa,GACb,KAAK,GACL,SAAS,GACT,QAAQ,GACR,YAAY,CAAC;AAEjB,MAAM,WAAW,wBAAwB;IACvC,iBAAiB,EAAE,OAAO,CAAC;IAC3B,eAAe,EAAE,OAAO,CAAC;CAC1B;AAED,eAAO,MAAM,qBAAqB,EAAE,wBAGnC,CAAC;AAEF,eAAO,MAAM,wBAAwB,EAAE,wBAGtC,CAAC;AAEF,6FAA6F;AAC7F,eAAO,MAAM,kBAAkB,EAAE,wBAGhC,CAAC;AAEF,wBAAgB,kBAAkB,CAChC,OAAO,GAAE,eAAwB,EACjC,oBAAoB,GAAE,oBAAgC,GACrD,wBAAwB,CAQ1B;AAED,wBAAgB,6BAA6B,CAC3C,OAAO,EAAE,IAAI,CAAC,YAAY,EAAE,cAAc,GAAG,sBAAsB,CAAC,GACnE,wBAAwB,CAK1B;AAsBD,uGAAuG;AACvG,eAAO,MAAM,gCAAgC,IAAI,CAAC;AAElD;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,WAAW,EAAE,cAAc,EAC3B,OAAO,GAAE,eAAwB,GAChC,MAAM,CAGR;AAED,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,cAAc,EAC3B,OAAO,EAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,eAAe,CAAA;CAAE,EAC7D,eAAe,CAAC,EAAE,MAAM,GACvB,MAAM,CAQR;AAED,eAAO,MAAM,gBAAgB,gLACkJ,CAAC;AAEhL,eAAO,MAAM,sBAAsB,6VACyT,CAAC;AAE7V,kHAAkH;AAClH,eAAO,MAAM,mBAAmB,mZAAoF,CAAC;AAErH,eAAO,MAAM,wBAAwB,mJAC6G,CAAC;AAEnJ,eAAO,MAAM,eAAe,8LACiK,CAAC;AAE9L,eAAO,MAAM,kBAAkB,sNACsL,CAAC;AAEtN,eAAO,MAAM,uBAAuB,wKACmI,CAAC;AAExK,wEAAwE;AACxE,eAAO,MAAM,uBAAuB,gCAAgC,CAAC;AAErE,sGAAsG;AACtG,eAAO,MAAM,oBAAoB,4CAA4C,CAAC;AAE9E,6FAA6F;AAC7F,eAAO,MAAM,kBAAkB,iNAA0C,CAAC;AAE1E,eAAO,MAAM,2BAA2B,6KACoI,CAAC;AAE7K,eAAO,MAAM,0BAA0B,6KACqI,CAAC;AAE7K,eAAO,MAAM,uBAAuB,gCAA0B,CAAC;AAE/D,eAAO,MAAM,mBAAmB,gKAC+H,CAAC;AAEhK,eAAO,MAAM,6BAA6B,wPAC6M,CAAC;AAExP,eAAO,MAAM,qBAAqB,uJACoH,CAAC;AAEvJ,wBAAgB,yBAAyB,CAAC,WAAW,EAAE,cAAc,GAAG;IACtE,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACjB,CAqBA;AAED,wBAAgB,4BAA4B,CAAC,WAAW,EAAE,cAAc,GAAG,MAAM,GAAG,SAAS,CAmB5F"}
1
+ {"version":3,"file":"listing-fetch-params.d.ts","sourceRoot":"","sources":["../../src/api/listing-fetch-params.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAEpF;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,kFAAkF;AAClF,MAAM,MAAM,cAAc,GACtB,MAAM,GACN,SAAS,GACT,aAAa,GACb,KAAK,GACL,SAAS,GACT,QAAQ,GACR,YAAY,CAAC;AAEjB,MAAM,WAAW,wBAAwB;IACvC,iBAAiB,EAAE,OAAO,CAAC;IAC3B,eAAe,EAAE,OAAO,CAAC;CAC1B;AAED,eAAO,MAAM,qBAAqB,EAAE,wBAGnC,CAAC;AAEF,eAAO,MAAM,wBAAwB,EAAE,wBAGtC,CAAC;AAEF,6FAA6F;AAC7F,eAAO,MAAM,kBAAkB,EAAE,wBAGhC,CAAC;AAEF,wBAAgB,kBAAkB,CAChC,OAAO,GAAE,eAAwB,EACjC,oBAAoB,GAAE,oBAAgC,GACrD,wBAAwB,CAQ1B;AAED,wBAAgB,6BAA6B,CAC3C,OAAO,EAAE,IAAI,CAAC,YAAY,EAAE,cAAc,GAAG,sBAAsB,CAAC,GACnE,wBAAwB,CAK1B;AAsBD,uGAAuG;AACvG,eAAO,MAAM,gCAAgC,IAAI,CAAC;AAElD;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,WAAW,EAAE,cAAc,EAC3B,OAAO,GAAE,eAAwB,GAChC,MAAM,CAGR;AAED,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,cAAc,EAC3B,OAAO,EAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,eAAe,CAAA;CAAE,EAC7D,eAAe,CAAC,EAAE,MAAM,GACvB,MAAM,CAQR;AAED,eAAO,MAAM,gBAAgB,gLACkJ,CAAC;AAEhL,eAAO,MAAM,sBAAsB,6VACyT,CAAC;AAE7V,kHAAkH;AAClH,eAAO,MAAM,mBAAmB,mZAAoF,CAAC;AAErH,eAAO,MAAM,wBAAwB,mJAC6G,CAAC;AAEnJ,eAAO,MAAM,eAAe,8LACiK,CAAC;AAE9L,eAAO,MAAM,kBAAkB,iQACiO,CAAC;AAEjQ,eAAO,MAAM,uBAAuB,wKACmI,CAAC;AAExK,wEAAwE;AACxE,eAAO,MAAM,uBAAuB,gCAAgC,CAAC;AAErE,sGAAsG;AACtG,eAAO,MAAM,oBAAoB,4CAA4C,CAAC;AAE9E,6FAA6F;AAC7F,eAAO,MAAM,kBAAkB,iNAA0C,CAAC;AAE1E,eAAO,MAAM,2BAA2B,6KACoI,CAAC;AAE7K,eAAO,MAAM,0BAA0B,6KACqI,CAAC;AAE7K,eAAO,MAAM,uBAAuB,gCAA0B,CAAC;AAE/D,eAAO,MAAM,mBAAmB,gKAC+H,CAAC;AAEhK,eAAO,MAAM,6BAA6B,wPAC6M,CAAC;AAExP,eAAO,MAAM,qBAAqB,uJACoH,CAAC;AAEvJ,wBAAgB,yBAAyB,CAAC,WAAW,EAAE,cAAc,GAAG;IACtE,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACjB,CAqBA;AAED,wBAAgB,4BAA4B,CAAC,WAAW,EAAE,cAAc,GAAG,MAAM,GAAG,SAAS,CAmB5F"}
@@ -65,7 +65,7 @@ export const ARTICLE_LISTING_FIELDS = 'sys,fields.cmsLabel,fields.title,fields.s
65
65
  export const ARTICLE_LINK_FIELDS = `${ARTICLE_LISTING_FIELDS},fields.topContent,fields.content,fields.bottomContent`;
66
66
  export const ARTICLE_TYPE_LINK_FIELDS = 'sys,fields.name,fields.slug,fields.breadcrumbTitle,fields.featuredImage,fields.backgroundColour,fields.textColour,fields.indexed,fields.hidden';
67
67
  export const TAG_LINK_FIELDS = 'sys,fields.cmsLabel,fields.name,fields.slug,fields.breadcrumbTitle,fields.featuredImage,fields.backgroundColour,fields.textColour,fields.indexed,fields.hidden,fields.show,fields.tagType';
68
- export const PERSON_LINK_FIELDS = 'sys,fields.name,fields.slug,fields.media,fields.bio,fields.jobTitle,fields.phoneNumber,fields.emailAddress,fields.location,fields.linkedIn,fields.backgroundColour,fields.textColour,fields.indexed,fields.hidden';
68
+ export const PERSON_LINK_FIELDS = 'sys,fields.name,fields.slug,fields.media,fields.bio,fields.jobTitle,fields.phoneNumber,fields.emailAddress,fields.location,fields.linkedIn,fields.twitter,fields.website,fields.quote,fields.backgroundColour,fields.textColour,fields.indexed,fields.hidden';
69
69
  export const CUSTOM_TYPE_LINK_FIELDS = 'sys,fields.name,fields.slug,fields.breadcrumbTitle,fields.featuredImage,fields.backgroundColour,fields.textColour,fields.indexed,fields.hidden,fields.indexPageName';
70
70
  /** Fields present on every tagType schema (see BaseTagTypeSkeleton). */
71
71
  export const TAG_TYPE_MINIMAL_FIELDS = 'sys,fields.name,fields.show';
@@ -1 +1 @@
1
- {"version":3,"file":"listing-fetch-params.js","sourceRoot":"","sources":["../../src/api/listing-fetch-params.ts"],"names":[],"mappings":"AAuCA,MAAM,CAAC,MAAM,qBAAqB,GAA6B;IAC7D,iBAAiB,EAAE,IAAI;IACvB,eAAe,EAAE,IAAI;CACtB,CAAC;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAA6B;IAChE,iBAAiB,EAAE,KAAK;IACxB,eAAe,EAAE,KAAK;CACvB,CAAC;AAEF,6FAA6F;AAC7F,MAAM,CAAC,MAAM,kBAAkB,GAA6B;IAC1D,iBAAiB,EAAE,KAAK;IACxB,eAAe,EAAE,IAAI;CACtB,CAAC;AAEF,MAAM,UAAU,kBAAkB,CAChC,UAA2B,MAAM,EACjC,uBAA6C,SAAS;IAEtD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,wBAAwB,CAAC;IAClC,CAAC;IACD,IAAI,oBAAoB,KAAK,MAAM,EAAE,CAAC;QACpC,OAAO,kBAAkB,CAAC;IAC5B,CAAC;IACD,OAAO,qBAAqB,CAAC;AAC/B,CAAC;AAED,MAAM,UAAU,6BAA6B,CAC3C,OAAoE;IAEpE,OAAO,kBAAkB,CACvB,OAAO,CAAC,YAAY,IAAI,MAAM,EAC9B,OAAO,CAAC,oBAAoB,IAAI,SAAS,CAC1C,CAAC;AACJ,CAAC;AAED,MAAM,qBAAqB,GAAmC;IAC5D,IAAI,EAAE,CAAC;IACP,OAAO,EAAE,CAAC;IACV,WAAW,EAAE,CAAC;IACd,GAAG,EAAE,CAAC;IACN,OAAO,EAAE,CAAC;IACV,MAAM,EAAE,CAAC;IACT,UAAU,EAAE,CAAC;CACd,CAAC;AAEF,MAAM,wBAAwB,GAAmC;IAC/D,IAAI,EAAE,CAAC;IACP,OAAO,EAAE,CAAC;IACV,WAAW,EAAE,CAAC;IACd,GAAG,EAAE,CAAC;IACN,OAAO,EAAE,CAAC;IACV,MAAM,EAAE,CAAC;IACT,UAAU,EAAE,CAAC;CACd,CAAC;AAEF,uGAAuG;AACvG,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC,CAAC;AAElD;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAC/B,WAA2B,EAC3B,UAA2B,MAAM;IAEjC,MAAM,KAAK,GAAG,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,qBAAqB,CAAC;IACvF,OAAO,KAAK,CAAC,WAAW,CAAC,CAAC;AAC5B,CAAC;AAED,MAAM,UAAU,mBAAmB,CACjC,WAA2B,EAC3B,OAA6D,EAC7D,eAAwB;IAExB,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QAClC,OAAO,OAAO,CAAC,OAAO,CAAC;IACzB,CAAC;IACD,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;QAClC,OAAO,eAAe,CAAC;IACzB,CAAC;IACD,OAAO,iBAAiB,CAAC,WAAW,EAAE,OAAO,CAAC,YAAY,IAAI,MAAM,CAAC,CAAC;AACxE,CAAC;AAED,MAAM,CAAC,MAAM,gBAAgB,GAC3B,6KAA6K,CAAC;AAEhL,MAAM,CAAC,MAAM,sBAAsB,GACjC,0VAA0V,CAAC;AAE7V,kHAAkH;AAClH,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,sBAAsB,wDAAwD,CAAC;AAErH,MAAM,CAAC,MAAM,wBAAwB,GACnC,gJAAgJ,CAAC;AAEnJ,MAAM,CAAC,MAAM,eAAe,GAC1B,2LAA2L,CAAC;AAE9L,MAAM,CAAC,MAAM,kBAAkB,GAC7B,mNAAmN,CAAC;AAEtN,MAAM,CAAC,MAAM,uBAAuB,GAClC,qKAAqK,CAAC;AAExK,wEAAwE;AACxE,MAAM,CAAC,MAAM,uBAAuB,GAAG,6BAA6B,CAAC;AAErE,sGAAsG;AACtG,MAAM,CAAC,MAAM,oBAAoB,GAAG,yCAAyC,CAAC;AAE9E,6FAA6F;AAC7F,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAG,eAAe,qBAAqB,CAAC;AAE1E,MAAM,CAAC,MAAM,2BAA2B,GACtC,0KAA0K,CAAC;AAE7K,MAAM,CAAC,MAAM,0BAA0B,GACrC,0KAA0K,CAAC;AAE7K,MAAM,CAAC,MAAM,uBAAuB,GAAG,uBAAuB,CAAC;AAE/D,MAAM,CAAC,MAAM,mBAAmB,GAC9B,6JAA6J,CAAC;AAEhK,MAAM,CAAC,MAAM,6BAA6B,GACxC,qPAAqP,CAAC;AAExP,MAAM,CAAC,MAAM,qBAAqB,GAChC,oJAAoJ,CAAC;AAEvJ,MAAM,UAAU,yBAAyB,CAAC,WAA2B;IAInE,QAAQ,WAAW,EAAE,CAAC;QACpB,KAAK,MAAM;YACT,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,OAAO,EAAE,wBAAwB,CAAC,IAAI,EAAE,CAAC;QAC9E,KAAK,SAAS;YACZ,OAAO,EAAE,MAAM,EAAE,sBAAsB,EAAE,OAAO,EAAE,wBAAwB,CAAC,OAAO,EAAE,CAAC;QACvF,KAAK,aAAa;YAChB,OAAO,EAAE,MAAM,EAAE,wBAAwB,EAAE,OAAO,EAAE,wBAAwB,CAAC,WAAW,EAAE,CAAC;QAC7F,KAAK,KAAK;YACR,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,OAAO,EAAE,wBAAwB,CAAC,GAAG,EAAE,CAAC;QAC5E,KAAK,QAAQ;YACX,OAAO,EAAE,MAAM,EAAE,kBAAkB,EAAE,OAAO,EAAE,wBAAwB,CAAC,MAAM,EAAE,CAAC;QAClF,KAAK,YAAY;YACf,OAAO,EAAE,MAAM,EAAE,uBAAuB,EAAE,OAAO,EAAE,wBAAwB,CAAC,UAAU,EAAE,CAAC;QAC3F,KAAK,SAAS;YACZ,OAAO,EAAE,MAAM,EAAE,oBAAoB,EAAE,OAAO,EAAE,wBAAwB,CAAC,OAAO,EAAE,CAAC;QACrF,OAAO,CAAC,CAAC,CAAC;YACR,MAAM,WAAW,GAAU,WAAW,CAAC;YACvC,OAAO,WAAW,CAAC;QACrB,CAAC;IACH,CAAC;AACH,CAAC;AAED,MAAM,UAAU,4BAA4B,CAAC,WAA2B;IACtE,QAAQ,WAAW,EAAE,CAAC;QACpB,KAAK,KAAK;YACR,OAAO,kBAAkB,CAAC;QAC5B,KAAK,aAAa;YAChB,OAAO,2BAA2B,CAAC;QACrC,KAAK,YAAY;YACf,OAAO,0BAA0B,CAAC;QACpC,KAAK,SAAS;YACZ,OAAO,uBAAuB,CAAC;QACjC,KAAK,MAAM;YACT,OAAO,mBAAmB,CAAC;QAC7B,KAAK,SAAS;YACZ,OAAO,6BAA6B,CAAC;QACvC,KAAK,QAAQ;YACX,OAAO,qBAAqB,CAAC;QAC/B;YACE,OAAO,SAAS,CAAC;IACrB,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"listing-fetch-params.js","sourceRoot":"","sources":["../../src/api/listing-fetch-params.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ import type { BaseExternalVideoSkeleton } from './baseExternalVideo';
3
3
  import type { BaseMediaSkeleton } from './baseMedia';
4
4
  import type { BaseSchemaSkeleton } from './baseSchema';
5
5
  import type { BaseContent } from './baseShared';
6
+ import type { BaseTagSkeleton } from './baseTag';
6
7
  interface BasePersonFields {
7
8
  /**
8
9
  * Field type definition for field 'name' (Name)
@@ -47,17 +48,45 @@ interface BasePersonFields {
47
48
  */
48
49
  linkedIn?: EntryFieldTypes.Symbol;
49
50
  /**
50
- * Field type definition for field 'twitter' (Twitter)
51
+ * Field type definition for field 'twitter' (Twitter / X)
51
52
  * @name Twitter
52
53
  * @localized false
53
54
  */
54
55
  twitter?: EntryFieldTypes.Symbol;
56
+ /**
57
+ * Field type definition for field 'website' (Website)
58
+ * Personal or professional site URL (schema sameAs).
59
+ * @name Website
60
+ * @localized false
61
+ */
62
+ website?: EntryFieldTypes.Symbol;
63
+ /**
64
+ * Field type definition for field 'quote' (Quote)
65
+ * Short first-person line for author/expert pages.
66
+ * @name Quote
67
+ * @localized false
68
+ */
69
+ quote?: EntryFieldTypes.Text;
55
70
  /**
56
71
  * Field type definition for field 'alumniOf' (Alumni of)
57
72
  * @name Alumni of
58
73
  * @localized false
59
74
  */
60
75
  alumniOf?: EntryFieldTypes.Array<EntryFieldTypes.Symbol>;
76
+ /**
77
+ * Field type definition for field 'expertise' (Expertise)
78
+ * Topic tags this person covers. Link existing Tag entries only.
79
+ * @name Expertise
80
+ * @localized false
81
+ */
82
+ expertise?: EntryFieldTypes.Array<EntryFieldTypes.EntryLink<BaseTagSkeleton>>;
83
+ /**
84
+ * Field type definition for field 'publishedIn' (Published in)
85
+ * Prior bylines and outlets (rich text so editors can add links).
86
+ * @name Published in
87
+ * @localized false
88
+ */
89
+ publishedIn?: EntryFieldTypes.RichText;
61
90
  /**
62
91
  * Field type definition for field 'media' (Media)
63
92
  * @name Media
@@ -1 +1 @@
1
- {"version":3,"file":"basePerson.d.ts","sourceRoot":"","sources":["../../src/baseTypes/basePerson.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AACrE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AACrE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEhD,UAAU,gBAAgB;IACxB;;;;OAIG;IACH,IAAI,EAAE,eAAe,CAAC,MAAM,CAAC;IAC7B;;;;OAIG;IACH,IAAI,EAAE,eAAe,CAAC,MAAM,CAAC;IAC7B;;;;OAIG;IACH,QAAQ,EAAE,eAAe,CAAC,MAAM,CAAC;IACjC;;;;OAIG;IACH,WAAW,CAAC,EAAE,eAAe,CAAC,IAAI,CAAC;IACnC;;;;OAIG;IACH,WAAW,CAAC,EAAE,eAAe,CAAC,MAAM,CAAC;IACrC;;;;OAIG;IACH,YAAY,CAAC,EAAE,eAAe,CAAC,MAAM,CAAC;IACtC;;;;OAIG;IACH,QAAQ,CAAC,EAAE,eAAe,CAAC,MAAM,CAAC;IAClC;;;;OAIG;IACH,OAAO,CAAC,EAAE,eAAe,CAAC,MAAM,CAAC;IACjC;;;;OAIG;IACH,QAAQ,CAAC,EAAE,eAAe,CAAC,KAAK,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;IACzD;;;;OAIG;IACH,KAAK,CAAC,EAAE,eAAe,CAAC,SAAS,CAAC;IAClC;;;;OAIG;IACH,QAAQ,CAAC,EAAE,eAAe,CAAC,MAAM,CAAC;IAClC;;;;OAIG;IACH,OAAO,CAAC,EAAE,eAAe,CAAC,KAAK,CAAC,eAAe,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC;IACxE;;;;OAIG;IACH,cAAc,CAAC,EAAE,eAAe,CAAC,KAAK,CAAC,eAAe,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC,CAAC;IACtF;;;;;OAKG;IACH,IAAI,CAAC,EAAE,eAAe,CAAC,IAAI,CAAC;IAC5B;;;;OAIG;IACH,OAAO,EAAE,eAAe,CAAC,OAAO,CAAC;IACjC;;;;OAIG;IACH,MAAM,EAAE,eAAe,CAAC,OAAO,CAAC;IAChC;;;;OAIG;IACH,GAAG,CAAC,EAAE,eAAe,CAAC,QAAQ,CAAC;IAC/B;;;;OAIG;IACH,UAAU,CAAC,EAAE,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC5C;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAClD;;;;OAIG;IACH,OAAO,CAAC,EAAE,eAAe,CAAC,KAAK,CAC7B,eAAe,CAAC,SAAS,CAAC,yBAAyB,GAAG,iBAAiB,CAAC,CACzE,CAAC;CACH;AAED,MAAM,MAAM,kBAAkB,GAAG,iBAAiB,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC"}
1
+ {"version":3,"file":"basePerson.d.ts","sourceRoot":"","sources":["../../src/baseTypes/basePerson.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AACrE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AACrE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAEjD,UAAU,gBAAgB;IACxB;;;;OAIG;IACH,IAAI,EAAE,eAAe,CAAC,MAAM,CAAC;IAC7B;;;;OAIG;IACH,IAAI,EAAE,eAAe,CAAC,MAAM,CAAC;IAC7B;;;;OAIG;IACH,QAAQ,EAAE,eAAe,CAAC,MAAM,CAAC;IACjC;;;;OAIG;IACH,WAAW,CAAC,EAAE,eAAe,CAAC,IAAI,CAAC;IACnC;;;;OAIG;IACH,WAAW,CAAC,EAAE,eAAe,CAAC,MAAM,CAAC;IACrC;;;;OAIG;IACH,YAAY,CAAC,EAAE,eAAe,CAAC,MAAM,CAAC;IACtC;;;;OAIG;IACH,QAAQ,CAAC,EAAE,eAAe,CAAC,MAAM,CAAC;IAClC;;;;OAIG;IACH,OAAO,CAAC,EAAE,eAAe,CAAC,MAAM,CAAC;IACjC;;;;;OAKG;IACH,OAAO,CAAC,EAAE,eAAe,CAAC,MAAM,CAAC;IACjC;;;;;OAKG;IACH,KAAK,CAAC,EAAE,eAAe,CAAC,IAAI,CAAC;IAC7B;;;;OAIG;IACH,QAAQ,CAAC,EAAE,eAAe,CAAC,KAAK,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;IACzD;;;;;OAKG;IACH,SAAS,CAAC,EAAE,eAAe,CAAC,KAAK,CAAC,eAAe,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC,CAAC;IAC9E;;;;;OAKG;IACH,WAAW,CAAC,EAAE,eAAe,CAAC,QAAQ,CAAC;IACvC;;;;OAIG;IACH,KAAK,CAAC,EAAE,eAAe,CAAC,SAAS,CAAC;IAClC;;;;OAIG;IACH,QAAQ,CAAC,EAAE,eAAe,CAAC,MAAM,CAAC;IAClC;;;;OAIG;IACH,OAAO,CAAC,EAAE,eAAe,CAAC,KAAK,CAAC,eAAe,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC;IACxE;;;;OAIG;IACH,cAAc,CAAC,EAAE,eAAe,CAAC,KAAK,CAAC,eAAe,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC,CAAC;IACtF;;;;;OAKG;IACH,IAAI,CAAC,EAAE,eAAe,CAAC,IAAI,CAAC;IAC5B;;;;OAIG;IACH,OAAO,EAAE,eAAe,CAAC,OAAO,CAAC;IACjC;;;;OAIG;IACH,MAAM,EAAE,eAAe,CAAC,OAAO,CAAC;IAChC;;;;OAIG;IACH,GAAG,CAAC,EAAE,eAAe,CAAC,QAAQ,CAAC;IAC/B;;;;OAIG;IACH,UAAU,CAAC,EAAE,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC5C;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAClD;;;;OAIG;IACH,OAAO,CAAC,EAAE,eAAe,CAAC,KAAK,CAC7B,eAAe,CAAC,SAAS,CAAC,yBAAyB,GAAG,iBAAiB,CAAC,CACzE,CAAC;CACH;AAED,MAAM,MAAM,kBAAkB,GAAG,iBAAiB,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC"}
@@ -6,6 +6,7 @@ import type { BasePersonSkeleton } from '../baseTypes/basePerson';
6
6
  import { type ConverterContext } from './helpers';
7
7
  export type IContentfulPerson = IBasePerson & {
8
8
  bio?: IContentfulRichText | null;
9
+ publishedIn?: IContentfulRichText | null;
9
10
  };
10
11
  /**
11
12
  * Base converter for Person entries to IPersonLink type
@@ -1 +1 @@
1
- {"version":3,"file":"person.d.ts","sourceRoot":"","sources":["../../src/converters/person.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAmB,MAAM,4BAA4B,CAAC;AAE5F,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,KAAK,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,QAAQ,CAAC;AACxE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAC1E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EAEL,KAAK,gBAAgB,EAOtB,MAAM,WAAW,CAAC;AAUnB,MAAM,MAAM,iBAAiB,GAAG,WAAW,GAAG;IAC5C,GAAG,CAAC,EAAE,mBAAmB,GAAG,IAAI,CAAC;CAClC,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,gBAAgB,EACzB,KAAK,EAAE,KAAK,CAAC,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,CAAC,GAC7D,WAAW,CA8Cb;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,gBAAgB,EACzB,KAAK,EAAE,KAAK,CAAC,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,CAAC,EAC9D,eAAe,CAAC,EAAE,KAAK,CAAC,sBAAsB,EAAE,oBAAoB,EAAE,MAAM,CAAC,GAC5E,iBAAiB,CAoHnB"}
1
+ {"version":3,"file":"person.d.ts","sourceRoot":"","sources":["../../src/converters/person.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EACX,WAAW,EAIZ,MAAM,4BAA4B,CAAC;AAEpC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,KAAK,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,QAAQ,CAAC;AACxE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAC1E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EAEL,KAAK,gBAAgB,EAOtB,MAAM,WAAW,CAAC;AAenB,MAAM,MAAM,iBAAiB,GAAG,WAAW,GAAG;IAC5C,GAAG,CAAC,EAAE,mBAAmB,GAAG,IAAI,CAAC;IACjC,WAAW,CAAC,EAAE,mBAAmB,GAAG,IAAI,CAAC;CAC1C,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,gBAAgB,EACzB,KAAK,EAAE,KAAK,CAAC,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,CAAC,GAC7D,WAAW,CAkDb;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,gBAAgB,EACzB,KAAK,EAAE,KAAK,CAAC,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,CAAC,EAC9D,eAAe,CAAC,EAAE,KAAK,CAAC,sBAAsB,EAAE,oBAAoB,EAAE,MAAM,CAAC,GAC5E,iBAAiB,CA8HnB"}
@@ -2,7 +2,7 @@ import { resolvedMeta } from '@se-studio/core-data-types';
2
2
  import { addPositionMetadata, calculateContentCount, createInternalLink, lookupAsset, makeContentfulTitle, shouldResolveContents, shouldResolveNavigation, } from './helpers.js';
3
3
  import { collectIconsFromContent, collectIconsFromNavigation, deduplicateIcons, } from './iconCollector.js';
4
4
  import { resolveNavigationOrStub } from './navigationItem.js';
5
- import { resolvePageContent, resolveRichTextDocument, resolveSchema } from './resolver.js';
5
+ import { resolveLinks, resolvePageContent, resolveRichTextDocument, resolveSchema, } from './resolver.js';
6
6
  import { resolveTemplate } from './template.js';
7
7
  /**
8
8
  * Base converter for Person entries to IPersonLink type
@@ -19,7 +19,7 @@ import { resolveTemplate } from './template.js';
19
19
  */
20
20
  export function basePersonLinkConverter(context, entry) {
21
21
  const { sys, fields } = entry;
22
- const { name, bio: fieldsBio, jobTitle, description, phoneNumber, emailAddress, linkedIn, twitter, alumniOf, location, media, ...simpleFields } = fields;
22
+ const { name, bio: fieldsBio, jobTitle, description, phoneNumber, emailAddress, linkedIn, twitter, website, quote, alumniOf, location, media, ...simpleFields } = fields;
23
23
  if (sys.contentType.sys.id !== 'person') {
24
24
  throw new Error(`Invalid content type: expected "person", got "${sys.contentType.sys.id}"`);
25
25
  }
@@ -38,6 +38,8 @@ export function basePersonLinkConverter(context, entry) {
38
38
  emailAddress,
39
39
  linkedIn,
40
40
  twitter,
41
+ website,
42
+ quote,
41
43
  alumniOf,
42
44
  location,
43
45
  });
@@ -61,7 +63,7 @@ export function basePersonConverter(context, entry, customTypeEntry) {
61
63
  if (contentType.sys.id !== 'person') {
62
64
  throw new Error(`Invalid content type: expected "person", got "${contentType.sys.id}"`);
63
65
  }
64
- const { slug, name, description, jobTitle, media, bio: bioField, content: contentLinks, structuredData, meta: personMeta, backgroundColour: personBackgroundColour, textColour: personTextColour, ...rest } = fields;
66
+ const { slug, name, description, jobTitle, media, bio: bioField, quote, website, expertise: expertiseLinks, publishedIn: publishedInField, content: contentLinks, structuredData, meta: personMeta, backgroundColour: personBackgroundColour, textColour: personTextColour, ...rest } = fields;
65
67
  if (!shouldResolveNavigation(context) && !shouldResolveContents(context)) {
66
68
  return {
67
69
  type: 'Person',
@@ -71,6 +73,8 @@ export function basePersonConverter(context, entry, customTypeEntry) {
71
73
  title: makeContentfulTitle(name, id),
72
74
  description: description ?? jobTitle ?? `Description for ${id}`,
73
75
  jobTitle,
76
+ quote,
77
+ website,
74
78
  featuredImage: lookupAsset(context, media),
75
79
  href: context.urlCalculators.person(slug),
76
80
  contentCount: 0,
@@ -121,9 +125,13 @@ export function basePersonConverter(context, entry, customTypeEntry) {
121
125
  title: makeContentfulTitle(name, id),
122
126
  description: description ?? jobTitle ?? `Description for ${id}`,
123
127
  jobTitle,
128
+ quote,
129
+ website,
124
130
  featuredImage: lookupAsset(context, media), // Person uses 'media' not 'featuredImage'
125
131
  href: context.urlCalculators.person(slug),
126
132
  bio: resolveRichTextDocument(context, id, bioField) ?? null,
133
+ expertise: resolveLinks(context, id, expertiseLinks) ?? null,
134
+ publishedIn: resolveRichTextDocument(context, id, publishedInField) ?? null,
127
135
  contentCount: calculateContentCount(personContent),
128
136
  contents,
129
137
  menu,
@@ -1 +1 @@
1
- {"version":3,"file":"person.js","sourceRoot":"","sources":["../../src/converters/person.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"person.js","sourceRoot":"","sources":["../../src/converters/person.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,13 @@
1
1
  import 'server-only';
2
+ /**
3
+ * Immediate cache-tag expiry for Contentful webhooks.
4
+ *
5
+ * Next.js 16 requires a second argument. `'max'` is stale-while-revalidate and
6
+ * would leave published CMS content stale for the next visitor. `{ expire: 0 }`
7
+ * is the documented webhook/third-party path. Next 15.5 ignores the extra
8
+ * argument and keeps the previous immediate behaviour.
9
+ */
10
+ export declare function revalidateCacheTag(tag: string): void;
2
11
  /**
3
12
  * Revalidates multiple Next.js cache tags.
4
13
  *
@@ -1 +1 @@
1
- {"version":3,"file":"server-utils.d.ts","sourceRoot":"","sources":["../../src/revalidation/server-utils.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,CAAC;AAGrB;;;;;;;;GAQG;AACH,wBAAsB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAQlF;AAED;;;;;;;;GAQG;AACH,wBAAsB,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAIpF"}
1
+ {"version":3,"file":"server-utils.d.ts","sourceRoot":"","sources":["../../src/revalidation/server-utils.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,CAAC;AAGrB;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAEpD;AAED;;;;;;;;GAQG;AACH,wBAAsB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAQlF;AAED;;;;;;;;GAQG;AACH,wBAAsB,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAIpF"}
@@ -1,5 +1,16 @@
1
1
  import 'server-only';
2
2
  import { revalidateTag } from 'next/cache';
3
+ /**
4
+ * Immediate cache-tag expiry for Contentful webhooks.
5
+ *
6
+ * Next.js 16 requires a second argument. `'max'` is stale-while-revalidate and
7
+ * would leave published CMS content stale for the next visitor. `{ expire: 0 }`
8
+ * is the documented webhook/third-party path. Next 15.5 ignores the extra
9
+ * argument and keeps the previous immediate behaviour.
10
+ */
11
+ export function revalidateCacheTag(tag) {
12
+ revalidateTag(tag, { expire: 0 });
13
+ }
3
14
  /**
4
15
  * Revalidates multiple Next.js cache tags.
5
16
  *
@@ -15,7 +26,7 @@ export async function revalidateTags(tags, reason) {
15
26
  for (const tag of tags) {
16
27
  if (process.env.LOG_CMS)
17
28
  console.log(`Revalidating tag: ${tag} - ${reason}`);
18
- revalidateTag(tag);
29
+ revalidateCacheTag(tag);
19
30
  }
20
31
  }
21
32
  /**
@@ -31,7 +42,7 @@ export async function revalidateSingleTag(tag, reason) {
31
42
  await delay(500);
32
43
  if (process.env.LOG_CMS)
33
44
  console.log(`Revalidating single tag: ${tag} - ${reason}`);
34
- revalidateTag(tag);
45
+ revalidateCacheTag(tag);
35
46
  }
36
47
  /**
37
48
  * Utility delay function
@@ -1 +1 @@
1
- {"version":3,"file":"server-utils.js","sourceRoot":"","sources":["../../src/revalidation/server-utils.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,CAAC;AACrB,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE3C;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,IAAc,EAAE,MAAc;IACjE,uDAAuD;IACvD,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC;IAEjB,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO;YAAE,OAAO,CAAC,GAAG,CAAC,qBAAqB,GAAG,MAAM,MAAM,EAAE,CAAC,CAAC;QAC7E,aAAa,CAAC,GAAG,CAAC,CAAC;IACrB,CAAC;AACH,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,GAAW,EAAE,MAAc;IACnE,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC;IACjB,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO;QAAE,OAAO,CAAC,GAAG,CAAC,4BAA4B,GAAG,MAAM,MAAM,EAAE,CAAC,CAAC;IACpF,aAAa,CAAC,GAAG,CAAC,CAAC;AACrB,CAAC;AAED;;;GAGG;AACH,SAAS,KAAK,CAAC,EAAU;IACvB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AAC3D,CAAC"}
1
+ {"version":3,"file":"server-utils.js","sourceRoot":"","sources":["../../src/revalidation/server-utils.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,CAAC;AACrB,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE3C;;;;;;;GAOG;AACH,MAAM,UAAU,kBAAkB,CAAC,GAAW;IAC5C,aAAa,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;AACpC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,IAAc,EAAE,MAAc;IACjE,uDAAuD;IACvD,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC;IAEjB,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO;YAAE,OAAO,CAAC,GAAG,CAAC,qBAAqB,GAAG,MAAM,MAAM,EAAE,CAAC,CAAC;QAC7E,kBAAkB,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;AACH,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,GAAW,EAAE,MAAc;IACnE,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC;IACjB,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO;QAAE,OAAO,CAAC,GAAG,CAAC,4BAA4B,GAAG,MAAM,MAAM,EAAE,CAAC,CAAC;IACpF,kBAAkB,CAAC,GAAG,CAAC,CAAC;AAC1B,CAAC;AAED;;;GAGG;AACH,SAAS,KAAK,CAAC,EAAU;IACvB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AAC3D,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@se-studio/contentful-rest-api",
3
- "version": "1.23.0",
3
+ "version": "1.25.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",
@@ -62,15 +62,15 @@
62
62
  "contentful": "^11.12.7",
63
63
  "fflate": "^0.8.3",
64
64
  "server-only": "0.0.1",
65
- "@se-studio/core-data-types": "1.11.0"
65
+ "@se-studio/core-data-types": "1.12.0"
66
66
  },
67
67
  "peerDependencies": {
68
- "next": ">=15.5.0 <16"
68
+ "next": ">=15.5.0 <17"
69
69
  },
70
70
  "devDependencies": {
71
71
  "@biomejs/biome": "^2.5.5",
72
72
  "@types/node": "^24.13.3",
73
- "next": "^15.5.21",
73
+ "next": "^16.3.1",
74
74
  "typescript": "^6.0.3",
75
75
  "vitest": "^4.1.10"
76
76
  },