@financial-times/cp-content-pipeline-schema 2.9.2 → 2.10.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 (69) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/lib/generated/index.d.ts +87 -2
  3. package/lib/model/CapiResponse.d.ts +6 -0
  4. package/lib/model/CapiResponse.js +5 -0
  5. package/lib/model/CapiResponse.js.map +1 -1
  6. package/lib/model/FlourishSource.d.ts +22 -0
  7. package/lib/model/FlourishSource.js +89 -0
  8. package/lib/model/FlourishSource.js.map +1 -0
  9. package/lib/model/FlourishSource.test.d.ts +1 -0
  10. package/lib/model/FlourishSource.test.js +67 -0
  11. package/lib/model/FlourishSource.test.js.map +1 -0
  12. package/lib/model/LeadFlourish.d.ts +13 -0
  13. package/lib/model/LeadFlourish.js +35 -0
  14. package/lib/model/LeadFlourish.js.map +1 -0
  15. package/lib/model/LeadFlourish.test.d.ts +1 -0
  16. package/lib/model/LeadFlourish.test.js +62 -0
  17. package/lib/model/LeadFlourish.test.js.map +1 -0
  18. package/lib/model/Topper.d.ts +4 -1
  19. package/lib/model/Topper.js +15 -0
  20. package/lib/model/Topper.js.map +1 -1
  21. package/lib/model/Topper.test.js +21 -0
  22. package/lib/model/Topper.test.js.map +1 -1
  23. package/lib/model/schemas/capi/article.d.ts +28 -0
  24. package/lib/model/schemas/capi/article.js +1 -0
  25. package/lib/model/schemas/capi/article.js.map +1 -1
  26. package/lib/model/schemas/capi/base-schema.d.ts +41 -0
  27. package/lib/model/schemas/capi/base-schema.js +8 -1
  28. package/lib/model/schemas/capi/base-schema.js.map +1 -1
  29. package/lib/model/schemas/capi/content-package.d.ts +28 -0
  30. package/lib/model/schemas/capi/content-package.js +1 -0
  31. package/lib/model/schemas/capi/content-package.js.map +1 -1
  32. package/lib/model/schemas/capi/live-blog-package.d.ts +5 -0
  33. package/lib/model/schemas/capi/placeholder.d.ts +5 -0
  34. package/lib/resolvers/content-tree/references/Flourish.d.ts +8 -2
  35. package/lib/resolvers/content-tree/references/Flourish.js +15 -40
  36. package/lib/resolvers/content-tree/references/Flourish.js.map +1 -1
  37. package/lib/resolvers/content-tree/references/Flourish.test.js +0 -30
  38. package/lib/resolvers/content-tree/references/Flourish.test.js.map +1 -1
  39. package/lib/resolvers/index.d.ts +36 -9
  40. package/lib/resolvers/index.js +2 -0
  41. package/lib/resolvers/index.js.map +1 -1
  42. package/lib/resolvers/leadFlourish.d.ts +16 -0
  43. package/lib/resolvers/leadFlourish.js +28 -0
  44. package/lib/resolvers/leadFlourish.js.map +1 -0
  45. package/lib/resolvers/topper.d.ts +23 -9
  46. package/lib/resolvers/topper.js +6 -0
  47. package/lib/resolvers/topper.js.map +1 -1
  48. package/package.json +1 -1
  49. package/queries/article.graphql +26 -0
  50. package/src/generated/index.ts +93 -2
  51. package/src/model/CapiResponse.ts +6 -0
  52. package/src/model/FlourishSource.test.ts +93 -0
  53. package/src/model/FlourishSource.ts +103 -0
  54. package/src/model/LeadFlourish.test.ts +71 -0
  55. package/src/model/LeadFlourish.ts +30 -0
  56. package/src/model/Topper.test.ts +26 -0
  57. package/src/model/Topper.ts +18 -0
  58. package/src/model/schemas/capi/article.ts +1 -0
  59. package/src/model/schemas/capi/base-schema.ts +8 -0
  60. package/src/model/schemas/capi/content-package.ts +1 -0
  61. package/src/resolvers/content-tree/references/Flourish.test.ts +2 -49
  62. package/src/resolvers/content-tree/references/Flourish.ts +15 -59
  63. package/src/resolvers/index.ts +2 -0
  64. package/src/resolvers/leadFlourish.ts +31 -0
  65. package/src/resolvers/topper.ts +10 -0
  66. package/src/types/internal-content.d.ts +2 -0
  67. package/tsconfig.tsbuildinfo +1 -1
  68. package/typedefs/leadFlouish.graphql +29 -0
  69. package/typedefs/topper.graphql +35 -0
package/CHANGELOG.md CHANGED
@@ -1,5 +1,18 @@
1
1
  # Changelog
2
2
 
