smartling-api-sdk-nodejs 1.2.4 → 1.2.7

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.
@@ -2,5 +2,5 @@ projectKey=smartling-api-sdk-nodejs
2
2
  serverUrl=https://sonar-next.connectors.stg.smartling.net
3
3
  serverVersion=8.6.1.40680
4
4
  dashboardUrl=https://sonar-next.connectors.stg.smartling.net/dashboard?id=smartling-api-sdk-nodejs
5
- ceTaskId=AYAZzI_RaTtlrvRuYgyU
6
- ceTaskUrl=https://sonar-next.connectors.stg.smartling.net/api/ce/task?id=AYAZzI_RaTtlrvRuYgyU
5
+ ceTaskId=AYLzCyesHTggOj7HDuaI
6
+ ceTaskUrl=https://sonar-next.connectors.stg.smartling.net/api/ce/task?id=AYLzCyesHTggOj7HDuaI
package/api/base/index.ts CHANGED
@@ -159,7 +159,20 @@ export class SmartlingBaseApi {
159
159
  return value;
160
160
  });
161
161
 
162
- this.logger.debug(`Received code ${response.status}; content: ${JSON.stringify(jsonResponse)}`);
162
+ this.logger.debug(`Received code ${response.status}; content: ${JSON.stringify(jsonResponse, (key, value) => {
163
+ const sensitiveProperties = [
164
+ "userIdentifier",
165
+ "userSecret",
166
+ "accessToken",
167
+ "refreshToken"
168
+ ];
169
+
170
+ if (sensitiveProperties.includes(key) && value && typeof value === "string") {
171
+ return `${value.substring(0, 10)}xxxxx`;
172
+ }
173
+
174
+ return value;
175
+ })}`);
163
176
 
164
177
  return jsonResponse?.response?.data ? jsonResponse?.response?.data : true;
165
178
  } catch (e) {
@@ -2,6 +2,7 @@ interface CustomFieldDto {
2
2
  fieldUid: string;
3
3
  fieldName: string;
4
4
  createdByUserUid: string;
5
+ fieldValue: string;
5
6
  }
6
7
 
7
8
  export { CustomFieldDto };
package/api/jobs/index.ts CHANGED
@@ -15,6 +15,7 @@ import { SourceFileDto } from "./dto/source-file-dto";
15
15
  import { RemovedFileDto } from "./dto/removed-file-dto";
16
16
  import { JobProgressDto } from "./dto/job-progress-dto";
17
17
  import { JobProgressParameters } from "./params/job-progress-parameters";
18
+ import { CancelJobParameters } from "./params/cancel-job-parameters";
18
19
 
19
20
  export class SmartlingJobsApi extends SmartlingBaseApi {
20
21
  constructor(smartlingApiBaseUrl: string, authApi: SmartlingAuthApi, logger: Logger) {
@@ -96,4 +97,14 @@ export class SmartlingJobsApi extends SmartlingBaseApi {
96
97
  params.export()
97
98
  );
98
99
  }
100
+
101
+ async cancelJob(
102
+ projectId: string, translationJobUid: string, params: CancelJobParameters
103
+ ): Promise<void> {
104
+ await this.makeRequest(
105
+ "post",
106
+ `${this.entrypoint}/${projectId}/jobs/${translationJobUid}/cancel`,
107
+ JSON.stringify(params.export())
108
+ );
109
+ }
99
110
  }
@@ -0,0 +1,9 @@
1
+ import { BaseParameters } from "../../parameters/index";
2
+
3
+ export class CancelJobParameters extends BaseParameters {
4
+ setReason(reason: string): CancelJobParameters {
5
+ this.set("reason", reason);
6
+
7
+ return this;
8
+ }
9
+ }
@@ -123,7 +123,18 @@ class SmartlingBaseApi {
123
123
  }
124
124
  return value;
125
125
  });
