@@ -8,6 +8,7 @@ import { ensureDatabaseTriggerRegion } from "./database";
88import { ensureRemoteConfigTriggerRegion } from "./remoteConfig" ;
99import { ensureTestLabTriggerRegion } from "./testLab" ;
1010import { ensureFirestoreTriggerRegion } from "./firestore" ;
11+ import { ensureDataConnectTriggerRegion } from "./dataconnect" ;
1112
1213/** A standard void No Op */
1314export const noop = ( ) : Promise < void > => Promise . resolve ( ) ;
@@ -25,7 +26,8 @@ export type Name =
2526 | "database"
2627 | "remoteconfig"
2728 | "testlab"
28- | "firestore" ;
29+ | "firestore"
30+ | "dataconnect" ;
2931
3032/** A service interface for the underlying GCP event services */
3133export interface Service {
@@ -130,6 +132,17 @@ const firestoreService: Service = {
130132 unregisterTrigger : noop ,
131133} ;
132134
135+ /** A Firebase Data Connect service object */
136+ const dataconnectService : Service = {
137+ name : "dataconnect" ,
138+ api : "firebasedataconnect.googleapis.com" ,
139+ requiredProjectBindings : noopProjectBindings ,
140+ ensureTriggerRegion : ensureDataConnectTriggerRegion ,
141+ validateTrigger : noop ,
142+ registerTrigger : noop ,
143+ unregisterTrigger : noop ,
144+ } ;
145+
133146/** Mapping from event type string to service object */
134147const EVENT_SERVICE_MAPPING : Record < events . Event , Service > = {
135148 "google.cloud.pubsub.topic.v1.messagePublished" : pubSubService ,
@@ -156,6 +169,7 @@ const EVENT_SERVICE_MAPPING: Record<events.Event, Service> = {
156169 "google.cloud.firestore.document.v1.created.withAuthContext" : firestoreService ,
157170 "google.cloud.firestore.document.v1.updated.withAuthContext" : firestoreService ,
158171 "google.cloud.firestore.document.v1.deleted.withAuthContext" : firestoreService ,
172+ "google.firebase.dataconnect.connector.v1.mutationExecuted" : dataconnectService ,
159173} ;
160174
161175/**
0 commit comments