smartling-api-sdk-nodejs 2.32.0 → 2.34.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 (183) hide show
  1. package/api/base/base-api.ts +3 -1
  2. package/api/http/smartling-bare-list-response.ts +5 -0
  3. package/api/http/smartling-list-response.ts +3 -2
  4. package/api/issues/dto/create-issue-string-dto.ts +4 -0
  5. package/api/issues/dto/issue-answered-dto.ts +3 -0
  6. package/api/issues/dto/issue-assignee-dto.ts +3 -0
  7. package/api/issues/dto/issue-changed-type-dto.ts +8 -0
  8. package/api/issues/dto/issue-comment-dto.ts +7 -0
  9. package/api/issues/dto/issue-dto.ts +30 -0
  10. package/api/issues/dto/issue-severity-level-dto.ts +5 -0
  11. package/api/issues/dto/issue-sort-by-dto.ts +5 -0
  12. package/api/issues/dto/issue-sort-item-dto.ts +7 -0
  13. package/api/issues/dto/issue-state-dto.ts +6 -0
  14. package/api/issues/dto/issue-string-dto.ts +4 -0
  15. package/api/issues/dto/issue-text-dto.ts +4 -0
  16. package/api/issues/dto/issues-count-dto.ts +3 -0
  17. package/api/issues/dto/job-filter-dto.ts +6 -0
  18. package/api/issues/dto/string-filter-dto.ts +4 -0
  19. package/api/issues/enums/issue-severity-level.ts +5 -0
  20. package/api/issues/enums/issue-sort-field.ts +14 -0
  21. package/api/issues/enums/issue-state.ts +4 -0
  22. package/api/issues/enums/issue-sub-type.ts +10 -0
  23. package/api/issues/enums/issue-type.ts +4 -0
  24. package/api/issues/enums/issue-watching-state.ts +4 -0
  25. package/api/issues/enums/job-filter-presence.ts +4 -0
  26. package/api/issues/index.ts +238 -0
  27. package/api/issues/params/base-issues-filter-parameters.ts +102 -0
  28. package/api/issues/params/count-account-issues-parameters.ts +8 -0
  29. package/api/issues/params/count-project-issues-parameters.ts +3 -0
  30. package/api/issues/params/create-issue-comment-parameters.ts +12 -0
  31. package/api/issues/params/create-issue-parameters.ts +41 -0
  32. package/api/issues/params/edit-issue-comment-parameters.ts +12 -0
  33. package/api/issues/params/edit-issue-parameters.ts +12 -0
  34. package/api/issues/params/find-account-issues-parameters.ts +31 -0
  35. package/api/issues/params/find-project-issues-parameters.ts +26 -0
  36. package/api/issues/params/update-issue-answered-parameters.ts +8 -0
  37. package/api/issues/params/update-issue-assignee-parameters.ts +12 -0
  38. package/api/issues/params/update-issue-severity-level-parameters.ts +9 -0
  39. package/api/issues/params/update-issue-state-parameters.ts +9 -0
  40. package/api/issues/params/update-issue-type-parameters.ts +20 -0
  41. package/api/vendors/dto/content-assignment-dto.ts +29 -0
  42. package/api/vendors/dto/workflow-step-type.ts +15 -0
  43. package/api/vendors/index.ts +23 -0
  44. package/built/api/base/base-api.js +3 -1
  45. package/built/api/base/base-api.js.map +1 -1
  46. package/built/api/http/smartling-bare-list-response.d.ts +4 -0
  47. package/built/api/http/smartling-bare-list-response.js +3 -0
  48. package/built/api/http/smartling-bare-list-response.js.map +1 -0
  49. package/built/api/http/smartling-list-response.d.ts +2 -2
  50. package/built/api/issues/dto/create-issue-string-dto.d.ts +4 -0
  51. package/built/api/issues/dto/create-issue-string-dto.js +3 -0
  52. package/built/api/issues/dto/create-issue-string-dto.js.map +1 -0
  53. package/built/api/issues/dto/issue-answered-dto.d.ts +3 -0
  54. package/built/api/issues/dto/issue-answered-dto.js +3 -0
  55. package/built/api/issues/dto/issue-answered-dto.js.map +1 -0
  56. package/built/api/issues/dto/issue-assignee-dto.d.ts +3 -0
  57. package/built/api/issues/dto/issue-assignee-dto.js +3 -0
  58. package/built/api/issues/dto/issue-assignee-dto.js.map +1 -0
  59. package/built/api/issues/dto/issue-changed-type-dto.d.ts +7 -0
  60. package/built/api/issues/dto/issue-changed-type-dto.js +3 -0
  61. package/built/api/issues/dto/issue-changed-type-dto.js.map +1 -0
  62. package/built/api/issues/dto/issue-comment-dto.d.ts +7 -0
  63. package/built/api/issues/dto/issue-comment-dto.js +3 -0
  64. package/built/api/issues/dto/issue-comment-dto.js.map +1 -0
  65. package/built/api/issues/dto/issue-dto.d.ts +29 -0
  66. package/built/api/issues/dto/issue-dto.js +3 -0
  67. package/built/api/issues/dto/issue-dto.js.map +1 -0
  68. package/built/api/issues/dto/issue-severity-level-dto.d.ts +4 -0
  69. package/built/api/issues/dto/issue-severity-level-dto.js +3 -0
  70. package/built/api/issues/dto/issue-severity-level-dto.js.map +1 -0
  71. package/built/api/issues/dto/issue-sort-by-dto.d.ts +4 -0
  72. package/built/api/issues/dto/issue-sort-by-dto.js +3 -0
  73. package/built/api/issues/dto/issue-sort-by-dto.js.map +1 -0
  74. package/built/api/issues/dto/issue-sort-item-dto.d.ts +6 -0
  75. package/built/api/issues/dto/issue-sort-item-dto.js +3 -0
  76. package/built/api/issues/dto/issue-sort-item-dto.js.map +1 -0
  77. package/built/api/issues/dto/issue-state-dto.d.ts +5 -0
  78. package/built/api/issues/dto/issue-state-dto.js +3 -0
  79. package/built/api/issues/dto/issue-state-dto.js.map +1 -0
  80. package/built/api/issues/dto/issue-string-dto.d.ts +4 -0
  81. package/built/api/issues/dto/issue-string-dto.js +3 -0
  82. package/built/api/issues/dto/issue-string-dto.js.map +1 -0
  83. package/built/api/issues/dto/issue-text-dto.d.ts +4 -0
  84. package/built/api/issues/dto/issue-text-dto.js +3 -0
  85. package/built/api/issues/dto/issue-text-dto.js.map +1 -0
  86. package/built/api/issues/dto/issues-count-dto.d.ts +3 -0
  87. package/built/api/issues/dto/issues-count-dto.js +3 -0
  88. package/built/api/issues/dto/issues-count-dto.js.map +1 -0
  89. package/built/api/issues/dto/job-filter-dto.d.ts +5 -0
  90. package/built/api/issues/dto/job-filter-dto.js +3 -0
  91. package/built/api/issues/dto/job-filter-dto.js.map +1 -0
  92. package/built/api/issues/dto/string-filter-dto.d.ts +4 -0
  93. package/built/api/issues/dto/string-filter-dto.js +3 -0
  94. package/built/api/issues/dto/string-filter-dto.js.map +1 -0
  95. package/built/api/issues/enums/issue-severity-level.d.ts +5 -0
  96. package/built/api/issues/enums/issue-severity-level.js +10 -0
  97. package/built/api/issues/enums/issue-severity-level.js.map +1 -0
  98. package/built/api/issues/enums/issue-sort-field.d.ts +14 -0
  99. package/built/api/issues/enums/issue-sort-field.js +19 -0
  100. package/built/api/issues/enums/issue-sort-field.js.map +1 -0
  101. package/built/api/issues/enums/issue-state.d.ts +4 -0
  102. package/built/api/issues/enums/issue-state.js +9 -0
  103. package/built/api/issues/enums/issue-state.js.map +1 -0
  104. package/built/api/issues/enums/issue-sub-type.d.ts +10 -0
  105. package/built/api/issues/enums/issue-sub-type.js +15 -0
  106. package/built/api/issues/enums/issue-sub-type.js.map +1 -0
  107. package/built/api/issues/enums/issue-type.d.ts +4 -0
  108. package/built/api/issues/enums/issue-type.js +9 -0
  109. package/built/api/issues/enums/issue-type.js.map +1 -0
  110. package/built/api/issues/enums/issue-watching-state.d.ts +4 -0
  111. package/built/api/issues/enums/issue-watching-state.js +9 -0
  112. package/built/api/issues/enums/issue-watching-state.js.map +1 -0
  113. package/built/api/issues/enums/job-filter-presence.d.ts +4 -0
  114. package/built/api/issues/enums/job-filter-presence.js +9 -0
  115. package/built/api/issues/enums/job-filter-presence.js.map +1 -0
  116. package/built/api/issues/index.d.ts +47 -0
  117. package/built/api/issues/index.js +112 -0
  118. package/built/api/issues/index.js.map +1 -0
  119. package/built/api/issues/params/base-issues-filter-parameters.d.ts +27 -0
  120. package/built/api/issues/params/base-issues-filter-parameters.js +83 -0
  121. package/built/api/issues/params/base-issues-filter-parameters.js.map +1 -0
  122. package/built/api/issues/params/count-account-issues-parameters.d.ts +4 -0
  123. package/built/api/issues/params/count-account-issues-parameters.js +12 -0
  124. package/built/api/issues/params/count-account-issues-parameters.js.map +1 -0
  125. package/built/api/issues/params/count-project-issues-parameters.d.ts +3 -0
  126. package/built/api/issues/params/count-project-issues-parameters.js +8 -0
  127. package/built/api/issues/params/count-project-issues-parameters.js.map +1 -0
  128. package/built/api/issues/params/create-issue-comment-parameters.d.ts +4 -0
  129. package/built/api/issues/params/create-issue-comment-parameters.js +16 -0
  130. package/built/api/issues/params/create-issue-comment-parameters.js.map +1 -0
  131. package/built/api/issues/params/create-issue-parameters.d.ts +13 -0
  132. package/built/api/issues/params/create-issue-parameters.js +36 -0
  133. package/built/api/issues/params/create-issue-parameters.js.map +1 -0
  134. package/built/api/issues/params/edit-issue-comment-parameters.d.ts +4 -0
  135. package/built/api/issues/params/edit-issue-comment-parameters.js +16 -0
  136. package/built/api/issues/params/edit-issue-comment-parameters.js.map +1 -0
  137. package/built/api/issues/params/edit-issue-parameters.d.ts +4 -0
  138. package/built/api/issues/params/edit-issue-parameters.js +16 -0
  139. package/built/api/issues/params/edit-issue-parameters.js.map +1 -0
  140. package/built/api/issues/params/find-account-issues-parameters.d.ts +8 -0
  141. package/built/api/issues/params/find-account-issues-parameters.js +31 -0
  142. package/built/api/issues/params/find-account-issues-parameters.js.map +1 -0
  143. package/built/api/issues/params/find-project-issues-parameters.d.ts +7 -0
  144. package/built/api/issues/params/find-project-issues-parameters.js +27 -0
  145. package/built/api/issues/params/find-project-issues-parameters.js.map +1 -0
  146. package/built/api/issues/params/update-issue-answered-parameters.d.ts +4 -0
  147. package/built/api/issues/params/update-issue-answered-parameters.js +12 -0
  148. package/built/api/issues/params/update-issue-answered-parameters.js.map +1 -0
  149. package/built/api/issues/params/update-issue-assignee-parameters.d.ts +4 -0
  150. package/built/api/issues/params/update-issue-assignee-parameters.js +16 -0
  151. package/built/api/issues/params/update-issue-assignee-parameters.js.map +1 -0
  152. package/built/api/issues/params/update-issue-severity-level-parameters.d.ts +5 -0
  153. package/built/api/issues/params/update-issue-severity-level-parameters.js +12 -0
  154. package/built/api/issues/params/update-issue-severity-level-parameters.js.map +1 -0
  155. package/built/api/issues/params/update-issue-state-parameters.d.ts +5 -0
  156. package/built/api/issues/params/update-issue-state-parameters.js +12 -0
  157. package/built/api/issues/params/update-issue-state-parameters.js.map +1 -0
  158. package/built/api/issues/params/update-issue-type-parameters.d.ts +8 -0
  159. package/built/api/issues/params/update-issue-type-parameters.js +20 -0
  160. package/built/api/issues/params/update-issue-type-parameters.js.map +1 -0
  161. package/built/api/vendors/dto/content-assignment-dto.d.ts +27 -0
  162. package/built/api/vendors/dto/content-assignment-dto.js +3 -0
  163. package/built/api/vendors/dto/content-assignment-dto.js.map +1 -0
  164. package/built/api/vendors/dto/workflow-step-type.d.ts +14 -0
  165. package/built/api/vendors/dto/workflow-step-type.js +19 -0
  166. package/built/api/vendors/dto/workflow-step-type.js.map +1 -0
  167. package/built/api/vendors/index.d.ts +9 -0
  168. package/built/api/vendors/index.js +27 -0
  169. package/built/api/vendors/index.js.map +1 -0
  170. package/built/index.d.ts +41 -0
  171. package/built/index.js +41 -0
  172. package/built/index.js.map +1 -1
  173. package/built/package.json +1 -1
  174. package/built/test/issues.spec.d.ts +1 -0
  175. package/built/test/issues.spec.js +513 -0
  176. package/built/test/issues.spec.js.map +1 -0
  177. package/built/test/vendors.spec.d.ts +1 -0
  178. package/built/test/vendors.spec.js +133 -0
  179. package/built/test/vendors.spec.js.map +1 -0
  180. package/index.ts +41 -0
  181. package/package.json +1 -1
  182. package/test/issues.spec.ts +624 -0
  183. package/test/vendors.spec.ts +136 -0