126
- this.logger.debug(`Received code ${response.status}; content: ${JSON.stringify(jsonResponse)}`);
126
+ this.logger.debug(`Received code ${response.status}; content: ${JSON.stringify(jsonResponse, (key, value) => {
127
+ const sensitiveProperties = [
128
+ "userIdentifier",
129
+ "userSecret",
130
+ "accessToken",
131
+ "refreshToken"
132
+ ];
133
+ if (sensitiveProperties.includes(key) && value && typeof value === "string") {
134
+ return `${value.substring(0, 10)}xxxxx`;
135
+ }
136
+ return value;
137
+ })}`);
127
138
  return ((_a = jsonResponse === null || jsonResponse === void 0 ? void 0 : jsonResponse.response) === null || _a === void 0 ? void 0 : _a.data) ? (_b = jsonResponse === null || jsonResponse === void 0 ? void 0 : jsonResponse.response) === null || _b === void 0 ? void 0 : _b.data : true;
128
139
  }
129
140
  catch (e) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../api/base/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../api/base/index.ts"],"names":[],"mappings":"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"}
@@ -2,5 +2,6 @@ interface CustomFieldDto {
2
2
  fieldUid: string;
3
3
  fieldName: string;
4
4
  createdByUserUid: string;
5
+ fieldValue: string;
5
6
  }
6
7
  export { CustomFieldDto };
@@ -15,6 +15,7 @@ import { SourceFileDto } from "./dto/source-file-dto";
15
15
  import { RemovedFileDto } from "./dto/removed-file-dto";
16
16
  import { JobProgressDto } from "./dto/job-progress-dto";
17
17
  import { JobProgressParameters } from "./params/job-progress-parameters";
18
+ import { CancelJobParameters } from "./params/cancel-job-parameters";
18
19
  export declare class SmartlingJobsApi extends SmartlingBaseApi {
19
20
  constructor(smartlingApiBaseUrl: string, authApi: SmartlingAuthApi, logger: Logger);
20
21
  createJob(projectId: string, params: CreateJobParameters): Promise<JobDto>;
@@ -25,4 +26,5 @@ export declare class SmartlingJobsApi extends SmartlingBaseApi {
25
26
  removeFileFromJob(projectId: string, translationJobUid: string, params: RemoveFileParameters): Promise<RemovedFileDto>;
26
27
  getJobProgress(projectId: string, translationJobUid: string, params: JobProgressParameters): Promise<JobProgressDto>;
27
28
  getJobFileProgress(projectId: string, translationJobUid: string, params: FileProgressParameters): Promise<FileProgressDto>;
29
+ cancelJob(projectId: string, translationJobUid: string, params: CancelJobParameters): Promise<void>;
28
30
  }
@@ -57,6 +57,11 @@ class SmartlingJobsApi extends index_1.SmartlingBaseApi {
57
57
  return yield this.makeRequest("get", `${this.entrypoint}/${projectId}/jobs/${translationJobUid}/file/progress`, params.export());
58
58
  });
59
59
  }
60
+ cancelJob(projectId, translationJobUid, params) {
61
+ return __awaiter(this, void 0, void 0, function* () {
62
+ yield this.makeRequest("post", `${this.entrypoint}/${projectId}/jobs/${translationJobUid}/cancel`, JSON.stringify(params.export()));
63
+ });
64
+ }
60
65
  }
61
66
  exports.SmartlingJobsApi = SmartlingJobsApi;
