mirror of
https://github.com/standardnotes/server
synced 2026-07-14 00:01:54 -04:00
* wip: add files server as a service to home-server * wip: introduce home-server controllers without inversify-express-utils decorators. Move in progress * fix(auth): move remaining home server controllers * fix(syncing-server): home server controllers * fix(revisions): home server controllers * fix: specs * fix: import for legacy controller * fix: remove router debug
40 lines
1.8 KiB
TypeScript
40 lines
1.8 KiB
TypeScript
import { Request, Response } from 'express'
|
|
import { inject } from 'inversify'
|
|
import {
|
|
controller,
|
|
httpGet,
|
|
httpPost,
|
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
results,
|
|
} from 'inversify-express-utils'
|
|
|
|
import TYPES from '../../Bootstrap/Types'
|
|
import { AuthenticateRequest } from '../../Domain/UseCase/AuthenticateRequest'
|
|
import { CreateCrossServiceToken } from '../../Domain/UseCase/CreateCrossServiceToken/CreateCrossServiceToken'
|
|
import { GetActiveSessionsForUser } from '../../Domain/UseCase/GetActiveSessionsForUser'
|
|
import { ProjectorInterface } from '../../Projection/ProjectorInterface'
|
|
import { Session } from '../../Domain/Session/Session'
|
|
import { HomeServerSessionsController } from './HomeServer/HomeServerSessionsController'
|
|
|
|
@controller('/sessions')
|
|
export class InversifyExpressSessionsController extends HomeServerSessionsController {
|
|
constructor(
|
|
@inject(TYPES.Auth_GetActiveSessionsForUser) override getActiveSessionsForUser: GetActiveSessionsForUser,
|
|
@inject(TYPES.Auth_AuthenticateRequest) override authenticateRequest: AuthenticateRequest,
|
|
@inject(TYPES.Auth_SessionProjector) override sessionProjector: ProjectorInterface<Session>,
|
|
@inject(TYPES.Auth_CreateCrossServiceToken) override createCrossServiceToken: CreateCrossServiceToken,
|
|
) {
|
|
super(getActiveSessionsForUser, authenticateRequest, sessionProjector, createCrossServiceToken)
|
|
}
|
|
|
|
@httpPost('/validate')
|
|
override async validate(request: Request): Promise<results.JsonResult> {
|
|
return super.validate(request)
|
|
}
|
|
|
|
@httpGet('/', TYPES.Auth_RequiredCrossServiceTokenMiddleware, TYPES.Auth_SessionMiddleware)
|
|
override async getSessions(_request: Request, response: Response): Promise<results.JsonResult> {
|
|
return super.getSessions(_request, response)
|
|
}
|
|
}
|