@financial-times/cp-content-pipeline-schema 2.11.1 → 2.12.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 (52) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/lib/datasources/capi.js +3 -1
  3. package/lib/datasources/capi.js.map +1 -1
  4. package/lib/datasources/origami-image.js +3 -1
  5. package/lib/datasources/origami-image.js.map +1 -1
  6. package/lib/datasources/twitter.js +3 -1
  7. package/lib/datasources/twitter.js.map +1 -1
  8. package/lib/generated/index.d.ts +24 -0
  9. package/lib/model/CapiResponse.d.ts +1 -0
  10. package/lib/model/CapiResponse.js +3 -0
  11. package/lib/model/CapiResponse.js.map +1 -1
  12. package/lib/model/schemas/capi/article.d.ts +4 -1
  13. package/lib/model/schemas/capi/article.js +1 -0
  14. package/lib/model/schemas/capi/article.js.map +1 -1
  15. package/lib/model/schemas/capi/audio.d.ts +4 -1
  16. package/lib/model/schemas/capi/audio.js +1 -0
  17. package/lib/model/schemas/capi/audio.js.map +1 -1
  18. package/lib/model/schemas/capi/base-schema.d.ts +3 -0
  19. package/lib/model/schemas/capi/base-schema.js +1 -0
  20. package/lib/model/schemas/capi/base-schema.js.map +1 -1
  21. package/lib/model/schemas/capi/content-package.d.ts +4 -1
  22. package/lib/model/schemas/capi/content-package.js +1 -0
  23. package/lib/model/schemas/capi/content-package.js.map +1 -1
  24. package/lib/model/schemas/capi/live-blog-package.d.ts +4 -1
  25. package/lib/model/schemas/capi/live-blog-package.js +1 -0
  26. package/lib/model/schemas/capi/live-blog-package.js.map +1 -1
  27. package/lib/model/schemas/capi/placeholder.d.ts +4 -1
  28. package/lib/model/schemas/capi/placeholder.js +1 -0
  29. package/lib/model/schemas/capi/placeholder.js.map +1 -1
  30. package/lib/resolvers/content-tree/references/Video.js +8 -4
  31. package/lib/resolvers/content-tree/references/Video.js.map +1 -1
  32. package/lib/resolvers/content.d.ts +8 -0
  33. package/lib/resolvers/content.js +1 -0
  34. package/lib/resolvers/content.js.map +1 -1
  35. package/lib/resolvers/index.d.ts +8 -0
  36. package/package.json +2 -2
  37. package/queries/article.graphql +16 -15
  38. package/src/datasources/capi.ts +3 -1
  39. package/src/datasources/origami-image.ts +3 -1
  40. package/src/datasources/twitter.ts +4 -1
  41. package/src/generated/index.ts +24 -0
  42. package/src/model/CapiResponse.ts +3 -0
  43. package/src/model/schemas/capi/article.ts +1 -0
  44. package/src/model/schemas/capi/audio.ts +1 -0
  45. package/src/model/schemas/capi/base-schema.ts +1 -0
  46. package/src/model/schemas/capi/content-package.ts +1 -0
  47. package/src/model/schemas/capi/live-blog-package.ts +1 -0
  48. package/src/model/schemas/capi/placeholder.ts +1 -0
  49. package/src/resolvers/content-tree/references/Video.ts +10 -5
  50. package/src/resolvers/content.ts +1 -0
  51. package/tsconfig.tsbuildinfo +1 -1
  52. package/typedefs/content.graphql +30 -6
@@ -23,6 +23,7 @@ const placeholderMetadataSchema = baseMetadataSchema.pick({
23
23
  standout: true,
24
24
  publishedDate: true,
25
25
  firstPublishedDate: true,
26
+ publishReference: true,
26
27
  accessLevel: true,
27
28
  editorialDesk: true,
28
29
  canBeSyndicated: true,
@@ -15,13 +15,18 @@ export const Video = {
15
15
  return capiResponse.title()
16
16
  } catch (error) {
17
17
  if (error instanceof Error) {
18
- throw new OperationalError({
19
- code: 'VIDEO_CONTENT_FETCH_ERROR',
20
- message: `Error getting content object for video ${parent.reference.id}`,
21
- cause: error,
18
+ context.logger.warn({
19
+ event: 'RECOVERABLE_ERROR',
20
+ error: new OperationalError({
21
+ code: 'VIDEO_CONTENT_FETCH_ERROR',
22
+ message: `Error getting content object for video ${
23
+ parent.reference.id
24
+ } in article ${parent.contentApiData?.id()}`,
25
+ cause: error,
26
+ }),
22
27
  })
28
+ return 'Sorry, we are unable to find this video'
23
29
  }
24
-
25
30
  throw error
26
31
  }
27
32
  },
@@ -29,6 +29,7 @@ const contentResolvers: ContentResolvers = {
29
29
  design: (parent) => parent.design(),
30
30
  editorialDesk: (parent) => parent.editorialDesk(),
31
31
  firstPublishedDate: (parent) => parent.firstPublishedDate(),
32
+ publishReference: (parent) => parent.publishReference(),
32
33
  id: (parent) => parent.id(),
33
34
  instantAlertConcept: (parent) => parent.instantAlertConcept(),
34
35
  mainImage: (parent) => parent.mainImage(),