@financial-times/cp-content-pipeline-schema 2.4.1 → 2.5.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 (39) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/lib/datasources/capi.d.ts +2 -4
  3. package/lib/datasources/capi.js +8 -12
  4. package/lib/datasources/capi.js.map +1 -1
  5. package/lib/datasources/instrumented.d.ts +5 -5
  6. package/lib/datasources/instrumented.js +36 -27
  7. package/lib/datasources/instrumented.js.map +1 -1
  8. package/lib/datasources/origami-image.d.ts +2 -3
  9. package/lib/datasources/origami-image.js +3 -3
  10. package/lib/datasources/origami-image.js.map +1 -1
  11. package/lib/datasources/twitter.d.ts +2 -2
  12. package/lib/datasources/twitter.js +3 -3
  13. package/lib/datasources/twitter.js.map +1 -1
  14. package/lib/fixtures/dummyContext.js +6 -5
  15. package/lib/fixtures/dummyContext.js.map +1 -1
  16. package/lib/model/CapiResponse.d.ts +1 -50
  17. package/lib/model/CapiResponse.js +43 -20
  18. package/lib/model/CapiResponse.js.map +1 -1
  19. package/lib/resolvers/content-tree/bodyXMLToTree.d.ts +1 -1
  20. package/lib/resolvers/content-tree/tagMappings.d.ts +2 -1
  21. package/lib/resolvers/content-tree/tagMappings.js +1 -1
  22. package/lib/resolvers/content-tree/tagMappings.js.map +1 -1
  23. package/lib/resolvers/content-tree/tagMappings.test.js +9 -2
  24. package/lib/resolvers/content-tree/tagMappings.test.js.map +1 -1
  25. package/lib/types/cache.d.ts +1 -1
  26. package/lib/types/cache.js +4 -1
  27. package/lib/types/cache.js.map +1 -1
  28. package/package.json +2 -2
  29. package/src/datasources/capi.ts +9 -15
  30. package/src/datasources/instrumented.ts +62 -43
  31. package/src/datasources/origami-image.ts +5 -9
  32. package/src/datasources/twitter.ts +5 -11
  33. package/src/fixtures/dummyContext.ts +7 -5
  34. package/src/model/CapiResponse.ts +68 -29
  35. package/src/resolvers/content-tree/bodyXMLToTree.ts +1 -1
  36. package/src/resolvers/content-tree/tagMappings.test.ts +18 -3
  37. package/src/resolvers/content-tree/tagMappings.ts +6 -2
  38. package/src/types/cache.ts +6 -2
  39. package/tsconfig.tsbuildinfo +1 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,25 @@
1
1
  # Changelog
2
2
 
