@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
@@ -59,6 +59,7 @@ export declare const liveBlogPackageSchema: import("zod").ZodObject<{
59
59
  backgroundBox: import("zod").ZodOptional<import("zod").ZodBoolean>;
60
60
  textShadow: import("zod").ZodOptional<import("zod").ZodBoolean>;
61
61
  layout: import("zod").ZodString;
62
+ layoutWidth: import("zod").ZodOptional<import("zod").ZodString>;
62
63
  }, "strip", import("zod").ZodTypeAny, {
63
64
  backgroundColour: string;
64
65
  layout: string;
@@ -66,6 +67,7 @@ export declare const liveBlogPackageSchema: import("zod").ZodObject<{
66
67
  standfirst?: string | undefined;
67
68
  backgroundBox?: boolean | undefined;
68
69
  textShadow?: boolean | undefined;
70
+ layoutWidth?: string | undefined;
69
71
  }, {
70
72
  backgroundColour: string;
71
73
  layout: string;
@@ -73,6 +75,7 @@ export declare const liveBlogPackageSchema: import("zod").ZodObject<{
73
75
  standfirst?: string | undefined;
74
76
  backgroundBox?: boolean | undefined;
75
77
  textShadow?: boolean | undefined;
78
+ layoutWidth?: string | undefined;
76
79
  }>>;
77
80
  comments: import("zod").ZodOptional<import("zod").ZodObject<{
78
81
  enabled: import("zod").ZodBoolean;
@@ -1190,6 +1193,7 @@ export declare const liveBlogPackageSchema: import("zod").ZodObject<{
1190
1193
  standfirst?: string | undefined;
1191
1194
  backgroundBox?: boolean | undefined;
1192
1195
  textShadow?: boolean | undefined;
1196
+ layoutWidth?: string | undefined;
1193
1197
  } | undefined;
1194
1198
  comments?: {
1195
1199
  enabled: boolean;
@@ -1437,6 +1441,7 @@ export declare const liveBlogPackageSchema: import("zod").ZodObject<{
1437
1441
  standfirst?: string | undefined;
1438
1442
  backgroundBox?: boolean | undefined;
1439
1443
  textShadow?: boolean | undefined;
1444
+ layoutWidth?: string | undefined;
1440
1445
  } | undefined;
1441
1446
  comments?: {
1442
1447
  enabled: boolean;
@@ -60,6 +60,7 @@ export declare const placeholderSchema: import("zod").ZodObject<{
60
60
  backgroundBox: import("zod").ZodOptional<import("zod").ZodBoolean>;
61
61
  textShadow: import("zod").ZodOptional<import("zod").ZodBoolean>;
62
62
  layout: import("zod").ZodString;
63
+ layoutWidth: import("zod").ZodOptional<import("zod").ZodString>;
63
64
  }, "strip", import("zod").ZodTypeAny, {
64
65
  backgroundColour: string;
65
66
  layout: string;
@@ -67,6 +68,7 @@ export declare const placeholderSchema: import("zod").ZodObject<{
67
68
  standfirst?: string | undefined;
68
69
  backgroundBox?: boolean | undefined;
69
70
  textShadow?: boolean | undefined;
71
+ layoutWidth?: string | undefined;
70
72
  }, {
71
73
  backgroundColour: string;
72
74
  layout: string;
@@ -74,6 +76,7 @@ export declare const placeholderSchema: import("zod").ZodObject<{
74
76
  standfirst?: string | undefined;
75
77
  backgroundBox?: boolean | undefined;
76
78
  textShadow?: boolean | undefined;
79
+ layoutWidth?: string | undefined;
77
80
  }>>;
78
81
  comments: import("zod").ZodOptional<import("zod").ZodObject<{
79
82
  enabled: import("zod").ZodBoolean;
@@ -1266,6 +1269,7 @@ export declare const placeholderSchema: import("zod").ZodObject<{
1266
1269
  standfirst?: string | undefined;
1267
1270
  backgroundBox?: boolean | undefined;
1268
1271
  textShadow?: boolean | undefined;
1272
+ layoutWidth?: string | undefined;
1269
1273
  } | undefined;
1270
1274
  comments?: {
1271
1275
  enabled: boolean;
@@ -1531,6 +1535,7 @@ export declare const placeholderSchema: import("zod").ZodObject<{
1531
1535
  standfirst?: string | undefined;
1532
1536
  backgroundBox?: boolean | undefined;
1533
1537
  textShadow?: boolean | undefined;
1538
+ layoutWidth?: string | undefined;
1534
1539
  } | undefined;
1535
1540
  comments?: {
1536
1541
  enabled: boolean;
@@ -1,6 +1,12 @@
1
- import { QueryContext } from '../../..';
2
1
  export declare const Flourish: {
3
- fallbackImage(parent: import(".").ReferenceWithCAPIData<import("@financial-times/content-tree").ContentTree.Flourish>, _args: {}, context: QueryContext): Promise<{
2
+ fallbackImage(parent: import(".").ReferenceWithCAPIData<import("@financial-times/content-tree").ContentTree.Flourish>, _args: {}, context: import("../../..").QueryContext): Promise<{
3
+ url?: undefined;
4
+ type?: undefined;
5
+ format?: undefined;
6
+ sourceSet?: undefined;
7
+ width?: undefined;
8
+ height?: undefined;
9
+ } | {
4
10
  url: string;
5
11
  type: string;
6
12
  format: string;
@@ -5,27 +5,29 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.FlourishFallback = exports.Flourish = void 0;
7
7
  const imageService_1 = __importDefault(require("../../../helpers/imageService"));
8
- const isError_1 = __importDefault(require("../../../helpers/isError"));
9
- const errors_1 = require("@dotcom-reliability-kit/errors");
8
+ const FlourishSource_1 = require("../../../model/FlourishSource");
10
9
  exports.Flourish = {
11
10
  async fallbackImage(parent, _args, context) {
12
- const type = parent.reference.flourishType;
13
- const timestamp = typeof parent.reference.timestamp === 'string'
14
- ? parent.reference.timestamp
15
- : false;
16
- const flourishUrl = `https://public.flourish.studio/${type}/${parent.reference.id}/thumbnail${timestamp ? '?cacheBuster=' + timestamp : ''}`;
17
- const imageMetadata = await getImageMetadata(context, flourishUrl);
18
- const width = imageMetadata.width;
19
- const height = imageMetadata.height;
11
+ if (!parent.reference) {
12
+ return {};
13
+ }
14
+ const flourishData = {
15
+ id: parent.reference.id,
16
+ type: parent.reference.flourishType,
17
+ description: parent.reference.description,
18
+ };
19
+ const flourishSource = new FlourishSource_1.FlourishSource(flourishData, context);
20
+ const width = await flourishSource.width();
21
+ const height = await flourishSource.height();
20
22
  const imageServiceWrappedUrl = (0, imageService_1.default)({
21
- url: flourishUrl,
23
+ url: flourishSource.flourishUrl(),
22
24
  systemCode: context.systemCode ?? 'cp-content-pipeline',
23
25
  width,
24
26
  });
25
27
  return {
26
28
  url: imageServiceWrappedUrl,
27
- type: 'image',
28
- format: 'standard',
29
+ type: flourishSource.type(),
30
+ format: flourishSource.format(),
29
31
  sourceSet: [],
30
32
  width,
31
33
  height,
@@ -46,31 +48,4 @@ exports.FlourishFallback = {
46
48
  return parent.url ?? null;
47
49
  },
48
50
  };
49
- const getImageMetadata = async (context, flourishUrl) => {
50
- const DEFAULT_WIDTH = 2626;
51
- const DEFAULT_HEIGHT = 1459;
52
- try {
53
- const imageMetadata = await context.dataSources.origami.getImageMetadata(flourishUrl);
54
- return {
55
- width: imageMetadata?.width || DEFAULT_WIDTH,
56
- height: imageMetadata?.height || DEFAULT_HEIGHT,
57
- };
58
- }
59
- catch (error) {
60
- if ((0, isError_1.default)(error)) {
61
- context.logger.warn({
62
- event: 'RECOVERABLE_ERROR',
63
- error: new errors_1.OperationalError({
64
- code: 'FLOURISH_IMAGE_METADATA_ERROR',
65
- message: `Error getting image dimensions for Flourish fallback image ${flourishUrl}`,
66
- cause: error,
67
- }),
68
- });
69
- }
70
- return {
71
- width: DEFAULT_WIDTH,
72
- height: DEFAULT_HEIGHT,
73
- };
74
- }
75
- };
76
51
  //# 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;AAM3D,uEAA8C;AAC9C,2DAAiE;AAEpD,QAAA,QAAQ,GAAG;IACtB,KAAK,CAAC,aAAa,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO;QACxC,MAAM,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC,YAAY,CAAA;QAC1C,MAAM,SAAS,GACb,OAAO,MAAM,CAAC,SAAS,CAAC,SAAS,KAAK,QAAQ;YAC5C,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,SAAS;YAC5B,CAAC,CAAC,KAAK,CAAA;QAEX,MAAM,WAAW,GAAG,kCAAkC,IAAI,IACxD,MAAM,CAAC,SAAS,CAAC,EACnB,aAAa,SAAS,CAAC,CAAC,CAAC,eAAe,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAA;QAE3D,MAAM,aAAa,GAAG,MAAM,gBAAgB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAA;QAElE,MAAM,KAAK,GAAG,aAAa,CAAC,KAAK,CAAA;QACjC,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,CAAA;QAEnC,MAAM,sBAAsB,GAAG,IAAA,sBAAe,EAAC;YAC7C,GAAG,EAAE,WAAW;YAChB,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,qBAAqB;YACvD,KAAK;SACN,CAAC,CAAA;QAEF,OAAO;YACL,GAAG,EAAE,sBAAsB;YAC3B,IAAI,EAAE,OAAO;YACb,MAAM,EAAE,UAAU;YAClB,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;AAOrC,MAAM,gBAAgB,GAAG,KAAK,EAC5B,OAAqB,EACrB,WAAmB,EACK,EAAE;IAC1B,MAAM,aAAa,GAAG,IAAI,CAAA;IAC1B,MAAM,cAAc,GAAG,IAAI,CAAA;IAE3B,IAAI;QACF,MAAM,aAAa,GAAG,MAAM,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,gBAAgB,CACtE,WAAW,CACZ,CAAA;QAED,OAAO;YACL,KAAK,EAAE,aAAa,EAAE,KAAK,IAAI,aAAa;YAC5C,MAAM,EAAE,aAAa,EAAE,MAAM,IAAI,cAAc;SAChD,CAAA;KACF;IAAC,OAAO,KAAK,EAAE;QACd,IAAI,IAAA,iBAAO,EAAC,KAAK,CAAC,EAAE;YAClB,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC;gBAClB,KAAK,EAAE,mBAAmB;gBAC1B,KAAK,EAAE,IAAI,yBAAgB,CAAC;oBAC1B,IAAI,EAAE,+BAA+B;oBACrC,OAAO,EAAE,8DAA8D,WAAW,EAAE;oBACpF,KAAK,EAAE,KAAK;iBACb,CAAC;aACH,CAAC,CAAA;SACH;QACD,OAAO;YACL,KAAK,EAAE,aAAa;YACpB,MAAM,EAAE,cAAc;SACvB,CAAA;KACF;AACH,CAAC,CAAA"}
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;YACrB,OAAO,EAAE,CAAA;SACV;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"}
@@ -58,36 +58,6 @@ describe('Flourish Model', () => {
58
58
  const flourishImageUrl = 'https://public.flourish.studio/example-type';
59
59
  expect(fallbackResponse.url).toContain(encodeURIComponent(flourishImageUrl));
60
60
  });
61
- describe('the flourish timestamp is present', () => {
62
- it('The Flourish cache buster is appended to the flourish image url', async () => {
63
- const reference = {
64
- type: 'flourish',
65
- id: 'example-id',
66
- flourishType: 'example-type',
67
- layoutWidth: 'grid',
68
- timestamp: '2022-01-06T14:41:01.102Z',
69
- description: 'Example description',
70
- };
71
- const fallbackResponse = await Flourish_1.Flourish.fallbackImage({ reference }, {}, context);
72
- const flourishImageCacheBuster = '?cacheBuster=2022-01-06T14:41:01.102Z';
73
- expect(fallbackResponse.url).toContain(encodeURIComponent(flourishImageCacheBuster));
74
- });
75
- });
76
- describe('the flourish timestamp is missing', () => {
77
- it('The Flourish cache buster is not appended to the flourish image url', async () => {
78
- const reference = {
79
- type: 'flourish',
80
- id: 'example-id',
81
- flourishType: 'example-type',
82
- layoutWidth: 'grid',
83
- timestamp: '',
84
- description: 'Example description',
85
- };
86
- const fallbackResponse = await Flourish_1.Flourish.fallbackImage({ reference }, {}, context);
87
- const flourishImageCacheBuster = '?cacheBuster=';
88
- expect(fallbackResponse.url).not.toContain(encodeURIComponent(flourishImageCacheBuster));
89
- });
90
- });
91
61
  });
92
62
  });
93
63
  });
@@ -1 +1 @@
1
- {"version":3,"file":"Flourish.test.js","sourceRoot":"","sources":["../../../../src/resolvers/content-tree/references/Flourish.test.ts"],"names":[],"mappings":"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"}
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,11 +1,24 @@
1
1
  declare const resolvers: {
2
+ LeadFlourish: {
3
+ type: (flourish: import("../model/LeadFlourish").LeadFlourish) => string;
4
+ id: (flourish: import("../model/LeadFlourish").LeadFlourish) => string | null;
5
+ description: (flourish: import("../model/LeadFlourish").LeadFlourish) => string;
6
+ fallbackImage: (flourish: import("../model/LeadFlourish").LeadFlourish) => Promise<import("../model/FlourishSource").FlourishSource>;
7
+ };
8
+ FlourishSource: {
9
+ url: (parent: import("../model/FlourishSource").FlourishSource) => Promise<string>;
10
+ height: (parent: import("../model/FlourishSource").FlourishSource) => Promise<number>;
11
+ width: (parent: import("../model/FlourishSource").FlourishSource) => Promise<number>;
12
+ type: (parent: import("../model/FlourishSource").FlourishSource) => string;
13
+ format: (parent: import("../model/FlourishSource").FlourishSource) => string;
14
+ };
2
15
  Person: {
3
16
  headshot: (parent: import("../model/Person").Person) => Promise<string | null>;
4
17
  prefLabel: (parent: import("../model/Person").Person) => string;
5
18
  streamPage: (parent: import("../model/Person").Person) => string;
6
19
  };
7
20
  Topper: {
8
- __resolveType: import("../generated").TypeResolveFn<"DeepPortraitTopper" | "DeepLandscapeTopper" | "SplitTextTopper" | "FullBleedTopper" | "PodcastTopper" | "OpinionTopper" | "BrandedTopper" | "BasicTopper", import("../model/Topper").Topper, import("..").QueryContext>;
21
+ __resolveType: import("../generated").TypeResolveFn<"DeepPortraitTopper" | "DeepLandscapeTopper" | "SplitTextTopper" | "FullBleedTopper" | "PodcastTopper" | "OpinionTopper" | "BrandedTopper" | "BasicTopper" | "TopperWithFlourish", import("../model/Topper").Topper, import("..").QueryContext>;
9
22
  backgroundBox: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<boolean>>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
10
23
  backgroundColour: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<"paper" | "wheat" | "white" | "black" | "claret" | "oxford" | "slate" | "crimson" | "sky" | "matisse">>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
11
24
  displayConcept: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<import("../model/Concept").Concept>>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
@@ -36,7 +49,7 @@ declare const resolvers: {
36
49
  isLargeHeadline: (topper: import("../model/Topper").Topper) => boolean;
37
50
  layout: (topper: import("../model/Topper").Topper) => string;
38
51
  columnist: (topper: import("../model/Topper").Topper) => import("../model/Concept").Concept | null;
39
- __resolveType?: import("../generated").TypeResolveFn<"DeepPortraitTopper" | "DeepLandscapeTopper" | "SplitTextTopper" | "FullBleedTopper" | "PodcastTopper" | "OpinionTopper" | "BrandedTopper" | "BasicTopper", import("../model/Topper").Topper, import("..").QueryContext> | undefined;
52
+ __resolveType?: import("../generated").TypeResolveFn<"DeepPortraitTopper" | "DeepLandscapeTopper" | "SplitTextTopper" | "FullBleedTopper" | "PodcastTopper" | "OpinionTopper" | "BrandedTopper" | "BasicTopper" | "TopperWithFlourish", import("../model/Topper").Topper, import("..").QueryContext> | undefined;
40
53
  backgroundBox: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<boolean>>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
41
54
  backgroundColour: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<"paper" | "wheat" | "white" | "black" | "claret" | "oxford" | "slate" | "crimson" | "sky" | "matisse">>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
42
55
  displayConcept: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<import("../model/Concept").Concept>>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
@@ -51,7 +64,7 @@ declare const resolvers: {
51
64
  isLargeHeadline: (topper: import("../model/Topper").Topper) => boolean;
52
65
  layout: (topper: import("../model/Topper").Topper) => string;
53
66
  columnist: (topper: import("../model/Topper").Topper) => import("../model/Concept").Concept | null;
54
- __resolveType?: import("../generated").TypeResolveFn<"DeepPortraitTopper" | "DeepLandscapeTopper" | "SplitTextTopper" | "FullBleedTopper" | "PodcastTopper" | "OpinionTopper" | "BrandedTopper" | "BasicTopper", import("../model/Topper").Topper, import("..").QueryContext> | undefined;
67
+ __resolveType?: import("../generated").TypeResolveFn<"DeepPortraitTopper" | "DeepLandscapeTopper" | "SplitTextTopper" | "FullBleedTopper" | "PodcastTopper" | "OpinionTopper" | "BrandedTopper" | "BasicTopper" | "TopperWithFlourish", import("../model/Topper").Topper, import("..").QueryContext> | undefined;
55
68
  backgroundBox: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<boolean>>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
56
69
  backgroundColour: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<"paper" | "wheat" | "white" | "black" | "claret" | "oxford" | "slate" | "crimson" | "sky" | "matisse">>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
57
70
  displayConcept: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<import("../model/Concept").Concept>>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
@@ -66,7 +79,7 @@ declare const resolvers: {
66
79
  };
67
80
  BasicTopper: {
68
81
  [x: string]: any;
69
- __resolveType?: import("../generated").TypeResolveFn<"DeepPortraitTopper" | "DeepLandscapeTopper" | "SplitTextTopper" | "FullBleedTopper" | "PodcastTopper" | "OpinionTopper" | "BrandedTopper" | "BasicTopper", import("../model/Topper").Topper, import("..").QueryContext> | undefined;
82
+ __resolveType?: import("../generated").TypeResolveFn<"DeepPortraitTopper" | "DeepLandscapeTopper" | "SplitTextTopper" | "FullBleedTopper" | "PodcastTopper" | "OpinionTopper" | "BrandedTopper" | "BasicTopper" | "TopperWithFlourish", import("../model/Topper").Topper, import("..").QueryContext> | undefined;
70
83
  backgroundBox: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<boolean>>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
71
84
  backgroundColour: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<"paper" | "wheat" | "white" | "black" | "claret" | "oxford" | "slate" | "crimson" | "sky" | "matisse">>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
72
85
  displayConcept: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<import("../model/Concept").Concept>>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
@@ -80,7 +93,7 @@ declare const resolvers: {
80
93
  brandConcept: (topper: import("../model/Topper").Topper) => import("../model/Concept").Concept | null;
81
94
  isLargeHeadline: (topper: import("../model/Topper").Topper) => boolean;
82
95
  layout: (topper: import("../model/Topper").Topper) => string;
83
- __resolveType?: import("../generated").TypeResolveFn<"DeepPortraitTopper" | "DeepLandscapeTopper" | "SplitTextTopper" | "FullBleedTopper" | "PodcastTopper" | "OpinionTopper" | "BrandedTopper" | "BasicTopper", import("../model/Topper").Topper, import("..").QueryContext> | undefined;
96
+ __resolveType?: import("../generated").TypeResolveFn<"DeepPortraitTopper" | "DeepLandscapeTopper" | "SplitTextTopper" | "FullBleedTopper" | "PodcastTopper" | "OpinionTopper" | "BrandedTopper" | "BasicTopper" | "TopperWithFlourish", import("../model/Topper").Topper, import("..").QueryContext> | undefined;
84
97
  backgroundBox: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<boolean>>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
85
98
  backgroundColour: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<"paper" | "wheat" | "white" | "black" | "claret" | "oxford" | "slate" | "crimson" | "sky" | "matisse">>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
86
99
  displayConcept: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<import("../model/Concept").Concept>>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
@@ -96,7 +109,7 @@ declare const resolvers: {
96
109
  layout: (topper: import("../model/Topper").Topper) => string;
97
110
  fallbackImage: (topper: import("../model/Topper").Topper) => import("../model/Image").CAPIImage | null;
98
111
  images: (topper: import("../model/Topper").Topper) => import("../model/Image").CAPIImage[];
99
- __resolveType?: import("../generated").TypeResolveFn<"DeepPortraitTopper" | "DeepLandscapeTopper" | "SplitTextTopper" | "FullBleedTopper" | "PodcastTopper" | "OpinionTopper" | "BrandedTopper" | "BasicTopper", import("../model/Topper").Topper, import("..").QueryContext> | undefined;
112
+ __resolveType?: import("../generated").TypeResolveFn<"DeepPortraitTopper" | "DeepLandscapeTopper" | "SplitTextTopper" | "FullBleedTopper" | "PodcastTopper" | "OpinionTopper" | "BrandedTopper" | "BasicTopper" | "TopperWithFlourish", import("../model/Topper").Topper, import("..").QueryContext> | undefined;
100
113
  backgroundBox: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<boolean>>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
101
114
  backgroundColour: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<"paper" | "wheat" | "white" | "black" | "claret" | "oxford" | "slate" | "crimson" | "sky" | "matisse">>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
102
115
  displayConcept: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<import("../model/Concept").Concept>>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
@@ -112,7 +125,21 @@ declare const resolvers: {
112
125
  layout: (topper: import("../model/Topper").Topper) => string;
113
126
  fallbackImage: (topper: import("../model/Topper").Topper) => import("../model/Image").CAPIImage | null;
114
127
  images: (topper: import("../model/Topper").Topper) => import("../model/Image").CAPIImage[];
115
- __resolveType?: import("../generated").TypeResolveFn<"DeepPortraitTopper" | "DeepLandscapeTopper" | "SplitTextTopper" | "FullBleedTopper" | "PodcastTopper" | "OpinionTopper" | "BrandedTopper" | "BasicTopper", import("../model/Topper").Topper, import("..").QueryContext> | undefined;
128
+ __resolveType?: import("../generated").TypeResolveFn<"DeepPortraitTopper" | "DeepLandscapeTopper" | "SplitTextTopper" | "FullBleedTopper" | "PodcastTopper" | "OpinionTopper" | "BrandedTopper" | "BasicTopper" | "TopperWithFlourish", import("../model/Topper").Topper, import("..").QueryContext> | undefined;
129
+ backgroundBox: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<boolean>>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
130
+ backgroundColour: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<"paper" | "wheat" | "white" | "black" | "claret" | "oxford" | "slate" | "crimson" | "sky" | "matisse">>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
131
+ displayConcept: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<import("../model/Concept").Concept>>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
132
+ followButtonVariant: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<"standard" | "inverse" | "opinion" | "alphaville" | "monochrome" | "inverse-monochrome">>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
133
+ genreConcept: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<import("../model/Concept").Concept>>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
134
+ headline: import("../generated").Resolver<import("../generated").ResolverTypeWrapper<string>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
135
+ intro: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<import("../model/RichText").RichText>>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
136
+ textShadow: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<boolean>>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
137
+ };
138
+ TopperWithFlourish: {
139
+ layout: (topper: import("../model/Topper").Topper) => string;
140
+ layoutWidth: (topper: import("../model/Topper").Topper) => string | null;
141
+ leadFlourish: (topper: import("../model/Topper").Topper) => import("../model/LeadFlourish").LeadFlourish;
142
+ __resolveType?: import("../generated").TypeResolveFn<"DeepPortraitTopper" | "DeepLandscapeTopper" | "SplitTextTopper" | "FullBleedTopper" | "PodcastTopper" | "OpinionTopper" | "BrandedTopper" | "BasicTopper" | "TopperWithFlourish", import("../model/Topper").Topper, import("..").QueryContext> | undefined;
116
143
  backgroundBox: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<boolean>>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
117
144
  backgroundColour: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<"paper" | "wheat" | "white" | "black" | "claret" | "oxford" | "slate" | "crimson" | "sky" | "matisse">>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
118
145
  displayConcept: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<import("../model/Concept").Concept>>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
@@ -128,7 +155,7 @@ declare const resolvers: {
128
155
  layout: (topper: import("../model/Topper").Topper) => string;
129
156
  fallbackImage: (topper: import("../model/Topper").Topper) => import("../model/Image").CAPIImage | null;
130
157
  images: (topper: import("../model/Topper").Topper) => import("../model/Image").CAPIImage[];
131
- __resolveType?: import("../generated").TypeResolveFn<"DeepPortraitTopper" | "DeepLandscapeTopper" | "SplitTextTopper" | "FullBleedTopper" | "PodcastTopper" | "OpinionTopper" | "BrandedTopper" | "BasicTopper", import("../model/Topper").Topper, import("..").QueryContext> | undefined;
158
+ __resolveType?: import("../generated").TypeResolveFn<"DeepPortraitTopper" | "DeepLandscapeTopper" | "SplitTextTopper" | "FullBleedTopper" | "PodcastTopper" | "OpinionTopper" | "BrandedTopper" | "BasicTopper" | "TopperWithFlourish", import("../model/Topper").Topper, import("..").QueryContext> | undefined;
132
159
  backgroundBox: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<boolean>>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
133
160
  backgroundColour: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<"paper" | "wheat" | "white" | "black" | "claret" | "oxford" | "slate" | "crimson" | "sky" | "matisse">>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
134
161
  displayConcept: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<import("../model/Concept").Concept>>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
@@ -145,7 +172,7 @@ declare const resolvers: {
145
172
  layout: (topper: import("../model/Topper").Topper) => string;
146
173
  fallbackImage: (topper: import("../model/Topper").Topper) => import("../model/Image").CAPIImage | null;
147
174
  images: (topper: import("../model/Topper").Topper) => import("../model/Image").CAPIImage[];
148
- __resolveType?: import("../generated").TypeResolveFn<"DeepPortraitTopper" | "DeepLandscapeTopper" | "SplitTextTopper" | "FullBleedTopper" | "PodcastTopper" | "OpinionTopper" | "BrandedTopper" | "BasicTopper", import("../model/Topper").Topper, import("..").QueryContext> | undefined;
175
+ __resolveType?: import("../generated").TypeResolveFn<"DeepPortraitTopper" | "DeepLandscapeTopper" | "SplitTextTopper" | "FullBleedTopper" | "PodcastTopper" | "OpinionTopper" | "BrandedTopper" | "BasicTopper" | "TopperWithFlourish", import("../model/Topper").Topper, import("..").QueryContext> | undefined;
149
176
  backgroundBox: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<boolean>>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
150
177
  backgroundColour: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<"paper" | "wheat" | "white" | "black" | "claret" | "oxford" | "slate" | "crimson" | "sky" | "matisse">>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
151
178
  displayConcept: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<import("../model/Concept").Concept>>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
@@ -15,6 +15,7 @@ const scalars_1 = __importDefault(require("./scalars"));
15
15
  const teaser_1 = __importDefault(require("./teaser"));
16
16
  const topper_1 = __importDefault(require("./topper"));
17
17
  const person_1 = __importDefault(require("./person"));
18
+ const leadFlourish_1 = __importDefault(require("./leadFlourish"));
18
19
  const references_1 = require("./content-tree/references");
19
20
  const resolvers = {
20
21
  ...concept_1.default,
@@ -30,6 +31,7 @@ const resolvers = {
30
31
  ...teaser_1.default,
31
32
  ...topper_1.default,
32
33
  ...person_1.default,
34
+ ...leadFlourish_1.default,
33
35
  };
34
36
  exports.default = resolvers;
35
37
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/resolvers/index.ts"],"names":[],"mappings":";;;;;AAAA,wDAA8C;AAC9C,wDAA8C;AAC9C,kDAAwC;AACxC,oDAA0C;AAC1C,kDAAwC;AACxC,4DAAiD;AACjD,wDAA8C;AAC9C,0DAAgD;AAChD,wDAA8C;AAC9C,sDAA4C;AAC5C,sDAA4C;AAC5C,sDAA4C;AAC5C,0DAAmE;AAGnE,MAAM,SAAS,GAAG;IAChB,GAAG,iBAAO;IACV,GAAG,iBAAO;IACV,GAAG,cAAI;IACP,GAAG,eAAK;IACR,GAAG,cAAI;IACP,GAAG,mBAAQ;IACX,GAAG,iBAAO;IACV,GAAG,sBAAU;IACb,GAAG,kBAAQ;IACX,GAAG,iBAAO;IACV,GAAG,gBAAM;IACT,GAAG,gBAAM;IACT,GAAG,gBAAM;CACU,CAAA;AAErB,kBAAe,SAAS,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/resolvers/index.ts"],"names":[],"mappings":";;;;;AAAA,wDAA8C;AAC9C,wDAA8C;AAC9C,kDAAwC;AACxC,oDAA0C;AAC1C,kDAAwC;AACxC,4DAAiD;AACjD,wDAA8C;AAC9C,0DAAgD;AAChD,wDAA8C;AAC9C,sDAA4C;AAC5C,sDAA4C;AAC5C,sDAA4C;AAC5C,kEAAwD;AACxD,0DAAmE;AAGnE,MAAM,SAAS,GAAG;IAChB,GAAG,iBAAO;IACV,GAAG,iBAAO;IACV,GAAG,cAAI;IACP,GAAG,eAAK;IACR,GAAG,cAAI;IACP,GAAG,mBAAQ;IACX,GAAG,iBAAO;IACV,GAAG,sBAAU;IACb,GAAG,kBAAQ;IACX,GAAG,iBAAO;IACV,GAAG,gBAAM;IACT,GAAG,gBAAM;IACT,GAAG,gBAAM;IACT,GAAG,sBAAY;CACI,CAAA;AAErB,kBAAe,SAAS,CAAA"}
@@ -0,0 +1,16 @@
1
+ declare const resolvers: {
2
+ LeadFlourish: {
3
+ type: (flourish: import("../model/LeadFlourish").LeadFlourish) => string;
4
+ id: (flourish: import("../model/LeadFlourish").LeadFlourish) => string | null;
5
+ description: (flourish: import("../model/LeadFlourish").LeadFlourish) => string;
6
+ fallbackImage: (flourish: import("../model/LeadFlourish").LeadFlourish) => Promise<import("../model/FlourishSource").FlourishSource>;
7
+ };
8
+ FlourishSource: {
9
+ url: (parent: import("../model/FlourishSource").FlourishSource) => Promise<string>;
10
+ height: (parent: import("../model/FlourishSource").FlourishSource) => Promise<number>;
11
+ width: (parent: import("../model/FlourishSource").FlourishSource) => Promise<number>;
12
+ type: (parent: import("../model/FlourishSource").FlourishSource) => string;
13
+ format: (parent: import("../model/FlourishSource").FlourishSource) => string;
14
+ };
15
+ };
16
+ export default resolvers;
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const resolvers = {
4
+ LeadFlourish: {
5
+ type: (flourish) => flourish.type(),
6
+ id: (flourish) => flourish.id(),
7
+ description: (flourish) => flourish.description(),
8
+ fallbackImage: (flourish) => flourish.fallbackImage(),
9
+ },
10
+ FlourishSource: {
11
+ url: async (parent) => {
12
+ const url = await parent.url();
13
+ return url;
14
+ },
15
+ height: async (parent) => {
16
+ const height = await parent.height();
17
+ return height;
18
+ },
19
+ width: async (parent) => {
20
+ const width = await parent.width();
21
+ return width;
22
+ },
23
+ type: (parent) => parent.type(),
24
+ format: (parent) => parent.format(),
25
+ },
26
+ };
27
+ exports.default = resolvers;
28
+ //# sourceMappingURL=leadFlourish.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"leadFlourish.js","sourceRoot":"","sources":["../../src/resolvers/leadFlourish.ts"],"names":[],"mappings":";;AAEA,MAAM,SAAS,GAAG;IAChB,YAAY,EAAE;QACZ,IAAI,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE;QACnC,EAAE,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE;QAC/B,WAAW,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,WAAW,EAAE;QACjD,aAAa,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,aAAa,EAAE;KACtD;IACD,cAAc,EAAE;QACd,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;YACpB,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,GAAG,EAAE,CAAA;YAC9B,OAAO,GAAG,CAAA;QACZ,CAAC;QACD,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;YACvB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,MAAM,EAAE,CAAA;YACpC,OAAO,MAAM,CAAA;QACf,CAAC;QACD,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;YACtB,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,KAAK,EAAE,CAAA;YAClC,OAAO,KAAK,CAAA;QACd,CAAC;QACD,IAAI,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE;QAC/B,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE;KACpC;CAIF,CAAA;AAED,kBAAe,SAAS,CAAA"}
@@ -1,6 +1,6 @@
1
1
  declare const resolvers: {
2
2
  Topper: {
3
- __resolveType: import("../generated").TypeResolveFn<"DeepPortraitTopper" | "DeepLandscapeTopper" | "SplitTextTopper" | "FullBleedTopper" | "PodcastTopper" | "OpinionTopper" | "BrandedTopper" | "BasicTopper", import("../model/Topper").Topper, import("..").QueryContext>;
3
+ __resolveType: import("../generated").TypeResolveFn<"DeepPortraitTopper" | "DeepLandscapeTopper" | "SplitTextTopper" | "FullBleedTopper" | "PodcastTopper" | "OpinionTopper" | "BrandedTopper" | "BasicTopper" | "TopperWithFlourish", import("../model/Topper").Topper, import("..").QueryContext>;
4
4
  backgroundBox: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<boolean>>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
5
5
  backgroundColour: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<"paper" | "wheat" | "white" | "black" | "claret" | "oxford" | "slate" | "crimson" | "sky" | "matisse">>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
6
6
  displayConcept: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<import("../model/Concept").Concept>>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
@@ -31,7 +31,7 @@ declare const resolvers: {
31
31
  isLargeHeadline: (topper: import("../model/Topper").Topper) => boolean;
32
32
  layout: (topper: import("../model/Topper").Topper) => string;
33
33
  columnist: (topper: import("../model/Topper").Topper) => import("../model/Concept").Concept | null;
34
- __resolveType?: import("../generated").TypeResolveFn<"DeepPortraitTopper" | "DeepLandscapeTopper" | "SplitTextTopper" | "FullBleedTopper" | "PodcastTopper" | "OpinionTopper" | "BrandedTopper" | "BasicTopper", import("../model/Topper").Topper, import("..").QueryContext> | undefined;
34
+ __resolveType?: import("../generated").TypeResolveFn<"DeepPortraitTopper" | "DeepLandscapeTopper" | "SplitTextTopper" | "FullBleedTopper" | "PodcastTopper" | "OpinionTopper" | "BrandedTopper" | "BasicTopper" | "TopperWithFlourish", import("../model/Topper").Topper, import("..").QueryContext> | undefined;
35
35
  backgroundBox: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<boolean>>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
36
36
  backgroundColour: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<"paper" | "wheat" | "white" | "black" | "claret" | "oxford" | "slate" | "crimson" | "sky" | "matisse">>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
37
37
  displayConcept: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<import("../model/Concept").Concept>>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
@@ -46,7 +46,7 @@ declare const resolvers: {
46
46
  isLargeHeadline: (topper: import("../model/Topper").Topper) => boolean;
47
47
  layout: (topper: import("../model/Topper").Topper) => string;
48
48
  columnist: (topper: import("../model/Topper").Topper) => import("../model/Concept").Concept | null;
49
- __resolveType?: import("../generated").TypeResolveFn<"DeepPortraitTopper" | "DeepLandscapeTopper" | "SplitTextTopper" | "FullBleedTopper" | "PodcastTopper" | "OpinionTopper" | "BrandedTopper" | "BasicTopper", import("../model/Topper").Topper, import("..").QueryContext> | undefined;
49
+ __resolveType?: import("../generated").TypeResolveFn<"DeepPortraitTopper" | "DeepLandscapeTopper" | "SplitTextTopper" | "FullBleedTopper" | "PodcastTopper" | "OpinionTopper" | "BrandedTopper" | "BasicTopper" | "TopperWithFlourish", import("../model/Topper").Topper, import("..").QueryContext> | undefined;
50
50
  backgroundBox: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<boolean>>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
51
51
  backgroundColour: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<"paper" | "wheat" | "white" | "black" | "claret" | "oxford" | "slate" | "crimson" | "sky" | "matisse">>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
52
52
  displayConcept: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<import("../model/Concept").Concept>>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
@@ -61,7 +61,7 @@ declare const resolvers: {
61
61
  };
62
62
  BasicTopper: {
63
63
  [x: string]: any;
64
- __resolveType?: import("../generated").TypeResolveFn<"DeepPortraitTopper" | "DeepLandscapeTopper" | "SplitTextTopper" | "FullBleedTopper" | "PodcastTopper" | "OpinionTopper" | "BrandedTopper" | "BasicTopper", import("../model/Topper").Topper, import("..").QueryContext> | undefined;
64
+ __resolveType?: import("../generated").TypeResolveFn<"DeepPortraitTopper" | "DeepLandscapeTopper" | "SplitTextTopper" | "FullBleedTopper" | "PodcastTopper" | "OpinionTopper" | "BrandedTopper" | "BasicTopper" | "TopperWithFlourish", import("../model/Topper").Topper, import("..").QueryContext> | undefined;
65
65
  backgroundBox: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<boolean>>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
66
66
  backgroundColour: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<"paper" | "wheat" | "white" | "black" | "claret" | "oxford" | "slate" | "crimson" | "sky" | "matisse">>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
67
67
  displayConcept: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<import("../model/Concept").Concept>>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
@@ -75,7 +75,7 @@ declare const resolvers: {
75
75
  brandConcept: (topper: import("../model/Topper").Topper) => import("../model/Concept").Concept | null;
76
76
  isLargeHeadline: (topper: import("../model/Topper").Topper) => boolean;
77
77
  layout: (topper: import("../model/Topper").Topper) => string;
78
- __resolveType?: import("../generated").TypeResolveFn<"DeepPortraitTopper" | "DeepLandscapeTopper" | "SplitTextTopper" | "FullBleedTopper" | "PodcastTopper" | "OpinionTopper" | "BrandedTopper" | "BasicTopper", import("../model/Topper").Topper, import("..").QueryContext> | undefined;
78
+ __resolveType?: import("../generated").TypeResolveFn<"DeepPortraitTopper" | "DeepLandscapeTopper" | "SplitTextTopper" | "FullBleedTopper" | "PodcastTopper" | "OpinionTopper" | "BrandedTopper" | "BasicTopper" | "TopperWithFlourish", import("../model/Topper").Topper, import("..").QueryContext> | undefined;
79
79
  backgroundBox: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<boolean>>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
80
80
  backgroundColour: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<"paper" | "wheat" | "white" | "black" | "claret" | "oxford" | "slate" | "crimson" | "sky" | "matisse">>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
81
81
  displayConcept: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<import("../model/Concept").Concept>>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
@@ -91,7 +91,7 @@ declare const resolvers: {
91
91
  layout: (topper: import("../model/Topper").Topper) => string;
92
92
  fallbackImage: (topper: import("../model/Topper").Topper) => import("../model/Image").CAPIImage | null;
93
93
  images: (topper: import("../model/Topper").Topper) => import("../model/Image").CAPIImage[];
94
- __resolveType?: import("../generated").TypeResolveFn<"DeepPortraitTopper" | "DeepLandscapeTopper" | "SplitTextTopper" | "FullBleedTopper" | "PodcastTopper" | "OpinionTopper" | "BrandedTopper" | "BasicTopper", import("../model/Topper").Topper, import("..").QueryContext> | undefined;
94
+ __resolveType?: import("../generated").TypeResolveFn<"DeepPortraitTopper" | "DeepLandscapeTopper" | "SplitTextTopper" | "FullBleedTopper" | "PodcastTopper" | "OpinionTopper" | "BrandedTopper" | "BasicTopper" | "TopperWithFlourish", import("../model/Topper").Topper, import("..").QueryContext> | undefined;
95
95
  backgroundBox: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<boolean>>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
96
96
  backgroundColour: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<"paper" | "wheat" | "white" | "black" | "claret" | "oxford" | "slate" | "crimson" | "sky" | "matisse">>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
97
97
  displayConcept: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<import("../model/Concept").Concept>>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
@@ -107,7 +107,21 @@ declare const resolvers: {
107
107
  layout: (topper: import("../model/Topper").Topper) => string;
108
108
  fallbackImage: (topper: import("../model/Topper").Topper) => import("../model/Image").CAPIImage | null;
109
109
  images: (topper: import("../model/Topper").Topper) => import("../model/Image").CAPIImage[];
110
- __resolveType?: import("../generated").TypeResolveFn<"DeepPortraitTopper" | "DeepLandscapeTopper" | "SplitTextTopper" | "FullBleedTopper" | "PodcastTopper" | "OpinionTopper" | "BrandedTopper" | "BasicTopper", import("../model/Topper").Topper, import("..").QueryContext> | undefined;
110
+ __resolveType?: import("../generated").TypeResolveFn<"DeepPortraitTopper" | "DeepLandscapeTopper" | "SplitTextTopper" | "FullBleedTopper" | "PodcastTopper" | "OpinionTopper" | "BrandedTopper" | "BasicTopper" | "TopperWithFlourish", import("../model/Topper").Topper, import("..").QueryContext> | undefined;
111
+ backgroundBox: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<boolean>>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
112
+ backgroundColour: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<"paper" | "wheat" | "white" | "black" | "claret" | "oxford" | "slate" | "crimson" | "sky" | "matisse">>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
113
+ displayConcept: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<import("../model/Concept").Concept>>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
114
+ followButtonVariant: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<"standard" | "inverse" | "opinion" | "alphaville" | "monochrome" | "inverse-monochrome">>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
115
+ genreConcept: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<import("../model/Concept").Concept>>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
116
+ headline: import("../generated").Resolver<import("../generated").ResolverTypeWrapper<string>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
117
+ intro: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<import("../model/RichText").RichText>>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
118
+ textShadow: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<boolean>>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
119
+ };
120
+ TopperWithFlourish: {
121
+ layout: (topper: import("../model/Topper").Topper) => string;
122
+ layoutWidth: (topper: import("../model/Topper").Topper) => string | null;
123
+ leadFlourish: (topper: import("../model/Topper").Topper) => import("../model/LeadFlourish").LeadFlourish;
124
+ __resolveType?: import("../generated").TypeResolveFn<"DeepPortraitTopper" | "DeepLandscapeTopper" | "SplitTextTopper" | "FullBleedTopper" | "PodcastTopper" | "OpinionTopper" | "BrandedTopper" | "BasicTopper" | "TopperWithFlourish", import("../model/Topper").Topper, import("..").QueryContext> | undefined;
111
125
  backgroundBox: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<boolean>>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
112
126
  backgroundColour: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<"paper" | "wheat" | "white" | "black" | "claret" | "oxford" | "slate" | "crimson" | "sky" | "matisse">>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
113
127
  displayConcept: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<import("../model/Concept").Concept>>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
@@ -123,7 +137,7 @@ declare const resolvers: {
123
137
  layout: (topper: import("../model/Topper").Topper) => string;
124
138
  fallbackImage: (topper: import("../model/Topper").Topper) => import("../model/Image").CAPIImage | null;
125
139
  images: (topper: import("../model/Topper").Topper) => import("../model/Image").CAPIImage[];
126
- __resolveType?: import("../generated").TypeResolveFn<"DeepPortraitTopper" | "DeepLandscapeTopper" | "SplitTextTopper" | "FullBleedTopper" | "PodcastTopper" | "OpinionTopper" | "BrandedTopper" | "BasicTopper", import("../model/Topper").Topper, import("..").QueryContext> | undefined;
140
+ __resolveType?: import("../generated").TypeResolveFn<"DeepPortraitTopper" | "DeepLandscapeTopper" | "SplitTextTopper" | "FullBleedTopper" | "PodcastTopper" | "OpinionTopper" | "BrandedTopper" | "BasicTopper" | "TopperWithFlourish", import("../model/Topper").Topper, import("..").QueryContext> | undefined;
127
141
  backgroundBox: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<boolean>>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
128
142
  backgroundColour: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<"paper" | "wheat" | "white" | "black" | "claret" | "oxford" | "slate" | "crimson" | "sky" | "matisse">>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
129
143
  displayConcept: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<import("../model/Concept").Concept>>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
@@ -140,7 +154,7 @@ declare const resolvers: {
140
154
  layout: (topper: import("../model/Topper").Topper) => string;
141
155
  fallbackImage: (topper: import("../model/Topper").Topper) => import("../model/Image").CAPIImage | null;
142
156
  images: (topper: import("../model/Topper").Topper) => import("../model/Image").CAPIImage[];
143
- __resolveType?: import("../generated").TypeResolveFn<"DeepPortraitTopper" | "DeepLandscapeTopper" | "SplitTextTopper" | "FullBleedTopper" | "PodcastTopper" | "OpinionTopper" | "BrandedTopper" | "BasicTopper", import("../model/Topper").Topper, import("..").QueryContext> | undefined;
157
+ __resolveType?: import("../generated").TypeResolveFn<"DeepPortraitTopper" | "DeepLandscapeTopper" | "SplitTextTopper" | "FullBleedTopper" | "PodcastTopper" | "OpinionTopper" | "BrandedTopper" | "BasicTopper" | "TopperWithFlourish", import("../model/Topper").Topper, import("..").QueryContext> | undefined;
144
158
  backgroundBox: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<boolean>>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
145
159
  backgroundColour: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<"paper" | "wheat" | "white" | "black" | "claret" | "oxford" | "slate" | "crimson" | "sky" | "matisse">>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
146
160
  displayConcept: import("../generated").Resolver<import("../generated").Maybe<import("../generated").ResolverTypeWrapper<import("../model/Concept").Concept>>, import("../model/Topper").Topper, import("..").QueryContext, {}>;
@@ -73,6 +73,12 @@ const resolvers = {
73
73
  fallbackImage: (topper) => topper.fallbackImage(),
74
74
  images: (topper) => topper.images(),
75
75
  },
76
+ TopperWithFlourish: {
77
+ ...topperResolvers,
78
+ layout: (topper) => topper.layout(),
79
+ layoutWidth: (topper) => topper.layoutWidth(),
80
+ leadFlourish: (topper) => topper.leadFlourish(),
81
+ },
76
82
  FullBleedTopper: {
77
83
  ...topperResolvers,
78
84
  brandConcept: (topper) => topper.brandConcept(),
@@ -1 +1 @@
1
- {"version":3,"file":"topper.js","sourceRoot":"","sources":["../../src/resolvers/topper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"topper.js","sourceRoot":"","sources":["../../src/resolvers/topper.ts"],"names":[],"mappings":"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"}