@financial-times/cp-content-pipeline-schema 4.3.0 → 5.0.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 +11 -0
- package/lib/fixtures/topperFixtures.d.ts +2 -1
- package/lib/fixtures/topperFixtures.js +10 -1
- package/lib/fixtures/topperFixtures.js.map +1 -1
- package/lib/generated/index.d.ts +56 -56
- package/lib/model/Topper.d.ts +2 -1
- package/lib/model/Topper.js +6 -3
- package/lib/model/Topper.js.map +1 -1
- package/lib/model/Topper.test.js +20 -0
- package/lib/model/Topper.test.js.map +1 -1
- package/lib/model/strategies/topper/PartnerContentStrategy.d.ts +9 -0
- package/lib/model/strategies/topper/PartnerContentStrategy.js +22 -0
- package/lib/model/strategies/topper/PartnerContentStrategy.js.map +1 -0
- package/lib/model/strategies/topper/PartnerContentStrategy.test.d.ts +1 -0
- package/lib/model/strategies/topper/PartnerContentStrategy.test.js +13 -0
- package/lib/model/strategies/topper/PartnerContentStrategy.test.js.map +1 -0
- package/lib/model/strategies/topper/TopperStrategy.d.ts +7 -2
- package/lib/model/strategies/topper/TopperStrategy.integration.test.js +7 -0
- package/lib/model/strategies/topper/TopperStrategy.integration.test.js.map +1 -1
- package/lib/model/strategies/topper/index.d.ts +2 -1
- package/lib/model/strategies/topper/index.js +2 -0
- package/lib/model/strategies/topper/index.js.map +1 -1
- package/lib/resolvers/index.d.ts +25 -27
- package/lib/resolvers/scalars.d.ts +2 -0
- package/lib/resolvers/scalars.js +6 -1
- package/lib/resolvers/scalars.js.map +1 -1
- package/lib/resolvers/topper.d.ts +24 -27
- package/lib/resolvers/topper.js +5 -8
- package/lib/resolvers/topper.js.map +1 -1
- package/package.json +1 -1
- package/queries/article.graphql +3 -0
- package/src/fixtures/topperFixtures.ts +10 -0
- package/src/generated/index.ts +56 -58
- package/src/model/Topper.test.ts +26 -0
- package/src/model/Topper.ts +8 -4
- package/src/model/strategies/topper/PartnerContentStrategy.test.ts +11 -0
- package/src/model/strategies/topper/PartnerContentStrategy.ts +21 -0
- package/src/model/strategies/topper/README.md +13 -0
- package/src/model/strategies/topper/TopperStrategy.integration.test.ts +10 -0
- package/src/model/strategies/topper/TopperStrategy.ts +9 -2
- package/src/model/strategies/topper/index.ts +2 -0
- package/src/resolvers/scalars.ts +8 -0
- package/src/resolvers/topper.ts +8 -11
- package/tsconfig.tsbuildinfo +1 -1
- package/typedefs/scalars.graphql +1 -0
- package/typedefs/topper.graphql +36 -41
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,16 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [5.0.0](https://github.com/Financial-Times/cp-content-pipeline/compare/cp-content-pipeline-schema-v4.3.0...cp-content-pipeline-schema-v5.0.0) (2026-05-14)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### ⚠ BREAKING CHANGES
|
|
7
|
+
|
|
8
|
+
* ci-3413 partner content topper strategy
|
|
9
|
+
|
|
10
|
+
### Features
|
|
11
|
+
|
|
12
|
+
* ci-3413 partner content topper strategy ([76816cd](https://github.com/Financial-Times/cp-content-pipeline/commit/76816cda5d5f18c735df9ad2607306b096129204))
|
|
13
|
+
|
|
3
14
|
## [4.3.0](https://github.com/Financial-Times/cp-content-pipeline/compare/cp-content-pipeline-schema-v4.2.0...cp-content-pipeline-schema-v4.3.0) (2026-05-05)
|
|
4
15
|
|
|
5
16
|
|
|
@@ -3,8 +3,9 @@ type Overrides = Record<string, unknown>;
|
|
|
3
3
|
declare const createContent: (overrides?: Overrides) => Content;
|
|
4
4
|
declare const createAlphavilleContent: (overrides?: Overrides) => Content;
|
|
5
5
|
declare const createOpinionContent: (overrides?: Overrides) => Content;
|
|
6
|
+
declare const createPartnerContent: (overrides?: Overrides) => Content;
|
|
6
7
|
declare const createMonetaryPolicyRadarContent: (overrides?: Overrides) => Content;
|
|
7
8
|
declare const createPodcastContent: (overrides?: Overrides) => Content;
|
|
8
9
|
declare const createLiveBlogPackageContent: (overrides?: Overrides) => Content;
|
|
9
10
|
declare const createContentPackageContent: (overrides?: Overrides) => Content;
|
|
10
|
-
export { createContent, createAlphavilleContent, createOpinionContent, createMonetaryPolicyRadarContent, createPodcastContent, createLiveBlogPackageContent, createContentPackageContent, };
|
|
11
|
+
export { createContent, createAlphavilleContent, createOpinionContent, createPartnerContent, createMonetaryPolicyRadarContent, createPodcastContent, createLiveBlogPackageContent, createContentPackageContent, };
|
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.createContentPackageContent = exports.createLiveBlogPackageContent = exports.createPodcastContent = exports.createMonetaryPolicyRadarContent = exports.createOpinionContent = exports.createAlphavilleContent = exports.createContent = void 0;
|
|
6
|
+
exports.createContentPackageContent = exports.createLiveBlogPackageContent = exports.createPodcastContent = exports.createMonetaryPolicyRadarContent = exports.createPartnerContent = exports.createOpinionContent = exports.createAlphavilleContent = exports.createContent = void 0;
|
|
7
7
|
const Content_1 = require("../model/Content");
|
|
8
8
|
const capiObject_1 = require("./capiObject");
|
|
9
9
|
const dummyContext_1 = __importDefault(require("./dummyContext"));
|
|
@@ -59,6 +59,15 @@ const createOpinionContent = (overrides = {}) => {
|
|
|
59
59
|
});
|
|
60
60
|
};
|
|
61
61
|
exports.createOpinionContent = createOpinionContent;
|
|
62
|
+
const createPartnerContent = (overrides = {}) => {
|
|
63
|
+
return createContent({
|
|
64
|
+
publication: [
|
|
65
|
+
'http://www.ft.com/thing/724b5e36-6d45-4cf1-b1c2-3f676b21f21b',
|
|
66
|
+
],
|
|
67
|
+
...overrides,
|
|
68
|
+
});
|
|
69
|
+
};
|
|
70
|
+
exports.createPartnerContent = createPartnerContent;
|
|
62
71
|
const createMonetaryPolicyRadarContent = (overrides = {}) => {
|
|
63
72
|
const mprAnnotations = [
|
|
64
73
|
{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"topperFixtures.js","sourceRoot":"","sources":["../../src/fixtures/topperFixtures.ts"],"names":[],"mappings":";;;;;;AAAA,8CAA0C;AAC1C,6CAA6C;AAC7C,kEAAoC;AACpC,mFAAuD;AAIvD,MAAM,aAAa,GAAG,CAAC,YAAuB,EAAE,EAAE,EAAE;IAClD,MAAM,UAAU,GAAG,eAAe,CAAC;QACjC,GAAG,2BAAc;QACjB,GAAG,SAAS;KACb,CAAC,CAAA;IACF,OAAO,IAAI,iBAAO,CAAC,UAAU,EAAE,sBAAO,CAAC,CAAA;AACzC,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"topperFixtures.js","sourceRoot":"","sources":["../../src/fixtures/topperFixtures.ts"],"names":[],"mappings":"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"}
|
package/lib/generated/index.d.ts
CHANGED
|
@@ -122,6 +122,10 @@ export type Scalars = {
|
|
|
122
122
|
input: 'paper' | 'wheat' | 'white' | 'black' | 'claret' | 'oxford' | 'slate' | 'crimson' | 'sky' | 'matisse';
|
|
123
123
|
output: 'paper' | 'wheat' | 'white' | 'black' | 'claret' | 'oxford' | 'slate' | 'crimson' | 'sky' | 'matisse';
|
|
124
124
|
};
|
|
125
|
+
TopperHeaderSlotType: {
|
|
126
|
+
input: 'partner-content';
|
|
127
|
+
output: 'partner-content';
|
|
128
|
+
};
|
|
125
129
|
TopperLayoutAssetSlot: {
|
|
126
130
|
input: 'inside-topper' | 'below-topper';
|
|
127
131
|
output: 'inside-topper' | 'below-topper';
|
|
@@ -330,6 +334,8 @@ export type BasicTopper = Topper & TopperWithImages & {
|
|
|
330
334
|
readonly followButtonVariant?: Maybe<Scalars['FollowButtonVariant']['output']>;
|
|
331
335
|
/** The concept object of the genre, eg. {'type': 'GENRE', 'prefLabel': 'Opinion', ...}. */
|
|
332
336
|
readonly genreConcept?: Maybe<Concept>;
|
|
337
|
+
/** The details for the topper header slot, if used. */
|
|
338
|
+
readonly headerSlot?: Maybe<TopperHeaderSlot>;
|
|
333
339
|
/** The headline text of the topper. */
|
|
334
340
|
readonly headline: Scalars['String']['output'];
|
|
335
341
|
/** An array of images to be displayed on the topper. */
|
|
@@ -354,6 +360,8 @@ export type BrandedTopper = Topper & TopperWithBrand & TopperWithImages & Topper
|
|
|
354
360
|
readonly followButtonVariant?: Maybe<Scalars['FollowButtonVariant']['output']>;
|
|
355
361
|
/** The concept object of the genre, eg. {'type': 'GENRE', 'prefLabel': 'Opinion', ...}. */
|
|
356
362
|
readonly genreConcept?: Maybe<Concept>;
|
|
363
|
+
/** The details for the topper header slot, if used. */
|
|
364
|
+
readonly headerSlot?: Maybe<TopperHeaderSlot>;
|
|
357
365
|
/** The headline text of the topper. */
|
|
358
366
|
readonly headline: Scalars['String']['output'];
|
|
359
367
|
/** An array of images to be displayed on the topper. */
|
|
@@ -741,6 +749,8 @@ export type DeepLandscapeTopper = Topper & TopperWithBrand & TopperWithImages &
|
|
|
741
749
|
readonly followButtonVariant?: Maybe<Scalars['FollowButtonVariant']['output']>;
|
|
742
750
|
/** The concept object of the genre, eg. {'type': 'GENRE', 'prefLabel': 'Opinion', ...}. */
|
|
743
751
|
readonly genreConcept?: Maybe<Concept>;
|
|
752
|
+
/** The details for the topper header slot, if used. */
|
|
753
|
+
readonly headerSlot?: Maybe<TopperHeaderSlot>;
|
|
744
754
|
/** The headline text of the topper. */
|
|
745
755
|
readonly headline: Scalars['String']['output'];
|
|
746
756
|
/** An array of images to be displayed on the topper. */
|
|
@@ -774,6 +784,8 @@ export type DeepPortraitTopper = Topper & TopperWithBrand & TopperWithImages & T
|
|
|
774
784
|
readonly followButtonVariant?: Maybe<Scalars['FollowButtonVariant']['output']>;
|
|
775
785
|
/** The concept object of the genre, eg. {'type': 'GENRE', 'prefLabel': 'Opinion', ...}. */
|
|
776
786
|
readonly genreConcept?: Maybe<Concept>;
|
|
787
|
+
/** The details for the topper header slot, if used. */
|
|
788
|
+
readonly headerSlot?: Maybe<TopperHeaderSlot>;
|
|
777
789
|
/** The headline text of the topper. */
|
|
778
790
|
readonly headline: Scalars['String']['output'];
|
|
779
791
|
/** An array of images to be displayed on the topper. */
|
|
@@ -833,6 +845,8 @@ export type FullBleedTopper = Topper & TopperWithBrand & TopperWithImages & Topp
|
|
|
833
845
|
readonly followButtonVariant?: Maybe<Scalars['FollowButtonVariant']['output']>;
|
|
834
846
|
/** The concept object of the genre, eg. {'type': 'GENRE', 'prefLabel': 'Opinion', ...}. */
|
|
835
847
|
readonly genreConcept?: Maybe<Concept>;
|
|
848
|
+
/** The details for the topper header slot, if used. */
|
|
849
|
+
readonly headerSlot?: Maybe<TopperHeaderSlot>;
|
|
836
850
|
/** The headline text of the topper. */
|
|
837
851
|
readonly headline: Scalars['String']['output'];
|
|
838
852
|
/** An array of images to be displayed on the topper. */
|
|
@@ -1382,6 +1396,8 @@ export type OpinionTopper = Topper & TopperWithHeadshot & TopperWithImages & Top
|
|
|
1382
1396
|
readonly followButtonVariant?: Maybe<Scalars['FollowButtonVariant']['output']>;
|
|
1383
1397
|
/** The concept object of the genre, eg. {'type': 'GENRE', 'prefLabel': 'Opinion', ...}. */
|
|
1384
1398
|
readonly genreConcept?: Maybe<Concept>;
|
|
1399
|
+
/** The details for the topper header slot, if used. */
|
|
1400
|
+
readonly headerSlot?: Maybe<TopperHeaderSlot>;
|
|
1385
1401
|
/** The headline text of the topper. */
|
|
1386
1402
|
readonly headline: Scalars['String']['output'];
|
|
1387
1403
|
/** The url of the headshot image, eg. for columns with one key author. */
|
|
@@ -1417,37 +1433,6 @@ export type PageInfo = {
|
|
|
1417
1433
|
/** The cursor for the first edge. */
|
|
1418
1434
|
readonly startCursor?: Maybe<Scalars['String']['output']>;
|
|
1419
1435
|
};
|
|
1420
|
-
export type PartnerContentTopper = Topper & TopperWithImages & TopperWithTheme & {
|
|
1421
|
-
/** Whether the topper should have a background box. */
|
|
1422
|
-
readonly backgroundBox?: Maybe<Scalars['Boolean']['output']>;
|
|
1423
|
-
/** The background colour of the topper. */
|
|
1424
|
-
readonly backgroundColour?: Maybe<Scalars['TopperBackgroundColour']['output']>;
|
|
1425
|
-
/** The concept object to be displayed, eg. {'type': 'TOPIC', 'prefLabel': 'Non-dom tax status', ...}. */
|
|
1426
|
-
readonly displayConcept?: Maybe<Concept>;
|
|
1427
|
-
/** A fallback image to be used if the 'images' are not availableimages: [Image!]. */
|
|
1428
|
-
readonly fallbackImage?: Maybe<Image>;
|
|
1429
|
-
/** The variant of the follow button to be displayed on the topper. */
|
|
1430
|
-
readonly followButtonVariant?: Maybe<Scalars['FollowButtonVariant']['output']>;
|
|
1431
|
-
/** The concept object of the genre, eg. {'type': 'GENRE', 'prefLabel': 'Opinion', ...}. */
|
|
1432
|
-
readonly genreConcept?: Maybe<Concept>;
|
|
1433
|
-
/** The headline text of the topper. */
|
|
1434
|
-
readonly headline: Scalars['String']['output'];
|
|
1435
|
-
/** An array of images to be displayed on the topper. */
|
|
1436
|
-
readonly images?: Maybe<ReadonlyArray<Image>>;
|
|
1437
|
-
/** An abstract syntax tree of the introduction text. */
|
|
1438
|
-
readonly intro?: Maybe<RichText>;
|
|
1439
|
-
/** Whether the headline should be large. */
|
|
1440
|
-
readonly isLargeHeadline?: Maybe<Scalars['Boolean']['output']>;
|
|
1441
|
-
/**
|
|
1442
|
-
* The layout of the topper, eg. 'split-text-left'. Deprecated for layoutConfiguration.name
|
|
1443
|
-
* @deprecated Deprecated for `layoutConfiguration.name`
|
|
1444
|
-
*/
|
|
1445
|
-
readonly layout?: Maybe<Scalars['String']['output']>;
|
|
1446
|
-
/** The layout configuration of the topper, eg. 'split-text-left'. */
|
|
1447
|
-
readonly layoutConfiguration?: Maybe<TopperLayout>;
|
|
1448
|
-
/** Whether the topper should have a text shadow. */
|
|
1449
|
-
readonly textShadow?: Maybe<Scalars['Boolean']['output']>;
|
|
1450
|
-
};
|
|
1451
1436
|
export type Person = {
|
|
1452
1437
|
readonly headshot?: Maybe<Scalars['String']['output']>;
|
|
1453
1438
|
readonly prefLabel?: Maybe<Scalars['String']['output']>;
|
|
@@ -1613,6 +1598,8 @@ export type PodcastTopper = Topper & TopperWithBrand & TopperWithCoverImage & To
|
|
|
1613
1598
|
readonly followButtonVariant?: Maybe<Scalars['FollowButtonVariant']['output']>;
|
|
1614
1599
|
/** The concept object of the genre, eg. {'type': 'GENRE', 'prefLabel': 'Opinion', ...}. */
|
|
1615
1600
|
readonly genreConcept?: Maybe<Concept>;
|
|
1601
|
+
/** The details for the topper header slot, if used. */
|
|
1602
|
+
readonly headerSlot?: Maybe<TopperHeaderSlot>;
|
|
1616
1603
|
/** The headline text of the topper. */
|
|
1617
1604
|
readonly headline: Scalars['String']['output'];
|
|
1618
1605
|
/**
|
|
@@ -1719,6 +1706,8 @@ export type SplitTextTopper = Topper & TopperWithBrand & TopperWithImages & Topp
|
|
|
1719
1706
|
readonly followButtonVariant?: Maybe<Scalars['FollowButtonVariant']['output']>;
|
|
1720
1707
|
/** The concept object of the genre, eg. {'type': 'GENRE', 'prefLabel': 'Opinion', ...}. */
|
|
1721
1708
|
readonly genreConcept?: Maybe<Concept>;
|
|
1709
|
+
/** The details for the topper header slot, if used. */
|
|
1710
|
+
readonly headerSlot?: Maybe<TopperHeaderSlot>;
|
|
1722
1711
|
/** The headline text of the topper. */
|
|
1723
1712
|
readonly headline: Scalars['String']['output'];
|
|
1724
1713
|
/** An array of images to be displayed on the topper. */
|
|
@@ -1817,6 +1806,8 @@ export type Topper = {
|
|
|
1817
1806
|
readonly followButtonVariant?: Maybe<Scalars['FollowButtonVariant']['output']>;
|
|
1818
1807
|
/** The concept object of the genre, eg. {'type': 'GENRE', 'prefLabel': 'Opinion', ...}. */
|
|
1819
1808
|
readonly genreConcept?: Maybe<Concept>;
|
|
1809
|
+
/** The details for the topper header slot, if used. */
|
|
1810
|
+
readonly headerSlot?: Maybe<TopperHeaderSlot>;
|
|
1820
1811
|
/** The headline text of the topper. */
|
|
1821
1812
|
readonly headline: Scalars['String']['output'];
|
|
1822
1813
|
/** An abstract syntax tree of the introduction text. */
|
|
@@ -1824,6 +1815,9 @@ export type Topper = {
|
|
|
1824
1815
|
/** Whether the topper should have a text shadow. */
|
|
1825
1816
|
readonly textShadow?: Maybe<Scalars['Boolean']['output']>;
|
|
1826
1817
|
};
|
|
1818
|
+
export type TopperHeaderSlot = {
|
|
1819
|
+
readonly type: Scalars['TopperHeaderSlotType']['output'];
|
|
1820
|
+
};
|
|
1827
1821
|
export type TopperLayout = {
|
|
1828
1822
|
readonly assetSlot?: Maybe<Scalars['TopperLayoutAssetSlot']['output']>;
|
|
1829
1823
|
readonly name: Scalars['String']['output'];
|
|
@@ -1853,6 +1847,8 @@ export type TopperWithFlourish = Topper & TopperWithTheme & {
|
|
|
1853
1847
|
readonly followButtonVariant?: Maybe<Scalars['FollowButtonVariant']['output']>;
|
|
1854
1848
|
/** The concept object of the genre, eg. {'type': 'GENRE', 'prefLabel': 'Opinion', ...}. */
|
|
1855
1849
|
readonly genreConcept?: Maybe<Concept>;
|
|
1850
|
+
/** The details for the topper header slot, if used. */
|
|
1851
|
+
readonly headerSlot?: Maybe<TopperHeaderSlot>;
|
|
1856
1852
|
/** The headline text of the topper. */
|
|
1857
1853
|
readonly headline: Scalars['String']['output'];
|
|
1858
1854
|
/** An abstract syntax tree of the introduction text. */
|
|
@@ -2030,13 +2026,13 @@ export type ResolversInterfaceTypes<RefType extends Record<string, unknown>> = R
|
|
|
2030
2026
|
Image: (ImageModel) | (ImageModel) | (ImageModel) | (ImageModel) | (ImageModel) | (ImageModel) | (ImageModel) | (ImageModel) | (ImageModel);
|
|
2031
2027
|
Picture: (PictureModel) | (PictureModel) | (PictureModel);
|
|
2032
2028
|
Reference: (ReferenceWithCAPIData<AuthorNode>) | (ReferenceWithCAPIData<ClipSetNode | OldClipNode>) | (ReferenceWithCAPIData<ContentTree.CustomCodeComponent>) | (ReferenceWithCAPIData<ContentTree.Flourish>) | (ReferenceWithCAPIData<ContentTree.ImageSet>) | (ReferenceWithCAPIData<ContentTree.LayoutImage>) | (ReferenceWithCAPIData<ContentTree.ImageSet>) | (ReferenceWithCAPIData<RawImageNode>) | (ReferenceWithCAPIData<ContentTree.Recommended>) | (ReferenceWithCAPIData<ContentTree.RecommendedList>) | (ReferenceWithCAPIData<ContentTree.ScrollyImage>) | (ReferenceWithCAPIData<ContentTree.Tweet>) | (ReferenceWithCAPIData<ContentTree.Video>);
|
|
2033
|
-
Topper: (TopperModel) | (TopperModel) | (TopperModel) | (TopperModel) | (TopperModel) | (TopperModel) | (TopperModel) | (TopperModel) | (TopperModel)
|
|
2029
|
+
Topper: (TopperModel) | (TopperModel) | (TopperModel) | (TopperModel) | (TopperModel) | (TopperModel) | (TopperModel) | (TopperModel) | (TopperModel);
|
|
2034
2030
|
TopperWithBrand: (TopperModel) | (TopperModel) | (TopperModel) | (TopperModel) | (TopperModel) | (TopperModel);
|
|
2035
2031
|
TopperWithCoverImage: (TopperModel);
|
|
2036
2032
|
TopperWithHeadshot: (TopperModel) | (TopperModel);
|
|
2037
|
-
TopperWithImages: (TopperModel) | (TopperModel) | (TopperModel) | (TopperModel) | (TopperModel) | (TopperModel) | (TopperModel)
|
|
2033
|
+
TopperWithImages: (TopperModel) | (TopperModel) | (TopperModel) | (TopperModel) | (TopperModel) | (TopperModel) | (TopperModel);
|
|
2038
2034
|
TopperWithPackage: (TopperModel);
|
|
2039
|
-
TopperWithTheme: (TopperModel) | (TopperModel) | (TopperModel) | (TopperModel) | (TopperModel) | (TopperModel) | (TopperModel) | (TopperModel)
|
|
2035
|
+
TopperWithTheme: (TopperModel) | (TopperModel) | (TopperModel) | (TopperModel) | (TopperModel) | (TopperModel) | (TopperModel) | (TopperModel);
|
|
2040
2036
|
}>;
|
|
2041
2037
|
/** Mapping between all available schema types and the resolvers types */
|
|
2042
2038
|
export type ResolversTypes = ResolversObject<{
|
|
@@ -2116,7 +2112,6 @@ export type ResolversTypes = ResolversObject<{
|
|
|
2116
2112
|
OpinionTopper: ResolverTypeWrapper<TopperModel>;
|
|
2117
2113
|
PackageDesign: ResolverTypeWrapper<Scalars['PackageDesign']['output']>;
|
|
2118
2114
|
PageInfo: ResolverTypeWrapper<PageInfo>;
|
|
2119
|
-
PartnerContentTopper: ResolverTypeWrapper<TopperModel>;
|
|
2120
2115
|
Person: ResolverTypeWrapper<PersonModel>;
|
|
2121
2116
|
Picture: ResolverTypeWrapper<PictureModel>;
|
|
2122
2117
|
PictureFullBleed: ResolverTypeWrapper<PictureModel>;
|
|
@@ -2142,6 +2137,8 @@ export type ResolversTypes = ResolversObject<{
|
|
|
2142
2137
|
TeaserIndicators: ResolverTypeWrapper<TeaserIndicators>;
|
|
2143
2138
|
Topper: ResolverTypeWrapper<TopperModel>;
|
|
2144
2139
|
TopperBackgroundColour: ResolverTypeWrapper<Scalars['TopperBackgroundColour']['output']>;
|
|
2140
|
+
TopperHeaderSlot: ResolverTypeWrapper<TopperHeaderSlot>;
|
|
2141
|
+
TopperHeaderSlotType: ResolverTypeWrapper<Scalars['TopperHeaderSlotType']['output']>;
|
|
2145
2142
|
TopperLayout: ResolverTypeWrapper<TopperLayout>;
|
|
2146
2143
|
TopperLayoutAssetSlot: ResolverTypeWrapper<Scalars['TopperLayoutAssetSlot']['output']>;
|
|
2147
2144
|
TopperWithBrand: ResolverTypeWrapper<TopperModel>;
|
|
@@ -2234,7 +2231,6 @@ export type ResolversParentTypes = ResolversObject<{
|
|
|
2234
2231
|
OpinionTopper: TopperModel;
|
|
2235
2232
|
PackageDesign: Scalars['PackageDesign']['output'];
|
|
2236
2233
|
PageInfo: PageInfo;
|
|
2237
|
-
PartnerContentTopper: TopperModel;
|
|
2238
2234
|
Person: PersonModel;
|
|
2239
2235
|
Picture: PictureModel;
|
|
2240
2236
|
PictureFullBleed: PictureModel;
|
|
@@ -2260,6 +2256,8 @@ export type ResolversParentTypes = ResolversObject<{
|
|
|
2260
2256
|
TeaserIndicators: TeaserIndicators;
|
|
2261
2257
|
Topper: TopperModel;
|
|
2262
2258
|
TopperBackgroundColour: Scalars['TopperBackgroundColour']['output'];
|
|
2259
|
+
TopperHeaderSlot: TopperHeaderSlot;
|
|
2260
|
+
TopperHeaderSlotType: Scalars['TopperHeaderSlotType']['output'];
|
|
2263
2261
|
TopperLayout: TopperLayout;
|
|
2264
2262
|
TopperLayoutAssetSlot: Scalars['TopperLayoutAssetSlot']['output'];
|
|
2265
2263
|
TopperWithBrand: TopperModel;
|
|
@@ -2380,6 +2378,7 @@ export type BasicTopperResolvers<ContextType = QueryContext, ParentType extends
|
|
|
2380
2378
|
fallbackImage: Resolver<Maybe<ResolversTypes['Image']>, ParentType, ContextType>;
|
|
2381
2379
|
followButtonVariant: Resolver<Maybe<ResolversTypes['FollowButtonVariant']>, ParentType, ContextType>;
|
|
2382
2380
|
genreConcept: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
|
|
2381
|
+
headerSlot: Resolver<Maybe<ResolversTypes['TopperHeaderSlot']>, ParentType, ContextType>;
|
|
2383
2382
|
headline: Resolver<ResolversTypes['String'], ParentType, ContextType>;
|
|
2384
2383
|
images: Resolver<Maybe<ReadonlyArray<ResolversTypes['Image']>>, ParentType, ContextType>;
|
|
2385
2384
|
intro: Resolver<Maybe<ResolversTypes['RichText']>, ParentType, ContextType>;
|
|
@@ -2394,6 +2393,7 @@ export type BrandedTopperResolvers<ContextType = QueryContext, ParentType extend
|
|
|
2394
2393
|
fallbackImage: Resolver<Maybe<ResolversTypes['Image']>, ParentType, ContextType>;
|
|
2395
2394
|
followButtonVariant: Resolver<Maybe<ResolversTypes['FollowButtonVariant']>, ParentType, ContextType>;
|
|
2396
2395
|
genreConcept: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
|
|
2396
|
+
headerSlot: Resolver<Maybe<ResolversTypes['TopperHeaderSlot']>, ParentType, ContextType>;
|
|
2397
2397
|
headline: Resolver<ResolversTypes['String'], ParentType, ContextType>;
|
|
2398
2398
|
images: Resolver<Maybe<ReadonlyArray<ResolversTypes['Image']>>, ParentType, ContextType>;
|
|
2399
2399
|
intro: Resolver<Maybe<ResolversTypes['RichText']>, ParentType, ContextType>;
|
|
@@ -2593,6 +2593,7 @@ export type DeepLandscapeTopperResolvers<ContextType = QueryContext, ParentType
|
|
|
2593
2593
|
fallbackImage: Resolver<Maybe<ResolversTypes['Image']>, ParentType, ContextType>;
|
|
2594
2594
|
followButtonVariant: Resolver<Maybe<ResolversTypes['FollowButtonVariant']>, ParentType, ContextType>;
|
|
2595
2595
|
genreConcept: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
|
|
2596
|
+
headerSlot: Resolver<Maybe<ResolversTypes['TopperHeaderSlot']>, ParentType, ContextType>;
|
|
2596
2597
|
headline: Resolver<ResolversTypes['String'], ParentType, ContextType>;
|
|
2597
2598
|
images: Resolver<Maybe<ReadonlyArray<ResolversTypes['Image']>>, ParentType, ContextType>;
|
|
2598
2599
|
intro: Resolver<Maybe<ResolversTypes['RichText']>, ParentType, ContextType>;
|
|
@@ -2610,6 +2611,7 @@ export type DeepPortraitTopperResolvers<ContextType = QueryContext, ParentType e
|
|
|
2610
2611
|
fallbackImage: Resolver<Maybe<ResolversTypes['Image']>, ParentType, ContextType>;
|
|
2611
2612
|
followButtonVariant: Resolver<Maybe<ResolversTypes['FollowButtonVariant']>, ParentType, ContextType>;
|
|
2612
2613
|
genreConcept: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
|
|
2614
|
+
headerSlot: Resolver<Maybe<ResolversTypes['TopperHeaderSlot']>, ParentType, ContextType>;
|
|
2613
2615
|
headline: Resolver<ResolversTypes['String'], ParentType, ContextType>;
|
|
2614
2616
|
images: Resolver<Maybe<ReadonlyArray<ResolversTypes['Image']>>, ParentType, ContextType>;
|
|
2615
2617
|
intro: Resolver<Maybe<ResolversTypes['RichText']>, ParentType, ContextType>;
|
|
@@ -2652,6 +2654,7 @@ export type FullBleedTopperResolvers<ContextType = QueryContext, ParentType exte
|
|
|
2652
2654
|
fallbackImage: Resolver<Maybe<ResolversTypes['Image']>, ParentType, ContextType>;
|
|
2653
2655
|
followButtonVariant: Resolver<Maybe<ResolversTypes['FollowButtonVariant']>, ParentType, ContextType>;
|
|
2654
2656
|
genreConcept: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
|
|
2657
|
+
headerSlot: Resolver<Maybe<ResolversTypes['TopperHeaderSlot']>, ParentType, ContextType>;
|
|
2655
2658
|
headline: Resolver<ResolversTypes['String'], ParentType, ContextType>;
|
|
2656
2659
|
images: Resolver<Maybe<ReadonlyArray<ResolversTypes['Image']>>, ParentType, ContextType>;
|
|
2657
2660
|
intro: Resolver<Maybe<ResolversTypes['RichText']>, ParentType, ContextType>;
|
|
@@ -2947,6 +2950,7 @@ export type OpinionTopperResolvers<ContextType = QueryContext, ParentType extend
|
|
|
2947
2950
|
fallbackImage: Resolver<Maybe<ResolversTypes['Image']>, ParentType, ContextType>;
|
|
2948
2951
|
followButtonVariant: Resolver<Maybe<ResolversTypes['FollowButtonVariant']>, ParentType, ContextType>;
|
|
2949
2952
|
genreConcept: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
|
|
2953
|
+
headerSlot: Resolver<Maybe<ResolversTypes['TopperHeaderSlot']>, ParentType, ContextType>;
|
|
2950
2954
|
headline: Resolver<ResolversTypes['String'], ParentType, ContextType>;
|
|
2951
2955
|
headshot: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType, Partial<OpinionTopperHeadshotArgs>>;
|
|
2952
2956
|
images: Resolver<Maybe<ReadonlyArray<ResolversTypes['Image']>>, ParentType, ContextType>;
|
|
@@ -2967,22 +2971,6 @@ export type PageInfoResolvers<ContextType = QueryContext, ParentType extends Res
|
|
|
2967
2971
|
startCursor: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
|
|
2968
2972
|
__isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>;
|
|
2969
2973
|
}>;
|
|
2970
|
-
export type PartnerContentTopperResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['PartnerContentTopper'] = ResolversParentTypes['PartnerContentTopper']> = ResolversObject<{
|
|
2971
|
-
backgroundBox: Resolver<Maybe<ResolversTypes['Boolean']>, ParentType, ContextType>;
|
|
2972
|
-
backgroundColour: Resolver<Maybe<ResolversTypes['TopperBackgroundColour']>, ParentType, ContextType>;
|
|
2973
|
-
displayConcept: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
|
|
2974
|
-
fallbackImage: Resolver<Maybe<ResolversTypes['Image']>, ParentType, ContextType>;
|
|
2975
|
-
followButtonVariant: Resolver<Maybe<ResolversTypes['FollowButtonVariant']>, ParentType, ContextType>;
|
|
2976
|
-
genreConcept: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
|
|
2977
|
-
headline: Resolver<ResolversTypes['String'], ParentType, ContextType>;
|
|
2978
|
-
images: Resolver<Maybe<ReadonlyArray<ResolversTypes['Image']>>, ParentType, ContextType>;
|
|
2979
|
-
intro: Resolver<Maybe<ResolversTypes['RichText']>, ParentType, ContextType>;
|
|
2980
|
-
isLargeHeadline: Resolver<Maybe<ResolversTypes['Boolean']>, ParentType, ContextType>;
|
|
2981
|
-
layout: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
|
|
2982
|
-
layoutConfiguration: Resolver<Maybe<ResolversTypes['TopperLayout']>, ParentType, ContextType>;
|
|
2983
|
-
textShadow: Resolver<Maybe<ResolversTypes['Boolean']>, ParentType, ContextType>;
|
|
2984
|
-
__isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>;
|
|
2985
|
-
}>;
|
|
2986
2974
|
export type PersonResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['Person'] = ResolversParentTypes['Person']> = ResolversObject<{
|
|
2987
2975
|
headshot: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType, Partial<PersonHeadshotArgs>>;
|
|
2988
2976
|
prefLabel: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
|
|
@@ -3070,6 +3058,7 @@ export type PodcastTopperResolvers<ContextType = QueryContext, ParentType extend
|
|
|
3070
3058
|
displayConcept: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
|
|
3071
3059
|
followButtonVariant: Resolver<Maybe<ResolversTypes['FollowButtonVariant']>, ParentType, ContextType>;
|
|
3072
3060
|
genreConcept: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
|
|
3061
|
+
headerSlot: Resolver<Maybe<ResolversTypes['TopperHeaderSlot']>, ParentType, ContextType>;
|
|
3073
3062
|
headline: Resolver<ResolversTypes['String'], ParentType, ContextType>;
|
|
3074
3063
|
headshot: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType, Partial<PodcastTopperHeadshotArgs>>;
|
|
3075
3064
|
intro: Resolver<Maybe<ResolversTypes['RichText']>, ParentType, ContextType>;
|
|
@@ -3129,6 +3118,7 @@ export type SplitTextTopperResolvers<ContextType = QueryContext, ParentType exte
|
|
|
3129
3118
|
fallbackImage: Resolver<Maybe<ResolversTypes['Image']>, ParentType, ContextType>;
|
|
3130
3119
|
followButtonVariant: Resolver<Maybe<ResolversTypes['FollowButtonVariant']>, ParentType, ContextType>;
|
|
3131
3120
|
genreConcept: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
|
|
3121
|
+
headerSlot: Resolver<Maybe<ResolversTypes['TopperHeaderSlot']>, ParentType, ContextType>;
|
|
3132
3122
|
headline: Resolver<ResolversTypes['String'], ParentType, ContextType>;
|
|
3133
3123
|
images: Resolver<Maybe<ReadonlyArray<ResolversTypes['Image']>>, ParentType, ContextType>;
|
|
3134
3124
|
intro: Resolver<Maybe<ResolversTypes['RichText']>, ParentType, ContextType>;
|
|
@@ -3179,12 +3169,13 @@ export type TeaserIndicatorsResolvers<ContextType = QueryContext, ParentType ext
|
|
|
3179
3169
|
__isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>;
|
|
3180
3170
|
}>;
|
|
3181
3171
|
export type TopperResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['Topper'] = ResolversParentTypes['Topper']> = ResolversObject<{
|
|
3182
|
-
__resolveType?: TypeResolveFn<'BasicTopper' | 'BrandedTopper' | 'DeepLandscapeTopper' | 'DeepPortraitTopper' | 'FullBleedTopper' | 'OpinionTopper' | '
|
|
3172
|
+
__resolveType?: TypeResolveFn<'BasicTopper' | 'BrandedTopper' | 'DeepLandscapeTopper' | 'DeepPortraitTopper' | 'FullBleedTopper' | 'OpinionTopper' | 'PodcastTopper' | 'SplitTextTopper' | 'TopperWithFlourish', ParentType, ContextType>;
|
|
3183
3173
|
backgroundBox: Resolver<Maybe<ResolversTypes['Boolean']>, ParentType, ContextType>;
|
|
3184
3174
|
backgroundColour: Resolver<Maybe<ResolversTypes['TopperBackgroundColour']>, ParentType, ContextType>;
|
|
3185
3175
|
displayConcept: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
|
|
3186
3176
|
followButtonVariant: Resolver<Maybe<ResolversTypes['FollowButtonVariant']>, ParentType, ContextType>;
|
|
3187
3177
|
genreConcept: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
|
|
3178
|
+
headerSlot: Resolver<Maybe<ResolversTypes['TopperHeaderSlot']>, ParentType, ContextType>;
|
|
3188
3179
|
headline: Resolver<ResolversTypes['String'], ParentType, ContextType>;
|
|
3189
3180
|
intro: Resolver<Maybe<ResolversTypes['RichText']>, ParentType, ContextType>;
|
|
3190
3181
|
textShadow: Resolver<Maybe<ResolversTypes['Boolean']>, ParentType, ContextType>;
|
|
@@ -3192,6 +3183,13 @@ export type TopperResolvers<ContextType = QueryContext, ParentType extends Resol
|
|
|
3192
3183
|
export interface TopperBackgroundColourScalarConfig extends GraphQLScalarTypeConfig<ResolversTypes['TopperBackgroundColour'], any> {
|
|
3193
3184
|
name: 'TopperBackgroundColour';
|
|
3194
3185
|
}
|
|
3186
|
+
export type TopperHeaderSlotResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['TopperHeaderSlot'] = ResolversParentTypes['TopperHeaderSlot']> = ResolversObject<{
|
|
3187
|
+
type: Resolver<ResolversTypes['TopperHeaderSlotType'], ParentType, ContextType>;
|
|
3188
|
+
__isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>;
|
|
3189
|
+
}>;
|
|
3190
|
+
export interface TopperHeaderSlotTypeScalarConfig extends GraphQLScalarTypeConfig<ResolversTypes['TopperHeaderSlotType'], any> {
|
|
3191
|
+
name: 'TopperHeaderSlotType';
|
|
3192
|
+
}
|
|
3195
3193
|
export type TopperLayoutResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['TopperLayout'] = ResolversParentTypes['TopperLayout']> = ResolversObject<{
|
|
3196
3194
|
assetSlot: Resolver<Maybe<ResolversTypes['TopperLayoutAssetSlot']>, ParentType, ContextType>;
|
|
3197
3195
|
name: Resolver<ResolversTypes['String'], ParentType, ContextType>;
|
|
@@ -3215,6 +3213,7 @@ export type TopperWithFlourishResolvers<ContextType = QueryContext, ParentType e
|
|
|
3215
3213
|
displayConcept: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
|
|
3216
3214
|
followButtonVariant: Resolver<Maybe<ResolversTypes['FollowButtonVariant']>, ParentType, ContextType>;
|
|
3217
3215
|
genreConcept: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
|
|
3216
|
+
headerSlot: Resolver<Maybe<ResolversTypes['TopperHeaderSlot']>, ParentType, ContextType>;
|
|
3218
3217
|
headline: Resolver<ResolversTypes['String'], ParentType, ContextType>;
|
|
3219
3218
|
intro: Resolver<Maybe<ResolversTypes['RichText']>, ParentType, ContextType>;
|
|
3220
3219
|
isLargeHeadline: Resolver<Maybe<ResolversTypes['Boolean']>, ParentType, ContextType>;
|
|
@@ -3230,7 +3229,7 @@ export type TopperWithHeadshotResolvers<ContextType = QueryContext, ParentType e
|
|
|
3230
3229
|
headshot: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType, Partial<TopperWithHeadshotHeadshotArgs>>;
|
|
3231
3230
|
}>;
|
|
3232
3231
|
export type TopperWithImagesResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['TopperWithImages'] = ResolversParentTypes['TopperWithImages']> = ResolversObject<{
|
|
3233
|
-
__resolveType?: TypeResolveFn<'BasicTopper' | 'BrandedTopper' | 'DeepLandscapeTopper' | 'DeepPortraitTopper' | 'FullBleedTopper' | 'OpinionTopper' | '
|
|
3232
|
+
__resolveType?: TypeResolveFn<'BasicTopper' | 'BrandedTopper' | 'DeepLandscapeTopper' | 'DeepPortraitTopper' | 'FullBleedTopper' | 'OpinionTopper' | 'SplitTextTopper', ParentType, ContextType>;
|
|
3234
3233
|
fallbackImage: Resolver<Maybe<ResolversTypes['Image']>, ParentType, ContextType>;
|
|
3235
3234
|
images: Resolver<Maybe<ReadonlyArray<ResolversTypes['Image']>>, ParentType, ContextType>;
|
|
3236
3235
|
}>;
|
|
@@ -3239,7 +3238,7 @@ export type TopperWithPackageResolvers<ContextType = QueryContext, ParentType ex
|
|
|
3239
3238
|
design: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
|
|
3240
3239
|
}>;
|
|
3241
3240
|
export type TopperWithThemeResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['TopperWithTheme'] = ResolversParentTypes['TopperWithTheme']> = ResolversObject<{
|
|
3242
|
-
__resolveType?: TypeResolveFn<'BrandedTopper' | 'DeepLandscapeTopper' | 'DeepPortraitTopper' | 'FullBleedTopper' | 'OpinionTopper' | '
|
|
3241
|
+
__resolveType?: TypeResolveFn<'BrandedTopper' | 'DeepLandscapeTopper' | 'DeepPortraitTopper' | 'FullBleedTopper' | 'OpinionTopper' | 'PodcastTopper' | 'SplitTextTopper' | 'TopperWithFlourish', ParentType, ContextType>;
|
|
3243
3242
|
isLargeHeadline: Resolver<Maybe<ResolversTypes['Boolean']>, ParentType, ContextType>;
|
|
3244
3243
|
layout: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
|
|
3245
3244
|
layoutConfiguration: Resolver<Maybe<ResolversTypes['TopperLayout']>, ParentType, ContextType>;
|
|
@@ -3356,7 +3355,6 @@ export type Resolvers<ContextType = QueryContext> = ResolversObject<{
|
|
|
3356
3355
|
OpinionTopper: OpinionTopperResolvers<ContextType>;
|
|
3357
3356
|
PackageDesign: GraphQLScalarType;
|
|
3358
3357
|
PageInfo: PageInfoResolvers<ContextType>;
|
|
3359
|
-
PartnerContentTopper: PartnerContentTopperResolvers<ContextType>;
|
|
3360
3358
|
Person: PersonResolvers<ContextType>;
|
|
3361
3359
|
Picture: PictureResolvers<ContextType>;
|
|
3362
3360
|
PictureFullBleed: PictureFullBleedResolvers<ContextType>;
|
|
@@ -3379,6 +3377,8 @@ export type Resolvers<ContextType = QueryContext> = ResolversObject<{
|
|
|
3379
3377
|
TeaserIndicators: TeaserIndicatorsResolvers<ContextType>;
|
|
3380
3378
|
Topper: TopperResolvers<ContextType>;
|
|
3381
3379
|
TopperBackgroundColour: GraphQLScalarType;
|
|
3380
|
+
TopperHeaderSlot: TopperHeaderSlotResolvers<ContextType>;
|
|
3381
|
+
TopperHeaderSlotType: GraphQLScalarType;
|
|
3382
3382
|
TopperLayout: TopperLayoutResolvers<ContextType>;
|
|
3383
3383
|
TopperLayoutAssetSlot: GraphQLScalarType;
|
|
3384
3384
|
TopperWithBrand: TopperWithBrandResolvers<ContextType>;
|
package/lib/model/Topper.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Content } from './Content';
|
|
2
2
|
import { CAPIImage } from './Image';
|
|
3
3
|
import type { QueryContext } from '..';
|
|
4
|
-
import type { TopperBackgroundColourValues, FollowButtonVariant, TopperType, TopperLayout } from './strategies/topper/TopperStrategy';
|
|
4
|
+
import type { TopperBackgroundColourValues, FollowButtonVariant, TopperType, TopperLayout, TopperHeaderSlot } from './strategies/topper/TopperStrategy';
|
|
5
5
|
import { RichText } from './RichText';
|
|
6
6
|
import { LeadFlourish } from './LeadFlourish';
|
|
7
7
|
import type { TopperWithHeadshotHeadshotArgs, TopperWithCoverImageCoverImageArgs } from '../generated';
|
|
@@ -41,4 +41,5 @@ export declare class Topper {
|
|
|
41
41
|
};
|
|
42
42
|
headshot(args: TopperWithHeadshotHeadshotArgs): Promise<string | null>;
|
|
43
43
|
coverImage(args: TopperWithCoverImageCoverImageArgs): Promise<string | null>;
|
|
44
|
+
headerSlot(): TopperHeaderSlot | null;
|
|
44
45
|
}
|
package/lib/model/Topper.js
CHANGED
|
@@ -73,9 +73,6 @@ class Topper {
|
|
|
73
73
|
if (this.capiResponse.topper()?.layout === 'flourish') {
|
|
74
74
|
return 'TopperWithFlourish';
|
|
75
75
|
}
|
|
76
|
-
if (this.capiResponse.isPartnerContent()) {
|
|
77
|
-
return 'PartnerContentTopper';
|
|
78
|
-
}
|
|
79
76
|
if (this.capiResponse.topper()?.layout?.startsWith('full-bleed')) {
|
|
80
77
|
return 'FullBleedTopper';
|
|
81
78
|
}
|
|
@@ -252,6 +249,12 @@ class Topper {
|
|
|
252
249
|
return strategy;
|
|
253
250
|
return null;
|
|
254
251
|
}
|
|
252
|
+
headerSlot() {
|
|
253
|
+
const strategy = this.strategy.headerSlot?.();
|
|
254
|
+
if (strategy !== undefined)
|
|
255
|
+
return strategy;
|
|
256
|
+
return null;
|
|
257
|
+
}
|
|
255
258
|
}
|
|
256
259
|
exports.Topper = Topper;
|
|
257
260
|
//# sourceMappingURL=Topper.js.map
|
package/lib/model/Topper.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Topper.js","sourceRoot":"","sources":["../../src/model/Topper.ts"],"names":[],"mappings":";;;;;;AACA,mCAAmC;AAEnC,8DAAmE;
|
|
1
|
+
{"version":3,"file":"Topper.js","sourceRoot":"","sources":["../../src/model/Topper.ts"],"names":[],"mappings":"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"}
|
package/lib/model/Topper.test.js
CHANGED
|
@@ -588,5 +588,25 @@ describe('Topper model', () => {
|
|
|
588
588
|
await expect(topper.coverImage({})).resolves.toBeNull();
|
|
589
589
|
});
|
|
590
590
|
});
|
|
591
|
+
describe('can provide a header slot', () => {
|
|
592
|
+
it('uses strategy value when strategy returns a value', () => {
|
|
593
|
+
const mockStrategy = {
|
|
594
|
+
headerSlot: jest.fn().mockReturnValue({ type: 'partner-content' }),
|
|
595
|
+
};
|
|
596
|
+
jest
|
|
597
|
+
.spyOn(Topper_1.Topper.prototype, 'createStrategy')
|
|
598
|
+
.mockReturnValue(mockStrategy);
|
|
599
|
+
const clonedBase = (0, clone_deep_1.default)(capiObject_1.baseCapiObject);
|
|
600
|
+
const capiResponse = new Content_1.Content(clonedBase, context);
|
|
601
|
+
const topper = new Topper_1.Topper(capiResponse, context);
|
|
602
|
+
expect(topper.headerSlot()).toEqual({ type: 'partner-content' });
|
|
603
|
+
});
|
|
604
|
+
it('defaults to null when there is no returned value from strategy', () => {
|
|
605
|
+
const clonedBase = (0, clone_deep_1.default)(capiObject_1.baseCapiObject);
|
|
606
|
+
const capiResponse = new Content_1.Content(clonedBase, context);
|
|
607
|
+
const topper = new Topper_1.Topper(capiResponse, context);
|
|
608
|
+
expect(topper.headerSlot()).toBeNull();
|
|
609
|
+
});
|
|
610
|
+
});
|
|
591
611
|
});
|
|
592
612
|
//# sourceMappingURL=Topper.test.js.map
|