@medusajs/modules-sdk 1.9.2 → 1.10.0-next-20230906161158

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.
@@ -4,14 +4,16 @@ export declare enum Modules {
4
4
  STOCK_LOCATION = "stockLocationService",
5
5
  INVENTORY = "inventoryService",
6
6
  CACHE = "cacheService",
7
- PRODUCT = "productService"
7
+ PRODUCT = "productService",
8
+ PRICING = "pricingService"
8
9
  }
9
10
  export declare enum ModuleRegistrationName {
10
11
  EVENT_BUS = "eventBusModuleService",
11
12
  STOCK_LOCATION = "stockLocationService",
12
13
  INVENTORY = "inventoryService",
13
14
  CACHE = "cacheService",
14
- PRODUCT = "productModuleService"
15
+ PRODUCT = "productModuleService",
16
+ PRICING = "pricingModuleService"
15
17
  }
16
18
  export declare const MODULE_PACKAGE_NAMES: {
17
19
  productService: string;
@@ -19,6 +21,7 @@ export declare const MODULE_PACKAGE_NAMES: {
19
21
  stockLocationService: string;
20
22
  inventoryService: string;
21
23
  cacheService: string;
24
+ pricingService: string;
22
25
  };
23
26
  export declare const ModulesDefinition: {
24
27
  [key: string | Modules]: ModuleDefinition;
@@ -9,7 +9,8 @@ var Modules;
9
9
  Modules["INVENTORY"] = "inventoryService";
10
10
  Modules["CACHE"] = "cacheService";
11
11
  Modules["PRODUCT"] = "productService";
12
- })(Modules = exports.Modules || (exports.Modules = {}));
12
+ Modules["PRICING"] = "pricingService";
13
+ })(Modules || (exports.Modules = Modules = {}));
13
14
  var ModuleRegistrationName;
14
15
  (function (ModuleRegistrationName) {
15
16
  ModuleRegistrationName["EVENT_BUS"] = "eventBusModuleService";
@@ -17,13 +18,15 @@ var ModuleRegistrationName;
17
18
  ModuleRegistrationName["INVENTORY"] = "inventoryService";
18
19
  ModuleRegistrationName["CACHE"] = "cacheService";
19
20
  ModuleRegistrationName["PRODUCT"] = "productModuleService";
20
- })(ModuleRegistrationName = exports.ModuleRegistrationName || (exports.ModuleRegistrationName = {}));
21
+ ModuleRegistrationName["PRICING"] = "pricingModuleService";
22
+ })(ModuleRegistrationName || (exports.ModuleRegistrationName = ModuleRegistrationName = {}));
21
23
  exports.MODULE_PACKAGE_NAMES = {
22
24
  [Modules.PRODUCT]: "@medusajs/product",
23
25
  [Modules.EVENT_BUS]: "@medusajs/event-bus-local",
24
26
  [Modules.STOCK_LOCATION]: "@medusajs/stock-location",
25
27
  [Modules.INVENTORY]: "@medusajs/inventory",
26
28
  [Modules.CACHE]: "@medusajs/cache-inmemory",
29
+ [Modules.PRICING]: "@medusajs/pricing",
27
30
  };
28
31
  exports.ModulesDefinition = {
29
32
  [Modules.EVENT_BUS]: {
@@ -93,6 +96,20 @@ exports.ModulesDefinition = {
93
96
  resources: types_1.MODULE_RESOURCE_TYPE.SHARED,
94
97
  },
95
98
  },
99
+ [Modules.PRICING]: {
100
+ key: Modules.PRICING,
101
+ registrationName: ModuleRegistrationName.PRICING,
102
+ defaultPackage: false,
103
+ label: "PricingModuleService",
104
+ isRequired: false,
105
+ canOverride: true,
106
+ isQueryable: true,
107
+ dependencies: ["logger"],
108
+ defaultModuleDeclaration: {
109
+ scope: types_1.MODULE_SCOPE.INTERNAL,
110
+ resources: types_1.MODULE_RESOURCE_TYPE.SHARED,
111
+ },
112
+ },
96
113
  };
97
114
  exports.MODULE_DEFINITIONS = Object.values(exports.ModulesDefinition);
98
115
  exports.default = exports.MODULE_DEFINITIONS;
