MCPcopy Index your code
hub / github.com/triggerdotdev/trigger.dev / ZodIpcConnection

Class ZodIpcConnection

packages/core/src/v3/zodIpc.ts:146–338  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

144}
145
146export class ZodIpcConnection<
147 TListenCatalog extends ZodSocketMessageCatalogSchema,
148 TEmitCatalog extends ZodSocketMessageCatalogSchema,
149> {
150 #sessionId?: string;
151 #messageCounter: number = 0;
152
153 #handler: ZodIpcMessageHandler<TListenCatalog, TEmitCatalog>;
154
155 #acks: Map<
156 number,
157 {
158 resolve: (value: unknown) => void;
159 reject: (reason?: any) => void;
160 timeout: NodeJS.Timeout;
161 }
162 > = new Map();
163
164 constructor(private opts: ZodIpcConnectionOptions<TListenCatalog, TEmitCatalog>) {
165 this.#handler = new ZodIpcMessageHandler({
166 schema: opts.listenSchema,
167 handlers: opts.handlers,
168 sender: {
169 send: this.send.bind(this),
170 sendWithAck: this.sendWithAck.bind(this),
171 },
172 });
173
174 this.#registerHandlers();
175 // this.connect();
176 }
177
178 async #registerHandlers() {
179 if (!this.opts.process.on) {
180 return;
181 }
182
183 this.opts.process.on("message", async (message) => {
184 this.#handlePacket(message);
185 });
186 }
187
188 async connect() {
189 this.#sendPacket({ type: "CONNECT" });
190 }
191
192 async #handlePacket(packet: Packet): Promise<void> {
193 const parsedPacket = Packet.safeParse(packet);
194
195 if (!parsedPacket.success) {
196 // console.error("dropping invalid packet", packet);
197 return;
198 }
199
200 // console.log("<-", packet);
201
202 switch (parsedPacket.data.type) {
203 case "ACK": {

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…