BaseUserRequestsController.ts 1023 B

12345678910111213141516171819202122232425262728
  1. import { ControllerContainerInterface } from '@standardnotes/domain-core'
  2. import { BaseHttpController, results } from 'inversify-express-utils'
  3. import { Request, Response } from 'express'
  4. import { UserRequestsController } from '../../../Controller/UserRequestsController'
  5. export class BaseUserRequestsController extends BaseHttpController {
  6. constructor(
  7. protected userRequestsController: UserRequestsController,
  8. private controllerContainer?: ControllerContainerInterface,
  9. ) {
  10. super()
  11. if (this.controllerContainer !== undefined) {
  12. this.controllerContainer.register('auth.users.createRequest', this.submitRequest.bind(this))
  13. }
  14. }
  15. async submitRequest(request: Request, response: Response): Promise<results.JsonResult> {
  16. const result = await this.userRequestsController.submitUserRequest({
  17. requestType: request.body.requestType,
  18. userUuid: response.locals.user.uuid,
  19. userEmail: response.locals.user.email,
  20. })
  21. return this.json(result.data, result.status)
  22. }
  23. }