UNPKG

@elysiajs/bearer

Version:

Plugin for Elysia for retreiving Bearer token

47 lines (46 loc) 914 B
// src/index.ts import { Elysia } from "elysia"; var bearer = ({ extract: { body = "access_token", query: queryName = "access_token", header = "Bearer" } = { body: "access_token", query: "access_token", header: "Bearer" } } = { extract: { body: "access_token", query: "access_token", header: "Bearer" } }) => new Elysia({ name: "@elysiajs/bearer", seed: { body, query: queryName, header } }).derive( { as: "global" }, function deriveBearer({ query, headers: { authorization } }) { return { get bearer() { if (authorization?.startsWith(header)) return authorization.slice( header.length + 1 ); const q = query[queryName]; if (Array.isArray(q)) return q[0]; if (q) return q; } }; } ); var index_default = bearer; export { bearer, index_default as default };