@digital-alchemy/core 24.8.4 → 24.9.3

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 (117) hide show
  1. package/README.md +4 -1
  2. package/dist/helpers/async.helper.d.ts +1 -1
  3. package/dist/helpers/async.helper.js +13 -14
  4. package/dist/helpers/async.helper.js.map +1 -1
  5. package/dist/helpers/config-environment-loader.helper.js +16 -20
  6. package/dist/helpers/config-environment-loader.helper.js.map +1 -1
  7. package/dist/helpers/config-file-loader.helper.js +39 -46
  8. package/dist/helpers/config-file-loader.helper.js.map +1 -1
  9. package/dist/helpers/config.helper.d.ts +23 -2
  10. package/dist/helpers/config.helper.js +28 -38
  11. package/dist/helpers/config.helper.js.map +1 -1
  12. package/dist/helpers/context.helper.js +1 -2
  13. package/dist/helpers/cron.helper.d.ts +27 -0
  14. package/dist/helpers/cron.helper.js +4 -7
  15. package/dist/helpers/cron.helper.js.map +1 -1
  16. package/dist/helpers/errors.helper.d.ts +0 -12
  17. package/dist/helpers/errors.helper.js +2 -23
  18. package/dist/helpers/errors.helper.js.map +1 -1
  19. package/dist/helpers/events.helper.js +4 -10
  20. package/dist/helpers/events.helper.js.map +1 -1
  21. package/dist/helpers/extend.helper.js +12 -17
  22. package/dist/helpers/extend.helper.js.map +1 -1
  23. package/dist/helpers/index.d.ts +2 -4
  24. package/dist/helpers/index.js +14 -19
  25. package/dist/helpers/index.js.map +1 -1
  26. package/dist/helpers/lifecycle.helper.d.ts +1 -5
  27. package/dist/helpers/lifecycle.helper.js +1 -4
  28. package/dist/helpers/lifecycle.helper.js.map +1 -1
  29. package/dist/{extensions/logger.extension.d.ts → helpers/logger.helper.d.ts} +33 -40
  30. package/dist/helpers/logger.helper.js +10 -0
  31. package/dist/helpers/logger.helper.js.map +1 -0
  32. package/dist/helpers/module.helper.d.ts +74 -0
  33. package/dist/helpers/module.helper.js +131 -0
  34. package/dist/helpers/module.helper.js.map +1 -0
  35. package/dist/helpers/utilities.helper.d.ts +1 -0
  36. package/dist/helpers/utilities.helper.js +57 -58
  37. package/dist/helpers/utilities.helper.js.map +1 -1
  38. package/dist/helpers/wiring.helper.d.ts +77 -23
  39. package/dist/helpers/wiring.helper.js +45 -47
  40. package/dist/helpers/wiring.helper.js.map +1 -1
  41. package/dist/index.d.ts +2 -1
  42. package/dist/index.js +3 -5
  43. package/dist/index.js.map +1 -1
  44. package/dist/services/als.extension.d.ts +2 -0
  45. package/dist/services/als.extension.js +17 -0
  46. package/dist/services/als.extension.js.map +1 -0
  47. package/dist/services/configuration.extension.d.ts +7 -0
  48. package/dist/services/configuration.extension.js +117 -0
  49. package/dist/services/configuration.extension.js.map +1 -0
  50. package/dist/{extensions → services}/index.d.ts +1 -3
  51. package/dist/services/index.js +8 -0
  52. package/dist/services/index.js.map +1 -0
  53. package/dist/{extensions → services}/internal.extension.d.ts +7 -23
  54. package/dist/{extensions → services}/internal.extension.js +43 -55
  55. package/dist/services/internal.extension.js.map +1 -0
  56. package/dist/{extensions → services}/is.extension.d.ts +5 -0
  57. package/dist/{extensions → services}/is.extension.js +20 -15
  58. package/dist/services/is.extension.js.map +1 -0
  59. package/dist/{extensions → services}/lifecycle.extension.js +17 -19
  60. package/dist/services/lifecycle.extension.js.map +1 -0
  61. package/dist/services/logger.extension.d.ts +2 -0
  62. package/dist/services/logger.extension.js +200 -0
  63. package/dist/services/logger.extension.js.map +1 -0
  64. package/dist/services/scheduler.extension.d.ts +2 -0
  65. package/dist/services/scheduler.extension.js +108 -0
  66. package/dist/services/scheduler.extension.js.map +1 -0
  67. package/dist/services/wiring.extension.d.ts +111 -0
  68. package/dist/services/wiring.extension.js +437 -0
  69. package/dist/services/wiring.extension.js.map +1 -0
  70. package/dist/testing/index.d.ts +2 -0
  71. package/dist/testing/index.js +3 -0
  72. package/dist/testing/index.js.map +1 -0
  73. package/dist/testing/mock-logger.d.ts +2 -0
  74. package/dist/testing/mock-logger.js +11 -0
  75. package/dist/testing/mock-logger.js.map +1 -0
  76. package/dist/testing/test-module.d.ts +112 -0
  77. package/dist/testing/test-module.js +138 -0
  78. package/dist/testing/test-module.js.map +1 -0
  79. package/package.json +57 -43
  80. package/dist/extensions/cache.extension.d.ts +0 -2
  81. package/dist/extensions/cache.extension.js +0 -90
  82. package/dist/extensions/cache.extension.js.map +0 -1
  83. package/dist/extensions/configuration.extension.d.ts +0 -52
  84. package/dist/extensions/configuration.extension.js +0 -131
  85. package/dist/extensions/configuration.extension.js.map +0 -1
  86. package/dist/extensions/fetch.extension.d.ts +0 -17
  87. package/dist/extensions/fetch.extension.js +0 -133
  88. package/dist/extensions/fetch.extension.js.map +0 -1
  89. package/dist/extensions/index.js +0 -13
  90. package/dist/extensions/index.js.map +0 -1
  91. package/dist/extensions/internal.extension.js.map +0 -1
  92. package/dist/extensions/is.extension.js.map +0 -1
  93. package/dist/extensions/lifecycle.extension.js.map +0 -1
  94. package/dist/extensions/logger.extension.js +0 -186
  95. package/dist/extensions/logger.extension.js.map +0 -1
  96. package/dist/extensions/metrics.extension.d.ts +0 -18
  97. package/dist/extensions/metrics.extension.js +0 -156
  98. package/dist/extensions/metrics.extension.js.map +0 -1
  99. package/dist/extensions/scheduler.extension.d.ts +0 -21
  100. package/dist/extensions/scheduler.extension.js +0 -133
  101. package/dist/extensions/scheduler.extension.js.map +0 -1
  102. package/dist/extensions/wiring.extension.d.ts +0 -50
  103. package/dist/extensions/wiring.extension.js +0 -374
  104. package/dist/extensions/wiring.extension.js.map +0 -1
  105. package/dist/helpers/cache-memory.helper.d.ts +0 -6
  106. package/dist/helpers/cache-memory.helper.js +0 -68
  107. package/dist/helpers/cache-memory.helper.js.map +0 -1
  108. package/dist/helpers/cache-redis.helper.d.ts +0 -6
  109. package/dist/helpers/cache-redis.helper.js +0 -73
  110. package/dist/helpers/cache-redis.helper.js.map +0 -1
  111. package/dist/helpers/cache.helper.d.ts +0 -19
  112. package/dist/helpers/cache.helper.js +0 -9
  113. package/dist/helpers/cache.helper.js.map +0 -1
  114. package/dist/helpers/fetch.helper.d.ts +0 -165
  115. package/dist/helpers/fetch.helper.js +0 -173
  116. package/dist/helpers/fetch.helper.js.map +0 -1
  117. /package/dist/{extensions → services}/lifecycle.extension.d.ts +0 -0