@@ -0,0 +1,136 @@
1
+ import sinon from "sinon";
2
+ import assert from "assert";
3
+ import { SmartlingVendorsApi } from "../api/vendors";
4
+ import { SmartlingAuthApi } from "../api/auth/index";
5
+ import { WorkflowStepType } from "../api/vendors/dto/workflow-step-type";
6
+ import { loggerMock, authMock, responseMock } from "./mock";
7
+
8
+ describe("SmartlingVendorsApi class tests.", () => {
9
+ let vendorsApi;
10
+ let vendorsApiFetchStub;
11
+ let vendorsApiUaStub;
12
+ let responseMockTextStub;
13
+
14
+ beforeEach(() => {
15
+ vendorsApi = new SmartlingVendorsApi("https://test.com", authMock as unknown as SmartlingAuthApi, loggerMock);
16
+
17
+ vendorsApiFetchStub = sinon.stub(vendorsApi, "fetch");
18
+ vendorsApiUaStub = sinon.stub(vendorsApi, "ua");
19
+ responseMockTextStub = sinon.stub(responseMock, "text");
20
+
21
+ vendorsApiUaStub.returns("test_user_agent");
22
+ vendorsApiFetchStub.returns(responseMock);
23
+ responseMockTextStub.returns("{\"response\": {\"data\": {\"items\": []}}}");
24
+ });
25
+
26
+ afterEach(() => {
27
+ vendorsApiFetchStub.restore();
28
+ responseMockTextStub.restore();
29
+ vendorsApiUaStub.restore();
30
+ });
31
+
32
+ it("Get content assignments by account", async () => {
33
+ await vendorsApi.getContentAssignmentsByAccount("test_account");
34
+
35
+ sinon.assert.calledOnce(vendorsApiFetchStub);
36
+ sinon.assert.calledWithExactly(
37
+ vendorsApiFetchStub,
38
+ "https://test.com/vendors-api/v2/accounts/test_account/content-assignments",
39
+ {
40
+ headers: {
41
+ Authorization: "test_token_type test_access_token",
42
+ "Content-Type": "application/json",
43
+ "User-Agent": "test_user_agent"
44
+ },
45
+ method: "get"
46
+ }
47
+ );
48
+ });
49
+
50
+ it("Parses due date fields as Date instances", async () => {
51
+ responseMockTextStub.returns(JSON.stringify({
52
+ response: {
53
+ data: {
54
+ items: [{
55
+ accountUid: "a1",
56
+ accountName: "A",
57
+ projectUid: "p1",
58
+ projectName: "P",
59
+ localeId: "es-ES",
60
+ workflowUid: "w1",
61
+ workflowName: "W",
62
+ workflowStepUid: "ws1",
63
+ workflowStepName: "Translation",
64
+ workflowStepType: "TRANSLATION",
65
+ translationJobUid: "j1",
66
+ translationJobName: "J",
67
+ translationJobWorkflowStepDueDate: "2025-01-20T18:01:00Z",
68
+ translationJobOverallDueDate: "2025-01-21T18:01:00Z",
69
+ userUid: null,
70
+ userFirstName: null,
71
+ userLastName: null,
72
+ userEmail: null,
73
+ agencyUid: null,
74
+ agencyName: null,
75
+ wordCount: 300,
76
+ workflowStepOrder: 2,
77
+ assignmentEnabled: false
78
+ }]
79
+ }
80
+ }
81
+ }));
82
+
83
+ const result = await vendorsApi.getContentAssignmentsByAccount("test_account");
84
+ const item = result.items[0];
85
+
86
+ assert.ok(item.translationJobWorkflowStepDueDate instanceof Date);
87
+ assert.equal(item.translationJobWorkflowStepDueDate.toISOString(), "2025-01-20T18:01:00.000Z");
88
+ assert.ok(item.translationJobOverallDueDate instanceof Date);
89
+ assert.equal(item.translationJobOverallDueDate.toISOString(), "2025-01-21T18:01:00.000Z");
90
+ assert.equal(item.workflowStepType, WorkflowStepType.TRANSLATION);
91
+ });
92
+
93
+ it("Preserves null user and agency fields", async () => {
94
+ responseMockTextStub.returns(JSON.stringify({
95
+ response: {
96
+ data: {
97
+ items: [{
98
+ accountUid: "a1",
99
+ accountName: "A",
100
+ projectUid: "p1",
101
+ projectName: "P",
102
+ localeId: "es-ES",
103
+ workflowUid: "w1",
104
+ workflowName: "W",
105
+ workflowStepUid: "ws1",
106
+ workflowStepName: "Translation",
107
+ workflowStepType: "TRANSLATION",
108
+ translationJobUid: "j1",
109
+ translationJobName: "J",
110
+ translationJobWorkflowStepDueDate: "2025-01-20T18:01:00Z",
111
+ translationJobOverallDueDate: "2025-01-21T18:01:00Z",
112
+ userUid: null,
113
+ userFirstName: null,
114
+ userLastName: null,
115
+ userEmail: null,
116
+ agencyUid: null,
117
+ agencyName: null,
118
+ wordCount: 0,
119
+ workflowStepOrder: 1,
120
+ assignmentEnabled: true
121
+ }]
122
+ }
123
+ }
124
+ }));
125
+
126
+ const result = await vendorsApi.getContentAssignmentsByAccount("test_account");
127
+ const item = result.items[0];
128
+
129
+ assert.strictEqual(item.userUid, null);
130
+ assert.strictEqual(item.userFirstName, null);
131
+ assert.strictEqual(item.userLastName, null);
132
+ assert.strictEqual(item.userEmail, null);
133
+ assert.strictEqual(item.agencyUid, null);
134
+ assert.strictEqual(item.agencyName, null);
135
+ });
136
+ });