@naylence/runtime 0.3.17 → 0.3.18

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.
@@ -515,12 +515,12 @@ async function ensureRuntimeFactoriesRegistered(registry = factory.Registry) {
515
515
  }
516
516
 
517
517
  // This file is auto-generated during build - do not edit manually
518
- // Generated from package.json version: 0.3.17
518
+ // Generated from package.json version: 0.3.18
519
519
  /**
520
520
  * The package version, injected at build time.
521
521
  * @internal
522
522
  */
523
- const VERSION = '0.3.17';
523
+ const VERSION = '0.3.18';
524
524
 
525
525
  let initialized = false;
526
526
  const runtimePlugin = {
@@ -28228,6 +28228,7 @@ const ENV_VAR_DEFAULT_ENCRYPTION_LEVEL = 'FAME_DEFAULT_ENCRYPTION_LEVEL';
28228
28228
  const ENV_VAR_HMAC_SECRET = 'FAME_HMAC_SECRET';
28229
28229
  const ENV_VAR_JWT_REVERSE_AUTH_TRUSTED_ISSUER = 'FAME_JWT_REVERSE_AUTH_TRUSTED_ISSUER';
28230
28230
  const ENV_VAR_JWT_REVERSE_AUTH_AUDIENCE = 'FAME_JWT_REVERSE_AUTH_AUDIENCE';
28231
+ const ENV_VAR_ENFORCE_TOKEN_SUBJECT_NODE_IDENTITY = 'FAME_ENFORCE_TOKEN_SUBJECT_NODE_IDENTITY';
28231
28232
  const PROFILE_NAME_STRICT_OVERLAY = 'strict-overlay';
28232
28233
  const PROFILE_NAME_OVERLAY = 'overlay';
28233
28234
  const PROFILE_NAME_OVERLAY_CALLBACK = 'overlay-callback';
@@ -28463,6 +28464,7 @@ const GATED_PROFILE = {
28463
28464
  max_ttl_sec: 86400,
28464
28465
  algorithm: factory.Expressions.env(ENV_VAR_JWT_ALGORITHM, 'RS256'),
28465
28466
  audience: factory.Expressions.env(ENV_VAR_JWT_AUDIENCE$1),
28467
+ enforce_token_subject_node_identity: factory.Expressions.env(ENV_VAR_ENFORCE_TOKEN_SUBJECT_NODE_IDENTITY, 'false'),
28466
28468
  },
28467
28469
  };
