@acmekit/utils 2.13.37 → 2.13.38

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.
@@ -14,5 +14,6 @@ export declare const ContainerRegistrationKeys: {
14
14
  */
15
15
  readonly LINK: "link";
16
16
  readonly FEATURE_FLAG_ROUTER: "featureFlagRouter";
17
+ readonly PLUGIN_OPTIONS: "plugin_options";
17
18
  };
18
19
  //# sourceMappingURL=container.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"container.d.ts","sourceRoot":"","sources":["../../src/common/container.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,yBAAyB;;;;;;;IAOpC;;OAEG;;IAEH;;OAEG;;;CAGK,CAAA"}
1
+ {"version":3,"file":"container.d.ts","sourceRoot":"","sources":["../../src/common/container.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,yBAAyB;;;;;;;IAOpC;;OAEG;;IAEH;;OAEG;;;;CAIK,CAAA"}
@@ -17,5 +17,6 @@ exports.ContainerRegistrationKeys = {
17
17
  */
18
18
  LINK: "link",
19
19
  FEATURE_FLAG_ROUTER: "featureFlagRouter",
20
+ PLUGIN_OPTIONS: "plugin_options",
20
21
  };
21
22
  //# sourceMappingURL=container.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"container.js","sourceRoot":"","sources":["../../src/common/container.ts"],"names":[],"mappings":";;;AAAa,QAAA,yBAAyB,GAAG;IACvC,aAAa,EAAE,mBAAmB;IAClC,OAAO,EAAE,SAAS;IAClB,aAAa,EAAE,cAAc;IAC7B,MAAM,EAAE,QAAQ;IAChB,YAAY,EAAE,aAAa;IAC3B,KAAK,EAAE,OAAO;IACd;;OAEG;IACH,WAAW,EAAE,YAAY;IACzB;;OAEG;IACH,IAAI,EAAE,MAAM;IACZ,mBAAmB,EAAE,mBAAmB;CAChC,CAAA"}
1
+ {"version":3,"file":"container.js","sourceRoot":"","sources":["../../src/common/container.ts"],"names":[],"mappings":";;;AAAa,QAAA,yBAAyB,GAAG;IACvC,aAAa,EAAE,mBAAmB;IAClC,OAAO,EAAE,SAAS;IAClB,aAAa,EAAE,cAAc;IAC7B,MAAM,EAAE,QAAQ;IAChB,YAAY,EAAE,aAAa;IAC3B,KAAK,EAAE,OAAO;IACd;;OAEG;IACH,WAAW,EAAE,YAAY;IACzB;;OAEG;IACH,IAAI,EAAE,MAAM;IACZ,mBAAmB,EAAE,mBAAmB;IACxC,cAAc,EAAE,gBAAgB;CACxB,CAAA"}
@@ -0,0 +1,114 @@
1
+ import type { ZodType } from "zod";
2
+ /**
3
+ * Represents the manifest for an AcmeKit plugin.
4
+ * Defines metadata, dependencies, options validation,
5
+ * and lifecycle hooks.
6
+ */
7
+ export interface PluginManifest {
8
+ /**
9
+ * Unique name of the plugin. Should match the package name
10
+ * in package.json.
11
+ */
12
+ name: string;
13
+ /**
14
+ * Human-readable description of what the plugin does.
15
+ */
16
+ description?: string;
17
+ /**
18
+ * Plugin version (semver). If not provided, the version
19
+ * from package.json is used.
20
+ */
21
+ version?: string;
22
+ /**
23
+ * Plugin dependencies — other plugins that must be loaded
24
+ * before this one. Each entry is a plugin package name.
25
+ *
26
+ * @example
27
+ * dependencies: ["@acmekit/some-plugin", "@myorg/other-plugin"]
28
+ */
29
+ dependencies?: string[];
30
+ /**
31
+ * Zod schema for validating plugin options at startup.
32
+ * When provided, options passed via acmekit-config.ts are
33
+ * validated during plugin resolution — invalid options
34
+ * throw immediately with a descriptive error.
35
+ */
36
+ optionsSchema?: ZodType<any>;
37
+ /**
38
+ * Lifecycle hook called after all modules are loaded and
39
+ * the application has started. Use this for initialization
40
+ * logic like seeding data, connecting to external services,
41
+ * or registering custom container entries.
42
+ */
43
+ onPluginStart?: (container: any) => Promise<void>;
44
+ /**
45
+ * Lifecycle hook called during graceful shutdown. Plugins
46
+ * are shut down in reverse dependency order. Use this for
47
+ * cleanup logic like closing connections or flushing buffers.
48
+ *
49
+ * Errors thrown in this hook are logged but don't prevent
50
+ * other plugins from shutting down.
51
+ */
52
+ onPluginShutdown?: (container: any) => Promise<void>;
53
+ }
54
+ /**
55
+ * The resolved plugin manifest returned by `definePlugin()`.
56
+ * Includes the original manifest fields plus a `resolveOptions`
57
+ * method bound to the plugin's name.
58
+ */
59
+ export type ResolvedPluginManifest = PluginManifest & {
60
+ /**
61
+ * Resolve this plugin's options from the container.
62
+ * Works in any context that has access to the container:
63
+ * API routes, subscribers, jobs, workflows, modules.
64
+ *
65
+ * @example
66
+ * ```ts
67
+ * import plugin from "../plugin"
68
+ *
69
+ * export default async function handler({ container }) {
70
+ * const options = plugin.resolveOptions(container)
71
+ * }
72
+ * ```
73
+ */
74
+ resolveOptions: <T extends Record<string, unknown> = Record<string, unknown>>(container: any) => T;
75
+ };
76
+ /**
77
+ * Resolve a plugin's options from the container by plugin name.
78
+ * Works in any context that has access to the container.
79
+ *
80
+ * @example
81
+ * ```ts
82
+ * import { resolvePluginOptions } from "@acmekit/framework/utils"
83
+ *
84
+ * const options = resolvePluginOptions(container, "@myorg/analytics")
85
+ * ```
86
+ */
87
+ export declare function resolvePluginOptions<T extends Record<string, unknown> = Record<string, unknown>>(container: any, pluginName: string): T;
88
+ /**
89
+ * Defines a plugin manifest. Provides type checking, a known
90
+ * export shape for the plugin resolver, and a bound
91
+ * `resolveOptions(container)` method.
92
+ *
93
+ * Create a `src/plugin.ts` file in your plugin project and
94
+ * export the result as the default export.
95
+ *
96
+ * @example
97
+ * ```ts
98
+ * import { definePlugin } from "@acmekit/framework/utils"
99
+ * import { z } from "zod"
100
+ *
101
+ * export default definePlugin({
102
+ * name: "@myorg/reviews-plugin",
103
+ * dependencies: ["@acmekit/product-plugin"],
104
+ * optionsSchema: z.object({
105
+ * apiKey: z.string().min(1),
106
+ * }),
107
+ * onPluginStart: async (container) => {
108
+ * const options = plugin.resolveOptions(container)
109
+ * },
110
+ * })
111
+ * ```
112
+ */
113
+ export declare function definePlugin(manifest: PluginManifest): ResolvedPluginManifest;
114
+ //# sourceMappingURL=define-plugin.d.ts.map
@@ -0,0 +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"}
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.resolvePluginOptions = resolvePluginOptions;
4
+ exports.definePlugin = definePlugin;
5
+ const container_1 = require("./container");
6
+ /**
7
+ * Resolve a plugin's options from the container by plugin name.
8
+ * Works in any context that has access to the container.
9
+ *
10
+ * @example
11
+ * ```ts
12
+ * import { resolvePluginOptions } from "@acmekit/framework/utils"
13
+ *
14
+ * const options = resolvePluginOptions(container, "@myorg/analytics")
15
+ * ```
16
+ */
17
+ function resolvePluginOptions(container, pluginName) {
18
+ return container.resolve(`${container_1.ContainerRegistrationKeys.PLUGIN_OPTIONS}_${pluginName}`);
19
+ }
20
+ /**
21
+ * Defines a plugin manifest. Provides type checking, a known
22
+ * export shape for the plugin resolver, and a bound
23
+ * `resolveOptions(container)` method.
24
+ *
25
+ * Create a `src/plugin.ts` file in your plugin project and
26
+ * export the result as the default export.
27
+ *
28
+ * @example
29
+ * ```ts
30
+ * import { definePlugin } from "@acmekit/framework/utils"
31
+ * import { z } from "zod"
32
+ *
33
+ * export default definePlugin({
34
+ * name: "@myorg/reviews-plugin",
35
+ * dependencies: ["@acmekit/product-plugin"],
36
+ * optionsSchema: z.object({
37
+ * apiKey: z.string().min(1),
38
+ * }),
39
+ * onPluginStart: async (container) => {
40
+ * const options = plugin.resolveOptions(container)
41
+ * },
42
+ * })
43
+ * ```
44
+ */
45
+ function definePlugin(manifest) {
46
+ return {
47
+ ...manifest,
48
+ resolveOptions(container) {
49
+ return resolvePluginOptions(container, manifest.name);
50
+ },
51
+ };
52
+ }
53
+ //# sourceMappingURL=define-plugin.js.map
@@ -0,0 +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 +1 @@
1
- {"version":3,"file":"get-resolved-plugins.d.ts","sourceRoot":"","sources":["../../src/common/get-resolved-plugins.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAU5D,eAAO,MAAM,oBAAoB,mBAAmB,CAAA;AAoHpD,wBAAsB,kBAAkB,CACtC,aAAa,EAAE,MAAM,EACrB,YAAY,EAAE,YAAY,EAC1B,gBAAgB,UAAQ,GACvB,OAAO,CAAC,aAAa,EAAE,CAAC,CA0B1B"}
1
+ {"version":3,"file":"get-resolved-plugins.d.ts","sourceRoot":"","sources":["../../src/common/get-resolved-plugins.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAY5D,eAAO,MAAM,oBAAoB,mBAAmB,CAAA;AAuJpD,wBAAsB,kBAAkB,CACtC,aAAa,EAAE,MAAM,EACrB,YAAY,EAAE,YAAY,EAC1B,gBAAgB,UAAQ,GACvB,OAAO,CAAC,aAAa,EAAE,CAAC,CA0C1B"}
@@ -8,6 +8,7 @@ exports.getResolvedPlugins = getResolvedPlugins;
8
8
  const promises_1 = __importDefault(require("fs/promises"));
9
9
  const path_1 = __importDefault(require("path"));
10
10
  const is_string_1 = require("./is-string");
11
+ const plugin_dependency_graph_1 = require("./plugin-dependency-graph");
11
12
  const read_dir_recursive_1 = require("./read-dir-recursive");
12
13
  const ACMEKIT_APP_SOURCE_PATH = "src";
13
14
  const ACMEKIT_PLUGIN_SOURCE_PATH = ".acmekit/server/src";
@@ -54,6 +55,20 @@ async function resolvePluginOptions(pluginRootDir) {
54
55
  throw error;
55
56
  }
56
57
  }
58
+ /**
59
+ * Attempts to load a plugin manifest from the plugin's built
60
+ * output directory. Returns undefined if no manifest exists.
61
+ */
62
+ async function loadPluginManifest(pluginRootDir) {
63
+ try {
64
+ const manifestPath = require.resolve(path_1.default.join(pluginRootDir, ACMEKIT_PLUGIN_SOURCE_PATH, "plugin"));
65
+ const mod = require(manifestPath);
66
+ return mod.default || mod;
67
+ }
68
+ catch {
69
+ return undefined;
70
+ }
71
+ }
57
72
  /**
58
73
  * Finds the correct path for the plugin. If it is a local plugin it will be
59
74
  * found in the plugins folder. Otherwise we will look for the plugin in the
@@ -72,6 +87,15 @@ async function resolvePlugin(rootDirectory, pluginPath, options) {
72
87
  ignoreMissing: true,
73
88
  });
74
89
  const pluginOptions = options ?? {};
90
+ // Load plugin manifest if it exists
91
+ const manifest = await loadPluginManifest(resolvedPath);
92
+ // Validate options against manifest schema if provided
93
+ if (manifest?.optionsSchema && Object.keys(pluginOptions).length > 0) {
94
+ const result = manifest.optionsSchema.safeParse(pluginOptions);
95
+ if (!result.success) {
96
+ throw new Error(`Invalid options for plugin "${name}": ${result.error.message}`);
97
+ }
98
+ }
75
99
  const hasAdmin = !!pkgJSON.contents.exports?.["./admin"] || !!pluginStaticOptions.srcDir;
76
100
  const pluginAdminSrcDir = path_1.default.join(resolvedPath, "src", "admin");
77
101
  const hasLocalAdminSrc = hasAdmin &&
@@ -99,6 +123,10 @@ async function resolvePlugin(rootDirectory, pluginPath, options) {
99
123
  options: pluginOptions,
100
124
  };
101
125
  }),
126
+ dependencies: manifest?.dependencies,
127
+ manifest: manifest,
128
+ onPluginStart: manifest?.onPluginStart,
129
+ onPluginShutdown: manifest?.onPluginShutdown,
102
130
  };
103
131
  }
104
132
  async function getResolvedPlugins(rootDirectory, configModule, isAcmeKitProject = false) {
@@ -108,6 +136,21 @@ async function getResolvedPlugins(rootDirectory, configModule, isAcmeKitProject
108
136
  }
109
137
  return resolvePlugin(rootDirectory, plugin.resolve, plugin.options);
110
138
  }));
139
+ // Sort plugins by dependency order if any plugin declares dependencies
140
+ const hasDeps = resolved.some((p) => p.dependencies?.length);
141
+ if (hasDeps) {
142
+ const nodes = resolved.map((p) => ({
143
+ name: p.name,
144
+ dependencies: p.dependencies ?? [],
145
+ }));
146
+ const { sorted } = (0, plugin_dependency_graph_1.resolvePluginDependencies)(nodes);
147
+ const byName = new Map(resolved.map((p) => [p.name, p]));
148
+ const sortedPlugins = sorted
149
+ .map((name) => byName.get(name))
150
+ .filter(Boolean);
151
+ resolved.length = 0;
152
+ resolved.push(...sortedPlugins);
153
+ }
111
154
  if (isAcmeKitProject) {
112
155
  const extensionDirectory = path_1.default.join(rootDirectory, ACMEKIT_APP_SOURCE_PATH);
113
156
  resolved.push({
@@ -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":";;;;;;AAmKA,gDA8CC;AAhND,2DAA4B;AAC5B,gDAAuB;AAEvB,2CAAsC;AACtC,uEAAqE;AACrE,6DAA8C;AAE9C,MAAM,uBAAuB,GAAG,KAAK,CAAA;AACrC,MAAM,0BAA0B,GAAG,qBAAqB,CAAA;AACxD,MAAM,gCAAgC,GACpC,6CAA6C,CAAA;AAClC,QAAA,oBAAoB,GAAG,gBAAgB,CAAA;AAEpD,SAAS,cAAc,CAAC,IAAY;IAClC,OAAO,IAAI,CAAA;AACb,CAAC;AAED,SAAS,qBAAqB,CAAC,IAAY,EAAE,KAAa;IACxD,OAAO,IAAI,GAAG,KAAK,CAAA;AACrB,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,oBAAoB,CACjC,aAAqB,EACrB,UAAkB;IAElB,IAAI,CAAC;QACH,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,cAAI,CAAC,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC,EAAE;YACzE,KAAK,EAAE,CAAC,aAAa,CAAC;SACvB,CAAC,CAAA;QACF,MAAM,mBAAmB,GAAG,IAAI,CAAC,KAAK,CACpC,MAAM,kBAAE,CAAC,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,CACxC,CAAA;QACD,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,mBAAmB,EAAE,CAAA;IAC7D,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,CAAC,IAAI,KAAK,kBAAkB,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACjE,MAAM,IAAI,KAAK,CACb,6BAA6B,UAAU,2DAA2D,CACnG,CAAA;QACH,CAAC;QACD,MAAM,KAAK,CAAA;IACb,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,oBAAoB,CACjC,aAAqB;IAErB,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,kBAAE,CAAC,QAAQ,CAChC,cAAI,CAAC,IAAI,CAAC,aAAa,EAAE,gCAAgC,CAAC,EAC1D,OAAO,CACR,CAAA;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;IAC7B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,CAAC,IAAI,KAAK,kBAAkB,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACjE,OAAO,EAAE,CAAA;QACX,CAAC;QACD,MAAM,KAAK,CAAA;IACb,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,kBAAkB,CAC/B,aAAqB;IAErB,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,OAAO,CAAC,OAAO,CAClC,cAAI,CAAC,IAAI,CAAC,aAAa,EAAE,0BAA0B,EAAE,QAAQ,CAAC,CAC/D,CAAA;QACD,MAAM,GAAG,GAAG,OAAO,CAAC,YAAY,CAAC,CAAA;QACjC,OAAO,GAAG,CAAC,OAAO,IAAI,GAAG,CAAA;IAC3B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAA;IAClB,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,KAAK,UAAU,aAAa,CAC1B,aAAqB,EACrB,UAAkB,EAClB,OAAa;IAEb,MAAM,OAAO,GAAG,MAAM,oBAAoB,CAAC,aAAa,EAAE,UAAU,CAAC,CAAA;IACrE,MAAM,YAAY,GAAG,cAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;IAE/C,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,IAAI,UAAU,CAAA;IAEhD,MAAM,OAAO,GAAG,cAAI,CAAC,IAAI,CAAC,YAAY,EAAE,0BAA0B,CAAC,CAAA;IACnE,MAAM,mBAAmB,GAAG,MAAM,oBAAoB,CAAC,YAAY,CAAC,CAAA;IACpE,MAAM,OAAO,GAAG,MAAM,IAAA,4BAAO,EAAC,cAAI,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,EAAE;QAC3D,aAAa,EAAE,IAAI;KACpB,CAAC,CAAA;IACF,MAAM,aAAa,GAAG,OAAO,IAAI,EAAE,CAAA;IAEnC,oCAAoC;IACpC,MAAM,QAAQ,GAAG,MAAM,kBAAkB,CAAC,YAAY,CAAC,CAAA;IAEvD,uDAAuD;IACvD,IAAI,QAAQ,EAAE,aAAa,IAAI,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrE,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,SAAS,CAAC,aAAa,CAAC,CAAA;QAC9D,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CACb,+BAA+B,IAAI,MAAM,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,CAChE,CAAA;QACH,CAAC;IACH,CAAC;IAED,MAAM,QAAQ,GACZ,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,mBAAmB,CAAC,MAAM,CAAA;IACzE,MAAM,iBAAiB,GAAG,cAAI,CAAC,IAAI,CAAC,YAAY,EAAE,KAAK,EAAE,OAAO,CAAC,CAAA;IACjE,MAAM,gBAAgB,GACpB,QAAQ;QACR,CAAC,CAAC,CAAC,mBAAmB,CAAC,MAAM;YAC3B,CAAC,MAAM,kBAAE,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IAC7E,MAAM,gBAAgB,GAAG,mBAAmB,CAAC,MAAM;QACjD,CAAC,CAAC,cAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,OAAO,CAAC;QAChD,CAAC,CAAC,cAAI,CAAC,IAAI,CAAC,YAAY,EAAE,KAAK,EAAE,OAAO,CAAC,CAAA;IAE3C,MAAM,WAAW,GAAG,QAAQ;QAC1B,CAAC,CAAC;YACE,IAAI,EAAE,gBAAgB,CAAC,CAAC,CAAE,OAAiB,CAAC,CAAC,CAAE,SAAmB;YAClE,OAAO,EAAE,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,cAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC;SAC9E;QACH,CAAC,CAAC,SAAS,CAAA;IAEb,OAAO;QACL,OAAO;QACP,IAAI;QACJ,EAAE,EAAE,cAAc,CAAC,IAAI,CAAC;QACxB,OAAO,EAAE,aAAa;QACtB,OAAO,EAAE,OAAO,CAAC,QAAQ,CAAC,OAAO,IAAI,OAAO;QAC5C,KAAK,EAAE,WAAW;QAClB,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;YAC3B,OAAO;gBACL,OAAO,EAAE,GAAG,UAAU,IAAI,0BAA0B,YAAY,GAAG,CAAC,IAAI,EAAE;gBAC1E,OAAO,EAAE,aAAa;aACvB,CAAA;QACH,CAAC,CAAC;QACF,YAAY,EAAE,QAAQ,EAAE,YAAY;QACpC,QAAQ,EAAE,QAA+C;QACzD,aAAa,EAAE,QAAQ,EAAE,aAAa;QACtC,gBAAgB,EAAE,QAAQ,EAAE,gBAAgB;KAC7C,CAAA;AACH,CAAC;AAEM,KAAK,UAAU,kBAAkB,CACtC,aAAqB,EACrB,YAA0B,EAC1B,gBAAgB,GAAG,KAAK;IAExB,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAChC,CAAC,YAAY,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;QACjD,IAAI,IAAA,oBAAQ,EAAC,MAAM,CAAC,EAAE,CAAC;YACrB,OAAO,aAAa,CAAC,aAAa,EAAE,MAAM,CAAC,CAAA;QAC7C,CAAC;QACD,OAAO,aAAa,CAAC,aAAa,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,CAAA;IACrE,CAAC,CAAC,CACH,CAAA;IAED,uEAAuE;IACvE,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,EAAE,MAAM,CAAC,CAAA;IAC5D,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACjC,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,YAAY,EAAE,CAAC,CAAC,YAAY,IAAI,EAAE;SACnC,CAAC,CAAC,CAAA;QACH,MAAM,EAAE,MAAM,EAAE,GAAG,IAAA,mDAAyB,EAAC,KAAK,CAAC,CAAA;QACnD,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;QACxD,MAAM,aAAa,GAAG,MAAM;aACzB,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;aAC/B,MAAM,CAAC,OAAO,CAAoB,CAAA;QACrC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAA;QACnB,QAAQ,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,CAAA;IACjC,CAAC;IAED,IAAI,gBAAgB,EAAE,CAAC;QACrB,MAAM,kBAAkB,GAAG,cAAI,CAAC,IAAI,CAAC,aAAa,EAAE,uBAAuB,CAAC,CAAA;QAC5E,QAAQ,CAAC,IAAI,CAAC;YACZ,OAAO,EAAE,kBAAkB;YAC3B,IAAI,EAAE,4BAAoB;YAC1B,EAAE,EAAE,cAAc,CAAC,4BAAoB,CAAC;YACxC,KAAK,EAAE;gBACL,IAAI,EAAE,OAAO;gBACb,OAAO,EAAE,cAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,OAAO,CAAC;aAChD;YACD,OAAO,EAAE,YAAY;YACrB,OAAO,EAAE,qBAAqB,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC;SACpD,CAAC,CAAA;IACJ,CAAC;IAED,OAAO,QAAQ,CAAA;AACjB,CAAC"}
@@ -15,6 +15,8 @@ export * from "./deep-equal-obj";
15
15
  export * from "./deep-flat-map";
16
16
  export * from "./deep-merge";
17
17
  export * from "./define-config";
18
+ export * from "./define-plugin";
19
+ export * from "./plugin-dependency-graph";
18
20
  export * from "./define-file-config";
19
21
  export * from "./dynamic-import";
20
22
  export * from "./env-editor";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/common/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/common/index.ts"],"names":[],"mappings":"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"}
@@ -31,6 +31,8 @@ __exportStar(require("./deep-equal-obj"), exports);
31
31
  __exportStar(require("./deep-flat-map"), exports);
32
32
  __exportStar(require("./deep-merge"), exports);
33
33
  __exportStar(require("./define-config"), exports);
34
+ __exportStar(require("./define-plugin"), exports);
35
+ __exportStar(require("./plugin-dependency-graph"), exports);
34
36
  __exportStar(require("./define-file-config"), exports);
35
37
  __exportStar(require("./dynamic-import"), exports);
36
38
  __exportStar(require("./env-editor"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/common/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yDAAsC;AACtC,qDAAkC;AAClC,uDAAoC;AACpC,gDAA6B;AAC7B,0DAAuC;AACvC,wDAAqC;AACrC,kDAA+B;AAC/B,8CAA2B;AAC3B,4EAAyD;AACzD,0DAAuC;AACvC,6DAA0C;AAC1C,gDAA6B;AAC7B,8CAA2B;AAC3B,mDAAgC;AAChC,kDAA+B;AAC/B,+CAA4B;AAC5B,kDAA+B;AAC/B,uDAAoC;AACpC,mDAAgC;AAChC,+CAA4B;AAC5B,2CAAwB;AACxB,6DAA0C;AAC1C,gDAA6B;AAC7B,0DAAuC;AACvC,wDAAqC;AACrC,sEAAmD;AACnD,uDAAoC;AACpC,yDAAsC;AACtC,oDAAiC;AACjC,mDAAgC;AAChC,6DAA0C;AAC1C,qDAAkC;AAClC,yDAAsC;AACtC,gFAA6D;AAC7D,uDAAoC;AACpC,6DAA0C;AAC1C,6CAA0B;AAC1B,mEAAgD;AAChD,kDAA+B;AAC/B,+CAA4B;AAC5B,4CAAyB;AACzB,+CAA4B;AAC5B,6CAA0B;AAC1B,kDAA+B;AAC/B,8CAA2B;AAC3B,+CAA4B;AAC5B,8CAA2B;AAC3B,8CAA2B;AAC3B,6CAA0B;AAC1B,qDAAkC;AAClC,kDAA+B;AAC/B,sDAAmC;AACnC,mDAAgC;AAChC,yDAAsC;AACtC,wDAAqC;AACrC,sEAAmD;AACnD,qDAAkC;AAClC,4DAAyC;AACzC,0DAAuC;AACvC,8CAA2B;AAC3B,gEAA6C;AAC7C,uDAAoC;AACpC,iEAA8C;AAC9C,oDAAiC;AACjC,8CAA2B;AAC3B,2DAAwC;AACxC,8CAA2B;AAC3B,uDAAoC;AACpC,gDAA6B;AAC7B,uDAAoC;AACpC,oEAAiD;AACjD,kEAA+C;AAC/C,oDAAiC;AACjC,qDAAkC;AAClC,gEAA6C;AAC7C,oDAAiC;AACjC,oDAAiC;AACjC,0CAAuB;AACvB,mEAAgD;AAChD,oDAAiC;AACjC,gDAA6B;AAC7B,qEAAkD;AAClD,uDAAoC;AACpC,kDAA+B;AAC/B,8CAA2B;AAC3B,kDAA+B;AAC/B,mDAAgC;AAChC,kDAA+B;AAC/B,kDAA+B;AAC/B,+CAA4B;AAC5B,2DAAwC;AACxC,0DAAuC;AACvC,0DAAuC;AACvC,qDAAkC;AAClC,oDAAiC;AACjC,yDAAsC;AACtC,iDAA8B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/common/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yDAAsC;AACtC,qDAAkC;AAClC,uDAAoC;AACpC,gDAA6B;AAC7B,0DAAuC;AACvC,wDAAqC;AACrC,kDAA+B;AAC/B,8CAA2B;AAC3B,4EAAyD;AACzD,0DAAuC;AACvC,6DAA0C;AAC1C,gDAA6B;AAC7B,8CAA2B;AAC3B,mDAAgC;AAChC,kDAA+B;AAC/B,+CAA4B;AAC5B,kDAA+B;AAC/B,kDAA+B;AAC/B,4DAAyC;AACzC,uDAAoC;AACpC,mDAAgC;AAChC,+CAA4B;AAC5B,2CAAwB;AACxB,6DAA0C;AAC1C,gDAA6B;AAC7B,0DAAuC;AACvC,wDAAqC;AACrC,sEAAmD;AACnD,uDAAoC;AACpC,yDAAsC;AACtC,oDAAiC;AACjC,mDAAgC;AAChC,6DAA0C;AAC1C,qDAAkC;AAClC,yDAAsC;AACtC,gFAA6D;AAC7D,uDAAoC;AACpC,6DAA0C;AAC1C,6CAA0B;AAC1B,mEAAgD;AAChD,kDAA+B;AAC/B,+CAA4B;AAC5B,4CAAyB;AACzB,+CAA4B;AAC5B,6CAA0B;AAC1B,kDAA+B;AAC/B,8CAA2B;AAC3B,+CAA4B;AAC5B,8CAA2B;AAC3B,8CAA2B;AAC3B,6CAA0B;AAC1B,qDAAkC;AAClC,kDAA+B;AAC/B,sDAAmC;AACnC,mDAAgC;AAChC,yDAAsC;AACtC,wDAAqC;AACrC,sEAAmD;AACnD,qDAAkC;AAClC,4DAAyC;AACzC,0DAAuC;AACvC,8CAA2B;AAC3B,gEAA6C;AAC7C,uDAAoC;AACpC,iEAA8C;AAC9C,oDAAiC;AACjC,8CAA2B;AAC3B,2DAAwC;AACxC,8CAA2B;AAC3B,uDAAoC;AACpC,gDAA6B;AAC7B,uDAAoC;AACpC,oEAAiD;AACjD,kEAA+C;AAC/C,oDAAiC;AACjC,qDAAkC;AAClC,gEAA6C;AAC7C,oDAAiC;AACjC,oDAAiC;AACjC,0CAAuB;AACvB,mEAAgD;AAChD,oDAAiC;AACjC,gDAA6B;AAC7B,qEAAkD;AAClD,uDAAoC;AACpC,kDAA+B;AAC/B,8CAA2B;AAC3B,kDAA+B;AAC/B,mDAAgC;AAChC,kDAA+B;AAC/B,kDAA+B;AAC/B,+CAA4B;AAC5B,2DAAwC;AACxC,0DAAuC;AACvC,0DAAuC;AACvC,qDAAkC;AAClC,oDAAiC;AACjC,yDAAsC;AACtC,iDAA8B"}
@@ -1 +1 @@
1
- {"version":3,"file":"merge-plugin-modules.d.ts","sourceRoot":"","sources":["../../src/common/merge-plugin-modules.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EACb,YAAY,EAEb,MAAM,gBAAgB,CAAA;AAGvB;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,YAAY,EAAE,YAAY,EAC1B,OAAO,EAAE,aAAa,EAAE,QAqBzB"}
1
+ {"version":3,"file":"merge-plugin-modules.d.ts","sourceRoot":"","sources":["../../src/common/merge-plugin-modules.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EACb,YAAY,EAEb,MAAM,gBAAgB,CAAA;AAGvB;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,YAAY,EAAE,YAAY,EAC1B,OAAO,EAAE,aAAa,EAAE,QAuCzB"}
@@ -7,12 +7,27 @@ const define_config_1 = require("./define-config");
7
7
  * the modules defined inside the user-config file
8
8
  */
9
9
  function mergePluginModules(configModule, plugins) {
10
+ /**
11
+ * Track which plugin provides which module to detect conflicts
12
+ */
13
+ const moduleOwnership = new Map();
10
14
  /**
11
15
  * Create a flat array of all the modules exposed by the registered
12
16
  * plugins
13
17
  */
14
18
  const pluginsModules = plugins.reduce((result, plugin) => {
15
19
  if (plugin.modules) {
20
+ for (const mod of plugin.modules) {
21
+ const key = mod.resolve ?? "";
22
+ if (key && moduleOwnership.has(key)) {
23
+ console.warn(`[acmekit] Module "${key}" is provided by both ` +
24
+ `"${moduleOwnership.get(key)}" and "${plugin.name}". ` +
25
+ `The last one takes precedence.`);
26
+ }
27
+ if (key) {
28
+ moduleOwnership.set(key, plugin.name);
29
+ }
30
+ }
16
31
  result = result.concat(plugin.modules);
17
32
  }
18
33
  return result;
@@ -1 +1 @@
1
- {"version":3,"file":"merge-plugin-modules.js","sourceRoot":"","sources":["../../src/common/merge-plugin-modules.ts"],"names":[],"mappings":";;AAWA,gDAuBC;AA7BD,mDAAkD;AAElD;;;GAGG;AACH,SAAgB,kBAAkB,CAChC,YAA0B,EAC1B,OAAwB;IAExB;;;OAGG;IACH,MAAM,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE;QACvD,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;QACxC,CAAC;QACD,OAAO,MAAM,CAAA;IACf,CAAC,EAAE,EAAwB,CAAC,CAAA;IAE5B;;;OAGG;IACH,YAAY,CAAC,OAAO,GAAG;QACrB,GAAG,IAAA,gCAAgB,EAAC,cAAc,CAAC;QACnC,GAAG,YAAY,CAAC,OAAO;KACxB,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"merge-plugin-modules.js","sourceRoot":"","sources":["../../src/common/merge-plugin-modules.ts"],"names":[],"mappings":";;AAWA,gDAyCC;AA/CD,mDAAkD;AAElD;;;GAGG;AACH,SAAgB,kBAAkB,CAChC,YAA0B,EAC1B,OAAwB;IAExB;;OAEG;IACH,MAAM,eAAe,GAAG,IAAI,GAAG,EAAkB,CAAA;IAEjD;;;OAGG;IACH,MAAM,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE;QACvD,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,OAAgB,EAAE,CAAC;gBAC1C,MAAM,GAAG,GAAG,GAAG,CAAC,OAAO,IAAI,EAAE,CAAA;gBAC7B,IAAI,GAAG,IAAI,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;oBACpC,OAAO,CAAC,IAAI,CACV,qBAAqB,GAAG,wBAAwB;wBAC9C,IAAI,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,MAAM,CAAC,IAAI,KAAK;wBACtD,gCAAgC,CACnC,CAAA;gBACH,CAAC;gBACD,IAAI,GAAG,EAAE,CAAC;oBACR,eAAe,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,CAAA;gBACvC,CAAC;YACH,CAAC;YACD,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;QACxC,CAAC;QACD,OAAO,MAAM,CAAA;IACf,CAAC,EAAE,EAAwB,CAAC,CAAA;IAE5B;;;OAGG;IACH,YAAY,CAAC,OAAO,GAAG;QACrB,GAAG,IAAA,gCAAgB,EAAC,cAAc,CAAC;QACnC,GAAG,YAAY,CAAC,OAAO;KACxB,CAAA;AACH,CAAC"}
@@ -0,0 +1,18 @@
1
+ export interface PluginNode {
2
+ name: string;
3
+ dependencies: string[];
4
+ }
5
+ export interface DependencyResolutionResult {
6
+ /** Plugins sorted in dependency order (dependencies first) */
7
+ sorted: string[];
8
+ }
9
+ /**
10
+ * Resolves plugin load order using topological sort (Kahn's algorithm).
11
+ * Returns plugins in dependency-first order so that when a plugin loads,
12
+ * all its dependencies have already been loaded.
13
+ *
14
+ * @throws {AcmeKitError} If a plugin depends on a plugin that isn't installed
15
+ * @throws {AcmeKitError} If a circular dependency is detected
16
+ */
17
+ export declare function resolvePluginDependencies(plugins: PluginNode[]): DependencyResolutionResult;
18
+ //# sourceMappingURL=plugin-dependency-graph.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin-dependency-graph.d.ts","sourceRoot":"","sources":["../../src/common/plugin-dependency-graph.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAA;IACZ,YAAY,EAAE,MAAM,EAAE,CAAA;CACvB;AAED,MAAM,WAAW,0BAA0B;IACzC,8DAA8D;IAC9D,MAAM,EAAE,MAAM,EAAE,CAAA;CACjB;AAED;;;;;;;GAOG;AACH,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,UAAU,EAAE,GACpB,0BAA0B,CA8D5B"}
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.resolvePluginDependencies = resolvePluginDependencies;
4
+ const errors_1 = require("./errors");
5
+ /**
6
+ * Resolves plugin load order using topological sort (Kahn's algorithm).
7
+ * Returns plugins in dependency-first order so that when a plugin loads,
8
+ * all its dependencies have already been loaded.
9
+ *
10
+ * @throws {AcmeKitError} If a plugin depends on a plugin that isn't installed
11
+ * @throws {AcmeKitError} If a circular dependency is detected
12
+ */
13
+ function resolvePluginDependencies(plugins) {
14
+ const nameSet = new Set(plugins.map((p) => p.name));
15
+ const adjacency = new Map();
16
+ const inDegree = new Map();
17
+ // Initialize
18
+ for (const plugin of plugins) {
19
+ adjacency.set(plugin.name, new Set());
20
+ inDegree.set(plugin.name, 0);
21
+ }
22
+ // Build edges: dependency -> dependent
23
+ for (const plugin of plugins) {
24
+ const deps = plugin.dependencies ?? [];
25
+ for (const dep of deps) {
26
+ if (!nameSet.has(dep)) {
27
+ throw new errors_1.AcmeKitError(errors_1.AcmeKitError.Types.INVALID_DATA, `Plugin "${plugin.name}" depends on "${dep}" which is not installed. ` +
28
+ `Add it to your plugins array in acmekit-config.ts.`);
29
+ }
30
+ adjacency.get(dep).add(plugin.name);
31
+ inDegree.set(plugin.name, (inDegree.get(plugin.name) ?? 0) + 1);
32
+ }
33
+ }
34
+ // Kahn's algorithm — find all nodes with no incoming edges
35
+ const queue = [];
36
+ for (const [name, degree] of inDegree) {
37
+ if (degree === 0) {
38
+ queue.push(name);
39
+ }
40
+ }
41
+ const sorted = [];
42
+ while (queue.length > 0) {
43
+ const current = queue.shift();
44
+ sorted.push(current);
45
+ for (const dependent of adjacency.get(current) ?? []) {
46
+ const newDegree = inDegree.get(dependent) - 1;
47
+ inDegree.set(dependent, newDegree);
48
+ if (newDegree === 0) {
49
+ queue.push(dependent);
50
+ }
51
+ }
52
+ }
53
+ if (sorted.length !== plugins.length) {
54
+ const remaining = plugins
55
+ .filter((p) => !sorted.includes(p.name))
56
+ .map((p) => p.name);
57
+ throw new errors_1.AcmeKitError(errors_1.AcmeKitError.Types.INVALID_DATA, `Circular plugin dependency detected involving: ${remaining.join(", ")}. ` +
58
+ `Review your plugin dependencies and remove the cycle.`);
59
+ }
60
+ return { sorted };
61
+ }
62
+ //# sourceMappingURL=plugin-dependency-graph.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin-dependency-graph.js","sourceRoot":"","sources":["../../src/common/plugin-dependency-graph.ts"],"names":[],"mappings":"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"}
@@ -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/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/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__/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__/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/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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@acmekit/utils",
3
- "version": "2.13.37",
3
+ "version": "2.13.38",
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.37",
29
+ "@acmekit/types": "2.13.38",
30
30
  "express": "^4.21.0",
31
31
  "typescript": ">=5.0.0"
32
32
  },
33
33
  "dependencies": {
34
- "@acmekit/deps": "2.13.37",
34
+ "@acmekit/deps": "2.13.38",
35
35
  "@graphql-codegen/core": "^4.0.2",
36
36
  "@graphql-codegen/typescript": "^4.0.9",
37
37
  "@graphql-tools/merge": "^9.0.7",