@financial-times/cp-content-pipeline-schema 0.7.24 → 0.7.26

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 (43) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/lib/generated/index.d.ts +26 -0
  3. package/lib/model/CapiResponse.d.ts +2 -1
  4. package/lib/model/CapiResponse.js +3 -0
  5. package/lib/model/CapiResponse.js.map +1 -1
  6. package/lib/model/Topper.js.map +1 -1
  7. package/lib/model/schemas/capi/article.d.ts +3 -0
  8. package/lib/model/schemas/capi/article.js +1 -0
  9. package/lib/model/schemas/capi/article.js.map +1 -1
  10. package/lib/model/schemas/capi/audio.d.ts +3 -0
  11. package/lib/model/schemas/capi/audio.js +1 -0
  12. package/lib/model/schemas/capi/audio.js.map +1 -1
  13. package/lib/model/schemas/capi/base-schema.d.ts +3 -0
  14. package/lib/model/schemas/capi/base-schema.js +5 -0
  15. package/lib/model/schemas/capi/base-schema.js.map +1 -1
  16. package/lib/model/schemas/capi/content-package.d.ts +3 -0
  17. package/lib/model/schemas/capi/content-package.js +1 -0
  18. package/lib/model/schemas/capi/content-package.js.map +1 -1
  19. package/lib/model/schemas/capi/live-blog-package.d.ts +3 -0
  20. package/lib/model/schemas/capi/live-blog-package.js +1 -0
  21. package/lib/model/schemas/capi/live-blog-package.js.map +1 -1
  22. package/lib/resolvers/content.d.ts +1 -0
  23. package/lib/resolvers/content.js +1 -0
  24. package/lib/resolvers/content.js.map +1 -1
  25. package/lib/resolvers/index.d.ts +2 -0
  26. package/lib/resolvers/scalars.d.ts +2 -0
  27. package/lib/resolvers/scalars.js +6 -1
  28. package/lib/resolvers/scalars.js.map +1 -1
  29. package/package.json +1 -1
  30. package/src/generated/index.ts +24 -0
  31. package/src/model/CapiResponse.ts +9 -1
  32. package/src/model/Topper.ts +1 -4
  33. package/src/model/schemas/capi/article.ts +1 -0
  34. package/src/model/schemas/capi/audio.ts +1 -0
  35. package/src/model/schemas/capi/base-schema.ts +5 -0
  36. package/src/model/schemas/capi/content-package.ts +1 -0
  37. package/src/model/schemas/capi/live-blog-package.ts +1 -0
  38. package/src/resolvers/content.ts +1 -0
  39. package/src/resolvers/scalars.ts +6 -0
  40. package/tsconfig.tsbuildinfo +1 -1
  41. package/typedefs/content.graphql +8 -0
  42. package/typedefs/scalars.graphql +1 -0
  43. package/typedefs/teaser.graphql +1 -0
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ContentType = exports.RichTextSource = exports.ImageType = exports.AccessLevel = exports.FollowButtonVariant = exports.TopperBackgroundColour = exports.PackageDesign = exports.ImageFormat = void 0;
3
+ exports.ContentType = exports.RichTextSource = exports.ImageType = exports.CanBeSyndicated = exports.AccessLevel = exports.FollowButtonVariant = exports.TopperBackgroundColour = exports.PackageDesign = exports.ImageFormat = void 0;
4
4
  const literal_union_1 = require("./literal-union");
