UNPKG

@storm-software/workspace-tools

Version:

Tools for managing a Storm workspace, including various Nx generators and executors for common development tasks.

93 lines (84 loc) 3.08 kB
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } var _chunkJTAXCQX6js = require('./chunk-JTAXCQX6.js'); var _chunk3GQAWCBQjs = require('./chunk-3GQAWCBQ.js'); // ../config-tools/src/utilities/find-up.ts var _fs = require('fs'); var _path = require('path'); var MAX_PATH_SEARCH_DEPTH = 30; var depth = 0; function findFolderUp(startPath, endFileNames = [], endDirectoryNames = []) { const _startPath = _nullishCoalesce(startPath, () => ( process.cwd())); if (endDirectoryNames.some((endDirName) => _fs.existsSync.call(void 0, _path.join.call(void 0, _startPath, endDirName)))) { return _startPath; } if (endFileNames.some((endFileName) => _fs.existsSync.call(void 0, _path.join.call(void 0, _startPath, endFileName)))) { return _startPath; } if (_startPath !== "/" && depth++ < MAX_PATH_SEARCH_DEPTH) { const parent = _path.join.call(void 0, _startPath, ".."); return findFolderUp(parent, endFileNames, endDirectoryNames); } return void 0; } _chunk3GQAWCBQjs.__name.call(void 0, findFolderUp, "findFolderUp"); // ../config-tools/src/utilities/find-workspace-root.ts var rootFiles = [ "storm-workspace.json", "storm-workspace.json", "storm-workspace.yaml", "storm-workspace.yml", "storm-workspace.js", "storm-workspace.ts", ".storm-workspace.json", ".storm-workspace.yaml", ".storm-workspace.yml", ".storm-workspace.js", ".storm-workspace.ts", "lerna.json", "nx.json", "turbo.json", "npm-workspace.json", "yarn-workspace.json", "pnpm-workspace.json", "npm-workspace.yaml", "yarn-workspace.yaml", "pnpm-workspace.yaml", "npm-workspace.yml", "yarn-workspace.yml", "pnpm-workspace.yml", "npm-lock.json", "yarn-lock.json", "pnpm-lock.json", "npm-lock.yaml", "yarn-lock.yaml", "pnpm-lock.yaml", "npm-lock.yml", "yarn-lock.yml", "pnpm-lock.yml", "bun.lockb" ]; var rootDirectories = [ ".storm-workspace", ".nx", ".github", ".vscode", ".verdaccio" ]; function findWorkspaceRootSafe(pathInsideMonorepo) { if (process.env.STORM_WORKSPACE_ROOT || process.env.NX_WORKSPACE_ROOT_PATH) { return _chunkJTAXCQX6js.correctPaths.call(void 0, _nullishCoalesce(process.env.STORM_WORKSPACE_ROOT, () => ( process.env.NX_WORKSPACE_ROOT_PATH))); } return _chunkJTAXCQX6js.correctPaths.call(void 0, findFolderUp(_nullishCoalesce(pathInsideMonorepo, () => ( process.cwd())), rootFiles, rootDirectories)); } _chunk3GQAWCBQjs.__name.call(void 0, findWorkspaceRootSafe, "findWorkspaceRootSafe"); function findWorkspaceRoot(pathInsideMonorepo) { const result = findWorkspaceRootSafe(pathInsideMonorepo); if (!result) { throw new Error(`Cannot find workspace root upwards from known path. Files search list includes: ${rootFiles.join("\n")} Path: ${pathInsideMonorepo ? pathInsideMonorepo : process.cwd()}`); } return result; } _chunk3GQAWCBQjs.__name.call(void 0, findWorkspaceRoot, "findWorkspaceRoot"); exports.findWorkspaceRoot = findWorkspaceRoot;