@code.store/arcxp-sdk-ts 4.49.1 → 5.0.0-beta

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 (192) hide show
  1. package/dist/api/abstract-api.d.ts +2 -2
  2. package/dist/api/author/index.d.ts +2 -2
  3. package/dist/api/author/types.d.ts +32 -1
  4. package/dist/api/content/index.d.ts +4 -4
  5. package/dist/api/content/types.d.ts +3 -4
  6. package/dist/api/content-ops/index.d.ts +2 -2
  7. package/dist/api/custom/index.d.ts +1 -1
  8. package/dist/api/draft/index.d.ts +4 -4
  9. package/dist/api/draft/types.d.ts +4 -4
  10. package/dist/api/global-settings/index.d.ts +2 -2
  11. package/dist/api/identity/index.d.ts +2 -2
  12. package/dist/api/ifx/index.d.ts +2 -2
  13. package/dist/api/index.d.ts +19 -20
  14. package/dist/api/migration-center/index.d.ts +2 -2
  15. package/dist/api/migration-center/types.d.ts +4 -38
  16. package/dist/api/photo-center/index.d.ts +8 -9
  17. package/dist/api/photo-center/types.d.ts +3 -4
  18. package/dist/api/redirect/index.d.ts +2 -2
  19. package/dist/api/retail-events/index.d.ts +2 -2
  20. package/dist/api/sales/index.d.ts +2 -2
  21. package/dist/api/signing-service/index.d.ts +2 -2
  22. package/dist/api/site/index.d.ts +3 -4
  23. package/dist/api/site/types.d.ts +88 -1
  24. package/dist/api/tags/index.d.ts +2 -2
  25. package/dist/api/websked/index.d.ts +2 -2
  26. package/dist/api/ws.client.d.ts +1 -1
  27. package/dist/content-elements/content-elements.d.ts +54 -54
  28. package/dist/content-elements/html/html.processor.d.ts +7 -7
  29. package/dist/content-elements/html/html.utils.d.ts +2 -2
  30. package/dist/content-elements/html/index.d.ts +3 -3
  31. package/dist/content-elements/index.d.ts +2 -2
  32. package/dist/content-elements/types.d.ts +4 -0
  33. package/dist/index.cjs +1905 -0
  34. package/dist/index.cjs.map +1 -0
  35. package/dist/index.d.ts +9 -20
  36. package/dist/index.js +1872 -62
  37. package/dist/index.js.map +1 -1
  38. package/dist/lib/axios-rate-limiter.d.ts +2 -0
  39. package/dist/lib/platform/index.d.ts +6 -0
  40. package/dist/lib/platform/node.d.ts +6 -0
  41. package/dist/mapper/doc.d.ts +26 -25
  42. package/dist/mapper/index.d.ts +2 -2
  43. package/dist/mapper/story.d.ts +4 -4
  44. package/dist/types/ans-types.d.ts +2287 -0
  45. package/dist/types/gallery.d.ts +1 -1
  46. package/dist/types/index.d.ts +15 -7
  47. package/dist/types/section.d.ts +1 -1
  48. package/dist/utils/arc/ans.d.ts +2 -2
  49. package/dist/utils/arc/content.d.ts +1 -1
  50. package/dist/utils/arc/index.d.ts +3 -3
  51. package/dist/utils/decorator.d.ts +1 -1
  52. package/package.json +28 -18
  53. package/dist/api/abstract-api.js +0 -61
  54. package/dist/api/abstract-api.js.map +0 -1
  55. package/dist/api/author/index.js +0 -19
  56. package/dist/api/author/index.js.map +0 -1
  57. package/dist/api/author/types.js +0 -3
  58. package/dist/api/author/types.js.map +0 -1
  59. package/dist/api/content/index.js +0 -29
  60. package/dist/api/content/index.js.map +0 -1
  61. package/dist/api/content/types.js +0 -3
  62. package/dist/api/content/types.js.map +0 -1
  63. package/dist/api/content-ops/index.js +0 -27
  64. package/dist/api/content-ops/index.js.map +0 -1
  65. package/dist/api/content-ops/types.js +0 -3
  66. package/dist/api/content-ops/types.js.map +0 -1
  67. package/dist/api/custom/index.js +0 -18
  68. package/dist/api/custom/index.js.map +0 -1
  69. package/dist/api/draft/index.js +0 -63
  70. package/dist/api/draft/index.js.map +0 -1
  71. package/dist/api/draft/types.js +0 -3
  72. package/dist/api/draft/types.js.map +0 -1
  73. package/dist/api/error.js +0 -26
  74. package/dist/api/error.js.map +0 -1
  75. package/dist/api/global-settings/index.js +0 -19
  76. package/dist/api/global-settings/index.js.map +0 -1
  77. package/dist/api/global-settings/types.js +0 -3
  78. package/dist/api/global-settings/types.js.map +0 -1
  79. package/dist/api/identity/index.js +0 -35
  80. package/dist/api/identity/index.js.map +0 -1
  81. package/dist/api/identity/types.js +0 -3
  82. package/dist/api/identity/types.js.map +0 -1
  83. package/dist/api/ifx/index.js +0 -94
  84. package/dist/api/ifx/index.js.map +0 -1
  85. package/dist/api/ifx/types.js +0 -3
  86. package/dist/api/ifx/types.js.map +0 -1
  87. package/dist/api/index.js +0 -49
  88. package/dist/api/index.js.map +0 -1
  89. package/dist/api/migration-center/index.js +0 -45
  90. package/dist/api/migration-center/index.js.map +0 -1
  91. package/dist/api/migration-center/types.js +0 -41
  92. package/dist/api/migration-center/types.js.map +0 -1
  93. package/dist/api/photo-center/index.js +0 -64
  94. package/dist/api/photo-center/index.js.map +0 -1
  95. package/dist/api/photo-center/types.js +0 -3
  96. package/dist/api/photo-center/types.js.map +0 -1
  97. package/dist/api/redirect/index.js +0 -23
  98. package/dist/api/redirect/index.js.map +0 -1
  99. package/dist/api/redirect/types.js +0 -3
  100. package/dist/api/redirect/types.js.map +0 -1
  101. package/dist/api/retail-events/index.js +0 -18
  102. package/dist/api/retail-events/index.js.map +0 -1
  103. package/dist/api/sales/index.js +0 -25
  104. package/dist/api/sales/index.js.map +0 -1
  105. package/dist/api/sales/types.js +0 -3
  106. package/dist/api/sales/types.js.map +0 -1
  107. package/dist/api/signing-service/index.js +0 -15
  108. package/dist/api/signing-service/index.js.map +0 -1
  109. package/dist/api/signing-service/types.js +0 -3
  110. package/dist/api/signing-service/types.js.map +0 -1
  111. package/dist/api/site/index.js +0 -44
  112. package/dist/api/site/index.js.map +0 -1
  113. package/dist/api/site/types.js +0 -3
  114. package/dist/api/site/types.js.map +0 -1
  115. package/dist/api/tags/index.js +0 -36
  116. package/dist/api/tags/index.js.map +0 -1
  117. package/dist/api/tags/types.js +0 -3
  118. package/dist/api/tags/types.js.map +0 -1
  119. package/dist/api/websked/index.js +0 -47
  120. package/dist/api/websked/index.js.map +0 -1
  121. package/dist/api/websked/types.js +0 -3
  122. package/dist/api/websked/types.js.map +0 -1
  123. package/dist/api/ws.client.js +0 -68
  124. package/dist/api/ws.client.js.map +0 -1
  125. package/dist/content-elements/content-elements.js +0 -235
  126. package/dist/content-elements/content-elements.js.map +0 -1
  127. package/dist/content-elements/html/html.constants.js +0 -40
  128. package/dist/content-elements/html/html.constants.js.map +0 -1
  129. package/dist/content-elements/html/html.processor.js +0 -370
  130. package/dist/content-elements/html/html.processor.js.map +0 -1
  131. package/dist/content-elements/html/html.utils.js +0 -79
  132. package/dist/content-elements/html/html.utils.js.map +0 -1
  133. package/dist/content-elements/html/index.js +0 -41
  134. package/dist/content-elements/html/index.js.map +0 -1
  135. package/dist/content-elements/index.js +0 -42
  136. package/dist/content-elements/index.js.map +0 -1
  137. package/dist/mapper/doc.js +0 -146
  138. package/dist/mapper/doc.js.map +0 -1
  139. package/dist/mapper/index.js +0 -8
  140. package/dist/mapper/index.js.map +0 -1
  141. package/dist/mapper/story.js +0 -111
  142. package/dist/mapper/story.js.map +0 -1
  143. package/dist/scripts/json-schema-to-ts.js +0 -8
  144. package/dist/scripts/json-schema-to-ts.js.map +0 -1
  145. package/dist/tests/ans/mapper.test.d.ts +0 -1
  146. package/dist/tests/ans/mapper.test.js +0 -93
  147. package/dist/tests/ans/mapper.test.js.map +0 -1
  148. package/dist/tests/api/basic.test.d.ts +0 -1
  149. package/dist/tests/api/basic.test.js +0 -20
  150. package/dist/tests/api/basic.test.js.map +0 -1
  151. package/dist/tests/api/retry.test.d.ts +0 -1
  152. package/dist/tests/api/retry.test.js +0 -51
  153. package/dist/tests/api/retry.test.js.map +0 -1
  154. package/dist/tests/api/utils.test.d.ts +0 -1
  155. package/dist/tests/api/utils.test.js +0 -255
  156. package/dist/tests/api/utils.test.js.map +0 -1
  157. package/dist/tests/content-elements/html.processor.test.d.ts +0 -1
  158. package/dist/tests/content-elements/html.processor.test.js +0 -35
  159. package/dist/tests/content-elements/html.processor.test.js.map +0 -1
  160. package/dist/types/author.js +0 -8
  161. package/dist/types/author.js.map +0 -1
  162. package/dist/types/content-elements.d.ts +0 -4
  163. package/dist/types/content-elements.js +0 -3
  164. package/dist/types/content-elements.js.map +0 -1
  165. package/dist/types/gallery.js +0 -3
  166. package/dist/types/gallery.js.map +0 -1
  167. package/dist/types/index.js +0 -44
  168. package/dist/types/index.js.map +0 -1
  169. package/dist/types/section.js +0 -3
  170. package/dist/types/section.js.map +0 -1
  171. package/dist/types/story.js +0 -8
  172. package/dist/types/story.js.map +0 -1
  173. package/dist/types/utils.js +0 -3
  174. package/dist/types/utils.js.map +0 -1
  175. package/dist/types/video.js +0 -8
  176. package/dist/types/video.js.map +0 -1
  177. package/dist/utils/arc/ans.js +0 -14
  178. package/dist/utils/arc/ans.js.map +0 -1
  179. package/dist/utils/arc/content.js +0 -79
  180. package/dist/utils/arc/content.js.map +0 -1
  181. package/dist/utils/arc/id.js +0 -40
  182. package/dist/utils/arc/id.js.map +0 -1
  183. package/dist/utils/arc/index.js +0 -45
  184. package/dist/utils/arc/index.js.map +0 -1
  185. package/dist/utils/cache.js +0 -63
  186. package/dist/utils/cache.js.map +0 -1
  187. package/dist/utils/decorator.js +0 -20
  188. package/dist/utils/decorator.js.map +0 -1
  189. package/dist/utils/duration.js +0 -21
  190. package/dist/utils/duration.js.map +0 -1
  191. package/dist/utils/index.js +0 -52
  192. package/dist/utils/index.js.map +0 -1
