UNPKG

1.27 kBJavaScriptView Raw
1import { createLogger } from "./createLogger.js";
2import {
3 createEventHandler
4} from "./event-handler/index.js";
5import { sign, verify } from "@octokit/webhooks-methods";
6import { verifyAndReceive } from "./verify-and-receive.js";
7import { createNodeMiddleware } from "./middleware/node/index.js";
8import { emitterEventNames } from "./generated/webhook-names.js";
9class Webhooks {
10 sign;
11 verify;
12 on;
13 onAny;
14 onError;
15 removeListener;
16 receive;
17 verifyAndReceive;
18 constructor(options) {
19 if (!options || !options.secret) {
20 throw new Error("[@octokit/webhooks] options.secret required");
21 }
22 const state = {
23 eventHandler: createEventHandler(options),
24 secret: options.secret,
25 hooks: {},
26 log: createLogger(options.log)
27 };
28 this.sign = sign.bind(null, options.secret);
29 this.verify = verify.bind(null, options.secret);
30 this.on = state.eventHandler.on;
31 this.onAny = state.eventHandler.onAny;
32 this.onError = state.eventHandler.onError;
33 this.removeListener = state.eventHandler.removeListener;
34 this.receive = state.eventHandler.receive;
35 this.verifyAndReceive = verifyAndReceive.bind(null, state);
36 }
37}
38export {
39 Webhooks,
40 createEventHandler,
41 createNodeMiddleware,
42 emitterEventNames
43};