UNPKG

@bring-it/npm

Version:
1 lines 6.91 kB
export const __webpack_esm_id__=318;export const __webpack_esm_ids__=[318];export const __webpack_esm_modules__={4507:(n,e,t)=>{t.a(n,async(n,r)=>{try{t.d(e,{S:()=>w});var i=t(6760),a=t(9578),o=t(8760),s=t(396),c=t(5595),u=t(6307),f=n([a,o,s]);function p(n){return(0,u.TQ)(n).then(({name:e,version:t,private:r=!1,engines:a,publishConfig:o})=>({pkg:n,dir:(0,i.dirname)(n),name:e,version:t,private:r,publishConfig:o,engines:a})).catch(()=>!1)}function h(n,e){const t=new AbortController,r=setTimeout(()=>t.abort("timeout"),5e3);return fetch(n,{...e,signal:t.signal}).then(n=>(clearTimeout(r),n)).catch(n=>{throw clearTimeout(r),n})}function l(n,e,t=""){return h(new URL(n,e).href,{headers:t&&"https://registry.npmjs.org/"!==e?{Authorization:`Bearer ${t}`}:void 0}).then(async t=>{if(!t.ok){if(401===t.status){const t=await(0,c.P)(e);if(t)return l(n,e,t)}return[]}return t.json().then(n=>Object.keys(n.versions))}).catch(()=>(s.v.warn("[Fail to list version]",n),[]))}async function v(n){const e=[];for(const t of n){const n=await p(t);n&&(0,a.p)(n)&&(e.push(n),s.v.okay("[Publish Allowed]",n.name))}return e}async function g(n){const e=[];for(const t of n){const n=await(0,o.xN)(t.pkg).then(n=>JSON.parse(n)).catch(()=>!1);n?n?.version&&n.version===t.version||(e.push(t),s.v.okay("[Version changed]",t.pkg)):(e.push(t),s.v.okay("[First commit]",t.pkg))}return e}async function d(n){const e=[];for(const t of n){const n=await l(t.name,t.publishConfig.registry);n&&n.includes(t.version)?s.v.info("[Published, skip]",t.name):(e.push(t),s.v.okay("[Not publish yet]",t.name))}return e}async function w({force:n}){s.v.task("Scanning all package.json...");try{const e=await(0,o.Jy)({force:n}),t=await v(e),r=n?t:await g(t),i=await d(r);return s.v.info(i.length>0?i.length:"No",1===i.length?"package":"packages","need to publish"),i}catch(n){return s.v.fail("Scanning failed"),s.v.fail(n.message),[]}}[a,o,s]=f.then?(await f)():f,r()}catch(y){r(y)}})},5368:(n,e,t)=>{t.a(n,async(n,r)=>{try{t.d(e,{z:()=>s});var i=t(8760),a=t(396),o=n([i,a]);async function s({force:n}){a.v.task("Checking the working directory...");try{if(!await(0,i.ow)())return!1;if(!await(0,i.qv)())return!1;if(!await(0,i.vy)())return!1;if(!n){if(!await(0,i.q3)())return!1;if(!await(0,i.Wy)())return!1}}catch(n){return a.v.fail("Checking failed"),a.v.fail(n.message),!1}return!0}[i,a]=o.then?(await o)():o,r()}catch(c){r(c)}})},5595:(n,e,t)=>{t.d(e,{P:()=>c});var r=t(1455),i=t(8161),a=t(6760),o=t(8061);function s(n){return(0,r.readFile)((0,a.join)(n,".npmrc"),"utf8").then(o.parse)}function c(n="https://registry.npmjs.org/"){return Promise.allSettled([s((0,i.homedir)()),s(process.cwd())]).then(([n,e])=>({...n.value,...e.value})).then(e=>{const{host:t,pathname:r}=new URL(n);return e[`//${t+r}:_authToken`]}).catch(()=>{})}},6307:(n,e,t)=>{t.d(e,{OY:()=>s,QR:()=>f,TQ:()=>u,Wo:()=>c});var r=t(1455),i=t(6760),a=t(1293);function o(n,e,t){return(0,a.Ho)(n,e,{cwd:process.cwd(),...t})}function s(n,e,t){return o(n,e,{stdio:"inherit",...t})}function c(n,e,t){return o(n,e,t).then(({stdout:n,stderr:e})=>{if(e)throw new Error(e);return n?.trim()})}function u(n){return(0,r.readFile)(n,"utf8").then(n=>JSON.parse(n))}async function f(){return u((0,i.resolve)(process.cwd(),"package.json")).then(({packageManager:n="npm"})=>n.split("@")[0]).catch(()=>"npm")}},8760:(n,e,t)=>{t.a(n,async(n,r)=>{try{t.d(e,{Jy:()=>C,Wy:()=>g,ow:()=>p,q3:()=>y,qv:()=>h,vy:()=>l,xN:()=>m});var i=t(6760),a=t(396),o=t(6307),s=n([a]),c=s.then?(await s)():s;function u(...n){return(0,o.Wo)("git",n)}async function f(n,e,t){return await n?(a.v.okay(e),!0):(a.v.fail(t),!1)}function p(){return f(u("--version").then(Boolean),"Git is ready","Git is not installed")}function h(){return f(u("rev-parse","--is-inside-work-tree").then(n=>"true"===n),"Current directory inside a git repo","Current directory not inside a git repo")}function l(){return f(u("rev-parse","--show-toplevel").then(n=>(0,i.resolve)(n)===(0,i.resolve)(process.cwd())),"Current directory is the git root","Current directory is not the git root")}a=c[0];const v=["M .npmrc","MM .npmrc","U .npmrc","R .npmrc","A .npmrc","?? .npmrc"];function g(){return f(u("status","--porcelain").then(n=>n.split("\n").map(n=>n.trim()).filter(n=>n&&!v.includes(n))).then(n=>0===n.length||(console.info(n.join("\n")),!1)),"Current directory is a clean repo","Current directory is not a clean repo")}async function d(){const n=await u("rev-parse","--abbrev-ref","HEAD");return"HEAD"===n?(await u("name-rev","--name-only","HEAD")).replace(/^remotes\/origin\//,""):n}const w=["main","master","release"];async function y(){return f(d().then(n=>w.includes(n)),`Current branch match \`${w.join("/")}\``,`Current branch not match \`${w.join("/")}\``)}function m(n){return u("show",`HEAD~1:${n}`)}function k(){return u("diff","HEAD~1","HEAD","--name-only","--ignore-blank-lines","--ignore-cr-at-eol","--ignore-space-at-eol","--diff-filter=d","package.json","*/package.json")}function b(){return u("ls-files","package.json","*/package.json")}async function C({force:n}){const e=u("cat-file","-t","HEAD~1").then(n?b:k,b),t=await e.then(n=>n?n.split("\n"):[]);for(const e of t)a.v.okay(n?"[Forcing scan]":"[Latest Modified]",e);return t}r()}catch(_){r(_)}})},9318:(n,e,t)=>{t.a(n,async(n,r)=>{try{t.d(e,{action:()=>u});var i=t(5368),a=t(396),o=t(4507),s=t(6307),c=n([i,a,o]);async function u({preview:n=!1,force:e=!1,provenance:t=!1}={}){if(!await(0,i.z)({force:e}))return process.exitCode=1,!1;const r=await(0,o.S)({force:e});if(0===r.length)return!1;n&&a.v.info("Won't publish in preview mode");const c=await(0,s.QR)();a.v.info("Using",c);for(const{dir:e,name:i}of r){const r=n?"[Preview]":"[Publish]";a.v.task(r,i),await(0,s.OY)(c,["publish",!!n&&"--dry-run",!!t&&"--provenance","pnpm"===c&&"--git-checks=false"].filter(Boolean),{cwd:e}).then(()=>{a.v.okay(r,i)}).catch(()=>{a.v.fail(r,i),process.exitCode=1})}return!1}[i,a,o]=c.then?(await c)():c,r()}catch(f){r(f)}})},9578:(n,e,t)=>{t.a(n,async(n,r)=>{try{t.d(e,{p:()=>f});var i=t(8399),a=t(3895),o=t(6207),s=t(396),c=n([s]),u=c.then?(await c)():c;function f(n){if(n.private)return s.v.info("[package is private]",n.name),!1;if(!n.name||!o(n.name).validForNewPackages)return s.v.warn("[pkg.name isn't valid]",n.pkg),!1;if(!n.version||!a.valid(n.version))return s.v.warn("[pkg.version isn't valid]",n.pkg),!1;if(!n.publishConfig?.registry)return s.v.info("[Registry undefined]",n.name),!1;if(!i(n.publishConfig.registry))return s.v.warn("[pkg.publishConfig.registry isn't valid]",n.name),!1;if(n.name.startsWith("@")&&"public"!==n.publishConfig.access)return s.v.info("[pkg.publishConfig.access isn't public]",n.name),!1;if(n.engines?.node){if(!a.validRange(n.engines.node))return s.v.warn("[pkg.engines.node isn't valid]",n.pkg),!1;if(!a.satisfies(process.versions.node,n.engines.node))return s.v.warn("[pkg.engines.node isn't match]",n.pkg),!1}return!0}s=u[0],r()}catch(p){r(p)}})}};