@deepnoodle/mobius 0.0.21 → 0.0.23

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 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,8 +1,9 @@
1
- export { AuthRevokedError, Client, ConfigError, LeaseLostError, PayloadTooLargeError, RateLimitedError, RateLimitError, WorkerInstanceConflictError, isTerminalRunStatus, } from "./client.js";
2
- export { DEFAULT_BASE_URL, DEFAULT_NAMESPACE, DEFAULT_PROJECT, type ClientOptions, type JobEventEntry, type JobEventsRequest, type ListRunsOptions, type ListWorkflowsOptions, type RunEvent, type StartRunOptions, type UpdateWorkflowOptions, type WaitRunOptions, type WatchRunOptions, type WorkflowDefinition, type WorkflowDefinitionConfig, type RunDetail, type WorkflowOptions, type WorkflowSyncResult, } from "./client.js";
3
- export { InvalidWebhookSignatureError, WEBHOOK_EVENT_PING, WEBHOOK_EVENT_RUN_COMPLETED, WEBHOOK_EVENT_RUN_FAILED, WEBHOOK_EVENT_TYPE_HEADER, WEBHOOK_SIGNATURE_HEADER, buildSyntheticWebhookPayload, deliverSyntheticWebhook, parseSignedWebhookRequest, parseWebhookEvent, signWebhookPayload, verifyWebhookSignature, type ParsedSignedWebhookRequest, type SyntheticWebhookDelivery, type WebhookEvent, type WebhookEventType, } from "./webhook.js";
1
+ export { AuthRevokedError, Client, ConfigError, DEFAULT_BASE_URL, DEFAULT_NAMESPACE, DEFAULT_PROJECT, LeaseLostError, PayloadTooLargeError, RateLimitedError, RateLimitError, WorkerInstanceConflictError, isTerminalRunStatus, } from "./client.js";
2
+ export type { Automation, AutomationListResponse, AutomationOptions, AutomationRun, AutomationRunEvent, AutomationRunListResponse, AutomationRunStatus, AutomationVersion, AutomationVersionListResponse, AutomationVersionOptions, ClientOptions, ListAutomationsOptions, ListRunsOptions, RunEvent, StartRunOptions, UpdateAutomationOptions, WaitRunOptions, WatchRunOptions, } from "./client.js";
3
+ export { WEBHOOK_EVENT_PING, WEBHOOK_EVENT_RUN_COMPLETED, WEBHOOK_EVENT_RUN_FAILED, WEBHOOK_EVENT_TYPE_HEADER, buildSyntheticWebhookPayload, deliverSyntheticWebhook, type SyntheticWebhookDelivery, type WebhookEventType, } from "./webhook.js";
4
+ export { InvalidSignatureError, MOBIUS_DELIVERY_ID_HEADER, MOBIUS_SECRET_REF_HEADER, MOBIUS_SECRET_VERSION_HEADER, MOBIUS_SIGNATURE_HEADER, MOBIUS_SIGNATURE_VERSION_HEADER, MOBIUS_TIMESTAMP_HEADER, parseActionInvocation, parseInteractionCallback, parseWebhookDelivery, readDeliveryMeta, signDelivery, verifySignedDelivery, type DeliveryMeta, type VerifiedDelivery, } from "./signing.js";
4
5
  export { DEFAULT_MAX_RETRIES, MAX_RETRY_BACKOFF_SECONDS, wrapFetchWithRetry, type WrapRetryOptions, } from "./retry.js";
5
6
  export { Worker, WorkerPool, resolveInstanceID } from "./worker.js";
6
- export type { WorkerConfig, WorkerPoolConfig, ActionFn, InstanceIDSource, Logger, ActionContext, } from "./worker.js";
7
- export type { JobClaim, JobClaimRequest, JobFenceRequest, JobHeartbeat, JobHeartbeatDirectives, JobReportRequest, Run, RunListResponse, RunSignalAccepted, RunStatus, SendRunSignalRequest, WorkflowDefinitionListResponse, WorkflowDefinitionSummary, WorkflowSpec, } from "./api/index.js";
7
+ export type { ActionContext, ActionFn, GenerationEmitter, GenerationFn, GenerationJob, InstanceIDSource, Logger, ModelCapability, WorkerConfig, WorkerPoolConfig, } from "./worker.js";
8
+ export type { AutomationStatus, AutomationTrigger, CancelAutomationRunRequest, CreateAutomationRequest, CreateAutomationVersionRequest, SignalAutomationRunRequest, StartAutomationRunRequest, UpdateAutomationRequest, WorkerSocketCancelDirective, WorkerSocketClaimedJob, WorkerSocketGenerationDeltaFrame, WorkerSocketJobCancelFrame, WorkerSocketJobHeartbeatAckFrame, WorkerSocketJobHeartbeatFrame, WorkerSocketJobReportAckFrame, WorkerSocketJobReportFrame, WorkerSocketJobsClaimFrame, WorkerSocketJobsClaimedFrame, WorkerSocketModelCapability, WorkerSocketRegisterFrame, WorkerSocketRegisteredFrame, } from "./api/index.js";
8
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,MAAM,EACN,WAAW,EACX,cAAc,EACd,oBAAoB,EACpB,gBAAgB,EAChB,cAAc,EACd,2BAA2B,EAC3B,mBAAmB,GACpB,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,EACf,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,oBAAoB,EACzB,KAAK,QAAQ,EACb,KAAK,eAAe,EACpB,KAAK,qBAAqB,EAC1B,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,KAAK,wBAAwB,EAC7B,KAAK,SAAS,EACd,KAAK,eAAe,EACpB,KAAK,kBAAkB,GACxB,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,4BAA4B,EAC5B,kBAAkB,EAClB,2BAA2B,EAC3B,wBAAwB,EACxB,yBAAyB,EACzB,wBAAwB,EACxB,4BAA4B,EAC5B,uBAAuB,EACvB,yBAAyB,EACzB,iBAAiB,EACjB,kBAAkB,EAClB,sBAAsB,EACtB,KAAK,0BAA0B,EAC/B,KAAK,wBAAwB,EAC7B,KAAK,YAAY,EACjB,KAAK,gBAAgB,GACtB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,mBAAmB,EACnB,yBAAyB,EACzB,kBAAkB,EAClB,KAAK,gBAAgB,GACtB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AACpE,YAAY,EACV,YAAY,EACZ,gBAAgB,EAChB,QAAQ,EACR,gBAAgB,EAChB,MAAM,EACN,aAAa,GACd,MAAM,aAAa,CAAC;AAErB,YAAY,EACV,QAAQ,EACR,eAAe,EACf,eAAe,EACf,YAAY,EACZ,sBAAsB,EACtB,gBAAgB,EAChB,GAAG,EACH,eAAe,EACf,iBAAiB,EACjB,SAAS,EACT,oBAAoB,EACpB,8BAA8B,EAC9B,yBAAyB,EACzB,YAAY,GACb,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,MAAM,EACN,WAAW,EACX,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,EACf,cAAc,EACd,oBAAoB,EACpB,gBAAgB,EAChB,cAAc,EACd,2BAA2B,EAC3B,mBAAmB,GACpB,MAAM,aAAa,CAAC;AACrB,YAAY,EACV,UAAU,EACV,sBAAsB,EACtB,iBAAiB,EACjB,aAAa,EACb,kBAAkB,EAClB,yBAAyB,EACzB,mBAAmB,EACnB,iBAAiB,EACjB,6BAA6B,EAC7B,wBAAwB,EACxB,aAAa,EACb,sBAAsB,EACtB,eAAe,EACf,QAAQ,EACR,eAAe,EACf,uBAAuB,EACvB,cAAc,EACd,eAAe,GAChB,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,kBAAkB,EAClB,2BAA2B,EAC3B,wBAAwB,EACxB,yBAAyB,EACzB,4BAA4B,EAC5B,uBAAuB,EACvB,KAAK,wBAAwB,EAC7B,KAAK,gBAAgB,GACtB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,qBAAqB,EACrB,yBAAyB,EACzB,wBAAwB,EACxB,4BAA4B,EAC5B,uBAAuB,EACvB,+BAA+B,EAC/B,uBAAuB,EACvB,qBAAqB,EACrB,wBAAwB,EACxB,oBAAoB,EACpB,gBAAgB,EAChB,YAAY,EACZ,oBAAoB,EACpB,KAAK,YAAY,EACjB,KAAK,gBAAgB,GACtB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,mBAAmB,EACnB,yBAAyB,EACzB,kBAAkB,EAClB,KAAK,gBAAgB,GACtB,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AACpE,YAAY,EACV,aAAa,EACb,QAAQ,EACR,iBAAiB,EACjB,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,MAAM,EACN,eAAe,EACf,YAAY,EACZ,gBAAgB,GACjB,MAAM,aAAa,CAAC;AAErB,YAAY,EACV,gBAAgB,EAChB,iBAAiB,EACjB,0BAA0B,EAC1B,uBAAuB,EACvB,8BAA8B,EAC9B,0BAA0B,EAC1B,yBAAyB,EACzB,uBAAuB,EACvB,2BAA2B,EAC3B,sBAAsB,EACtB,gCAAgC,EAChC,0BAA0B,EAC1B,gCAAgC,EAChC,6BAA6B,EAC7B,6BAA6B,EAC7B,0BAA0B,EAC1B,0BAA0B,EAC1B,4BAA4B,EAC5B,2BAA2B,EAC3B,yBAAyB,EACzB,2BAA2B,GAC5B,MAAM,gBAAgB,CAAC"}
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
- export { AuthRevokedError, Client, ConfigError, LeaseLostError, PayloadTooLargeError, RateLimitedError, RateLimitError, WorkerInstanceConflictError, isTerminalRunStatus, } from "./client.js";
2
- export { DEFAULT_BASE_URL, DEFAULT_NAMESPACE, DEFAULT_PROJECT, } from "./client.js";
3
- export { InvalidWebhookSignatureError, WEBHOOK_EVENT_PING, WEBHOOK_EVENT_RUN_COMPLETED, WEBHOOK_EVENT_RUN_FAILED, WEBHOOK_EVENT_TYPE_HEADER, WEBHOOK_SIGNATURE_HEADER, buildSyntheticWebhookPayload, deliverSyntheticWebhook, parseSignedWebhookRequest, parseWebhookEvent, signWebhookPayload, verifyWebhookSignature, } from "./webhook.js";
1
+ export { AuthRevokedError, Client, ConfigError, DEFAULT_BASE_URL, DEFAULT_NAMESPACE, DEFAULT_PROJECT, LeaseLostError, PayloadTooLargeError, RateLimitedError, RateLimitError, WorkerInstanceConflictError, isTerminalRunStatus, } from "./client.js";
2
+ export { WEBHOOK_EVENT_PING, WEBHOOK_EVENT_RUN_COMPLETED, WEBHOOK_EVENT_RUN_FAILED, WEBHOOK_EVENT_TYPE_HEADER, buildSyntheticWebhookPayload, deliverSyntheticWebhook, } from "./webhook.js";
3
+ export { InvalidSignatureError, MOBIUS_DELIVERY_ID_HEADER, MOBIUS_SECRET_REF_HEADER, MOBIUS_SECRET_VERSION_HEADER, MOBIUS_SIGNATURE_HEADER, MOBIUS_SIGNATURE_VERSION_HEADER, MOBIUS_TIMESTAMP_HEADER, parseActionInvocation, parseInteractionCallback, parseWebhookDelivery, readDeliveryMeta, signDelivery, verifySignedDelivery, } from "./signing.js";
4
4
  export { DEFAULT_MAX_RETRIES, MAX_RETRY_BACKOFF_SECONDS, wrapFetchWithRetry, } from "./retry.js";
