@barndoor-ai/sdk 0.3.1 → 0.4.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 +9 -14
- package/dist/auth/index.d.ts +2 -1
- package/dist/auth/index.d.ts.map +1 -1
- package/dist/auth/pkce.d.ts +12 -6
- package/dist/auth/pkce.d.ts.map +1 -1
- package/dist/auth/store.d.ts +26 -3
- package/dist/auth/store.d.ts.map +1 -1
- package/dist/client.d.ts.map +1 -1
- package/dist/config.d.ts +29 -19
- package/dist/config.d.ts.map +1 -1
- package/dist/index.d.ts +3 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.esm.js +2 -2
- package/dist/index.js +2 -2
- package/dist/quickstart.d.ts +9 -4
- package/dist/quickstart.d.ts.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -105,27 +105,19 @@ await sdk.disconnectServer('123e4567-e89b-12d3-a456-426614174000');
|
|
|
105
105
|
|
|
106
106
|
## Environment Configuration
|
|
107
107
|
|
|
108
|
-
The SDK automatically
|
|
108
|
+
The SDK automatically configures endpoints. Just set your credentials:
|
|
109
109
|
|
|
110
110
|
```bash
|
|
111
|
-
# Development
|
|
112
|
-
export MODE=development
|
|
113
111
|
export AGENT_CLIENT_ID=your_client_id
|
|
114
112
|
export AGENT_CLIENT_SECRET=your_client_secret
|
|
113
|
+
```
|
|
115
114
|
|
|
116
|
-
|
|
117
|
-
export MODE=production
|
|
118
|
-
export AGENT_CLIENT_ID=your_client_id
|
|
119
|
-
export AGENT_CLIENT_SECRET=your_client_secret
|
|
115
|
+
**OAuth Redirect Host:** The SDK defaults to `127.0.0.1` for OAuth callbacks. If you need to use a different host (e.g., `localhost`), set:
|
|
120
116
|
|
|
121
|
-
|
|
122
|
-
export
|
|
123
|
-
export BARNDOOR_API=http://localhost:8000
|
|
124
|
-
export BARNDOOR_URL=http://localhost:8000
|
|
117
|
+
```bash
|
|
118
|
+
export BARNDOOR_REDIRECT_HOST=localhost
|
|
125
119
|
```
|
|
126
120
|
|
|
127
|
-
If you run without a token at construction time the SDK will still read `AGENT_CLIENT_ID/SECRET` when `loginInteractive()` is invoked.
|
|
128
|
-
|
|
129
121
|
## API Reference
|
|
130
122
|
|
|
131
123
|
### BarndoorSDK
|
|
@@ -208,8 +200,11 @@ This will remove the connection record and clean up any stored OAuth credentials
|
|
|
208
200
|
Perform interactive OAuth login and return initialized SDK.
|
|
209
201
|
|
|
210
202
|
```typescript
|
|
203
|
+
// Uses env vars by default (AGENT_CLIENT_ID, AGENT_CLIENT_SECRET)
|
|
204
|
+
const sdk = await loginInteractive();
|
|
205
|
+
|
|
206
|
+
// Or pass credentials explicitly
|
|
211
207
|
const sdk = await loginInteractive({
|
|
212
|
-
authDomain: 'auth.barndoor.ai',
|
|
213
208
|
clientId: 'your-client-id',
|
|
214
209
|
clientSecret: 'your-client-secret',
|
|
215
210
|
port: 52765
|
package/dist/auth/index.d.ts
CHANGED
|
@@ -5,7 +5,8 @@
|
|
|
5
5
|
* including PKCE OAuth flows, token storage, and interactive login.
|
|
6
6
|
*/
|
|
7
7
|
export { PKCEManager, startLocalCallbackServer } from './pkce';
|
|
8
|
-
export { getTokenStorage, TokenManager, loadUserToken, saveUserToken, clearCachedToken, verifyJWTLocal, JWTVerificationResult, isTokenActive, isTokenActiveWithRefresh, validateToken, setTokenLogger, } from './store';
|
|
8
|
+
export { getTokenStorage, TokenManager, loadUserToken, saveUserToken, clearCachedToken, verifyJWTLocal, JWTVerificationResult, isTokenActive, isTokenActiveWithRefresh, validateToken, setTokenLogger, getOidcConfig, clearOidcConfigCache, } from './store';
|
|
9
|
+
export type { OidcConfig } from './store';
|
|
9
10
|
export type { AuthorizationUrlParams, TokenExchangeParams, PKCEState } from './pkce';
|
|
10
11
|
export type { TokenData } from './store';
|
|
11
12
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/auth/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/auth/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,WAAW,EAAE,wBAAwB,EAAE,MAAM,QAAQ,CAAC;AAE/D,OAAO,EACL,eAAe,EACf,YAAY,EACZ,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,cAAc,EACd,qBAAqB,EACrB,aAAa,EACb,wBAAwB,EACxB,aAAa,EACb,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/auth/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,WAAW,EAAE,wBAAwB,EAAE,MAAM,QAAQ,CAAC;AAE/D,OAAO,EACL,eAAe,EACf,YAAY,EACZ,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,cAAc,EACd,qBAAqB,EACrB,aAAa,EACb,wBAAwB,EACxB,aAAa,EACb,cAAc,EACd,aAAa,EACb,oBAAoB,GACrB,MAAM,SAAS,CAAC;AAGjB,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAG1C,YAAY,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACrF,YAAY,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC"}
|
package/dist/auth/pkce.d.ts
CHANGED
|
@@ -4,6 +4,8 @@
|
|
|
4
4
|
* This module provides PKCE functionality that mirrors the Python SDK's
|
|
5
5
|
* auth.py implementation, supporting secure OAuth flows in both browser
|
|
6
6
|
* and Node.js environments.
|
|
7
|
+
*
|
|
8
|
+
* Uses OIDC discovery to automatically determine endpoints for any provider.
|
|
7
9
|
*/
|
|
8
10
|
/**
|
|
9
11
|
* PKCE state data structure.
|
|
@@ -31,13 +33,13 @@ export declare class PKCEManager {
|
|
|
31
33
|
* @param params - Authorization parameters
|
|
32
34
|
* @returns Authorization URL
|
|
33
35
|
*/
|
|
34
|
-
buildAuthorizationUrl({ domain, clientId, redirectUri, audience, scope, }: AuthorizationUrlParams): Promise<string>;
|
|
36
|
+
buildAuthorizationUrl({ domain, clientId, redirectUri, audience, scope, issuer, }: AuthorizationUrlParams): Promise<string>;
|
|
35
37
|
/**
|
|
36
38
|
* Exchange authorization code for tokens using stored PKCE state.
|
|
37
39
|
* @param params - Token exchange parameters
|
|
38
40
|
* @returns Token response
|
|
39
41
|
*/
|
|
40
|
-
exchangeCodeForToken({ domain, clientId, code, redirectUri, clientSecret, }: TokenExchangeParams): Promise<unknown>;
|
|
42
|
+
exchangeCodeForToken({ domain, clientId, code, redirectUri, clientSecret, issuer, }: TokenExchangeParams): Promise<unknown>;
|
|
41
43
|
/**
|
|
42
44
|
* Validate state parameter to prevent CSRF attacks.
|
|
43
45
|
* @param receivedState - State received from OAuth callback
|
|
@@ -57,8 +59,8 @@ export declare class PKCEManager {
|
|
|
57
59
|
* Authorization URL parameters.
|
|
58
60
|
*/
|
|
59
61
|
export interface AuthorizationUrlParams {
|
|
60
|
-
/**
|
|
61
|
-
domain
|
|
62
|
+
/** @deprecated Use issuer instead. Auth domain for backwards compatibility. */
|
|
63
|
+
domain?: string;
|
|
62
64
|
/** OAuth client ID */
|
|
63
65
|
clientId: string;
|
|
64
66
|
/** Redirect URI */
|
|
@@ -67,13 +69,15 @@ export interface AuthorizationUrlParams {
|
|
|
67
69
|
audience: string;
|
|
68
70
|
/** OAuth scopes */
|
|
69
71
|
scope?: string;
|
|
72
|
+
/** OIDC issuer URL. If provided, uses OIDC discovery to find authorization endpoint. */
|
|
73
|
+
issuer?: string;
|
|
70
74
|
}
|
|
71
75
|
/**
|
|
72
76
|
* Token exchange parameters.
|
|
73
77
|
*/
|
|
74
78
|
export interface TokenExchangeParams {
|
|
75
|
-
/**
|
|
76
|
-
domain
|
|
79
|
+
/** @deprecated Use issuer instead. Auth domain for backwards compatibility. */
|
|
80
|
+
domain?: string;
|
|
77
81
|
/** OAuth client ID */
|
|
78
82
|
clientId: string;
|
|
79
83
|
/** Authorization code */
|
|
@@ -82,6 +86,8 @@ export interface TokenExchangeParams {
|
|
|
82
86
|
redirectUri: string;
|
|
83
87
|
/** Client secret (for backend flows) */
|
|
84
88
|
clientSecret?: string;
|
|
89
|
+
/** OIDC issuer URL. If provided, uses OIDC discovery to find token endpoint. */
|
|
90
|
+
issuer?: string;
|
|
85
91
|
}
|
|
86
92
|
/**
|
|
87
93
|
* Start a local callback server for OAuth redirect (Node.js only).
|
package/dist/auth/pkce.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pkce.d.ts","sourceRoot":"","sources":["../../src/auth/pkce.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"pkce.d.ts","sourceRoot":"","sources":["../../src/auth/pkce.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAUH;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,kCAAkC;IAClC,YAAY,EAAE,MAAM,CAAC;IACrB,2CAA2C;IAC3C,aAAa,EAAE,MAAM,CAAC;IACtB,4BAA4B;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,uCAAuC;IACvC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;GAGG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,aAAa,CAAuB;IAC5C,OAAO,CAAC,aAAa,CAAuB;IAC5C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA8B;IAEtD;;;;OAIG;IACU,qBAAqB,CAAC,EACjC,MAAM,EACN,QAAQ,EACR,WAAW,EACX,QAAQ,EACR,KAA8B,EAC9B,MAAM,GACP,EAAE,sBAAsB,GAAG,OAAO,CAAC,MAAM,CAAC;IAgC3C;;;;OAIG;IACU,oBAAoB,CAAC,EAChC,MAAM,EACN,QAAQ,EACR,IAAI,EACJ,WAAW,EACX,YAAY,EACZ,MAAM,GACP,EAAE,mBAAmB,GAAG,OAAO,CAAC,OAAO,CAAC;IAqEzC;;;;OAIG;IACI,aAAa,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO;IAIpD;;OAEG;IACI,UAAU,IAAI,IAAI;IAKzB;;OAEG;IACI,QAAQ,IAAI,SAAS,GAAG,IAAI;CAWpC;AAmED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,+EAA+E;IAC/E,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,sBAAsB;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,mBAAmB;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,mBAAmB;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,mBAAmB;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,wFAAwF;IACxF,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,+EAA+E;IAC/E,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,sBAAsB;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,yBAAyB;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,mBAAmB;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,wCAAwC;IACxC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gFAAgF;IAChF,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,SAAQ,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAkG1F"}
|
package/dist/auth/store.d.ts
CHANGED
|
@@ -5,6 +5,29 @@
|
|
|
5
5
|
* environments, mirroring the Python SDK's auth_store functionality.
|
|
6
6
|
*/
|
|
7
7
|
import { Logger } from '../logging';
|
|
8
|
+
/**
|
|
9
|
+
* OIDC configuration from discovery endpoint.
|
|
10
|
+
*/
|
|
11
|
+
export interface OidcConfig {
|
|
12
|
+
issuer: string;
|
|
13
|
+
token_endpoint: string;
|
|
14
|
+
authorization_endpoint: string;
|
|
15
|
+
userinfo_endpoint: string;
|
|
16
|
+
jwks_uri: string;
|
|
17
|
+
[key: string]: unknown;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Fetch and cache OIDC configuration from the issuer's discovery endpoint.
|
|
21
|
+
*
|
|
22
|
+
* @param issuer - The OIDC issuer URL (e.g., https://auth.barndoor.ai or
|
|
23
|
+
* https://auth.trial.barndoordev.com/realms/barndoor-local)
|
|
24
|
+
* @returns OIDC configuration containing endpoints like token_endpoint, jwks_uri, etc.
|
|
25
|
+
*/
|
|
26
|
+
export declare function getOidcConfig(issuer: string): Promise<OidcConfig>;
|
|
27
|
+
/**
|
|
28
|
+
* Clear the OIDC config cache (useful for testing).
|
|
29
|
+
*/
|
|
30
|
+
export declare function clearOidcConfigCache(): void;
|
|
8
31
|
/**
|
|
9
32
|
* Set a custom logger for the token management module.
|
|
10
33
|
* @deprecated Use setLogger from the main logging module instead
|
|
@@ -62,11 +85,11 @@ export declare function getTokenStorage(): TokenStorage;
|
|
|
62
85
|
/**
|
|
63
86
|
* Verify JWT locally using JWKS.
|
|
64
87
|
* @param token - JWT token to verify
|
|
65
|
-
* @param
|
|
88
|
+
* @param issuer - OIDC issuer URL (e.g., https://auth.barndoor.ai)
|
|
66
89
|
* @param audience - Expected audience
|
|
67
90
|
* @returns Verification result
|
|
68
91
|
*/
|
|
69
|
-
export declare function verifyJWTLocal(token: string,
|
|
92
|
+
export declare function verifyJWTLocal(token: string, issuer: string, audience: string): Promise<JWTVerificationResult>;
|
|
70
93
|
/**
|
|
71
94
|
* Token manager that handles storage, validation, and refresh.
|
|
72
95
|
*/
|
|
@@ -96,7 +119,7 @@ export declare class TokenManager {
|
|
|
96
119
|
*/
|
|
97
120
|
private _validateOrRefresh;
|
|
98
121
|
/**
|
|
99
|
-
* Validate token remotely using
|
|
122
|
+
* Validate token remotely using userinfo endpoint (discovered via OIDC).
|
|
100
123
|
* @private
|
|
101
124
|
*/
|
|
102
125
|
private _isTokenValidRemote;
|
package/dist/auth/store.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/auth/store.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,EAAsB,MAAM,EAAE,MAAM,YAAY,CAAC;AASxD;;;GAGG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAGpD;AAqDD;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,oCAAoC;IACpC,YAAY,EAAE,MAAM,CAAC;IACrB,6BAA6B;IAC7B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,oCAAoC;IACpC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,uCAAuC;IACvC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kBAAkB;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,kCAAkC;IAClC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;GAEG;AACH,oBAAY,qBAAqB;IAC/B,KAAK,UAAU;IACf,OAAO,YAAY;IACnB,OAAO,YAAY;CACpB;
|
|
1
|
+
{"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/auth/store.ts"],"names":[],"mappings":"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"}
|
package/dist/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAQvD;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,sEAAsE;IACtE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,kDAAkD;IAClD,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,iCAAiC;IACjC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gCAAgC;IAChC,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAsBD;;GAEG;AACH,MAAM,WAAW,4BAA4B;IAC3C,6CAA6C;IAC7C,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,4BAA4B;IAC3C,8BAA8B;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,gCAAgC;IAChC,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;;GAUG;AACH,qBAAa,WAAW;IACtB,mCAAmC;IACnC,SAAgB,IAAI,EAAE,MAAM,CAAC;IAC7B,qBAAqB;IACrB,OAAO,CAAC,MAAM,CAAgB;IAC9B,2BAA2B;IAC3B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAa;IACnC,uCAAuC;IACvC,OAAO,CAAC,eAAe,CAAU;IACjC,sCAAsC;IACtC,OAAO,CAAC,OAAO,CAAU;IACzB,0CAA0C;IAC1C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAgC;IAExD;;;;OAIG;gBACS,UAAU,EAAE,MAAM,EAAE,OAAO,GAAE,kBAAuB;IA2BhE;;OAEG;IACH,IAAW,KAAK,IAAI,MAAM,CAOzB;IAED;;;OAGG;IACU,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAUvD;;;OAGG;IACH,OAAO,CAAC,YAAY;IAapB;;;OAGG;IACH,OAAO,CAAC,cAAc;IActB;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IAMxB;;;OAGG;YACW,IAAI;IAelB;;;OAGG;IACU,mBAAmB,IAAI,OAAO,CAAC,OAAO,CAAC;IAqCpD;;OAEG;IACU,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;IA4B9C;;;;OAIG;IACU,WAAW,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;IA0BpD;;;;OAIG;IACU,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAY/D;;;;;OAKG;IACU,kBAAkB,CAC7B,QAAQ,EAAE,MAAM,EAChB,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,4BAA4B,CAAC;IAqCxC;;;;OAIG;IACU,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAYnE;;;;;;;OAOG;IACU,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAsB9D;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAkBzB;;;OAGG;IACH,OAAO,CAAC,OAAO;IAKf;;OAEG;IACU,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAOnC;;OAEG;IACU,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAIpC;;;;OAIG;IACU,qBAAqB,CAChC,gBAAgB,EAAE,MAAM,EACxB,OAAO,GAAE,4BAAiC,GACzC,OAAO,CAAC,IAAI,CAAC;CA4EjB"}
|
package/dist/config.d.ts
CHANGED
|
@@ -3,8 +3,20 @@
|
|
|
3
3
|
*
|
|
4
4
|
* This module provides unified configuration that mirrors the Python SDK's
|
|
5
5
|
* configuration system, supporting environment-specific defaults and
|
|
6
|
-
* dynamic organization
|
|
6
|
+
* dynamic organization slug substitution.
|
|
7
7
|
*/
|
|
8
|
+
/**
|
|
9
|
+
* Baked-in auth configuration per environment.
|
|
10
|
+
* Users should NOT need to configure these - just set BARNDOOR_ENV.
|
|
11
|
+
*
|
|
12
|
+
* We have 6 environments: 3 for trial (Keycloak), 3 for enterprise (Auth0).
|
|
13
|
+
* Will consolidate in the future.
|
|
14
|
+
*/
|
|
15
|
+
export declare const AUTH_CONFIG: Record<string, {
|
|
16
|
+
issuer: string;
|
|
17
|
+
audience: string;
|
|
18
|
+
baseUrl: string;
|
|
19
|
+
}>;
|
|
8
20
|
/**
|
|
9
21
|
* Environment detection utilities
|
|
10
22
|
*
|
|
@@ -25,7 +37,9 @@ declare global {
|
|
|
25
37
|
* Configuration options for BarndoorConfig constructor.
|
|
26
38
|
*/
|
|
27
39
|
export interface BarndoorConfigOptions {
|
|
28
|
-
/**
|
|
40
|
+
/** OIDC issuer URL (e.g., https://auth.barndoor.ai) */
|
|
41
|
+
authIssuer?: string;
|
|
42
|
+
/** @deprecated Use authIssuer instead. Auth domain for backwards compatibility. */
|
|
29
43
|
authDomain?: string;
|
|
30
44
|
/** OAuth client ID */
|
|
31
45
|
clientId?: string;
|
|
@@ -33,10 +47,8 @@ export interface BarndoorConfigOptions {
|
|
|
33
47
|
clientSecret?: string;
|
|
34
48
|
/** API audience identifier */
|
|
35
49
|
apiAudience?: string;
|
|
36
|
-
/**
|
|
37
|
-
|
|
38
|
-
/** MCP base URL template */
|
|
39
|
-
mcpBaseUrl?: string;
|
|
50
|
+
/** Base URL template */
|
|
51
|
+
baseUrl?: string;
|
|
40
52
|
/** Environment name */
|
|
41
53
|
environment?: string;
|
|
42
54
|
/** Whether to prompt for login */
|
|
@@ -48,21 +60,19 @@ export interface BarndoorConfigOptions {
|
|
|
48
60
|
* Unified configuration for the Barndoor SDK.
|
|
49
61
|
*
|
|
50
62
|
* Mirrors the Python SDK's BarndoorConfig class with environment-specific
|
|
51
|
-
* defaults and support for organization
|
|
63
|
+
* defaults and support for organization slug templating.
|
|
52
64
|
*/
|
|
53
65
|
export declare class BarndoorConfig {
|
|
54
|
-
/**
|
|
55
|
-
|
|
66
|
+
/** OIDC issuer URL */
|
|
67
|
+
authIssuer: string;
|
|
56
68
|
/** OAuth client ID */
|
|
57
69
|
clientId: string;
|
|
58
70
|
/** OAuth client secret */
|
|
59
71
|
clientSecret: string;
|
|
60
72
|
/** API audience identifier */
|
|
61
73
|
apiAudience: string;
|
|
62
|
-
/**
|
|
63
|
-
|
|
64
|
-
/** MCP base URL template */
|
|
65
|
-
mcpBaseUrl: string;
|
|
74
|
+
/** Base URL template */
|
|
75
|
+
baseUrl: string;
|
|
66
76
|
/** Environment name */
|
|
67
77
|
environment: string;
|
|
68
78
|
/** Whether to prompt for login */
|
|
@@ -75,25 +85,25 @@ export declare class BarndoorConfig {
|
|
|
75
85
|
*/
|
|
76
86
|
constructor(options?: BarndoorConfigOptions);
|
|
77
87
|
/**
|
|
78
|
-
*
|
|
79
|
-
* @
|
|
88
|
+
* Extract domain from issuer URL for backwards compatibility.
|
|
89
|
+
* @deprecated Use authIssuer instead
|
|
80
90
|
*/
|
|
81
|
-
|
|
91
|
+
get authDomain(): string;
|
|
82
92
|
/**
|
|
83
93
|
* Get static configuration (without organization ID substitution).
|
|
84
94
|
* @returns Static configuration instance
|
|
85
95
|
*/
|
|
86
96
|
static getStaticConfig(): BarndoorConfig;
|
|
87
97
|
/**
|
|
88
|
-
* Get dynamic configuration with organization
|
|
89
|
-
* @param jwtToken - JWT token to extract organization
|
|
98
|
+
* Get dynamic configuration with organization slug substituted.
|
|
99
|
+
* @param jwtToken - JWT token to extract organization slug from
|
|
90
100
|
* @param options - Configuration options
|
|
91
101
|
* @returns Dynamic configuration instance
|
|
92
102
|
*/
|
|
93
103
|
static getDynamicConfig(jwtToken: string, options?: {
|
|
94
104
|
/** Whether to throw error for tokens without organization info */
|
|
95
105
|
requireOrganization?: boolean;
|
|
96
|
-
/** Fallback organization
|
|
106
|
+
/** Fallback organization slug to use if none found in token */
|
|
97
107
|
fallbackOrganizationId?: string;
|
|
98
108
|
}): BarndoorConfig;
|
|
99
109
|
/**
|
package/dist/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH;;;;;GAKG;AACH,eAAO,MAAM,SAAS,EAAE,OACiD,CAAC;AAC1E,eAAO,MAAM,MAAM,EAAE,OAIU,CAAC;AAEhC;;GAEG;AACH,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KAC9B;CACF;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH;;;;;;GAMG;AACH,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAuC7F,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,SAAS,EAAE,OACiD,CAAC;AAC1E,eAAO,MAAM,MAAM,EAAE,OAIU,CAAC;AAEhC;;GAEG;AACH,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KAC9B;CACF;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,uDAAuD;IACvD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,mFAAmF;IACnF,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,sBAAsB;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,0BAA0B;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,8BAA8B;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,wBAAwB;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,uBAAuB;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kCAAkC;IAClC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,iDAAiD;IACjD,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAuCD;;;;;GAKG;AACH,qBAAa,cAAc;IACzB,sBAAsB;IACf,UAAU,EAAE,MAAM,CAAC;IAC1B,sBAAsB;IACf,QAAQ,EAAE,MAAM,CAAC;IACxB,0BAA0B;IACnB,YAAY,EAAE,MAAM,CAAC;IAC5B,8BAA8B;IACvB,WAAW,EAAE,MAAM,CAAC;IAC3B,wBAAwB;IACjB,OAAO,EAAE,MAAM,CAAC;IACvB,uBAAuB;IAChB,WAAW,EAAE,MAAM,CAAC;IAC3B,kCAAkC;IAC3B,cAAc,EAAE,OAAO,CAAC;IAC/B,iDAAiD;IAC1C,cAAc,EAAE,OAAO,CAAC;IAE/B;;;OAGG;gBACS,OAAO,GAAE,qBAA0B;IAyC/C;;;OAGG;IACH,IAAW,UAAU,IAAI,MAAM,CAS9B;IAED;;;OAGG;WACW,eAAe,IAAI,cAAc;IAI/C;;;;;OAKG;WACW,gBAAgB,CAC5B,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE;QACP,kEAAkE;QAClE,mBAAmB,CAAC,EAAE,OAAO,CAAC;QAC9B,+DAA+D;QAC/D,sBAAsB,CAAC,EAAE,MAAM,CAAC;KAC5B,GACL,cAAc;IA4CjB;;;OAGG;IACI,QAAQ,IAAI,IAAI;CAaxB;AA+BD;;GAEG;AACH,UAAU,4BAA4B;IACpC,+BAA+B;IAC/B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,wCAAwC;IACxC,eAAe,EAAE,OAAO,CAAC;IACzB,yCAAyC;IACzC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AA0ED;;;GAGG;AACH,wBAAgB,eAAe,IAAI,cAAc,CAEhD;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE;IACR,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,sBAAsB,CAAC,EAAE,MAAM,CAAC;CACjC,GACA,cAAc,CAEhB;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,MAAM,GAAG,4BAA4B,CAErF;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAE7D"}
|
package/dist/index.d.ts
CHANGED
|
@@ -31,8 +31,9 @@ export { BarndoorSDK } from './client';
|
|
|
31
31
|
export { BarndoorError, AuthenticationError, TokenError, TokenExpiredError, TokenValidationError, ConnectionError, HTTPError, ServerNotFoundError, OAuthError, ConfigurationError, TimeoutError, } from './exceptions';
|
|
32
32
|
export { ServerSummary, ServerDetail, AgentToken } from './models';
|
|
33
33
|
export { loginInteractive, ensureServerConnected, makeMcpConnectionParams, makeMcpClient, } from './quickstart';
|
|
34
|
-
export { PKCEManager, startLocalCallbackServer, loadUserToken, saveUserToken, clearCachedToken, setTokenLogger, verifyJWTLocal, JWTVerificationResult, isTokenActive, isTokenActiveWithRefresh, validateToken, TokenManager, } from './auth';
|
|
35
|
-
export {
|
|
34
|
+
export { PKCEManager, startLocalCallbackServer, loadUserToken, saveUserToken, clearCachedToken, setTokenLogger, verifyJWTLocal, JWTVerificationResult, isTokenActive, isTokenActiveWithRefresh, validateToken, TokenManager, getOidcConfig, clearOidcConfigCache, } from './auth';
|
|
35
|
+
export type { OidcConfig } from './auth';
|
|
36
|
+
export { AUTH_CONFIG, BarndoorConfig, getStaticConfig, getDynamicConfig, checkTokenOrganization, hasOrganizationInfo, isBrowser, isNode, } from './config';
|
|
36
37
|
export { setLogger, getLogger, createScopedLogger, debug, info, warn, error } from './logging';
|
|
37
38
|
export type { Logger } from './logging';
|
|
38
39
|
export { version } from './version';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAGH,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAGvC,OAAO,EACL,aAAa,EACb,mBAAmB,EACnB,UAAU,EACV,iBAAiB,EACjB,oBAAoB,EACpB,eAAe,EACf,SAAS,EACT,mBAAmB,EACnB,UAAU,EACV,kBAAkB,EAClB,YAAY,GACb,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAGnE,OAAO,EACL,gBAAgB,EAChB,qBAAqB,EACrB,uBAAuB,EACvB,aAAa,GACd,MAAM,cAAc,CAAC;AAGtB,OAAO,EACL,WAAW,EACX,wBAAwB,EACxB,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,cAAc,EACd,cAAc,EACd,qBAAqB,EACrB,aAAa,EACb,wBAAwB,EACxB,aAAa,EACb,YAAY,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAGH,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAGvC,OAAO,EACL,aAAa,EACb,mBAAmB,EACnB,UAAU,EACV,iBAAiB,EACjB,oBAAoB,EACpB,eAAe,EACf,SAAS,EACT,mBAAmB,EACnB,UAAU,EACV,kBAAkB,EAClB,YAAY,GACb,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAGnE,OAAO,EACL,gBAAgB,EAChB,qBAAqB,EACrB,uBAAuB,EACvB,aAAa,GACd,MAAM,cAAc,CAAC;AAGtB,OAAO,EACL,WAAW,EACX,wBAAwB,EACxB,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,cAAc,EACd,cAAc,EACd,qBAAqB,EACrB,aAAa,EACb,wBAAwB,EACxB,aAAa,EACb,YAAY,EACZ,aAAa,EACb,oBAAoB,GACrB,MAAM,QAAQ,CAAC;AAChB,YAAY,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAGzC,OAAO,EACL,WAAW,EACX,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,sBAAsB,EACtB,mBAAmB,EACnB,SAAS,EACT,MAAM,GACP,MAAM,UAAU,CAAC;AAGlB,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,kBAAkB,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAC/F,YAAY,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAGxC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC"}
|