@turbo/workspaces 2.3.4-canary.2 → 2.3.4-canary.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -4,5 +4,5 @@ var ul=Object.create;var Zs=Object.defineProperty;var al=Object.getOwnPropertyDe
4
4
  ${e.workspaceData.globs.map(a=>` - "${a}"`).join(`
5
5
  `)}`))),n&&(le({workspace:{name:"root",paths:e.paths},project:e,to:t,logger:s,options:i}),s.workspaceHeader(),e.workspaceData.workspaces.forEach(a=>{le({workspace:a,project:e,to:t,logger:s,options:i})}))}async function rm(r){let{project:e,logger:t,options:s}=r,i=e.workspaceData.globs.length>0;t.mainStep(ce({action:"remove",packageManager:it.name,project:e}));let n=M({workspaceRoot:e.paths.root});if(e.paths.workspaceConfig&&i&&(t.subStep('removing "pnpm-workspace.yaml"'),s!=null&&s.dry||to(e.paths.workspaceConfig,{force:!0})),t.subStep(`removing "packageManager" field in ${e.name} root "package.json"`),delete n.packageManager,!(s!=null&&s.dry)){Jc(e.paths.packageJson,n,{spaces:2});let o=[e.paths.nodeModules,...e.workspaceData.workspaces.map(a=>a.paths.nodeModules)];try{t.subStep('removing "node_modules"'),await Promise.all(o.map(a=>Xp(a,{recursive:!0,force:!0})))}catch{throw new B("Failed to remove node_modules",{type:"error_removing_node_modules"})}}}async function sm(r){let{project:e,logger:t,options:s}=r;t.subStep(`removing ${Xt.relative(e.paths.root,e.paths.lockfile)}`),s!=null&&s.dry||to(e.paths.lockfile,{force:!0})}async function im(r){let{project:e,options:t,logger:s}=r,i=()=>{s.subStep(`converting ${Xt.relative(e.paths.root,e.paths.lockfile)} to ${it.lock}`)},n=async()=>{if(!(t!=null&&t.dry)&&eo(e.paths.lockfile))try{await Qp(it.name,["import"],{stdio:"ignore",cwd:e.paths.root})}catch{}finally{re({project:e,options:t})}};switch(e.packageManager){case"pnpm":break;case"bun":i(),await Us({project:e,options:t}),await n(),to(Xt.join(e.paths.root,"yarn.lock"),{force:!0});break;case"npm":i(),await n();break;case"yarn":i(),await n();break}}var Yc={detect:Vc,read:em,create:tm,remove:rm,clean:sm,convertLock:im};u();import js from"path";import{writeJSONSync as ro,existsSync as nm,rmSync as om,rm as um}from"fs-extra";var Qt={name:"npm",lock:"package-lock.json"};async function Kc(r){let e=js.join(r.workspaceRoot,Qt.lock),t=tt({workspaceRoot:r.workspaceRoot});return nm(e)||t===Qt.name}async function am(r){if(!await Kc(r))throw new B("Not an npm project",{type:"package_manager-unexpected"});let t=M(r),{name:s,description:i}=Ie(r),n=Zt({workspaces:t.workspaces});return{name:s,description:i,packageManager:Qt.name,paths:rt({root:r.workspaceRoot,lockFile:Qt.lock}),workspaceData:{globs:n,workspaces:st({workspaceGlobs:n,...r})}}}async function cm(r){let{project:e,options:t,to:s,logger:i}=r,n=e.workspaceData.globs.length>0;i.mainStep(ce({packageManager:Qt.name,action:"create",project:e}));let o=M({workspaceRoot:e.paths.root});i.rootHeader(),i.rootStep(`adding "packageManager" field to ${js.relative(e.paths.root,e.paths.packageJson)}`),o.packageManager=`${s.name}@${s.version}`,n?(i.rootStep(`adding "workspaces" field to ${js.relative(e.paths.root,e.paths.packageJson)}`),o.workspaces=e.workspaceData.globs,t!=null&&t.dry||ro(e.paths.packageJson,o,{spaces:2}),le({workspace:{name:"root",paths:e.paths},project:e,to:s,logger:i,options:t}),i.workspaceHeader(),e.workspaceData.workspaces.forEach(a=>{le({workspace:a,project:e,to:s,logger:i,options:t})})):t!=null&&t.dry||ro(e.paths.packageJson,o,{spaces:2})}async function lm(r){let{project:e,logger:t,options:s}=r,i=e.workspaceData.globs.length>0;t.mainStep(ce({packageManager:Qt.name,action:"remove",project:e}));let n=M({workspaceRoot:e.paths.root});if(i&&(t.subStep(`removing "workspaces" field in ${e.name} root "package.json"`),delete n.workspaces),t.subStep(`removing "packageManager" field in ${e.name} root "package.json"`),delete n.packageManager,!(s!=null&&s.dry)){ro(e.paths.packageJson,n,{spaces:2});let o=[e.paths.nodeModules,...e.workspaceData.workspaces.map(a=>a.paths.nodeModules)];try{t.subStep('removing "node_modules"'),await Promise.all(o.map(a=>um(a,{recursive:!0,force:!0})))}catch{throw new B("Failed to remove node_modules",{type:"error_removing_node_modules"})}}}async function hm(r){let{project:e,logger:t,options:s}=r;t.subStep(`removing ${js.relative(e.paths.root,e.paths.lockfile)}`),s!=null&&s.dry||om(e.paths.lockfile,{force:!0})}async function fm(r){let{project:e,options:t}=r;switch(e.packageManager){case"pnpm":re({project:e,options:t});break;case"bun":re({project:e,options:t});break;case"npm":break;case"yarn":re({project:e,options:t});break}}var Zc={detect:Kc,read:am,create:cm,remove:lm,clean:hm,convertLock:fm};u();import Sr from"path";import{existsSync as pm,writeJSONSync as so,rmSync as mm,rm as dm}from"fs-extra";var Ft={name:"yarn",lock:"yarn.lock"};async function Xc(r){let e=Sr.join(r.workspaceRoot,Ft.lock),t=tt({workspaceRoot:r.workspaceRoot});return pm(e)||t===Ft.name}async function Dm(r){if(!await Xc(r))throw new B("Not a yarn project",{type:"package_manager-unexpected"});let t=M(r),{name:s,description:i}=Ie(r),n=Zt({workspaces:t.workspaces});return{name:s,description:i,packageManager:Ft.name,paths:rt({root:r.workspaceRoot,lockFile:Ft.lock}),workspaceData:{globs:n,workspaces:st({workspaceGlobs:n,...r})}}}async function gm(r){let{project:e,to:t,logger:s,options:i}=r,n=e.workspaceData.globs.length>0;s.mainStep(ce({packageManager:Ft.name,action:"create",project:e}));let o=M({workspaceRoot:e.paths.root});s.rootHeader(),s.rootStep(`adding "packageManager" field to ${Sr.relative(e.paths.root,e.paths.packageJson)}`),o.packageManager=`${t.name}@${t.version}`,n?(s.rootStep(`adding "workspaces" field to ${Sr.relative(e.paths.root,e.paths.packageJson)}`),o.workspaces=e.workspaceData.globs,i!=null&&i.dry||so(e.paths.packageJson,o,{spaces:2}),le({workspace:{name:"root",paths:e.paths},project:e,to:t,logger:s,options:i}),s.workspaceHeader(),e.workspaceData.workspaces.forEach(a=>{le({workspace:a,project:e,to:t,logger:s,options:i})})):i!=null&&i.dry||so(e.paths.packageJson,o,{spaces:2})}async function Em(r){let{project:e,logger:t,options:s}=r,i=e.workspaceData.globs.length>0;t.mainStep(ce({packageManager:Ft.name,action:"remove",project:e}));let n=M({workspaceRoot:e.paths.root});if(i&&(t.subStep(`removing "workspaces" field in ${e.name} root "package.json"`),delete n.workspaces),t.subStep(`removing "packageManager" field in ${e.name} root "package.json"`),delete n.packageManager,!(s!=null&&s.dry)){so(e.paths.packageJson,n,{spaces:2});let o=[e.paths.nodeModules,...e.workspaceData.workspaces.map(a=>a.paths.nodeModules)];try{t.subStep('removing "node_modules"'),await Promise.all(o.map(a=>dm(a,{recursive:!0,force:!0})))}catch{throw new B("Failed to remove node_modules",{type:"error_removing_node_modules"})}}}async function ym(r){let{project:e,logger:t,options:s}=r;t.subStep(`removing ${Sr.relative(e.paths.root,e.paths.lockfile)}`),s!=null&&s.dry||mm(e.paths.lockfile,{force:!0})}async function Am(r){let{project:e,options:t,logger:s}=r,i=()=>{s.subStep(`converting ${Sr.relative(e.paths.root,e.paths.lockfile)} to ${Ft.lock}`)};switch(e.packageManager){case"pnpm":re({project:e,options:t});break;case"bun":i(),await Us({project:e,options:t});break;case"npm":re({project:e,options:t});break;case"yarn":break}}var Qc={detect:Xc,read:Dm,create:gm,remove:Em,clean:ym,convertLock:Am};u();import $s from"path";import{existsSync as Cm,writeJSONSync as io,rmSync as Fm,rm as wm}from"fs-extra";var er={name:"bun",lock:"bun.lockb"};async function el(r){let e=$s.join(r.workspaceRoot,er.lock),t=tt({workspaceRoot:r.workspaceRoot});return Cm(e)||t===er.name}async function bm(r){if(!await el(r))throw new B("Not a bun project",{type:"package_manager-unexpected"});let t=M(r),{name:s,description:i}=Ie(r),n=Zt({workspaces:t.workspaces});return{name:s,description:i,packageManager:er.name,paths:rt({root:r.workspaceRoot,lockFile:er.lock}),workspaceData:{globs:n,workspaces:st({workspaceGlobs:n,...r})}}}async function Sm(r){let{project:e,to:t,logger:s,options:i}=r,n=e.workspaceData.globs.length>0;if(!Hc({project:e}))throw new B("Unable to convert project to bun - workspace globs unsupported",{type:"bun-workspace_glob_error"});s.mainStep(ce({packageManager:er.name,action:"create",project:e}));let o=M({workspaceRoot:e.paths.root});s.rootHeader(),s.rootStep(`adding "packageManager" field to ${$s.relative(e.paths.root,e.paths.packageJson)}`),o.packageManager=`${t.name}@${t.version}`,n?(s.rootStep(`adding "workspaces" field to ${$s.relative(e.paths.root,e.paths.packageJson)}`),o.workspaces=e.workspaceData.globs,i!=null&&i.dry||io(e.paths.packageJson,o,{spaces:2}),le({workspace:{name:"root",paths:e.paths},project:e,to:t,logger:s,options:i}),s.workspaceHeader(),e.workspaceData.workspaces.forEach(a=>{le({workspace:a,project:e,to:t,logger:s,options:i})})):i!=null&&i.dry||io(e.paths.packageJson,o,{spaces:2})}async function km(r){let{project:e,logger:t,options:s}=r,i=e.workspaceData.globs.length>0;t.mainStep(ce({packageManager:er.name,action:"remove",project:e}));let n=M({workspaceRoot:e.paths.root});if(i&&(t.subStep(`removing "workspaces" field in ${e.name} root "package.json"`),delete n.workspaces),t.subStep(`removing "packageManager" field in ${e.name} root "package.json"`),delete n.packageManager,!(s!=null&&s.dry)){io(e.paths.packageJson,n,{spaces:2});let o=[e.paths.nodeModules,...e.workspaceData.workspaces.map(a=>a.paths.nodeModules)];try{t.subStep('removing "node_modules"'),await Promise.all(o.map(a=>wm(a,{recursive:!0,force:!0})))}catch{throw new B("Failed to remove node_modules",{type:"error_removing_node_modules"})}}}async function _m(r){let{project:e,logger:t,options:s}=r;t.subStep(`removing ${$s.relative(e.paths.root,e.paths.lockfile)}`),s!=null&&s.dry||Fm(e.paths.lockfile,{force:!0})}async function Rm(r){let{project:e,options:t}=r;switch(e.packageManager){case"pnpm":re({project:e,options:t});break;case"bun":break;case"npm":re({project:e,options:t});break;case"yarn":re({project:e,options:t});break}}var tl={detect:el,read:bm,create:Sm,remove:km,clean:_m,convertLock:Rm};var wt={pnpm:Yc,yarn:Qc,npm:Zc,bun:tl};u();async function Tg({root:r}){let{exists:e,absolute:t}=Gc({directory:r});if(!e)throw new B(`Could not find directory at ${t}. Ensure the directory exists.`,{type:"invalid_directory"});for(let{detect:s,read:i}of Object.values(wt))if(await s({workspaceRoot:t}))return i({workspaceRoot:t});throw new B("Could not determine package manager. Add `packageManager` to `package.json` or ensure a lockfile is present.",{type:"package_manager-unable_to_detect"})}u();import{bold as rl,green as zs,red as Bm,underline as vm,yellow as Ws}from"picocolors";import xm from"gradient-string";var tr=2,Gs=class{constructor({interactive:e,dry:t}={}){this.interactive=e!=null?e:!0,this.dry=t!=null?t:!1,this.step=1}logger(...e){this.interactive&&console.log(...e)}indented(e,...t){this.logger(" ".repeat(tr*e),...t)}header(e){this.blankLine(),this.logger(rl(e))}installerFrames(){let e=`${" ".repeat(tr)} - ${this.dry?Ws("SKIPPED | "):zs("OK | ")}`;return[`${e} `,`${e}> `,`${e}>> `,`${e}>>>`]}gradient(e){return xm("#0099F7","#F11712")(e.toString())}hero(){this.logger(rl(this.gradient(`