5
5
  export { Worker, WorkerPool, resolveInstanceID } from "./worker.js";
6
6
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,MAAM,EACN,WAAW,EACX,cAAc,EACd,oBAAoB,EACpB,gBAAgB,EAChB,cAAc,EACd,2BAA2B,EAC3B,mBAAmB,GACpB,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,GAgBhB,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,4BAA4B,EAC5B,kBAAkB,EAClB,2BAA2B,EAC3B,wBAAwB,EACxB,yBAAyB,EACzB,wBAAwB,EACxB,4BAA4B,EAC5B,uBAAuB,EACvB,yBAAyB,EACzB,iBAAiB,EACjB,kBAAkB,EAClB,sBAAsB,GAKvB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,mBAAmB,EACnB,yBAAyB,EACzB,kBAAkB,GAEnB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,MAAM,EACN,WAAW,EACX,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,EACf,cAAc,EACd,oBAAoB,EACpB,gBAAgB,EAChB,cAAc,EACd,2BAA2B,EAC3B,mBAAmB,GACpB,MAAM,aAAa,CAAC;AAqBrB,OAAO,EACL,kBAAkB,EAClB,2BAA2B,EAC3B,wBAAwB,EACxB,yBAAyB,EACzB,4BAA4B,EAC5B,uBAAuB,GAGxB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,qBAAqB,EACrB,yBAAyB,EACzB,wBAAwB,EACxB,4BAA4B,EAC5B,uBAAuB,EACvB,+BAA+B,EAC/B,uBAAuB,EACvB,qBAAqB,EACrB,wBAAwB,EACxB,oBAAoB,EACpB,gBAAgB,EAChB,YAAY,EACZ,oBAAoB,GAGrB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,mBAAmB,EACnB,yBAAyB,EACzB,kBAAkB,GAEnB,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC"}
@@ -0,0 +1,43 @@
1
+ export declare const MOBIUS_SIGNATURE_HEADER = "X-Mobius-Signature";
2
+ export declare const MOBIUS_SIGNATURE_VERSION_HEADER = "X-Mobius-Signature-Version";
3
+ export declare const MOBIUS_TIMESTAMP_HEADER = "X-Mobius-Timestamp";
4
+ export declare const MOBIUS_DELIVERY_ID_HEADER = "X-Mobius-Delivery-Id";
5
+ export declare const MOBIUS_SECRET_REF_HEADER = "X-Mobius-Secret-Ref";
6
+ export declare const MOBIUS_SECRET_VERSION_HEADER = "X-Mobius-Secret-Version";
7
+ export interface DeliveryMeta {
8
+ signatureVersion: string;
9
+ signature: string;
10
+ timestamp: number;
11
+ deliveryId: string;
12
+ secretRef: string;
13
+ secretVersion: number;
14
+ }
15
+ export interface VerifiedDelivery extends DeliveryMeta {
16
+ body: Uint8Array;
17
+ }
18
+ export declare class InvalidSignatureError extends Error {
19
+ constructor(message: string);
20
+ }
21
+ export declare function readDeliveryMeta(request: Request): DeliveryMeta;
22
+ export declare function verifySignedDelivery(request: Request, opts: {
23
+ key: Uint8Array;
24
+ maxAge?: number;
25
+ now?: () => number;
26
+ } | {
27
+ resolveKey: (meta: DeliveryMeta) => Promise<Uint8Array> | Uint8Array;
28
+ maxAge?: number;
29
+ now?: () => number;
30
+ }): Promise<VerifiedDelivery>;
31
+ export declare function signDelivery(key: Uint8Array, body: Uint8Array, opts: {
32
+ deliveryId: string;
33
+ timestamp: number;
34
+ }): {
35
+ signature: string;
36
+ };
37
+ export declare function parseWebhookDelivery<T>(v: VerifiedDelivery): {
38
+ type: string;
39
+ data: T;
40
+ };
41
+ export declare function parseActionInvocation<T>(v: VerifiedDelivery): T;
42
+ export declare function parseInteractionCallback<T>(v: VerifiedDelivery): T;
43
+ //# sourceMappingURL=signing.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"signing.d.ts","sourceRoot":"","sources":["../src/signing.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,uBAAuB,uBAAuB,CAAC;AAC5D,eAAO,MAAM,+BAA+B,+BAA+B,CAAC;AAC5E,eAAO,MAAM,uBAAuB,uBAAuB,CAAC;AAC5D,eAAO,MAAM,yBAAyB,yBAAyB,CAAC;AAChE,eAAO,MAAM,wBAAwB,wBAAwB,CAAC;AAC9D,eAAO,MAAM,4BAA4B,4BAA4B,CAAC;AAMtE,MAAM,WAAW,YAAY;IAC3B,gBAAgB,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,gBAAiB,SAAQ,YAAY;IACpD,IAAI,EAAE,UAAU,CAAC;CAClB;AAED,qBAAa,qBAAsB,SAAQ,KAAK;gBAClC,OAAO,EAAE,MAAM;CAI5B;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,YAAY,CA0B/D;AAED,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,OAAO,EAChB,IAAI,EACA;IAAE,GAAG,EAAE,UAAU,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,MAAM,CAAA;CAAE,GACxD;IACE,UAAU,EAAE,CAAC,IAAI,EAAE,YAAY,KAAK,OAAO,CAAC,UAAU,CAAC,GAAG,UAAU,CAAC;IACrE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;CACpB,GACJ,OAAO,CAAC,gBAAgB,CAAC,CAU3B;AAED,wBAAgB,YAAY,CAC1B,GAAG,EAAE,UAAU,EACf,IAAI,EAAE,UAAU,EAChB,IAAI,EAAE;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GAC9C;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,CAUvB;AAED,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,CAAC,EAAE,gBAAgB,GAAG;IAC5D,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,CAAC,CAAC;CACT,CAKA;AAED,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,CAAC,EAAE,gBAAgB,GAAG,CAAC,CAE/D;AAED,wBAAgB,wBAAwB,CAAC,CAAC,EAAE,CAAC,EAAE,gBAAgB,GAAG,CAAC,CAElE"}
@@ -0,0 +1,101 @@
1
+ import { createHmac, timingSafeEqual } from "node:crypto";
2
+ export const MOBIUS_SIGNATURE_HEADER = "X-Mobius-Signature";
3
+ export const MOBIUS_SIGNATURE_VERSION_HEADER = "X-Mobius-Signature-Version";
4
+ export const MOBIUS_TIMESTAMP_HEADER = "X-Mobius-Timestamp";
5
+ export const MOBIUS_DELIVERY_ID_HEADER = "X-Mobius-Delivery-Id";
6
+ export const MOBIUS_SECRET_REF_HEADER = "X-Mobius-Secret-Ref";
7
+ export const MOBIUS_SECRET_VERSION_HEADER = "X-Mobius-Secret-Version";
8
+ const SIGNATURE_PREFIX = "sha256=";
9
+ const VERSION = "v1";
10
+ const DEFAULT_MAX_AGE_SECONDS = 300;
11
+ export class InvalidSignatureError extends Error {
12
+ constructor(message) {
13
+ super(`mobius: invalid signed delivery: ${message}`);
14
+ this.name = "InvalidSignatureError";
15
+ }
16
+ }
17
+ export function readDeliveryMeta(request) {
18
+ const signatureVersion = requiredHeader(request, MOBIUS_SIGNATURE_VERSION_HEADER);
19
+ if (signatureVersion !== VERSION) {
20
+ throw new InvalidSignatureError("unsupported signature version");
21
+ }
22
+ const timestamp = Number(requiredHeader(request, MOBIUS_TIMESTAMP_HEADER));
23
+ if (!Number.isInteger(timestamp) || timestamp <= 0) {
24
+ throw new InvalidSignatureError("invalid timestamp");
25
+ }
26
+ const secretVersion = Number(requiredHeader(request, MOBIUS_SECRET_VERSION_HEADER));
27
+ if (!Number.isInteger(secretVersion) || secretVersion <= 0) {
28
+ throw new InvalidSignatureError("invalid secret version");
29
+ }
30
+ return {
31
+ signatureVersion,
32
+ signature: requiredHeader(request, MOBIUS_SIGNATURE_HEADER),
33
+ timestamp,
34
+ deliveryId: requiredHeader(request, MOBIUS_DELIVERY_ID_HEADER),
35
+ secretRef: requiredHeader(request, MOBIUS_SECRET_REF_HEADER),
36
+ secretVersion,
37
+ };
38
+ }
39
+ export async function verifySignedDelivery(request, opts) {
40
+ const meta = readDeliveryMeta(request);
41
+ verifyFreshness(meta, opts);
42
+ const body = new Uint8Array(await request.arrayBuffer());
43
+ const key = "key" in opts ? opts.key : await opts.resolveKey(meta);
44
+ if (!key?.byteLength) {
45
+ throw new InvalidSignatureError("signing key is required");
46
+ }
47
+ verifySignature(key, body, meta);
48
+ return { ...meta, body };
49
+ }
50
+ export function signDelivery(key, body, opts) {
51
+ const canonical = Buffer.concat([
52
+ Buffer.from(`${VERSION}.${opts.deliveryId}.${opts.timestamp}.`),
53
+ Buffer.from(body),
54
+ ]);
55
+ return {
56
+ signature: `${SIGNATURE_PREFIX}${createHmac("sha256", key)
57
+ .update(canonical)
58
+ .digest("hex")}`,
59
+ };
60
+ }
61
+ export function parseWebhookDelivery(v) {
62
+ return JSON.parse(Buffer.from(v.body).toString("utf8"));
63
+ }
64
+ export function parseActionInvocation(v) {
65
+ return JSON.parse(Buffer.from(v.body).toString("utf8"));
66
+ }
67
+ export function parseInteractionCallback(v) {
68
+ return JSON.parse(Buffer.from(v.body).toString("utf8"));
69
+ }
70
+ function verifyFreshness(meta, opts) {
71
+ const now = opts.now?.() ?? Math.floor(Date.now() / 1000);
72
+ const maxAge = opts.maxAge ?? DEFAULT_MAX_AGE_SECONDS;
73
+ if (Math.abs(now - meta.timestamp) > maxAge) {
74
+ throw new InvalidSignatureError("timestamp outside max age");
75
+ }
76
+ }
77
+ function verifySignature(key, body, meta) {
78
+ if (!meta.signature.startsWith(SIGNATURE_PREFIX)) {
79
+ throw new InvalidSignatureError("missing sha256 prefix");
80
+ }
81
+ const raw = meta.signature.slice(SIGNATURE_PREFIX.length);
82
+ if (!/^[0-9a-fA-F]+$/.test(raw) || raw.length % 2 !== 0) {
83
+ throw new InvalidSignatureError("signature is not hex");
84
+ }
85
+ const got = Buffer.from(raw, "hex");
86
+ const expected = Buffer.from(signDelivery(key, body, {
87
+ deliveryId: meta.deliveryId,
88
+ timestamp: meta.timestamp,
89
+ }).signature.slice(SIGNATURE_PREFIX.length), "hex");
90
+ if (got.length !== expected.length || !timingSafeEqual(got, expected)) {
91
+ throw new InvalidSignatureError("mismatch");
92
+ }
93
+ }
94
+ function requiredHeader(request, name) {
95
+ const value = request.headers.get(name);
96
+ if (!value) {
97
+ throw new InvalidSignatureError(`missing ${name}`);
98
+ }
99
+ return value;
100
+ }
101
+ //# sourceMappingURL=signing.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"signing.js","sourceRoot":"","sources":["../src/signing.ts"],"names":[],"mappings":"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"}
package/dist/webhook.d.ts CHANGED
@@ -1,33 +1,21 @@
1
- export declare const WEBHOOK_SIGNATURE_HEADER = "X-Mobius-Signature";
2
1
  export declare const WEBHOOK_EVENT_TYPE_HEADER = "X-Mobius-Event-Type";
