@spinajs/configuration 2.0.557 → 3.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (89) hide show
  1. package/lib/cjs/config/configuration.d.ts +1 -5
  2. package/lib/cjs/config/configuration.d.ts.map +1 -1
  3. package/lib/cjs/config/configuration.js +3 -1
  4. package/lib/cjs/config/configuration.js.map +1 -1
  5. package/lib/cjs/configuration.d.ts +24 -1
  6. package/lib/cjs/configuration.d.ts.map +1 -1
  7. package/lib/cjs/configuration.js +357 -82
  8. package/lib/cjs/configuration.js.map +1 -1
  9. package/lib/cjs/decorators.d.ts +77 -4
  10. package/lib/cjs/decorators.d.ts.map +1 -1
  11. package/lib/cjs/decorators.js +212 -11
  12. package/lib/cjs/decorators.js.map +1 -1
  13. package/lib/cjs/exception.d.ts +9 -1
  14. package/lib/cjs/exception.d.ts.map +1 -1
  15. package/lib/cjs/exception.js +2 -1
  16. package/lib/cjs/exception.js.map +1 -1
  17. package/lib/cjs/helpers.d.ts.map +1 -1
  18. package/lib/cjs/helpers.js +3 -2
  19. package/lib/cjs/helpers.js.map +1 -1
  20. package/lib/cjs/index.browser.d.ts +1 -0
  21. package/lib/cjs/index.browser.d.ts.map +1 -1
  22. package/lib/cjs/index.browser.js +4 -0
  23. package/lib/cjs/index.browser.js.map +1 -1
  24. package/lib/cjs/index.d.ts +3 -0
  25. package/lib/cjs/index.d.ts.map +1 -1
  26. package/lib/cjs/index.js +6 -0
  27. package/lib/cjs/index.js.map +1 -1
  28. package/lib/cjs/lib-dirs.d.ts +8 -0
  29. package/lib/cjs/lib-dirs.d.ts.map +1 -0
  30. package/lib/cjs/lib-dirs.js +16 -0
  31. package/lib/cjs/lib-dirs.js.map +1 -0
  32. package/lib/cjs/schemas.d.ts +20 -0
  33. package/lib/cjs/schemas.d.ts.map +1 -0
  34. package/lib/cjs/schemas.js +58 -0
  35. package/lib/cjs/schemas.js.map +1 -0
  36. package/lib/cjs/sources.d.ts +9 -3
  37. package/lib/cjs/sources.d.ts.map +1 -1
  38. package/lib/cjs/sources.js +27 -10
  39. package/lib/cjs/sources.js.map +1 -1
  40. package/lib/cjs/util.d.ts +8 -0
  41. package/lib/cjs/util.d.ts.map +1 -1
  42. package/lib/cjs/util.js +7 -1
  43. package/lib/cjs/util.js.map +1 -1
  44. package/lib/mjs/config/configuration.d.ts +1 -5
  45. package/lib/mjs/config/configuration.d.ts.map +1 -1
  46. package/lib/mjs/config/configuration.js +3 -1
  47. package/lib/mjs/config/configuration.js.map +1 -1
  48. package/lib/mjs/configuration.d.ts +24 -1
  49. package/lib/mjs/configuration.d.ts.map +1 -1
  50. package/lib/mjs/configuration.js +326 -84
  51. package/lib/mjs/configuration.js.map +1 -1
  52. package/lib/mjs/decorators.d.ts +77 -4
  53. package/lib/mjs/decorators.d.ts.map +1 -1
  54. package/lib/mjs/decorators.js +207 -12
  55. package/lib/mjs/decorators.js.map +1 -1
  56. package/lib/mjs/exception.d.ts +9 -1
  57. package/lib/mjs/exception.d.ts.map +1 -1
  58. package/lib/mjs/exception.js +2 -1
  59. package/lib/mjs/exception.js.map +1 -1
  60. package/lib/mjs/helpers.d.ts.map +1 -1
  61. package/lib/mjs/helpers.js +3 -2
  62. package/lib/mjs/helpers.js.map +1 -1
  63. package/lib/mjs/index.browser.d.ts +1 -0
  64. package/lib/mjs/index.browser.d.ts.map +1 -1
  65. package/lib/mjs/index.browser.js +1 -0
  66. package/lib/mjs/index.browser.js.map +1 -1
  67. package/lib/mjs/index.d.ts +3 -0
  68. package/lib/mjs/index.d.ts.map +1 -1
  69. package/lib/mjs/index.js +3 -0
  70. package/lib/mjs/index.js.map +1 -1
  71. package/lib/mjs/lib-dirs.d.ts +8 -0
  72. package/lib/mjs/lib-dirs.d.ts.map +1 -0
  73. package/lib/mjs/lib-dirs.js +13 -0
  74. package/lib/mjs/lib-dirs.js.map +1 -0
  75. package/lib/mjs/schemas.d.ts +20 -0
  76. package/lib/mjs/schemas.d.ts.map +1 -0
  77. package/lib/mjs/schemas.js +54 -0
  78. package/lib/mjs/schemas.js.map +1 -0
  79. package/lib/mjs/sources.d.ts +9 -3
  80. package/lib/mjs/sources.d.ts.map +1 -1
  81. package/lib/mjs/sources.js +27 -10
  82. package/lib/mjs/sources.js.map +1 -1
  83. package/lib/mjs/util.d.ts +8 -0
  84. package/lib/mjs/util.d.ts.map +1 -1
  85. package/lib/mjs/util.js +4 -0
  86. package/lib/mjs/util.js.map +1 -1
  87. package/lib/tsconfig.cjs.tsbuildinfo +1 -1
  88. package/lib/tsconfig.mjs.tsbuildinfo +1 -1
  89. package/package.json +7 -7
