Simplify /oauth2/issue logic

This commit is contained in:
Garrett Mills 2022-04-28 14:58:06 -05:00
parent d210cba236
commit 8a9264b9de
2 changed files with 4 additions and 5 deletions

View File

@ -1,6 +1,6 @@
{
"name": "@extollo/lib",
"version": "0.9.37",
"version": "0.9.38",
"description": "The framework library that lifts up your code.",
"main": "lib/index.js",
"types": "lib/index.d.ts",

View File

@ -13,7 +13,7 @@ import {
TokenRepository,
} from './types'
import {HTTPError} from '../../http/HTTPError'
import {Awaitable, HTTPStatus, Maybe, right} from '../../util'
import {HTTPStatus, Maybe} from '../../util'
import {view} from '../../http/response/ViewResponseFactory'
import {SecurityContext} from '../context/SecurityContext'
import {redirect} from '../../http/response/RedirectResponseFactory'
@ -50,14 +50,13 @@ export class OAuth2Server extends Controller {
Route.post('/oauth2/token')
.alias('@oauth2:token')
.parameterMiddleware<OAuth2Client>(async req =>
right(await req.make<OAuth2Server>(OAuth2Server).getClientFromRequest(req)))
.passingRequest()
.calls<OAuth2Server>(OAuth2Server, x => x.issue)
}
issue(request: Request, client: OAuth2Client): Awaitable<ResponseObject> {
async issue(request: Request): Promise<ResponseObject> {
const grant = request.safe('grant_type').in(grantTypes)
const client = await this.getClientFromRequest(request)
if ( grant === GrantType.Client ) {
return this.issueFromClient(request, client)