3
+ ## [2.10.0](https://github.com/Financial-Times/cp-content-pipeline/compare/cp-content-pipeline-schema-v2.9.2...cp-content-pipeline-schema-v2.10.0) (2024-05-28)
4
+
5
+
6
+ ### Features
7
+
8
+ * flourish in toppers ([add2028](https://github.com/Financial-Times/cp-content-pipeline/commit/add2028cf0448de303229f9322fa143380724c22))
9
+
10
+
11
+ ### Bug Fixes
12
+
13
+ * ensure layoutwidth is always set only for flourish toppers ([cc7909b](https://github.com/Financial-Times/cp-content-pipeline/commit/cc7909b09fe76cbc3200366e5c3f1ef51ac1ea2e))
14
+ * handle no id and hide the title for toppers ([fffffc8](https://github.com/Financial-Times/cp-content-pipeline/commit/fffffc89b9fbf826152c601f3c9b9c6b037098ea))
15
+
3
16
  ## [2.9.2](https://github.com/Financial-Times/cp-content-pipeline/compare/cp-content-pipeline-schema-v2.9.1...cp-content-pipeline-schema-v2.9.2) (2024-05-10)
4
17
 
5
18
 
@@ -7,6 +7,8 @@ import type { Clip as ClipModel } from '../model/Clip';
7
7
  import type { Picture as PictureModel } from '../model/Picture';
8
8
  import type { RichText as RichTextModel } from '../model/RichText';
9
9
  import type { Topper as TopperModel } from '../model/Topper';
10
+ import type { LeadFlourish as LeadFlourishModel } from '../model/LeadFlourish';
11
+ import type { FlourishSource as FlourishSourceModel } from '../model/FlourishSource';
10
12
  import type { ContentTree } from '@financial-times/content-tree';
11
13
  import type { ReferenceWithCAPIData } from '../resolvers/content-tree/references';
12
14
  import type { Video as VideoNode, ClipSet as ClipSetNode, OldClip as OldClipNode, RawImage as RawImageNode } from '../resolvers/content-tree/Workarounds';
@@ -573,6 +575,18 @@ export type FlourishFallback = {
573
575
  /** The width in pixels of the fallback image. */
574
576
  readonly width?: Maybe<Scalars['Int']['output']>;
575
577
  };
578
+ export type FlourishSource = {
579
+ /** The format of the source, eg. 'standard'. */
580
+ readonly format?: Maybe<Scalars['String']['output']>;
581
+ /** The height of the source. */
582
+ readonly height?: Maybe<Scalars['Int']['output']>;
583
+ /** The type of the source, e.g. visualisation for leadFlourish */
584
+ readonly type?: Maybe<Scalars['String']['output']>;
585
+ /** The Origami image service url */
586
+ readonly url?: Maybe<Scalars['String']['output']>;
587
+ /** The width of the source. */
588
+ readonly width?: Maybe<Scalars['Int']['output']>;
589
+ };
576
590
  export type FullBleedTopper = Topper & TopperWithBrand & TopperWithImages & TopperWithTheme & {
577
591
  /** Whether the topper should have a background box. */
578
592
  readonly backgroundBox?: Maybe<Scalars['Boolean']['output']>;
@@ -898,6 +912,15 @@ export type LayoutImage = Reference & {
898
912
  /** The type of the reference, eg. 'layout-image'. */
899
913
  readonly type: Scalars['String']['output'];
900
914
  };
915
+ export type LeadFlourish = {
916
+ /** The description of the Flourish chart. */
917
+ readonly description?: Maybe<Scalars['String']['output']>;
918
+ readonly fallbackImage: FlourishSource;
919
+ /** The id of the Flourish chart. */
920
+ readonly id?: Maybe<Scalars['String']['output']>;
921
+ /** The type of the chart, eg. 'visualisation'. */
922
+ readonly type?: Maybe<Scalars['String']['output']>;
923
+ };
901
924
  export type LiveBlogPackage = Content & {
902
925
  /** A scalar representing the access level of the article, eg. 'free'. */
903
926
  readonly accessLevel?: Maybe<Scalars['AccessLevel']['output']>;
@@ -1397,6 +1420,30 @@ export type TopperWithBrand = {
1397
1420
  /** The concept object of the genre, eg. {'type': 'GENRE', 'prefLabel': 'Opinion', ...}. */
1398
1421
  readonly genreConcept?: Maybe<Concept>;
1399
1422
  };
1423
+ export type TopperWithFlourish = Topper & {
1424
+ /** Whether the topper should have a background box. */
1425
+ readonly backgroundBox?: Maybe<Scalars['Boolean']['output']>;
1426
+ /** The background colour of the topper. */
1427
+ readonly backgroundColour?: Maybe<Scalars['TopperBackgroundColour']['output']>;
1428
+ /** The concept object to be displayed, eg. {'type': 'TOPIC', 'prefLabel': 'Non-dom tax status', ...}. */
1429
+ readonly displayConcept?: Maybe<Concept>;
1430
+ /** The variant of the follow button to be displayed on the topper. */
1431
+ readonly followButtonVariant?: Maybe<Scalars['FollowButtonVariant']['output']>;
1432
+ /** The concept object of the genre, eg. {'type': 'GENRE', 'prefLabel': 'Opinion', ...}. */
1433
+ readonly genreConcept?: Maybe<Concept>;
1434
+ /** The headline text of the topper. */
1435
+ readonly headline: Scalars['String']['output'];
1436
+ /** An abstract syntax tree of the introduction text. */
1437
+ readonly intro?: Maybe<RichText>;
1438
+ /** The layout type of the topper, eg. 'flourish'. */
1439
+ readonly layout?: Maybe<Scalars['String']['output']>;
1440
+ /** The layout width of the topper, eg. 'full-grid'. */
1441
+ readonly layoutWidth?: Maybe<Scalars['String']['output']>;
1442
+ /** The flourish object to be displayed, eg. {'type': 'visualisation', ...}. */
1443
+ readonly leadFlourish?: Maybe<LeadFlourish>;
1444
+ /** Whether the topper should have a text shadow. */
1445
+ readonly textShadow?: Maybe<Scalars['Boolean']['output']>;
1446
+ };
1400
1447
  export type TopperWithHeadshot = {
1401
1448
  /** The url of the headshot image, eg. for columns with one key author. */
1402
1449
  readonly headshot?: Maybe<Scalars['String']['output']>;
@@ -1531,7 +1578,7 @@ export type ResolversInterfaceTypes<RefType extends Record<string, unknown>> = R
1531
1578
  Image: (ImageModel) | (ImageModel) | (ImageModel) | (ImageModel) | (ImageModel) | (ImageModel) | (ImageModel) | (ImageModel) | (ImageModel);
1532
1579
  Picture: (PictureModel) | (PictureModel) | (PictureModel);
1533
1580
  Reference: (ReferenceWithCAPIData<ClipSetNode | OldClipNode>) | (ReferenceWithCAPIData<ContentTree.Flourish>) | (ReferenceWithCAPIData<ContentTree.ImageSet>) | (ReferenceWithCAPIData<ContentTree.LayoutImage>) | (ReferenceWithCAPIData<ContentTree.ImageSet>) | (ReferenceWithCAPIData<RawImageNode>) | (ReferenceWithCAPIData<ContentTree.Recommended>) | (ReferenceWithCAPIData<ContentTree.ScrollyImage>) | (ReferenceWithCAPIData<ContentTree.Tweet>) | (ReferenceWithCAPIData<VideoNode>);
1534
- Topper: (TopperModel) | (TopperModel) | (TopperModel) | (TopperModel) | (TopperModel) | (TopperModel) | (TopperModel) | (TopperModel);
1581
+ Topper: (TopperModel) | (TopperModel) | (TopperModel) | (TopperModel) | (TopperModel) | (TopperModel) | (TopperModel) | (TopperModel) | (TopperModel);
1535
1582
  TopperWithBrand: (TopperModel) | (TopperModel) | (TopperModel) | (TopperModel) | (TopperModel) | (TopperModel);
1536
1583
  TopperWithHeadshot: (TopperModel) | (TopperModel);
1537
1584
  TopperWithImages: (TopperModel) | (TopperModel) | (TopperModel) | (TopperModel);
@@ -1567,6 +1614,7 @@ export type ResolversTypes = ResolversObject<{
1567
1614
  Float: ResolverTypeWrapper<Scalars['Float']['output']>;
1568
1615
  Flourish: ResolverTypeWrapper<ReferenceWithCAPIData<ContentTree.Flourish>>;
1569
1616
  FlourishFallback: ResolverTypeWrapper<FlourishFallback>;
1617
+ FlourishSource: ResolverTypeWrapper<FlourishSourceModel>;
1570
1618
  FollowButtonVariant: ResolverTypeWrapper<Scalars['FollowButtonVariant']['output']>;
1571
1619
  FullBleedTopper: ResolverTypeWrapper<TopperModel>;
1572
1620
  ID: ResolverTypeWrapper<Scalars['ID']['output']>;
@@ -1588,6 +1636,7 @@ export type ResolversTypes = ResolversObject<{
1588
1636
  Int: ResolverTypeWrapper<Scalars['Int']['output']>;
1589
1637
  JSON: ResolverTypeWrapper<Scalars['JSON']['output']>;
1590
1638
  LayoutImage: ResolverTypeWrapper<ReferenceWithCAPIData<ContentTree.LayoutImage>>;
1639
+ LeadFlourish: ResolverTypeWrapper<LeadFlourishModel>;
1591
1640
  LiveBlogPackage: ResolverTypeWrapper<CapiResponse>;
1592
1641
  LiveBlogPost: ResolverTypeWrapper<CapiResponse>;
1593
1642
  MainImage: ResolverTypeWrapper<ReferenceWithCAPIData<ContentTree.ImageSet>>;
@@ -1620,6 +1669,7 @@ export type ResolversTypes = ResolversObject<{
1620
1669
  Topper: ResolverTypeWrapper<TopperModel>;
1621
1670
  TopperBackgroundColour: ResolverTypeWrapper<Scalars['TopperBackgroundColour']['output']>;
1622
1671
  TopperWithBrand: ResolverTypeWrapper<TopperModel>;
1672
+ TopperWithFlourish: ResolverTypeWrapper<TopperModel>;
1623
1673
  TopperWithHeadshot: ResolverTypeWrapper<ResolversInterfaceTypes<ResolversTypes>['TopperWithHeadshot']>;
1624
1674
  TopperWithImages: ResolverTypeWrapper<TopperModel>;
1625
1675
  TopperWithPackage: ResolverTypeWrapper<TopperModel>;
@@ -1657,6 +1707,7 @@ export type ResolversParentTypes = ResolversObject<{
1657
1707
  Float: Scalars['Float']['output'];
1658
1708
  Flourish: ReferenceWithCAPIData<ContentTree.Flourish>;
1659
1709
  FlourishFallback: FlourishFallback;
1710
+ FlourishSource: FlourishSourceModel;
1660
1711
  FollowButtonVariant: Scalars['FollowButtonVariant']['output'];
1661
1712
  FullBleedTopper: TopperModel;
1662
1713
  ID: Scalars['ID']['output'];
@@ -1678,6 +1729,7 @@ export type ResolversParentTypes = ResolversObject<{
1678
1729
  Int: Scalars['Int']['output'];
1679
1730
  JSON: Scalars['JSON']['output'];
1680
1731
  LayoutImage: ReferenceWithCAPIData<ContentTree.LayoutImage>;
1732
+ LeadFlourish: LeadFlourishModel;
1681
1733
  LiveBlogPackage: CapiResponse;
1682
1734
  LiveBlogPost: CapiResponse;
1683
1735
  MainImage: ReferenceWithCAPIData<ContentTree.ImageSet>;
@@ -1710,6 +1762,7 @@ export type ResolversParentTypes = ResolversObject<{
1710
1762
  Topper: TopperModel;
1711
1763
  TopperBackgroundColour: Scalars['TopperBackgroundColour']['output'];
1712
1764
  TopperWithBrand: TopperModel;
1765
+ TopperWithFlourish: TopperModel;
1713
1766
  TopperWithHeadshot: ResolversInterfaceTypes<ResolversParentTypes>['TopperWithHeadshot'];
1714
1767
  TopperWithImages: TopperModel;
1715
1768
  TopperWithPackage: TopperModel;
@@ -1984,6 +2037,14 @@ export type FlourishFallbackResolvers<ContextType = QueryContext, ParentType ext
1984
2037
  width: Resolver<Maybe<ResolversTypes['Int']>, ParentType, ContextType>;
1985
2038
  __isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>;
1986
2039
  }>;
2040
+ export type FlourishSourceResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['FlourishSource'] = ResolversParentTypes['FlourishSource']> = ResolversObject<{
2041
+ format: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
2042
+ height: Resolver<Maybe<ResolversTypes['Int']>, ParentType, ContextType>;
2043
+ type: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
2044
+ url: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
2045
+ width: Resolver<Maybe<ResolversTypes['Int']>, ParentType, ContextType>;
2046
+ __isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>;
2047
+ }>;
1987
2048
  export interface FollowButtonVariantScalarConfig extends GraphQLScalarTypeConfig<ResolversTypes['FollowButtonVariant'], any> {
1988
2049
  name: 'FollowButtonVariant';
1989
2050
  }
@@ -2168,6 +2229,13 @@ export type LayoutImageResolvers<ContextType = QueryContext, ParentType extends
2168
2229
  type: Resolver<ResolversTypes['String'], ParentType, ContextType>;
2169
2230
  __isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>;
2170
2231
  }>;
2232
+ export type LeadFlourishResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['LeadFlourish'] = ResolversParentTypes['LeadFlourish']> = ResolversObject<{
2233
+ description: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
2234
+ fallbackImage: Resolver<ResolversTypes['FlourishSource'], ParentType, ContextType>;
2235
+ id: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
2236
+ type: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
2237
+ __isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>;
2238
+ }>;
2171
2239
  export type LiveBlogPackageResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['LiveBlogPackage'] = ResolversParentTypes['LiveBlogPackage']> = ResolversObject<{
2172
2240
  accessLevel: Resolver<Maybe<ResolversTypes['AccessLevel']>, ParentType, ContextType>;
2173
2241
  altStandfirst: Resolver<Maybe<ResolversTypes['AltStandfirst']>, ParentType, ContextType>;
@@ -2435,7 +2503,7 @@ export type TeaserResolvers<ContextType = QueryContext, ParentType extends Resol
2435
2503
  __isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>;
2436
2504
  }>;
2437
2505
  export type TopperResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['Topper'] = ResolversParentTypes['Topper']> = ResolversObject<{
2438
- __resolveType?: TypeResolveFn<'BasicTopper' | 'BrandedTopper' | 'DeepLandscapeTopper' | 'DeepPortraitTopper' | 'FullBleedTopper' | 'OpinionTopper' | 'PodcastTopper' | 'SplitTextTopper', ParentType, ContextType>;
2506
+ __resolveType?: TypeResolveFn<'BasicTopper' | 'BrandedTopper' | 'DeepLandscapeTopper' | 'DeepPortraitTopper' | 'FullBleedTopper' | 'OpinionTopper' | 'PodcastTopper' | 'SplitTextTopper' | 'TopperWithFlourish', ParentType, ContextType>;
2439
2507
  backgroundBox: Resolver<Maybe<ResolversTypes['Boolean']>, ParentType, ContextType>;
2440
2508
  backgroundColour: Resolver<Maybe<ResolversTypes['TopperBackgroundColour']>, ParentType, ContextType>;
2441
2509
  displayConcept: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
@@ -2453,6 +2521,20 @@ export type TopperWithBrandResolvers<ContextType = QueryContext, ParentType exte
2453
2521
  brandConcept: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
2454
2522
  genreConcept: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
2455
2523
  }>;
2524
+ export type TopperWithFlourishResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['TopperWithFlourish'] = ResolversParentTypes['TopperWithFlourish']> = ResolversObject<{
2525
+ backgroundBox: Resolver<Maybe<ResolversTypes['Boolean']>, ParentType, ContextType>;
2526
+ backgroundColour: Resolver<Maybe<ResolversTypes['TopperBackgroundColour']>, ParentType, ContextType>;
2527
+ displayConcept: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
2528
+ followButtonVariant: Resolver<Maybe<ResolversTypes['FollowButtonVariant']>, ParentType, ContextType>;
2529
+ genreConcept: Resolver<Maybe<ResolversTypes['Concept']>, ParentType, ContextType>;
2530
+ headline: Resolver<ResolversTypes['String'], ParentType, ContextType>;
2531
+ intro: Resolver<Maybe<ResolversTypes['RichText']>, ParentType, ContextType>;
2532
+ layout: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
2533
+ layoutWidth: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
2534
+ leadFlourish: Resolver<Maybe<ResolversTypes['LeadFlourish']>, ParentType, ContextType>;
2535
+ textShadow: Resolver<Maybe<ResolversTypes['Boolean']>, ParentType, ContextType>;
2536
+ __isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>;
2537
+ }>;
2456
2538
  export type TopperWithHeadshotResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['TopperWithHeadshot'] = ResolversParentTypes['TopperWithHeadshot']> = ResolversObject<{
2457
2539
  __resolveType?: TypeResolveFn<'OpinionTopper' | 'PodcastTopper', ParentType, ContextType>;
2458
2540
  headshot: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType, Partial<TopperWithHeadshotHeadshotArgs>>;
@@ -2533,6 +2615,7 @@ export type Resolvers<ContextType = QueryContext> = ResolversObject<{
2533
2615
  Design: DesignResolvers<ContextType>;
2534
2616
  Flourish: FlourishResolvers<ContextType>;
2535
2617
  FlourishFallback: FlourishFallbackResolvers<ContextType>;
2618
+ FlourishSource: FlourishSourceResolvers<ContextType>;
2536
2619
  FollowButtonVariant: GraphQLScalarType;
2537
2620
  FullBleedTopper: FullBleedTopperResolvers<ContextType>;
2538
2621
  Image: ImageResolvers<ContextType>;
@@ -2552,6 +2635,7 @@ export type Resolvers<ContextType = QueryContext> = ResolversObject<{
2552
2635
  Indicators: IndicatorsResolvers<ContextType>;
2553
2636
  JSON: GraphQLScalarType;
2554
2637
  LayoutImage: LayoutImageResolvers<ContextType>;
2638
+ LeadFlourish: LeadFlourishResolvers<ContextType>;
2555
2639
  LiveBlogPackage: LiveBlogPackageResolvers<ContextType>;
2556
2640
  LiveBlogPost: LiveBlogPostResolvers<ContextType>;
2557
2641
  MainImage: MainImageResolvers<ContextType>;
@@ -2581,6 +2665,7 @@ export type Resolvers<ContextType = QueryContext> = ResolversObject<{
2581
2665
  Topper: TopperResolvers<ContextType>;
2582
2666
  TopperBackgroundColour: GraphQLScalarType;
2583
2667
  TopperWithBrand: TopperWithBrandResolvers<ContextType>;
2668
+ TopperWithFlourish: TopperWithFlourishResolvers<ContextType>;
2584
2669
  TopperWithHeadshot: TopperWithHeadshotResolvers<ContextType>;
2585
2670
  TopperWithImages: TopperWithImagesResolvers<ContextType>;
2586
2671
  TopperWithPackage: TopperWithPackageResolvers<ContextType>;
@@ -21,6 +21,11 @@ export declare class CapiResponse {
21
21
  body(): RichText;
22
22
  bodyXML(): string | null;
23
23
  embeds(): (ImageSet | ClipSet)[];
24
+ leadFlourish(): {
25
+ id: string;
26
+ type: string;
27
+ description: string;
28
+ } | null | undefined;
24
29
  byline({ vanity }: Partial<ContentUrlArgs>): Promise<{
25
30
  tree: {
26
31
  type: string;
@@ -73,6 +78,7 @@ export declare class CapiResponse {
73
78
  standfirst?: string | undefined;
74
79
  backgroundBox?: boolean | undefined;
75
80
  textShadow?: boolean | undefined;
81
+ layoutWidth?: string | undefined;
76
82
  } | null | undefined;
77
83
  authors(): Person[] | null;
78
84
  accessLevel(): LiteralUnionScalarValues<typeof AccessLevel>;
@@ -135,6 +135,11 @@ class CapiResponse {
135
135
  return this.capiData.embeds;
136
136
  return [];
137
137
  }
138
+ leadFlourish() {
139
+ if ('leadFlourish' in this.capiData)
140
+ return this.capiData.leadFlourish;
141
+ return null;
142
+ }
138
143
  byline({ vanity }) {
139
144
  const bylineText = this.rawByline();
140
145
  if (!bylineText)
@@ -1 +1 @@
1
- {"version":3,"file":"CapiResponse.js","sourceRoot":"","sources":["../../src/model/CapiResponse.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CapiResponse.js","sourceRoot":"","sources":["../../src/model/CapiResponse.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ import type { QueryContext } from '..';
2
+ type FlourishData = {
3
+ id: string;
4
+ type?: string;
5
+ description?: string;
6
+ } | null | undefined;
7
+ export declare class FlourishSource {
8
+ #private;
9
+ private flourishData;
10
+ private context;
11
+ private imageMetadata?;
12
+ constructor(flourishData: FlourishData, context: QueryContext);
13
+ id(): string;
14
+ type(): string;
15
+ format(): string;
16
+ flourishUrl(): string;
17
+ private getImageMetadata;
18
+ width(): Promise<number>;
19
+ height(): Promise<number>;
20
+ url(): Promise<string>;
21
+ }
22
+ export {};
@@ -0,0 +1,89 @@
1
+ "use strict";
2
+ var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
3
+ if (kind === "m") throw new TypeError("Private method is not writable");
4
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
5
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
6
+ return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
7
+ };
8
+ var __importDefault = (this && this.__importDefault) || function (mod) {
9
+ return (mod && mod.__esModule) ? mod : { "default": mod };
10
+ };
11
+ var _FlourishSource_systemCode;
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.FlourishSource = void 0;
14
+ const imageService_1 = __importDefault(require("../helpers/imageService"));
15
+ const isError_1 = __importDefault(require("../helpers/isError"));
16
+ const errors_1 = require("@dotcom-reliability-kit/errors");
17
+ class FlourishSource {
18
+ constructor(flourishData, context) {
19
+ this.flourishData = flourishData;
20
+ this.context = context;
21
+ _FlourishSource_systemCode.set(this, void 0);
22
+ __classPrivateFieldSet(this, _FlourishSource_systemCode, context.systemCode ?? 'cp-content-pipeline', "f");
23
+ }
24
+ id() {
25
+ return this.flourishData?.id || '';
26
+ }
27
+ type() {
28
+ return this.flourishData?.type || 'flourish';
29
+ }
30
+ format() {
31
+ return 'standard';
32
+ }
33
+ flourishUrl() {
34
+ // Timestamp rounded to the nearest 5 minutes to bust the cache every five minutes
35
+ const cacheBusterTimestamp = Math.floor(Date.now() / (5 * 60 * 1000));
36
+ return `https://public.flourish.studio/${this.type()}/${this.id()}/thumbnail?cacheBuster=${cacheBusterTimestamp}`;
37
+ }
38
+ async getImageMetadata() {
39
+ const DEFAULT_WIDTH = 2626;
40
+ const DEFAULT_HEIGHT = 1459;
41
+ if (this.imageMetadata) {
42
+ return this.imageMetadata;
43
+ }
44
+ try {
45
+ const metadata = await this.context.dataSources.origami.getImageMetadata(this.flourishUrl());
46
+ this.imageMetadata = {
47
+ width: metadata?.width || DEFAULT_WIDTH,
48
+ height: metadata?.height || DEFAULT_HEIGHT,
49
+ };
50
+ }
51
+ catch (error) {
52
+ if ((0, isError_1.default)(error)) {
53
+ this.context.logger.warn({
54
+ event: 'RECOVERABLE_ERROR',
55
+ error: new errors_1.OperationalError({
56
+ code: 'FLOURISH_IMAGE_METADATA_ERROR',
57
+ message: `Error getting image dimensions for Flourish fallback image ${this.flourishUrl()}`,
58
+ cause: error,
59
+ }),
60
+ });
61
+ }
62
+ this.imageMetadata = {
63
+ width: DEFAULT_WIDTH,
64
+ height: DEFAULT_HEIGHT,
65
+ };
66
+ }
67
+ return this.imageMetadata;
68
+ }
69
+ async width() {
70
+ const imageMetadata = await this.getImageMetadata();
71
+ return imageMetadata.width;
72
+ }
73
+ async height() {
74
+ const imageMetadata = await this.getImageMetadata();
75
+ return imageMetadata.height;
76
+ }
77
+ async url() {
78
+ const width = await this.width();
79
+ const imageServiceWrappedUrl = (0, imageService_1.default)({
80
+ url: this.flourishUrl(),
81
+ systemCode: 'cp-content-pipeline',
82
+ width,
83
+ });
84
+ return imageServiceWrappedUrl;
85
+ }
86
+ }
87
+ exports.FlourishSource = FlourishSource;
88
+ _FlourishSource_systemCode = new WeakMap();
89
+ //# sourceMappingURL=FlourishSource.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FlourishSource.js","sourceRoot":"","sources":["../../src/model/FlourishSource.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,2EAAqD;AACrD,iEAAwC;AACxC,2DAAiE;AAiBjE,MAAa,cAAc;IAIzB,YACU,YAA0B,EAC1B,OAAqB;QADrB,iBAAY,GAAZ,YAAY,CAAc;QAC1B,YAAO,GAAP,OAAO,CAAc;QAL/B,6CAAmB;QAOjB,uBAAA,IAAI,8BAAe,OAAO,CAAC,UAAU,IAAI,qBAAqB,MAAA,CAAA;IAChE,CAAC;IAED,EAAE;QACA,OAAO,IAAI,CAAC,YAAY,EAAE,EAAE,IAAI,EAAE,CAAA;IACpC,CAAC;IAED,IAAI;QACF,OAAO,IAAI,CAAC,YAAY,EAAE,IAAI,IAAI,UAAU,CAAA;IAC9C,CAAC;IAED,MAAM;QACJ,OAAO,UAAU,CAAA;IACnB,CAAC;IAED,WAAW;QACT,kFAAkF;QAClF,MAAM,oBAAoB,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,CAAA;QAErE,OAAO,kCAAkC,IAAI,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,EAAE,EAAE,0BAA0B,oBAAoB,EAAE,CAAA;IACnH,CAAC;IAEO,KAAK,CAAC,gBAAgB;QAC5B,MAAM,aAAa,GAAG,IAAI,CAAA;QAC1B,MAAM,cAAc,GAAG,IAAI,CAAA;QAE3B,IAAI,IAAI,CAAC,aAAa,EAAE;YACtB,OAAO,IAAI,CAAC,aAAa,CAAA;SAC1B;QAED,IAAI;YACF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,gBAAgB,CACtE,IAAI,CAAC,WAAW,EAAE,CACnB,CAAA;YACD,IAAI,CAAC,aAAa,GAAG;gBACnB,KAAK,EAAE,QAAQ,EAAE,KAAK,IAAI,aAAa;gBACvC,MAAM,EAAE,QAAQ,EAAE,MAAM,IAAI,cAAc;aAC3C,CAAA;SACF;QAAC,OAAO,KAAK,EAAE;YACd,IAAI,IAAA,iBAAO,EAAC,KAAK,CAAC,EAAE;gBAClB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC;oBACvB,KAAK,EAAE,mBAAmB;oBAC1B,KAAK,EAAE,IAAI,yBAAgB,CAAC;wBAC1B,IAAI,EAAE,+BAA+B;wBACrC,OAAO,EAAE,8DAA8D,IAAI,CAAC,WAAW,EAAE,EAAE;wBAC3F,KAAK,EAAE,KAAK;qBACb,CAAC;iBACH,CAAC,CAAA;aACH;YACD,IAAI,CAAC,aAAa,GAAG;gBACnB,KAAK,EAAE,aAAa;gBACpB,MAAM,EAAE,cAAc;aACvB,CAAA;SACF;QACD,OAAO,IAAI,CAAC,aAAa,CAAA;IAC3B,CAAC;IACD,KAAK,CAAC,KAAK;QACT,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAA;QACnD,OAAO,aAAa,CAAC,KAAK,CAAA;IAC5B,CAAC;IAED,KAAK,CAAC,MAAM;QACV,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAA;QACnD,OAAO,aAAa,CAAC,MAAM,CAAA;IAC7B,CAAC;IAED,KAAK,CAAC,GAAG;QACP,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,EAAE,CAAA;QAChC,MAAM,sBAAsB,GAAG,IAAA,sBAAe,EAAC;YAC7C,GAAG,EAAE,IAAI,CAAC,WAAW,EAAE;YACvB,UAAU,EAAE,qBAAqB;YACjC,KAAK;SACN,CAAC,CAAA;QACF,OAAO,sBAAsB,CAAA;IAC/B,CAAC;CACF;AAnFD,wCAmFC"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,67 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const FlourishSource_1 = require("./FlourishSource");
4
+ describe('FlourishSource', () => {
5
+ const mockFlourishData = {
6
+ id: '1234',
7
+ type: 'test-type',
8
+ description: 'Sample chart',
9
+ };
10
+ const origamiGetImageMetadataMock = jest.fn();
11
+ const context = {
12
+ systemCode: 'example-system',
13
+ dataSources: {
14
+ origami: {
15
+ getImageMetadata: origamiGetImageMetadataMock,
16
+ },
17
+ },
18
+ };
19
+ let flourishSource;
20
+ beforeEach(() => {
21
+ const MOCKED_CURRENT_TIME = 1715158800000; // 8 May 2024 09:00:00
22
+ jest.spyOn(Date, 'now').mockImplementation(() => MOCKED_CURRENT_TIME);
23
+ flourishSource = new FlourishSource_1.FlourishSource(mockFlourishData, context);
24
+ });
25
+ afterEach(() => {
26
+ jest.resetAllMocks();
27
+ });
28
+ it('should return the correct id', () => {
29
+ expect(flourishSource.id()).toBe('1234');
30
+ });
31
+ it('should return the correct type', () => {
32
+ expect(flourishSource.type()).toBe('test-type');
33
+ });
34
+ it('should return the correct format', () => {
35
+ expect(flourishSource.format()).toBe('standard');
36
+ });
37
+ it('should return the correct flourishUrl', () => {
38
+ expect(flourishSource.flourishUrl()).toBe('https://public.flourish.studio/test-type/1234/thumbnail?cacheBuster=5717196');
39
+ });
40
+ it('should return the correct width', async () => {
41
+ const width = await flourishSource.width();
42
+ expect(width).toBe(2626);
43
+ });
44
+ it('should return the correct height', async () => {
45
+ const height = await flourishSource.height();
46
+ expect(height).toBe(1459);
47
+ });
48
+ it('should return the correct url', async () => {
49
+ const url = await flourishSource.url();
50
+ // Regex checks for flourish url whilst leaving spaces for arguments
51
+ // https://public.flourish.studio/{type}/{id}/thumbnail
52
+ const flourishImageUrlRegex = new RegExp(/https:\/\/public.flourish.studio\/.*\/.*\/thumbnail/);
53
+ expect(decodeURIComponent(url)).toMatch(flourishImageUrlRegex);
54
+ });
55
+ it('should bust the cache of the fallback image every five minutes', async () => {
56
+ const oldCacheBuster = '5717196';
57
+ const newCacheBuster = '5717197';
58
+ expect(flourishSource.flourishUrl()).toBe(`https://public.flourish.studio/test-type/1234/thumbnail?cacheBuster=${oldCacheBuster}`);
59
+ let newFlourishSource = new FlourishSource_1.FlourishSource(mockFlourishData, context);
60
+ jest.spyOn(Date, 'now').mockImplementation(() => 1715159040000); // 8 May 2024 09:04:00
61
+ expect(newFlourishSource.flourishUrl()).toBe(`https://public.flourish.studio/test-type/1234/thumbnail?cacheBuster=${oldCacheBuster}`);
62
+ newFlourishSource = new FlourishSource_1.FlourishSource(mockFlourishData, context);
63
+ jest.spyOn(Date, 'now').mockImplementation(() => 1715159100000); // 8 May 2024 09:05:00
64
+ expect(newFlourishSource.flourishUrl()).toBe(`https://public.flourish.studio/test-type/1234/thumbnail?cacheBuster=${newCacheBuster}`);
65
+ });
66
+ });
67
+ //# sourceMappingURL=FlourishSource.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FlourishSource.test.js","sourceRoot":"","sources":["../../src/model/FlourishSource.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import { CapiResponse } from './CapiResponse';
2
+ import type { QueryContext } from '..';
3
+ import { FlourishSource } from './FlourishSource';
4
+ export declare class LeadFlourish {
5
+ #private;
6
+ private capiResponse;
7
+ private context;
8
+ constructor(capiResponse: CapiResponse, context: QueryContext);
9
+ fallbackImage(): Promise<FlourishSource>;
10
+ id(): string | null;
11
+ type(): string;
12
+ description(): string;
13
+ }
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
3
+ if (kind === "m") throw new TypeError("Private method is not writable");
4
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
5
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
6
+ return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
7
+ };
8
+ var _LeadFlourish_systemCode;
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.LeadFlourish = void 0;
11
+ const FlourishSource_1 = require("./FlourishSource");
12
+ class LeadFlourish {
13
+ constructor(capiResponse, context) {
14
+ this.capiResponse = capiResponse;
15
+ this.context = context;
16
+ _LeadFlourish_systemCode.set(this, void 0);
17
+ __classPrivateFieldSet(this, _LeadFlourish_systemCode, context.systemCode ?? 'cp-content-pipeline', "f");
18
+ }
19
+ async fallbackImage() {
20
+ const flourishData = this.capiResponse.leadFlourish();
21
+ return new FlourishSource_1.FlourishSource(flourishData, this.context);
22
+ }
23
+ id() {
24
+ return this.capiResponse.leadFlourish()?.id || null;
25
+ }
26
+ type() {
27
+ return this.capiResponse.leadFlourish()?.type || 'visualisation';
28
+ }
29
+ description() {
30
+ return this.capiResponse.leadFlourish()?.description || '';
31
+ }
32
+ }
33
+ exports.LeadFlourish = LeadFlourish;
34
+ _LeadFlourish_systemCode = new WeakMap();
35
+ //# sourceMappingURL=LeadFlourish.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LeadFlourish.js","sourceRoot":"","sources":["../../src/model/LeadFlourish.ts"],"names":[],"mappings":";;;;;;;;;;AAEA,qDAAiD;AAEjD,MAAa,YAAY;IAEvB,YACU,YAA0B,EAC1B,OAAqB;QADrB,iBAAY,GAAZ,YAAY,CAAc;QAC1B,YAAO,GAAP,OAAO,CAAc;QAH/B,2CAAmB;QAKjB,uBAAA,IAAI,4BAAe,OAAO,CAAC,UAAU,IAAI,qBAAqB,MAAA,CAAA;IAChE,CAAC;IAED,KAAK,CAAC,aAAa;QACjB,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,CAAA;QACrD,OAAO,IAAI,+BAAc,CAAC,YAAY,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;IACvD,CAAC;IAED,EAAE;QACA,OAAO,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,EAAE,EAAE,IAAI,IAAI,CAAA;IACrD,CAAC;IAED,IAAI;QACF,OAAO,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,EAAE,IAAI,IAAI,eAAe,CAAA;IAClE,CAAC;IAED,WAAW;QACT,OAAO,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,EAAE,WAAW,IAAI,EAAE,CAAA;IAC5D,CAAC;CACF;AAzBD,oCAyBC"}
@@ -0,0 +1 @@
1
+ export {};