From dfbad6b2e7d5e4450e7c0aa5a5c291f684ceef88 Mon Sep 17 00:00:00 2001 From: Alex Gleason Date: Mon, 28 Aug 2023 14:23:27 -0500 Subject: [PATCH] Add boilerplate notifications controller, fix import order in app.ts --- src/app.ts | 10 ++++++---- src/controllers/api/instance.ts | 9 ++++----- src/controllers/api/notifications.ts | 7 +++++++ 3 files changed, 17 insertions(+), 9 deletions(-) create mode 100644 src/controllers/api/notifications.ts diff --git a/src/app.ts b/src/app.ts index 45c315d9..199ebbfc 100644 --- a/src/app.ts +++ b/src/app.ts @@ -24,11 +24,12 @@ import { } from './controllers/api/accounts.ts'; import { appCredentialsController, createAppController } from './controllers/api/apps.ts'; import { emptyArrayController, emptyObjectController } from './controllers/api/fallback.ts'; -import { homeController, publicController } from './controllers/api/timelines.ts'; -import instanceController from './controllers/api/instance.ts'; +import { instanceController } from './controllers/api/instance.ts'; +import { notificationsController } from './controllers/api/notifications.ts'; import { createTokenController, oauthAuthorizeController, oauthController } from './controllers/api/oauth.ts'; import { frontendConfigController } from './controllers/api/pleroma.ts'; import { preferencesController } from './controllers/api/preferences.ts'; +import { relayController } from './controllers/nostr/relay.ts'; import { searchController } from './controllers/api/search.ts'; import { contextController, @@ -37,8 +38,8 @@ import { statusController, } from './controllers/api/statuses.ts'; import { streamingController } from './controllers/api/streaming.ts'; +import { homeController, publicController } from './controllers/api/timelines.ts'; import { trendingTagsController } from './controllers/api/trends.ts'; -import { relayController } from './controllers/nostr/relay.ts'; import { indexController } from './controllers/site.ts'; import { hostMetaController } from './controllers/well-known/host-meta.ts'; import { nodeInfoController, nodeInfoSchemaController } from './controllers/well-known/nodeinfo.ts'; @@ -118,8 +119,9 @@ app.get('/api/pleroma/frontend_configurations', frontendConfigController); app.get('/api/v1/trends/tags', trendingTagsController); app.get('/api/v1/trends', trendingTagsController); +app.get('/api/v1/notifications', notificationsController); + // Not (yet) implemented. -app.get('/api/v1/notifications', emptyArrayController); app.get('/api/v1/bookmarks', emptyArrayController); app.get('/api/v1/custom_emojis', emptyArrayController); app.get('/api/v1/accounts/search', emptyArrayController); diff --git a/src/controllers/api/instance.ts b/src/controllers/api/instance.ts index 6ffb85c3..c28e03b4 100644 --- a/src/controllers/api/instance.ts +++ b/src/controllers/api/instance.ts @@ -1,8 +1,7 @@ +import { type AppController } from '@/app.ts'; import { Conf } from '@/config.ts'; -import type { Context } from '@/deps.ts'; - -function instanceController(c: Context) { +const instanceController: AppController = (c) => { const { host, protocol } = Conf.url; /** Protocol to use for WebSocket URLs, depending on the protocol of the `LOCAL_DOMAIN`. */ @@ -48,6 +47,6 @@ function instanceController(c: Context) { }, rules: [], }); -} +}; -export default instanceController; +export { instanceController }; diff --git a/src/controllers/api/notifications.ts b/src/controllers/api/notifications.ts new file mode 100644 index 00000000..2049b81f --- /dev/null +++ b/src/controllers/api/notifications.ts @@ -0,0 +1,7 @@ +import { type AppController } from '@/app.ts'; + +const notificationsController: AppController = (c) => { + return c.json([]); +}; + +export { notificationsController };