Skip to content

Commit

Permalink
feat: better swagger support and correct routing
Browse files Browse the repository at this point in the history
  • Loading branch information
Khaaz committed Dec 17, 2023
1 parent 0d6d751 commit e216afe
Show file tree
Hide file tree
Showing 4 changed files with 16 additions and 14 deletions.
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
},
"private": true,
"dependencies": {
"@owlebot/lib": "^0.7.1",
"@owlebot/lib": "^0.8.0",
"@owlebot/logger": "^0.4.0",
"@unkey/api": "^0.13.0",
"fern-api": "^0.16.1",
Expand Down
15 changes: 8 additions & 7 deletions src/index.ts
Original file line number Diff line number Diff line change
@@ -1,12 +1,10 @@
import { Requester } from "@owlebot/lib/requester";
import { Server } from "@owlebot/lib/server";
import { Logger } from "@owlebot/logger";
import { Request as ExRequest, Response as ExResponse } from "express";
import swaggerUi from "swagger-ui-express";

import { RegisterRoutes } from "../build/routes.js";
import packageJson from "../package.json" assert { type: "json" };
import swaggerApi from "../specs/openapi.json" assert { type: "json" };
import openapiSpecs from "../specs/openapi.json" assert { type: "json" };

Logger.create(packageJson.name);

Expand All @@ -15,13 +13,16 @@ server.init(process.env.OPEN_API_PORT);
server.addLogger(Logger);
server.addHealthEndpoint();

await server.addSwagger( {
enableProd: true,
urlProd: "https://api.owle.bot/v1",
definition: openapiSpecs,
meta: { name: packageJson.name },
} );

RegisterRoutes(server.app);

export const identificationRequester = Requester.create("OPEN_API", "IDENTIFICATION", Logger);
export const profileRequester = Requester.create("OPEN_API", "PROFILE", Logger);

server.app.use("/api/v1", swaggerUi.serve, async(_req: ExRequest, res: ExResponse) => res.send(
swaggerUi.generateHTML(swaggerApi)
) );

server.start();
5 changes: 3 additions & 2 deletions src/routes/accounts.route.ts
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
import { OPEN_API } from "@owlebot/lib/endpoints";
import {
Controller,
Get,
Expand All @@ -10,11 +11,11 @@ import {
import { User } from "../dto/output/user.dto.js";
import { UsersService } from "../services/users.service.js";

@Route("accounts")
@Route(OPEN_API.ACCOUNTS.router() )
export class AccountsController extends Controller {
usersService = new UsersService();

@Get("{accountId}/user/communities")
@Get(OPEN_API.ACCOUNTS._.USER.COMMUNITIES.def("{accountId}") )
@Security("api_key")
public async getUserCommunities(
@Request() req: Request,
Expand Down
8 changes: 4 additions & 4 deletions yarn.lock
Original file line number Diff line number Diff line change
Expand Up @@ -465,10 +465,10 @@
eslint-plugin-json "^3.1.0"
eslint-plugin-simple-import-sort "^10.0.0"

"@owlebot/lib@^0.7.1":
version "0.7.1"
resolved "https://registry.yarnpkg.com/@owlebot/lib/-/lib-0.7.1.tgz#de4c6ca4a3a3d44744cf287b3ad76e96ab02dc19"
integrity sha512-zAJPAUAODHnw4Geivc1M/YOTWPyg2qmaxf4LC1hrOncxxmJE7ei5P9FQD8y5B7AK/m8aG5+mf7GQPV3BDFRuwQ==
"@owlebot/lib@^0.8.0":
version "0.8.0"
resolved "https://registry.yarnpkg.com/@owlebot/lib/-/lib-0.8.0.tgz#fcd42498aa8cf2f8d59a2fe75f7dce58ad9bf72e"
integrity sha512-j2RLJ9IlayTZG04ZprsI7Vy5aH7q3OMgQQlrl69MijUtnuh0zh5pAdfmkNqH8Qt5fVsmPxv3eeohP2HKxMM3wA==
dependencies:
amqplib "^0.10.3"
express "5.0.0-beta.1"
Expand Down

0 comments on commit e216afe

Please sign in to comment.