@@ -1,53 +1,47 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.noop = exports.asyncNoop = exports.ACTIVE_DEBOUNCE = exports.ACTIVE_THROTTLE = exports.YEAR = exports.PERCENT = exports.SECOND = exports.WEEK = exports.DAY = exports.HOUR = exports.MINUTE = exports.DOWN = exports.NOT_FOUND = exports.NO_CHANGE = exports.EMPTY = exports.FIRST = exports.NONE = exports.START = exports.LABEL = exports.SAME = exports.SINGLE = exports.INCREMENT = exports.ARRAY_OFFSET = exports.VALUE = exports.UP = exports.INVERT_VALUE = exports.DEFAULT_LIMIT = exports.TWO_THIRDS = exports.ONE_THIRD = exports.HALF = exports.PAIR = exports.EVEN = void 0;
4
- exports.sleep = sleep;
5
- exports.throttle = throttle;
6
- exports.debounce = debounce;
7
- exports.PEAT = PEAT;
8
- const is_extension_1 = require("../extensions/is.extension");
1
+ import { is } from "../services/is.extension";
9
2
  /* eslint-disable @typescript-eslint/no-magic-numbers */
10
- exports.EVEN = 2;
11
- exports.PAIR = 2;
12
- exports.HALF = 0.5;
13
- exports.ONE_THIRD = 1 / 3;
14
- exports.TWO_THIRDS = 2 / 3;
3
+ export const EVEN = 2;
4
+ export const PAIR = 2;
5
+ export const HALF = 0.5;
6
+ export const ONE_THIRD = 1 / 3;
7
+ export const TWO_THIRDS = 2 / 3;
15
8
  /**
16
9
  * Good for a surprising number of situations
17
10
  */
18
- exports.DEFAULT_LIMIT = 5;
19
- exports.INVERT_VALUE = -1;
11
+ export const DEFAULT_LIMIT = 5;
12
+ export const INVERT_VALUE = -1;
20
13
  // Sort