62
67
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../api/jobs/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yCAAiD;AAkBjD,MAAa,gBAAiB,SAAQ,wBAAgB;IAClD,YAAY,mBAA2B,EAAE,OAAyB,EAAE,MAAc;QAC9E,KAAK,CAAC,MAAM,CAAC,CAAC;QACd,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,UAAU,GAAG,GAAG,mBAAmB,uBAAuB,CAAC;IACpE,CAAC;IAEK,SAAS,CAAC,SAAiB,EAAE,MAA2B;;YAC1D,OAAO,MAAM,IAAI,CAAC,WAAW,CACzB,MAAM,EACN,GAAG,IAAI,CAAC,UAAU,IAAI,SAAS,OAAO,EACtC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAClC,CAAC;QACN,CAAC;KAAA;IAEK,MAAM,CAAC,SAAiB,EAAE,iBAAyB;;YACrD,OAAO,MAAM,IAAI,CAAC,WAAW,CACzB,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,IAAI,SAAS,SAAS,iBAAiB,EAAE,CAC9D,CAAC;QACN,CAAC;KAAA;IAEK,WAAW,CACb,SAAiB,EAAE,iBAAyB,EAAE,MAA8B;;YAE5E,OAAO,MAAM,IAAI,CAAC,WAAW,CACzB,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,IAAI,SAAS,SAAS,iBAAiB,QAAQ,EACjE,MAAM,CAAC,MAAM,EAAE,CAClB,CAAC;QACN,CAAC;KAAA;IAEK,QAAQ,CACV,SAAiB,EAAE,MAA0B;;YAE7C,OAAO,MAAM,IAAI,CAAC,WAAW,CACzB,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,IAAI,SAAS,OAAO,EACtC,MAAM,CAAC,MAAM,EAAE,CAClB,CAAC;QACN,CAAC;KAAA;IAGK,UAAU,CAAC,SAAiB,EAAE,MAAM;;YACtC,OAAO,MAAM,IAAI,CAAC,WAAW,CACzB,MAAM,EACN,GAAG,IAAI,CAAC,UAAU,IAAI,SAAS,cAAc,EAC7C,MAAM,CAAC,MAAM,EAAE,CAClB,CAAC;QACN,CAAC;KAAA;IAEK,iBAAiB,CACnB,SAAiB,EAAE,iBAAyB,EAAE,MAA4B;;YAE1E,OAAO,MAAM,IAAI,CAAC,WAAW,CACzB,MAAM,EACN,GAAG,IAAI,CAAC,UAAU,IAAI,SAAS,SAAS,iBAAiB,cAAc,EACvE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAClC,CAAC;QACN,CAAC;KAAA;IAEK,cAAc,CAChB,SAAiB,EAAE,iBAAyB,EAAE,MAA6B;;YAE3E,OAAO,MAAM,IAAI,CAAC,WAAW,CACzB,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,IAAI,SAAS,SAAS,iBAAiB,WAAW,EACpE,MAAM,CAAC,MAAM,EAAE,CAClB,CAAC;QACN,CAAC;KAAA;IAEK,kBAAkB,CACpB,SAAiB,EAAE,iBAAyB,EAAE,MAA8B;;YAE5E,OAAO,MAAM,IAAI,CAAC,WAAW,CACzB,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,IAAI,SAAS,SAAS,iBAAiB,gBAAgB,EACzE,MAAM,CAAC,MAAM,EAAE,CAClB,CAAC;QACN,CAAC;KAAA;CACJ;AAhFD,4CAgFC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../api/jobs/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yCAAiD;AAmBjD,MAAa,gBAAiB,SAAQ,wBAAgB;IAClD,YAAY,mBAA2B,EAAE,OAAyB,EAAE,MAAc;QAC9E,KAAK,CAAC,MAAM,CAAC,CAAC;QACd,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,UAAU,GAAG,GAAG,mBAAmB,uBAAuB,CAAC;IACpE,CAAC;IAEK,SAAS,CAAC,SAAiB,EAAE,MAA2B;;YAC1D,OAAO,MAAM,IAAI,CAAC,WAAW,CACzB,MAAM,EACN,GAAG,IAAI,CAAC,UAAU,IAAI,SAAS,OAAO,EACtC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAClC,CAAC;QACN,CAAC;KAAA;IAEK,MAAM,CAAC,SAAiB,EAAE,iBAAyB;;YACrD,OAAO,MAAM,IAAI,CAAC,WAAW,CACzB,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,IAAI,SAAS,SAAS,iBAAiB,EAAE,CAC9D,CAAC;QACN,CAAC;KAAA;IAEK,WAAW,CACb,SAAiB,EAAE,iBAAyB,EAAE,MAA8B;;YAE5E,OAAO,MAAM,IAAI,CAAC,WAAW,CACzB,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,IAAI,SAAS,SAAS,iBAAiB,QAAQ,EACjE,MAAM,CAAC,MAAM,EAAE,CAClB,CAAC;QACN,CAAC;KAAA;IAEK,QAAQ,CACV,SAAiB,EAAE,MAA0B;;YAE7C,OAAO,MAAM,IAAI,CAAC,WAAW,CACzB,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,IAAI,SAAS,OAAO,EACtC,MAAM,CAAC,MAAM,EAAE,CAClB,CAAC;QACN,CAAC;KAAA;IAGK,UAAU,CAAC,SAAiB,EAAE,MAAM;;YACtC,OAAO,MAAM,IAAI,CAAC,WAAW,CACzB,MAAM,EACN,GAAG,IAAI,CAAC,UAAU,IAAI,SAAS,cAAc,EAC7C,MAAM,CAAC,MAAM,EAAE,CAClB,CAAC;QACN,CAAC;KAAA;IAEK,iBAAiB,CACnB,SAAiB,EAAE,iBAAyB,EAAE,MAA4B;;YAE1E,OAAO,MAAM,IAAI,CAAC,WAAW,CACzB,MAAM,EACN,GAAG,IAAI,CAAC,UAAU,IAAI,SAAS,SAAS,iBAAiB,cAAc,EACvE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAClC,CAAC;QACN,CAAC;KAAA;IAEK,cAAc,CAChB,SAAiB,EAAE,iBAAyB,EAAE,MAA6B;;YAE3E,OAAO,MAAM,IAAI,CAAC,WAAW,CACzB,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,IAAI,SAAS,SAAS,iBAAiB,WAAW,EACpE,MAAM,CAAC,MAAM,EAAE,CAClB,CAAC;QACN,CAAC;KAAA;IAEK,kBAAkB,CACpB,SAAiB,EAAE,iBAAyB,EAAE,MAA8B;;YAE5E,OAAO,MAAM,IAAI,CAAC,WAAW,CACzB,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,IAAI,SAAS,SAAS,iBAAiB,gBAAgB,EACzE,MAAM,CAAC,MAAM,EAAE,CAClB,CAAC;QACN,CAAC;KAAA;IAEK,SAAS,CACX,SAAiB,EAAE,iBAAyB,EAAE,MAA2B;;YAEzE,MAAM,IAAI,CAAC,WAAW,CAClB,MAAM,EACN,GAAG,IAAI,CAAC,UAAU,IAAI,SAAS,SAAS,iBAAiB,SAAS,EAClE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAClC,CAAC;QACN,CAAC;KAAA;CACJ;AA1FD,4CA0FC"}
@@ -0,0 +1,4 @@
1
+ import { BaseParameters } from "../../parameters/index";
2
+ export declare class CancelJobParameters extends BaseParameters {
3
+ setReason(reason: string): CancelJobParameters;
4
+ }
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CancelJobParameters = void 0;
4
+ const index_1 = require("../../parameters/index");
5
+ class CancelJobParameters extends index_1.BaseParameters {
6
+ setReason(reason) {
7
+ this.set("reason", reason);
8
+ return this;
9
+ }
10
+ }
11
+ exports.CancelJobParameters = CancelJobParameters;
12
+ //# sourceMappingURL=cancel-job-parameters.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cancel-job-parameters.js","sourceRoot":"","sources":["../../../../api/jobs/params/cancel-job-parameters.ts"],"names":[],"mappings":";;;AAAA,kDAAwD;AAExD,MAAa,mBAAoB,SAAQ,sBAAc;IACnD,SAAS,CAAC,MAAc;QACpB,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAE3B,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ;AAND,kDAMC"}
package/built/index.d.ts CHANGED
@@ -60,6 +60,7 @@ export * from "./api/jobs/params/job-status";
60
60
  export * from "./api/jobs/params/list-job-files-parameters";
