@schemavaults/auth-server-sdk 0.20.17 → 0.20.19

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.
@@ -0,0 +1,5 @@
1
+ import type { IJwtKeyManager } from "./IJwtKeyManager";
2
+ export interface ICacheableJwtKeyManager extends IJwtKeyManager {
3
+ invalidateJwksCache(audienceId: string): void;
4
+ }
5
+ export declare function isCacheableJwtKeyManager(manager: IJwtKeyManager): manager is ICacheableJwtKeyManager;
@@ -0,0 +1,5 @@
1
+ export function isCacheableJwtKeyManager(manager) {
2
+ return ("invalidateJwksCache" in manager &&
3
+ typeof manager.invalidateJwksCache === "function");
4
+ }
5
+ //# sourceMappingURL=ICacheableJwtKeyManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ICacheableJwtKeyManager.js","sourceRoot":"","sources":["../../src/JwtKeyManager/ICacheableJwtKeyManager.ts"],"names":[],"mappings":"AAMA,MAAM,UAAU,wBAAwB,CACtC,OAAuB;IAEvB,OAAO,CACL,qBAAqB,IAAI,OAAO;QAChC,OAAO,OAAO,CAAC,mBAAmB,KAAK,UAAU,CAClD,CAAC;AACJ,CAAC"}
@@ -1,14 +1,19 @@
1
- import type { IJwtKeyManager } from "../../JwtKeyManager/IJwtKeyManager";
1
+ import type { ICacheableJwtKeyManager } from "../../JwtKeyManager/ICacheableJwtKeyManager";
2
2
  import type { JWKS } from "@schemavaults/jwt";
3
3
  import { type ApiServerId } from "@schemavaults/app-definitions";
4
4
  export interface IRemoteJwtKeyManagerConstructorOpts {
5
5
  auth_server_uri?: string;
6
6
  debug?: boolean;
7
+ cache_ttl_ms?: number;
7
8
  }
