@financial-times/cp-content-pipeline-schema 3.13.0 → 3.15.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.
@@ -73,10 +73,12 @@ const articleTagMappings = (capiData) => ({
73
73
  ? 'image-set'
74
74
  : 'main-image',
75
75
  id: $el.attr('url') || '',
76
+ fragmentIdentifier: $el.attr('data-fragment-identifier') || undefined,
76
77
  }),
77
78
  '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) => ({
78
79
  type: 'image-set',
79
80
  id: $el.attr('url') || '',
81
+ fragmentIdentifier: $el.attr('data-fragment-identifier') || undefined,
80
82
  }),
81
83
  });
82
84
  exports.articleTagMappings = articleTagMappings;
@@ -84,6 +86,7 @@ const liveBlogPostTagMappings = {
84
86
  'ft-content[type="http://www.ft.com/ontology/content/ImageSet"]': ($el) => ({
85
87
  type: 'image-set',
86
88
  id: $el.attr('url') || '',
89
+ fragmentIdentifier: $el.attr('data-fragment-identifier') || undefined,
87
90
  }),
88
91
  };
89
92
  exports.liveBlogPostTagMappings = liveBlogPostTagMappings;
@@ -159,6 +162,7 @@ const commonTagMappings = {
159
162
  'h4,h5,h6': ($el, traverse, context) => ({
160
163
  type: 'heading',
161
164
  level: 'label',
165
+ fragmentIdentifier: $el.attr('data-fragment-identifier') || undefined,
162
166
  children: (0, nodePredicates_1.everyChildIsType)('text', traverse(), 'heading', context),
163
167
  }),
164
168
  'pull-quote': ($el, traverse) => {
@@ -203,6 +207,7 @@ const commonTagMappings = {
203
207
  const layoutWidth = $el.attr('data-layout-width');
204
208
  return {
205
209
  id: $el.attr('id') || '',
210
+ fragmentIdentifier: $el.attr('data-fragment-identifier') || undefined,
206
211
  type: 'flourish',
207
212
  flourishType: $el.attr('data-flourish-type') || 'visualisation',
208
213
  description: $el.attr('description') || '',
@@ -482,11 +487,13 @@ const commonTagMappings = {
482
487
  h1: ($el, traverse, context) => ({
483
488
  type: 'heading',
484
489
  level: 'chapter',
490
+ fragmentIdentifier: $el.attr('data-fragment-identifier') || undefined,
485
491
  children: (0, nodePredicates_1.everyChildIsType)('text', traverse(), 'heading', context),
486
492
  }),
487
493
  'h2,h3': ($el, traverse, context) => ({
488
494
  type: 'heading',
489
495
  level: 'subheading',
496
+ fragmentIdentifier: $el.attr('data-fragment-identifier') || undefined,
490
497
  children: (0, nodePredicates_1.everyChildIsType)('text', traverse(), 'heading', context),
491
498
  }),
492
499
  'ft-content[type="http://www.ft.com/ontology/content/ClipSet"]': ($el) => ({
@@ -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": "3.13.0",
3
+ "version": "3.15.0",
4
4
  "description": "",
5
5
  "main": "lib/index.js",
6
6
  "scripts": {
@@ -22,9 +22,9 @@
22
22
  "@apollo/utils.keyvaluecache": "^1.0.1",
23
23
  "@dotcom-reliability-kit/fetch-error-handler": "^1.1.0",
24
24
  "@dotcom-reliability-kit/serialize-request": "^4.1.0",
25
- "@financial-times/content-tree": "github:financial-times/content-tree#6ad991b",
26
- "@financial-times/n-concept-ids": "^2.1.0",
27
- "@financial-times/n-display-metadata": "^1.1.1",
25
+ "@financial-times/content-tree": "github:financial-times/content-tree#8275704",
26
+ "@financial-times/n-concept-ids": "^5.0.0",
27
+ "@financial-times/n-display-metadata": "^4.0.0",
28
28
  "@financial-times/n-scrollytelling-image": "^1.1.0",
29
29
  "@financial-times/n-url-management-api-read-client": "^7.0.0",
30
30
  "@graphql-tools/graphql-file-loader": "^8.0.0",
@@ -6,7 +6,7 @@ const REQUEST_TIMEOUT = process.env.ORIGAMI_DATASOURCE_REQUEST_TIMEOUT
6
6
  : 200
7
7
 
8
8
  export class OrigamiImageDataSource extends InstrumentedRESTDataSource {
9
- baseURL = 'https://images.ft.com/v3/image'
9
+ baseURL = 'https://images.ft.com/v3/image/'
10
10
  get backendSystemCode() {
11
11
  return 'image-service'
12
12
  }
@@ -29,7 +29,7 @@ export class OrigamiImageDataSource extends InstrumentedRESTDataSource {
29
29
  url: string
30
30
  ): Promise<{ width: number; height: number }> {
31
31
  const imageMetadata = await this.get(
32
- `metadata/${encodeURIComponent(url)}?source=next`
32
+ `metadata/${encodeURIComponent(url)}?source=cp-content-pipeline-api`
33
33
  )
34
34
 
35
35
  this.calls.push(url)
@@ -9,6 +9,7 @@ import nUrlManagementApiReadClient from '@financial-times/n-url-management-api-r
9
9
  import type { QueryContext } from '..'
10
10
  import { InMemoryLRUCache } from '@apollo/utils.keyvaluecache'
11
11
  import { jest } from '@jest/globals'
12
+ import { BaseError, HttpError } from '@dotcom-reliability-kit/errors'
12
13
 
13
14
  const getMock = nUrlManagementApiReadClient.get as jest.Mock<
14
15
  typeof import('@financial-times/n-url-management-api-read-client')['get']
@@ -95,4 +96,129 @@ describe('URL management data source', () => {
95
96
  expect(different).toEqual('different.url.vanity')
96
97
  expect(nUrlManagementApiReadClient.get).toHaveBeenCalledTimes(2)
97
98
  })
99
+
100
+ describe('error handling', () => {
101
+ it('wraps 4xx errors in HttpError', async () => {
102
+ getMock.mockRejectedValueOnce(
103
+ new HttpError({
104
+ statusCode: 400,
105
+ code: 'UnrecognisedClientException',
106
+ })
107
+ )
108
+
109
+ const datasource = new URLManagementDataSource({
110
+ context,
111
+ cache: new InMemoryLRUCache(),
112
+ })
113
+
114
+ await expect(datasource.get('original.url')).rejects
115
+ .toMatchInlineSnapshot(`
116
+ HttpError: "Internal Server Error" {
117
+ "cause": "HttpError: "Bad Request" {
118
+ "cause": null,
119
+ "code": "UNRECOGNISEDCLIENTEXCEPTION",
120
+ "data": {},
121
+ }",
122
+ "code": "URL_MANAGEMENT_CLIENT_ERROR",
123
+ "data": {
124
+ "upstreamStatusCode": 400,
125
+ },
126
+ }
127
+ `)
128
+ })
129
+
130
+ it('wraps 5xx errors in UpstreamError', async () => {
131
+ getMock.mockRejectedValueOnce(
132
+ new HttpError({
133
+ statusCode: 500,
134
+ code: 'InternalServerException',
135
+ })
136
+ )
137
+
138
+ const datasource = new URLManagementDataSource({
139
+ context,
140
+ cache: new InMemoryLRUCache(),
141
+ })
142
+
143
+ await expect(datasource.get('original.url')).rejects
144
+ .toMatchInlineSnapshot(`
145
+ UpstreamServiceError: "Bad Gateway" {
146
+ "cause": "HttpError: "Internal Server Error" {
147
+ "cause": null,
148
+ "code": "INTERNALSERVEREXCEPTION",
149
+ "data": {},
150
+ }",
151
+ "code": "URL_MANAGEMENT_SERVER_ERROR",
152
+ "data": {
153
+ "upstreamStatusCode": 500,
154
+ },
155
+ }
156
+ `)
157
+ })
158
+
159
+ it('wraps other HTTP errors in HttpError', async () => {
160
+ const error = new BaseError({
161
+ code: 'SomethingElseException',
162
+ })
163
+
164
+ Object.assign(error, {
165
+ // HttpError normalises status codes to the 400-599 range
166
+ statusCode: 137,
167
+ })
168
+
169
+ getMock.mockRejectedValueOnce(error)
170
+
171
+ const datasource = new URLManagementDataSource({
172
+ context,
173
+ cache: new InMemoryLRUCache(),
174
+ })
175
+
176
+ await expect(datasource.get('original.url')).rejects
177
+ .toMatchInlineSnapshot(`
178
+ HttpError: "Internal Server Error" {
179
+ "cause": "BaseError: "An error occurred" {
180
+ "cause": null,
181
+ "code": "SOMETHINGELSEEXCEPTION",
182
+ "data": {},
183
+ }",
184
+ "code": "URL_MANAGEMENT_UNKNOWN_ERROR",
185
+ "data": {
186
+ "upstreamStatusCode": 137,
187
+ },
188
+ }
189
+ `)
190
+ })
191
+
192
+ it('rethrows unknown errors', async () => {
193
+ getMock.mockRejectedValueOnce('not an error')
194
+
195
+ const datasource = new URLManagementDataSource({
196
+ context,
197
+ cache: new InMemoryLRUCache(),
198
+ })
199
+
200
+ await expect(
201
+ datasource.get('original.url')
202
+ ).rejects.toMatchInlineSnapshot(`"not an error"`)
203
+ })
204
+
205
+ it("doesn't cache error responses", async () => {
206
+ getMock.mockRejectedValueOnce(new Error())
207
+
208
+ const datasource = new URLManagementDataSource({
209
+ context,
210
+ cache: new InMemoryLRUCache(),
211
+ })
212
+
213
+ await expect(datasource.get('original.url')).rejects.toThrow()
214
+
215
+ getMock.mockImplementation((fromURL) =>
216
+ Promise.resolve({ fromURL, toURL: `${fromURL}.vanity`, code: 0 })
217
+ )
218
+
219
+ await expect(datasource.get('original.url')).resolves.toEqual(
220
+ `original.url.vanity`
221
+ )
222
+ })
223
+ })
98
224
  })
@@ -7,6 +7,8 @@ import nUrlManagementApiReadClient from '@financial-times/n-url-management-api-r
7
7
  import type { ResolvedVanityURL } from '@financial-times/n-url-management-api-read-client'
8
8
  import { QueryContext } from '..'
9
9
  import { BaseDataSource, BaseDataSourceOptions } from './base'
10
+ import { HttpError, UpstreamServiceError } from '@dotcom-reliability-kit/errors'
11
+ import isError from '../helpers/isError'
10
12
 
11
13
  const CACHE_PREFIX = 'nurlmgmtapi:'
12
14
  const DEFAULT_TTL_IN_SECONDS = 60 * 60 // one hour
@@ -53,16 +55,54 @@ export class URLManagementDataSource implements BaseDataSource {
53
55
  return fromDynamoDB.toURL
54
56
  }
55
57
 
56
- let promise = this.memoizedResults.get(fromURL)
58
+ try {
59
+ let promise = this.memoizedResults.get(fromURL)
57
60
 
58
- if (promise) {
59
- return promise
60
- }
61
+ if (promise) {
62
+ return await promise
63
+ }
64
+
65
+ promise = getVanity()
66
+ this.memoizedResults.set(fromURL, promise)
67
+
68
+ this.calls.push(fromURL)
69
+ return await promise
70
+ } catch (error) {
71
+ this.memoizedResults.delete(fromURL)
72
+ await this.cache.delete(fromURL)
61
73
 
62
- promise = getVanity()
63
- this.memoizedResults.set(fromURL, promise)
74
+ if (
75
+ isError(error) &&
76
+ 'statusCode' in error &&
77
+ typeof error.statusCode === 'number'
78
+ ) {
79
+ const baseErrorOptions = {
80
+ cause: error,
81
+ relatesToSystems: ['next-url-management-db'],
82
+ upstreamStatusCode: error.statusCode,
83
+ }
64
84
 
65
- this.calls.push(fromURL)
66
- return promise
85
+ if (error.statusCode >= 400 && error.statusCode < 500) {
86
+ throw new HttpError({
87
+ code: 'URL_MANAGEMENT_CLIENT_ERROR',
88
+ statusCode: 500,
89
+ ...baseErrorOptions,
90
+ })
91
+ } else if (error.statusCode >= 500 && error.statusCode < 600) {
92
+ throw new UpstreamServiceError({
93
+ code: 'URL_MANAGEMENT_SERVER_ERROR',
94
+ ...baseErrorOptions,
95
+ })
96
+ }
97
+
98
+ throw new HttpError({
99
+ code: 'URL_MANAGEMENT_UNKNOWN_ERROR',
100
+ statusCode: 500,
101
+ ...baseErrorOptions,
102
+ })
103
+ } else {
104
+ throw error
105
+ }
106
+ }
67
107
  }
68
108
  }
@@ -3,6 +3,7 @@ import type { QueryContext } from '..'
3
3
  import { uuidFromUrl } from '../helpers/metadata'
4
4
  import isError from '../helpers/isError'
5
5
  import conceptIds from '@financial-times/n-concept-ids'
6
+ import { OperationalError } from '@dotcom-reliability-kit/errors'
6
7
 
7
8
  const CAPI_ID_PREFIX = /^https?:\/\/(?:www|api)\.ft\.com\/things?\//
8
9
  const BASE_URL = 'https://www.ft.com/stream/'
@@ -155,7 +156,12 @@ export class Concept {
155
156
  if (isError(error)) {
156
157
  this.context.logger.warn({
157
158
  event: 'RECOVERABLE_ERROR',
158
- error,
159
+ error: new OperationalError({
160
+ code: 'CONCEPT_VANITY_ERROR',
161
+ message: `Could not get vanity URL for concept. This means we'll be displaying the underlying URL instead of the vanity, which will cause additional redirects.`,
162
+ uuid: this.id(),
163
+ cause: error,
164
+ }),
159
165
  })
160
166
  }
161
167
  }
@@ -252,7 +252,12 @@ export class Content {
252
252
  if (isError(error)) {
253
253
  this.context.logger.warn({
254
254
  event: 'RECOVERABLE_ERROR',
255
- error,
255
+ error: new OperationalError({
256
+ code: 'CONTENT_VANITY_ERROR',
257
+ message: `Could not get vanity URL for content. This means we'll be displaying the underlying URL instead of the vanity, which will cause additional redirects.`,
258
+ uuid: this.id(),
259
+ cause: error,
260
+ }),
256
261
  })
257
262
  }
258
263
  }
@@ -148,13 +148,13 @@ describe('Image', () => {
148
148
  })
149
149
  it('returns an image service URL with the requested width and max DPR 2', () => {
150
150
  expect(sourceSet).toMatchInlineSnapshot(`
151
- Array [
152
- Object {
151
+ [
152
+ {
153
153
  "dpr": 1,
154
154
  "url": "https://images.ft.com/v3/image/raw/ftcms%3A00000000-0000-0000-0000-000000000001?source=image-test&fit=scale-down&quality=highest&width=3000&dpr=1",
155
155
  "width": 3000,
156
156
  },
157
- Object {
157
+ {
158
158
  "dpr": 2,
159
159
  "url": "https://images.ft.com/v3/image/raw/ftcms%3A00000000-0000-0000-0000-000000000001?source=image-test&fit=scale-down&quality=highest&width=3000&dpr=2",
160
160
  "width": 3000,
@@ -15,12 +15,12 @@ describe('RichText resolver', () => {
15
15
  'The UK’s first ID Buzz campervan is available to rent. On a test-drive in Sussex, it charms both passengers and passers-by'
16
16
  )
17
17
  expect(await model.structured()).toMatchInlineSnapshot(`
18
- Object {
19
- "references": Array [],
18
+ {
19
+ "references": [],
20
20
  "text": "",
21
- "tree": Object {
22
- "children": Array [
23
- Object {
21
+ "tree": {
22
+ "children": [
23
+ {
24
24
  "type": "text",
25
25
  "value": "The UK’s first ID Buzz campervan is available to rent. On a test-drive in Sussex, it charms both passengers and passers-by",
26
26
  },
@@ -35,11 +35,11 @@ describe('RichText resolver', () => {
35
35
  it('should handle nulls', async () => {
36
36
  const model = new RichText('standfirst', null)
37
37
  expect(await model.structured()).toMatchInlineSnapshot(`
38
- Object {
39
- "references": Array [],
38
+ {
39
+ "references": [],
40
40
  "text": "",
41
- "tree": Object {
42
- "children": Array [],
41
+ "tree": {
42
+ "children": [],
43
43
  "type": "body",
44
44
  "version": 1,
45
45
  },