bezzie 0.2.2 → 1.0.0
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.
- package/README.md +41 -16
- package/dist/adapters/cloudflare-kv.d.ts +5 -1
- package/dist/adapters/cloudflare-kv.d.ts.map +1 -1
- package/dist/adapters/cloudflare-kv.js +8 -1
- package/dist/adapters/cloudflare-kv.js.map +1 -1
- package/dist/adapters/memory.d.ts +17 -1
- package/dist/adapters/memory.d.ts.map +1 -1
- package/dist/adapters/memory.js +32 -1
- package/dist/adapters/memory.js.map +1 -1
- package/dist/adapters/redis.d.ts +38 -1
- package/dist/adapters/redis.d.ts.map +1 -1
- package/dist/adapters/redis.js +39 -0
- package/dist/adapters/redis.js.map +1 -1
- package/dist/adapters/types.d.ts +14 -0
- package/dist/adapters/types.d.ts.map +1 -1
- package/dist/discovery.d.ts +13 -2
- package/dist/discovery.d.ts.map +1 -1
- package/dist/discovery.js +5 -4
- package/dist/discovery.js.map +1 -1
- package/dist/errors.d.ts +28 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +31 -0
- package/dist/errors.js.map +1 -0
- package/dist/index.d.ts +109 -35
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +21 -14
- package/dist/index.js.map +1 -1
- package/dist/middleware.d.ts +65 -7
- package/dist/middleware.d.ts.map +1 -1
- package/dist/middleware.js +32 -10
- package/dist/middleware.js.map +1 -1
- package/dist/routes.d.ts +2 -2
- package/dist/routes.d.ts.map +1 -1
- package/dist/routes.js +130 -22
- package/dist/routes.js.map +1 -1
- package/dist/session.d.ts +9 -0
- package/dist/session.d.ts.map +1 -1
- package/dist/session.js.map +1 -1
- package/package.json +23 -8
package/dist/routes.js
CHANGED
|
@@ -5,14 +5,19 @@ import { getAuthorizationServer } from './discovery';
|
|
|
5
5
|
export function authRoutes(config, cache) {
|
|
6
6
|
const router = new Hono();
|
|
7
7
|
const sessionStore = config.adapter;
|
|
8
|
-
router.get('/login', async (c) => {
|
|
8
|
+
router.get(config.routes?.login ?? '/login', async (c) => {
|
|
9
9
|
const code_verifier = oauth.generateRandomCodeVerifier();
|
|
10
10
|
const code_challenge = await oauth.calculatePKCECodeChallenge(code_verifier);
|
|
11
|
+
// oauth.generateRandomState() uses crypto.getRandomValues — cryptographically random,
|
|
12
|
+
// not sequential or time-based. Safe to use as an anti-CSRF state value.
|
|
11
13
|
const state = oauth.generateRandomState();
|
|
12
14
|
const csrfToken = oauth.generateRandomState();
|
|
15
|
+
// S8: OIDC nonce — bound to this login flow, verified in /callback against
|
|
16
|
+
// the `nonce` claim of the returned ID token to prevent replay.
|
|
17
|
+
const nonce = oauth.generateRandomState();
|
|
13
18
|
const returnTo = c.req.query('returnTo');
|
|
14
|
-
// Store state, codeVerifier and
|
|
15
|
-
await config.adapter.set(`pkce:${state}`, { _type: 'pkce', codeVerifier: code_verifier, returnTo, csrfToken }, config.pkceStateTtlSeconds ?? 600); // 10 minutes
|
|
19
|
+
// Store state, codeVerifier, csrfToken, and nonce in adapter
|
|
20
|
+
await config.adapter.set(`pkce:${state}`, { _type: 'pkce', codeVerifier: code_verifier, returnTo, csrfToken, nonce }, config.pkceStateTtlSeconds ?? 600); // 10 minutes
|
|
16
21
|
// Bind the PKCE state to the user's browser session via a short-lived cookie
|
|
17
22
|
// to prevent login-CSRF (S4).
|
|
18
23
|
setCookie(c, '__Host-pkce-csrf', csrfToken, {
|
|
@@ -29,17 +34,22 @@ export function authRoutes(config, cache) {
|
|
|
29
34
|
const authorizationUrl = new URL(as.authorization_endpoint);
|
|
30
35
|
authorizationUrl.searchParams.set('client_id', config.clientId);
|
|
31
36
|
authorizationUrl.searchParams.set('response_type', 'code');
|
|
32
|
-
authorizationUrl.searchParams.set('redirect_uri', `${config.baseUrl}/auth/callback`);
|
|
37
|
+
authorizationUrl.searchParams.set('redirect_uri', `${config.baseUrl}${config.routes?.callback ?? '/auth/callback'}`);
|
|
33
38
|
authorizationUrl.searchParams.set('scope', (config.scopes ?? ['openid', 'profile', 'email', 'offline_access']).join(' '));
|
|
34
39
|
authorizationUrl.searchParams.set('state', state);
|
|
35
40
|
authorizationUrl.searchParams.set('code_challenge', code_challenge);
|
|
36
41
|
authorizationUrl.searchParams.set('code_challenge_method', 'S256');
|
|
42
|
+
authorizationUrl.searchParams.set('nonce', nonce);
|
|
37
43
|
if (config.audience) {
|
|
38
44
|
authorizationUrl.searchParams.set('audience', config.audience);
|
|
39
45
|
}
|
|
46
|
+
const requestUrl = new URL(c.req.url);
|
|
47
|
+
if (requestUrl.protocol === 'http:' && requestUrl.hostname !== 'localhost' && requestUrl.hostname !== '127.0.0.1') {
|
|
48
|
+
console.warn('Bezzie: running on HTTP in a non-localhost environment. The __Host- cookie prefix requires HTTPS — sessions will not be set correctly.');
|
|
49
|
+
}
|
|
40
50
|
return c.redirect(authorizationUrl.toString());
|
|
41
51
|
});
|
|
42
|
-
router.get('/callback', async (c) => {
|
|
52
|
+
router.get(config.routes?.callback ?? '/callback', async (c) => {
|
|
43
53
|
const error = c.req.query('error');
|
|
44
54
|
if (error) {
|
|
45
55
|
const ERROR_MESSAGES = {
|
|
@@ -58,7 +68,10 @@ export function authRoutes(config, cache) {
|
|
|
58
68
|
if (!stored) {
|
|
59
69
|
return c.text('Invalid or expired state', 400);
|
|
60
70
|
}
|
|
61
|
-
const { codeVerifier, returnTo, csrfToken: storedCsrfToken } = stored;
|
|
71
|
+
const { codeVerifier, returnTo, csrfToken: storedCsrfToken, nonce: storedNonce } = stored;
|
|
72
|
+
if (!codeVerifier || codeVerifier.length < 43) {
|
|
73
|
+
return c.text('Invalid PKCE state', 400);
|
|
74
|
+
}
|
|
62
75
|
// Login-CSRF protection (S4): the cookie set at /login must match the
|
|
63
76
|
// csrfToken stored alongside the PKCE state in KV.
|
|
64
77
|
const cookieCsrfToken = getCookie(c, '__Host-pkce-csrf');
|
|
@@ -77,21 +90,28 @@ export function authRoutes(config, cache) {
|
|
|
77
90
|
const client = { client_id: config.clientId };
|
|
78
91
|
const clientAuth = oauth.ClientSecretPost(config.clientSecret);
|
|
79
92
|
const callbackParams = oauth.validateAuthResponse(as, client, new URL(c.req.url).searchParams, oauth.skipStateCheck);
|
|
80
|
-
const response = await oauth.authorizationCodeGrantRequest(as, client, clientAuth, callbackParams, `${config.baseUrl}/auth/callback`, codeVerifier);
|
|
93
|
+
const response = await oauth.authorizationCodeGrantRequest(as, client, clientAuth, callbackParams, `${config.baseUrl}${config.routes?.callback ?? '/auth/callback'}`, codeVerifier, { signal: AbortSignal.timeout(5000) });
|
|
81
94
|
let result;
|
|
82
95
|
try {
|
|
83
|
-
|
|
96
|
+
// S8: pass expectedNonce so oauth4webapi verifies the ID token `nonce`
|
|
97
|
+
// claim matches the value we sent in the authorization request.
|
|
98
|
+
result = await oauth.processAuthorizationCodeResponse(as, client, response, {
|
|
99
|
+
expectedNonce: storedNonce,
|
|
100
|
+
});
|
|
84
101
|
}
|
|
85
102
|
catch (err) {
|
|
86
103
|
if (err instanceof oauth.ResponseBodyError) {
|
|
104
|
+
console.error('Bezzie: OAuth 2.0 token exchange error:', err);
|
|
87
105
|
return c.text('OAuth 2.0 error', 400);
|
|
88
106
|
}
|
|
89
|
-
|
|
107
|
+
console.error('Bezzie: processAuthorizationCodeResponse failed (possible nonce mismatch):', err);
|
|
108
|
+
return c.text('Invalid ID token', 400);
|
|
90
109
|
}
|
|
91
110
|
const { access_token, refresh_token, expires_in, id_token } = result;
|
|
92
111
|
const claims = oauth.getValidatedIdTokenClaims(result);
|
|
93
112
|
if (!claims) {
|
|
94
|
-
|
|
113
|
+
console.error('Bezzie: id_token missing from token response');
|
|
114
|
+
return c.text('Authentication failed', 500);
|
|
95
115
|
}
|
|
96
116
|
if (!refresh_token) {
|
|
97
117
|
console.warn('Bezzie: refresh_token is missing from the token response. offline_access may not be enabled or supported by the provider.');
|
|
@@ -99,6 +119,35 @@ export function authRoutes(config, cache) {
|
|
|
99
119
|
const sessionId = Array.from(crypto.getRandomValues(new Uint8Array(16)))
|
|
100
120
|
.map((b) => b.toString(16).padStart(2, '0'))
|
|
101
121
|
.join('');
|
|
122
|
+
let mappedUser;
|
|
123
|
+
if (config.mapClaims) {
|
|
124
|
+
try {
|
|
125
|
+
const mapped = await config.mapClaims(claims);
|
|
126
|
+
mappedUser = {
|
|
127
|
+
...mapped,
|
|
128
|
+
sub: claims.sub,
|
|
129
|
+
email: claims.email,
|
|
130
|
+
};
|
|
131
|
+
}
|
|
132
|
+
catch (err) {
|
|
133
|
+
// mapClaims threw — abort login, clean up
|
|
134
|
+
deleteCookie(c, config.cookieName ?? '__Host-session', {
|
|
135
|
+
path: '/',
|
|
136
|
+
secure: true,
|
|
137
|
+
httpOnly: true,
|
|
138
|
+
sameSite: 'Strict',
|
|
139
|
+
});
|
|
140
|
+
console.error('Bezzie: mapClaims threw, aborting login:', err instanceof Error ? err.message : String(err));
|
|
141
|
+
return c.text('Login failed', 500);
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
else {
|
|
145
|
+
mappedUser = {
|
|
146
|
+
...claims,
|
|
147
|
+
sub: claims.sub,
|
|
148
|
+
email: claims.email,
|
|
149
|
+
};
|
|
150
|
+
}
|
|
102
151
|
const session = {
|
|
103
152
|
_type: 'session',
|
|
104
153
|
accessToken: access_token,
|
|
@@ -106,14 +155,21 @@ export function authRoutes(config, cache) {
|
|
|
106
155
|
idToken: id_token,
|
|
107
156
|
expiresAt: Math.floor(Date.now() / 1000) + (expires_in || 3600),
|
|
108
157
|
createdAt: Math.floor(Date.now() / 1000),
|
|
109
|
-
user:
|
|
110
|
-
...claims,
|
|
111
|
-
sub: claims.sub,
|
|
112
|
-
email: claims.email,
|
|
113
|
-
},
|
|
158
|
+
user: mappedUser,
|
|
114
159
|
};
|
|
160
|
+
// Prevent session fixation (S11): if the user already had a session cookie,
|
|
161
|
+
// remove its KV entry before minting a fresh session.
|
|
162
|
+
const existingSessionId = getCookie(c, config.cookieName ?? '__Host-session');
|
|
163
|
+
if (existingSessionId) {
|
|
164
|
+
await sessionStore.delete(`session:${existingSessionId}`);
|
|
165
|
+
}
|
|
115
166
|
// TTL for session in KV. Set to 30 days as per bug fix 3.
|
|
116
|
-
await sessionStore.set(sessionId
|
|
167
|
+
await sessionStore.set(`session:${sessionId}`, session, config.sessionTtlSeconds ?? 30 * 24 * 60 * 60);
|
|
168
|
+
// SameSite=Strict is correct here: this cookie is set *after* the IdP redirect has
|
|
169
|
+
// already completed (i.e. in /callback, not before the redirect). By the time this
|
|
170
|
+
// setCookie runs the browser is back on our origin, so Strict does not block the
|
|
171
|
+
// cookie from being sent. Using Strict rather than Lax gives the strongest
|
|
172
|
+
// cross-site request forgery protection for all subsequent requests.
|
|
117
173
|
setCookie(c, config.cookieName ?? '__Host-session', sessionId, {
|
|
118
174
|
httpOnly: true,
|
|
119
175
|
secure: true,
|
|
@@ -121,20 +177,73 @@ export function authRoutes(config, cache) {
|
|
|
121
177
|
path: '/',
|
|
122
178
|
maxAge: config.sessionTtlSeconds ?? 30 * 24 * 60 * 60, // 30 days, matches KV session TTL
|
|
123
179
|
});
|
|
180
|
+
if (config.onLogin) {
|
|
181
|
+
try {
|
|
182
|
+
await config.onLogin({
|
|
183
|
+
user: session.user,
|
|
184
|
+
sessionId,
|
|
185
|
+
tokens: { accessToken: access_token, expiresAt: session.expiresAt },
|
|
186
|
+
isNewSession: true,
|
|
187
|
+
c,
|
|
188
|
+
});
|
|
189
|
+
}
|
|
190
|
+
catch (err) {
|
|
191
|
+
// onLogin errors bubble — abort login, clean up session
|
|
192
|
+
await sessionStore.delete(`session:${sessionId}`);
|
|
193
|
+
deleteCookie(c, config.cookieName ?? '__Host-session', {
|
|
194
|
+
path: '/',
|
|
195
|
+
secure: true,
|
|
196
|
+
httpOnly: true,
|
|
197
|
+
sameSite: 'Strict',
|
|
198
|
+
});
|
|
199
|
+
console.error('Bezzie: onLogin hook threw, aborting login:', err instanceof Error ? err.message : String(err));
|
|
200
|
+
return c.text('Login failed', 500);
|
|
201
|
+
}
|
|
202
|
+
}
|
|
124
203
|
if (returnTo && returnTo.startsWith('/') && !returnTo.startsWith('//')) {
|
|
125
204
|
return c.redirect(returnTo);
|
|
126
205
|
}
|
|
127
206
|
return c.redirect('/');
|
|
128
207
|
});
|
|
129
|
-
router.post('/logout', async (c) => {
|
|
208
|
+
router.post(config.routes?.logout ?? '/logout', async (c) => {
|
|
130
209
|
const sessionId = getCookie(c, config.cookieName ?? '__Host-session');
|
|
131
210
|
let idToken;
|
|
211
|
+
let refreshToken;
|
|
212
|
+
let loggedOutUser;
|
|
132
213
|
if (sessionId) {
|
|
133
|
-
const session = await sessionStore.get(sessionId);
|
|
214
|
+
const session = await sessionStore.get(`session:${sessionId}`);
|
|
134
215
|
if (session && session._type === 'session') {
|
|
135
216
|
idToken = session.idToken;
|
|
217
|
+
refreshToken = session.refreshToken;
|
|
218
|
+
loggedOutUser = session.user;
|
|
219
|
+
}
|
|
220
|
+
await sessionStore.delete(`session:${sessionId}`);
|
|
221
|
+
if (config.onLogout && loggedOutUser) {
|
|
222
|
+
try {
|
|
223
|
+
await config.onLogout({ user: loggedOutUser, sessionId, c });
|
|
224
|
+
}
|
|
225
|
+
catch (err) {
|
|
226
|
+
const handler = config.onError ?? ((e) => console.error('Bezzie: onLogout hook threw:', e instanceof Error ? e.message : String(e)));
|
|
227
|
+
handler(err, { hook: 'onLogout', c });
|
|
228
|
+
}
|
|
229
|
+
}
|
|
230
|
+
}
|
|
231
|
+
const as = await getAuthorizationServer(config, cache);
|
|
232
|
+
// S12: best-effort revoke the refresh token at the IdP so the tokens are
|
|
233
|
+
// invalidated server-side, not just locally. Wrapped in try/catch — a
|
|
234
|
+
// revocation failure must not block the logout redirect.
|
|
235
|
+
if (refreshToken && as.revocation_endpoint) {
|
|
236
|
+
try {
|
|
237
|
+
const client = { client_id: config.clientId };
|
|
238
|
+
const clientAuth = oauth.ClientSecretPost(config.clientSecret);
|
|
239
|
+
const response = await oauth.revocationRequest(as, client, clientAuth, refreshToken, {
|
|
240
|
+
signal: AbortSignal.timeout(5000),
|
|
241
|
+
});
|
|
242
|
+
await oauth.processRevocationResponse(response);
|
|
243
|
+
}
|
|
244
|
+
catch (err) {
|
|
245
|
+
console.error('Bezzie: token revocation failed (continuing with logout):', err);
|
|
136
246
|
}
|
|
137
|
-
await sessionStore.delete(sessionId);
|
|
138
247
|
}
|
|
139
248
|
deleteCookie(c, config.cookieName ?? '__Host-session', {
|
|
140
249
|
path: '/',
|
|
@@ -142,10 +251,9 @@ export function authRoutes(config, cache) {
|
|
|
142
251
|
httpOnly: true,
|
|
143
252
|
sameSite: 'Strict',
|
|
144
253
|
});
|
|
145
|
-
const as = await getAuthorizationServer(config, cache);
|
|
146
254
|
let logoutUrl;
|
|
147
|
-
if (config.
|
|
148
|
-
logoutUrl = new URL(config.
|
|
255
|
+
if (config.providerOverrides?.logoutUrl) {
|
|
256
|
+
logoutUrl = new URL(config.providerOverrides.logoutUrl);
|
|
149
257
|
logoutUrl.searchParams.set('client_id', config.clientId);
|
|
150
258
|
logoutUrl.searchParams.set('returnTo', config.baseUrl);
|
|
151
259
|
if (idToken) {
|
package/dist/routes.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"routes.js","sourceRoot":"","sources":["../src/routes.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"routes.js","sourceRoot":"","sources":["../src/routes.ts"],"names":[],"mappings":"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"}
|
package/dist/session.d.ts
CHANGED
|
@@ -40,5 +40,14 @@ export interface Session<TUser extends Record<string, unknown> = Record<string,
|
|
|
40
40
|
email?: string;
|
|
41
41
|
} & TUser;
|
|
42
42
|
}
|
|
43
|
+
/**
|
|
44
|
+
* Alias for {@link Session} intended for consumers that want to type the
|
|
45
|
+
* shape of session data as it is persisted by a {@link SessionAdapter}.
|
|
46
|
+
*
|
|
47
|
+
* `Session<TUser>` describes the runtime session object. `StoredSession<TUser>`
|
|
48
|
+
* is the same shape — the alias exists so callers can write intent-revealing
|
|
49
|
+
* types like `adapter.get(id) as StoredSession<MyUser> | null`.
|
|
50
|
+
*/
|
|
51
|
+
export type StoredSession<TUser extends Record<string, unknown> = Record<string, unknown>> = Session<TUser>;
|
|
43
52
|
export * from './adapters';
|
|
44
53
|
//# sourceMappingURL=session.d.ts.map
|
package/dist/session.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,OAAO,CAAC,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACtF;;OAEG;IACH,KAAK,EAAE,SAAS,CAAA;IAChB;;OAEG;IACH,WAAW,EAAE,MAAM,CAAA;IACnB;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAA;IACjB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAA;IACjB;;OAEG;IACH,IAAI,EAAE;QACJ;;WAEG;QACH,GAAG,EAAE,MAAM,CAAA;QACX;;WAEG;QACH,KAAK,CAAC,EAAE,MAAM,CAAA;KACf,GAAG,KAAK,CAAA;CACV;AAED,cAAc,YAAY,CAAA"}
|
|
1
|
+
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,OAAO,CAAC,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACtF;;OAEG;IACH,KAAK,EAAE,SAAS,CAAA;IAChB;;OAEG;IACH,WAAW,EAAE,MAAM,CAAA;IACnB;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAA;IACjB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAA;IACjB;;OAEG;IACH,IAAI,EAAE;QACJ;;WAEG;QACH,GAAG,EAAE,MAAM,CAAA;QACX;;WAEG;QACH,KAAK,CAAC,EAAE,MAAM,CAAA;KACf,GAAG,KAAK,CAAA;CACV;AAED;;;;;;;GAOG;AACH,MAAM,MAAM,aAAa,CAAC,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,OAAO,CAAC,KAAK,CAAC,CAAA;AAE3G,cAAc,YAAY,CAAA"}
|
package/dist/session.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.js","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"session.js","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"AAqDA,cAAc,YAAY,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "bezzie",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "1.0.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"sideEffects": false,
|
|
6
6
|
"engines": {
|
|
@@ -8,15 +8,18 @@
|
|
|
8
8
|
},
|
|
9
9
|
"description": "BFF OAuth 2.0 auth library for Cloudflare Workers",
|
|
10
10
|
"keywords": [
|
|
11
|
-
"hono",
|
|
12
|
-
"cloudflare-workers",
|
|
13
|
-
"oauth",
|
|
14
|
-
"oidc",
|
|
15
|
-
"auth",
|
|
16
11
|
"bff",
|
|
17
|
-
"
|
|
12
|
+
"backend-for-frontend",
|
|
18
13
|
"jwt",
|
|
19
|
-
"pkce"
|
|
14
|
+
"pkce",
|
|
15
|
+
"token-rotation",
|
|
16
|
+
"oidc",
|
|
17
|
+
"cloudflare-workers",
|
|
18
|
+
"oauth2",
|
|
19
|
+
"auth",
|
|
20
|
+
"hono",
|
|
21
|
+
"oauth",
|
|
22
|
+
"session"
|
|
20
23
|
],
|
|
21
24
|
"main": "dist/index.js",
|
|
22
25
|
"types": "dist/index.d.ts",
|
|
@@ -24,6 +27,18 @@
|
|
|
24
27
|
".": {
|
|
25
28
|
"import": "./dist/index.js",
|
|
26
29
|
"types": "./dist/index.d.ts"
|
|
30
|
+
},
|
|
31
|
+
"./cloudflare": {
|
|
32
|
+
"import": "./dist/adapters/cloudflare-kv.js",
|
|
33
|
+
"types": "./dist/adapters/cloudflare-kv.d.ts"
|
|
34
|
+
},
|
|
35
|
+
"./redis": {
|
|
36
|
+
"import": "./dist/adapters/redis.js",
|
|
37
|
+
"types": "./dist/adapters/redis.d.ts"
|
|
38
|
+
},
|
|
39
|
+
"./memory": {
|
|
40
|
+
"import": "./dist/adapters/memory.js",
|
|
41
|
+
"types": "./dist/adapters/memory.d.ts"
|
|
27
42
|
}
|
|
28
43
|
},
|
|
29
44
|
"files": [
|