@automate.ax/integration-contracts 0.114.4 → 0.115.2

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.
@@ -1,51 +1,52 @@
1
1
  import * as z from "zod";
2
- import { BREVO_EMAIL_BLOCKED_EVENT_SCHEMA, BREVO_EMAIL_CLICKED_EVENT_SCHEMA, BREVO_EMAIL_DEFERRED_EVENT_SCHEMA, BREVO_EMAIL_DELIVERED_EVENT_SCHEMA, BREVO_EMAIL_HARD_BOUNCED_EVENT_SCHEMA, BREVO_EMAIL_MARKED_AS_SPAM_EVENT_SCHEMA, BREVO_EMAIL_OPENED_EVENT_SCHEMA, BREVO_EMAIL_SENT_EVENT_SCHEMA, BREVO_EMAIL_SOFT_BOUNCED_EVENT_SCHEMA, BREVO_EMAIL_UNSUBSCRIBED_EVENT_SCHEMA, BREVO_TRANSACTIONAL_EVENT_SCHEMA, } from "./schemas.js";
2
+ import { BREVO_CONTACT_EVENT_SCHEMA, BREVO_EVENT_SCHEMA, BREVO_MARKETING_EMAIL_EVENT_SCHEMA, BREVO_MARKETING_SMS_EVENT_SCHEMA, BREVO_TRANSACTIONAL_EMAIL_EVENT_SCHEMA, BREVO_TRANSACTIONAL_SMS_EVENT_SCHEMA, createBrevoSemanticEventSchema, } from "./schemas.js";
3
3
  export * from "./api.js";
4
4
  export * from "./schemas.js";
5
5
  export const BREVO_TRIGGER_CONFIG_SCHEMA = z.object({});
