@lokalise/maestro-expert-tenant-lib 1.4.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/LICENSE.md +13 -0
- package/README.md +40 -0
- package/dist/index.cjs +431 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.cts +741 -0
- package/dist/index.d.ts +741 -0
- package/dist/index.mjs +362 -0
- package/dist/index.mjs.map +1 -0
- package/package.json +63 -0
package/LICENSE.md
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
Copyright 2024 Lokalise, Inc.
|
|
2
|
+
|
|
3
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
you may not use this file except in compliance with the License.
|
|
5
|
+
You may obtain a copy of the License at
|
|
6
|
+
|
|
7
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
|
8
|
+
|
|
9
|
+
Unless required by applicable law or agreed to in writing, software
|
|
10
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
|
11
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
|
+
See the License for the specific language governing permissions and
|
|
13
|
+
limitations under the License.
|
package/README.md
ADDED
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# Shared API library between Maestro and Expert
|
|
2
|
+
|
|
3
|
+
This library provides shared objects, types and zod schemas for Maestro and Expert. This includes, but not limited to:
|
|
4
|
+
- zod schemas for Maestro API
|
|
5
|
+
- Workflow templates
|
|
6
|
+
- Definitions of workflow steps
|
|
7
|
+
- Resolvers (action handlers, guards)
|
|
8
|
+
|
|
9
|
+
### zod schemas for Maestro API
|
|
10
|
+
|
|
11
|
+
Used by both Maestro and Expert frontend to validate comms.
|
|
12
|
+
|
|
13
|
+
### Workflow templates
|
|
14
|
+
|
|
15
|
+
Used by both Maestro and Expert frontend. Holds definitions for specific workflow templates.
|
|
16
|
+
|
|
17
|
+
### Definitions of workflow steps
|
|
18
|
+
|
|
19
|
+
Used by both Maestro and Expert frontend. Holds definitions for specific workflow steps.
|
|
20
|
+
|
|
21
|
+
### Resolvers (action handlers, guards)
|
|
22
|
+
|
|
23
|
+
Used by Maestro. Defines the actions, which are used by state machine. And also guards, which are constrains for transitions to other steps. So basically it's an Expert specific business logic for workflow states.
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
It can serve as a reference for any upcoming potential integration with Maestro.
|
|
27
|
+
|
|
28
|
+
## Getting Started
|
|
29
|
+
|
|
30
|
+
Install all dependencies:
|
|
31
|
+
|
|
32
|
+
```shell
|
|
33
|
+
npm install
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
Run all tests:
|
|
37
|
+
|
|
38
|
+
```shell
|
|
39
|
+
npm run test
|
|
40
|
+
```
|
package/dist/index.cjs
ADDED
|
@@ -0,0 +1,431 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
9
|
+
var __export = (target, all) => {
|
|
10
|
+
for (var name in all)
|
|
11
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
12
|
+
};
|
|
13
|
+
var __copyProps = (to, from, except, desc) => {
|
|
14
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
15
|
+
for (let key of __getOwnPropNames(from))
|
|
16
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
17
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
18
|
+
}
|
|
19
|
+
return to;
|
|
20
|
+
};
|
|
21
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
22
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
23
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
24
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
25
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
26
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
27
|
+
mod
|
|
28
|
+
));
|
|
29
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
30
|
+
|
|
31
|
+
// index.ts
|
|
32
|
+
var maestro_expert_tenant_lib_exports = {};
|
|
33
|
+
__export(maestro_expert_tenant_lib_exports, {
|
|
34
|
+
API_ERROR: () => API_ERROR,
|
|
35
|
+
CREATE_TASK_STEP_SETTINGS_SCHEMA: () => CREATE_TASK_STEP_SETTINGS_SCHEMA,
|
|
36
|
+
CreateTaskExampleStepSettings: () => CreateTaskExampleStepSettings,
|
|
37
|
+
DELETE_WORKFLOW_PARAMS: () => DELETE_WORKFLOW_PARAMS,
|
|
38
|
+
DELETE_WORKFLOW_RESPONSE: () => DELETE_WORKFLOW_RESPONSE,
|
|
39
|
+
END_STEP_SETTINGS: () => END_STEP_SETTINGS,
|
|
40
|
+
END_STEP_SETTINGS_SCHEMA: () => END_STEP_SETTINGS_SCHEMA,
|
|
41
|
+
GET_WORKFLOW_LIST_PARAMS: () => GET_WORKFLOW_LIST_PARAMS,
|
|
42
|
+
GET_WORKFLOW_LIST_RESPONSE: () => GET_WORKFLOW_LIST_RESPONSE,
|
|
43
|
+
GET_WORKFLOW_PARAMS: () => GET_WORKFLOW_PARAMS,
|
|
44
|
+
GET_WORKFLOW_RESPONSE: () => GET_WORKFLOW_RESPONSE,
|
|
45
|
+
METADATA_FIELDS: () => METADATA_FIELDS,
|
|
46
|
+
PATCH_PAUSE_WORKFLOW_PARAMS: () => PATCH_PAUSE_WORKFLOW_PARAMS,
|
|
47
|
+
PATCH_PAUSE_WORKFLOW_RESPONSE: () => PATCH_PAUSE_WORKFLOW_RESPONSE,
|
|
48
|
+
PATCH_RESUME_WORKFLOW_PARAMS: () => PATCH_RESUME_WORKFLOW_PARAMS,
|
|
49
|
+
PATCH_RESUME_WORKFLOW_RESPONSE: () => PATCH_RESUME_WORKFLOW_RESPONSE,
|
|
50
|
+
POST_DUPLICATE_WORKFLOW_PARAMS: () => POST_DUPLICATE_WORKFLOW_PARAMS,
|
|
51
|
+
POST_DUPLICATE_WORKFLOW_RESPONSE: () => POST_DUPLICATE_WORKFLOW_RESPONSE,
|
|
52
|
+
POST_WORKFLOW_BODY: () => POST_WORKFLOW_BODY,
|
|
53
|
+
POST_WORKFLOW_PARAMS: () => POST_WORKFLOW_PARAMS,
|
|
54
|
+
POST_WORKFLOW_RESPONSE: () => POST_WORKFLOW_RESPONSE,
|
|
55
|
+
REVIEW_TASK_STEP_SETTINGS: () => REVIEW_TASK_STEP_SETTINGS,
|
|
56
|
+
REVIEW_TASK_STEP_SETTINGS_SCHEMA: () => REVIEW_TASK_STEP_SETTINGS_SCHEMA,
|
|
57
|
+
SCHEDULED_TRIGGER_STEP_SETTINGS: () => SCHEDULED_TRIGGER_STEP_SETTINGS,
|
|
58
|
+
SCHEDULED_TRIGGER_STEP_SETTINGS_SCHEMA: () => SCHEDULED_TRIGGER_STEP_SETTINGS_SCHEMA,
|
|
59
|
+
START_KEYS_STEP_SETTINGS_SCHEMA: () => START_KEYS_STEP_SETTINGS_SCHEMA,
|
|
60
|
+
STEP_TYPES: () => STEP_TYPES,
|
|
61
|
+
TEMPLATES: () => TEMPLATES,
|
|
62
|
+
TRANSLATE_TASK_STEP_SETTINGS: () => TRANSLATE_TASK_STEP_SETTINGS,
|
|
63
|
+
TRANSLATE_TASK_STEP_SETTINGS_SCHEMA: () => TRANSLATE_TASK_STEP_SETTINGS_SCHEMA,
|
|
64
|
+
TRIGGER_TYPE: () => TRIGGER_TYPE,
|
|
65
|
+
WORKFLOW: () => WORKFLOW,
|
|
66
|
+
WORKFLOW_EXTENDED: () => WORKFLOW_EXTENDED,
|
|
67
|
+
WORKFLOW_EXTENDED_SCHEMA: () => WORKFLOW_EXTENDED_SCHEMA,
|
|
68
|
+
WORKFLOW_STATUS: () => WORKFLOW_STATUS
|
|
69
|
+
});
|
|
70
|
+
module.exports = __toCommonJS(maestro_expert_tenant_lib_exports);
|
|
71
|
+
|
|
72
|
+
// src/apiContract/schemas.ts
|
|
73
|
+
var import_api_common = require("@lokalise/api-common");
|
|
74
|
+
var import_zod2 = __toESM(require("zod"), 1);
|
|
75
|
+
|
|
76
|
+
// src/workflow/steps.ts
|
|
77
|
+
var import_maestro_common = require("@lokalise/maestro-common");
|
|
78
|
+
var import_zod = require("zod");
|
|
79
|
+
var START_KEYS_STEP_SETTINGS_SCHEMA = import_maestro_common.WORKFLOW_LAYOUT_STEP_SETTINGS.extend({
|
|
80
|
+
name: import_zod.z.string(),
|
|
81
|
+
description: import_zod.z.string(),
|
|
82
|
+
autoMarkAsUnverified: import_zod.z.boolean(),
|
|
83
|
+
runOnSchedule: import_zod.z.boolean(),
|
|
84
|
+
monitoredLanguageId: import_zod.z.number(),
|
|
85
|
+
targetLanguageId: import_zod.z.number(),
|
|
86
|
+
monitoredKeyType: import_zod.z.enum(["new", "updated", "both"])
|
|
87
|
+
});
|
|
88
|
+
var CREATE_TASK_STEP_SETTINGS_SCHEMA = import_maestro_common.WORKFLOW_LAYOUT_STEP_SETTINGS.extend({
|
|
89
|
+
taskType: import_zod.z.enum(["translate", "review"]),
|
|
90
|
+
dueDate: import_zod.z.union([import_zod.z.number(), import_zod.z.string()])
|
|
91
|
+
});
|
|
92
|
+
var CreateTaskExampleStepSettings = CREATE_TASK_STEP_SETTINGS_SCHEMA.parse({
|
|
93
|
+
stepType: "create_task",
|
|
94
|
+
taskType: "translate",
|
|
95
|
+
dueDate: 5
|
|
96
|
+
});
|
|
97
|
+
var STEP_TYPES = [
|
|
98
|
+
"trigger_step",
|
|
99
|
+
"review_task_step",
|
|
100
|
+
"translate_task_step",
|
|
101
|
+
"end_step"
|
|
102
|
+
];
|
|
103
|
+
var SCHEDULED_TRIGGER_STEP_SETTINGS_SCHEMA = import_maestro_common.WORKFLOW_LAYOUT_STEP_SETTINGS.extend({
|
|
104
|
+
runOnSchedule: import_zod.z.boolean(),
|
|
105
|
+
monitoredKeyType: import_zod.z.enum(["new", "updated", "both"]),
|
|
106
|
+
monitoredLanguageId: import_zod.z.optional(import_zod.z.number()),
|
|
107
|
+
targetLanguageIds: import_zod.z.array(import_zod.z.number())
|
|
108
|
+
});
|
|
109
|
+
var SCHEDULED_TRIGGER_STEP_SETTINGS = {
|
|
110
|
+
stepType: "trigger_step",
|
|
111
|
+
runOnSchedule: true,
|
|
112
|
+
monitoredLanguageId: void 0,
|
|
113
|
+
targetLanguageIds: [],
|
|
114
|
+
monitoredKeyType: "new"
|
|
115
|
+
};
|
|
116
|
+
var REVIEW_TASK_STEP_SETTINGS_SCHEMA = import_maestro_common.WORKFLOW_LAYOUT_STEP_SETTINGS;
|
|
117
|
+
var REVIEW_TASK_STEP_SETTINGS = {
|
|
118
|
+
stepType: "review_task_step"
|
|
119
|
+
};
|
|
120
|
+
var TRANSLATE_TASK_STEP_SETTINGS_SCHEMA = import_maestro_common.WORKFLOW_LAYOUT_STEP_SETTINGS;
|
|
121
|
+
var TRANSLATE_TASK_STEP_SETTINGS = {
|
|
122
|
+
stepType: "translate_task_step"
|
|
123
|
+
};
|
|
124
|
+
var END_STEP_SETTINGS_SCHEMA = import_maestro_common.WORKFLOW_LAYOUT_STEP_SETTINGS;
|
|
125
|
+
var END_STEP_SETTINGS = {
|
|
126
|
+
stepType: "end_step"
|
|
127
|
+
};
|
|
128
|
+
|
|
129
|
+
// src/templates/resources/review-task.template.ts
|
|
130
|
+
var REVIEW_TASK_TEMPLATE = {
|
|
131
|
+
id: "reviewTask",
|
|
132
|
+
title: "Review task",
|
|
133
|
+
summary: "Generate a review task when content is added to the project.",
|
|
134
|
+
description: 'Select this workflow to automatically create a review task when the content in the editor meets the conditions set in "Start".',
|
|
135
|
+
layout: {
|
|
136
|
+
initial: "TriggerStep",
|
|
137
|
+
states: {
|
|
138
|
+
TriggerStep: {
|
|
139
|
+
on: {
|
|
140
|
+
WorkflowTriggerEvent: {
|
|
141
|
+
target: "ReviewTaskStep",
|
|
142
|
+
actions: [{ type: "storeWorkflowTriggerEventScope" }]
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
},
|
|
146
|
+
ReviewTaskStep: {
|
|
147
|
+
entry: [
|
|
148
|
+
{
|
|
149
|
+
type: "createTaskAction",
|
|
150
|
+
params: {
|
|
151
|
+
type: "review"
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
],
|
|
155
|
+
on: {
|
|
156
|
+
TaskClosedEvent: {
|
|
157
|
+
target: "EndStep"
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
},
|
|
161
|
+
EndStep: {
|
|
162
|
+
type: "final"
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
},
|
|
166
|
+
settings: {
|
|
167
|
+
TriggerStep: SCHEDULED_TRIGGER_STEP_SETTINGS,
|
|
168
|
+
ReviewTaskStep: REVIEW_TASK_STEP_SETTINGS,
|
|
169
|
+
EndStep: END_STEP_SETTINGS
|
|
170
|
+
}
|
|
171
|
+
};
|
|
172
|
+
|
|
173
|
+
// src/templates/resources/translate-and-review-task.template.ts
|
|
174
|
+
var TRANSLATE_AND_REVIEW_TASK_TEMPLATE = {
|
|
175
|
+
id: "translateAndReviewTask",
|
|
176
|
+
title: "Translation task \u2192 review task",
|
|
177
|
+
summary: "Automatic creation of translation task before a review task.",
|
|
178
|
+
description: "Use this template to set up a chained workflow where a review task will be created as soon as the translation task is completed.",
|
|
179
|
+
layout: {
|
|
180
|
+
initial: "TriggerStep",
|
|
181
|
+
states: {
|
|
182
|
+
TriggerStep: {
|
|
183
|
+
on: {
|
|
184
|
+
WorkflowTriggerEvent: {
|
|
185
|
+
target: "TranslateTaskStep",
|
|
186
|
+
actions: [{ type: "storeWorkflowTriggerEventScope" }]
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
},
|
|
190
|
+
TranslateTaskStep: {
|
|
191
|
+
entry: [
|
|
192
|
+
{
|
|
193
|
+
type: "createTaskAction",
|
|
194
|
+
params: {
|
|
195
|
+
type: "translate"
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
],
|
|
199
|
+
on: {
|
|
200
|
+
TaskClosedEvent: {
|
|
201
|
+
target: "ReviewTaskStep"
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
},
|
|
205
|
+
ReviewTaskStep: {
|
|
206
|
+
entry: [
|
|
207
|
+
{
|
|
208
|
+
type: "createTaskAction",
|
|
209
|
+
params: {
|
|
210
|
+
type: "review"
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
],
|
|
214
|
+
on: {
|
|
215
|
+
TaskClosedEvent: {
|
|
216
|
+
target: "EndStep"
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
},
|
|
220
|
+
EndStep: {
|
|
221
|
+
type: "final"
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
},
|
|
225
|
+
settings: {
|
|
226
|
+
TriggerStep: SCHEDULED_TRIGGER_STEP_SETTINGS,
|
|
227
|
+
TranslateTaskStep: TRANSLATE_TASK_STEP_SETTINGS,
|
|
228
|
+
ReviewTaskStep: REVIEW_TASK_STEP_SETTINGS,
|
|
229
|
+
EndStep: END_STEP_SETTINGS
|
|
230
|
+
}
|
|
231
|
+
};
|
|
232
|
+
|
|
233
|
+
// src/templates/resources/translate-task.template.ts
|
|
234
|
+
var TRANSLATE_TASK_TEMPLATE = {
|
|
235
|
+
id: "translateTask",
|
|
236
|
+
title: "Translation task",
|
|
237
|
+
summary: "Generate a translation task when content is added to the project.",
|
|
238
|
+
description: "Select this workflow to automatically create a translation task when the content in the editor meets the conditions set in \u201CStart\u201D.",
|
|
239
|
+
layout: {
|
|
240
|
+
initial: "TriggerStep",
|
|
241
|
+
states: {
|
|
242
|
+
TriggerStep: {
|
|
243
|
+
on: {
|
|
244
|
+
WorkflowTriggerEvent: {
|
|
245
|
+
target: "TranslateTaskStep",
|
|
246
|
+
actions: [{ type: "storeWorkflowTriggerEventScope" }]
|
|
247
|
+
}
|
|
248
|
+
}
|
|
249
|
+
},
|
|
250
|
+
TranslateTaskStep: {
|
|
251
|
+
entry: [
|
|
252
|
+
{
|
|
253
|
+
type: "createTaskAction",
|
|
254
|
+
params: {
|
|
255
|
+
type: "translate"
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
],
|
|
259
|
+
on: {
|
|
260
|
+
TaskClosedEvent: {
|
|
261
|
+
target: "EndStep"
|
|
262
|
+
}
|
|
263
|
+
}
|
|
264
|
+
},
|
|
265
|
+
EndStep: {
|
|
266
|
+
type: "final"
|
|
267
|
+
}
|
|
268
|
+
}
|
|
269
|
+
},
|
|
270
|
+
settings: {
|
|
271
|
+
TriggerStep: SCHEDULED_TRIGGER_STEP_SETTINGS,
|
|
272
|
+
TranslateTaskStep: TRANSLATE_TASK_STEP_SETTINGS,
|
|
273
|
+
EndStep: END_STEP_SETTINGS
|
|
274
|
+
}
|
|
275
|
+
};
|
|
276
|
+
|
|
277
|
+
// src/templates/schemas.ts
|
|
278
|
+
var TEMPLATE_IDS = ["reviewTask", "translateTask", "translateAndReviewTask"];
|
|
279
|
+
var buildTemplate = /* @__PURE__ */ __name((internalTemplate) => {
|
|
280
|
+
const frontendLayout = buildFrontendLayout(internalTemplate);
|
|
281
|
+
return {
|
|
282
|
+
...internalTemplate,
|
|
283
|
+
frontendLayout
|
|
284
|
+
};
|
|
285
|
+
}, "buildTemplate");
|
|
286
|
+
var buildFrontendLayout = /* @__PURE__ */ __name((template) => Object.entries(template.settings).map(([id, step]) => {
|
|
287
|
+
const { stepType, ...values } = step;
|
|
288
|
+
return {
|
|
289
|
+
id,
|
|
290
|
+
type: stepType,
|
|
291
|
+
values
|
|
292
|
+
};
|
|
293
|
+
}), "buildFrontendLayout");
|
|
294
|
+
var TEMPLATES = {
|
|
295
|
+
reviewTask: buildTemplate(REVIEW_TASK_TEMPLATE),
|
|
296
|
+
translateTask: buildTemplate(TRANSLATE_TASK_TEMPLATE),
|
|
297
|
+
translateAndReviewTask: buildTemplate(TRANSLATE_AND_REVIEW_TASK_TEMPLATE)
|
|
298
|
+
};
|
|
299
|
+
|
|
300
|
+
// src/apiContract/schemas.ts
|
|
301
|
+
var DATETIME = import_zod2.default.string().datetime();
|
|
302
|
+
var WORKFLOW_ID = import_zod2.default.string().max(36);
|
|
303
|
+
var TEMPLATE_ID = import_zod2.default.enum(TEMPLATE_IDS).describe("Template identifier");
|
|
304
|
+
var GROUP_ID = import_zod2.default.string().max(255).describe(
|
|
305
|
+
"Generated group identifier, which should be unique across Expert and Flow (example: expert-123-98616399660d3c2456abc5.66984240)"
|
|
306
|
+
);
|
|
307
|
+
var METADATA_FIELDS = import_zod2.default.enum(["targetLanguageIds", "error"]).describe("Metadata fields that can be included in the response");
|
|
308
|
+
var TRIGGER_TYPE = import_zod2.default.enum(["Manual", "Scheduled", "Automated"]).describe("Trigger type");
|
|
309
|
+
var WORKFLOW_STATUS = import_zod2.default.enum(["Draft", "Live", "Archived", "Paused", "Canceled"]).describe("Workflow status");
|
|
310
|
+
var API_ERROR = import_api_common.COMMON_ERROR_RESPONSE_SCHEMA;
|
|
311
|
+
var GET_WORKFLOW_PARAMS = import_zod2.default.object({
|
|
312
|
+
groupId: GROUP_ID,
|
|
313
|
+
workflowId: WORKFLOW_ID
|
|
314
|
+
}).describe("URL parameters for getting a workflow");
|
|
315
|
+
var WORKFLOW = import_zod2.default.object({
|
|
316
|
+
id: WORKFLOW_ID,
|
|
317
|
+
version: import_zod2.default.number(),
|
|
318
|
+
status: WORKFLOW_STATUS,
|
|
319
|
+
title: import_zod2.default.string(),
|
|
320
|
+
triggerType: TRIGGER_TYPE,
|
|
321
|
+
targetLanguageIds: import_zod2.default.array(import_zod2.default.string()).optional().nullable(),
|
|
322
|
+
error: import_api_common.COMMON_ERROR_RESPONSE_SCHEMA.optional().nullable(),
|
|
323
|
+
createdAt: DATETIME,
|
|
324
|
+
updatedAt: import_zod2.default.optional(DATETIME).nullable(),
|
|
325
|
+
publishedAt: import_zod2.default.optional(DATETIME).nullable(),
|
|
326
|
+
triggeredAt: import_zod2.default.optional(DATETIME).nullable(),
|
|
327
|
+
metadata: import_zod2.default.optional(import_zod2.default.record(import_zod2.default.unknown())).nullable()
|
|
328
|
+
}).describe("Workflow. Used in the list of workflows");
|
|
329
|
+
var WORKFLOW_EXTENDED_SCHEMA = import_zod2.default.array(
|
|
330
|
+
import_zod2.default.object({
|
|
331
|
+
id: import_zod2.default.string().max(100),
|
|
332
|
+
type: import_zod2.default.enum(STEP_TYPES),
|
|
333
|
+
values: import_zod2.default.record(import_zod2.default.string(), import_zod2.default.unknown())
|
|
334
|
+
})
|
|
335
|
+
).describe("Workflow FrontendLayout");
|
|
336
|
+
var WORKFLOW_EXTENDED = import_zod2.default.object({
|
|
337
|
+
id: WORKFLOW_ID,
|
|
338
|
+
groupId: GROUP_ID,
|
|
339
|
+
version: import_zod2.default.number(),
|
|
340
|
+
status: WORKFLOW_STATUS,
|
|
341
|
+
title: import_zod2.default.string(),
|
|
342
|
+
schema: WORKFLOW_EXTENDED_SCHEMA,
|
|
343
|
+
createdAt: DATETIME,
|
|
344
|
+
updatedAt: import_zod2.default.optional(DATETIME),
|
|
345
|
+
publishedAt: import_zod2.default.optional(DATETIME)
|
|
346
|
+
}).describe("Workflow. Response for getting a workflow or creating a new one");
|
|
347
|
+
var GET_WORKFLOW_RESPONSE = import_zod2.default.object({
|
|
348
|
+
data: WORKFLOW_EXTENDED
|
|
349
|
+
});
|
|
350
|
+
var GET_WORKFLOW_LIST_PARAMS = import_zod2.default.object({
|
|
351
|
+
groupId: GROUP_ID
|
|
352
|
+
});
|
|
353
|
+
var GET_WORKFLOW_LIST_RESPONSE = import_zod2.default.object({
|
|
354
|
+
data: import_zod2.default.array(WORKFLOW)
|
|
355
|
+
});
|
|
356
|
+
var PATCH_PAUSE_WORKFLOW_PARAMS = import_zod2.default.object({
|
|
357
|
+
groupId: GROUP_ID,
|
|
358
|
+
workflowId: WORKFLOW_ID
|
|
359
|
+
});
|
|
360
|
+
var PATCH_PAUSE_WORKFLOW_RESPONSE = import_zod2.default.null({
|
|
361
|
+
description: "Successfully paused workflow"
|
|
362
|
+
});
|
|
363
|
+
var PATCH_RESUME_WORKFLOW_PARAMS = import_zod2.default.object({
|
|
364
|
+
groupId: GROUP_ID,
|
|
365
|
+
workflowId: WORKFLOW_ID
|
|
366
|
+
});
|
|
367
|
+
var PATCH_RESUME_WORKFLOW_RESPONSE = import_zod2.default.null({
|
|
368
|
+
description: "Successfully resumed workflow"
|
|
369
|
+
});
|
|
370
|
+
var POST_DUPLICATE_WORKFLOW_PARAMS = import_zod2.default.object({
|
|
371
|
+
groupId: GROUP_ID,
|
|
372
|
+
workflowId: WORKFLOW_ID
|
|
373
|
+
});
|
|
374
|
+
var POST_DUPLICATE_WORKFLOW_RESPONSE = GET_WORKFLOW_RESPONSE;
|
|
375
|
+
var DELETE_WORKFLOW_PARAMS = import_zod2.default.object({
|
|
376
|
+
groupId: GROUP_ID,
|
|
377
|
+
workflowId: WORKFLOW_ID
|
|
378
|
+
});
|
|
379
|
+
var DELETE_WORKFLOW_RESPONSE = import_zod2.default.null({
|
|
380
|
+
description: "Successfully deleted workflow"
|
|
381
|
+
});
|
|
382
|
+
var POST_WORKFLOW_PARAMS = import_zod2.default.object({
|
|
383
|
+
groupId: GROUP_ID
|
|
384
|
+
}).describe("URL parameters for creating a workflow");
|
|
385
|
+
var POST_WORKFLOW_BODY = import_zod2.default.nullable(
|
|
386
|
+
import_zod2.default.object({
|
|
387
|
+
templateId: TEMPLATE_ID.optional()
|
|
388
|
+
})
|
|
389
|
+
).describe("URL parameters for creating a workflow");
|
|
390
|
+
var POST_WORKFLOW_RESPONSE = import_zod2.default.object({
|
|
391
|
+
data: WORKFLOW_EXTENDED
|
|
392
|
+
});
|
|
393
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
394
|
+
0 && (module.exports = {
|
|
395
|
+
API_ERROR,
|
|
396
|
+
CREATE_TASK_STEP_SETTINGS_SCHEMA,
|
|
397
|
+
CreateTaskExampleStepSettings,
|
|
398
|
+
DELETE_WORKFLOW_PARAMS,
|
|
399
|
+
DELETE_WORKFLOW_RESPONSE,
|
|
400
|
+
END_STEP_SETTINGS,
|
|
401
|
+
END_STEP_SETTINGS_SCHEMA,
|
|
402
|
+
GET_WORKFLOW_LIST_PARAMS,
|
|
403
|
+
GET_WORKFLOW_LIST_RESPONSE,
|
|
404
|
+
GET_WORKFLOW_PARAMS,
|
|
405
|
+
GET_WORKFLOW_RESPONSE,
|
|
406
|
+
METADATA_FIELDS,
|
|
407
|
+
PATCH_PAUSE_WORKFLOW_PARAMS,
|
|
408
|
+
PATCH_PAUSE_WORKFLOW_RESPONSE,
|
|
409
|
+
PATCH_RESUME_WORKFLOW_PARAMS,
|
|
410
|
+
PATCH_RESUME_WORKFLOW_RESPONSE,
|
|
411
|
+
POST_DUPLICATE_WORKFLOW_PARAMS,
|
|
412
|
+
POST_DUPLICATE_WORKFLOW_RESPONSE,
|
|
413
|
+
POST_WORKFLOW_BODY,
|
|
414
|
+
POST_WORKFLOW_PARAMS,
|
|
415
|
+
POST_WORKFLOW_RESPONSE,
|
|
416
|
+
REVIEW_TASK_STEP_SETTINGS,
|
|
417
|
+
REVIEW_TASK_STEP_SETTINGS_SCHEMA,
|
|
418
|
+
SCHEDULED_TRIGGER_STEP_SETTINGS,
|
|
419
|
+
SCHEDULED_TRIGGER_STEP_SETTINGS_SCHEMA,
|
|
420
|
+
START_KEYS_STEP_SETTINGS_SCHEMA,
|
|
421
|
+
STEP_TYPES,
|
|
422
|
+
TEMPLATES,
|
|
423
|
+
TRANSLATE_TASK_STEP_SETTINGS,
|
|
424
|
+
TRANSLATE_TASK_STEP_SETTINGS_SCHEMA,
|
|
425
|
+
TRIGGER_TYPE,
|
|
426
|
+
WORKFLOW,
|
|
427
|
+
WORKFLOW_EXTENDED,
|
|
428
|
+
WORKFLOW_EXTENDED_SCHEMA,
|
|
429
|
+
WORKFLOW_STATUS
|
|
430
|
+
});
|
|
431
|
+
//# sourceMappingURL=index.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../index.ts","../src/apiContract/schemas.ts","../src/workflow/steps.ts","../src/templates/resources/review-task.template.ts","../src/templates/resources/translate-and-review-task.template.ts","../src/templates/resources/translate-task.template.ts","../src/templates/schemas.ts"],"sourcesContent":["export * from './src/apiContract/schemas.js'\nexport * from './src/workflow/steps.js'\nexport { TEMPLATES, TemplateId } from './src/templates/schemas.js'\nexport { Template, FrontendLayout, FrontendLayoutStep } from './src/templates/types.js'\n","import { COMMON_ERROR_RESPONSE_SCHEMA } from '@lokalise/api-common'\nimport z from 'zod'\nimport { TEMPLATE_IDS } from '../templates/schemas.js'\nimport { STEP_TYPES } from '../workflow/steps.js'\n\n// COMMON SCHEMAS\nconst DATETIME = z.string().datetime()\nconst WORKFLOW_ID = z.string().max(36)\nconst TEMPLATE_ID = z.enum(TEMPLATE_IDS).describe('Template identifier')\nconst GROUP_ID = z\n .string()\n .max(255)\n .describe(\n 'Generated group identifier, which should be unique across Expert and Flow (example: expert-123-98616399660d3c2456abc5.66984240)',\n )\n\nexport const METADATA_FIELDS = z\n .enum(['targetLanguageIds', 'error'])\n .describe('Metadata fields that can be included in the response')\n\nexport const TRIGGER_TYPE = z.enum(['Manual', 'Scheduled', 'Automated']).describe('Trigger type')\n\nexport const WORKFLOW_STATUS = z\n .enum(['Draft', 'Live', 'Archived', 'Paused', 'Canceled'])\n .describe('Workflow status')\n\nexport const API_ERROR = COMMON_ERROR_RESPONSE_SCHEMA\n\n// GET WORKFLOW\nexport const GET_WORKFLOW_PARAMS = z\n .object({\n groupId: GROUP_ID,\n workflowId: WORKFLOW_ID,\n })\n .describe('URL parameters for getting a workflow')\n\nexport const WORKFLOW = z\n .object({\n id: WORKFLOW_ID,\n version: z.number(),\n status: WORKFLOW_STATUS,\n title: z.string(),\n triggerType: TRIGGER_TYPE,\n targetLanguageIds: z.array(z.string()).optional().nullable(),\n error: COMMON_ERROR_RESPONSE_SCHEMA.optional().nullable(),\n createdAt: DATETIME,\n updatedAt: z.optional(DATETIME).nullable(),\n publishedAt: z.optional(DATETIME).nullable(),\n triggeredAt: z.optional(DATETIME).nullable(),\n metadata: z.optional(z.record(z.unknown())).nullable(),\n })\n .describe('Workflow. Used in the list of workflows')\n\nexport const WORKFLOW_EXTENDED_SCHEMA = z\n .array(\n z.object({\n id: z.string().max(100),\n type: z.enum(STEP_TYPES),\n values: z.record(z.string(), z.unknown()),\n }),\n )\n .describe('Workflow FrontendLayout')\n\nexport const WORKFLOW_EXTENDED = z\n .object({\n id: WORKFLOW_ID,\n groupId: GROUP_ID,\n version: z.number(),\n status: WORKFLOW_STATUS,\n title: z.string(),\n schema: WORKFLOW_EXTENDED_SCHEMA,\n createdAt: DATETIME,\n updatedAt: z.optional(DATETIME),\n publishedAt: z.optional(DATETIME),\n })\n .describe('Workflow. Response for getting a workflow or creating a new one')\n\nexport type Workflow = z.infer<typeof WORKFLOW>\nexport type WorkflowExtended = z.infer<typeof WORKFLOW_EXTENDED>\nexport type WorkflowExtendedSchema = z.infer<typeof WORKFLOW_EXTENDED_SCHEMA>\n\nexport const GET_WORKFLOW_RESPONSE = z.object({\n data: WORKFLOW_EXTENDED,\n})\n\n// LIST WORKFLOWS\nexport const GET_WORKFLOW_LIST_PARAMS = z.object({\n groupId: GROUP_ID,\n})\n\nexport const GET_WORKFLOW_LIST_RESPONSE = z.object({\n data: z.array(WORKFLOW),\n})\n\nexport type GetWorkflowListParams = z.infer<typeof GET_WORKFLOW_LIST_PARAMS>\nexport type GetWorkflowListResponse = z.infer<typeof GET_WORKFLOW_LIST_RESPONSE>\n\n// PAUSE WORKFLOW\nexport const PATCH_PAUSE_WORKFLOW_PARAMS = z.object({\n groupId: GROUP_ID,\n workflowId: WORKFLOW_ID,\n})\n\nexport const PATCH_PAUSE_WORKFLOW_RESPONSE = z.null({\n description: 'Successfully paused workflow',\n})\n\n// RESUME WORKFLOW\nexport const PATCH_RESUME_WORKFLOW_PARAMS = z.object({\n groupId: GROUP_ID,\n workflowId: WORKFLOW_ID,\n})\n\nexport const PATCH_RESUME_WORKFLOW_RESPONSE = z.null({\n description: 'Successfully resumed workflow',\n})\n\n// DUPLICATE WORKFLOW\nexport const POST_DUPLICATE_WORKFLOW_PARAMS = z.object({\n groupId: GROUP_ID,\n workflowId: WORKFLOW_ID,\n})\n\nexport const POST_DUPLICATE_WORKFLOW_RESPONSE = GET_WORKFLOW_RESPONSE\n\n// DELETE WORKFLOW\nexport const DELETE_WORKFLOW_PARAMS = z.object({\n groupId: GROUP_ID,\n workflowId: WORKFLOW_ID,\n})\n\nexport const DELETE_WORKFLOW_RESPONSE = z.null({\n description: 'Successfully deleted workflow',\n})\n\n// CREATE WORKFLOW\nexport const POST_WORKFLOW_PARAMS = z\n .object({\n groupId: GROUP_ID,\n })\n .describe('URL parameters for creating a workflow')\n\nexport const POST_WORKFLOW_BODY = z\n .nullable(\n z.object({\n templateId: TEMPLATE_ID.optional(),\n }),\n )\n .describe('URL parameters for creating a workflow')\n\nexport const POST_WORKFLOW_RESPONSE = z.object({\n data: WORKFLOW_EXTENDED,\n})\n\nexport type PostWorkflowParams = z.infer<typeof POST_WORKFLOW_PARAMS>\nexport type PostWorkflowBody = z.infer<typeof POST_WORKFLOW_BODY>\nexport type PostWorkflowResponse = z.infer<typeof POST_WORKFLOW_RESPONSE>\n","import { WORKFLOW_LAYOUT_STEP_SETTINGS } from '@lokalise/maestro-common'\nimport { z } from 'zod'\n\nexport const START_KEYS_STEP_SETTINGS_SCHEMA = WORKFLOW_LAYOUT_STEP_SETTINGS.extend({\n name: z.string(),\n description: z.string(),\n autoMarkAsUnverified: z.boolean(),\n runOnSchedule: z.boolean(),\n monitoredLanguageId: z.number(),\n targetLanguageId: z.number(),\n monitoredKeyType: z.enum(['new', 'updated', 'both']),\n})\n\nexport const CREATE_TASK_STEP_SETTINGS_SCHEMA = WORKFLOW_LAYOUT_STEP_SETTINGS.extend({\n taskType: z.enum(['translate', 'review']),\n dueDate: z.union([z.number(), z.string()]),\n})\n\nexport const CreateTaskExampleStepSettings = CREATE_TASK_STEP_SETTINGS_SCHEMA.parse({\n stepType: 'create_task',\n taskType: 'translate',\n dueDate: 5,\n})\n\nexport const STEP_TYPES = [\n 'trigger_step',\n 'review_task_step',\n 'translate_task_step',\n 'end_step',\n] as const\nexport type StepType = (typeof STEP_TYPES)[number]\n\n// SCHEDULED_TRIGGER_STEP\nexport const SCHEDULED_TRIGGER_STEP_SETTINGS_SCHEMA = WORKFLOW_LAYOUT_STEP_SETTINGS.extend({\n runOnSchedule: z.boolean(),\n monitoredKeyType: z.enum(['new', 'updated', 'both']),\n monitoredLanguageId: z.optional(z.number()),\n targetLanguageIds: z.array(z.number()),\n})\nexport type ScheduledTriggerStepSettings = z.infer<\n typeof SCHEDULED_TRIGGER_STEP_SETTINGS_SCHEMA\n> & {\n stepType: StepType\n}\nexport const SCHEDULED_TRIGGER_STEP_SETTINGS: ScheduledTriggerStepSettings = {\n stepType: 'trigger_step',\n runOnSchedule: true,\n monitoredLanguageId: undefined,\n targetLanguageIds: [],\n monitoredKeyType: 'new',\n}\n\n// REVIEW_TASK_STEP\nexport const REVIEW_TASK_STEP_SETTINGS_SCHEMA = WORKFLOW_LAYOUT_STEP_SETTINGS\nexport type ReviewTaskStepSettings = z.infer<typeof REVIEW_TASK_STEP_SETTINGS_SCHEMA> & {\n stepType: StepType\n}\nexport const REVIEW_TASK_STEP_SETTINGS: ReviewTaskStepSettings = {\n stepType: 'review_task_step',\n}\n\n// TRANSLATE_TASK_STEP\nexport const TRANSLATE_TASK_STEP_SETTINGS_SCHEMA = WORKFLOW_LAYOUT_STEP_SETTINGS\nexport type TranslateTaskStepSettings = z.infer<typeof TRANSLATE_TASK_STEP_SETTINGS_SCHEMA> & {\n stepType: StepType\n}\nexport const TRANSLATE_TASK_STEP_SETTINGS: TranslateTaskStepSettings = {\n stepType: 'translate_task_step',\n}\n\n// END_STEP\nexport const END_STEP_SETTINGS_SCHEMA = WORKFLOW_LAYOUT_STEP_SETTINGS\nexport type EndStepSettings = z.infer<typeof END_STEP_SETTINGS_SCHEMA> & {\n stepType: StepType\n}\nexport const END_STEP_SETTINGS: EndStepSettings = {\n stepType: 'end_step',\n}\n","import {\n END_STEP_SETTINGS,\n REVIEW_TASK_STEP_SETTINGS,\n SCHEDULED_TRIGGER_STEP_SETTINGS,\n} from '../../workflow/steps.js'\nimport type { InternalTemplate } from '../types.js'\n\nexport const REVIEW_TASK_TEMPLATE: InternalTemplate<'TriggerStep' | 'ReviewTaskStep' | 'EndStep'> =\n {\n id: 'reviewTask',\n title: 'Review task',\n summary: 'Generate a review task when content is added to the project.',\n description:\n 'Select this workflow to automatically create a review task when the content in the editor meets the conditions set in \"Start\".',\n layout: {\n initial: 'TriggerStep',\n states: {\n TriggerStep: {\n on: {\n WorkflowTriggerEvent: {\n target: 'ReviewTaskStep',\n actions: [{ type: 'storeWorkflowTriggerEventScope' }],\n },\n },\n },\n ReviewTaskStep: {\n entry: [\n {\n type: 'createTaskAction',\n params: {\n type: 'review',\n },\n },\n ],\n on: {\n TaskClosedEvent: {\n target: 'EndStep',\n },\n },\n },\n EndStep: {\n type: 'final',\n },\n },\n },\n settings: {\n TriggerStep: SCHEDULED_TRIGGER_STEP_SETTINGS,\n ReviewTaskStep: REVIEW_TASK_STEP_SETTINGS,\n EndStep: END_STEP_SETTINGS,\n },\n }\n","import {\n END_STEP_SETTINGS,\n REVIEW_TASK_STEP_SETTINGS,\n SCHEDULED_TRIGGER_STEP_SETTINGS,\n TRANSLATE_TASK_STEP_SETTINGS,\n} from '../../workflow/steps.js'\nimport type { InternalTemplate } from '../types.js'\n\nexport const TRANSLATE_AND_REVIEW_TASK_TEMPLATE: InternalTemplate<\n 'TriggerStep' | 'TranslateTaskStep' | 'ReviewTaskStep' | 'EndStep'\n> = {\n id: 'translateAndReviewTask',\n title: 'Translation task → review task',\n summary: 'Automatic creation of translation task before a review task.',\n description:\n 'Use this template to set up a chained workflow where a review task will be created as soon as the translation task is completed.',\n layout: {\n initial: 'TriggerStep',\n states: {\n TriggerStep: {\n on: {\n WorkflowTriggerEvent: {\n target: 'TranslateTaskStep',\n actions: [{ type: 'storeWorkflowTriggerEventScope' }],\n },\n },\n },\n TranslateTaskStep: {\n entry: [\n {\n type: 'createTaskAction',\n params: {\n type: 'translate',\n },\n },\n ],\n on: {\n TaskClosedEvent: {\n target: 'ReviewTaskStep',\n },\n },\n },\n ReviewTaskStep: {\n entry: [\n {\n type: 'createTaskAction',\n params: {\n type: 'review',\n },\n },\n ],\n on: {\n TaskClosedEvent: {\n target: 'EndStep',\n },\n },\n },\n EndStep: {\n type: 'final',\n },\n },\n },\n settings: {\n TriggerStep: SCHEDULED_TRIGGER_STEP_SETTINGS,\n TranslateTaskStep: TRANSLATE_TASK_STEP_SETTINGS,\n ReviewTaskStep: REVIEW_TASK_STEP_SETTINGS,\n EndStep: END_STEP_SETTINGS,\n },\n}\n","import {\n END_STEP_SETTINGS,\n SCHEDULED_TRIGGER_STEP_SETTINGS,\n TRANSLATE_TASK_STEP_SETTINGS,\n} from '../../workflow/steps.js'\nimport type { InternalTemplate } from '../types.js'\n\nexport const TRANSLATE_TASK_TEMPLATE: InternalTemplate<\n 'TriggerStep' | 'TranslateTaskStep' | 'EndStep'\n> = {\n id: 'translateTask',\n title: 'Translation task',\n summary: 'Generate a translation task when content is added to the project.',\n description:\n 'Select this workflow to automatically create a translation task when the content in the editor meets the conditions set in “Start”.',\n layout: {\n initial: 'TriggerStep',\n states: {\n TriggerStep: {\n on: {\n WorkflowTriggerEvent: {\n target: 'TranslateTaskStep',\n actions: [{ type: 'storeWorkflowTriggerEventScope' }],\n },\n },\n },\n TranslateTaskStep: {\n entry: [\n {\n type: 'createTaskAction',\n params: {\n type: 'translate',\n },\n },\n ],\n on: {\n TaskClosedEvent: {\n target: 'EndStep',\n },\n },\n },\n EndStep: {\n type: 'final',\n },\n },\n },\n settings: {\n TriggerStep: SCHEDULED_TRIGGER_STEP_SETTINGS,\n TranslateTaskStep: TRANSLATE_TASK_STEP_SETTINGS,\n EndStep: END_STEP_SETTINGS,\n },\n}\n","import type { StepType } from '../workflow/steps.js'\nimport { REVIEW_TASK_TEMPLATE } from './resources/review-task.template.js'\nimport { TRANSLATE_AND_REVIEW_TASK_TEMPLATE } from './resources/translate-and-review-task.template.js'\nimport { TRANSLATE_TASK_TEMPLATE } from './resources/translate-task.template.js'\nimport type { FrontendLayout, InternalTemplate, Template } from './types.js'\n\nexport const TEMPLATE_IDS = ['reviewTask', 'translateTask', 'translateAndReviewTask'] as const\n\nexport type TemplateId = (typeof TEMPLATE_IDS)[number]\n\nconst buildTemplate = <StateName extends string>(\n internalTemplate: InternalTemplate<StateName>,\n): Template<StateName> => {\n const frontendLayout = buildFrontendLayout(internalTemplate)\n\n return {\n ...internalTemplate,\n frontendLayout,\n }\n}\n\nconst buildFrontendLayout = <StateName extends string>(\n template: InternalTemplate<StateName>,\n): FrontendLayout<StateName> =>\n Object.entries(template.settings).map(([id, step]) => {\n const { stepType, ...values } = step\n return {\n id: id as StateName,\n type: stepType as StepType,\n values,\n }\n })\n\nexport const TEMPLATES: Record<TemplateId, Template<string>> = {\n reviewTask: buildTemplate(REVIEW_TASK_TEMPLATE),\n translateTask: buildTemplate(TRANSLATE_TASK_TEMPLATE),\n translateAndReviewTask: buildTemplate(TRANSLATE_AND_REVIEW_TASK_TEMPLATE),\n}\n"],"mappings":"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","names":["import_zod","z"]}
|