@elysiajs/bearer
Version:
Plugin for Elysia for retreiving Bearer token
47 lines (46 loc) • 914 B
JavaScript
// 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
};