@acmekit/utils 2.13.38 → 2.13.39

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.
@@ -1,10 +1,28 @@
1
1
  import type { ZodType } from "zod";
2
+ /**
3
+ * Extracts the input type (before transforms/defaults) from a Zod schema.
4
+ */
5
+ type OptionsInput<T> = T extends ZodType<any, any, infer I> ? I : Record<string, unknown>;
6
+ /**
7
+ * Extracts the output type (after transforms/defaults) from a Zod schema.
8
+ */
9
+ type OptionsOutput<T> = T extends ZodType<infer O> ? O : Record<string, unknown>;
10
+ /**
11
+ * The shape returned by `plugin.config()`. Use this in your
12
+ * `plugins` array in `acmekit-config.ts` for typed plugin configuration.
13
+ */
14
+ export type PluginConfigEntry<TOptions = Record<string, unknown>> = {
15
+ resolve: string;
16
+ options: TOptions;
17
+ };
2
18
  /**
3
19
  * Represents the manifest for an AcmeKit plugin.
4
20
  * Defines metadata, dependencies, options validation,
5
21
  * and lifecycle hooks.
22
+ *
23
+ * @typeParam TSchema - Zod schema type for options validation.
6
24
  */
7
- export interface PluginManifest {
25
+ export interface PluginManifest<TSchema extends ZodType<any> = ZodType<any>> {
8
26
  /**
9
27
  * Unique name of the plugin. Should match the package name
10
28
  * in package.json.
@@ -33,7 +51,7 @@ export interface PluginManifest {
33
51
  * validated during plugin resolution — invalid options
34
52
  * throw immediately with a descriptive error.
35
53
  */
36
- optionsSchema?: ZodType<any>;
54
+ optionsSchema?: TSchema;
37
55
  /**
38
56
  * Lifecycle hook called after all modules are loaded and
39
57
  * the application has started. Use this for initialization
@@ -53,15 +71,20 @@ export interface PluginManifest {
53
71
  }
54
72
  /**
55
73
  * The resolved plugin manifest returned by `definePlugin()`.
56
- * Includes the original manifest fields plus a `resolveOptions`
57
- * method bound to the plugin's name.
74
+ * Includes the original manifest fields plus `resolveOptions`
75
+ * and `config` methods bound to the plugin's name.
76
+ *
77
+ * @typeParam TSchema - Zod schema type for options validation.
58
78
  */
59
- export type ResolvedPluginManifest = PluginManifest & {
79
+ export type ResolvedPluginManifest<TSchema extends ZodType<any> = ZodType<any>> = PluginManifest<TSchema> & {
60
80
  /**
61
81
  * Resolve this plugin's options from the container.
62
82
  * Works in any context that has access to the container:
63
83
  * API routes, subscribers, jobs, workflows, modules.
64
84
  *
85
+ * When an `optionsSchema` is defined, the return type is
86
+ * automatically inferred from the schema.
87
+ *
65
88
  * @example
66
89
  * ```ts
67
90
  * import plugin from "../plugin"
@@ -71,7 +94,25 @@ export type ResolvedPluginManifest = PluginManifest & {
71
94
  * }
72
95
  * ```
73
96
  */
74
- resolveOptions: <T extends Record<string, unknown> = Record<string, unknown>>(container: any) => T;
97
+ resolveOptions: <T = OptionsOutput<TSchema>>(container: any) => T;
98
+ /**
99
+ * Create a typed plugin configuration entry for use in
100
+ * `acmekit-config.ts`. When an `optionsSchema` is defined,
101
+ * the options parameter gets full TypeScript autocomplete
102
+ * and validation.
103
+ *
104
+ * @example
105
+ * ```ts
106
+ * import { plugin } from "@myorg/my-plugin"
107
+ *
108
+ * export default defineConfig({
109
+ * plugins: [
110
+ * plugin.config({ apiKey: "sk-123" }),
111
+ * ],
112
+ * })
113
+ * ```
114
+ */
115
+ config: (options: OptionsInput<TSchema>) => PluginConfigEntry<OptionsInput<TSchema>>;
75
116
  };
76
117
  /**
77
118
  * Resolve a plugin's options from the container by plugin name.
@@ -87,18 +128,18 @@ export type ResolvedPluginManifest = PluginManifest & {
87
128
  export declare function resolvePluginOptions<T extends Record<string, unknown> = Record<string, unknown>>(container: any, pluginName: string): T;
88
129
  /**
89
130
  * Defines a plugin manifest. Provides type checking, a known
90
- * export shape for the plugin resolver, and a bound
91
- * `resolveOptions(container)` method.
131
+ * export shape for the plugin resolver, and bound
132
+ * `resolveOptions(container)` and `config(options)` methods.
92
133
  *
93
134
  * Create a `src/plugin.ts` file in your plugin project and
94
- * export the result as the default export.
135
+ * export the result as a named export.
95
136
  *
96
137
  * @example
97
138
  * ```ts
98
139
  * import { definePlugin } from "@acmekit/framework/utils"
99
140
  * import { z } from "zod"
100
141
  *
101
- * export default definePlugin({
142
+ * export const plugin = definePlugin({
102
143
  * name: "@myorg/reviews-plugin",
103
144
  * dependencies: ["@acmekit/product-plugin"],
104
145
  * optionsSchema: z.object({
@@ -110,5 +151,6 @@ export declare function resolvePluginOptions<T extends Record<string, unknown> =
110
151
  * })
111
152
  * ```
112
153
  */
113
- export declare function definePlugin(manifest: PluginManifest): ResolvedPluginManifest;
154
+ export declare function definePlugin<TSchema extends ZodType<any> = ZodType<any>>(manifest: PluginManifest<TSchema>): ResolvedPluginManifest<TSchema>;
155
+ export {};
114
156
  //# sourceMappingURL=define-plugin.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"define-plugin.d.ts","sourceRoot":"","sources":["../../src/common/define-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,KAAK,CAAA;AAGlC;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B;;;OAGG;IACH,IAAI,EAAE,MAAM,CAAA;IAEZ;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;IAEhB;;;;;;OAMG;IACH,YAAY,CAAC,EAAE,MAAM,EAAE,CAAA;IAEvB;;;;;OAKG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC,GAAG,CAAC,CAAA;IAE5B;;;;;OAKG;IACH,aAAa,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAEjD;;;;;;;OAOG;IACH,gBAAgB,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;CACrD;AAED;;;;GAIG;AACH,MAAM,MAAM,sBAAsB,GAAG,cAAc,GAAG;IACpD;;;;;;;;;;;;;OAaG;IACH,cAAc,EAAE,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC1E,SAAS,EAAE,GAAG,KACX,CAAC,CAAA;CACP,CAAA;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,oBAAoB,CAClC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC3D,SAAS,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,GAAG,CAAC,CAIvC;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,cAAc,GAAG,sBAAsB,CAS7E"}
1
+ {"version":3,"file":"define-plugin.d.ts","sourceRoot":"","sources":["../../src/common/define-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,KAAK,CAAA;AAGlC;;GAEG;AACH,KAAK,YAAY,CAAC,CAAC,IAAI,CAAC,SAAS,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC,GACvD,CAAC,GACD,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;AAE3B;;GAEG;AACH,KAAK,aAAa,CAAC,CAAC,IAAI,CAAC,SAAS,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;AAEhF;;;GAGG;AACH,MAAM,MAAM,iBAAiB,CAAC,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI;IAClE,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,QAAQ,CAAA;CAClB,CAAA;AAED;;;;;;GAMG;AACH,MAAM,WAAW,cAAc,CAAC,OAAO,SAAS,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC;IACzE;;;OAGG;IACH,IAAI,EAAE,MAAM,CAAA;IAEZ;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;IAEhB;;;;;;OAMG;IACH,YAAY,CAAC,EAAE,MAAM,EAAE,CAAA;IAEvB;;;;;OAKG;IACH,aAAa,CAAC,EAAE,OAAO,CAAA;IAEvB;;;;;OAKG;IACH,aAAa,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAEjD;;;;;;;OAOG;IACH,gBAAgB,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;CACrD;AAED;;;;;;GAMG;AACH,MAAM,MAAM,sBAAsB,CAChC,OAAO,SAAS,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,IACzC,cAAc,CAAC,OAAO,CAAC,GAAG;IAC5B;;;;;;;;;;;;;;;;OAgBG;IACH,cAAc,EAAE,CAAC,CAAC,GAAG,aAAa,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC,CAAA;IAEjE;;;;;;;;;;;;;;;;OAgBG;IACH,MAAM,EAAE,CAAC,OAAO,EAAE,YAAY,CAAC,OAAO,CAAC,KAAK,iBAAiB,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAA;CACrF,CAAA;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,oBAAoB,CAClC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC3D,SAAS,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,GAAG,CAAC,CAIvC;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,YAAY,CAAC,OAAO,SAAS,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,EACtE,QAAQ,EAAE,cAAc,CAAC,OAAO,CAAC,GAChC,sBAAsB,CAAC,OAAO,CAAC,CAgBjC"}
@@ -19,18 +19,18 @@ function resolvePluginOptions(container, pluginName) {
19
19
  }
20
20
  /**
21
21
  * Defines a plugin manifest. Provides type checking, a known
22
- * export shape for the plugin resolver, and a bound
23
- * `resolveOptions(container)` method.
22
+ * export shape for the plugin resolver, and bound
23
+ * `resolveOptions(container)` and `config(options)` methods.
24
24
  *
25
25
  * Create a `src/plugin.ts` file in your plugin project and
26
- * export the result as the default export.
26
+ * export the result as a named export.
27
27
  *
28
28
  * @example
29
29
  * ```ts
30
30
  * import { definePlugin } from "@acmekit/framework/utils"
31
31
  * import { z } from "zod"
32
32
  *
33
- * export default definePlugin({
33
+ * export const plugin = definePlugin({
34
34
  * name: "@myorg/reviews-plugin",
35
35
  * dependencies: ["@acmekit/product-plugin"],
36
36
  * optionsSchema: z.object({
@@ -48,6 +48,12 @@ function definePlugin(manifest) {
48
48
  resolveOptions(container) {
49
49
  return resolvePluginOptions(container, manifest.name);
50
50
  },
51
+ config(options) {
52
+ return {
53
+ resolve: manifest.name,
54
+ options,
55
+ };
56
+ },
51
57
  };
52
58
  }
53
59
  //# sourceMappingURL=define-plugin.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"define-plugin.js","sourceRoot":"","sources":["../../src/common/define-plugin.ts"],"names":[],"mappings":";;AAkGA,oDAMC;AA2BD,oCASC;AA3ID,2CAAuD;AAsFvD;;;;;;;;;;GAUG;AACH,SAAgB,oBAAoB,CAElC,SAAc,EAAE,UAAkB;IAClC,OAAO,SAAS,CAAC,OAAO,CACtB,GAAG,qCAAyB,CAAC,cAAc,IAAI,UAAU,EAAE,CAC5D,CAAA;AACH,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,SAAgB,YAAY,CAAC,QAAwB;IACnD,OAAO;QACL,GAAG,QAAQ;QACX,cAAc,CAEZ,SAAc;YACd,OAAO,oBAAoB,CAAI,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAA;QAC1D,CAAC;KACF,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"define-plugin.js","sourceRoot":"","sources":["../../src/common/define-plugin.ts"],"names":[],"mappings":";;AAiJA,oDAMC;AA2BD,oCAkBC;AAnMD,2CAAuD;AAqIvD;;;;;;;;;;GAUG;AACH,SAAgB,oBAAoB,CAElC,SAAc,EAAE,UAAkB;IAClC,OAAO,SAAS,CAAC,OAAO,CACtB,GAAG,qCAAyB,CAAC,cAAc,IAAI,UAAU,EAAE,CAC5D,CAAA;AACH,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,SAAgB,YAAY,CAC1B,QAAiC;IAEjC,OAAO;QACL,GAAG,QAAQ;QACX,cAAc,CAA6B,SAAc;YACvD,OAAO,oBAAoB,CACzB,SAAS,EACT,QAAQ,CAAC,IAAI,CACd,CAAA;QACH,CAAC;QACD,MAAM,CAAC,OAA8B;YACnC,OAAO;gBACL,OAAO,EAAE,QAAQ,CAAC,IAAI;gBACtB,OAAO;aACR,CAAA;QACH,CAAC;KACF,CAAA;AACH,CAAC"}
@@ -63,7 +63,7 @@ async function loadPluginManifest(pluginRootDir) {
63
63
  try {
64
64
  const manifestPath = require.resolve(path_1.default.join(pluginRootDir, ACMEKIT_PLUGIN_SOURCE_PATH, "plugin"));
65
65
  const mod = require(manifestPath);
66
- return mod.default || mod;
66
+ return mod.default || mod.plugin || mod;
67
67
  }
68
68
  catch {
69
69
  return undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"get-resolved-plugins.js","sourceRoot":"","sources":["../../src/common/get-resolved-plugins.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"get-resolved-plugins.js","sourceRoot":"","sources":["../../src/common/get-resolved-plugins.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,65 @@
1
+ /**
2
+ * Base class for all module providers. Domain-specific provider abstracts
3
+ * (e.g., AbstractFileProviderService, AbstractNotificationProviderService)
4
+ * can extend this to inherit standardized container/options handling.
5
+ *
6
+ * Provider authors extend their domain-specific abstract, which in turn
7
+ * extends this class.
8
+ *
9
+ * @typeParam TConfig - Shape of the provider options object passed via
10
+ * acmekit-config.ts. Defaults to Record<string, unknown>.
11
+ *
12
+ * @example
13
+ * ```ts
14
+ * class MyPaymentProvider extends AbstractModuleProvider<{ apiKey: string }> {
15
+ * static identifier = "my-payment"
16
+ *
17
+ * static validateOptions(options: Record<string, unknown>) {
18
+ * if (!options.apiKey) {
19
+ * throw new Error("apiKey is required")
20
+ * }
21
+ * }
22
+ *
23
+ * constructor(cradle, options) {
24
+ * super(cradle, options)
25
+ * // this.options_ is typed as { apiKey: string }
26
+ * }
27
+ * }
28
+ * ```
29
+ */
30
+ export declare abstract class AbstractModuleProvider<TConfig = Record<string, unknown>> {
31
+ /**
32
+ * Unique identifier for this provider class. Used as part of the container
33
+ * registration key. Must be set as a static property on every concrete
34
+ * provider class.
35
+ */
36
+ static identifier: string;
37
+ /**
38
+ * Override to control the awilix lifetime of this provider's registration.
39
+ * Defaults to Lifetime.SINGLETON in the loader if not set.
40
+ */
41
+ static LIFE_TIME?: import("awilix").LifetimeType;
42
+ /**
43
+ * Override to validate the provider options at startup. Throw an error
44
+ * (preferably AcmeKitError) if validation fails.
45
+ *
46
+ * Called by the framework during provider loading, before instantiation.
47
+ *
48
+ * @param options - The options from acmekit-config.ts
49
+ */
50
+ static validateOptions?(options: Record<string, unknown>): void | never;
51
+ /**
52
+ * The module's dependency injection container (awilix cradle).
53
+ */
54
+ protected readonly container_: Record<string, unknown>;
55
+ /**
56
+ * The provider options from acmekit-config.ts, typed as TConfig.
57
+ */
58
+ protected readonly options_: TConfig;
59
+ protected constructor(cradle: Record<string, unknown>, options?: TConfig);
60
+ /**
61
+ * Returns the static identifier of this provider's class.
62
+ */
63
+ getIdentifier(): string;
64
+ }
65
+ //# sourceMappingURL=abstract-module-provider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"abstract-module-provider.d.ts","sourceRoot":"","sources":["../../src/modules-sdk/abstract-module-provider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,8BAAsB,sBAAsB,CAC1C,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAEjC;;;;OAIG;IACH,MAAM,CAAC,UAAU,EAAE,MAAM,CAAA;IAEzB;;;OAGG;IACH,MAAM,CAAC,SAAS,CAAC,EAAE,OAAO,QAAQ,EAAE,YAAY,CAAA;IAEhD;;;;;;;OAOG;IACH,MAAM,CAAC,eAAe,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,KAAK;IAEvE;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAEtD;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAA;IAEpC,SAAS,aAAa,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,EAAE,OAAO;IAKxE;;OAEG;IACH,aAAa,IAAI,MAAM;CAGxB"}
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AbstractModuleProvider = void 0;
4
+ /**
5
+ * Base class for all module providers. Domain-specific provider abstracts
6
+ * (e.g., AbstractFileProviderService, AbstractNotificationProviderService)
7
+ * can extend this to inherit standardized container/options handling.
8
+ *
9
+ * Provider authors extend their domain-specific abstract, which in turn
10
+ * extends this class.
11
+ *
12
+ * @typeParam TConfig - Shape of the provider options object passed via
13
+ * acmekit-config.ts. Defaults to Record<string, unknown>.
14
+ *
15
+ * @example
16
+ * ```ts
17
+ * class MyPaymentProvider extends AbstractModuleProvider<{ apiKey: string }> {
18
+ * static identifier = "my-payment"
19
+ *
20
+ * static validateOptions(options: Record<string, unknown>) {
21
+ * if (!options.apiKey) {
22
+ * throw new Error("apiKey is required")
23
+ * }
24
+ * }
25
+ *
26
+ * constructor(cradle, options) {
27
+ * super(cradle, options)
28
+ * // this.options_ is typed as { apiKey: string }
29
+ * }
30
+ * }
31
+ * ```
32
+ */
33
+ class AbstractModuleProvider {
34
+ constructor(cradle, options) {
35
+ this.container_ = cradle;
36
+ this.options_ = (options ?? {});
37
+ }
38
+ /**
39
+ * Returns the static identifier of this provider's class.
40
+ */
41
+ getIdentifier() {
42
+ return this.constructor.identifier;
43
+ }
44
+ }
45
+ exports.AbstractModuleProvider = AbstractModuleProvider;
46
+ //# sourceMappingURL=abstract-module-provider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"abstract-module-provider.js","sourceRoot":"","sources":["../../src/modules-sdk/abstract-module-provider.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,MAAsB,sBAAsB;IAoC1C,YAAsB,MAA+B,EAAE,OAAiB;QACtE,IAAI,CAAC,UAAU,GAAG,MAAM,CAAA;QACxB,IAAI,CAAC,QAAQ,GAAG,CAAC,OAAO,IAAI,EAAE,CAAY,CAAA;IAC5C,CAAC;IAED;;OAEG;IACH,aAAa;QACX,OAAQ,IAAI,CAAC,WAA6C,CAAC,UAAU,CAAA;IACvE,CAAC;CACF;AA/CD,wDA+CC"}
@@ -19,6 +19,9 @@ export * from "./mikro-orm-cli-config-builder";
19
19
  export * from "./module";
20
20
  export * from "./module-provider";
21
21
  export * from "./module-provider-registration-key";
22
+ export * from "./abstract-module-provider";
23
+ export * from "./provider-registry";
24
+ export * from "./provider-service";
22
25
  export * from "./modules-to-container-types";
23
26
  export * from "./policy-to-types";
24
27
  export * from "./query-context";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/modules-sdk/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,cAAc,6CAA6C,CAAA;AAC3D,cAAc,wBAAwB,CAAA;AACtC,cAAc,cAAc,CAAA;AAC5B,cAAc,eAAe,CAAA;AAC7B,cAAc,mBAAmB,CAAA;AACjC,cAAc,cAAc,CAAA;AAC5B,cAAc,yBAAyB,CAAA;AACvC,cAAc,yBAAyB,CAAA;AACvC,cAAc,+BAA+B,CAAA;AAC7C,cAAc,oCAAoC,CAAA;AAClD,cAAc,uBAAuB,CAAA;AACrC,cAAc,uCAAuC,CAAA;AACrD,cAAc,+CAA+C,CAAA;AAC7D,cAAc,4BAA4B,CAAA;AAC1C,cAAc,mBAAmB,CAAA;AACjC,cAAc,qBAAqB,CAAA;AACnC,cAAc,gCAAgC,CAAA;AAC9C,cAAc,UAAU,CAAA;AACxB,cAAc,mBAAmB,CAAA;AACjC,cAAc,oCAAoC,CAAA;AAClD,cAAc,8BAA8B,CAAA;AAC5C,cAAc,mBAAmB,CAAA;AACjC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,sBAAsB,CAAA;AACpC,cAAc,yBAAyB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/modules-sdk/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,cAAc,6CAA6C,CAAA;AAC3D,cAAc,wBAAwB,CAAA;AACtC,cAAc,cAAc,CAAA;AAC5B,cAAc,eAAe,CAAA;AAC7B,cAAc,mBAAmB,CAAA;AACjC,cAAc,cAAc,CAAA;AAC5B,cAAc,yBAAyB,CAAA;AACvC,cAAc,yBAAyB,CAAA;AACvC,cAAc,+BAA+B,CAAA;AAC7C,cAAc,oCAAoC,CAAA;AAClD,cAAc,uBAAuB,CAAA;AACrC,cAAc,uCAAuC,CAAA;AACrD,cAAc,+CAA+C,CAAA;AAC7D,cAAc,4BAA4B,CAAA;AAC1C,cAAc,mBAAmB,CAAA;AACjC,cAAc,qBAAqB,CAAA;AACnC,cAAc,gCAAgC,CAAA;AAC9C,cAAc,UAAU,CAAA;AACxB,cAAc,mBAAmB,CAAA;AACjC,cAAc,oCAAoC,CAAA;AAClD,cAAc,4BAA4B,CAAA;AAC1C,cAAc,qBAAqB,CAAA;AACnC,cAAc,oBAAoB,CAAA;AAClC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,mBAAmB,CAAA;AACjC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,sBAAsB,CAAA;AACpC,cAAc,yBAAyB,CAAA"}
@@ -35,6 +35,9 @@ __exportStar(require("./mikro-orm-cli-config-builder"), exports);
35
35
  __exportStar(require("./module"), exports);
36
36
  __exportStar(require("./module-provider"), exports);
37
37
  __exportStar(require("./module-provider-registration-key"), exports);
38
+ __exportStar(require("./abstract-module-provider"), exports);
39
+ __exportStar(require("./provider-registry"), exports);
40
+ __exportStar(require("./provider-service"), exports);
38
41
  __exportStar(require("./modules-to-container-types"), exports);
39
42
  __exportStar(require("./policy-to-types"), exports);
40
43
  __exportStar(require("./query-context"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/modules-sdk/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gDAA6B;AAC7B,8EAA2D;AAC3D,yDAAsC;AACtC,+CAA4B;AAC5B,gDAA6B;AAC7B,oDAAiC;AACjC,+CAA4B;AAC5B,0DAAuC;AACvC,0DAAuC;AACvC,gEAA6C;AAC7C,qEAAkD;AAClD,wDAAqC;AACrC,wEAAqD;AACrD,gFAA6D;AAC7D,6DAA0C;AAC1C,oDAAiC;AACjC,sDAAmC;AACnC,iEAA8C;AAC9C,2CAAwB;AACxB,oDAAiC;AACjC,qEAAkD;AAClD,+DAA4C;AAC5C,oDAAiC;AACjC,kDAA+B;AAC/B,uDAAoC;AACpC,0DAAuC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/modules-sdk/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gDAA6B;AAC7B,8EAA2D;AAC3D,yDAAsC;AACtC,+CAA4B;AAC5B,gDAA6B;AAC7B,oDAAiC;AACjC,+CAA4B;AAC5B,0DAAuC;AACvC,0DAAuC;AACvC,gEAA6C;AAC7C,qEAAkD;AAClD,wDAAqC;AACrC,wEAAqD;AACrD,gFAA6D;AAC7D,6DAA0C;AAC1C,oDAAiC;AACjC,sDAAmC;AACnC,iEAA8C;AAC9C,2CAAwB;AACxB,oDAAiC;AACjC,qEAAkD;AAClD,6DAA0C;AAC1C,sDAAmC;AACnC,qDAAkC;AAClC,+DAA4C;AAC5C,oDAAiC;AACjC,kDAA+B;AAC/B,uDAAoC;AACpC,0DAAuC"}
@@ -0,0 +1,43 @@
1
+ /**
2
+ * A typed registry for resolving module providers from the DI container.
3
+ *
4
+ * Replaces the duplicated retrieveProvider / retrieveProviderRegistration
5
+ * pattern found across caching, locking, auth, notification, file, and
6
+ * analytics modules.
7
+ *
8
+ * @typeParam T - The provider interface (e.g., ICachingProviderService)
9
+ *
10
+ * @example
11
+ * ```ts
12
+ * const registry = new ProviderRegistry<IFileProvider>(
13
+ * container, "fs_", "file_providers_identifier", "file"
14
+ * )
15
+ * const provider = registry.resolve("localfs_default")
16
+ * const all = registry.list()
17
+ * ```
18
+ */
19
+ export declare class ProviderRegistry<T> {
20
+ private readonly container_;
21
+ private readonly prefix_;
22
+ private readonly identifiersKey_;
23
+ private readonly moduleName_;
24
+ constructor(container_: Record<string, unknown>, prefix_: string, identifiersKey_: string, moduleName_: string);
25
+ /**
26
+ * Resolve a provider by its ID from the container.
27
+ *
28
+ * @param providerId - The provider ID (as registered in the container)
29
+ * @returns The resolved provider instance
30
+ * @throws AcmeKitError NOT_FOUND if the provider is not registered
31
+ */
32
+ resolve(providerId: string): T;
33
+ /**
34
+ * Returns all registered provider identifiers.
35
+ * Reads from the registerAdd list in the container.
36
+ */
37
+ list(): string[];
38
+ /**
39
+ * Check whether a provider with the given ID is registered.
40
+ */
41
+ has(providerId: string): boolean;
42
+ }
43
+ //# sourceMappingURL=provider-registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provider-registry.d.ts","sourceRoot":"","sources":["../../src/modules-sdk/provider-registry.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,gBAAgB,CAAC,CAAC;IAE3B,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,WAAW;gBAHX,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACnC,OAAO,EAAE,MAAM,EACf,eAAe,EAAE,MAAM,EACvB,WAAW,EAAE,MAAM;IAGtC;;;;;;OAMG;IACH,OAAO,CAAC,UAAU,EAAE,MAAM,GAAG,CAAC;IAqB9B;;;OAGG;IACH,IAAI,IAAI,MAAM,EAAE;IAYhB;;OAEG;IACH,GAAG,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;CASjC"}
@@ -0,0 +1,82 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ProviderRegistry = void 0;
4
+ const common_1 = require("../common");
5
+ /**
6
+ * A typed registry for resolving module providers from the DI container.
7
+ *
8
+ * Replaces the duplicated retrieveProvider / retrieveProviderRegistration
9
+ * pattern found across caching, locking, auth, notification, file, and
10
+ * analytics modules.
11
+ *
12
+ * @typeParam T - The provider interface (e.g., ICachingProviderService)
13
+ *
14
+ * @example
15
+ * ```ts
16
+ * const registry = new ProviderRegistry<IFileProvider>(
17
+ * container, "fs_", "file_providers_identifier", "file"
18
+ * )
19
+ * const provider = registry.resolve("localfs_default")
20
+ * const all = registry.list()
21
+ * ```
22
+ */
23
+ class ProviderRegistry {
24
+ constructor(container_, prefix_, identifiersKey_, moduleName_) {
25
+ this.container_ = container_;
26
+ this.prefix_ = prefix_;
27
+ this.identifiersKey_ = identifiersKey_;
28
+ this.moduleName_ = moduleName_;
29
+ }
30
+ /**
31
+ * Resolve a provider by its ID from the container.
32
+ *
33
+ * @param providerId - The provider ID (as registered in the container)
34
+ * @returns The resolved provider instance
35
+ * @throws AcmeKitError NOT_FOUND if the provider is not registered
36
+ */
37
+ resolve(providerId) {
38
+ const key = `${this.prefix_}${providerId}`;
39
+ try {
40
+ return this.container_[key];
41
+ }
42
+ catch (err) {
43
+ if (err.name === "AwilixResolutionError") {
44
+ throw new common_1.AcmeKitError(common_1.AcmeKitError.Types.NOT_FOUND, `Unable to retrieve the ${this.moduleName_} provider with id: ${providerId}. ` +
45
+ `Make sure the provider is registered in the container and configured correctly in your project configuration.`);
46
+ }
47
+ throw new common_1.AcmeKitError(common_1.AcmeKitError.Types.INVALID_DATA, `Unable to retrieve the ${this.moduleName_} provider with id: ${providerId}. ` +
48
+ `The following error occurred: ${err.message}`);
49
+ }
50
+ }
51
+ /**
52
+ * Returns all registered provider identifiers.
53
+ * Reads from the registerAdd list in the container.
54
+ */
55
+ list() {
56
+ try {
57
+ const identifiers = this.container_[this.identifiersKey_];
58
+ if (Array.isArray(identifiers)) {
59
+ return identifiers.filter(Boolean);
60
+ }
61
+ return [];
62
+ }
63
+ catch {
64
+ return [];
65
+ }
66
+ }
67
+ /**
68
+ * Check whether a provider with the given ID is registered.
69
+ */
70
+ has(providerId) {
71
+ const key = `${this.prefix_}${providerId}`;
72
+ try {
73
+ const val = this.container_[key];
74
+ return val !== undefined;
75
+ }
76
+ catch {
77
+ return false;
78
+ }
79
+ }
80
+ }
81
+ exports.ProviderRegistry = ProviderRegistry;
82
+ //# sourceMappingURL=provider-registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provider-registry.js","sourceRoot":"","sources":["../../src/modules-sdk/provider-registry.ts"],"names":[],"mappings":";;;AAAA,sCAAwC;AAExC;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAa,gBAAgB;IAC3B,YACmB,UAAmC,EACnC,OAAe,EACf,eAAuB,EACvB,WAAmB;QAHnB,eAAU,GAAV,UAAU,CAAyB;QACnC,YAAO,GAAP,OAAO,CAAQ;QACf,oBAAe,GAAf,eAAe,CAAQ;QACvB,gBAAW,GAAX,WAAW,CAAQ;IACnC,CAAC;IAEJ;;;;;;OAMG;IACH,OAAO,CAAC,UAAkB;QACxB,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,OAAO,GAAG,UAAU,EAAE,CAAA;QAC1C,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAM,CAAA;QAClC,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAClB,IAAI,GAAG,CAAC,IAAI,KAAK,uBAAuB,EAAE,CAAC;gBACzC,MAAM,IAAI,qBAAY,CACpB,qBAAY,CAAC,KAAK,CAAC,SAAS,EAC5B,0BAA0B,IAAI,CAAC,WAAW,sBAAsB,UAAU,IAAI;oBAC5E,+GAA+G,CAClH,CAAA;YACH,CAAC;YAED,MAAM,IAAI,qBAAY,CACpB,qBAAY,CAAC,KAAK,CAAC,YAAY,EAC/B,0BAA0B,IAAI,CAAC,WAAW,sBAAsB,UAAU,IAAI;gBAC5E,iCAAiC,GAAG,CAAC,OAAO,EAAE,CACjD,CAAA;QACH,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,IAAI;QACF,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;YACzD,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;gBAC/B,OAAO,WAAW,CAAC,MAAM,CAAC,OAAO,CAAa,CAAA;YAChD,CAAC;YACD,OAAO,EAAE,CAAA;QACX,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,CAAA;QACX,CAAC;IACH,CAAC;IAED;;OAEG;IACH,GAAG,CAAC,UAAkB;QACpB,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,OAAO,GAAG,UAAU,EAAE,CAAA;QAC1C,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;YAChC,OAAO,GAAG,KAAK,SAAS,CAAA;QAC1B,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAA;QACd,CAAC;IACH,CAAC;CACF;AAhED,4CAgEC"}
@@ -0,0 +1,35 @@
1
+ import { ProviderRegistry } from "./provider-registry";
2
+ export type ProviderServiceConfig = {
3
+ prefix: string;
4
+ identifiersKey: string;
5
+ moduleName: string;
6
+ };
7
+ /**
8
+ * Factory that returns a base class with `__container__` and a lazily-
9
+ * initialized `providers: ProviderRegistry<T>` already wired up.
10
+ *
11
+ * Mirrors the `AcmeKitService(Model)` pattern — extend the result and
12
+ * add your methods without any container boilerplate.
13
+ *
14
+ * @example
15
+ * ```ts
16
+ * import { ProviderService } from "@acmekit/framework/utils"
17
+ *
18
+ * class CacheProviderService extends ProviderService<ICachingProvider>({
19
+ * prefix: "cp_",
20
+ * identifiersKey: "caching_providers_identifier",
21
+ * moduleName: "caching",
22
+ * }) {
23
+ * retrieve(id: string) {
24
+ * return this.providers.resolve(id)
25
+ * }
26
+ * }
27
+ * ```
28
+ */
29
+ export declare function ProviderService<T>(config: ProviderServiceConfig): {
30
+ new (container: Record<string, unknown>): {
31
+ readonly __container__: Record<string, unknown>;
32
+ readonly providers: ProviderRegistry<T>;
33
+ };
34
+ };
35
+ //# sourceMappingURL=provider-service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provider-service.d.ts","sourceRoot":"","sources":["../../src/modules-sdk/provider-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAEtD,MAAM,MAAM,qBAAqB,GAAG;IAClC,MAAM,EAAE,MAAM,CAAA;IACd,cAAc,EAAE,MAAM,CAAA;IACtB,UAAU,EAAE,MAAM,CAAA;CACnB,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAAE,MAAM,EAAE,qBAAqB,GAsBhB;IAC5C,KAAK,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;QACxC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QAC/C,QAAQ,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAA;KACxC,CAAA;CACF,CACF"}
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ProviderService = ProviderService;
4
+ const provider_registry_1 = require("./provider-registry");
5
+ /**
6
+ * Factory that returns a base class with `__container__` and a lazily-
7
+ * initialized `providers: ProviderRegistry<T>` already wired up.
8
+ *
9
+ * Mirrors the `AcmeKitService(Model)` pattern — extend the result and
10
+ * add your methods without any container boilerplate.
11
+ *
12
+ * @example
13
+ * ```ts
14
+ * import { ProviderService } from "@acmekit/framework/utils"
15
+ *
16
+ * class CacheProviderService extends ProviderService<ICachingProvider>({
17
+ * prefix: "cp_",
18
+ * identifiersKey: "caching_providers_identifier",
19
+ * moduleName: "caching",
20
+ * }) {
21
+ * retrieve(id: string) {
22
+ * return this.providers.resolve(id)
23
+ * }
24
+ * }
25
+ * ```
26
+ */
27
+ function ProviderService(config) {
28
+ class AbstractProviderService_ {
29
+ get providers() {
30
+ if (!this.__providers__) {
31
+ this.__providers__ = new provider_registry_1.ProviderRegistry(this.__container__, config.prefix, config.identifiersKey, config.moduleName);
32
+ }
33
+ return this.__providers__;
34
+ }
35
+ constructor(container) {
36
+ this.__container__ = container;
37
+ }
38
+ }
39
+ return AbstractProviderService_;
40
+ }
41
+ //# sourceMappingURL=provider-service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provider-service.js","sourceRoot":"","sources":["../../src/modules-sdk/provider-service.ts"],"names":[],"mappings":";;AA8BA,0CA4BC;AA1DD,2DAAsD;AAQtD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,SAAgB,eAAe,CAAI,MAA6B;IAC9D,MAAM,wBAAwB;QAI5B,IAAI,SAAS;YACX,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;gBACxB,IAAI,CAAC,aAAa,GAAG,IAAI,oCAAgB,CACvC,IAAI,CAAC,aAAa,EAClB,MAAM,CAAC,MAAM,EACb,MAAM,CAAC,cAAc,EACrB,MAAM,CAAC,UAAU,CAClB,CAAA;YACH,CAAC;YACD,OAAO,IAAI,CAAC,aAAa,CAAA;QAC3B,CAAC;QAED,YAAY,SAAkC;YAC5C,IAAI,CAAC,aAAa,GAAG,SAAS,CAAA;QAChC,CAAC;KACF;IAED,OAAO,wBAKN,CAAA;AACH,CAAC"}
@@ -1 +1 @@
1
- {"root":["../src/bundles.ts","../src/index.ts","../src/analytics/abstract-analytics-provider.ts","../src/analytics/index.ts","../src/api-key/api-key-type.ts","../src/api-key/index.ts","../src/auth/abstract-auth-provider.ts","../src/auth/index.ts","../src/auth/token.ts","../src/caching/index.ts","../src/common/acmekit-container.ts","../src/common/alter-columns-helper.ts","../src/common/array-difference.ts","../src/common/array-intersection.ts","../src/common/build-query.ts","../src/common/build-regexp-if-valid.ts","../src/common/camel-to-snake-case.ts","../src/common/compress-name.ts","../src/common/container.ts","../src/common/convert-item-response-to-update-request.ts","../src/common/create-container-like.ts","../src/common/create-psql-index-helper.ts","../src/common/deduplicate.ts","../src/common/deep-copy.ts","../src/common/deep-equal-obj.ts","../src/common/deep-flat-map.ts","../src/common/deep-merge.ts","../src/common/define-config.ts","../src/common/define-file-config.ts","../src/common/define-plugin.ts","../src/common/dynamic-import.ts","../src/common/env-editor.ts","../src/common/errors.ts","../src/common/execute-with-concurrency.ts","../src/common/file-system.ts","../src/common/filter-object-by-keys.ts","../src/common/filter-operator-map.ts","../src/common/flatten-object-to-key-value-pairs.ts","../src/common/generate-entity-id.ts","../src/common/get-caller-file-path.ts","../src/common/get-config-file.ts","../src/common/get-duplicates.ts","../src/common/get-iso-string-from-date.ts","../src/common/get-node-version.ts","../src/common/get-resolved-plugins.ts","../src/common/get-selects-and-relations-from-object-array.ts","../src/common/get-set-difference.ts","../src/common/graceful-shutdown-server.ts","../src/common/group-by.ts","../src/common/handle-postgres-database-error.ts","../src/common/index.ts","../src/common/is-big-number.ts","../src/common/is-boolean.ts","../src/common/is-date.ts","../src/common/is-defined.ts","../src/common/is-email.ts","../src/common/is-error-like.ts","../src/common/is-object.ts","../src/common/is-present.ts","../src/common/is-string.ts","../src/common/is-truthy.ts","../src/common/load-env.ts","../src/common/lower-case-first.ts","../src/common/map-object-to.ts","../src/common/merge-metadata.ts","../src/common/merge-plugin-modules.ts","../src/common/normalize-csv-value.ts","../src/common/normalize-import-path-with-source.ts","../src/common/normalize-locale.ts","../src/common/object-from-string-path.ts","../src/common/object-to-string-path.ts","../src/common/omit-deep.ts","../src/common/optional-numeric-serializer.ts","../src/common/parse-cors-origins.ts","../src/common/parse-stringify-if-necessary.ts","../src/common/partition-array.ts","../src/common/pick-deep.ts","../src/common/pick-value-from-object.ts","../src/common/plugin-dependency-graph.ts","../src/common/plurailze.ts","../src/common/prefix-array-items.ts","../src/common/promise-all.ts","../src/common/read-dir-recursive.ts","../src/common/remote-query-object-from-string.ts","../src/common/remote-query-object-to-string.ts","../src/common/remove-nullisih.ts","../src/common/remove-undefined-properties.ts","../src/common/remove-undefined.ts","../src/common/resolve-exports.ts","../src/common/retry-execution.ts","../src/common/rules.ts","../src/common/selector-constraints-to-string.ts","../src/common/serialize-error.ts","../src/common/simple-hash.ts","../src/common/string-to-select-relation-object.ts","../src/common/stringify-circular.ts","../src/common/to-camel-case.ts","../src/common/to-handle.ts","../src/common/to-kebab-case.ts","../src/common/to-pascal-case.ts","../src/common/to-snake-case.ts","../src/common/to-unix-slash.ts","../src/common/trim-zeros.ts","../src/common/try-convert-to-boolean.ts","../src/common/try-convert-to-number.ts","../src/common/unflatten-object-keys.ts","../src/common/upper-case-first.ts","../src/common/validate-handle.ts","../src/common/validate-module-name.ts","../src/common/wrap-handler.ts","../src/common/__fixtures__/define-config/github/index.ts","../src/common/__tests__/array-intersection.spec.ts","../src/common/__tests__/build-query.spec.ts","../src/common/__tests__/build-regexp-if-valid.spec.ts","../src/common/__tests__/compress-name.spec.ts","../src/common/__tests__/convert-item-response-to-update-request.ts","../src/common/__tests__/create-psql-index-helper.spec.ts","../src/common/__tests__/deep-copy.spec.ts","../src/common/__tests__/deep-equal-obj.spec.ts","../src/common/__tests__/deep-flat-map.ts","../src/common/__tests__/deep-merge.ts","../src/common/__tests__/define-config.spec.ts","../src/common/__tests__/define-plugin.spec.ts","../src/common/__tests__/env-editor.spec.ts","../src/common/__tests__/filter-object-by-keys.spec.ts","../src/common/__tests__/flatten-object-to-key-value-pairs.spec.ts","../src/common/__tests__/get-duplicates.spec.ts","../src/common/__tests__/get-resolved-plugins.spec.ts","../src/common/__tests__/get-selects-and-relations-from-object-array.spec.ts","../src/common/__tests__/graceful-shutdown-server.ts","../src/common/__tests__/group-by.spec.ts","../src/common/__tests__/handle-postgres-database-error.spec.ts","../src/common/__tests__/is-email.spec.ts","../src/common/__tests__/is-present.spec.ts","../src/common/__tests__/is-valid-handle.spec.ts","../src/common/__tests__/load-env.spec.ts","../src/common/__tests__/map-object-to.ts","../src/common/__tests__/merge-metadata.spec.ts","../src/common/__tests__/normalize-locale.spec.ts","../src/common/__tests__/object-to-string-path.spec.ts","../src/common/__tests__/omit-deep.spec.ts","../src/common/__tests__/parse-cors-origins.spec.ts","../src/common/__tests__/partition-array.spec.ts","../src/common/__tests__/pick-value-from-object.spec.ts","../src/common/__tests__/plugin-dependency-graph.spec.ts","../src/common/__tests__/pluralize.spec.ts","../src/common/__tests__/promise-all.spec.ts","../src/common/__tests__/read-dir-recursive.spec.ts","../src/common/__tests__/remote-query-object-from-string.spec.ts","../src/common/__tests__/remote-query-object-to-string.spec.ts","../src/common/__tests__/remove-undefined-properties.spec.ts","../src/common/__tests__/remove-undefined.spec.ts","../src/common/__tests__/retry-execution.spec.ts","../src/common/__tests__/string-to-select-relation-object.ts","../src/common/__tests__/to-camel-case.spec.ts","../src/common/__tests__/to-handle.spec.ts","../src/common/__tests__/transform-modules.spec.ts","../src/common/__tests__/unflatten-object-keys.spec.ts","../src/common/__tests__/upper-case-first.spec.ts","../src/common/__tests__/validate-module-name.spec.ts","../src/core-flows/events.ts","../src/core-flows/index.ts","../src/dal/index.ts","../src/dal/utils.ts","../src/dal/mikro-orm/base-entity.ts","../src/dal/mikro-orm/big-number-field.ts","../src/dal/mikro-orm/custom-db-migrator.ts","../src/dal/mikro-orm/db-error-mapper.ts","../src/dal/mikro-orm/mikro-orm-create-connection.ts","../src/dal/mikro-orm/mikro-orm-free-text-search-filter.ts","../src/dal/mikro-orm/mikro-orm-repository.ts","../src/dal/mikro-orm/mikro-orm-serializer-old.ts","../src/dal/mikro-orm/mikro-orm-serializer.ts","../src/dal/mikro-orm/mikro-orm-soft-deletable-filter.ts","../src/dal/mikro-orm/utils.ts","../src/dal/mikro-orm/__fixtures__/utils.ts","../src/dal/mikro-orm/__tests__/base-entity.spec.ts","../src/dal/mikro-orm/__tests__/big-number-field.spec.ts","../src/dal/mikro-orm/__tests__/mikro-orm-free-text-search-filter.spec.ts","../src/dal/mikro-orm/__tests__/mikro-orm-serializer.spec.ts","../src/dal/mikro-orm/__tests__/ts-migration-generator.spec.ts","../src/dal/mikro-orm/decorators/foreign-key.ts","../src/dal/mikro-orm/decorators/searchable.ts","../src/dal/mikro-orm/integration-tests/__fixtures__/database.ts","../src/dal/mikro-orm/integration-tests/__fixtures__/utils.ts","../src/dal/mikro-orm/integration-tests/__tests__/mikro-orm-repository.spec.ts","../src/dal/mikro-orm/integration-tests/__tests__/utils.spec.ts","../src/defaults/countries.ts","../src/defaults/currencies.ts","../src/defaults/index.ts","../src/dev-server/index.ts","../src/dev-server/registry-helpers.ts","../src/dev-server/types.ts","../src/dev-server/handlers/job-handler.ts","../src/dev-server/handlers/step-handler.ts","../src/dev-server/handlers/subscriber-handler.ts","../src/dev-server/handlers/workflow-handler.ts","../src/dml/entity-builder.ts","../src/dml/entity.ts","../src/dml/errors.ts","../src/dml/index.ts","../src/dml/__tests__/array-property.spec.ts","../src/dml/__tests__/autoincrement-property.spec.ts","../src/dml/__tests__/base-property.spec.ts","../src/dml/__tests__/base-relationship.spec.ts","../src/dml/__tests__/big-number-property.spec.ts","../src/dml/__tests__/boolean-property.spec.ts","../src/dml/__tests__/create-graphql.spec.ts","../src/dml/__tests__/date-time-property.spec.ts","../src/dml/__tests__/entity-builder.spec.ts","../src/dml/__tests__/enum-schema.spec.ts","../src/dml/__tests__/float-property.spec.ts","../src/dml/__tests__/has-many-relationship.spec.ts","../src/dml/__tests__/has-one-relationship.spec.ts","../src/dml/__tests__/id-property.spec.ts","../src/dml/__tests__/json-property.spec.ts","../src/dml/__tests__/many-to-many.spec.ts","../src/dml/__tests__/number-property.spec.ts","../src/dml/__tests__/text-property.spec.ts","../src/dml/helpers/create-graphql.ts","../src/dml/helpers/create-mikro-orm-entity.ts","../src/dml/helpers/entity-builder/apply-searchable.ts","../src/dml/helpers/entity-builder/build-indexes.ts","../src/dml/helpers/entity-builder/create-big-number-properties.ts","../src/dml/helpers/entity-builder/create-default-properties.ts","../src/dml/helpers/entity-builder/define-property.ts","../src/dml/helpers/entity-builder/define-relationship.ts","../src/dml/helpers/entity-builder/index.ts","../src/dml/helpers/entity-builder/parse-entity-name.ts","../src/dml/helpers/entity-builder/query-builder.ts","../src/dml/helpers/entity-builder/relationship-helpers.ts","../src/dml/helpers/graphql-builder/get-attribute.ts","../src/dml/helpers/graphql-builder/set-relationship.ts","../src/dml/helpers/mikro-orm/apply-checks.ts","../src/dml/helpers/mikro-orm/apply-indexes.ts","../src/dml/helpers/mikro-orm/build-indexes.ts","../src/dml/integration-tests/utils.ts","../src/dml/integration-tests/__tests__/entity.spec.ts","../src/dml/integration-tests/__tests__/enum.spec.ts","../src/dml/integration-tests/__tests__/has-one-belongs-to.spec.ts","../src/dml/integration-tests/__tests__/many-to-many.spec.ts","../src/dml/integration-tests/__tests__/many-to-one.spec.ts","../src/dml/integration-tests/__tests__/translatable.spec.ts","../src/dml/properties/array.ts","../src/dml/properties/autoincrement.ts","../src/dml/properties/base.ts","../src/dml/properties/big-number.ts","../src/dml/properties/boolean.ts","../src/dml/properties/computed.ts","../src/dml/properties/date-time.ts","../src/dml/properties/enum.ts","../src/dml/properties/float.ts","../src/dml/properties/id.ts","../src/dml/properties/index.ts","../src/dml/properties/json.ts","../src/dml/properties/nullable.ts","../src/dml/properties/number.ts","../src/dml/properties/primary-key.ts","../src/dml/properties/text.ts","../src/dml/relations/base.ts","../src/dml/relations/belongs-to.ts","../src/dml/relations/has-many.ts","../src/dml/relations/has-one-fk.ts","../src/dml/relations/has-one.ts","../src/dml/relations/index.ts","../src/dml/relations/many-to-many.ts","../src/dml/relations/nullable.ts","../src/event-bus/build-event-messages.ts","../src/event-bus/common-events.ts","../src/event-bus/index.ts","../src/event-bus/message-aggregator.ts","../src/event-bus/utils.ts","../src/event-bus/__tests__/abstract-event-bus-module.spec.ts","../src/event-bus/__tests__/build-event-names-from-entity-name.spec.ts","../src/event-bus/__tests__/message-aggregator.spec.ts","../src/exceptions/index.ts","../src/exceptions/is-duplicate-error.ts","../src/exceptions/postgres-error.ts","../src/feature-flags/discover-and-register-feature-flags.ts","../src/feature-flags/discover-feature-flags.ts","../src/feature-flags/flag-router.ts","../src/feature-flags/index.ts","../src/feature-flags/register-flag.ts","../src/file/abstract-file-provider.ts","../src/file/index.ts","../src/graphql/clean-graphql.ts","../src/graphql/extract-relations-from-graphql.ts","../src/graphql/get-fields-and-relations.ts","../src/graphql/graphql-parser.ts","../src/graphql/graphql-to-fields.ts","../src/graphql/graphql-to-ts-types.ts","../src/graphql/index.ts","../src/graphql/__tests__/clean-graphql-schema.spec.ts","../src/graphql/__tests__/gql-schema-to-types.spec.ts","../src/graphql/__tests__/graphql-ast.ts","../src/graphql/__tests__/utils/gql-get-fields-and-relations.spec.ts","../src/graphql/__tests__/utils/graphql-schema-to-fields.ts","../src/link/compose-link-name.ts","../src/link/index.ts","../src/link/links.ts","../src/math/big-number.ts","../src/math/index.ts","../src/migrations/index.ts","../src/migrations/integration-tests/__tests__/migrations-generate.spec.ts","../src/migrations/integration-tests/__tests__/migrations-revert.spec.ts","../src/migrations/integration-tests/__tests__/migrations-run.spec.ts","../src/modules-sdk/acmekit-internal-service.ts","../src/modules-sdk/acmekit-service.ts","../src/modules-sdk/build-query.ts","../src/modules-sdk/create-acmekit-mikro-orm-event-subscriber.ts","../src/modules-sdk/create-pg-connection.ts","../src/modules-sdk/define-link.ts","../src/modules-sdk/define-policies.ts","../src/modules-sdk/definition.ts","../src/modules-sdk/event-builder-factory.ts","../src/modules-sdk/index.ts","../src/modules-sdk/joiner-config-builder.ts","../src/modules-sdk/load-module-database-config.ts","../src/modules-sdk/mikro-orm-cli-config-builder.ts","../src/modules-sdk/module-provider-registration-key.ts","../src/modules-sdk/module-provider.ts","../src/modules-sdk/module.ts","../src/modules-sdk/modules-to-container-types.ts","../src/modules-sdk/policy-to-types.ts","../src/modules-sdk/query-context.ts","../src/modules-sdk/__fixtures__/joiner-config/entities.ts","../src/modules-sdk/__tests__/acmekit-internal-service.ts","../src/modules-sdk/__tests__/acmekit-service-typings.spec.ts","../src/modules-sdk/__tests__/acmekit-service.spec.ts","../src/modules-sdk/__tests__/build-query.spec.ts","../src/modules-sdk/__tests__/joiner-config-builder.spec.ts","../src/modules-sdk/__tests__/load-database-config.spec.ts","../src/modules-sdk/__tests__/mikro-orm-cli-config-builder.spec.ts","../src/modules-sdk/__tests__/modules-to-container-types.spec.ts","../src/modules-sdk/decorators/context-parameter.ts","../src/modules-sdk/decorators/emit-events.ts","../src/modules-sdk/decorators/index.ts","../src/modules-sdk/decorators/inject-into-context.ts","../src/modules-sdk/decorators/inject-manager.ts","../src/modules-sdk/decorators/inject-shared-context.ts","../src/modules-sdk/decorators/inject-transaction-manager.ts","../src/modules-sdk/decorators/module.ts","../src/modules-sdk/decorators/__tests__/emit-events.ts","../src/modules-sdk/loaders/container-loader-factory.ts","../src/modules-sdk/loaders/load-models.ts","../src/modules-sdk/loaders/mikro-orm-connection-loader-factory.ts","../src/modules-sdk/loaders/mikro-orm-connection-loader.ts","../src/modules-sdk/migration-scripts/index.ts","../src/modules-sdk/migration-scripts/migration-down.ts","../src/modules-sdk/migration-scripts/migration-generate.ts","../src/modules-sdk/migration-scripts/migration-up.ts","../src/modules-sdk/migration-scripts/seed.ts","../src/modules-sdk/types/acmekit-service.ts","../src/modules-sdk/types/links-config.ts","../src/notification/abstract-notification-provider.ts","../src/notification/common.ts","../src/notification/events.ts","../src/notification/index.ts","../src/orchestration/index.ts","../src/orchestration/symbol.ts","../src/orchestration/types.ts","../src/pg/index.ts","../src/pg/integration-tests/__tests__/pg_utils.spec.ts","../src/policies/discover-policies.ts","../src/policies/index.ts","../src/routes/index.ts","../src/routes/routes-to-types.ts","../src/routes/__fixtures__/admin/api-keys/route.ts","../src/routes/__fixtures__/admin/api-keys/validators.ts","../src/routes/__fixtures__/admin/custom/route.ts","../src/routes/__fixtures__/admin/locales/route.d.ts","../src/routes/__fixtures__/admin/users/route.ts","../src/routes/__fixtures__/admin/users/[id]/route.ts","../src/routes/__tests__/routes-to-types.spec.ts","../src/search/abstract-service.ts","../src/search/index-types.ts","../src/search/index.ts","../src/search/search-relations.ts","../src/search/variant-keys.ts","../src/translations/apply-translations.ts","../src/translations/index.ts","../src/translations/__tests__/apply-translations.spec.ts","../src/user/events.ts","../src/user/index.ts"],"version":"5.9.3"}
1
+ {"root":["../src/bundles.ts","../src/index.ts","../src/analytics/abstract-analytics-provider.ts","../src/analytics/index.ts","../src/api-key/api-key-type.ts","../src/api-key/index.ts","../src/auth/abstract-auth-provider.ts","../src/auth/index.ts","../src/auth/token.ts","../src/caching/index.ts","../src/common/acmekit-container.ts","../src/common/alter-columns-helper.ts","../src/common/array-difference.ts","../src/common/array-intersection.ts","../src/common/build-query.ts","../src/common/build-regexp-if-valid.ts","../src/common/camel-to-snake-case.ts","../src/common/compress-name.ts","../src/common/container.ts","../src/common/convert-item-response-to-update-request.ts","../src/common/create-container-like.ts","../src/common/create-psql-index-helper.ts","../src/common/deduplicate.ts","../src/common/deep-copy.ts","../src/common/deep-equal-obj.ts","../src/common/deep-flat-map.ts","../src/common/deep-merge.ts","../src/common/define-config.ts","../src/common/define-file-config.ts","../src/common/define-plugin.ts","../src/common/dynamic-import.ts","../src/common/env-editor.ts","../src/common/errors.ts","../src/common/execute-with-concurrency.ts","../src/common/file-system.ts","../src/common/filter-object-by-keys.ts","../src/common/filter-operator-map.ts","../src/common/flatten-object-to-key-value-pairs.ts","../src/common/generate-entity-id.ts","../src/common/get-caller-file-path.ts","../src/common/get-config-file.ts","../src/common/get-duplicates.ts","../src/common/get-iso-string-from-date.ts","../src/common/get-node-version.ts","../src/common/get-resolved-plugins.ts","../src/common/get-selects-and-relations-from-object-array.ts","../src/common/get-set-difference.ts","../src/common/graceful-shutdown-server.ts","../src/common/group-by.ts","../src/common/handle-postgres-database-error.ts","../src/common/index.ts","../src/common/is-big-number.ts","../src/common/is-boolean.ts","../src/common/is-date.ts","../src/common/is-defined.ts","../src/common/is-email.ts","../src/common/is-error-like.ts","../src/common/is-object.ts","../src/common/is-present.ts","../src/common/is-string.ts","../src/common/is-truthy.ts","../src/common/load-env.ts","../src/common/lower-case-first.ts","../src/common/map-object-to.ts","../src/common/merge-metadata.ts","../src/common/merge-plugin-modules.ts","../src/common/normalize-csv-value.ts","../src/common/normalize-import-path-with-source.ts","../src/common/normalize-locale.ts","../src/common/object-from-string-path.ts","../src/common/object-to-string-path.ts","../src/common/omit-deep.ts","../src/common/optional-numeric-serializer.ts","../src/common/parse-cors-origins.ts","../src/common/parse-stringify-if-necessary.ts","../src/common/partition-array.ts","../src/common/pick-deep.ts","../src/common/pick-value-from-object.ts","../src/common/plugin-dependency-graph.ts","../src/common/plurailze.ts","../src/common/prefix-array-items.ts","../src/common/promise-all.ts","../src/common/read-dir-recursive.ts","../src/common/remote-query-object-from-string.ts","../src/common/remote-query-object-to-string.ts","../src/common/remove-nullisih.ts","../src/common/remove-undefined-properties.ts","../src/common/remove-undefined.ts","../src/common/resolve-exports.ts","../src/common/retry-execution.ts","../src/common/rules.ts","../src/common/selector-constraints-to-string.ts","../src/common/serialize-error.ts","../src/common/simple-hash.ts","../src/common/string-to-select-relation-object.ts","../src/common/stringify-circular.ts","../src/common/to-camel-case.ts","../src/common/to-handle.ts","../src/common/to-kebab-case.ts","../src/common/to-pascal-case.ts","../src/common/to-snake-case.ts","../src/common/to-unix-slash.ts","../src/common/trim-zeros.ts","../src/common/try-convert-to-boolean.ts","../src/common/try-convert-to-number.ts","../src/common/unflatten-object-keys.ts","../src/common/upper-case-first.ts","../src/common/validate-handle.ts","../src/common/validate-module-name.ts","../src/common/wrap-handler.ts","../src/common/__fixtures__/define-config/github/index.ts","../src/common/__tests__/array-intersection.spec.ts","../src/common/__tests__/build-query.spec.ts","../src/common/__tests__/build-regexp-if-valid.spec.ts","../src/common/__tests__/compress-name.spec.ts","../src/common/__tests__/convert-item-response-to-update-request.ts","../src/common/__tests__/create-psql-index-helper.spec.ts","../src/common/__tests__/deep-copy.spec.ts","../src/common/__tests__/deep-equal-obj.spec.ts","../src/common/__tests__/deep-flat-map.ts","../src/common/__tests__/deep-merge.ts","../src/common/__tests__/define-config.spec.ts","../src/common/__tests__/define-plugin.spec.ts","../src/common/__tests__/env-editor.spec.ts","../src/common/__tests__/filter-object-by-keys.spec.ts","../src/common/__tests__/flatten-object-to-key-value-pairs.spec.ts","../src/common/__tests__/get-duplicates.spec.ts","../src/common/__tests__/get-resolved-plugins.spec.ts","../src/common/__tests__/get-selects-and-relations-from-object-array.spec.ts","../src/common/__tests__/graceful-shutdown-server.ts","../src/common/__tests__/group-by.spec.ts","../src/common/__tests__/handle-postgres-database-error.spec.ts","../src/common/__tests__/is-email.spec.ts","../src/common/__tests__/is-present.spec.ts","../src/common/__tests__/is-valid-handle.spec.ts","../src/common/__tests__/load-env.spec.ts","../src/common/__tests__/map-object-to.ts","../src/common/__tests__/merge-metadata.spec.ts","../src/common/__tests__/normalize-locale.spec.ts","../src/common/__tests__/object-to-string-path.spec.ts","../src/common/__tests__/omit-deep.spec.ts","../src/common/__tests__/parse-cors-origins.spec.ts","../src/common/__tests__/partition-array.spec.ts","../src/common/__tests__/pick-value-from-object.spec.ts","../src/common/__tests__/plugin-dependency-graph.spec.ts","../src/common/__tests__/pluralize.spec.ts","../src/common/__tests__/promise-all.spec.ts","../src/common/__tests__/read-dir-recursive.spec.ts","../src/common/__tests__/remote-query-object-from-string.spec.ts","../src/common/__tests__/remote-query-object-to-string.spec.ts","../src/common/__tests__/remove-undefined-properties.spec.ts","../src/common/__tests__/remove-undefined.spec.ts","../src/common/__tests__/retry-execution.spec.ts","../src/common/__tests__/string-to-select-relation-object.ts","../src/common/__tests__/to-camel-case.spec.ts","../src/common/__tests__/to-handle.spec.ts","../src/common/__tests__/transform-modules.spec.ts","../src/common/__tests__/unflatten-object-keys.spec.ts","../src/common/__tests__/upper-case-first.spec.ts","../src/common/__tests__/validate-module-name.spec.ts","../src/core-flows/events.ts","../src/core-flows/index.ts","../src/dal/index.ts","../src/dal/utils.ts","../src/dal/mikro-orm/base-entity.ts","../src/dal/mikro-orm/big-number-field.ts","../src/dal/mikro-orm/custom-db-migrator.ts","../src/dal/mikro-orm/db-error-mapper.ts","../src/dal/mikro-orm/mikro-orm-create-connection.ts","../src/dal/mikro-orm/mikro-orm-free-text-search-filter.ts","../src/dal/mikro-orm/mikro-orm-repository.ts","../src/dal/mikro-orm/mikro-orm-serializer-old.ts","../src/dal/mikro-orm/mikro-orm-serializer.ts","../src/dal/mikro-orm/mikro-orm-soft-deletable-filter.ts","../src/dal/mikro-orm/utils.ts","../src/dal/mikro-orm/__fixtures__/utils.ts","../src/dal/mikro-orm/__tests__/base-entity.spec.ts","../src/dal/mikro-orm/__tests__/big-number-field.spec.ts","../src/dal/mikro-orm/__tests__/mikro-orm-free-text-search-filter.spec.ts","../src/dal/mikro-orm/__tests__/mikro-orm-serializer.spec.ts","../src/dal/mikro-orm/__tests__/ts-migration-generator.spec.ts","../src/dal/mikro-orm/decorators/foreign-key.ts","../src/dal/mikro-orm/decorators/searchable.ts","../src/dal/mikro-orm/integration-tests/__fixtures__/database.ts","../src/dal/mikro-orm/integration-tests/__fixtures__/utils.ts","../src/dal/mikro-orm/integration-tests/__tests__/mikro-orm-repository.spec.ts","../src/dal/mikro-orm/integration-tests/__tests__/utils.spec.ts","../src/defaults/countries.ts","../src/defaults/currencies.ts","../src/defaults/index.ts","../src/dev-server/index.ts","../src/dev-server/registry-helpers.ts","../src/dev-server/types.ts","../src/dev-server/handlers/job-handler.ts","../src/dev-server/handlers/step-handler.ts","../src/dev-server/handlers/subscriber-handler.ts","../src/dev-server/handlers/workflow-handler.ts","../src/dml/entity-builder.ts","../src/dml/entity.ts","../src/dml/errors.ts","../src/dml/index.ts","../src/dml/__tests__/array-property.spec.ts","../src/dml/__tests__/autoincrement-property.spec.ts","../src/dml/__tests__/base-property.spec.ts","../src/dml/__tests__/base-relationship.spec.ts","../src/dml/__tests__/big-number-property.spec.ts","../src/dml/__tests__/boolean-property.spec.ts","../src/dml/__tests__/create-graphql.spec.ts","../src/dml/__tests__/date-time-property.spec.ts","../src/dml/__tests__/entity-builder.spec.ts","../src/dml/__tests__/enum-schema.spec.ts","../src/dml/__tests__/float-property.spec.ts","../src/dml/__tests__/has-many-relationship.spec.ts","../src/dml/__tests__/has-one-relationship.spec.ts","../src/dml/__tests__/id-property.spec.ts","../src/dml/__tests__/json-property.spec.ts","../src/dml/__tests__/many-to-many.spec.ts","../src/dml/__tests__/number-property.spec.ts","../src/dml/__tests__/text-property.spec.ts","../src/dml/helpers/create-graphql.ts","../src/dml/helpers/create-mikro-orm-entity.ts","../src/dml/helpers/entity-builder/apply-searchable.ts","../src/dml/helpers/entity-builder/build-indexes.ts","../src/dml/helpers/entity-builder/create-big-number-properties.ts","../src/dml/helpers/entity-builder/create-default-properties.ts","../src/dml/helpers/entity-builder/define-property.ts","../src/dml/helpers/entity-builder/define-relationship.ts","../src/dml/helpers/entity-builder/index.ts","../src/dml/helpers/entity-builder/parse-entity-name.ts","../src/dml/helpers/entity-builder/query-builder.ts","../src/dml/helpers/entity-builder/relationship-helpers.ts","../src/dml/helpers/graphql-builder/get-attribute.ts","../src/dml/helpers/graphql-builder/set-relationship.ts","../src/dml/helpers/mikro-orm/apply-checks.ts","../src/dml/helpers/mikro-orm/apply-indexes.ts","../src/dml/helpers/mikro-orm/build-indexes.ts","../src/dml/integration-tests/utils.ts","../src/dml/integration-tests/__tests__/entity.spec.ts","../src/dml/integration-tests/__tests__/enum.spec.ts","../src/dml/integration-tests/__tests__/has-one-belongs-to.spec.ts","../src/dml/integration-tests/__tests__/many-to-many.spec.ts","../src/dml/integration-tests/__tests__/many-to-one.spec.ts","../src/dml/integration-tests/__tests__/translatable.spec.ts","../src/dml/properties/array.ts","../src/dml/properties/autoincrement.ts","../src/dml/properties/base.ts","../src/dml/properties/big-number.ts","../src/dml/properties/boolean.ts","../src/dml/properties/computed.ts","../src/dml/properties/date-time.ts","../src/dml/properties/enum.ts","../src/dml/properties/float.ts","../src/dml/properties/id.ts","../src/dml/properties/index.ts","../src/dml/properties/json.ts","../src/dml/properties/nullable.ts","../src/dml/properties/number.ts","../src/dml/properties/primary-key.ts","../src/dml/properties/text.ts","../src/dml/relations/base.ts","../src/dml/relations/belongs-to.ts","../src/dml/relations/has-many.ts","../src/dml/relations/has-one-fk.ts","../src/dml/relations/has-one.ts","../src/dml/relations/index.ts","../src/dml/relations/many-to-many.ts","../src/dml/relations/nullable.ts","../src/event-bus/build-event-messages.ts","../src/event-bus/common-events.ts","../src/event-bus/index.ts","../src/event-bus/message-aggregator.ts","../src/event-bus/utils.ts","../src/event-bus/__tests__/abstract-event-bus-module.spec.ts","../src/event-bus/__tests__/build-event-names-from-entity-name.spec.ts","../src/event-bus/__tests__/message-aggregator.spec.ts","../src/exceptions/index.ts","../src/exceptions/is-duplicate-error.ts","../src/exceptions/postgres-error.ts","../src/feature-flags/discover-and-register-feature-flags.ts","../src/feature-flags/discover-feature-flags.ts","../src/feature-flags/flag-router.ts","../src/feature-flags/index.ts","../src/feature-flags/register-flag.ts","../src/file/abstract-file-provider.ts","../src/file/index.ts","../src/graphql/clean-graphql.ts","../src/graphql/extract-relations-from-graphql.ts","../src/graphql/get-fields-and-relations.ts","../src/graphql/graphql-parser.ts","../src/graphql/graphql-to-fields.ts","../src/graphql/graphql-to-ts-types.ts","../src/graphql/index.ts","../src/graphql/__tests__/clean-graphql-schema.spec.ts","../src/graphql/__tests__/gql-schema-to-types.spec.ts","../src/graphql/__tests__/graphql-ast.ts","../src/graphql/__tests__/utils/gql-get-fields-and-relations.spec.ts","../src/graphql/__tests__/utils/graphql-schema-to-fields.ts","../src/link/compose-link-name.ts","../src/link/index.ts","../src/link/links.ts","../src/math/big-number.ts","../src/math/index.ts","../src/migrations/index.ts","../src/migrations/integration-tests/__tests__/migrations-generate.spec.ts","../src/migrations/integration-tests/__tests__/migrations-revert.spec.ts","../src/migrations/integration-tests/__tests__/migrations-run.spec.ts","../src/modules-sdk/abstract-module-provider.ts","../src/modules-sdk/acmekit-internal-service.ts","../src/modules-sdk/acmekit-service.ts","../src/modules-sdk/build-query.ts","../src/modules-sdk/create-acmekit-mikro-orm-event-subscriber.ts","../src/modules-sdk/create-pg-connection.ts","../src/modules-sdk/define-link.ts","../src/modules-sdk/define-policies.ts","../src/modules-sdk/definition.ts","../src/modules-sdk/event-builder-factory.ts","../src/modules-sdk/index.ts","../src/modules-sdk/joiner-config-builder.ts","../src/modules-sdk/load-module-database-config.ts","../src/modules-sdk/mikro-orm-cli-config-builder.ts","../src/modules-sdk/module-provider-registration-key.ts","../src/modules-sdk/module-provider.ts","../src/modules-sdk/module.ts","../src/modules-sdk/modules-to-container-types.ts","../src/modules-sdk/policy-to-types.ts","../src/modules-sdk/provider-registry.ts","../src/modules-sdk/provider-service.ts","../src/modules-sdk/query-context.ts","../src/modules-sdk/__fixtures__/joiner-config/entities.ts","../src/modules-sdk/__tests__/acmekit-internal-service.ts","../src/modules-sdk/__tests__/acmekit-service-typings.spec.ts","../src/modules-sdk/__tests__/acmekit-service.spec.ts","../src/modules-sdk/__tests__/build-query.spec.ts","../src/modules-sdk/__tests__/joiner-config-builder.spec.ts","../src/modules-sdk/__tests__/load-database-config.spec.ts","../src/modules-sdk/__tests__/mikro-orm-cli-config-builder.spec.ts","../src/modules-sdk/__tests__/modules-to-container-types.spec.ts","../src/modules-sdk/__tests__/provider-registry.spec.ts","../src/modules-sdk/__tests__/provider-service.spec.ts","../src/modules-sdk/decorators/context-parameter.ts","../src/modules-sdk/decorators/emit-events.ts","../src/modules-sdk/decorators/index.ts","../src/modules-sdk/decorators/inject-into-context.ts","../src/modules-sdk/decorators/inject-manager.ts","../src/modules-sdk/decorators/inject-shared-context.ts","../src/modules-sdk/decorators/inject-transaction-manager.ts","../src/modules-sdk/decorators/module.ts","../src/modules-sdk/decorators/__tests__/emit-events.ts","../src/modules-sdk/loaders/container-loader-factory.ts","../src/modules-sdk/loaders/load-models.ts","../src/modules-sdk/loaders/mikro-orm-connection-loader-factory.ts","../src/modules-sdk/loaders/mikro-orm-connection-loader.ts","../src/modules-sdk/migration-scripts/index.ts","../src/modules-sdk/migration-scripts/migration-down.ts","../src/modules-sdk/migration-scripts/migration-generate.ts","../src/modules-sdk/migration-scripts/migration-up.ts","../src/modules-sdk/migration-scripts/seed.ts","../src/modules-sdk/types/acmekit-service.ts","../src/modules-sdk/types/links-config.ts","../src/notification/abstract-notification-provider.ts","../src/notification/common.ts","../src/notification/events.ts","../src/notification/index.ts","../src/orchestration/index.ts","../src/orchestration/symbol.ts","../src/orchestration/types.ts","../src/pg/index.ts","../src/pg/integration-tests/__tests__/pg_utils.spec.ts","../src/policies/discover-policies.ts","../src/policies/index.ts","../src/routes/index.ts","../src/routes/routes-to-types.ts","../src/routes/__fixtures__/admin/api-keys/route.ts","../src/routes/__fixtures__/admin/api-keys/validators.ts","../src/routes/__fixtures__/admin/custom/route.ts","../src/routes/__fixtures__/admin/locales/route.d.ts","../src/routes/__fixtures__/admin/users/route.ts","../src/routes/__fixtures__/admin/users/[id]/route.ts","../src/routes/__tests__/routes-to-types.spec.ts","../src/search/abstract-service.ts","../src/search/index-types.ts","../src/search/index.ts","../src/search/search-relations.ts","../src/search/variant-keys.ts","../src/translations/apply-translations.ts","../src/translations/index.ts","../src/translations/__tests__/apply-translations.spec.ts","../src/user/events.ts","../src/user/index.ts"],"version":"5.9.3"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@acmekit/utils",
3
- "version": "2.13.38",
3
+ "version": "2.13.39",
4
4
  "description": "AcmeKit utilities functions shared by AcmeKit core and Modules",
5
5
  "main": "dist/index.js",
6
6
  "exports": {
@@ -26,12 +26,12 @@
26
26
  "author": "AcmeKit",
27
27
  "license": "MIT",
28
28
  "devDependencies": {
29
- "@acmekit/types": "2.13.38",
29
+ "@acmekit/types": "2.13.39",
30
30
  "express": "^4.21.0",
31
31
  "typescript": ">=5.0.0"
32
32
  },
33
33
  "dependencies": {
34
- "@acmekit/deps": "2.13.38",
34
+ "@acmekit/deps": "2.13.39",
35
35
  "@graphql-codegen/core": "^4.0.2",
36
36
  "@graphql-codegen/typescript": "^4.0.9",
37
37
  "@graphql-tools/merge": "^9.0.7",