61
61
  export * from "./api/jobs/params/list-jobs-parameters";
62
62
  export * from "./api/jobs/params/remove-file-parameters";
63
+ export * from "./api/jobs/params/cancel-job-parameters";
63
64
  export * from "./api/parameters/index";
64
65
  export * from "./api/parameters/order";
65
66
  export * from "./api/projects/index";
package/built/index.js CHANGED
@@ -76,6 +76,7 @@ __exportStar(require("./api/jobs/params/job-status"), exports);
76
76
  __exportStar(require("./api/jobs/params/list-job-files-parameters"), exports);
77
77
  __exportStar(require("./api/jobs/params/list-jobs-parameters"), exports);
78
78
  __exportStar(require("./api/jobs/params/remove-file-parameters"), exports);
79
+ __exportStar(require("./api/jobs/params/cancel-job-parameters"), exports);
79
80
  __exportStar(require("./api/parameters/index"), exports);
80
81
  __exportStar(require("./api/parameters/order"), exports);
81
82
  __exportStar(require("./api/projects/index"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,mDAAiC;AACjC,kEAAgD;AAChD,mDAAiC;AACjC,sDAAoC;AACpC,sDAAoC;AACpC,wEAAsD;AACtD,6EAA2D;AAC3D,gEAA8C;AAC9C,4EAA0D;AAC1D,uEAAqD;AACrD,0FAAwE;AACxE,oEAAkD;AAClD,iFAA+D;AAC/D,kFAAgE;AAChE,uEAAqD;AACrD,sEAAoD;AACpD,wDAAsC;AACtC,oDAAkC;AAClC,8EAA4D;AAC5D,oEAAkD;AAClD,+DAA6C;AAC7C,4EAA0D;AAC1D,kFAAgE;AAChE,kFAAgE;AAChE,+EAA6D;AAC7D,oEAAkD;AAClD,qEAAmD;AACnD,0DAAwC;AACxC,kEAAgD;AAChD,uEAAqD;AACrD,yEAAuD;AACvD,yEAAuD;AACvD,mFAAiE;AACjE,wFAAsE;AACtE,2FAAyE;AACzE,wFAAsE;AACtE,0FAAwE;AACxE,wEAAsD;AACtD,wEAAsD;AACtD,6EAA2D;AAC3D,mDAAiC;AACjC,8DAA4C;AAC5C,kFAAgE;AAChE,kEAAgD;AAChD,mEAAiD;AACjD,sEAAoD;AACpD,iEAA+C;AAC/C,yDAAuC;AACvC,iEAA+C;AAC/C,mFAAiE;AACjE,uFAAqE;AACrE,kEAAgD;AAChD,mEAAiD;AACjD,yEAAuD;AACvD,kEAAgD;AAChD,0EAAwD;AACxD,6EAA2D;AAC3D,4EAA0D;AAC1D,+DAA6C;AAC7C,8EAA4D;AAC5D,yEAAuD;AACvD,2EAAyD;AACzD,yDAAuC;AACvC,yDAAuC;AACvC,uDAAqC;AACrC,iEAA+C;AAC/C,gEAA8C;AAC9C,sDAAoC;AACpC,sEAAoD;AACpD,0EAAwD;AACxD,uFAAqE;AACrE,+CAA6B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,mDAAiC;AACjC,kEAAgD;AAChD,mDAAiC;AACjC,sDAAoC;AACpC,sDAAoC;AACpC,wEAAsD;AACtD,6EAA2D;AAC3D,gEAA8C;AAC9C,4EAA0D;AAC1D,uEAAqD;AACrD,0FAAwE;AACxE,oEAAkD;AAClD,iFAA+D;AAC/D,kFAAgE;AAChE,uEAAqD;AACrD,sEAAoD;AACpD,wDAAsC;AACtC,oDAAkC;AAClC,8EAA4D;AAC5D,oEAAkD;AAClD,+DAA6C;AAC7C,4EAA0D;AAC1D,kFAAgE;AAChE,kFAAgE;AAChE,+EAA6D;AAC7D,oEAAkD;AAClD,qEAAmD;AACnD,0DAAwC;AACxC,kEAAgD;AAChD,uEAAqD;AACrD,yEAAuD;AACvD,yEAAuD;AACvD,mFAAiE;AACjE,wFAAsE;AACtE,2FAAyE;AACzE,wFAAsE;AACtE,0FAAwE;AACxE,wEAAsD;AACtD,wEAAsD;AACtD,6EAA2D;AAC3D,mDAAiC;AACjC,8DAA4C;AAC5C,kFAAgE;AAChE,kEAAgD;AAChD,mEAAiD;AACjD,sEAAoD;AACpD,iEAA+C;AAC/C,yDAAuC;AACvC,iEAA+C;AAC/C,mFAAiE;AACjE,uFAAqE;AACrE,kEAAgD;AAChD,mEAAiD;AACjD,yEAAuD;AACvD,kEAAgD;AAChD,0EAAwD;AACxD,6EAA2D;AAC3D,4EAA0D;AAC1D,+DAA6C;AAC7C,8EAA4D;AAC5D,yEAAuD;AACvD,2EAAyD;AACzD,0EAAwD;AACxD,yDAAuC;AACvC,yDAAuC;AACvC,uDAAqC;AACrC,iEAA+C;AAC/C,gEAA8C;AAC9C,sDAAoC;AACpC,sEAAoD;AACpD,0EAAwD;AACxD,uFAAqE;AACrE,+CAA6B"}
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "smartling-api-sdk-nodejs",
3
- "version": "1.2.4",
3
+ "version": "1.2.7",
4
4
  "description": "Package for Smartling API",
5
5
  "main": "built/index.js",
6
6
  "scripts": {
package/index.ts CHANGED
@@ -60,6 +60,7 @@ export * from "./api/jobs/params/job-status";
60
60
  export * from "./api/jobs/params/list-job-files-parameters";
61
61
  export * from "./api/jobs/params/list-jobs-parameters";
62
62
  export * from "./api/jobs/params/remove-file-parameters";
63
+ export * from "./api/jobs/params/cancel-job-parameters";
63
64
  export * from "./api/parameters/index";
64
65
  export * from "./api/parameters/order";
65
66
  export * from "./api/projects/index";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "smartling-api-sdk-nodejs",
3
- "version": "1.2.4",
3
+ "version": "1.2.7",
4
4
  "description": "Package for Smartling API",
5
5
  "main": "built/index.js",
6
6
  "scripts": {
package/test/base.spec.ts CHANGED
@@ -70,6 +70,7 @@ describe("Base class tests.", () => {
70
70
  let baseAlterRequestDataSpy;
71
71
  let authResetTokenStub;
72
72
  let responseMockTextStub;
73
+ let loggerDebug;
73
74
 
74
75
  beforeEach(() => {
75
76
  base = new SmartlingBaseApi(loggerMock);
@@ -81,6 +82,7 @@ describe("Base class tests.", () => {
81
82
  baseAlterRequestDataSpy = sinon.spy(base, "alterRequestData");
82
83
  authResetTokenStub = sinon.stub(base.authApi, "resetToken");
83
84
  responseMockTextStub = sinon.stub(responseMock, "text");
85
+ loggerDebug = sinon.stub(base.logger, "debug");
84
86
 
85
87
  baseUaStub.returns("test_user_agent");
86
88
  });
@@ -91,6 +93,7 @@ describe("Base class tests.", () => {
91
93
  authResetTokenStub.restore();
92
94
  responseMockTextStub.restore();
93
95
  baseUaStub.restore();
96
+ loggerDebug.restore();
94
97
  });
95
98
 
96
99
  it("Success (JSON response, bool result).", async () => {
@@ -148,7 +151,7 @@ describe("Base class tests.", () => {
148
151
 
149
152
  baseFetchStub.returns(responseMock);
150
153
 
151
- responseMockTextStub.returns("{\"response\": {\"data\": {\"created\":\"2021-08-18T09:57:59.088Z\",\"modified\":\"2021-08-18T09:57:59.088Z\",\"updated\":\"2021-08-18T09:57:59.088Z\",\"createdDate\":\"2021-08-18T09:57:59.088Z\",\"modifiedDate\":\"2021-08-18T09:57:59.088Z\",\"updatedDate\":\"2021-08-18T09:57:59.088Z\",\"dueDate\":\"2021-08-18T09:57:59.088Z\",\"actionTime\":\"2021-08-18T09:57:59.088Z\",\"publishDate\":\"2021-08-18T09:57:59.088Z\",\"lastModified\":\"2021-08-18T09:57:59.088Z\",\"createdString\":\"2021-08-18T09:57:59.088Z\"}}}");
154
+ responseMockTextStub.returns("{\"response\": {\"data\": {\"userIdentifier\":\"test_user_identifier\",\"foo\":{\"userSecret\":\"test_user_secret\",\"accessToken\":\"test_access_token\",\"refreshToken\":\"test_refresh_token\"},\"created\":\"2021-08-18T09:57:59.088Z\",\"modified\":\"2021-08-18T09:57:59.088Z\",\"updated\":\"2021-08-18T09:57:59.088Z\",\"createdDate\":\"2021-08-18T09:57:59.088Z\",\"modifiedDate\":\"2021-08-18T09:57:59.088Z\",\"updatedDate\":\"2021-08-18T09:57:59.088Z\",\"dueDate\":\"2021-08-18T09:57:59.088Z\",\"actionTime\":\"2021-08-18T09:57:59.088Z\",\"publishDate\":\"2021-08-18T09:57:59.088Z\",\"lastModified\":\"2021-08-18T09:57:59.088Z\",\"createdString\":\"2021-08-18T09:57:59.088Z\"}}}");
152
155
 
153
156
  const result = await base.makeRequest(requestVerb, requestUri, payload);
154
157
 
@@ -195,6 +198,12 @@ describe("Base class tests.", () => {
195
198
  sinon.assert.calledOnce(responseMockTextStub);
196
199
 
197
200
  sinon.assert.notCalled(authResetTokenStub);
201
+
202
+ sinon.assert.calledOnce(loggerDebug);
203
+ sinon.assert.calledWithExactly(
204
+ loggerDebug,
205
+ "Received code 200; content: {\"response\":{\"data\":{\"userIdentifier\":\"test_user_xxxxx\",\"foo\":{\"userSecret\":\"test_user_xxxxx\",\"accessToken\":\"test_accesxxxxx\",\"refreshToken\":\"test_refrexxxxx\"},\"created\":\"2021-08-18T09:57:59.088Z\",\"modified\":\"2021-08-18T09:57:59.088Z\",\"updated\":\"2021-08-18T09:57:59.088Z\",\"createdDate\":\"2021-08-18T09:57:59.088Z\",\"modifiedDate\":\"2021-08-18T09:57:59.088Z\",\"updatedDate\":\"2021-08-18T09:57:59.088Z\",\"dueDate\":\"2021-08-18T09:57:59.088Z\",\"actionTime\":\"2021-08-18T09:57:59.088Z\",\"publishDate\":\"2021-08-18T09:57:59.088Z\",\"lastModified\":\"2021-08-18T09:57:59.088Z\",\"createdString\":\"2021-08-18T09:57:59.088Z\"}}}"
206
+ );
198
207
  });
199
208
 
200
209
  it("Success (raw text response).", async () => {
package/test/jobs.spec.ts CHANGED
@@ -10,6 +10,7 @@ import { ListJobFilesParameters } from "../api/jobs/params/list-job-files-parame
10
10
  import { JobStatus } from "../api/jobs/params/job-status";
11
11
  import { RemoveFileParameters } from "../api/jobs/params/remove-file-parameters";
12
12
  import { JobProgressParameters } from "../api/jobs/params/job-progress-parameters";
13
+ import { CancelJobParameters } from "../api/jobs/params/cancel-job-parameters";
13
14
 
14
15
  describe("SmartlingJobsAPI class tests.", () => {
15
16
  const projectId = "testProjectId";
@@ -201,5 +202,28 @@ describe("SmartlingJobsAPI class tests.", () => {
201
202
  }
202
203
  );
203
204
  });
205
+
206
+ it("Cancel job", async () => {
207
+ const params = new CancelJobParameters();
208
+
209
+ params.setReason("Test reason");
210
+
211
+ await jobApi.cancelJob(projectId, jobUid, params);
212
+
213
+ sinon.assert.calledOnce(jobServiceApiFetchStub);
214
+ sinon.assert.calledWithExactly(
215
+ jobServiceApiFetchStub,
216
+ `https://test.com/jobs-api/v3/projects/${projectId}/jobs/${jobUid}/cancel`,
217
+ {
218
+ body: "{\"reason\":\"Test reason\"}",
219
+ headers: {
220
+ Authorization: "test_token_type test_access_token",
221
+ "Content-Type": "application/json",
222
+ "User-Agent": "test_user_agent"
223
+ },
224
+ method: "post"
225
+ }
226
+ );
227
+ });
204
228
  });
205
229
  });