UNPKG

@vercel/sdk

Version:

<p align="center"> <a href="https://vercel.com"> <img src="https://assets.vercel.com/image/upload/v1588805858/repositories/vercel/logo.png" height="96"> <h3 align="center">Vercel</h3> </a> <p align="center">Develop. Preview. Ship.</p> </p>

82 lines 2.56 kB
/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ import { initHooks } from "./registration.js"; export class SDKHooks { sdkInitHooks = []; beforeCreateRequestHooks = []; beforeRequestHooks = []; afterSuccessHooks = []; afterErrorHooks = []; constructor() { const presetHooks = []; for (const hook of presetHooks) { if ("sdkInit" in hook) { this.registerSDKInitHook(hook); } if ("beforeCreateRequest" in hook) { this.registerBeforeCreateRequestHook(hook); } if ("beforeRequest" in hook) { this.registerBeforeRequestHook(hook); } if ("afterSuccess" in hook) { this.registerAfterSuccessHook(hook); } if ("afterError" in hook) { this.registerAfterErrorHook(hook); } } initHooks(this); } registerSDKInitHook(hook) { this.sdkInitHooks.push(hook); } registerBeforeCreateRequestHook(hook) { this.beforeCreateRequestHooks.push(hook); } registerBeforeRequestHook(hook) { this.beforeRequestHooks.push(hook); } registerAfterSuccessHook(hook) { this.afterSuccessHooks.push(hook); } registerAfterErrorHook(hook) { this.afterErrorHooks.push(hook); } sdkInit(opts) { return this.sdkInitHooks.reduce((opts, hook) => hook.sdkInit(opts), opts); } beforeCreateRequest(hookCtx, input) { let inp = input; for (const hook of this.beforeCreateRequestHooks) { inp = hook.beforeCreateRequest(hookCtx, inp); } return inp; } async beforeRequest(hookCtx, request) { let req = request; for (const hook of this.beforeRequestHooks) { req = await hook.beforeRequest(hookCtx, req); } return req; } async afterSuccess(hookCtx, response) { let res = response; for (const hook of this.afterSuccessHooks) { res = await hook.afterSuccess(hookCtx, res); } return res; } async afterError(hookCtx, response, error) { let res = response; let err = error; for (const hook of this.afterErrorHooks) { const result = await hook.afterError(hookCtx, res, err); res = result.response; err = result.error; } return { response: res, error: err }; } } //# sourceMappingURL=hooks.js.map