3
2
  export type WebhookEventType = "run.completed" | "run.failed" | "ping" | string;
4
3
  export declare const WEBHOOK_EVENT_RUN_COMPLETED = "run.completed";
5
4
  export declare const WEBHOOK_EVENT_RUN_FAILED = "run.failed";
6
5
  export declare const WEBHOOK_EVENT_PING = "ping";
7
- export declare class InvalidWebhookSignatureError extends Error {
8
- constructor(message: string);
9
- }
10
- export interface WebhookEvent<T = unknown> {
11
- type: WebhookEventType;
12
- data: T;
13
- }
14
- export interface ParsedSignedWebhookRequest<T = unknown> {
15
- event: WebhookEvent<T>;
16
- body: Uint8Array;
17
- }
18
6
  export interface SyntheticWebhookDelivery {
19
7
  url: string;
20
- secret: string;
8
+ key: Uint8Array;
9
+ secretRef: string;
10
+ secretVersion: number;
11
+ deliveryId?: string;
12
+ timestamp?: number;
21
13
  eventType: WebhookEventType;
22
14
  data: unknown;
23
15
  fetch?: typeof globalThis.fetch;
24
16
  headers?: HeadersInit;
25
17
  signal?: AbortSignal;
26
18
  }
27
- export declare function signWebhookPayload(secret: string, body: string | Uint8Array): string;
28
- export declare function verifyWebhookSignature(secret: string, body: string | Uint8Array, signatureHeader: string | null | undefined): void;
29
- export declare function parseWebhookEvent<T = unknown>(body: string | Uint8Array): WebhookEvent<T>;
30
- export declare function parseSignedWebhookRequest<T = unknown>(request: Request, secret: string): Promise<ParsedSignedWebhookRequest<T>>;
31
19
  export declare function buildSyntheticWebhookPayload(eventType: WebhookEventType, data: unknown): string;
