@lokalise/projects-engine-contracts 4.1.0 → 4.3.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/dist/apiContracts/defaultReviewersContracts.d.ts +17 -0
- package/dist/apiContracts/defaultReviewersContracts.js +11 -1
- package/dist/apiContracts/defaultReviewersContracts.js.map +1 -1
- package/dist/apiContracts/projectSettingsContracts.d.ts +24 -0
- package/dist/apiContracts/projectSettingsContracts.js +22 -0
- package/dist/apiContracts/projectSettingsContracts.js.map +1 -0
- package/dist/apiContracts/projectsContracts.d.ts +12 -6
- package/dist/apiContracts/translationSettingsContracts.d.ts +11 -5
- package/dist/index.d.ts +2 -0
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/schemas/defaultReviewersSchemas.d.ts +19 -0
- package/dist/schemas/defaultReviewersSchemas.js +28 -7
- package/dist/schemas/defaultReviewersSchemas.js.map +1 -1
- package/dist/schemas/domainSchemas.d.ts +4 -2
- package/dist/schemas/domainSchemas.js +2 -11
- package/dist/schemas/domainSchemas.js.map +1 -1
- package/dist/schemas/projectSchemas.d.ts +12 -6
- package/dist/schemas/projectSettingsSchemas.d.ts +32 -0
- package/dist/schemas/projectSettingsSchemas.js +37 -0
- package/dist/schemas/projectSettingsSchemas.js.map +1 -0
- package/dist/schemas/translationSettingsSchemas.d.ts +19 -8
- package/dist/schemas/translationSettingsSchemas.js +19 -3
- package/dist/schemas/translationSettingsSchemas.js.map +1 -1
- package/package.json +1 -1
|
@@ -30,3 +30,20 @@ export declare const putDefaultReviewersContract: import("@lokalise/api-contract
|
|
|
30
30
|
authorization: import("zod/v4").ZodString;
|
|
31
31
|
'content-type': import("zod/v4").ZodOptional<import("zod/v4").ZodString>;
|
|
32
32
|
}, import("zod/v4/core").$strip>, undefined, false, false, undefined>;
|
|
33
|
+
export declare const putSyncDefaultReviewersContract: import("@lokalise/api-contracts").PayloadRouteDefinition<import("zod/v4").ZodObject<{
|
|
34
|
+
targetLanguageIds: import("zod/v4").ZodArray<import("zod/v4").ZodGUID>;
|
|
35
|
+
contributorPairsForTargetLanguages: import("zod/v4").ZodArray<import("zod/v4").ZodObject<{
|
|
36
|
+
languageId: import("zod/v4").ZodGUID;
|
|
37
|
+
contributorId: import("zod/v4").ZodGUID;
|
|
38
|
+
}, import("zod/v4/core").$strip>>;
|
|
39
|
+
}, import("zod/v4/core").$strip>, import("zod/v4").ZodObject<{
|
|
40
|
+
data: import("zod/v4").ZodObject<{
|
|
41
|
+
result: import("zod/v4").ZodBoolean;
|
|
42
|
+
}, import("zod/v4/core").$strip>;
|
|
43
|
+
}, import("zod/v4/core").$strip>, import("zod/v4").ZodObject<{
|
|
44
|
+
workspaceId: import("zod/v4").ZodGUID;
|
|
45
|
+
projectId: import("zod/v4").ZodGUID;
|
|
46
|
+
}, import("zod/v4/core").$strip>, undefined, import("zod/v4").ZodObject<{
|
|
47
|
+
authorization: import("zod/v4").ZodString;
|
|
48
|
+
'content-type': import("zod/v4").ZodOptional<import("zod/v4").ZodString>;
|
|
49
|
+
}, import("zod/v4/core").$strip>, undefined, false, false, undefined>;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { buildRestContract } from '@lokalise/api-contracts';
|
|
2
|
-
import { GET_DEFAULT_REVIEWERS_PATH_PARAMS_SCHEMA, GET_DEFAULT_REVIEWERS_SUCCESS_RESPONSE_BODY, PUT_DEFAULT_REVIEWERS_PATH_PARAMS_SCHEMA, PUT_DEFAULT_REVIEWERS_REQUEST_BODY_SCHEMA, PUT_DEFAULT_REVIEWERS_SUCCESS_RESPONSE_BODY, } from "../schemas/defaultReviewersSchemas.js";
|
|
2
|
+
import { GET_DEFAULT_REVIEWERS_PATH_PARAMS_SCHEMA, GET_DEFAULT_REVIEWERS_SUCCESS_RESPONSE_BODY, PUT_DEFAULT_REVIEWERS_PATH_PARAMS_SCHEMA, PUT_DEFAULT_REVIEWERS_REQUEST_BODY_SCHEMA, PUT_DEFAULT_REVIEWERS_SUCCESS_RESPONSE_BODY, PUT_SYNC_DEFAULT_REVIEWERS_PATH_PARAMS_SCHEMA, PUT_SYNC_DEFAULT_REVIEWERS_REQUEST_BODY_SCHEMA, PUT_SYNC_DEFAULT_REVIEWERS_SUCCESS_RESPONSE_BODY, } from "../schemas/defaultReviewersSchemas.js";
|
|
3
3
|
import { AUTH_HEADERS } from "../schemas/domainSchemas.js";
|
|
4
4
|
export const getDefaultReviewersContract = buildRestContract({
|
|
5
5
|
method: 'get',
|
|
@@ -19,4 +19,14 @@ export const putDefaultReviewersContract = buildRestContract({
|
|
|
19
19
|
requestBodySchema: PUT_DEFAULT_REVIEWERS_REQUEST_BODY_SCHEMA,
|
|
20
20
|
successResponseBodySchema: PUT_DEFAULT_REVIEWERS_SUCCESS_RESPONSE_BODY,
|
|
21
21
|
});
|
|
22
|
+
export const putSyncDefaultReviewersContract = buildRestContract({
|
|
23
|
+
method: 'put',
|
|
24
|
+
pathResolver: (params) => `/v1/workspaces/${params.workspaceId}/projects/${params.projectId}/default-reviewers/sync`,
|
|
25
|
+
summary: 'Synchronize default reviewers for a project',
|
|
26
|
+
description: 'Persist default reviewer assignments per language for a project. Replaces existing default reviewers for specified target languages.',
|
|
27
|
+
requestHeaderSchema: AUTH_HEADERS,
|
|
28
|
+
requestPathParamsSchema: PUT_SYNC_DEFAULT_REVIEWERS_PATH_PARAMS_SCHEMA,
|
|
29
|
+
requestBodySchema: PUT_SYNC_DEFAULT_REVIEWERS_REQUEST_BODY_SCHEMA,
|
|
30
|
+
successResponseBodySchema: PUT_SYNC_DEFAULT_REVIEWERS_SUCCESS_RESPONSE_BODY,
|
|
31
|
+
});
|
|
22
32
|
//# sourceMappingURL=defaultReviewersContracts.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defaultReviewersContracts.js","sourceRoot":"","sources":["../../src/apiContracts/defaultReviewersContracts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AAC3D,OAAO,EACL,wCAAwC,EACxC,2CAA2C,EAC3C,wCAAwC,EACxC,yCAAyC,EACzC,2CAA2C,
|
|
1
|
+
{"version":3,"file":"defaultReviewersContracts.js","sourceRoot":"","sources":["../../src/apiContracts/defaultReviewersContracts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AAC3D,OAAO,EACL,wCAAwC,EACxC,2CAA2C,EAC3C,wCAAwC,EACxC,yCAAyC,EACzC,2CAA2C,EAC3C,6CAA6C,EAC7C,8CAA8C,EAC9C,gDAAgD,GACjD,MAAM,uCAAuC,CAAA;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAA;AAE1D,MAAM,CAAC,MAAM,2BAA2B,GAAG,iBAAiB,CAAC;IAC3D,MAAM,EAAE,KAAK;IACb,YAAY,EAAE,CAAC,MAAM,EAAE,EAAE,CACvB,kBAAkB,MAAM,CAAC,WAAW,aAAa,MAAM,CAAC,SAAS,oBAAoB;IACvF,WAAW,EAAE,sEAAsE;IACnF,mBAAmB,EAAE,YAAY;IACjC,uBAAuB,EAAE,wCAAwC;IACjE,yBAAyB,EAAE,2CAA2C;CACvE,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,2BAA2B,GAAG,iBAAiB,CAAC;IAC3D,MAAM,EAAE,KAAK;IACb,YAAY,EAAE,CAAC,MAAM,EAAE,EAAE,CACvB,kBAAkB,MAAM,CAAC,WAAW,aAAa,MAAM,CAAC,SAAS,oBAAoB;IACvF,OAAO,EAAE,mDAAmD;IAC5D,WAAW,EACT,kGAAkG;IACpG,mBAAmB,EAAE,YAAY;IACjC,uBAAuB,EAAE,wCAAwC;IACjE,iBAAiB,EAAE,yCAAyC;IAC5D,yBAAyB,EAAE,2CAA2C;CACvE,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,+BAA+B,GAAG,iBAAiB,CAAC;IAC/D,MAAM,EAAE,KAAK;IACb,YAAY,EAAE,CAAC,MAAM,EAAE,EAAE,CACvB,kBAAkB,MAAM,CAAC,WAAW,aAAa,MAAM,CAAC,SAAS,yBAAyB;IAC5F,OAAO,EAAE,6CAA6C;IACtD,WAAW,EACT,sIAAsI;IACxI,mBAAmB,EAAE,YAAY;IACjC,uBAAuB,EAAE,6CAA6C;IACtE,iBAAiB,EAAE,8CAA8C;IACjE,yBAAyB,EAAE,gDAAgD;CAC5E,CAAC,CAAA"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export declare const getProjectSettingsContract: import("@lokalise/api-contracts").GetRouteDefinition<import("zod/v4").ZodObject<{
|
|
2
|
+
data: import("zod/v4").ZodObject<{
|
|
3
|
+
timezone: import("zod/v4").ZodString;
|
|
4
|
+
}, import("zod/v4/core").$strip>;
|
|
5
|
+
}, import("zod/v4/core").$strip>, import("zod/v4").ZodObject<{
|
|
6
|
+
workspaceId: import("zod/v4").ZodGUID;
|
|
7
|
+
projectId: import("zod/v4").ZodGUID;
|
|
8
|
+
}, import("zod/v4/core").$strip>, undefined, import("zod/v4").ZodObject<{
|
|
9
|
+
authorization: import("zod/v4").ZodString;
|
|
10
|
+
'content-type': import("zod/v4").ZodOptional<import("zod/v4").ZodString>;
|
|
11
|
+
}, import("zod/v4/core").$strip>, undefined, false, false, undefined>;
|
|
12
|
+
export declare const putProjectSettingsContract: import("@lokalise/api-contracts").PayloadRouteDefinition<import("zod/v4").ZodObject<{
|
|
13
|
+
timezone: import("zod/v4").ZodString;
|
|
14
|
+
}, import("zod/v4/core").$strip>, import("zod/v4").ZodObject<{
|
|
15
|
+
data: import("zod/v4").ZodObject<{
|
|
16
|
+
timezone: import("zod/v4").ZodString;
|
|
17
|
+
}, import("zod/v4/core").$strip>;
|
|
18
|
+
}, import("zod/v4/core").$strip>, import("zod/v4").ZodObject<{
|
|
19
|
+
workspaceId: import("zod/v4").ZodGUID;
|
|
20
|
+
projectId: import("zod/v4").ZodGUID;
|
|
21
|
+
}, import("zod/v4/core").$strip>, undefined, import("zod/v4").ZodObject<{
|
|
22
|
+
authorization: import("zod/v4").ZodString;
|
|
23
|
+
'content-type': import("zod/v4").ZodOptional<import("zod/v4").ZodString>;
|
|
24
|
+
}, import("zod/v4/core").$strip>, undefined, false, false, undefined>;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { buildRestContract } from '@lokalise/api-contracts';
|
|
2
|
+
import { AUTH_HEADERS } from "../schemas/domainSchemas.js";
|
|
3
|
+
import { GET_PROJECT_SETTINGS_PATH_PARAMS_SCHEMA, GET_PROJECT_SETTINGS_SUCCESS_RESPONSE_BODY, PUT_PROJECT_SETTINGS_PATH_PARAMS_SCHEMA, PUT_PROJECT_SETTINGS_REQUEST_BODY_SCHEMA, PUT_PROJECT_SETTINGS_SUCCESS_RESPONSE_BODY, } from "../schemas/projectSettingsSchemas.js";
|
|
4
|
+
export const getProjectSettingsContract = buildRestContract({
|
|
5
|
+
method: 'get',
|
|
6
|
+
pathResolver: (params) => `/v1/workspaces/${params.workspaceId}/projects/${params.projectId}/project-settings`,
|
|
7
|
+
description: 'Get project settings - returns the project-level attributes (e.g. the timezone used to compute task due dates)',
|
|
8
|
+
requestHeaderSchema: AUTH_HEADERS,
|
|
9
|
+
requestPathParamsSchema: GET_PROJECT_SETTINGS_PATH_PARAMS_SCHEMA,
|
|
10
|
+
successResponseBodySchema: GET_PROJECT_SETTINGS_SUCCESS_RESPONSE_BODY,
|
|
11
|
+
});
|
|
12
|
+
export const putProjectSettingsContract = buildRestContract({
|
|
13
|
+
method: 'put',
|
|
14
|
+
pathResolver: (params) => `/v1/workspaces/${params.workspaceId}/projects/${params.projectId}/project-settings`,
|
|
15
|
+
summary: 'Create or update project settings',
|
|
16
|
+
description: 'Store the project-level settings (e.g. the timezone) for a project. Creates new settings or updates existing ones.',
|
|
17
|
+
requestHeaderSchema: AUTH_HEADERS,
|
|
18
|
+
requestPathParamsSchema: PUT_PROJECT_SETTINGS_PATH_PARAMS_SCHEMA,
|
|
19
|
+
requestBodySchema: PUT_PROJECT_SETTINGS_REQUEST_BODY_SCHEMA,
|
|
20
|
+
successResponseBodySchema: PUT_PROJECT_SETTINGS_SUCCESS_RESPONSE_BODY,
|
|
21
|
+
});
|
|
22
|
+
//# sourceMappingURL=projectSettingsContracts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"projectSettingsContracts.js","sourceRoot":"","sources":["../../src/apiContracts/projectSettingsContracts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAA;AAC1D,OAAO,EACL,uCAAuC,EACvC,0CAA0C,EAC1C,uCAAuC,EACvC,wCAAwC,EACxC,0CAA0C,GAC3C,MAAM,sCAAsC,CAAA;AAE7C,MAAM,CAAC,MAAM,0BAA0B,GAAG,iBAAiB,CAAC;IAC1D,MAAM,EAAE,KAAK;IACb,YAAY,EAAE,CAAC,MAAM,EAAE,EAAE,CACvB,kBAAkB,MAAM,CAAC,WAAW,aAAa,MAAM,CAAC,SAAS,mBAAmB;IACtF,WAAW,EACT,gHAAgH;IAClH,mBAAmB,EAAE,YAAY;IACjC,uBAAuB,EAAE,uCAAuC;IAChE,yBAAyB,EAAE,0CAA0C;CACtE,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,0BAA0B,GAAG,iBAAiB,CAAC;IAC1D,MAAM,EAAE,KAAK;IACb,YAAY,EAAE,CAAC,MAAM,EAAE,EAAE,CACvB,kBAAkB,MAAM,CAAC,WAAW,aAAa,MAAM,CAAC,SAAS,mBAAmB;IACtF,OAAO,EAAE,mCAAmC;IAC5C,WAAW,EACT,oHAAoH;IACtH,mBAAmB,EAAE,YAAY;IACjC,uBAAuB,EAAE,uCAAuC;IAChE,iBAAiB,EAAE,wCAAwC;IAC3D,yBAAyB,EAAE,0CAA0C;CACtE,CAAC,CAAA"}
|
|
@@ -16,7 +16,7 @@ export declare const getProjectContract: import("@lokalise/api-contracts").GetRo
|
|
|
16
16
|
languageIso: import("zod/v4").ZodString;
|
|
17
17
|
projectLanguageUuid: import("zod/v4").ZodGUID;
|
|
18
18
|
}, import("zod/v4/core").$strip>>;
|
|
19
|
-
translationSettings: import("zod/v4").ZodUnion<readonly [import("zod/v4").ZodObject<{
|
|
19
|
+
translationSettings: import("zod/v4").ZodIntersection<import("zod/v4").ZodUnion<readonly [import("zod/v4").ZodObject<{
|
|
20
20
|
workflowType: import("zod/v4").ZodIntersection<import("zod/v4").ZodEnum<{
|
|
21
21
|
readonly AI_ONLY: "AI_ONLY";
|
|
22
22
|
readonly AI_HUMAN_REVIEW: "AI_HUMAN_REVIEW";
|
|
@@ -33,7 +33,9 @@ export declare const getProjectContract: import("@lokalise/api-contracts").GetRo
|
|
|
33
33
|
readonly AI_HUMAN_REVIEW: "AI_HUMAN_REVIEW";
|
|
34
34
|
}>, import("zod/v4").ZodLiteral<"AI_ONLY">>;
|
|
35
35
|
reviewThreshold: import("zod/v4").ZodNull;
|
|
36
|
-
}, import("zod/v4/core").$strip>]
|
|
36
|
+
}, import("zod/v4/core").$strip>]>, import("zod/v4").ZodObject<{
|
|
37
|
+
reviewTurnaroundDays: import("zod/v4").ZodNumber;
|
|
38
|
+
}, import("zod/v4/core").$strip>>;
|
|
37
39
|
contentSourceType: import("zod/v4").ZodNullable<import("zod/v4").ZodString>;
|
|
38
40
|
contentSourceName: import("zod/v4").ZodOptional<import("zod/v4").ZodNullable<import("zod/v4").ZodString>>;
|
|
39
41
|
projectType: import("zod/v4").ZodString;
|
|
@@ -66,7 +68,7 @@ export declare const patchProjectContract: import("@lokalise/api-contracts").Pay
|
|
|
66
68
|
languageIso: import("zod/v4").ZodString;
|
|
67
69
|
projectLanguageUuid: import("zod/v4").ZodGUID;
|
|
68
70
|
}, import("zod/v4/core").$strip>>;
|
|
69
|
-
translationSettings: import("zod/v4").ZodUnion<readonly [import("zod/v4").ZodObject<{
|
|
71
|
+
translationSettings: import("zod/v4").ZodIntersection<import("zod/v4").ZodUnion<readonly [import("zod/v4").ZodObject<{
|
|
70
72
|
workflowType: import("zod/v4").ZodIntersection<import("zod/v4").ZodEnum<{
|
|
71
73
|
readonly AI_ONLY: "AI_ONLY";
|
|
72
74
|
readonly AI_HUMAN_REVIEW: "AI_HUMAN_REVIEW";
|
|
@@ -83,7 +85,9 @@ export declare const patchProjectContract: import("@lokalise/api-contracts").Pay
|
|
|
83
85
|
readonly AI_HUMAN_REVIEW: "AI_HUMAN_REVIEW";
|
|
84
86
|
}>, import("zod/v4").ZodLiteral<"AI_ONLY">>;
|
|
85
87
|
reviewThreshold: import("zod/v4").ZodNull;
|
|
86
|
-
}, import("zod/v4/core").$strip>]
|
|
88
|
+
}, import("zod/v4/core").$strip>]>, import("zod/v4").ZodObject<{
|
|
89
|
+
reviewTurnaroundDays: import("zod/v4").ZodNumber;
|
|
90
|
+
}, import("zod/v4/core").$strip>>;
|
|
87
91
|
contentSourceType: import("zod/v4").ZodNullable<import("zod/v4").ZodString>;
|
|
88
92
|
contentSourceName: import("zod/v4").ZodOptional<import("zod/v4").ZodNullable<import("zod/v4").ZodString>>;
|
|
89
93
|
projectType: import("zod/v4").ZodString;
|
|
@@ -117,7 +121,7 @@ export declare const getProjectsListContract: import("@lokalise/api-contracts").
|
|
|
117
121
|
languageIso: import("zod/v4").ZodString;
|
|
118
122
|
projectLanguageUuid: import("zod/v4").ZodGUID;
|
|
119
123
|
}, import("zod/v4/core").$strip>>;
|
|
120
|
-
translationSettings: import("zod/v4").ZodUnion<readonly [import("zod/v4").ZodObject<{
|
|
124
|
+
translationSettings: import("zod/v4").ZodIntersection<import("zod/v4").ZodUnion<readonly [import("zod/v4").ZodObject<{
|
|
121
125
|
workflowType: import("zod/v4").ZodIntersection<import("zod/v4").ZodEnum<{
|
|
122
126
|
readonly AI_ONLY: "AI_ONLY";
|
|
123
127
|
readonly AI_HUMAN_REVIEW: "AI_HUMAN_REVIEW";
|
|
@@ -134,7 +138,9 @@ export declare const getProjectsListContract: import("@lokalise/api-contracts").
|
|
|
134
138
|
readonly AI_HUMAN_REVIEW: "AI_HUMAN_REVIEW";
|
|
135
139
|
}>, import("zod/v4").ZodLiteral<"AI_ONLY">>;
|
|
136
140
|
reviewThreshold: import("zod/v4").ZodNull;
|
|
137
|
-
}, import("zod/v4/core").$strip>]
|
|
141
|
+
}, import("zod/v4/core").$strip>]>, import("zod/v4").ZodObject<{
|
|
142
|
+
reviewTurnaroundDays: import("zod/v4").ZodNumber;
|
|
143
|
+
}, import("zod/v4/core").$strip>>;
|
|
138
144
|
contentSourceType: import("zod/v4").ZodNullable<import("zod/v4").ZodString>;
|
|
139
145
|
contentSourceName: import("zod/v4").ZodOptional<import("zod/v4").ZodNullable<import("zod/v4").ZodString>>;
|
|
140
146
|
projectType: import("zod/v4").ZodString;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export declare const getTranslationSettingsContract: import("@lokalise/api-contracts").GetRouteDefinition<import("zod/v4").ZodObject<{
|
|
2
|
-
data: import("zod/v4").ZodUnion<readonly [import("zod/v4").ZodObject<{
|
|
2
|
+
data: import("zod/v4").ZodIntersection<import("zod/v4").ZodUnion<readonly [import("zod/v4").ZodObject<{
|
|
3
3
|
workflowType: import("zod/v4").ZodIntersection<import("zod/v4").ZodEnum<{
|
|
4
4
|
readonly AI_ONLY: "AI_ONLY";
|
|
5
5
|
readonly AI_HUMAN_REVIEW: "AI_HUMAN_REVIEW";
|
|
@@ -16,7 +16,9 @@ export declare const getTranslationSettingsContract: import("@lokalise/api-contr
|
|
|
16
16
|
readonly AI_HUMAN_REVIEW: "AI_HUMAN_REVIEW";
|
|
17
17
|
}>, import("zod/v4").ZodLiteral<"AI_ONLY">>;
|
|
18
18
|
reviewThreshold: import("zod/v4").ZodNull;
|
|
19
|
-
}, import("zod/v4/core").$strip>]
|
|
19
|
+
}, import("zod/v4/core").$strip>]>, import("zod/v4").ZodObject<{
|
|
20
|
+
reviewTurnaroundDays: import("zod/v4").ZodNumber;
|
|
21
|
+
}, import("zod/v4/core").$strip>>;
|
|
20
22
|
}, import("zod/v4/core").$strip>, import("zod/v4").ZodObject<{
|
|
21
23
|
workspaceId: import("zod/v4").ZodGUID;
|
|
22
24
|
projectId: import("zod/v4").ZodGUID;
|
|
@@ -24,7 +26,7 @@ export declare const getTranslationSettingsContract: import("@lokalise/api-contr
|
|
|
24
26
|
authorization: import("zod/v4").ZodString;
|
|
25
27
|
'content-type': import("zod/v4").ZodOptional<import("zod/v4").ZodString>;
|
|
26
28
|
}, import("zod/v4/core").$strip>, undefined, false, false, undefined>;
|
|
27
|
-
export declare const putTranslationSettingsContract: import("@lokalise/api-contracts").PayloadRouteDefinition<import("zod/v4").ZodUnion<readonly [import("zod/v4").ZodObject<{
|
|
29
|
+
export declare const putTranslationSettingsContract: import("@lokalise/api-contracts").PayloadRouteDefinition<import("zod/v4").ZodIntersection<import("zod/v4").ZodUnion<readonly [import("zod/v4").ZodObject<{
|
|
28
30
|
workflowType: import("zod/v4").ZodIntersection<import("zod/v4").ZodEnum<{
|
|
29
31
|
readonly AI_ONLY: "AI_ONLY";
|
|
30
32
|
readonly AI_HUMAN_REVIEW: "AI_HUMAN_REVIEW";
|
|
@@ -42,7 +44,9 @@ export declare const putTranslationSettingsContract: import("@lokalise/api-contr
|
|
|
42
44
|
}>, import("zod/v4").ZodLiteral<"AI_ONLY">>;
|
|
43
45
|
reviewThreshold: import("zod/v4").ZodNull;
|
|
44
46
|
}, import("zod/v4/core").$strip>]>, import("zod/v4").ZodObject<{
|
|
45
|
-
|
|
47
|
+
reviewTurnaroundDays: import("zod/v4").ZodOptional<import("zod/v4").ZodNumber>;
|
|
48
|
+
}, import("zod/v4/core").$strip>>, import("zod/v4").ZodObject<{
|
|
49
|
+
data: import("zod/v4").ZodIntersection<import("zod/v4").ZodUnion<readonly [import("zod/v4").ZodObject<{
|
|
46
50
|
workflowType: import("zod/v4").ZodIntersection<import("zod/v4").ZodEnum<{
|
|
47
51
|
readonly AI_ONLY: "AI_ONLY";
|
|
48
52
|
readonly AI_HUMAN_REVIEW: "AI_HUMAN_REVIEW";
|
|
@@ -59,7 +63,9 @@ export declare const putTranslationSettingsContract: import("@lokalise/api-contr
|
|
|
59
63
|
readonly AI_HUMAN_REVIEW: "AI_HUMAN_REVIEW";
|
|
60
64
|
}>, import("zod/v4").ZodLiteral<"AI_ONLY">>;
|
|
61
65
|
reviewThreshold: import("zod/v4").ZodNull;
|
|
62
|
-
}, import("zod/v4/core").$strip>]
|
|
66
|
+
}, import("zod/v4/core").$strip>]>, import("zod/v4").ZodObject<{
|
|
67
|
+
reviewTurnaroundDays: import("zod/v4").ZodNumber;
|
|
68
|
+
}, import("zod/v4/core").$strip>>;
|
|
63
69
|
}, import("zod/v4/core").$strip>, import("zod/v4").ZodObject<{
|
|
64
70
|
workspaceId: import("zod/v4").ZodGUID;
|
|
65
71
|
projectId: import("zod/v4").ZodGUID;
|
package/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export * from './apiContracts/contributorsContracts.ts';
|
|
2
2
|
export * from './apiContracts/defaultReviewersContracts.ts';
|
|
3
3
|
export * from './apiContracts/languageContracts.ts';
|
|
4
|
+
export * from './apiContracts/projectSettingsContracts.ts';
|
|
4
5
|
export * from './apiContracts/projectsContracts.ts';
|
|
5
6
|
export * from './apiContracts/translationSettingsContracts.ts';
|
|
6
7
|
export * from './schemas/defaultReviewersSchemas.ts';
|
|
@@ -8,5 +9,6 @@ export * from './schemas/domainSchemas.ts';
|
|
|
8
9
|
export * from './schemas/languageSchemas.ts';
|
|
9
10
|
export * from './schemas/pathParamsSchemas.ts';
|
|
10
11
|
export * from './schemas/projectSchemas.ts';
|
|
12
|
+
export * from './schemas/projectSettingsSchemas.ts';
|
|
11
13
|
export * from './schemas/suggestedContributorsSchemas.ts';
|
|
12
14
|
export * from './schemas/translationSettingsSchemas.ts';
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export * from "./apiContracts/contributorsContracts.js";
|
|
2
2
|
export * from "./apiContracts/defaultReviewersContracts.js";
|
|
3
3
|
export * from "./apiContracts/languageContracts.js";
|
|
4
|
+
export * from "./apiContracts/projectSettingsContracts.js";
|
|
4
5
|
export * from "./apiContracts/projectsContracts.js";
|
|
5
6
|
export * from "./apiContracts/translationSettingsContracts.js";
|
|
6
7
|
export * from "./schemas/defaultReviewersSchemas.js";
|
|
@@ -8,6 +9,7 @@ export * from "./schemas/domainSchemas.js";
|
|
|
8
9
|
export * from "./schemas/languageSchemas.js";
|
|
9
10
|
export * from "./schemas/pathParamsSchemas.js";
|
|
10
11
|
export * from "./schemas/projectSchemas.js";
|
|
12
|
+
export * from "./schemas/projectSettingsSchemas.js";
|
|
11
13
|
export * from "./schemas/suggestedContributorsSchemas.js";
|
|
12
14
|
export * from "./schemas/translationSettingsSchemas.js";
|
|
13
15
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,yCAAyC,CAAA;AACvD,cAAc,6CAA6C,CAAA;AAC3D,cAAc,qCAAqC,CAAA;AACnD,cAAc,qCAAqC,CAAA;AACnD,cAAc,gDAAgD,CAAA;AAC9D,cAAc,sCAAsC,CAAA;AACpD,cAAc,4BAA4B,CAAA;AAC1C,cAAc,8BAA8B,CAAA;AAC5C,cAAc,gCAAgC,CAAA;AAC9C,cAAc,6BAA6B,CAAA;AAC3C,cAAc,2CAA2C,CAAA;AACzD,cAAc,yCAAyC,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,yCAAyC,CAAA;AACvD,cAAc,6CAA6C,CAAA;AAC3D,cAAc,qCAAqC,CAAA;AACnD,cAAc,4CAA4C,CAAA;AAC1D,cAAc,qCAAqC,CAAA;AACnD,cAAc,gDAAgD,CAAA;AAC9D,cAAc,sCAAsC,CAAA;AACpD,cAAc,4BAA4B,CAAA;AAC1C,cAAc,8BAA8B,CAAA;AAC5C,cAAc,gCAAgC,CAAA;AAC9C,cAAc,6BAA6B,CAAA;AAC3C,cAAc,qCAAqC,CAAA;AACnD,cAAc,2CAA2C,CAAA;AACzD,cAAc,yCAAyC,CAAA"}
|
|
@@ -39,3 +39,22 @@ export declare const PUT_DEFAULT_REVIEWERS_SUCCESS_RESPONSE_BODY: z.ZodObject<{
|
|
|
39
39
|
}, z.core.$strip>>;
|
|
40
40
|
}, z.core.$strip>;
|
|
41
41
|
export type PutDefaultReviewersSuccessResponse = z.infer<typeof PUT_DEFAULT_REVIEWERS_SUCCESS_RESPONSE_BODY>;
|
|
42
|
+
export declare const PUT_SYNC_DEFAULT_REVIEWERS_PATH_PARAMS_SCHEMA: z.ZodObject<{
|
|
43
|
+
workspaceId: z.ZodGUID;
|
|
44
|
+
projectId: z.ZodGUID;
|
|
45
|
+
}, z.core.$strip>;
|
|
46
|
+
export type PutSyncDefaultReviewersPathParams = z.infer<typeof PUT_SYNC_DEFAULT_REVIEWERS_PATH_PARAMS_SCHEMA>;
|
|
47
|
+
export declare const PUT_SYNC_DEFAULT_REVIEWERS_REQUEST_BODY_SCHEMA: z.ZodObject<{
|
|
48
|
+
targetLanguageIds: z.ZodArray<z.ZodGUID>;
|
|
49
|
+
contributorPairsForTargetLanguages: z.ZodArray<z.ZodObject<{
|
|
50
|
+
languageId: z.ZodGUID;
|
|
51
|
+
contributorId: z.ZodGUID;
|
|
52
|
+
}, z.core.$strip>>;
|
|
53
|
+
}, z.core.$strip>;
|
|
54
|
+
export type PutSyncDefaultReviewersRequestBody = z.infer<typeof PUT_SYNC_DEFAULT_REVIEWERS_REQUEST_BODY_SCHEMA>;
|
|
55
|
+
export declare const PUT_SYNC_DEFAULT_REVIEWERS_SUCCESS_RESPONSE_BODY: z.ZodObject<{
|
|
56
|
+
data: z.ZodObject<{
|
|
57
|
+
result: z.ZodBoolean;
|
|
58
|
+
}, z.core.$strip>;
|
|
59
|
+
}, z.core.$strip>;
|
|
60
|
+
export type PutSyncDefaultReviewersSuccessResponse = z.infer<typeof PUT_SYNC_DEFAULT_REVIEWERS_SUCCESS_RESPONSE_BODY>;
|
|
@@ -5,6 +5,13 @@ export const DEFAULT_REVIEWER_SCHEMA = z.object({
|
|
|
5
5
|
languageId: z.guid(),
|
|
6
6
|
contributorId: z.guid(),
|
|
7
7
|
});
|
|
8
|
+
const SUGGESTED_CONTRIBUTOR = z.object({
|
|
9
|
+
languageId: z.guid(),
|
|
10
|
+
contributorId: z.guid(),
|
|
11
|
+
email: z.email(),
|
|
12
|
+
fullname: z.string(),
|
|
13
|
+
langIso: z.string(),
|
|
14
|
+
});
|
|
8
15
|
// GET DEFAULT REVIEWERS
|
|
9
16
|
export const GET_DEFAULT_REVIEWERS_PATH_PARAMS_SCHEMA = PROJECT_PATH_PARAMS_SCHEMA;
|
|
10
17
|
export const GET_DEFAULT_REVIEWERS_SUCCESS_RESPONSE_BODY = z.object({
|
|
@@ -12,14 +19,28 @@ export const GET_DEFAULT_REVIEWERS_SUCCESS_RESPONSE_BODY = z.object({
|
|
|
12
19
|
});
|
|
13
20
|
// PUT DEFAULT REVIEWERS
|
|
14
21
|
export const PUT_DEFAULT_REVIEWERS_PATH_PARAMS_SCHEMA = PROJECT_PATH_PARAMS_SCHEMA;
|
|
15
|
-
export const PUT_DEFAULT_REVIEWERS_REQUEST_BODY_SCHEMA = z.array(
|
|
16
|
-
languageId: z.guid(),
|
|
17
|
-
contributorId: z.guid(),
|
|
18
|
-
email: z.email(),
|
|
19
|
-
fullname: z.string(),
|
|
20
|
-
langIso: z.string(),
|
|
21
|
-
}));
|
|
22
|
+
export const PUT_DEFAULT_REVIEWERS_REQUEST_BODY_SCHEMA = z.array(SUGGESTED_CONTRIBUTOR);
|
|
22
23
|
export const PUT_DEFAULT_REVIEWERS_SUCCESS_RESPONSE_BODY = z.object({
|
|
23
24
|
data: z.array(DEFAULT_REVIEWER_SCHEMA),
|
|
24
25
|
});
|
|
26
|
+
// SYNC DEFAULT REVIEWERS
|
|
27
|
+
export const PUT_SYNC_DEFAULT_REVIEWERS_PATH_PARAMS_SCHEMA = PROJECT_PATH_PARAMS_SCHEMA;
|
|
28
|
+
export const PUT_SYNC_DEFAULT_REVIEWERS_REQUEST_BODY_SCHEMA = z
|
|
29
|
+
.object({
|
|
30
|
+
targetLanguageIds: z.array(DEFAULT_REVIEWER_SCHEMA.shape.languageId),
|
|
31
|
+
contributorPairsForTargetLanguages: z.array(DEFAULT_REVIEWER_SCHEMA.pick({
|
|
32
|
+
languageId: true,
|
|
33
|
+
contributorId: true,
|
|
34
|
+
})),
|
|
35
|
+
})
|
|
36
|
+
.refine((body) => {
|
|
37
|
+
const targetLanguageIds = new Set(body.targetLanguageIds);
|
|
38
|
+
return body.contributorPairsForTargetLanguages.every((pair) => targetLanguageIds.has(pair.languageId));
|
|
39
|
+
}, {
|
|
40
|
+
message: 'Every contributorPairsForTargetLanguages entry must reference a languageId included in targetLanguageIds',
|
|
41
|
+
path: ['contributorPairsForTargetLanguages'],
|
|
42
|
+
});
|
|
43
|
+
export const PUT_SYNC_DEFAULT_REVIEWERS_SUCCESS_RESPONSE_BODY = z.object({
|
|
44
|
+
data: z.object({ result: z.boolean() }),
|
|
45
|
+
});
|
|
25
46
|
//# sourceMappingURL=defaultReviewersSchemas.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defaultReviewersSchemas.js","sourceRoot":"","sources":["../../src/schemas/defaultReviewersSchemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAC1B,OAAO,EAAE,0BAA0B,EAAE,MAAM,wBAAwB,CAAA;AAEnE,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9C,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE;IACnB,UAAU,EAAE,CAAC,CAAC,IAAI,EAAE;IACpB,aAAa,EAAE,CAAC,CAAC,IAAI,EAAE;CACxB,CAAC,CAAA;AAGF,wBAAwB;AACxB,MAAM,CAAC,MAAM,wCAAwC,GAAG,0BAA0B,CAAA;AAGlF,MAAM,CAAC,MAAM,2CAA2C,GAAG,CAAC,CAAC,MAAM,CAAC;IAClE,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,uBAAuB,CAAC;CACvC,CAAC,CAAA;AAKF,wBAAwB;AACxB,MAAM,CAAC,MAAM,wCAAwC,GAAG,0BAA0B,CAAA;AAGlF,MAAM,CAAC,MAAM,yCAAyC,GAAG,CAAC,CAAC,KAAK,
|
|
1
|
+
{"version":3,"file":"defaultReviewersSchemas.js","sourceRoot":"","sources":["../../src/schemas/defaultReviewersSchemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAC1B,OAAO,EAAE,0BAA0B,EAAE,MAAM,wBAAwB,CAAA;AAEnE,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9C,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE;IACnB,UAAU,EAAE,CAAC,CAAC,IAAI,EAAE;IACpB,aAAa,EAAE,CAAC,CAAC,IAAI,EAAE;CACxB,CAAC,CAAA;AAGF,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,UAAU,EAAE,CAAC,CAAC,IAAI,EAAE;IACpB,aAAa,EAAE,CAAC,CAAC,IAAI,EAAE;IACvB,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE;IAChB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;IACpB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;CACpB,CAAC,CAAA;AAEF,wBAAwB;AACxB,MAAM,CAAC,MAAM,wCAAwC,GAAG,0BAA0B,CAAA;AAGlF,MAAM,CAAC,MAAM,2CAA2C,GAAG,CAAC,CAAC,MAAM,CAAC;IAClE,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,uBAAuB,CAAC;CACvC,CAAC,CAAA;AAKF,wBAAwB;AACxB,MAAM,CAAC,MAAM,wCAAwC,GAAG,0BAA0B,CAAA;AAGlF,MAAM,CAAC,MAAM,yCAAyC,GAAG,CAAC,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAA;AAKvF,MAAM,CAAC,MAAM,2CAA2C,GAAG,CAAC,CAAC,MAAM,CAAC;IAClE,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,uBAAuB,CAAC;CACvC,CAAC,CAAA;AAKF,yBAAyB;AACzB,MAAM,CAAC,MAAM,6CAA6C,GAAG,0BAA0B,CAAA;AAKvF,MAAM,CAAC,MAAM,8CAA8C,GAAG,CAAC;KAC5D,MAAM,CAAC;IACN,iBAAiB,EAAE,CAAC,CAAC,KAAK,CAAC,uBAAuB,CAAC,KAAK,CAAC,UAAU,CAAC;IACpE,kCAAkC,EAAE,CAAC,CAAC,KAAK,CACzC,uBAAuB,CAAC,IAAI,CAAC;QAC3B,UAAU,EAAE,IAAI;QAChB,aAAa,EAAE,IAAI;KACpB,CAAC,CACH;CACF,CAAC;KACD,MAAM,CACL,CAAC,IAAI,EAAE,EAAE;IACP,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAA;IACzD,OAAO,IAAI,CAAC,kCAAkC,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAC5D,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CACvC,CAAA;AACH,CAAC,EACD;IACE,OAAO,EACL,0GAA0G;IAC5G,IAAI,EAAE,CAAC,oCAAoC,CAAC;CAC7C,CACF,CAAA;AAKH,MAAM,CAAC,MAAM,gDAAgD,GAAG,CAAC,CAAC,MAAM,CAAC;IACvE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;CACxC,CAAC,CAAA"}
|
|
@@ -36,7 +36,7 @@ export declare const PROJECT_SCHEMA: z.ZodObject<{
|
|
|
36
36
|
languageIso: z.ZodString;
|
|
37
37
|
projectLanguageUuid: z.ZodGUID;
|
|
38
38
|
}, z.core.$strip>>;
|
|
39
|
-
translationSettings: z.ZodUnion<readonly [z.ZodObject<{
|
|
39
|
+
translationSettings: z.ZodIntersection<z.ZodUnion<readonly [z.ZodObject<{
|
|
40
40
|
workflowType: z.ZodIntersection<z.ZodEnum<{
|
|
41
41
|
readonly AI_ONLY: "AI_ONLY";
|
|
42
42
|
readonly AI_HUMAN_REVIEW: "AI_HUMAN_REVIEW";
|
|
@@ -53,7 +53,9 @@ export declare const PROJECT_SCHEMA: z.ZodObject<{
|
|
|
53
53
|
readonly AI_HUMAN_REVIEW: "AI_HUMAN_REVIEW";
|
|
54
54
|
}>, z.ZodLiteral<"AI_ONLY">>;
|
|
55
55
|
reviewThreshold: z.ZodNull;
|
|
56
|
-
}, z.core.$strip>]
|
|
56
|
+
}, z.core.$strip>]>, z.ZodObject<{
|
|
57
|
+
reviewTurnaroundDays: z.ZodNumber;
|
|
58
|
+
}, z.core.$strip>>;
|
|
57
59
|
contentSourceType: z.ZodNullable<z.ZodString>;
|
|
58
60
|
contentSourceName: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
59
61
|
projectType: z.ZodString;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { z } from 'zod/v4';
|
|
2
|
-
import {
|
|
2
|
+
import { TRANSLATION_SETTINGS_SCHEMA } from "./translationSettingsSchemas.js";
|
|
3
3
|
// =============================================================================
|
|
4
4
|
// BASE SCHEMAS - Reusable building blocks
|
|
5
5
|
// =============================================================================
|
|
@@ -28,16 +28,7 @@ export const PROJECT_SCHEMA = z.object({
|
|
|
28
28
|
description: z.string(),
|
|
29
29
|
baseLanguage: PROJECT_LANGUAGE_SCHEMA,
|
|
30
30
|
targetLanguages: z.array(PROJECT_LANGUAGE_SCHEMA),
|
|
31
|
-
translationSettings:
|
|
32
|
-
z.object({
|
|
33
|
-
workflowType: WORKFLOW_TYPE_SCHEMA.and(z.literal(WorkflowTypeEnum.AI_HUMAN_REVIEW)),
|
|
34
|
-
reviewThreshold: REVIEW_THRESHOLD_SCHEMA,
|
|
35
|
-
}),
|
|
36
|
-
z.object({
|
|
37
|
-
workflowType: WORKFLOW_TYPE_SCHEMA.and(z.literal(WorkflowTypeEnum.AI_ONLY)),
|
|
38
|
-
reviewThreshold: z.null(),
|
|
39
|
-
}),
|
|
40
|
-
]),
|
|
31
|
+
translationSettings: TRANSLATION_SETTINGS_SCHEMA,
|
|
41
32
|
contentSourceType: z.string().nullable(),
|
|
42
33
|
contentSourceName: z.string().nullable().optional(),
|
|
43
34
|
projectType: z.string(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"domainSchemas.js","sourceRoot":"","sources":["../../src/schemas/domainSchemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAC1B,OAAO,
|
|
1
|
+
{"version":3,"file":"domainSchemas.js","sourceRoot":"","sources":["../../src/schemas/domainSchemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAC1B,OAAO,EAAE,2BAA2B,EAAE,MAAM,iCAAiC,CAAA;AAE7E,gFAAgF;AAChF,0CAA0C;AAC1C,gFAAgF;AAEhF,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;IAC1D,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC;CAC/D,CAAC,CAAA;AAGF,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC;IACtC,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE;IAC7B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;IACtB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;IACvB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;IACxB,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE;IAClB,mBAAmB,EAAE,CAAC,CAAC,IAAI,EAAE;CAC9B,CAAC,CAAA;AAGF,MAAM,CAAC,MAAM,uBAAuB,GAAG,eAAe,CAAC,IAAI,CAAC;IAC1D,iBAAiB,EAAE,IAAI;IACvB,UAAU,EAAE,IAAI;IAChB,WAAW,EAAE,IAAI;IACjB,mBAAmB,EAAE,IAAI;CAC1B,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE;IACd,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;IACvB,YAAY,EAAE,uBAAuB;IACrC,eAAe,EAAE,CAAC,CAAC,KAAK,CAAC,uBAAuB,CAAC;IACjD,mBAAmB,EAAE,2BAA2B;IAChD,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACxC,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACnD,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;CACxB,CAAC,CAAA"}
|
|
@@ -26,7 +26,7 @@ export declare const GET_PROJECTS_LIST_SUCCESS_RESPONSE_BODY: z.ZodObject<{
|
|
|
26
26
|
languageIso: z.ZodString;
|
|
27
27
|
projectLanguageUuid: z.ZodGUID;
|
|
28
28
|
}, z.core.$strip>>;
|
|
29
|
-
translationSettings: z.ZodUnion<readonly [z.ZodObject<{
|
|
29
|
+
translationSettings: z.ZodIntersection<z.ZodUnion<readonly [z.ZodObject<{
|
|
30
30
|
workflowType: z.ZodIntersection<z.ZodEnum<{
|
|
31
31
|
readonly AI_ONLY: "AI_ONLY";
|
|
32
32
|
readonly AI_HUMAN_REVIEW: "AI_HUMAN_REVIEW";
|
|
@@ -43,7 +43,9 @@ export declare const GET_PROJECTS_LIST_SUCCESS_RESPONSE_BODY: z.ZodObject<{
|
|
|
43
43
|
readonly AI_HUMAN_REVIEW: "AI_HUMAN_REVIEW";
|
|
44
44
|
}>, z.ZodLiteral<"AI_ONLY">>;
|
|
45
45
|
reviewThreshold: z.ZodNull;
|
|
46
|
-
}, z.core.$strip>]
|
|
46
|
+
}, z.core.$strip>]>, z.ZodObject<{
|
|
47
|
+
reviewTurnaroundDays: z.ZodNumber;
|
|
48
|
+
}, z.core.$strip>>;
|
|
47
49
|
contentSourceType: z.ZodNullable<z.ZodString>;
|
|
48
50
|
contentSourceName: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
49
51
|
projectType: z.ZodString;
|
|
@@ -77,7 +79,7 @@ export declare const GET_PROJECT_SUCCESS_RESPONSE_BODY: z.ZodObject<{
|
|
|
77
79
|
languageIso: z.ZodString;
|
|
78
80
|
projectLanguageUuid: z.ZodGUID;
|
|
79
81
|
}, z.core.$strip>>;
|
|
80
|
-
translationSettings: z.ZodUnion<readonly [z.ZodObject<{
|
|
82
|
+
translationSettings: z.ZodIntersection<z.ZodUnion<readonly [z.ZodObject<{
|
|
81
83
|
workflowType: z.ZodIntersection<z.ZodEnum<{
|
|
82
84
|
readonly AI_ONLY: "AI_ONLY";
|
|
83
85
|
readonly AI_HUMAN_REVIEW: "AI_HUMAN_REVIEW";
|
|
@@ -94,7 +96,9 @@ export declare const GET_PROJECT_SUCCESS_RESPONSE_BODY: z.ZodObject<{
|
|
|
94
96
|
readonly AI_HUMAN_REVIEW: "AI_HUMAN_REVIEW";
|
|
95
97
|
}>, z.ZodLiteral<"AI_ONLY">>;
|
|
96
98
|
reviewThreshold: z.ZodNull;
|
|
97
|
-
}, z.core.$strip>]
|
|
99
|
+
}, z.core.$strip>]>, z.ZodObject<{
|
|
100
|
+
reviewTurnaroundDays: z.ZodNumber;
|
|
101
|
+
}, z.core.$strip>>;
|
|
98
102
|
contentSourceType: z.ZodNullable<z.ZodString>;
|
|
99
103
|
contentSourceName: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
100
104
|
projectType: z.ZodString;
|
|
@@ -129,7 +133,7 @@ export declare const PATCH_PROJECT_SUCCESS_RESPONSE_BODY: z.ZodObject<{
|
|
|
129
133
|
languageIso: z.ZodString;
|
|
130
134
|
projectLanguageUuid: z.ZodGUID;
|
|
131
135
|
}, z.core.$strip>>;
|
|
132
|
-
translationSettings: z.ZodUnion<readonly [z.ZodObject<{
|
|
136
|
+
translationSettings: z.ZodIntersection<z.ZodUnion<readonly [z.ZodObject<{
|
|
133
137
|
workflowType: z.ZodIntersection<z.ZodEnum<{
|
|
134
138
|
readonly AI_ONLY: "AI_ONLY";
|
|
135
139
|
readonly AI_HUMAN_REVIEW: "AI_HUMAN_REVIEW";
|
|
@@ -146,7 +150,9 @@ export declare const PATCH_PROJECT_SUCCESS_RESPONSE_BODY: z.ZodObject<{
|
|
|
146
150
|
readonly AI_HUMAN_REVIEW: "AI_HUMAN_REVIEW";
|
|
147
151
|
}>, z.ZodLiteral<"AI_ONLY">>;
|
|
148
152
|
reviewThreshold: z.ZodNull;
|
|
149
|
-
}, z.core.$strip>]
|
|
153
|
+
}, z.core.$strip>]>, z.ZodObject<{
|
|
154
|
+
reviewTurnaroundDays: z.ZodNumber;
|
|
155
|
+
}, z.core.$strip>>;
|
|
150
156
|
contentSourceType: z.ZodNullable<z.ZodString>;
|
|
151
157
|
contentSourceName: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
152
158
|
projectType: z.ZodString;
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { z } from 'zod/v4';
|
|
2
|
+
export declare const TIMEZONE_SCHEMA: z.ZodString;
|
|
3
|
+
export declare const PROJECT_SETTINGS_SCHEMA: z.ZodObject<{
|
|
4
|
+
timezone: z.ZodString;
|
|
5
|
+
}, z.core.$strip>;
|
|
6
|
+
export type ProjectSettings = z.infer<typeof PROJECT_SETTINGS_SCHEMA>;
|
|
7
|
+
export declare const GET_PROJECT_SETTINGS_PATH_PARAMS_SCHEMA: z.ZodObject<{
|
|
8
|
+
workspaceId: z.ZodGUID;
|
|
9
|
+
projectId: z.ZodGUID;
|
|
10
|
+
}, z.core.$strip>;
|
|
11
|
+
export type GetProjectSettingsPathParams = z.infer<typeof GET_PROJECT_SETTINGS_PATH_PARAMS_SCHEMA>;
|
|
12
|
+
export declare const GET_PROJECT_SETTINGS_SUCCESS_RESPONSE_BODY: z.ZodObject<{
|
|
13
|
+
data: z.ZodObject<{
|
|
14
|
+
timezone: z.ZodString;
|
|
15
|
+
}, z.core.$strip>;
|
|
16
|
+
}, z.core.$strip>;
|
|
17
|
+
export type GetProjectSettingsSuccessResponse = z.infer<typeof GET_PROJECT_SETTINGS_SUCCESS_RESPONSE_BODY>;
|
|
18
|
+
export declare const PUT_PROJECT_SETTINGS_PATH_PARAMS_SCHEMA: z.ZodObject<{
|
|
19
|
+
workspaceId: z.ZodGUID;
|
|
20
|
+
projectId: z.ZodGUID;
|
|
21
|
+
}, z.core.$strip>;
|
|
22
|
+
export type PutProjectSettingsPathParams = z.infer<typeof PUT_PROJECT_SETTINGS_PATH_PARAMS_SCHEMA>;
|
|
23
|
+
export declare const PUT_PROJECT_SETTINGS_REQUEST_BODY_SCHEMA: z.ZodObject<{
|
|
24
|
+
timezone: z.ZodString;
|
|
25
|
+
}, z.core.$strip>;
|
|
26
|
+
export type PutProjectSettingsRequestBody = z.infer<typeof PUT_PROJECT_SETTINGS_REQUEST_BODY_SCHEMA>;
|
|
27
|
+
export declare const PUT_PROJECT_SETTINGS_SUCCESS_RESPONSE_BODY: z.ZodObject<{
|
|
28
|
+
data: z.ZodObject<{
|
|
29
|
+
timezone: z.ZodString;
|
|
30
|
+
}, z.core.$strip>;
|
|
31
|
+
}, z.core.$strip>;
|
|
32
|
+
export type PutProjectSettingsSuccessResponse = z.infer<typeof PUT_PROJECT_SETTINGS_SUCCESS_RESPONSE_BODY>;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { z } from 'zod/v4';
|
|
2
|
+
import { PROJECT_PATH_PARAMS_SCHEMA } from "./pathParamsSchemas.js";
|
|
3
|
+
// Validate only; store the id verbatim. We don't canonicalize because ICU differs across runtimes
|
|
4
|
+
// (e.g. Node here yields legacy "Asia/Calcutta" where browsers yield "Asia/Kolkata"), so rewriting
|
|
5
|
+
// could diverge from the id the UI picker emits.
|
|
6
|
+
const isValidIanaTimezone = (timezone) => {
|
|
7
|
+
// Intl.DateTimeFormat also accepts UTC offset identifiers (e.g. "+01:00", "-0530"); reject those
|
|
8
|
+
// since the contract is IANA-only. No IANA zone name starts with a sign, so this is sufficient.
|
|
9
|
+
if (timezone.startsWith('+') || timezone.startsWith('-')) {
|
|
10
|
+
return false;
|
|
11
|
+
}
|
|
12
|
+
try {
|
|
13
|
+
new Intl.DateTimeFormat(undefined, { timeZone: timezone });
|
|
14
|
+
return true;
|
|
15
|
+
}
|
|
16
|
+
catch {
|
|
17
|
+
return false;
|
|
18
|
+
}
|
|
19
|
+
};
|
|
20
|
+
export const TIMEZONE_SCHEMA = z
|
|
21
|
+
.string()
|
|
22
|
+
.refine(isValidIanaTimezone, { message: 'Invalid IANA timezone' });
|
|
23
|
+
export const PROJECT_SETTINGS_SCHEMA = z.object({
|
|
24
|
+
timezone: TIMEZONE_SCHEMA,
|
|
25
|
+
});
|
|
26
|
+
// GET PROJECT SETTINGS
|
|
27
|
+
export const GET_PROJECT_SETTINGS_PATH_PARAMS_SCHEMA = PROJECT_PATH_PARAMS_SCHEMA;
|
|
28
|
+
export const GET_PROJECT_SETTINGS_SUCCESS_RESPONSE_BODY = z.object({
|
|
29
|
+
data: PROJECT_SETTINGS_SCHEMA,
|
|
30
|
+
});
|
|
31
|
+
// PUT PROJECT SETTINGS
|
|
32
|
+
export const PUT_PROJECT_SETTINGS_PATH_PARAMS_SCHEMA = PROJECT_PATH_PARAMS_SCHEMA;
|
|
33
|
+
export const PUT_PROJECT_SETTINGS_REQUEST_BODY_SCHEMA = PROJECT_SETTINGS_SCHEMA;
|
|
34
|
+
export const PUT_PROJECT_SETTINGS_SUCCESS_RESPONSE_BODY = z.object({
|
|
35
|
+
data: PROJECT_SETTINGS_SCHEMA,
|
|
36
|
+
});
|
|
37
|
+
//# sourceMappingURL=projectSettingsSchemas.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"projectSettingsSchemas.js","sourceRoot":"","sources":["../../src/schemas/projectSettingsSchemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAC1B,OAAO,EAAE,0BAA0B,EAAE,MAAM,wBAAwB,CAAA;AAEnE,kGAAkG;AAClG,mGAAmG;AACnG,iDAAiD;AACjD,MAAM,mBAAmB,GAAG,CAAC,QAAgB,EAAW,EAAE;IACxD,iGAAiG;IACjG,gGAAgG;IAChG,IAAI,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACzD,OAAO,KAAK,CAAA;IACd,CAAC;IACD,IAAI,CAAC;QACH,IAAI,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAA;QAC1D,OAAO,IAAI,CAAA;IACb,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAA;IACd,CAAC;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC;KAC7B,MAAM,EAAE;KACR,MAAM,CAAC,mBAAmB,EAAE,EAAE,OAAO,EAAE,uBAAuB,EAAE,CAAC,CAAA;AAEpE,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9C,QAAQ,EAAE,eAAe;CAC1B,CAAC,CAAA;AAGF,uBAAuB;AACvB,MAAM,CAAC,MAAM,uCAAuC,GAAG,0BAA0B,CAAA;AAGjF,MAAM,CAAC,MAAM,0CAA0C,GAAG,CAAC,CAAC,MAAM,CAAC;IACjE,IAAI,EAAE,uBAAuB;CAC9B,CAAC,CAAA;AAKF,uBAAuB;AACvB,MAAM,CAAC,MAAM,uCAAuC,GAAG,0BAA0B,CAAA;AAGjF,MAAM,CAAC,MAAM,wCAAwC,GAAG,uBAAuB,CAAA;AAG/E,MAAM,CAAC,MAAM,0CAA0C,GAAG,CAAC,CAAC,MAAM,CAAC;IACjE,IAAI,EAAE,uBAAuB;CAC9B,CAAC,CAAA"}
|
|
@@ -21,7 +21,10 @@ export declare const REVIEW_THRESHOLD_SCHEMA: z.ZodEnum<{
|
|
|
21
21
|
readonly CRITICAL_MAJOR: "CRITICAL_MAJOR";
|
|
22
22
|
readonly CRITICAL: "CRITICAL";
|
|
23
23
|
}>;
|
|
24
|
-
export declare const
|
|
24
|
+
export declare const MIN_REVIEW_TURNAROUND_DAYS = 1;
|
|
25
|
+
export declare const MAX_REVIEW_TURNAROUND_DAYS = 90;
|
|
26
|
+
export declare const REVIEW_TURNAROUND_DAYS_SCHEMA: z.ZodNumber;
|
|
27
|
+
export declare const TRANSLATION_SETTINGS_SCHEMA: z.ZodIntersection<z.ZodUnion<readonly [z.ZodObject<{
|
|
25
28
|
workflowType: z.ZodIntersection<z.ZodEnum<{
|
|
26
29
|
readonly AI_ONLY: "AI_ONLY";
|
|
27
30
|
readonly AI_HUMAN_REVIEW: "AI_HUMAN_REVIEW";
|
|
@@ -38,7 +41,9 @@ export declare const TRANSLATION_SETTINGS_SCHEMA: z.ZodUnion<readonly [z.ZodObje
|
|
|
38
41
|
readonly AI_HUMAN_REVIEW: "AI_HUMAN_REVIEW";
|
|
39
42
|
}>, z.ZodLiteral<"AI_ONLY">>;
|
|
40
43
|
reviewThreshold: z.ZodNull;
|
|
41
|
-
}, z.core.$strip>]
|
|
44
|
+
}, z.core.$strip>]>, z.ZodObject<{
|
|
45
|
+
reviewTurnaroundDays: z.ZodNumber;
|
|
46
|
+
}, z.core.$strip>>;
|
|
42
47
|
export type TranslationSettings = z.infer<typeof TRANSLATION_SETTINGS_SCHEMA>;
|
|
43
48
|
export declare const GET_TRANSLATION_SETTINGS_PATH_PARAMS_SCHEMA: z.ZodObject<{
|
|
44
49
|
workspaceId: z.ZodGUID;
|
|
@@ -46,7 +51,7 @@ export declare const GET_TRANSLATION_SETTINGS_PATH_PARAMS_SCHEMA: z.ZodObject<{
|
|
|
46
51
|
}, z.core.$strip>;
|
|
47
52
|
export type GetTranslationSettingsPathParams = z.infer<typeof GET_TRANSLATION_SETTINGS_PATH_PARAMS_SCHEMA>;
|
|
48
53
|
export declare const GET_TRANSLATION_SETTINGS_SUCCESS_RESPONSE_BODY: z.ZodObject<{
|
|
49
|
-
data: z.ZodUnion<readonly [z.ZodObject<{
|
|
54
|
+
data: z.ZodIntersection<z.ZodUnion<readonly [z.ZodObject<{
|
|
50
55
|
workflowType: z.ZodIntersection<z.ZodEnum<{
|
|
51
56
|
readonly AI_ONLY: "AI_ONLY";
|
|
52
57
|
readonly AI_HUMAN_REVIEW: "AI_HUMAN_REVIEW";
|
|
@@ -63,7 +68,9 @@ export declare const GET_TRANSLATION_SETTINGS_SUCCESS_RESPONSE_BODY: z.ZodObject
|
|
|
63
68
|
readonly AI_HUMAN_REVIEW: "AI_HUMAN_REVIEW";
|
|
64
69
|
}>, z.ZodLiteral<"AI_ONLY">>;
|
|
65
70
|
reviewThreshold: z.ZodNull;
|
|
66
|
-
}, z.core.$strip>]
|
|
71
|
+
}, z.core.$strip>]>, z.ZodObject<{
|
|
72
|
+
reviewTurnaroundDays: z.ZodNumber;
|
|
73
|
+
}, z.core.$strip>>;
|
|
67
74
|
}, z.core.$strip>;
|
|
68
75
|
export type GetTranslationSettingsSuccessResponse = z.infer<typeof GET_TRANSLATION_SETTINGS_SUCCESS_RESPONSE_BODY>;
|
|
69
76
|
export declare const PUT_TRANSLATION_SETTINGS_PATH_PARAMS_SCHEMA: z.ZodObject<{
|
|
@@ -71,7 +78,7 @@ export declare const PUT_TRANSLATION_SETTINGS_PATH_PARAMS_SCHEMA: z.ZodObject<{
|
|
|
71
78
|
projectId: z.ZodGUID;
|
|
72
79
|
}, z.core.$strip>;
|
|
73
80
|
export type PutTranslationSettingsPathParams = z.infer<typeof PUT_TRANSLATION_SETTINGS_PATH_PARAMS_SCHEMA>;
|
|
74
|
-
export declare const PUT_TRANSLATION_SETTINGS_REQUEST_BODY_SCHEMA: z.ZodUnion<readonly [z.ZodObject<{
|
|
81
|
+
export declare const PUT_TRANSLATION_SETTINGS_REQUEST_BODY_SCHEMA: z.ZodIntersection<z.ZodUnion<readonly [z.ZodObject<{
|
|
75
82
|
workflowType: z.ZodIntersection<z.ZodEnum<{
|
|
76
83
|
readonly AI_ONLY: "AI_ONLY";
|
|
77
84
|
readonly AI_HUMAN_REVIEW: "AI_HUMAN_REVIEW";
|
|
@@ -88,10 +95,12 @@ export declare const PUT_TRANSLATION_SETTINGS_REQUEST_BODY_SCHEMA: z.ZodUnion<re
|
|
|
88
95
|
readonly AI_HUMAN_REVIEW: "AI_HUMAN_REVIEW";
|
|
89
96
|
}>, z.ZodLiteral<"AI_ONLY">>;
|
|
90
97
|
reviewThreshold: z.ZodNull;
|
|
91
|
-
}, z.core.$strip>]
|
|
98
|
+
}, z.core.$strip>]>, z.ZodObject<{
|
|
99
|
+
reviewTurnaroundDays: z.ZodOptional<z.ZodNumber>;
|
|
100
|
+
}, z.core.$strip>>;
|
|
92
101
|
export type PutTranslationSettingsRequestBody = z.infer<typeof PUT_TRANSLATION_SETTINGS_REQUEST_BODY_SCHEMA>;
|
|
93
102
|
export declare const PUT_TRANSLATION_SETTINGS_SUCCESS_RESPONSE_BODY: z.ZodObject<{
|
|
94
|
-
data: z.ZodUnion<readonly [z.ZodObject<{
|
|
103
|
+
data: z.ZodIntersection<z.ZodUnion<readonly [z.ZodObject<{
|
|
95
104
|
workflowType: z.ZodIntersection<z.ZodEnum<{
|
|
96
105
|
readonly AI_ONLY: "AI_ONLY";
|
|
97
106
|
readonly AI_HUMAN_REVIEW: "AI_HUMAN_REVIEW";
|
|
@@ -108,6 +117,8 @@ export declare const PUT_TRANSLATION_SETTINGS_SUCCESS_RESPONSE_BODY: z.ZodObject
|
|
|
108
117
|
readonly AI_HUMAN_REVIEW: "AI_HUMAN_REVIEW";
|
|
109
118
|
}>, z.ZodLiteral<"AI_ONLY">>;
|
|
110
119
|
reviewThreshold: z.ZodNull;
|
|
111
|
-
}, z.core.$strip>]
|
|
120
|
+
}, z.core.$strip>]>, z.ZodObject<{
|
|
121
|
+
reviewTurnaroundDays: z.ZodNumber;
|
|
122
|
+
}, z.core.$strip>>;
|
|
112
123
|
}, z.core.$strip>;
|
|
113
124
|
export type PutTranslationSettingsSuccessResponse = z.infer<typeof PUT_TRANSLATION_SETTINGS_SUCCESS_RESPONSE_BODY>;
|
|
@@ -12,7 +12,18 @@ export const ReviewThresholdEnum = {
|
|
|
12
12
|
CRITICAL: 'CRITICAL',
|
|
13
13
|
};
|
|
14
14
|
export const REVIEW_THRESHOLD_SCHEMA = z.enum(ReviewThresholdEnum);
|
|
15
|
-
export const
|
|
15
|
+
export const MIN_REVIEW_TURNAROUND_DAYS = 1;
|
|
16
|
+
export const MAX_REVIEW_TURNAROUND_DAYS = 90;
|
|
17
|
+
export const REVIEW_TURNAROUND_DAYS_SCHEMA = z
|
|
18
|
+
.number()
|
|
19
|
+
.int()
|
|
20
|
+
.min(MIN_REVIEW_TURNAROUND_DAYS)
|
|
21
|
+
.max(MAX_REVIEW_TURNAROUND_DAYS);
|
|
22
|
+
// The review turnaround is a flat, always-present review property that is independent of the
|
|
23
|
+
// workflowType / reviewThreshold discriminated union, so it is intersected on rather than folded into
|
|
24
|
+
// the union branches.
|
|
25
|
+
export const TRANSLATION_SETTINGS_SCHEMA = z
|
|
26
|
+
.union([
|
|
16
27
|
z.object({
|
|
17
28
|
workflowType: WORKFLOW_TYPE_SCHEMA.and(z.literal(WorkflowTypeEnum.AI_HUMAN_REVIEW)),
|
|
18
29
|
reviewThreshold: REVIEW_THRESHOLD_SCHEMA,
|
|
@@ -21,7 +32,8 @@ export const TRANSLATION_SETTINGS_SCHEMA = z.union([
|
|
|
21
32
|
workflowType: WORKFLOW_TYPE_SCHEMA.and(z.literal(WorkflowTypeEnum.AI_ONLY)),
|
|
22
33
|
reviewThreshold: z.null(),
|
|
23
34
|
}),
|
|
24
|
-
])
|
|
35
|
+
])
|
|
36
|
+
.and(z.object({ reviewTurnaroundDays: REVIEW_TURNAROUND_DAYS_SCHEMA }));
|
|
25
37
|
// GET TRANSLATION SETTINGS
|
|
26
38
|
export const GET_TRANSLATION_SETTINGS_PATH_PARAMS_SCHEMA = PROJECT_PATH_PARAMS_SCHEMA;
|
|
27
39
|
export const GET_TRANSLATION_SETTINGS_SUCCESS_RESPONSE_BODY = z.object({
|
|
@@ -47,7 +59,11 @@ export const PUT_TRANSLATION_SETTINGS_REQUEST_BODY_SCHEMA = z
|
|
|
47
59
|
.refine((data) => data.workflowType !== WorkflowTypeEnum.AI_HUMAN_REVIEW || data.reviewThreshold !== null, {
|
|
48
60
|
message: 'reviewThreshold must not be provided when workflowType is not AI_HUMAN_REVIEW',
|
|
49
61
|
path: ['reviewThreshold'],
|
|
50
|
-
})
|
|
62
|
+
})
|
|
63
|
+
// Optional on write: the workflow-settings UI predates this field and must keep working without it.
|
|
64
|
+
// When omitted, the service preserves the stored turnaround (defaulting only when no row exists),
|
|
65
|
+
// so adding the field stays backward-compatible (non-breaking) for existing callers.
|
|
66
|
+
.and(z.object({ reviewTurnaroundDays: REVIEW_TURNAROUND_DAYS_SCHEMA.optional() }));
|
|
51
67
|
export const PUT_TRANSLATION_SETTINGS_SUCCESS_RESPONSE_BODY = z.object({
|
|
52
68
|
data: TRANSLATION_SETTINGS_SCHEMA,
|
|
53
69
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"translationSettingsSchemas.js","sourceRoot":"","sources":["../../src/schemas/translationSettingsSchemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAC1B,OAAO,EAAE,0BAA0B,EAAE,MAAM,wBAAwB,CAAA;AAEnE,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,OAAO,EAAE,SAAS;IAClB,eAAe,EAAE,iBAAiB;CAC1B,CAAA;AAGV,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;AAE5D,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,WAAW,EAAE,aAAa;IAC1B,oBAAoB,EAAE,sBAAsB;IAC5C,cAAc,EAAE,gBAAgB;IAChC,QAAQ,EAAE,UAAU;CACZ,CAAA;AAGV,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAA;AAElE,MAAM,CAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"translationSettingsSchemas.js","sourceRoot":"","sources":["../../src/schemas/translationSettingsSchemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAC1B,OAAO,EAAE,0BAA0B,EAAE,MAAM,wBAAwB,CAAA;AAEnE,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,OAAO,EAAE,SAAS;IAClB,eAAe,EAAE,iBAAiB;CAC1B,CAAA;AAGV,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;AAE5D,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,WAAW,EAAE,aAAa;IAC1B,oBAAoB,EAAE,sBAAsB;IAC5C,cAAc,EAAE,gBAAgB;IAChC,QAAQ,EAAE,UAAU;CACZ,CAAA;AAGV,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAA;AAElE,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAA;AAC3C,MAAM,CAAC,MAAM,0BAA0B,GAAG,EAAE,CAAA;AAE5C,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAC;KAC3C,MAAM,EAAE;KACR,GAAG,EAAE;KACL,GAAG,CAAC,0BAA0B,CAAC;KAC/B,GAAG,CAAC,0BAA0B,CAAC,CAAA;AAElC,6FAA6F;AAC7F,sGAAsG;AACtG,sBAAsB;AACtB,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC;KACzC,KAAK,CAAC;IACL,CAAC,CAAC,MAAM,CAAC;QACP,YAAY,EAAE,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,eAAe,CAAC,CAAC;QACnF,eAAe,EAAE,uBAAuB;KACzC,CAAC;IACF,CAAC,CAAC,MAAM,CAAC;QACP,YAAY,EAAE,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAC3E,eAAe,EAAE,CAAC,CAAC,IAAI,EAAE;KAC1B,CAAC;CACH,CAAC;KACD,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,oBAAoB,EAAE,6BAA6B,EAAE,CAAC,CAAC,CAAA;AAGzE,2BAA2B;AAC3B,MAAM,CAAC,MAAM,2CAA2C,GAAG,0BAA0B,CAAA;AAKrF,MAAM,CAAC,MAAM,8CAA8C,GAAG,CAAC,CAAC,MAAM,CAAC;IACrE,IAAI,EAAE,2BAA2B;CAClC,CAAC,CAAA;AAKF,2BAA2B;AAC3B,MAAM,CAAC,MAAM,2CAA2C,GAAG,0BAA0B,CAAA;AAKrF,MAAM,CAAC,MAAM,4CAA4C,GAAG,CAAC;KAC1D,KAAK,CAAC;IACL,CAAC,CAAC,MAAM,CAAC;QACP,YAAY,EAAE,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,eAAe,CAAC,CAAC;QACnF,eAAe,EAAE,uBAAuB;KACzC,CAAC;IACF,CAAC,CAAC,MAAM,CAAC;QACP,YAAY,EAAE,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAC3E,eAAe,EAAE,CAAC,CAAC,IAAI,EAAE;KAC1B,CAAC;CACH,CAAC;KACD,MAAM,CACL,CAAC,IAAI,EAAE,EAAE,CACP,IAAI,CAAC,YAAY,KAAK,gBAAgB,CAAC,eAAe,IAAI,IAAI,CAAC,eAAe,KAAK,IAAI,EACzF;IACE,OAAO,EAAE,kEAAkE;IAC3E,IAAI,EAAE,CAAC,iBAAiB,CAAC;CAC1B,CACF;KACA,MAAM,CACL,CAAC,IAAI,EAAE,EAAE,CACP,IAAI,CAAC,YAAY,KAAK,gBAAgB,CAAC,eAAe,IAAI,IAAI,CAAC,eAAe,KAAK,IAAI,EACzF;IACE,OAAO,EAAE,+EAA+E;IACxF,IAAI,EAAE,CAAC,iBAAiB,CAAC;CAC1B,CACF;IACD,oGAAoG;IACpG,kGAAkG;IAClG,qFAAqF;KACpF,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,oBAAoB,EAAE,6BAA6B,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAA;AAKpF,MAAM,CAAC,MAAM,8CAA8C,GAAG,CAAC,CAAC,MAAM,CAAC;IACrE,IAAI,EAAE,2BAA2B;CAClC,CAAC,CAAA"}
|