32 lines
785 B
TypeScript
32 lines
785 B
TypeScript
import * as Inert from "@hapi/inert";
|
|
import * as Vision from "@hapi/vision";
|
|
import type * as Hapi from "@hapi/hapi";
|
|
import * as HapiSwagger from "hapi-swagger";
|
|
|
|
export const registerSwagger = async (server: Hapi.Server): Promise<void> => {
|
|
const swaggerOptions: HapiSwagger.RegisterOptions = {
|
|
info: {
|
|
title: "Metamigo API Docs",
|
|
description: "part of CDR Link",
|
|
version: "0.1",
|
|
},
|
|
// group sets of endpoints by tag
|
|
tags: [
|
|
{
|
|
name: "users",
|
|
description: "API for Users",
|
|
},
|
|
],
|
|
documentationRouteTags: ["swagger"],
|
|
documentationPath: "/api-docs",
|
|
};
|
|
|
|
await server.register([
|
|
{ plugin: Inert },
|
|
{ plugin: Vision },
|
|
{
|
|
plugin: HapiSwagger,
|
|
options: swaggerOptions,
|
|
},
|
|
]);
|
|
};
|