@@ -1 +1 @@
1
- {"version":3,"file":"definitions.js","sourceRoot":"","sources":["../src/definitions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"definitions.js","sourceRoot":"","sources":["../src/definitions.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,6 +1,8 @@
1
1
  export * from "@medusajs/types/dist/modules-sdk";
2
2
  export * from "./definitions";
3
3
  export * from "./loaders";
4
+ export * from "./medusa-app";
4
5
  export * from "./medusa-module";
5
6
  export * from "./module-helper";
7
+ export * from "./remote-link";
6
8
  export * from "./remote-query";
package/dist/index.js CHANGED
@@ -17,7 +17,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("@medusajs/types/dist/modules-sdk"), exports);
18
18
  __exportStar(require("./definitions"), exports);
19
19
  __exportStar(require("./loaders"), exports);
20
+ __exportStar(require("./medusa-app"), exports);
20
21
  __exportStar(require("./medusa-module"), exports);
21
22
  __exportStar(require("./module-helper"), exports);
23
+ __exportStar(require("./remote-link"), exports);
22
24
  __exportStar(require("./remote-query"), exports);
23
25
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,mEAAgD;AAChD,gDAA6B;AAC7B,4CAAyB;AACzB,kDAA+B;AAC/B,kDAA+B;AAC/B,iDAA8B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,mEAAgD;AAChD,gDAA6B;AAC7B,4CAAyB;AACzB,+CAA4B;AAC5B,kDAA+B;AAC/B,kDAA+B;AAC/B,gDAA6B;AAC7B,iDAA8B"}
@@ -7,6 +7,27 @@ const os_1 = require("os");
7
7
  const module_helper_1 = require("../module-helper");
8
8
  const utils_1 = require("./utils");
9
9
  exports.moduleHelper = new module_helper_1.ModulesHelper();
10
+ const moduleLoader = async ({ container, moduleResolutions, logger, }) => {
11
+ for (const resolution of Object.values(moduleResolutions ?? {})) {
12
+ const registrationResult = await loadModule(container, resolution, logger);
13
+ if (registrationResult?.error) {
14
+ const { error } = registrationResult;
15
+ if (resolution.definition.isRequired) {
16
+ logger?.error(`Could not resolve required module: ${resolution.definition.label}. Error: ${error.message}${os_1.EOL}`);
17
+ throw error;
18
+ }
19
+ logger?.warn(`Could not resolve module: ${resolution.definition.label}. Error: ${error.message}${os_1.EOL}`);
20
+ }
21
+ }
22
+ exports.moduleHelper.setModules(Object.entries(moduleResolutions).reduce((acc, [k, v]) => {
23
+ if (v.resolutionPath) {
24
+ acc[k] = v;
25
+ }
26
+ return acc;
27
+ }, {}));
28
+ container.register("modulesHelper", (0, awilix_1.asValue)(exports.moduleHelper));
29
+ };
30
+ exports.moduleLoader = moduleLoader;
10
31
  async function loadModule(container, resolution, logger) {
11
32
  const modDefinition = resolution.definition;
12
33
  const registrationName = modDefinition.registrationName;
@@ -24,42 +45,15 @@ async function loadModule(container, resolution, logger) {
24
45
  if (scope === types_1.MODULE_SCOPE.INTERNAL && !resources) {
25
46
  message = `The module ${resolution.definition.label} is missing its resources config`;
26
47
  }
27
- container.register({
28
- [registrationName]: (0, awilix_1.asValue)(undefined),
29
- });
48
+ container.register(registrationName, (0, awilix_1.asValue)(undefined));
30
49
  return {
31
50
  error: new Error(message),
32
51
  };
33
52
  }
34
53
  if (resolution.resolutionPath === false) {
35
- container.register({
36
- [registrationName]: (0, awilix_1.asValue)(undefined),
37
- });
54
+ container.register(registrationName, (0, awilix_1.asValue)(undefined));
38
55
  return;
39
56
  }
40
57
  return await (0, utils_1.loadInternalModule)(container, resolution, logger);
41
58
  }
42
- const moduleLoader = async ({ container, moduleResolutions, logger, }) => {
43
- for (const resolution of Object.values(moduleResolutions ?? {})) {
44
- const registrationResult = await loadModule(container, resolution, logger);
45
- if (registrationResult?.error) {
46
- const { error } = registrationResult;
47
- if (resolution.definition.isRequired) {
48
- logger?.error(`Could not resolve required module: ${resolution.definition.label}. Error: ${error.message}${os_1.EOL}`);
49
- throw error;
50
- }
51
- logger?.warn(`Could not resolve module: ${resolution.definition.label}. Error: ${error.message}${os_1.EOL}`);
52
- }
53
- }
54
- exports.moduleHelper.setModules(Object.entries(moduleResolutions).reduce((acc, [k, v]) => {
55
- if (v.resolutionPath) {
56
- acc[k] = v;
57
- }
58
- return acc;
59
- }, {}));
60
- container.register({
61
- modulesHelper: (0, awilix_1.asValue)(exports.moduleHelper),
62
- });
63
- };
64
- exports.moduleLoader = moduleLoader;
65
59
  //# sourceMappingURL=module-loader.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"module-loader.js","sourceRoot":"","sources":["../../src/loaders/module-loader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"module-loader.js","sourceRoot":"","sources":["../../src/loaders/module-loader.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
- import { ExternalModuleDeclaration, InternalModuleDeclaration, ModuleExports, ModuleResolution } from "@medusajs/types";
1
+ import { ExternalModuleDeclaration, InternalModuleDeclaration, ModuleDefinition, ModuleExports, ModuleResolution } from "@medusajs/types";
2
2
  export declare const registerModules: (modules?: Record<string, false | string | Partial<InternalModuleDeclaration | ExternalModuleDeclaration>>) => Record<string, ModuleResolution>;
3
- export declare const registerMedusaModule: (moduleKey: string, moduleDeclaration: InternalModuleDeclaration | ExternalModuleDeclaration, moduleExports?: ModuleExports) => Record<string, ModuleResolution>;
3
+ export declare const registerMedusaModule: (moduleKey: string, moduleDeclaration: Partial<InternalModuleDeclaration | ExternalModuleDeclaration> | string | false, moduleExports?: ModuleExports, definition?: ModuleDefinition) => Record<string, ModuleResolution>;
4
+ export declare const registerMedusaLinkModule: (definition: ModuleDefinition, moduleDeclaration: Partial<InternalModuleDeclaration>, moduleExports?: ModuleExports) => Record<string, ModuleResolution>;
@@ -3,15 +3,15 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.registerMedusaModule = exports.registerModules = void 0;
6
+ exports.registerMedusaLinkModule = exports.registerMedusaModule = exports.registerModules = void 0;
7
7
  const types_1 = require("@medusajs/types");
8
8
  const utils_1 = require("@medusajs/utils");
9
9
  const resolve_cwd_1 = __importDefault(require("resolve-cwd"));
10
- const definitions_1 = __importDefault(require("../definitions"));
10
+ const definitions_1 = require("../definitions");
11
11
  const registerModules = (modules) => {
12
12
  const moduleResolutions = {};
13
13
  const projectModules = modules ?? {};
14
- for (const definition of definitions_1.default) {
14
+ for (const definition of definitions_1.MODULE_DEFINITIONS) {
15
15
  const customConfig = projectModules[definition.key];
16
16
  const canSkip = !customConfig && !definition.isRequired && !definition.defaultPackage;
17
17
  const isObj = (0, utils_1.isObject)(customConfig);
@@ -26,21 +26,27 @@ const registerModules = (modules) => {
26
26
  return moduleResolutions;
27
27
  };
28
28
  exports.registerModules = registerModules;
29
- const registerMedusaModule = (moduleKey, moduleDeclaration, moduleExports) => {
29
+ const registerMedusaModule = (moduleKey, moduleDeclaration, moduleExports, definition) => {
30
30
  const moduleResolutions = {};
31
- for (const definition of definitions_1.default) {
32
- if (definition.key !== moduleKey) {
33
- continue;
34
- }
35
- if (moduleDeclaration.scope === types_1.MODULE_SCOPE.EXTERNAL) {
36
- // TODO: getExternalModuleResolution(...)
37
- throw new Error("External Modules are not supported yet.");
38
- }
39
- moduleResolutions[definition.key] = getInternalModuleResolution(definition, moduleDeclaration, moduleExports);
31
+ const modDefinition = definition ?? definitions_1.ModulesDefinition[moduleKey];
32
+ if (modDefinition === undefined) {
33
+ throw new Error(`Module: ${moduleKey} is not defined.`);
34
+ }
35
+ if ((0, utils_1.isObject)(moduleDeclaration) &&
36
+ moduleDeclaration?.scope === types_1.MODULE_SCOPE.EXTERNAL) {
37
+ // TODO: getExternalModuleResolution(...)
38
+ throw new Error("External Modules are not supported yet.");
40
39
  }
40
+ moduleResolutions[moduleKey] = getInternalModuleResolution(modDefinition, moduleDeclaration, moduleExports);
41
41
  return moduleResolutions;
42
42
  };
43
43
  exports.registerMedusaModule = registerMedusaModule;
44
+ const registerMedusaLinkModule = (definition, moduleDeclaration, moduleExports) => {
45
+ const moduleResolutions = {};
46
+ moduleResolutions[definition.key] = getInternalModuleResolution(definition, moduleDeclaration, moduleExports);
47
+ return moduleResolutions;
48
+ };
49
+ exports.registerMedusaLinkModule = registerMedusaLinkModule;
44
50
  function getInternalModuleResolution(definition, moduleConfig, moduleExports) {
45
51
  if (typeof moduleConfig === "boolean") {
46
52
  if (!moduleConfig && definition.isRequired) {
@@ -75,7 +81,7 @@ function getInternalModuleResolution(definition, moduleConfig, moduleExports) {
75
81
  ...new Set((definition.dependencies || []).concat(additionalDependencies)),
76
82
  ],
77
83
  moduleDeclaration: {
78
- ...definition.defaultModuleDeclaration,
84
+ ...(definition.defaultModuleDeclaration ?? {}),
79
85
  ...moduleDeclaration,
80
86
  },
81
87
  moduleExports,
@@ -1 +1 @@
1
- {"version":3,"file":"register-modules.js","sourceRoot":"","sources":["../../src/loaders/register-modules.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"register-modules.js","sourceRoot":"","sources":["../../src/loaders/register-modules.ts"],"names":[],"mappings":"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"}
@@ -22,7 +22,6 @@ var __importStar = (this && this.__importStar) || function (mod) {
22
22
  __setModuleDefault(result, mod);
23
23
  return result;
24
24
  };
25
- var _a, _b;
26
25
  Object.defineProperty(exports, "__esModule", { value: true });
27
26
  exports.loadModuleMigrations = exports.loadInternalModule = void 0;
28
27
  const types_1 = require("@medusajs/types");
@@ -37,9 +36,14 @@ async function loadInternalModule(container, resolution, logger) {
37
36
  // the exports. This is useful when a package export an initialize function which will bootstrap itself and therefore
38
37
  // does not need to import the package that is currently being loaded as it would create a
39
38
  // circular reference.
40
- loadedModule =
41
- resolution.moduleExports ??
42
- (await (_a = resolution.resolutionPath, Promise.resolve().then(() => __importStar(require(_a))))).default;
39
+ const path = resolution.resolutionPath;
40
+ if (resolution.moduleExports) {
41
+ loadedModule = resolution.moduleExports;
42
+ }
43
+ else {
44
+ loadedModule = await Promise.resolve(`${path}`).then(s => __importStar(require(s)));
45
+ loadedModule = loadedModule.default;
46
+ }
43
47
  }
44
48
  catch (error) {
45
49
  if (resolution.definition.isRequired &&
@@ -106,7 +110,7 @@ exports.loadInternalModule = loadInternalModule;
106
110
  async function loadModuleMigrations(resolution) {
107
111
  let loadedModule;
108
112
  try {
109
- loadedModule = (await (_b = resolution.resolutionPath, Promise.resolve().then(() => __importStar(require(_b))))).default;
113
+ loadedModule = (await Promise.resolve(`${resolution.resolutionPath}`).then(s => __importStar(require(s)))).default;
110
114
  return [loadedModule.runMigrations, loadedModule.revertMigration];
111
115
  }
112
116
  catch {
@@ -1 +1 @@
1
- {"version":3,"file":"load-internal.js","sourceRoot":"","sources":["../../../src/loaders/utils/load-internal.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"load-internal.js","sourceRoot":"","sources":["../../../src/loaders/utils/load-internal.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ import { RemoteFetchDataCallback } from "@medusajs/orchestration";
2
+ import { LoadedModule, ModuleConfig, ModuleJoinerConfig, ModuleServiceInitializeOptions, RemoteJoinerQuery } from "@medusajs/types";
3
+ import { Modules } from "./definitions";
4
+ import { RemoteLink } from "./remote-link";
5
+ export type MedusaModuleConfig = (Partial<ModuleConfig> | Modules)[];
6
+ export type SharedResources = {
7
+ database?: ModuleServiceInitializeOptions["database"] & {
8
+ pool?: {
9
+ name?: string;
10
+ afterCreate?: Function;
11
+ min?: number;
12
+ max?: number;
13
+ refreshIdle?: boolean;
14
+ idleTimeoutMillis?: number;
15
+ reapIntervalMillis?: number;
16
+ returnToHead?: boolean;
17
+ priorityRange?: number;
18
+ log?: (message: string, logLevel: string) => void;
19
+ };
20
+ };
21
+ };
22
+ export declare function MedusaApp({ sharedResourcesConfig, servicesConfig, modulesConfigPath, modulesConfigFileName, modulesConfig, linkModules, remoteFetchData, injectedDependencies, }?: {
23
+ sharedResourcesConfig?: SharedResources;
24
+ loadedModules?: LoadedModule[];
25
+ servicesConfig?: ModuleJoinerConfig[];
26
+ modulesConfigPath?: string;
27
+ modulesConfigFileName?: string;
28
+ modulesConfig?: MedusaModuleConfig;
29
+ linkModules?: ModuleJoinerConfig | ModuleJoinerConfig[];
30
+ remoteFetchData?: RemoteFetchDataCallback;
31
+ injectedDependencies?: any;
32
+ }): Promise<{
33
+ modules: Record<string, LoadedModule | LoadedModule[]>;
34
+ link: RemoteLink | undefined;
35
+ query: (query: string | RemoteJoinerQuery, variables?: Record<string, unknown>) => Promise<any>;
36
+ }>;
@@ -0,0 +1,120 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.MedusaApp = void 0;
27
+ const types_1 = require("@medusajs/types");
28
+ const utils_1 = require("@medusajs/utils");
29
+ const definitions_1 = require("./definitions");
30
+ const medusa_module_1 = require("./medusa-module");
31
+ const remote_link_1 = require("./remote-link");
32
+ const remote_query_1 = require("./remote-query");
33
+ async function MedusaApp({ sharedResourcesConfig, servicesConfig, modulesConfigPath, modulesConfigFileName, modulesConfig, linkModules, remoteFetchData, injectedDependencies, } = {
34
+ injectedDependencies: {},
35
+ }) {
36
+ const modules = modulesConfig ??
37
+ (await Promise.resolve(`${modulesConfigPath ??
38
+ process.cwd() + (modulesConfigFileName ?? "/modules-config")}`).then(s => __importStar(require(s)))).default;
39
+ const dbData = utils_1.ModulesSdkUtils.loadDatabaseConfig("medusa", sharedResourcesConfig, true);
40
+ const { pool } = sharedResourcesConfig?.database ?? {};
41
+ if (dbData?.clientUrl) {
42
+ const { knex } = await Promise.resolve().then(() => __importStar(require("knex")));
43
+ const dbConnection = knex({
44
+ client: "pg",
45
+ searchPath: dbData.schema || "public",
46
+ connection: {
47
+ connectionString: dbData.clientUrl,
48
+ ssl: (dbData.driverOptions?.connection).ssl ?? false,
49
+ },
50
+ pool: {
51
+ // https://knexjs.org/guide/#pool
52
+ ...(pool ?? {}),
53
+ min: pool?.min ?? 0,
54
+ },
55
+ });
56
+ injectedDependencies[utils_1.ContainerRegistrationKeys.PG_CONNECTION] = dbConnection;
57
+ }
58
+ const allModules = {};
59
+ await Promise.all(modules.map(async (mod) => {
60
+ let key = mod;
61
+ let path;
62
+ let declaration = {};
63
+ if ((0, utils_1.isObject)(mod)) {
64
+ if (!mod.module) {
65
+ throw new Error(`Module ${JSON.stringify(mod)} is missing module name.`);
66
+ }
67
+ key = mod.module;
68
+ path = mod.path ?? definitions_1.MODULE_PACKAGE_NAMES[key];
69
+ declaration = { ...mod };
70
+ delete declaration.definition;
71
+ }
72
+ else {
73
+ path = definitions_1.MODULE_PACKAGE_NAMES[mod];
74
+ }
75
+ if (!path) {
76
+ throw new Error(`Module ${key} is missing path.`);
77
+ }
78
+ declaration.scope ?? (declaration.scope = types_1.MODULE_SCOPE.INTERNAL);
79
+ if (declaration.scope === types_1.MODULE_SCOPE.INTERNAL &&
80
+ !declaration.resources) {
81
+ declaration.resources = types_1.MODULE_RESOURCE_TYPE.SHARED;
82
+ }
83
+ const loaded = (await medusa_module_1.MedusaModule.bootstrap(key, path, declaration, undefined, injectedDependencies, (0, utils_1.isObject)(mod) ? mod.definition : undefined));
84
+ if (allModules[key] && !Array.isArray(allModules[key])) {
85
+ allModules[key] = [];
86
+ }
87
+ if (allModules[key]) {
88
+ ;
89
+ allModules[key].push(loaded[key]);
90
+ }
91
+ else {
92
+ allModules[key] = loaded[key];
93
+ }
94
+ return loaded;
95
+ }));
96
+ let link = undefined;
97
+ let query;
98
+ try {
99
+ const { initialize: initializeLinks } = await Promise.resolve(`${"@medusajs/link-modules"}`).then(s => __importStar(require(s)));
100
+ await initializeLinks({}, linkModules, injectedDependencies);
101
+ link = new remote_link_1.RemoteLink();
102
+ }
103
+ catch (err) {
104
+ console.warn("Error initializing link modules.", err);
105
+ }
106
+ const remoteQuery = new remote_query_1.RemoteQuery({
107
+ servicesConfig,
108
+ customRemoteFetchData: remoteFetchData,
109
+ });
110
+ query = async (query, variables) => {
111
+ return await remoteQuery.query(query, variables);
112
+ };
113
+ return {
114
+ modules: allModules,
115
+ link,
116
+ query,
117
+ };
118
+ }
119
+ exports.MedusaApp = MedusaApp;
120
+ //# sourceMappingURL=medusa-app.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"medusa-app.js","sourceRoot":"","sources":["../src/medusa-app.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { ExternalModuleDeclaration, InternalModuleDeclaration, LoadedModule, ModuleExports } from "@medusajs/types";
1
+ import { ExternalModuleDeclaration, InternalModuleDeclaration, LinkModuleDefinition, LoadedModule, ModuleDefinition, ModuleExports } from "@medusajs/types";
2
2
  declare global {
3
3
  interface MedusaModule {
4
4
  getLoadedModules(aliases?: Map<string, string>): {
@@ -18,9 +18,12 @@ export declare class MedusaModule {
18
18
  static isInstalled(moduleKey: string, alias?: string): boolean;
19
19
  static getModuleInstance(moduleKey: string, alias?: string): any | undefined;
20
20
  private static registerModule;
21
- static bootstrap<T>(moduleKey: string, defaultPath: string, declaration?: InternalModuleDeclaration | ExternalModuleDeclaration, moduleExports?: ModuleExports, injectedDependencies?: Record<string, any>): Promise<{
21
+ static bootstrap<T>(moduleKey: string, defaultPath: string, declaration?: InternalModuleDeclaration | ExternalModuleDeclaration, moduleExports?: ModuleExports, injectedDependencies?: Record<string, any>, moduleDefinition?: ModuleDefinition): Promise<{
22
22
  [key: string]: T;
23
23
  }>;
24
+ static bootstrapLink(definition: LinkModuleDefinition, declaration?: InternalModuleDeclaration, moduleExports?: ModuleExports, injectedDependencies?: Record<string, any>): Promise<{
25
+ [key: string]: unknown;
26
+ }>;
24
27
  static migrateUp(moduleKey: string, modulePath: string, options?: Record<string, any>): Promise<void>;
25
28
  static migrateDown(moduleKey: string, modulePath: string, options?: Record<string, any>): Promise<void>;
26
29
  }
@@ -61,7 +61,7 @@ class MedusaModule {
61
61
  modules.push(loadedModule);
62
62
  MedusaModule.modules_.set(moduleKey, modules);
63
63
  }
64
- static async bootstrap(moduleKey, defaultPath, declaration, moduleExports, injectedDependencies) {
64
+ static async bootstrap(moduleKey, defaultPath, declaration, moduleExports, injectedDependencies, moduleDefinition) {
65
65
  const hashKey = (0, utils_1.simpleHash)((0, utils_1.stringifyCircular)({ moduleKey, defaultPath, declaration }));
66
66
  if (MedusaModule.instances_.has(hashKey)) {
67
67
  return MedusaModule.instances_.get(hashKey);
@@ -79,10 +79,10 @@ class MedusaModule {
79
79
  {};
80
80
  if (declaration?.scope !== types_1.MODULE_SCOPE.EXTERNAL) {
81
81
  modDeclaration = {
82
- scope: types_1.MODULE_SCOPE.INTERNAL,
83
- resources: types_1.MODULE_RESOURCE_TYPE.ISOLATED,
82
+ scope: declaration?.scope || types_1.MODULE_SCOPE.INTERNAL,
83
+ resources: declaration?.resources || types_1.MODULE_RESOURCE_TYPE.ISOLATED,
84
84
  resolve: defaultPath,
85
- options: declaration,
85
+ options: declaration?.options ?? declaration,
86
86
  alias: declaration?.alias,
87
87
  main: declaration?.main,
88
88
  };
@@ -93,7 +93,7 @@ class MedusaModule {
93
93
  container.register(service, (0, awilix_1.asValue)(injectedDependencies[service]));
94
94
  }
95
95
  }
96
- const moduleResolutions = (0, loaders_1.registerMedusaModule)(moduleKey, modDeclaration, moduleExports);
96
+ const moduleResolutions = (0, loaders_1.registerMedusaModule)(moduleKey, modDeclaration, moduleExports, moduleDefinition);
97
97
  try {
98
98
  await (0, loaders_1.moduleLoader)({
99
99
  container,
@@ -112,13 +112,92 @@ class MedusaModule {
112
112
  services[keyName] = container.resolve(registrationName);
113
113
  services[keyName].__definition = resolution.definition;
114
114
  if (resolution.definition.isQueryable) {
115
- services[keyName].__joinerConfig = await services[keyName].__joinerConfig();
115
+ const joinerConfig = await services[keyName].__joinerConfig();
116
+ services[keyName].__joinerConfig = joinerConfig;
116
117
  }
117
118
  MedusaModule.registerModule(keyName, {
118
119
  key: keyName,
119
120
  hash: hashKey,
120
121
  alias: modDeclaration.alias ?? hashKey,
121
122
  main: !!modDeclaration.main,
123
+ isLink: false,
124
+ });
125
+ }
126
+ MedusaModule.instances_.set(hashKey, services);
127
+ finishLoading(services);
128
+ MedusaModule.loading_.delete(hashKey);
129
+ return services;
130
+ }
131
+ static async bootstrapLink(definition, declaration, moduleExports, injectedDependencies) {
132
+ const moduleKey = definition.key;
133
+ const hashKey = (0, utils_1.simpleHash)((0, utils_1.stringifyCircular)({ moduleKey, declaration }));
134
+ if (MedusaModule.instances_.has(hashKey)) {
135
+ return MedusaModule.instances_.get(hashKey);
136
+ }
137
+ if (MedusaModule.loading_.has(hashKey)) {
138
+ return MedusaModule.loading_.get(hashKey);
139
+ }
140
+ let finishLoading;
141
+ let errorLoading;
142
+ MedusaModule.loading_.set(hashKey, new Promise((resolve, reject) => {
143
+ finishLoading = resolve;
144
+ errorLoading = reject;
145
+ }));
146
+ let modDeclaration = declaration ?? {};
147
+ const moduleDefinition = {
148
+ key: definition.key,
149
+ registrationName: definition.key,
150
+ dependencies: definition.dependencies,
151
+ defaultPackage: "",
152
+ label: definition.label,
153
+ canOverride: true,
154
+ isRequired: false,
155
+ isQueryable: true,
156
+ defaultModuleDeclaration: definition.defaultModuleDeclaration,
157
+ };
158
+ modDeclaration = {
159
+ resolve: "",
160
+ options: declaration,
161
+ alias: declaration?.alias,
162
+ main: declaration?.main,
163
+ };
164
+ const container = (0, utils_1.createMedusaContainer)();
165
+ if (injectedDependencies) {
166
+ for (const service in injectedDependencies) {
167
+ container.register(service, (0, awilix_1.asValue)(injectedDependencies[service]));
168
+ }
169
+ }
170
+ const moduleResolutions = (0, loaders_1.registerMedusaLinkModule)(moduleDefinition, modDeclaration, moduleExports);
171
+ try {
172
+ await (0, loaders_1.moduleLoader)({
173
+ container,
174
+ moduleResolutions,
175
+ logger,
176
+ });
177
+ }
178
+ catch (err) {
179
+ errorLoading(err);
180
+ throw err;
181
+ }
182
+ const services = {};
183
+ for (const resolution of Object.values(moduleResolutions)) {
184
+ const keyName = resolution.definition.key;
185
+ const registrationName = resolution.definition.registrationName;
186
+ services[keyName] = container.resolve(registrationName);
187
+ services[keyName].__definition = resolution.definition;
188
+ if (resolution.definition.isQueryable) {
189
+ const joinerConfig = await services[keyName].__joinerConfig();
190
+ services[keyName].__joinerConfig = joinerConfig;
191
+ if (!joinerConfig.isLink) {
192
+ throw new Error("MedusaModule.bootstrapLink must be used only for Link Modules");
193
+ }
194
+ }
195
+ MedusaModule.registerModule(keyName, {
196
+ key: keyName,
197
+ hash: hashKey,
198
+ alias: modDeclaration.alias ?? hashKey,
199
+ main: !!modDeclaration.main,
200
+ isLink: true,
122
201
  });
123
202
  }
124
203
  MedusaModule.instances_.set(hashKey, services);
@@ -1 +1 @@
1
- {"version":3,"file":"medusa-module.js","sourceRoot":"","sources":["../src/medusa-module.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"medusa-module.js","sourceRoot":"","sources":["../src/medusa-module.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,49 @@
1
+ import { ILinkModule, LoadedModule, ModuleJoinerRelationship } from "@medusajs/types";
2
+ export type DeleteEntityInput = {
3
+ [moduleName: string]: {
4
+ [linkableKey: string]: string | string[];
5
+ };
6
+ };
7
+ export type RestoreEntityInput = DeleteEntityInput;
8
+ type LinkDefinition = {
9
+ [moduleName: string]: {
10
+ [fieldName: string]: string;
11
+ };
12
+ } & {
13
+ data?: Record<string, unknown>;
14
+ };
15
+ type RemoteRelationship = ModuleJoinerRelationship & {
16
+ isPrimary: boolean;
17
+ isForeign: boolean;
18
+ };
19
+ type LoadedLinkModule = LoadedModule & ILinkModule;
20
+ type DeleteEntities = {
21
+ [key: string]: string[];
22
+ };
23
+ type RemovedIds = {
24
+ [serviceName: string]: DeleteEntities;
25
+ };
26
+ type RestoredIds = RemovedIds;
27
+ type CascadeError = {
28
+ serviceName: string;
29
+ method: String;
30
+ args: any;
31
+ error: Error;
32
+ };
33
+ export declare class RemoteLink {
34
+ private modulesMap;
35
+ private relationsPairs;
36
+ private relations;
37
+ constructor(modulesLoaded?: LoadedModule[]);
38
+ addModule(mod: LoadedModule): void;
39
+ private addRelationship;
40
+ getLinkModule(moduleA: string, moduleAKey: string, moduleB: string, moduleBKey: string): LoadedLinkModule | undefined;
41
+ getRelationships(): Map<string, Map<string, RemoteRelationship[]>>;
42
+ private getLinkableKeys;
43
+ private executeCascade;
44
+ create(link: LinkDefinition | LinkDefinition[]): Promise<unknown[]>;
45
+ dismiss(link: LinkDefinition | LinkDefinition[]): Promise<unknown[]>;
46
+ delete(removedServices: DeleteEntityInput): Promise<[CascadeError[] | null, RemovedIds]>;
47
+ restore(removedServices: DeleteEntityInput): Promise<[CascadeError[] | null, RestoredIds]>;
48
+ }
49
+ export {};
@@ -0,0 +1,277 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RemoteLink = void 0;
4
+ const utils_1 = require("@medusajs/utils");
5
+ const medusa_module_1 = require("./medusa-module");
6
+ class RemoteLink {
7
+ constructor(modulesLoaded) {
8
+ this.modulesMap = new Map();
9
+ this.relationsPairs = new Map();
10
+ this.relations = new Map();
11
+ if (!modulesLoaded?.length) {
12
+ modulesLoaded = medusa_module_1.MedusaModule.getLoadedModules().map((mod) => Object.values(mod)[0]);
13
+ }
14
+ for (const mod of modulesLoaded) {
15
+ this.addModule(mod);
16
+ }
17
+ }
18
+ addModule(mod) {
19
+ if (!mod.__definition.isQueryable || mod.__joinerConfig.isReadOnlyLink) {
20
+ return;
21
+ }
22
+ const joinerConfig = mod.__joinerConfig;
23
+ const serviceName = joinerConfig.isLink
24
+ ? joinerConfig.serviceName
25
+ : mod.__definition.key;
26
+ if (this.modulesMap.has(serviceName)) {
27
+ throw new Error(`Duplicated instance of module ${serviceName} is not allowed.`);
28
+ }
29
+ if (joinerConfig.relationships?.length) {
30
+ if (joinerConfig.isLink) {
31
+ const [primary, foreign] = joinerConfig.relationships;
32
+ const key = [
33
+ primary.serviceName,
34
+ primary.foreignKey,
35
+ foreign.serviceName,
36
+ foreign.foreignKey,
37
+ ].join("-");
38
+ this.relationsPairs.set(key, mod);
39
+ }
40
+ for (const relationship of joinerConfig.relationships) {
41
+ if (joinerConfig.isLink && !relationship.deleteCascade) {
42
+ continue;
43
+ }
44
+ this.addRelationship(serviceName, {
45
+ ...relationship,
46
+ isPrimary: false,
47
+ isForeign: true,
48
+ });
49
+ }
50
+ }
51
+ if (joinerConfig.extends?.length) {
52
+ for (const service of joinerConfig.extends) {
53
+ const relationship = service.relationship;
54
+ this.addRelationship(service.serviceName, {
55
+ ...relationship,
56
+ serviceName: serviceName,
57
+ isPrimary: true,
58
+ isForeign: false,
59
+ });
60
+ }
61
+ }
62
+ this.modulesMap.set(serviceName, mod);
63
+ }
64
+ addRelationship(serviceName, relationship) {
65
+ const { primaryKey, foreignKey } = relationship;
66
+ if (!this.relations.has(serviceName)) {
67
+ this.relations.set(serviceName, new Map());
68
+ }
69
+ const key = relationship.isPrimary ? primaryKey : foreignKey;
70
+ const serviceMap = this.relations.get(serviceName);
71
+ if (!serviceMap.has(key)) {
72
+ serviceMap.set(key, []);
73
+ }
74
+ serviceMap.get(key).push(relationship);
75
+ }
76
+ getLinkModule(moduleA, moduleAKey, moduleB, moduleBKey) {
77
+ const key = [moduleA, moduleAKey, moduleB, moduleBKey].join("-");
78
+ return this.relationsPairs.get(key);
79
+ }
80
+ getRelationships() {
81
+ return this.relations;
82
+ }
83
+ getLinkableKeys(mod) {
84
+ return (mod.__joinerConfig.linkableKeys ?? mod.__joinerConfig.primaryKeys ?? []);
85
+ }
86
+ async executeCascade(removedServices, method) {
87
+ const removedIds = {};
88
+ const returnIdsList = {};
89
+ const processedIds = {};
90
+ const services = Object.keys(removedServices).map((serviceName) => {
91
+ const deleteKeys = {};
92
+ for (const field in removedServices[serviceName]) {
93
+ deleteKeys[field] = Array.isArray(removedServices[serviceName][field])
94
+ ? removedServices[serviceName][field]
95
+ : [removedServices[serviceName][field]];
96
+ }
97
+ return { serviceName, deleteKeys };
98
+ });
99
+ const errors = [];
100
+ const cascade = async (services, isCascading = false) => {
101
+ if (errors.length) {
102
+ return returnIdsList;
103
+ }
104
+ const servicePromises = services.map(async (serviceInfo) => {
105
+ const serviceRelations = this.relations.get(serviceInfo.serviceName);
106
+ if (!serviceRelations) {
107
+ return;
108
+ }
109
+ const values = serviceInfo.deleteKeys;
110
+ const deletePromises = [];
111
+ for (const field in values) {
112
+ const relatedServices = serviceRelations.get(field);
113
+ if (!relatedServices || !values[field]?.length) {
114
+ continue;
115
+ }
116
+ const relatedServicesPromises = relatedServices.map(async (relatedService) => {
117
+ const { serviceName, primaryKey, args } = relatedService;
118
+ const processedHash = `${serviceName}-${primaryKey}`;
119
+ if (!processedIds[processedHash]) {
120
+ processedIds[processedHash] = new Set();
121
+ }
122
+ const unprocessedIds = values[field].filter((id) => !processedIds[processedHash].has(id));
123
+ if (!unprocessedIds.length) {
124
+ return;
125
+ }
126
+ unprocessedIds.forEach((id) => {
127
+ processedIds[processedHash].add(id);
128
+ });
129
+ let cascadeDelKeys = {};
130
+ cascadeDelKeys[primaryKey] = unprocessedIds;
131
+ const service = this.modulesMap.get(serviceName);
132
+ const returnFields = this.getLinkableKeys(service);
133
+ let deletedEntities = {};
134
+ try {
135
+ if (args?.methodSuffix) {
136
+ method += (0, utils_1.toPascalCase)(args.methodSuffix);
137
+ }
138
+ const removed = await service[method](cascadeDelKeys, {
139
+ returnLinkableKeys: returnFields,
140
+ });
141
+ deletedEntities = removed;
142
+ }
143
+ catch (error) {
144
+ errors.push({
145
+ serviceName,
146
+ method,
147
+ args: cascadeDelKeys,
148
+ error: JSON.parse(JSON.stringify(error, Object.getOwnPropertyNames(error))),
149
+ });
150
+ return;
151
+ }
152
+ if (Object.keys(deletedEntities).length === 0) {
153
+ return;
154
+ }
155
+ removedIds[serviceName] = {
156
+ ...deletedEntities,
157
+ };
158
+ if (!isCascading) {
159
+ returnIdsList[serviceName] = {
160
+ ...deletedEntities,
161
+ };
162
+ }
163
+ else {
164
+ const [mainKey] = returnFields;
165
+ if (!returnIdsList[serviceName]) {
166
+ returnIdsList[serviceName] = {};
167
+ }
168
+ if (!returnIdsList[serviceName][mainKey]) {
169
+ returnIdsList[serviceName][mainKey] = [];
170
+ }
171
+ returnIdsList[serviceName][mainKey] = [
172
+ ...new Set(returnIdsList[serviceName][mainKey].concat(deletedEntities[mainKey])),
173
+ ];
174
+ }
175
+ Object.keys(deletedEntities).forEach((key) => {
176
+ deletedEntities[key].forEach((id) => {
177
+ const hash = `${serviceName}-${key}`;
178
+ if (!processedIds[hash]) {
179
+ processedIds[hash] = new Set();
180
+ }
181
+ processedIds[hash].add(id);
182
+ });
183
+ });
184
+ await cascade([
185
+ {
186
+ serviceName: serviceName,
187
+ deleteKeys: deletedEntities,
188
+ },
189
+ ], true);
190
+ });
191
+ deletePromises.push(...relatedServicesPromises);
192
+ }
193
+ await Promise.all(deletePromises);
194
+ });
195
+ await Promise.all(servicePromises);
196
+ return returnIdsList;
197
+ };
198
+ const result = await cascade(services);
199
+ return [errors.length ? errors : null, result];
200
+ }
201
+ async create(link) {
202
+ const allLinks = Array.isArray(link) ? link : [link];
203
+ const serviceLinks = new Map();
204
+ for (const rel of allLinks) {
205
+ const extraFields = rel.data;
206
+ delete rel.data;
207
+ const mods = Object.keys(rel);
208
+ if (mods.length > 2) {
209
+ throw new Error(`Only two modules can be linked.`);
210
+ }
211
+ const [moduleA, moduleB] = mods;
212
+ const pk = Object.keys(rel[moduleA]);
213
+ const moduleAKey = pk.join(",");
214
+ const moduleBKey = Object.keys(rel[moduleB]).join(",");
215
+ const service = this.getLinkModule(moduleA, moduleAKey, moduleB, moduleBKey);
216
+ if (!service) {
217
+ throw new Error(`Module to link ${moduleA}[${moduleAKey}] and ${moduleB}[${moduleBKey}] was not found.`);
218
+ }
219
+ else if (!serviceLinks.has(service.__definition.key)) {
220
+ serviceLinks.set(service.__definition.key, []);
221
+ }
222
+ const pkValue = pk.length === 1 ? rel[moduleA][pk[0]] : pk.map((k) => rel[moduleA][k]);
223
+ const fields = [pkValue, rel[moduleB][moduleBKey]];
224
+ if ((0, utils_1.isObject)(extraFields)) {
225
+ fields.push(extraFields);
226
+ }
227
+ serviceLinks.get(service.__definition.key)?.push(fields);
228
+ }
229
+ const promises = [];
230
+ for (const [serviceName, links] of serviceLinks) {
231
+ const service = this.modulesMap.get(serviceName);
232
+ promises.push(service.create(links));
233
+ }
234
+ const created = await Promise.all(promises);
235
+ return created.flat();
236
+ }
237
+ async dismiss(link) {
238
+ const allLinks = Array.isArray(link) ? link : [link];
239
+ const serviceLinks = new Map();
240
+ for (const rel of allLinks) {
241
+ const mods = Object.keys(rel);
242
+ if (mods.length > 2) {
243
+ throw new Error(`Only two modules can be linked.`);
244
+ }
245
+ const [moduleA, moduleB] = mods;
246
+ const pk = Object.keys(rel[moduleA]);
247
+ const moduleAKey = pk.join(",");
248
+ const moduleBKey = Object.keys(rel[moduleB]).join(",");
249
+ const service = this.getLinkModule(moduleA, moduleAKey, moduleB, moduleBKey);
250
+ if (!service) {
251
+ throw new Error(`Module to dismiss link ${moduleA}[${moduleAKey}] and ${moduleB}[${moduleBKey}] was not found.`);
252
+ }
253
+ else if (!serviceLinks.has(service.__definition.key)) {
254
+ serviceLinks.set(service.__definition.key, []);
255
+ }
256
+ const pkValue = pk.length === 1 ? rel[moduleA][pk[0]] : pk.map((k) => rel[moduleA][k]);
257
+ serviceLinks
258
+ .get(service.__definition.key)
259
+ ?.push([pkValue, rel[moduleB][moduleBKey]]);
260
+ }
261
+ const promises = [];
262
+ for (const [serviceName, links] of serviceLinks) {
263
+ const service = this.modulesMap.get(serviceName);
264
+ promises.push(service.dismiss(links));
265
+ }
266
+ const created = await Promise.all(promises);
267
+ return created.flat();
268
+ }
269
+ async delete(removedServices) {
270
+ return await this.executeCascade(removedServices, "softDelete");
271
+ }
272
+ async restore(removedServices) {
273
+ return await this.executeCascade(removedServices, "restore");
274
+ }
275
+ }
276
+ exports.RemoteLink = RemoteLink;
277
+ //# sourceMappingURL=remote-link.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"remote-link.js","sourceRoot":"","sources":["../src/remote-link.ts"],"names":[],"mappings":";;;AAMA,2CAAwD;AACxD,mDAA8C;AAkC9C,MAAa,UAAU;IAKrB,YAAY,aAA8B;QAJlC,eAAU,GAAkC,IAAI,GAAG,EAAE,CAAA;QACrD,mBAAc,GAAkC,IAAI,GAAG,EAAE,CAAA;QACzD,cAAS,GAAmD,IAAI,GAAG,EAAE,CAAA;QAG3E,IAAI,CAAC,aAAa,EAAE,MAAM,EAAE;YAC1B,aAAa,GAAG,4BAAY,CAAC,gBAAgB,EAAE,CAAC,GAAG,CACjD,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAC/B,CAAA;SACF;QAED,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE;YAC/B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;SACpB;IACH,CAAC;IAEM,SAAS,CAAC,GAAiB;QAChC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,WAAW,IAAI,GAAG,CAAC,cAAc,CAAC,cAAc,EAAE;YACtE,OAAM;SACP;QAED,MAAM,YAAY,GAAG,GAAG,CAAC,cAAc,CAAA;QAEvC,MAAM,WAAW,GAAG,YAAY,CAAC,MAAM;YACrC,CAAC,CAAC,YAAY,CAAC,WAAY;YAC3B,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAA;QAExB,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE;YACpC,MAAM,IAAI,KAAK,CACb,iCAAiC,WAAW,kBAAkB,CAC/D,CAAA;SACF;QAED,IAAI,YAAY,CAAC,aAAa,EAAE,MAAM,EAAE;YACtC,IAAI,YAAY,CAAC,MAAM,EAAE;gBACvB,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,YAAY,CAAC,aAAa,CAAA;gBACrD,MAAM,GAAG,GAAG;oBACV,OAAO,CAAC,WAAW;oBACnB,OAAO,CAAC,UAAU;oBAClB,OAAO,CAAC,WAAW;oBACnB,OAAO,CAAC,UAAU;iBACnB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;gBACX,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,EAAE,GAAkC,CAAC,CAAA;aACjE;YACD,KAAK,MAAM,YAAY,IAAI,YAAY,CAAC,aAAa,EAAE;gBACrD,IAAI,YAAY,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE;oBACtD,SAAQ;iBACT;gBAED,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE;oBAChC,GAAG,YAAY;oBACf,SAAS,EAAE,KAAK;oBAChB,SAAS,EAAE,IAAI;iBAChB,CAAC,CAAA;aACH;SACF;QAED,IAAI,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE;YAChC,KAAK,MAAM,OAAO,IAAI,YAAY,CAAC,OAAO,EAAE;gBAC1C,MAAM,YAAY,GAAG,OAAO,CAAC,YAAY,CAAA;gBACzC,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,WAAW,EAAE;oBACxC,GAAG,YAAY;oBACf,WAAW,EAAE,WAAW;oBACxB,SAAS,EAAE,IAAI;oBACf,SAAS,EAAE,KAAK;iBACjB,CAAC,CAAA;aACH;SACF;QAED,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,WAAW,EAAE,GAAkC,CAAC,CAAA;IACtE,CAAC;IAEO,eAAe,CACrB,WAAmB,EACnB,YAAgC;QAEhC,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,YAAY,CAAA;QAE/C,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE;YACpC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,GAAG,EAAE,CAAC,CAAA;SAC3C;QAED,MAAM,GAAG,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAA;QAC5D,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,WAAW,CAAE,CAAA;QACnD,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;YACxB,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;SACxB;QAED,UAAU,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;IACzC,CAAC;IAED,aAAa,CACX,OAAe,EACf,UAAkB,EAClB,OAAe,EACf,UAAkB;QAElB,MAAM,GAAG,GAAG,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAChE,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IACrC,CAAC;IAED,gBAAgB;QACd,OAAO,IAAI,CAAC,SAAS,CAAA;IACvB,CAAC;IAEO,eAAe,CAAC,GAAqB;QAC3C,OAAO,CACL,GAAG,CAAC,cAAc,CAAC,YAAY,IAAI,GAAG,CAAC,cAAc,CAAC,WAAW,IAAI,EAAE,CACxE,CAAA;IACH,CAAC;IAEO,KAAK,CAAC,cAAc,CAC1B,eAAkC,EAClC,MAAgC;QAEhC,MAAM,UAAU,GAAe,EAAE,CAAA;QACjC,MAAM,aAAa,GAAe,EAAE,CAAA;QACpC,MAAM,YAAY,GAAgC,EAAE,CAAA;QAEpD,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE;YAChE,MAAM,UAAU,GAAG,EAAE,CAAA;YAErB,KAAK,MAAM,KAAK,IAAI,eAAe,CAAC,WAAW,CAAC,EAAE;gBAChD,UAAU,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,CAAC;oBACpE,CAAC,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC;oBACrC,CAAC,CAAC,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,CAAC,CAAA;aAC1C;YAED,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,CAAA;QACpC,CAAC,CAAC,CAAA;QAEF,MAAM,MAAM,GAAmB,EAAE,CAAA;QACjC,MAAM,OAAO,GAAG,KAAK,EACnB,QAA+D,EAC/D,cAAuB,KAAK,EACP,EAAE;YACvB,IAAI,MAAM,CAAC,MAAM,EAAE;gBACjB,OAAO,aAAa,CAAA;aACrB;YAED,MAAM,eAAe,GAAG,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE;gBACzD,MAAM,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC,WAAW,CAAE,CAAA;gBAErE,IAAI,CAAC,gBAAgB,EAAE;oBACrB,OAAM;iBACP;gBAED,MAAM,MAAM,GAAG,WAAW,CAAC,UAAU,CAAA;gBAErC,MAAM,cAAc,GAAoB,EAAE,CAAA;gBAE1C,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;oBAC1B,MAAM,eAAe,GAAG,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;oBAEnD,IAAI,CAAC,eAAe,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE;wBAC9C,SAAQ;qBACT;oBAED,MAAM,uBAAuB,GAAG,eAAe,CAAC,GAAG,CACjD,KAAK,EAAE,cAAc,EAAE,EAAE;wBACvB,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,cAAc,CAAA;wBACxD,MAAM,aAAa,GAAG,GAAG,WAAW,IAAI,UAAU,EAAE,CAAA;wBAEpD,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,EAAE;4BAChC,YAAY,CAAC,aAAa,CAAC,GAAG,IAAI,GAAG,EAAE,CAAA;yBACxC;wBAED,MAAM,cAAc,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CACzC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAC7C,CAAA;wBAED,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE;4BAC1B,OAAM;yBACP;wBAED,cAAc,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE;4BAC5B,YAAY,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;wBACrC,CAAC,CAAC,CAAA;wBAEF,IAAI,cAAc,GAAmB,EAAE,CAAA;wBACvC,cAAc,CAAC,UAAU,CAAC,GAAG,cAAc,CAAA;wBAC3C,MAAM,OAAO,GAAgB,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,WAAW,CAAE,CAAA;wBAE9D,MAAM,YAAY,GAAG,IAAI,CAAC,eAAe,CACvC,OAA2B,CAC5B,CAAA;wBAED,IAAI,eAAe,GAA6B,EAAE,CAAA;wBAElD,IAAI;4BACF,IAAI,IAAI,EAAE,YAAY,EAAE;gCACtB,MAAM,IAAI,IAAA,oBAAY,EAAC,IAAI,CAAC,YAAY,CAAC,CAAA;6BAC1C;4BAED,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC,cAAc,EAAE;gCACpD,kBAAkB,EAAE,YAAY;6BACjC,CAAC,CAAA;4BAEF,eAAe,GAAG,OAAmC,CAAA;yBACtD;wBAAC,OAAO,KAAK,EAAE;4BACd,MAAM,CAAC,IAAI,CAAC;gCACV,WAAW;gCACX,MAAM;gCACN,IAAI,EAAE,cAAc;gCACpB,KAAK,EAAE,IAAI,CAAC,KAAK,CACf,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,MAAM,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,CACzD;6BACF,CAAC,CAAA;4BACF,OAAM;yBACP;wBAED,IAAI,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;4BAC7C,OAAM;yBACP;wBAED,UAAU,CAAC,WAAW,CAAC,GAAG;4BACxB,GAAG,eAAe;yBACnB,CAAA;wBAED,IAAI,CAAC,WAAW,EAAE;4BAChB,aAAa,CAAC,WAAW,CAAC,GAAG;gCAC3B,GAAG,eAAe;6BACnB,CAAA;yBACF;6BAAM;4BACL,MAAM,CAAC,OAAO,CAAC,GAAG,YAAY,CAAA;4BAE9B,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,EAAE;gCAC/B,aAAa,CAAC,WAAW,CAAC,GAAG,EAAE,CAAA;6BAChC;4BACD,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,EAAE;gCACxC,aAAa,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAA;6BACzC;4BAED,aAAa,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,GAAG;gCACpC,GAAG,IAAI,GAAG,CACR,aAAa,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,CACxC,eAAe,CAAC,OAAO,CAAC,CACzB,CACF;6BACF,CAAA;yBACF;wBAED,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;4BAC3C,eAAe,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE;gCAClC,MAAM,IAAI,GAAG,GAAG,WAAW,IAAI,GAAG,EAAE,CAAA;gCACpC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE;oCACvB,YAAY,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,EAAE,CAAA;iCAC/B;gCAED,YAAY,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;4BAC5B,CAAC,CAAC,CAAA;wBACJ,CAAC,CAAC,CAAA;wBAEF,MAAM,OAAO,CACX;4BACE;gCACE,WAAW,EAAE,WAAW;gCACxB,UAAU,EAAE,eAAiC;6BAC9C;yBACF,EACD,IAAI,CACL,CAAA;oBACH,CAAC,CACF,CAAA;oBAED,cAAc,CAAC,IAAI,CAAC,GAAG,uBAAuB,CAAC,CAAA;iBAChD;gBAED,MAAM,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAA;YACnC,CAAC,CAAC,CAAA;YAEF,MAAM,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAA;YAClC,OAAO,aAAa,CAAA;QACtB,CAAC,CAAA;QAED,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,CAAA;QAEtC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;IAChD,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,IAAuC;QAClD,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QACpD,MAAM,YAAY,GAAG,IAAI,GAAG,EAGzB,CAAA;QAEH,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE;YAC1B,MAAM,WAAW,GAAG,GAAG,CAAC,IAAI,CAAA;YAC5B,OAAO,GAAG,CAAC,IAAI,CAAA;YAEf,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YAC7B,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;gBACnB,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAA;aACnD;YAED,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,IAAI,CAAA;YAC/B,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAA;YACpC,MAAM,UAAU,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YAC/B,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YAEtD,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAChC,OAAO,EACP,UAAU,EACV,OAAO,EACP,UAAU,CACX,CAAA;YAED,IAAI,CAAC,OAAO,EAAE;gBACZ,MAAM,IAAI,KAAK,CACb,kBAAkB,OAAO,IAAI,UAAU,SAAS,OAAO,IAAI,UAAU,kBAAkB,CACxF,CAAA;aACF;iBAAM,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE;gBACtD,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;aAC/C;YAED,MAAM,OAAO,GACX,EAAE,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;YAExE,MAAM,MAAM,GAAc,CAAC,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,CAAA;YAC7D,IAAI,IAAA,gBAAQ,EAAC,WAAW,CAAC,EAAE;gBACzB,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;aACzB;YAED,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,MAAa,CAAC,CAAA;SAChE;QAED,MAAM,QAAQ,GAAyB,EAAE,CAAA;QACzC,KAAK,MAAM,CAAC,WAAW,EAAE,KAAK,CAAC,IAAI,YAAY,EAAE;YAC/C,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,WAAW,CAAE,CAAA;YACjD,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;SACrC;QAED,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QAC3C,OAAO,OAAO,CAAC,IAAI,EAAE,CAAA;IACvB,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,IAAuC;QACnD,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QACpD,MAAM,YAAY,GAAG,IAAI,GAAG,EAAyC,CAAA;QAErE,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE;YAC1B,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YAC7B,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;gBACnB,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAA;aACnD;YAED,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,IAAI,CAAA;YAC/B,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAA;YACpC,MAAM,UAAU,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YAC/B,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YAEtD,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAChC,OAAO,EACP,UAAU,EACV,OAAO,EACP,UAAU,CACX,CAAA;YAED,IAAI,CAAC,OAAO,EAAE;gBACZ,MAAM,IAAI,KAAK,CACb,0BAA0B,OAAO,IAAI,UAAU,SAAS,OAAO,IAAI,UAAU,kBAAkB,CAChG,CAAA;aACF;iBAAM,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE;gBACtD,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;aAC/C;YAED,MAAM,OAAO,GACX,EAAE,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;YAExE,YAAY;iBACT,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC;gBAC9B,EAAE,IAAI,CAAC,CAAC,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAA;SAC9C;QAED,MAAM,QAAQ,GAAyB,EAAE,CAAA;QACzC,KAAK,MAAM,CAAC,WAAW,EAAE,KAAK,CAAC,IAAI,YAAY,EAAE;YAC/C,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,WAAW,CAAE,CAAA;YACjD,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAA;SACtC;QAED,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QAC3C,OAAO,OAAO,CAAC,IAAI,EAAE,CAAA;IACvB,CAAC;IAED,KAAK,CAAC,MAAM,CACV,eAAkC;QAElC,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,eAAe,EAAE,YAAY,CAAC,CAAA;IACjE,CAAC;IAED,KAAK,CAAC,OAAO,CACX,eAAkC;QAElC,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,eAAe,EAAE,SAAS,CAAC,CAAA;IAC9D,CAAC;CACF;AA7YD,gCA6YC"}
@@ -1,20 +1,25 @@
1
- import { JoinerRelationship, LoadedModule, RemoteExpandProperty } from "@medusajs/types";
1
+ import { JoinerRelationship, LoadedModule, ModuleJoinerConfig, RemoteExpandProperty, RemoteJoinerQuery } from "@medusajs/types";
2
+ import { RemoteFetchDataCallback } from "@medusajs/orchestration";
2
3
  export declare class RemoteQuery {
3
4
  private remoteJoiner;
4
5
  private modulesMap;
5
- constructor(modulesLoaded?: LoadedModule[], remoteFetchData?: (expand: RemoteExpandProperty, keyField: string, ids?: (unknown | unknown[])[], relationship?: JoinerRelationship) => Promise<{
6
- data: unknown[] | {
7
- [path: string]: unknown[];
8
- };
9
- path?: string;
10
- }>);
6
+ private customRemoteFetchData?;
7
+ constructor({ modulesLoaded, customRemoteFetchData, servicesConfig, }?: {
8
+ modulesLoaded?: LoadedModule[];
9
+ customRemoteFetchData?: RemoteFetchDataCallback;
10
+ servicesConfig?: ModuleJoinerConfig[];
11
+ });
11
12
  setFetchDataCallback(remoteFetchData: (expand: RemoteExpandProperty, keyField: string, ids?: (unknown | unknown[])[], relationship?: any) => Promise<{
12
13
  data: unknown[] | {
13
14
  [path: string]: unknown[];
14
15
  };
15
16
  path?: string;
16
17
  }>): void;
17
- private static getAllFieldsAndRelations;
18
+ static getAllFieldsAndRelations(data: any, prefix?: string, args?: Record<string, unknown[]>): {
19
+ select: string[];
20
+ relations: string[];
21
+ args: Record<string, unknown[]>;
22
+ };
18
23
  private hasPagination;
19
24
  private buildPagination;
20
25
  remoteFetchData(expand: RemoteExpandProperty, keyField: string, ids?: (unknown | unknown[])[], relationship?: JoinerRelationship): Promise<{
@@ -23,5 +28,5 @@ export declare class RemoteQuery {
23
28
  };
24
29
  path?: string;
25
30
  }>;
26
- query(query: string, variables?: any): Promise<any>;
31
+ query(query: string | RemoteJoinerQuery, variables?: Record<string, unknown>): Promise<any>;
27
32
  }
@@ -1,48 +1,52 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.RemoteQuery = void 0;
4
- const medusa_module_1 = require("./medusa-module");
5
4
  const orchestration_1 = require("@medusajs/orchestration");
6
5
  const utils_1 = require("@medusajs/utils");
6
+ const medusa_module_1 = require("./medusa-module");
7
7
  class RemoteQuery {
8
- constructor(modulesLoaded, remoteFetchData) {
8
+ constructor({ modulesLoaded, customRemoteFetchData, servicesConfig, } = {
9
+ servicesConfig: [],
10
+ }) {
9
11
  this.modulesMap = new Map();
10
12
  if (!modulesLoaded?.length) {
11
13
  modulesLoaded = medusa_module_1.MedusaModule.getLoadedModules().map((mod) => Object.values(mod)[0]);
12
14
  }
13
- const servicesConfig = [];
14
15
  for (const mod of modulesLoaded) {
15
16
  if (!mod.__definition.isQueryable) {
16
17
  continue;
17
18
  }
18
- if (this.modulesMap.has(mod.__definition.key)) {
19
- throw new Error(`Duplicated instance of module ${mod.__definition.key} is not allowed.`);
19
+ const serviceName = mod.__definition.key;
20
+ if (this.modulesMap.has(serviceName)) {
21
+ throw new Error(`Duplicated instance of module ${serviceName} is not allowed.`);
20
22
  }
21
- this.modulesMap.set(mod.__definition.key, mod);
23
+ this.modulesMap.set(serviceName, mod);
22
24
  servicesConfig.push(mod.__joinerConfig);
23
25
  }
24
- this.remoteJoiner = new orchestration_1.RemoteJoiner(servicesConfig, remoteFetchData ?? this.remoteFetchData.bind(this));
26
+ this.customRemoteFetchData = customRemoteFetchData;
27
+ this.remoteJoiner = new orchestration_1.RemoteJoiner(servicesConfig, this.remoteFetchData.bind(this));
25
28
  }
26
29
  setFetchDataCallback(remoteFetchData) {
27
30
  this.remoteJoiner.setFetchDataCallback(remoteFetchData);
28
31
  }
29
- static getAllFieldsAndRelations(data, prefix = "") {
32
+ static getAllFieldsAndRelations(data, prefix = "", args = {}) {
30
33
  let fields = new Set();
31
34
  let relations = [];
32
35
  data.fields?.forEach((field) => {
33
36
  fields.add(prefix ? `${prefix}.${field}` : field);
34
37
  });
38
+ args[prefix] = data.args;
35
39
  if (data.expands) {
36
40
  for (const property in data.expands) {
37
41
  const newPrefix = prefix ? `${prefix}.${property}` : property;
38
42
  relations.push(newPrefix);
39
43
  fields.delete(newPrefix);
40
- const result = RemoteQuery.getAllFieldsAndRelations(data.expands[property], newPrefix);
44
+ const result = RemoteQuery.getAllFieldsAndRelations(data.expands[property], newPrefix, args);
41
45
  result.select.forEach(fields.add, fields);
42
46
  relations = relations.concat(result.relations);
43
47
  }
44
48
  }
45
- return { select: [...fields], relations };
49
+ return { select: [...fields], relations, args };
46
50
  }
47
51
  hasPagination(options) {
48
52
  if (!options) {
@@ -61,6 +65,12 @@ class RemoteQuery {
61
65
  };
62
66
  }
63
67
  async remoteFetchData(expand, keyField, ids, relationship) {
68
+ if (this.customRemoteFetchData) {
69
+ const resp = await this.customRemoteFetchData(expand, keyField, ids);
70
+ if (resp !== undefined) {
71
+ return resp;
72
+ }
73
+ }
64
74
  const serviceConfig = expand.serviceConfig;
65
75
  const service = this.modulesMap.get(serviceConfig.serviceName);
66
76
  let filters = {};
@@ -119,8 +129,11 @@ class RemoteQuery {
119
129
  data: result,
120
130
  };
121
131
  }
122
- async query(query, variables = {}) {
123
- return await this.remoteJoiner.query(orchestration_1.RemoteJoiner.parseQuery(query, variables));
132
+ async query(query, variables) {
133
+ const finalQuery = (0, utils_1.isString)(query)
134
+ ? orchestration_1.RemoteJoiner.parseQuery(query, variables)
135
+ : query;
136
+ return await this.remoteJoiner.query(finalQuery);
124
137
  }
125
138
  }
126
139
  exports.RemoteQuery = RemoteQuery;
@@ -1 +1 @@
1
- {"version":3,"file":"remote-query.js","sourceRoot":"","sources":["../src/remote-query.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"remote-query.js","sourceRoot":"","sources":["../src/remote-query.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@medusajs/modules-sdk",
3
- "version": "1.9.2",
3
+ "version": "1.10.0-next-20230906161158",
4
4
  "description": "SDK for medusa modules",
5
5
  "main": "dist/index.js",
6
6
  "repository": {
@@ -18,15 +18,15 @@
18
18
  "license": "MIT",
19
19
  "devDependencies": {
20
20
  "cross-env": "^5.2.1",
21
- "jest": "^25.5.4",
21
+ "jest": "^29.6.3",
22
22
  "rimraf": "^5.0.1",
23
- "ts-jest": "^25.5.1",
24
- "typescript": "^4.4.4"
23
+ "ts-jest": "^29.1.1",
24
+ "typescript": "^5.1.6"
25
25
  },
26
26
  "dependencies": {
27
- "@medusajs/orchestration": "^0.2.0",
28
- "@medusajs/types": "^1.10.2",
29
- "@medusajs/utils": "^1.9.6",
27
+ "@medusajs/orchestration": "0.3.0-next-20230906161158",
28
+ "@medusajs/types": "1.11.0-next-20230906161158",
29
+ "@medusajs/utils": "1.10.0-next-20230906161158",
30
30
  "awilix": "^8.0.0",
31
31
  "resolve-cwd": "^3.0.0"
32
32
  },