UNPKG

@vzeta/camunda-api-zod-schemas

Version:

Zod schemas and TypeScript types for Camunda 8 unified API

74 lines (73 loc) 2.01 kB
import { z } from "zod"; import { getQueryRequestBodySchema, getQueryResponseBodySchema, API_VERSION } from "../common.js"; const mappingRuleSchema = z.object({ mappingId: z.string(), claimName: z.string(), claimValue: z.string(), name: z.string() }); const createMappingRuleRequestBodySchema = mappingRuleSchema; const createMappingRuleResponseBodySchema = mappingRuleSchema; const updateMappingRuleRequestBodySchema = mappingRuleSchema.pick({ claimName: true, claimValue: true, name: true }); const updateMappingRuleResponseBodySchema = mappingRuleSchema; const queryMappingRulesRequestBodySchema = getQueryRequestBodySchema({ sortFields: ["mappingId", "claimName", "claimValue", "name"], filter: mappingRuleSchema.pick({ mappingId: true, claimName: true, claimValue: true, name: true }).partial() }); const queryMappingRulesResponseBodySchema = getQueryResponseBodySchema(mappingRuleSchema); const createMappingRule = { method: "POST", getUrl() { return `/${API_VERSION}/mapping-rules`; } }; const updateMappingRule = { method: "PUT", getUrl(params) { const { mappingId } = params; return `/${API_VERSION}/mapping-rules/${mappingId}`; } }; const deleteMappingRule = { method: "DELETE", getUrl(params) { const { mappingId } = params; return `/${API_VERSION}/mapping-rules/${mappingId}`; } }; const getMappingRule = { method: "GET", getUrl(params) { const { mappingId } = params; return `/${API_VERSION}/mapping-rules/${mappingId}`; } }; const queryMappingRules = { method: "POST", getUrl() { return `/${API_VERSION}/mapping-rules/search`; } }; export { createMappingRule, createMappingRuleRequestBodySchema, createMappingRuleResponseBodySchema, deleteMappingRule, getMappingRule, mappingRuleSchema, queryMappingRules, queryMappingRulesRequestBodySchema, queryMappingRulesResponseBodySchema, updateMappingRule, updateMappingRuleRequestBodySchema, updateMappingRuleResponseBodySchema };