@vzeta/camunda-api-zod-schemas
Version:
Zod schemas and TypeScript types for Camunda 8 unified API
68 lines (67 loc) • 2.03 kB
JavaScript
import { z } from "zod";
import { getCollectionResponseBodySchema, API_VERSION } from "../common.js";
const activityTypeSchema = z.enum([
"UNSPECIFIED",
"PROCESS",
"SUB_PROCESS",
"EVENT_SUB_PROCESS",
"INTERMEDIATE_CATCH_EVENT",
"INTERMEDIATE_THROW_EVENT",
"BOUNDARY_EVENT",
"SERVICE_TASK",
"RECEIVE_TASK",
"USER_TASK",
"MANUAL_TASK",
"TASK",
"MULTI_INSTANCE_BODY",
"CALL_ACTIVITY",
"BUSINESS_RULE_TASK",
"SCRIPT_TASK",
"SEND_TASK",
"UNKNOWN"
]);
const adHocSubProcessActivityFilterSchema = z.object({
processDefinitionKey: z.string(),
adHocSubProcessId: z.string()
});
const queryActivatableActivitiesRequestBodySchema = z.object({
filter: adHocSubProcessActivityFilterSchema
});
const activatableActivitySchema = z.object({
processDefinitionKey: z.string(),
processDefinitionId: z.string(),
adHocSubProcessId: z.string(),
elementId: z.string(),
elementName: z.string(),
type: activityTypeSchema,
documentation: z.string(),
tenantId: z.string()
});
const queryActivatableActivitiesResponseBodySchema = getCollectionResponseBodySchema(activatableActivitySchema);
const activateActivityWithinAdHocSubProcessRequestBodySchema = z.object({
elementId: z.string()
});
const activateActivityWithinAdHocSubProcessResponseBodySchema = z.object({
elements: z.array(
z.object({
elementId: z.string()
})
)
});
const queryActivatableActivities = {
method: "POST",
getUrl: () => `/${API_VERSION}/element-instances/ad-hoc-activities/search`
};
const activateAdHocSubProcessActivities = {
method: "POST",
getUrl: ({ adHocSubProcessInstanceKey }) => `/${API_VERSION}/element-instances/ad-hoc-activities/${adHocSubProcessInstanceKey}/activation`
};
export {
activateActivityWithinAdHocSubProcessRequestBodySchema,
activateActivityWithinAdHocSubProcessResponseBodySchema,
activateAdHocSubProcessActivities,
activityTypeSchema,
queryActivatableActivities,
queryActivatableActivitiesRequestBodySchema,
queryActivatableActivitiesResponseBodySchema
};