32
20
  export declare function deliverSyntheticWebhook(delivery: SyntheticWebhookDelivery): Promise<void>;
33
21
  //# sourceMappingURL=webhook.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"webhook.d.ts","sourceRoot":"","sources":["../src/webhook.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,wBAAwB,uBAAuB,CAAC;AAC7D,eAAO,MAAM,yBAAyB,wBAAwB,CAAC;AAE/D,MAAM,MAAM,gBAAgB,GAAG,eAAe,GAAG,YAAY,GAAG,MAAM,GAAG,MAAM,CAAC;AAEhF,eAAO,MAAM,2BAA2B,kBAAkB,CAAC;AAC3D,eAAO,MAAM,wBAAwB,eAAe,CAAC;AACrD,eAAO,MAAM,kBAAkB,SAAS,CAAC;AAKzC,qBAAa,4BAA6B,SAAQ,KAAK;gBACzC,OAAO,EAAE,MAAM;CAI5B;AAED,MAAM,WAAW,YAAY,CAAC,CAAC,GAAG,OAAO;IACvC,IAAI,EAAE,gBAAgB,CAAC;IACvB,IAAI,EAAE,CAAC,CAAC;CACT;AAED,MAAM,WAAW,0BAA0B,CAAC,CAAC,GAAG,OAAO;IACrD,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;IACvB,IAAI,EAAE,UAAU,CAAC;CAClB;AAED,MAAM,WAAW,wBAAwB;IACvC,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,gBAAgB,CAAC;IAC5B,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,CAAC;IAChC,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,GAAG,UAAU,GACxB,MAAM,CAIR;AAED,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,GAAG,UAAU,EACzB,eAAe,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GACzC,IAAI,CAmBN;AAED,wBAAgB,iBAAiB,CAAC,CAAC,GAAG,OAAO,EAC3C,IAAI,EAAE,MAAM,GAAG,UAAU,GACxB,YAAY,CAAC,CAAC,CAAC,CAMjB;AAED,wBAAsB,yBAAyB,CAAC,CAAC,GAAG,OAAO,EACzD,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,0BAA0B,CAAC,CAAC,CAAC,CAAC,CAQxC;AAED,wBAAgB,4BAA4B,CAC1C,SAAS,EAAE,gBAAgB,EAC3B,IAAI,EAAE,OAAO,GACZ,MAAM,CAKR;AAED,wBAAsB,uBAAuB,CAC3C,QAAQ,EAAE,wBAAwB,GACjC,OAAO,CAAC,IAAI,CAAC,CA2Bf"}
