UNPKG

apitally

Version:

Simple API monitoring & analytics for REST APIs built with Express, Fastify, NestJS, AdonisJS, Hono, H3, Elysia, and Koa.

84 lines (80 loc) 2.36 kB
var __defProp = Object.defineProperty; var __name = (target, value) => __defProp(target, "name", { value, configurable: true }); // src/adonisjs/configure.ts import { fileURLToPath } from "url"; // src/common/paramValidation.ts function isValidClientId(clientId) { const regexExp = /^[0-9a-f]{8}-[0-9a-f]{4}-[4][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i; return regexExp.test(clientId); } __name(isValidClientId, "isValidClientId"); function isValidEnv(env) { const regexExp = /^[\w-]{1,32}$/; return regexExp.test(env); } __name(isValidEnv, "isValidEnv"); // src/adonisjs/configure.ts var STUBS_ROOT = fileURLToPath(new URL("./stubs/", import.meta.url)); async function configure(command) { const clientId = await command.prompt.ask("Apitally client ID", { result(value) { return value.trim().toLowerCase(); }, validate(value) { return isValidClientId(value); } }); const env = await command.prompt.ask("Environment name", { default: "dev", result(value) { return value.trim().toLowerCase().replaceAll("_", "-").replaceAll(" ", "-"); }, validate(value) { return isValidEnv(value); } }); const codemods = await command.createCodemods(); await codemods.makeUsingStub(STUBS_ROOT, "config/apitally.stub", {}); await codemods.registerMiddleware("router", [ { path: "apitally/adonisjs/middleware" } ]); await codemods.updateRcFile((rcFile) => { rcFile.addProvider("apitally/adonisjs/provider"); }); await codemods.defineEnvVariables({ APITALLY_CLIENT_ID: clientId, APITALLY_ENV: env }); await codemods.defineEnvValidations({ leadingComment: "Variables for configuring the apitally package", variables: { APITALLY_CLIENT_ID: "Env.schema.string()", APITALLY_ENV: "Env.schema.string.optional()" } }); } __name(configure, "configure"); // src/adonisjs/index.ts function defineConfig(config) { return config; } __name(defineConfig, "defineConfig"); function captureError(error, ctx) { if (error instanceof Error) { ctx.apitallyError = error; } } __name(captureError, "captureError"); function setConsumer(ctx, consumer) { ctx.apitallyConsumer = consumer || void 0; } __name(setConsumer, "setConsumer"); export { captureError, configure, defineConfig, setConsumer }; //# sourceMappingURL=index.js.map