6
+ const contract = (eventSchema) => ({
7
+ configSchema: BREVO_TRIGGER_CONFIG_SCHEMA,
8
+ eventSchema,
9
+ });
10
+ const semantic = (family, type) => contract(createBrevoSemanticEventSchema(family, type));
6
11
  export const brevoTriggerContracts = {
7
- "brevo.transactional.blocked": {
8
- configSchema: BREVO_TRIGGER_CONFIG_SCHEMA,
9
- eventSchema: BREVO_EMAIL_BLOCKED_EVENT_SCHEMA,
10
- },
11
- "brevo.transactional.clicked": {
12
- configSchema: BREVO_TRIGGER_CONFIG_SCHEMA,
13
- eventSchema: BREVO_EMAIL_CLICKED_EVENT_SCHEMA,
14
- },
15
- "brevo.transactional.deferred": {
16
- configSchema: BREVO_TRIGGER_CONFIG_SCHEMA,
17
- eventSchema: BREVO_EMAIL_DEFERRED_EVENT_SCHEMA,
18
- },
19
- "brevo.transactional.delivered": {
20
- configSchema: BREVO_TRIGGER_CONFIG_SCHEMA,
21
- eventSchema: BREVO_EMAIL_DELIVERED_EVENT_SCHEMA,
22
- },
23
- "brevo.transactional.event": {
24
- configSchema: BREVO_TRIGGER_CONFIG_SCHEMA,
25
- eventSchema: BREVO_TRANSACTIONAL_EVENT_SCHEMA,
26
- },
27
- "brevo.transactional.hardBounced": {
28
- configSchema: BREVO_TRIGGER_CONFIG_SCHEMA,
29
- eventSchema: BREVO_EMAIL_HARD_BOUNCED_EVENT_SCHEMA,
30
- },
31
- "brevo.transactional.markedAsSpam": {
32
- configSchema: BREVO_TRIGGER_CONFIG_SCHEMA,
33
- eventSchema: BREVO_EMAIL_MARKED_AS_SPAM_EVENT_SCHEMA,
34
- },
35
- "brevo.transactional.opened": {
36
- configSchema: BREVO_TRIGGER_CONFIG_SCHEMA,
37
- eventSchema: BREVO_EMAIL_OPENED_EVENT_SCHEMA,
38
- },
39
- "brevo.transactional.sent": {
40
- configSchema: BREVO_TRIGGER_CONFIG_SCHEMA,
41
- eventSchema: BREVO_EMAIL_SENT_EVENT_SCHEMA,
42
- },
43
- "brevo.transactional.softBounced": {
44
- configSchema: BREVO_TRIGGER_CONFIG_SCHEMA,
45
- eventSchema: BREVO_EMAIL_SOFT_BOUNCED_EVENT_SCHEMA,
46
- },
47
- "brevo.transactional.unsubscribed": {
48
- configSchema: BREVO_TRIGGER_CONFIG_SCHEMA,
49
- eventSchema: BREVO_EMAIL_UNSUBSCRIBED_EVENT_SCHEMA,
50
- },
12
+ "brevo.event": contract(BREVO_EVENT_SCHEMA),
13
+ "brevo.transactionalEmail.event": contract(BREVO_TRANSACTIONAL_EMAIL_EVENT_SCHEMA),
14
+ "brevo.transactionalEmail.sent": semantic("transactionalEmail", "sent"),
15
+ "brevo.transactionalEmail.delivered": semantic("transactionalEmail", "delivered"),
16
+ "brevo.transactionalEmail.hardBounced": semantic("transactionalEmail", "hardBounced"),
17
+ "brevo.transactionalEmail.softBounced": semantic("transactionalEmail", "softBounced"),
18
+ "brevo.transactionalEmail.blocked": semantic("transactionalEmail", "blocked"),
19
+ "brevo.transactionalEmail.markedAsSpam": semantic("transactionalEmail", "markedAsSpam"),
20
+ "brevo.transactionalEmail.invalid": semantic("transactionalEmail", "invalid"),
21
+ "brevo.transactionalEmail.deferred": semantic("transactionalEmail", "deferred"),
22
+ "brevo.transactionalEmail.clicked": semantic("transactionalEmail", "clicked"),
23
+ "brevo.transactionalEmail.opened": semantic("transactionalEmail", "opened"),
24
+ "brevo.transactionalEmail.firstOpened": semantic("transactionalEmail", "firstOpened"),
25
+ "brevo.transactionalEmail.unsubscribed": semantic("transactionalEmail", "unsubscribed"),
26
+ "brevo.transactionalSms.event": contract(BREVO_TRANSACTIONAL_SMS_EVENT_SCHEMA),
27
+ "brevo.transactionalSms.sent": semantic("transactionalSms", "sent"),
28
+ "brevo.transactionalSms.delivered": semantic("transactionalSms", "delivered"),
29
+ "brevo.transactionalSms.hardBounced": semantic("transactionalSms", "hardBounced"),
30
+ "brevo.transactionalSms.softBounced": semantic("transactionalSms", "softBounced"),
31
+ "brevo.transactionalSms.replied": semantic("transactionalSms", "replied"),
32
+ "brevo.transactionalSms.unsubscribed": semantic("transactionalSms", "unsubscribed"),
33
+ "brevo.marketingEmail.event": contract(BREVO_MARKETING_EMAIL_EVENT_SCHEMA),
34
+ "brevo.marketingEmail.delivered": semantic("marketingEmail", "delivered"),
35
+ "brevo.marketingEmail.hardBounced": semantic("marketingEmail", "hardBounced"),
36
+ "brevo.marketingEmail.softBounced": semantic("marketingEmail", "softBounced"),
37
+ "brevo.marketingEmail.markedAsSpam": semantic("marketingEmail", "markedAsSpam"),
38
+ "brevo.marketingEmail.opened": semantic("marketingEmail", "opened"),
39
+ "brevo.marketingEmail.clicked": semantic("marketingEmail", "clicked"),
40
+ "brevo.marketingEmail.unsubscribed": semantic("marketingEmail", "unsubscribed"),
41
+ "brevo.contact.event": contract(BREVO_CONTACT_EVENT_SCHEMA),
42
+ "brevo.contact.addedToList": semantic("contact", "addedToList"),
43
+ "brevo.contact.updated": semantic("contact", "updated"),
44
+ "brevo.contact.deleted": semantic("contact", "deleted"),
45
+ "brevo.marketingSms.event": contract(BREVO_MARKETING_SMS_EVENT_SCHEMA),
46
+ "brevo.marketingSms.sent": semantic("marketingSms", "sent"),
47
+ "brevo.marketingSms.delivered": semantic("marketingSms", "delivered"),
48
+ "brevo.marketingSms.hardBounced": semantic("marketingSms", "hardBounced"),
49
+ "brevo.marketingSms.softBounced": semantic("marketingSms", "softBounced"),
50
+ "brevo.marketingSms.replied": semantic("marketingSms", "replied"),
51
+ "brevo.marketingSms.unsubscribed": semantic("marketingSms", "unsubscribed"),
51
52
  };