@eetr/eetr-auth-client 0.3.1 → 0.5.2

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/dist/types.d.ts CHANGED
@@ -6,6 +6,12 @@ export interface TokenResponse {
6
6
  scope?: string;
7
7
  id_token?: string;
8
8
  }
9
+ /**
10
+ * UserInfo claims. Only `sub` is always present; the server gates the remaining
11
+ * claims on the access token's granted scopes — `name`/`preferred_username`/`picture`
12
+ * require the `profile` scope and `email`/`email_verified` require the `email` scope.
13
+ * The endpoint itself requires the `openid` scope.
14
+ */
9
15
  export interface UserInfoResponse {
10
16
  sub: string;
11
17
  name?: string;
@@ -14,29 +20,54 @@ export interface UserInfoResponse {
14
20
  picture?: string;
15
21
  preferred_username?: string;
16
22
  }
23
+ /**
24
+ * Normalized user profile, merged from the `/userinfo` response and (optionally) the
25
+ * id_token claims via {@link toUserProfile}. Claim names are camelCased. Every field
26
+ * except `sub` is optional because the server only returns claims the access token's
27
+ * scopes allow (`profile` → name/preferredUsername/picture, `email` →
28
+ * email/emailVerified).
29
+ */
30
+ export interface UserProfile {
31
+ sub: string;
32
+ name?: string;
33
+ preferredUsername?: string;
34
+ picture?: string;
35
+ email?: string;
36
+ emailVerified?: boolean;
37
+ }
17
38
  export interface OIDCDiscovery {
18
39
  issuer: string;
19
40
  authorization_endpoint: string;
20
41
  token_endpoint: string;
21
42
  userinfo_endpoint: string;
43
+ /** RFC 7591 Dynamic Client Registration endpoint, when the server supports it. */
44
+ registration_endpoint?: string;
22
45
  jwks_uri: string;
23
46
  response_types_supported: string[];
24
47
  scopes_supported: string[];
25
48
  grant_types_supported: string[];
26
49
  subject_types_supported: string[];
27
50
  id_token_signing_alg_values_supported: string[];
51
+ token_endpoint_auth_methods_supported?: string[];
28
52
  code_challenge_methods_supported: string[];
53
+ /** RFC 8707: whether the `resource` parameter is honored. */
54
+ resource_parameter_supported?: boolean;
29
55
  }
30
56
  export interface OAuthServerMetadata {
31
57
  issuer: string;
32
58
  authorization_endpoint: string;
33
59
  token_endpoint: string;
60
+ /** RFC 7591 Dynamic Client Registration endpoint, when the server supports it. */
61
+ registration_endpoint?: string;
34
62
  jwks_uri: string;
35
63
  token_introspection_endpoint?: string;
36
64
  response_types_supported: string[];
37
65
  scopes_supported: string[];
38
66
  grant_types_supported: string[];
67
+ token_endpoint_auth_methods_supported?: string[];
39
68
  code_challenge_methods_supported: string[];
69
+ /** RFC 8707: whether the `resource` parameter is honored. */
70
+ resource_parameter_supported?: boolean;
40
71
  }
41
72
  export interface AuthClientConfig {
42
73
  issuerUrl: string;
@@ -61,4 +92,16 @@ export interface TokenValidationResponse {
61
92
  client_id: string | null;
62
93
  expires_at: string | null;
63
94
  }
95
+ /** Claims an issued OIDC id_token may carry (OpenID Connect Core 1.0). */
96
+ export interface IDTokenClaims extends JWTPayload {
97
+ sub?: string;
98
+ auth_time?: number;
99
+ nonce?: string;
100
+ at_hash?: string;
101
+ name?: string;
102
+ preferred_username?: string;
103
+ picture?: string;
104
+ email?: string;
105
+ email_verified?: boolean;
106
+ }
64
107
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,aAAa;IAC5B,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,sBAAsB,EAAE,MAAM,CAAC;IAC/B,cAAc,EAAE,MAAM,CAAC;IACvB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,wBAAwB,EAAE,MAAM,EAAE,CAAC;IACnC,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,qBAAqB,EAAE,MAAM,EAAE,CAAC;IAChC,uBAAuB,EAAE,MAAM,EAAE,CAAC;IAClC,qCAAqC,EAAE,MAAM,EAAE,CAAC;IAChD,gCAAgC,EAAE,MAAM,EAAE,CAAC;CAC5C;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,sBAAsB,EAAE,MAAM,CAAC;IAC/B,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,4BAA4B,CAAC,EAAE,MAAM,CAAC;IACtC,wBAAwB,EAAE,MAAM,EAAE,CAAC;IACnC,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,qBAAqB,EAAE,MAAM,EAAE,CAAC;IAChC,gCAAgC,EAAE,MAAM,EAAE,CAAC;CAC5C;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,UAAU;IACzB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IACxB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,uBAAuB;IACtC,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,32 @@
1
1
  {
2
2
  "name": "@eetr/eetr-auth-client",
3
- "version": "0.3.1",
3
+ "version": "0.5.2",
4
4
  "description": "TypeScript client library for eetr-auth OAuth 2.1 / OIDC server",
5
+ "license": "MIT",
6
+ "author": "eetr-ai",
7
+ "homepage": "https://github.com/eetr-ai/eetr-auth/tree/main/packages/eetr-auth-client#readme",
8
+ "repository": {
9
+ "type": "git",
10
+ "url": "git+https://github.com/eetr-ai/eetr-auth.git",
11
+ "directory": "packages/eetr-auth-client"
12
+ },
13
+ "bugs": {
14
+ "url": "https://github.com/eetr-ai/eetr-auth/issues"
15
+ },
16
+ "keywords": [
17
+ "oauth",
18
+ "oauth2",
19
+ "oidc",
20
+ "openid-connect",
21
+ "authentication",
22
+ "passkeys",
23
+ "webauthn",
24
+ "eetr-auth"
25
+ ],
26
+ "engines": {
27
+ "node": ">=18"
28
+ },
29
+ "sideEffects": false,
5
30
  "type": "module",
6
31
  "main": "./dist/index.js",
7
32
  "types": "./dist/index.d.ts",
@@ -12,7 +37,9 @@
12
37
  }
13
38
  },
14
39
  "files": [
15
- "dist"
40
+ "dist",
41
+ "README.md",
42
+ "LICENSE"
16
43
  ],
17
44
  "scripts": {
18
45
  "build": "tsc",
@@ -29,5 +56,8 @@
29
56
  "@types/node": "^20.19.35",
30
57
  "typescript": "^5.8.3",
31
58
  "vitest": "^4.1.2"
59
+ },
60
+ "publishConfig": {
61
+ "access": "public"
32
62
  }
33
63
  }