openclaw
Version:
Multi-channel AI gateway with extensible messaging integrations
31 lines (30 loc) • 1.33 kB
JavaScript
import { d as normalizeStringEntries } from "./string-normalization-DsCfAx8q.js";
import { c as resolveUserPath } from "./home-dir-BPhrG-aM.js";
import "./utils-P__uGsPB.js";
import { i as resolveBundledPluginsDir } from "./bundled-dir-BEfbEeCF.js";
import { n as resolveOpenClawDevSourceRoot } from "./dev-source-root-DCu97Qvh.js";
import { a as resolveDefaultPluginExtensionsDir } from "./install-paths-ChnxikBv.js";
import path from "node:path";
//#region src/plugins/roots.ts
function resolvePluginSourceRoots(params) {
const env = params.env ?? process.env;
const workspaceRoot = params.workspaceDir ? resolveUserPath(params.workspaceDir, env) : void 0;
return {
stock: resolveBundledPluginsDir(env),
global: resolveDefaultPluginExtensionsDir(env),
workspace: workspaceRoot ? path.join(workspaceRoot, ".openclaw", "extensions") : void 0
};
}
function resolvePluginCacheInputs(params) {
const env = params.env ?? process.env;
return {
roots: resolvePluginSourceRoots({
workspaceDir: params.workspaceDir,
env
}),
loadPaths: normalizeStringEntries((params.loadPaths ?? []).filter((entry) => typeof entry === "string")).map((entry) => resolveUserPath(entry, env)),
devSourceRoot: resolveOpenClawDevSourceRoot(env)
};
}
//#endregion
export { resolvePluginSourceRoots as n, resolvePluginCacheInputs as t };