@@ -1 +1 @@
1
- {"version":3,"file":"configuration.js","sourceRoot":"","sources":["../../src/configuration.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"configuration.js","sourceRoot":"","sources":["../../src/configuration.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,21 @@
1
1
  import { IConfigEntryOptions } from '@spinajs/configuration-common';
2
- import { Class } from '@spinajs/di';
2
+ import { Class, IContainer } from '@spinajs/di';
3
+ export declare const CONFIGURATION_CONTAINER_KEY = "__configurationContainer__";
4
+ /** Makes the `@Config` properties of `instance`, built with `new` rather than by DI, read the Configuration of `container`. */
5
+ export declare function bindConfigurationContainer<T extends object>(instance: T, container: IContainer): T;
3
6
  /**
4
7
  * Injects configuration value into a class property.
5
8
  *
6
- * The decorated property is replaced with a lazy getter. Every read resolves the
7
- * {@link Configuration} service and calls `config.get(path, options.defaultValue)`,
9
+ * The decorated property is replaced with a lazy getter. Every read asks the
10
+ * {@link Configuration} of the container that built the instance, which must be resolved
11
+ * before the property is read, and calls `config.get(path, options.defaultValue)`,
8
12
  * so the property always reflects the current (possibly reloaded / watched) value
9
13
  * instead of a snapshot taken at construction time.
10
14
  *
15
+ * Properties are read in `resolve()` or later. During the constructor or a field initializer
16
+ * the container is not injected yet, so the root Configuration is read (as for an instance
17
+ * built with `new`).
18
+ *
11
19
  * Besides defining the getter, the decorator registers `{ path, options }` in the DI
12
20
  * container under `__configuration_property__`. Other modules listen for these
13
21
  * registrations - eg. `@spinajs/configuration-db-source` uses them to persist
@@ -82,6 +90,67 @@ import { Class } from '@spinajs/di';
82
90
  * @returns property decorator
83
91
  */
84
92
  export declare function Config(path: string, options?: IConfigEntryOptions): (target: any, key: string) => any;
93
+ export interface IAutoinjectServiceOptions {
94
+ /** Services are looked up by registration name across the container lineage, nearest container first. */
95
+ lineage: true;
96
+ /** The configured list is injected as a Map keyed by this property of each entry; the instance must carry the same value. */
97
+ keyBy: string;
98
+ }
99
+ /**
100
+ * Resolves the services named by the list at `path` in `container`: the entries,
101
+ * each `{ [keyBy], service }`, in list order. An unset path gives an empty Map.
102
+ *
103
+ * Not for classes the Configuration itself resolves (sources, protocols): it awaits that Configuration.
104
+ *
105
+ * @throws ServiceNotFound when no registration of `type` is named as an entry's service
106
+ * @throws InvalidOption when the value is not a list, a key is listed twice, or an instance's key differs from its entry's
107
+ */
108
+ export declare function resolveNamedServices<T>(container: IContainer, path: string, type: Class<T>, options: IAutoinjectServiceOptions): Promise<Map<string, T>>;
109
+ /**
110
+ * Injects what {@link resolveNamedServices} gives for `path` in the resolving container: a Map keyed by each entry's
111
+ * `keyBy`, in list order, looked up across the container lineage. Resolved when the instance is built, so an unknown
112
+ * service or a bad list rejects that resolve.
113
+ *
114
+ * @example
115
+ * ```ts
116
+ * @AutoinjectNamedServices('authn.mfa.steps', MfaStep, { lineage: true, keyBy: 'name' })
117
+ * protected Steps: Map<string, MfaStep>;
118
+ * ```
119
+ */
120
+ export declare function AutoinjectNamedServices<T>(path: string, type: Class<T>, options: IAutoinjectServiceOptions): any;
121
+ export interface INamedServiceOptions<T> {
122
+ /**
123
+ * Used when the value at `path` is unset or ''. A class must be a subclass of `type`; any other function is treated
124
+ * as a picker, which gets the registered names and returns one, or undefined when none fits.
125
+ */
126
+ default?: string | Class<T> | ((registered: readonly string[]) => string | undefined);
127
+ /** Duck check of the resolved instance (instanceof fails across cjs/mjs copies). */
128
+ is?: (instance: unknown) => boolean;
129
+ /** Undefined instead of InvalidOption when no name applies: the value is unset and there is no default, or the picker returns none. */
130
+ optional?: boolean;
131
+ }
132
+ /**
133
+ * The one service of `type` named by the value at `path` in `container`'s configuration, or by `options.default` when
134
+ * that is unset. Looked up by registration name across the container lineage, nearest container first.
135
+ * Not for classes the Configuration itself resolves (sources, protocols): it awaits that Configuration.
136
+ *
137
+ * @throws InvalidOption when the value is not a string, no name applies (unless `options.optional`), the name is not registered, or `options.is` rejects the instance
138
+ */
139
+ export declare function resolveNamedService<T>(container: IContainer, path: string, type: Class<T>, options: INamedServiceOptions<T> & {
140
+ optional: true;
141
+ }): Promise<T | undefined>;
142
+ export declare function resolveNamedService<T>(container: IContainer, path: string, type: Class<T>, options?: INamedServiceOptions<T>): Promise<T>;
143
+ /**
144
+ * Injects {@link resolveNamedService} for `path` in the resolving container, when the instance is built. With
145
+ * `optional: true` an unset `path` injects undefined.
146
+ *
147
+ * @example
148
+ * ```ts
149
+ * @AutoinjectNamedService('authn.mfa.policy.service', MfaPolicy, { default: 'DefaultMfaPolicy' })
150
+ * protected Policy: MfaPolicy;
151
+ * ```
152
+ */
153
+ export declare function AutoinjectNamedService<T>(path: string, type: Class<T>, options?: INamedServiceOptions<T>): any;
85
154
  /**
86
155
  * Inject service based on configuration.
87
156
  * Configuration could be object or string containing service
@@ -91,6 +160,10 @@ export declare function Config(path: string, options?: IConfigEntryOptions): (ta
91
160
  *
92
161
  * @param path - configuration path where service type is stored
93
162
  * @param type - if type is provided, it will override type obtain from reflection. Use it specific with arrays and maps, becouse ts reflection module cannot extract array and map type data
163
+ * @param options - `optional: true` leaves the property undefined (with a warning) when the value at `path` is empty
164
+ * @throws InvalidOperation when the value at `path` is empty and the injection is not optional
94
165
  */
95
- export declare function AutoinjectService(path: string, type?: Class<unknown>): any;
166
+ export declare function AutoinjectService(path: string, type?: Class<unknown>, options?: {
167
+ optional?: boolean;
168
+ }): any;
96
169
  //# sourceMappingURL=decorators.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"decorators.d.ts","sourceRoot":"","sources":["../../src/decorators.ts"],"names":[],"mappings":"AAEA,OAAO,EAAiB,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACnF,OAAO,EAA4B,KAAK,EAAuD,MAAM,aAAa,CAAC;AAGnH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgFG;AACH,wBAAgB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,mBAAmB,YAChD,GAAG,OAAO,MAAM,KAAG,GAAG,CAevC;AAED;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,OAoDpE"}
1
+ {"version":3,"file":"decorators.d.ts","sourceRoot":"","sources":["../../src/decorators.ts"],"names":[],"mappings":"AAEA,OAAO,EAAiB,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACnF,OAAO,EAA4B,KAAK,EAAiB,UAAU,EAA8E,MAAM,aAAa,CAAC;AAIrK,eAAO,MAAM,2BAA2B,+BAA+B,CAAC;AAExE,+HAA+H;AAC/H,wBAAgB,0BAA0B,CAAC,CAAC,SAAS,MAAM,EAAE,QAAQ,EAAE,CAAC,EAAE,SAAS,EAAE,UAAU,GAAG,CAAC,CAGlG;AAsDD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqFG;AACH,wBAAgB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,mBAAmB,YAChD,GAAG,OAAO,MAAM,KAAG,GAAG,CAyBvC;AAED,MAAM,WAAW,yBAAyB;IACxC,yGAAyG;IACzG,OAAO,EAAE,IAAI,CAAC;IACd,6HAA6H;IAC7H,KAAK,EAAE,MAAM,CAAC;CACf;AAID;;;;;;;;GAQG;AACH,wBAAsB,oBAAoB,CAAC,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,yBAAyB,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAuC9J;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,uBAAuB,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,yBAAyB,OAU1G;AAED,MAAM,WAAW,oBAAoB,CAAC,CAAC;IACrC;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,KAAK,MAAM,GAAG,SAAS,CAAC,CAAC;IACtF,oFAAoF;IACpF,EAAE,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,KAAK,OAAO,CAAC;IACpC,uIAAuI;IACvI,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;;;;;GAMG;AACH,wBAAsB,mBAAmB,CAAC,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAAG;IAAE,QAAQ,EAAE,IAAI,CAAA;CAAE,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC;AACjL,wBAAsB,mBAAmB,CAAC,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;AAmCjJ;;;;;;;;;GASG;AACH,wBAAgB,sBAAsB,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,oBAAoB,CAAC,CAAC,CAAC,OAUxG;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAE,OAuDtG"}
@@ -3,21 +3,87 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.CONFIGURATION_CONTAINER_KEY = void 0;
7
+ exports.bindConfigurationContainer = bindConfigurationContainer;
6
8
  exports.Config = Config;
9
+ exports.resolveNamedServices = resolveNamedServices;
10
+ exports.AutoinjectNamedServices = AutoinjectNamedServices;
11
+ exports.resolveNamedService = resolveNamedService;
12
+ exports.AutoinjectNamedService = AutoinjectNamedService;
7
13
  exports.AutoinjectService = AutoinjectService;
8
14
  const lodash_1 = __importDefault(require("lodash"));
9
15
  /* eslint-disable @typescript-eslint/no-explicit-any */
10
16
  const configuration_common_1 = require("@spinajs/configuration-common");
11
17
  const di_1 = require("@spinajs/di");
18
+ const exceptions_1 = require("@spinajs/exceptions");
12
19
  const internal_logger_1 = require("@spinajs/internal-logger");
20
+ exports.CONFIGURATION_CONTAINER_KEY = '__configurationContainer__';
21
+ /** Makes the `@Config` properties of `instance`, built with `new` rather than by DI, read the Configuration of `container`. */
22
+ function bindConfigurationContainer(instance, container) {
23
+ Object.defineProperty(instance, exports.CONFIGURATION_CONTAINER_KEY, { value: container, configurable: true, writable: true });
24
+ return instance;
25
+ }
26
+ /**
27
+ * Reads the Configuration owned by the nearest container (self or ancestor) that registers one.
28
+ * Never goes through `Container.get`'s parent walk: it matches by type name, so a same-named
29
+ * class in an ancestor would hand out the ancestor's instance.
30
+ */
31
+ function getOwnConfiguration(container) {
32
+ const owner = configurationOwner(container) ?? di_1.DI.RootContainer;
33
+ if (registersFactory(owner)) {
34
+ // A factory result is never cached, so it can only be read by resolving it.
35
+ const resolved = owner.resolve(configuration_common_1.Configuration);
36
+ if ((0, di_1.isPromise)(resolved)) {
37
+ resolved.catch(() => undefined);
38
+ return null;
39
+ }
40
+ return resolved;
41
+ }
42
+ return owner.get(configuration_common_1.Configuration, false);
43
+ }
44
+ function registersFactory(owner) {
45
+ const types = owner.getRegisteredTypes(configuration_common_1.Configuration, false) ?? [];
46
+ return (0, di_1.isFactory)(types[types.length - 1]);
47
+ }
48
+ /** The nearest container (self or ancestor) that registers a Configuration. */
49
+ function configurationOwner(container) {
50
+ let owner = container;
51
+ while (owner && !owner.Registry.ownsRegistration(configuration_common_1.Configuration)) {
52
+ owner = owner.Parent;
53
+ }
54
+ return owner;
55
+ }
56
+ /**
57
+ * {@link getOwnConfiguration}, resolving the owner's Configuration first when it is registered but not resolved yet:
58
+ * property dependencies resolve together, so `@Autoinject(Configuration)` cannot run before this. A resolve already
59
+ * in flight is shared by the container. Null only when no container in the lineage registers a Configuration.
60
+ */
61
+ async function resolveOwnConfiguration(container) {
62
+ const owner = configurationOwner(container);
63
+ // A factory result is never cached: one resolve is the only read, a second would run the factory again.
64
+ if (owner && registersFactory(owner))
65
+ return (await owner.resolve(configuration_common_1.Configuration));
66
+ const cfg = getOwnConfiguration(container);
67
+ if (cfg)
68
+ return cfg;
69
+ if (!owner)
70
+ return null;
71
+ const resolved = (await owner.resolve(configuration_common_1.Configuration));
72
+ return getOwnConfiguration(container) ?? resolved;
73
+ }
13
74
  /**
14
75
  * Injects configuration value into a class property.
15
76
  *
16
- * The decorated property is replaced with a lazy getter. Every read resolves the
17
- * {@link Configuration} service and calls `config.get(path, options.defaultValue)`,
77
+ * The decorated property is replaced with a lazy getter. Every read asks the
78
+ * {@link Configuration} of the container that built the instance, which must be resolved
79
+ * before the property is read, and calls `config.get(path, options.defaultValue)`,
18
80
  * so the property always reflects the current (possibly reloaded / watched) value
19
81
  * instead of a snapshot taken at construction time.
20
82
  *
83
+ * Properties are read in `resolve()` or later. During the constructor or a field initializer
84
+ * the container is not injected yet, so the root Configuration is read (as for an instance
85
+ * built with `new`).
86
+ *
21
87
  * Besides defining the getter, the decorator registers `{ path, options }` in the DI
22
88
  * container under `__configuration_property__`. Other modules listen for these
23
89
  * registrations - eg. `@spinajs/configuration-db-source` uses them to persist
@@ -95,17 +161,147 @@ function Config(path, options) {
95
161
  return (target, key) => {
96
162
  // register conf, so we can expose eg. in db if config is set
97
163
  di_1.DI.register({ path, options }).asValue('__configuration_property__');
98
- const getter = () => {
99
- const config = di_1.DI.get(configuration_common_1.Configuration);
100
- return config.get(path, options ? options.defaultValue ?? undefined : undefined);
101
- };
164
+ // The container is injected, not the (async) Configuration, so the class keeps resolving synchronously.
165
+ (0, di_1.AddDependencyForProperty)((descriptor) => {
166
+ if (!descriptor.inject.some((i) => i.autoinjectKey === exports.CONFIGURATION_CONTAINER_KEY)) {
167
+ descriptor.inject.push({ autoinject: true, autoinjectKey: exports.CONFIGURATION_CONTAINER_KEY, inject: di_1.Container, mapFunc: undefined });
168
+ }
169
+ })(target, key);
102
170
  Object.defineProperty(target, key, {
103
- get: getter,
171
+ get() {
172
+ const container = this[exports.CONFIGURATION_CONTAINER_KEY];
173
+ const config = container ? getOwnConfiguration(container) : di_1.DI.get(configuration_common_1.Configuration);
174
+ if (!config) {
175
+ throw new exceptions_1.InvalidOperation(`Cannot read configuration path ${path}: the Configuration of the container is not resolved`);
176
+ }
177
+ return config.get(path, options ? options.defaultValue ?? undefined : undefined);
178
+ },
104
179
  enumerable: false,
105
180
  configurable: false,
106
181
  });
107
182
  };
108
183
  }
184
+ const q = (v) => JSON.stringify(v) ?? String(v);
185
+ /**
186
+ * Resolves the services named by the list at `path` in `container`: the entries,
187
+ * each `{ [keyBy], service }`, in list order. An unset path gives an empty Map.
188
+ *
189
+ * Not for classes the Configuration itself resolves (sources, protocols): it awaits that Configuration.
190
+ *
191
+ * @throws ServiceNotFound when no registration of `type` is named as an entry's service
192
+ * @throws InvalidOption when the value is not a list, a key is listed twice, or an instance's key differs from its entry's
193
+ */
194
+ async function resolveNamedServices(container, path, type, options) {
195
+ const cfg = await resolveOwnConfiguration(container);
196
+ if (!cfg) {
197
+ throw new exceptions_1.InvalidOperation(`Cannot resolve the services of ${path}: no container in the lineage registers a Configuration`);
198
+ }
199
+ const { keyBy } = options;
200
+ const entries = cfg.get(path) ?? [];
201
+ if (!Array.isArray(entries)) {
202
+ throw new exceptions_1.InvalidOption(`${path} must be a list`);
203
+ }
204
+ const registered = container.getRegisteredNames(type);
205
+ const services = new Map();
206
+ for (const entry of entries) {
207
+ const key = entry?.[keyBy];
208
+ const service = entry?.service;
209
+ if (typeof key !== 'string' || typeof service !== 'string') {
210
+ throw new exceptions_1.InvalidOption(`${path}: every entry needs a string ${keyBy} and service`);
211
+ }
212
+ if (services.has(key)) {
213
+ throw new exceptions_1.InvalidOption(`${path} lists ${keyBy} ${q(key)} twice`);
214
+ }
215
+ if (!registered.includes(service)) {
216
+ throw new di_1.ServiceNotFound(`${path} entry ${q(key)}: no ${type.name} is registered as service ${q(service)}`);
217
+ }
218
+ const instance = await container.resolveNamed(type, service);
219
+ const own = instance?.[keyBy];
220
+ if (own !== key) {
221
+ const has = typeof own === 'string' ? `${keyBy} ${q(own)}` : `no ${keyBy}`;
222
+ throw new exceptions_1.InvalidOption(`${path} entry ${q(key)} (service ${q(service)}): the service has ${has}; the entry must match it`);
223
+ }
224
+ services.set(key, instance);
225
+ }
226
+ return services;
227
+ }
228
+ /**
229
+ * Injects what {@link resolveNamedServices} gives for `path` in the resolving container: a Map keyed by each entry's
230
+ * `keyBy`, in list order, looked up across the container lineage. Resolved when the instance is built, so an unknown
231
+ * service or a bad list rejects that resolve.
232
+ *
233
+ * @example
234
+ * ```ts
235
+ * @AutoinjectNamedServices('authn.mfa.steps', MfaStep, { lineage: true, keyBy: 'name' })
236
+ * protected Steps: Map<string, MfaStep>;
237
+ * ```
238
+ */
239
+ function AutoinjectNamedServices(path, type, options) {
240
+ return (0, di_1.AddDependencyForProperty)((descriptor, _target, propertyKey) => {
241
+ descriptor.inject.push({
242
+ autoinject: true,
243
+ autoinjectKey: propertyKey,
244
+ inject: type,
245
+ data: path,
246
+ resolveFunc: (data, container) => resolveNamedServices(container, data, type, options),
247
+ });
248
+ });
249
+ }
250
+ async function resolveNamedService(container, path, type, options = {}) {
251
+ const cfg = await resolveOwnConfiguration(container);
252
+ if (!cfg) {
253
+ throw new exceptions_1.InvalidOperation(`Cannot resolve the service of ${path}: no container in the lineage registers a Configuration`);
254
+ }
255
+ const registered = container.getRegisteredNames(type);
256
+ const listed = registered.map(q).join(', ') || 'none';
257
+ const value = cfg.get(path);
258
+ if (value !== undefined && value !== null && typeof value !== 'string') {
259
+ throw new exceptions_1.InvalidOption(`${path} must be a string`);
260
+ }
261
+ let name = value === '' ? undefined : value ?? undefined;
262
+ if (name === undefined) {
263
+ const fallback = options.default;
264
+ if (fallback === undefined) {
265
+ if (options.optional)
266
+ return undefined;
267
+ throw new exceptions_1.InvalidOption(`${path} is not set (registered: ${listed})`);
268
+ }
269
+ name = typeof fallback === 'string' ? fallback : fallback.prototype instanceof type ? fallback.name : fallback(registered);
270
+ if (name === undefined && options.optional)
271
+ return undefined;
272
+ if (name === undefined)
273
+ throw new exceptions_1.InvalidOption(`${path} is not set and no ${type.name} is the default among those registered (${listed}); name one`);
274
+ }
275
+ if (!registered.includes(name)) {
276
+ throw new exceptions_1.InvalidOption(`${path} ${q(name)}: no ${type.name} is registered under that name (registered: ${listed})`);
277
+ }
278
+ const instance = await container.resolveNamed(type, name);
279
+ if (options.is && !options.is(instance)) {
280
+ throw new exceptions_1.InvalidOption(`${path} ${q(name)} is not an ${type.name}`);
281
+ }
282
+ return instance;
283
+ }
284
+ /**
285
+ * Injects {@link resolveNamedService} for `path` in the resolving container, when the instance is built. With
286
+ * `optional: true` an unset `path` injects undefined.
287
+ *
288
+ * @example
289
+ * ```ts
290
+ * @AutoinjectNamedService('authn.mfa.policy.service', MfaPolicy, { default: 'DefaultMfaPolicy' })
291
+ * protected Policy: MfaPolicy;
292
+ * ```
293
+ */
294
+ function AutoinjectNamedService(path, type, options) {
295
+ return (0, di_1.AddDependencyForProperty)((descriptor, _target, propertyKey) => {
296
+ descriptor.inject.push({
297
+ autoinject: true,
298
+ autoinjectKey: propertyKey,
299
+ inject: type,
300
+ data: path,
301
+ resolveFunc: (data, container) => resolveNamedService(container, data, type, options),
302
+ });
303
+ });
304
+ }
109
305
  /**
110
306
  * Inject service based on configuration.
111
307
  * Configuration could be object or string containing service
@@ -115,8 +311,10 @@ function Config(path, options) {
115
311
  *
116
312
  * @param path - configuration path where service type is stored
117
313
  * @param type - if type is provided, it will override type obtain from reflection. Use it specific with arrays and maps, becouse ts reflection module cannot extract array and map type data
314
+ * @param options - `optional: true` leaves the property undefined (with a warning) when the value at `path` is empty
315
+ * @throws InvalidOperation when the value at `path` is empty and the injection is not optional
118
316
  */
119
- function AutoinjectService(path, type) {
317
+ function AutoinjectService(path, type, options) {
120
318
  return (0, di_1.AddDependencyForProperty)((descriptor, target, propertyKey) => {
121
319
  const t = type ?? Reflect.getMetadata('design:type', target, propertyKey);
122
320
  descriptor.inject.push({
@@ -128,9 +326,9 @@ function AutoinjectService(path, type) {
128
326
  return x.ServiceName || x.constructor.name;
129
327
  },
130
328
  serviceFunc: (data, container) => {
131
- const cfg = container.get(configuration_common_1.Configuration);
329
+ const cfg = getOwnConfiguration(container);
132
330
  if (!cfg) {
133
- throw new Error(`Configuration service is not registered in DI container. Cannot autoinject service for property ${propertyKey.toString()}, path: ${data}`);
331
+ throw new exceptions_1.InvalidOperation(`Cannot autoinject service for property ${propertyKey.toString()}, path: ${String(data)}: the Configuration of the container is not resolved`);
134
332
  }
135
333
  let cfgVal;
136
334
  if (typeof data === 'string') {
@@ -140,7 +338,10 @@ function AutoinjectService(path, type) {
140
338
  cfgVal = data;
141
339
  }
142
340
  if (!cfgVal) {
143
- internal_logger_1.InternalLogger.warn(`Configuration value for path ${data} is empty. Cannot autoinject service for property ${propertyKey.toString()}`, "Configuration");
341
+ if (!options?.optional) {
342
+ throw new exceptions_1.InvalidOperation(`Configuration value at ${String(data)} is empty. Cannot autoinject service for property ${propertyKey.toString()}`);
343
+ }
344
+ internal_logger_1.InternalLogger.warn({ path: data, property: propertyKey.toString() }, 'Configuration value for path ${path} is empty. Cannot autoinject service for property ${property}', "Configuration");
144
345
  return undefined;
145
346
  }
146
347
  if (lodash_1.default.isString(cfgVal)) {
@@ -1 +1 @@
1
- {"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../src/decorators.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../src/decorators.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,14 @@
1
1
  import { ErrorObject } from 'ajv';
2
+ export interface ConfigurationViolation {
3
+ /** Full configuration path of the bad value, eg. `authn.audit.sinkTimeoutMs`. */
4
+ path: string;
5
+ /** The schema checked against: its `$id`, else its `$configurationModule`. */
6
+ schema: string;
7
+ message: string;
8
+ }
2
9
  export declare class InvalidConfiguration extends Error {
3
10
  validationExceptions?: ErrorObject[] | undefined;
4
- constructor(message: string, validationExceptions?: ErrorObject[] | undefined);
11
+ violations: ConfigurationViolation[];
12
+ constructor(message: string, validationExceptions?: ErrorObject[] | undefined, violations?: ConfigurationViolation[]);
5
13
  }
6
14
  //# sourceMappingURL=exception.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"exception.d.ts","sourceRoot":"","sources":["../../src/exception.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,KAAK,CAAC;AAElC,qBAAa,oBAAqB,SAAQ,KAAK;IACT,oBAAoB,CAAC,EAAE,WAAW,EAAE;IAAxE,YAAY,OAAO,EAAE,MAAM,EAAS,oBAAoB,CAAC,EAAE,WAAW,EAAE,YAAA,EAEvE;CACF"}
1
+ {"version":3,"file":"exception.d.ts","sourceRoot":"","sources":["../../src/exception.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,KAAK,CAAC;AAElC,MAAM,WAAW,sBAAsB;IACrC,iFAAiF;IACjF,IAAI,EAAE,MAAM,CAAC;IACb,8EAA8E;IAC9E,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,oBAAqB,SAAQ,KAAK;IACT,oBAAoB,CAAC,EAAE,WAAW,EAAE;IAAS,UAAU,EAAE,sBAAsB,EAAE;IAArH,YAAY,OAAO,EAAE,MAAM,EAAS,oBAAoB,CAAC,EAAE,WAAW,EAAE,YAAA,EAAS,UAAU,GAAE,sBAAsB,EAAO,EAEzH;CACF"}
@@ -2,9 +2,10 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.InvalidConfiguration = void 0;
4
4
  class InvalidConfiguration extends Error {
5
- constructor(message, validationExceptions) {
5
+ constructor(message, validationExceptions, violations = []) {
6
6
  super(message);
7
7
  this.validationExceptions = validationExceptions;
8
+ this.violations = violations;
8
9
  }
9
10
  }
10
11
  exports.InvalidConfiguration = InvalidConfiguration;
@@ -1 +1 @@
1
- {"version":3,"file":"exception.js","sourceRoot":"","sources":["../../src/exception.ts"],"names":[],"mappings":";;;AAEA,0BAAkC,SAAQ,KAAK;IAC7C,YAAY,OAAe,EAAS,oBAAoC;QACtE,KAAK,CAAC,OAAO,CAAC,CAAC;oCADmB,oBAAoB;IAExD,CAAC;CACF"}
1
+ {"version":3,"file":"exception.js","sourceRoot":"","sources":["../../src/exception.ts"],"names":[],"mappings":";;;AAUA,0BAAkC,SAAQ,KAAK;IAC7C,YAAY,OAAe,EAAS,oBAAoC,EAAS,UAAU,GAA6B,EAAE;QACxH,KAAK,CAAC,OAAO,CAAC,CAAC;oCADmB,oBAAoB;0BAAyB,UAAU;IAE3F,CAAC;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/helpers.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAmE,MAAM,aAAa,CAAC;AAGrG;;;;;;GAMG;AACH,wBAAgB,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,CAAC,GAAG,CAAC,CAWxD;AAED;;;;;;GAMG;AACH,wBAAsB,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAmBvF"}
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/helpers.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAmE,MAAM,aAAa,CAAC;AAGrG;;;;;;GAMG;AACH,wBAAgB,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,CAAC,GAAG,CAAC,CAWxD;AAED;;;;;;GAMG;AACH,wBAAsB,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAoBvF"}
@@ -31,9 +31,10 @@ function cfg(path, defaultValue) {
31
31
  */
32
32
  async function service(path, type, options) {
33
33
  // configuration errors propagate raw - only resolution errors below are wrapped
34
- const { service: serviceName } = cfg(path);
34
+ const entry = cfg(path);
35
+ const serviceName = typeof entry === 'string' ? entry : entry.service;
35
36
  try {
36
- const types = (0, di_1.getRegisteredTypes)(type);
37
+ const types = (0, di_1.getRegisteredTypes)(type) ?? [];
37
38
  const t = types.find((x) => x.name === serviceName);
38
39
  if (!t) {
39
40
  throw new di_1.ResolveException(`Service ${serviceName} is not registered for type ${type.name}`);
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/helpers.ts"],"names":[],"mappings":";;;;AAAA,wEAA8D;AAC9D,oCAAqG;AACrG,wCAAkF;AAElF;;;;;;GAMG;AACH,aAAuB,IAAY,EAAE,YAAgB;IACnD,MAAM,aAAa,GAAG,IAAA,QAAG,EAAC,oCAAa,CAAC,CAAC;IACzC,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,MAAM,IAAI,qBAAgB,CAAC,0FAA0F,CAAC,CAAC;IACzH,CAAC;IAED,IAAA,iBAAU,EAAC,IAAA,iBAAU,GAAE,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAEvC,gFAAgF;IAChF,qEAAqE;IACrE,OAAO,IAAA,iBAAU,EAAC,IAAA,gBAAS,GAAE,EAAE,IAAA,qBAAc,GAAE,CAAC,CAAC,aAAa,CAAC,GAAG,CAAI,IAAI,EAAE,YAAY,CAAC,EAAE,IAAI,CAAC,CAAC;AACnG,CAAC;AAED;;;;;;GAMG;AACI,KAAK,kBAAqB,IAAY,EAAE,IAAc,EAAE,OAAY;IACzE,gFAAgF;IAChF,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,GAAG,CAAsB,IAAI,CAAC,CAAC;IAEhE,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,IAAA,uBAAkB,EAAC,IAAI,CAAC,CAAC;QACvC,MAAM,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC;QAEpD,IAAI,CAAC,CAAC,EAAE,CAAC;YACP,MAAM,IAAI,qBAAgB,CAAC,WAAW,WAAW,+BAA+B,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QAC/F,CAAC;QAED,OAAO,CAAC,MAAM,IAAA,YAAO,EAAC,CAAyB,EAAE,OAAO,CAAC,CAAM,CAAC;IAClE,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,IAAI,qBAAgB,CACxB,+BAA+B,IAAI,KAAM,GAAa,CAAC,OAAO,+CAA+C,EAC7G,GAAG,CACJ,CAAC;IACJ,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/helpers.ts"],"names":[],"mappings":";;;;AAAA,wEAA8D;AAC9D,oCAAqG;AACrG,wCAAkF;AAElF;;;;;;GAMG;AACH,aAAuB,IAAY,EAAE,YAAgB;IACnD,MAAM,aAAa,GAAG,IAAA,QAAG,EAAC,oCAAa,CAAC,CAAC;IACzC,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,MAAM,IAAI,qBAAgB,CAAC,0FAA0F,CAAC,CAAC;IACzH,CAAC;IAED,IAAA,iBAAU,EAAC,IAAA,iBAAU,GAAE,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAEvC,gFAAgF;IAChF,qEAAqE;IACrE,OAAO,IAAA,iBAAU,EAAC,IAAA,gBAAS,GAAE,EAAE,IAAA,qBAAc,GAAE,CAAC,CAAC,aAAa,CAAC,GAAG,CAAI,IAAI,EAAE,YAAY,CAAC,EAAE,IAAI,CAAC,CAAC;AACnG,CAAC;AAED;;;;;;GAMG;AACI,KAAK,kBAAqB,IAAY,EAAE,IAAc,EAAE,OAAY;IACzE,gFAAgF;IAChF,MAAM,KAAK,GAAG,GAAG,CAA+B,IAAI,CAAC,CAAC;IACtD,MAAM,WAAW,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC;IAEtE,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,IAAA,uBAAkB,EAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QAC7C,MAAM,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC;QAEpD,IAAI,CAAC,CAAC,EAAE,CAAC;YACP,MAAM,IAAI,qBAAgB,CAAC,WAAW,WAAW,+BAA+B,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QAC/F,CAAC;QAED,OAAO,CAAC,MAAM,IAAA,YAAO,EAAC,CAAyB,EAAE,OAAO,CAAC,CAAM,CAAC;IAClE,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,IAAI,qBAAgB,CACxB,+BAA+B,IAAI,KAAM,GAAa,CAAC,OAAO,+CAA+C,EAC7G,GAAY,CACb,CAAC;IACJ,CAAC;AACH,CAAC"}
@@ -13,4 +13,5 @@ export * from './decorators.js';
13
13
  export * from './exception.js';
14
14
  export * from './fp.js';
15
15
  export * from './configuration.browser.js';
16
+ export { merge, mergeArrays } from './util-common.js';
16
17
  //# sourceMappingURL=index.browser.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.browser.d.ts","sourceRoot":"","sources":["../../src/index.browser.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,cAAc,+BAA+B,CAAC;AAC9C,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC;AACxB,cAAc,4BAA4B,CAAC"}
1
+ {"version":3,"file":"index.browser.d.ts","sourceRoot":"","sources":["../../src/index.browser.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,cAAc,+BAA+B,CAAC;AAC9C,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC;AACxB,cAAc,4BAA4B,CAAC;AAC3C,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,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
+ exports.mergeArrays = exports.merge = void 0;
17
18
  /**
18
19
  * Browser entry for @spinajs/configuration.
19
20
  *
@@ -29,4 +30,7 @@ __exportStar(require("./decorators.js"), exports);
29
30
  __exportStar(require("./exception.js"), exports);
30
31
  __exportStar(require("./fp.js"), exports);
31
32
  __exportStar(require("./configuration.browser.js"), exports);
33
+ var util_common_js_1 = require("./util-common.js");
34
+ Object.defineProperty(exports, "merge", { enumerable: true, get: function () { return util_common_js_1.merge; } });
35
+ Object.defineProperty(exports, "mergeArrays", { enumerable: true, get: function () { return util_common_js_1.mergeArrays; } });
32
36
  //# sourceMappingURL=index.browser.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.browser.js","sourceRoot":"","sources":["../../src/index.browser.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA;;;;;;;;;GASG;AACH,gEAA8C;AAC9C,kDAAgC;AAChC,iDAA+B;AAC/B,0CAAwB;AACxB,6DAA2C"}
1
+ {"version":3,"file":"index.browser.js","sourceRoot":"","sources":["../../src/index.browser.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA;;;;;;;;;GASG;AACH,gEAA8C;AAC9C,kDAAgC;AAChC,iDAA+B;AAC/B,0CAAwB;AACxB,6DAA2C;AAC3C,mDAAsD;AAA7C,uGAAA,KAAK,OAAA;AAAE,6GAAA,WAAW,OAAA"}
@@ -7,6 +7,9 @@ export * from './sources.js';
7
7
  export * from './decorators.js';
8
8
  export * from './configuration.js';
9
9
  export * from './exception.js';
10
+ export * from './schemas.js';
10
11
  export * from './helpers.js';
11
12
  export * from './fp.js';
13
+ export * from './lib-dirs.js';
14
+ export { merge, mergeArrays } from './util-common.js';
12
15
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,cAAc,+BAA+B,CAAC;AAC9C,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,cAAc,+BAA+B,CAAC;AAC9C,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,eAAe,CAAC;AAC9B,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC"}