@venizia/ignis 0.2.0-25 → 0.2.0-27

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.
Files changed (50) hide show
  1. package/dist/base/applications/base.d.ts +5 -0
  2. package/dist/base/applications/base.d.ts.map +1 -1
  3. package/dist/base/applications/base.js +15 -11
  4. package/dist/base/applications/base.js.map +1 -1
  5. package/dist/common/environments.d.ts +18 -8
  6. package/dist/common/environments.d.ts.map +1 -1
  7. package/dist/common/environments.js +20 -8
  8. package/dist/common/environments.js.map +1 -1
  9. package/dist/components/health-check/common/constants.d.ts +5 -0
  10. package/dist/components/health-check/common/constants.d.ts.map +1 -0
  11. package/dist/components/health-check/common/constants.js +9 -0
  12. package/dist/components/health-check/common/constants.js.map +1 -0
  13. package/dist/components/health-check/common/index.d.ts +1 -0
  14. package/dist/components/health-check/common/index.d.ts.map +1 -1
  15. package/dist/components/health-check/common/index.js +1 -0
  16. package/dist/components/health-check/common/index.js.map +1 -1
  17. package/dist/components/health-check/common/keys.d.ts +2 -0
  18. package/dist/components/health-check/common/keys.d.ts.map +1 -1
  19. package/dist/components/health-check/common/keys.js +2 -0
  20. package/dist/components/health-check/common/keys.js.map +1 -1
  21. package/dist/components/health-check/common/rest-paths.d.ts +1 -0
  22. package/dist/components/health-check/common/rest-paths.d.ts.map +1 -1
  23. package/dist/components/health-check/common/rest-paths.js +1 -0
  24. package/dist/components/health-check/common/rest-paths.js.map +1 -1
  25. package/dist/components/health-check/common/types.d.ts +22 -0
  26. package/dist/components/health-check/common/types.d.ts.map +1 -1
  27. package/dist/components/health-check/component.d.ts +9 -3
  28. package/dist/components/health-check/component.d.ts.map +1 -1
  29. package/dist/components/health-check/component.js +28 -1
  30. package/dist/components/health-check/component.js.map +1 -1
  31. package/dist/components/health-check/controller.d.ts +10 -2
  32. package/dist/components/health-check/controller.d.ts.map +1 -1
  33. package/dist/components/health-check/controller.js +72 -13
  34. package/dist/components/health-check/controller.js.map +1 -1
  35. package/dist/components/health-check/index.d.ts +1 -0
  36. package/dist/components/health-check/index.d.ts.map +1 -1
  37. package/dist/components/health-check/index.js +1 -0
  38. package/dist/components/health-check/index.js.map +1 -1
  39. package/dist/components/health-check/reporter.d.ts +84 -0
  40. package/dist/components/health-check/reporter.d.ts.map +1 -0
  41. package/dist/components/health-check/reporter.js +115 -0
  42. package/dist/components/health-check/reporter.js.map +1 -0
  43. package/dist/components/mail/component.d.ts +4 -1
  44. package/dist/components/mail/component.d.ts.map +1 -1
  45. package/dist/components/mail/component.js +12 -0
  46. package/dist/components/mail/component.js.map +1 -1
  47. package/dist/components/mail/utilities/mime.utility.d.ts.map +1 -1
  48. package/dist/components/mail/utilities/mime.utility.js +5 -0
  49. package/dist/components/mail/utilities/mime.utility.js.map +1 -1
  50. package/package.json +5 -5
@@ -33,6 +33,11 @@ export declare abstract class BaseApplication extends ServerApplication implemen
33
33
  restPath?: string;
34
34
  folderPath: string;
35
35
  }): this;
36
+ /**
37
+ * Every value is read HERE, not destructured at module load: an application that loads its
38
+ * `.env` in its own entrypoint does so after this module is imported, and a module-load snapshot
39
+ * would print the defaults for a host that configured everything correctly.
40
+ */
36
41
  protected printStartUpInfo(opts: {
37
42
  scope: string;
38
43
  }): void;