3
+ ## [2.5.0](https://github.com/Financial-Times/cp-content-pipeline/compare/cp-content-pipeline-schema-v2.4.2...cp-content-pipeline-schema-v2.5.0) (2024-03-26)
4
+
5
+
6
+ ### Features
7
+
8
+ * explicitly log a 408 to graphite if request is aborted ([7175d6e](https://github.com/Financial-Times/cp-content-pipeline/commit/7175d6e97bae8ed145dcc6228c0c2048bacf1fe8))
9
+
10
+
11
+ ### Bug Fixes
12
+
13
+ * correct URLs for new baseUrl semantics ([82520d4](https://github.com/Financial-Times/cp-content-pipeline/commit/82520d46474106503b8cf3fe515d636039dd90f3))
14
+ * set cache key to just url (because that's what everything expects) ([b6ab650](https://github.com/Financial-Times/cp-content-pipeline/commit/b6ab6507d68db8e6dda3b45d9e6c4514579be504))
15
+
16
+ ## [2.4.2](https://github.com/Financial-Times/cp-content-pipeline/compare/cp-content-pipeline-schema-v2.4.1...cp-content-pipeline-schema-v2.4.2) (2024-03-22)
17
+
18
+
19
+ ### Bug Fixes
20
+
21
+ * add missing surrogate key for article itself ([595d5aa](https://github.com/Financial-Times/cp-content-pipeline/commit/595d5aa661cd00c59d281149b465493d9e023194))
22
+
3
23
  ## [2.4.1](https://github.com/Financial-Times/cp-content-pipeline/compare/cp-content-pipeline-schema-v2.4.0...cp-content-pipeline-schema-v2.4.1) (2024-03-21)
4
24
 
5
25
 
@@ -1,8 +1,7 @@
1
- import { WillSendRequestOptions } from '@apollo/datasource-rest';
2
1
  import { CapiResponse } from '../model/CapiResponse';
3
2
  import { InstrumentedRESTDataSource } from './instrumented';
4
3
  import { CapiPerson } from '../types/internal-content';
5
- import { CacheOptions } from '@apollo/datasource-rest/dist/RESTDataSource';
4
+ import { AugmentedRequest } from '@apollo/datasource-rest';
6
5
  export declare class CapiDataSource extends InstrumentedRESTDataSource {
7
6
  baseURL: string;
8
7
  capiKey: string;
@@ -12,8 +11,7 @@ export declare class CapiDataSource extends InstrumentedRESTDataSource {
12
11
  abortController: AbortController;
13
12
  timeout: ReturnType<typeof setTimeout> | undefined;
14
13
  nextNotificationLink?: string;
15
- willSendRequest(request: WillSendRequestOptions): void;
16
- protected cacheOptionsFor(url: string): CacheOptions | undefined;
14
+ willSendRequest(path: string, request: AugmentedRequest): void;
17
15
  getContent(uuid: string, packageContainer?: CapiResponse): Promise<CapiResponse>;
18
16
  getPerson(uuid: string): Promise<CapiPerson>;
19
17
  }
@@ -20,23 +20,17 @@ class CapiDataSource extends instrumented_1.InstrumentedRESTDataSource {
20
20
  this.abortController = new AbortController();
21
21
  this.timeout = undefined;
22
22
  }
23
- willSendRequest(request) {
24
- super.willSendRequest(request);
23
+ willSendRequest(path, request) {
24
+ super.willSendRequest(path, request);
25
25
  request.headers['x-api-key'] = this.capiKey;
26
26
  request.signal = this.abortController.signal;
27
27
  this.timeout = setTimeout(() => this.abortController.abort(), REQUEST_TIMEOUT);
28
28
  }
29
- cacheOptionsFor(url) {
30
- if (url.startsWith(`${this.baseURL}internalcontent/`)) {
31
- return { ttl: this.articleCacheTTL };
32
- }
33
- else if (url.startsWith(`${this.baseURL}people/`)) {
34
- return { ttl: this.peopleCacheTTL };
35
- }
36
- }
37
29
  async getContent(uuid, packageContainer) {
38
30
  try {
39
- const content = await this.get(`internalcontent/${uuid}`);
31
+ const content = await this.get(`internalcontent/${uuid}`, {
32
+ cacheOptions: { ttl: this.articleCacheTTL },
33
+ });
40
34
  this.context.contentRequestedOnce = true;
41
35
  if (this.timeout) {
42
36
  clearTimeout(this.timeout);
@@ -58,7 +52,9 @@ class CapiDataSource extends instrumented_1.InstrumentedRESTDataSource {
58
52
  }
59
53
  async getPerson(uuid) {
60
54
  try {
61
- return await this.get(`people/${uuid}`);
55
+ return await this.get(`people/${uuid}`, {
56
+ cacheOptions: { ttl: this.peopleCacheTTL },
57
+ });
62
58
  }
63
59
  catch (error) {
64
60
  if (error instanceof Error) {
@@ -1 +1 @@
1
- {"version":3,"file":"capi.js","sourceRoot":"","sources":["../../src/datasources/capi.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"capi.js","sourceRoot":"","sources":["../../src/datasources/capi.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,4 @@
1
- import { WillSendRequestOptions, RESTDataSource, RequestOptions } from '@apollo/datasource-rest';
2
- import type { FetcherResponse } from '@apollo/utils.fetcher';
1
+ import { RESTDataSource, CacheOptions, DataSourceFetchResult, DataSourceRequest, AugmentedRequest } from '@apollo/datasource-rest';
3
2
  import { QueryContext } from '..';
4
3
  import { BaseDataSource, BaseDataSourceOptions } from './base';
5
4
  export declare class InstrumentedRESTDataSource extends RESTDataSource implements BaseDataSource {
@@ -8,7 +7,8 @@ export declare class InstrumentedRESTDataSource extends RESTDataSource implement
8
7
  context: QueryContext;
9
8
  constructor({ cache, context }: BaseDataSourceOptions);
10
9
  get cachePrefix(): string;
11
- willSendRequest(request: WillSendRequestOptions): void;
12
- trace<TResult>(url: URL, request: WillSendRequestOptions, fn: () => Promise<TResult>): Promise<TResult>;
13
- didReceiveResponse<TResult>(response: FetcherResponse, request: RequestOptions): Promise<TResult>;
10
+ protected cacheKeyFor(url: URL): string;
11
+ willSendRequest(path: string, request: AugmentedRequest): void;
12
+ throwIfResponseIsError(): Promise<void>;
13
+ fetch<TResult>(path: string, incomingRequest?: DataSourceRequest<CacheOptions>): Promise<DataSourceFetchResult<TResult>>;
14
14
  }
@@ -22,44 +22,53 @@ class InstrumentedRESTDataSource extends datasource_rest_1.RESTDataSource {
22
22
  get cachePrefix() {
23
23
  return this.constructor.name.replace(/DataSource$/, '').toLowerCase();
24
24
  }
25
- willSendRequest(request) {
25
+ cacheKeyFor(url) {
26
+ return url.href;
27
+ }
28
+ willSendRequest(path, request) {
26
29
  request.headers['user-agent'] = `cp-content-pipeline-api/${this.context.versions.api} cp-content-pipeline-schema/${this.context.versions.schema} `;
30
+ if (this.context.requestId && !this.context.contentRequestedOnce) {
31
+ request.headers['x-request-id'] = this.context.requestId;
32
+ }
27
33
  }
28
- async trace(url, request, fn) {
29
- this.startTime = process.hrtime.bigint();
34
+ // we implement our own error handling so skip the built-in GraphQLError
35
+ // eslint-disable-next-line @typescript-eslint/no-empty-function
36
+ async throwIfResponseIsError() { }
37
+ async fetch(path, incomingRequest) {
38
+ const startTime = process.hrtime.bigint();
30
39
  this.context.metrics?.count(`graphql.datasource.${this.constructor.name}.request.count`, 1);
31
40
  this.context.logger.info({
32
41
  event: 'REQUEST_DATASOURCE',
33
42
  datasource: this.constructor.name,
34
43
  request: {
35
44
  id: this.context.requestId,
36
- url: url.href,
37
- method: request.method,
45
+ url: new URL(path, this.baseURL).href,
46
+ method: incomingRequest?.method,
38
47
  },
39
48
  });
40
- if (this.context.requestId && !this.context.contentRequestedOnce) {
41
- request.headers['x-request-id'] = this.context.requestId;
42
- }
43
- return fn();
44
- }
45
- async didReceiveResponse(response, request) {
46
- // this.startTime will definitely have been set by willSendRequest, but no way of encoding that in types
47
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
48
- const duration = (process.hrtime.bigint() - this.startTime) / BigInt(1e6);
49
- this.context.metrics?.count(`graphql.datasource.${this.constructor.name}.response.${response.status}.count`, 1);
50
- this.context.metrics?.count(`graphql.datasource.${this.constructor.name}.response.${response.status}.time`, Number(duration));
51
- if (response.ok) {
52
- return super.didReceiveResponse(response, request);
49
+ try {
50
+ const result = await super.fetch(path, incomingRequest);
51
+ const duration = (process.hrtime.bigint() - startTime) / BigInt(1e6);
52
+ this.context.metrics?.count(`graphql.datasource.${this.constructor.name}.response.${result.response.status}.count`, 1);
53
+ this.context.metrics?.count(`graphql.datasource.${this.constructor.name}.response.${result.response.status}.time`, Number(duration));
54
+ if (!result.response.ok) {
55
+ throw new errors_1.UpstreamServiceError({
56
+ message: `${result.response.status}: ${result.response.statusText} from ${this.constructor.name}`,
57
+ statusCode: result.response.status,
58
+ relatesToSystems: this.backendSystemCodes,
59
+ url: result.response.url,
60
+ body: result.parsedBody,
61
+ });
62
+ }
63
+ return result;
53
64
  }
54
- else {
55
- const body = await this.parseBody(response);
56
- throw new errors_1.UpstreamServiceError({
57
- message: `${response.status}: ${response.statusText} from ${this.constructor.name}`,
58
- statusCode: response.status,
59
- relatesToSystems: this.backendSystemCodes,
60
- url: response.url,
61
- body,
62
- });
65
+ catch (error) {
66
+ if (error instanceof Error && error.name === 'AbortError') {
67
+ const duration = (process.hrtime.bigint() - startTime) / BigInt(1e6);
68
+ this.context.metrics?.count(`graphql.datasource.${this.constructor.name}.response.408.count`, 1);
69
+ this.context.metrics?.count(`graphql.datasource.${this.constructor.name}.response.408.time`, Number(duration));
70
+ }
71
+ throw error;
63
72
  }
64
73
  }
65
74
  }
@@ -1 +1 @@
1
- {"version":3,"file":"instrumented.js","sourceRoot":"","sources":["../../src/datasources/instrumented.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"instrumented.js","sourceRoot":"","sources":["../../src/datasources/instrumented.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,12 @@
1
- import { WillSendRequestOptions } from '@apollo/datasource-rest';
2
1
  import { InstrumentedRESTDataSource } from './instrumented';
3
- import { CacheOptions } from '@apollo/datasource-rest/dist/RESTDataSource';
2
+ import { AugmentedRequest, CacheOptions } from '@apollo/datasource-rest';
4
3
  export declare class OrigamiImageDataSource extends InstrumentedRESTDataSource {
5
4
  baseURL: string;
6
5
  backendSystemCodes: string[];
7
6
  abortController: AbortController;
8
7
  timeout: ReturnType<typeof setTimeout> | undefined;
9
8
  imageMetadataCacheTTL: number;
10
- willSendRequest(request: WillSendRequestOptions): void;
9
+ willSendRequest(path: string, request: AugmentedRequest): void;
11
10
  protected cacheOptionsFor(): CacheOptions;
12
11
  getImageMetadata(url: string): Promise<{
13
12
  width: number;
@@ -15,8 +15,8 @@ class OrigamiImageDataSource extends instrumented_1.InstrumentedRESTDataSource {
15
15
  ? parseInt(process.env.IMAGE_METADATA_CACHE_TTL)
16
16
  : 60 * 60 * 24 * 7; // 1 week
17
17
  }
18
- willSendRequest(request) {
19
- super.willSendRequest(request);
18
+ willSendRequest(path, request) {
19
+ super.willSendRequest(path, request);
20
20
  request.signal = this.abortController.signal;
21
21
  this.timeout = setTimeout(() => this.abortController.abort(), REQUEST_TIMEOUT);
22
22
  }
@@ -25,7 +25,7 @@ class OrigamiImageDataSource extends instrumented_1.InstrumentedRESTDataSource {
25
25
  }
26
26
  async getImageMetadata(url) {
27
27
  try {
28
- const imageMetadata = await this.get(`/images/metadata/${encodeURIComponent(url)}?source=next`);
28
+ const imageMetadata = await this.get(`images/metadata/${encodeURIComponent(url)}?source=next`);
29
29
  if (this.timeout) {
30
30
  clearTimeout(this.timeout);
31
31
  this.timeout = undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"origami-image.js","sourceRoot":"","sources":["../../src/datasources/origami-image.ts"],"names":[],"mappings":";;;AACA,2DAGuC;AACvC,iDAA2D;AAG3D,MAAM,eAAe,GAAG,IAAI,CAAA,CAAC,YAAY;AAEzC,MAAa,sBAAuB,SAAQ,yCAA0B;IAAtE;;QACE,YAAO,GAAG,+CAA+C,CAAA;QACzD,uBAAkB,GAAG,CAAC,0BAA0B,CAAC,CAAA;QAEjD,oBAAe,GAAG,IAAI,eAAe,EAAE,CAAA;QACvC,YAAO,GAA8C,SAAS,CAAA;QAE9D,0BAAqB,GAAG,OAAO,CAAC,GAAG,CAAC,wBAAwB;YAC1D,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC;YAChD,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA,CAAC,SAAS;IAyChC,CAAC;IAvCU,eAAe,CAAC,OAA+B;QACtD,KAAK,CAAC,eAAe,CAAC,OAAO,CAAC,CAAA;QAE9B,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CAAA;QAC5C,IAAI,CAAC,OAAO,GAAG,UAAU,CACvB,GAAG,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,EAClC,eAAe,CAChB,CAAA;IACH,CAAC;IAES,eAAe;QACvB,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,qBAAqB,EAAE,CAAA;IAC5C,CAAC;IAED,KAAK,CAAC,gBAAgB,CACpB,GAAW;QAEX,IAAI;YACF,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,GAAG,CAClC,oBAAoB,kBAAkB,CAAC,GAAG,CAAC,cAAc,CAC1D,CAAA;YACD,IAAI,IAAI,CAAC,OAAO,EAAE;gBAChB,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;gBAC1B,IAAI,CAAC,OAAO,GAAG,SAAS,CAAA;aACzB;YACD,OAAO,aAAa,CAAA;SACrB;QAAC,OAAO,KAAK,EAAE;YACd,IAAI,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE;gBACzD,MAAM,IAAI,6BAAoB,CAAC;oBAC7B,IAAI,EAAE,4BAA4B;oBAClC,OAAO,EAAE,6CAA6C,eAAe,8BAA8B;oBACnG,UAAU,EAAE,GAAG;oBACf,gBAAgB,EAAE,IAAI,CAAC,kBAAkB;iBAC1C,CAAC,CAAA;aACH;YAED,MAAM,KAAK,CAAA;SACZ;IACH,CAAC;CACF;AAlDD,wDAkDC"}
1
+ {"version":3,"file":"origami-image.js","sourceRoot":"","sources":["../../src/datasources/origami-image.ts"],"names":[],"mappings":";;;AAAA,2DAAqE;AACrE,iDAA2D;AAG3D,MAAM,eAAe,GAAG,IAAI,CAAA,CAAC,YAAY;AAEzC,MAAa,sBAAuB,SAAQ,yCAA0B;IAAtE;;QACE,YAAO,GAAG,+CAA+C,CAAA;QACzD,uBAAkB,GAAG,CAAC,0BAA0B,CAAC,CAAA;QAEjD,oBAAe,GAAG,IAAI,eAAe,EAAE,CAAA;QACvC,YAAO,GAA8C,SAAS,CAAA;QAE9D,0BAAqB,GAAG,OAAO,CAAC,GAAG,CAAC,wBAAwB;YAC1D,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC;YAChD,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA,CAAC,SAAS;IAyChC,CAAC;IAvCU,eAAe,CAAC,IAAY,EAAE,OAAyB;QAC9D,KAAK,CAAC,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;QAEpC,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CAAA;QAC5C,IAAI,CAAC,OAAO,GAAG,UAAU,CACvB,GAAG,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,EAClC,eAAe,CAChB,CAAA;IACH,CAAC;IAES,eAAe;QACvB,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,qBAAqB,EAAE,CAAA;IAC5C,CAAC;IAED,KAAK,CAAC,gBAAgB,CACpB,GAAW;QAEX,IAAI;YACF,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,GAAG,CAClC,mBAAmB,kBAAkB,CAAC,GAAG,CAAC,cAAc,CACzD,CAAA;YACD,IAAI,IAAI,CAAC,OAAO,EAAE;gBAChB,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;gBAC1B,IAAI,CAAC,OAAO,GAAG,SAAS,CAAA;aACzB;YACD,OAAO,aAAa,CAAA;SACrB;QAAC,OAAO,KAAK,EAAE;YACd,IAAI,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE;gBACzD,MAAM,IAAI,6BAAoB,CAAC;oBAC7B,IAAI,EAAE,4BAA4B;oBAClC,OAAO,EAAE,6CAA6C,eAAe,8BAA8B;oBACnG,UAAU,EAAE,GAAG;oBACf,gBAAgB,EAAE,IAAI,CAAC,kBAAkB;iBAC1C,CAAC,CAAA;aACH;YAED,MAAM,KAAK,CAAA;SACZ;IACH,CAAC;CACF;AAlDD,wDAkDC"}
@@ -1,11 +1,11 @@
1
- import { CacheOptions, WillSendRequestOptions } from '@apollo/datasource-rest/dist/RESTDataSource';
1
+ import { AugmentedRequest, CacheOptions } from '@apollo/datasource-rest';
2
2
  import { InstrumentedRESTDataSource } from './instrumented';
3
3
  export declare class TwitterDataSource extends InstrumentedRESTDataSource {
4
4
  baseURL: string;
5
5
  backendSystemCodes: string[];
6
6
  abortController: AbortController;
7
7
  timeout: ReturnType<typeof setTimeout> | undefined;
8
- willSendRequest(request: WillSendRequestOptions): void;
8
+ willSendRequest(path: string, request: AugmentedRequest): void;
9
9
  getTweet(tweetUrl: string): Promise<any>;
10
10
  cacheOptionsFor(): CacheOptions;
11
11
  }
@@ -12,14 +12,14 @@ class TwitterDataSource extends instrumented_1.InstrumentedRESTDataSource {
12
12
  this.abortController = new AbortController();
13
13
  this.timeout = undefined;
14
14
  }
15
- willSendRequest(request) {
16
- super.willSendRequest(request);
15
+ willSendRequest(path, request) {
16
+ super.willSendRequest(path, request);
17
17
  request.signal = this.abortController.signal;
18
18
  this.timeout = setTimeout(() => this.abortController.abort(), REQUEST_TIMEOUT);
19
19
  }
20
20
  async getTweet(tweetUrl) {
21
21
  try {
22
- const tweet = await this.get(`/oembed?url=${tweetUrl}&omit_script=true`);
22
+ const tweet = await this.get(`oembed?url=${tweetUrl}&omit_script=true`);
23
23
  if (this.timeout) {
24
24
  clearTimeout(this.timeout);
25
25
  this.timeout = undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"twitter.js","sourceRoot":"","sources":["../../src/datasources/twitter.ts"],"names":[],"mappings":";;;AAIA,2DAGuC;AACvC,iDAA2D;AAE3D,MAAM,eAAe,GAAG,IAAI,CAAA,CAAC,YAAY;AACzC,MAAa,iBAAkB,SAAQ,yCAA0B;IAAjE;;QACE,YAAO,GAAG,6BAA6B,CAAA;QACvC,uBAAkB,GAAG,CAAC,oBAAoB,CAAC,CAAA;QAE3C,oBAAe,GAAG,IAAI,eAAe,EAAE,CAAA;QACvC,YAAO,GAA8C,SAAS,CAAA;IAyChE,CAAC;IAvCU,eAAe,CAAC,OAA+B;QACtD,KAAK,CAAC,eAAe,CAAC,OAAO,CAAC,CAAA;QAE9B,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CAAA;QAC5C,IAAI,CAAC,OAAO,GAAG,UAAU,CACvB,GAAG,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,EAClC,eAAe,CAChB,CAAA;IACH,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,QAAgB;QAC7B,IAAI;YACF,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,eAAe,QAAQ,mBAAmB,CAAC,CAAA;YAExE,IAAI,IAAI,CAAC,OAAO,EAAE;gBAChB,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;gBAC1B,IAAI,CAAC,OAAO,GAAG,SAAS,CAAA;aACzB;YAED,OAAO,KAAK,CAAA;SACb;QAAC,OAAO,KAAK,EAAE;YACd,IAAI,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE;gBACzD,MAAM,IAAI,6BAAoB,CAAC;oBAC7B,IAAI,EAAE,4BAA4B;oBAClC,OAAO,EAAE,2CAA2C,eAAe,8BAA8B;oBACjG,UAAU,EAAE,GAAG;oBACf,gBAAgB,EAAE,IAAI,CAAC,kBAAkB;iBAC1C,CAAC,CAAA;aACH;YAED,MAAM,KAAK,CAAA;SACZ;IACH,CAAC;IAED,eAAe;QACb,iFAAiF;QACjF,oFAAoF;QACpF,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,CAAA;IACtB,CAAC;CACF;AA9CD,8CA8CC"}
1
+ {"version":3,"file":"twitter.js","sourceRoot":"","sources":["../../src/datasources/twitter.ts"],"names":[],"mappings":";;;AACA,2DAAqE;AACrE,iDAA2D;AAE3D,MAAM,eAAe,GAAG,IAAI,CAAA,CAAC,YAAY;AACzC,MAAa,iBAAkB,SAAQ,yCAA0B;IAAjE;;QACE,YAAO,GAAG,6BAA6B,CAAA;QACvC,uBAAkB,GAAG,CAAC,oBAAoB,CAAC,CAAA;QAE3C,oBAAe,GAAG,IAAI,eAAe,EAAE,CAAA;QACvC,YAAO,GAA8C,SAAS,CAAA;IAyChE,CAAC;IAvCU,eAAe,CAAC,IAAY,EAAE,OAAyB;QAC9D,KAAK,CAAC,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;QAEpC,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CAAA;QAC5C,IAAI,CAAC,OAAO,GAAG,UAAU,CACvB,GAAG,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,EAClC,eAAe,CAChB,CAAA;IACH,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,QAAgB;QAC7B,IAAI;YACF,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,cAAc,QAAQ,mBAAmB,CAAC,CAAA;YAEvE,IAAI,IAAI,CAAC,OAAO,EAAE;gBAChB,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;gBAC1B,IAAI,CAAC,OAAO,GAAG,SAAS,CAAA;aACzB;YAED,OAAO,KAAK,CAAA;SACb;QAAC,OAAO,KAAK,EAAE;YACd,IAAI,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE;gBACzD,MAAM,IAAI,6BAAoB,CAAC;oBAC7B,IAAI,EAAE,4BAA4B;oBAClC,OAAO,EAAE,2CAA2C,eAAe,8BAA8B;oBACjG,UAAU,EAAE,GAAG;oBACf,gBAAgB,EAAE,IAAI,CAAC,kBAAkB;iBAC1C,CAAC,CAAA;aACH;YAED,MAAM,KAAK,CAAA;SACZ;IACH,CAAC;IAED,eAAe;QACb,iFAAiF;QACjF,oFAAoF;QACpF,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,CAAA;IACtB,CAAC;CACF;AA9CD,8CA8CC"}
@@ -7,11 +7,12 @@ const CapiResponse_1 = require("../model/CapiResponse");
7
7
  const capiObject_1 = require("./capiObject");
8
8
  const clone_deep_1 = __importDefault(require("clone-deep"));
9
9
  const now = Date.now();
10
+ const addSurrogateKeys = (ids) => {
11
+ const keys = [];
12
+ keys.push(...ids);
13
+ };
10
14
  exports.default = {
11
- addSurrogateKeys: (ids) => {
12
- const keys = [];
13
- keys.push(...ids);
14
- },
15
+ addSurrogateKeys,
15
16
  dataSources: {
16
17
  vanityUrls: {
17
18
  get: (url) => Promise.resolve(url),
@@ -21,7 +22,7 @@ exports.default = {
21
22
  ...capiObject_1.baseCapiObject,
22
23
  id,
23
24
  publishedDate: new Date(now + parseInt(id.slice(-1), 10)).toISOString(),
24
- }), {})),
25
+ }), { addSurrogateKeys })),
25
26
  },
26
27
  },
27
28
  };
@@ -1 +1 @@
1
- {"version":3,"file":"dummyContext.js","sourceRoot":"","sources":["../../src/fixtures/dummyContext.ts"],"names":[],"mappings":";;;;;AAAA,wDAAoD;AACpD,6CAA6C;AAC7C,4DAAkC;AAElC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;AAEtB,kBAAe;IACb,gBAAgB,EAAE,CAAC,GAAa,EAAE,EAAE;QAClC,MAAM,IAAI,GAAG,EAAE,CAAA;QACf,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,CAAA;IACnB,CAAC;IACD,WAAW,EAAE;QACX,UAAU,EAAE;YACV,GAAG,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC;SAC3C;QACD,IAAI,EAAE;YACJ,UAAU,EAAE,CAAC,EAAU,EAAE,EAAE,CACzB,OAAO,CAAC,OAAO,CACb,IAAI,2BAAY,CACd,IAAA,oBAAS,EAAC;gBACR,GAAG,2BAAc;gBACjB,EAAE;gBACF,aAAa,EAAE,IAAI,IAAI,CACrB,GAAG,GAAG,QAAQ,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACjC,CAAC,WAAW,EAAE;aAChB,CAAC,EACF,EAA6B,CAC9B,CACF;SACJ;KACF;CACyB,CAAA"}
1
+ {"version":3,"file":"dummyContext.js","sourceRoot":"","sources":["../../src/fixtures/dummyContext.ts"],"names":[],"mappings":";;;;;AAAA,wDAAoD;AACpD,6CAA6C;AAC7C,4DAAkC;AAElC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;AAEtB,MAAM,gBAAgB,GAAG,CAAC,GAAa,EAAE,EAAE;IACzC,MAAM,IAAI,GAAG,EAAE,CAAA;IACf,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,CAAA;AACnB,CAAC,CAAA;AAED,kBAAe;IACb,gBAAgB;IAChB,WAAW,EAAE;QACX,UAAU,EAAE;YACV,GAAG,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC;SAC3C;QACD,IAAI,EAAE;YACJ,UAAU,EAAE,CAAC,EAAU,EAAE,EAAE,CACzB,OAAO,CAAC,OAAO,CACb,IAAI,2BAAY,CACd,IAAA,oBAAS,EAAC;gBACR,GAAG,2BAAc;gBACjB,EAAE;gBACF,aAAa,EAAE,IAAI,IAAI,CACrB,GAAG,GAAG,QAAQ,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACjC,CAAC,WAAW,EAAE;aAChB,CAAC,EACF,EAAE,gBAAgB,EAAkB,CACrC,CACF;SACJ;KACF;CACyB,CAAA"}
@@ -15,56 +15,7 @@ export declare class CapiResponse {
15
15
  private context;
16
16
  private packageContainer?;
17
17
  constructor(capiData: ContentTypeSchemas, context: QueryContext, packageContainer?: CapiResponse | undefined);
18
- static fromJSON(content: any, context: QueryContext, packageContainer?: CapiResponse): CapiResponse;
19
- schema(): import("zod").ZodObject<Pick<{
20
- title: import("zod").ZodString;
21
- standfirst: import("zod").ZodOptional<import("zod").ZodString>;
22
- byline: import("zod").ZodOptional<import("zod").ZodString>;
23
- bodyXML: import("zod").ZodString;
24
- summary: import("zod").ZodObject<{
25
- bodyXML: import("zod").ZodString;
26
- }, "strip", import("zod").ZodTypeAny, {
27
- bodyXML: string;
28
- }, {
29
- bodyXML: string;
30
- }>;
31
- alternativeTitles: import("zod").ZodOptional<import("zod").ZodObject<{
32
- promotionalTitle: import("zod").ZodString;
33
- }, "strip", import("zod").ZodTypeAny, {
34
- promotionalTitle: string;
35
- }, {
36
- promotionalTitle: string;
37
- }>>;
38
- alternativeStandfirsts: import("zod").ZodOptional<import("zod").ZodObject<{
39
- promotionalStandfirst: import("zod").ZodOptional<import("zod").ZodString>;
40
- }, "strip", import("zod").ZodTypeAny, {
41
- promotionalStandfirst?: string | undefined;
42
- }, {
43
- promotionalStandfirst?: string | undefined;
44
- }>>;
45
- pinnedPosts: import("zod").ZodArray<import("zod").ZodString, "many">;
46
- contains: import("zod").ZodArray<import("zod").ZodObject<{
47
- id: import("zod").ZodString;
48
- apiUrl: import("zod").ZodString;
49
- }, "strip", import("zod").ZodTypeAny, {
50
- id: string;
51
- apiUrl: string;
52
- }, {
53
- id: string;
54
- apiUrl: string;
55
- }>, "many">;
56
- design: import("zod").ZodObject<{
57
- theme: import("zod").ZodUnion<[import("zod").ZodLiteral<"special-report">, import("zod").ZodLiteral<"extra">, import("zod").ZodLiteral<"basic">, import("zod").ZodLiteral<"extra-wide">]>;
58
- }, "strip", import("zod").ZodTypeAny, {
59
- theme: "special-report" | "extra" | "basic" | "extra-wide";
60
- }, {
61
- theme: "special-report" | "extra" | "basic" | "extra-wide";
62
- }>;
63
- }, "title">, "strip", import("zod").ZodTypeAny, {
64
- title: string;
65
- }, {
66
- title: string;
67
- }>;
18
+ static fromJSON(content: unknown, context: QueryContext, packageContainer?: CapiResponse): CapiResponse;
68
19
  bodyXML(): string | null;
69
20
  embeds(): (ImageSet | ClipSet)[];
70
21
  byline(): string | null;
@@ -23,6 +23,13 @@ const capi_1 = require("./schemas/capi");
23
23
  const scalars_1 = require("../resolvers/scalars");
24
24
  const literal_union_1 = require("../resolvers/literal-union");
25
25
  const Topper_1 = require("./Topper");
26
+ const zod_1 = require("zod");
27
+ function isPlainObject(object) {
28
+ if (object && typeof object === 'object') {
29
+ return true;
30
+ }
31
+ return false;
32
+ }
26
33
  function flattenFormattedZodIssues(issues, object, path = [], flattened = []) {
27
34
  if (issues._errors.length > 0) {
28
35
  const literalErrors = issues._errors.filter((error) => error.startsWith('Invalid literal value'));
@@ -45,13 +52,27 @@ function flattenFormattedZodIssues(issues, object, path = [], flattened = []) {
45
52
  if (key !== '_errors' &&
46
53
  !Array.isArray(value) &&
47
54
  object &&
48
- (Array.isArray(object) || typeof object === 'object')) {
55
+ (Array.isArray(object) || isPlainObject(object))) {
49
56
  const isArrayKey = !Number.isNaN(parseInt(key));
50
57
  flattenFormattedZodIssues(value, Array.isArray(object) ? object[parseInt(key)] : object[key], [...path, isArrayKey ? '[]' : key], flattened);
51
58
  }
52
59
  }
53
60
  return flattened;
54
61
  }
62
+ function getContentType(content, validate = true) {
63
+ const TYPE_REGEX = /https?:\/\/www.ft.com\/ontology\/content\//;
64
+ const useType = 'type' in content && content.type ? content.type : content.types[0];
65
+ const type = useType.replace(TYPE_REGEX, '');
66
+ if (validate && !(0, literal_union_1.validLiteralUnionValue)(type, scalars_1.ContentType.values)) {
67
+ throw new Error('Content type is invalid: ' + useType);
68
+ }
69
+ return type;
70
+ }
71
+ const baselineContentSchema = zod_1.z.object({
72
+ id: zod_1.z.string(),
73
+ type: zod_1.z.string().optional(),
74
+ types: zod_1.z.array(zod_1.z.string()),
75
+ });
55
76
  class CapiResponse {
56
77
  constructor(capiData, context, packageContainer) {
57
78
  this.capiData = capiData;
@@ -60,14 +81,18 @@ class CapiResponse {
60
81
  _CapiResponse_instances.add(this);
61
82
  }
62
83
  static fromJSON(content, context, packageContainer) {
63
- const model = new CapiResponse(content, context, packageContainer);
84
+ // if the content doesn't meet the baseline schema, something's gone
85
+ // unexpectedly very wrong. throwing an non-operational error is the
86
+ // right thing to do in that case, so we call .parse not .safeParse
87
+ const baseContent = baselineContentSchema.parse(content);
88
+ const type = getContentType(baseContent);
64
89
  /*
65
90
  * Check if the incoming data matches the types defined in our data source schema
66
91
  * Our data source schema should handle all possible response from CAPI
67
92
  * As there is no agreed schema provided by CAPI there is a chance it will be out of date / incorrect at times
68
93
  * Manual updates will be required at times to keep it in sync with the responses we receive
69
94
  */
70
- const schemaResponse = model.schema().safeParse(content);
95
+ const schemaResponse = (0, capi_1.schemas)(type).safeParse(content);
71
96
  /*
72
97
  * Log an error if the response fails validation
73
98
  * Logs should be used to warn us of issues or response changes
@@ -80,19 +105,18 @@ class CapiResponse {
80
105
  message: 'The data received from the CAPI data source does not match our data source schema. It is likely that our schema will require updating to handle all possible responses from CAPI.',
81
106
  code: 'CAPI_SCHEMA_VALIDATION_FAILURE',
82
107
  schemaError: flattenFormattedZodIssues(schemaResponse.error.format(), content),
83
- contentId: content.id,
84
- contentType: model.type(false),
108
+ contentId: baseContent.id,
109
+ contentType: type,
85
110
  }),
86
111
  });
87
- context.metrics?.count(`graphql.datasource.CapiDataSource.${model.type(false)}.validation.failure.count`, 1);
112
+ context.metrics?.count(`graphql.datasource.CapiDataSource.${type}.validation.failure.count`, 1);
88
113
  }
89
114
  else {
90
- context.metrics?.count(`graphql.datasource.CapiDataSource.${model.type(false)}.validation.success.count`, 1);
115
+ context.metrics?.count(`graphql.datasource.CapiDataSource.${type}.validation.success.count`, 1);
91
116
  }
92
- return model;
93
- }
94
- schema() {
95
- return (0, capi_1.schemas)(this.type());
117
+ // we can "safely" cast content to the schema return types here. if the type is
118
+ // incorrect, we've at least logged that error.
119
+ return new CapiResponse(content, context, packageContainer);
96
120
  }
97
121
  bodyXML() {
98
122
  if ('bodyXML' in this.capiData) {
@@ -197,7 +221,9 @@ class CapiResponse {
197
221
  return this.capiData.title;
198
222
  }
199
223
  id() {
200
- return (0, metadata_1.uuidFromUrl)(this.capiData.id);
224
+ const uuid = (0, metadata_1.uuidFromUrl)(this.capiData.id);
225
+ this.context.addSurrogateKeys([uuid]);
226
+ return uuid;
201
227
  }
202
228
  standfirst() {
203
229
  if ('standfirst' in this.capiData && this.capiData.standfirst) {
@@ -286,15 +312,12 @@ class CapiResponse {
286
312
  return url.replace(RELATIVE_URL_REGEX, '');
287
313
  }
288
314
  type(validate = true) {
289
- const TYPE_REGEX = /https?:\/\/www.ft.com\/ontology\/content\//;
290
- const useType = 'type' in this.capiData && this.capiData.type
291
- ? this.capiData.type
292
- : this.capiData.types[0];
293
- const type = useType.replace(TYPE_REGEX, '');
294
- if (validate && !(0, literal_union_1.validLiteralUnionValue)(type, scalars_1.ContentType.values)) {
295
- throw new Error('Content type is invalid: ' + useType);
315
+ if (validate) {
316
+ return getContentType(this.capiData, true);
317
+ }
318
+ else {
319
+ return getContentType(this.capiData, false);
296
320
  }
297
- return type;
298
321
  }
299
322
  topperHasImage() {
300
323
  const topper = new Topper_1.Topper(this, this.context);
@@ -1 +1 @@
1
- {"version":3,"file":"CapiResponse.js","sourceRoot":"","sources":["../../src/model/CapiResponse.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CapiResponse.js","sourceRoot":"","sources":["../../src/model/CapiResponse.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ import * as cheerio from 'cheerio';
2
2
  import type { ContentTree } from '@financial-times/content-tree';
3
3
  import { AnyNode } from './Workarounds';
4
4
  import { QueryContext } from '../..';
5
- type ContentTreeTransform = ($el: cheerio.Cheerio<any>, traverse: () => AnyNode[], context?: QueryContext) => AnyNode | AnyNode[];
5
+ type ContentTreeTransform = ($el: cheerio.Cheerio<cheerio.Element>, traverse: () => AnyNode[], context?: QueryContext) => AnyNode | AnyNode[];
6
6
  export type TagMappings = Record<string, ContentTreeTransform>;
7
7
  export default function bodyXMLToTree(xml: string, tagMappings: TagMappings, context?: QueryContext): ContentTree.Body;
8
8
  export {};