1
+ {"version":3,"file":"webhook.d.ts","sourceRoot":"","sources":["../src/webhook.ts"],"names":[],"mappings":"AAYA,eAAO,MAAM,yBAAyB,wBAAwB,CAAC;AAE/D,MAAM,MAAM,gBAAgB,GAAG,eAAe,GAAG,YAAY,GAAG,MAAM,GAAG,MAAM,CAAC;AAEhF,eAAO,MAAM,2BAA2B,kBAAkB,CAAC;AAC3D,eAAO,MAAM,wBAAwB,eAAe,CAAC;AACrD,eAAO,MAAM,kBAAkB,SAAS,CAAC;AAIzC,MAAM,WAAW,wBAAwB;IACvC,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,UAAU,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,gBAAgB,CAAC;IAC5B,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,CAAC;IAChC,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,wBAAgB,4BAA4B,CAC1C,SAAS,EAAE,gBAAgB,EAC3B,IAAI,EAAE,OAAO,GACZ,MAAM,CAKR;AAED,wBAAsB,uBAAuB,CAC3C,QAAQ,EAAE,wBAAwB,GACjC,OAAO,CAAC,IAAI,CAAC,CA+Cf"}
package/dist/webhook.js CHANGED
@@ -1,51 +1,10 @@
1
- import { createHmac, timingSafeEqual } from "node:crypto";
2
- export const WEBHOOK_SIGNATURE_HEADER = "X-Mobius-Signature";
1
+ import { randomUUID } from "node:crypto";
2
+ import { MOBIUS_DELIVERY_ID_HEADER, MOBIUS_SECRET_REF_HEADER, MOBIUS_SECRET_VERSION_HEADER, MOBIUS_SIGNATURE_HEADER, MOBIUS_SIGNATURE_VERSION_HEADER, MOBIUS_TIMESTAMP_HEADER, signDelivery, } from "./signing.js";
3
3
  export const WEBHOOK_EVENT_TYPE_HEADER = "X-Mobius-Event-Type";
4
4
  export const WEBHOOK_EVENT_RUN_COMPLETED = "run.completed";
5
5
  export const WEBHOOK_EVENT_RUN_FAILED = "run.failed";
6
6
  export const WEBHOOK_EVENT_PING = "ping";
7
- const SIGNATURE_PREFIX = "sha256=";
8
7
  const SYNTHETIC_WEBHOOK_USER_AGENT = "mobius-sdk-webhook-delivery/1";
