🎩 You're Invited:Meet the Socket team at Black Hat in Las Vegas, August 3-6.RSVP
Sign In

@coverbase/nuxt-auth

Package Overview
Dependencies
Maintainers
1
Versions
6
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@coverbase/nuxt-auth - npm Package Compare versions

Package was removed
Sorry, it seems this package was removed from the registry
Comparing version
0.0.4
to
0.0.5
+2
dist/runtime/server/routes/auth/google/index.get.d.ts
declare const _default: any;
export default _default;
import {
authHooks,
defineEventHandler,
getQuery,
getRequestURL,
sendRedirect,
useRuntimeConfig
} from "#imports";
import { withQuery } from "ufo";
export default defineEventHandler(async (event) => {
const config = useRuntimeConfig(event);
const { code } = getQuery(event);
const { host, protocol } = getRequestURL(event);
const redirectUrl = `${protocol}//${host}/auth/google`;
if (code) {
const token = await $fetch("https://oauth2.googleapis.com/token", {
method: "POST",
body: {
grant_type: "authorization_code",
client_id: config.auth.provider.google.clientKey,
client_secret: config.auth.provider.google.clientSecret,
redirect_uri: redirectUrl,
code
}
});
const userInfo = await $fetch(
"https://www.googleapis.com/oauth2/v3/userinfo",
{
method: "GET",
headers: {
Authorization: `Bearer ${token.access_token}`
}
}
);
await authHooks.callHookParallel("session:create", event, userInfo);
return sendRedirect(event, "/");
}
return sendRedirect(
event,
withQuery("https://accounts.google.com/o/oauth2/v2/auth", {
response_type: "code",
client_id: config.auth.provider.google.clientKey,
redirect_uri: redirectUrl,
scope: "email profile"
})
);
});
+1
-1
{
"name": "@coverbase/nuxt-auth",
"version": "0.0.4",
"version": "0.0.5",
"configKey": "auth",

@@ -5,0 +5,0 @@ "builder": {

@@ -5,3 +5,3 @@ import { defineNuxtModule, createResolver, addServerScanDir, addImportsDir } from '@nuxt/kit';

const name = "@coverbase/nuxt-auth";
const version = "0.0.4";
const version = "0.0.5";

@@ -8,0 +8,0 @@ const module = defineNuxtModule({

import { EventHandlerRequest, H3Event } from "h3";
import { UserInfoResponse } from "../../types";
export declare const authHooks: import("hookable").Hookable<{
"session:create": (event: H3Event<EventHandlerRequest>, context: UserInfoResponse) => Promise<void>;
"session:beforeDelete": <T>(event: H3Event<EventHandlerRequest>, session: T) => Promise<void>;
"session:afterDelete": <T_1>(event: H3Event<EventHandlerRequest>, session: T_1) => Promise<void>;
}, import("hookable").HookKeys<{
"session:create": (event: H3Event<EventHandlerRequest>, context: UserInfoResponse) => Promise<void>;
"session:beforeDelete": <T>(event: H3Event<EventHandlerRequest>, session: T) => Promise<void>;

@@ -7,0 +10,0 @@ "session:afterDelete": <T_1>(event: H3Event<EventHandlerRequest>, session: T_1) => Promise<void>;

@@ -1,4 +0,15 @@

import type { EventHandlerRequest, H3Event } from "h3";
export interface ProviderOptions<TContext> {
onSuccess: <T>(event: H3Event<EventHandlerRequest>, context: TContext) => T | Promise<T>;
export interface TokenResponse {
access_token: string;
token_type: string;
expires_in: string;
refresh_token?: string;
id_token?: string;
}
export interface UserInfoResponse {
sub: string;
name: string;
give_name: string;
family_name: string;
email: string;
picture: string;
}
{
"name": "@coverbase/nuxt-auth",
"version": "0.0.4",
"version": "0.0.5",
"license": "MIT",

@@ -5,0 +5,0 @@ "type": "module",

import { ProviderOptions } from "../../types";
export interface GoogleTokenResponse {
access_token: string;
token_type: string;
expires_in: string;
refresh_token?: string;
id_token?: string;
}
export interface GoogleUserInfoResponse {
sub: string;
name: string;
give_name: string;
family_name: string;
email: string;
picture: string;
}
export declare const defineGoogleProvider: ({ onSuccess }: ProviderOptions<GoogleUserInfoResponse>) => any;
import { eventHandler, getQuery, getRequestURL, sendRedirect, useRuntimeConfig } from "#imports";
import { withQuery } from "ufo";
export const defineGoogleProvider = ({ onSuccess }) => {
return eventHandler(async (event) => {
const config = useRuntimeConfig(event);
const { code } = getQuery(event);
const { host, protocol } = getRequestURL(event);
const redirectUrl = `${protocol}//${host}/auth/google`;
if (code) {
const token = await $fetch("https://oauth2.googleapis.com/token", {
method: "POST",
body: {
grant_type: "authorization_code",
client_id: config.auth.provider.google.clientKey,
client_secret: config.auth.provider.google.clientSecret,
redirect_uri: redirectUrl,
code
}
});
const userInfo = await $fetch(
"https://www.googleapis.com/oauth2/v3/userinfo",
{
method: "GET",
headers: {
Authorization: `Bearer ${token.access_token}`
}
}
);
return onSuccess(event, userInfo);
}
return sendRedirect(
event,
withQuery("https://accounts.google.com/o/oauth2/v2/auth", {
response_type: "code",
client_id: config.auth.provider.google.clientKey,
redirect_uri: redirectUrl,
scope: "email profile"
})
);
});
};