@financial-times/cp-content-pipeline-schema 3.4.0 → 3.5.1

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 (113) hide show
  1. package/CHANGELOG.md +33 -0
  2. package/lib/datasources/capi.d.ts +0 -2
  3. package/lib/datasources/capi.js +10 -23
  4. package/lib/datasources/capi.js.map +1 -1
  5. package/lib/datasources/instrumented.js +4 -1
  6. package/lib/datasources/instrumented.js.map +1 -1
  7. package/lib/datasources/origami-image.d.ts +0 -2
  8. package/lib/datasources/origami-image.js +5 -19
  9. package/lib/datasources/origami-image.js.map +1 -1
  10. package/lib/datasources/twitter.d.ts +0 -2
  11. package/lib/datasources/twitter.js +2 -16
  12. package/lib/datasources/twitter.js.map +1 -1
  13. package/lib/datasources/url-management.js +5 -3
  14. package/lib/datasources/url-management.js.map +1 -1
  15. package/lib/fixtures/dummyContext.js +1 -1
  16. package/lib/generated/index.d.ts +73 -22
  17. package/lib/index.d.ts +1 -0
  18. package/lib/index.js.map +1 -1
  19. package/lib/model/Byline.js +11 -14
  20. package/lib/model/Byline.js.map +1 -1
  21. package/lib/model/CapiList.js +2 -0
  22. package/lib/model/CapiList.js.map +1 -1
  23. package/lib/model/CapiResponse.d.ts +7 -3
  24. package/lib/model/CapiResponse.js +125 -57
  25. package/lib/model/CapiResponse.js.map +1 -1
  26. package/lib/model/CapiResponse.test.js +92 -7
  27. package/lib/model/CapiResponse.test.js.map +1 -1
  28. package/lib/model/Clip.js +2 -0
  29. package/lib/model/Clip.js.map +1 -1
  30. package/lib/model/Concept.js +4 -10
  31. package/lib/model/Concept.js.map +1 -1
  32. package/lib/model/FlourishSource.d.ts +12 -5
  33. package/lib/model/FlourishSource.js +37 -38
  34. package/lib/model/FlourishSource.js.map +1 -1
  35. package/lib/model/FlourishSource.test.js +5 -5
  36. package/lib/model/FlourishSource.test.js.map +1 -1
  37. package/lib/model/Image.js +22 -20
  38. package/lib/model/Image.js.map +1 -1
  39. package/lib/model/LeadFlourish.d.ts +1 -1
  40. package/lib/model/LeadFlourish.js +8 -11
  41. package/lib/model/LeadFlourish.js.map +1 -1
  42. package/lib/model/LeadFlourish.test.js +5 -7
  43. package/lib/model/LeadFlourish.test.js.map +1 -1
  44. package/lib/model/Person.js +5 -16
  45. package/lib/model/Person.js.map +1 -1
  46. package/lib/model/Picture.js +3 -0
  47. package/lib/model/Picture.js.map +1 -1
  48. package/lib/model/RichText.js +3 -0
  49. package/lib/model/RichText.js.map +1 -1
  50. package/lib/model/Topper.js +5 -16
  51. package/lib/model/Topper.js.map +1 -1
  52. package/lib/model/schemas/capi/article.d.ts +3 -3
  53. package/lib/model/schemas/capi/audio.d.ts +5 -5
  54. package/lib/model/schemas/capi/base-schema.d.ts +5 -5
  55. package/lib/model/schemas/capi/base-schema.js +1 -1
  56. package/lib/model/schemas/capi/base-schema.js.map +1 -1
  57. package/lib/model/schemas/capi/content-package.d.ts +3 -3
  58. package/lib/model/schemas/capi/custom-code-component.d.ts +3 -3
  59. package/lib/model/schemas/capi/index.d.ts +20 -20
  60. package/lib/model/schemas/capi/internal-content.d.ts +1 -1
  61. package/lib/model/schemas/capi/live-blog-package.d.ts +3 -3
  62. package/lib/model/schemas/capi/placeholder.d.ts +3 -3
  63. package/lib/model/schemas/capi/video.d.ts +3 -3
  64. package/lib/resolvers/content-tree/references/Flourish.d.ts +9 -19
  65. package/lib/resolvers/content-tree/references/Flourish.js +10 -32
  66. package/lib/resolvers/content-tree/references/Flourish.js.map +1 -1
  67. package/lib/resolvers/content-tree/references/Flourish.test.js +3 -3
  68. package/lib/resolvers/content-tree/references/Flourish.test.js.map +1 -1
  69. package/lib/resolvers/content-tree/references/RawImage.js +2 -0
  70. package/lib/resolvers/content-tree/references/RawImage.js.map +1 -1
  71. package/lib/resolvers/content-tree/references/index.d.ts +2 -2
  72. package/lib/resolvers/content-tree/references/index.js +1 -1
  73. package/lib/resolvers/content-tree/references/index.js.map +1 -1
  74. package/lib/resolvers/content.d.ts +26 -1
  75. package/lib/resolvers/content.js +21 -1
  76. package/lib/resolvers/content.js.map +1 -1
  77. package/lib/resolvers/index.d.ts +27 -3
  78. package/lib/resolvers/leadFlourish.d.ts +1 -1
  79. package/lib/resolvers/literal-union.js +1 -0
  80. package/lib/resolvers/literal-union.js.map +1 -1
  81. package/lib/types/connection.d.ts +21 -0
  82. package/lib/types/connection.js +5 -0
  83. package/lib/types/connection.js.map +1 -0
  84. package/package.json +1 -1
  85. package/queries/article.graphql +8 -2
  86. package/src/datasources/capi.ts +1 -14
  87. package/src/datasources/origami-image.ts +1 -13
  88. package/src/datasources/twitter.ts +1 -14
  89. package/src/fixtures/dummyContext.ts +1 -1
  90. package/src/generated/index.ts +75 -24
  91. package/src/index.ts +1 -0
  92. package/src/model/CapiResponse.test.ts +137 -7
  93. package/src/model/CapiResponse.ts +129 -37
  94. package/src/model/FlourishSource.test.ts +5 -5
  95. package/src/model/FlourishSource.ts +57 -39
  96. package/src/model/Image.ts +16 -0
  97. package/src/model/LeadFlourish.test.ts +6 -9
  98. package/src/model/LeadFlourish.ts +5 -1
  99. package/src/model/schemas/capi/base-schema.ts +1 -1
  100. package/src/model/schemas/capi/internal-content.ts +1 -1
  101. package/src/resolvers/content-tree/references/Flourish.test.ts +4 -3
  102. package/src/resolvers/content-tree/references/Flourish.ts +16 -32
  103. package/src/resolvers/content-tree/references/index.ts +4 -4
  104. package/src/resolvers/content.ts +31 -1
  105. package/src/types/connection.ts +28 -0
  106. package/tsconfig.tsbuildinfo +1 -1
  107. package/typedefs/content.graphql +40 -2
  108. package/typedefs/leadFlourish.graphql +1 -1
  109. package/typedefs/references/flourish.graphql +1 -11
  110. package/lib/helpers/timeout-error.d.ts +0 -6
  111. package/lib/helpers/timeout-error.js +0 -15
  112. package/lib/helpers/timeout-error.js.map +0 -1
  113. package/src/helpers/timeout-error.ts +0 -13
