@skia-id/sdk 0.1.0 → 0.1.1
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 +17 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/oauth.d.ts +11 -0
- package/dist/oauth.d.ts.map +1 -1
- package/dist/oauth.js +15 -2
- package/dist/oauth.js.map +1 -1
- package/package.json +5 -2
package/README.md
CHANGED
|
@@ -62,6 +62,23 @@ new SkiaOAuthClient({
|
|
|
62
62
|
| `handleCallback(clientSecret?)` | Exchange auth code for tokens |
|
|
63
63
|
| `getUserInfo(accessToken)` | Fetch user claims |
|
|
64
64
|
| `decodeIdToken(idToken)` | Decode JWT payload (client-side, no verification) |
|
|
65
|
+
| `getEndpoints()` | Get all OAuth/OIDC endpoint URLs for the configured issuer |
|
|
66
|
+
|
|
67
|
+
## Endpoint Discovery
|
|
68
|
+
|
|
69
|
+
The SDK exports `SKIA_ISSUER` and a `getEndpoints()` helper so you never need to hardcode URLs:
|
|
70
|
+
|
|
71
|
+
```ts
|
|
72
|
+
import { SKIA_ISSUER, SkiaOAuthClient } from "@skia-id/sdk";
|
|
73
|
+
|
|
74
|
+
// Use the issuer for OIDC auto-discovery
|
|
75
|
+
// SKIA_ISSUER === "https://oauth.skiaid.org"
|
|
76
|
+
|
|
77
|
+
// Or get all endpoints programmatically
|
|
78
|
+
const skia = new SkiaOAuthClient({ clientId: "...", redirectUri: "..." });
|
|
79
|
+
const endpoints = skia.getEndpoints();
|
|
80
|
+
// { issuer, authorization, token, userinfo, revocation, jwks, discovery }
|
|
81
|
+
```
|
|
65
82
|
|
|
66
83
|
## Register Your App
|
|
67
84
|
|
package/dist/index.d.ts
CHANGED
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC1D,YAAY,EACV,eAAe,EACf,kBAAkB,EAClB,QAAQ,GACT,MAAM,YAAY,CAAC"}
|
package/dist/index.js
CHANGED
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,8DAA8D;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,8DAA8D;AAC9D,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC"}
|
package/dist/oauth.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { SkiaOAuthConfig, OAuthTokenResponse, UserInfo } from "./types.js";
|
|
2
|
+
export declare const SKIA_ISSUER = "https://oauth.skiaid.org";
|
|
2
3
|
export declare class SkiaOAuthClient {
|
|
3
4
|
private readonly config;
|
|
4
5
|
constructor(config: SkiaOAuthConfig);
|
|
@@ -26,5 +27,15 @@ export declare class SkiaOAuthClient {
|
|
|
26
27
|
decodeIdToken(idToken: string): Record<string, unknown>;
|
|
27
28
|
/** Get the configured client ID */
|
|
28
29
|
getClientId(): string;
|
|
30
|
+
/** Get all OAuth/OIDC endpoint URLs for the configured issuer */
|
|
31
|
+
getEndpoints(): {
|
|
32
|
+
issuer: string;
|
|
33
|
+
authorization: string;
|
|
34
|
+
token: string;
|
|
35
|
+
userinfo: string;
|
|
36
|
+
revocation: string;
|
|
37
|
+
jwks: string;
|
|
38
|
+
discovery: string;
|
|
39
|
+
};
|
|
29
40
|
}
|
|
30
41
|
//# sourceMappingURL=oauth.d.ts.map
|
package/dist/oauth.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"oauth.d.ts","sourceRoot":"","sources":["../src/oauth.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,kBAAkB,EAClB,QAAQ,EACT,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"oauth.d.ts","sourceRoot":"","sources":["../src/oauth.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,kBAAkB,EAClB,QAAQ,EACT,MAAM,YAAY,CAAC;AAMpB,eAAO,MAAM,WAAW,6BAA6B,CAAC;AA4CtD,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAMrB;gBAEU,MAAM,EAAE,eAAe;IAUnC;;;OAGG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAuB5B;;;;;;OAMG;IACG,cAAc,CAClB,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC,kBAAkB,CAAC;IAwD9B;;OAEG;IACG,WAAW,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;IAYzD;;;OAGG;IACH,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAUvD,mCAAmC;IACnC,WAAW,IAAI,MAAM;IAIrB,iEAAiE;IACjE,YAAY;;;;;;;;;CAYb"}
|
package/dist/oauth.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// ---------------------------------------------------------------------------
|
|
2
2
|
// Default OAuth URL — production Skia identity provider
|
|
3
3
|
// ---------------------------------------------------------------------------
|
|
4
|
-
const
|
|
4
|
+
export const SKIA_ISSUER = "https://oauth.skiaid.org";
|
|
5
5
|
// ---------------------------------------------------------------------------
|
|
6
6
|
// PKCE helpers — browser-safe (SubtleCrypto)
|
|
7
7
|
// ---------------------------------------------------------------------------
|
|
@@ -41,7 +41,7 @@ export class SkiaOAuthClient {
|
|
|
41
41
|
clientId: config.clientId,
|
|
42
42
|
redirectUri: config.redirectUri,
|
|
43
43
|
scopes: config.scopes ?? ["openid", "email"],
|
|
44
|
-
apiUrl: config.apiUrl ??
|
|
44
|
+
apiUrl: config.apiUrl ?? SKIA_ISSUER,
|
|
45
45
|
usePKCE: config.usePKCE ?? true,
|
|
46
46
|
};
|
|
47
47
|
}
|
|
@@ -150,5 +150,18 @@ export class SkiaOAuthClient {
|
|
|
150
150
|
getClientId() {
|
|
151
151
|
return this.config.clientId;
|
|
152
152
|
}
|
|
153
|
+
/** Get all OAuth/OIDC endpoint URLs for the configured issuer */
|
|
154
|
+
getEndpoints() {
|
|
155
|
+
const base = this.config.apiUrl;
|
|
156
|
+
return {
|
|
157
|
+
issuer: base,
|
|
158
|
+
authorization: `${base}/oauth/authorize`,
|
|
159
|
+
token: `${base}/oauth/token`,
|
|
160
|
+
userinfo: `${base}/oauth/userinfo`,
|
|
161
|
+
revocation: `${base}/oauth/revoke`,
|
|
162
|
+
jwks: `${base}/.well-known/jwks.json`,
|
|
163
|
+
discovery: `${base}/.well-known/openid-configuration`,
|
|
164
|
+
};
|
|
165
|
+
}
|
|
153
166
|
}
|
|
154
167
|
//# sourceMappingURL=oauth.js.map
|
package/dist/oauth.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"oauth.js","sourceRoot":"","sources":["../src/oauth.ts"],"names":[],"mappings":"AAMA,8EAA8E;AAC9E,wDAAwD;AACxD,8EAA8E;AAE9E,MAAM,
|
|
1
|
+
{"version":3,"file":"oauth.js","sourceRoot":"","sources":["../src/oauth.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@skia-id/sdk",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.1",
|
|
4
4
|
"description": "Skia ID OAuth 2.1 / OIDC client SDK — anonymous identity verification for websites",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -38,5 +38,8 @@
|
|
|
38
38
|
"directory": "packages/sdk"
|
|
39
39
|
},
|
|
40
40
|
"homepage": "https://dev.skiaid.org",
|
|
41
|
-
"files": [
|
|
41
|
+
"files": [
|
|
42
|
+
"dist",
|
|
43
|
+
"README.md"
|
|
44
|
+
]
|
|
42
45
|
}
|