@financial-times/cp-content-pipeline-schema 2.2.1 → 2.3.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 (44) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/__mocks__/worker_threads.ts +3 -0
  3. package/lib/fixtures/dummyContext.js +4 -0
  4. package/lib/fixtures/dummyContext.js.map +1 -1
  5. package/lib/index.d.ts +1 -0
  6. package/lib/index.js.map +1 -1
  7. package/lib/model/CapiResponse.js +14 -6
  8. package/lib/model/CapiResponse.js.map +1 -1
  9. package/lib/model/Concept.test.js +9 -0
  10. package/lib/model/Concept.test.js.map +1 -1
  11. package/lib/model/RichText.d.ts +1 -1
  12. package/lib/model/RichText.js +34 -20
  13. package/lib/model/RichText.js.map +1 -1
  14. package/lib/model/RichText.test.js +9 -0
  15. package/lib/model/RichText.test.js.map +1 -1
  16. package/lib/resolvers/content-tree/bodyXMLToTree.d.ts +3 -4
  17. package/lib/resolvers/content-tree/bodyXMLToTree.js +2 -2
  18. package/lib/resolvers/content-tree/bodyXMLToTree.js.map +1 -1
  19. package/lib/resolvers/content-tree/bodyXMLToTree.test.js +32 -20
  20. package/lib/resolvers/content-tree/bodyXMLToTree.test.js.map +1 -1
  21. package/lib/resolvers/content-tree/bodyXMLToTreeWorker.d.ts +9 -0
  22. package/lib/resolvers/content-tree/bodyXMLToTreeWorker.js +18 -0
  23. package/lib/resolvers/content-tree/bodyXMLToTreeWorker.js.map +1 -0
  24. package/lib/resolvers/content-tree/nodePredicates.d.ts +13 -6
  25. package/lib/resolvers/content-tree/nodePredicates.js +33 -33
  26. package/lib/resolvers/content-tree/nodePredicates.js.map +1 -1
  27. package/lib/resolvers/content-tree/references/Reference.d.ts +1 -1
  28. package/lib/resolvers/content-tree/tagMappings.d.ts +1 -2
  29. package/lib/resolvers/content-tree/tagMappings.js +60 -60
  30. package/lib/resolvers/content-tree/tagMappings.js.map +1 -1
  31. package/package.json +2 -1
  32. package/queries/article.graphql +3 -0
  33. package/src/fixtures/dummyContext.ts +4 -0
  34. package/src/index.ts +1 -0
  35. package/src/model/CapiResponse.ts +20 -10
  36. package/src/model/Concept.test.ts +9 -0
  37. package/src/model/RichText.test.ts +10 -0
  38. package/src/model/RichText.ts +39 -27
  39. package/src/resolvers/content-tree/bodyXMLToTree.test.ts +32 -22
  40. package/src/resolvers/content-tree/bodyXMLToTree.ts +6 -11
  41. package/src/resolvers/content-tree/bodyXMLToTreeWorker.ts +31 -0
  42. package/src/resolvers/content-tree/nodePredicates.ts +45 -39
  43. package/src/resolvers/content-tree/tagMappings.ts +60 -102
  44. package/tsconfig.tsbuildinfo +1 -1
@@ -1,5 +1,4 @@
1
- import { AnyNode } from './Workarounds';
2
- import { QueryContext } from '../..';
1
+ import type { AnyNode } from './Workarounds';
3
2
  type ValuesOfTuple<Tuple extends readonly string[]> = Tuple[number];