5
5
  exports.ImageFormat = new literal_union_1.LiteralUnionScalar({
6
6
  name: 'ImageFormat',
@@ -47,6 +47,10 @@ exports.AccessLevel = new literal_union_1.LiteralUnionScalar({
47
47
  name: 'AccessLevel',
48
48
  values: ['premium', 'subscribed', 'registered', 'free'],
49
49
  });
50
+ exports.CanBeSyndicated = new literal_union_1.LiteralUnionScalar({
51
+ name: 'CanBeSyndicated',
52
+ values: ['yes', 'no', 'verify'],
53
+ });
50
54
  exports.ImageType = new literal_union_1.LiteralUnionScalar({
51
55
  name: 'ImageType',
52
56
  values: ['image', 'graphic'],
@@ -74,6 +78,7 @@ const resolvers = {
74
78
  TopperBackgroundColour: exports.TopperBackgroundColour,
75
79
  FollowButtonVariant: exports.FollowButtonVariant,
76
80
  AccessLevel: exports.AccessLevel,
81
+ CanBeSyndicated: exports.CanBeSyndicated,
77
82
  ImageType: exports.ImageType,
78
83
  RichTextSource: exports.RichTextSource,
79
84
  ContentType: exports.ContentType,
@@ -1 +1 @@
1
- {"version":3,"file":"scalars.js","sourceRoot":"","sources":["../../src/resolvers/scalars.ts"],"names":[],"mappings":";;;AAAA,mDAAoD;AAEvC,QAAA,WAAW,GAAG,IAAI,kCAAkB,CAY/C;IACA,IAAI,EAAE,aAAa;IACnB,MAAM,EAAE;QACN,UAAU;QACV,iBAAiB;QACjB,SAAS;QACT,QAAQ;QACR,MAAM;QACN,QAAQ;QACR,eAAe;QACf,UAAU;QACV,WAAW;KACZ;CACF,CAAC,CAAA;AAEW,QAAA,aAAa,GAAG,IAAI,kCAAkB,CAEjD,EAAE,IAAI,EAAE,eAAe,EAAE,MAAM,EAAE,CAAC,gBAAgB,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,CAAC,CAAA;AAE7D,QAAA,sBAAsB,GAAG,IAAI,kCAAkB,CAa1D;IACA,IAAI,EAAE,wBAAwB;IAC9B,MAAM,EAAE;QACN,OAAO;QACP,OAAO;QACP,OAAO;QACP,OAAO;QACP,QAAQ;QACR,QAAQ;QACR,OAAO;QACP,SAAS;QACT,KAAK;QACL,SAAS;KACV;CACF,CAAC,CAAA;AAEW,QAAA,mBAAmB,GAAG,IAAI,kCAAkB,CASvD;IACA,IAAI,EAAE,qBAAqB;IAC3B,MAAM,EAAE;QACN,UAAU;QACV,SAAS;QACT,SAAS;QACT,YAAY;QACZ,YAAY;QACZ,oBAAoB;KACrB;CACF,CAAC,CAAA;AAEW,QAAA,WAAW,GAAG,IAAI,kCAAkB,CAE/C;IACA,IAAI,EAAE,aAAa;IACnB,MAAM,EAAE,CAAC,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,CAAC;CACxD,CAAC,CAAA;AAEW,QAAA,SAAS,GAAG,IAAI,kCAAkB,CAAuB;IACpE,IAAI,EAAE,WAAW;IACjB,MAAM,EAAE,CAAC,OAAO,EAAE,SAAS,CAAC;CAC7B,CAAC,CAAA;AAEW,QAAA,cAAc,GAAG,IAAI,kCAAkB,CAElD;IACA,IAAI,EAAE,gBAAgB;IACtB,MAAM,EAAE,CAAC,YAAY,EAAE,SAAS,EAAE,SAAS,CAAC;CAC7C,CAAC,CAAA;AAEW,QAAA,WAAW,GAAG,IAAI,kCAAkB,CAW/C;IACA,IAAI,EAAE,aAAa;IACnB,MAAM,EAAE;QACN,SAAS;QACT,OAAO;QACP,OAAO;QACP,iBAAiB;QACjB,cAAc;QACd,gBAAgB;QAChB,SAAS;QACT,eAAe;KAChB;CACF,CAAC,CAAA;AAEF,MAAM,SAAS,GAAG;IAChB,WAAW,EAAX,mBAAW;IACX,aAAa,EAAb,qBAAa;IACb,sBAAsB,EAAtB,8BAAsB;IACtB,mBAAmB,EAAnB,2BAAmB;IACnB,WAAW,EAAX,mBAAW;IACX,SAAS,EAAT,iBAAS;IACT,cAAc,EAAd,sBAAc;IACd,WAAW,EAAX,mBAAW;CACZ,CAAA;AAED,kBAAe,SAAS,CAAA"}
1
+ {"version":3,"file":"scalars.js","sourceRoot":"","sources":["../../src/resolvers/scalars.ts"],"names":[],"mappings":";;;AAAA,mDAAoD;AAEvC,QAAA,WAAW,GAAG,IAAI,kCAAkB,CAY/C;IACA,IAAI,EAAE,aAAa;IACnB,MAAM,EAAE;QACN,UAAU;QACV,iBAAiB;QACjB,SAAS;QACT,QAAQ;QACR,MAAM;QACN,QAAQ;QACR,eAAe;QACf,UAAU;QACV,WAAW;KACZ;CACF,CAAC,CAAA;AAEW,QAAA,aAAa,GAAG,IAAI,kCAAkB,CAEjD,EAAE,IAAI,EAAE,eAAe,EAAE,MAAM,EAAE,CAAC,gBAAgB,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,CAAC,CAAA;AAE7D,QAAA,sBAAsB,GAAG,IAAI,kCAAkB,CAa1D;IACA,IAAI,EAAE,wBAAwB;IAC9B,MAAM,EAAE;QACN,OAAO;QACP,OAAO;QACP,OAAO;QACP,OAAO;QACP,QAAQ;QACR,QAAQ;QACR,OAAO;QACP,SAAS;QACT,KAAK;QACL,SAAS;KACV;CACF,CAAC,CAAA;AAEW,QAAA,mBAAmB,GAAG,IAAI,kCAAkB,CASvD;IACA,IAAI,EAAE,qBAAqB;IAC3B,MAAM,EAAE;QACN,UAAU;QACV,SAAS;QACT,SAAS;QACT,YAAY;QACZ,YAAY;QACZ,oBAAoB;KACrB;CACF,CAAC,CAAA;AAEW,QAAA,WAAW,GAAG,IAAI,kCAAkB,CAE/C;IACA,IAAI,EAAE,aAAa;IACnB,MAAM,EAAE,CAAC,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,CAAC;CACxD,CAAC,CAAA;AAEW,QAAA,eAAe,GAAG,IAAI,kCAAkB,CAA0B;IAC7E,IAAI,EAAE,iBAAiB;IACvB,MAAM,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,CAAC;CAChC,CAAC,CAAA;AAEW,QAAA,SAAS,GAAG,IAAI,kCAAkB,CAAuB;IACpE,IAAI,EAAE,WAAW;IACjB,MAAM,EAAE,CAAC,OAAO,EAAE,SAAS,CAAC;CAC7B,CAAC,CAAA;AAEW,QAAA,cAAc,GAAG,IAAI,kCAAkB,CAElD;IACA,IAAI,EAAE,gBAAgB;IACtB,MAAM,EAAE,CAAC,YAAY,EAAE,SAAS,EAAE,SAAS,CAAC;CAC7C,CAAC,CAAA;AAEW,QAAA,WAAW,GAAG,IAAI,kCAAkB,CAW/C;IACA,IAAI,EAAE,aAAa;IACnB,MAAM,EAAE;QACN,SAAS;QACT,OAAO;QACP,OAAO;QACP,iBAAiB;QACjB,cAAc;QACd,gBAAgB;QAChB,SAAS;QACT,eAAe;KAChB;CACF,CAAC,CAAA;AAEF,MAAM,SAAS,GAAG;IAChB,WAAW,EAAX,mBAAW;IACX,aAAa,EAAb,qBAAa;IACb,sBAAsB,EAAtB,8BAAsB;IACtB,mBAAmB,EAAnB,2BAAmB;IACnB,WAAW,EAAX,mBAAW;IACX,eAAe,EAAf,uBAAe;IACf,SAAS,EAAT,iBAAS;IACT,cAAc,EAAd,sBAAc;IACd,WAAW,EAAX,mBAAW;CACZ,CAAA;AAED,kBAAe,SAAS,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@financial-times/cp-content-pipeline-schema",
3
- "version": "0.7.24",
3
+ "version": "0.7.26",
4
4
  "description": "",
5
5
  "main": "lib/index.js",
6
6
  "scripts": {
@@ -26,6 +26,7 @@ export type Scalars = {
26
26
  Int: { input: number; output: number; }
27
27
  Float: { input: number; output: number; }
28
28
  AccessLevel: { input: 'premium' | 'subscribed' | 'registered' | 'free'; output: 'premium' | 'subscribed' | 'registered' | 'free'; }
29
+ CanBeSyndicated: { input: 'yes' | 'no' | 'verify'; output: 'yes' | 'no' | 'verify'; }
29
30
  ContentType: { input: 'Article' | 'Video' | 'Audio' | 'LiveBlogPackage' | 'LiveBlogPost' | 'ContentPackage' | 'Content' | 'MediaResource'; output: 'Article' | 'Video' | 'Audio' | 'LiveBlogPackage' | 'LiveBlogPost' | 'ContentPackage' | 'Content' | 'MediaResource'; }
30
31
  FollowButtonVariant: { input: 'standard' | 'inverse' | 'opinion' | 'alphaville' | 'monochrome' | 'inverse-monochrome'; output: 'standard' | 'inverse' | 'opinion' | 'alphaville' | 'monochrome' | 'inverse-monochrome'; }
31
32
  ImageFormat: { input: 'standard' | 'standard-inline' | 'desktop' | 'mobile' | 'wide' | 'square' | 'square-ftedit' | 'portrait' | 'landscape'; output: 'standard' | 'standard-inline' | 'desktop' | 'mobile' | 'wide' | 'square' | 'square-ftedit' | 'portrait' | 'landscape'; }
@@ -52,6 +53,7 @@ export type Article = Content & {
52
53
  readonly body?: Maybe<RichText>;
53
54
  readonly bodyXML?: Maybe<Scalars['String']['output']>;
54
55
  readonly byline?: Maybe<StructuredContent>;
56
+ readonly canBeSyndicated?: Maybe<Scalars['CanBeSyndicated']['output']>;
55
57
  readonly commentsEnabled?: Maybe<Scalars['Boolean']['output']>;
56
58
  readonly containedIn?: Maybe<Content>;
57
59
  readonly design?: Maybe<Design>;
@@ -81,6 +83,7 @@ export type Audio = Content & {
81
83
  readonly body?: Maybe<RichText>;
82
84
  readonly bodyXML?: Maybe<Scalars['String']['output']>;
83
85
  readonly byline?: Maybe<StructuredContent>;
86
+ readonly canBeSyndicated?: Maybe<Scalars['CanBeSyndicated']['output']>;
84
87
  readonly commentsEnabled?: Maybe<Scalars['Boolean']['output']>;
85
88
  readonly design?: Maybe<Design>;
86
89
  readonly firstPublishedDate: Scalars['String']['output'];
@@ -151,6 +154,7 @@ export type Content = {
151
154
  readonly body?: Maybe<RichText>;
152
155
  readonly bodyXML?: Maybe<Scalars['String']['output']>;
153
156
  readonly byline?: Maybe<StructuredContent>;
157
+ readonly canBeSyndicated?: Maybe<Scalars['CanBeSyndicated']['output']>;
154
158
  readonly commentsEnabled?: Maybe<Scalars['Boolean']['output']>;
155
159
  readonly design?: Maybe<Design>;
156
160
  readonly firstPublishedDate: Scalars['String']['output'];
@@ -179,6 +183,7 @@ export type ContentPackage = Content & {
179
183
  readonly body?: Maybe<RichText>;
180
184
  readonly bodyXML?: Maybe<Scalars['String']['output']>;
181
185
  readonly byline?: Maybe<StructuredContent>;
186
+ readonly canBeSyndicated?: Maybe<Scalars['CanBeSyndicated']['output']>;
182
187
  readonly commentsEnabled?: Maybe<Scalars['Boolean']['output']>;
183
188
  readonly contains?: Maybe<ReadonlyArray<Maybe<Teaser>>>;
184
189
  readonly design?: Maybe<Design>;
@@ -489,6 +494,7 @@ export type LiveBlogPackage = Content & {
489
494
  readonly body?: Maybe<RichText>;
490
495
  readonly bodyXML?: Maybe<Scalars['String']['output']>;
491
496
  readonly byline?: Maybe<StructuredContent>;
497
+ readonly canBeSyndicated?: Maybe<Scalars['CanBeSyndicated']['output']>;
492
498
  readonly commentsEnabled?: Maybe<Scalars['Boolean']['output']>;
493
499
  readonly design?: Maybe<Design>;
494
500
  readonly firstPublishedDate: Scalars['String']['output'];
@@ -519,6 +525,7 @@ export type LiveBlogPost = Content & {
519
525
  readonly body?: Maybe<RichText>;
520
526
  readonly bodyXML?: Maybe<Scalars['String']['output']>;
521
527
  readonly byline?: Maybe<StructuredContent>;
528
+ readonly canBeSyndicated?: Maybe<Scalars['CanBeSyndicated']['output']>;
522
529
  readonly commentsEnabled?: Maybe<Scalars['Boolean']['output']>;
523
530
  readonly design?: Maybe<Design>;
524
531
  readonly firstPublishedDate: Scalars['String']['output'];
@@ -722,6 +729,7 @@ export type Teaser = {
722
729
  readonly metaSuffixText?: Maybe<Scalars['String']['output']>;
723
730
  readonly publishedDate?: Maybe<Scalars['String']['output']>;
724
731
  readonly standfirst?: Maybe<Scalars['String']['output']>;
732
+ readonly theme?: Maybe<Scalars['String']['output']>;
725
733
  readonly title?: Maybe<Scalars['String']['output']>;
726
734
  readonly type?: Maybe<Scalars['String']['output']>;
727
735
  readonly url: Scalars['String']['output'];
@@ -784,6 +792,7 @@ export type Video = Content & {
784
792
  readonly body?: Maybe<RichText>;
785
793
  readonly bodyXML?: Maybe<Scalars['String']['output']>;
786
794
  readonly byline?: Maybe<StructuredContent>;
795
+ readonly canBeSyndicated?: Maybe<Scalars['CanBeSyndicated']['output']>;
787
796
  readonly commentsEnabled?: Maybe<Scalars['Boolean']['output']>;
788
797
  readonly design?: Maybe<Design>;
789
798
  readonly firstPublishedDate: Scalars['String']['output'];
@@ -903,6 +912,7 @@ export type ResolversTypes = ResolversObject<{
903
912
  BasicTopper: ResolverTypeWrapper<Omit<BasicTopper, 'displayConcept' | 'intro'> & { displayConcept?: Maybe<ResolversTypes['Concept']>, intro?: Maybe<ResolversTypes['RichText']> }>;
904
913
  Boolean: ResolverTypeWrapper<Scalars['Boolean']['output']>;
905
914
  BrandedTopper: ResolverTypeWrapper<Omit<BrandedTopper, 'brandConcept' | 'displayConcept' | 'genreConcept' | 'intro'> & { brandConcept?: Maybe<ResolversTypes['Concept']>, displayConcept?: Maybe<ResolversTypes['Concept']>, genreConcept?: Maybe<ResolversTypes['Concept']>, intro?: Maybe<ResolversTypes['RichText']> }>;
915
+ CanBeSyndicated: ResolverTypeWrapper<Scalars['CanBeSyndicated']['output']>;
906
916
  Concept: ResolverTypeWrapper<ConceptModel>;
907
917
  Content: ResolverTypeWrapper<ResolversInterfaceTypes<ResolversTypes>['Content']>;
908
918
  ContentPackage: ResolverTypeWrapper<CapiResponse>;
@@ -979,6 +989,7 @@ export type ResolversParentTypes = ResolversObject<{
979
989
  BasicTopper: Omit<BasicTopper, 'displayConcept' | 'intro'> & { displayConcept?: Maybe<ResolversParentTypes['Concept']>, intro?: Maybe<ResolversParentTypes['RichText']> };
980
990
  Boolean: Scalars['Boolean']['output'];
981
991
  BrandedTopper: Omit<BrandedTopper, 'brandConcept' | 'displayConcept' | 'genreConcept' | 'intro'> & { brandConcept?: Maybe<ResolversParentTypes['Concept']>, displayConcept?: Maybe<ResolversParentTypes['Concept']>, genreConcept?: Maybe<ResolversParentTypes['Concept']>, intro?: Maybe<ResolversParentTypes['RichText']> };
992
+ CanBeSyndicated: Scalars['CanBeSyndicated']['output'];
982
993
  Concept: ConceptModel;
983
994
  Content: ResolversInterfaceTypes<ResolversParentTypes>['Content'];
984
995
  ContentPackage: CapiResponse;
@@ -1067,6 +1078,7 @@ export type ArticleResolvers<ContextType = QueryContext, ParentType extends Reso
1067
1078
  body?: Resolver<Maybe<ResolversTypes['RichText']>, ParentType, ContextType>;
1068
1079
  bodyXML?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1069
1080
  byline?: Resolver<Maybe<ResolversTypes['StructuredContent']>, ParentType, ContextType>;
1081
+ canBeSyndicated?: Resolver<Maybe<ResolversTypes['CanBeSyndicated']>, ParentType, ContextType>;
1070
1082
  commentsEnabled?: Resolver<Maybe<ResolversTypes['Boolean']>, ParentType, ContextType>;
1071
1083
  containedIn?: Resolver<Maybe<ResolversTypes['Content']>, ParentType, ContextType>;
1072
1084
  design?: Resolver<Maybe<ResolversTypes['Design']>, ParentType, ContextType>;
@@ -1091,6 +1103,7 @@ export type AudioResolvers<ContextType = QueryContext, ParentType extends Resolv
1091
1103
  body?: Resolver<Maybe<ResolversTypes['RichText']>, ParentType, ContextType>;
1092
1104
  bodyXML?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1093
1105
  byline?: Resolver<Maybe<ResolversTypes['StructuredContent']>, ParentType, ContextType>;
1106
+ canBeSyndicated?: Resolver<Maybe<ResolversTypes['CanBeSyndicated']>, ParentType, ContextType>;
1094
1107
  commentsEnabled?: Resolver<Maybe<ResolversTypes['Boolean']>, ParentType, ContextType>;
1095
1108
  design?: Resolver<Maybe<ResolversTypes['Design']>, ParentType, ContextType>;
1096
1109
  firstPublishedDate?: Resolver<ResolversTypes['String'], ParentType, ContextType>;
@@ -1133,6 +1146,10 @@ export type BrandedTopperResolvers<ContextType = QueryContext, ParentType extend
1133
1146
  __isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>;
1134
1147
  }>;
1135
1148
 
1149
+ export interface CanBeSyndicatedScalarConfig extends GraphQLScalarTypeConfig<ResolversTypes['CanBeSyndicated'], any> {
1150
+ name: 'CanBeSyndicated';
1151
+ }
1152
+
1136
1153
  export type ConceptResolvers<ContextType = QueryContext, ParentType extends ResolversParentTypes['Concept'] = ResolversParentTypes['Concept']> = ResolversObject<{
1137
1154
  apiUrl?: Resolver<ResolversTypes['String'], ParentType, ContextType>;
1138
1155
  directType?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
@@ -1154,6 +1171,7 @@ export type ContentResolvers<ContextType = QueryContext, ParentType extends Reso
1154
1171
  body?: Resolver<Maybe<ResolversTypes['RichText']>, ParentType, ContextType>;
1155
1172
  bodyXML?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1156
1173
  byline?: Resolver<Maybe<ResolversTypes['StructuredContent']>, ParentType, ContextType>;
1174
+ canBeSyndicated?: Resolver<Maybe<ResolversTypes['CanBeSyndicated']>, ParentType, ContextType>;
1157
1175
  commentsEnabled?: Resolver<Maybe<ResolversTypes['Boolean']>, ParentType, ContextType>;
1158
1176
  design?: Resolver<Maybe<ResolversTypes['Design']>, ParentType, ContextType>;
1159
1177
  firstPublishedDate?: Resolver<ResolversTypes['String'], ParentType, ContextType>;
@@ -1176,6 +1194,7 @@ export type ContentPackageResolvers<ContextType = QueryContext, ParentType exten
1176
1194
  body?: Resolver<Maybe<ResolversTypes['RichText']>, ParentType, ContextType>;
1177
1195
  bodyXML?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1178
1196
  byline?: Resolver<Maybe<ResolversTypes['StructuredContent']>, ParentType, ContextType>;
1197
+ canBeSyndicated?: Resolver<Maybe<ResolversTypes['CanBeSyndicated']>, ParentType, ContextType>;
1179
1198
  commentsEnabled?: Resolver<Maybe<ResolversTypes['Boolean']>, ParentType, ContextType>;
1180
1199
  contains?: Resolver<Maybe<ReadonlyArray<Maybe<ResolversTypes['Teaser']>>>, ParentType, ContextType>;
1181
1200
  design?: Resolver<Maybe<ResolversTypes['Design']>, ParentType, ContextType>;
@@ -1461,6 +1480,7 @@ export type LiveBlogPackageResolvers<ContextType = QueryContext, ParentType exte
1461
1480
  body?: Resolver<Maybe<ResolversTypes['RichText']>, ParentType, ContextType>;
1462
1481
  bodyXML?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1463
1482
  byline?: Resolver<Maybe<ResolversTypes['StructuredContent']>, ParentType, ContextType>;
1483
+ canBeSyndicated?: Resolver<Maybe<ResolversTypes['CanBeSyndicated']>, ParentType, ContextType>;
1464
1484
  commentsEnabled?: Resolver<Maybe<ResolversTypes['Boolean']>, ParentType, ContextType>;
1465
1485
  design?: Resolver<Maybe<ResolversTypes['Design']>, ParentType, ContextType>;
1466
1486
  firstPublishedDate?: Resolver<ResolversTypes['String'], ParentType, ContextType>;
@@ -1486,6 +1506,7 @@ export type LiveBlogPostResolvers<ContextType = QueryContext, ParentType extends
1486
1506
  body?: Resolver<Maybe<ResolversTypes['RichText']>, ParentType, ContextType>;
1487
1507
  bodyXML?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1488
1508
  byline?: Resolver<Maybe<ResolversTypes['StructuredContent']>, ParentType, ContextType>;
1509
+ canBeSyndicated?: Resolver<Maybe<ResolversTypes['CanBeSyndicated']>, ParentType, ContextType>;
1489
1510
  commentsEnabled?: Resolver<Maybe<ResolversTypes['Boolean']>, ParentType, ContextType>;
1490
1511
  design?: Resolver<Maybe<ResolversTypes['Design']>, ParentType, ContextType>;
1491
1512
  firstPublishedDate?: Resolver<ResolversTypes['String'], ParentType, ContextType>;
@@ -1681,6 +1702,7 @@ export type TeaserResolvers<ContextType = QueryContext, ParentType extends Resol
1681
1702
  metaSuffixText?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1682
1703
  publishedDate?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1683
1704
  standfirst?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1705
+ theme?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1684
1706
  title?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1685
1707
  type?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1686
1708
  url?: Resolver<ResolversTypes['String'], ParentType, ContextType, Partial<TeaserUrlArgs>>;
@@ -1744,6 +1766,7 @@ export type VideoResolvers<ContextType = QueryContext, ParentType extends Resolv
1744
1766
  body?: Resolver<Maybe<ResolversTypes['RichText']>, ParentType, ContextType>;
1745
1767
  bodyXML?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1746
1768
  byline?: Resolver<Maybe<ResolversTypes['StructuredContent']>, ParentType, ContextType>;
1769
+ canBeSyndicated?: Resolver<Maybe<ResolversTypes['CanBeSyndicated']>, ParentType, ContextType>;
1747
1770
  commentsEnabled?: Resolver<Maybe<ResolversTypes['Boolean']>, ParentType, ContextType>;
1748
1771
  design?: Resolver<Maybe<ResolversTypes['Design']>, ParentType, ContextType>;
1749
1772
  firstPublishedDate?: Resolver<ResolversTypes['String'], ParentType, ContextType>;
@@ -1774,6 +1797,7 @@ export type Resolvers<ContextType = QueryContext> = ResolversObject<{
1774
1797
  Audio?: AudioResolvers<ContextType>;
1775
1798
  BasicTopper?: BasicTopperResolvers<ContextType>;
1776
1799
  BrandedTopper?: BrandedTopperResolvers<ContextType>;
1800
+ CanBeSyndicated?: GraphQLScalarType;
1777
1801
  Concept?: ConceptResolvers<ContextType>;
1778
1802
  Content?: ContentResolvers<ContextType>;
1779
1803
  ContentPackage?: ContentPackageResolvers<ContextType>;
@@ -21,7 +21,12 @@ import { Concept } from './Concept'
21
21
  import isError from '../helpers/isError'
22
22
  import { uuidFromUrl } from '../helpers/metadata'
23
23
  import { schemas } from './schemas/capi'
24
- import { AccessLevel, ContentType, PackageDesign } from '../resolvers/scalars'
24
+ import {
25
+ AccessLevel,
26
+ ContentType,
27
+ PackageDesign,
28
+ CanBeSyndicated,
29
+ } from '../resolvers/scalars'
25
30
  import {
26
31
  LiteralUnionScalarValues,
27
32
  validLiteralUnionValue,
@@ -227,6 +232,9 @@ export class CapiResponse {
227
232
  accessLevel(): LiteralUnionScalarValues<typeof AccessLevel> {
228
233
  return this.capiData.accessLevel
229
234
  }
235
+ canBeSyndicated(): LiteralUnionScalarValues<typeof CanBeSyndicated> {
236
+ return this.capiData.canBeSyndicated
237
+ }
230
238
  summary() {
231
239
  if ('summary' in this.capiData) return this.capiData.summary
232
240
  return null
@@ -5,10 +5,7 @@ import {
5
5
  LiteralUnionScalarValues,
6
6
  validLiteralUnionValue,
7
7
  } from '../resolvers/literal-union'
8
- import {
9
- FollowButtonVariant,
10
- TopperBackgroundColour,
11
- } from '../resolvers/scalars'
8
+ import { TopperBackgroundColour } from '../resolvers/scalars'
12
9
  import { RichText } from './RichText'
13
10
  import imageServiceUrl from '../helpers/imageService'
14
11
 
@@ -23,6 +23,7 @@ const articleMetadataSchema = baseMetadataSchema.pick({
23
23
  publishedDate: true,
24
24
  firstPublishedDate: true,
25
25
  accessLevel: true,
26
+ canBeSyndicated: true,
26
27
  topper: true,
27
28
  comments: true,
28
29
  containedIn: true,
@@ -18,6 +18,7 @@ const audioMetadataSchema = baseMetadataSchema.pick({
18
18
  publishedDate: true,
19
19
  firstPublishedDate: true,
20
20
  accessLevel: true,
21
+ canBeSyndicated: true,
21
22
  })
22
23
 
23
24
  const audioMediaSchema = baseMediaSchema.pick({
@@ -137,6 +137,11 @@ export const baseMetadataSchema = z.object({
137
137
  z.literal('registered'),
138
138
  z.literal('free'),
139
139
  ]),
140
+ canBeSyndicated: z.union([
141
+ z.literal('yes'),
142
+ z.literal('no'),
143
+ z.literal('verify'),
144
+ ]),
140
145
  topper: Topper.optional(),
141
146
  comments: z.object({
142
147
  enabled: z.boolean(),
@@ -24,6 +24,7 @@ const contentPackageMetadataSchema = baseMetadataSchema.pick({
24
24
  publishedDate: true,
25
25
  firstPublishedDate: true,
26
26
  accessLevel: true,
27
+ canBeSyndicated: true,
27
28
  topper: true,
28
29
  comments: true,
29
30
  })
@@ -23,6 +23,7 @@ const liveBlogPackageMetadataSchema = baseMetadataSchema.pick({
23
23
  publishedDate: true,
24
24
  firstPublishedDate: true,
25
25
  accessLevel: true,
26
+ canBeSyndicated: true,
26
27
  topper: true,
27
28
  comments: true,
28
29
  })
@@ -44,6 +44,7 @@ const resolvers = {
44
44
  publishedDate: (parent) => parent.publishedDate(),
45
45
  annotations: (parent) => parent.annotations(),
46
46
  accessLevel: (parent) => parent.accessLevel(),
47
+ canBeSyndicated: (parent) => parent.canBeSyndicated(),
47
48
  commentsEnabled: (parent) => parent.commentsEnabled(),
48
49
  design: (parent) => parent.design(),
49
50
  },
@@ -88,6 +88,11 @@ export const AccessLevel = new LiteralUnionScalar<
88
88
  values: ['premium', 'subscribed', 'registered', 'free'],
89
89
  })
90
90
 
91
+ export const CanBeSyndicated = new LiteralUnionScalar<['yes', 'no', 'verify']>({
92
+ name: 'CanBeSyndicated',
93
+ values: ['yes', 'no', 'verify'],
94
+ })
95
+
91
96
  export const ImageType = new LiteralUnionScalar<['image', 'graphic']>({
92
97
  name: 'ImageType',
93
98
  values: ['image', 'graphic'],
@@ -131,6 +136,7 @@ const resolvers = {
131
136
  TopperBackgroundColour,
132
137
  FollowButtonVariant,
133
138
  AccessLevel,
139
+ CanBeSyndicated,
134
140
  ImageType,
135
141
  RichTextSource,
136
142
  ContentType,