every-plugin
Version:
62 lines (60 loc) • 1.79 kB
JavaScript
import { createRequire } from "node:module";
//#region src/runtime/mf-config.ts
const require = createRequire(import.meta.url);
function getInstalledPackageVersion(packageName, fallbackRange) {
try {
return require(`${packageName}/package.json`).version;
} catch {
const match = fallbackRange.match(/\d+\.\d+\.\d+(?:-[0-9A-Za-z.-]+)?/);
return match ? match[0] : fallbackRange.replace(/^[\^~>=<\s]+/, "");
}
}
const PLUGIN_VERSION = "2.5.11";
const SHARE_CONFIG = {
singleton: true,
requiredVersion: false,
strictVersion: false,
eager: false
};
const MF_CORE_SHARED_DEPS = {
"every-plugin": {
version: PLUGIN_VERSION,
shareConfig: SHARE_CONFIG
},
effect: {
version: getInstalledPackageVersion("effect", "^3.21.0"),
shareConfig: SHARE_CONFIG
},
zod: {
version: getInstalledPackageVersion("zod", "^4.3.6"),
shareConfig: SHARE_CONFIG
},
"@orpc/contract": {
version: getInstalledPackageVersion("@orpc/contract", "^1.13.4"),
shareConfig: SHARE_CONFIG
},
"@orpc/server": {
version: getInstalledPackageVersion("@orpc/server", "^1.13.4"),
shareConfig: SHARE_CONFIG
}
};
function buildMergedSharedDeps(appShared) {
const merged = {};
for (const [name, config] of Object.entries(MF_CORE_SHARED_DEPS)) merged[name] = {
version: config.version,
shareConfig: config.shareConfig
};
if (appShared) for (const [name, config] of Object.entries(appShared)) merged[name] = {
version: config.version,
shareConfig: {
singleton: config.singleton ?? true,
requiredVersion: config.requiredVersion ?? false,
strictVersion: config.strictVersion ?? false,
eager: config.eager ?? false
}
};
return merged;
}
//#endregion
export { MF_CORE_SHARED_DEPS, PLUGIN_VERSION, SHARE_CONFIG, buildMergedSharedDeps };
//# sourceMappingURL=mf-config.mjs.map