@@ -1,51 +1,29 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.FlourishFallback = exports.Flourish = void 0;
7
- const imageService_1 = __importDefault(require("../../../helpers/imageService"));
3
+ exports.FlourishSource = exports.Flourish = void 0;
8
4
  const FlourishSource_1 = require("../../../model/FlourishSource");
9
5
  exports.Flourish = {
10
6
  async fallbackImage(parent, _args, context) {
11
7
  if (!parent.reference) {
12
- return {};
8
+ return null;
13
9
  }
14
10
  const flourishData = {
15
11
  id: parent.reference.id,
16
12
  type: parent.reference.flourishType,
17
13
  description: parent.reference.description,
18
14
  };
19
- const flourishSource = new FlourishSource_1.FlourishSource(flourishData, context);
20
- const width = await flourishSource.width();
21
- const height = await flourishSource.height();
22
- const imageServiceWrappedUrl = (0, imageService_1.default)({
23
- url: flourishSource.flourishUrl(),
24
- systemCode: context.systemCode ?? 'cp-content-pipeline',
25
- width,
26
- });
27
- return {
28
- url: imageServiceWrappedUrl,
29
- type: flourishSource.type(),
30
- format: flourishSource.format(),
31
- sourceSet: [],
32
- width,
33
- height,
34
- };
15
+ return FlourishSource_1.FlourishSource.createWithMetadata(flourishData, context);
35
16
  },
36
17
  type(parent) {
37
18
  return parent.reference.type;
38
19
  },
39
20
  };