4
3
  type NodeOfType<Type extends AnyNode['type']> = Extract<AnyNode, {
5
4
  type: Type;
@@ -8,9 +7,17 @@ type NodesOfTypes<Types extends readonly AnyNode['type'][]> = {
8
7
  -readonly [key in keyof Types]: NodeOfType<Types[key]>;
9
8
  };
10
9
  export declare const phrasingTypes: readonly ["text", "break", "strong", "emphasis", "strikethrough", "link"];
11
- export declare const findChildOftype: <NodeType extends AnyNode>(type: NodeType["type"], nodes: AnyNode[], parentType: AnyNode['type'], context?: QueryContext) => NodeType | undefined;
12
- export declare const everyChildIsType: <NodeType extends AnyNode>(type: NodeType["type"], nodes: AnyNode[], parentType: AnyNode['type'], context?: QueryContext) => NodeType[];
13
- export declare const childrenOfTypes: <Types extends readonly ("layout" | "clip" | "text" | "author-link" | "raw-image" | "main-image" | "main-image-raw" | "video" | "youtube-video" | "clip-set" | "table-caption" | "table-body" | "table-footer" | "table" | "break" | "strong" | "emphasis" | "strikethrough" | "link" | "table-row" | "table-cell" | "image-set" | "root" | "body" | "thematic-break" | "paragraph" | "heading" | "list" | "list-item" | "blockquote" | "pullquote" | "recommended" | "tweet" | "flourish" | "big-number" | "scrolly-block" | "scrolly-section" | "scrolly-copy" | "scrolly-heading" | "scrolly-image" | "layout-slot" | "layout-image")[]>(types: Types, nodes: AnyNode[], parentType: AnyNode['type'], context?: QueryContext) => NodeOfType<ValuesOfTuple<Types>>[];
10
+ export interface PredicateError {
11
+ event: string;
12
+ code: string;
13
+ message: string;
14
+ expected: AnyNode['type'] | readonly AnyNode['type'][];
15
+ actual: AnyNode['type'][];
16
+ error: Error;
17
+ }
18
+ export declare const findChildOftype: <NodeType extends AnyNode>(type: NodeType["type"], nodes: AnyNode[], parentType: AnyNode['type']) => NodeType | undefined;
19
+ export declare const everyChildIsType: <NodeType extends AnyNode>(type: NodeType["type"], nodes: AnyNode[], parentType: AnyNode['type']) => NodeType[];
20
+ export declare const childrenOfTypes: <Types extends readonly ("layout" | "clip" | "text" | "author-link" | "raw-image" | "main-image" | "main-image-raw" | "video" | "youtube-video" | "clip-set" | "table-caption" | "table-body" | "table-footer" | "table" | "break" | "strong" | "emphasis" | "strikethrough" | "link" | "table-row" | "table-cell" | "image-set" | "root" | "body" | "thematic-break" | "paragraph" | "heading" | "list" | "list-item" | "blockquote" | "pullquote" | "recommended" | "tweet" | "flourish" | "big-number" | "scrolly-block" | "scrolly-section" | "scrolly-copy" | "scrolly-heading" | "scrolly-image" | "layout-slot" | "layout-image")[]>(types: Types, nodes: AnyNode[], parentType: AnyNode['type']) => NodeOfType<ValuesOfTuple<Types>>[];
14
21
  export declare const nodesAreOrderedTypes: <Types extends readonly ("layout" | "clip" | "text" | "author-link" | "raw-image" | "main-image" | "main-image-raw" | "video" | "youtube-video" | "clip-set" | "table-caption" | "table-body" | "table-footer" | "table" | "break" | "strong" | "emphasis" | "strikethrough" | "link" | "table-row" | "table-cell" | "image-set" | "root" | "body" | "thematic-break" | "paragraph" | "heading" | "list" | "list-item" | "blockquote" | "pullquote" | "recommended" | "tweet" | "flourish" | "big-number" | "scrolly-block" | "scrolly-section" | "scrolly-copy" | "scrolly-heading" | "scrolly-image" | "layout-slot" | "layout-image")[]>(types: Types, nodes: readonly AnyNode[]) => nodes is NodesOfTypes<Types>;
15
- export declare const childrenOfOrderedTypes: <Types extends readonly ("layout" | "clip" | "text" | "author-link" | "raw-image" | "main-image" | "main-image-raw" | "video" | "youtube-video" | "clip-set" | "table-caption" | "table-body" | "table-footer" | "table" | "break" | "strong" | "emphasis" | "strikethrough" | "link" | "table-row" | "table-cell" | "image-set" | "root" | "body" | "thematic-break" | "paragraph" | "heading" | "list" | "list-item" | "blockquote" | "pullquote" | "recommended" | "tweet" | "flourish" | "big-number" | "scrolly-block" | "scrolly-section" | "scrolly-copy" | "scrolly-heading" | "scrolly-image" | "layout-slot" | "layout-image")[]>(types: Types, nodes: AnyNode[], parentType: AnyNode['type'], context?: QueryContext) => NodesOfTypes<Types>;
22
+ export declare const childrenOfOrderedTypes: <Types extends readonly ("layout" | "clip" | "text" | "author-link" | "raw-image" | "main-image" | "main-image-raw" | "video" | "youtube-video" | "clip-set" | "table-caption" | "table-body" | "table-footer" | "table" | "break" | "strong" | "emphasis" | "strikethrough" | "link" | "table-row" | "table-cell" | "image-set" | "root" | "body" | "thematic-break" | "paragraph" | "heading" | "list" | "list-item" | "blockquote" | "pullquote" | "recommended" | "tweet" | "flourish" | "big-number" | "scrolly-block" | "scrolly-section" | "scrolly-copy" | "scrolly-heading" | "scrolly-image" | "layout-slot" | "layout-image")[]>(types: Types, nodes: AnyNode[], parentType: AnyNode['type']) => NodesOfTypes<Types>;
16
23
  export {};
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.childrenOfOrderedTypes = exports.nodesAreOrderedTypes = exports.childrenOfTypes = exports.everyChildIsType = exports.findChildOftype = exports.phrasingTypes = void 0;
4
- const errors_1 = require("@dotcom-reliability-kit/errors");
4
+ const worker_threads_1 = require("worker_threads");
5
5
  exports.phrasingTypes = [
6
6
  'text',
7
7
  'break',
@@ -10,52 +10,54 @@ exports.phrasingTypes = [
10
10
  'strikethrough',
11
11
  'link',
12
12
  ];
13
- const findChildOftype = (type, nodes, parentType, context) => {
13
+ // reliability-kit's logger creates a worker thread under the hood but we can't
14
+ // access this thread directly from these worker threads. Instead let's send
15
+ // all our recoverable errors to the piscina pool managing us.
16
+ const postLoggerError = (error) => {
17
+ // stacks will only copy over if they're in an Error object
18
+ const errorWithStack = { ...error, error: new Error() };
19
+ worker_threads_1.parentPort?.postMessage(errorWithStack);
20
+ };
21
+ const findChildOftype = (type, nodes, parentType) => {
14
22
  const predicate = (node) => node.type === type;
15
23
  const child = nodes.find(predicate);
16
24
  if (!child) {
17
- context?.logger.error({
25
+ postLoggerError({
18
26
  event: 'RECOVERABLE_ERROR',
19
- error: new errors_1.OperationalError({
20
- code: 'BODY_XML_UNEXPECTED_STRUCTURE',
21
- message: `Didn't find expected child type in ${parentType}`,
22
- expected: type,
23
- actual: nodes.map((node) => node.type),
24
- }),
27
+ code: 'BODY_XML_UNEXPECTED_STRUCTURE',
28
+ message: `Didn't find expected child type in ${parentType}`,
29
+ expected: type,
30
+ actual: nodes.map((node) => node.type),
25
31
  });
26
32
  }
27
33
  return child;
28
34
  };
29
35
  exports.findChildOftype = findChildOftype;
30
- const everyChildIsType = (type, nodes, parentType, context) => {
36
+ const everyChildIsType = (type, nodes, parentType) => {
31
37
  const predicate = (node) => node.type === type;
32
38
  const allChildrenAreType = nodes.every(predicate);
33
39
  if (!allChildrenAreType) {
34
- context?.logger.error({
40
+ postLoggerError({
35
41
  event: 'RECOVERABLE_ERROR',
36
- error: new errors_1.OperationalError({
37
- code: 'BODY_XML_UNEXPECTED_STRUCTURE',
38
- message: `Unexpected children types for ${parentType}`,
39
- expected: type,
40
- actual: nodes.map((node) => node.type),
41
- }),
42
+ code: 'BODY_XML_UNEXPECTED_STRUCTURE',
43
+ message: `Unexpected children types for ${parentType}`,
44
+ expected: type,
45
+ actual: nodes.map((node) => node.type),
42
46
  });
43
47
  }
44
48
  return nodes;
45
49
  };
46
50
  exports.everyChildIsType = everyChildIsType;
47
- const childrenOfTypes = (types, nodes, parentType, context) => {
51
+ const childrenOfTypes = (types, nodes, parentType) => {
48
52
  const predicate = (node) => types.includes(node.type);
49
53
  const allChildrenAreType = nodes.every(predicate);
50
54
  if (!allChildrenAreType) {
51
- context?.logger.error({
55
+ postLoggerError({
52
56
  event: 'RECOVERABLE_ERROR',
53
- error: new errors_1.OperationalError({
54
- code: 'BODY_XML_UNEXPECTED_STRUCTURE',
55
- message: `Unexpected ordered children types for ${parentType}`,
56
- expected: types,
57
- actual: nodes.map((node) => node.type),
58
- }),
57
+ code: 'BODY_XML_UNEXPECTED_STRUCTURE',
58
+ message: `Unexpected ordered children types for ${parentType}`,
59
+ expected: types,
60
+ actual: nodes.map((node) => node.type),
59
61
  });
60
62
  }
61
63
  return nodes;
@@ -70,18 +72,16 @@ const nodesAreOrderedTypes = (types, nodes) => {
70
72
  return true;
71
73
  };
72
74
  exports.nodesAreOrderedTypes = nodesAreOrderedTypes;
73
- const childrenOfOrderedTypes = (types, nodes, parentType, context) => {
75
+ const childrenOfOrderedTypes = (types, nodes, parentType) => {
74
76
  if ((0, exports.nodesAreOrderedTypes)(types, nodes)) {
75
77
  return nodes;
76
78
  }
77
- context?.logger.error({
79
+ postLoggerError({
78
80
  event: 'RECOVERABLE_ERROR',
79
- error: new errors_1.OperationalError({
80
- code: 'BODY_XML_UNEXPECTED_STRUCTURE',
81
- message: `Unexpected children types for ${parentType}`,
82
- expected: types,
83
- actual: nodes.map((node) => node.type),
84
- }),
81
+ code: 'BODY_XML_UNEXPECTED_STRUCTURE',
82
+ message: `Unexpected children types for ${parentType}`,
83
+ expected: types,
84
+ actual: nodes.map((node) => node.type),
85
85
  });
86
86
  return nodes;
87
87
  };
@@ -1 +1 @@
1
- {"version":3,"file":"nodePredicates.js","sourceRoot":"","sources":["../../../src/resolvers/content-tree/nodePredicates.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"nodePredicates.js","sourceRoot":"","sources":["../../../src/resolvers/content-tree/nodePredicates.ts"],"names":[],"mappings":";;;AAAA,mDAA2C;AAY9B,QAAA,aAAa,GAAG;IAC3B,MAAM;IACN,OAAO;IACP,QAAQ;IACR,UAAU;IACV,eAAe;IACf,MAAM;CACE,CAAA;AAWV,+EAA+E;AAC/E,4EAA4E;AAC5E,8DAA8D;AAC9D,MAAM,eAAe,GAAG,CAAC,KAAoC,EAAE,EAAE;IAC/D,2DAA2D;IAC3D,MAAM,cAAc,GAAG,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,IAAI,KAAK,EAAE,EAAE,CAAA;IACvD,2BAAU,EAAE,WAAW,CAAC,cAAc,CAAC,CAAA;AACzC,CAAC,CAAA;AAEM,MAAM,eAAe,GAAG,CAC7B,IAAsB,EACtB,KAAgB,EAChB,UAA2B,EACL,EAAE;IACxB,MAAM,SAAS,GAAG,CAAC,IAAa,EAAoB,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI,CAAA;IACzE,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IAEnC,IAAI,CAAC,KAAK,EAAE;QACV,eAAe,CAAC;YACd,KAAK,EAAE,mBAAmB;YAC1B,IAAI,EAAE,+BAA+B;YACrC,OAAO,EAAE,sCAAsC,UAAU,EAAE;YAC3D,QAAQ,EAAE,IAAI;YACd,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;SACvC,CAAC,CAAA;KACH;IAED,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AAnBY,QAAA,eAAe,mBAmB3B;AAEM,MAAM,gBAAgB,GAAG,CAC9B,IAAsB,EACtB,KAAgB,EAChB,UAA2B,EACf,EAAE;IACd,MAAM,SAAS,GAAG,CAAC,IAAa,EAAoB,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI,CAAA;IACzE,MAAM,kBAAkB,GAAG,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;IAEjD,IAAI,CAAC,kBAAkB,EAAE;QACvB,eAAe,CAAC;YACd,KAAK,EAAE,mBAAmB;YAC1B,IAAI,EAAE,+BAA+B;YACrC,OAAO,EAAE,iCAAiC,UAAU,EAAE;YACtD,QAAQ,EAAE,IAAI;YACd,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;SACvC,CAAC,CAAA;KACH;IAED,OAAO,KAAmB,CAAA;AAC5B,CAAC,CAAA;AAnBY,QAAA,gBAAgB,oBAmB5B;AAEM,MAAM,eAAe,GAAG,CAC7B,KAAY,EACZ,KAAgB,EAChB,UAA2B,EACS,EAAE;IACtC,MAAM,SAAS,GAAG,CAAC,IAAa,EAA4C,EAAE,CAC5E,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC3B,MAAM,kBAAkB,GAAG,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;IAEjD,IAAI,CAAC,kBAAkB,EAAE;QACvB,eAAe,CAAC;YACd,KAAK,EAAE,mBAAmB;YAC1B,IAAI,EAAE,+BAA+B;YACrC,OAAO,EAAE,yCAAyC,UAAU,EAAE;YAC9D,QAAQ,EAAE,KAAK;YACf,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;SACvC,CAAC,CAAA;KACH;IAED,OAAO,KAA2C,CAAA;AACpD,CAAC,CAAA;AApBY,QAAA,eAAe,mBAoB3B;AAEM,MAAM,oBAAoB,GAAG,CAClC,KAAY,EACZ,KAAyB,EACK,EAAE;IAChC,KAAK,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,KAAK,CAAC,OAAO,EAAE,EAAE;QAC3C,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,KAAK,CAAC,EAAE;YAC9B,OAAO,KAAK,CAAA;SACb;KACF;IAED,OAAO,IAAI,CAAA;AACb,CAAC,CAAA;AAXY,QAAA,oBAAoB,wBAWhC;AAEM,MAAM,sBAAsB,GAAG,CAGpC,KAAY,EACZ,KAAgB,EAChB,UAA2B,EACN,EAAE;IACvB,IAAI,IAAA,4BAAoB,EAAC,KAAK,EAAE,KAAK,CAAC,EAAE;QACtC,OAAO,KAAK,CAAA;KACb;IAED,eAAe,CAAC;QACd,KAAK,EAAE,mBAAmB;QAC1B,IAAI,EAAE,+BAA+B;QACrC,OAAO,EAAE,iCAAiC,UAAU,EAAE;QACtD,QAAQ,EAAE,KAAK;QACf,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;KACvC,CAAC,CAAA;IAEF,OAAO,KAAuC,CAAA;AAChD,CAAC,CAAA;AApBY,QAAA,sBAAsB,0BAoBlC"}
@@ -1,4 +1,4 @@
1
1
  export declare const Reference: {
2
- __resolveType(parent: import(".").ReferenceWithCAPIData<import("@financial-times/content-tree").ContentTree.Node>): "Tweet" | "ImageSet" | "ClipSet" | "VideoReference" | "Flourish" | "Recommended" | "LayoutImage" | "RawImage" | "ScrollyImage";
2
+ __resolveType(parent: import(".").ReferenceWithCAPIData<import("@financial-times/content-tree").ContentTree.Node>): "Recommended" | "Tweet" | "ImageSet" | "ClipSet" | "VideoReference" | "Flourish" | "LayoutImage" | "RawImage" | "ScrollyImage";
3
3
  type(parent: import(".").ReferenceWithCAPIData<import("@financial-times/content-tree").ContentTree.Node>): string;
4
4
  };
@@ -1,6 +1,5 @@
1
1
  import type { TagMappings } from './bodyXMLToTree';
2
- import { CapiResponse } from '../../model/CapiResponse';
3
- declare const articleTagMappings: (capiData?: CapiResponse) => TagMappings;
2
+ declare const articleTagMappings: (topperHasImage: boolean) => TagMappings;
4
3
  declare const liveBlogPostTagMappings: TagMappings;
5
4
  declare const commonTagMappings: TagMappings;
6
5
  export declare const getBooleanAttributeValue: ($el: any, attribute: string) => boolean;
@@ -65,9 +65,9 @@ const validScrollytellingOption = (key, attribute) => {
65
65
  ? attribute in scrollytellingOptionsToContentTree[key]
66
66
  : false;
67
67
  };
68
- const articleTagMappings = (capiData) => ({
68
+ const articleTagMappings = (topperHasImage) => ({
69
69
  'body > ft-content[type="http://www.ft.com/ontology/content/ImageSet"]:first-child': ($el) => ({
70
- type: capiData?.topperHasImage() ? 'image-set' : 'main-image',
70
+ type: topperHasImage ? 'image-set' : 'main-image',
71
71
  id: $el.attr('url') || '',
72
72
  }),
73
73
  'body > ft-content[type="http://www.ft.com/ontology/content/ImageSet"]:not(:first-child),:not(body) > ft-content[type="http://www.ft.com/ontology/content/ImageSet"]': ($el) => ({
@@ -85,54 +85,54 @@ const liveBlogPostTagMappings = {
85
85
  exports.liveBlogPostTagMappings = liveBlogPostTagMappings;
86
86
  const commonTagMappings = {
87
87
  body: ($el, traverse) => ({ type: 'body', version: 1, children: traverse() }),
88
- 'a:not([data-asset-type])': ($el, traverse, context) => ({
88
+ 'a:not([data-asset-type])': ($el, traverse) => ({
89
89
  type: 'link',
90
90
  url: $el.attr('href') || '',
91
91
  title: '',
92
- children: (0, nodePredicates_1.childrenOfTypes)(nodePredicates_1.phrasingTypes, traverse(), 'link', context),
92
+ children: (0, nodePredicates_1.childrenOfTypes)(nodePredicates_1.phrasingTypes, traverse(), 'link'),
93
93
  }),
94
- strong: ($el, traverse, context) => ({
94
+ strong: ($el, traverse) => ({
95
95
  type: 'strong',
96
- children: (0, nodePredicates_1.childrenOfTypes)(nodePredicates_1.phrasingTypes, traverse(), 'strong', context),
96
+ children: (0, nodePredicates_1.childrenOfTypes)(nodePredicates_1.phrasingTypes, traverse(), 'strong'),
97
97
  }),
98
- em: ($el, traverse, context) => ({
98
+ em: ($el, traverse) => ({
99
99
  type: 'emphasis',
100
- children: (0, nodePredicates_1.childrenOfTypes)(nodePredicates_1.phrasingTypes, traverse(), 'emphasis', context),
100
+ children: (0, nodePredicates_1.childrenOfTypes)(nodePredicates_1.phrasingTypes, traverse(), 'emphasis'),
101
101
  }),
102
- blockquote: ($el, traverse, context) => ({
102
+ blockquote: ($el, traverse) => ({
103
103
  type: 'blockquote',
104
- children: (0, nodePredicates_1.childrenOfTypes)(nodePredicates_1.phrasingTypes, traverse(), 'blockquote', context),
104
+ children: (0, nodePredicates_1.childrenOfTypes)(nodePredicates_1.phrasingTypes, traverse(), 'blockquote'),
105
105
  }),
106
106
  // strip any (redundant) line breaks in between two paragraphs
107
107
  'p + br': ($el) => ($el.next()[0]?.tagName === 'p' ? [] : { type: 'break' }),
108
108
  br: () => ({ type: 'break' }),
109
109
  hr: () => ({ type: 'thematic-break' }),
110
- s: ($el, traverse, context) => ({
110
+ s: ($el, traverse) => ({
111
111
  type: 'strikethrough',
112
- children: (0, nodePredicates_1.childrenOfTypes)(nodePredicates_1.phrasingTypes, traverse(), 'strikethrough', context),
112
+ children: (0, nodePredicates_1.childrenOfTypes)(nodePredicates_1.phrasingTypes, traverse(), 'strikethrough'),
113
113
  }),
114
- ul: ($el, traverse, context) => ({
114
+ ul: ($el, traverse) => ({
115
115
  type: 'list',
116
- children: (0, nodePredicates_1.everyChildIsType)('list-item', traverse(), 'list', context),
116
+ children: (0, nodePredicates_1.everyChildIsType)('list-item', traverse(), 'list'),
117
117
  ordered: false,
118
118
  }),
119
- ol: ($el, traverse, context) => ({
119
+ ol: ($el, traverse) => ({
120
120
  type: 'list',
121
- children: (0, nodePredicates_1.everyChildIsType)('list-item', traverse(), 'list', context),
121
+ children: (0, nodePredicates_1.everyChildIsType)('list-item', traverse(), 'list'),
122
122
  ordered: true,
123
123
  }),
124
- li: ($el, traverse, context) => ({
124
+ li: ($el, traverse) => ({
125
125
  type: 'list-item',
126
- children: (0, nodePredicates_1.childrenOfTypes)(nodePredicates_1.phrasingTypes, traverse(), 'list-item', context),
126
+ children: (0, nodePredicates_1.childrenOfTypes)(nodePredicates_1.phrasingTypes, traverse(), 'list-item'),
127
127
  }),
128
128
  'a[data-asset-type="tweet"]': ($el) => ({
129
129
  type: 'tweet',
130
130
  id: $el.attr('href') || '',
131
131
  }),
132
- 'h4,h5,h6': ($el, traverse, context) => ({
132
+ 'h4,h5,h6': ($el, traverse) => ({
133
133
  type: 'heading',
134
134
  level: 'label',
135
- children: (0, nodePredicates_1.everyChildIsType)('text', traverse(), 'heading', context),
135
+ children: (0, nodePredicates_1.everyChildIsType)('text', traverse(), 'heading'),
136
136
  }),
137
137
  'pull-quote': ($el) => ({
138
138
  type: 'pullquote',
@@ -206,7 +206,7 @@ const commonTagMappings = {
206
206
  description: $description.text(),
207
207
  };
208
208
  },
209
- '.n-content-layout': ($el, traverse, context) => {
209
+ '.n-content-layout': ($el, traverse) => {
210
210
  //TODO: this is a bit gross??
211
211
  const isValidWidth = (str) => {
212
212
  return ['inset-left', 'full-grid', 'full-width'].includes(str);
@@ -221,11 +221,11 @@ const commonTagMappings = {
221
221
  if (firstChild.type === 'heading') {
222
222
  return [
223
223
  firstChild,
224
- ...(0, nodePredicates_1.everyChildIsType)('layout-slot', otherChildren, 'layout', context),
224
+ ...(0, nodePredicates_1.everyChildIsType)('layout-slot', otherChildren, 'layout'),
225
225
  ];
226
226
  }
227
227
  else {
228
- return (0, nodePredicates_1.everyChildIsType)('layout-slot', children, 'layout', context);
228
+ return (0, nodePredicates_1.everyChildIsType)('layout-slot', children, 'layout');
229
229
  }
230
230
  };
231
231
  return {
@@ -235,12 +235,12 @@ const commonTagMappings = {
235
235
  children: getChildren(traverse()),
236
236
  };
237
237
  },
238
- '.n-content-layout__slot': ($el, traverse, context) => ({
238
+ '.n-content-layout__slot': ($el, traverse) => ({
239
239
  type: 'layout-slot',
240
240
  children: (0, nodePredicates_1.childrenOfTypes)(['heading', 'paragraph', 'layout-image'], traverse()
241
241
  // HACK:20230516:KB for "Comparison" layouts, Spark used to output nested `.n-content-layout__slot`
242
242
  // elements. if we find one, skip it and use its children
243
- .flatMap((node) => node.type === 'layout-slot' ? node.children : [node]), 'layout-slot', context),
243
+ .flatMap((node) => node.type === 'layout-slot' ? node.children : [node]), 'layout-slot'),
244
244
  }),
245
245
  '.n-content-layout img': ($el) => ({
246
246
  type: 'layout-image',
@@ -249,29 +249,29 @@ const commonTagMappings = {
249
249
  alt: $el.attr('alt') || '',
250
250
  credit: $el.attr('data-copyright') || '',
251
251
  }),
252
- table: ($el, traverse, context) => {
252
+ table: ($el, traverse) => {
253
253
  const layoutSmallscreen = $el.attr('data-table-layout-smallscreen');
254
254
  const responsiveStyle = layoutSmallscreen && layoutSmallscreen in tableResponsiveStyleMap
255
255
  ? tableResponsiveStyleMap[layoutSmallscreen]
256
256
  : 'overflow';
257
257
  const children = traverse();
258
258
  const bodies = children.filter((child) => child.type === 'table-body');
259
- const caption = (0, nodePredicates_1.findChildOftype)('table-caption', children, 'table', context);
260
- const footer = (0, nodePredicates_1.findChildOftype)('table-footer', children, 'table', context);
259
+ const caption = (0, nodePredicates_1.findChildOftype)('table-caption', children, 'table');
260
+ const footer = (0, nodePredicates_1.findChildOftype)('table-footer', children, 'table');
261
261
  // HACK:KB:20230523 transform single-cell tables into infoboxes, for legacy articles
262
262
  if (bodies.length === 1 &&
263
263
  bodies[0].children.length === 1 &&
264
264
  bodies[0].children[0].children.length === 1) {
265
265
  const slot = {
266
266
  type: 'layout-slot',
267
- children: (0, nodePredicates_1.childrenOfTypes)(['paragraph', 'heading'], bodies[0].children[0].children[0].children, 'layout-slot', context),
267
+ children: (0, nodePredicates_1.childrenOfTypes)(['paragraph', 'heading'], bodies[0].children[0].children[0].children, 'layout-slot'),
268
268
  };
269
269
  const layoutChildren = caption
270
270
  ? [
271
271
  {
272
272
  type: 'heading',
273
273
  level: 'subheading',
274
- children: (0, nodePredicates_1.everyChildIsType)('text', caption.children, 'heading', context),
274
+ children: (0, nodePredicates_1.everyChildIsType)('text', caption.children, 'heading'),
275
275
  },
276
276
  slot,
277
277
  ]
@@ -336,34 +336,34 @@ const commonTagMappings = {
336
336
  // HACK needs to come before tr. TODO sort by selector specificity
337
337
  'tfoot > tr': ($el, traverse) => traverse(),
338
338
  // HACK needs to come before td. TODO sort by selector specificity
339
- 'tfoot > tr > td': ($el, traverse, context) => ({
339
+ 'tfoot > tr > td': ($el, traverse) => ({
340
340
  type: 'table-footer',
341
- children: (0, nodePredicates_1.childrenOfTypes)(nodePredicates_1.phrasingTypes, traverse(), 'table-footer', context),
341
+ children: (0, nodePredicates_1.childrenOfTypes)(nodePredicates_1.phrasingTypes, traverse(), 'table-footer'),
342
342
  }),
343
- tr: ($el, traverse, context) => ({
343
+ tr: ($el, traverse) => ({
344
344
  type: 'table-row',
345
- children: (0, nodePredicates_1.everyChildIsType)('table-cell', traverse(), 'table-row', context),
345
+ children: (0, nodePredicates_1.everyChildIsType)('table-cell', traverse(), 'table-row'),
346
346
  }),
347
- td: ($el, traverse, context) => ({
347
+ td: ($el, traverse) => ({
348
348
  type: 'table-cell',
349
- children: (0, nodePredicates_1.childrenOfTypes)(nodePredicates_1.phrasingTypes, traverse(), 'table-cell', context),
349
+ children: (0, nodePredicates_1.childrenOfTypes)(nodePredicates_1.phrasingTypes, traverse(), 'table-cell'),
350
350
  }),
351
- th: ($el, traverse, context) => ({
351
+ th: ($el, traverse) => ({
352
352
  type: 'table-cell',
353
353
  heading: true,
354
- children: (0, nodePredicates_1.childrenOfTypes)(nodePredicates_1.phrasingTypes, traverse(), 'table-cell', context),
354
+ children: (0, nodePredicates_1.childrenOfTypes)(nodePredicates_1.phrasingTypes, traverse(), 'table-cell'),
355
355
  }),
356
- thead: ($el, traverse, context) => ({
356
+ thead: ($el, traverse) => ({
357
357
  type: 'table-body',
358
- children: (0, nodePredicates_1.everyChildIsType)('table-row', traverse(), 'table-body', context),
358
+ children: (0, nodePredicates_1.everyChildIsType)('table-row', traverse(), 'table-body'),
359
359
  }),
360
- tbody: ($el, traverse, context) => ({
360
+ tbody: ($el, traverse) => ({
361
361
  type: 'table-body',
362
- children: (0, nodePredicates_1.everyChildIsType)('table-row', traverse(), 'table-body', context),
362
+ children: (0, nodePredicates_1.everyChildIsType)('table-row', traverse(), 'table-body'),
363
363
  }),
364
- caption: ($el, traverse, context) => ({
364
+ caption: ($el, traverse) => ({
365
365
  type: 'table-caption',
366
- children: (0, nodePredicates_1.childrenOfTypes)(nodePredicates_1.phrasingTypes, traverse(), 'table-caption', context),
366
+ children: (0, nodePredicates_1.childrenOfTypes)(nodePredicates_1.phrasingTypes, traverse(), 'table-caption'),
367
367
  }),
368
368
  // HACK needs to come after LayoutImage. TODO sort by selector specificity
369
369
  'body > img:first-child': ($el) => ({
@@ -384,18 +384,18 @@ const commonTagMappings = {
384
384
  width: ($el.attr('width') && Number($el.attr('width'))) || undefined,
385
385
  format: 'standard',
386
386
  }),
387
- 'scrollable-block': ($el, traverse, context) => {
387
+ 'scrollable-block': ($el, traverse) => {
388
388
  return {
389
389
  type: 'scrolly-block',
390
390
  theme: $el.attr('theme') === '2' ? 'serif' : 'sans',
391
- children: (0, nodePredicates_1.everyChildIsType)('scrolly-section', traverse(), 'scrolly-block', context),
391
+ children: (0, nodePredicates_1.everyChildIsType)('scrolly-section', traverse(), 'scrolly-block'),
392
392
  };
393
393
  },
394
394
  'scrollable-section > ft-content[type="http://www.ft.com/ontology/content/ImageSet"]': ($el) => ({
395
395
  type: 'scrolly-image',
396
396
  id: $el.attr('url') ?? '',
397
397
  }),
398
- 'scrollable-section': ($el, traverse, context) => {
398
+ 'scrollable-section': ($el, traverse) => {
399
399
  const [firstChild, ...restChildren] = traverse();
400
400
  const display = $el.attr('theme-display');
401
401
  const position = $el.attr('theme-position');
@@ -414,43 +414,43 @@ const commonTagMappings = {
414
414
  : undefined,
415
415
  noBox: validScrollytellingOption('noBox', noBox) ? true : undefined,
416
416
  children: [
417
- ...(0, nodePredicates_1.everyChildIsType)('scrolly-image', [firstChild], 'scrolly-section', context),
418
- ...(0, nodePredicates_1.everyChildIsType)('scrolly-copy', restChildren, 'scrolly-section', context),
417
+ ...(0, nodePredicates_1.everyChildIsType)('scrolly-image', [firstChild], 'scrolly-section'),
418
+ ...(0, nodePredicates_1.everyChildIsType)('scrolly-copy', restChildren, 'scrolly-section'),
419
419
  ],
420
420
  };
421
421
  },
422
- 'scrollable-text': ($el, traverse, context) => ({
422
+ 'scrollable-text': ($el, traverse) => ({
423
423
  type: 'scrolly-copy',
424
- children: (0, nodePredicates_1.childrenOfTypes)(['scrolly-heading', 'paragraph'], traverse(), 'scrolly-copy', context),
424
+ children: (0, nodePredicates_1.childrenOfTypes)(['scrolly-heading', 'paragraph'], traverse(), 'scrolly-copy'),
425
425
  }),
426
- 'scrollable-text > p, scrollable-text > h1, scrollable-text > h2': ($el, traverse, context) => {
426
+ 'scrollable-text > p, scrollable-text > h1, scrollable-text > h2': ($el, traverse) => {
427
427
  const textStyle = $el.attr('theme-style');
428
428
  if (validScrollytellingOption('textStyle', textStyle)) {
429
429
  return {
430
430
  type: 'scrolly-heading',
431
431
  level: scrollytellingOptionsToContentTree.textStyle[textStyle],
432
- children: (0, nodePredicates_1.everyChildIsType)('text', traverse(), 'scrolly-heading', context),
432
+ children: (0, nodePredicates_1.everyChildIsType)('text', traverse(), 'scrolly-heading'),
433
433
  };
434
434
  }
435
435
  return {
436
436
  type: 'paragraph',
437
- children: (0, nodePredicates_1.childrenOfTypes)(nodePredicates_1.phrasingTypes, traverse(), 'paragraph', context),
437
+ children: (0, nodePredicates_1.childrenOfTypes)(nodePredicates_1.phrasingTypes, traverse(), 'paragraph'),
438
438
  };
439
439
  },
440
440
  // HACK:KB:20230703 needs to come after `scrollable-text > X`. todo sort by specificity
441
- p: ($el, traverse, context) => ({
441
+ p: ($el, traverse) => ({
442
442
  type: 'paragraph',
443
- children: (0, nodePredicates_1.childrenOfTypes)(nodePredicates_1.phrasingTypes, traverse(), 'paragraph', context),
443
+ children: (0, nodePredicates_1.childrenOfTypes)(nodePredicates_1.phrasingTypes, traverse(), 'paragraph'),
444
444
  }),
445
- h1: ($el, traverse, context) => ({
445
+ h1: ($el, traverse) => ({
446
446
  type: 'heading',
447
447
  level: 'chapter',
448
- children: (0, nodePredicates_1.everyChildIsType)('text', traverse(), 'heading', context),
448
+ children: (0, nodePredicates_1.everyChildIsType)('text', traverse(), 'heading'),
449
449
  }),
450
- 'h2,h3': ($el, traverse, context) => ({
450
+ 'h2,h3': ($el, traverse) => ({
451
451
  type: 'heading',
452
452
  level: 'subheading',
453
- children: (0, nodePredicates_1.everyChildIsType)('text', traverse(), 'heading', context),
453
+ children: (0, nodePredicates_1.everyChildIsType)('text', traverse(), 'heading'),
454
454
  }),
455
455
  'ft-content[type="http://www.ft.com/ontology/content/ClipSet"]': ($el) => ({
456
456
  type: 'clip-set',
@@ -1 +1 @@
1
- {"version":3,"file":"tagMappings.js","sourceRoot":"","sources":["../../../src/resolvers/content-tree/tagMappings.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tagMappings.js","sourceRoot":"","sources":["../../../src/resolvers/content-tree/tagMappings.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@financial-times/cp-content-pipeline-schema",
3
- "version": "2.2.1",
3
+ "version": "2.3.0",
4
4
  "description": "",
5
5
  "main": "lib/index.js",
6
6
  "scripts": {
@@ -38,6 +38,7 @@
38
38
  "graphql": "^16.6.0",
39
39
  "graphql-tag": "^2.12.6",
40
40
  "lodash.sortby": "^4.7.0",
41
+ "piscina": "^4.4.0",
41
42
  "rehype-parse": "^8.0.4",
42
43
  "zod": "^3.19.1"
43
44
  },
@@ -579,6 +579,9 @@ fragment ArticleFields on Content {
579
579
  containedIn {
580
580
  ...PackageContainer
581
581
  }
582
+ indicators {
583
+ ...Indicators
584
+ }
582
585
  }
583
586
  ... on LiveBlogPackage {
584
587
  liveBlogPosts(includePinned: false) {
@@ -5,6 +5,10 @@ import { QueryContext } from '..'
5
5
  const now = Date.now()
6
6
 
7
7
  export default {
8
+ addSurrogateKeys: (ids: string[]) => {
9
+ const keys = []
10
+ keys.push(...ids)
11
+ },
8
12
  dataSources: {
9
13
  vanityUrls: {
10
14
  get: (url: string) => Promise.resolve(url),
package/src/index.ts CHANGED
@@ -22,6 +22,7 @@ export interface QueryContext {
22
22
  api: string
23
23
  schema: string
24
24
  }
25
+ addSurrogateKeys(keys: string[]): void
25
26
  }
26
27
 
27
28
  export const articleDocumentQuery = readFileSync(