123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100 |
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- exports.install = install;
- var _chalk = _interopRequireDefault(require("next/dist/compiled/chalk"));
- var _crossSpawn = _interopRequireDefault(require("next/dist/compiled/cross-spawn"));
- function _interopRequireDefault(obj) {
- return obj && obj.__esModule ? obj : {
- default: obj
- };
- }
- function install(root, dependencies, { packageManager , isOnline , devDependencies }) {
- /**
- * (p)npm-specific command-line flags.
- */ const npmFlags = [];
- /**
- * Yarn-specific command-line flags.
- */ const yarnFlags = [];
- /**
- * Return a Promise that resolves once the installation is finished.
- */ return new Promise((resolve, reject)=>{
- let args;
- let command = packageManager;
- const useYarn = packageManager === "yarn";
- if (dependencies && dependencies.length) {
- /**
- * If there are dependencies, run a variation of `{packageManager} add`.
- */ if (useYarn) {
- /**
- * Call `yarn add --exact (--offline)? (-D)? ...`.
- */ args = [
- "add",
- "--exact"
- ];
- if (!isOnline) args.push("--offline");
- args.push("--cwd", root);
- if (devDependencies) args.push("--dev");
- args.push(...dependencies);
- } else {
- /**
- * Call `(p)npm install [--save|--save-dev] ...`.
- */ args = [
- "install",
- "--save-exact"
- ];
- args.push(devDependencies ? "--save-dev" : "--save");
- args.push(...dependencies);
- }
- } else {
- /**
- * If there are no dependencies, run a variation of `{packageManager}
- * install`.
- */ args = [
- "install"
- ];
- if (!isOnline) {
- console.log(_chalk.default.yellow("You appear to be offline."));
- if (useYarn) {
- console.log(_chalk.default.yellow("Falling back to the local Yarn cache."));
- console.log();
- args.push("--offline");
- } else {
- console.log();
- }
- }
- }
- /**
- * Add any package manager-specific flags.
- */ if (useYarn) {
- args.push(...yarnFlags);
- } else {
- args.push(...npmFlags);
- }
- /**
- * Spawn the installation process.
- */ const child = (0, _crossSpawn).default(command, args, {
- stdio: "inherit",
- env: {
- ...process.env,
- ADBLOCK: "1",
- // we set NODE_ENV to development as pnpm skips dev
- // dependencies when production
- NODE_ENV: "development",
- DISABLE_OPENCOLLECTIVE: "1"
- }
- });
- child.on("close", (code)=>{
- if (code !== 0) {
- reject({
- command: `${command} ${args.join(" ")}`
- });
- return;
- }
- resolve();
- });
- });
- }
- //# sourceMappingURL=install.js.map
|