8
- export declare class RemoteJwtKeyManager implements IJwtKeyManager {
9
+ export declare class RemoteJwtKeyManager implements ICacheableJwtKeyManager {
9
10
  private readonly auth_server_uri;
10
11
  private readonly debug;
12
+ private readonly cache_ttl_ms;
13
+ private static readonly jwksCache;
11
14
  constructor({ auth_server_uri, ...opts }: IRemoteJwtKeyManagerConstructorOpts);
15
+ private cacheKey;
16
+ invalidateJwksCache(audienceId: string): void;
12
17
  loadJwks(audienceId: ApiServerId): Promise<JWKS>;
13
18
  }
14
19
  export default RemoteJwtKeyManager;
@@ -2,23 +2,49 @@ import loadRemoteJwks from "./loadRemoteJwks";
2
2
  import { apiServerIdSchema, SCHEMAVAULTS_AUTH_APP_DEFINITION, } from "@schemavaults/app-definitions";
3
3
  import getSchemaVaultsAuthServerUri from "../../get-schemavaults-auth-server-uri";
4
4
  import loadJwksAccessPrivateKey from "../../env/loadJwksAccessPrivateKey";
5
+ const DEFAULT_CACHE_TTL_MS = 5 * 60 * 1000; // 5 minutes
5
6
  export class RemoteJwtKeyManager {
6
7
  auth_server_uri;
7
8
  debug;
9
+ cache_ttl_ms;
10
+ static jwksCache = new Map();
8
11
  constructor({ auth_server_uri = getSchemaVaultsAuthServerUri(), ...opts }) {
9
12
  this.auth_server_uri = auth_server_uri;
10
13
  this.debug = typeof opts.debug === "boolean" ? opts.debug : false;
14
+ this.cache_ttl_ms =
15
+ typeof opts.cache_ttl_ms === "number" && opts.cache_ttl_ms > 0
16
+ ? opts.cache_ttl_ms
17
+ : DEFAULT_CACHE_TTL_MS;
18
+ }
19
+ cacheKey(audienceId) {
20
+ return `${this.auth_server_uri}::${audienceId}`;
21
+ }
22
+ invalidateJwksCache(audienceId) {
23
+ const key = this.cacheKey(audienceId);
24
+ if (this.debug) {
25
+ console.log(`[RemoteJwtKeyManager] invalidateJwksCache(audience_id='${audienceId}', cacheKey='${key}')`);
26
+ }
27
+ RemoteJwtKeyManager.jwksCache.delete(key);
11
28
  }
12
29
  async loadJwks(audienceId) {
13
30
  if (!apiServerIdSchema.safeParse(audienceId).success) {
14
31
  throw new Error(`Invalid audience to load remote JWKS for: '${audienceId}'`);
15
32
  }
16
- if (this.debug) {
17
- console.log(`[RemoteJwtKeyManager] loadJwks(audience_id='${audienceId}')`);
18
- }
19
33
  if (audienceId === SCHEMAVAULTS_AUTH_APP_DEFINITION.app_id) {
20
34
  throw new Error(`Auth server doesn't need to load remote JWKS; it already has the keys.`);
21
35
  }
36
+ // Check static cache (shared across all instances)
37
+ const key = this.cacheKey(audienceId);
38
+ const cached = RemoteJwtKeyManager.jwksCache.get(key);
39
+ if (cached && Date.now() - cached.fetchedAt < this.cache_ttl_ms) {
40
+ if (this.debug) {
41
+ console.log(`[RemoteJwtKeyManager] loadJwks(audience_id='${audienceId}') — cache hit (cacheKey='${key}')`);
42
+ }
43
+ return cached.jwks;
44
+ }
45
+ if (this.debug) {
46
+ console.log(`[RemoteJwtKeyManager] loadJwks(audience_id='${audienceId}') — fetching from remote (cacheKey='${key}')`);
47
+ }
22
48
  let jwks_access_private_key;
23
49
  try {
24
50
  jwks_access_private_key = await loadJwksAccessPrivateKey(process.env);
@@ -27,12 +53,14 @@ export class RemoteJwtKeyManager {
27
53
  console.error(e);
28
54
  throw new TypeError("Failed to load JWKS access private key from environment variables!");
29
55
  }
30
- return await loadRemoteJwks({
56
+ const jwks = await loadRemoteJwks({
31
57
  auth_server_uri: this.auth_server_uri,
32
58
  api_server_id: audienceId,
33
59
  jwks_access_private_key,
34
60
  debug: this.debug,
35
61
  });
62
+ RemoteJwtKeyManager.jwksCache.set(key, { jwks, fetchedAt: Date.now() });
63
+ return jwks;
36
64
  }
37
65
  }
38
66
  export default RemoteJwtKeyManager;
@@ -1 +1 @@
1
- {"version":3,"file":"RemoteJwtKeyManager.js","sourceRoot":"","sources":["../../../src/JwtKeyManager/RemoteJwtKeyManager/RemoteJwtKeyManager.ts"],"names":[],"mappings":"AAEA,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAEL,iBAAiB,EACjB,gCAAgC,GACjC,MAAM,+BAA+B,CAAC;AACvC,OAAO,4BAA4B,MAAM,oCAAoC,CAAC;AAC9E,OAAO,wBAAwB,MAAM,gCAAgC,CAAC;AAOtE,MAAM,OAAO,mBAAmB;IACb,eAAe,CAAS;IACxB,KAAK,CAAU;IAEhC,YAAmB,EACjB,eAAe,GAAG,4BAA4B,EAAE,EAChD,GAAG,IAAI,EAC6B;QACpC,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QACvC,IAAI,CAAC,KAAK,GAAG,OAAO,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC;IACpE,CAAC;IAEM,KAAK,CAAC,QAAQ,CAAC,UAAuB;QAC3C,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,OAAO,EAAE,CAAC;YACrD,MAAM,IAAI,KAAK,CACb,8CAA8C,UAAU,GAAG,CAC5D,CAAC;QACJ,CAAC;QAED,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,GAAG,CACT,+CAA+C,UAAU,IAAI,CAC9D,CAAC;QACJ,CAAC;QAED,IAAI,UAAU,KAAK,gCAAgC,CAAC,MAAM,EAAE,CAAC;YAC3D,MAAM,IAAI,KAAK,CACb,wEAAwE,CACzE,CAAC;QACJ,CAAC;QAED,IAAI,uBAAkC,CAAC;QACvC,IAAI,CAAC;YACH,uBAAuB,GAAG,MAAM,wBAAwB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACxE,CAAC;QAAC,OAAO,CAAU,EAAE,CAAC;YACpB,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACjB,MAAM,IAAI,SAAS,CACjB,oEAAoE,CACrE,CAAC;QACJ,CAAC;QAED,OAAO,MAAM,cAAc,CAAC;YAC1B,eAAe,EAAE,IAAI,CAAC,eAAe;YACrC,aAAa,EAAE,UAAU;YACzB,uBAAuB;YACvB,KAAK,EAAE,IAAI,CAAC,KAAK;SAClB,CAAC,CAAC;IACL,CAAC;CACF;AAED,eAAe,mBAAmB,CAAC"}
1
+ {"version":3,"file":"RemoteJwtKeyManager.js","sourceRoot":"","sources":["../../../src/JwtKeyManager/RemoteJwtKeyManager/RemoteJwtKeyManager.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,8 @@
1
1
  export { AbstractJsonWebKeySetsStore } from "./JsonWebKeySetsStore";
2
2
  export type { IJsonWebKeySetsStore } from "./JsonWebKeySetsStore";
3
3
  export type { IJwtKeyManager } from "./IJwtKeyManager";
4
+ export type { ICacheableJwtKeyManager } from "./ICacheableJwtKeyManager";
5
+ export { isCacheableJwtKeyManager } from "./ICacheableJwtKeyManager";
4
6
  export { DatabaseConnectedJwtKeyManager } from "./DatabaseConnectedJwtKeyManager";
5
7
  export { RemoteJwtKeyManager } from "./RemoteJwtKeyManager";
6
8
  export { loadJwtDecodingKeys, type IDecodeAuthTokenKeys, } from "./loadJwtDecodingKeys";
@@ -1,4 +1,5 @@
1
1
  export { AbstractJsonWebKeySetsStore } from "./JsonWebKeySetsStore";
2
+ export { isCacheableJwtKeyManager } from "./ICacheableJwtKeyManager";
2
3
  export { DatabaseConnectedJwtKeyManager } from "./DatabaseConnectedJwtKeyManager";
3
4
  export { RemoteJwtKeyManager } from "./RemoteJwtKeyManager";
4
5
  export { loadJwtDecodingKeys, } from "./loadJwtDecodingKeys";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/JwtKeyManager/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,uBAAuB,CAAC;AAKpE,OAAO,EAAE,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AAClF,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,OAAO,EACL,mBAAmB,GAEpB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,8BAA8B,EAAE,MAAM,kCAAkC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/JwtKeyManager/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,uBAAuB,CAAC;AAKpE,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AAErE,OAAO,EAAE,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AAClF,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,OAAO,EACL,mBAAmB,GAEpB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,8BAA8B,EAAE,MAAM,kCAAkC,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import isValidUuid from "../is-valid-uuid";
2
+ import { isCacheableJwtKeyManager } from "./ICacheableJwtKeyManager";
2
3
  import { apiServerIdSchema, } from "@schemavaults/app-definitions";
3
4
  import { importAsymmetricJWK } from "@schemavaults/jwt";
4
5
  import { JwtDecodingKeysetNotFoundError } from "./JwtDecodingKeysetNotFoundError";
@@ -95,8 +96,22 @@ export async function loadJwtDecodingKeys({ keys_manager, keyset_id, audience_id
95
96
  if (jwks.keys.length === 0) {
96
97
  throw new JwtDecodingKeysetNotFoundError(keyset_id, "Received JWKS from JwtKeyManager but it does not appear to include any keys.");
97
98
  }
98
- const jwt_decoding_keys = await loadJwtDecodingKeysFromJwks({ keyset_id, jwks }, debug);
99
- return jwt_decoding_keys;
99
+ try {
100
+ return await loadJwtDecodingKeysFromJwks({ keyset_id, jwks }, debug);
101
+ }
102
+ catch (e) {
103
+ // On keyset-not-found, invalidate cache and retry once with fresh JWKS
104
+ if (e instanceof JwtDecodingKeysetNotFoundError &&
105
+ isCacheableJwtKeyManager(keys_manager)) {
106
+ if (debug) {
107
+ console.log(`[loadJwtDecodingKeys] Keyset '${keyset_id}' not found in cached JWKS — invalidating cache and retrying`);
108
+ }
109
+ keys_manager.invalidateJwksCache(audience_id);
110
+ const freshJwks = await keys_manager.loadJwks(audience_id);
111
+ return await loadJwtDecodingKeysFromJwks({ keyset_id, jwks: freshJwks }, debug);
112
+ }
113
+ throw e;
114
+ }
100
115
  }
101
116
  export default loadJwtDecodingKeys;
102
117
  //# sourceMappingURL=loadJwtDecodingKeys.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"loadJwtDecodingKeys.js","sourceRoot":"","sources":["../../src/JwtKeyManager/loadJwtDecodingKeys.ts"],"names":[],"mappings":"AAAA,OAAO,WAAW,MAAM,iBAAiB,CAAC;AAE1C,OAAO,EAEL,iBAAiB,GAClB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAa,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AAelF,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAC/C,EACE,SAAS,EACT,IAAI,GAIL,EACD,QAAiB,KAAK;IAEtB,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,8BAA8B,CACtC,SAAS,EACT,wEAAwE,CACzE,CAAC;IACJ,CAAC;IAED,IAAI,KAAK,EAAE,CAAC;QACV,OAAO,CAAC,GAAG,CACT,0CAA0C,SAAS,wBAAwB,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAChG,CAAC;IACJ,CAAC;IAED,oDAAoD;IACpD,IAAI,gBAAgB,GAA0B,SAAS,CAAC;IACxD,IAAI,cAAc,GAA0B,SAAS,CAAC;IACtD,SAAS,oBAAoB;QAC3B,OAAO,gBAAgB,IAAI,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;IAC3D,CAAC;IACD,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QAC5B,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC;QACpB,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;YAC5B,MAAM,IAAI,SAAS,CAAC,4CAA4C,CAAC,CAAC;QACpE,CAAC;QACD,IAAI,GAAG,KAAK,GAAG,SAAS,eAAe,EAAE,CAAC;YACxC,gBAAgB,GAAG,MAAM,mBAAmB,CAAC,GAAG,CAAC,CAAC;YAClD,IAAI,oBAAoB,EAAE,EAAE,CAAC;gBAC3B,MAAM,CAAC,qCAAqC;YAC9C,CAAC;iBAAM,CAAC;gBACN,SAAS;YACX,CAAC;QACH,CAAC;aAAM,IAAI,GAAG,KAAK,GAAG,SAAS,aAAa,EAAE,CAAC;YAC7C,cAAc,GAAG,MAAM,mBAAmB,CAAC,GAAG,CAAC,CAAC;YAChD,IAAI,oBAAoB,EAAE,EAAE,CAAC;gBAC3B,MAAM,CAAC,qCAAqC;YAC9C,CAAC;iBAAM,CAAC;gBACN,SAAS;YACX,CAAC;QACH,CAAC;aAAM,CAAC;YACN,SAAS,CAAC,cAAc;QAC1B,CAAC;IACH,CAAC;IAED,MAAM,yBAAyB,GAAY,oBAAoB,EAAE,CAAC;IAClE,IAAI,yBAAyB,IAAI,gBAAgB,IAAI,cAAc,EAAE,CAAC;QACpE,OAAO;YACL,SAAS;YACT,gBAAgB;YAChB,cAAc;SACgB,CAAC;IACnC,CAAC;IAED,4DAA4D;IAE5D,MAAM,gBAAgB,GAAW,IAAI,CAAC,IAAI;SACvC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC;SACxB,IAAI,CAAC,IAAI,CAAC,CAAC;IACd,IAAI,CAAC,gBAAgB,IAAI,CAAC,cAAc,EAAE,CAAC;QACzC,OAAO,CAAC,IAAI,CACV,6DAA6D,SAAS,yBAAyB,EAC/F,gBAAgB,CACjB,CAAC;QACF,MAAM,IAAI,8BAA8B,CACtC,SAAS,EACT,6DAA6D,SAAS,GAAG,CAC1E,CAAC;IACJ,CAAC;SAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC7B,OAAO,CAAC,IAAI,CACV,wCAAwC,SAAS,yBAAyB,EAC1E,gBAAgB,CACjB,CAAC;QACF,MAAM,IAAI,8BAA8B,CACtC,SAAS,EACT,wCAAwC,SAAS,GAAG,CACrD,CAAC;IACJ,CAAC;SAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAC3B,OAAO,CAAC,IAAI,CACV,sCAAsC,SAAS,yBAAyB,EACxE,gBAAgB,CACjB,CAAC;QACF,MAAM,IAAI,8BAA8B,CACtC,SAAS,EACT,sCAAsC,SAAS,GAAG,CACnD,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;IAC1E,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,EACxC,YAAY,EACZ,SAAS,EACT,WAAW,EACX,GAAG,IAAI,EACqB;IAC5B,MAAM,KAAK,GAAY,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC;IAE3C,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,OAAO,EAAE,CAAC;QACtD,MAAM,IAAI,SAAS,CACjB,uDAAuD,WAAW,GAAG,CACtE,CAAC;IACJ,CAAC;SAAM,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE,CAAC;QACnC,MAAM,IAAI,SAAS,CAAC,0CAA0C,CAAC,CAAC;IAClE,CAAC;IAED,IAAI,IAAU,CAAC;IACf,IAAI,CAAC;QACH,IAAI,GAAG,MAAM,YAAY,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IAClD,CAAC;IAAC,OAAO,CAAU,EAAE,CAAC;QACpB,OAAO,CAAC,KAAK,CAAC,wCAAwC,EAAE,CAAC,CAAC,CAAC;QAC3D,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;IAC3D,CAAC;IAED,IACE,CAAC,IAAI;QACL,OAAO,IAAI,KAAK,QAAQ;QACxB,CAAC,CAAC,MAAM,IAAI,IAAI,CAAC;QACjB,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EACzB,CAAC;QACD,MAAM,IAAI,SAAS,CAAC,sDAAsD,CAAC,CAAC;IAC9E,CAAC;IAED,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,8BAA8B,CACtC,SAAS,EACT,8EAA8E,CAC/E,CAAC;IACJ,CAAC;IAED,MAAM,iBAAiB,GACrB,MAAM,2BAA2B,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,KAAK,CAAC,CAAC;IAEhE,OAAO,iBAAiB,CAAC;AAC3B,CAAC;AAED,eAAe,mBAAmB,CAAC"}
1
+ {"version":3,"file":"loadJwtDecodingKeys.js","sourceRoot":"","sources":["../../src/JwtKeyManager/loadJwtDecodingKeys.ts"],"names":[],"mappings":"AAAA,OAAO,WAAW,MAAM,iBAAiB,CAAC;AAE1C,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,EAEL,iBAAiB,GAClB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAa,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AAelF,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAC/C,EACE,SAAS,EACT,IAAI,GAIL,EACD,QAAiB,KAAK;IAEtB,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,8BAA8B,CACtC,SAAS,EACT,wEAAwE,CACzE,CAAC;IACJ,CAAC;IAED,IAAI,KAAK,EAAE,CAAC;QACV,OAAO,CAAC,GAAG,CACT,0CAA0C,SAAS,wBAAwB,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAChG,CAAC;IACJ,CAAC;IAED,oDAAoD;IACpD,IAAI,gBAAgB,GAA0B,SAAS,CAAC;IACxD,IAAI,cAAc,GAA0B,SAAS,CAAC;IACtD,SAAS,oBAAoB;QAC3B,OAAO,gBAAgB,IAAI,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;IAC3D,CAAC;IACD,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QAC5B,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC;QACpB,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;YAC5B,MAAM,IAAI,SAAS,CAAC,4CAA4C,CAAC,CAAC;QACpE,CAAC;QACD,IAAI,GAAG,KAAK,GAAG,SAAS,eAAe,EAAE,CAAC;YACxC,gBAAgB,GAAG,MAAM,mBAAmB,CAAC,GAAG,CAAC,CAAC;YAClD,IAAI,oBAAoB,EAAE,EAAE,CAAC;gBAC3B,MAAM,CAAC,qCAAqC;YAC9C,CAAC;iBAAM,CAAC;gBACN,SAAS;YACX,CAAC;QACH,CAAC;aAAM,IAAI,GAAG,KAAK,GAAG,SAAS,aAAa,EAAE,CAAC;YAC7C,cAAc,GAAG,MAAM,mBAAmB,CAAC,GAAG,CAAC,CAAC;YAChD,IAAI,oBAAoB,EAAE,EAAE,CAAC;gBAC3B,MAAM,CAAC,qCAAqC;YAC9C,CAAC;iBAAM,CAAC;gBACN,SAAS;YACX,CAAC;QACH,CAAC;aAAM,CAAC;YACN,SAAS,CAAC,cAAc;QAC1B,CAAC;IACH,CAAC;IAED,MAAM,yBAAyB,GAAY,oBAAoB,EAAE,CAAC;IAClE,IAAI,yBAAyB,IAAI,gBAAgB,IAAI,cAAc,EAAE,CAAC;QACpE,OAAO;YACL,SAAS;YACT,gBAAgB;YAChB,cAAc;SACgB,CAAC;IACnC,CAAC;IAED,4DAA4D;IAE5D,MAAM,gBAAgB,GAAW,IAAI,CAAC,IAAI;SACvC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC;SACxB,IAAI,CAAC,IAAI,CAAC,CAAC;IACd,IAAI,CAAC,gBAAgB,IAAI,CAAC,cAAc,EAAE,CAAC;QACzC,OAAO,CAAC,IAAI,CACV,6DAA6D,SAAS,yBAAyB,EAC/F,gBAAgB,CACjB,CAAC;QACF,MAAM,IAAI,8BAA8B,CACtC,SAAS,EACT,6DAA6D,SAAS,GAAG,CAC1E,CAAC;IACJ,CAAC;SAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC7B,OAAO,CAAC,IAAI,CACV,wCAAwC,SAAS,yBAAyB,EAC1E,gBAAgB,CACjB,CAAC;QACF,MAAM,IAAI,8BAA8B,CACtC,SAAS,EACT,wCAAwC,SAAS,GAAG,CACrD,CAAC;IACJ,CAAC;SAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAC3B,OAAO,CAAC,IAAI,CACV,sCAAsC,SAAS,yBAAyB,EACxE,gBAAgB,CACjB,CAAC;QACF,MAAM,IAAI,8BAA8B,CACtC,SAAS,EACT,sCAAsC,SAAS,GAAG,CACnD,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;IAC1E,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,EACxC,YAAY,EACZ,SAAS,EACT,WAAW,EACX,GAAG,IAAI,EACqB;IAC5B,MAAM,KAAK,GAAY,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC;IAE3C,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,OAAO,EAAE,CAAC;QACtD,MAAM,IAAI,SAAS,CACjB,uDAAuD,WAAW,GAAG,CACtE,CAAC;IACJ,CAAC;SAAM,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE,CAAC;QACnC,MAAM,IAAI,SAAS,CAAC,0CAA0C,CAAC,CAAC;IAClE,CAAC;IAED,IAAI,IAAU,CAAC;IACf,IAAI,CAAC;QACH,IAAI,GAAG,MAAM,YAAY,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IAClD,CAAC;IAAC,OAAO,CAAU,EAAE,CAAC;QACpB,OAAO,CAAC,KAAK,CAAC,wCAAwC,EAAE,CAAC,CAAC,CAAC;QAC3D,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;IAC3D,CAAC;IAED,IACE,CAAC,IAAI;QACL,OAAO,IAAI,KAAK,QAAQ;QACxB,CAAC,CAAC,MAAM,IAAI,IAAI,CAAC;QACjB,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EACzB,CAAC;QACD,MAAM,IAAI,SAAS,CAAC,sDAAsD,CAAC,CAAC;IAC9E,CAAC;IAED,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,8BAA8B,CACtC,SAAS,EACT,8EAA8E,CAC/E,CAAC;IACJ,CAAC;IAED,IAAI,CAAC;QACH,OAAO,MAAM,2BAA2B,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,KAAK,CAAC,CAAC;IACvE,CAAC;IAAC,OAAO,CAAU,EAAE,CAAC;QACpB,uEAAuE;QACvE,IACE,CAAC,YAAY,8BAA8B;YAC3C,wBAAwB,CAAC,YAAY,CAAC,EACtC,CAAC;YACD,IAAI,KAAK,EAAE,CAAC;gBACV,OAAO,CAAC,GAAG,CACT,iCAAiC,SAAS,8DAA8D,CACzG,CAAC;YACJ,CAAC;YACD,YAAY,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC;YAC9C,MAAM,SAAS,GAAG,MAAM,YAAY,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;YAC3D,OAAO,MAAM,2BAA2B,CACtC,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,EAC9B,KAAK,CACN,CAAC;QACJ,CAAC;QACD,MAAM,CAAC,CAAC;IACV,CAAC;AACH,CAAC;AAED,eAAe,mBAAmB,CAAC"}
package/dist/cli.cjs CHANGED
@@ -66,7 +66,7 @@ var init_resolve_codegen_templates_directory = __esm({
66
66
 
67
67
  // src/NextjsAppDirectoryPlugin/codegen-marker.ts
68
68
  function getCodegenMarkerComment() {
69
- const version = true ? "0.20.17" : "unknown";
69
+ const version = true ? "0.20.19" : "unknown";
70
70
  return `${CODEGEN_MARKER_PREFIX}${version}`;
71
71
  }
72
72
  function hasCodegenMarker(firstLine) {
@@ -248,7 +248,7 @@ async function main() {
248
248
  return;
249
249
  }
250
250
  if (args.includes("--version") || args.includes("-v")) {
251
- console.log(`${PACKAGE_NAME}@${"0.20.17"}`);
251
+ console.log(`${PACKAGE_NAME}@${"0.20.19"}`);
252
252
  return;
253
253
  }
254
254
  const command = args.find((arg) => !arg.startsWith("-")) ?? "codegen";
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@schemavaults/auth-server-sdk",
3
3
  "description": "TypeScript SDK for building authenticated endpoints/middlewares for the Auth Server and Resource Servers",
4
- "version": "0.20.17",
4
+ "version": "0.20.19",
5
5
  "license": "UNLICENSED",
6
6
  "private": false,
7
7
  "repository": {