@@ -1 +1 @@
1
- {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../src/base/applications/base.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,KAAK,EACV,mBAAmB,EAEnB,cAAc,EACd,oBAAoB,EACrB,MAAM,wBAAwB,CAAC;AAahC,OAAO,EAAE,kBAAkB,EAAgB,MAAM,gBAAgB,CAAC;AAElE,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AA2C/D,8BAAsB,eAAgB,SAAQ,iBAAkB,YAAW,gBAAgB;IACzF,SAAS,CAAC,eAAe,CAAC,EAAE,cAAc,CAAC;IAC3C,SAAS,CAAC,mBAAmB,CAAC,EAAE,oBAAoB,CAAC;IAErD,SAAS,CAAC,aAAa,CAAC,GAAG,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM;IAKtD,6IAA6I;IAC9H,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IAuDnD,eAAe,IAAI,cAAc,CAAC,oBAAoB,CAAC;IAIjD,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAuErC,4KAA4K;cAC5J,oBAAoB,CAAC,IAAI,EAAE;QACzC,QAAQ,EAAE,cAAc,CAAC;QACzB,YAAY,EAAE,oBAAoB,CAAC;QACnC,eAAe,EAAE,MAAM,EAAE,CAAC;QAC1B,MAAM,EAAE,OAAO,CAAC;KACjB,GAAG,OAAO,CAAC,IAAI,CAAC;IAsBjB,SAAS,CAAC,mBAAmB,CAAC,IAAI,EAAE;QAClC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC/B,KAAK,EAAE,mBAAmB,CAAC;KAC5B,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAW1B,gMAAgM;IAChM,SAAS,CAAC,+BAA+B,CAAC,IAAI,EAAE;QAAE,KAAK,EAAE,mBAAmB,CAAA;KAAE,GAAG,OAAO;IAQlF,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC;IAkB3C,MAAM,CAAC,IAAI,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE;IAwCtD,SAAS,CAAC,gBAAgB,CAAC,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE;IA+BlD,kGAAkG;cAC/E,oBAAoB,IAAI,kBAAkB;IAO7D,gKAAgK;cACvI,0BAA0B;IA4BnD,8MAA8M;IAC9M,SAAS,CAAC,YAAY;IA4BtB;;;OAGG;IACY,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;cAIvB,eAAe,IAAI,iBAAiB,EAAE;IAyCzD;;;OAGG;IACH,SAAS,CAAC,0BAA0B,IAAI,IAAI;CAG7C"}
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../src/base/applications/base.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,KAAK,EACV,mBAAmB,EAEnB,cAAc,EACd,oBAAoB,EACrB,MAAM,wBAAwB,CAAC;AAahC,OAAO,EAAE,kBAAkB,EAAgB,MAAM,gBAAgB,CAAC;AAElE,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AA8B/D,8BAAsB,eAAgB,SAAQ,iBAAkB,YAAW,gBAAgB;IACzF,SAAS,CAAC,eAAe,CAAC,EAAE,cAAc,CAAC;IAC3C,SAAS,CAAC,mBAAmB,CAAC,EAAE,oBAAoB,CAAC;IAErD,SAAS,CAAC,aAAa,CAAC,GAAG,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM;IAKtD,6IAA6I;IAC9H,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IAuDnD,eAAe,IAAI,cAAc,CAAC,oBAAoB,CAAC;IAIjD,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAuErC,4KAA4K;cAC5J,oBAAoB,CAAC,IAAI,EAAE;QACzC,QAAQ,EAAE,cAAc,CAAC;QACzB,YAAY,EAAE,oBAAoB,CAAC;QACnC,eAAe,EAAE,MAAM,EAAE,CAAC;QAC1B,MAAM,EAAE,OAAO,CAAC;KACjB,GAAG,OAAO,CAAC,IAAI,CAAC;IAsBjB,SAAS,CAAC,mBAAmB,CAAC,IAAI,EAAE;QAClC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC/B,KAAK,EAAE,mBAAmB,CAAC;KAC5B,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAW1B,gMAAgM;IAChM,SAAS,CAAC,+BAA+B,CAAC,IAAI,EAAE;QAAE,KAAK,EAAE,mBAAmB,CAAA;KAAE,GAAG,OAAO;IAQlF,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC;IAkB3C,MAAM,CAAC,IAAI,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE;IAwCtD;;;;OAIG;IACH,SAAS,CAAC,gBAAgB,CAAC,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE;IA+BlD,kGAAkG;cAC/E,oBAAoB,IAAI,kBAAkB;IAO7D,gKAAgK;cACvI,0BAA0B;IA4BnD,8MAA8M;IAC9M,SAAS,CAAC,YAAY;IA4BtB;;;OAGG;IACY,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;cAIvB,eAAe,IAAI,iBAAiB,EAAE;IAyCzD;;;OAGG;IACH,SAAS,CAAC,0BAA0B,IAAI,IAAI;CAG7C"}
@@ -7,6 +7,7 @@ exports.BaseApplication = void 0;
7
7
  const ignis_connectors_1 = require("@venizia/ignis-connectors");
8
8
  const ignis_kernel_1 = require("@venizia/ignis-kernel");
9
9
  const ignis_kernel_2 = require("@venizia/ignis-kernel");
10
+ const environments_1 = require("../../common/environments");
10
11
  const components_1 = require("../../components");
11
12
  const grpc_1 = require("../../components/controller/grpc");
12
13
  const ignis_kernel_3 = require("@venizia/ignis-kernel");
@@ -18,7 +19,6 @@ const isEmpty_1 = __importDefault(require("lodash/isEmpty"));
18
19
  const middlewares_1 = require("../middlewares");
19
20
  const boot_steps_1 = require("./boot-steps");
20
21
  const server_1 = require("./server");
21
- const { NODE_ENV, RUN_MODE, ALLOW_EMPTY_ENV_VALUE = false, APPLICATION_ENV_PREFIX = 'APP_ENV', APP_ENV_APPLICATION_NAME = 'PNT', APP_ENV_APPLICATION_TIMEZONE = 'Asia/Ho_Chi_Minh', APP_ENV_DS_MIGRATION = 'postgres', APP_ENV_DS_AUTHORIZE = 'postgres', APP_ENV_LOGGER_FOLDER_PATH = './', } = process.env;
22
22
  /** Maps a secret bundle to env names: the explicit `keys` mapping when present, otherwise every bundle key under `prefix`. */
23
23
  const selectSecretEnvKeys = (opts) => {
24
24
  const { bundle, entry } = opts;
@@ -222,26 +222,30 @@ class BaseApplication extends server_1.ServerApplication {
222
222
  .debug('Registered static files | runtime: %s | path: %s | folder: %s', this.runtime, restPath, folderPath);
223
223
  return this;
224
224
  }
225
+ /**
226
+ * Every value is read HERE, not destructured at module load: an application that loads its
227
+ * `.env` in its own entrypoint does so after this module is imported, and a module-load snapshot
228
+ * would print the defaults for a host that configured everything correctly.
229
+ */
225
230
  printStartUpInfo(opts) {
226
231
  const { scope } = opts;
232
+ const read = (key, fallback) => process.env[key] ?? fallback;
233
+ const divider = '------------------------------------------------------------------------';
234
+ this.logger.for(scope).info(divider);
227
235
  this.logger
228
236
  .for(scope)
229
- .info('------------------------------------------------------------------------');
230
- this.logger
231
- .for(scope)
232
- .info('Starting application... | Name: %s | Env: %s | Runtime: %s', APP_ENV_APPLICATION_NAME, NODE_ENV, this.runtime);
237
+ .info('Starting application... | Name: %s | Env: %s | Runtime: %s', read(environments_1.EnvironmentKeys.APP_ENV_APPLICATION_NAME, 'PNT'), process.env.NODE_ENV, this.runtime);
233
238
  this.logger
234
239
  .for(scope)
235
- .info('AllowEmptyEnv: %s | Prefix: %s', ALLOW_EMPTY_ENV_VALUE, APPLICATION_ENV_PREFIX);
236
- this.logger.for(scope).info('RunMode: %s', RUN_MODE);
237
- this.logger.for(scope).info('Timezone: %s', APP_ENV_APPLICATION_TIMEZONE);
238
- this.logger.for(scope).info('LogPath: %s', APP_ENV_LOGGER_FOLDER_PATH);
240
+ .info('AllowEmptyEnv: %s | Prefix: %s', read('ALLOW_EMPTY_ENV_VALUE', 'false'), read('APPLICATION_ENV_PREFIX', 'APP_ENV'));
241
+ this.logger.for(scope).info('RunMode: %s', process.env.RUN_MODE);
239
242
  this.logger
240
243
  .for(scope)
241
- .info('Datasource | Migration: %s | Authorize: %s', APP_ENV_DS_MIGRATION, APP_ENV_DS_AUTHORIZE);
244
+ .info('Timezone: %s', read(environments_1.EnvironmentKeys.APP_ENV_APPLICATION_TIMEZONE, 'Asia/Ho_Chi_Minh'));
242
245
  this.logger
243
246
  .for(scope)
244
- .info('------------------------------------------------------------------------');
247
+ .info('LogPath: %s', read(environments_1.EnvironmentKeys.APP_ENV_LOGGER_FOLDER_PATH, './'));
248
+ this.logger.for(scope).info(divider);
245
249
  }
246
250
  /** Swaps in the `ErrorPrettier`-backed formatter - `node:util`, so the kernel cannot build it. */
247
251
  buildErrorMiddleware() {
@@ -1 +1 @@
1
- {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../src/base/applications/base.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../src/base/applications/base.ts"],"names":[],"mappings":"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"}
@@ -1,18 +1,28 @@
1
- /** Environment variable keys used throughout the application. */
1
+ /**
2
+ * Environment variable names.
3
+ *
4
+ * The two groups mean different things and the split is load-bearing: a name in the second group
5
+ * is a CONVENTION an application reads for itself, and setting it changes nothing in IGNIS. Every
6
+ * name here was once presented as framework configuration, which is how a deployment came to set
7
+ * `APP_ENV_APPLICATION_DS_MIGRATION` against a framework that read `APP_ENV_DS_MIGRATION` - and
8
+ * neither name selected anything, so both are gone.
9
+ */
2
10
  export declare class EnvironmentKeys {
11
+ /** `AppConstants.APPLICATION_NAME` and the startup banner. */
3
12
  static readonly APP_ENV_APPLICATION_NAME = "APP_ENV_APPLICATION_NAME";
13
+ /** `DateUtility`'s default zone and the startup banner. */
4
14
  static readonly APP_ENV_APPLICATION_TIMEZONE = "APP_ENV_APPLICATION_TIMEZONE";
15
+ /** Set it to enable rotating file logs; unset means console. Also the startup banner. */
16
+ static readonly APP_ENV_LOGGER_FOLDER_PATH = "APP_ENV_LOGGER_FOLDER_PATH";
17
+ /** Fallback host when `IApplicationConfigs.host` is absent. */
18
+ static readonly APP_ENV_SERVER_HOST = "APP_ENV_SERVER_HOST";
19
+ /** Fallback port when `IApplicationConfigs.port` is absent. */
20
+ static readonly APP_ENV_SERVER_PORT = "APP_ENV_SERVER_PORT";
5
21
  static readonly APP_ENV_APPLICATION_SECRET = "APP_ENV_APPLICATION_SECRET";
22
+ static readonly APP_ENV_APPLICATION_ROLES = "APP_ENV_APPLICATION_ROLES";
6
23
  static readonly APP_ENV_JWT_SECRET = "APP_ENV_JWT_SECRET";
7
24
  static readonly APP_ENV_JWT_EXPIRES_IN = "APP_ENV_JWT_EXPIRES_IN";
8
- static readonly APP_ENV_LOGGER_FOLDER_PATH = "APP_ENV_LOGGER_FOLDER_PATH";
9
- static readonly APP_ENV_APPLICATION_ROLES = "APP_ENV_APPLICATION_ROLES";
10
- static readonly APP_ENV_APPLICATION_DS_MIGRATION = "APP_ENV_APPLICATION_DS_MIGRATION";
11
- static readonly APP_ENV_APPLICATION_DS_AUTHORIZE = "APP_ENV_APPLICATION_DS_AUTHORIZE";
12
- static readonly APP_ENV_APPLICATION_DS_OAUTH2 = "APP_ENV_APPLICATION_DS_OAUTH2";
13
25
  static readonly APP_ENV_OAUTH2_VIEW_FOLDER = "APP_ENV_OAUTH2_VIEW_FOLDER";
14
- static readonly APP_ENV_SERVER_HOST = "APP_ENV_SERVER_HOST";
15
- static readonly APP_ENV_SERVER_PORT = "APP_ENV_SERVER_PORT";
16
26
  static readonly APP_ENV_SERVER_BASE_PATH = "APP_ENV_SERVER_BASE_PATH";
17
27
  static readonly APP_ENV_DATASOURCE_NAME = "APP_ENV_DATASOURCE_NAME";
18
28
  static readonly APP_ENV_POSTGRES_HOST = "APP_ENV_POSTGRES_HOST";
@@ -1 +1 @@
1
- {"version":3,"file":"environments.d.ts","sourceRoot":"","sources":["../../src/common/environments.ts"],"names":[],"mappings":"AAAA,iEAAiE;AACjE,qBAAa,eAAe;IAC1B,MAAM,CAAC,QAAQ,CAAC,wBAAwB,8BAA8B;IACtE,MAAM,CAAC,QAAQ,CAAC,4BAA4B,kCAAkC;IAC9E,MAAM,CAAC,QAAQ,CAAC,0BAA0B,gCAAgC;IAE1E,MAAM,CAAC,QAAQ,CAAC,kBAAkB,wBAAwB;IAC1D,MAAM,CAAC,QAAQ,CAAC,sBAAsB,4BAA4B;IAElE,MAAM,CAAC,QAAQ,CAAC,0BAA0B,gCAAgC;IAC1E,MAAM,CAAC,QAAQ,CAAC,yBAAyB,+BAA+B;IAExE,MAAM,CAAC,QAAQ,CAAC,gCAAgC,sCAAsC;IACtF,MAAM,CAAC,QAAQ,CAAC,gCAAgC,sCAAsC;IACtF,MAAM,CAAC,QAAQ,CAAC,6BAA6B,mCAAmC;IAEhF,MAAM,CAAC,QAAQ,CAAC,0BAA0B,gCAAgC;IAE1E,MAAM,CAAC,QAAQ,CAAC,mBAAmB,yBAAyB;IAC5D,MAAM,CAAC,QAAQ,CAAC,mBAAmB,yBAAyB;IAC5D,MAAM,CAAC,QAAQ,CAAC,wBAAwB,8BAA8B;IAEtE,MAAM,CAAC,QAAQ,CAAC,uBAAuB,6BAA6B;IACpE,MAAM,CAAC,QAAQ,CAAC,qBAAqB,2BAA2B;IAChE,MAAM,CAAC,QAAQ,CAAC,qBAAqB,2BAA2B;IAChE,MAAM,CAAC,QAAQ,CAAC,yBAAyB,+BAA+B;IACxE,MAAM,CAAC,QAAQ,CAAC,yBAAyB,+BAA+B;IACxE,MAAM,CAAC,QAAQ,CAAC,yBAAyB,+BAA+B;CACzE"}
1
+ {"version":3,"file":"environments.d.ts","sourceRoot":"","sources":["../../src/common/environments.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,qBAAa,eAAe;IAG1B,8DAA8D;IAC9D,MAAM,CAAC,QAAQ,CAAC,wBAAwB,8BAA8B;IACtE,2DAA2D;IAC3D,MAAM,CAAC,QAAQ,CAAC,4BAA4B,kCAAkC;IAC9E,yFAAyF;IACzF,MAAM,CAAC,QAAQ,CAAC,0BAA0B,gCAAgC;IAC1E,+DAA+D;IAC/D,MAAM,CAAC,QAAQ,CAAC,mBAAmB,yBAAyB;IAC5D,+DAA+D;IAC/D,MAAM,CAAC,QAAQ,CAAC,mBAAmB,yBAAyB;IAI5D,MAAM,CAAC,QAAQ,CAAC,0BAA0B,gCAAgC;IAC1E,MAAM,CAAC,QAAQ,CAAC,yBAAyB,+BAA+B;IAExE,MAAM,CAAC,QAAQ,CAAC,kBAAkB,wBAAwB;IAC1D,MAAM,CAAC,QAAQ,CAAC,sBAAsB,4BAA4B;IAElE,MAAM,CAAC,QAAQ,CAAC,0BAA0B,gCAAgC;IAC1E,MAAM,CAAC,QAAQ,CAAC,wBAAwB,8BAA8B;IAEtE,MAAM,CAAC,QAAQ,CAAC,uBAAuB,6BAA6B;IACpE,MAAM,CAAC,QAAQ,CAAC,qBAAqB,2BAA2B;IAChE,MAAM,CAAC,QAAQ,CAAC,qBAAqB,2BAA2B;IAChE,MAAM,CAAC,QAAQ,CAAC,yBAAyB,+BAA+B;IACxE,MAAM,CAAC,QAAQ,CAAC,yBAAyB,+BAA+B;IACxE,MAAM,CAAC,QAAQ,CAAC,yBAAyB,+BAA+B;CACzE"}
@@ -1,21 +1,33 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.EnvironmentKeys = void 0;
4
- /** Environment variable keys used throughout the application. */
4
+ /**
5
+ * Environment variable names.
6
+ *
7
+ * The two groups mean different things and the split is load-bearing: a name in the second group
8
+ * is a CONVENTION an application reads for itself, and setting it changes nothing in IGNIS. Every
9
+ * name here was once presented as framework configuration, which is how a deployment came to set
10
+ * `APP_ENV_APPLICATION_DS_MIGRATION` against a framework that read `APP_ENV_DS_MIGRATION` - and
11
+ * neither name selected anything, so both are gone.
12
+ */
5
13
  class EnvironmentKeys {
14
+ // --- Read by the framework -------------------------------------------------------------------
15
+ /** `AppConstants.APPLICATION_NAME` and the startup banner. */
6
16
  static { this.APP_ENV_APPLICATION_NAME = 'APP_ENV_APPLICATION_NAME'; }
17
+ /** `DateUtility`'s default zone and the startup banner. */
7
18
  static { this.APP_ENV_APPLICATION_TIMEZONE = 'APP_ENV_APPLICATION_TIMEZONE'; }
19
+ /** Set it to enable rotating file logs; unset means console. Also the startup banner. */
20
+ static { this.APP_ENV_LOGGER_FOLDER_PATH = 'APP_ENV_LOGGER_FOLDER_PATH'; }
21
+ /** Fallback host when `IApplicationConfigs.host` is absent. */
22
+ static { this.APP_ENV_SERVER_HOST = 'APP_ENV_SERVER_HOST'; }
23
+ /** Fallback port when `IApplicationConfigs.port` is absent. */
24
+ static { this.APP_ENV_SERVER_PORT = 'APP_ENV_SERVER_PORT'; }
25
+ // --- Convention only: nothing in IGNIS reads these ---------------------------------------------
8
26
  static { this.APP_ENV_APPLICATION_SECRET = 'APP_ENV_APPLICATION_SECRET'; }
27
+ static { this.APP_ENV_APPLICATION_ROLES = 'APP_ENV_APPLICATION_ROLES'; }
9
28
  static { this.APP_ENV_JWT_SECRET = 'APP_ENV_JWT_SECRET'; }
10
29
  static { this.APP_ENV_JWT_EXPIRES_IN = 'APP_ENV_JWT_EXPIRES_IN'; }
11
- static { this.APP_ENV_LOGGER_FOLDER_PATH = 'APP_ENV_LOGGER_FOLDER_PATH'; }
12
- static { this.APP_ENV_APPLICATION_ROLES = 'APP_ENV_APPLICATION_ROLES'; }
13
- static { this.APP_ENV_APPLICATION_DS_MIGRATION = 'APP_ENV_APPLICATION_DS_MIGRATION'; }
14
- static { this.APP_ENV_APPLICATION_DS_AUTHORIZE = 'APP_ENV_APPLICATION_DS_AUTHORIZE'; }
15
- static { this.APP_ENV_APPLICATION_DS_OAUTH2 = 'APP_ENV_APPLICATION_DS_OAUTH2'; }
16
30
  static { this.APP_ENV_OAUTH2_VIEW_FOLDER = 'APP_ENV_OAUTH2_VIEW_FOLDER'; }
17
- static { this.APP_ENV_SERVER_HOST = 'APP_ENV_SERVER_HOST'; }
18
- static { this.APP_ENV_SERVER_PORT = 'APP_ENV_SERVER_PORT'; }
19
31
  static { this.APP_ENV_SERVER_BASE_PATH = 'APP_ENV_SERVER_BASE_PATH'; }
20
32
  static { this.APP_ENV_DATASOURCE_NAME = 'APP_ENV_DATASOURCE_NAME'; }
21
33
  static { this.APP_ENV_POSTGRES_HOST = 'APP_ENV_POSTGRES_HOST'; }
@@ -1 +1 @@
1
- {"version":3,"file":"environments.js","sourceRoot":"","sources":["../../src/common/environments.ts"],"names":[],"mappings":";;;AAAA,iEAAiE;AACjE,MAAa,eAAe;aACV,6BAAwB,GAAG,0BAA0B,CAAC;aACtD,iCAA4B,GAAG,8BAA8B,CAAC;aAC9D,+BAA0B,GAAG,4BAA4B,CAAC;aAE1D,uBAAkB,GAAG,oBAAoB,CAAC;aAC1C,2BAAsB,GAAG,wBAAwB,CAAC;aAElD,+BAA0B,GAAG,4BAA4B,CAAC;aAC1D,8BAAyB,GAAG,2BAA2B,CAAC;aAExD,qCAAgC,GAAG,kCAAkC,CAAC;aACtE,qCAAgC,GAAG,kCAAkC,CAAC;aACtE,kCAA6B,GAAG,+BAA+B,CAAC;aAEhE,+BAA0B,GAAG,4BAA4B,CAAC;aAE1D,wBAAmB,GAAG,qBAAqB,CAAC;aAC5C,wBAAmB,GAAG,qBAAqB,CAAC;aAC5C,6BAAwB,GAAG,0BAA0B,CAAC;aAEtD,4BAAuB,GAAG,yBAAyB,CAAC;aACpD,0BAAqB,GAAG,uBAAuB,CAAC;aAChD,0BAAqB,GAAG,uBAAuB,CAAC;aAChD,8BAAyB,GAAG,2BAA2B,CAAC;aACxD,8BAAyB,GAAG,2BAA2B,CAAC;aACxD,8BAAyB,GAAG,2BAA2B,CAAC;;AA1B1E,0CA2BC"}
1
+ {"version":3,"file":"environments.js","sourceRoot":"","sources":["../../src/common/environments.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;GAQG;AACH,MAAa,eAAe;IAC1B,gGAAgG;IAEhG,8DAA8D;aAC9C,6BAAwB,GAAG,0BAA0B,CAAC;IACtE,2DAA2D;aAC3C,iCAA4B,GAAG,8BAA8B,CAAC;IAC9E,yFAAyF;aACzE,+BAA0B,GAAG,4BAA4B,CAAC;IAC1E,+DAA+D;aAC/C,wBAAmB,GAAG,qBAAqB,CAAC;IAC5D,+DAA+D;aAC/C,wBAAmB,GAAG,qBAAqB,CAAC;IAE5D,kGAAkG;aAElF,+BAA0B,GAAG,4BAA4B,CAAC;aAC1D,8BAAyB,GAAG,2BAA2B,CAAC;aAExD,uBAAkB,GAAG,oBAAoB,CAAC;aAC1C,2BAAsB,GAAG,wBAAwB,CAAC;aAElD,+BAA0B,GAAG,4BAA4B,CAAC;aAC1D,6BAAwB,GAAG,0BAA0B,CAAC;aAEtD,4BAAuB,GAAG,yBAAyB,CAAC;aACpD,0BAAqB,GAAG,uBAAuB,CAAC;aAChD,0BAAqB,GAAG,uBAAuB,CAAC;aAChD,8BAAyB,GAAG,2BAA2B,CAAC;aACxD,8BAAyB,GAAG,2BAA2B,CAAC;aACxD,8BAAyB,GAAG,2BAA2B,CAAC;;AA9B1E,0CA+BC"}
@@ -0,0 +1,5 @@
1
+ export declare class HealthCheckHeaders {
2
+ /** Where a gated stats request carries its key; lowercase because Hono normalises header names. */
3
+ static readonly SECRET_KEY = "x-health-key";
4
+ }
5
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/components/health-check/common/constants.ts"],"names":[],"mappings":"AAAA,qBAAa,kBAAkB;IAC7B,mGAAmG;IACnG,MAAM,CAAC,QAAQ,CAAC,UAAU,kBAAkB;CAC7C"}
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.HealthCheckHeaders = void 0;
4
+ class HealthCheckHeaders {
5
+ /** Where a gated stats request carries its key; lowercase because Hono normalises header names. */
6
+ static { this.SECRET_KEY = 'x-health-key'; }
7
+ }
8
+ exports.HealthCheckHeaders = HealthCheckHeaders;
9
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../src/components/health-check/common/constants.ts"],"names":[],"mappings":";;;AAAA,MAAa,kBAAkB;IAC7B,mGAAmG;aACnF,eAAU,GAAG,cAAc,CAAC;;AAF9C,gDAGC"}
@@ -1,3 +1,4 @@
1
+ export * from './constants';
1
2
  export * from './keys';
2
3
  export * from './rest-paths';
3
4
  export * from './types';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/health-check/common/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/health-check/common/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,QAAQ,CAAC;AACvB,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC"}
@@ -14,6 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./constants"), exports);
17
18
  __exportStar(require("./keys"), exports);
18
19
  __exportStar(require("./rest-paths"), exports);
19
20
  __exportStar(require("./types"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/health-check/common/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yCAAuB;AACvB,+CAA6B;AAC7B,0CAAwB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/health-check/common/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA4B;AAC5B,yCAAuB;AACvB,+CAA6B;AAC7B,0CAAwB"}
@@ -1,4 +1,6 @@
1
1
  export declare class HealthCheckBindingKeys {
2
2
  static readonly HEALTH_CHECK_OPTIONS = "@app/health-check/options";
3
+ /** The component resolves `getAppInfo()` once (it is async) and binds the result for the controller. */
4
+ static readonly APPLICATION_INFO = "@app/health-check/application-info";
3
5
  }
4
6
  //# sourceMappingURL=keys.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"keys.d.ts","sourceRoot":"","sources":["../../../../src/components/health-check/common/keys.ts"],"names":[],"mappings":"AAAA,qBAAa,sBAAsB;IACjC,MAAM,CAAC,QAAQ,CAAC,oBAAoB,+BAA+B;CACpE"}
1
+ {"version":3,"file":"keys.d.ts","sourceRoot":"","sources":["../../../../src/components/health-check/common/keys.ts"],"names":[],"mappings":"AAAA,qBAAa,sBAAsB;IACjC,MAAM,CAAC,QAAQ,CAAC,oBAAoB,+BAA+B;IACnE,wGAAwG;IACxG,MAAM,CAAC,QAAQ,CAAC,gBAAgB,wCAAwC;CACzE"}
@@ -3,6 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.HealthCheckBindingKeys = void 0;
4
4
  class HealthCheckBindingKeys {
5
5
  static { this.HEALTH_CHECK_OPTIONS = '@app/health-check/options'; }
6
+ /** The component resolves `getAppInfo()` once (it is async) and binds the result for the controller. */
7
+ static { this.APPLICATION_INFO = '@app/health-check/application-info'; }
6
8
  }
7
9
  exports.HealthCheckBindingKeys = HealthCheckBindingKeys;
8
10
  //# sourceMappingURL=keys.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"keys.js","sourceRoot":"","sources":["../../../../src/components/health-check/common/keys.ts"],"names":[],"mappings":";;;AAAA,MAAa,sBAAsB;aACjB,yBAAoB,GAAG,2BAA2B,CAAC;;AADrE,wDAEC"}
1
+ {"version":3,"file":"keys.js","sourceRoot":"","sources":["../../../../src/components/health-check/common/keys.ts"],"names":[],"mappings":";;;AAAA,MAAa,sBAAsB;aACjB,yBAAoB,GAAG,2BAA2B,CAAC;IACnE,wGAAwG;aACxF,qBAAgB,GAAG,oCAAoC,CAAC;;AAH1E,wDAIC"}
@@ -1,5 +1,6 @@
1
1
  export declare class HealthCheckRestPaths {
2
2
  static readonly ROOT = "/";
3
3
  static readonly PING = "/ping";
4
+ static readonly STATS = "/stats";
4
5
  }
5
6
  //# sourceMappingURL=rest-paths.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"rest-paths.d.ts","sourceRoot":"","sources":["../../../../src/components/health-check/common/rest-paths.ts"],"names":[],"mappings":"AAAA,qBAAa,oBAAoB;IAC/B,MAAM,CAAC,QAAQ,CAAC,IAAI,OAAO;IAC3B,MAAM,CAAC,QAAQ,CAAC,IAAI,WAAW;CAChC"}
1
+ {"version":3,"file":"rest-paths.d.ts","sourceRoot":"","sources":["../../../../src/components/health-check/common/rest-paths.ts"],"names":[],"mappings":"AAAA,qBAAa,oBAAoB;IAC/B,MAAM,CAAC,QAAQ,CAAC,IAAI,OAAO;IAC3B,MAAM,CAAC,QAAQ,CAAC,IAAI,WAAW;IAC/B,MAAM,CAAC,QAAQ,CAAC,KAAK,YAAY;CAClC"}
@@ -4,6 +4,7 @@ exports.HealthCheckRestPaths = void 0;
4
4
  class HealthCheckRestPaths {
5
5
  static { this.ROOT = '/'; }
6
6
  static { this.PING = '/ping'; }
7
+ static { this.STATS = '/stats'; }
7
8
  }
8
9
  exports.HealthCheckRestPaths = HealthCheckRestPaths;
9
10
  //# sourceMappingURL=rest-paths.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"rest-paths.js","sourceRoot":"","sources":["../../../../src/components/health-check/common/rest-paths.ts"],"names":[],"mappings":";;;AAAA,MAAa,oBAAoB;aACf,SAAI,GAAG,GAAG,CAAC;aACX,SAAI,GAAG,OAAO,CAAC;;AAFjC,oDAGC"}
1
+ {"version":3,"file":"rest-paths.js","sourceRoot":"","sources":["../../../../src/components/health-check/common/rest-paths.ts"],"names":[],"mappings":";;;AAAA,MAAa,oBAAoB;aACf,SAAI,GAAG,GAAG,CAAC;aACX,SAAI,GAAG,OAAO,CAAC;aACf,UAAK,GAAG,QAAQ,CAAC;;AAHnC,oDAIC"}
@@ -1,7 +1,29 @@
1
+ import type { IBuildInfo } from '@venizia/ignis-helpers/core';
1
2
  export interface IHealthCheckOptions {
2
3
  /** Partially-filled bindings are accepted; every missing field falls back to its default. */
3
4
  restOptions?: {
4
5
  path?: string;
5
6
  };
7
+ /**
8
+ * `GET <path>/stats`: build stamp, process and memory. The runtime and version it reports are
9
+ * exactly what an attacker needs to pick an exploit, so the default is CLOSED on every host that
10
+ * is not provably a development one.
11
+ */
12
+ stats?: {
13
+ /**
14
+ * Default: open only when `NODE_ENV` names a development environment
15
+ * (`Environment.DEVELOPMENT_ENVS`). `staging`, `uat`, `production`, an unrecognised name and an
16
+ * unset `NODE_ENV` all keep the route closed.
17
+ */
18
+ enable?: boolean;
19
+ /**
20
+ * When set, the route answers only for a request carrying this value in `X-Health-Key`, and a
21
+ * refusal is indistinguishable from an unmounted route. A blank value fails closed.
22
+ * Without the field the route is open to anything that can reach the port.
23
+ */
24
+ secretKey?: string;
25
+ /** Wins over {@link BuildInfoRegistry}; a host that stamps its own build passes it here. */
26
+ buildInfo?: IBuildInfo;
27
+ };
6
28
  }
7
29
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/components/health-check/common/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,mBAAmB;IAClC,6FAA6F;IAC7F,WAAW,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CACjC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/components/health-check/common/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAE9D,MAAM,WAAW,mBAAmB;IAClC,6FAA6F;IAC7F,WAAW,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAChC;;;;OAIG;IACH,KAAK,CAAC,EAAE;QACN;;;;WAIG;QACH,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB;;;;WAIG;QACH,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,4FAA4F;QAC5F,SAAS,CAAC,EAAE,UAAU,CAAC;KACxB,CAAC;CACH"}
@@ -1,9 +1,15 @@
1
1
  import { BaseApplication } from '../../base/applications';
2
2
  import { BaseComponent } from '@venizia/ignis-kernel';
3
- import { ValueOrPromise } from '@venizia/ignis-helpers/common';
4
- export declare class HealthCheckComponent extends BaseComponent {
3
+ import { type IHealthCheckOptions } from './common';
4
+ export declare class HealthCheckComponent extends BaseComponent<IHealthCheckOptions> {
5
5
  private application;
6
6
  constructor(application: BaseApplication);
7
- binding(): ValueOrPromise<void>;
7
+ /**
8
+ * `application.component(HealthCheckComponent, { options })` lands here. Options given at the
9
+ * call site are the most explicit statement of intent, so they take the binding over anything
10
+ * bound earlier; `initDefaultBindings` then finds the key taken and leaves the default aside.
11
+ */
12
+ configure(opts?: IHealthCheckOptions): Promise<void>;
13
+ binding(): Promise<void>;
8
14
  }
9
15
  //# sourceMappingURL=component.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"component.d.ts","sourceRoot":"","sources":["../../../src/components/health-check/component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAGtD,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAU/D,qBAAa,oBAAqB,SAAQ,aAAa;IAEC,OAAO,CAAC,WAAW;gBAAX,WAAW,EAAE,eAAe;IAajF,OAAO,IAAI,cAAc,CAAC,IAAI,CAAC;CAYzC"}
1
+ {"version":3,"file":"component.d.ts","sourceRoot":"","sources":["../../../src/components/health-check/component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAGtD,OAAO,EAA0B,KAAK,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAU5E,qBAAa,oBAAqB,SAAQ,aAAa,CAAC,mBAAmB,CAAC;IAEpB,OAAO,CAAC,WAAW;gBAAX,WAAW,EAAE,eAAe;IAa1F;;;;OAIG;IACY,SAAS,CAAC,IAAI,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBpD,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAsBxC"}
@@ -38,13 +38,40 @@ let HealthCheckComponent = HealthCheckComponent_1 = class HealthCheckComponent e
38
38
  });
39
39
  this.application = application;
40
40
  }
41
- binding() {
41
+ /**
42
+ * `application.component(HealthCheckComponent, { options })` lands here. Options given at the
43
+ * call site are the most explicit statement of intent, so they take the binding over anything
44
+ * bound earlier; `initDefaultBindings` then finds the key taken and leaves the default aside.
45
+ */
46
+ async configure(opts) {
47
+ // The base short-circuits a second call; binding before that check would swap the options
48
+ // under routes that were already mounted from the first ones.
49
+ if (this.isConfigured) {
50
+ return;
51
+ }
52
+ if (opts !== undefined) {
53
+ this.application
54
+ .bind({ key: common_1.HealthCheckBindingKeys.HEALTH_CHECK_OPTIONS })
55
+ .toValue(opts);
56
+ }
57
+ await super.configure(opts);
58
+ }
59
+ async binding() {
42
60
  const healthOptions = this.application.get({
43
61
  key: common_1.HealthCheckBindingKeys.HEALTH_CHECK_OPTIONS,
44
62
  isOptional: true,
45
63
  });
46
64
  // A partially filled options binding (env/config driven) must not take the app down at boot.
47
65
  const path = healthOptions?.restOptions?.path ?? DEFAULT_REST_PATH;
66
+ // `getAppInfo()` is async while the container builds the controller synchronously, so the
67
+ // resolved value is bound here rather than resolved inside the controller.
68
+ this.application
69
+ .bind({ key: common_1.HealthCheckBindingKeys.APPLICATION_INFO })
70
+ .toValue(await this.application.getAppInfo());
71
+ // The gate and the app identity are per container, but `@controller` writes the PATH onto this
72
+ // one shared class in the process-wide MetadataRegistry, and `RestComponent` reads it back at
73
+ // step 8. Two applications booted one after another are safe; two booted CONCURRENTLY with
74
+ // different `restOptions.path` would race here, and nothing in this component prevents that.
48
75
  Reflect.decorate([(0, metadata_1.controller)({ path })], controller_1.HealthCheckController);
49
76
  this.application.controller(controller_1.HealthCheckController);
50
77
  }
@@ -1 +1 @@
1
- {"version":3,"file":"component.js","sourceRoot":"","sources":["../../../src/components/health-check/component.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sDAAsD;AACtD,wDAAsD;AACtD,8CAAqD;AACrD,wDAAqD;AAErD,qCAAuE;AACvE,6CAAqD;AACrD,wDAAgD;AAEhD,MAAM,iBAAiB,GAAG,SAAS,CAAC;AACpC,MAAM,eAAe,GAAwB;IAC3C,WAAW,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE;CACzC,CAAC;AAEF,IAAa,oBAAoB,4BAAjC,MAAa,oBAAqB,SAAQ,4BAAa;IACrD,YAC8D,WAA4B;QAExF,KAAK,CAAC;YACJ,KAAK,EAAE,sBAAoB,CAAC,IAAI;YAChC,WAAW,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE;YACrD,QAAQ,EAAE;gBACR,CAAC,+BAAsB,CAAC,oBAAoB,CAAC,EAAE,sBAAO,CAAC,IAAI,CAAsB;oBAC/E,GAAG,EAAE,+BAAsB,CAAC,oBAAoB;iBACjD,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC;aAC5B;SACF,CAAC,CAAC;QAVyD,gBAAW,GAAX,WAAW,CAAiB;IAW1F,CAAC;IAEQ,OAAO;QACd,MAAM,aAAa,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAsB;YAC9D,GAAG,EAAE,+BAAsB,CAAC,oBAAoB;YAChD,UAAU,EAAE,IAAI;SACjB,CAAC,CAAC;QAEH,6FAA6F;QAC7F,MAAM,IAAI,GAAG,aAAa,EAAE,WAAW,EAAE,IAAI,IAAI,iBAAiB,CAAC;QAEnE,OAAO,CAAC,QAAQ,CAAC,CAAC,IAAA,qBAAU,EAAC,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,kCAAqB,CAAC,CAAC;QAChE,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,kCAAqB,CAAC,CAAC;IACrD,CAAC;CACF,CAAA;AA3BY,oDAAoB;+BAApB,oBAAoB;IAE5B,WAAA,IAAA,iBAAM,EAAC,EAAE,GAAG,EAAE,2BAAY,CAAC,oBAAoB,EAAE,CAAC,CAAA;qCAAsB,8BAAe;GAF/E,oBAAoB,CA2BhC"}
1
+ {"version":3,"file":"component.js","sourceRoot":"","sources":["../../../src/components/health-check/component.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sDAAsD;AACtD,wDAAsD;AACtD,8CAAqD;AACrD,wDAAqD;AACrD,qCAA4E;AAC5E,6CAAqD;AACrD,wDAAgD;AAGhD,MAAM,iBAAiB,GAAG,SAAS,CAAC;AACpC,MAAM,eAAe,GAAwB;IAC3C,WAAW,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE;CACzC,CAAC;AAEF,IAAa,oBAAoB,4BAAjC,MAAa,oBAAqB,SAAQ,4BAAkC;IAC1E,YAC8D,WAA4B;QAExF,KAAK,CAAC;YACJ,KAAK,EAAE,sBAAoB,CAAC,IAAI;YAChC,WAAW,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE;YACrD,QAAQ,EAAE;gBACR,CAAC,+BAAsB,CAAC,oBAAoB,CAAC,EAAE,sBAAO,CAAC,IAAI,CAAsB;oBAC/E,GAAG,EAAE,+BAAsB,CAAC,oBAAoB;iBACjD,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC;aAC5B;SACF,CAAC,CAAC;QAVyD,gBAAW,GAAX,WAAW,CAAiB;IAW1F,CAAC;IAED;;;;OAIG;IACM,KAAK,CAAC,SAAS,CAAC,IAA0B;QACjD,0FAA0F;QAC1F,8DAA8D;QAC9D,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACtB,OAAO;QACT,CAAC;QAED,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,IAAI,CAAC,WAAW;iBACb,IAAI,CAAsB,EAAE,GAAG,EAAE,+BAAsB,CAAC,oBAAoB,EAAE,CAAC;iBAC/E,OAAO,CAAC,IAAI,CAAC,CAAC;QACnB,CAAC;QAED,MAAM,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC;IAEQ,KAAK,CAAC,OAAO;QACpB,MAAM,aAAa,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAsB;YAC9D,GAAG,EAAE,+BAAsB,CAAC,oBAAoB;YAChD,UAAU,EAAE,IAAI;SACjB,CAAC,CAAC;QAEH,6FAA6F;QAC7F,MAAM,IAAI,GAAG,aAAa,EAAE,WAAW,EAAE,IAAI,IAAI,iBAAiB,CAAC;QAEnE,0FAA0F;QAC1F,2EAA2E;QAC3E,IAAI,CAAC,WAAW;aACb,IAAI,CAAmB,EAAE,GAAG,EAAE,+BAAsB,CAAC,gBAAgB,EAAE,CAAC;aACxE,OAAO,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,CAAC,CAAC;QAEhD,+FAA+F;QAC/F,8FAA8F;QAC9F,2FAA2F;QAC3F,6FAA6F;QAC7F,OAAO,CAAC,QAAQ,CAAC,CAAC,IAAA,qBAAU,EAAC,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,kCAAqB,CAAC,CAAC;QAChE,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,kCAAqB,CAAC,CAAC;IACrD,CAAC;CACF,CAAA;AA1DY,oDAAoB;+BAApB,oBAAoB;IAE5B,WAAA,IAAA,iBAAM,EAAC,EAAE,GAAG,EAAE,2BAAY,CAAC,oBAAoB,EAAE,CAAC,CAAA;qCAAsB,8BAAe;GAF/E,oBAAoB,CA0DhC"}
@@ -1,7 +1,15 @@
1
- import { BaseRestController, IControllerOptions, TRouteContext } from '../../base/controllers';
1
+ import { BaseRestController, TRouteContext } from '../../base/controllers';
2
+ import type { IApplicationInfo } from '@venizia/ignis-kernel';
2
3
  import { ValueOrPromise } from '@venizia/ignis-helpers/common';
4
+ import { type IHealthCheckOptions } from './common';
3
5
  export declare class HealthCheckController extends BaseRestController {
4
- constructor(opts: IControllerOptions);
6
+ private readonly healthOptions;
7
+ private readonly appInfo?;
8
+ /**
9
+ * Both dependencies arrive through the container, so two applications in one process each get
10
+ * their own gate - a static field would let the last one to boot decide for every other.
11
+ */
12
+ constructor(healthOptions?: IHealthCheckOptions, appInfo?: IApplicationInfo | undefined);
5
13
  binding(): ValueOrPromise<void>;
6
14
  pingPong(context: TRouteContext): import("@venizia/ignis-kernel").TJsonResponse<unknown, 200>;
7
15
  }
@@ -1 +1 @@
1
- {"version":3,"file":"controller.d.ts","sourceRoot":"","sources":["../../../src/components/health-check/controller.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAI3F,OAAO,EAAQ,cAAc,EAAE,MAAM,+BAA+B,CAAC;AA2CrE,qBAAa,qBAAsB,SAAQ,kBAAkB;gBAC/C,IAAI,EAAE,kBAAkB;IAU3B,OAAO,IAAI,cAAc,CAAC,IAAI,CAAC;IAcxC,QAAQ,CAAC,OAAO,EAAE,aAAa;CAShC"}
1
+ {"version":3,"file":"controller.d.ts","sourceRoot":"","sources":["../../../src/components/health-check/controller.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAGvE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAE9D,OAAO,EAAQ,cAAc,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAIL,KAAK,mBAAmB,EACzB,MAAM,UAAU,CAAC;AAwElB,qBAAa,qBAAsB,SAAQ,kBAAkB;IAOzD,OAAO,CAAC,QAAQ,CAAC,aAAa;IAE9B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC;IAR3B;;;OAGG;gBAGgB,aAAa,GAAE,mBAAwB,EAEvC,OAAO,CAAC,EAAE,gBAAgB,YAAA;IAQpC,OAAO,IAAI,cAAc,CAAC,IAAI,CAAC;IAuCxC,QAAQ,CAAC,OAAO,EAAE,aAAa;CAShC"}
@@ -8,6 +8,10 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
8
8
  var __metadata = (this && this.__metadata) || function (k, v) {
9
9
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
10
  };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ var HealthCheckController_1;
11
15
  Object.defineProperty(exports, "__esModule", { value: true });
12
16
  exports.HealthCheckController = void 0;
13
17
  const controllers_1 = require("../../base/controllers");
@@ -16,18 +20,47 @@ const ignis_kernel_1 = require("@venizia/ignis-kernel");
16
20
  const zod_openapi_1 = require("@hono/zod-openapi");
17
21
  const common_1 = require("@venizia/ignis-helpers/common");
18
22
  const common_2 = require("./common");
23
+ const reporter_1 = require("./reporter");
19
24
  const RouteConfigs = {
20
25
  ROOT: {
21
26
  method: common_1.HTTP.Methods.GET,
22
27
  path: common_2.HealthCheckRestPaths.ROOT,
23
28
  responses: (0, ignis_kernel_1.jsonResponse)({
24
- schema: zod_openapi_1.z.object({ status: zod_openapi_1.z.string() }).openapi({
29
+ schema: zod_openapi_1.z.object({ status: zod_openapi_1.z.string(), timestamp: zod_openapi_1.z.iso.datetime() }).openapi({
25
30
  description: 'HealthCheck Schema',
26
- examples: [{ status: 'ok' }],
31
+ examples: [{ status: 'ok', timestamp: new Date().toISOString() }],
27
32
  }),
28
33
  description: 'Health check status',
29
34
  }),
30
35
  },
36
+ STATS: {
37
+ method: common_1.HTTP.Methods.GET,
38
+ path: common_2.HealthCheckRestPaths.STATS,
39
+ responses: (0, ignis_kernel_1.jsonResponse)({
40
+ schema: zod_openapi_1.z
41
+ .object({
42
+ status: zod_openapi_1.z.string(),
43
+ timestamp: zod_openapi_1.z.iso.datetime(),
44
+ build: zod_openapi_1.z.object({
45
+ service: zod_openapi_1.z.string(),
46
+ version: zod_openapi_1.z.string(),
47
+ commit: zod_openapi_1.z.string(),
48
+ branch: zod_openapi_1.z.string(),
49
+ builtAt: zod_openapi_1.z.string(),
50
+ }),
51
+ process: zod_openapi_1.z.object({
52
+ pid: zod_openapi_1.z.number(),
53
+ uptime: zod_openapi_1.z.number(),
54
+ uptimeHuman: zod_openapi_1.z.string(),
55
+ runtime: zod_openapi_1.z.string(),
56
+ environment: zod_openapi_1.z.string(),
57
+ }),
58
+ memory: zod_openapi_1.z.object({ rss: zod_openapi_1.z.string(), heapUsed: zod_openapi_1.z.string(), heapTotal: zod_openapi_1.z.string() }),
59
+ })
60
+ .openapi({ description: 'HealthCheck Stats Schema' }),
61
+ description: 'Build stamp, process and memory - closed outside the development environments unless enabled',
62
+ }),
63
+ },
31
64
  PING: {
32
65
  method: common_1.HTTP.Methods.POST,
33
66
  path: common_2.HealthCheckRestPaths.PING,
@@ -55,24 +88,45 @@ const RouteConfigs = {
55
88
  }),
56
89
  },
57
90
  };
58
- class HealthCheckController extends controllers_1.BaseRestController {
59
- constructor(opts) {
60
- super({
61
- ...opts,
62
- scope: HealthCheckController.name,
63
- });
91
+ let HealthCheckController = HealthCheckController_1 = class HealthCheckController extends controllers_1.BaseRestController {
92
+ /**
93
+ * Both dependencies arrive through the container, so two applications in one process each get
94
+ * their own gate - a static field would let the last one to boot decide for every other.
95
+ */
96
+ constructor(healthOptions = {}, appInfo) {
97
+ super({ scope: HealthCheckController_1.name });
98
+ this.healthOptions = healthOptions;
99
+ this.appInfo = appInfo;
64
100
  // Note: This is optional declare internal controller route definitions
65
101
  this.definitions = RouteConfigs;
66
102
  }
67
103
  binding() {
68
- // Method 1: Using 'bindRoute' to create a controller route
104
+ // Public liveness probe: status and clock only. Nothing here names a runtime or a version.
69
105
  this.bindRoute({ configs: RouteConfigs.ROOT }).to({
70
106
  handler: context => {
71
- return context.json({ status: 'ok' }, common_1.HTTP.ResultCodes.RS_2.Ok);
107
+ return context.json(reporter_1.HealthCheckReporter.buildSummary(), common_1.HTTP.ResultCodes.RS_2.Ok);
108
+ },
109
+ });
110
+ if (!reporter_1.HealthCheckReporter.isStatsEnabled({ options: this.healthOptions })) {
111
+ this.logger
112
+ .for(this.binding.name)
113
+ .debug('Stats route disabled | path: %s', common_2.HealthCheckRestPaths.STATS);
114
+ return;
115
+ }
116
+ this.bindRoute({ configs: RouteConfigs.STATS }).to({
117
+ handler: context => {
118
+ // `context.notFound()`, not a thrown 404: it runs the application's own notFound handler,
119
+ // so the refusal is byte-identical to the answer for a route that was never mounted. A
120
+ // thrown `ApplicationError` serializes a different body and would confirm the route exists.
121
+ if (!reporter_1.HealthCheckReporter.isStatsAuthorized({
122
+ options: this.healthOptions,
123
+ header: context.req.header(common_2.HealthCheckHeaders.SECRET_KEY),
124
+ })) {
125
+ return context.notFound();
126
+ }
127
+ return context.json(reporter_1.HealthCheckReporter.buildStats({ options: this.healthOptions, appInfo: this.appInfo }), common_1.HTTP.ResultCodes.RS_2.Ok);
72
128
  },
73
129
  });
74
- // Method 2: Using 'defineRoute' to create a controller route
75
- /* this.defineRoute({ configs: RouteConfigs.ROOT, handler: context => context.json({ status: 'ok' }, HTTP.ResultCodes.RS_2.Ok) }); */
76
130
  }
77
131
  // Method 3: Using 'decorators' to create a controller route, with an explicit type assertion for the validated request data
78
132
  pingPong(context) {
@@ -80,7 +134,7 @@ class HealthCheckController extends controllers_1.BaseRestController {
80
134
  // Return type is automatically validated against the response schema
81
135
  return context.json({ type: 'PONG', date: new Date().toISOString(), message }, common_1.HTTP.ResultCodes.RS_2.Ok);
82
136
  }
83
- }
137
+ };
84
138
  exports.HealthCheckController = HealthCheckController;
85
139
  __decorate([
86
140
  (0, metadata_1.api)({ configs: RouteConfigs.PING }),
@@ -88,4 +142,9 @@ __decorate([
88
142
  __metadata("design:paramtypes", [Object]),
89
143
  __metadata("design:returntype", void 0)
90
144
  ], HealthCheckController.prototype, "pingPong", null);
145
+ exports.HealthCheckController = HealthCheckController = HealthCheckController_1 = __decorate([
146
+ __param(0, (0, metadata_1.inject)({ key: common_2.HealthCheckBindingKeys.HEALTH_CHECK_OPTIONS, isOptional: true })),
147
+ __param(1, (0, metadata_1.inject)({ key: common_2.HealthCheckBindingKeys.APPLICATION_INFO, isOptional: true })),
148
+ __metadata("design:paramtypes", [Object, Object])
149
+ ], HealthCheckController);
91
150
  //# sourceMappingURL=controller.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"controller.js","sourceRoot":"","sources":["../../../src/components/health-check/controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"controller.js","sourceRoot":"","sources":["../../../src/components/health-check/controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAuE;AACvE,8CAA8C;AAC9C,wDAAkE;AAElE,mDAAsC;AACtC,0DAAqE;AACrE,qCAKkB;AAClB,yCAAiD;AAEjD,MAAM,YAAY,GAAG;IACnB,IAAI,EAAE;QACJ,MAAM,EAAE,aAAI,CAAC,OAAO,CAAC,GAAG;QACxB,IAAI,EAAE,6BAAoB,CAAC,IAAI;QAC/B,SAAS,EAAE,IAAA,2BAAY,EAAC;YACtB,MAAM,EAAE,eAAC,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,eAAC,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,eAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC;gBAC5E,WAAW,EAAE,oBAAoB;gBACjC,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC;aAClE,CAAC;YACF,WAAW,EAAE,qBAAqB;SACnC,CAAC;KACH;IACD,KAAK,EAAE;QACL,MAAM,EAAE,aAAI,CAAC,OAAO,CAAC,GAAG;QACxB,IAAI,EAAE,6BAAoB,CAAC,KAAK;QAChC,SAAS,EAAE,IAAA,2BAAY,EAAC;YACtB,MAAM,EAAE,eAAC;iBACN,MAAM,CAAC;gBACN,MAAM,EAAE,eAAC,CAAC,MAAM,EAAE;gBAClB,SAAS,EAAE,eAAC,CAAC,GAAG,CAAC,QAAQ,EAAE;gBAC3B,KAAK,EAAE,eAAC,CAAC,MAAM,CAAC;oBACd,OAAO,EAAE,eAAC,CAAC,MAAM,EAAE;oBACnB,OAAO,EAAE,eAAC,CAAC,MAAM,EAAE;oBACnB,MAAM,EAAE,eAAC,CAAC,MAAM,EAAE;oBAClB,MAAM,EAAE,eAAC,CAAC,MAAM,EAAE;oBAClB,OAAO,EAAE,eAAC,CAAC,MAAM,EAAE;iBACpB,CAAC;gBACF,OAAO,EAAE,eAAC,CAAC,MAAM,CAAC;oBAChB,GAAG,EAAE,eAAC,CAAC,MAAM,EAAE;oBACf,MAAM,EAAE,eAAC,CAAC,MAAM,EAAE;oBAClB,WAAW,EAAE,eAAC,CAAC,MAAM,EAAE;oBACvB,OAAO,EAAE,eAAC,CAAC,MAAM,EAAE;oBACnB,WAAW,EAAE,eAAC,CAAC,MAAM,EAAE;iBACxB,CAAC;gBACF,MAAM,EAAE,eAAC,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,eAAC,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,eAAC,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,eAAC,CAAC,MAAM,EAAE,EAAE,CAAC;aACnF,CAAC;iBACD,OAAO,CAAC,EAAE,WAAW,EAAE,0BAA0B,EAAE,CAAC;YACvD,WAAW,EACT,8FAA8F;SACjG,CAAC;KACH;IACD,IAAI,EAAE;QACJ,MAAM,EAAE,aAAI,CAAC,OAAO,CAAC,IAAI;QACzB,IAAI,EAAE,6BAAoB,CAAC,IAAI;QAC/B,OAAO,EAAE;YACP,IAAI,EAAE,IAAA,0BAAW,EAAC;gBAChB,WAAW,EAAE,qBAAqB;gBAClC,MAAM,EAAE,eAAC,CAAC,MAAM,CAAC;oBACf,IAAI,EAAE,eAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC;oBAC3C,OAAO,EAAE,eAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC;iBACpC,CAAC;aACH,CAAC;SACH;QACD,SAAS,EAAE,IAAA,2BAAY,EAAC;YACtB,MAAM,EAAE,eAAC;iBACN,MAAM,CAAC;gBACN,IAAI,EAAE,eAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC;gBAC3C,IAAI,EAAE,eAAC,CAAC,GAAG,CAAC,QAAQ,EAAE;gBACtB,OAAO,EAAE,eAAC,CAAC,MAAM,EAAE;aACpB,CAAC;iBACD,OAAO,CAAC;gBACP,WAAW,EAAE,6BAA6B;gBAC1C,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;aAC9D,CAAC;YACJ,WAAW,EAAE,8BAA8B;SAC5C,CAAC;KACH;CACO,CAAC;AAEX,IAAa,qBAAqB,6BAAlC,MAAa,qBAAsB,SAAQ,gCAAkB;IAC3D;;;OAGG;IACH,YAEmB,gBAAqC,EAAE,EAEvC,OAA0B;QAE3C,KAAK,CAAC,EAAE,KAAK,EAAE,uBAAqB,CAAC,IAAI,EAAE,CAAC,CAAC;QAJ5B,kBAAa,GAAb,aAAa,CAA0B;QAEvC,YAAO,GAAP,OAAO,CAAmB;QAI3C,uEAAuE;QACvE,IAAI,CAAC,WAAW,GAAG,YAAY,CAAC;IAClC,CAAC;IAEQ,OAAO;QACd,2FAA2F;QAC3F,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;YAChD,OAAO,EAAE,OAAO,CAAC,EAAE;gBACjB,OAAO,OAAO,CAAC,IAAI,CAAC,8BAAmB,CAAC,YAAY,EAAE,EAAE,aAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACpF,CAAC;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,8BAAmB,CAAC,cAAc,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC,EAAE,CAAC;YACzE,IAAI,CAAC,MAAM;iBACR,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;iBACtB,KAAK,CAAC,iCAAiC,EAAE,6BAAoB,CAAC,KAAK,CAAC,CAAC;YACxE,OAAO;QACT,CAAC;QAED,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC;YACjD,OAAO,EAAE,OAAO,CAAC,EAAE;gBACjB,0FAA0F;gBAC1F,uFAAuF;gBACvF,4FAA4F;gBAC5F,IACE,CAAC,8BAAmB,CAAC,iBAAiB,CAAC;oBACrC,OAAO,EAAE,IAAI,CAAC,aAAa;oBAC3B,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,2BAAkB,CAAC,UAAU,CAAC;iBAC1D,CAAC,EACF,CAAC;oBACD,OAAO,OAAO,CAAC,QAAQ,EAAE,CAAC;gBAC5B,CAAC;gBAED,OAAO,OAAO,CAAC,IAAI,CACjB,8BAAmB,CAAC,UAAU,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,aAAa,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,EACtF,aAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CACzB,CAAC;YACJ,CAAC;SACF,CAAC,CAAC;IACL,CAAC;IAED,4HAA4H;IAE5H,QAAQ,CAAC,OAAsB;QAC7B,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAqC,MAAM,CAAC,CAAC;QAElF,qEAAqE;QACrE,OAAO,OAAO,CAAC,IAAI,CACjB,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,OAAO,EAAE,EACzD,aAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CACzB,CAAC;IACJ,CAAC;CACF,CAAA;AAjEY,sDAAqB;AAwDhC;IADC,IAAA,cAAG,EAAC,EAAE,OAAO,EAAE,YAAY,CAAC,IAAI,EAAE,CAAC;;;;qDASnC;gCAhEU,qBAAqB;IAM7B,WAAA,IAAA,iBAAM,EAAC,EAAE,GAAG,EAAE,+BAAsB,CAAC,oBAAoB,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAA;IAE9E,WAAA,IAAA,iBAAM,EAAC,EAAE,GAAG,EAAE,+BAAsB,CAAC,gBAAgB,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAA;;GARlE,qBAAqB,CAiEjC"}
@@ -1,4 +1,5 @@
1
1
  export * from './common';
2
2
  export * from './component';
3
3
  export * from './controller';
4
+ export * from './reporter';
4
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/health-check/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/health-check/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC"}
@@ -17,4 +17,5 @@ Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./common"), exports);
18
18
  __exportStar(require("./component"), exports);
19
19
  __exportStar(require("./controller"), exports);
20
+ __exportStar(require("./reporter"), exports);
20
21
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/health-check/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,8CAA4B;AAC5B,+CAA6B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/health-check/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,8CAA4B;AAC5B,+CAA6B;AAC7B,6CAA2B"}
@@ -0,0 +1,84 @@
1
+ import { type TBuildInfoRecord } from '@venizia/ignis-helpers/core';
2
+ import type { IApplicationInfo } from '@venizia/ignis-kernel';
3
+ import type { IHealthCheckOptions } from './common';
4
+ /**
5
+ * Assembles what `GET /health` and `GET /health/stats` answer.
6
+ *
7
+ * Never reads the filesystem and never spawns `git`: the build stamp is PUSHED in at the
8
+ * entrypoint through {@link BuildInfoRegistry} (or the component's own options), so a
9
+ * `bun build --compile` binary and a Distroless image - neither of which has `node_modules`,
10
+ * `.git` or a readable `package.json` - report exactly what a dev machine does.
11
+ */
12
+ export declare class HealthCheckReporter {
13
+ private static readonly BYTES_PER_MB;
14
+ /** Public liveness answer: liveness and the server clock, nothing a probe cannot already see. */
15
+ static buildSummary(): {
16
+ status: string;
17
+ timestamp: string;
18
+ };
19
+ /**
20
+ * Fail-closed, copying `AppErrorMiddleware.isProduction`: the default is MEMBERSHIP in
21
+ * `DEVELOPMENT_ENVS`, never inequality against `production`. `staging`, `uat`, `alpha` and a
22
+ * typo all keep this route shut, because the runtime and release it names are what picks an
23
+ * exploit. `ambient`, not `current`: an unset `NODE_ENV` is a host that cannot prove it is a dev
24
+ * machine, and `current` would mask it as `development`.
25
+ *
26
+ * `enable` is compared to `true`/`false` rather than read through `??`: this binding is
27
+ * env/config driven, and a JSON-derived `"false"` is truthy - an operator who wrote false would
28
+ * otherwise get the route mounted.
29
+ */
30
+ static isStatsEnabled(opts: {
31
+ options: IHealthCheckOptions;
32
+ /** Reads the ambient environment; injected by tests so nothing has to write `process.env`. */
33
+ environment?: () => string | undefined;
34
+ }): boolean;
35
+ /**
36
+ * No `secretKey` configured leaves the route open to whatever can reach the port - stated, not
37
+ * implied. Anything that is not a non-blank string fails CLOSED: a blank or config-derived
38
+ * non-string key is a pipeline that lost the variable, and reading it as "no key" would publish
39
+ * the route the operator meant to lock.
40
+ *
41
+ * The comparison is a plain `===`: a remote timing attack on a header compare is not practical
42
+ * through an HTTP stack, and a constant-time digest compare would buy nothing here.
43
+ */
44
+ static isStatsAuthorized(opts: {
45
+ options: IHealthCheckOptions;
46
+ header?: string;
47
+ }): boolean;
48
+ /** The slot is a process-wide `globalThis` entry any dependency can write, and `IBuildInfo` types it without checking - so a non-string never reaches the response schema, which declares `z.string()`. */
49
+ private static extractText;
50
+ /**
51
+ * Explicit options win over the registry, and the application's own `getAppInfo()` fills what
52
+ * neither carries - so a host that ran no generator still reports its real name and version.
53
+ */
54
+ static resolveBuildInfo(opts: {
55
+ options: IHealthCheckOptions;
56
+ appInfo?: IApplicationInfo;
57
+ }): TBuildInfoRecord;
58
+ /** `3661` -> `1h 1m 1s`: an operator reads a restart out of this faster than out of a float. */
59
+ static toHumanUptime(opts: {
60
+ seconds: number;
61
+ }): string;
62
+ private static toMegabytes;
63
+ static buildStats(opts: {
64
+ options: IHealthCheckOptions;
65
+ appInfo?: IApplicationInfo;
66
+ }): {
67
+ build: Required<import("@venizia/ignis-helpers").IBuildInfo>;
68
+ process: {
69
+ pid: number;
70
+ uptime: number;
71
+ uptimeHuman: string;
72
+ runtime: string;
73
+ environment: string;
74
+ };
75
+ memory: {
76
+ rss: string;
77
+ heapUsed: string;
78
+ heapTotal: string;
79
+ };
80
+ status: string;
81
+ timestamp: string;
82
+ };
83
+ }
84
+ //# sourceMappingURL=reporter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reporter.d.ts","sourceRoot":"","sources":["../../../src/components/health-check/reporter.ts"],"names":[],"mappings":"AACA,OAAO,EAAqB,KAAK,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AACvF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAEpD;;;;;;;GAOG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAe;IAEnD,iGAAiG;IACjG,MAAM,CAAC,YAAY,IAAI;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE;IAI5D;;;;;;;;;;OAUG;IACH,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE;QAC1B,OAAO,EAAE,mBAAmB,CAAC;QAC7B,8FAA8F;QAC9F,WAAW,CAAC,EAAE,MAAM,MAAM,GAAG,SAAS,CAAC;KACxC,GAAG,OAAO;IAcX;;;;;;;;OAQG;IACH,MAAM,CAAC,iBAAiB,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,mBAAmB,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO;IAa1F,2MAA2M;IAC3M,OAAO,CAAC,MAAM,CAAC,WAAW;IAI1B;;;OAGG;IACH,MAAM,CAAC,gBAAgB,CAAC,IAAI,EAAE;QAC5B,OAAO,EAAE,mBAAmB,CAAC;QAC7B,OAAO,CAAC,EAAE,gBAAgB,CAAC;KAC5B,GAAG,gBAAgB;IAepB,gGAAgG;IAChG,MAAM,CAAC,aAAa,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,GAAG,MAAM;IASvD,OAAO,CAAC,MAAM,CAAC,WAAW;IAI1B,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,mBAAmB,CAAC;QAAC,OAAO,CAAC,EAAE,gBAAgB,CAAA;KAAE;;;;;;;;;;;;;;gBAhGnD,MAAM;mBAAa,MAAM;;CAuH3D"}
@@ -0,0 +1,115 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.HealthCheckReporter = void 0;
4
+ const ignis_helpers_1 = require("@venizia/ignis-helpers");
5
+ const core_1 = require("@venizia/ignis-helpers/core");
6
+ /**
7
+ * Assembles what `GET /health` and `GET /health/stats` answer.
8
+ *
9
+ * Never reads the filesystem and never spawns `git`: the build stamp is PUSHED in at the
10
+ * entrypoint through {@link BuildInfoRegistry} (or the component's own options), so a
11
+ * `bun build --compile` binary and a Distroless image - neither of which has `node_modules`,
12
+ * `.git` or a readable `package.json` - report exactly what a dev machine does.
13
+ */
14
+ class HealthCheckReporter {
15
+ static { this.BYTES_PER_MB = 1024 * 1024; }
16
+ /** Public liveness answer: liveness and the server clock, nothing a probe cannot already see. */
17
+ static buildSummary() {
18
+ return { status: 'ok', timestamp: new Date().toISOString() };
19
+ }
20
+ /**
21
+ * Fail-closed, copying `AppErrorMiddleware.isProduction`: the default is MEMBERSHIP in
22
+ * `DEVELOPMENT_ENVS`, never inequality against `production`. `staging`, `uat`, `alpha` and a
23
+ * typo all keep this route shut, because the runtime and release it names are what picks an
24
+ * exploit. `ambient`, not `current`: an unset `NODE_ENV` is a host that cannot prove it is a dev
25
+ * machine, and `current` would mask it as `development`.
26
+ *
27
+ * `enable` is compared to `true`/`false` rather than read through `??`: this binding is
28
+ * env/config driven, and a JSON-derived `"false"` is truthy - an operator who wrote false would
29
+ * otherwise get the route mounted.
30
+ */
31
+ static isStatsEnabled(opts) {
32
+ const { enable } = opts.options.stats ?? {};
33
+ if (typeof enable === 'boolean') {
34
+ return enable;
35
+ }
36
+ const ambient = opts.environment ? opts.environment() : ignis_helpers_1.Environment.ambient;
37
+ if (ambient === undefined) {
38
+ return false;
39
+ }
40
+ return ignis_helpers_1.Environment.DEVELOPMENT_ENVS.has(ambient.toLowerCase());
41
+ }
42
+ /**
43
+ * No `secretKey` configured leaves the route open to whatever can reach the port - stated, not
44
+ * implied. Anything that is not a non-blank string fails CLOSED: a blank or config-derived
45
+ * non-string key is a pipeline that lost the variable, and reading it as "no key" would publish
46
+ * the route the operator meant to lock.
47
+ *
48
+ * The comparison is a plain `===`: a remote timing attack on a header compare is not practical
49
+ * through an HTTP stack, and a constant-time digest compare would buy nothing here.
50
+ */
51
+ static isStatsAuthorized(opts) {
52
+ const secretKey = opts.options.stats?.secretKey;
53
+ if (secretKey === undefined) {
54
+ return true;
55
+ }
56
+ if (typeof secretKey !== 'string' || secretKey.trim().length === 0) {
57
+ return false;
58
+ }
59
+ return opts.header === secretKey;
60
+ }
61
+ /** The slot is a process-wide `globalThis` entry any dependency can write, and `IBuildInfo` types it without checking - so a non-string never reaches the response schema, which declares `z.string()`. */
62
+ static extractText(opts) {
63
+ return typeof opts.value === 'string' && opts.value.length > 0 ? opts.value : undefined;
64
+ }
65
+ /**
66
+ * Explicit options win over the registry, and the application's own `getAppInfo()` fills what
67
+ * neither carries - so a host that ran no generator still reports its real name and version.
68
+ */
69
+ static resolveBuildInfo(opts) {
70
+ const stamp = opts.options.stats?.buildInfo ?? core_1.BuildInfoRegistry.get() ?? {};
71
+ const extract = HealthCheckReporter.extractText;
72
+ return {
73
+ service: extract({ value: stamp.service }) ?? opts.appInfo?.name ?? core_1.BuildInfoRegistry.UNSPECIFIED,
74
+ version: extract({ value: stamp.version }) ?? opts.appInfo?.version ?? core_1.BuildInfoRegistry.UNSPECIFIED,
75
+ commit: extract({ value: stamp.commit }) ?? core_1.BuildInfoRegistry.UNSPECIFIED,
76
+ branch: extract({ value: stamp.branch }) ?? core_1.BuildInfoRegistry.UNSPECIFIED,
77
+ builtAt: extract({ value: stamp.builtAt }) ?? core_1.BuildInfoRegistry.UNSPECIFIED,
78
+ };
79
+ }
80
+ /** `3661` -> `1h 1m 1s`: an operator reads a restart out of this faster than out of a float. */
81
+ static toHumanUptime(opts) {
82
+ const total = Math.floor(opts.seconds);
83
+ const hours = Math.floor(total / 3600);
84
+ const minutes = Math.floor((total % 3600) / 60);
85
+ const seconds = total % 60;
86
+ return `${hours}h ${minutes}m ${seconds}s`;
87
+ }
88
+ static toMegabytes(opts) {
89
+ return `${(opts.bytes / HealthCheckReporter.BYTES_PER_MB).toFixed(1)} MB`;
90
+ }
91
+ static buildStats(opts) {
92
+ const memory = process.memoryUsage();
93
+ const uptime = process.uptime();
94
+ return {
95
+ ...HealthCheckReporter.buildSummary(),
96
+ build: HealthCheckReporter.resolveBuildInfo(opts),
97
+ process: {
98
+ pid: process.pid,
99
+ uptime,
100
+ uptimeHuman: HealthCheckReporter.toHumanUptime({ seconds: uptime }),
101
+ // `versions.node` carries no `v` prefix, so both runtimes read `<name> <semver>`.
102
+ runtime: ignis_helpers_1.RuntimeModules.isBun() ? `bun ${Bun.version}` : `node ${process.versions.node}`,
103
+ // `ambient`, not `current`: an unset `NODE_ENV` is reported as such, never dressed up as `development`.
104
+ environment: ignis_helpers_1.Environment.ambient ?? core_1.BuildInfoRegistry.UNSPECIFIED,
105
+ },
106
+ memory: {
107
+ rss: HealthCheckReporter.toMegabytes({ bytes: memory.rss }),
108
+ heapUsed: HealthCheckReporter.toMegabytes({ bytes: memory.heapUsed }),
109
+ heapTotal: HealthCheckReporter.toMegabytes({ bytes: memory.heapTotal }),
110
+ },
111
+ };
112
+ }
113
+ }
114
+ exports.HealthCheckReporter = HealthCheckReporter;
115
+ //# sourceMappingURL=reporter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reporter.js","sourceRoot":"","sources":["../../../src/components/health-check/reporter.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,11 @@
1
1
  import { BaseApplication } from '../../base/applications';
2
2
  import { BaseComponent } from '@venizia/ignis-kernel';
3
- export declare class MailComponent extends BaseComponent {
3
+ import type { TMailOptions } from './common';
4
+ export declare class MailComponent extends BaseComponent<TMailOptions> {
4
5
  private application;
5
6
  constructor(application: BaseApplication);
7
+ /** `application.component(MailComponent, { options })` lands here; the call site outranks a key bound earlier. */
8
+ configure(opts?: TMailOptions): Promise<void>;
6
9
  binding(): void | Promise<void>;
7
10
  initGenerators(): void;
8
11
  initProviders(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"component.d.ts","sourceRoot":"","sources":["../../../src/components/mail/component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAgBtD,qBAAa,aAAc,SAAQ,aAAa;IAEQ,OAAO,CAAC,WAAW;gBAAX,WAAW,EAAE,eAAe;IASjF,OAAO,IAAI,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAsBxC,cAAc;IAYd,aAAa;IAWb,YAAY;IAWZ,sBAAsB,IAAI,IAAI;CAoC/B"}
1
+ {"version":3,"file":"component.d.ts","sourceRoot":"","sources":["../../../src/components/mail/component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAItD,OAAO,KAAK,EAA4B,YAAY,EAAE,MAAM,UAAU,CAAC;AAYvE,qBAAa,aAAc,SAAQ,aAAa,CAAC,YAAY,CAAC;IAEN,OAAO,CAAC,WAAW;gBAAX,WAAW,EAAE,eAAe;IAS1F,kHAAkH;IACnG,SAAS,CAAC,IAAI,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAcnD,OAAO,IAAI,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAsBxC,cAAc;IAYd,aAAa;IAWb,YAAY;IAWZ,sBAAsB,IAAI,IAAI;CAoC/B"}
@@ -31,6 +31,18 @@ let MailComponent = MailComponent_1 = class MailComponent extends ignis_kernel_1
31
31
  });
32
32
  this.application = application;
33
33
  }
34
+ /** `application.component(MailComponent, { options })` lands here; the call site outranks a key bound earlier. */
35
+ async configure(opts) {
36
+ // The base short-circuits a second call; binding before that check would swap the options
37
+ // under a transport that was already built from the first ones.
38
+ if (this.isConfigured) {
39
+ return;
40
+ }
41
+ if (opts !== undefined) {
42
+ this.application.bind({ key: common_2.MailKeys.MAIL_OPTIONS }).toValue(opts);
43
+ }
44
+ await super.configure(opts);
45
+ }
34
46
  binding() {
35
47
  if (!this.application.isBound({ key: common_2.MailKeys.MAIL_OPTIONS })) {
36
48
  this.logger
@@ -1 +1 @@
1
- {"version":3,"file":"component.js","sourceRoot":"","sources":["../../../src/components/mail/component.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"component.js","sourceRoot":"","sources":["../../../src/components/mail/component.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"mime.utility.d.ts","sourceRoot":"","sources":["../../../../src/components/mail/utilities/mime.utility.ts"],"names":[],"mappings":"AAIA,OAAO,EAAwC,KAAK,YAAY,EAAE,MAAM,WAAW,CAAC;AA2FpF;;4FAE4F;AAC5F,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,MAAM,CAEpE;AA8RD;;;;;;;;;;;GAWG;AACH,wBAAsB,mBAAmB,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,CA6FhF"}
1
+ {"version":3,"file":"mime.utility.d.ts","sourceRoot":"","sources":["../../../../src/components/mail/utilities/mime.utility.ts"],"names":[],"mappings":"AAIA,OAAO,EAAwC,KAAK,YAAY,EAAE,MAAM,WAAW,CAAC;AA2FpF;;4FAE4F;AAC5F,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,MAAM,CAEpE;AAoSD;;;;;;;;;;;GAWG;AACH,wBAAsB,mBAAmB,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,CA6FhF"}
@@ -233,6 +233,11 @@ function buildHeaders(message) {
233
233
  assertNoAddressListInjection({ field: 'replyTo', value: message.replyTo });
234
234
  headers.push(foldHeaderLine(`Reply-To: ${formatAddressHeader(message.replyTo)}`));
235
235
  }
236
+ // Checked, never emitted: a `Bcc:` header would disclose the blind recipients, so they travel as
237
+ // `Destination.BccAddresses`. Without this, `bcc` is the one address field that fails at AWS.
238
+ if (message.bcc) {
239
+ assertNoAddressListInjection({ field: 'bcc', value: message.bcc });
240
+ }
236
241
  assertNoHeaderInjection({ field: 'subject', value: message.subject });
237
242
  headers.push(foldHeaderLine(`Subject: ${encodeHeaderValue(message.subject)}`));
238
243
  // RFC 5322 requires both on every message; SES's raw-message parser does not synthesize them,
@@ -1 +1 @@
1
- {"version":3,"file":"mime.utility.js","sourceRoot":"","sources":["../../../../src/components/mail/utilities/mime.utility.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mime.utility.js","sourceRoot":"","sources":["../../../../src/components/mail/utilities/mime.utility.ts"],"names":[],"mappings":";;AAkGA,kDAEC;AAgTD,kDA6FC;AAjfD,6CAA0C;AAC1C,+CAA4C;AAE5C,sDAAuD;AACvD,sCAAoF;AACpF,uDAAqD;AAErD,MAAM,IAAI,GAAG,MAAM,CAAC;AACpB,MAAM,kBAAkB,GAAG,EAAE,CAAC;AAC9B;;2FAE2F;AAC3F,MAAM,sBAAsB,GAAG,EAAE,CAAC;AAClC;;;;0FAI0F;AAC1F,MAAM,qBAAqB,GAAG,GAAG,CAAC;AAClC,sFAAsF;AACtF,MAAM,uBAAuB,GAAG,EAAE,CAAC;AAEnC,SAAS,OAAO,CAAC,KAAa;IAC5B,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;QAClD,IAAI,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,GAAG,EAAE,CAAC;YAClC,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;;;GASG;AACH,SAAS,UAAU,CAAC,IAAY;IAC9B,MAAM,MAAM,GAAG,YAAY,CAAC;IAC5B,MAAM,MAAM,GAAG,IAAI,CAAC;IACpB,MAAM,eAAe,GAAG,uBAAuB,GAAG,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IAChF,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;IAC1D,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACzC,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,MAAM,GAAG,CAAC,CAAC;IAEf,OAAO,MAAM,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;QAC7B,IAAI,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,aAAa,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QAEzD,OAAO,GAAG,GAAG,KAAK,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;YAC1D,GAAG,EAAE,CAAC;QACR,CAAC;QAED,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAC1C,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,GAAG,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,MAAM,EAAE,CAAC,CAAC;QAC5D,MAAM,GAAG,GAAG,CAAC;IACf,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACzB,CAAC;AAED;mCACmC;AACnC,SAAS,iBAAiB,CAAC,KAAa;IACtC,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;AACpD,CAAC;AAED;;;;;GAKG;AACH,SAAS,aAAa,CAAC,OAAe;IACpC,MAAM,KAAK,GAAG,qBAAqB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAElD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,MAAM,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,GAAG,KAAK,CAAC;IAChC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IAElD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACvC,OAAO,OAAO,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,EAAE,KAAK,IAAI,GAAG,CAAC,CAAC,CAAC,IAAI,IAAI,GAAG,CAAC;IACjF,CAAC;IAED,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,KAAK,IAAI,GAAG,CAAC;AACzC,CAAC;AAED;;4FAE4F;AAC5F,SAAgB,mBAAmB,CAAC,KAAwB;IAC1D,OAAO,IAAA,kCAAgB,EAAC,KAAK,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC/D,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,SAAS,cAAc,CAAC,IAAY;IAClC,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,SAAS,GAAG,IAAI,CAAC;IAErB,OAAO,SAAS,CAAC,MAAM,GAAG,sBAAsB,EAAE,CAAC;QACjD,IAAI,OAAO,GAAG,SAAS,CAAC,WAAW,CAAC,GAAG,EAAE,sBAAsB,CAAC,CAAC;QAEjE,IAAI,OAAO,IAAI,CAAC,EAAE,CAAC;YACjB,wFAAwF;YACxF,wFAAwF;YACxF,+CAA+C;YAC/C,MAAM,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE,sBAAsB,CAAC,CAAC;YACjE,OAAO,GAAG,SAAS,GAAG,CAAC,IAAI,SAAS,IAAI,qBAAqB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACjF,CAAC;QAED,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;YAChB,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;YACxC,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACrC,SAAS;QACX,CAAC;QAED,IAAI,SAAS,CAAC,MAAM,IAAI,qBAAqB,EAAE,CAAC;YAC9C,MAAM;QACR,CAAC;QAED,qFAAqF;QACrF,kFAAkF;QAClF,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,qBAAqB,CAAC,CAAC,CAAC;QACtD,SAAS,GAAG,IAAI,SAAS,CAAC,KAAK,CAAC,qBAAqB,CAAC,EAAE,CAAC;IAC3D,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACtB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,2FAA2F;AAC3F,SAAS,UAAU,CAAC,MAAc;IAChC,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,IAAI,kBAAkB,EAAE,CAAC;QACvE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,GAAG,kBAAkB,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,8QAA8Q;AAC9Q,SAAS,gBAAgB,CAAC,IAAY;IACpC,OAAO,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;AACnE,CAAC;AAED,oGAAoG;AACpG,SAAS,kBAAkB,CAAC,MAAc;IACxC,OAAO,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;AAC/C,CAAC;AAED,KAAK,UAAU,cAAc,CAAC,MAAgB;IAC5C,MAAM,MAAM,GAAa,EAAE,CAAC;IAE5B,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QACjC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IACnE,CAAC;IAED,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;AAC/B,CAAC;AAED;;oBAEoB;AACpB,KAAK,UAAU,qBAAqB,CAAC,UAA2B;IAC9D,IAAI,UAAU,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QACrC,IAAI,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YACxC,OAAO,UAAU,CAAC,OAAO,CAAC;QAC5B,CAAC;QAED,IAAI,OAAO,UAAU,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC3C,OAAO,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,QAAQ,IAAI,OAAO,CAAC,CAAC;QACzE,CAAC;QAED,OAAO,cAAc,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IAC5C,CAAC;IAED,IAAI,UAAU,CAAC,IAAI,EAAE,CAAC;QACpB,OAAO,IAAA,mBAAQ,EAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC;IAED,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACzB,CAAC;AAED;;;;;;;;mGAQmG;AACnG,SAAS,uBAAuB,CAAC,IAAuC;IACtE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;IAE9B,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,MAAM,IAAA,eAAQ,EAAC;YACb,UAAU,EAAE,GAAG;YACf,WAAW,EAAE,uBAAc,CAAC,qBAAqB;YACjD,OAAO,EAAE,gCAAgC,KAAK,mBAAmB;SAClE,CAAC,CAAC;IACL,CAAC;IAED,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5E,OAAO;IACT,CAAC;IAED,MAAM,IAAA,eAAQ,EAAC;QACb,UAAU,EAAE,GAAG;QACf,WAAW,EAAE,uBAAc,CAAC,qBAAqB;QACjD,OAAO,EAAE,gCAAgC,KAAK,sCAAsC;KACrF,CAAC,CAAC;AACL,CAAC;AAED;;gGAEgG;AAChG,SAAS,4BAA4B,CAAC,IAAiD;IACrF,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;IAC9B,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAEpD,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE,CAAC;QACxB,uBAAuB,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAClD,CAAC;AACH,CAAC;AAED,SAAS,aAAa,CAAC,OAA2B;IAChD,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACjE,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;AACxC,CAAC;AAED,SAAS,YAAY,CAAC,OAAqB;IACzC,MAAM,OAAO,GAAa,EAAE,CAAC;IAE7B,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,4BAA4B,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;QACrE,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,SAAS,mBAAmB,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;IAC7E,CAAC;IAED,IAAI,OAAO,CAAC,EAAE,EAAE,CAAC;QACf,4BAA4B,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;QACjE,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,mBAAmB,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACzE,CAAC;IAED,IAAI,OAAO,CAAC,EAAE,EAAE,CAAC;QACf,4BAA4B,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;QACjE,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,mBAAmB,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACzE,CAAC;IAED,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACpB,4BAA4B,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;QAC3E,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,aAAa,mBAAmB,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;IACpF,CAAC;IAED,iGAAiG;IACjG,8FAA8F;IAC9F,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;QAChB,4BAA4B,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IACrE,CAAC;IAED,uBAAuB,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;IACtE,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,YAAY,iBAAiB,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/E,8FAA8F;IAC9F,2FAA2F;IAC3F,4EAA4E;IAC5E,OAAO,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IAClD,OAAO,CAAC,IAAI,CAAC,gBAAgB,IAAA,yBAAW,EAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAChG,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAElC,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACpB,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YAC3D,uBAAuB,CAAC,EAAE,KAAK,EAAE,WAAW,GAAG,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;YACjE,uBAAuB,CAAC,EAAE,KAAK,EAAE,WAAW,GAAG,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;YAC5D,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,GAAG,KAAK,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;QACtE,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,gMAAgM;AAChM,SAAS,QAAQ,CACf,QAAgB,EAChB,WAAuC,EACvC,OAAe;IAEf,OAAO;QACL,KAAK,QAAQ,EAAE;QACf,iBAAiB,WAAW,iBAAiB;QAC7C,mCAAmC;QACnC,EAAE;QACF,gBAAgB,CAAC,OAAO,CAAC;KAC1B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAa;IACvC,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;AAC3D,CAAC;AAED,uFAAuF;AACvF,SAAS,aAAa,CAAC,KAAa;IAClC,OAAO,kBAAkB,CAAC,KAAK,CAAC,CAAC,OAAO,CACtC,UAAU,EACV,IAAI,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE,EAAE,CAC5D,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,SAAS,oBAAoB,CAAC,SAA8B,EAAE,KAAa;IACzE,IAAI,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACnB,OAAO,KAAK,SAAS,KAAK,kBAAkB,CAAC,KAAK,CAAC,GAAG,CAAC;IACzD,CAAC;IAED,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,eAAe,EAAE,GAAG,CAAC,CAAC;IAC1D,OAAO,CACL,KAAK,SAAS,KAAK,kBAAkB,CAAC,aAAa,CAAC,GAAG;QACvD,KAAK,SAAS,YAAY,aAAa,CAAC,KAAK,CAAC,EAAE,CACjD,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,cAAc,CAAC,UAA2B,EAAE,QAAgB;IACzE,MAAM,OAAO,GAAG,MAAM,qBAAqB,CAAC,UAAU,CAAC,CAAC;IACxD,MAAM,WAAW,GAAG,UAAU,CAAC,WAAW,IAAI,0BAA0B,CAAC;IACzE,uBAAuB,CAAC,EAAE,KAAK,EAAE,wBAAwB,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC;IAEjF,IAAI,UAAU,CAAC,QAAQ,EAAE,CAAC;QACxB,uBAAuB,CAAC,EAAE,KAAK,EAAE,qBAAqB,EAAE,KAAK,EAAE,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC;IACxF,CAAC;IAED,IAAI,UAAU,CAAC,GAAG,EAAE,CAAC;QACnB,uBAAuB,CAAC,EAAE,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,UAAU,CAAC,GAAG,EAAE,CAAC,CAAC;IAC9E,CAAC;IAED,MAAM,aAAa,GAAG,UAAU,CAAC,QAAQ;QACvC,CAAC,CAAC,oBAAoB,CAAC,MAAM,EAAE,UAAU,CAAC,QAAQ,CAAC;QACnD,CAAC,CAAC,EAAE,CAAC;IACP,MAAM,iBAAiB,GAAG,UAAU,CAAC,QAAQ;QAC3C,CAAC,CAAC,oBAAoB,CAAC,UAAU,EAAE,UAAU,CAAC,QAAQ,CAAC;QACvD,CAAC,CAAC,EAAE,CAAC;IACP,MAAM,WAAW,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC;IAE7D,MAAM,WAAW,GAAG;QAClB,KAAK,QAAQ,EAAE;QACf,cAAc,CAAC,iBAAiB,WAAW,GAAG,aAAa,EAAE,CAAC;QAC9D,mCAAmC;QACnC,cAAc,CAAC,wBAAwB,WAAW,GAAG,iBAAiB,EAAE,CAAC;KAC1E,CAAC;IAEF,IAAI,UAAU,CAAC,GAAG,EAAE,CAAC;QACnB,WAAW,CAAC,IAAI,CAAC,gBAAgB,UAAU,CAAC,GAAG,GAAG,CAAC,CAAC;IACtD,CAAC;IAED,OAAO,CAAC,GAAG,WAAW,EAAE,EAAE,EAAE,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACtE,CAAC;AAED,uJAAuJ;AACvJ,SAAS,WAAW,CAAC,KAAa;IAChC,OAAO,SAAS,KAAK,IAAI,IAAA,yBAAW,EAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;AAC7D,CAAC;AAED;;;;;;;;;;;GAWG;AACI,KAAK,UAAU,mBAAmB,CAAC,OAAqB;IAC7D,MAAM,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;IACtC,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,EAAE,CAAC;IAC9C,MAAM,iBAAiB,GAAG,WAAW,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;IACpF,MAAM,eAAe,GAAG,WAAW,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;IAC1E,MAAM,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACrE,MAAM,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAE,WAAqB,CAAC,CAAC,CAAE,YAAsB,CAAC;IAC1F,MAAM,aAAa,GAAG,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC;IAEzD,MAAM,QAAQ,GAAG,CAAC,QAAgB,EAAU,EAAE;QAC5C,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,OAAO,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,EAAE,aAAa,CAAC,CAAC;QAC9D,CAAC;QAED,MAAM,WAAW,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;QACvC,OAAO;YACL,KAAK,QAAQ,EAAE;YACf,kDAAkD,WAAW,GAAG;YAChE,EAAE;YACF;gBACE,QAAQ,CAAC,WAAW,EAAE,YAAY,EAAE,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC;gBACvD,QAAQ,CAAC,WAAW,EAAE,WAAW,EAAE,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC;gBACtD,KAAK,WAAW,IAAI;aACrB,CAAC,IAAI,CAAC,IAAI,CAAC;SACb,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACf,CAAC,CAAC;IAEF,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;QAC/C,OAAO,CAAC,IAAI,CAAC,iBAAiB,iBAAiB,iBAAiB,CAAC,CAAC;QAClE,OAAO,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC;QAClD,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,OAAO,EAAE,EAAE,EAAE,gBAAgB,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;IAC5F,CAAC;IAED,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7B,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;QACpC,OAAO,CAAC,IAAI,CAAC,kDAAkD,QAAQ,GAAG,CAAC,CAAC;QAC5E,MAAM,KAAK,GAAG;YACZ,QAAQ,CAAC,QAAQ,EAAE,YAAY,EAAE,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC;YACpD,QAAQ,CAAC,QAAQ,EAAE,WAAW,EAAE,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC;YACnD,KAAK,QAAQ,IAAI;SAClB,CAAC;QACF,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,OAAO,EAAE,EAAE,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;IAC7E,CAAC;IAED,MAAM,gBAAgB,GAAG,KAAK,EAAE,cAAsB,EAAmB,EAAE;QACzE,MAAM,eAAe,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC;QAC/C,MAAM,KAAK,GAAG,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC;QAE1C,KAAK,MAAM,UAAU,IAAI,iBAAiB,EAAE,CAAC;YAC3C,KAAK,CAAC,IAAI,CAAC,MAAM,cAAc,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC,CAAC;QAChE,CAAC;QAED,KAAK,CAAC,IAAI,CAAC,KAAK,eAAe,IAAI,CAAC,CAAC;QAErC,OAAO;YACL,KAAK,cAAc,EAAE;YACrB,8CAA8C,eAAe,GAAG;YAChE,EAAE;YACF,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;SACjB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACf,CAAC,CAAC;IAEF,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjE,MAAM,eAAe,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC;QAC/C,MAAM,KAAK,GAAG,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC;QAE1C,KAAK,MAAM,UAAU,IAAI,iBAAiB,EAAE,CAAC;YAC3C,KAAK,CAAC,IAAI,CAAC,MAAM,cAAc,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC,CAAC;QAChE,CAAC;QAED,KAAK,CAAC,IAAI,CAAC,KAAK,eAAe,IAAI,CAAC,CAAC;QACrC,OAAO,CAAC,IAAI,CAAC,8CAA8C,eAAe,GAAG,CAAC,CAAC;QAC/E,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,OAAO,EAAE,EAAE,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;IAC7E,CAAC;IAED,MAAM,aAAa,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;IAC3C,OAAO,CAAC,IAAI,CAAC,4CAA4C,aAAa,GAAG,CAAC,CAAC;IAE3E,MAAM,SAAS,GAAa,EAAE,CAAC;IAE/B,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACjC,SAAS,CAAC,IAAI,CAAC,MAAM,gBAAgB,CAAC,aAAa,CAAC,CAAC,CAAC;IACxD,CAAC;SAAM,CAAC;QACN,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC;IAC1C,CAAC;IAED,KAAK,MAAM,UAAU,IAAI,eAAe,EAAE,CAAC;QACzC,SAAS,CAAC,IAAI,CAAC,MAAM,cAAc,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC,CAAC;IAClE,CAAC;IAED,SAAS,CAAC,IAAI,CAAC,KAAK,aAAa,IAAI,CAAC,CAAC;IAEvC,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,OAAO,EAAE,EAAE,EAAE,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;AACjF,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@venizia/ignis",
3
- "version": "0.2.0-25",
3
+ "version": "0.2.0-27",
4
4
  "description": "High-performance TypeScript server infrastructure combining LoopBack 4 enterprise architecture (decorator-based DI, repository pattern, component system) with Hono speed (~140k req/s). Features auto-generated OpenAPI docs, Drizzle ORM type-safe SQL, JWT/Basic authentication, Casbin authorization, convention-based bootstrapping, and pluggable components for health checks, Swagger UI, mail, Socket.IO, and static assets. Built for Bun and Node.js.",
5
5
  "keywords": [
6
6
  "access-control",
@@ -199,11 +199,11 @@
199
199
  "prepublishOnly": "bun run rebuild"
200
200
  },
201
201
  "dependencies": {
202
- "@venizia/ignis-connectors": "^0.2.0-24",
202
+ "@venizia/ignis-connectors": "^0.2.0-26",
203
203
  "@venizia/ignis-filter": "^0.2.0-7",
204
- "@venizia/ignis-helpers": "^0.2.0-19",
205
- "@venizia/ignis-inversion": "^0.2.0-6",
206
- "@venizia/ignis-kernel": "^0.2.0-24",
204
+ "@venizia/ignis-helpers": "^0.2.0-21",
205
+ "@venizia/ignis-inversion": "^0.2.0-7",
206
+ "@venizia/ignis-kernel": "^0.2.0-26",
207
207
  "lodash": "^4.18.1",
208
208
  "reflect-metadata": "^0.2.2",
209
209
  "zod": "^4.5.4"