UNPKG

@clipwhisperer/common

Version:

ClipWhisperer Common - Shared library providing core utilities, database schemas, authentication, bucket management, and common functionality across all ClipWhisperer microservices

30 lines (29 loc) 1.04 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.createRoute = exports.createEndpoint = exports.setOptionsProvider = void 0; const express_zod_api_1 = require("express-zod-api"); let optionsProvider = async () => { throw new Error("Vault client is not initialized"); }; const setOptionsProvider = (provider) => { optionsProvider = provider; }; exports.setOptionsProvider = setOptionsProvider; const createEndpoint = (opts) => { const factory = express_zod_api_1.defaultEndpointsFactory.addOptions(optionsProvider); return factory.build({ method: opts.method, input: opts.input, output: opts.output, handler: async ({ input, options, logger: actualLogger }) => { const logger = actualLogger; logger.debug("Options:", options); return opts.handler(input, options, logger); }, }); }; exports.createEndpoint = createEndpoint; const createRoute = (routes) => { return routes; }; exports.createRoute = createRoute;