9
- export class InvalidWebhookSignatureError extends Error {
10
- constructor(message) {
11
- super(`mobius: invalid webhook signature: ${message}`);
12
- this.name = "InvalidWebhookSignatureError";
13
- }
14
- }
15
- export function signWebhookPayload(secret, body) {
16
- return `${SIGNATURE_PREFIX}${createHmac("sha256", secret)
17
- .update(bodyBytes(body))
18
- .digest("hex")}`;
19
- }
20
- export function verifyWebhookSignature(secret, body, signatureHeader) {
21
- if (!secret) {
22
- throw new InvalidWebhookSignatureError("secret is empty");
23
- }
24
- if (!signatureHeader?.startsWith(SIGNATURE_PREFIX)) {
25
- throw new InvalidWebhookSignatureError("missing sha256 prefix");
26
- }
27
- const raw = signatureHeader.slice(SIGNATURE_PREFIX.length);
28
- if (!/^[0-9a-fA-F]+$/.test(raw) || raw.length % 2 !== 0) {
29
- throw new InvalidWebhookSignatureError("signature is not hex");
30
- }
31
- const got = Buffer.from(raw, "hex");
32
- const expected = Buffer.from(signWebhookPayload(secret, body).slice(SIGNATURE_PREFIX.length), "hex");
33
- if (got.length !== expected.length || !timingSafeEqual(got, expected)) {
34
- throw new InvalidWebhookSignatureError("mismatch");
35
- }
36
- }
37
- export function parseWebhookEvent(body) {
38
- const event = JSON.parse(bodyText(body));
39
- if (!event.type) {
40
- throw new Error("mobius: parse webhook event: missing type");
41
- }
42
- return event;
43
- }
44
- export async function parseSignedWebhookRequest(request, secret) {
45
- const body = new Uint8Array(await request.arrayBuffer());
46
- verifyWebhookSignature(secret, body, request.headers.get(WEBHOOK_SIGNATURE_HEADER));
47
- return { event: parseWebhookEvent(body), body };
48
- }
49
8
  export function buildSyntheticWebhookPayload(eventType, data) {
50
9
  if (!eventType) {
51
10
  throw new Error("mobius: synthetic webhook event type is required");
@@ -56,15 +15,32 @@ export async function deliverSyntheticWebhook(delivery) {
56
15
  if (!delivery.url) {
57
16
  throw new Error("mobius: synthetic webhook URL is required");
58
17
  }
59
- if (!delivery.secret) {
60
- throw new Error("mobius: synthetic webhook secret is required");
18
+ if (!delivery.key?.byteLength) {
19
+ throw new Error("mobius: synthetic webhook signing key is required");
20
+ }
21
+ if (!delivery.secretRef) {
22
+ throw new Error("mobius: synthetic webhook secret ref is required");
23
+ }
24
+ if (!Number.isInteger(delivery.secretVersion) || delivery.secretVersion <= 0) {
25
+ throw new Error("mobius: synthetic webhook secret version is required");
61
26
  }
62
27
  const payload = buildSyntheticWebhookPayload(delivery.eventType, delivery.data);
28
+ const deliveryId = resolveDeliveryId(delivery.deliveryId);
29
+ const timestamp = resolveTimestamp(delivery.timestamp);
63
30
  const headers = new Headers(delivery.headers);
64
31
  headers.set("Content-Type", "application/json");
65
32
  headers.set("User-Agent", SYNTHETIC_WEBHOOK_USER_AGENT);
66
33
  headers.set(WEBHOOK_EVENT_TYPE_HEADER, delivery.eventType);
67
- headers.set(WEBHOOK_SIGNATURE_HEADER, signWebhookPayload(delivery.secret, payload));
34
+ headers.set(MOBIUS_SIGNATURE_HEADER, signDelivery(delivery.key, Buffer.from(payload), {
35
+ deliveryId,
36
+ timestamp,
37
+ }).signature);
38
+ headers.set(MOBIUS_SIGNATURE_VERSION_HEADER, "v1");
39
+ headers.set(MOBIUS_TIMESTAMP_HEADER, String(timestamp));
40
+ headers.set(MOBIUS_DELIVERY_ID_HEADER, deliveryId);
41
+ headers.set(MOBIUS_SECRET_REF_HEADER, delivery.secretRef);
42
+ headers.set(MOBIUS_SECRET_VERSION_HEADER, String(delivery.secretVersion));
43
+ headers.set("Idempotency-Key", deliveryId);
68
44
  const fetchFn = delivery.fetch ?? globalThis.fetch;
69
45
  const resp = await fetchFn(delivery.url, {
70
46
  method: "POST",
@@ -77,10 +53,22 @@ export async function deliverSyntheticWebhook(delivery) {
77
53
  throw new Error(`mobius: synthetic webhook returned ${resp.status}: ${text}`);
78
54
  }
79
55
  }
80
- function bodyBytes(body) {
81
- return typeof body === "string" ? Buffer.from(body) : body;
56
+ function resolveDeliveryId(value) {
57
+ if (value === undefined) {
58
+ return randomUUID();
59
+ }
60
+ if (typeof value !== "string" || value.length === 0) {
61
+ throw new Error("mobius: synthetic webhook deliveryId must be a non-empty string");
62
+ }
63
+ return value;
82
64
  }
83
- function bodyText(body) {
84
- return typeof body === "string" ? body : Buffer.from(body).toString("utf8");
65
+ function resolveTimestamp(value) {
66
+ if (value === undefined) {
67
+ return Math.floor(Date.now() / 1000);
68
+ }
69
+ if (!Number.isInteger(value) || value <= 0) {
70
+ throw new Error("mobius: synthetic webhook timestamp must be a positive integer");
71
+ }
72
+ return value;
85
73
  }
86
74
  //# sourceMappingURL=webhook.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"webhook.js","sourceRoot":"","sources":["../src/webhook.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE1D,MAAM,CAAC,MAAM,wBAAwB,GAAG,oBAAoB,CAAC;AAC7D,MAAM,CAAC,MAAM,yBAAyB,GAAG,qBAAqB,CAAC;AAI/D,MAAM,CAAC,MAAM,2BAA2B,GAAG,eAAe,CAAC;AAC3D,MAAM,CAAC,MAAM,wBAAwB,GAAG,YAAY,CAAC;AACrD,MAAM,CAAC,MAAM,kBAAkB,GAAG,MAAM,CAAC;AAEzC,MAAM,gBAAgB,GAAG,SAAS,CAAC;AACnC,MAAM,4BAA4B,GAAG,+BAA+B,CAAC;AAErE,MAAM,OAAO,4BAA6B,SAAQ,KAAK;IACrD,YAAY,OAAe;QACzB,KAAK,CAAC,sCAAsC,OAAO,EAAE,CAAC,CAAC;QACvD,IAAI,CAAC,IAAI,GAAG,8BAA8B,CAAC;IAC7C,CAAC;CACF;AAsBD,MAAM,UAAU,kBAAkB,CAChC,MAAc,EACd,IAAyB;IAEzB,OAAO,GAAG,gBAAgB,GAAG,UAAU,CAAC,QAAQ,EAAE,MAAM,CAAC;SACtD,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;SACvB,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;AACrB,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,MAAc,EACd,IAAyB,EACzB,eAA0C;IAE1C,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,4BAA4B,CAAC,iBAAiB,CAAC,CAAC;IAC5D,CAAC;IACD,IAAI,CAAC,eAAe,EAAE,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACnD,MAAM,IAAI,4BAA4B,CAAC,uBAAuB,CAAC,CAAC;IAClE,CAAC;IACD,MAAM,GAAG,GAAG,eAAe,CAAC,KAAK,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAC3D,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;QACxD,MAAM,IAAI,4BAA4B,CAAC,sBAAsB,CAAC,CAAC;IACjE,CAAC;IACD,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IACpC,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAC1B,kBAAkB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAC/D,KAAK,CACN,CAAC;IACF,IAAI,GAAG,CAAC,MAAM,KAAK,QAAQ,CAAC,MAAM,IAAI,CAAC,eAAe,CAAC,GAAG,EAAE,QAAQ,CAAC,EAAE,CAAC;QACtE,MAAM,IAAI,4BAA4B,CAAC,UAAU,CAAC,CAAC;IACrD,CAAC;AACH,CAAC;AAED,MAAM,UAAU,iBAAiB,CAC/B,IAAyB;IAEzB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAoB,CAAC;IAC5D,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;IAC/D,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,OAAgB,EAChB,MAAc;IAEd,MAAM,IAAI,GAAG,IAAI,UAAU,CAAC,MAAM,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IACzD,sBAAsB,CACpB,MAAM,EACN,IAAI,EACJ,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAC9C,CAAC;IACF,OAAO,EAAE,KAAK,EAAE,iBAAiB,CAAI,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC;AACrD,CAAC;AAED,MAAM,UAAU,4BAA4B,CAC1C,SAA2B,EAC3B,IAAa;IAEb,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;IACtE,CAAC;IACD,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;AACnD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,QAAkC;IAElC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;IAC/D,CAAC;IACD,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAClE,CAAC;IACD,MAAM,OAAO,GAAG,4BAA4B,CAAC,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;IAChF,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAC9C,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC;IAChD,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,4BAA4B,CAAC,CAAC;IACxD,OAAO,CAAC,GAAG,CAAC,yBAAyB,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC;IAC3D,OAAO,CAAC,GAAG,CAAC,wBAAwB,EAAE,kBAAkB,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAEpF,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,IAAI,UAAU,CAAC,KAAK,CAAC;IACnD,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,GAAG,EAAE;QACvC,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,OAAO;QACb,OAAO;QACP,MAAM,EAAE,QAAQ,CAAC,MAAM;KACxB,CAAC,CAAC;IACH,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;QACb,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;QAC/C,MAAM,IAAI,KAAK,CACb,sCAAsC,IAAI,CAAC,MAAM,KAAK,IAAI,EAAE,CAC7D,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,SAAS,CAAC,IAAyB;IAC1C,OAAO,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAC7D,CAAC;AAED,SAAS,QAAQ,CAAC,IAAyB;IACzC,OAAO,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AAC9E,CAAC"}
1
+ {"version":3,"file":"webhook.js","sourceRoot":"","sources":["../src/webhook.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,EACL,yBAAyB,EACzB,wBAAwB,EACxB,4BAA4B,EAC5B,uBAAuB,EACvB,+BAA+B,EAC/B,uBAAuB,EACvB,YAAY,GACb,MAAM,cAAc,CAAC;AAEtB,MAAM,CAAC,MAAM,yBAAyB,GAAG,qBAAqB,CAAC;AAI/D,MAAM,CAAC,MAAM,2BAA2B,GAAG,eAAe,CAAC;AAC3D,MAAM,CAAC,MAAM,wBAAwB,GAAG,YAAY,CAAC;AACrD,MAAM,CAAC,MAAM,kBAAkB,GAAG,MAAM,CAAC;AAEzC,MAAM,4BAA4B,GAAG,+BAA+B,CAAC;AAgBrE,MAAM,UAAU,4BAA4B,CAC1C,SAA2B,EAC3B,IAAa;IAEb,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;IACtE,CAAC;IACD,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;AACnD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,QAAkC;IAElC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;IAC/D,CAAC;IACD,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,UAAU,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;IACvE,CAAC;IACD,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;IACtE,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,QAAQ,CAAC,aAAa,IAAI,CAAC,EAAE,CAAC;QAC7E,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;IAC1E,CAAC;IACD,MAAM,OAAO,GAAG,4BAA4B,CAAC,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;IAChF,MAAM,UAAU,GAAG,iBAAiB,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;IAC1D,MAAM,SAAS,GAAG,gBAAgB,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IACvD,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAC9C,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC;IAChD,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,4BAA4B,CAAC,CAAC;IACxD,OAAO,CAAC,GAAG,CAAC,yBAAyB,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC;IAC3D,OAAO,CAAC,GAAG,CACT,uBAAuB,EACvB,YAAY,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;QAC/C,UAAU;QACV,SAAS;KACV,CAAC,CAAC,SAAS,CACb,CAAC;IACF,OAAO,CAAC,GAAG,CAAC,+BAA+B,EAAE,IAAI,CAAC,CAAC;IACnD,OAAO,CAAC,GAAG,CAAC,uBAAuB,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;IACxD,OAAO,CAAC,GAAG,CAAC,yBAAyB,EAAE,UAAU,CAAC,CAAC;IACnD,OAAO,CAAC,GAAG,CAAC,wBAAwB,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC;IAC1D,OAAO,CAAC,GAAG,CAAC,4BAA4B,EAAE,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC;IAC1E,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,UAAU,CAAC,CAAC;IAE3C,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,IAAI,UAAU,CAAC,KAAK,CAAC;IACnD,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,GAAG,EAAE;QACvC,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,OAAO;QACb,OAAO;QACP,MAAM,EAAE,QAAQ,CAAC,MAAM;KACxB,CAAC,CAAC;IACH,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;QACb,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;QAC/C,MAAM,IAAI,KAAK,CACb,sCAAsC,IAAI,CAAC,MAAM,KAAK,IAAI,EAAE,CAC7D,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAyB;IAClD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,UAAU,EAAE,CAAC;IACtB,CAAC;IACD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpD,MAAM,IAAI,KAAK,CAAC,iEAAiE,CAAC,CAAC;IACrF,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAyB;IACjD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;IACvC,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;QAC3C,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAC;IACpF,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}