23 lines
598 B
TypeScript
23 lines
598 B
TypeScript
import { RequestHandler } from 'express';
|
|
import * as controller from './controller';
|
|
import { middleware } from './middleware';
|
|
import { RenderOAuth2Decision, OAuth2, OAuth2AdapterModel } from './model/model';
|
|
|
|
export class OAuth2Provider implements OAuth2 {
|
|
public bearer = middleware;
|
|
public controller = controller;
|
|
|
|
constructor (
|
|
public model: OAuth2AdapterModel,
|
|
public decision: RenderOAuth2Decision,
|
|
) {}
|
|
|
|
express(): RequestHandler {
|
|
return (req, _res, next) => {
|
|
console.debug('OAuth2 Injected into request');
|
|
req.oauth2 = this;
|
|
next();
|
|
}
|
|
}
|
|
}
|