6
6
  >>> TURBOREPO
7
- `)))}info(...e){this.logger(...e)}mainStep(e){this.blankLine(),this.logger(`${this.step}. ${vm(e)}`),this.step+=1}subStep(...e){this.logger(" ".repeat(tr),"-",this.dry?Ws("SKIPPED |"):zs("OK |"),...e)}subStepFailure(...e){this.logger(" ".repeat(tr),"-",Bm("ERROR |"),...e)}rootHeader(){this.blankLine(),this.indented(2,"Root:")}rootStep(...e){this.logger(" ".repeat(tr*3),"-",this.dry?Ws("SKIPPED |"):zs("OK |"),...e)}workspaceHeader(){this.blankLine(),this.indented(2,"Workspaces:")}workspaceStep(...e){this.logger(" ".repeat(tr*3),"-",this.dry?Ws("SKIPPED |"):zs("OK |"),...e)}blankLine(){this.logger()}error(...e){console.error(...e)}};u();import Om from"execa";import Tm from"ora";import{satisfies as Pm}from"semver";var sl={npm:[{name:"npm",template:"npm",command:"npm",installArgs:["install"],version:"latest",executable:"npx",semver:"*",default:!0}],pnpm:[{name:"pnpm6",template:"pnpm",command:"pnpm",installArgs:["install"],version:"latest-6",executable:"pnpx",semver:"6.x"},{name:"pnpm",template:"pnpm",command:"pnpm",installArgs:["install","--fix-lockfile"],version:"latest",executable:"pnpm dlx",semver:">=7",default:!0}],yarn:[{name:"yarn",template:"yarn",command:"yarn",installArgs:["install"],version:"1.x",executable:"npx",semver:"<2",default:!0},{name:"berry",template:"berry",command:"yarn",installArgs:["install","--no-immutable"],version:"stable",executable:"yarn dlx",semver:">=2"}],bun:[{name:"bun",template:"bun",command:"bun",installArgs:["install"],version:"latest",executable:"bunx",semver:"^1.0.1",default:!0}]};function Lm(r){let{version:e,name:t}=r;return e?sl[t].find(s=>Pm(e,s.semver)):sl[t].find(s=>s.default)}async function il(r){let{to:e,logger:t,options:s}=r,i=t!=null?t:new Gs(s),n=Lm(e);if(!n)throw new B("Unsupported package manager version.",{type:"package_manager-unsupported_version"});if(i.subStep(`running "${n.command} ${n.installArgs.join(" ")}"`),!(s!=null&&s.dry)){let o;i.interactive&&(o=Tm({text:"installing dependencies...",spinner:{frames:i.installerFrames()}}).start());try{await Om(n.command,n.installArgs,{cwd:r.project.paths.root}),o&&o.stop(),i.subStep("dependencies installed")}catch(a){throw i.subStepFailure("failed to install dependencies"),a}}}u();import{yellow as Nm}from"picocolors";async function Vg({project:r,convertTo:e,logger:t,options:s}){if(t.header(`Converting project from ${r.packageManager} to ${e.name}.`),r.packageManager===e.name)throw new B("You are already using this package manager",{type:"package_manager-already_in_use"});if(!e.version)throw new B(`${e.name} is not installed, or could not be located`,{type:"package_manager-could_not_be_found"});let i=e;await wt[r.packageManager].remove({project:r,to:i,logger:t,options:s}),await wt[i.name].create({project:r,to:i,logger:t,options:s}),t.mainStep("Installing dependencies"),s!=null&&s.skipInstall?t.subStep(Nm("Skipping install")):(await wt[i.name].convertLock({project:r,to:i,logger:t,options:s}),await il({project:r,to:i,logger:t,options:s})),t.mainStep(`Cleaning up ${r.packageManager} workspaces`),await wt[r.packageManager].clean({project:r,logger:t})}export{u as a,Br as b,Ol as c,B as d,Gc as e,wt as f,Tg as g,Gs as h,Lm as i,il as j,Vg as k};
7
+ `)))}info(...e){this.logger(...e)}mainStep(e){this.blankLine(),this.logger(`${this.step}. ${vm(e)}`),this.step+=1}subStep(...e){this.logger(" ".repeat(tr),"-",this.dry?Ws("SKIPPED |"):zs("OK |"),...e)}subStepFailure(...e){this.logger(" ".repeat(tr),"-",Bm("ERROR |"),...e)}rootHeader(){this.blankLine(),this.indented(2,"Root:")}rootStep(...e){this.logger(" ".repeat(tr*3),"-",this.dry?Ws("SKIPPED |"):zs("OK |"),...e)}workspaceHeader(){this.blankLine(),this.indented(2,"Workspaces:")}workspaceStep(...e){this.logger(" ".repeat(tr*3),"-",this.dry?Ws("SKIPPED |"):zs("OK |"),...e)}blankLine(){this.logger()}error(...e){console.error(...e)}};u();import Om from"execa";import Tm from"ora";import{satisfies as Pm}from"semver";var sl={npm:[{name:"npm",template:"npm",command:"npm",installArgs:["install"],version:"latest",executable:"npx",semver:"*",default:!0}],pnpm:[{name:"pnpm6",template:"pnpm",command:"pnpm",installArgs:["install"],version:"latest-6",executable:"pnpx",semver:"6.x"},{name:"pnpm",template:"pnpm",command:"pnpm",installArgs:["install","--fix-lockfile"],version:"latest",executable:"pnpm dlx",semver:">=7",default:!0}],yarn:[{name:"yarn",template:"yarn",command:"yarn",installArgs:["install"],version:"1.x",executable:"npx",semver:"<2",default:!0},{name:"berry",template:"berry",command:"yarn",installArgs:["install","--no-immutable"],version:"stable",executable:"yarn dlx",semver:">=2"}],bun:[{name:"bun",template:"bun",command:"bun",installArgs:["install"],version:"latest",executable:"bunx",semver:"^1.0.1",default:!0}]};function Lm(r){let{version:e,name:t}=r;return e?sl[t].find(s=>Pm(e,s.semver)):sl[t].find(s=>s.default)}async function il(r){let{to:e,logger:t,options:s}=r,i=t!=null?t:new Gs(s),n=Lm(e);if(!n)throw new B("Unsupported package manager version.",{type:"package_manager-unsupported_version"});if(i.subStep(`running "${n.command} ${n.installArgs.join(" ")}"`),!(s!=null&&s.dry)){let o;i.interactive&&(o=Tm({text:"installing dependencies...",spinner:{frames:i.installerFrames()}}).start());try{await Om(n.command,n.installArgs,{cwd:r.project.paths.root}),o&&o.stop(),i.subStep("dependencies installed")}catch(a){throw i.subStepFailure("failed to install dependencies"),a}}}u();import{yellow as Nm}from"picocolors";async function Vg({project:r,convertTo:e,logger:t,options:s}){if(t.header(`Converting project from ${r.packageManager} to ${e.name}.`),!(s!=null&&s.ignoreUnchangedPackageManager)){if(r.packageManager===e.name)throw new B("You are already using this package manager",{type:"package_manager-already_in_use"});if(!e.version)throw new B(`${e.name} is not installed, or could not be located`,{type:"package_manager-could_not_be_found"})}let i=e;s!=null&&s.ignoreUnchangedPackageManager||await wt[r.packageManager].remove({project:r,to:i,logger:t,options:s}),await wt[i.name].create({project:r,to:i,logger:t,options:s}),t.mainStep("Installing dependencies"),s!=null&&s.skipInstall?t.subStep(Nm("Skipping install")):(await wt[i.name].convertLock({project:r,to:i,logger:t,options:s}),await il({project:r,to:i,logger:t,options:s})),t.mainStep(`Cleaning up ${r.packageManager} workspaces`),r.packageManager!==e.name&&await wt[r.packageManager].clean({project:r,logger:t})}export{u as a,Br as b,Ol as c,B as d,Gc as e,wt as f,Tg as g,Gs as h,Lm as i,il as j,Vg as k};
8
8
  /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */