diff --git a/README.md b/README.md index 9e23557..622d0e0 100644 --- a/README.md +++ b/README.md @@ -12,7 +12,8 @@ const app = express() app.use(createAuthMiddleware({ provider: 'basic', - providerOptions: { username: 'test', password: 'test' } + username: 'test', + password: 'test' })) app.use((_req, res) => { res.end(`Welcome ${req.auth.session.user}!`) }) @@ -42,10 +43,8 @@ app.listen(3000) ```js app.use(createAuthMiddleware({ provider: 'basic', - providerOptions: { - username: 'test', - password: 'test' - } + username: 'test', + password: 'test' })) ``` @@ -62,10 +61,8 @@ app.use(createAuthMiddleware({ app.use(createAuthMiddleware({ provider: 'github', sessionSecret: '...', - providerOptions: { - clientId: '...', - clientSecret: '...', - } + clientId: '...', + clientSecret: '...', })) ``` diff --git a/src/index.ts b/src/index.ts index 6175ed4..b423421 100644 --- a/src/index.ts +++ b/src/index.ts @@ -7,7 +7,7 @@ const noop = () => { } export function createAuth (opts: CreateAuthOptions) { const providerCtor = providers[opts.provider || 'basic'] as AuthProvider - const provider = providerCtor(opts.providerOptions) + const provider = providerCtor(opts.providerOptions || opts) return { provider diff --git a/src/types.ts b/src/types.ts index 23d803b..9cc2dd8 100644 --- a/src/types.ts +++ b/src/types.ts @@ -45,4 +45,5 @@ export interface CreateAuthOptions { bypass?: boolean onAuthorize?: (authReses: AuthorizeResult, req: IncomingMessage) => void | Promise unauthorizedTemplate?: string + [key: string]: any } diff --git a/test/basic.ts b/test/basic.ts index 9453d4d..63606ce 100644 --- a/test/basic.ts +++ b/test/basic.ts @@ -7,10 +7,8 @@ const app = createApp() app.useAsync(createAuthMiddleware({ provider: 'basic', sessionSecret: 'secret', - providerOptions: { - username: 'test', - password: 'test' - } + username: 'test', + password: 'test' })) app.useAsync(req => `Welcome ${req.auth.session.user}!`) diff --git a/test/bypass.ts b/test/bypass.ts index 3920856..b7c8889 100644 --- a/test/bypass.ts +++ b/test/bypass.ts @@ -7,12 +7,10 @@ const app = createApp() app.useAsync(createAuthMiddleware({ bypass: true, provider: 'basic', - providerOptions: { - username: 'test', - password: 'test' - } + username: 'test', + password: 'test' })) -app.useAsync(req => `Welcome ${req.auth}!`) +app.useAsync(req => `Welcome ${req.auth.session ? 'user' : 'guest'}!`) listen(app) diff --git a/test/github.ts b/test/github.ts index d528275..2f7273c 100644 --- a/test/github.ts +++ b/test/github.ts @@ -7,10 +7,8 @@ const app = createApp() app.useAsync(createAuthMiddleware({ provider: 'github', sessionSecret: 'secret', - providerOptions: { - clientId: 'e41eb9a028ccaae6358a', - clientSecret: '16a88f9887fa7b24bc7290d8986b2c204f7878a9' - } + clientId: 'e41eb9a028ccaae6358a', + clientSecret: '16a88f9887fa7b24bc7290d8986b2c204f7878a9' })) app.useAsync(req => `Welcome ${req.auth.session.user}!`)