import {OpenAPIHono} from "@hono/zod-openapi"; import {apiReference} from "@scalar/hono-api-reference"; import {settings} from "../../../../database/schema/settings.js"; import {db} from "../../../../database/dbclient.js"; import {eq} from "drizzle-orm"; const app = new OpenAPIHono(); const plantToken = await db.select().from(settings).where(eq(settings.name, "plantToken")); let pToken = plantToken[0]?.value; const testServers = ["test1", "test2", "test3"]; if (testServers.includes(plantToken[0]?.value)) { pToken = "usbow1"; } app.get( "/docs", apiReference({ theme: "kepler", layout: "classic", defaultHttpClient: {targetKey: "node", clientKey: "axios"}, pageTitle: "Lst API Reference", hiddenClients: [ "libcurl", "clj_http", "httpclient", "restsharp", "native", "http1.1", "asynchttp", "nethttp", "okhttp", "unirest", "xhr", "fetch", "jquery", "okhttp", "native", "request", "unirest", "nsurlsession", "cohttp", "curl", "guzzle", "http1", "http2", "webrequest", "restmethod", "python3", "requests", "httr", "native", "curl", "httpie", "wget", "nsurlsession", "undici", ], url: "/api/ref", baseServerURL: "https://scalar.com", servers: [ { url: `http://${pToken}vms006:${process.env.VITE_SERVER_PORT}`, description: "Production", }, { url: `http://localhost:${process.env.VITE_SERVER_PORT}`, description: "dev server", }, ], // authentication: { // preferredSecurityScheme: {'bearerAuth'}, // }, // metaData: { // title: "Page title", // description: "My page page", // ogDescription: "Still about my my page", // ogTitle: "Page title", // ogImage: "https://example.com/image.png", // twitterCard: "summary_large_image", // // Add more... // }, }) ); export default app;