28468
28470
  const GATED_CALLBACK_PROFILE = {
@@ -28669,6 +28671,7 @@ function deepClone$3(value) {
28669
28671
  var nodeSecurityProfileFactory = /*#__PURE__*/Object.freeze({
28670
28672
  __proto__: null,
28671
28673
  ENV_VAR_DEFAULT_ENCRYPTION_LEVEL: ENV_VAR_DEFAULT_ENCRYPTION_LEVEL,
28674
+ ENV_VAR_ENFORCE_TOKEN_SUBJECT_NODE_IDENTITY: ENV_VAR_ENFORCE_TOKEN_SUBJECT_NODE_IDENTITY,
28672
28675
  ENV_VAR_HMAC_SECRET: ENV_VAR_HMAC_SECRET,
28673
28676
  ENV_VAR_JWKS_URL: ENV_VAR_JWKS_URL,
28674
28677
  ENV_VAR_JWT_ALGORITHM: ENV_VAR_JWT_ALGORITHM,
@@ -34778,11 +34781,8 @@ function normalizeConfig$c(config) {
34778
34781
  : typeof source.reverse_auth_ttl_sec === 'number'
34779
34782
  ? source.reverse_auth_ttl_sec
34780
34783
  : DEFAULT_REVERSE_AUTH_TTL_SEC;
34781
- const enforceTokenSubjectNodeIdentity = typeof source.enforceTokenSubjectNodeIdentity === 'boolean'
34782
- ? source.enforceTokenSubjectNodeIdentity
34783
- : typeof source.enforce_token_subject_node_identity === 'boolean'
34784
- ? source.enforce_token_subject_node_identity
34785
- : false;
34784
+ const enforceTokenSubjectNodeIdentity = normalizeBooleanOption(source.enforceTokenSubjectNodeIdentity ??
34785
+ source.enforce_token_subject_node_identity, false);
34786
34786
  const tokenVerifierConfigInput = source.tokenVerifierConfig ?? source.token_verifier_config ?? null;
34787
34787
  const tokenVerifierConfig = normalizeTokenVerifierConfig({
34788
34788
  config: tokenVerifierConfigInput,
@@ -34822,6 +34822,21 @@ function normalizeTokenVerifierConfig({ config, issuer, jwksUrl, algorithm, }) {
34822
34822
  };
34823
34823
  return defaultConfig;
34824
34824
  }
34825
+ function normalizeBooleanOption(value, defaultValue) {
34826
+ if (typeof value === 'boolean') {
34827
+ return value;
34828
+ }
34829
+ if (typeof value === 'string') {
34830
+ const lower = value.toLowerCase().trim();
34831
+ if (lower === 'true' || lower === '1' || lower === 'yes') {
34832
+ return true;
34833
+ }
34834
+ if (lower === 'false' || lower === '0' || lower === 'no') {
34835
+ return false;
34836
+ }
34837
+ }
34838
+ return defaultValue;
34839
+ }
34825
34840
 
34826
34841
  var oauth2AuthorizerFactory = /*#__PURE__*/Object.freeze({
34827
34842
  __proto__: null,
@@ -513,12 +513,12 @@ async function ensureRuntimeFactoriesRegistered(registry = Registry) {
513
513
  }
514
514
 
515
515
  // This file is auto-generated during build - do not edit manually
516
- // Generated from package.json version: 0.3.17
516
+ // Generated from package.json version: 0.3.18
517
517
  /**
518
518
  * The package version, injected at build time.
519
519
  * @internal
520
520
  */
521
- const VERSION = '0.3.17';
521
+ const VERSION = '0.3.18';
522
522
 
523
523
  let initialized = false;
524
524
  const runtimePlugin = {
@@ -28226,6 +28226,7 @@ const ENV_VAR_DEFAULT_ENCRYPTION_LEVEL = 'FAME_DEFAULT_ENCRYPTION_LEVEL';
28226
28226
  const ENV_VAR_HMAC_SECRET = 'FAME_HMAC_SECRET';
28227
28227
  const ENV_VAR_JWT_REVERSE_AUTH_TRUSTED_ISSUER = 'FAME_JWT_REVERSE_AUTH_TRUSTED_ISSUER';
28228
28228
  const ENV_VAR_JWT_REVERSE_AUTH_AUDIENCE = 'FAME_JWT_REVERSE_AUTH_AUDIENCE';
28229
+ const ENV_VAR_ENFORCE_TOKEN_SUBJECT_NODE_IDENTITY = 'FAME_ENFORCE_TOKEN_SUBJECT_NODE_IDENTITY';
28229
28230
  const PROFILE_NAME_STRICT_OVERLAY = 'strict-overlay';
28230
28231
  const PROFILE_NAME_OVERLAY = 'overlay';
28231
28232
  const PROFILE_NAME_OVERLAY_CALLBACK = 'overlay-callback';
@@ -28461,6 +28462,7 @@ const GATED_PROFILE = {
28461
28462
  max_ttl_sec: 86400,
28462
28463
  algorithm: Expressions.env(ENV_VAR_JWT_ALGORITHM, 'RS256'),
28463
28464
  audience: Expressions.env(ENV_VAR_JWT_AUDIENCE$1),
28465
+ enforce_token_subject_node_identity: Expressions.env(ENV_VAR_ENFORCE_TOKEN_SUBJECT_NODE_IDENTITY, 'false'),
28464
28466
  },
28465
28467
  };
28466
28468
  const GATED_CALLBACK_PROFILE = {
@@ -28667,6 +28669,7 @@ function deepClone$3(value) {
28667
28669
  var nodeSecurityProfileFactory = /*#__PURE__*/Object.freeze({
28668
28670
  __proto__: null,
28669
28671
  ENV_VAR_DEFAULT_ENCRYPTION_LEVEL: ENV_VAR_DEFAULT_ENCRYPTION_LEVEL,
28672
+ ENV_VAR_ENFORCE_TOKEN_SUBJECT_NODE_IDENTITY: ENV_VAR_ENFORCE_TOKEN_SUBJECT_NODE_IDENTITY,
28670
28673
  ENV_VAR_HMAC_SECRET: ENV_VAR_HMAC_SECRET,
28671
28674
  ENV_VAR_JWKS_URL: ENV_VAR_JWKS_URL,
28672
28675
  ENV_VAR_JWT_ALGORITHM: ENV_VAR_JWT_ALGORITHM,
@@ -34776,11 +34779,8 @@ function normalizeConfig$c(config) {
34776
34779
  : typeof source.reverse_auth_ttl_sec === 'number'
34777
34780
  ? source.reverse_auth_ttl_sec
34778
34781
  : DEFAULT_REVERSE_AUTH_TTL_SEC;
34779
- const enforceTokenSubjectNodeIdentity = typeof source.enforceTokenSubjectNodeIdentity === 'boolean'
34780
- ? source.enforceTokenSubjectNodeIdentity
34781
- : typeof source.enforce_token_subject_node_identity === 'boolean'
34782
- ? source.enforce_token_subject_node_identity
34783
- : false;
34782
+ const enforceTokenSubjectNodeIdentity = normalizeBooleanOption(source.enforceTokenSubjectNodeIdentity ??
34783
+ source.enforce_token_subject_node_identity, false);
34784
34784
  const tokenVerifierConfigInput = source.tokenVerifierConfig ?? source.token_verifier_config ?? null;
34785
34785
  const tokenVerifierConfig = normalizeTokenVerifierConfig({
34786
34786
  config: tokenVerifierConfigInput,
@@ -34820,6 +34820,21 @@ function normalizeTokenVerifierConfig({ config, issuer, jwksUrl, algorithm, }) {
34820
34820
  };
34821
34821
  return defaultConfig;
34822
34822
  }
34823
+ function normalizeBooleanOption(value, defaultValue) {
34824
+ if (typeof value === 'boolean') {
34825
+ return value;
34826
+ }
34827
+ if (typeof value === 'string') {
34828
+ const lower = value.toLowerCase().trim();
34829
+ if (lower === 'true' || lower === '1' || lower === 'yes') {
34830
+ return true;
34831
+ }
34832
+ if (lower === 'false' || lower === '0' || lower === 'no') {
34833
+ return false;
34834
+ }
34835
+ }
34836
+ return defaultValue;
34837
+ }
34823
34838
 
34824
34839
  var oauth2AuthorizerFactory = /*#__PURE__*/Object.freeze({
34825
34840
  __proto__: null,
@@ -155,11 +155,8 @@ function normalizeConfig(config) {
155
155
  : typeof source.reverse_auth_ttl_sec === 'number'
156
156
  ? source.reverse_auth_ttl_sec
157
157
  : ttl_constants_js_1.DEFAULT_REVERSE_AUTH_TTL_SEC;
158
- const enforceTokenSubjectNodeIdentity = typeof source.enforceTokenSubjectNodeIdentity === 'boolean'
159
- ? source.enforceTokenSubjectNodeIdentity
160
- : typeof source.enforce_token_subject_node_identity === 'boolean'
161
- ? source.enforce_token_subject_node_identity
162
- : false;
158
+ const enforceTokenSubjectNodeIdentity = normalizeBooleanOption(source.enforceTokenSubjectNodeIdentity ??
159
+ source.enforce_token_subject_node_identity, false);
163
160
  const tokenVerifierConfigInput = source.tokenVerifierConfig ?? source.token_verifier_config ?? null;
164
161
  const tokenVerifierConfig = normalizeTokenVerifierConfig({
165
162
  config: tokenVerifierConfigInput,
@@ -199,4 +196,19 @@ function normalizeTokenVerifierConfig({ config, issuer, jwksUrl, algorithm, }) {
199
196
  };
200
197
  return defaultConfig;
201
198
  }
199
+ function normalizeBooleanOption(value, defaultValue) {
200
+ if (typeof value === 'boolean') {
201
+ return value;
202
+ }
203
+ if (typeof value === 'string') {
204
+ const lower = value.toLowerCase().trim();
205
+ if (lower === 'true' || lower === '1' || lower === 'yes') {
206
+ return true;
207
+ }
208
+ if (lower === 'false' || lower === '0' || lower === 'no') {
209
+ return false;
210
+ }
211
+ }
212
+ return defaultValue;
213
+ }
202
214
  exports.default = OAuth2AuthorizerFactory;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.NodeSecurityProfileFactory = exports.FACTORY_META = exports.PROFILE_NAME_OPEN = exports.PROFILE_NAME_GATED_CALLBACK = exports.PROFILE_NAME_GATED = exports.PROFILE_NAME_OVERLAY_CALLBACK = exports.PROFILE_NAME_OVERLAY = exports.PROFILE_NAME_STRICT_OVERLAY = exports.ENV_VAR_JWT_REVERSE_AUTH_AUDIENCE = exports.ENV_VAR_JWT_REVERSE_AUTH_TRUSTED_ISSUER = exports.ENV_VAR_HMAC_SECRET = exports.ENV_VAR_DEFAULT_ENCRYPTION_LEVEL = exports.ENV_VAR_JWKS_URL = exports.ENV_VAR_JWT_AUDIENCE = exports.ENV_VAR_JWT_ALGORITHM = exports.ENV_VAR_JWT_TRUSTED_ISSUER = void 0;
3
+ exports.NodeSecurityProfileFactory = exports.FACTORY_META = exports.PROFILE_NAME_OPEN = exports.PROFILE_NAME_GATED_CALLBACK = exports.PROFILE_NAME_GATED = exports.PROFILE_NAME_OVERLAY_CALLBACK = exports.PROFILE_NAME_OVERLAY = exports.PROFILE_NAME_STRICT_OVERLAY = exports.ENV_VAR_ENFORCE_TOKEN_SUBJECT_NODE_IDENTITY = exports.ENV_VAR_JWT_REVERSE_AUTH_AUDIENCE = exports.ENV_VAR_JWT_REVERSE_AUTH_TRUSTED_ISSUER = exports.ENV_VAR_HMAC_SECRET = exports.ENV_VAR_DEFAULT_ENCRYPTION_LEVEL = exports.ENV_VAR_JWKS_URL = exports.ENV_VAR_JWT_AUDIENCE = exports.ENV_VAR_JWT_ALGORITHM = exports.ENV_VAR_JWT_TRUSTED_ISSUER = void 0;
4
4
  const factory_1 = require("@naylence/factory");
5
5
  const security_manager_factory_js_1 = require("./security-manager-factory.js");
6
6
  const logging_js_1 = require("../util/logging.js");
@@ -13,6 +13,7 @@ exports.ENV_VAR_DEFAULT_ENCRYPTION_LEVEL = 'FAME_DEFAULT_ENCRYPTION_LEVEL';
13
13
  exports.ENV_VAR_HMAC_SECRET = 'FAME_HMAC_SECRET';
14
14
  exports.ENV_VAR_JWT_REVERSE_AUTH_TRUSTED_ISSUER = 'FAME_JWT_REVERSE_AUTH_TRUSTED_ISSUER';
15
15
  exports.ENV_VAR_JWT_REVERSE_AUTH_AUDIENCE = 'FAME_JWT_REVERSE_AUTH_AUDIENCE';
16
+ exports.ENV_VAR_ENFORCE_TOKEN_SUBJECT_NODE_IDENTITY = 'FAME_ENFORCE_TOKEN_SUBJECT_NODE_IDENTITY';
16
17
  exports.PROFILE_NAME_STRICT_OVERLAY = 'strict-overlay';
17
18
  exports.PROFILE_NAME_OVERLAY = 'overlay';
18
19
  exports.PROFILE_NAME_OVERLAY_CALLBACK = 'overlay-callback';
@@ -248,6 +249,7 @@ const GATED_PROFILE = {
248
249
  max_ttl_sec: 86400,
249
250
  algorithm: factory_1.Expressions.env(exports.ENV_VAR_JWT_ALGORITHM, 'RS256'),
250
251
  audience: factory_1.Expressions.env(exports.ENV_VAR_JWT_AUDIENCE),
252
+ enforce_token_subject_node_identity: factory_1.Expressions.env(exports.ENV_VAR_ENFORCE_TOKEN_SUBJECT_NODE_IDENTITY, 'false'),
251
253
  },
252
254
  };
253
255
  const GATED_CALLBACK_PROFILE = {
@@ -1,10 +1,10 @@
1
1
  "use strict";
2
2
  // This file is auto-generated during build - do not edit manually
3
- // Generated from package.json version: 0.3.17
3
+ // Generated from package.json version: 0.3.18
4
4
  Object.defineProperty(exports, "__esModule", { value: true });
5
5
  exports.VERSION = void 0;
6
6
  /**
7
7
  * The package version, injected at build time.
8
8
  * @internal
9
9
  */
10
- exports.VERSION = '0.3.17';
10
+ exports.VERSION = '0.3.18';
@@ -118,11 +118,8 @@ function normalizeConfig(config) {
118
118
  : typeof source.reverse_auth_ttl_sec === 'number'
119
119
  ? source.reverse_auth_ttl_sec
120
120
  : DEFAULT_REVERSE_AUTH_TTL_SEC;
121
- const enforceTokenSubjectNodeIdentity = typeof source.enforceTokenSubjectNodeIdentity === 'boolean'
122
- ? source.enforceTokenSubjectNodeIdentity
123
- : typeof source.enforce_token_subject_node_identity === 'boolean'
124
- ? source.enforce_token_subject_node_identity
125
- : false;
121
+ const enforceTokenSubjectNodeIdentity = normalizeBooleanOption(source.enforceTokenSubjectNodeIdentity ??
122
+ source.enforce_token_subject_node_identity, false);
126
123
  const tokenVerifierConfigInput = source.tokenVerifierConfig ?? source.token_verifier_config ?? null;
127
124
  const tokenVerifierConfig = normalizeTokenVerifierConfig({
128
125
  config: tokenVerifierConfigInput,
@@ -162,4 +159,19 @@ function normalizeTokenVerifierConfig({ config, issuer, jwksUrl, algorithm, }) {
162
159
  };
163
160
  return defaultConfig;
164
161
  }
162
+ function normalizeBooleanOption(value, defaultValue) {
163
+ if (typeof value === 'boolean') {
164
+ return value;
165
+ }
166
+ if (typeof value === 'string') {
167
+ const lower = value.toLowerCase().trim();
168
+ if (lower === 'true' || lower === '1' || lower === 'yes') {
169
+ return true;
170
+ }
171
+ if (lower === 'false' || lower === '0' || lower === 'no') {
172
+ return false;
173
+ }
174
+ }
175
+ return defaultValue;
176
+ }
165
177
  export default OAuth2AuthorizerFactory;
@@ -10,6 +10,7 @@ export const ENV_VAR_DEFAULT_ENCRYPTION_LEVEL = 'FAME_DEFAULT_ENCRYPTION_LEVEL';
10
10
  export const ENV_VAR_HMAC_SECRET = 'FAME_HMAC_SECRET';
11
11
  export const ENV_VAR_JWT_REVERSE_AUTH_TRUSTED_ISSUER = 'FAME_JWT_REVERSE_AUTH_TRUSTED_ISSUER';
12
12
  export const ENV_VAR_JWT_REVERSE_AUTH_AUDIENCE = 'FAME_JWT_REVERSE_AUTH_AUDIENCE';
13
+ export const ENV_VAR_ENFORCE_TOKEN_SUBJECT_NODE_IDENTITY = 'FAME_ENFORCE_TOKEN_SUBJECT_NODE_IDENTITY';
13
14
  export const PROFILE_NAME_STRICT_OVERLAY = 'strict-overlay';
14
15
  export const PROFILE_NAME_OVERLAY = 'overlay';
15
16
  export const PROFILE_NAME_OVERLAY_CALLBACK = 'overlay-callback';
@@ -245,6 +246,7 @@ const GATED_PROFILE = {
245
246
  max_ttl_sec: 86400,
246
247
  algorithm: Expressions.env(ENV_VAR_JWT_ALGORITHM, 'RS256'),
247
248
  audience: Expressions.env(ENV_VAR_JWT_AUDIENCE),
249
+ enforce_token_subject_node_identity: Expressions.env(ENV_VAR_ENFORCE_TOKEN_SUBJECT_NODE_IDENTITY, 'false'),
248
250
  },
249
251
  };
250
252
  const GATED_CALLBACK_PROFILE = {
@@ -1,7 +1,7 @@
1
1
  // This file is auto-generated during build - do not edit manually
2
- // Generated from package.json version: 0.3.17
2
+ // Generated from package.json version: 0.3.18
3
3
  /**
4
4
  * The package version, injected at build time.
5
5
  * @internal
6
6
  */
7
- export const VERSION = '0.3.17';
7
+ export const VERSION = '0.3.18';
@@ -14,12 +14,12 @@ var fastify = require('fastify');
14
14
  var websocketPlugin = require('@fastify/websocket');
15
15
 
16
16
  // This file is auto-generated during build - do not edit manually
17
- // Generated from package.json version: 0.3.17
17
+ // Generated from package.json version: 0.3.18
18
18
  /**
19
19
  * The package version, injected at build time.
20
20
  * @internal
21
21
  */
22
- const VERSION = '0.3.17';
22
+ const VERSION = '0.3.18';
23
23
 
24
24
  /**
25
25
  * Fame protocol specific error classes with WebSocket close codes and proper inheritance.
@@ -28115,6 +28115,7 @@ const ENV_VAR_DEFAULT_ENCRYPTION_LEVEL = 'FAME_DEFAULT_ENCRYPTION_LEVEL';
28115
28115
  const ENV_VAR_HMAC_SECRET = 'FAME_HMAC_SECRET';
28116
28116
  const ENV_VAR_JWT_REVERSE_AUTH_TRUSTED_ISSUER = 'FAME_JWT_REVERSE_AUTH_TRUSTED_ISSUER';
28117
28117
  const ENV_VAR_JWT_REVERSE_AUTH_AUDIENCE = 'FAME_JWT_REVERSE_AUTH_AUDIENCE';
28118
+ const ENV_VAR_ENFORCE_TOKEN_SUBJECT_NODE_IDENTITY = 'FAME_ENFORCE_TOKEN_SUBJECT_NODE_IDENTITY';
28118
28119
  const PROFILE_NAME_STRICT_OVERLAY = 'strict-overlay';
28119
28120
  const PROFILE_NAME_OVERLAY = 'overlay';
28120
28121
  const PROFILE_NAME_OVERLAY_CALLBACK = 'overlay-callback';
@@ -28350,6 +28351,7 @@ const GATED_PROFILE = {
28350
28351
  max_ttl_sec: 86400,
28351
28352
  algorithm: factory.Expressions.env(ENV_VAR_JWT_ALGORITHM, 'RS256'),
28352
28353
  audience: factory.Expressions.env(ENV_VAR_JWT_AUDIENCE$1),
28354
+ enforce_token_subject_node_identity: factory.Expressions.env(ENV_VAR_ENFORCE_TOKEN_SUBJECT_NODE_IDENTITY, 'false'),
28353
28355
  },
28354
28356
  };
28355
28357
  const GATED_CALLBACK_PROFILE = {
@@ -28556,6 +28558,7 @@ function deepClone$3(value) {
28556
28558
  var nodeSecurityProfileFactory = /*#__PURE__*/Object.freeze({
28557
28559
  __proto__: null,
28558
28560
  ENV_VAR_DEFAULT_ENCRYPTION_LEVEL: ENV_VAR_DEFAULT_ENCRYPTION_LEVEL,
28561
+ ENV_VAR_ENFORCE_TOKEN_SUBJECT_NODE_IDENTITY: ENV_VAR_ENFORCE_TOKEN_SUBJECT_NODE_IDENTITY,
28559
28562
  ENV_VAR_HMAC_SECRET: ENV_VAR_HMAC_SECRET,
28560
28563
  ENV_VAR_JWKS_URL: ENV_VAR_JWKS_URL,
28561
28564
  ENV_VAR_JWT_ALGORITHM: ENV_VAR_JWT_ALGORITHM,
@@ -33328,11 +33331,8 @@ function normalizeConfig$c(config) {
33328
33331
  : typeof source.reverse_auth_ttl_sec === 'number'
33329
33332
  ? source.reverse_auth_ttl_sec
33330
33333
  : DEFAULT_REVERSE_AUTH_TTL_SEC;
33331
- const enforceTokenSubjectNodeIdentity = typeof source.enforceTokenSubjectNodeIdentity === 'boolean'
33332
- ? source.enforceTokenSubjectNodeIdentity
33333
- : typeof source.enforce_token_subject_node_identity === 'boolean'
33334
- ? source.enforce_token_subject_node_identity
33335
- : false;
33334
+ const enforceTokenSubjectNodeIdentity = normalizeBooleanOption(source.enforceTokenSubjectNodeIdentity ??
33335
+ source.enforce_token_subject_node_identity, false);
33336
33336
  const tokenVerifierConfigInput = source.tokenVerifierConfig ?? source.token_verifier_config ?? null;
33337
33337
  const tokenVerifierConfig = normalizeTokenVerifierConfig({
33338
33338
  config: tokenVerifierConfigInput,
@@ -33372,6 +33372,21 @@ function normalizeTokenVerifierConfig({ config, issuer, jwksUrl, algorithm, }) {
33372
33372
  };
33373
33373
  return defaultConfig;
33374
33374
  }
33375
+ function normalizeBooleanOption(value, defaultValue) {
33376
+ if (typeof value === 'boolean') {
33377
+ return value;
33378
+ }
33379
+ if (typeof value === 'string') {
33380
+ const lower = value.toLowerCase().trim();
33381
+ if (lower === 'true' || lower === '1' || lower === 'yes') {
33382
+ return true;
33383
+ }
33384
+ if (lower === 'false' || lower === '0' || lower === 'no') {
33385
+ return false;
33386
+ }
33387
+ }
33388
+ return defaultValue;
33389
+ }
33375
33390
 
33376
33391
  var oauth2AuthorizerFactory = /*#__PURE__*/Object.freeze({
33377
33392
  __proto__: null,
@@ -13,12 +13,12 @@ import fastify from 'fastify';
13
13
  import websocketPlugin from '@fastify/websocket';
14
14
 
15
15
  // This file is auto-generated during build - do not edit manually
16
- // Generated from package.json version: 0.3.17
16
+ // Generated from package.json version: 0.3.18
17
17
  /**
18
18
  * The package version, injected at build time.
19
19
  * @internal
20
20
  */
21
- const VERSION = '0.3.17';
21
+ const VERSION = '0.3.18';
22
22
 
23
23
  /**
24
24
  * Fame protocol specific error classes with WebSocket close codes and proper inheritance.
@@ -28114,6 +28114,7 @@ const ENV_VAR_DEFAULT_ENCRYPTION_LEVEL = 'FAME_DEFAULT_ENCRYPTION_LEVEL';
28114
28114
  const ENV_VAR_HMAC_SECRET = 'FAME_HMAC_SECRET';
28115
28115
  const ENV_VAR_JWT_REVERSE_AUTH_TRUSTED_ISSUER = 'FAME_JWT_REVERSE_AUTH_TRUSTED_ISSUER';
28116
28116
  const ENV_VAR_JWT_REVERSE_AUTH_AUDIENCE = 'FAME_JWT_REVERSE_AUTH_AUDIENCE';
28117
+ const ENV_VAR_ENFORCE_TOKEN_SUBJECT_NODE_IDENTITY = 'FAME_ENFORCE_TOKEN_SUBJECT_NODE_IDENTITY';
28117
28118
  const PROFILE_NAME_STRICT_OVERLAY = 'strict-overlay';
28118
28119
  const PROFILE_NAME_OVERLAY = 'overlay';
28119
28120
  const PROFILE_NAME_OVERLAY_CALLBACK = 'overlay-callback';
@@ -28349,6 +28350,7 @@ const GATED_PROFILE = {
28349
28350
  max_ttl_sec: 86400,
28350
28351
  algorithm: Expressions.env(ENV_VAR_JWT_ALGORITHM, 'RS256'),
28351
28352
  audience: Expressions.env(ENV_VAR_JWT_AUDIENCE$1),
28353
+ enforce_token_subject_node_identity: Expressions.env(ENV_VAR_ENFORCE_TOKEN_SUBJECT_NODE_IDENTITY, 'false'),
28352
28354
  },
28353
28355
  };
28354
28356
  const GATED_CALLBACK_PROFILE = {
@@ -28555,6 +28557,7 @@ function deepClone$3(value) {
28555
28557
  var nodeSecurityProfileFactory = /*#__PURE__*/Object.freeze({
28556
28558
  __proto__: null,
28557
28559
  ENV_VAR_DEFAULT_ENCRYPTION_LEVEL: ENV_VAR_DEFAULT_ENCRYPTION_LEVEL,
28560
+ ENV_VAR_ENFORCE_TOKEN_SUBJECT_NODE_IDENTITY: ENV_VAR_ENFORCE_TOKEN_SUBJECT_NODE_IDENTITY,
28558
28561
  ENV_VAR_HMAC_SECRET: ENV_VAR_HMAC_SECRET,
28559
28562
  ENV_VAR_JWKS_URL: ENV_VAR_JWKS_URL,
28560
28563
  ENV_VAR_JWT_ALGORITHM: ENV_VAR_JWT_ALGORITHM,
@@ -33327,11 +33330,8 @@ function normalizeConfig$c(config) {
33327
33330
  : typeof source.reverse_auth_ttl_sec === 'number'
33328
33331
  ? source.reverse_auth_ttl_sec
33329
33332
  : DEFAULT_REVERSE_AUTH_TTL_SEC;
33330
- const enforceTokenSubjectNodeIdentity = typeof source.enforceTokenSubjectNodeIdentity === 'boolean'
33331
- ? source.enforceTokenSubjectNodeIdentity
33332
- : typeof source.enforce_token_subject_node_identity === 'boolean'
33333
- ? source.enforce_token_subject_node_identity
33334
- : false;
33333
+ const enforceTokenSubjectNodeIdentity = normalizeBooleanOption(source.enforceTokenSubjectNodeIdentity ??
33334
+ source.enforce_token_subject_node_identity, false);
33335
33335
  const tokenVerifierConfigInput = source.tokenVerifierConfig ?? source.token_verifier_config ?? null;
33336
33336
  const tokenVerifierConfig = normalizeTokenVerifierConfig({
33337
33337
  config: tokenVerifierConfigInput,
@@ -33371,6 +33371,21 @@ function normalizeTokenVerifierConfig({ config, issuer, jwksUrl, algorithm, }) {
33371
33371
  };
33372
33372
  return defaultConfig;
33373
33373
  }
33374
+ function normalizeBooleanOption(value, defaultValue) {
33375
+ if (typeof value === 'boolean') {
33376
+ return value;
33377
+ }
33378
+ if (typeof value === 'string') {
33379
+ const lower = value.toLowerCase().trim();
33380
+ if (lower === 'true' || lower === '1' || lower === 'yes') {
33381
+ return true;
33382
+ }
33383
+ if (lower === 'false' || lower === '0' || lower === 'no') {
33384
+ return false;
33385
+ }
33386
+ }
33387
+ return defaultValue;
33388
+ }
33374
33389
 
33375
33390
  var oauth2AuthorizerFactory = /*#__PURE__*/Object.freeze({
33376
33391
  __proto__: null,
@@ -4426,12 +4426,12 @@ async function ensureRuntimeFactoriesRegistered(registry = factory.Registry) {
4426
4426
  }
4427
4427
 
4428
4428
  // This file is auto-generated during build - do not edit manually
4429
- // Generated from package.json version: 0.3.17
4429
+ // Generated from package.json version: 0.3.18
4430
4430
  /**
4431
4431
  * The package version, injected at build time.
4432
4432
  * @internal
4433
4433
  */
4434
- const VERSION = '0.3.17';
4434
+ const VERSION = '0.3.18';
4435
4435
 
4436
4436
  let initialized = false;
4437
4437
  const runtimePlugin = {
@@ -29319,6 +29319,7 @@ const ENV_VAR_DEFAULT_ENCRYPTION_LEVEL = 'FAME_DEFAULT_ENCRYPTION_LEVEL';
29319
29319
  const ENV_VAR_HMAC_SECRET = 'FAME_HMAC_SECRET';
29320
29320
  const ENV_VAR_JWT_REVERSE_AUTH_TRUSTED_ISSUER = 'FAME_JWT_REVERSE_AUTH_TRUSTED_ISSUER';
29321
29321
  const ENV_VAR_JWT_REVERSE_AUTH_AUDIENCE = 'FAME_JWT_REVERSE_AUTH_AUDIENCE';
29322
+ const ENV_VAR_ENFORCE_TOKEN_SUBJECT_NODE_IDENTITY = 'FAME_ENFORCE_TOKEN_SUBJECT_NODE_IDENTITY';
29322
29323
  const PROFILE_NAME_STRICT_OVERLAY = 'strict-overlay';
29323
29324
  const PROFILE_NAME_OVERLAY = 'overlay';
29324
29325
  const PROFILE_NAME_OVERLAY_CALLBACK = 'overlay-callback';
@@ -29554,6 +29555,7 @@ const GATED_PROFILE = {
29554
29555
  max_ttl_sec: 86400,
29555
29556
  algorithm: factory.Expressions.env(ENV_VAR_JWT_ALGORITHM$2, 'RS256'),
29556
29557
  audience: factory.Expressions.env(ENV_VAR_JWT_AUDIENCE$2),
29558
+ enforce_token_subject_node_identity: factory.Expressions.env(ENV_VAR_ENFORCE_TOKEN_SUBJECT_NODE_IDENTITY, 'false'),
29557
29559
  },
29558
29560
  };
29559
29561
  const GATED_CALLBACK_PROFILE = {
@@ -29760,6 +29762,7 @@ function deepClone$3(value) {
29760
29762
  var nodeSecurityProfileFactory = /*#__PURE__*/Object.freeze({
29761
29763
  __proto__: null,
29762
29764
  ENV_VAR_DEFAULT_ENCRYPTION_LEVEL: ENV_VAR_DEFAULT_ENCRYPTION_LEVEL,
29765
+ ENV_VAR_ENFORCE_TOKEN_SUBJECT_NODE_IDENTITY: ENV_VAR_ENFORCE_TOKEN_SUBJECT_NODE_IDENTITY,
29763
29766
  ENV_VAR_HMAC_SECRET: ENV_VAR_HMAC_SECRET,
29764
29767
  ENV_VAR_JWKS_URL: ENV_VAR_JWKS_URL,
29765
29768
  ENV_VAR_JWT_ALGORITHM: ENV_VAR_JWT_ALGORITHM$2,
@@ -38069,11 +38072,8 @@ function normalizeConfig$c(config) {
38069
38072
  : typeof source.reverse_auth_ttl_sec === 'number'
38070
38073
  ? source.reverse_auth_ttl_sec
38071
38074
  : DEFAULT_REVERSE_AUTH_TTL_SEC;
38072
- const enforceTokenSubjectNodeIdentity = typeof source.enforceTokenSubjectNodeIdentity === 'boolean'
38073
- ? source.enforceTokenSubjectNodeIdentity
38074
- : typeof source.enforce_token_subject_node_identity === 'boolean'
38075
- ? source.enforce_token_subject_node_identity
38076
- : false;
38075
+ const enforceTokenSubjectNodeIdentity = normalizeBooleanOption(source.enforceTokenSubjectNodeIdentity ??
38076
+ source.enforce_token_subject_node_identity, false);
38077
38077
  const tokenVerifierConfigInput = source.tokenVerifierConfig ?? source.token_verifier_config ?? null;
38078
38078
  const tokenVerifierConfig = normalizeTokenVerifierConfig({
38079
38079
  config: tokenVerifierConfigInput,
@@ -38113,6 +38113,21 @@ function normalizeTokenVerifierConfig({ config, issuer, jwksUrl, algorithm, }) {
38113
38113
  };
38114
38114
  return defaultConfig;
38115
38115
  }
38116
+ function normalizeBooleanOption(value, defaultValue) {
38117
+ if (typeof value === 'boolean') {
38118
+ return value;
38119
+ }
38120
+ if (typeof value === 'string') {
38121
+ const lower = value.toLowerCase().trim();
38122
+ if (lower === 'true' || lower === '1' || lower === 'yes') {
38123
+ return true;
38124
+ }
38125
+ if (lower === 'false' || lower === '0' || lower === 'no') {
38126
+ return false;
38127
+ }
38128
+ }
38129
+ return defaultValue;
38130
+ }
38116
38131
 
38117
38132
  var oauth2AuthorizerFactory = /*#__PURE__*/Object.freeze({
38118
38133
  __proto__: null,
@@ -4425,12 +4425,12 @@ async function ensureRuntimeFactoriesRegistered(registry = Registry) {
4425
4425
  }
4426
4426
 
4427
4427
  // This file is auto-generated during build - do not edit manually
4428
- // Generated from package.json version: 0.3.17
4428
+ // Generated from package.json version: 0.3.18
4429
4429
  /**
4430
4430
  * The package version, injected at build time.
4431
4431
  * @internal
4432
4432
  */
4433
- const VERSION = '0.3.17';
4433
+ const VERSION = '0.3.18';
4434
4434
 
4435
4435
  let initialized = false;
4436
4436
  const runtimePlugin = {
@@ -29318,6 +29318,7 @@ const ENV_VAR_DEFAULT_ENCRYPTION_LEVEL = 'FAME_DEFAULT_ENCRYPTION_LEVEL';
29318
29318
  const ENV_VAR_HMAC_SECRET = 'FAME_HMAC_SECRET';
29319
29319
  const ENV_VAR_JWT_REVERSE_AUTH_TRUSTED_ISSUER = 'FAME_JWT_REVERSE_AUTH_TRUSTED_ISSUER';
29320
29320
  const ENV_VAR_JWT_REVERSE_AUTH_AUDIENCE = 'FAME_JWT_REVERSE_AUTH_AUDIENCE';
29321
+ const ENV_VAR_ENFORCE_TOKEN_SUBJECT_NODE_IDENTITY = 'FAME_ENFORCE_TOKEN_SUBJECT_NODE_IDENTITY';
29321
29322
  const PROFILE_NAME_STRICT_OVERLAY = 'strict-overlay';
29322
29323
  const PROFILE_NAME_OVERLAY = 'overlay';
29323
29324
  const PROFILE_NAME_OVERLAY_CALLBACK = 'overlay-callback';
@@ -29553,6 +29554,7 @@ const GATED_PROFILE = {
29553
29554
  max_ttl_sec: 86400,
29554
29555
  algorithm: Expressions.env(ENV_VAR_JWT_ALGORITHM$2, 'RS256'),
29555
29556
  audience: Expressions.env(ENV_VAR_JWT_AUDIENCE$2),
29557
+ enforce_token_subject_node_identity: Expressions.env(ENV_VAR_ENFORCE_TOKEN_SUBJECT_NODE_IDENTITY, 'false'),
29556
29558
  },
29557
29559
  };
29558
29560
  const GATED_CALLBACK_PROFILE = {
@@ -29759,6 +29761,7 @@ function deepClone$3(value) {
29759
29761
  var nodeSecurityProfileFactory = /*#__PURE__*/Object.freeze({
29760
29762
  __proto__: null,
29761
29763
  ENV_VAR_DEFAULT_ENCRYPTION_LEVEL: ENV_VAR_DEFAULT_ENCRYPTION_LEVEL,
29764
+ ENV_VAR_ENFORCE_TOKEN_SUBJECT_NODE_IDENTITY: ENV_VAR_ENFORCE_TOKEN_SUBJECT_NODE_IDENTITY,
29762
29765
  ENV_VAR_HMAC_SECRET: ENV_VAR_HMAC_SECRET,
29763
29766
  ENV_VAR_JWKS_URL: ENV_VAR_JWKS_URL,
29764
29767
  ENV_VAR_JWT_ALGORITHM: ENV_VAR_JWT_ALGORITHM$2,
@@ -38068,11 +38071,8 @@ function normalizeConfig$c(config) {
38068
38071
  : typeof source.reverse_auth_ttl_sec === 'number'
38069
38072
  ? source.reverse_auth_ttl_sec
38070
38073
  : DEFAULT_REVERSE_AUTH_TTL_SEC;
38071
- const enforceTokenSubjectNodeIdentity = typeof source.enforceTokenSubjectNodeIdentity === 'boolean'
38072
- ? source.enforceTokenSubjectNodeIdentity
38073
- : typeof source.enforce_token_subject_node_identity === 'boolean'
38074
- ? source.enforce_token_subject_node_identity
38075
- : false;
38074
+ const enforceTokenSubjectNodeIdentity = normalizeBooleanOption(source.enforceTokenSubjectNodeIdentity ??
38075
+ source.enforce_token_subject_node_identity, false);
38076
38076
  const tokenVerifierConfigInput = source.tokenVerifierConfig ?? source.token_verifier_config ?? null;
38077
38077
  const tokenVerifierConfig = normalizeTokenVerifierConfig({
38078
38078
  config: tokenVerifierConfigInput,
@@ -38112,6 +38112,21 @@ function normalizeTokenVerifierConfig({ config, issuer, jwksUrl, algorithm, }) {
38112
38112
  };
38113
38113
  return defaultConfig;
38114
38114
  }
38115
+ function normalizeBooleanOption(value, defaultValue) {
38116
+ if (typeof value === 'boolean') {
38117
+ return value;
38118
+ }
38119
+ if (typeof value === 'string') {
38120
+ const lower = value.toLowerCase().trim();
38121
+ if (lower === 'true' || lower === '1' || lower === 'yes') {
38122
+ return true;
38123
+ }
38124
+ if (lower === 'false' || lower === '0' || lower === 'no') {
38125
+ return false;
38126
+ }
38127
+ }
38128
+ return defaultValue;
38129
+ }
38115
38130
 
38116
38131
  var oauth2AuthorizerFactory = /*#__PURE__*/Object.freeze({
38117
38132
  __proto__: null,
@@ -10,6 +10,7 @@ export declare const ENV_VAR_DEFAULT_ENCRYPTION_LEVEL = "FAME_DEFAULT_ENCRYPTION
10
10
  export declare const ENV_VAR_HMAC_SECRET = "FAME_HMAC_SECRET";
11
11
  export declare const ENV_VAR_JWT_REVERSE_AUTH_TRUSTED_ISSUER = "FAME_JWT_REVERSE_AUTH_TRUSTED_ISSUER";
12
12
  export declare const ENV_VAR_JWT_REVERSE_AUTH_AUDIENCE = "FAME_JWT_REVERSE_AUTH_AUDIENCE";
13
+ export declare const ENV_VAR_ENFORCE_TOKEN_SUBJECT_NODE_IDENTITY = "FAME_ENFORCE_TOKEN_SUBJECT_NODE_IDENTITY";
13
14
  export declare const PROFILE_NAME_STRICT_OVERLAY = "strict-overlay";
14
15
  export declare const PROFILE_NAME_OVERLAY = "overlay";
15
16
  export declare const PROFILE_NAME_OVERLAY_CALLBACK = "overlay-callback";
@@ -2,4 +2,4 @@
2
2
  * The package version, injected at build time.
3
3
  * @internal
4
4
  */
5
- export declare const VERSION = "0.3.17";
5
+ export declare const VERSION = "0.3.18";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@naylence/runtime",
3
- "version": "0.3.17",
3
+ "version": "0.3.18",
4
4
  "type": "module",
5
5
  "description": "Naylence Runtime - Complete TypeScript runtime",
6
6
  "author": "Naylence Dev <naylencedev@gmail.com>",