@maronn-openid-connect/google-login 0.0.2 → 0.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +2 -2
  2. package/package.json +3 -3
package/README.md CHANGED
@@ -201,12 +201,12 @@ pnpm add @maronn-openid-connect/core @maronn-openid-connect/google-login
201
201
  | 生成物 | 内容 |
202
202
  |---|---|
203
203
  | `config.ts` | `ProviderConfig.googleLogin?: GoogleLoginConfig`(`clientId` / 任意の `hostedDomain` / `requireVerifiedEmail`)。未設定ならボタンは出ず、`/login/google` は 404 |
204
- | `views.ts` | `LoginPageParams.googleSignIn`(`g_id_onload` の属性)。既定のログイン画面はパスワードフォームの下に GIS の 3 要素(スクリプト / `g_id_onload` / `g_id_signin`)を書き出す。UI は生成コード側にあるので自由に変えられる |
204
+ | `views.ts`(Hono は `views.tsx`) | `LoginPageParams.googleSignIn`(`g_id_onload` の属性)。既定のログイン画面はパスワードフォームの下に GIS の 3 要素(スクリプト / `g_id_onload` / `g_id_signin`)を書き出す。UI は生成コード側にあるので自由に変えられる |
205
205
  | `routes/login.ts` | GET `/login` でトランザクションに束縛した nonce を発行してボタンを描画。`POST /login/google`(`login_uri`)で `handleGoogleLoginRedirect` → `resolveGoogleLoginSubject` → パスワードログインと同じセッション確立 → `/consent` |
206
206
  | `store.ts` | `googleLoginNonceStore`(インメモリ / `JsonStoreBackend` 両方)と、Google アカウントを `google:<sub>` の subject で JIT 登録する `userStore.linkGoogleAccount()` |
207
207
  | `app.ts` | `googleIdTokenVerifier`(既定は `getDefaultGoogleIdTokenVerifier()`)と `googleAccountResolver`(既定は `linkGoogleAccount`)を差し替えられるオプション |
208
208
  | `conformance.test.ts` | 偽の `GoogleIdTokenVerifier` を注入してボタン描画・CSRF・nonce・JIT 登録・トークン発行までを固定する契約テスト |
209
- | Next.js: `login/page.tsx`, `login/google/route.ts`, `_oidc-provider/runtime.ts` | ページ側で `<div {...googleSignIn} />` と `next/script` による描画、`login_uri` の Route Handler(Node.js ランタイム)、`GOOGLE_CLIENT_ID` / `GOOGLE_HOSTED_DOMAIN` の読み取り |
209
+ | Next.js: `login/page.tsx`, `login/google/route.ts`, `_oidc-provider/provider.ts` | ページ側で `<div {...googleSignIn} />` と `next/script` による描画、`login_uri` の Route Handler(Node.js ランタイム。失敗は OP のエラーページ `oidc-error/page.tsx` へ 303 でリダイレクトして表示)、`GOOGLE_CLIENT_ID` / `GOOGLE_HOSTED_DOMAIN` の読み取り |
210
210
 
211
211
  生成コードは `config.googleLogin` が無いときはボタンを描画せず `/login/google` を 404 で閉じるので、まず生成だけしておき、Google Cloud コンソールの準備ができてから `clientId` を渡す、という順でも動く。`login_uri` は `new URL('/login/google', config.issuer)` で組み立てるため、Google 側には `<issuer>/login/google` を登録する。
212
212
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@maronn-openid-connect/google-login",
3
- "version": "0.0.2",
3
+ "version": "0.0.4",
4
4
  "description": "Sign in with Google (Google Identity Services, redirect mode) as an upstream login method for maronn-openid-connect providers",
5
5
  "type": "module",
6
6
  "engines": {
@@ -45,13 +45,13 @@
45
45
  },
46
46
  "homepage": "https://github.com/maronnjapan/maronn-openid-connect/tree/main/packages/google-login#readme",
47
47
  "peerDependencies": {
48
- "@maronn-openid-connect/core": ">=0.4.0 <1.0.0"
48
+ "@maronn-openid-connect/core": ">=0.4.1 <1.0.0"
49
49
  },
50
50
  "devDependencies": {
51
51
  "@types/node": "^26.2.0",
52
52
  "typescript": "^7.0.2",
53
53
  "vitest": "^4.1.11",
54
- "@maronn-openid-connect/core": "0.4.0"
54
+ "@maronn-openid-connect/core": "0.4.1"
55
55
  },
56
56
  "dependencies": {
57
57
  "google-auth-library": "^11.1.0"