@eagleeye-solutions/integration-events-common
Version:
Eagle Eye CDP connector common functionality
46 lines • 1.9 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.EeAirInboundEventSchema = exports.EeAirInboundEventPayloadSchema = exports.CdpOutboundEventSchema = exports.CdpOutboundEventPayloadSchema = exports.InternalMessageSchema = exports.InternalMessageTypeSchema = void 0;
const zod_1 = require("zod");
const connector_config_1 = require("./connector-config");
exports.InternalMessageTypeSchema = zod_1.z.enum([
'cdp-inbound-event',
'cdp-outbound-event',
'ee-air-inbound-event',
'ee-air-outbound-event',
]);
exports.InternalMessageSchema = zod_1.z.object({
type: exports.InternalMessageTypeSchema,
connectorConfig: connector_config_1.BaseConnectorConfigSchema,
payload: zod_1.z.unknown(),
});
// Inbound internal messages - cdp-outbound-event and ee-air-inbound-event
exports.CdpOutboundEventPayloadSchema = zod_1.z.object({
type: zod_1.z.literal('services/trigger'),
body: zod_1.z.object({
identityValue: zod_1.z.string().min(1),
walletTransaction: zod_1.z.object({
reference: zod_1.z.string().min(1),
}),
triggers: zod_1.z
.array(zod_1.z.object({
reference: zod_1.z.string().min(1),
}))
.min(1),
}),
});
exports.CdpOutboundEventSchema = exports.InternalMessageSchema.extend({
type: zod_1.z.literal('cdp-outbound-event'),
payload: exports.CdpOutboundEventPayloadSchema,
});
exports.EeAirInboundEventPayloadSchema = zod_1.z.object({
url: zod_1.z.string().url(),
method: zod_1.z.enum(['POST', 'PUT', 'PATCH']),
headers: zod_1.z.record(zod_1.z.string(), zod_1.z.string()),
body: zod_1.z.string(),
});
exports.EeAirInboundEventSchema = exports.InternalMessageSchema.extend({
type: zod_1.z.literal('ee-air-inbound-event'),
payload: exports.EeAirInboundEventPayloadSchema,
});
//# sourceMappingURL=internal-message.js.map