21
- exports.UP = 1;
14
+ export const UP = 1;
22
15
  // [LABEL,VALUE]
23
- exports.VALUE = 1;
16
+ export const VALUE = 1;
24
17
  // Standard value
25
- exports.ARRAY_OFFSET = 1;
18
+ export const ARRAY_OFFSET = 1;
26
19
  // array[number +- increment]
27
- exports.INCREMENT = 1;
20
+ export const INCREMENT = 1;
28
21
  // Generic one-ness
29
- exports.SINGLE = 1;
22
+ export const SINGLE = 1;
30
23
  // Sorting
31
- exports.SAME = 0;
24
+ export const SAME = 0;
32
25
  // [LABEL,VALUE]
33
- exports.LABEL = 0;
26
+ export const LABEL = 0;
34
27
  // Generic start of something
35
- exports.START = 0;
36
- exports.NONE = 0;
37
- exports.FIRST = 0;
38
- exports.EMPTY = 0;
39
- exports.NO_CHANGE = 0;
28
+ export const START = 0;
29
+ export const NONE = 0;
30
+ export const FIRST = 0;
31
+ export const EMPTY = 0;
32
+ export const NO_CHANGE = 0;
40
33
  // Testing of indexes
41
- exports.NOT_FOUND = -1;
34
+ export const NOT_FOUND = -1;
42
35
  // Sorting
43
- exports.DOWN = -1;
44
- exports.MINUTE = 60_000;
45
- exports.HOUR = 3_600_000;
46
- exports.DAY = 86_400_000;
47
- exports.WEEK = 7 * exports.DAY;
48
- exports.SECOND = 1000;
49
- exports.PERCENT = 100;
50
- exports.YEAR = 365 * exports.DAY;
36
+ export const DOWN = -1;
37
+ export const MINUTE = 60_000;
38
+ export const HOUR = 3_600_000;
39
+ export const DAY = 86_400_000;
40
+ export const WEEK = 7 * DAY;
41
+ export const SECOND = 1000;
42
+ export const PERCENT = 100;
43
+ export const YEAR = 365 * DAY;
44
+ export const ACTIVE_SLEEPS = new Set();
51
45
  /**
52
46
  * Defaults to 1000 (1 second).
53
47
  *
@@ -68,58 +62,63 @@ exports.YEAR = 365 * exports.DAY;
68
62
  * console.log(end - start); // 1000, because we stopped it early and executed
69
63
  * ```
70
64
  */
