smartling-api-sdk-nodejs 2.6.0 → 2.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/.scannerwork/report-task.txt +2 -2
- package/api/jobs/dto/job-dto.ts +2 -1
- package/api/jobs/index.ts +13 -0
- package/api/jobs/params/callback-method.ts +4 -0
- package/api/jobs/params/create-job-parameters.ts +2 -39
- package/api/jobs/params/create-update-job-base-parameters.ts +69 -0
- package/api/jobs/params/update-job-parameters.ts +4 -0
- package/api/published-files/dto/published-file-dto.ts +7 -0
- package/api/published-files/index.ts +25 -0
- package/api/published-files/params/recently-published-files-parameters.ts +42 -0
- package/built/api/jobs/dto/job-dto.d.ts +2 -1
- package/built/api/jobs/index.d.ts +2 -0
- package/built/api/jobs/index.js +5 -0
- package/built/api/jobs/index.js.map +1 -1
- package/built/api/jobs/params/callback-method.d.ts +4 -0
- package/built/api/jobs/params/callback-method.js +9 -0
- package/built/api/jobs/params/callback-method.js.map +1 -0
- package/built/api/jobs/params/create-job-parameters.d.ts +2 -6
- package/built/api/jobs/params/create-job-parameters.js +2 -28
- package/built/api/jobs/params/create-job-parameters.js.map +1 -1
- package/built/api/jobs/params/create-update-job-base-parameters.d.ts +16 -0
- package/built/api/jobs/params/create-update-job-base-parameters.js +49 -0
- package/built/api/jobs/params/create-update-job-base-parameters.js.map +1 -0
- package/built/api/jobs/params/update-job-parameters.d.ts +3 -0
- package/built/api/jobs/params/update-job-parameters.js +8 -0
- package/built/api/jobs/params/update-job-parameters.js.map +1 -0
- package/built/api/published-files/dto/published-file-dto.d.ts +6 -0
- package/built/api/published-files/dto/published-file-dto.js +3 -0
- package/built/api/published-files/dto/published-file-dto.js.map +1 -0
- package/built/api/published-files/index.d.ts +10 -0
- package/built/api/published-files/index.js +27 -0
- package/built/api/published-files/index.js.map +1 -0
- package/built/api/published-files/params/recently-published-files-parameters.d.ts +8 -0
- package/built/api/published-files/params/recently-published-files-parameters.js +35 -0
- package/built/api/published-files/params/recently-published-files-parameters.js.map +1 -0
- package/built/index.d.ts +5 -0
- package/built/index.js +5 -0
- package/built/index.js.map +1 -1
- package/built/package.json +1 -1
- package/index.ts +5 -0
- package/package.json +1 -1
- package/test/jobs.spec.ts +82 -0
- package/test/published-files.spec.ts +74 -0
|
@@ -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=
|
|
6
|
-
ceTaskUrl=https://sonar-next.connectors.stg.smartling.net/api/ce/task?id=
|
|
5
|
+
ceTaskId=AYzVPng9Re7rJHsZ61o1
|
|
6
|
+
ceTaskUrl=https://sonar-next.connectors.stg.smartling.net/api/ce/task?id=AYzVPng9Re7rJHsZ61o1
|
package/api/jobs/dto/job-dto.ts
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { CustomFieldDto } from "./custom-field-dto";
|
|
2
2
|
import { BaseJobDto } from "./base-job-dto";
|
|
3
|
+
import { CallbackMethod } from "../params/callback-method";
|
|
3
4
|
|
|
4
5
|
interface JobDto extends BaseJobDto {
|
|
5
|
-
callbackMethod:
|
|
6
|
+
callbackMethod: CallbackMethod;
|
|
6
7
|
callbackUrl: string;
|
|
7
8
|
createdByUserUid: string;
|
|
8
9
|
firstCompletedDate: string;
|
package/api/jobs/index.ts
CHANGED
|
@@ -21,6 +21,7 @@ import { SearchJobsParameters } from "./params/search-jobs-parameters";
|
|
|
21
21
|
import { FullSourceFileDto } from "./dto/full-source-file-dto";
|
|
22
22
|
import { AddedFileDto } from "./dto/added-file-dto";
|
|
23
23
|
import { AuthorizeJobParameters } from "./params/authorize-job-parameters";
|
|
24
|
+
import { UpdateJobParameters } from "./params/update-job-parameters";
|
|
24
25
|
|
|
25
26
|
export class SmartlingJobsApi extends SmartlingBaseApi {
|
|
26
27
|
constructor(smartlingApiBaseUrl: string, authApi: SmartlingAuthApi, logger: Logger) {
|
|
@@ -37,6 +38,18 @@ export class SmartlingJobsApi extends SmartlingBaseApi {
|
|
|
37
38
|
);
|
|
38
39
|
}
|
|
39
40
|
|
|
41
|
+
async updateJob(
|
|
42
|
+
projectId: string,
|
|
43
|
+
translationJobUid: string,
|
|
44
|
+
params: UpdateJobParameters
|
|
45
|
+
): Promise<JobDto> {
|
|
46
|
+
return await this.makeRequest(
|
|
47
|
+
"put",
|
|
48
|
+
`${this.entrypoint}/${projectId}/jobs/${translationJobUid}`,
|
|
49
|
+
JSON.stringify(params.export())
|
|
50
|
+
);
|
|
51
|
+
}
|
|
52
|
+
|
|
40
53
|
async getJob(projectId: string, translationJobUid: string): Promise<JobDetailsDto> {
|
|
41
54
|
return await this.makeRequest(
|
|
42
55
|
"get",
|
|
@@ -1,46 +1,9 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { SmartlingException } from "../../exception/index";
|
|
3
|
-
|
|
4
|
-
export class CreateJobParameters extends BaseParameters {
|
|
5
|
-
setName(jobName: string): CreateJobParameters {
|
|
6
|
-
if (jobName.length >= 170) {
|
|
7
|
-
throw new SmartlingException("Job name should be less than 170 characters.");
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
this.set("jobName", jobName);
|
|
11
|
-
|
|
12
|
-
return this;
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
setDescription(description: string): CreateJobParameters {
|
|
16
|
-
if (description.length >= 2000) {
|
|
17
|
-
throw new SmartlingException("Job description should be less than 2000 characters.");
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
this.set("description", description);
|
|
21
|
-
|
|
22
|
-
return this;
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
setDueDate(dueDate: Date): CreateJobParameters {
|
|
26
|
-
if (dueDate.getTime() < (new Date()).getTime()) {
|
|
27
|
-
throw new SmartlingException("Job Due Date cannot be in the past.");
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
this.set("dueDate", dueDate.toISOString());
|
|
31
|
-
|
|
32
|
-
return this;
|
|
33
|
-
}
|
|
1
|
+
import { CreateUpdateJobBaseParameters } from "./create-update-job-base-parameters";
|
|
34
2
|
|
|
3
|
+
export class CreateJobParameters extends CreateUpdateJobBaseParameters<CreateJobParameters> {
|
|
35
4
|
setTargetLocaleIds(targetLocaleIds: string[]): CreateJobParameters {
|
|
36
5
|
this.set("targetLocaleIds", targetLocaleIds);
|
|
37
6
|
|
|
38
7
|
return this;
|
|
39
8
|
}
|
|
40
|
-
|
|
41
|
-
setCallbackUrl(callbackUrl: string): CreateJobParameters {
|
|
42
|
-
this.set("callbackUrl", callbackUrl);
|
|
43
|
-
|
|
44
|
-
return this;
|
|
45
|
-
}
|
|
46
9
|
}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { BaseParameters } from "../../parameters";
|
|
2
|
+
import { SmartlingException } from "../../exception";
|
|
3
|
+
import { CallbackMethod } from "./callback-method";
|
|
4
|
+
|
|
5
|
+
interface CustomFieldBasicRequest {
|
|
6
|
+
fieldUid: string,
|
|
7
|
+
fieldValue: string
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export abstract class CreateUpdateJobBaseParameters<T extends CreateUpdateJobBaseParameters<T>>
|
|
11
|
+
extends BaseParameters {
|
|
12
|
+
setName(jobName: string): T {
|
|
13
|
+
if (jobName.length >= 170) {
|
|
14
|
+
throw new SmartlingException("Job name should be less than 170 characters.");
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
this.set("jobName", jobName);
|
|
18
|
+
|
|
19
|
+
return this as unknown as T;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
setDescription(description: string | null): T {
|
|
23
|
+
if (description && (description.length >= 2000)) {
|
|
24
|
+
throw new SmartlingException("Job description should be less than 2000 characters.");
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
this.set("description", description);
|
|
28
|
+
|
|
29
|
+
return this as unknown as T;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
setDueDate(dueDate: Date | null): T {
|
|
33
|
+
if (dueDate && (dueDate.getTime() < (new Date()).getTime())) {
|
|
34
|
+
throw new SmartlingException("Job Due Date cannot be in the past.");
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
this.set("dueDate", dueDate ? dueDate.toISOString() : null);
|
|
38
|
+
|
|
39
|
+
return this as unknown as T;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
setReferenceNumber(referenceNumber: string | null): T {
|
|
43
|
+
this.set("referenceNumber", referenceNumber);
|
|
44
|
+
|
|
45
|
+
return this as unknown as T;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
setCallbackUrl(callbackUrl: string | null): T {
|
|
49
|
+
if (callbackUrl && (callbackUrl.length > 8192)) {
|
|
50
|
+
throw new SmartlingException("Job callback URL should be not greater than 8192 characters.");
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
this.set("callbackUrl", callbackUrl);
|
|
54
|
+
|
|
55
|
+
return this as unknown as T;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
setCallbackMethod(callbackMethod: CallbackMethod | null): T {
|
|
59
|
+
this.set("callbackMethod", callbackMethod);
|
|
60
|
+
|
|
61
|
+
return this as unknown as T;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
setCustomFields(customFields: CustomFieldBasicRequest[]): T {
|
|
65
|
+
this.set("customFields", customFields);
|
|
66
|
+
|
|
67
|
+
return this as unknown as T;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { SmartlingBaseApi } from "../base/index";
|
|
2
|
+
import { SmartlingAuthApi } from "../auth/index";
|
|
3
|
+
import { Logger } from "../logger";
|
|
4
|
+
import { RecentlyPublishedFilesParameters } from "./params/recently-published-files-parameters";
|
|
5
|
+
import { PublishedFileDto } from "./dto/published-file-dto";
|
|
6
|
+
import { SmartlingListResponse } from "../http/smartling-list-response";
|
|
7
|
+
|
|
8
|
+
export class SmartlingPublishedFilesApi extends SmartlingBaseApi {
|
|
9
|
+
constructor(smartlingApiBaseUrl: string, authApi: SmartlingAuthApi, logger: Logger) {
|
|
10
|
+
super(logger);
|
|
11
|
+
|
|
12
|
+
this.authApi = authApi;
|
|
13
|
+
this.entrypoint = `${smartlingApiBaseUrl}/published-files-api/v2`;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
public async getRecentlyPublishedFiles(
|
|
17
|
+
projectUid: string, params: RecentlyPublishedFilesParameters
|
|
18
|
+
): Promise<SmartlingListResponse<PublishedFileDto>> {
|
|
19
|
+
return await this.makeRequest(
|
|
20
|
+
"get",
|
|
21
|
+
`${this.entrypoint}/projects/${projectUid}/files/list/recently-published`,
|
|
22
|
+
params.export()
|
|
23
|
+
);
|
|
24
|
+
}
|
|
25
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { BaseParameters } from "../../parameters";
|
|
2
|
+
import { SmartlingException } from "../../exception";
|
|
3
|
+
|
|
4
|
+
export class RecentlyPublishedFilesParameters extends BaseParameters {
|
|
5
|
+
public setPublishedAfterDate(publishedAfterDate: Date): RecentlyPublishedFilesParameters {
|
|
6
|
+
this.set("publishedAfter", `${publishedAfterDate.toISOString().split(".")[0]}Z`);
|
|
7
|
+
|
|
8
|
+
return this;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
setLimit(limit: number): RecentlyPublishedFilesParameters {
|
|
12
|
+
if (limit > 0) {
|
|
13
|
+
this.set("limit", limit);
|
|
14
|
+
|
|
15
|
+
return this;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
throw new SmartlingException("Limit must be > 0");
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
setOffset(offset: number): RecentlyPublishedFilesParameters {
|
|
22
|
+
if (offset >= 0) {
|
|
23
|
+
this.set("offset", offset);
|
|
24
|
+
|
|
25
|
+
return this;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
throw new SmartlingException("Offset must be >= 0");
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
setFileUris(fileUris: Array<string>): RecentlyPublishedFilesParameters {
|
|
32
|
+
this.set("fileUris[]", fileUris);
|
|
33
|
+
|
|
34
|
+
return this;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
setLocaleIds(localeIds: Array<string>): RecentlyPublishedFilesParameters {
|
|
38
|
+
this.set("localeIds[]", localeIds);
|
|
39
|
+
|
|
40
|
+
return this;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { CustomFieldDto } from "./custom-field-dto";
|
|
2
2
|
import { BaseJobDto } from "./base-job-dto";
|
|
3
|
+
import { CallbackMethod } from "../params/callback-method";
|
|
3
4
|
interface JobDto extends BaseJobDto {
|
|
4
|
-
callbackMethod:
|
|
5
|
+
callbackMethod: CallbackMethod;
|
|
5
6
|
callbackUrl: string;
|
|
6
7
|
createdByUserUid: string;
|
|
7
8
|
firstCompletedDate: string;
|
|
@@ -21,9 +21,11 @@ import { SearchJobsParameters } from "./params/search-jobs-parameters";
|
|
|
21
21
|
import { FullSourceFileDto } from "./dto/full-source-file-dto";
|
|
22
22
|
import { AddedFileDto } from "./dto/added-file-dto";
|
|
23
23
|
import { AuthorizeJobParameters } from "./params/authorize-job-parameters";
|
|
24
|
+
import { UpdateJobParameters } from "./params/update-job-parameters";
|
|
24
25
|
export declare class SmartlingJobsApi extends SmartlingBaseApi {
|
|
25
26
|
constructor(smartlingApiBaseUrl: string, authApi: SmartlingAuthApi, logger: Logger);
|
|
26
27
|
createJob(projectId: string, params: CreateJobParameters): Promise<JobDto>;
|
|
28
|
+
updateJob(projectId: string, translationJobUid: string, params: UpdateJobParameters): Promise<JobDto>;
|
|
27
29
|
getJob(projectId: string, translationJobUid: string): Promise<JobDetailsDto>;
|
|
28
30
|
authorizeJob(projectId: string, translationJobUid: string, params: AuthorizeJobParameters): Promise<Record<string, unknown>>;
|
|
29
31
|
getJobFiles(projectId: string, translationJobUid: string, params: ListJobFilesParameters): Promise<SmartlingListResponse<FullSourceFileDto>>;
|
package/built/api/jobs/index.js
CHANGED
|
@@ -22,6 +22,11 @@ class SmartlingJobsApi extends index_1.SmartlingBaseApi {
|
|
|
22
22
|
return yield this.makeRequest("post", `${this.entrypoint}/${projectId}/jobs`, JSON.stringify(params.export()));
|
|
23
23
|
});
|
|
24
24
|
}
|
|
25
|
+
updateJob(projectId, translationJobUid, params) {
|
|
26
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
27
|
+
return yield this.makeRequest("put", `${this.entrypoint}/${projectId}/jobs/${translationJobUid}`, JSON.stringify(params.export()));
|
|
28
|
+
});
|
|
29
|
+
}
|
|
25
30
|
getJob(projectId, translationJobUid) {
|
|
26
31
|
return __awaiter(this, void 0, void 0, function* () {
|
|
27
32
|
return yield this.makeRequest("get", `${this.entrypoint}/${projectId}/jobs/${translationJobUid}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../api/jobs/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yCAAiD;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../api/jobs/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CallbackMethod = void 0;
|
|
4
|
+
var CallbackMethod;
|
|
5
|
+
(function (CallbackMethod) {
|
|
6
|
+
CallbackMethod["GET"] = "GET";
|
|
7
|
+
CallbackMethod["POST"] = "POST";
|
|
8
|
+
})(CallbackMethod = exports.CallbackMethod || (exports.CallbackMethod = {}));
|
|
9
|
+
//# sourceMappingURL=callback-method.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"callback-method.js","sourceRoot":"","sources":["../../../../api/jobs/params/callback-method.ts"],"names":[],"mappings":";;;AAAA,IAAY,cAGX;AAHD,WAAY,cAAc;IACtB,6BAAW,CAAA;IACX,+BAAa,CAAA;AACjB,CAAC,EAHW,cAAc,GAAd,sBAAc,KAAd,sBAAc,QAGzB"}
|
|
@@ -1,8 +1,4 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export declare class CreateJobParameters extends
|
|
3
|
-
setName(jobName: string): CreateJobParameters;
|
|
4
|
-
setDescription(description: string): CreateJobParameters;
|
|
5
|
-
setDueDate(dueDate: Date): CreateJobParameters;
|
|
1
|
+
import { CreateUpdateJobBaseParameters } from "./create-update-job-base-parameters";
|
|
2
|
+
export declare class CreateJobParameters extends CreateUpdateJobBaseParameters<CreateJobParameters> {
|
|
6
3
|
setTargetLocaleIds(targetLocaleIds: string[]): CreateJobParameters;
|
|
7
|
-
setCallbackUrl(callbackUrl: string): CreateJobParameters;
|
|
8
4
|
}
|
|
@@ -1,38 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.CreateJobParameters = void 0;
|
|
4
|
-
const
|
|
5
|
-
|
|
6
|
-
class CreateJobParameters extends index_1.BaseParameters {
|
|
7
|
-
setName(jobName) {
|
|
8
|
-
if (jobName.length >= 170) {
|
|
9
|
-
throw new index_2.SmartlingException("Job name should be less than 170 characters.");
|
|
10
|
-
}
|
|
11
|
-
this.set("jobName", jobName);
|
|
12
|
-
return this;
|
|
13
|
-
}
|
|
14
|
-
setDescription(description) {
|
|
15
|
-
if (description.length >= 2000) {
|
|
16
|
-
throw new index_2.SmartlingException("Job description should be less than 2000 characters.");
|
|
17
|
-
}
|
|
18
|
-
this.set("description", description);
|
|
19
|
-
return this;
|
|
20
|
-
}
|
|
21
|
-
setDueDate(dueDate) {
|
|
22
|
-
if (dueDate.getTime() < (new Date()).getTime()) {
|
|
23
|
-
throw new index_2.SmartlingException("Job Due Date cannot be in the past.");
|
|
24
|
-
}
|
|
25
|
-
this.set("dueDate", dueDate.toISOString());
|
|
26
|
-
return this;
|
|
27
|
-
}
|
|
4
|
+
const create_update_job_base_parameters_1 = require("./create-update-job-base-parameters");
|
|
5
|
+
class CreateJobParameters extends create_update_job_base_parameters_1.CreateUpdateJobBaseParameters {
|
|
28
6
|
setTargetLocaleIds(targetLocaleIds) {
|
|
29
7
|
this.set("targetLocaleIds", targetLocaleIds);
|
|
30
8
|
return this;
|
|
31
9
|
}
|
|
32
|
-
setCallbackUrl(callbackUrl) {
|
|
33
|
-
this.set("callbackUrl", callbackUrl);
|
|
34
|
-
return this;
|
|
35
|
-
}
|
|
36
10
|
}
|
|
37
11
|
exports.CreateJobParameters = CreateJobParameters;
|
|
38
12
|
//# sourceMappingURL=create-job-parameters.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-job-parameters.js","sourceRoot":"","sources":["../../../../api/jobs/params/create-job-parameters.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"create-job-parameters.js","sourceRoot":"","sources":["../../../../api/jobs/params/create-job-parameters.ts"],"names":[],"mappings":";;;AAAA,2FAAoF;AAEpF,MAAa,mBAAoB,SAAQ,iEAAkD;IACvF,kBAAkB,CAAC,eAAyB;QACxC,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,eAAe,CAAC,CAAC;QAE7C,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ;AAND,kDAMC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { BaseParameters } from "../../parameters";
|
|
2
|
+
import { CallbackMethod } from "./callback-method";
|
|
3
|
+
interface CustomFieldBasicRequest {
|
|
4
|
+
fieldUid: string;
|
|
5
|
+
fieldValue: string;
|
|
6
|
+
}
|
|
7
|
+
export declare abstract class CreateUpdateJobBaseParameters<T extends CreateUpdateJobBaseParameters<T>> extends BaseParameters {
|
|
8
|
+
setName(jobName: string): T;
|
|
9
|
+
setDescription(description: string | null): T;
|
|
10
|
+
setDueDate(dueDate: Date | null): T;
|
|
11
|
+
setReferenceNumber(referenceNumber: string | null): T;
|
|
12
|
+
setCallbackUrl(callbackUrl: string | null): T;
|
|
13
|
+
setCallbackMethod(callbackMethod: CallbackMethod | null): T;
|
|
14
|
+
setCustomFields(customFields: CustomFieldBasicRequest[]): T;
|
|
15
|
+
}
|
|
16
|
+
export {};
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CreateUpdateJobBaseParameters = void 0;
|
|
4
|
+
const parameters_1 = require("../../parameters");
|
|
5
|
+
const exception_1 = require("../../exception");
|
|
6
|
+
class CreateUpdateJobBaseParameters extends parameters_1.BaseParameters {
|
|
7
|
+
setName(jobName) {
|
|
8
|
+
if (jobName.length >= 170) {
|
|
9
|
+
throw new exception_1.SmartlingException("Job name should be less than 170 characters.");
|
|
10
|
+
}
|
|
11
|
+
this.set("jobName", jobName);
|
|
12
|
+
return this;
|
|
13
|
+
}
|
|
14
|
+
setDescription(description) {
|
|
15
|
+
if (description && (description.length >= 2000)) {
|
|
16
|
+
throw new exception_1.SmartlingException("Job description should be less than 2000 characters.");
|
|
17
|
+
}
|
|
18
|
+
this.set("description", description);
|
|
19
|
+
return this;
|
|
20
|
+
}
|
|
21
|
+
setDueDate(dueDate) {
|
|
22
|
+
if (dueDate && (dueDate.getTime() < (new Date()).getTime())) {
|
|
23
|
+
throw new exception_1.SmartlingException("Job Due Date cannot be in the past.");
|
|
24
|
+
}
|
|
25
|
+
this.set("dueDate", dueDate ? dueDate.toISOString() : null);
|
|
26
|
+
return this;
|
|
27
|
+
}
|
|
28
|
+
setReferenceNumber(referenceNumber) {
|
|
29
|
+
this.set("referenceNumber", referenceNumber);
|
|
30
|
+
return this;
|
|
31
|
+
}
|
|
32
|
+
setCallbackUrl(callbackUrl) {
|
|
33
|
+
if (callbackUrl && (callbackUrl.length > 8192)) {
|
|
34
|
+
throw new exception_1.SmartlingException("Job callback URL should be not greater than 8192 characters.");
|
|
35
|
+
}
|
|
36
|
+
this.set("callbackUrl", callbackUrl);
|
|
37
|
+
return this;
|
|
38
|
+
}
|
|
39
|
+
setCallbackMethod(callbackMethod) {
|
|
40
|
+
this.set("callbackMethod", callbackMethod);
|
|
41
|
+
return this;
|
|
42
|
+
}
|
|
43
|
+
setCustomFields(customFields) {
|
|
44
|
+
this.set("customFields", customFields);
|
|
45
|
+
return this;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
exports.CreateUpdateJobBaseParameters = CreateUpdateJobBaseParameters;
|
|
49
|
+
//# sourceMappingURL=create-update-job-base-parameters.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"create-update-job-base-parameters.js","sourceRoot":"","sources":["../../../../api/jobs/params/create-update-job-base-parameters.ts"],"names":[],"mappings":";;;AAAA,iDAAkD;AAClD,+CAAqD;AAQrD,MAAsB,6BAClB,SAAQ,2BAAc;IACtB,OAAO,CAAC,OAAe;QACnB,IAAI,OAAO,CAAC,MAAM,IAAI,GAAG,EAAE;YACvB,MAAM,IAAI,8BAAkB,CAAC,8CAA8C,CAAC,CAAC;SAChF;QAED,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAE7B,OAAO,IAAoB,CAAC;IAChC,CAAC;IAED,cAAc,CAAC,WAA0B;QACrC,IAAI,WAAW,IAAI,CAAC,WAAW,CAAC,MAAM,IAAI,IAAI,CAAC,EAAE;YAC7C,MAAM,IAAI,8BAAkB,CAAC,sDAAsD,CAAC,CAAC;SACxF;QAED,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;QAErC,OAAO,IAAoB,CAAC;IAChC,CAAC;IAED,UAAU,CAAC,OAAoB;QAC3B,IAAI,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,EAAE;YACzD,MAAM,IAAI,8BAAkB,CAAC,qCAAqC,CAAC,CAAC;SACvE;QAED,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAE5D,OAAO,IAAoB,CAAC;IAChC,CAAC;IAED,kBAAkB,CAAC,eAA8B;QAC7C,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,eAAe,CAAC,CAAC;QAE7C,OAAO,IAAoB,CAAC;IAChC,CAAC;IAED,cAAc,CAAC,WAA0B;QACrC,IAAI,WAAW,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE;YAC5C,MAAM,IAAI,8BAAkB,CAAC,8DAA8D,CAAC,CAAC;SAChG;QAED,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;QAErC,OAAO,IAAoB,CAAC;IAChC,CAAC;IAED,iBAAiB,CAAC,cAAqC;QACnD,IAAI,CAAC,GAAG,CAAC,gBAAgB,EAAE,cAAc,CAAC,CAAC;QAE3C,OAAO,IAAoB,CAAC;IAChC,CAAC;IAED,eAAe,CAAC,YAAuC;QACnD,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,YAAY,CAAC,CAAC;QAEvC,OAAO,IAAoB,CAAC;IAChC,CAAC;CACJ;AA3DD,sEA2DC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.UpdateJobParameters = void 0;
|
|
4
|
+
const create_update_job_base_parameters_1 = require("./create-update-job-base-parameters");
|
|
5
|
+
class UpdateJobParameters extends create_update_job_base_parameters_1.CreateUpdateJobBaseParameters {
|
|
6
|
+
}
|
|
7
|
+
exports.UpdateJobParameters = UpdateJobParameters;
|
|
8
|
+
//# sourceMappingURL=update-job-parameters.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update-job-parameters.js","sourceRoot":"","sources":["../../../../api/jobs/params/update-job-parameters.ts"],"names":[],"mappings":";;;AAAA,2FAAoF;AAEpF,MAAa,mBAAoB,SAAQ,iEAAkD;CAC1F;AADD,kDACC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"published-file-dto.js","sourceRoot":"","sources":["../../../../api/published-files/dto/published-file-dto.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { SmartlingBaseApi } from "../base/index";
|
|
2
|
+
import { SmartlingAuthApi } from "../auth/index";
|
|
3
|
+
import { Logger } from "../logger";
|
|
4
|
+
import { RecentlyPublishedFilesParameters } from "./params/recently-published-files-parameters";
|
|
5
|
+
import { PublishedFileDto } from "./dto/published-file-dto";
|
|
6
|
+
import { SmartlingListResponse } from "../http/smartling-list-response";
|
|
7
|
+
export declare class SmartlingPublishedFilesApi extends SmartlingBaseApi {
|
|
8
|
+
constructor(smartlingApiBaseUrl: string, authApi: SmartlingAuthApi, logger: Logger);
|
|
9
|
+
getRecentlyPublishedFiles(projectUid: string, params: RecentlyPublishedFilesParameters): Promise<SmartlingListResponse<PublishedFileDto>>;
|
|
10
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.SmartlingPublishedFilesApi = void 0;
|
|
13
|
+
const index_1 = require("../base/index");
|
|
14
|
+
class SmartlingPublishedFilesApi extends index_1.SmartlingBaseApi {
|
|
15
|
+
constructor(smartlingApiBaseUrl, authApi, logger) {
|
|
16
|
+
super(logger);
|
|
17
|
+
this.authApi = authApi;
|
|
18
|
+
this.entrypoint = `${smartlingApiBaseUrl}/published-files-api/v2`;
|
|
19
|
+
}
|
|
20
|
+
getRecentlyPublishedFiles(projectUid, params) {
|
|
21
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
22
|
+
return yield this.makeRequest("get", `${this.entrypoint}/projects/${projectUid}/files/list/recently-published`, params.export());
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
exports.SmartlingPublishedFilesApi = SmartlingPublishedFilesApi;
|
|
27
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../api/published-files/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yCAAiD;AAOjD,MAAa,0BAA2B,SAAQ,wBAAgB;IAC5D,YAAY,mBAA2B,EAAE,OAAyB,EAAE,MAAc;QAC9E,KAAK,CAAC,MAAM,CAAC,CAAC;QAEd,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,UAAU,GAAG,GAAG,mBAAmB,yBAAyB,CAAC;IACtE,CAAC;IAEY,yBAAyB,CAClC,UAAkB,EAAE,MAAwC;;YAE5D,OAAO,MAAM,IAAI,CAAC,WAAW,CACzB,KAAK,EACL,GAAG,IAAI,CAAC,UAAU,aAAa,UAAU,gCAAgC,EACzE,MAAM,CAAC,MAAM,EAAE,CAClB,CAAC;QACN,CAAC;KAAA;CACJ;AAjBD,gEAiBC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { BaseParameters } from "../../parameters";
|
|
2
|
+
export declare class RecentlyPublishedFilesParameters extends BaseParameters {
|
|
3
|
+
setPublishedAfterDate(publishedAfterDate: Date): RecentlyPublishedFilesParameters;
|
|
4
|
+
setLimit(limit: number): RecentlyPublishedFilesParameters;
|
|
5
|
+
setOffset(offset: number): RecentlyPublishedFilesParameters;
|
|
6
|
+
setFileUris(fileUris: Array<string>): RecentlyPublishedFilesParameters;
|
|
7
|
+
setLocaleIds(localeIds: Array<string>): RecentlyPublishedFilesParameters;
|
|
8
|
+
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RecentlyPublishedFilesParameters = void 0;
|
|
4
|
+
const parameters_1 = require("../../parameters");
|
|
5
|
+
const exception_1 = require("../../exception");
|
|
6
|
+
class RecentlyPublishedFilesParameters extends parameters_1.BaseParameters {
|
|
7
|
+
setPublishedAfterDate(publishedAfterDate) {
|
|
8
|
+
this.set("publishedAfter", `${publishedAfterDate.toISOString().split(".")[0]}Z`);
|
|
9
|
+
return this;
|
|
10
|
+
}
|
|
11
|
+
setLimit(limit) {
|
|
12
|
+
if (limit > 0) {
|
|
13
|
+
this.set("limit", limit);
|
|
14
|
+
return this;
|
|
15
|
+
}
|
|
16
|
+
throw new exception_1.SmartlingException("Limit must be > 0");
|
|
17
|
+
}
|
|
18
|
+
setOffset(offset) {
|
|
19
|
+
if (offset >= 0) {
|
|
20
|
+
this.set("offset", offset);
|
|
21
|
+
return this;
|
|
22
|
+
}
|
|
23
|
+
throw new exception_1.SmartlingException("Offset must be >= 0");
|
|
24
|
+
}
|
|
25
|
+
setFileUris(fileUris) {
|
|
26
|
+
this.set("fileUris[]", fileUris);
|
|
27
|
+
return this;
|
|
28
|
+
}
|
|
29
|
+
setLocaleIds(localeIds) {
|
|
30
|
+
this.set("localeIds[]", localeIds);
|
|
31
|
+
return this;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
exports.RecentlyPublishedFilesParameters = RecentlyPublishedFilesParameters;
|
|
35
|
+
//# sourceMappingURL=recently-published-files-parameters.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"recently-published-files-parameters.js","sourceRoot":"","sources":["../../../../api/published-files/params/recently-published-files-parameters.ts"],"names":[],"mappings":";;;AAAA,iDAAkD;AAClD,+CAAqD;AAErD,MAAa,gCAAiC,SAAQ,2BAAc;IACzD,qBAAqB,CAAC,kBAAwB;QACjD,IAAI,CAAC,GAAG,CAAC,gBAAgB,EAAE,GAAG,kBAAkB,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAEjF,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,QAAQ,CAAC,KAAa;QAClB,IAAI,KAAK,GAAG,CAAC,EAAE;YACX,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAEzB,OAAO,IAAI,CAAC;SACf;QAED,MAAM,IAAI,8BAAkB,CAAC,mBAAmB,CAAC,CAAC;IACtD,CAAC;IAED,SAAS,CAAC,MAAc;QACpB,IAAI,MAAM,IAAI,CAAC,EAAE;YACb,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YAE3B,OAAO,IAAI,CAAC;SACf;QAED,MAAM,IAAI,8BAAkB,CAAC,qBAAqB,CAAC,CAAC;IACxD,CAAC;IAED,WAAW,CAAC,QAAuB;QAC/B,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;QAEjC,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,YAAY,CAAC,SAAwB;QACjC,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;QAEnC,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ;AAtCD,4EAsCC"}
|
package/built/index.d.ts
CHANGED
|
@@ -68,6 +68,7 @@ export * from "./api/jobs/dto/removed-file-dto";
|
|
|
68
68
|
export * from "./api/jobs/dto/progress-item-dto";
|
|
69
69
|
export * from "./api/jobs/dto/summary-report-item-dto";
|
|
70
70
|
export * from "./api/jobs/dto/job-progress-dto";
|
|
71
|
+
export * from "./api/jobs/params/callback-method";
|
|
71
72
|
export * from "./api/jobs/params/create-job-parameters";
|
|
72
73
|
export * from "./api/jobs/params/file-progress-parameters";
|
|
73
74
|
export * from "./api/jobs/params/job-progress-parameters";
|
|
@@ -78,11 +79,15 @@ export * from "./api/jobs/params/remove-file-parameters";
|
|
|
78
79
|
export * from "./api/jobs/params/cancel-job-parameters";
|
|
79
80
|
export * from "./api/jobs/params/close-job-parameters";
|
|
80
81
|
export * from "./api/jobs/params/search-jobs-parameters";
|
|
82
|
+
export * from "./api/jobs/params/update-job-parameters";
|
|
81
83
|
export * from "./api/parameters/index";
|
|
82
84
|
export * from "./api/parameters/order";
|
|
83
85
|
export * from "./api/projects/index";
|
|
84
86
|
export * from "./api/projects/dto/project-dto";
|
|
85
87
|
export * from "./api/projects/dto/locale-dto";
|
|
88
|
+
export * from "./api/published-files/index";
|
|
89
|
+
export * from "./api/published-files/dto/published-file-dto";
|
|
90
|
+
export * from "./api/published-files/params/recently-published-files-parameters";
|
|
86
91
|
export * from "./api/strings/index";
|
|
87
92
|
export * from "./api/strings/dto/source-string-dto";
|
|
88
93
|
export * from "./api/strings/dto/source-string-key-dto";
|
package/built/index.js
CHANGED
|
@@ -84,6 +84,7 @@ __exportStar(require("./api/jobs/dto/removed-file-dto"), exports);
|
|
|
84
84
|
__exportStar(require("./api/jobs/dto/progress-item-dto"), exports);
|
|
85
85
|
__exportStar(require("./api/jobs/dto/summary-report-item-dto"), exports);
|
|
86
86
|
__exportStar(require("./api/jobs/dto/job-progress-dto"), exports);
|
|
87
|
+
__exportStar(require("./api/jobs/params/callback-method"), exports);
|
|
87
88
|
__exportStar(require("./api/jobs/params/create-job-parameters"), exports);
|
|
88
89
|
__exportStar(require("./api/jobs/params/file-progress-parameters"), exports);
|
|
89
90
|
__exportStar(require("./api/jobs/params/job-progress-parameters"), exports);
|
|
@@ -94,11 +95,15 @@ __exportStar(require("./api/jobs/params/remove-file-parameters"), exports);
|
|
|
94
95
|
__exportStar(require("./api/jobs/params/cancel-job-parameters"), exports);
|
|
95
96
|
__exportStar(require("./api/jobs/params/close-job-parameters"), exports);
|
|
96
97
|
__exportStar(require("./api/jobs/params/search-jobs-parameters"), exports);
|
|
98
|
+
__exportStar(require("./api/jobs/params/update-job-parameters"), exports);
|
|
97
99
|
__exportStar(require("./api/parameters/index"), exports);
|
|
98
100
|
__exportStar(require("./api/parameters/order"), exports);
|
|
99
101
|
__exportStar(require("./api/projects/index"), exports);
|
|
100
102
|
__exportStar(require("./api/projects/dto/project-dto"), exports);
|
|
101
103
|
__exportStar(require("./api/projects/dto/locale-dto"), exports);
|
|
104
|
+
__exportStar(require("./api/published-files/index"), exports);
|
|
105
|
+
__exportStar(require("./api/published-files/dto/published-file-dto"), exports);
|
|
106
|
+
__exportStar(require("./api/published-files/params/recently-published-files-parameters"), exports);
|
|
102
107
|
__exportStar(require("./api/strings/index"), exports);
|
|
103
108
|
__exportStar(require("./api/strings/dto/source-string-dto"), exports);
|
|
104
109
|
__exportStar(require("./api/strings/dto/source-string-key-dto"), exports);
|
package/built/index.js.map
CHANGED
|
@@ -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,gEAA8C;AAC9C,4FAA0E;AAC1E,2FAAyE;AACzE,oEAAkD;AAClD,oFAAkE;AAClE,qFAAmE;AACnE,uFAAqE;AACrE,4FAA0E;AAC1E,2EAAyD;AACzD,uEAAqD;AACrD,8EAA4D;AAC5D,4FAA0E;AAC1E,qFAAmE;AACnE,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,4EAA0D;AAC1D,mFAAiE;AACjE,wFAAsE;AACtE,2FAAyE;AACzE,wFAAsE;AACtE,0FAAwE;AACxE,wEAAsD;AACtD,wEAAsD;AACtD,mFAAiE;AACjE,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,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;AAC7B,wEAAsD;AACtD,+FAA6E;AAC7E,6EAA2D"}
|
|
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,gEAA8C;AAC9C,4FAA0E;AAC1E,2FAAyE;AACzE,oEAAkD;AAClD,oFAAkE;AAClE,qFAAmE;AACnE,uFAAqE;AACrE,4FAA0E;AAC1E,2EAAyD;AACzD,uEAAqD;AACrD,8EAA4D;AAC5D,4FAA0E;AAC1E,qFAAmE;AACnE,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,4EAA0D;AAC1D,mFAAiE;AACjE,wFAAsE;AACtE,2FAAyE;AACzE,wFAAsE;AACtE,0FAAwE;AACxE,wEAAsD;AACtD,wEAAsD;AACtD,mFAAiE;AACjE,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,oEAAkD;AAClD,0EAAwD;AACxD,6EAA2D;AAC3D,4EAA0D;AAC1D,+DAA6C;AAC7C,8EAA4D;AAC5D,yEAAuD;AACvD,2EAAyD;AACzD,0EAAwD;AACxD,yEAAuD;AACvD,2EAAyD;AACzD,0EAAwD;AACxD,yDAAuC;AACvC,yDAAuC;AACvC,uDAAqC;AACrC,iEAA+C;AAC/C,gEAA8C;AAC9C,8DAA4C;AAC5C,+EAA6D;AAC7D,mGAAiF;AACjF,sDAAoC;AACpC,sEAAoD;AACpD,0EAAwD;AACxD,uFAAqE;AACrE,+CAA6B;AAC7B,wEAAsD;AACtD,+FAA6E;AAC7E,6EAA2D"}
|
package/built/package.json
CHANGED
package/index.ts
CHANGED
|
@@ -68,6 +68,7 @@ export * from "./api/jobs/dto/removed-file-dto";
|
|
|
68
68
|
export * from "./api/jobs/dto/progress-item-dto";
|
|
69
69
|
export * from "./api/jobs/dto/summary-report-item-dto";
|
|
70
70
|
export * from "./api/jobs/dto/job-progress-dto";
|
|
71
|
+
export * from "./api/jobs/params/callback-method";
|
|
71
72
|
export * from "./api/jobs/params/create-job-parameters";
|
|
72
73
|
export * from "./api/jobs/params/file-progress-parameters";
|
|
73
74
|
export * from "./api/jobs/params/job-progress-parameters";
|
|
@@ -78,11 +79,15 @@ export * from "./api/jobs/params/remove-file-parameters";
|
|
|
78
79
|
export * from "./api/jobs/params/cancel-job-parameters";
|
|
79
80
|
export * from "./api/jobs/params/close-job-parameters";
|
|
80
81
|
export * from "./api/jobs/params/search-jobs-parameters";
|
|
82
|
+
export * from "./api/jobs/params/update-job-parameters";
|
|
81
83
|
export * from "./api/parameters/index";
|
|
82
84
|
export * from "./api/parameters/order";
|
|
83
85
|
export * from "./api/projects/index";
|
|
84
86
|
export * from "./api/projects/dto/project-dto";
|
|
85
87
|
export * from "./api/projects/dto/locale-dto";
|
|
88
|
+
export * from "./api/published-files/index";
|
|
89
|
+
export * from "./api/published-files/dto/published-file-dto";
|
|
90
|
+
export * from "./api/published-files/params/recently-published-files-parameters";
|
|
86
91
|
export * from "./api/strings/index";
|
|
87
92
|
export * from "./api/strings/dto/source-string-dto";
|
|
88
93
|
export * from "./api/strings/dto/source-string-key-dto";
|
package/package.json
CHANGED
package/test/jobs.spec.ts
CHANGED
|
@@ -14,6 +14,8 @@ import { CancelJobParameters } from "../api/jobs/params/cancel-job-parameters";
|
|
|
14
14
|
import { CloseJobParameters } from "../api/jobs/params/close-job-parameters";
|
|
15
15
|
import { AddFileParameters } from "../api/jobs/params/add-file-parameters";
|
|
16
16
|
import { AuthorizeJobParameters } from "../api/jobs/params/authorize-job-parameters";
|
|
17
|
+
import { UpdateJobParameters } from "../api/jobs/params/update-job-parameters";
|
|
18
|
+
import { CallbackMethod } from "../api/jobs/params/callback-method";
|
|
17
19
|
|
|
18
20
|
describe("SmartlingJobsAPI class tests.", () => {
|
|
19
21
|
const projectId = "testProjectId";
|
|
@@ -74,6 +76,86 @@ describe("SmartlingJobsAPI class tests.", () => {
|
|
|
74
76
|
);
|
|
75
77
|
});
|
|
76
78
|
|
|
79
|
+
it("Update job", async () => {
|
|
80
|
+
const params = new UpdateJobParameters()
|
|
81
|
+
.setName("Test job")
|
|
82
|
+
.setDescription("Test job description")
|
|
83
|
+
.setDueDate(new Date("2100-12-31T22:00:00.000Z"))
|
|
84
|
+
.setReferenceNumber("CustomerReferenceNumber1")
|
|
85
|
+
.setCallbackUrl("https://test-domain.com")
|
|
86
|
+
.setCallbackMethod(CallbackMethod.GET)
|
|
87
|
+
.setCustomFields([
|
|
88
|
+
{
|
|
89
|
+
fieldUid: "testFieldUid",
|
|
90
|
+
fieldValue: "testFieldValue"
|
|
91
|
+
}
|
|
92
|
+
]);
|
|
93
|
+
|
|
94
|
+
await jobApi.updateJob(projectId, jobUid, params);
|
|
95
|
+
|
|
96
|
+
sinon.assert.calledOnceWithExactly(
|
|
97
|
+
jobServiceApiFetchStub,
|
|
98
|
+
`https://test.com/jobs-api/v3/projects/${projectId}/jobs/${jobUid}`,
|
|
99
|
+
{
|
|
100
|
+
method: "put",
|
|
101
|
+
headers: {
|
|
102
|
+
Authorization: "test_token_type test_access_token",
|
|
103
|
+
"Content-Type": "application/json",
|
|
104
|
+
"User-Agent": "test_user_agent"
|
|
105
|
+
},
|
|
106
|
+
body: JSON.stringify({
|
|
107
|
+
jobName: "Test job",
|
|
108
|
+
description: "Test job description",
|
|
109
|
+
dueDate: "2100-12-31T22:00:00.000Z",
|
|
110
|
+
referenceNumber: "CustomerReferenceNumber1",
|
|
111
|
+
callbackUrl: "https://test-domain.com",
|
|
112
|
+
callbackMethod: "GET",
|
|
113
|
+
customFields: [
|
|
114
|
+
{
|
|
115
|
+
fieldUid: "testFieldUid",
|
|
116
|
+
fieldValue: "testFieldValue"
|
|
117
|
+
}
|
|
118
|
+
]
|
|
119
|
+
})
|
|
120
|
+
}
|
|
121
|
+
);
|
|
122
|
+
});
|
|
123
|
+
|
|
124
|
+
it("Update job: reset fields", async () => {
|
|
125
|
+
const params = new UpdateJobParameters()
|
|
126
|
+
.setName("Test job")
|
|
127
|
+
.setDescription(null)
|
|
128
|
+
.setDueDate(null)
|
|
129
|
+
.setReferenceNumber(null)
|
|
130
|
+
.setCallbackUrl(null)
|
|
131
|
+
.setCallbackMethod(null)
|
|
132
|
+
.setCustomFields([]);
|
|
133
|
+
|
|
134
|
+
await jobApi.updateJob(projectId, jobUid, params);
|
|
135
|
+
|
|
136
|
+
sinon.assert.calledOnceWithExactly(
|
|
137
|
+
jobServiceApiFetchStub,
|
|
138
|
+
`https://test.com/jobs-api/v3/projects/${projectId}/jobs/${jobUid}`,
|
|
139
|
+
{
|
|
140
|
+
method: "put",
|
|
141
|
+
headers: {
|
|
142
|
+
Authorization: "test_token_type test_access_token",
|
|
143
|
+
"Content-Type": "application/json",
|
|
144
|
+
"User-Agent": "test_user_agent"
|
|
145
|
+
},
|
|
146
|
+
body: JSON.stringify({
|
|
147
|
+
jobName: "Test job",
|
|
148
|
+
description: null,
|
|
149
|
+
dueDate: null,
|
|
150
|
+
referenceNumber: null,
|
|
151
|
+
callbackUrl: null,
|
|
152
|
+
callbackMethod: null,
|
|
153
|
+
customFields: []
|
|
154
|
+
})
|
|
155
|
+
}
|
|
156
|
+
);
|
|
157
|
+
});
|
|
158
|
+
|
|
77
159
|
it("Get job", async () => {
|
|
78
160
|
await jobApi.getJob(projectId, jobUid);
|
|
79
161
|
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import sinon from "sinon";
|
|
2
|
+
import assert from "assert";
|
|
3
|
+
import { SmartlingPublishedFilesApi } from "../api/published-files";
|
|
4
|
+
import { RecentlyPublishedFilesParameters } from "../api/published-files/params/recently-published-files-parameters";
|
|
5
|
+
import { SmartlingAuthApi } from "../api/auth/index";
|
|
6
|
+
import { loggerMock, authMock, responseMock } from "./mock";
|
|
7
|
+
|
|
8
|
+
describe("SmartlingPublishedFilesApi class tests.", () => {
|
|
9
|
+
let publishedFilesApi;
|
|
10
|
+
let publishedFilesApiFetchStub;
|
|
11
|
+
let publishedFilesApiUaStub;
|
|
12
|
+
let responseMockTextStub;
|
|
13
|
+
|
|
14
|
+
beforeEach(() => {
|
|
15
|
+
publishedFilesApi = new SmartlingPublishedFilesApi("https://test.com", authMock as unknown as SmartlingAuthApi, loggerMock);
|
|
16
|
+
|
|
17
|
+
publishedFilesApiFetchStub = sinon.stub(publishedFilesApi, "fetch");
|
|
18
|
+
publishedFilesApiUaStub = sinon.stub(publishedFilesApi, "ua");
|
|
19
|
+
responseMockTextStub = sinon.stub(responseMock, "text");
|
|
20
|
+
|
|
21
|
+
publishedFilesApiUaStub.returns("test_user_agent");
|
|
22
|
+
publishedFilesApiFetchStub.returns(responseMock);
|
|
23
|
+
responseMockTextStub.returns("{\"response\": {}}");
|
|
24
|
+
});
|
|
25
|
+
|
|
26
|
+
afterEach(() => {
|
|
27
|
+
publishedFilesApiFetchStub.restore();
|
|
28
|
+
responseMockTextStub.restore();
|
|
29
|
+
publishedFilesApiUaStub.restore();
|
|
30
|
+
});
|
|
31
|
+
|
|
32
|
+
it("Get recently published files", async () => {
|
|
33
|
+
const params: RecentlyPublishedFilesParameters = new RecentlyPublishedFilesParameters();
|
|
34
|
+
|
|
35
|
+
params.setPublishedAfterDate(new Date("2020-09-24T00:00:00Z"));
|
|
36
|
+
params.setFileUris(["test:_1.xml", "test/file&_2.xml"]);
|
|
37
|
+
params.setLocaleIds(["fr", "de"]);
|
|
38
|
+
params.setOffset(0);
|
|
39
|
+
params.setLimit(100);
|
|
40
|
+
|
|
41
|
+
await publishedFilesApi.getRecentlyPublishedFiles("test_project", params);
|
|
42
|
+
|
|
43
|
+
sinon.assert.calledOnce(publishedFilesApiFetchStub);
|
|
44
|
+
sinon.assert.calledWithExactly(
|
|
45
|
+
publishedFilesApiFetchStub,
|
|
46
|
+
"https://test.com/published-files-api/v2/projects/test_project/files/list/recently-published?publishedAfter=2020-09-24T00%3A00%3A00Z&fileUris%5B%5D=test%3A_1.xml&fileUris%5B%5D=test%2Ffile%26_2.xml&localeIds%5B%5D=fr&localeIds%5B%5D=de&offset=0&limit=100", {
|
|
47
|
+
headers: {
|
|
48
|
+
Authorization: "test_token_type test_access_token",
|
|
49
|
+
"Content-Type": "application/json",
|
|
50
|
+
"User-Agent": "test_user_agent"
|
|
51
|
+
},
|
|
52
|
+
method: "get"
|
|
53
|
+
}
|
|
54
|
+
);
|
|
55
|
+
});
|
|
56
|
+
|
|
57
|
+
it("Invalid offset", async () => {
|
|
58
|
+
try {
|
|
59
|
+
new RecentlyPublishedFilesParameters().setOffset(-1);
|
|
60
|
+
} catch (e) {
|
|
61
|
+
assert.equal(e.constructor.name, "SmartlingException");
|
|
62
|
+
assert.equal(e.message, "Offset must be >= 0");
|
|
63
|
+
}
|
|
64
|
+
});
|
|
65
|
+
|
|
66
|
+
it("Invalid limit", async () => {
|
|
67
|
+
try {
|
|
68
|
+
new RecentlyPublishedFilesParameters().setLimit(0);
|
|
69
|
+
} catch (e) {
|
|
70
|
+
assert.equal(e.constructor.name, "SmartlingException");
|
|
71
|
+
assert.equal(e.message, "Limit must be > 0");
|
|
72
|
+
}
|
|
73
|
+
});
|
|
74
|
+
});
|