@financial-times/cp-content-pipeline-schema 3.7.3 → 3.8.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.
- package/CHANGELOG.md +12 -0
- package/lib/datasources/capi.d.ts +4 -4
- package/lib/datasources/capi.js +4 -4
- package/lib/datasources/capi.js.map +1 -1
- package/lib/datasources/capi.test.js +3 -3
- package/lib/datasources/capi.test.js.map +1 -1
- package/lib/fixtures/dummyContext.js +2 -2
- package/lib/fixtures/dummyContext.js.map +1 -1
- package/lib/generated/index.d.ts +41 -23
- package/lib/model/Byline.d.ts +2 -2
- package/lib/model/Byline.js.map +1 -1
- package/lib/model/{CapiResponse.d.ts → Content.d.ts} +13 -12
- package/lib/model/{CapiResponse.js → Content.js} +14 -7
- package/lib/model/Content.js.map +1 -0
- package/lib/model/{CapiResponse.test.js → Content.test.js} +56 -15
- package/lib/model/Content.test.js.map +1 -0
- package/lib/model/LeadFlourish.d.ts +2 -2
- package/lib/model/LeadFlourish.js.map +1 -1
- package/lib/model/LeadFlourish.test.js +3 -3
- package/lib/model/LeadFlourish.test.js.map +1 -1
- package/lib/model/{CapiList.d.ts → List.d.ts} +5 -5
- package/lib/model/{CapiList.js → List.js} +5 -5
- package/lib/model/List.js.map +1 -0
- package/lib/model/RichText.d.ts +2 -2
- package/lib/model/RichText.js.map +1 -1
- package/lib/model/Topper.d.ts +2 -2
- package/lib/model/Topper.js.map +1 -1
- package/lib/model/Topper.test.js +22 -22
- package/lib/model/Topper.test.js.map +1 -1
- package/lib/model/schemas/capi/article.d.ts +5 -1
- package/lib/model/schemas/capi/article.js +1 -0
- package/lib/model/schemas/capi/article.js.map +1 -1
- package/lib/model/schemas/capi/audio.d.ts +5 -1
- package/lib/model/schemas/capi/audio.js +1 -0
- package/lib/model/schemas/capi/audio.js.map +1 -1
- package/lib/model/schemas/capi/base-schema.d.ts +5 -0
- package/lib/model/schemas/capi/base-schema.js +1 -0
- package/lib/model/schemas/capi/base-schema.js.map +1 -1
- package/lib/model/schemas/capi/content-package.d.ts +5 -1
- package/lib/model/schemas/capi/content-package.js +1 -0
- package/lib/model/schemas/capi/content-package.js.map +1 -1
- package/lib/model/schemas/capi/custom-code-component.d.ts +3 -0
- package/lib/model/schemas/capi/index.d.ts +28 -5
- package/lib/model/schemas/capi/live-blog-package.d.ts +5 -1
- package/lib/model/schemas/capi/live-blog-package.js +1 -0
- package/lib/model/schemas/capi/live-blog-package.js.map +1 -1
- package/lib/model/schemas/capi/placeholder.d.ts +5 -1
- package/lib/model/schemas/capi/placeholder.js +1 -0
- package/lib/model/schemas/capi/placeholder.js.map +1 -1
- package/lib/model/schemas/capi/video.d.ts +5 -1
- package/lib/model/schemas/capi/video.js +1 -0
- package/lib/model/schemas/capi/video.js.map +1 -1
- package/lib/resolvers/content-tree/references/CustomCodeComponent.js.map +1 -1
- package/lib/resolvers/content-tree/references/Recommended.d.ts +1 -1
- package/lib/resolvers/content-tree/references/index.d.ts +2 -2
- package/lib/resolvers/content-tree/tagMappings.d.ts +2 -2
- package/lib/resolvers/content-tree/tagMappings.js.map +1 -1
- package/lib/resolvers/content-tree/updateTreeWithReferenceIds.d.ts +2 -2
- package/lib/resolvers/content-tree/updateTreeWithReferenceIds.js.map +1 -1
- package/lib/resolvers/content.d.ts +251 -235
- package/lib/resolvers/content.js +27 -0
- package/lib/resolvers/content.js.map +1 -1
- package/lib/resolvers/core.d.ts +4 -4
- package/lib/resolvers/core.js +2 -2
- package/lib/resolvers/core.js.map +1 -1
- package/lib/resolvers/index.d.ts +276 -260
- package/lib/resolvers/list.d.ts +9 -9
- package/lib/resolvers/teaser.d.ts +13 -13
- package/package.json +1 -1
- package/queries/article.graphql +19 -0
- package/src/datasources/capi.test.ts +3 -3
- package/src/datasources/capi.ts +6 -9
- package/src/fixtures/dummyContext.ts +2 -2
- package/src/generated/index.ts +41 -23
- package/src/model/Byline.ts +2 -2
- package/src/model/{CapiResponse.test.ts → Content.test.ts} +65 -17
- package/src/model/{CapiResponse.ts → Content.ts} +24 -17
- package/src/model/LeadFlourish.test.ts +6 -5
- package/src/model/LeadFlourish.ts +2 -5
- package/src/model/{CapiList.ts → List.ts} +5 -5
- package/src/model/RichText.ts +2 -2
- package/src/model/Topper.test.ts +23 -26
- package/src/model/Topper.ts +2 -5
- package/src/model/schemas/capi/article.ts +1 -0
- package/src/model/schemas/capi/audio.ts +1 -0
- package/src/model/schemas/capi/base-schema.ts +1 -0
- package/src/model/schemas/capi/content-package.ts +1 -0
- package/src/model/schemas/capi/live-blog-package.ts +1 -0
- package/src/model/schemas/capi/placeholder.ts +1 -0
- package/src/model/schemas/capi/video.ts +1 -0
- package/src/resolvers/content-tree/references/CustomCodeComponent.ts +2 -2
- package/src/resolvers/content-tree/references/index.ts +2 -2
- package/src/resolvers/content-tree/tagMappings.ts +2 -2
- package/src/resolvers/content-tree/updateTreeWithReferenceIds.ts +2 -2
- package/src/resolvers/content.ts +27 -0
- package/src/resolvers/core.ts +2 -2
- package/tsconfig.tsbuildinfo +1 -1
- package/typedefs/content.graphql +19 -1
- package/lib/model/CapiList.js.map +0 -1
- package/lib/model/CapiResponse.js.map +0 -1
- package/lib/model/CapiResponse.test.js.map +0 -1
- /package/lib/model/{CapiResponse.test.d.ts → Content.test.d.ts} +0 -0
|
@@ -3,15 +3,15 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const
|
|
6
|
+
const Content_1 = require("./Content");
|
|
7
7
|
const capiObject_1 = require("../fixtures/capiObject");
|
|
8
8
|
const clone_deep_1 = __importDefault(require("clone-deep"));
|
|
9
9
|
const dummyContext_1 = __importDefault(require("../fixtures/dummyContext"));
|
|
10
|
-
describe('
|
|
10
|
+
describe('Content', () => {
|
|
11
11
|
describe('Content ID', () => {
|
|
12
12
|
test('returns the UUID', () => {
|
|
13
13
|
const article = (0, clone_deep_1.default)(capiObject_1.baseCapiObject);
|
|
14
|
-
const capiResponse = new
|
|
14
|
+
const capiResponse = new Content_1.Content(article, dummyContext_1.default);
|
|
15
15
|
expect(capiResponse.id()).toEqual('3071cae8-a27c-4ab4-a0d4-7bb00df1d477');
|
|
16
16
|
});
|
|
17
17
|
});
|
|
@@ -19,7 +19,7 @@ describe('CAPI response', () => {
|
|
|
19
19
|
test(`uses first entry in types if there's no type`, () => {
|
|
20
20
|
const article = (0, clone_deep_1.default)(capiObject_1.baseCapiObject);
|
|
21
21
|
delete article.type;
|
|
22
|
-
const capiResponseArticle = new
|
|
22
|
+
const capiResponseArticle = new Content_1.Content(article, dummyContext_1.default);
|
|
23
23
|
expect(capiResponseArticle.type()).toEqual('Article');
|
|
24
24
|
});
|
|
25
25
|
test('converts valid content types to their name', async () => {
|
|
@@ -28,8 +28,8 @@ describe('CAPI response', () => {
|
|
|
28
28
|
...capiObject_1.baseCapiObject,
|
|
29
29
|
type: 'http://www.ft.com/ontology/content/LiveBlogPackage',
|
|
30
30
|
});
|
|
31
|
-
const capiResponseArticle = new
|
|
32
|
-
const capiResponseLiveBlogPackage = new
|
|
31
|
+
const capiResponseArticle = new Content_1.Content(article, dummyContext_1.default);
|
|
32
|
+
const capiResponseLiveBlogPackage = new Content_1.Content(liveBlogPackage, dummyContext_1.default);
|
|
33
33
|
expect(capiResponseArticle.type()).toEqual('Article');
|
|
34
34
|
expect(capiResponseLiveBlogPackage.type()).toEqual('LiveBlogPackage');
|
|
35
35
|
});
|
|
@@ -38,21 +38,21 @@ describe('CAPI response', () => {
|
|
|
38
38
|
...capiObject_1.baseCapiObject,
|
|
39
39
|
type: 'http://www.ft.com/ontology/content/Unknown',
|
|
40
40
|
});
|
|
41
|
-
const capiResponse = new
|
|
41
|
+
const capiResponse = new Content_1.Content(unknown, dummyContext_1.default);
|
|
42
42
|
expect(() => capiResponse.type()).toThrowError('Content type is invalid: http://www.ft.com/ontology/content/Unknown');
|
|
43
43
|
});
|
|
44
44
|
});
|
|
45
45
|
describe('Publish timestamp', () => {
|
|
46
46
|
test('generates a timestamp from the published date', () => {
|
|
47
47
|
const article = (0, clone_deep_1.default)(capiObject_1.baseCapiObject);
|
|
48
|
-
const capiResponse = new
|
|
48
|
+
const capiResponse = new Content_1.Content(article, dummyContext_1.default);
|
|
49
49
|
expect(capiResponse.publishedTimestamp()).toEqual(1712052009935);
|
|
50
50
|
});
|
|
51
51
|
});
|
|
52
52
|
describe('Modified timestamp', () => {
|
|
53
53
|
test('generates a timestamp from the last modified date', () => {
|
|
54
54
|
const article = (0, clone_deep_1.default)(capiObject_1.baseCapiObject);
|
|
55
|
-
const capiResponse = new
|
|
55
|
+
const capiResponse = new Content_1.Content(article, dummyContext_1.default);
|
|
56
56
|
expect(capiResponse.modifiedTimestamp()).toEqual(1712061296789);
|
|
57
57
|
});
|
|
58
58
|
});
|
|
@@ -76,7 +76,7 @@ describe('CAPI response', () => {
|
|
|
76
76
|
},
|
|
77
77
|
],
|
|
78
78
|
});
|
|
79
|
-
const capiResponse = new
|
|
79
|
+
const capiResponse = new Content_1.Content(liveBlogPackage, dummyContext_1.default);
|
|
80
80
|
const liveBlogPosts = await capiResponse.liveBlogPosts();
|
|
81
81
|
expect(liveBlogPosts[0]?.id()).toEqual('00000000-0000-0000-0000-000000000002');
|
|
82
82
|
expect(liveBlogPosts[1]?.id()).toEqual('00000000-0000-0000-0000-000000000001');
|
|
@@ -97,7 +97,7 @@ describe('CAPI response', () => {
|
|
|
97
97
|
};
|
|
98
98
|
}),
|
|
99
99
|
});
|
|
100
|
-
const capiResponse = new
|
|
100
|
+
const capiResponse = new Content_1.Content(liveBlogPackage, dummyContext_1.default);
|
|
101
101
|
test('returns all posts when no argument specified', async () => {
|
|
102
102
|
const liveBlogPostsConnection = await capiResponse.liveBlogPostsConnection({});
|
|
103
103
|
expect(liveBlogPostsConnection.edges).toHaveLength(postCount);
|
|
@@ -177,7 +177,7 @@ describe('CAPI response', () => {
|
|
|
177
177
|
'http://www.ft.com/thing/724b5e36-6d45-4cf1-b1c2-3f676b21f21b',
|
|
178
178
|
],
|
|
179
179
|
});
|
|
180
|
-
const capiResponse = new
|
|
180
|
+
const capiResponse = new Content_1.Content(article, dummyContext_1.default);
|
|
181
181
|
expect(capiResponse.isPartnerContent()).toBe(true);
|
|
182
182
|
});
|
|
183
183
|
test('should have `isPartnerContent` set correctly as `false` if publication field is not set', () => {
|
|
@@ -185,7 +185,7 @@ describe('CAPI response', () => {
|
|
|
185
185
|
...capiObject_1.baseCapiObject,
|
|
186
186
|
publication: null,
|
|
187
187
|
});
|
|
188
|
-
const capiResponse = new
|
|
188
|
+
const capiResponse = new Content_1.Content(article, dummyContext_1.default);
|
|
189
189
|
expect(capiResponse.isPartnerContent()).toBe(false);
|
|
190
190
|
});
|
|
191
191
|
});
|
|
@@ -195,12 +195,53 @@ describe('CAPI response', () => {
|
|
|
195
195
|
const authorAnnotation = article.annotations[2];
|
|
196
196
|
const timingOutContext = (0, clone_deep_1.default)(dummyContext_1.default);
|
|
197
197
|
timingOutContext.dataSources.capi.getPerson = () => Promise.reject(new DOMException(undefined, 'TimeoutError'));
|
|
198
|
-
const capiResponse = new
|
|
198
|
+
const capiResponse = new Content_1.Content(article, timingOutContext);
|
|
199
199
|
const authors = await capiResponse.authors();
|
|
200
200
|
const primaryAuthor = await capiResponse.primaryAuthor();
|
|
201
201
|
expect(authors[0]).toEqual(primaryAuthor);
|
|
202
202
|
expect(primaryAuthor?.['person'].id).toBe(authorAnnotation.id);
|
|
203
203
|
});
|
|
204
204
|
});
|
|
205
|
+
describe('isFTEdit', () => {
|
|
206
|
+
test('identifies articles that are part of an FT Edit edition', () => {
|
|
207
|
+
const article = (0, clone_deep_1.default)({
|
|
208
|
+
...capiObject_1.baseCapiObject,
|
|
209
|
+
internalAnalyticsTags: 'ftedit',
|
|
210
|
+
});
|
|
211
|
+
const capiResponse = new Content_1.Content(article, dummyContext_1.default);
|
|
212
|
+
expect(capiResponse.isFTEdit()).toBe(true);
|
|
213
|
+
});
|
|
214
|
+
test('identifies articles that are not part of an FT Edit edition', () => {
|
|
215
|
+
const article = (0, clone_deep_1.default)({
|
|
216
|
+
...capiObject_1.baseCapiObject,
|
|
217
|
+
internalAnalyticsTags: 'test',
|
|
218
|
+
});
|
|
219
|
+
const capiResponse = new Content_1.Content(article, dummyContext_1.default);
|
|
220
|
+
expect(capiResponse.isFTEdit()).toBe(false);
|
|
221
|
+
});
|
|
222
|
+
test('ignores typos', () => {
|
|
223
|
+
const article = (0, clone_deep_1.default)({
|
|
224
|
+
...capiObject_1.baseCapiObject,
|
|
225
|
+
internalAnalyticsTags: 'ft edit',
|
|
226
|
+
});
|
|
227
|
+
const capiResponse = new Content_1.Content(article, dummyContext_1.default);
|
|
228
|
+
expect(capiResponse.isFTEdit()).toBe(false);
|
|
229
|
+
});
|
|
230
|
+
test('handles multiple values', () => {
|
|
231
|
+
const article = (0, clone_deep_1.default)({
|
|
232
|
+
...capiObject_1.baseCapiObject,
|
|
233
|
+
internalAnalyticsTags: 'test,ftedit,test2',
|
|
234
|
+
});
|
|
235
|
+
const capiResponse = new Content_1.Content(article, dummyContext_1.default);
|
|
236
|
+
expect(capiResponse.isFTEdit()).toBe(true);
|
|
237
|
+
});
|
|
238
|
+
test('handles missing `internalAnalyticsTags` property', () => {
|
|
239
|
+
const article = (0, clone_deep_1.default)({
|
|
240
|
+
...capiObject_1.baseCapiObject,
|
|
241
|
+
});
|
|
242
|
+
const capiResponse = new Content_1.Content(article, dummyContext_1.default);
|
|
243
|
+
expect(capiResponse.isFTEdit()).toBe(false);
|
|
244
|
+
});
|
|
245
|
+
});
|
|
205
246
|
});
|
|
206
|
-
//# sourceMappingURL=
|
|
247
|
+
//# sourceMappingURL=Content.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Content.test.js","sourceRoot":"","sources":["../../src/model/Content.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Content } from './Content';
|
|
2
2
|
import type { QueryContext } from '..';
|
|
3
3
|
import { FlourishSource } from './FlourishSource';
|
|
4
4
|
export declare class LeadFlourish {
|
|
5
5
|
#private;
|
|
6
6
|
private capiResponse;
|
|
7
7
|
private context;
|
|
8
|
-
constructor(capiResponse:
|
|
8
|
+
constructor(capiResponse: Content, context: QueryContext);
|
|
9
9
|
fallbackImage(): Promise<FlourishSource | null>;
|
|
10
10
|
id(): string | null;
|
|
11
11
|
type(): string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LeadFlourish.js","sourceRoot":"","sources":["../../src/model/LeadFlourish.ts"],"names":[],"mappings":";;;AAEA,qDAAiD;AAEjD,MAAa,YAAY;
|
|
1
|
+
{"version":3,"file":"LeadFlourish.js","sourceRoot":"","sources":["../../src/model/LeadFlourish.ts"],"names":[],"mappings":";;;AAEA,qDAAiD;AAEjD,MAAa,YAAY;IAEH;IAA+B;IADnD,WAAW,CAAQ;IACnB,YAAoB,YAAqB,EAAU,OAAqB;QAApD,iBAAY,GAAZ,YAAY,CAAS;QAAU,YAAO,GAAP,OAAO,CAAc;QACtE,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,UAAU,IAAI,qBAAqB,CAAA;IAChE,CAAC;IAED,KAAK,CAAC,aAAa;QACjB,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,CAAA;QACrD,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,OAAO,IAAI,CAAA;QACb,CAAC;QAED,OAAO,+BAAc,CAAC,kBAAkB,CAAC,YAAY,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;IACtE,CAAC;IAED,EAAE;QACA,OAAO,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,EAAE,EAAE,IAAI,IAAI,CAAA;IACrD,CAAC;IAED,IAAI;QACF,OAAO,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,EAAE,IAAI,IAAI,eAAe,CAAA;IAClE,CAAC;IAED,WAAW;QACT,OAAO,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,EAAE,WAAW,IAAI,EAAE,CAAA;IAC5D,CAAC;CACF;AA1BD,oCA0BC"}
|
|
@@ -5,7 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const LeadFlourish_1 = require("./LeadFlourish");
|
|
7
7
|
const FlourishSource_1 = require("./FlourishSource");
|
|
8
|
-
const
|
|
8
|
+
const Content_1 = require("./Content");
|
|
9
9
|
const capiObject_1 = require("../fixtures/capiObject");
|
|
10
10
|
const clone_deep_1 = __importDefault(require("clone-deep"));
|
|
11
11
|
const context = {};
|
|
@@ -26,9 +26,9 @@ describe('LeadFlourish', () => {
|
|
|
26
26
|
};
|
|
27
27
|
jest.spyOn(FlourishSource_1.FlourishSource, 'getImageMetadata').mockResolvedValue({
|
|
28
28
|
width: 800,
|
|
29
|
-
height: 600
|
|
29
|
+
height: 600,
|
|
30
30
|
});
|
|
31
|
-
const capiResponse = new
|
|
31
|
+
const capiResponse = new Content_1.Content(clonedBase, context);
|
|
32
32
|
leadFlourish = new LeadFlourish_1.LeadFlourish(capiResponse, context);
|
|
33
33
|
});
|
|
34
34
|
describe('fallbackImage', () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LeadFlourish.test.js","sourceRoot":"","sources":["../../src/model/LeadFlourish.test.ts"],"names":[],"mappings":";;;;;AAAA,iDAA6C;AAC7C,qDAAiD;AACjD,
|
|
1
|
+
{"version":3,"file":"LeadFlourish.test.js","sourceRoot":"","sources":["../../src/model/LeadFlourish.test.ts"],"names":[],"mappings":";;;;;AAAA,iDAA6C;AAC7C,qDAAiD;AACjD,uCAAmC;AACnC,uDAAuD;AAEvD,4DAAkC;AAElC,MAAM,OAAO,GAAG,EAA6B,CAAA;AAE7C,MAAM,gBAAgB,GAAG;IACvB,EAAE,EAAE,SAAS;IACb,WAAW,EAAE,kBAAkB;IAC/B,IAAI,EAAE,WAAW;CAClB,CAAA;AAED,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;IAC5B,IAAI,YAA0B,CAAA;IAE9B,UAAU,CAAC,GAAG,EAAE;QACd,MAAM,UAAU,GAAG,IAAA,oBAAS,EAAC,2BAAc,CAAC,CAAA;QAC5C,UAAU,CAAC,YAAY,GAAG,gBAAgB,CAAA;QAC1C,UAAU,CAAC,MAAM,GAAG;YAClB,MAAM,EAAE,UAAU;YAClB,WAAW,EAAE,YAAY;YACzB,gBAAgB,EAAE,OAAO;SAC1B,CAAA;QACD,IAAI,CAAC,KAAK,CAAC,+BAAc,EAAE,kBAAkB,CAAC,CAAC,iBAAiB,CAAC;YAC/D,KAAK,EAAE,GAAG;YACV,MAAM,EAAE,GAAG;SACZ,CAAC,CAAA;QACF,MAAM,YAAY,GAAG,IAAI,iBAAO,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;QACrD,YAAY,GAAG,IAAI,2BAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAA;IACxD,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;QAC7B,EAAE,CAAC,yCAAyC,EAAE,KAAK,IAAI,EAAE;YACvD,MAAM,MAAM,CAAC,YAAY,CAAC,aAAa,EAAE,CAAC,CAAC,QAAQ,CAAC,cAAc,CAChE,+BAAc,CACf,CAAA;QACH,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,IAAI,EAAE,GAAG,EAAE;QAClB,EAAE,CAAC,sBAAsB,EAAE,GAAG,EAAE;YAC9B,MAAM,MAAM,GAAG,YAAY,CAAC,EAAE,EAAE,CAAA;YAEhC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QAChC,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,MAAM,EAAE,GAAG,EAAE;QACpB,EAAE,CAAC,wBAAwB,EAAE,GAAG,EAAE;YAChC,MAAM,MAAM,GAAG,YAAY,CAAC,IAAI,EAAE,CAAA;YAElC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;QAClC,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;QAC3B,EAAE,CAAC,+BAA+B,EAAE,GAAG,EAAE;YACvC,MAAM,eAAe,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,sBAAsB,CAAC,CAAA;YACzE,YAAY,CAAC,WAAW,GAAG,eAAe,CAAA;YAE1C,MAAM,MAAM,GAAG,YAAY,CAAC,WAAW,EAAE,CAAA;YAEzC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAA;YAC3C,MAAM,CAAC,eAAe,CAAC,CAAC,gBAAgB,EAAE,CAAA;QAC5C,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { QueryContext } from '..';
|
|
2
|
-
import { List } from './schemas/capi/list';
|
|
3
|
-
export declare class
|
|
2
|
+
import { List as ListSchema } from './schemas/capi/list';
|
|
3
|
+
export declare class List {
|
|
4
4
|
private list;
|
|
5
5
|
private context;
|
|
6
|
-
static fromJSON(list: unknown, context: QueryContext):
|
|
7
|
-
constructor(list:
|
|
8
|
-
items(): Promise<import("./
|
|
6
|
+
static fromJSON(list: unknown, context: QueryContext): List;
|
|
7
|
+
constructor(list: ListSchema, context: QueryContext);
|
|
8
|
+
items(): Promise<import("./Content").Content[]>;
|
|
9
9
|
id(): string;
|
|
10
10
|
apiUrl(): string;
|
|
11
11
|
title(): string;
|
|
@@ -3,12 +3,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.
|
|
6
|
+
exports.List = void 0;
|
|
7
7
|
const errors_1 = require("@dotcom-reliability-kit/errors");
|
|
8
8
|
const metadata_1 = require("../helpers/metadata");
|
|
9
9
|
const list_1 = require("./schemas/capi/list");
|
|
10
10
|
const flatten_formatted_zod_errors_1 = __importDefault(require("../helpers/flatten-formatted-zod-errors"));
|
|
11
|
-
class
|
|
11
|
+
class List {
|
|
12
12
|
list;
|
|
13
13
|
context;
|
|
14
14
|
static fromJSON(list, context) {
|
|
@@ -29,7 +29,7 @@ class CapiList {
|
|
|
29
29
|
else {
|
|
30
30
|
context.metrics?.count(`graphql.datasource.CapiDataSource.List.validation.success.count`, 1);
|
|
31
31
|
}
|
|
32
|
-
return new
|
|
32
|
+
return new List(list, context);
|
|
33
33
|
}
|
|
34
34
|
constructor(list, context) {
|
|
35
35
|
this.list = list;
|
|
@@ -85,5 +85,5 @@ class CapiList {
|
|
|
85
85
|
return this.list.publishReference ?? null;
|
|
86
86
|
}
|
|
87
87
|
}
|
|
88
|
-
exports.
|
|
89
|
-
//# sourceMappingURL=
|
|
88
|
+
exports.List = List;
|
|
89
|
+
//# sourceMappingURL=List.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"List.js","sourceRoot":"","sources":["../../src/model/List.ts"],"names":[],"mappings":"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"}
|
package/lib/model/RichText.d.ts
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { LiteralUnionScalarValues } from '../resolvers/literal-union';
|
|
2
2
|
import { RichTextSource } from '../resolvers/scalars';
|
|
3
|
-
import {
|
|
3
|
+
import { Content } from './Content';
|
|
4
4
|
import { QueryContext } from '..';
|
|
5
5
|
export declare class RichText {
|
|
6
6
|
source: LiteralUnionScalarValues<typeof RichTextSource>;
|
|
7
7
|
private value;
|
|
8
8
|
private contentApiData?;
|
|
9
|
-
constructor(source: LiteralUnionScalarValues<typeof RichTextSource>, value: string | null, contentApiData?:
|
|
9
|
+
constructor(source: LiteralUnionScalarValues<typeof RichTextSource>, value: string | null, contentApiData?: Content | undefined);
|
|
10
10
|
raw(): string | null;
|
|
11
11
|
structured(context?: QueryContext): Promise<{
|
|
12
12
|
tree: import("@financial-times/content-tree").ContentTree.Parent;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RichText.js","sourceRoot":"","sources":["../../src/model/RichText.ts"],"names":[],"mappings":";;;;;;AAAA,4FAAmE;AACnE,wFAA+D;AAC/D,sHAA6F;AAI7F,uEAI8C;AAI9C,MAAa,QAAQ;IAEV;IACC;IACA;IAHV,YACS,MAAuD,EACtD,KAAoB,EACpB,
|
|
1
|
+
{"version":3,"file":"RichText.js","sourceRoot":"","sources":["../../src/model/RichText.ts"],"names":[],"mappings":";;;;;;AAAA,4FAAmE;AACnE,wFAA+D;AAC/D,sHAA6F;AAI7F,uEAI8C;AAI9C,MAAa,QAAQ;IAEV;IACC;IACA;IAHV,YACS,MAAuD,EACtD,KAAoB,EACpB,cAAwB;QAFzB,WAAM,GAAN,MAAM,CAAiD;QACtD,UAAK,GAAL,KAAK,CAAe;QACpB,mBAAc,GAAd,cAAc,CAAU;IAC/B,CAAC;IAEJ,GAAG;QACD,OAAO,IAAI,CAAC,KAAK,CAAA;IACnB,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,OAAsB;QACrC,MAAM,IAAI,GAAG,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACvD,yEAAyE;YACzE,wEAAwE;YACxE,sEAAsE;YACtE,6DAA6D;YAE7D,MAAM,WAAW,GACf,IAAI,CAAC,cAAc,EAAE,IAAI,EAAE,KAAK,cAAc;gBAC5C,CAAC,CAAC,EAAE,GAAG,+BAAiB,EAAE,GAAG,qCAAuB,EAAE;gBACtD,CAAC,CAAC;oBACE,GAAG,+BAAiB;oBACpB,GAAG,IAAA,gCAAkB,EAAC,IAAI,CAAC,cAAc,CAAC;iBAC3C,CAAA;YACP,YAAY,CAAC,GAAG,EAAE;gBAChB,IAAI,CAAC;oBACH,OAAO,CAAC,IAAA,uBAAa,EAAC,IAAI,CAAC,KAAK,IAAI,EAAE,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC,CAAA;gBAChE,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,MAAM,CAAC,KAAK,CAAC,CAAA;gBACf,CAAC;YACH,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEF,MAAM,EAAE,IAAI,EAAE,kBAAkB,EAAE,UAAU,EAAE,GAAG,IAAA,oCAA0B,EACzE,IAAI,EACJ,IAAI,CAAC,cAAc,CACpB,CAAA;QACD,MAAM,IAAI,GAAG,IAAA,qBAAW,EAAC,IAAI,CAAC,CAAA;QAE9B,OAAO;YACL,IAAI,EAAE,kBAAkB;YACxB,IAAI;YACJ,UAAU;SACX,CAAA;IACH,CAAC;CACF;AA9CD,4BA8CC"}
|
package/lib/model/Topper.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Content } from './Content';
|
|
2
2
|
import { CAPIImage } from './Image';
|
|
3
3
|
import type { QueryContext } from '..';
|
|
4
4
|
import { LiteralUnionScalarValues } from '../resolvers/literal-union';
|
|
@@ -12,7 +12,7 @@ export declare class Topper {
|
|
|
12
12
|
#private;
|
|
13
13
|
private capiResponse;
|
|
14
14
|
private context;
|
|
15
|
-
constructor(capiResponse:
|
|
15
|
+
constructor(capiResponse: Content, context: QueryContext);
|
|
16
16
|
intro(): RichText;
|
|
17
17
|
headline(): string;
|
|
18
18
|
type(): TopperType;
|
package/lib/model/Topper.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Topper.js","sourceRoot":"","sources":["../../src/model/Topper.ts"],"names":[],"mappings":";;;;;;AACA,mCAAmC;AAEnC,8DAGmC;AACnC,kDAA6D;AAC7D,yCAAqC;AACrC,2EAAqD;AACrD,iDAA6C;AAE7C,uCAAsC;AACtC,2DAAiE;AACjE,iEAAwC;AAkBxC,SAAS,gBAAgB,CAAC,gBAAwB;IAChD,MAAM,WAAW,GAAa;QAC5B,OAAO;QACP,OAAO;QACP,QAAQ;QACR,QAAQ;QACR,SAAS;KAC+B,CAAA;IAC1C,OAAO,WAAW,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAA;AAC/C,CAAC;AAED,MAAa,MAAM;
|
|
1
|
+
{"version":3,"file":"Topper.js","sourceRoot":"","sources":["../../src/model/Topper.ts"],"names":[],"mappings":"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"}
|
package/lib/model/Topper.test.js
CHANGED
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
const Topper_1 = require("./Topper");
|
|
7
7
|
const Person_1 = require("./Person");
|
|
8
8
|
const capiObject_1 = require("../fixtures/capiObject");
|
|
9
|
-
const
|
|
9
|
+
const Content_1 = require("./Content");
|
|
10
10
|
const Concept_1 = require("./Concept");
|
|
11
11
|
const clone_deep_1 = __importDefault(require("clone-deep"));
|
|
12
12
|
const n_concept_ids_1 = __importDefault(require("@financial-times/n-concept-ids"));
|
|
@@ -16,7 +16,7 @@ const context = {};
|
|
|
16
16
|
describe('produces the correct types', () => {
|
|
17
17
|
it('defaults when there is no topper, is normal headline, is paper background', () => {
|
|
18
18
|
const clonedBase = (0, clone_deep_1.default)(capiObject_1.baseCapiObject);
|
|
19
|
-
const capiResponse = new
|
|
19
|
+
const capiResponse = new Content_1.Content(clonedBase, context);
|
|
20
20
|
const topper = new Topper_1.Topper(capiResponse, context);
|
|
21
21
|
const desired = 'BasicTopper';
|
|
22
22
|
const actual = topper.type();
|
|
@@ -37,7 +37,7 @@ describe('produces the correct types', () => {
|
|
|
37
37
|
};
|
|
38
38
|
const clonedBase = (0, clone_deep_1.default)(capiObject_1.baseCapiObject);
|
|
39
39
|
clonedBase.topper = splitTopper;
|
|
40
|
-
const capiResponse = new
|
|
40
|
+
const capiResponse = new Content_1.Content(clonedBase, context);
|
|
41
41
|
const topper = new Topper_1.Topper(capiResponse, context);
|
|
42
42
|
const desiredType = 'SplitTextTopper';
|
|
43
43
|
const actualType = topper.type();
|
|
@@ -58,7 +58,7 @@ describe('produces the correct types', () => {
|
|
|
58
58
|
};
|
|
59
59
|
const clonedBase = (0, clone_deep_1.default)(capiObject_1.baseCapiObject);
|
|
60
60
|
clonedBase.topper = splitTopper;
|
|
61
|
-
const capiResponse = new
|
|
61
|
+
const capiResponse = new Content_1.Content(clonedBase, context);
|
|
62
62
|
const topper = new Topper_1.Topper(capiResponse, context);
|
|
63
63
|
const desired = 'FullBleedTopper';
|
|
64
64
|
const actual = topper.type();
|
|
@@ -79,7 +79,7 @@ describe('produces the correct types', () => {
|
|
|
79
79
|
};
|
|
80
80
|
const clonedBase = (0, clone_deep_1.default)(capiObject_1.baseCapiObject);
|
|
81
81
|
clonedBase.topper = splitTopper;
|
|
82
|
-
const capiResponse = new
|
|
82
|
+
const capiResponse = new Content_1.Content(clonedBase, context);
|
|
83
83
|
const topper = new Topper_1.Topper(capiResponse, context);
|
|
84
84
|
const desired = 'FullBleedTopper';
|
|
85
85
|
const actual = topper.type();
|
|
@@ -96,7 +96,7 @@ describe('produces the correct types', () => {
|
|
|
96
96
|
type: '',
|
|
97
97
|
types: [],
|
|
98
98
|
});
|
|
99
|
-
const capiResponse = new
|
|
99
|
+
const capiResponse = new Content_1.Content(clonedBase, context);
|
|
100
100
|
const topper = new Topper_1.Topper(capiResponse, context);
|
|
101
101
|
const desired = 'OpinionTopper';
|
|
102
102
|
const actual = topper.type();
|
|
@@ -119,7 +119,7 @@ describe('produces the correct types', () => {
|
|
|
119
119
|
type: '',
|
|
120
120
|
types: [],
|
|
121
121
|
});
|
|
122
|
-
const capiResponse = new
|
|
122
|
+
const capiResponse = new Content_1.Content(clonedBase, context);
|
|
123
123
|
const topper = new Topper_1.Topper(capiResponse, context);
|
|
124
124
|
const desired = 'BrandedTopper';
|
|
125
125
|
const actual = topper.type();
|
|
@@ -143,7 +143,7 @@ describe('produces the correct types', () => {
|
|
|
143
143
|
layoutWidth: 'full-width',
|
|
144
144
|
backgroundColour: 'paper',
|
|
145
145
|
};
|
|
146
|
-
const capiResponse = new
|
|
146
|
+
const capiResponse = new Content_1.Content(clonedBase, context);
|
|
147
147
|
const topper = new Topper_1.Topper(capiResponse, context);
|
|
148
148
|
const desired = 'TopperWithFlourish';
|
|
149
149
|
const actual = topper.type();
|
|
@@ -156,7 +156,7 @@ describe('produces the correct types', () => {
|
|
|
156
156
|
it('live blog topper, is full bleed, large headline, paper background', () => {
|
|
157
157
|
const clonedBase = (0, clone_deep_1.default)(capiObject_1.baseCapiObject);
|
|
158
158
|
clonedBase.type = 'http://www.ft.com/ontology/content/LiveBlogPackage';
|
|
159
|
-
const capiResponse = new
|
|
159
|
+
const capiResponse = new Content_1.Content(clonedBase, context);
|
|
160
160
|
const topper = new Topper_1.Topper(capiResponse, context);
|
|
161
161
|
const desired = 'FullBleedTopper';
|
|
162
162
|
const actual = topper.type();
|
|
@@ -179,7 +179,7 @@ describe('it retrieves the correct headline', () => {
|
|
|
179
179
|
layout: '',
|
|
180
180
|
};
|
|
181
181
|
clonedBase.topper = topperData;
|
|
182
|
-
const capiResponse = new
|
|
182
|
+
const capiResponse = new Content_1.Content(clonedBase, context);
|
|
183
183
|
const topper = new Topper_1.Topper(capiResponse, context);
|
|
184
184
|
const desired = topperData.headline;
|
|
185
185
|
const actual = topper.headline();
|
|
@@ -187,7 +187,7 @@ describe('it retrieves the correct headline', () => {
|
|
|
187
187
|
});
|
|
188
188
|
it('when there is one headline', () => {
|
|
189
189
|
const clonedBase = (0, clone_deep_1.default)(capiObject_1.baseCapiObject);
|
|
190
|
-
const capiResponse = new
|
|
190
|
+
const capiResponse = new Content_1.Content(clonedBase, context);
|
|
191
191
|
const topper = new Topper_1.Topper(capiResponse, context);
|
|
192
192
|
const desired = clonedBase.title;
|
|
193
193
|
const actual = topper.headline();
|
|
@@ -203,7 +203,7 @@ describe('produces the correct intro', () => {
|
|
|
203
203
|
clonedBase.summary = summary;
|
|
204
204
|
clonedBase.standfirst =
|
|
205
205
|
'Decision follows 10 days of pressure in wake of controversial mini-Budget';
|
|
206
|
-
const capiResponse = new
|
|
206
|
+
const capiResponse = new Content_1.Content(clonedBase, context);
|
|
207
207
|
const topper = new Topper_1.Topper(capiResponse, context);
|
|
208
208
|
const desired = {
|
|
209
209
|
value: summary.bodyXML,
|
|
@@ -216,7 +216,7 @@ describe('produces the correct intro', () => {
|
|
|
216
216
|
const clonedBase = (0, clone_deep_1.default)(capiObject_1.baseCapiObject);
|
|
217
217
|
const standfirst = 'Decision follows 10 days of pressure in wake of controversial mini-Budget';
|
|
218
218
|
clonedBase.standfirst = standfirst;
|
|
219
|
-
const capiResponse = new
|
|
219
|
+
const capiResponse = new Content_1.Content(clonedBase, context);
|
|
220
220
|
const topper = new Topper_1.Topper(capiResponse, context);
|
|
221
221
|
const desired = {
|
|
222
222
|
value: standfirst,
|
|
@@ -229,7 +229,7 @@ describe('produces the correct intro', () => {
|
|
|
229
229
|
describe('produces the correct layout', () => {
|
|
230
230
|
it('defaults to branded if there is no layout', () => {
|
|
231
231
|
const clonedBase = (0, clone_deep_1.default)(capiObject_1.baseCapiObject);
|
|
232
|
-
const capiResponse = new
|
|
232
|
+
const capiResponse = new Content_1.Content(clonedBase, context);
|
|
233
233
|
const topper = new Topper_1.Topper(capiResponse, context);
|
|
234
234
|
const desired = 'branded';
|
|
235
235
|
const actual = topper.layout();
|
|
@@ -259,7 +259,7 @@ describe('produces the correct background colour', () => {
|
|
|
259
259
|
};
|
|
260
260
|
const clonedBase = (0, clone_deep_1.default)(capiObject_1.baseCapiObject);
|
|
261
261
|
clonedBase.topper = splitTopper;
|
|
262
|
-
const capiResponse = new
|
|
262
|
+
const capiResponse = new Content_1.Content(clonedBase, context);
|
|
263
263
|
const topper = new Topper_1.Topper(capiResponse, context);
|
|
264
264
|
expect(topper.backgroundColour()).toEqual(expected);
|
|
265
265
|
});
|
|
@@ -292,14 +292,14 @@ describe('produces correct images', () => {
|
|
|
292
292
|
},
|
|
293
293
|
],
|
|
294
294
|
};
|
|
295
|
-
const capiResponse = new
|
|
295
|
+
const capiResponse = new Content_1.Content(withLeadImagesAndDisplayMainImage, context);
|
|
296
296
|
const topper = new Topper_1.Topper(capiResponse, context);
|
|
297
297
|
const fallback = topper.fallbackImage();
|
|
298
298
|
expect(fallback?.url()).toEqual('https://www.ft.com/__origami/service/image/v2/images/raw/https%3A%2F%2Fcloudfront.com%2Ftopper-standard.png?source=cp-content-pipeline&fit=scale-down&quality=highest&width=700&dpr=1');
|
|
299
299
|
});
|
|
300
300
|
it('uses the main image as fallback if no lead images', () => {
|
|
301
301
|
const clonedBase = (0, clone_deep_1.default)(capiObject_1.baseCapiObject);
|
|
302
|
-
const capiResponse = new
|
|
302
|
+
const capiResponse = new Content_1.Content(clonedBase, context);
|
|
303
303
|
const topper = new Topper_1.Topper(capiResponse, context);
|
|
304
304
|
const fallback = topper.fallbackImage();
|
|
305
305
|
expect(fallback?.url()).toEqual((0, imageService_1.default)({
|
|
@@ -339,7 +339,7 @@ describe('produces the correct metadata tags', () => {
|
|
|
339
339
|
};
|
|
340
340
|
it('uses the annotation with the predicate hasDisplayTag for the displayConcept', () => {
|
|
341
341
|
const clonedBase = (0, clone_deep_1.default)(capiObject_1.baseCapiObject);
|
|
342
|
-
const capiResponse = new
|
|
342
|
+
const capiResponse = new Content_1.Content(clonedBase, context);
|
|
343
343
|
const topper = new Topper_1.Topper(capiResponse, context);
|
|
344
344
|
const displayConcept = topper.displayConcept();
|
|
345
345
|
expect(displayConcept?.prefLabel()).toEqual('UK politics & policy');
|
|
@@ -352,7 +352,7 @@ describe('produces the correct metadata tags', () => {
|
|
|
352
352
|
...clonedBase,
|
|
353
353
|
annotations: [...clonedBase.annotations, opinionGenre, lexBrand],
|
|
354
354
|
};
|
|
355
|
-
const capiResponse = new
|
|
355
|
+
const capiResponse = new Content_1.Content(lexArticle, context);
|
|
356
356
|
const topper = new Topper_1.Topper(capiResponse, context);
|
|
357
357
|
const displayConcept = topper.displayConcept();
|
|
358
358
|
expect(displayConcept?.prefLabel()).toEqual('Lex');
|
|
@@ -365,7 +365,7 @@ describe('produces the correct metadata tags', () => {
|
|
|
365
365
|
...clonedBase,
|
|
366
366
|
annotations: [...clonedBase.annotations, opinionGenre],
|
|
367
367
|
};
|
|
368
|
-
const capiResponse = new
|
|
368
|
+
const capiResponse = new Content_1.Content(opinionArticle, context);
|
|
369
369
|
const topper = new Topper_1.Topper(capiResponse, context);
|
|
370
370
|
const displayConcept = topper.displayConcept();
|
|
371
371
|
expect(displayConcept?.prefLabel()).toEqual('UK politics & policy');
|
|
@@ -378,7 +378,7 @@ describe('produces the correct metadata tags', () => {
|
|
|
378
378
|
...clonedBase,
|
|
379
379
|
annotations: [...clonedBase.annotations, lexBrand],
|
|
380
380
|
};
|
|
381
|
-
const capiResponse = new
|
|
381
|
+
const capiResponse = new Content_1.Content(opinionArticle, context);
|
|
382
382
|
const topper = new Topper_1.Topper(capiResponse, context);
|
|
383
383
|
const displayConcept = topper.displayConcept();
|
|
384
384
|
expect(displayConcept?.prefLabel()).toEqual('UK politics & policy');
|
|
@@ -391,7 +391,7 @@ describe('headshot method', () => {
|
|
|
391
391
|
let capiResponse;
|
|
392
392
|
beforeEach(() => {
|
|
393
393
|
const clonedBase = (0, clone_deep_1.default)(capiObject_1.baseCapiObject);
|
|
394
|
-
capiResponse = new
|
|
394
|
+
capiResponse = new Content_1.Content(clonedBase, context);
|
|
395
395
|
topper = new Topper_1.Topper(capiResponse, context);
|
|
396
396
|
});
|
|
397
397
|
afterEach(() => {
|