40
- exports.FlourishFallback = {
41
- async height(parent) {
42
- return parent.height ?? null;
43
- },
44
- async width(parent) {
45
- return parent.width ?? null;
46
- },
47
- async url(parent) {
48
- return parent.url ?? null;
49
- },
21
+ exports.FlourishSource = {
22
+ id: (parent) => parent.id(),
23
+ url: (parent) => parent.flourishUrl(),
24
+ type: (parent) => parent.type(),
25
+ width: (parent) => parent.width(),
26
+ height: (parent) => parent.height(),
27
+ format: (parent) => parent.format(),
50
28
  };
51
29
  //# sourceMappingURL=Flourish.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Flourish.js","sourceRoot":"","sources":["../../../../src/resolvers/content-tree/references/Flourish.ts"],"names":[],"mappings":";;;;;;AAAA,iFAA2D;AAK3D,kEAA8D;AAEjD,QAAA,QAAQ,GAAG;IACtB,KAAK,CAAC,aAAa,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO;QACxC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;YACtB,OAAO,EAAE,CAAA;QACX,CAAC;QACD,MAAM,YAAY,GAAG;YACnB,EAAE,EAAE,MAAM,CAAC,SAAS,CAAC,EAAE;YACvB,IAAI,EAAE,MAAM,CAAC,SAAS,CAAC,YAAY;YACnC,WAAW,EAAE,MAAM,CAAC,SAAS,CAAC,WAAW;SAC1C,CAAA;QACD,MAAM,cAAc,GAAG,IAAI,+BAAc,CAAC,YAAY,EAAE,OAAO,CAAC,CAAA;QAChE,MAAM,KAAK,GAAG,MAAM,cAAc,CAAC,KAAK,EAAE,CAAA;QAC1C,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,MAAM,EAAE,CAAA;QAE5C,MAAM,sBAAsB,GAAG,IAAA,sBAAe,EAAC;YAC7C,GAAG,EAAE,cAAc,CAAC,WAAW,EAAE;YACjC,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,qBAAqB;YACvD,KAAK;SACN,CAAC,CAAA;QAEF,OAAO;YACL,GAAG,EAAE,sBAAsB;YAC3B,IAAI,EAAE,cAAc,CAAC,IAAI,EAAE;YAC3B,MAAM,EAAE,cAAc,CAAC,MAAM,EAAE;YAC/B,SAAS,EAAE,EAAE;YACb,KAAK;YACL,MAAM;SACP,CAAA;IACH,CAAC;IAED,IAAI,CAAC,MAAM;QACT,OAAO,MAAM,CAAC,SAAS,CAAC,IAAI,CAAA;IAC9B,CAAC;CAC0B,CAAA;AAEhB,QAAA,gBAAgB,GAAG;IAC9B,KAAK,CAAC,MAAM,CAAC,MAAM;QACjB,OAAO,MAAM,CAAC,MAAM,IAAI,IAAI,CAAA;IAC9B,CAAC;IACD,KAAK,CAAC,KAAK,CAAC,MAAM;QAChB,OAAO,MAAM,CAAC,KAAK,IAAI,IAAI,CAAA;IAC7B,CAAC;IACD,KAAK,CAAC,GAAG,CAAC,MAAM;QACd,OAAO,MAAM,CAAC,GAAG,IAAI,IAAI,CAAA;IAC3B,CAAC;CACkC,CAAA"}
1
+ {"version":3,"file":"Flourish.js","sourceRoot":"","sources":["../../../../src/resolvers/content-tree/references/Flourish.ts"],"names":[],"mappings":";;;AAIA,kEAAqF;AAExE,QAAA,QAAQ,GAAG;IACtB,KAAK,CAAC,aAAa,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO;QACxC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;YACtB,OAAO,IAAI,CAAA;QACb,CAAC;QAED,MAAM,YAAY,GAAG;YACnB,EAAE,EAAE,MAAM,CAAC,SAAS,CAAC,EAAE;YACvB,IAAI,EAAE,MAAM,CAAC,SAAS,CAAC,YAAY;YACnC,WAAW,EAAE,MAAM,CAAC,SAAS,CAAC,WAAW;SAC1C,CAAA;QAED,OAAO,+BAAmB,CAAC,kBAAkB,CAC3C,YAAY,EACZ,OAAO,CACR,CAAA;IACH,CAAC;IAED,IAAI,CAAC,MAAM;QACT,OAAO,MAAM,CAAC,SAAS,CAAC,IAAI,CAAA;IAC9B,CAAC;CAC0B,CAAA;AAEhB,QAAA,cAAc,GAAG;IAC5B,EAAE,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE;IAC3B,GAAG,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,WAAW,EAAE;IACrC,IAAI,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE;IAC/B,KAAK,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE;IACjC,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE;IACnC,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE;CACF,CAAA"}
@@ -30,7 +30,7 @@ describe('Flourish Model', () => {
30
30
  // Regex checks for flourish url whilst leaving spaces for arguments
31
31
  // https://public.flourish.studio/{type}/{id}/thumbnail
32
32
  const flourishImageUrlRegex = new RegExp(/https:\/\/public.flourish.studio\/.*\/.*\/thumbnail/);
33
- expect(decodeURIComponent(fallbackResponse.url)).toMatch(flourishImageUrlRegex);
33
+ expect(decodeURIComponent(fallbackResponse?.url())).toMatch(flourishImageUrlRegex);
34
34
  });
35
35
  it('The Flourish id is included in the flourish image url', async () => {
36
36
  const reference = {
@@ -43,7 +43,7 @@ describe('Flourish Model', () => {
43
43
  };
44
44
  const fallbackResponse = await Flourish_1.Flourish.fallbackImage({ reference }, {}, context);
45
45
  const flourishImageUrlRegex = new RegExp(/https:\/\/public.flourish.studio\/.*\/example-id/);
46
- expect(decodeURIComponent(fallbackResponse.url)).toMatch(flourishImageUrlRegex);
46
+ expect(decodeURIComponent(fallbackResponse?.url())).toMatch(flourishImageUrlRegex);
47
47
  });
48
48
  it('The Flourish graphic type is included in the flourish image url', async () => {
49
49
  const reference = {
@@ -56,7 +56,7 @@ describe('Flourish Model', () => {
56
56
  };
57
57
  const fallbackResponse = await Flourish_1.Flourish.fallbackImage({ reference }, {}, context);
58
58
  const flourishImageUrl = 'https://public.flourish.studio/example-type';
59
- expect(fallbackResponse.url).toContain(encodeURIComponent(flourishImageUrl));
59
+ expect(fallbackResponse?.url() ?? '').toContain(encodeURIComponent(flourishImageUrl));
60
60
  });
61
61
  });
62
62
  });
@@ -1 +1 @@
1
- {"version":3,"file":"Flourish.test.js","sourceRoot":"","sources":["../../../../src/resolvers/content-tree/references/Flourish.test.ts"],"names":[],"mappings":";;AAAA,2CAAoC;AAEpC,yCAAqC;AAIrC,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;IAC9B,MAAM,2BAA2B,GAAG,cAAI,CAAC,EAAE,EAAE,CAAA;IAC7C,MAAM,OAAO,GAAG;QACd,UAAU,EAAE,gBAAgB;QAC5B,WAAW,EAAE;YACX,OAAO,EAAE;gBACP,gBAAgB,EAAE,2BAA2B;aAC9C;SACF;KACyB,CAAA;IAE5B,SAAS,CAAC,GAAG,EAAE;QACb,cAAI,CAAC,aAAa,EAAE,CAAA;IACtB,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;QAChC,QAAQ,CAAC,KAAK,EAAE,GAAG,EAAE;YACnB,EAAE,CAAC,qCAAqC,EAAE,KAAK,IAAI,EAAE;gBACnD,MAAM,SAAS,GAAyB;oBACtC,IAAI,EAAE,UAAU;oBAChB,EAAE,EAAE,YAAY;oBAChB,YAAY,EAAE,cAAc;oBAC5B,WAAW,EAAE,MAAM;oBACnB,SAAS,EAAE,0BAA0B;oBACrC,WAAW,EAAE,qBAAqB;iBACnC,CAAA;gBACD,MAAM,gBAAgB,GAAG,MAAM,mBAAQ,CAAC,aAAa,CACnD,EAAE,SAAS,EAAE,EACb,EAAE,EACF,OAAO,CACR,CAAA;gBAED,oEAAoE;gBACpE,uDAAuD;gBACvD,MAAM,qBAAqB,GAAG,IAAI,MAAM,CACtC,qDAAqD,CACtD,CAAA;gBAED,MAAM,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,GAAa,CAAC,CAAC,CAAC,OAAO,CAChE,qBAAqB,CACtB,CAAA;YACH,CAAC,CAAC,CAAA;YAEF,EAAE,CAAC,uDAAuD,EAAE,KAAK,IAAI,EAAE;gBACrE,MAAM,SAAS,GAAyB;oBACtC,IAAI,EAAE,UAAU;oBAChB,EAAE,EAAE,YAAY;oBAChB,YAAY,EAAE,cAAc;oBAC5B,WAAW,EAAE,MAAM;oBACnB,SAAS,EAAE,0BAA0B;oBACrC,WAAW,EAAE,qBAAqB;iBACnC,CAAA;gBACD,MAAM,gBAAgB,GAAG,MAAM,mBAAQ,CAAC,aAAa,CACnD,EAAE,SAAS,EAAE,EACb,EAAE,EACF,OAAO,CACR,CAAA;gBAED,MAAM,qBAAqB,GAAG,IAAI,MAAM,CACtC,kDAAkD,CACnD,CAAA;gBAED,MAAM,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,GAAa,CAAC,CAAC,CAAC,OAAO,CAChE,qBAAqB,CACtB,CAAA;YACH,CAAC,CAAC,CAAA;YAEF,EAAE,CAAC,iEAAiE,EAAE,KAAK,IAAI,EAAE;gBAC/E,MAAM,SAAS,GAAyB;oBACtC,IAAI,EAAE,UAAU;oBAChB,EAAE,EAAE,YAAY;oBAChB,YAAY,EAAE,cAAc;oBAC5B,WAAW,EAAE,MAAM;oBACnB,SAAS,EAAE,0BAA0B;oBACrC,WAAW,EAAE,qBAAqB;iBACnC,CAAA;gBACD,MAAM,gBAAgB,GAAG,MAAM,mBAAQ,CAAC,aAAa,CACnD,EAAE,SAAS,EAAE,EACb,EAAE,EACF,OAAO,CACR,CAAA;gBAED,MAAM,gBAAgB,GAAG,6CAA6C,CAAA;gBAEtE,MAAM,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,SAAS,CACpC,kBAAkB,CAAC,gBAAgB,CAAC,CACrC,CAAA;YACH,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"Flourish.test.js","sourceRoot":"","sources":["../../../../src/resolvers/content-tree/references/Flourish.test.ts"],"names":[],"mappings":";;AAAA,2CAAoC;AAEpC,yCAAqC;AAIrC,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;IAC9B,MAAM,2BAA2B,GAAG,cAAI,CAAC,EAAE,EAAE,CAAA;IAC7C,MAAM,OAAO,GAAG;QACd,UAAU,EAAE,gBAAgB;QAC5B,WAAW,EAAE;YACX,OAAO,EAAE;gBACP,gBAAgB,EAAE,2BAA2B;aAC9C;SACF;KACyB,CAAA;IAE5B,SAAS,CAAC,GAAG,EAAE;QACb,cAAI,CAAC,aAAa,EAAE,CAAA;IACtB,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;QAChC,QAAQ,CAAC,KAAK,EAAE,GAAG,EAAE;YACnB,EAAE,CAAC,qCAAqC,EAAE,KAAK,IAAI,EAAE;gBACnD,MAAM,SAAS,GAAyB;oBACtC,IAAI,EAAE,UAAU;oBAChB,EAAE,EAAE,YAAY;oBAChB,YAAY,EAAE,cAAc;oBAC5B,WAAW,EAAE,MAAM;oBACnB,SAAS,EAAE,0BAA0B;oBACrC,WAAW,EAAE,qBAAqB;iBACnC,CAAA;gBAED,MAAM,gBAAgB,GAAG,MAAM,mBAAQ,CAAC,aAAa,CACnD,EAAE,SAAS,EAAE,EACb,EAAE,EACF,OAAO,CACR,CAAA;gBAED,oEAAoE;gBACpE,uDAAuD;gBACvD,MAAM,qBAAqB,GAAG,IAAI,MAAM,CACtC,qDAAqD,CACtD,CAAA;gBAED,MAAM,CAAC,kBAAkB,CAAC,gBAAgB,EAAE,GAAG,EAAY,CAAC,CAAC,CAAC,OAAO,CACnE,qBAAqB,CACtB,CAAA;YACH,CAAC,CAAC,CAAA;YAEF,EAAE,CAAC,uDAAuD,EAAE,KAAK,IAAI,EAAE;gBACrE,MAAM,SAAS,GAAyB;oBACtC,IAAI,EAAE,UAAU;oBAChB,EAAE,EAAE,YAAY;oBAChB,YAAY,EAAE,cAAc;oBAC5B,WAAW,EAAE,MAAM;oBACnB,SAAS,EAAE,0BAA0B;oBACrC,WAAW,EAAE,qBAAqB;iBACnC,CAAA;gBACD,MAAM,gBAAgB,GAAG,MAAM,mBAAQ,CAAC,aAAa,CACnD,EAAE,SAAS,EAAE,EACb,EAAE,EACF,OAAO,CACR,CAAA;gBAED,MAAM,qBAAqB,GAAG,IAAI,MAAM,CACtC,kDAAkD,CACnD,CAAA;gBAED,MAAM,CAAC,kBAAkB,CAAC,gBAAgB,EAAE,GAAG,EAAY,CAAC,CAAC,CAAC,OAAO,CACnE,qBAAqB,CACtB,CAAA;YACH,CAAC,CAAC,CAAA;YAEF,EAAE,CAAC,iEAAiE,EAAE,KAAK,IAAI,EAAE;gBAC/E,MAAM,SAAS,GAAyB;oBACtC,IAAI,EAAE,UAAU;oBAChB,EAAE,EAAE,YAAY;oBAChB,YAAY,EAAE,cAAc;oBAC5B,WAAW,EAAE,MAAM;oBACnB,SAAS,EAAE,0BAA0B;oBACrC,WAAW,EAAE,qBAAqB;iBACnC,CAAA;gBACD,MAAM,gBAAgB,GAAG,MAAM,mBAAQ,CAAC,aAAa,CACnD,EAAE,SAAS,EAAE,EACb,EAAE,EACF,OAAO,CACR,CAAA;gBAED,MAAM,gBAAgB,GAAG,6CAA6C,CAAA;gBAEtE,MAAM,CAAC,gBAAgB,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,SAAS,CAC7C,kBAAkB,CAAC,gBAAgB,CAAC,CACrC,CAAA;YACH,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -8,6 +8,8 @@ const imageService_1 = __importDefault(require("../../../helpers/imageService"))
8
8
  const isError_1 = __importDefault(require("../../../helpers/isError"));
9
9
  const errors_1 = require("@dotcom-reliability-kit/errors");
10
10
  class RawImageModel {
11
+ rawImage;
12
+ context;
11
13
  constructor(rawImage, context) {
12
14
  this.rawImage = rawImage;
13
15
  this.context = context;
@@ -1 +1 @@
1
- {"version":3,"file":"RawImage.js","sourceRoot":"","sources":["../../../../src/resolvers/content-tree/references/RawImage.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RawImage.js","sourceRoot":"","sources":["../../../../src/resolvers/content-tree/references/RawImage.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import type { ContentTree } from '@financial-times/content-tree';
2
2
  import type { CapiResponse } from '../../../model/CapiResponse';
3
- import { FlourishResolvers, ImageSetResolvers, ClipSetResolvers, CustomCodeComponentResolvers, LayoutImageResolvers, RawImageResolvers, RecommendedResolvers, ReferenceResolvers, ScrollyImageResolvers, TweetResolvers, VideoReferenceResolvers, CaptionResolvers, AccessibilityResolvers, FlourishFallbackResolvers, AuthorReferenceResolvers } from '../../../generated';
3
+ import { FlourishResolvers, ImageSetResolvers, ClipSetResolvers, CustomCodeComponentResolvers, LayoutImageResolvers, RawImageResolvers, RecommendedResolvers, ReferenceResolvers, ScrollyImageResolvers, TweetResolvers, VideoReferenceResolvers, CaptionResolvers, AccessibilityResolvers, AuthorReferenceResolvers, FlourishSourceResolvers } from '../../../generated';
4
4
  export type ReferenceWithCAPIData<ReferenceType = ContentTree.Node> = {
5
5
  reference: ReferenceType;
6
6
  contentApiData?: CapiResponse;
@@ -13,6 +13,7 @@ export declare const resolvers: {
13
13
  CustomCodeComponent: CustomCodeComponentResolvers;
14
14
  VideoReference: VideoReferenceResolvers;
15
15
  Flourish: FlourishResolvers;
16
+ FlourishSource: FlourishSourceResolvers;
16
17
  Recommended: RecommendedResolvers;
17
18
  LayoutImage: LayoutImageResolvers;
18
19
  RawImage: RawImageResolvers;
@@ -20,7 +21,6 @@ export declare const resolvers: {
20
21
  MainImage: ImageSetResolvers;
21
22
  Caption: CaptionResolvers;
22
23
  Accessibility: AccessibilityResolvers;
23
- FlourishFallback: FlourishFallbackResolvers;
24
24
  AuthorReference: AuthorReferenceResolvers;
25
25
  };
26
26
  export declare const mapNodeToReference: {
@@ -21,6 +21,7 @@ exports.resolvers = {
21
21
  CustomCodeComponent: CustomCodeComponent_1.CustomCodeComponent,
22
22
  VideoReference: Video_1.Video,
23
23
  Flourish: Flourish_1.Flourish,
24
+ FlourishSource: Flourish_1.FlourishSource,
24
25
  Recommended: Recommended_1.Recommended,
25
26
  LayoutImage: LayoutImage_1.LayoutImage,
26
27
  RawImage: RawImage_1.RawImage,
@@ -28,7 +29,6 @@ exports.resolvers = {
28
29
  MainImage: ImageSet_1.ImageSet,
29
30
  Caption: ClipSet_1.Caption,
30
31
  Accessibility: ClipSet_1.Accessibility,
31
- FlourishFallback: Flourish_1.FlourishFallback,
32
32
  AuthorReference: Author_1.Author,
33
33
  };
34
34
  exports.mapNodeToReference = {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/resolvers/content-tree/references/index.ts"],"names":[],"mappings":";;;AAGA,2CAAuC;AAEvC,mCAA+B;AAC/B,yCAAqC;AACrC,uCAA2D;AAC3D,+DAA2D;AAC3D,mCAA+B;AAC/B,yCAAuD;AACvD,+CAA2C;AAC3C,+CAA2C;AAC3C,yCAAqC;AACrC,iDAA6C;AAmB7C,qCAAiC;AAOpB,QAAA,SAAS,GAiBlB;IACF,SAAS,EAAT,qBAAS;IACT,KAAK,EAAL,aAAK;IACL,QAAQ,EAAR,mBAAQ;IACR,OAAO,EAAP,iBAAO;IACP,mBAAmB,EAAnB,yCAAmB;IACnB,cAAc,EAAE,aAAK;IACrB,QAAQ,EAAR,mBAAQ;IACR,WAAW,EAAX,yBAAW;IACX,WAAW,EAAX,yBAAW;IACX,QAAQ,EAAR,mBAAQ;IACR,YAAY,EAAZ,2BAAY;IACZ,SAAS,EAAE,mBAAQ;IACnB,OAAO,EAAP,iBAAO;IACP,aAAa,EAAb,uBAAa;IACb,gBAAgB,EAAhB,2BAAgB;IAChB,eAAe,EAAE,eAAM;CACxB,CAAA;AAEY,QAAA,kBAAkB,GAAG;IAChC,QAAQ,EAAE,UAAU;IACpB,KAAK,EAAE,OAAO;IACd,WAAW,EAAE,UAAU;IACvB,UAAU,EAAE,SAAS;IACrB,IAAI,EAAE,SAAS;IACf,uBAAuB,EAAE,qBAAqB;IAC9C,KAAK,EAAE,gBAAgB;IACvB,WAAW,EAAE,aAAa;IAC1B,cAAc,EAAE,aAAa;IAC7B,eAAe,EAAE,cAAc;IAC/B,WAAW,EAAE,UAAU;IACvB,YAAY,EAAE,WAAW;IACzB,gBAAgB,EAAE,UAAU;IAC5B,MAAM,EAAE,iBAAiB;CACkD,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/resolvers/content-tree/references/index.ts"],"names":[],"mappings":";;;AAGA,2CAAuC;AAEvC,mCAA+B;AAC/B,yCAAqC;AACrC,uCAA2D;AAC3D,+DAA2D;AAC3D,mCAA+B;AAC/B,yCAAqD;AACrD,+CAA2C;AAC3C,+CAA2C;AAC3C,yCAAqC;AACrC,iDAA6C;AAmB7C,qCAAiC;AAOpB,QAAA,SAAS,GAiBlB;IACF,SAAS,EAAT,qBAAS;IACT,KAAK,EAAL,aAAK;IACL,QAAQ,EAAR,mBAAQ;IACR,OAAO,EAAP,iBAAO;IACP,mBAAmB,EAAnB,yCAAmB;IACnB,cAAc,EAAE,aAAK;IACrB,QAAQ,EAAR,mBAAQ;IACR,cAAc,EAAd,yBAAc;IACd,WAAW,EAAX,yBAAW;IACX,WAAW,EAAX,yBAAW;IACX,QAAQ,EAAR,mBAAQ;IACR,YAAY,EAAZ,2BAAY;IACZ,SAAS,EAAE,mBAAQ;IACnB,OAAO,EAAP,iBAAO;IACP,aAAa,EAAb,uBAAa;IACb,eAAe,EAAE,eAAM;CACxB,CAAA;AAEY,QAAA,kBAAkB,GAAG;IAChC,QAAQ,EAAE,UAAU;IACpB,KAAK,EAAE,OAAO;IACd,WAAW,EAAE,UAAU;IACvB,UAAU,EAAE,SAAS;IACrB,IAAI,EAAE,SAAS;IACf,uBAAuB,EAAE,qBAAqB;IAC9C,KAAK,EAAE,gBAAgB;IACvB,WAAW,EAAE,aAAa;IAC1B,cAAc,EAAE,aAAa;IAC7B,eAAe,EAAE,cAAc;IAC/B,WAAW,EAAE,UAAU;IACvB,YAAY,EAAE,WAAW;IACzB,gBAAgB,EAAE,UAAU;IAC5B,MAAM,EAAE,iBAAiB;CACkD,CAAA"}
@@ -31,6 +31,30 @@ declare const resolvers: {
31
31
  type: import("../generated").Resolver<import("../generated").ResolverTypeWrapper<"Article" | "Placeholder" | "Video" | "Audio" | "LiveBlogPackage" | "LiveBlogPost" | "ContentPackage" | "Content" | "MediaResource" | "CustomCodeComponent">, import("../model/CapiResponse").CapiResponse, import("..").QueryContext, {}>;
32
32
  url: import("../generated").Resolver<import("../generated").ResolverTypeWrapper<string>, import("../model/CapiResponse").CapiResponse, import("..").QueryContext, Partial<import("../generated").ContentUrlArgs>>;
33
33
  };
34
+ ContentConnection: {
35
+ edges: (parent: import("../generated").Omit<import("../generated").ContentConnection, "edges"> & {
36
+ edges: ReadonlyArray<import("../generated").Maybe<import("../generated").ResolversParentTypes["ContentEdge"]>>;
37
+ }) => readonly import("../generated").Maybe<import("../generated").Omit<import("../generated").ContentEdge, "node"> & {
38
+ node: import("../generated").Maybe<import("../generated").ResolversParentTypes["Content"]>;
39
+ }>[];
40
+ pageInfo: (parent: import("../generated").Omit<import("../generated").ContentConnection, "edges"> & {
41
+ edges: ReadonlyArray<import("../generated").Maybe<import("../generated").ResolversParentTypes["ContentEdge"]>>;
42
+ }) => import("../generated").PageInfo;
43
+ };
44
+ ContentEdge: {
45
+ node: (parent: import("../generated").Omit<import("../generated").ContentEdge, "node"> & {
46
+ node: import("../generated").Maybe<import("../generated").ResolversParentTypes["Content"]>;
47
+ }) => import("../generated").Maybe<import("../model/CapiResponse").CapiResponse>;
48
+ cursor: (parent: import("../generated").Omit<import("../generated").ContentEdge, "node"> & {
49
+ node: import("../generated").Maybe<import("../generated").ResolversParentTypes["Content"]>;
50
+ }) => string;
51
+ };
52
+ PageInfo: {
53
+ hasPreviousPage: (parent: import("../generated").PageInfo) => boolean;
54
+ hasNextPage: (parent: import("../generated").PageInfo) => boolean;
55
+ startCursor: (parent: import("../generated").PageInfo) => string | null;
56
+ endCursor: (parent: import("../generated").PageInfo) => string | null;
57
+ };
34
58
  Article: {
35
59
  containedIn: (parent: import("../model/CapiResponse").CapiResponse) => Promise<import("../model/CapiResponse").CapiResponse | null>;
36
60
  publication: (parent: import("../model/CapiResponse").CapiResponse) => string[] | null;
@@ -138,7 +162,8 @@ declare const resolvers: {
138
162
  url: import("../generated").Resolver<import("../generated").ResolverTypeWrapper<string>, import("../model/CapiResponse").CapiResponse, import("..").QueryContext, Partial<import("../generated").ContentUrlArgs>>;
139
163
  };
140
164
  LiveBlogPackage: {
141
- liveBlogPosts: (parent: import("../model/CapiResponse").CapiResponse) => Promise<[] | import("../model/CapiResponse").CapiResponse[]>;
165
+ liveBlogPosts: (parent: import("../model/CapiResponse").CapiResponse, args: Partial<import("../generated").LiveBlogPackageLiveBlogPostsArgs>) => Promise<[] | import("../model/CapiResponse").CapiResponse[]>;
166
+ liveBlogPostsConnection: (parent: import("../model/CapiResponse").CapiResponse, args: Partial<import("../generated").LiveBlogPackageLiveBlogPostsConnectionArgs>) => Promise<import("../types/connection").Connection<import("../model/CapiResponse").CapiResponse>>;
142
167
  pinnedPost: (parent: import("../model/CapiResponse").CapiResponse) => Promise<import("../model/CapiResponse").CapiResponse | null>;
143
168
  realtime: (parent: import("../model/CapiResponse").CapiResponse) => boolean | null;
144
169
  __resolveType?: import("../generated").TypeResolveFn<"Article" | "Placeholder" | "Video" | "Audio" | "LiveBlogPackage" | "LiveBlogPost" | "ContentPackage", import("../model/CapiResponse").CapiResponse, import("..").QueryContext> | undefined;
@@ -47,6 +47,20 @@ const resolvers = {
47
47
  },
48
48
  ...contentResolvers,
49
49
  },
50
+ ContentConnection: {
51
+ edges: (parent) => parent.edges,
52
+ pageInfo: (parent) => parent.pageInfo,
53
+ },
54
+ ContentEdge: {
55
+ node: (parent) => parent.node,
56
+ cursor: (parent) => parent.cursor,
57
+ },
58
+ PageInfo: {
59
+ hasPreviousPage: (parent) => parent.hasPreviousPage,
60
+ hasNextPage: (parent) => parent.hasNextPage,
61
+ startCursor: (parent) => parent.startCursor ?? null,
62
+ endCursor: (parent) => parent.endCursor ?? null,
63
+ },
50
64
  Article: {
51
65
  ...contentResolvers,
52
66
  containedIn: (parent) => parent.containedIn(),
@@ -75,7 +89,13 @@ const resolvers = {
75
89
  },
76
90
  LiveBlogPackage: {
77
91
  ...contentResolvers,
78
- liveBlogPosts: (parent) => parent.liveBlogPosts(),
92
+ liveBlogPosts: (parent, args) => parent.liveBlogPosts(args),
93
+ liveBlogPostsConnection: (parent, args) => parent.liveBlogPostsConnection({
94
+ first: args.first ?? undefined,
95
+ after: args.after ?? undefined,
96
+ last: args.last ?? undefined,
97
+ before: args.before ?? undefined,
98
+ }),
79
99
  pinnedPost: (parent) => parent.pinnedPost(),
80
100
  realtime: (parent) => parent.realtime(),
81
101
  },
@@ -1 +1 @@
1
- {"version":3,"file":"content.js","sourceRoot":"","sources":["../../src/resolvers/content.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"content.js","sourceRoot":"","sources":["../../src/resolvers/content.ts"],"names":[],"mappings":"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"}
@@ -14,7 +14,7 @@ declare const resolvers: {
14
14
  type: (flourish: import("../model/LeadFlourish").LeadFlourish) => string;
15
15
  id: (flourish: import("../model/LeadFlourish").LeadFlourish) => string | null;
16
16
  description: (flourish: import("../model/LeadFlourish").LeadFlourish) => string;
17
- fallbackImage: (flourish: import("../model/LeadFlourish").LeadFlourish) => Promise<import("../model/FlourishSource").FlourishSource>;
17
+ fallbackImage: (flourish: import("../model/LeadFlourish").LeadFlourish) => Promise<import("../model/FlourishSource").FlourishSource | null>;
18
18
  };
19
19
  FlourishSource: {
20
20
  id: (parent: import("../model/FlourishSource").FlourishSource) => string;
@@ -290,7 +290,6 @@ declare const resolvers: {
290
290
  MainImage: import("../generated").ImageSetResolvers;
291
291
  Caption: import("../generated").CaptionResolvers;
292
292
  Accessibility: import("../generated").AccessibilityResolvers;
293
- FlourishFallback: import("../generated").FlourishFallbackResolvers;
294
293
  AuthorReference: import("../generated").AuthorReferenceResolvers;
295
294
  Picture: {
296
295
  __resolveType: import("../generated").TypeResolveFn<"PictureFullBleed" | "PictureInline" | "PictureStandard", import("../model/Picture").Picture, import("..").QueryContext>;
@@ -545,6 +544,30 @@ declare const resolvers: {
545
544
  type: import("../generated").Resolver<import("../generated").ResolverTypeWrapper<"Article" | "Placeholder" | "Video" | "Audio" | "LiveBlogPackage" | "LiveBlogPost" | "ContentPackage" | "Content" | "MediaResource" | "CustomCodeComponent">, import("../model/CapiResponse").CapiResponse, import("..").QueryContext, {}>;
546
545
  url: import("../generated").Resolver<import("../generated").ResolverTypeWrapper<string>, import("../model/CapiResponse").CapiResponse, import("..").QueryContext, Partial<import("../generated").ContentUrlArgs>>;
547
546
  };
547
+ ContentConnection: {
548
+ edges: (parent: import("../generated").Omit<import("../generated").ContentConnection, "edges"> & {
549
+ edges: ReadonlyArray<import("../generated").Maybe<import("../generated").ResolversParentTypes["ContentEdge"]>>;
550
+ }) => readonly import("../generated").Maybe<import("../generated").Omit<import("../generated").ContentEdge, "node"> & {
551
+ node: import("../generated").Maybe<import("../generated").ResolversParentTypes["Content"]>;
552
+ }>[];
553
+ pageInfo: (parent: import("../generated").Omit<import("../generated").ContentConnection, "edges"> & {
554
+ edges: ReadonlyArray<import("../generated").Maybe<import("../generated").ResolversParentTypes["ContentEdge"]>>;
555
+ }) => import("../generated").PageInfo;
556
+ };
557
+ ContentEdge: {
558
+ node: (parent: import("../generated").Omit<import("../generated").ContentEdge, "node"> & {
559
+ node: import("../generated").Maybe<import("../generated").ResolversParentTypes["Content"]>;
560
+ }) => import("../generated").Maybe<import("../model/CapiResponse").CapiResponse>;
561
+ cursor: (parent: import("../generated").Omit<import("../generated").ContentEdge, "node"> & {
562
+ node: import("../generated").Maybe<import("../generated").ResolversParentTypes["Content"]>;
563
+ }) => string;
564
+ };
565
+ PageInfo: {
566
+ hasPreviousPage: (parent: import("../generated").PageInfo) => boolean;
567
+ hasNextPage: (parent: import("../generated").PageInfo) => boolean;
568
+ startCursor: (parent: import("../generated").PageInfo) => string | null;
569
+ endCursor: (parent: import("../generated").PageInfo) => string | null;
570
+ };
548
571
  Article: {
549
572
  containedIn: (parent: import("../model/CapiResponse").CapiResponse) => Promise<import("../model/CapiResponse").CapiResponse | null>;
550
573
  publication: (parent: import("../model/CapiResponse").CapiResponse) => string[] | null;
@@ -652,7 +675,8 @@ declare const resolvers: {
652
675
  url: import("../generated").Resolver<import("../generated").ResolverTypeWrapper<string>, import("../model/CapiResponse").CapiResponse, import("..").QueryContext, Partial<import("../generated").ContentUrlArgs>>;
653
676
  };
654
677
  LiveBlogPackage: {
655
- liveBlogPosts: (parent: import("../model/CapiResponse").CapiResponse) => Promise<[] | import("../model/CapiResponse").CapiResponse[]>;
678
+ liveBlogPosts: (parent: import("../model/CapiResponse").CapiResponse, args: Partial<import("../generated").LiveBlogPackageLiveBlogPostsArgs>) => Promise<[] | import("../model/CapiResponse").CapiResponse[]>;
679
+ liveBlogPostsConnection: (parent: import("../model/CapiResponse").CapiResponse, args: Partial<import("../generated").LiveBlogPackageLiveBlogPostsConnectionArgs>) => Promise<import("../types/connection").Connection<import("../model/CapiResponse").CapiResponse>>;
656
680
  pinnedPost: (parent: import("../model/CapiResponse").CapiResponse) => Promise<import("../model/CapiResponse").CapiResponse | null>;
657
681
  realtime: (parent: import("../model/CapiResponse").CapiResponse) => boolean | null;
658
682
  __resolveType?: import("../generated").TypeResolveFn<"Article" | "Placeholder" | "Video" | "Audio" | "LiveBlogPackage" | "LiveBlogPost" | "ContentPackage", import("../model/CapiResponse").CapiResponse, import("..").QueryContext> | undefined;
@@ -3,7 +3,7 @@ declare const resolvers: {
3
3
  type: (flourish: import("../model/LeadFlourish").LeadFlourish) => string;
4
4
  id: (flourish: import("../model/LeadFlourish").LeadFlourish) => string | null;
5
5
  description: (flourish: import("../model/LeadFlourish").LeadFlourish) => string;
6
- fallbackImage: (flourish: import("../model/LeadFlourish").LeadFlourish) => Promise<import("../model/FlourishSource").FlourishSource>;
6
+ fallbackImage: (flourish: import("../model/LeadFlourish").LeadFlourish) => Promise<import("../model/FlourishSource").FlourishSource | null>;
7
7
  };
8
8
  FlourishSource: {
9
9
  id: (parent: import("../model/FlourishSource").FlourishSource) => string;
@@ -5,6 +5,7 @@ const graphql_1 = require("graphql");
5
5
  const validLiteralUnionValue = (value, validValues) => typeof value === 'string' && validValues.includes(value);
6
6
  exports.validLiteralUnionValue = validLiteralUnionValue;
7
7
  class LiteralUnionScalar extends graphql_1.GraphQLScalarType {
8
+ values;
8
9
  constructor(config) {
9
10
  super({
10
11
  ...config,
@@ -1 +1 @@
1
- {"version":3,"file":"literal-union.js","sourceRoot":"","sources":["../../src/resolvers/literal-union.ts"],"names":[],"mappings":";;;AAAA,qCAIgB;AAQT,MAAM,sBAAsB,GAAG,CACpC,KAAc,EACd,WAAuB,EACa,EAAE,CACtC,OAAO,KAAK,KAAK,QAAQ,IAAI,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;AAJ7C,QAAA,sBAAsB,0BAIuB;AAM1D,MAAa,kBAEX,SAAQ,2BAAoD;IAG5D,YAAY,MAA4C;QACtD,KAAK,CAAC;YACJ,GAAG,MAAM;YACT,SAAS,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;YAC9C,mEAAmE;YACnE,wEAAwE;SACzE,CAAC,CAAA;QAEF,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAA;IAC7B,CAAC;IAED,UAAU,CAAC,MAAe;QACxB,IAAI,CAAC,IAAA,8BAAsB,EAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YACjD,uEAAuE;YACvE,wCAAwC;YACxC,MAAM,IAAI,sBAAY,CACpB,YAAY,IAAI,CAAC,IAAI,uBAAuB,IAAI,CAAC,SAAS,CACxD,IAAI,CAAC,MAAM,CACZ,aAAa,MAAM,EAAE,CACvB,CAAA;QACH,CAAC;QAED,OAAO,MAAM,CAAA;IACf,CAAC;IAED,qEAAqE;IACrE,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAC7D,CAAC;CACF;AAlCD,gDAkCC"}
1
+ {"version":3,"file":"literal-union.js","sourceRoot":"","sources":["../../src/resolvers/literal-union.ts"],"names":[],"mappings":";;;AAAA,qCAIgB;AAQT,MAAM,sBAAsB,GAAG,CACpC,KAAc,EACd,WAAuB,EACa,EAAE,CACtC,OAAO,KAAK,KAAK,QAAQ,IAAI,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;AAJ7C,QAAA,sBAAsB,0BAIuB;AAM1D,MAAa,kBAEX,SAAQ,2BAAoD;IAC5D,MAAM,CAAY;IAElB,YAAY,MAA4C;QACtD,KAAK,CAAC;YACJ,GAAG,MAAM;YACT,SAAS,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;YAC9C,mEAAmE;YACnE,wEAAwE;SACzE,CAAC,CAAA;QAEF,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAA;IAC7B,CAAC;IAED,UAAU,CAAC,MAAe;QACxB,IAAI,CAAC,IAAA,8BAAsB,EAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YACjD,uEAAuE;YACvE,wCAAwC;YACxC,MAAM,IAAI,sBAAY,CACpB,YAAY,IAAI,CAAC,IAAI,uBAAuB,IAAI,CAAC,SAAS,CACxD,IAAI,CAAC,MAAM,CACZ,aAAa,MAAM,EAAE,CACvB,CAAA;QACH,CAAC;QAED,OAAO,MAAM,CAAA;IACf,CAAC;IAED,qEAAqE;IACrE,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAC7D,CAAC;CACF;AAlCD,gDAkCC"}
@@ -0,0 +1,21 @@
1
+ export type ConnectionCursor = string;
2
+ export interface ConnectionPageInfo {
3
+ hasPreviousPage: boolean;
4
+ hasNextPage: boolean;
5
+ startCursor?: ConnectionCursor;
6
+ endCursor?: ConnectionCursor;
7
+ }
8
+ export interface ConnectionEdge<T> {
9
+ node: T;
10
+ cursor: ConnectionCursor;
11
+ }
12
+ export interface Connection<T> {
13
+ edges: ConnectionEdge<T>[];
14
+ pageInfo: ConnectionPageInfo;
15
+ }
16
+ export interface ConnectionArguments {
17
+ first?: number;
18
+ after?: ConnectionCursor;
19
+ last?: number;
20
+ before?: ConnectionCursor;
21
+ }
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ // Types to aid the implementation of a Connection type, as specified in
3
+ // https://relay.dev/graphql/connections.htm
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ //# sourceMappingURL=connection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connection.js","sourceRoot":"","sources":["../../src/types/connection.ts"],"names":[],"mappings":";AAAA,wEAAwE;AACxE,4CAA4C"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@financial-times/cp-content-pipeline-schema",
3
- "version": "3.4.0",
3
+ "version": "3.5.1",
4
4
  "description": "",
5
5
  "main": "lib/index.js",
6
6
  "scripts": {
@@ -665,7 +665,7 @@ fragment ArticleFields on Content {
665
665
  }
666
666
  }
667
667
  ... on LiveBlogPackage {
668
- liveBlogPosts {
668
+ liveBlogPosts(count: $liveBlogPostCount) {
669
669
  ...Content
670
670
  url
671
671
  ... on LiveBlogPost {
@@ -678,6 +678,11 @@ fragment ArticleFields on Content {
678
678
  }
679
679
  }
680
680
  }
681
+ liveBlogPostsConnection(first: $liveBlogPostCount) {
682
+ pageInfo {
683
+ hasNextPage
684
+ }
685
+ }
681
686
  pinnedPost {
682
687
  ...PinnedPost
683
688
  }
@@ -696,7 +701,7 @@ fragment ArticleFields on Content {
696
701
  }
697
702
  }
698
703
 
699
- query Article($uuid: String!, $useVanities: Boolean!) {
704
+ query Article($uuid: String!, $useVanities: Boolean!, $liveBlogPostCount: Int) {
700
705
  content(uuid: $uuid) {
701
706
  ...ArticleFields
702
707
  }
@@ -705,6 +710,7 @@ query Article($uuid: String!, $useVanities: Boolean!) {
705
710
  query ArticleFromJSON(
706
711
  $content: JSON!
707
712
  $useVanities: Boolean!
713
+ $liveBlogPostCount: Int
708
714
  $uuid: String = null
709
715
  ) {
710
716
  contentFromJSON(content: $content) {
@@ -6,7 +6,6 @@ import {
6
6
  PrefixingKeyValueCache,
7
7
  } from '@apollo/utils.keyvaluecache'
8
8
  import { CapiList } from '../model/CapiList'
9
- import TimeoutError from '../helpers/timeout-error'
10
9
  import { Person } from '../model/Person'
11
10
 
12
11
  const REQUEST_TIMEOUT = process.env.CAPI_DATASOURCE_REQUEST_TIMEOUT
@@ -38,20 +37,13 @@ export class CapiDataSource extends InstrumentedRESTDataSource {
38
37
  return 'up-ica'
39
38
  }
40
39
 
41
- abortController = new AbortController()
42
- timeout: ReturnType<typeof setTimeout> | undefined = undefined
43
-
44
40
  nextNotificationLink?: string
45
41
 
46
42
  override willSendRequest(path: string, request: AugmentedRequest) {
47
43
  super.willSendRequest(path, request)
48
44
 
45
+ request.signal = AbortSignal.timeout(REQUEST_TIMEOUT)
49
46
  request.headers['x-api-key'] = this.capiKey
50
- request.signal = this.abortController.signal
51
- this.timeout = setTimeout(
52
- () => this.abortController.abort(new TimeoutError(REQUEST_TIMEOUT)),
53
- REQUEST_TIMEOUT
54
- )
55
47
  }
56
48
 
57
49
  async getContent(
@@ -71,11 +63,6 @@ export class CapiDataSource extends InstrumentedRESTDataSource {
71
63
  this.context.contentRequestedOnce = true
72
64
  this.calls.push(uuid)
73
65
 
74
- if (this.timeout) {
75
- clearTimeout(this.timeout)
76
- this.timeout = undefined
77
- }
78
-
79
66
  return CapiResponse.fromJSON(content, this.context, packageContainer)
80
67
  }
81
68
 
@@ -1,4 +1,3 @@
1
- import TimeoutError from '../helpers/timeout-error'
2
1
  import { InstrumentedRESTDataSource } from './instrumented'
3
2
  import { AugmentedRequest, CacheOptions } from '@apollo/datasource-rest'
4
3
 
@@ -12,9 +11,6 @@ export class OrigamiImageDataSource extends InstrumentedRESTDataSource {
12
11
  return 'origami-image-service-v2'
13
12
  }
14
13
 
15
- abortController = new AbortController()
16
- timeout: ReturnType<typeof setTimeout> | undefined = undefined
17
-
18
14
  imageMetadataCacheTTL = process.env.IMAGE_METADATA_CACHE_TTL
19
15
  ? parseInt(process.env.IMAGE_METADATA_CACHE_TTL)
20
16
  : 60 * 60 * 24 * 7 // 1 week
@@ -22,11 +18,7 @@ export class OrigamiImageDataSource extends InstrumentedRESTDataSource {
22
18
  override willSendRequest(path: string, request: AugmentedRequest) {
23
19
  super.willSendRequest(path, request)
24
20
 
25
- request.signal = this.abortController.signal
26
- this.timeout = setTimeout(
27
- () => this.abortController.abort(new TimeoutError(REQUEST_TIMEOUT)),
28
- REQUEST_TIMEOUT
29
- )
21
+ request.signal = AbortSignal.timeout(REQUEST_TIMEOUT)
30
22
  }
31
23
 
32
24
  protected cacheOptionsFor(): CacheOptions {
@@ -42,10 +34,6 @@ export class OrigamiImageDataSource extends InstrumentedRESTDataSource {
42
34
 
43
35
  this.calls.push(url)
44
36
 
45
- if (this.timeout) {
46
- clearTimeout(this.timeout)
47
- this.timeout = undefined
48
- }
49
37
  return imageMetadata
50
38
  }
51
39
  }
@@ -2,7 +2,6 @@ import { AugmentedRequest, CacheOptions } from '@apollo/datasource-rest'
2
2
  import * as z from 'zod'
3
3
 
4
4
  import { InstrumentedRESTDataSource } from './instrumented'
5
- import TimeoutError from '../helpers/timeout-error'
6
5
 
7
6
  const REQUEST_TIMEOUT = process.env.TWITTER_DATASOURCE_REQUEST_TIMEOUT
8
7
  ? parseInt(process.env.TWITTER_DATASOURCE_REQUEST_TIMEOUT)
@@ -16,17 +15,10 @@ export class TwitterDataSource extends InstrumentedRESTDataSource {
16
15
  return 'twitter-oembed-api'
17
16
  }
18
17
 
19
- abortController = new AbortController()
20
- timeout: ReturnType<typeof setTimeout> | undefined = undefined
21
-
22
18
  override willSendRequest(path: string, request: AugmentedRequest) {
23
19
  super.willSendRequest(path, request)
24
20
 
25
- request.signal = this.abortController.signal
26
- this.timeout = setTimeout(
27
- () => this.abortController.abort(new TimeoutError(REQUEST_TIMEOUT)),
28
- REQUEST_TIMEOUT
29
- )
21
+ request.signal = AbortSignal.timeout(REQUEST_TIMEOUT)
30
22
  }
31
23
 
32
24
  async getTweet(tweetUrl: string) {
@@ -34,11 +26,6 @@ export class TwitterDataSource extends InstrumentedRESTDataSource {
34
26
 
35
27
  this.calls.push(tweetUrl)
36
28
 
37
- if (this.timeout) {
38
- clearTimeout(this.timeout)
39
- this.timeout = undefined
40
- }
41
-
42
29
  return Tweet.parse(tweet)
43
30
  }
44
31
 
@@ -23,7 +23,7 @@ export default {
23
23
  ...baseCapiObject,
24
24
  id,
25
25
  publishedDate: new Date(
26
- now + parseInt(id.slice(-1), 10)
26
+ now + parseInt(id.slice(-2), 10)
27
27
  ).toISOString(),
28
28
  }),
29
29
  { addSurrogateKeys } as QueryContext