71
- function sleep(target = exports.SECOND) {
65
+ export function sleep(target = SECOND) {
72
66
  // done function from promise
73
67
  let done;
74
- const timeout = setTimeout(() => done && done(), is_extension_1.is.date(target) ? target.getTime() - Date.now() : target);
68
+ const timeout = setTimeout(() => {
69
+ if (done) {
70
+ done();
71
+ }
72
+ ACTIVE_SLEEPS.delete(out);
73
+ }, is.date(target) ? target.getTime() - Date.now() : target);
75
74
  // Take a normal promise, add a `.kill` to it
76
75
  // You can await as normal, or call the function
77
- const out = new Promise((i) => (done = i));
76
+ const out = new Promise(i => (done = i));
77
+ ACTIVE_SLEEPS.add(out);
78
78
  out.kill = (execute = "stop") => {
79
- if (execute === "continue") {
80
- done && done();
79
+ ACTIVE_SLEEPS.delete(out);
80
+ if (execute === "continue" && done) {
81
+ done();
81
82
  }
82
83
  clearTimeout(timeout);
83
84
  done = undefined;
84
85
  };
85
86
  return out;
86
87
  }
87
- exports.ACTIVE_THROTTLE = new Set();
88
- exports.ACTIVE_DEBOUNCE = new Map();
88
+ export const ACTIVE_THROTTLE = new Set();
89
+ export const ACTIVE_DEBOUNCE = new Map();
89
90
  /**
90
91
  * allow initial call, then block for a period
91
92
  */
92
- async function throttle(identifier, timeout) {
93
- if (exports.ACTIVE_THROTTLE.has(identifier)) {
93
+ export async function throttle(identifier, timeout) {
94
+ if (ACTIVE_THROTTLE.has(identifier)) {
94
95
  return;
95
96
  }
96
- exports.ACTIVE_THROTTLE.add(identifier);
97
+ ACTIVE_THROTTLE.add(identifier);
97
98
  await sleep(timeout);
98
- exports.ACTIVE_THROTTLE.delete(identifier);
99
+ ACTIVE_THROTTLE.delete(identifier);
99
100
  }
100
101
  /**
101
102
  * wait for duration after call before allowing next, extends for calls inside window
102
103
  */
103
- async function debounce(identifier, timeout) {
104
- const current = exports.ACTIVE_DEBOUNCE.get(identifier);
105
- if (current) {
104
+ export async function debounce(identifier, timeout) {
105
+ const current = ACTIVE_DEBOUNCE.get(identifier);
106
+ if (!is.undefined(current)) {
106
107
  current.kill("stop");
107
108
  }
108
109
  const delay = sleep(timeout);
109
- exports.ACTIVE_DEBOUNCE.set(identifier, delay);
110
+ ACTIVE_DEBOUNCE.set(identifier, delay);
110
111
  await delay;
111
- exports.ACTIVE_DEBOUNCE.delete(identifier);
112
+ ACTIVE_DEBOUNCE.delete(identifier);
112
113
  }
113
- const asyncNoop = async () => await sleep(exports.NONE);
114
- exports.asyncNoop = asyncNoop;
115
- const noop = () => { };
116
- exports.noop = noop;
114
+ export const asyncNoop = async () => await sleep(NONE);
115
+ export const noop = () => { };
117
116
  /**
118
117
  * #MARK: (re)peat
119
118
  *
120
119
  * Create an array of length, where the values are filled with a provided fill value, or (index + 1) as default value
121
120
  */
122
- function PEAT(length, fill) {
123
- return Array.from({ length }).map((_, index) => fill ?? (index + exports.ARRAY_OFFSET));
121
+ export function PEAT(length, fill) {
122
+ return Array.from({ length }).map((_, index) => fill ?? (index + ARRAY_OFFSET));
124
123
  }
125
124
  //# sourceMappingURL=utilities.helper.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utilities.helper.js","sourceRoot":"","sources":["../../src/helpers/utilities.helper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utilities.helper.js","sourceRoot":"","sources":["../../src/helpers/utilities.helper.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,9 @@
1
+ import { AsyncLocalStorage } from "async_hooks";
1
2
  import { Dayjs } from "dayjs";
2
3
  import { EventEmitter } from "events";
3
- import { CronExpression, ILogger, InternalDefinition, LIB_BOILERPLATE, TBlackHole, TCache, TContext } from "..";
4
+ import { CronExpression, ILogger, InternalDefinition, LIB_BOILERPLATE, TBlackHole, TConfigLogLevel, TContext } from "..";
4
5
  import { AnyConfig, BooleanConfig, ConfigLoader, InternalConfig, NumberConfig, OptionalModuleConfiguration, StringArrayConfig, StringConfig } from "./config.helper";
5
- import { TChildLifecycle, TLifecycleBase } from "./lifecycle.helper";
6
+ import { TLifecycleBase } from "./lifecycle.helper";
6
7
  export type TServiceReturn<OBJECT extends object = object> = void | OBJECT;
7
8
  export type TModuleMappings = Record<string, ServiceFunction>;
8
9
  export type TResolvedModuleMappings = Record<string, TServiceReturn>;
@@ -30,14 +31,6 @@ export type ScheduleItem = {
30
31
  };
31
32
  export type SchedulerOptions = {
32
33
  exec: () => TBlackHole;
33
- /**
34
- * if provided, specific metrics will be kept and labelled with provided label
35
- *
36
- * - execution count
37
- * - errors
38
- * - execution duration
39
- */
40
- label?: string;
41
34
  };
42
35
  /**
43
36
  * General code scheduling functions
@@ -76,13 +69,23 @@ type CastConfigResult<T extends AnyConfig> = T extends StringConfig<infer STRING
76
69
  export type TInjectedConfig = {
77
70
  [ModuleName in keyof ModuleConfigs]: ConfigTypes<ModuleConfigs[ModuleName]>;
78
71
  };
72
+ export interface AsyncLogData {
73
+ }
74
+ export interface AsyncLocalData {
75
+ logs: AsyncLogData;
76
+ }
77
+ export type AlsExtension = {
78
+ asyncStorage: () => AsyncLocalStorage<AsyncLocalData>;
79
+ getStore: () => AsyncLocalData;
80
+ init(source: object, callback: () => TBlackHole): void;
81
+ getLogData: () => AsyncLogData;
82
+ };
83
+ export type AlsHook = () => object;
79
84
  export type TServiceParams = {
80
85
  /**
81
- * provided by boilerplate library
82
- *
83
- * contains basic caching methods
86
+ * hooks for AsyncLocalStorage
84
87
  */
85
- cache: TCache;
88
+ als: AlsExtension;
86
89
  /**
87
90
  * string describing how this service is wired into the main application
88
91
  */
@@ -121,7 +124,7 @@ export type TServiceParams = {
121
124
  } & {
122
125
  [K in ExternalLoadedModules]: GetApis<LoadedModules[K]>;
123
126
  };
124
- type LoadedModuleNames = Extract<keyof LoadedModules, string>;
127
+ export type LoadedModuleNames = Extract<keyof LoadedModules, string>;
125
128
  type ExternalLoadedModules = Exclude<LoadedModuleNames, "boilerplate">;
126
129
  type ModuleConfigs = {
127
130
  [K in LoadedModuleNames]: LoadedModules[K] extends LibraryDefinition<ServiceMap, infer Config> ? Config : LoadedModules[K] extends ApplicationDefinition<ServiceMap, infer Config> ? Config : never;
@@ -129,6 +132,7 @@ type ModuleConfigs = {
129
132
  type ConfigTypes<Config> = {
130
133
  [Key in keyof Config]: Config[Key] extends AnyConfig ? CastConfigResult<Config[Key]> : never;
131
134
  };
135
+ export type ServiceNames<T extends LoadedModuleNames = LoadedModuleNames> = LoadedModules[T] extends LibraryDefinition<infer S, OptionalModuleConfiguration> ? `${T}.${Extract<keyof S, string>}` : never;
132
136
  export type GetApis<T> = T extends LibraryDefinition<infer S, OptionalModuleConfiguration> ? GetApisResult<S> : T extends ApplicationDefinition<infer S, OptionalModuleConfiguration> ? GetApisResult<S> : never;
133
137
  export type Loader<PARENT extends TConfigurable> = <K extends keyof PARENT["services"]>(serviceName: K) => ReturnType<PARENT["services"][K]> extends Promise<infer AsyncResult> ? AsyncResult : ReturnType<PARENT["services"][K]>;
134
138
  export type ServiceFunction<R = unknown> = (params: TServiceParams) => R | Promise<R>;
@@ -144,13 +148,13 @@ export type LibraryConfigurationOptions<S extends ServiceMap, C extends Optional
144
148
  * - warnings will be emitted if this library utilizes a different version of a dependency than what the app uses
145
149
  * - version provided by app will be substituted
146
150
  */
147
- depends?: LibraryConfigurationOptions<ServiceMap, OptionalModuleConfiguration>[];
151
+ depends?: TLibrary[];
148
152
  /**
149
153
  * Same as depends, but will not error if library is not provided at app level
150
154
  *
151
155
  * **note**: related variables may come in as undefined, code needs to be built to allow for this
152
156
  */
153
- optionalDepends?: LibraryConfigurationOptions<ServiceMap, OptionalModuleConfiguration>[];
157
+ optionalDepends?: TLibrary[];
154
158
  configuration?: C;
155
159
  /**
156
160
  * Define which services should be initialized first. Any remaining services are done at the end in no set order
@@ -196,6 +200,10 @@ export type BootstrapOptions = {
196
200
  * use this logger, instead of the baked in one. Maybe you want some custom transports or something? Put your customized thing here
197
201
  */
198
202
  customLogger?: ILogger;
203
+ /**
204
+ * fine tine the built in logger
205
+ */
206
+ loggerOptions?: LoggerOptions;
199
207
  /**
200
208
  * Show detailed boot time statistics
201
209
  */
@@ -207,6 +215,49 @@ export type BootstrapOptions = {
207
215
  */
208
216
  envFile?: string;
209
217
  };
218
+ export type LoggerOptions = {
219
+ /**
220
+ * Generic data to include as data payload for all logs
221
+ *
222
+ * Can be used to provide application tags when using a log aggregator
223
+ */
224
+ mergeData?: object;
225
+ /**
226
+ * Adjust the format of the timestamp at the start of the log
227
+ *
228
+ * > default: ddd HH:mm:ss.SSS
229
+ */
230
+ timestampFormat?: string;
231
+ /**
232
+ * Pretty format logs
233
+ *
234
+ * > default: true
235
+ */
236
+ pretty?: boolean;
237
+ /**
238
+ * prefix messages with ms since last message
239
+ *
240
+ * > default: false
241
+ */
242
+ ms?: boolean;
243
+ /**
244
+ * add an incrementing counter to every log.
245
+ * starts at 0 at boot
246
+ *
247
+ * > default: false
248
+ */
249
+ counter?: boolean;
250
+ /**
251
+ * extract details from als module to merge into logs
252
+ *
253
+ * > default: false
254
+ */
255
+ als?: boolean;
256
+ /**
257
+ * Override the `LOG_LEVEL` per service or module
258
+ */
259
+ levelOverrides?: Partial<Record<LoadedModuleNames | ServiceNames, TConfigLogLevel>>;
260
+ };
210
261
  export declare const WIRE_PROJECT: unique symbol;
211
262
  type Wire = {
212
263
  /**
@@ -215,20 +266,23 @@ type Wire = {
215
266
  * - initializes lifecycle
216
267
  * - attaches event emitters
217
268
  */
218
- [WIRE_PROJECT]: (internal: InternalDefinition, WireService: (project: string, service: string, definition: ServiceFunction, lifecycle: TLifecycleBase, internal: InternalDefinition) => Promise<TServiceReturn<object>>) => Promise<TChildLifecycle>;
269
+ [WIRE_PROJECT]: (internal: InternalDefinition, WireService: (project: string, service: string, definition: ServiceFunction, lifecycle: TLifecycleBase, internal: InternalDefinition) => Promise<TServiceReturn<object>>) => Promise<TLifecycleBase>;
270
+ };
271
+ export type LibraryDefinition<S extends ServiceMap, C extends OptionalModuleConfiguration> = LibraryConfigurationOptions<S, C> & Wire & {
272
+ type: "library";
219
273
  };
220
- export type LibraryDefinition<S extends ServiceMap, C extends OptionalModuleConfiguration> = LibraryConfigurationOptions<S, C> & Wire;
221
274
  export type ApplicationDefinition<S extends ServiceMap, C extends OptionalModuleConfiguration> = ApplicationConfigurationOptions<S, C> & Wire & {
222
275
  logger: ILogger;
276
+ type: "application";
223
277
  booted: boolean;
224
278
  bootstrap: (options?: BootstrapOptions) => Promise<void>;
225
279
  teardown: () => Promise<void>;
226
280
  };
227
- type TLibrary = LibraryDefinition<ServiceMap, OptionalModuleConfiguration>;
228
- export declare function BuildSortOrder<S extends ServiceMap, C extends OptionalModuleConfiguration>(app: ApplicationDefinition<S, C>, logger: ILogger): TLibrary[];
281
+ export type TLibrary = LibraryDefinition<ServiceMap, OptionalModuleConfiguration>;
282
+ export declare function buildSortOrder<S extends ServiceMap, C extends OptionalModuleConfiguration>(app: ApplicationDefinition<S, C>, logger: ILogger): TLibrary[];
229
283
  export declare const COERCE_CONTEXT: (context: string) => TContext;
230
284
  export declare const WIRING_CONTEXT: TContext;
231
- export declare function ValidateLibrary<S extends ServiceMap>(project: string, serviceList: S): void | never;
232
- export declare function WireOrder<T extends string>(priority: T[], list: T[]): T[];
285
+ export declare function validateLibrary<S extends ServiceMap>(project: string, serviceList: S): void | never;
286
+ export declare function wireOrder<T extends string>(priority: T[], list: T[]): T[];
233
287
  export declare function CreateLibrary<S extends ServiceMap, C extends OptionalModuleConfiguration>({ name: libraryName, configuration, priorityInit, services, depends, optionalDepends, }: LibraryConfigurationOptions<S, C>): LibraryDefinition<S, C>;
234
288
  export {};
@@ -1,29 +1,19 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.WIRING_CONTEXT = exports.COERCE_CONTEXT = exports.WIRE_PROJECT = void 0;
4
- exports.BuildSortOrder = BuildSortOrder;
5
- exports.ValidateLibrary = ValidateLibrary;
6
- exports.WireOrder = WireOrder;
7
- exports.CreateLibrary = CreateLibrary;
8
- const __1 = require("..");
9
- exports.WIRE_PROJECT = Symbol.for("wire-project");
10
- function BuildSortOrder(app, logger) {
11
- if (__1.is.empty(app.libraries)) {
1
+ import { BootstrapException, eachSeries, is, LOAD_PROJECT, } from "..";
2
+ export const WIRE_PROJECT = Symbol.for("wire-project");
3
+ export function buildSortOrder(app, logger) {
4
+ if (is.empty(app.libraries)) {
12
5
  return [];
13
6
  }
14
- const libraryMap = new Map(app.libraries.map((i) => [i.name, i]));
7
+ const libraryMap = new Map(app.libraries.map(i => [i.name, i]));
15
8
  // Recursive function to check for missing dependencies at any depth
16
9
  function checkDependencies(library) {
17
- const depends = [
18
- ...(library?.depends ?? []),
19
- ...(library?.optionalDepends ?? []),
20
- ];
21
- if (!__1.is.empty(depends)) {
22
- depends.forEach((item) => {
10
+ const depends = [...(library?.depends ?? []), ...(library?.optionalDepends ?? [])];
11
+ if (!is.empty(depends)) {
12
+ depends.forEach(item => {
23
13
  const loaded = libraryMap.get(item.name);
24
14
  if (!loaded) {
25
15
  if (library.depends.includes(item)) {
26
- throw new __1.BootstrapException(exports.WIRING_CONTEXT, "MISSING_DEPENDENCY", `${item.name} is required by ${library.name}, but was not provided`);
16
+ throw new BootstrapException(WIRING_CONTEXT, "MISSING_DEPENDENCY", `${item.name} is required by ${library.name}, but was not provided`);
27
17
  }
28
18
  else {
29
19
  logger.info({ library: library.name, name: checkDependencies }, `optional depends [%s] not provided`, item.name);
@@ -33,70 +23,77 @@ function BuildSortOrder(app, logger) {
33
23
  // just "are they the same object reference?" as the test
34
24
  // you get a warning, and the one the app asks for
35
25
  // hopefully there is no breaking changes
36
- if (loaded !== item) {
37
- logger.warn({ name: BuildSortOrder }, "[%s] depends different version {%s}", library.name, item.name);
26
+ if (loaded !== item && !process.env.NODE_ENV.startsWith("test")) {
27
+ logger.warn({ name: buildSortOrder }, "[%s] depends different version {%s}", library.name, item.name);
38
28
  }
39
29
  });
40
30
  }
41
31
  return library;
42
32
  }
43
- let starting = app.libraries.map((i) => checkDependencies(i));
33
+ let starting = app.libraries.map(i => checkDependencies(i));
44
34
  const out = [];
45
- while (!__1.is.empty(starting)) {
46
- const next = starting.find((library) => {
35
+ while (!is.empty(starting)) {
36
+ const next = starting.find(library => {
47
37
  const depends = [
48
38
  ...(library?.depends ?? []),
49
- ...(library?.optionalDepends?.filter((i) => app.libraries.some((index) => i.name === index.name)) ?? []),
39
+ ...(library?.optionalDepends?.filter(i => app.libraries.some(index => i.name === index.name)) ?? []),
50
40
  ];
51
- if (__1.is.empty(depends)) {
41
+ if (is.empty(depends)) {
52
42
  return true;
53
43
  }
54
- return depends.every((depend) => out.some((i) => i.name === depend.name));
44
+ return depends.every(depend => out.some(i => i.name === depend.name));
55
45
  });
56
46
  if (!next) {
57
- logger.fatal({ current: out.map((i) => i.name), name: BuildSortOrder });
58
- throw new __1.BootstrapException(exports.WIRING_CONTEXT, "BAD_SORT", `Cannot find a next lib to load`);
47
+ logger.fatal({ current: out.map(i => i.name), name: buildSortOrder });
48
+ throw new BootstrapException(WIRING_CONTEXT, "BAD_SORT", `Cannot find a next lib to load`);
59
49
  }
60
- starting = starting.filter((i) => next.name !== i.name);
50
+ starting = starting.filter(i => next.name !== i.name);
61
51
  out.push(next);
62
52
  }
63
53
  return out;
64
54
  }
65
- const COERCE_CONTEXT = (context) => context;
66
- exports.COERCE_CONTEXT = COERCE_CONTEXT;
67
- exports.WIRING_CONTEXT = (0, exports.COERCE_CONTEXT)("boilerplate:wiring");
68
- function ValidateLibrary(project, serviceList) {
69
- if (__1.is.empty(project)) {
70
- throw new __1.BootstrapException((0, exports.COERCE_CONTEXT)("CreateLibrary"), "MISSING_LIBRARY_NAME", "Library name is required");
55
+ export const COERCE_CONTEXT = (context) => context;
56
+ export const WIRING_CONTEXT = COERCE_CONTEXT("boilerplate:wiring");
57
+ export function validateLibrary(project, serviceList) {
58
+ if (is.empty(project)) {
59
+ throw new BootstrapException(COERCE_CONTEXT("CreateLibrary"), "MISSING_LIBRARY_NAME", "Library name is required");
71
60
  }
72
61
  const services = Object.entries(serviceList);
73
62
  // Find the first invalid service
74
63
  const invalidService = services.find(([, definition]) => typeof definition !== "function");
75
64
  if (invalidService) {
76
65
  const [invalidServiceName, service] = invalidService;
77
- throw new __1.BootstrapException((0, exports.COERCE_CONTEXT)("CreateLibrary"), "INVALID_SERVICE_DEFINITION", `Invalid service definition for '${invalidServiceName}' in library '${project}' (${typeof service}})`);
66
+ throw new BootstrapException(COERCE_CONTEXT("CreateLibrary"), "INVALID_SERVICE_DEFINITION", `Invalid service definition for '${invalidServiceName}' in library '${project}' (${typeof service}})`);
78
67
  }
79
68
  }
80
- function WireOrder(priority, list) {
69
+ export function wireOrder(priority, list) {
81
70
  const out = [...(priority || [])];
82
- if (!__1.is.empty(priority)) {
83
- const check = __1.is.unique(priority);
71
+ if (!is.empty(priority)) {
72
+ const check = is.unique(priority);
84
73
  if (check.length !== out.length) {
85
- throw new __1.BootstrapException(exports.WIRING_CONTEXT, "DOUBLE_PRIORITY", "There are duplicate items in the priority load list");
74
+ throw new BootstrapException(WIRING_CONTEXT, "DOUBLE_PRIORITY", "There are duplicate items in the priority load list");
86
75
  }
87
76
  }
88
- return [...out, ...list.filter((i) => !out.includes(i))];
77
+ const temporary = [...out, ...list.filter(i => !out.includes(i))];
78
+ return temporary;
89
79
  }
90
- function CreateLibrary({ name: libraryName, configuration = {}, priorityInit, services, depends, optionalDepends, }) {
91
- ValidateLibrary(libraryName, services);
80
+ export function CreateLibrary({ name: libraryName, configuration = {}, priorityInit, services, depends, optionalDepends, }) {
81
+ validateLibrary(libraryName, services);
92
82
  const serviceApis = {};
83
+ if (!is.empty(priorityInit)) {
84
+ priorityInit.forEach(name => {
85
+ if (!is.function(services[name])) {
86
+ throw new BootstrapException(WIRING_CONTEXT, "MISSING_PRIORITY_SERVICE", `${name} was listed as priority init, but was not found in services`);
87
+ }
88
+ });
89
+ }
93
90
  const library = {
94
- [exports.WIRE_PROJECT]: async (internal, WireService) => {
91
+ [WIRE_PROJECT]: async (internal, WireService) => {
95
92
  // not defined for boilerplate (chicken & egg)
96
93
  // manually added inside the bootstrap process
97
94
  const config = internal?.boilerplate.configuration;
98
- config?.[__1.LOAD_PROJECT](libraryName, configuration);
99
- await (0, __1.eachSeries)(WireOrder(priorityInit, Object.keys(services)), async (service) => {
95
+ config?.[LOAD_PROJECT](libraryName, configuration);
96
+ await eachSeries(wireOrder(priorityInit, Object.keys(services)), async (service) => {
100
97
  serviceApis[service] = await WireService(libraryName, service, services[service], internal.boot.lifecycle.events, internal);
101
98
  });
102
99
  internal.boot.constructComplete.add(libraryName);
@@ -110,6 +107,7 @@ function CreateLibrary({ name: libraryName, configuration = {}, priorityInit, se
110
107
  priorityInit,
111
108
  serviceApis,
112
109
  services,
110
+ type: "library",
113
111
  };
114
112
  return library;
115
113
  }
@@ -1 +1 @@
1
- {"version":3,"file":"wiring.helper.js","sourceRoot":"","sources":["../../src/helpers/wiring.helper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wiring.helper.js","sourceRoot":"","sources":["../../src/helpers/wiring.helper.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,2 +1,3 @@
1
- export * from "./extensions";
2
1
  export * from "./helpers";
2
+ export * from "./services";
3
+ export * from "./testing";
package/dist/index.js CHANGED
@@ -1,6 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
- tslib_1.__exportStar(require("./extensions"), exports);
5
- tslib_1.__exportStar(require("./helpers"), exports);
1
+ export * from "./helpers";
2
+ export * from "./services";
3
+ export * from "./testing";
6
4
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,uDAA6B;AAC7B,oDAA0B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { AlsExtension, TServiceParams } from "../helpers";
2
+ export declare function ALS({ config }: TServiceParams): AlsExtension;
@@ -0,0 +1,17 @@
1
+ import { AsyncLocalStorage } from "async_hooks";
2
+ import { v4 } from "uuid";
3
+ export function ALS({ config }) {
4
+ const storage = new AsyncLocalStorage();
5
+ return {
6
+ asyncStorage: () => (config.boilerplate.NODE_ENV ? storage : undefined),
7
+ getLogData: () => storage.getStore()?.logs ?? {},
8
+ getStore: () => storage.getStore(),
9
+ init(source, callback) {
10
+ const data = { logs: { id: v4(), ...source } };
11
+ storage.run(data, () => {
12
+ callback();
13
+ });
14
+ },
15
+ };
16
+ }
17
+ //# sourceMappingURL=als.extension.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"als.extension.js","sourceRoot":"","sources":["../../src/services/als.extension.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,EAAE,EAAE,MAAM,MAAM,CAAC;AAI1B,MAAM,UAAU,GAAG,CAAC,EAAE,MAAM,EAAkB;IAC5C,MAAM,OAAO,GAAG,IAAI,iBAAiB,EAAkB,CAAC;IACxD,OAAO;QACL,YAAY,EAAE,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;QACvE,UAAU,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,IAAI,IAAK,EAAmB;QAClE,QAAQ,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE;QAClC,IAAI,CAAC,MAAc,EAAE,QAA0B;YAC7C,MAAM,IAAI,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,MAAM,EAAE,EAAE,CAAC;YAC/C,OAAO,CAAC,GAAG,CAAC,IAAsB,EAAE,GAAG,EAAE;gBACvC,QAAQ,EAAE,CAAC;YACb,CAAC,CAAC,CAAC;QACL,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { DigitalAlchemyConfiguration, TServiceParams } from "..";
2
+ export declare const INITIALIZE: unique symbol;
3
+ export declare const LOAD_PROJECT: unique symbol;
4
+ export declare const EVENT_CONFIGURATION_UPDATED = "event_configuration_updated";
5
+ export declare const INJECTED_DEFINITIONS: unique symbol;
6
+ export type ConfigManager = ReturnType<typeof Configuration>;
7
+ export declare function Configuration({ context, event, lifecycle, internal, logger, }: TServiceParams): DigitalAlchemyConfiguration;