|
1 | 1 | import consola from "consola"; |
2 | 2 | import { createApp } from "@aklinker1/zeta"; |
3 | 3 | import { corsPlugin } from "./plugins/cors-plugin"; |
4 | | -import { graphqlRoutes } from "./routes/grpahql-routes"; |
5 | | -import { restRoutes } from "./routes/rest-routes"; |
| 4 | +import { graphqlApis } from "./apis/graphql-apis"; |
| 5 | +import { extensionStoreApis } from "./apis/extension-store-apis"; |
6 | 6 | import { zodSchemaAdapter } from "@aklinker1/zeta/adapters/zod-schema-adapter"; |
7 | | -import { version } from "../package.json"; |
8 | | -import { z } from "zod"; |
| 7 | +import { version } from "./version"; |
9 | 8 | import dedent from "dedent"; |
| 9 | +import { systemApis } from "./apis/system-apis"; |
| 10 | +import { OpenApiTag } from "./enums"; |
10 | 11 |
|
11 | 12 | const app = createApp({ |
12 | 13 | schemaAdapter: zodSchemaAdapter, |
@@ -35,47 +36,22 @@ const app = createApp({ |
35 | 36 | }, |
36 | 37 | tags: [ |
37 | 38 | { |
38 | | - name: "GraphQL", |
| 39 | + name: OpenApiTag.Graphql, |
39 | 40 | description: dedent` |
40 | 41 | To play around with the GraphQL API, checkout the |
41 | 42 | [GraphiQL Playground](/playground). |
42 | 43 | `, |
43 | 44 | }, |
44 | | - { name: "Chrome Extensions" }, |
45 | | - { name: "Firefox Addons" }, |
46 | | - { name: "System" }, |
| 45 | + { name: OpenApiTag.ExtensionStores }, |
| 46 | + { name: OpenApiTag.System }, |
47 | 47 | ], |
48 | 48 | }, |
49 | 49 | }) |
50 | 50 | .onGlobalError(({ error }) => void consola.error(error)) |
51 | 51 | .use(corsPlugin) |
52 | | - .use(restRoutes) |
53 | | - .use(graphqlRoutes) |
54 | | - .get( |
55 | | - "/", |
56 | | - { |
57 | | - summary: "API Docs Redirect", |
58 | | - tags: ["System"], |
59 | | - description: "Redirect to the API reference when visiting the root URL.", |
60 | | - }, |
61 | | - ({ set }) => { |
62 | | - set.status = 302; |
63 | | - set.headers.Location = "/scalar"; |
64 | | - }, |
65 | | - ) |
66 | | - .get( |
67 | | - "/api/health", |
68 | | - { |
69 | | - summary: "Health Check", |
70 | | - tags: ["System"], |
71 | | - description: "Used to make sure the API is up and running.", |
72 | | - responses: z.object({ |
73 | | - status: z.literal("ok"), |
74 | | - version: z.string(), |
75 | | - }), |
76 | | - }, |
77 | | - () => ({ status: "ok" as const, version }), |
78 | | - ); |
| 52 | + .use(systemApis) |
| 53 | + .use(extensionStoreApis) |
| 54 | + .use(graphqlApis); |
79 | 55 |
|
80 | 56 | export default app; |
81 | 57 | export type App = typeof app; |
0 commit comments