UNPKG

@glowlabs-org/events-sdk

Version:

Typed event SDK for Glow, powered by RabbitMQ and Zod.

37 lines (36 loc) 1.78 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getEventSchema = getEventSchema; const audit_pushed_v1_1 = require("./schemas/audit-pushed.v1"); const audit_slashed_v1_1 = require("./schemas/audit-slashed.v1"); const audit_pfees_paid_v1_1 = require("./schemas/audit-pfees-paid.v1"); const audit_pfees_paid_v2_1 = require("./schemas/audit-pfees-paid.v2"); const base_event_1 = require("./base-event"); const application_created_v1_1 = require("./schemas/application-created.v1"); const event_types_1 = require("./event-types"); const audit_pushed_v2_1 = require("./schemas/audit-pushed.v2"); const eventTypeRegistry = { [`${event_types_1.eventTypes.auditPushed}:v1`]: base_event_1.baseEventZ.extend({ payload: audit_pushed_v1_1.auditPushedV1PayloadZ, }), [`${event_types_1.eventTypes.auditSlashed}:v1`]: base_event_1.baseEventZ.extend({ payload: audit_slashed_v1_1.auditSlashedV1PayloadZ, }), [`${event_types_1.eventTypes.auditPfeesPaid}:v1`]: base_event_1.baseEventZ.extend({ payload: audit_pfees_paid_v1_1.auditPfeesPaidV1PayloadZ, }), [`${event_types_1.eventTypes.auditPfeesPaid}:v2`]: base_event_1.baseEventZ.extend({ payload: audit_pfees_paid_v2_1.auditPfeesPaidV2PayloadZ, }), [`${event_types_1.eventTypes.applicationCreated}:v1`]: base_event_1.baseEventZ.extend({ payload: application_created_v1_1.applicationCreatedV1PayloadZ, }), [`${event_types_1.eventTypes.auditPushed}:v2`]: base_event_1.baseEventZ.extend({ payload: audit_pushed_v2_1.auditPushedV2PayloadZ, }), // Add more event types/versions here }; function getEventSchema(eventType, version) { const key = `${eventType}:${version}`; return eventTypeRegistry[key]; }