@@ -1,146 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Document = void 0;
4
- /**
5
- * Base class for all arc entities, it provides common methods and properties
6
- * If you want to create a new entity subtype you should extend this class
7
- *
8
- * Use case: You want to migrate stories from BBC
9
- * You define `class BBCStory extends ArcDocument<ArcTypes.Story.AStory>` and implement all abstract methods
10
- * Then you can override the specific methods to enrich the story with the data from BBC
11
- *
12
- * To migrate it call .migrate() method
13
- */
14
- class Document {
15
- constructor() {
16
- this.ans = null;
17
- this.circulations = [];
18
- }
19
- async init() {
20
- // fetch necessary data and validate it here
21
- }
22
- async prepare() {
23
- await this.init();
24
- const payload = await this.payload();
25
- const params = await this.params();
26
- return { payload, params };
27
- }
28
- async payload() {
29
- this.ans = await this.getAns();
30
- this.circulations = await this.getCirculations();
31
- return {
32
- sourceId: await this.sourceId(),
33
- sourceType: await this.sourceType(),
34
- ANS: this.ans,
35
- circulations: this.circulations,
36
- arcAdditionalProperties: this.additionalProperties(),
37
- };
38
- }
39
- async params() {
40
- if (!this.websiteId()) {
41
- throw new Error('Website is not initialized! get params() should be called after payload()!');
42
- }
43
- return {
44
- website: await this.websiteId(),
45
- groupId: await this.groupId(),
46
- priority: this.priority(),
47
- };
48
- }
49
- additionalProperties() {
50
- return {
51
- story: {
52
- publish: false,
53
- },
54
- };
55
- }
56
- priority() {
57
- return 'historical';
58
- }
59
- getDistributor() {
60
- return;
61
- }
62
- getLanguage() {
63
- return 'en-GB';
64
- }
65
- getComments() {
66
- return;
67
- }
68
- async getSource() {
69
- return {
70
- name: 'code-store',
71
- system: 'code-store',
72
- source_id: await this.sourceId(),
73
- };
74
- }
75
- getSubheadlines() {
76
- return {
77
- basic: '',
78
- };
79
- }
80
- getDescription() {
81
- return this.getSubheadlines();
82
- }
83
- formatDate(date) {
84
- if (!date)
85
- return;
86
- return date.toISOString();
87
- }
88
- getDisplayDate() {
89
- return new Date();
90
- }
91
- async getContentElements() {
92
- return [];
93
- }
94
- getPublicationDate() {
95
- return new Date();
96
- }
97
- getHeadlines() {
98
- return {
99
- basic: '',
100
- };
101
- }
102
- getTags() {
103
- return;
104
- }
105
- getSubtype() {
106
- return;
107
- }
108
- getLabel() {
109
- return;
110
- }
111
- getRelatedContent() {
112
- return;
113
- }
114
- async getPromoItems() {
115
- return;
116
- }
117
- getWebskedStatusCode() {
118
- return;
119
- }
120
- getCreditsBy() {
121
- return [];
122
- }
123
- getCirculations() {
124
- return [];
125
- }
126
- getEditorNote() {
127
- return;
128
- }
129
- getContentRestrictions() {
130
- return;
131
- }
132
- getOwnerInformation() {
133
- return;
134
- }
135
- getSyndication() {
136
- return;
137
- }
138
- getSchedulingInformation() {
139
- return;
140
- }
141
- getTaxonomy() {
142
- return;
143
- }
144
- }
145
- exports.Document = Document;
146
- //# sourceMappingURL=doc.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"doc.js","sourceRoot":"","sources":["../../src/mapper/doc.ts"],"names":[],"mappings":"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"}
@@ -1,8 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Story = exports.Document = void 0;
4
- var doc_1 = require("./doc");
5
- Object.defineProperty(exports, "Document", { enumerable: true, get: function () { return doc_1.Document; } });
6
- var story_1 = require("./story");
7
- Object.defineProperty(exports, "Story", { enumerable: true, get: function () { return story_1.Story; } });
8
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/mapper/index.ts"],"names":[],"mappings":";;;AAAA,6BAAiC;AAAxB,+FAAA,QAAQ,OAAA;AACjB,iCAAgC;AAAvB,8FAAA,KAAK,OAAA"}
@@ -1,111 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Story = void 0;
4
- const doc_1 = require("./doc");
5
- /**
6
- * Base class for all arc stories, it provides common methods and properties
7
- * If you want to create a new story subtype you should extend this class
8
- *
9
- * Use case: You want to migrate stories from BBC
10
- * You define `class BBCStory extends ArcStory` and implement all abstract methods
11
- * Then you need to override the specific methods to enrich the story with the data from BBC
12
- *
13
- * For example:
14
- * To add tag to BBC stories you need to override
15
- * protected getTags(): MaybePromise<ArcTypes.Story.Tag[]> {
16
- * return [{
17
- * slug: 'bbc',
18
- * text: 'bbc',
19
- * }];
20
- * }
21
- */
22
- class Story extends doc_1.Document {
23
- type() {
24
- return 'story';
25
- }
26
- async getAns() {
27
- const id = await this.arcId();
28
- const version = this.version();
29
- const type = this.type();
30
- const publicationDate = await this.getPublicationDate();
31
- const displayDate = await this.getDisplayDate();
32
- const headlines = this.getHeadlines();
33
- const subheadlines = this.getSubheadlines();
34
- const description = this.getDescription();
35
- const language = this.getLanguage();
36
- const tags = await this.getTags();
37
- const subtype = await this.getSubtype();
38
- const label = await this.getLabel();
39
- const by = await this.getCreditsBy();
40
- const relatedContent = await this.getRelatedContent();
41
- const editorNote = await this.getEditorNote();
42
- const distributor = await this.getDistributor();
43
- const promoItems = await this.getPromoItems();
44
- const contentElements = await this.getContentElements();
45
- const webskedStatusCode = await this.getWebskedStatusCode();
46
- const websiteId = await this.websiteId();
47
- const source = await this.getSource();
48
- const comments = await this.getComments();
49
- const legacyUrl = await this.legacyUrl();
50
- const owner = await this.getOwnerInformation();
51
- const syndication = await this.getSyndication();
52
- const contentRestrictions = await this.getContentRestrictions();
53
- const planning = await this.getSchedulingInformation();
54
- const taxonomy = await this.getTaxonomy();
55
- const additionalMetaProperties = await this.getMigrationMetaProperties();
56
- return {
57
- type,
58
- _id: id,
59
- version,
60
- website: websiteId,
61
- canonical_website: websiteId,
62
- language,
63
- subtype,
64
- label,
65
- editor_note: editorNote,
66
- credits: {
67
- by,
68
- },
69
- headlines,
70
- subheadlines,
71
- description,
72
- distributor,
73
- planning,
74
- promo_items: promoItems,
75
- related_content: relatedContent,
76
- content_restrictions: contentRestrictions,
77
- created_date: this.formatDate(new Date()),
78
- first_publish_date: this.formatDate(publicationDate),
79
- publish_date: this.formatDate(publicationDate),
80
- display_date: this.formatDate(displayDate),
81
- source,
82
- comments,
83
- owner,
84
- syndication,
85
- taxonomy: {
86
- ...taxonomy,
87
- tags,
88
- },
89
- workflow: {
90
- status_code: webskedStatusCode,
91
- },
92
- content_elements: contentElements,
93
- additional_properties: {
94
- url: legacyUrl,
95
- ...additionalMetaProperties,
96
- },
97
- };
98
- }
99
- async getMigrationMetaProperties() {
100
- return {
101
- // used in dashboard for migration
102
- migration_source_id: await this.sourceId(),
103
- migration_source_type: await this.sourceType(),
104
- // used in dashboard to show the original url
105
- migration_url: await this.legacyUrl(),
106
- migration_group_id: await this.groupId(),
107
- };
108
- }
109
- }
110
- exports.Story = Story;
111
- //# sourceMappingURL=story.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"story.js","sourceRoot":"","sources":["../../src/mapper/story.ts"],"names":[],"mappings":"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"}
@@ -1,8 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const node_fs_1 = require("node:fs");
4
- const json_schema_to_typescript_1 = require("json-schema-to-typescript");
5
- const input = './input.json';
6
- const output = './output.ts';
7
- (0, json_schema_to_typescript_1.compileFromFile)(input).then((ts) => (0, node_fs_1.writeFileSync)(output, ts));
8
- //# sourceMappingURL=json-schema-to-ts.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"json-schema-to-ts.js","sourceRoot":"","sources":["../../src/scripts/json-schema-to-ts.ts"],"names":[],"mappings":";;AAAA,qCAAwC;AACxC,yEAA4D;AAE5D,MAAM,KAAK,GAAG,cAAc,CAAC;AAC7B,MAAM,MAAM,GAAG,aAAa,CAAC;AAE7B,IAAA,2CAAe,EAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAA,uBAAa,EAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,93 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const vitest_1 = require("vitest");
4
- const content_elements_1 = require("../../content-elements");
5
- const mapper_1 = require("../../mapper");
6
- (0, vitest_1.describe)('Mapper', () => {
7
- const ans = {
8
- type: 'story',
9
- _id: 'arc_id',
10
- version: '1.0.0',
11
- website: 'website_id',
12
- canonical_website: 'website_id',
13
- language: 'en-GB',
14
- subtype: 'subtype',
15
- credits: { by: [] },
16
- headlines: { basic: '' },
17
- subheadlines: { basic: '' },
18
- description: { basic: '' },
19
- created_date: vitest_1.expect.any(String),
20
- first_publish_date: vitest_1.expect.any(String),
21
- publish_date: vitest_1.expect.any(String),
22
- display_date: vitest_1.expect.any(String),
23
- source: { name: 'code-store', system: 'code-store', source_id: 'source_id' },
24
- taxonomy: { tags: [] },
25
- workflow: vitest_1.expect.any(Object),
26
- content_elements: [{ type: 'text', content: '', alignment: 'left' }],
27
- additional_properties: { url: 'legacy_url' },
28
- };
29
- const mocks = {
30
- init: vitest_1.vi.fn().mockResolvedValue(undefined),
31
- getSourceId: vitest_1.vi.fn().mockResolvedValue('source_id'),
32
- getSourceType: vitest_1.vi.fn().mockResolvedValue('source_type'),
33
- getWebsiteId: vitest_1.vi.fn().mockResolvedValue('website_id'),
34
- getLegacyUrl: vitest_1.vi.fn().mockResolvedValue('legacy_url'),
35
- getArcId: vitest_1.vi.fn().mockResolvedValue('arc_id'),
36
- getGroupId: vitest_1.vi.fn().mockResolvedValue('group_id'),
37
- getSubtype: vitest_1.vi.fn().mockResolvedValue('subtype'),
38
- getContentElements: vitest_1.vi.fn().mockResolvedValue([content_elements_1.ContentElement.text('')]),
39
- getTaxonomy: vitest_1.vi.fn().mockResolvedValue({}),
40
- getTags: vitest_1.vi.fn().mockResolvedValue([]),
41
- };
42
- class CodeStory extends mapper_1.Story {
43
- constructor() {
44
- super(...arguments);
45
- this.version = () => '1.0.0';
46
- this.groupId = mocks.getGroupId;
47
- this.sourceId = mocks.getSourceId;
48
- this.sourceType = mocks.getSourceType;
49
- this.websiteId = mocks.getWebsiteId;
50
- this.legacyUrl = mocks.getLegacyUrl;
51
- this.arcId = mocks.getArcId;
52
- this.init = mocks.init;
53
- this.getSubtype = mocks.getSubtype;
54
- this.getContentElements = mocks.getContentElements;
55
- this.getTaxonomy = mocks.getTaxonomy;
56
- this.getTags = mocks.getTags;
57
- }
58
- }
59
- (0, vitest_1.beforeEach)(() => {
60
- vitest_1.vi.clearAllMocks();
61
- });
62
- (0, vitest_1.test)('Should return valid ANS', async () => {
63
- const story = new CodeStory();
64
- const ans = await story.getAns();
65
- (0, vitest_1.expect)(ans).toBeDefined();
66
- (0, vitest_1.expect)(ans.type).toBe('story');
67
- (0, vitest_1.expect)(ans._id).toBe('arc_id');
68
- (0, vitest_1.expect)(ans.version).toBe('1.0.0');
69
- });
70
- (0, vitest_1.test)('prepare() should call params, payload, getAns', async () => {
71
- const story = new CodeStory();
72
- const getAns = vitest_1.vi.spyOn(story, 'getAns');
73
- const payload = vitest_1.vi.spyOn(story, 'payload');
74
- const params = vitest_1.vi.spyOn(story, 'params');
75
- const result = await story.prepare();
76
- (0, vitest_1.expect)(mocks.init).toBeCalledTimes(1);
77
- (0, vitest_1.expect)(getAns).toBeCalledTimes(1);
78
- (0, vitest_1.expect)(payload).toBeCalledTimes(1);
79
- (0, vitest_1.expect)(params).toBeCalledTimes(1);
80
- (0, vitest_1.expect)(mocks.getContentElements).toBeCalledTimes(1);
81
- (0, vitest_1.expect)(mocks.getTaxonomy).toBeCalledTimes(1);
82
- (0, vitest_1.expect)(mocks.getTags).toBeCalledTimes(1);
83
- (0, vitest_1.expect)(result.params).toBeDefined();
84
- (0, vitest_1.expect)(result.params.website).toBe('website_id');
85
- (0, vitest_1.expect)(result.params.groupId).toBe('group_id');
86
- (0, vitest_1.expect)(result.params.priority).toBe('historical');
87
- (0, vitest_1.expect)(result.payload).toBeDefined();
88
- (0, vitest_1.expect)(result.payload.sourceId).toBe('source_id');
89
- (0, vitest_1.expect)(result.payload.sourceType).toBe('source_type');
90
- (0, vitest_1.expect)(result.payload.ANS).toMatchObject(ans);
91
- });
92
- });
93
- //# sourceMappingURL=mapper.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mapper.test.js","sourceRoot":"","sources":["../../../src/tests/ans/mapper.test.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,20 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const vitest_1 = require("vitest");
4
- const api_1 = require("../../api");
5
- (0, vitest_1.describe)('Arc API', () => {
6
- (0, vitest_1.beforeEach)(() => {
7
- vitest_1.vi.resetAllMocks();
8
- vitest_1.vi.clearAllMocks();
9
- });
10
- (0, vitest_1.test)('Should throw authorization error (Invalid token)', async () => {
11
- const API = (0, api_1.ArcAPI)({ credentials: { organizationName: 'codestore', accessToken: Date.now().toString() } });
12
- await (0, vitest_1.expect)(API.Draft.generateId(Date.now().toString())).rejects.toMatchObject({
13
- name: 'ArcDraftError',
14
- message: 'Request failed with status code 401',
15
- service: 'ArcDraft',
16
- responseStatus: 401,
17
- });
18
- });
19
- });
20
- //# sourceMappingURL=basic.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"basic.test.js","sourceRoot":"","sources":["../../../src/tests/api/basic.test.ts"],"names":[],"mappings":";;AAAA,mCAAgE;AAChE,mCAAmC;AAEnC,IAAA,iBAAQ,EAAC,SAAS,EAAE,GAAG,EAAE;IACvB,IAAA,mBAAU,EAAC,GAAG,EAAE;QACd,WAAE,CAAC,aAAa,EAAE,CAAC;QACnB,WAAE,CAAC,aAAa,EAAE,CAAC;IACrB,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,kDAAkD,EAAE,KAAK,IAAI,EAAE;QAClE,MAAM,GAAG,GAAG,IAAA,YAAM,EAAC,EAAE,WAAW,EAAE,EAAE,gBAAgB,EAAE,WAAW,EAAE,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;QAE3G,MAAM,IAAA,eAAM,EAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC;YAC9E,IAAI,EAAE,eAAe;YACrB,OAAO,EAAE,qCAAqC;YAC9C,OAAO,EAAE,UAAU;YACnB,cAAc,EAAE,GAAG;SACpB,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,51 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const nock_1 = __importDefault(require("nock"));
7
- const vitest_1 = require("vitest");
8
- const api_1 = require("../../api");
9
- (0, vitest_1.describe)('Arc API retry logic', () => {
10
- const org = 'codestore';
11
- const base = `https://api.${org}.arcpublishing.com`;
12
- const accessToken = '123456';
13
- (0, vitest_1.beforeEach)(() => {
14
- nock_1.default.cleanAll();
15
- nock_1.default.disableNetConnect();
16
- });
17
- (0, vitest_1.afterEach)(() => {
18
- nock_1.default.cleanAll();
19
- nock_1.default.enableNetConnect();
20
- });
21
- (0, vitest_1.test)('retries on 429 and recovers (2x429 => 200)', async () => {
22
- const idParam = Date.now().toString();
23
- (0, nock_1.default)(base)
24
- .get(/.*/)
25
- .reply(429, { message: 'Too Many Requests' })
26
- .get(/.*/)
27
- .reply(429, { message: 'Too Many Requests' })
28
- .get(/.*/)
29
- .reply(200, { id: idParam });
30
- const API = (0, api_1.ArcAPI)({
31
- credentials: { organizationName: org, accessToken },
32
- });
33
- const result = await API.Draft.generateId(idParam);
34
- (0, vitest_1.expect)(result).toEqual(idParam);
35
- (0, vitest_1.expect)(nock_1.default.isDone()).toBe(true);
36
- });
37
- (0, vitest_1.test)('fails after max retries (always 429)', async () => {
38
- (0, nock_1.default)(base).get(/.*/).times(6).reply(429, { message: 'Too Many Requests' });
39
- const API = (0, api_1.ArcAPI)({
40
- credentials: { organizationName: org, accessToken },
41
- });
42
- await (0, vitest_1.expect)(API.Draft.generateId(Date.now().toString())).rejects.toMatchObject({
43
- name: 'ArcDraftError',
44
- service: 'ArcDraft',
45
- responseData: { message: 'Too Many Requests' },
46
- responseStatus: 429,
47
- });
48
- (0, vitest_1.expect)(nock_1.default.isDone()).toBe(true);
49
- }, 15000); // 15s timeout
50
- });
51
- //# sourceMappingURL=retry.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"retry.test.js","sourceRoot":"","sources":["../../../src/tests/api/retry.test.ts"],"names":[],"mappings":";;;;;AAAA,gDAAwB;AACxB,mCAAuE;AACvE,mCAAmC;AAEnC,IAAA,iBAAQ,EAAC,qBAAqB,EAAE,GAAG,EAAE;IACnC,MAAM,GAAG,GAAG,WAAW,CAAC;IACxB,MAAM,IAAI,GAAG,eAAe,GAAG,oBAAoB,CAAC;IACpD,MAAM,WAAW,GAAG,QAAQ,CAAC;IAE7B,IAAA,mBAAU,EAAC,GAAG,EAAE;QACd,cAAI,CAAC,QAAQ,EAAE,CAAC;QAChB,cAAI,CAAC,iBAAiB,EAAE,CAAC;IAC3B,CAAC,CAAC,CAAC;IAEH,IAAA,kBAAS,EAAC,GAAG,EAAE;QACb,cAAI,CAAC,QAAQ,EAAE,CAAC;QAChB,cAAI,CAAC,gBAAgB,EAAE,CAAC;IAC1B,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,4CAA4C,EAAE,KAAK,IAAI,EAAE;QAC5D,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC;QACtC,IAAA,cAAI,EAAC,IAAI,CAAC;aACP,GAAG,CAAC,IAAI,CAAC;aACT,KAAK,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,mBAAmB,EAAE,CAAC;aAC5C,GAAG,CAAC,IAAI,CAAC;aACT,KAAK,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,mBAAmB,EAAE,CAAC;aAC5C,GAAG,CAAC,IAAI,CAAC;aACT,KAAK,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;QAE/B,MAAM,GAAG,GAAG,IAAA,YAAM,EAAC;YACjB,WAAW,EAAE,EAAE,gBAAgB,EAAE,GAAG,EAAE,WAAW,EAAE;SACpD,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAEnD,IAAA,eAAM,EAAC,MAAM,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAChC,IAAA,eAAM,EAAC,cAAI,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,sCAAsC,EAAE,KAAK,IAAI,EAAE;QACtD,IAAA,cAAI,EAAC,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,mBAAmB,EAAE,CAAC,CAAC;QAE3E,MAAM,GAAG,GAAG,IAAA,YAAM,EAAC;YACjB,WAAW,EAAE,EAAE,gBAAgB,EAAE,GAAG,EAAE,WAAW,EAAE;SACpD,CAAC,CAAC;QAEH,MAAM,IAAA,eAAM,EAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC;YAC9E,IAAI,EAAE,eAAe;YACrB,OAAO,EAAE,UAAU;YACnB,YAAY,EAAE,EAAE,OAAO,EAAE,mBAAmB,EAAE;YAC9C,cAAc,EAAE,GAAG;SACpB,CAAC,CAAC;QAEH,IAAA,eAAM,EAAC,cAAI,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,cAAc;AAC3B,CAAC,CAAC,CAAC"}
@@ -1 +0,0 @@
1
- export {};