Add account search controller, which does basically the same thing as account lookup for now
This commit is contained in:
parent
9e73a8e43c
commit
70f69b80f3
|
@ -54,4 +54,22 @@ const accountLookupController: AppController = async (c) => {
|
||||||
return c.json({ error: 'Could not find user.' }, 404);
|
return c.json({ error: 'Could not find user.' }, 404);
|
||||||
};
|
};
|
||||||
|
|
||||||
export { accountController, accountLookupController, credentialsController };
|
const accountSearchController: AppController = async (c) => {
|
||||||
|
const q = c.req.query('q');
|
||||||
|
|
||||||
|
if (!q) {
|
||||||
|
return c.json({ error: 'Missing `q` query parameter.' }, 422);
|
||||||
|
}
|
||||||
|
|
||||||
|
const pubkey = bech32ToPubkey(q);
|
||||||
|
if (pubkey) {
|
||||||
|
const event = await getAuthor(pubkey);
|
||||||
|
if (event) {
|
||||||
|
return c.json([toAccount(event)]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return c.json([]);
|
||||||
|
};
|
||||||
|
|
||||||
|
export { accountController, accountSearchController, accountLookupController, credentialsController };
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
import { type Context, cors, type Handler, Hono, type HonoEnv, type MiddlewareHandler } from '@/deps.ts';
|
import { type Context, cors, type Handler, Hono, type HonoEnv, type MiddlewareHandler } from '@/deps.ts';
|
||||||
|
|
||||||
import { accountController, accountLookupController, credentialsController } from './api/accounts.ts';
|
import { accountController, accountLookupController, accountSearchController, credentialsController } from './api/accounts.ts';
|
||||||
import { appCredentialsController, createAppController } from './api/apps.ts';
|
import { appCredentialsController, createAppController } from './api/apps.ts';
|
||||||
import { emptyArrayController, emptyObjectController } from './api/fallback.ts';
|
import { emptyArrayController, emptyObjectController } from './api/fallback.ts';
|
||||||
import homeController from './api/home.ts';
|
import homeController from './api/home.ts';
|
||||||
|
@ -33,6 +33,7 @@ app.post('/oauth/token', createTokenController);
|
||||||
app.post('/oauth/revoke', emptyObjectController);
|
app.post('/oauth/revoke', emptyObjectController);
|
||||||
|
|
||||||
app.get('/api/v1/accounts/verify_credentials', requireAuth, credentialsController);
|
app.get('/api/v1/accounts/verify_credentials', requireAuth, credentialsController);
|
||||||
|
app.get('/api/v1/accounts/search', accountSearchController);
|
||||||
app.get('/api/v1/accounts/lookup', accountLookupController);
|
app.get('/api/v1/accounts/lookup', accountLookupController);
|
||||||
app.get('/api/v1/accounts/:id', accountController);
|
app.get('/api/v1/accounts/:id', accountController);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue