isolate-package
Version:
Isolate monorepo packages to form a self-contained deployable unit
22 lines (20 loc) • 1.19 kB
JavaScript
import { c as detectPackageManager, i as defineConfig, l as readTypedJson, n as listInternalPackages, o as resolveConfig, r as createPackagesRegistry, s as resolveWorkspacePaths, t as isolate } from "./isolate-B0zQOSqE.mjs";
import path from "node:path";
//#region src/get-internal-package-names.ts
/**
* Get the names of all internal workspace packages that the target package
* depends on. This is useful for tools like tsup that need a list of internal
* packages to include in `noExternal`.
*
* If no config is passed, it reads from `isolate.config.{ts,js,json}` in the
* current working directory.
*/
async function getInternalPackageNames(config) {
const resolvedConfig = resolveConfig(config);
const { targetPackageDir, workspaceRootDir } = resolveWorkspacePaths(resolvedConfig);
detectPackageManager(workspaceRootDir);
return listInternalPackages(await readTypedJson(path.join(targetPackageDir, "package.json")), await createPackagesRegistry(workspaceRootDir, resolvedConfig.workspacePackages), { includeDevDependencies: resolvedConfig.includeDevDependencies });
}
//#endregion
export { defineConfig, getInternalPackageNames, isolate };
//# sourceMappingURL=index.mjs.map